Skip to content

Common tasks

Seneda edited this page Oct 25, 2013 · 14 revisions

Controlling the robot via the keyboard

Make sure the ros-groovy-brown-remotelab package is installed. This can be done by using

$ svn checkout https://brown-ros-pkg.googlecode.com/svn/trunk/distribution/brown_remotelab
$ rosmake brown_remotelab

in your src/ directory.

Then use:

$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py 

See the output on screen for information. This simply publishes your keyboard control to the linear-x and angular-z components of a Twist sent to /cmd_vel.

Talking

Use the launch file to start ROS going and then on the Q.bo and not on your local machine:

(on Q.bo)
$ export ROS_MASTER_URI=http://yourmachine:11311
$ export ROS_HOSTNAME=binky
$ rosrun qbo_talk festival_node.py

Wait for the Q.bo to say hello and then on your machine:

(on your machine)
$ rosservice call /qbo_talk/festival_say "Testing, testing. One. Two. Three"

Calibrating cameras

Calibrating separately

Bring up the Q.bo with monocular camera support:

(on your machine)
$ roslaunch qbo_sigproc_launch qbo.launch cameras:=true

This will by default launch the left camera using device /dev/video0. To calibrate the right camera, add mono_camera_side:=right mono_camera_device:=/dev/video1 to the command line.

Read the camera calibration documentation on teh ROS wiki. To start camera calibration, use a command line like the following:

(on your machine)
$ rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.024 image:=/stereo/left/image_raw camera:=/stereo/left

Replace left with right if you're calibrating the right camera. The launch file is set up so that when 'COMMIT' is pressed in the calibration application, the calibration is written to the calibrations/left-camera.yaml or calibrations/right-camera.yaml file within the qbo_description package on the Q.bo. If you update those files and want to keep them, copy them to your own machine and commit them to GitHub!

Calibrating together

FIXME: There are issues with running both cameras at the moment. This needs to be addressed.

Face following

Launch the Q.bo with the following (chaning binky as appropriate):

$ roslaunch qbo_sigproc_launch qbo.launch qbo_address:=binky cameras:=true rqt_console:=true extra_include:=face

Face detection/loss events will be logged to the console.