电子说
本文的数据对比以ArduPilot通用嵌入式平台软件为基础。参与对比的硬件是雷迅 Pixhawk V6X和上一代 STM32F4核芯的硬件平台(例如Pixhawk1、Pixhawk2.1)。
性能对比的基础有二:
其一,ArduPilot嵌入式软件跨STM32平台的特性。在不同的STM32平台上采用相同的RTOS、相同的 C++ 接口封装、相同的调度策略。
其二,Sugar用于对比的两架飞机,除电控系统外硬件无差别,且飞机足够大(内部电控系统的重量对飞机的影响可忽略)。
处理器
关注问题
Pixhawk V6X采用STM32H753IIK6双精度浮点运算单元处理器究竟能给飞控软件运行带来怎样的提升?
背景知识
飞控的实时日志里有微秒级时间戳,在日志里统一命名为 TimeUS。通过时间戳能够计算出各个任务的 调度频率,从而了解各任务调度的 稳定度 和 实时度。
数据表现
一、低频任务
右侧窄图是通过时间戳换算出的频率,纵轴单位是Hz。评价如下:
稳定度:Pixhawk V6X 的稳定度明显优于 STM32F4系列飞控。
10Hz的数据收敛度更高,5Hz的数据分散相对不频繁。
Pixhawk V6X 10Hz数据全程无降频,STM32F4系列飞控偶尔会发生降频(甚至低于5Hz)。
实时度:Pixhawk V6X与STM32F4系列飞控都可以保证大多数的调度频率符合设计要求。
二、中频任务
稳定度:Pixhawk V6X的稳定度明显优于STM32F4系列飞控。
实时度:Pixhawk V6X全程的调度频率符合设计要求,STM32F4系列有相当一部分数据与设计要求差距很大。
Sugar这些数据来源于VTOL的固定翼飞行过程,固定翼部分最高设计频率是50Hz。多旋翼部分的最高设计频率是400Hz,对多旋翼数据感兴趣的读者可以按Sugar提的这两点标准自行测试。
IMU
多重冗余
关注问题
多重冗余与保障飞行安全有什么关系?
背景知识
冗余的最大意义莫过于:在一组 IMU 发生故障时有其它备份可用。基于此点,IMU 数据的一致性就非常重要。如果各组 IMU 的一致性不好,那么切换动作的波动就会比较大,甚至由于滤波算法的整参数不同而不可预测。
若想要冗余对保障飞行安全有益,则需要对各个备份的数据一致性提出要求。
数据表现
一、Pixhawk V6X
依上 IMU0 和 IMU1 数据计算出的姿态角如下:
Pitch 角的解算结果对比反映了 IMU0 和 IMU1 数据一致性是否可接受(在滤波参数一致的情况下)。
从 Pixhawk V6X 的解算结果看,IMU0 和 IMU1 的数据一致性表现非常不错。
通过 EK3_IMU_MASK 可以启用基于第 3 组 IMU 的姿态解算,通过 EK3_PRIMARY 可以指定姿态较好的一组解算结果作为默认优先使用的一组结果。
这里 Sugar 没有开启第 3 组姿态解算,就没有 IMU2 的解算数据,感兴趣的读者可以自行开启测试。
二、STM32F4 系列
对于STM32F4系列硬件,虽然看上去 IMU0 和 IMU1 的数据一致性还说得过去,但是在同样的滤波参数下 Pitch角的解算结果差异比较大。如果想要达到预想的备份效果则需要对两组EKF滤波分别调参,这无疑增大了工作量,算不上是好的备份。
减震
关注问题
能否通过一个数据指标评价各组IMU肉眼难以直观判断的震动情况?
背景知识
飞控软件里内置了一套实时的类方差算法,以25Hz频率运行,为各组IMU各轴的实时震动(离散程度)提供判断依据。但STM32F4系列因受内存大小限制,软件里只打开了一组计算,而Pixhawk V6X内存充足,打开了3组计算。
数据表现
磁罗盘
关注问题
内置罗盘与外置罗盘数据表现是否一致?
背景知识
接入飞控系统的罗盘有“内置”和“外置”之分。外置罗盘通常与GPS在一起,安装在飞机外,与飞控不在一起。内置罗盘与飞控在一起。因为安装位置的差异,所以外置罗盘容易规避EMC问题。而内置罗盘因为与飞控一体,就要面对EMC问题。
数据表现
一、Pixhawk V6X
二、STM32F4 系列
明显Pixhawk V6X数据表现一致性更好,甚至内置罗盘(MAG2) 的数据相对于外置罗盘还更平滑一些。
Sugar猜测这与Pixhawk 2.1开始的Cube与底板分离的设计有关,因此也不能肯定 STM32F4系列就一定都不好。但Sugar手里没有Pixhawk 2.1硬件,因此没法去证实猜测。
双 GPS
关注问题
定位精度是否足够好?
背景知识
UBlox F9P支持差分定位。差分的使用方式有两种:一种是“地面端+飞机端”,另一种是都放在飞机上配置为“Base+Rover”。最明显能反映定位精度的是GPS的高度信息,如果不是差分,一个航线下来GPS高度与气压高度对比会有明显的差异变化。
数据表现
Sugar的配置是“Base+Rover”的方式,全航线下来GPS高程变化与气压计高度变化一致,通过差值还能得知Sugar所在位置的GPS高程在130m左右。
最后给Pixhawk V6X 这个MicroSD卡稍凸出一点的设计和加工装配精度一个好评,对于 Sugar这样经常拔插卡读日志的人非常友好,用手上的肉一按就可以,不用像其他飞控一样要用指甲扣。
审核编辑 :李倩
全部0条评论
快来发表一下你的评论吧 !