Rover-4.1.0 发布

ArduPilot团队的核心开发者Randy Mackay带来关于Rover-4.1.0新功能的个人分享,以下是他给大家分享的内容:

经过几个月的开发和测试,Rover-4.1.0作为官方的无人车和无人船固件,正式发布!

关于4.0的改动可以参考以下内容:

一、 AHRS/EKF增强和修复

1.DCM在船上更容易作为备用估计器

2.EKF3是默认估计器(EKF2可作为选项)

3.EKF3 GSF可以通过源切换调用多次

(不再受EK3_GSF_RST_MAX限制)

4.修复了EKF3 IMU偏移(如果INS_POS_XYZ参数设置,车辆报告的位置略有不正确)

5.外部AHRS/IMU支持(如VectorNav)

6.GSF允许使用GPS进行紧急偏航校正

7.偏航GPS设置和可靠性改进,包括:

  • 高度估算更稳定
  • 增加上锁检
  • 来自不同GPS的定位和偏航
  • 在使用GPS估算的偏航恢复后,EKF3修复偏航复位

8.即使用户在没有GPS锁定的情况下起飞,各个核心的起始高度也保持一致

9.光流除零保护(只在模拟器中出现)

10.改进通道切换逻辑

11.支持长距离航行(几千公里),包括双精度EKF和移动原点

12.修复经度缠绕(允许在-180°和180°之间的经度缠绕自动飞行)

13.修复了GPS/非GPS转换期间定位跳变

14.修复预备解锁阶段时的滚转/俯仰和偏航角的差异

15.传感器敏感度(提高传感器故障冗余)

16.GPS/非GPS转换的源切换(参见EK3_SRCx_参数)

17.改进偏航估计和可靠性

二、 BLHeli改进和修复

1.修复双向ESC遥测

2.支持双向dshot 1200

3.修复利用非数字输出的数字控制

4.支持LED, 蜂鸣器和方向控制的dshot命令

5.改进直通可靠性

三、 控制的改进

1.改进矢量推力(见MOT_VEC_ANGLEMAX参数)

2.滑动转向支持转向优先于油门

(见MOT_STR_THR_MIX参数)

3.路径点延迟-1,不延迟车辆(与0相同)

四、 避障

1.改进BendyRuler迟钝现象

2.Intel Realsense 435/455摄像头支持(需要协处理器)

3.清除障碍后返回原路径(见OA_OPTIONS参数)

4.简单避障后退,避开障碍物

(参见AVOID_BACKUP_SPD参数)

5.简单回避加速限制(参见AVOID_ACCEL_MAX参数)

6.当车辆停止时,减少避障带来的振动

7.同时规划Dijkstra和BendyRuler的路径

8.障碍数据库现在为3D

9.改进障碍过滤

10.如果避障使用的距离传感器禁用,则预解锁的距离传感器检查禁用

五、 磁罗盘的增强

1.改进飞行时的学习(见COMPASS_LEARN = 3)

2.支持大型车辆的校准(例如将车辆头朝北启动MP按钮进行校准)

3.优先级(参见MP的指南针优先级表)

4.自定义说明

六、 支持英特尔实感T265追踪摄像头

1.外部源接收的位置和速度,频率不超过50hz

2.接受外部重置

3.从1MB板上移除视觉里程计功能

*参见VISO_TYPE = 2,需要配套计算机

七、 新自动驾驶仪与自动驾驶仪具体改进

1.Cube Black支持外部IST8308罗盘

2.修复Cube Orange串口1/2 DMA

3.CUAV-Nora CUAV-X7

4.FlywooF745, FlywooF7451悟空Nano

5.Holybro Pix32v5

6.iFlight BeastF7和BeastH7

7.修复KakuteF4Mini SBUS

8.在PWM5上重新启用MatekF405-bdshot NeoPixel led

9.MatekH743 MatekF765-Wing

10.mRo ControlZero, Nexus, PixracerPro

11.PixC4-Pi和PixC4-Jetson

12.修复Pix32v5 USB产品线,开启IMU加热器

13.修复Pixhawk4迷你安全开关

14.更换了Pixhawk4的蓝色和红色led

15.QioTekZealotF427 QioTekZealotH743

16.R9Pilot

17.SuccexF4

八、 IMU的改进

1.温度校准

2.高性能自动驾驶仪上更快的陀螺仪采样(F7和更快,参见INS_GYRO_RATE)

九、

1.辅助函数日志显示它是如何被调用的(开关,按钮或脚本)

2.EKF不受日志记录启动的影响(由于定时延迟,EKF可能变得不健康)

3.桅杆直接旋转测井

4.提高了基于F765和F777的板的下载速度 (增加了USB缓冲区)

5.强制上锁创建日志

6.修复了查找最后一个日志时的内存泄漏问题

7.启用测距仪记录(RFND)

8.改进可靠性

9.修正重放/DAL RMGH日志信息格式

10.修复SD卡减速与早期安装

11.声呐水温记录在DPTH信息中

12.THR板载日志消息记录反复加速

十、 新驱动程序和驱动程序的具体改进

1.AllyStar NMEA GPS

2.BMM150作为外部罗盘

3.CRSF和SRXL2 RC协议

4.Dshot(双向)用于RPM遥测

5.GY-US32-v2激光雷达

6.HC-SR04激光雷达

7.智能能源氢燃料电池

8.Lightware SF45b激光雷达

