Setting up rtabmap with robot arm eye-in-hand

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Setting up rtabmap with robot arm eye-in-hand

Ian Chuang
I'm trying to implement rtabmap with a realsense d435i attached to the endeffector of a robot arm (interbotix vx300s). The problem I have is that rtabmap is not building the map but just showing the current point cloud collected from the camera. However, I can see yellow odometry points still stay on the map, so it does seem to be doing something right. I don't really know which parameters to configure for rtabmap. Here is my launch file to start mapping. I first connect the camera frame to the endeffector frame, run the camera, then run rtabmap where I set the frame_id to be the base_link of the arm. I have another launch file I run beforehand to run the robot arm. Do I need to modify things like odometry or odom_frame_id? Also, in Rviz, running rtabmap messes with the tf of the whole arm and camera.

<launch>

<node pkg="tf" type="static_transform_publisher" name="gripper_camera_link" args="0.03 0 0.045 0 0 0 vx300s/gripper_link camera_link 10"/> -->

<include file="$(find realsense2_camera)/launch/rs_camera.launch" &gt;="" <arg="" name="align_depth" value="true"/> </include>

<include file="$(find rtabmap_ros)/launch/rtabmap.launch"> <arg name="localization" value="false"/> <arg name="rtabmap_args" value="--delete_db_on_start --Optimizer/GravitySigma 0.3"/> <arg name="depth_topic" value="/camera/aligned_depth_to_color/image_raw"/> <arg name="rgb_topic" value="/camera/color/image_raw"/> <arg name="camera_info_topic" value="/camera/color/camera_info"/> <arg name="approx_sync" value="false"/> <arg name="rtabmapviz" value="true"/> <arg name="rviz" value="false"/>

<arg name="frame_id" value="vx300s/base_link"/>

</include>

</launch>