前言
代码分析
MSFLocalizationComponent::Init
该组件的初始化函数,msf定位组件也是通过命令行参数进行初始化,各参数均在modules/localization/conf/localization.conf
文件中进行定义,
外参文件:
modules/localization/msf/params/gnss_params/ant_imu_leverarm.yaml
作用未知
leverarm:
primary:
offset:
x: -0.5016
y: 0.5334
z: 0.8763
uncertainty:
x: 0.05
y: 0.05
z: 0.05
secondary:
offset:
x: 0.5461
y: 0.5334
z: 0.8763
uncertainty:
x: 0.05
y: 0.05
z: 0.05
modules/localization/msf/params/vehicle_params/vehicle_imu_extrinsics.yaml
作用未知
transform:
translation:
x: 0.0
y: 0.0
z: 0.0
rotation:
x: 0.0
y: 0.0
z: 0.0
w: 1.0
modules/localization/msf/params/velodyne_params/velodyne128_novatel_extrinsics.yaml
激光雷达外参文件,即激光雷达坐标系和组合导航坐标系的静态tf变换
header:
stamp:
secs: 1542235619
nsecs: 0
frame_id: novatel
seq: 0
child_frame_id: velodyne128
transform:
rotation:
x: 0.007209096210038245
y: 0.01691200555753232
z: 0.7076293956185187
w: 0.7063445699206772
translation:
x: 0.03614259942391
y: 1.033871037991605
z: 1.21285
modules/localization/msf/params/velodyne_params/velodyne128_height.yaml
激光雷达高度参数文件
vehicle:
parameters:
height: 1.89
height_var: 0.0045
话题相关
订阅:
/apollo/sensor/lidar128/compensator/PointCloud2
。激光点云消息/apollo/sensor/gnss/best_pose
。GPS定位消息/apollo/sensor/gnss/heading
。车辆朝向消息/apollo/sensor/gnss/imu
。IMU消息
发布:
/apollo/localization/msf_lidar
激光点云定位消息/apollo/localization/msf_gnss
根据卡尔曼滤波计算得到的GNSS定位消息apollo/localization/msf_status
MSF融合定位状态/apollo/localization/pose
融合定位消息