Skip to content
benkehoe edited this page Feb 28, 2013 · 6 revisions

The raven_2_control package contains the code used to interface with the robot. This code, which must be compiled and run on computer attached to the Raven, talks to the robot, publishes the state of the robot over ROS, receives commands over ROS and UDP, and performs control based on those commands.

Compiling this package produces the r2_control binary. For use with ROS, it is recommended to use the raven_2.launch file, which loads the relevant parameters and the robot model for visualization. Note that this must be run using sudo, since reading and writing the USB requires root access. See running the robot.

The r2_control code executes as 3 threads:

  • The network thread, which listens for UDP packets containing control commands.
  • The console thread, which provides the interactive display in the terminal.
  • The real-time thread, which runs at 1000 Hz and performs all the major functions of the program.

There are two main data structures used in this program:

Additional topics:

Clone this wiki locally