之前介绍过MatekSys Optical Flow 3901-L0X模块:
【1】传感模块:MATEKSYS Optical Flow & LIDAR 3901-L0X
【2】iNavFlight之MSP v2 Sensor报文格式
当时主要是在inav固件上进行测试,整体感觉效果一般。
鉴于本次打算将电传模块换到VTOL飞机上去飞固定翼,
【1】Ardupilot开源飞控之VTOL之旅:配件规格
【2】Ardupilot开源飞控之VTOL之旅:配件试装
所以借着这个机会,将MatekSys Optical Flow 3901-L0X替换Mark4的电传,看下Ardupilot效果如何?
FLOW_TYPE = 7 (MSP)
FLOW_FXSCALER = -800
FLOW_FYSCALER = -800
SERIAL4_PROTOCOL = 32 (MSP)
SERIAL4_BAUD = 115 (115200 bps)
RNGFND1_TYPE = 32 (MSP)
RNGFND1_MIN_CM = 8 to set range finder’s minimum range to 0.08m
RNGFND1_MAX_CM = 200 to set range finder’s maximum range to 2m
RNGFND1_ORIENT = 25 (Facing Down)
注:文档中不推荐使用这颗板载的激光测距传感,可能是测量距离太近(0~2m),或者数据的稳定性受到环境影响较大。
FlowHold飞行模式下,仅需提供:光流位置信息。
定位优化:(GPS/IMU/OpticalFlow在15cm距离以内,通常对性能没有影响);距离重心的位置;
Optical Flow
FLOW_POS_X, FLOW_POS_Y, FLOW_POS_Z
FLOW_POS_X = 0.05 set to 5 cm forward
FLOW_POS_Y = 0
FLOW_POS_Z = 0
IMU
INS_POS1_X, INS_POS1_Y, INS_POS1_Z
INS_POS2_X, INS_POS2_Y, INS_POS2_Z
INS_POS3_X, INS_POS3_Y, INS_POS3_Z
GPS
GPS_POS1_X, GPS_POS1_Y, GPS_POS1_Z
GPS_POS2_X, GPS_POS2_Y, GPS_POS2_Z
Range Finder (Sonar or Lidar)
RNGFND1_POS_X, RNGFND1_POS_Y, RNGFND1_POS_Z
RNGFND2_POS_X, RNGFND2_POS_Y, RNGFND2_POS_Z
Visual Odometry
VISO_POS_X, VISO_POS_Y, VISO_POS_Z
opt_m_x
, opt_m_y
, opt_qua
显示非零值,持续跳动。OF.flowX
, OF.bodyX
, IMU.GyrX
趋势和大小基本一致OF.flowY
, OF.bodyY
, IMU.GyrY
趋势和大小基本一致rangefinder1
不为零,且随着姿态、高度变化,数值缓慢线性变化。EKF5.meaRng
,最新4.4.0固件XKF5.rng
飞行预检查,取消GPS检查项。
Ardupilot 4.4.0 Mark4 + MatekSys Optical Flow 3901-L0X + FlowHold
对比iNav光流悬停,详见:传感模块:MATEKSYS Optical Flow & LIDAR 3901-L0X
iNav
【1】传感模块:MATEKSYS Optical Flow & LIDAR 3901-L0X
【2】iNavFlight之MSP v2 Sensor报文格式
【3】MatekSys Optical Flow 3901-L0X