Control Drive

Using ROS and Gazebo to simulate a Differential Drive Robot.

control_drive

Check out the project on Github

Requirements: Link to heading

  • ROS2 Humble
  • Gazebo (Ign)

Building Link to heading

colcon build

Launching Gazebo (Ign Gz): Link to heading

ros2 launch control_drive gazebo.launch.py

Launching rviz Link to heading

 ros2 launch control_drive display.launch.py

Change Fixed Frame in Global options to odom

Test linear velocity publisher Link to heading

ros2 topic pub /control_drive_controller/cmd_vel_unstamped geometry_msgs/msg/Twist "{linear: {x: 1.0, y: 0.0, z: 0.0}, angular: {x: 0.0, y: 0.0, z: 0.5}}"\

Run with teleop twist keyboard Link to heading

ros2 run teleop_twist_keyboard teleop_twist_keyboard --ros-args --remap cmd_vel:=/control_drive_controller/cmd_vel_unstamped

custom teleop control Link to heading

Custom control script in control_drive/custom_teleop.py

ros2 run control_drive custom_teleop --ros-args -r /cmd_vel:=/control_drive_controller/cmd_vel_unstamped