不重要的是ps3.launch
, rviz
, 这里只列出重要部分
loam_interface.launch
1 | <launch> |
参数
stateEstimationTopic
换成世界坐标系下的机器人当前位姿,实际要求的是里程计消息,我的是从LOAM发布的final_odom
参数
registeredScanTopic
为LOAM框架输出的关键帧话题,我的是Lego-LOAM的current_scan
参数
flipStateEstimation
和flipRegisteredScan
改为false,只要雷达位置没有旋转。否则启动后,机器人坐标系是旋转过的
loam_interface的代码太简单了: 不断接收SLAM部分提供的世界坐标系下的机器人当前位姿 以及 世界坐标系下的当前关键帧,并分别以state-estimastion
(换个名字和发布TF) 和 registered_scan
(换个名字)话题名发布出去
sensor_scan_generation.launch
订阅/state_estimation
和 /registered_scan
,执行 laserCloudAndOdometryHandler
,并发布state_estimation_at_scan
和 sensor_scan
订阅state_estimation
以及registered_scan
,执行回调函数。
发布/state_estimation_at_scan(等同于/state_estimation)
发布/sensor_scan(世界坐标系下的点云转换至传感器Lidar坐标系下)