Hi Lisa,
Can you try and change the timeout duration to something longer, e.g. (line 30 of the tutorial)

    //wait for the listener to get the first message
    listener_.waitForTransform("base_footprint", "odom_combined",
                               ros::Time(0), ros::Duration(1000.0));

and try again?

Also, looks like the tutorial needs the following remapping to work with the PR2 default base controller:

bin/drive_base cmd_vel:=base_controller/command

John


On Wed, Sep 22, 2010 at 10:24 PM, Lisa Miller <lizajane999@gmail.com> wrote:
I'm a new ROS user and have been going through the tutorials. I'm having problems with the pr2_controllers "Using the base controller with odometry and transform information" tutorial.

I'm running the pr2 in Gazebo and successfully did the previous tutorial where you control the robot with the keyboard, but when I try to run the drive_base file I've copy/pasted from this tutorial it fails with this error:

$ bin/drive_base
terminate called after throwing an instance of 'tf::LookupException'
  what():  Frame id /base_footprint does not exist! When trying to transform between /odom_combined and /base_footprint.
Aborted

I tried to debug using tf_echo and tf_monitor but I can't figure it out since tf seems to think base_footprint is there 

rosrun tf tf_echo base_footprint odom_combined
At time 534.960
- Translation: [-0.000, -0.000, 0.000]
- Rotation: in Quaternion [0.000, 0.000, 0.002, 1.000]
            in RPY [0.000, 0.000, 0.004]
At time 535.705
- Translation: [0.000, -0.000, -0.000]
- Rotation: in Quaternion [-0.000, 0.000, 0.002, 1.000]
            in RPY [-0.000, 0.000, 0.004]

rosrun tf tf_monitor /base_footprint /odom_combined
Waiting for transform chain to become available between /base_footprint and /odom_combined



RESULTS: for /base_footprint to /odom_combined
Chain is: /base_footprint -> /odom_combined
Net delay     avg = 0.013132: max = 0.098

Frames:
Frame: /base_footprint published by /robot_pose_ekf Average Delay: 0.0491667 Max Delay: 0.059

All Broadcasters:
Node: /robot_pose_ekf 32.6087 Hz, Average Delay: 0.0491667 Max Delay: 0.059
Node: /robot_state_publisher 55.2147 Hz, Average Delay: 0.0177567 Max Delay: 0.04


I'm running Cturtle from the Ubuntu repositories with Ubuntu 10.04 64-bit. This error happened before and after the update that came out today.

My file is located in the directory I made for my own packages ~/ros/stacks/drive_base_tutorials/

My ROS_PACKAGE_PATH is:
echo $ROS_PACKAGE_PATH
/home/lizajane999/ros/stacks:/opt/ros/cturtle/stacks

Sorry if this is an obvious newbie mistake! I can't find it.



Lisa J. Miller

Graduate Research Assistant
Information and Computer Sciences Dept.
University of Hawaii at Manoa

lisa.miller@hawaii.edu
lizajane999@gmail.com

(808) 220-9029

_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users