Skip to content

The Firmware and ROS package for a robot with mecanum wheels that can be controlled by sending it ROS Twist messages.

License

Notifications You must be signed in to change notification settings

ModernOctave/mecanum-bot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mecanum Bot

The Firmware and ROS package for a robot with mecanum wheels that can be controlled by sending it ROS Twist messages.

Robot Specifications

The robot chasis was build using this kit from robu.in. The robot is controlled using a ESP32-WROOM (38-Pin).

Firmware

The firmware is written in C++ and uses the Arduino framework and should be flashed to the ESP32-WROOM using the Arduino IDE.

ROS Node

This repo is also a ROS package that contains a ROS node that can be used to bring up the robot. The node uses the rosserial package to communicate with the ESP32-WROOM. The node can be started using the following command:

roslaunch mecanumbot bringup.launch

The robot can be controlled by publishing to the /cmd_vel topic. The message type is geometry_msgs/Twist.

To control the robot using a joystick / gamepad, the joystick parameter can be set to true while launching the node. This then uses the joy package to publish the /joy topic and convert the joystick messages to Twist messages.

To Do

  • Publish odometry by using reverse kinematics

Credits

  1. The firmware is based on the ros_mecanum_robot by Reinbert.
  2. The kinematics have been adapted from this blog post by David Kohanbash.

About

The Firmware and ROS package for a robot with mecanum wheels that can be controlled by sending it ROS Twist messages.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 62.2%
  • CMake 28.4%
  • C++ 6.5%
  • Python 2.9%