[ros-users] [Discourse.ros.org] [TurtleBot] ROS Teleop package

Juan Miguel Jimeno ros.discourse at gmail.com
Tue Jun 12 16:28:10 UTC 2018



You can check out Linorobot's implementation:

https://github.com/linorobot/linorobot/blob/master/teensy/firmware/src/firmware.ino#L176-L194

The idea is to have a PID controller for each motor to maintain the required speed defined by Teleop package or Navigation Stack. This requires:

PID SETPOINT  : The converted required speed (geometry_msgs/Twist) from m/s and/or rad/s to RPM (Rev Per Min). The kinematics library does the conversion for you, just pass the required velocities and it will return the required RPM for each motor.

PID FEEDBACK : Calculated motor RPM based on the wheel encoder's ticks per rev over time.

The PID's output is then used to determine the PWM value required to drive the motor.

Do this in a loop and you get a controller.





---
[Visit Topic](https://discourse.ros.org/t/ros-teleop-package/5062/5) or reply to this email to respond.




More information about the ros-users mailing list