ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Adding to what @tfoote said, my workaround to the fact that floating
joints are not available anymore was to broadcast a base_stabilised
frame, which coincides with my quadrotor's base_link
, but rotates along the X- and Y-axis according to the IMU's quaternion (transformed to base_link
if an existing imu_link
does not coincide with base_link
as well).
After implementing it myself, I found out there is a package called hector_imu_attitude_to_tf, which does exactly that.
This way, when I set the fixed frame in RViz to base_stabilised
, I can see the quadrotor roll'ing and pitch'ing.
Extending that to broadcast rotation along the Z-axis should be straightforward.
2 | No.2 Revision |
Adding to what @tfoote said, my workaround to the fact that floating
joints are not available anymore was to broadcast a base_stabilised
frame, which coincides with my quadrotor's base_link
, but rotates along the X- and Y-axis according to the IMU's quaternion (transformed to base_link
if an existing imu_link
does not coincide with base_link
as well).
After implementing it myself, I found out there is a package called hector_imu_attitude_to_tf, which does exactly that.
This way, when I set the fixed frame in RViz to base_stabilised
, I can see the quadrotor roll'ing and pitch'ing.
Extending that to broadcast rotation along the Z-axis should be straightforward.
EDIT: Below is an example of how I used the hector_imu_attitude_to_tf
package:
<node pkg="hector_imu_attitude_to_tf" type="imu_attitude_to_tf_node" name="base_stabilised_node">
<param name="base_stabilized_frame" type="string" value="base_stabilised" />
<param name="base_frame" type="string" value="base_link" />
<remap from="imu_topic" to="/imu" />
</node>