ArduPilot 包括对车辆上传感器放置的补偿。本页阐明了可以设置哪些参数以及应如何设置它们。
在大多数车辆中,所有传感器(IMU、GPS、光流等)彼此之间的距离都在 15 厘米以内,提供偏移不太可能带来显着的性能改进。
传感器的位置偏移被指定为 3 个值(X、Y 和 Z),它们是距 IMU(可以假设位于自动驾驶板中间)或车辆重心的距离(以米为单位)。
X:IMU 或重心前方的距离。正值是朝向车辆的前部,负值是朝向车辆的后部。
Y :到 IMU 或重心右侧的距离。正值朝向车辆的右侧,负值朝向车辆的左侧。
Z: IMU 或重心下方的距离。正值较低,负值较高。
实际上,可以从自动驾驶仪的中心测量到传感器的距离,除非自动驾驶仪本身距离车辆重心很远,在这种情况下,可以指定 IMU 位置偏移,然后可以指定其他传感器的位置偏移。从车辆的重心指定。
参数详情¶
IMU(又名 INS):
为了获得最佳结果,自动驾驶仪(以及 IMU)应放置在车辆的重心处,但如果这在物理上不可能,则可以通过设置以下参数来部分补偿偏移。
INS_POS1_X、 INS_POS1_Y、 INS_POS1_Z第一个 IMU 距车辆重心的位置
INS_POS2_X、 INS_POS2_Y、 INS_POS2_Z第二个 IMU 距车辆重心的位置
INS_POS3_X、 INS_POS3_Y、 INS_POS3_Z距车辆重心的第三个 IMU 位置
补偿只是部分的,因为 ArduPilot 可以纠正车辆的速度和位置估计,但不能纠正加速度估计。例如,如果自动驾驶仪放置在车辆的前端,并且车辆突然向后倾斜(即旋转,使其前端朝上),而没有偏移补偿,则车辆速度估计将立即显示车辆正在爬升,而实际上并非如此。添加位置偏移后,速度将不会显示这种瞬时爬升。EKF 仍然会显示瞬时垂直加速度,并且因为我们在高度保持控制器中使用加速度,这仍然可能导致车辆瞬时减少油门。
虽然可以为每个 IMU 设置单独的位置偏移,但大多数自动驾驶板上 IMU 的放置差异非常小,因此可以对所有 IMU 使用相同的值
笔记
如果指定了 IMU 偏移,则以下所有偏移均相对于重心而不是 IMU。
全球定位系统:
GPS_POS1_X、 GPS_POS1_Y、 GPS_POS1_Z车辆 IMU 或重心的第一个 GPS 位置
GPS_POS2_X、 GPS_POS2_Y、 GPS_POS2_Z距离车辆 IMU 或重心的第二个 GPS 位置
测距仪(声纳或激光雷达):
RNGFND1_POS_X、 RNGFND1_POS_Y、 RNGFND1_POS_Z第一个测距仪距离车辆 IMU 或重心的位置
RNGFND2_POS_X、 RNGFND2_POS_Y、 RNGFND2_POS_Z第二个测距仪距车辆 IMU 或重心的位置
光流:
FLOW_POS_X、 FLOW_POS_Y、 FLOW_POS_Z距 IMU 或重心的距离
视觉里程计:
VISO_POS_X、 VISO_POS_Y、 VISO_POS_Z距 IMU 或重心的距离