Using Robobo ROS2 - mintforpeople/robobo-programming GitHub Wiki
The application Robobo Developer ROS2 for Android and iOS devices contains an implementation of the Robobo remote control system that converts the Robobo into a ROS 2 compatible robot.
To achieve this, the Robobo Developer ROS2 application will create the following ROS 2 elements:
- A set of topics where Robobo publishes notifications of changes in the values of its sensors and other functionalities. More information at Documentation of Robobo Sensor Topics.
- A set of services that allow any ROS 2 node to command/actuate the robot. More information at Documentaton of Robobo Services.
These topics and services use a combination of custom and standard ROS message types, thus in order for other ROS 2 nodes to use Robobo, it is required for them to know and use Robobo's own messages and services package.
Clone or download the repository robobo-ros2-msgs. The repository contains a file with the robobo-ros2-msgs.zip, uncompress it. Then, with a ROS workspace already in place, follow these steps:
- Copy the 'robobo_msgs' directory, which contains the Robobo messages and services, into your ROS 2 workspace.
- Compile the package using ‘colcon build --symlink-install --packages-select robobo_msgs’
- Execute 'source install/setup.bash'.
After following these steps, you will have installed the required message types, and thus you should be able to use 'ros2 topic' and 'ros2 service' commands to explore and play with the Robobo topics and services.
In order to test the /talk service you can use the command:
ros2 service call /talk robobo_msgs/Talk '{text: {data: "hello"}}'
In order to test the /move_wheels service you can use the command:
ros2 service call /move_wheels robobo_msgs/MoveWheels "{lspeed: {data: 10}, rspeed: {data: 10}, time: {data: 1000}, unlockid: {data: 1}}"
Supported by ROSIN - ROS-Industrial Quality-Assured Robot Software Components.
More information: rosin-project.eu
This project has received funding from the European Union’s Horizon 2020
research and innovation programme under grant agreement no. 732287.