模吧

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

11758查看 | 14回复

Pixhawk固定翼固件版本改动翻译(arduplane3.4,3.5,3.6,3.7,3.8)

[复制链接]
发表于 2016-10-27 10:02:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 xttyyy 于 2017-10-24 10:58 编辑

    最近一年Ardupilot的固定翼项目大火,尤其是老外们热情非常之高,从15年9月份起的一年内,经历了从ArduPlane3.4到3.5,3.6,3.7四个版本。很多网友表示国内很多ardupilot固定翼资料还都停留在3.2时代,中文环境内很难找到最新的版本的变动说明,因此我决定新开一贴,用几天时间把最近几个固定翼版本的changelog(改动列表)翻译搬运过来,供大家参考。

   Ardupilot Plane v3.4:
Arduplane3.4 版本更新于2015年9月15日,本版本包括了大量的内容更新.
一.卡尔曼滤波相关
    这是第一个在姿态和位置估算中默认使用扩展卡尔曼滤波的固定翼版本,扩展卡尔曼滤波经过长期开发后,现在已经可以明显提高飞行性能。你仍然可以固执的通过禁用AHRS_EKF_USE参数来关闭扩展卡尔曼滤波。目前,一旦卡尔曼滤波运算过程中出现异常,系统会非常快速的切换到之前的DCM(方向余弦矩阵)系统。
    为了使用扩展卡尔曼滤波,我们需要比之前更为仔细的完成飞行前设置工作,因此在这个版本中,我们默认启用了解锁检查(arming and pre-arm),同时我们也强烈建议不要禁用解锁检查。
二.APM硬件相关
    非常重要的一点是,这是最后一个支持AMP飞控硬件的版本(译者注,当年3.2.1也曾经号称是最后一个支持apm的版本),因为我们用光了AMP硬件所提供的所有固件存储空间。。。为了适配apm,在之前几个版本中,我们花费了太多时间一遍又一遍的缩减程序空间,这耗费了太多时间并限制了arduplane的进一步发展。开发组非常欢迎大家提供apm版本固件的继续优化,但是开发组自己未来将仅针对apm固件的严重缺陷进行简单修改。
    尽管这是最后一个支持apm硬件的版本,但是在apm硬件上,会缺失如下重要功能:
        1.无法在降落过程中使用rangefinder相关功能(rangefinder是指利用声呐等技术进行高度定位)
        2.没有地形跟随功能
        3.没有扩展卡尔曼滤波
        4.没有摄像头控制功能
        5.不支持CLI(地面站命令行控制)
        6.没有高级失控保护功能
        7.无法使用hil仿真
        8.支持的gps格式比较少
    与此同时,在APM硬件的3.4版本中,还比之前的版本缺少了一些小细节功能,因此,APM硬件用户请慎重升级3.4.
三.手动调参功能
    虽然大多数用户非常喜欢自动调参功能,但是手动调参仍然好玩,并且可以得到很好的结果。3.4版本扩展了新的数据格式和mavlink协议去支持更为丰富的手动调参。比如可以在日志中查看每一个P,i,D参数对飞行的影响,以便于了解其与飞行性能的关系。
    新的调参机制下,一个简单的改进是,可以很容易关闭和开启之前一次微调,这种切换可以让操作者通过对比体验到微调对飞机造成的影响。
四.震动日志
    3.4版本增加了大量和飞行器震动相关的数据,并且可以通过MAVLink协议中的VIBRATION消息或者飞行日志中的VIBE记录中获取。这些数据可以帮助对飞行器震动进行更好的了解。通过设置LOG_BITMASK参数允许记录raw数据,可以获得加速度计和陀螺仪每一个采样点的数据,进而进行更为深入的研究。请注意,开启了raw数据记录后,因为日志数据流量大,需要使用高速micorSD卡。
五.方向舵加解锁
    从3.4版本开始,可以通过参数方向舵锁定或解锁飞控(译者注,最大好处是可以摆脱安全开关)。这一功能默认是关闭的(在特技飞行中有可能会带来误判)。通过设置参数ARMING_RUDDER为2可以启动此功能。通过方向舵加锁时,飞控首先判断飞行器不在飞行状态。
