Where do I put base_footprint?
So I have a urdf for my robot, with the tree root as base_link
.
However, I am using robot_pose_ekf
, which has a hard-coded transform for base_footprint
. Assuming a simple square base_footprint
, should I make it the root:
base_footprint
base_link ... rest of model
EDIT:
After adding a base_footprint link and joint to base_link:
robot name is: Thumperbot_Simplistic
---------- Successfully Parsed XML ---------------
root Link: base_footprint has 1 child(ren)
child(1): base_link
I still get the following error:
Node: /robot_pose_ekf
Time: 12:35:35.441279569 (2014-09-16)
Severity: Debug
Published Topics: /robot_pose_ekf/odom_combined, /rosout, /tf
Could not transform imu message from base_link to base_footprint. Imu will not be activated yet.
Location:
/tmp/buildd/ros-indigo-robot-pose-ekf-1.11.11-0trusty-20140805-0105/src/odom_estimation_node.cpp:OdomEstimationNode::imuCallback:234
----------------------------------------------------------------------------------------------------
Perhaps it is not receiving my urdf that have in the launchfile? Here is the launchfile:
<launch>
<param name="robot_description" textfile="$(find thumperbot_description)/urdf/thumperbot_description.urdf" />
<node name="gps_conv" pkg="gps_common" type="utm_odometry_node">
<remap from="odom" to="vo" />
<remap from="fix" to="/gps/fix" />
<param name="rot_covariance" value="99999" />
<param name="frame_id" value="base_link" />
</node>
<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
<rosparam>
odom_used: false
imu_used: true
vo_used: true
debug: true
self_dignose: true
</rosparam>
</node>
<include file="$(find piksi_driver)/launch/piksi_driver.launch" />
<include file="$(find razor_imu)/launch/razor-pub.launch"/>
</launch>
Here razor_imu and piksi_driver are drivers for the razor imu sensor and the piksi gps sensor. Both sensors output their data correctly.