The robot_pose_ekf ROS package applies sensor fusion on the robot IMU and odometry values to estimate its 3D pose.
The package contains a single node
- robot_pose_ekf: Implements an Extended Kalman Filter, subscribes to robot measurements, and publishes a filtered 3D pose.
- Script File: wtf.py
- Subscriber: "/odom", "/imu_data", and "/vo "
- Publisher: "/robot_pose_ekf/odom_combined"
$ cd /home/workspace/catkin_ws/src/
$ git clone https://github.com/udacity/robot_pose_ekf
<launch>
<node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
<param name="output_frame" value="odom_combined"/>
<param name="base_footprint_frame" value="base_footprint"/>
<param name="freq" value="30.0"/>
<param name="sensor_timeout" value="1.0"/>
<param name="odom_used" value="true"/>
<param name="imu_used" value="true"/>
<param name="vo_used" value="false"/>
<remap from="imu_data" to="/mobile_base/sensors/imu_data" />
</node>
</launch>
$ cd /home/workspace/catkin_ws
$ catkin_make
$ source devel/setup.bash
$ roslaunch robot_pose_ekf robot_pose_ekf.launch