六.更多的传感器支持
    3.4版本额外提供了更多种传感器的支持。现在对测距雷达提供了串口,i2c,模拟三种接口方式。并且支持了RTK双频GPS。还增加了对"bluelabel"  雷达的I2C和PWM接口支持。(译者注,项目组添加了很多硬件支持,无奈这些硬件接口没有统一标准,因此很难大面积推广)。
七.更好的兼容Linux
    3.4固件对很多基于Linux的飞控硬件实现了更好的兼容,如NavIO+,PXF,ERLE,BBBMINI以及树莓派飞控板。
八.板上罗盘校准
    3.4版本采用了新的板上罗盘校准机制,考虑到了软铁效应,支持更加精细的罗盘校准。针对不同地面站都可以使用的罗盘校准仍然在开发中。
九.一些额外改动
除了上述改动外,还用数以千计小改动伴随着3.4固件一同到来,如
  •     修正了超过了地理围栏后的返航点错误
  •     通过Mavlink支持gimbal传感器(译者注,室内定位相关)
  •     日志记录中采用了64位时间戳
  •     增加了实时PID调参消息和 PID数据日志
  •     解决了一个导致px4失控保护失败的bug
  •     增加了pixhawk对dsm信号的兼容
  •     增加ALTITUDE_WAIT任务命令
  •     增加了震动等级的日志
  •     锁定后不再进入低电压失控保护
  •     增加速度和角度向量的日志
  •     LOITER_TO_ALT时会通过悬停半径计算飞行朝向
  •     支持方向舵解锁
  •     修改了襟翼算法
  •     修改航点时不再切换模式
  •     训练模式下限制横滚幅度以防止失速
  •     默认禁用TRIM_RC_AT_START
  •     修正了一些参数说明文档的拼写错误
  •     航点完成后,飞控将发送MISSION_ITEM_REACHED消息
  •     修正了SITL仿真时空速不更新的问题
  •     默认启动扩展卡尔曼滤波
  •     固定翼和汽车模式下改善了陀螺仪偏差纠正算法
  •     当可用星数量差1时,也可以切换gps了
  •     增加了NSH的Mavlink支持
  •     增加了pixhawk和pixhawk2对 mpu9250的支持
  •     增加了对ublox RXM-RAWX消息的支持
  •     一批更新以便于更好的支持Linux为基础的飞控硬件
  •     增加了ORGN消息的日志
  •     增加了对新的“blue label”雷达的支持
  •     ublox驱动中采用real hdop
  •     改善了uBlox的自动设置功能
  •     解锁速度阈值提高到了0.75(译者注,放置某些情况下认为正在飞行而无法解锁)
  •     改善了在Linux下对TCP和UDP协议的支持
  •     DCM算法中改为采用速度和角度矢量
  •     改善了扩展卡尔曼算法中决定采用哪个加速度传感器数据的算法
  •     改善pixhawk的串口流控自动检测功能
  •     在进近或着陆阶段不再出发失控保护
  •     地面站失控保护只会在AUTOmode下触发
  •     增加了设置爬升和下降速度的参数CONTINUE_AND_CHANGE_ALT
  •     增加了针对uavcan GPS的HDOP 驱动
  •     改进了飞行器版本号发送的机制
  •     启动时如果油门数值异常,会放置马达转动
  •     当测距传感武器距离异常时在日志中记录为0
  •     为BeagleBoneBlack 端口增加了PRU固件文件
  •     修正了对最新SORM32 gimbal的支持
  •     采用正确的数值发送STATUSTEX
  •     增加了对PWM输入RSSI的支持
  •     修正了UAVCAN GPS的MAVLINK头
  •     在Linux增加了对rangefinder的I2C接口的支持
  •     改善了系统启动时各参数的记录格式
  •     增添了新的板上罗盘校准方法
  •     针对NavIO端口改善了RCOutput代码
  •     增加了对Septentrio GPS 接收器的支持
  •     通过CLI命令可以发送DO_MOUNT_CONTROI消息了
  •     增加了CAM_RELAY_ON参数
  •     把SKIP_GYRO_CAL的功能整合移动到了INS_GYR_CAL
  •     增加了landing阶段对雷达错误的检测。

 楼主| 发表于 2016-10-27 10:02:51 | 显示全部楼层
