Package Summary
Provides an interface between diff_drive_controller and an Arduino.
- Maintainer status: maintained
- Maintainer: Josh Newans <josh.newans AT gmail DOT com>
- Author: Josh Newans <josh.newans AT gmail DOT com>
- License: BSD
- Bug / feature tracker: https://github.com/joshnewans/diffdrive_arduino/issues
- Source: git https://github.com/joshnewans/diffdrive_arduino.git (branch: melodic-devel)
Summary
This package provides an interface between ros_control (specifically diff_drive_controller) and ros_arduino_bridge.
Getting Started
Have your robot with an Arduino running the firmware from ros_arduino_bridge.
Run the node with rosrun diffdrive_arduino diffdrive_robot, specifying any parameters you need to.
Set up the controllers. You will need to run a diff_drive_controller and a joint_state_controller. You may also need to set the robot_description if that information is not provided directly to the diff_drive_controller.
- Run the controllers.
Send some input to cmd_vel (e.g. with teleop_twist_joy).
Nodes
diffdrive_robot
Parameters
~left_wheel_name (string, default: left_wheel)- Left wheel joint name
- Right wheel joint name
- Baud rate of serial connection
- Address of serial device
- Frequency (in Hz) of the processing loop on the Arduino
- Number of encoder counts per wheel revolution
- Timeout (ms) of serial device
Future Works
- Support for different firmwares
- PID adjustment
- Better handling of parameters
- Better documentation/tutorial
- Example yamls/launch