MMP MPI¶
Network Setup¶
A WLAN router is installed on Ridgeback and has a network address
in 192.168.131.* range. As Clearpath is also on range
192.168.131.* for this reason router is also set on the same network.
SSID of the Wifi network is MBS - MAXPLANCK - RP
and the password is
mybotshop2022!
.
The ip address of the router is 192.168.131.100 (password for the router network is also mybotshop2022). By connecting to the Wifi network one can access Ridgeback on ip address 192.168.131.1. Moreover if a static connection is desired than setting for the host PC in the same network will also work. For example by setting 192.168.131.51 in the ip and 255.255.255.0 in netmask for the static connection will connect to the Ridgeback network as well. To SSH into Ridgeback run the following command:
ssh administrator@192.168.131.1
The password for the robot is clearpath.
Network tables¶
All the devices on the robot are network enabled. Table [robot_network] outlines all the devices and their network addresses.
Device |
Network Address |
---|---|
Ridgeback |
192.168.131.1 |
Ridgeback MCU |
192.168.131.2 |
Front Lidar |
192.168.131.20 |
Rear Lidar |
192.168.131.21 |
Panda arm |
192.168.131.22 |
Ouster |
192.168.131.23 |
Router |
192.168.131.100 |
Heavy Duty Lift¶
Starting the Lift¶
The sensors
node is one of the most important node as it controls the
communication with three control boards.
rosrun mbs_rp_lift sensors
The node offers the following functionalities for the corresponding boards:
Arm power control: board offers rosservice set_arm_power, a call to this service would switch on/off the Panda arm. Please keep in mind if the arm is switched on and the node is turned down, this will switch off the arm as well.
Soft switches control: board publishes the status of soft switches on topic soft_switches_status. The topic is subscribed by the driver node and the status is used for the lift control.
Lift encoder: The external rope encoders status is published on lift_joint_states topic.
For convenience to launch both lift_utils and driver node, the following launch file can be run:
roslaunch mbs_rp_lift rp_lift.launch
Attention
In case of some failure and the soft switches are bypassed. Hard switches will cut the power connection to the lift. The normal driver will stop working when hard switches are in failure state. So to bypass all safety checks of driver node, manual control node needs to be used.
Hard Switch Override¶
The manual_control
ros node is used to override the hardswitches. With this node brakes needs to be release and applied
manually. Additionally, it sends the movements command accordingly. Depending upon
which switches are pressed all the information on how to get out of failure state is
printed in the console.
To release the brakes:
rosservice call /apply_brake 'data: False'
To apply the brakes:
rosservice call /apply_brake 'data: True'
Lift Velocity¶
The driver
node is the main control node to move the lift:
rosrun rp_lift driver
It offers a ROS service to move the lift up and down.
To move the lift up:
rosservice call /set_lift_velocity 'data: 2047'
To move the lift down:
rosservice call /set_lift_velocity 'data: -2047'
Positive values are to move the lift upwards and negative to move downwards. The driver take a value between -2047 and 2047.
Important
These values are micro-steps not meters per second as offered by the motor driver for the lift. The driver checks the status of soft and hard switches all the time and provides corresponding control and advice for each state.
Safety-Controller¶
DC-AC Converter¶
The Panda is connected to a DC-AC converter which powers it from the external battery. Specific features of it are:
Conversions of
24V DC
-230V AC
User can supply power to the arm asl well as cut off power to the arm
Safety feature based on the Bender Isometer
LED status of the converter on top of the Ridgeback
Power cut-off in emergency situation
Bender Isometer¶
Safety Check on Startup
Checking internal resistance
Pushing Test-Button
No change in resistace was recognized
Power will be supplied
Note
More information on the Bender Isometer.
LED Indicator¶
Green: 24V DC was supplied to Converter
Yellow: A failure has happened, operator must stop working with the robot, and must check for a broken cable etc.
Red: Power was cut off
MMP Viz¶
Important
This is applicable to the MMP Ridgeback Panda v1.2 (released prior to 2023).
This mmp_viz
package is a configuration package used for visualizations
in RVIZ.
To view the URDF model of the robot:
roslaunch rp_viz view_model.launch
To view the live sensor data from the robot:
roslaunch rp_viz view_robot.launch
MMP Startup¶
Important
This is applicable to the MMP Ridgeback Panda v1.2 (released prior to 2023).
The mbs_rp_startup
package manages the robot
startup files. Ridgeback needs ROS to be running at startup. Ridgeback driver
needs to run at startup which communicates between the robot and its MCU which
is on network address 192.168.131.2.
Warning
Make sure none of your devices are having 192.168.131.2 ip address this will crash the node and the robot will not function properly.
This package is dependent upon roswiki robot_upstart which converts roslaunch files
to systemd service job in Ubuntu. This job runs at the startup of the robot. The
one responsible for Ridgeback is mbs_ridgeback
. The status of this service can be
checked by:
sudo service mbs_rp status
To change the setup files at startup of the robot include/remove nodes from launch/mbs_rp_system.launch. This is the file which is launched all the time.
To update this launch file at the robot startup, run:
rosrun rp_startup startup_installer.py
Attention
This command will remove the previous job and install a new one.
Note
Do not edit the files manually to systemd setup files or launch files (it won’t work), always run the above mentioned command to reflect the changes.
This packages also includes UDEV rules for different devices on the robot. They are already set up but for a fresh installation they can be run by:
rosrun rp_startup create_udev_rules.sh
The packages have some configuration files for the robot utilities. For example config/description.bash is responsble set up environment variables for URDF in order to include parts on the go. Similarly config/setup.bash is responsible to setup environment variables for Ridgeback drivers. Lastly config/can-udp-bridge* are responsible for setting up can bus and is used in startup script of the robot.
MMP Manipulation¶
Important
This is applicable to the MMP Ridgeback Panda v1.2 (released prior to 2023).
Franka-Emika-Panda¶
Note
As the MYBOTSHOP Ridgeback Panda is a multi-robot system consisting of Franka Emika’s Panda, hence, the guide provided by Franka Emika for Franka Emika Guide is applicable.
MBS Panda¶
This mbs_rp_franka
package is responsible for to launch Franka control software from franka control
package. Before using the arm it needs to switched on by the rosrun rp_lift sensors
.
To switch on the arm:
rosservice call /set_arm_power 'data: True'
Note
The arm is switched on indicated by solid yellow lights on the robot.
To switch off the arm:
rosservice call /set_arm_power 'data: False'
Panda Setup¶
Once arm is powered on, one can access the Panda desk at 192.168.131.22
.
The desk will prompt for user name and password which is:
User: admin
Password: panda_admin
Tip
Getting started with Panda Desk
First the arm joints should be unlocked as shown.
After the arm’s joints are unlocked, FCI needs to be enabled so that the arm exposes its functionalities to ROS control i.e. to be externally controlled.
Finally, the push button connected to X2 port of the robot needs to be pressed as well.
MMP Lidars¶
Important
This is applicable to the MMP Ridgeback Panda v1.2 (released prior to 2023).
MBS Ouster Package¶
The mbs_rp_ouster
package cleanly manage the nodes/data/logs of the ouster sensor.
Ouster is mounted on the top and provides 3d pointcloud of surroundings. So this packages
provides two types of data:
3D pointcould: is provided on /points
topic.
2D pointcloud: is the down-sampled data of the pointcloud topic and is
provided on /top/scan`
topic.