本帖最后由 xttyyy 于 2016-10-28 14:08 编辑

ArduPlane 3.5 版本更新于 2016130
主要改动:
.采用新的卡尔曼滤波算法EKF2
         在姿态和位置估算时,从3.4版本开始使用的扩扎卡尔曼滤波器一直工作正常,但是Paul Riseborough仍然非常仔细和刻苦的调整了其中的部分参数,并且解决了一些错误,具体体现为:
         1.针对多IMU飞控板,支持针对独立的IMU进行计算,进一步提高了系统的冗余性。
         2.提供陀螺仪数值漂移估算,尤其是在启动时。
         3.早姿态估算有错误时,可以更为快速的恢复
         经过对上述新EKF的测试后,我们将会默认采用新算法。但是仍然可以通过设置参数AHRS_EKF_TYPE1来手动指定采用原有的EKF
.降落伞支持
         这是我们提供伞降支持的第一个版本。设置方式和多旋翼相同,具体参见 copter.ardupilot.com/wiki/parachute/。请注意固定翼的伞降功能目前仍然是实验性的,需要谨慎使用。
. QuadPlane 支持(译者注,近日大热,即多旋翼和固定翼混合模式,包括倾转旋翼和非倾转混合体)
       固定翼和多旋翼混合体称之为QuadPlane,更多信息可以参见http://diydrones.com/main/error/404?filename=profiles/blogs/quadplane-support-in-apm-plane-..
四.支持了四种新的飞控硬件
       包括BHAT,PXFmin,QualcommFlight和Pixracer(pixhawk系列第一款采用FMUv4系列固件的版本)
       因为体积小巧,所以Pixracer是一个非常棒的飞控板,它可以安装在很多小固定翼上。最初它的设计目标是用于小型多旋翼穿越机,但同时也适用于舵机通道数少于6各的小型固定翼。这里要感谢AUAV(澳大利亚小组)对Pixracer开发和测试做出的贡献。
五.支持在移动平台上启动
       新的扩展卡尔曼滤波(EKF2)带来的一个好处是,在启动时,不需对陀螺仪进行校准就可以快速估算偏移。这让飞行器在移动平台(如行驶的汽车,移动的船舶)上启动和解锁成为了可能,所需要的仅仅是将参数INS_GYR_CAl设置到0(禁用陀螺仪的启动校准)。
六.改善了相机快门日志
       3.5版本增加了CAM_FEEDBACK_PIN和CAM_FEEDBACK_POL参数,可以独立存储CAM和TRIG日志。TRIG记录相机快门何时触发,而CAM则记录通过外部信号获得的相机开始工作消息。这有助于获得相机图像的精确时间。
七.更多改动
       1.RPM(转速传感器)日志
       2.在osx操作系统下新的waf编译体系
       3.新的一步加速度计校准
       4.混合模式飞行器的sitl仿真
       5.改良了着陆进近逻辑
       6.改善了测距仪电源控制机制
       7.支持ADSB(广播式自动相关监视)接口
       8.增加了闪存读取相关的MAVLINK协议
       9.主循环速率可设置
       10.可以将参数设置为隐藏
       11.改善了坠毁检测逻辑
       12.降落时可选平滑速度加权
       13.改良了双通道GPS的设置逻辑
       14.改进了多RTK GPS驱动
       15.很多针对Linux系统飞控板的改动
       16.改进了CAM消息的日志机制
       17.针对linux系统飞控板增加了对IMU恒温器的支持
       18.linux系统飞控板允许通过UDP发送RCInput数据
       19.改善了EKF启动时对GPS精度的检查
       20.所有平台都增加了对原始IMU数据的日志
       21.增加了BRD_CAN_ENABLE参数
       22.支持起落架的SITL仿真
       23.LED亮度可设置
       24. 改进了OVERRIDE_CHAN操作,解决了一个引起数值波动的问题
       25 增加OVERRIDE_SAFETY参数
 楼主| 发表于 2016-10-27 10:03:04 | 显示全部楼层
