Docker Image for ROS Melodic Node providing interface for STM32 firmware over ROS-serial.
rosbot-docker
contain following ROS packages:
With docker-compose configuration shown in demo it can communicate with hardware of both Rosbot 2.0 and Rosbot 2.0 Pro.
Firmware if flashed from inside of the container. In order to use specific kinematics flash matching firmware.
docker run --rm -it --privileged \
husarion/rosbot:noetic \
/flash-firmware.py /root/firmware_diff.bin
docker run --rm -it --privileged \
husarion/rosbot:noetic \
/flash-firmware.py /root/firmware_mecanum.bin
docker buildx build \
--platform linux/amd64 \
-t rosbot-docker-test \
.
Most important nodes published by this docker after launching rosbot_docker.launch are shown below.
/cmd_vel
(geometry_msgs/Twist, /serial_bridge)
/tf
(tf2_msgs/TFMessage, /rosbot_ekf)/tf_static
(tf2_msgs/TFMessage, /imu_publisher, /laser_publisher, /camera_publisher)/odom
(nav_msgs/Odometry, /rosbot_ekf)/imu
(sensor_msgs/Imu, /serial_bridge)/battery
(sensor_msgs/BatteryState, /serial_bridge)/range/fl
(sensor_msgs/Range, /serial_bridge)/range/fr
(sensor_msgs/Range, /serial_bridge)/range/rl
(sensor_msgs/Range, /serial_bridge)/range/rr
(sensor_msgs/Range, /serial_bridge)
For more details on what is being published and subscribed by nodes running in this container please refer to launch file and packages:
in a /demo folder your will find an example of how to use ROSbot docker image in a real autonomous navigation use case.