ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

RTAB-map with robot_localization

asked 2016-04-05 03:12:36 -0500

Jack000 gravatar image

I'm building a simple differential drive robot with the kinect+fake laser setup from the tutorials, and now I'm trying to do some navigation with move_base.

my transforms look like this, except instead of IMU I'm combining wheel encoder odometry and visual odometry from RTAB-map.

image description

when visual odometry is used alone, it's mostly fine until the robot gets close to a wall or something. I'm trying to use robot_localization to combine the two odometries and feed it into RTAB-map as /odom_filtered.

en<node pkg="robot_localization" type="ekf_localization_node" name="ekf_localization" clear_params="true">
 <param name="frequency" value="20"/>
 <param name="sensor_timeout" value="1.5"/>
 <param name="two_d_mode" value="true"/>
 <param name="map_frame" value="map"/>
 <param name="odom_frame" value="odom"/>
 <param name="base_link_frame" value="base_link"/>
 <param name="world_frame" value="odom"/>
 <param name="transform_time_offset" value="0.0"/>

 <param name="odom0" value="/fake_odom"/>

 <rosparam param="odom0_config">[false, false, false,
                              false, false, false,
                              true, true, false,
                              false, false, true,
                              false, false, false]</rosparam>
 <param name="odom0_differential" value="true"/>

 <param name="odom1" value="/rtabmap/visual_odom"/>

 <rosparam param="odom1_config">[true, true, false,
                              false, false, true,
                              false, false, false,
                              false, false, false,
                              false, false, false]</rosparam>
 <param name="odom1_differential" value="false"/>


With robot_localization, after a while the map looks like this: image description

the 3d and 2d map becomes chaotic and shifts around each frame.

my view_frames looks like this: image description

any idea what I'm doing wrong? The visual odometry is only published at around 1hz, could that be a problem?

edit retag flag offensive close merge delete


Can you post sample input messages, as well as your covariance matrices in your r_l config?

Tom Moore gravatar image Tom Moore  ( 2016-05-09 19:48:34 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2016-05-17 10:51:45 -0500

Jack000 gravatar image

I think it was just due to dropped frames. Kinectv2 has problems with certain usb hardware apparently and it starts to drop frames after about 30 seconds on my laptop..

edit flag offensive delete link more

Question Tools



Asked: 2016-04-05 03:12:36 -0500

Seen: 1,127 times

Last updated: Apr 05 '16