本帖最后由 xttyyy 于 2016-10-28 16:23 编辑

ArduPlane 3.6 更新于2016年7月11日
3.6版本最大的改变包括:
一.对PX4Firmwawre代码进行了大量更新
              对PX4Firmware代码结构进行了改动,主要提高了对Pixracer飞控板的兼容性,同时也提高了调度机制的效率和UAVCAN。
二.对QuadPlane代码进行了大量更新
       QuadPlane的变化非常大,一大批新的功能被添加进来,包括:
              改进了自动风向适应机制
              对混合固定翼和倾转旋翼(VTOL)添加了大量任务命令
              失控返航支持倾转旋翼降落
              添加了针对倾转旋翼的Guide(译者注,guide模式多用于自动化控制)模式的支持
              对固定翼和旋翼的变换过程进行了大量的修改
              针对倾转旋翼马达开发了新的调试系统
              扩展了很多飞行日志内容以便于进行分析
              
三.添加了对MAVLink2的支持
详细更新内容如下:
1.对所有quadmotor机型添加了顺序马达测试功能
2.合并了PX4Firmware的改动
3.从多旋翼移植了AC_AttitudeControl库到QuadPlane
4.为quadplane修改了默认增益值
5.在quadplane降落初始阶段,采用了新的速度控制器
6.倾转旋翼飞行器的降落速度变得更为平滑了
7.quadplanes的飞控循环默认频率设置到了300Hz(译者注pixhawk多旋翼和固定翼为400Hz)
8.最多支持16个输出通道,其中两个通过SBUS输出(译者注,为了QuadPlane,开发者也是拼了老命了,以后是不是要采用PPM信号了)
9.解决了一个当LAND_FLARE_SEC设置过高时,降落过程出现抖动的bug
10.改进了坠毁检测逻辑(译者注,每个版本都在改进这个逻辑,看来一直不完善)
11.增加了飞行中通过遥控器进行调参的机制(译者注,这里应该是针对quadplane的,因为固定翼的飞行中调参早就有了)
12.改进了对SET_HOME_POSITION的处理方式
13.增加了倾转旋翼前马达的Q_VFWD_GAIN参数
14.为了适应当前风向,加入了Q_WVANE_GAIN参数
15.将会把丢失的日志信息个数写入日志(译者注,个人理解应该是当需要写入的日志过多,存储卡写速度无法满足要求时,就会发生日志丢失,3.6版本将会把这些丢失的日志数量进行统计,并且写到日志中。)
17.位置更新函数循环频率从10hz提高到了50hz(译者注,应该是为了满足quadplane飞行模式转换过程中对位置的高精度需求)
18.发动机会在打开降落伞的同时停止运转,而不再是打开降落伞后再停止
19.quadplane模型中支持36桨模式
20.不再将附加偏转数据写入日志,取而代之的是L1 xtrack error integrator数据
21.在完成对加载因子的验证前限制横滚角度
22.简化了着陆时“平飘”阶段的逻辑
23.通过在完成自动起飞的最后阶段TKOFF_PLIM_SEC秒内,减少仰角,来保证起飞过程更为平滑。
24.增加了一个飞行任务Do_VTOL_TRANSITION,控制vtol的飞行状态切换
25.修正了VTOL飞行时,is_flying()函数的错误
26.增加了参数Q_ENABLE=2,用于倾转旋翼AUTO模式的启动(译者注,不太明白想表达什么)
27.倾转旋翼降落后,重新初始化空速
28.VTOL_ANGLE_MAX的默认参数降到了30
29.当飞行任务执行完成后,将会切换到RTL模式而不再停留在AUTO模式
30.QuadPlane开发了专门的QRTL返航模式
31.增加了Q_RTL_MODE参数,当其为1时,系统RTL模式将会改变为QRTL模式
32.见笑了EKF和姿态日志频率到25Hz
33.增加了CHUTE_DELAY_MS参数,表示开伞延迟时间
34.允许将任何输入通道输出到任意输出通道(译者注,大赞,方便多了)
35.大量的waf编译改进,用于macos下的代码编译
36.提供了对高速相机快门事件的支持
37.针对Pixracer的兼容性做了大量改动
38.增加了很多倾转马达的仿真能力
39.只有在锁定(disarm)时,才会存储动态适应的磁场环境偏移参数
40.修改了MISSION_ITEM_INT的变量类型,以便于表达更多的航点
41.修改不在起飞点上空时的伞降触发高度
42.QuadPlane调参添加了AP_TUNING系统
43.内置支持了tiltrotorstiltwings。(译者注,tiltrotors是机翼不旋转,tiltwings是机翼和马达一起旋转)
44.增加了LOG_REPLAYLOG_DISAMED参数
45.增加了参数Q_GUIDED_MODE
46.更新了QuadPlane的文档
47.增加对Mavlink2的支持
48.解决了初始高度与起飞高度不一致的bug
49.改善了依赖雷达进行自动滑行降落的斜率
50.修正了当THR_PASS_STAB=1(译者注,遥控器油门通道直接输出到马达)时,油门触发的失控保护的bug
51.当气压计和空速计算时,不会再阻塞EKF
52.当设置CHUTE_MINALT=0时,可以测试伞降功能
53.设置水平尾翼混空为输入值的150%
54.增加了QuadPlane的电调校准机制。
 楼主| 发表于 2016-10-27 10:03:16 | 显示全部楼层