9.支持MSP协议 (以及DJI DPV系统)

10.RichenPower发电机

11.Rotoye智能电池

12.RunCam Split 4和RunCam混合支持

13.智能音频

14.SMBus电池,最多12芯

15.USD1 CAN雷达

十一、 脚本的增强

1.支持按钮,接近,测距和转速传感器

2.DO_任务命令可以从脚本触发

3.支持I2C传感器驱动 (即允许在Lua中编写传感器驱动)

4.日志记录(例如,允许Lua脚本写入板载日志)

5.任务项读取支持

6.电机驱动支持(用于行走机器人)

7.引导模式下的位置、速度和直接转向和油门控制

8.预备上锁检查(例如,允许在Lua中编写自定义上锁检查)

9.支持ROMFS (允许编写脚本到ROMFS而不是SD卡)

10.串口支持(允许从Lua读/写串口)

11.设置home点并获得EKF原始支持

12.支持ToshibaCAN ESC使用时间读取

13.Lua脚本可以放在ROMFS的根目录下(仅适用于开发人员)

十二、 其它增强功能

1.气压计参数以BARO_开始(之前是GND)

2.气压表获得设备id以便于识别

3.ChibiOS升级到20.3

4.CRSF直通Yaapu部件

5.CSRF遥测技术改进了电源设置,并更快地传递参数请求

6.DShot率增加(见SERVO_DSHOT_RATE)

7.文件系统/MAVFTP扩展,包括@SYS用于性能监控

8.FrSky数传报告故障安全、地形高度健康和围栏状态

9.GPS_DRV_OPTIONS允许强制UBlox GPS到115200波特率

10.MAV_CMD_DO_REPOSITION支持

11.MAVFTP性能提升

12.OSD得到栅栏图标

13.在eeprom损坏后,通过备份和恢复旧的参数来重置参数

14.FLTMODE_CH和RCx_OPTION冲突的预上锁检查

15.RunCam OSD和摄像机控制

16.支持RunCam Hybrid (参见RUNCAM_TYPE参数)

17.帆船进行风向标装备检查

18.Septentrio GPSs支持GPS_SBAS_MOD参数

19.简单模式支持两个桨叶输入

20.Auto中的速度推进与Acro更加一致(即相同的杆位导致相同的速度)

21.spectrum VTX控件

22.任务完成后切换到手动模式

(见MIS_DONE_BEHAVIOR参数)

23.TURN_MAX_G重命名为ATC_TURN_MAX_G并应用于所有回合

24.使用WATER_DEPTH mavlink消息发送给GCS的水深和温度

十三、 Bug修复

1.在RTL, SmartRTL和初始化模式中拒绝上锁

2.为BMP380, BMP280, LPS2XH, SPL06驱动修复气压平均

3.信标驱动程序不受不存在信标数据请求的保护

4.BLHeli Auto只影响遥测传送以简化设置

5.BLHeli修复可能导致启动失败的问题

6.CAN GPS排序修正(之前的顺序可能会切换,这意味着GPS_POS_参数在错误的GPS上使用)

7.CAN线程修复,解决lua脚本使用CAN时可能出现的锁定问题

8.圆形复杂围栏半径未截断

9.增加CRSF帧超时以减少RC故障保护

10.修正CRSF消息垃圾和固件字符串长度

11.修正赤纬自动查找四舍五入 (在世界某些地区导致赤纬不准确)

12.在1MB板上重新启用显示

13.Dshot错误修复了自动驾驶与I/O板(CubeBlack, CubeOrange等)

14.在Pixhawk4, CUAVv5, CUAVv5- nano上支持DShot(双向)

15.DShot在解除武装时总是发送0(由于配置错误解除武装时防止电机旋转)

16.DShot修复可能导致主循环抖动

17.DShot蜂鸣器音在电机测试时禁用,以消除不好的交互

18.修复ESC遥测,包括带有I/O mcu的板上的电机索引

19.如果用户禁用了安全开关,I/O MCU复位修复(复位后恢复会使电机不旋转)

20.修复IMU信号量,以避免偶尔的损坏

21.KDECAN输出范围,电机指令和预上锁检查信息固定

22.如果解除武装失败,电机试验停止并报告故障

23.修复MSP温度标度

24.修复OSD覆盖和nullptr检查

25.修复测距仪初始缓冲器大小和波特率 (受Aintein US-D1雷达影响)

26.在启动过程的最后显示RCOut横幅,以避免无效输出

  • 修复RM3100罗盘刻度
  • 调度slip工作区,以避免MatekH7上偶尔出现的60ms延迟(仅限ChibiOS)
  • 调度程序每11分钟修复一次任务的过早运行
  • 改进了串行端口DMA竞争启发式(减少写入串行设备的延迟机会)
  • 在H7板上使用FIFO提高串口性能
  • 串口信息文件(@SYS/uarts.txt)更容易理解
  • 在停止时通过重置I-term来避免速度控制跳变
  • 修正油门回转率 (MOT_SLEWRATE参数)
  • 修复两桨转向死区
  • 修复目视里程偏航校正
  • 修复车轮编码器 (数据可以跳过)
  • 修复不使用风速传感器时风向计算
  • WPNAV_RADIUS不小于5厘米

十四、 支持步行机器人(基础)

最后,感谢每个人对这个版本的贡献!

:+1:
以上内容就是Randy Mackay与大家分享的!