This repository consist of a ROS wrapper writter on top of Robomaster SDK. The ROS packages under this repository aims to control of DJI's cheap omni wheel robot, Robomaster S1, via ROS.
$ git clone https://github.com/erdemuysalx/robomaster_s1_ros.git
$ cd ..
$ catkin build
$ source devel/setup.bash
graph LR
A[Robomaster S1] -- Python SDK --> B((Talker Node))
B -- ROS Topic --> D{ROS Master}
D -- ROS Topic --> C((Listener Node))
C -- Python SDK --> A
This node reads/listens the data produced at Robomaster using Python SDK, and then writes/talks the obtained data to the relevant ROS topics as ROS messages.
sensor_msgs/Image.msg
to /robomaster/image
sensor_msgs/Imu.msg
to /robomaster/imu
sensor_msgs/Quaternion.msg
to /robomaster/attitude
---
to /robomaster/esc
std_msgs/Float64.msg
to /robomaster/battery
This node reads/listens the ROS messages which are sent from other machines, such as a remote computer, to the relevant topics, and then processes the incoming messages with the Robomaster Python SDK, allowing the robot to take action.
geometyr_msgs/Twist.msg
from /robomaster/chassis
geometyr_msgs/Twist.msg
from /robomaster/gimbal
~robomaster/ip
~robomaster/version
~robomaster/sn
~robomaster/chassis_mode
~robomaster/gimbal_mode
~robomaster/chassis/static_flag
~robomaster/chassis/up_hil
~robomaster/chassis/down_hill
~robomaster/chassis/on_slope
~robomaster/chassis/pick_up
~robomaster/chassis/impact_x
~robomaster/chassis/impact_y
~robomaster/chassis/impact_z
~robomaster/chassis/roll_over
~robomaster/chassis/hill_static