本帖最后由 xttyyy 于 2016-10-28 17:00 编辑

ArduPlane3.7 更新于201699
该版本主要更新了如下内容:
.更加可靠的倒飞
     MarcMerlin发现有些类型的滑翔机在倒飞和正飞切换时会出现错误。这是由于升降舵角度过大干扰了倒飞回正,因此通过LIM_ROLL_CD防止升降舵角度过大,可以解决这个bug
.提供了对燃油发动机的更为自动化的支持
       ardupilot很久之前就已经支持了燃油发动机,但是至今为止操作者还是需要通过遥控器通道直接映射来控制发动机的点火和启动。一个新的“ICE”(内燃机)模块现在可以自动化的对燃油发动机进行控制。
       如果与转速传感器配合,可以设置飞行器自动的控制点火和启动,实现马达在地面和空中的一键启动。
       这个内燃机模块也同时被整合进了QuadPlane代码,允许发动机在指定高度自动启动。这对于那些牵引发动机在降落时会碰到地面的飞行器非常重要,我们可以在飞行器落地前的某个步骤就关闭燃油发动机了。
.失速恢复与Q_ASSIST_ANGLE
       一个新的功能是当quadplane在固定翼模式发生时速时的自动应对机制。之前,倾转旋翼的多旋翼马达组在固定翼模式下,只有当速度小于Q_ASSIST_SPEEd时才会启动以辅助飞行。但是,一些失速是发生在速度较快的情况下的,此时就不会启动多旋翼马达组了。因此添加了一个新的参数Q_ASSIST_ANGLE,一但飞行器的roll或者pitch角度超过了这个值,就会启动多旋翼马达组帮助恢复正常飞行。
.Pixhawk2支持IMU恒温
       这个版本将会支持pixhawk2硬件的IMU恒温,由此提供更为稳定的IMU温度,提高IMU在不同温度下的健壮性。通过BRD_IMU_TARGETTEMP参数设置,Pixhawk2会自动检测并控制加热器,保证温度恒定。
.PH2SLIM支持
       此版本添加了对Pixhawk2PH2SLIM形态的支持。PH2SlIM是一个没有独立传感器顶板的Pixhawk2飞控,可以安装子啊小飞行器上。通过设置参数BRD_TYPE6可以启用PH2SLIM
