/odometry_transformer

A ROS package to transform odometry messages between different robot coordinate frames.

Primary LanguageC++MIT LicenseMIT

odometry_transformer

A ROS package to transform odometry messages from source frame S to target frame T on a rigid body. For example this software transforms odometry from a tracking camera coordinate frame to a robot body frame.

Input: source odometry (T_IS, v_S, w_S), calibration source to target (T_ST)
Output: target odometry (T_IT, v_T, w_T)

Problem description of transforming odometry on a rigid body.

Features

  • Given known offset and rotation between odometry source and target frame, transform and publish odometry in target frame.
  • Pass sensor calibration either by ROS parameter server or TF tree.
  • Dynamically re-configure offset and orientation via rqt_reconfigure.
  • Integration as ROS node, all parameters accessible as roslaunch arguments.

How to use.

The odometry_transformer.launch file shows how to startup the ROS node and pass all relevant parameters. The user can pass the calibration between the odometry source frame and odometry target frame either via parameter array or via tf2_ros static_transform_publisher.

roslaunch odometry_transformer odometry_transformer.launch arg:=value

Example

Convert the odometry (position, orientation, linear and angular velocity) measured by the Realsense Tracking Camera T265 from the camera odometry frame to the robot base frame. For startup details see the test_realsense_t265.launch file.

roslaunch odometry_transformer test_realsense_t265.launch

Odometry transformation of Realsense Tracking Camera T265.