EKF transform imu message from imu_link to base_footprint Problem
hi i have ros groovy and want to use kalman filter with imu and odometry. unfortunately when i launch my launch file this error accrued.
Could not transform imu message from imu_link to base_footprint
this is my laucnch file:
<launch>
<param name="use_sim_time" value="true"/>
<!-- Robot pose ekf -->
<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf" output="screen">
<param name="freq" value="30.0"/>
<param name="sensor_timeout" value="1.0"/>
<param name="publish_tf" value="true"/>
<param name="odom_used" value="true"/>
<param name="imu_used" value="true"/>
<param name="vo_used" value="false"/>
<remap from="odom" to="base_odometry/odom" />
<remap from="imu_data" to="torso_lift_imu/data" />
</node>
<node pkg="rosbag" name="rosbag" type="play" args="--clock --hz 100 -d .4 /home/mahyar/Desktop/bagFiles/lightBag3Final/2014-05-18-15-06-23.bag " />
</launch>
this is my topics:
/base_odometry/odom
/tf
/torso_lift_imu/data
and tf tree is: http://www.docdroid.net/cewp/frames.pdf.html
when i echo /torso_lift_imu/data the frame_id is imu_link.
thank you very much for rescuing me in this awful situation
I know ROS does not guarantee that nodes will start in the order specified in the launch file; does anyone know if the same is true for parameter setting? Have you tried starting roscore, manually setting use_sim_time, then running the node, then running the bag playback?
AFAIK you can think of the launch process as first uploading all parameters to the parameter server, then starting all nodes in the launch file (albeit in random order). Setting use_sim_time should work as in the launch file. Other question: Does the error only appear once or twice, or continuously?
@Tom Moore thanks for your answer, yes i tried that but the result is the same.
@Stefan Kohlbrecher thanks for your answer, its appear continuously.
@Mahyar Haave you found out the solution? I also had this problem that puzzled me for a long time.