[size=15.3333px](未完待续)
发表于 2016-10-27 10:49:34 | 显示全部楼层
大神啊,可以可以
发表于 2016-10-27 12:11:47 | 显示全部楼层
本帖最后由 xttyyy 于 2017-10-24 10:57 编辑

Ardupilot组织85日正式发布了稳定版固定翼固件Arduplane3.8。相对于3.7.1版本,具有如下变化:
l  添加了对EKF3的支持(默认关闭)。(编者注,现在通过三组EKF来进一步增加各类传感器测量值的准确性和抗干扰性)
l  启用了全新的输出通道设置架构(编者注,对飞控的使用影响巨大,请认真看下文总结)
l  增加对MS5525空速传感器的支持。
l  增加对更多种类倾转旋翼垂直起降飞机的支持。
l  增加对尾座式固定翼(包括矢量尾推)的支持。
l  增加对双发动机固定翼的支持,通过转速差辅助转向。(编者注,对云团等双发飞机是大福利)
l  采用全新的三角翼、V尾、襟副翼、扰流板(蝴蝶刹)等设置方式。(编者注,非常重要,参加下文总结)
l  支持深度失速着陆。
l  支持双gps混合
l  完成了新的基于DMA的告诉IMU采样
l  支持Drotek生产的px4pro飞控板
l  添加了一些新的罗盘、IMU和GPS驱动
l  new Manul_rcmask system for fine-grained MANUAL flight setup
l  加锁后可以循环写log文件
l  添加大量对于垂直起降飞机的改动
l  Q_GUIDED_MODE参数设置为1,可以采用固定翼的定点悬停模式(环绕)
l  在CRUISE和FBWB模式支持方向舵解锁
l  修正了一些遥控器调参的bug
l  修正了一个在模式转换时发生的姿态值归零错误
l  增加SYSID_ENFORCE参数
l  增加对rudder-only飞机的支持
l  大幅提高了自动降落的准确度
l  可以通过SERVO_RATE参数设置支持高速舵机
l  通过CAN_开头的多个参数,大幅提高对UAVCAN的支持
l  支持3D飞行的“挂机”模式
l  改进垂直起降飞机的PID日志
l  垂直起降过程变得更加平滑
l  开始通过日志记录side-slip和angle-off-attack值
l  增加对AETR的记录
l  增加对上升气流的感知和利用

因为Arduplane3.8相对于3.7在使用方式上有部分大变化,因此请仔细了解改动情况后再升级使用。
发表于 2016-10-27 12:59:43 | 显示全部楼层
6666666666666
 楼主| 发表于 2016-10-27 13:57:02 | 显示全部楼层
山地乌鸦 发表于 2016-10-27 12:11
五楼备用, ardupilot plane 3.9

悟空,又来调皮
发表于 2016-10-27 22:40:29 | 显示全部楼层
好资料。。。。。
发表于 2016-11-8 20:03:42 | 显示全部楼层
xttyyy 发表于 2016-10-27 10:03
ArduPlane3.7 更新于2016年9月9日该版本主要更新了如下内容:一.更加可靠的倒飞     MarcMerlin发现有些类 ...

有下集没有?
发表于 2016-11-29 23:40:14 | 显示全部楼层
3.5版本增加了CAM_FEEDBACK_PIN和CAM_FEEDBACK_POL参数,可以独立存储CAM和TRIG日志。TRIG记录相机快门何时触发,而CAM则记录通过外部信号获得的相机开始工作消息。这有助于获得相机图像的精确时间
发表于 2017-3-26 08:19:25 | 显示全部楼层
太感谢了楼主!
发表于 2020-2-19 09:33:05 | 显示全部楼层
楼主,原网址能给一下吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|关于模吧|APP下载|广告报价|小黑屋|手机版|企业会员|商城入驻|联系我们|模吧 ( 冀公网安备13080502000084号 )

© 2013-2020 Moz8.com 模吧,玩出精彩!