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厘米
十四、 支持步行机器人(基础)
最后,感谢每个人对这个版本的贡献!
以上内容就是Randy Mackay与大家分享的!