imu frame for Robot_pose_ekf
Hi all...
i'm trying to use the robot_pose_ekf node with an pioneer 3at robot using odometry from p2os_driver and an imu MT_9
i publish the sensor_msgs/imu using the frame: "imu" and a frame "odom" for the odometry, but when i run the robot_pose_ekf i get this message
[WARN] Could not transform imu message from imu to base_footprint. Imu will not be activated yet
i try to publish a static transformation between "base_link" and "imu" but still no results, also try to publish the rotation from "imu" to "base_footprint" with this code:
void t_imuCallback(const sensor_msgs::ImuConstPtr& msg){
static tf::TransformBroadcaster br;
tf::Quaternion orientation;
tf::Transform transform;
tf::quaternionMsgToTF(msg->orientation, orientation);
transform.setOrigin(tf::Vector3(0.0, 0.0, 0.0) );
transform.setRotation(orientation);
br.sendTransform(tf::StampedTransform(transform, ros::Time::now(), "base_footprint", "imu"));
but i get the same message..
any ideas?
thanks a lot
Mario
Publishing a static tf is usually the way to go. What does the tf chain look like?
I had the same problem, TF tree was connected but had the same error, Could not transform imu message from /base_imu to /base_footprint. It was solved by changing the frame id of IMU to /base_footprint............Thats it