yzhanping 发表于 2022-11-4 21:08:02

揭开无人机神秘面纱系列之4一飞控的内部探究(部分)

硬件:决定性能的上层建筑

处理器(CPU)

处理器(CPU,Central Pocessing Unit)是飞控的核心部件,运行飞控的核心算法,在当前流行的飞控产品中,带有片上实时操作系统的嵌入式处理器叫已经占领绝大部分市场,常见的核心类型有ARM、AVR、DSP或FPGA等。由于这些SoC或者MCU单片机集成度的高速发展,我们可以很方便地在一块电路板上板载多个单片机,所以×86工控机、PC104单板机、小型机等其他计算机在民用无人机的飞控系统中已经比较少见。

AVR单片机开启了开源飞控的先河AVR单片机架构简单,运行可靠,开发也比较容易,受到早期开源项目的普遍欢迎、它是最早的开源飞控Arduino所使用的核心处理器,所以很多衍生的飞控也使用这种单片机来进行核心运算。主要的代表就是ATmega328P和ATmega2560,前者用于Arduino,后者用于APM飞控。但是由于开源飞往的参与者越来越多,有些项目甚至至达到四千人的规模,开源飞控的发展也越来越迅速。一些只在商业飞控才能见到的高端算法也逐渐走进开源飞控,这导致AVR只这种8位单片机的计算能力和它所能集成的接口资源捉襟见肘,所以使用这种单片机的飞控也越来越少了。


ARM核心的单片机,作为低消耗高性能的代表,正在快速占领单片机市场。在飞控使用的ARM单片机主要分为两大阵营,一种是精简指令的工业低成本单片机,另一种则是带有Linux或安卓操作系统的高端复杂单片机。著名的STM32系列就是前者的代表产品,目前最流行的开源飞控大多使用这个系列,比如Pixhawk,该单片机具有32位运算核心,片上集成的接口包括中串口、SPI、I2C、PWM、AD、I0等,可以说是应有尽有。高端型号甚至集成硬件浮点运算,这对于飞控软件所需的导航飞控算法和滤波计算实在是雪中送碳。而大多数商业飞控则倾向于能够运行Linux、安卓、VxWorks等大型操作系统的高端ARM处理器,这种处理器功能类似手机处理器,具有更加强悍的计算能力,并且拥有多个核心,可以进行一定量地并行处理和协同处理,保证多个任务的实时性。带有操作系统可以保障团队的开发工作更加高效,并具有可继承性。飞思杜尔、三星、高通都有大量此类产品。



FPGA是一种高度定制、实时性无与伦比的处理器,准确得说它不算处理器,而是超大规模逻辑门的组合。你可以把它定义为任何核心,甚至可以在一片FPGA上定义多个不同种类的运算核心而相互协同、互不干扰。举个例子,一个一厘米见方的FPGA产品,通常包含几十万基至上千万个逻辑阵列,但是一个32位单片机的CortexMl核心,仅仅需要4300个逻辑门就可以了,由此可见其无人能及的强大,其他单片机难以驾驭的大数据的实时处理,FPCA能够胜任。最典型的例子就是机器视觉的实时处理。所以从实时性和处理能力来说,将FPGA用于飞控产品的开发几乎是完美的。但是当前FPGA的开发过程非常复杂,令许多工程师望而却步。


感兴趣请➕关注,分享给你精彩的无人机干货。
页: [1]
查看完整版本: 揭开无人机神秘面纱系列之4一飞控的内部探究(部分)