ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

The main motivation behind running all of the PID control loops for the PR2 on the main computer is to reduce the number of languages and environments that a user has to know in order to write software for the PR2.

If you're building your own motor control boards and writing the software for them yourself, putting the postion control on the motor board is probably a better idea. You'll have less data on your bus, because you won't need real-time feedback from all of your encoders, and you won't need to run a realtime kernel on your main computer (the real-time kernel on the PR2 is one of its weak points).

If you're looking for a low-cost system as a model, take a look at the Arbotix board and drivers. It uses an atmel microcontroller as a bridge between the main computer and an AX servo bus, and the AX servos have a built-in microcontroller that does all of the motor and position control.