锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

开源飞控的现状

时间:2023-02-21 01:00:00 apm接近传感器

由于开源飞行控制的发展,无人机上得益于开源飞行控制的发展,因为困扰无人机发展的关键设备是自动驾驶仪。那么,什么是开源飞行控制呢?它是如何发展起来的?

在复杂的无人机产品中,四旋翼飞机以其结构简单、使用方便、成本低等优点首先进入了公众的视线。然而,这种飞机对飞行控制的要求最高,因此它刺激了大量的基础MEMS传感器开源飞控的出现。

在这里插入图片描述

如何定义开源?

开源(Open Source)开源软件最早应用于开源代码促进会的概念(Open Source Initiative)它描述了可以公开使用的源代码软件,该软件的使用、修改和发行不受许可证的限制。

每个开源项目都有自己的BBS,由团队或个人管理,BBS定期发布开源代码,感兴趣的程序员可以下载代码并修改,然后上传自己的结果,管理者从许多修改中选择合适的代码改进程序,并再次发布新版本。这样一个循环,形成了一个共同发展和共享的良性循环。

开源软件的发展逐渐与硬件相结合,产生了开源硬件。硬件与软件的区别在于,实物资源应始终致力于创造实物商品。

因此,生产开源硬件(OSHW)许可证下项目(产品)的人员和公司有义务明确,产品未经原设计师批准生产、销售、授权,未使用原设计师拥有的任何商标。硬件设计源代码的特定格式可以由他人获得,以便修改。开源硬件在实现技术自由的同时,提供知识共享,鼓励硬件设计开放交流贸易。

开源硬件(OSHW)定义1.0是在软件开源定义的基础上定义的。这个定义是由Bruce Perens和Debian作为开发者Debian创建了自由软件政策。

什么是开源飞控?

了解开源硬件的概念,更容易理解开源飞行控制的概念。所谓开源飞行控制,基于开源思想的自动飞行控制器项目(Open Source Auto Pilot),它还包括开源软件和开源硬件,软件包括飞行控制硬件中的固件和地面站软件。爱好者不仅可以参与软件的研发,还可以参与硬件的研发。他们不仅可以购买硬件来开发软件,还可以自制硬件,让更多的人可以自由享受项目的开发成果。

开源项目的使用是商业性的,所以每个开源飞行控制项目都会给出官方的法律规定来界定开发者和用户的权利。不同的开源飞行控制有不同的法律定义。

开源飞行控制的发展

开源飞控的发展可分为三代:

  • 使用第一代开源飞行控制系统Arduino或基于其他类似的开源电子平台,扩展和连接各种电子平台MEMS传感器能使无人机平稳飞行,其主要特点是模块化和可扩展性。

  • 第二代开源飞控系统大多拥有自己的开源硬件、开发环境和社区,采用全集成的硬件架构,将全部10DOF传感器、主控单片机,甚至GPS所有其他设备都集成在电路板上,以提高可靠性。

    它使用全数字三轴MEMS由传感器组成的航姿系统(IMU);

    可控制飞机完成自主航线飞行,同时可安装电台与地面站通信,初步具有完整的自动驾驶仪功能。

    这种飞行控制还可以支持各种无人驾驶设备,包括固定翼飞机、多旋翼飞机、直升机和车辆,以及手动飞行、半独立飞行和全独立飞行。

    第二代飞行控制的主要特点是高集成性高可靠性,其该功能已接近商业自动驾驶仪标准

  • 第三代开源飞行控制系统将在软件和人工智能方面进行创新。它增加了先进的飞行功能,如集群飞行、图像识别、独立避障和自动跟踪飞行,并发展到机器视觉、集群和平台开发过程。

Arduino飞控

要谈开源飞行控制的发展,必须从著名的开源硬件项目开始Arduino谈起。

Arduino 它是最早的开源飞控,由Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis 和 Nicholas Zambetti2005年在意大利交互设计学院合作开发。Arduino公司首先为电子开发爱好者搭建了灵活的开源硬件平台和开发环境,用户可以从Arduino官方网站获取硬件设计文件,调整电路板和元件,以满足其实际设计的需要。

Arduino可与之配套Arduino IDE查看源代码并上传自己编写的代码,Arduino IDE基于C语言和语言的使用C 的Arduino语言,很容易掌握,而且Arduino IDE可以在Windows、Macintosh OSX和Linux三大主流操作系统运行。

随着平台逐渐被爱好者所接受,各种功能的电子扩展模块层出不穷,其中最复杂的是集成MEMS飞行控制器的传感器。为获得更好的飞控设计源代码,Arduino公司决定开放其飞行控制源代码,开辟开源飞行控制的发展道路。著名的开源飞控WMC和APM都是Arduino飞行控制的直接衍生产品仍在使用Arduino开发环境。

APM飞控

APM(ArduPilotMega)是在2007年由DIY无人机社区(DIY Drones)飞行控制产品是当今最成熟的开源硬件项目。

APM基于Arduino开源平台改进了加速度计、陀螺仪和磁力计组合惯性测量单元等多个硬件(IMU)。

由于APM可定制性好,APM在全球航模爱好者范围内迅速传播开来。通过开源软件Mission Planner,可配置开发人员APM接受和显示传感器数据的设置google map 但完成自动驾驶等功能,Mission Planner仅支持windows操作系统。

目前APM飞行控制已成为开源飞行控制成熟的标杆,可支持多旋翼、固定翼、直升机、无人驾驶汽车等无人设备。多旋翼,APM飞行控制支持各种四、六、八轴产品,并连接外部GPS未来,传感器可以增加稳定性,完成自主起降、自主航线飞行、回家、定高、定点等丰富的飞行模式。

APM可连接外部超声波传感器和光流传感器,实现室内定高和定点飞行。

PX4和PIXHawk

PX四是软硬件开源项目(遵守BSD协议)旨在为学术、爱好和工业团体提供低成本、高性能的高端自驾。

该项目起源于苏黎世联邦理工大学的计算机视觉和几何实验室、自主系统实验室和自动控制实验室PIXHawk项目。

PX4FMU自驾模块高效实时操作系统(RTOS),Nuttx提供可移植操作系统接口(POSIX)类型环境。printf()、pthreads、/dev/ttyS1、open()、write、poll()、ioctl()等等。软件可以使用USB bootloader更新。

PX4通过MAVLink与地面站通信,与地面站兼容QGroundControl和Mission Planner,所有软件都是开源和遵守的BSD协议。

由3DR联合APM小组与PX2014年推出的4组PIXHawk飞控是PX4飞控升级版,有PX4和APM两套固件和相应的地面站软件。该飞控是目前全世界飞控产品中硬件规格最高的产品,也是当前爱好者手中最炙手可热的产品。

PIXHawk拥有168MHz集硬件浮点运算核心于一体的运算频率和突破性使用Cortex-M4单片机作为主控芯片,内置两套陀螺和加速度计MEMS传感器,互补矫正,内置三轴磁场传感器,可外接三轴磁场传感器,可外接一主一备两个GPS故障时自动切换传感器。

基于其高速运行的核心和浮点算法,PIXHawk使用最先进的定高算法,飞机的高度可以通过气压高度计固定在1米以内。它支持几乎所有的多旋翼类型,甚至包括三旋翼和H这种结构不规则的产品。它使飞机拥有多种飞行模式,支持独立航线、关键点、鼠标引导、FollowMe对尾飞等高级飞行模式,并能完成自主调参。

项目地址:https://github.com/pixhawk

PIXHawk飞行控制的开放性很好,几百个参数都开放给玩家调整,基本模式简单调试后也可以飞行。PIXHawk爱好者可以根据当地情况选择多种电子地图。

OpenPilot与Taulabs

OpenPilot是由OpenPilot2009年社区推出的自动驾驶仪项目旨在为社会提供低成本但功能强大的稳定自动驾驶仪。该项目由两部分组成,包括OpenPilot自驾仪及其配套软件。自驾仪的固件部分用C语言编写,地面站用C语言编写C 写,可以Windows、Macintosh OSX和Linux三大主流操作系统运行。

OpenPilot最大的特点是硬件架构非常简单,从它目前的许多硬件设计中可以看出它的独特之处。

官方发布的飞行控制硬件包括CC、CC3D、ATOM、Revolution、Revolution nano衍生硬件包括等Sparky、Quanton、REVOMINI等等,甚至包括直接使用STM32开发板扩展而成FlyingF3、FlyingF4、DescoveryF4等,其中CC3D已经是300mm以下轴距穿越机和超小室内模型的首选飞行控制,DiscoveryF研究飞控被爱好者广泛使用,Quanton更是成为了Taulabs硬件的首选。

CC3D

CC3D是Openpilot旗下最流行的硬件,此飞控板只采用一颗72MHz的32位STM32单片机和一颗MPU000就能够完成四旋翼、固定翼、直升机的姿态控制飞行(注意,该硬件可进行的是三自由度姿态控制,而不是增稳),电路板大小只有35mm×35mm。

与所有开源飞控不同,它不需要GPS融合或者磁场传感器参与修正,就能保持长时间的姿态控制。以上所有功能全部使用一个固件,通过设置便可更改飞机种类、飞行模式、支持云台增稳等功能。

其编译完的固件所需容量只有大约100KB,代码效率令人惊叹,是所有飞控程序员学习的楷模。其地面站软件集成了完整的电子地图,可以通过电台实时监测飞机状态。

TauLabs飞控是OpenPilot飞控的衍生产品。

当前TauLabs最流行的硬件叫做Quanton,由原OpenPilot飞控小组成员独立完成。

它继承了OpenPilot简单高效的特点,并扩展了气压高度计和三轴磁场传感器,将主控单片机升级为带有硬件浮点运算的Cortex-M4核心。该飞控是最早支持自动调参的开源飞控产品,带有模型辨识算法,能够在飞行中进行自整定姿态PID控制参数。TauLabs能够完成许多高级飞行模式,连接外置GPS后可使多旋翼具备定高、定点、回家等功能。飞控集成了电子地图,且界面非常友好,使用向导模式进行初始化,初学者可以简单上手。

Multi Wii Copter (MWC)

Multi Wii Copter(MWC)飞控是一款典型的Arduino衍生产品,是专为多旋翼开发的低成本飞控,它完整地保留了Arduino IDE开发和Arduino设备升级和使用的方法。

由于成本低、架构简单、固件比较成熟,因此该飞控在国内外拥有大量爱好者。除了支持常见的四、六、八旋翼以外,该飞控的最大特点是支持很多奇特的飞行器类型,比如三旋翼、阿凡达飞行器(BIcopter avatar style)、Y4型多旋翼(其中两轴为上下对置)等,使得该飞控的开发趣味性较强,容易博得大家的喜爱。

KKMulti Copter

KK飞控是源于韩国的一款开源飞控项目,也是第一种广为大众接受的多旋翼飞控,在开源飞控发展的初期,该飞控的横空出世对整个四旋翼行业是一种震撼。

该飞控只使用三个成本低廉的单轴陀螺,配合一台最简单的四通道遥控设备,就能控制常见的三、四、六旋翼飞行器,并且支持“十字”型,X型、H型和上下对置等多种布局。

该飞控使用三个可调电阻调整感度作为调参方法,保留了早期航模陀螺仪的特征。作为多旋翼飞控起始的重要见证,这款“古董”级经典飞控,依然拥有众多玩家。

Paparazzi(PPZ)

Paparazzi(PPZ)是一个软硬件全开源的项目,它始于2003年,开发目标是建立一个配置灵活且性能强大的开源飞控项目。PPZ的一大特点是,该开源飞控方案中除了常见的飞控硬件、飞控软件和地面站软件之外,还包含地面站硬件,包括各种调制解调器、天线等设备。从功能上讲,PPZ已经接近一个小型的无人机系统了。

该开源项目的另一个特点是采用ubuntu操作系统,它将全部地面站软件和开发环境集成于该系统下,官方称之为Live CD。

一张CD加飞控硬件就可完成从开发到使用的全部工作。

PPZ目前最流行的硬件版本是Paparazzi(PPZ)Lisa/M v2.0。该硬件拥有大量的扩展接口,并且使用可扩展的单独的IMU传感器板。这也是早期开源飞控比较流行的做法,这样可以像DIY台式计算机那样,随着传感器升级而不断升级IMU硬件。

Autoquad飞控和ESC32电调

Autoquad飞控来自德国,作为早期开源飞控,Autoquad功能非常强大,但是受限于当时的传感器产品,它不得不采用大量模拟MEMS传感器。

所谓模拟传感器指的是传感器芯片内部不集成数模转换器(ADC)和运算核心,而直接将微机械传感器的变化通过放大和硬件滤波后以电压的形式输出,需要主控单片机进行AD采集。

因为传感器在不同温度环境下,输出值会受到影响,模拟MEMS传感器给参数校准带来了不少麻烦。很多玩家在第一次使用该飞控时,不得不借助电冰箱来进行传感器校准,而一些厂家为了保证批量产品的稳定性,只能在飞行器上对电路板进行加温,使其保持温度恒定。

但是,这种校准方法却为一些骨灰级玩家带来了额外的乐趣,很多人反而乐此不疲。对于大多数普通爱好者而言,这实在是一项难度不小的工作。随着带有出厂校准的数字传感器的普及,Autoquad作为历史的积淀,也完成了它的使命。

但是,该开源项目的另一个分支ESC32电调却逐渐在玩家中被接受了。

该电调是第一个采用数字接口进行控制的电调产品,玩家可以通过串口、I2C接口和CAN接口来控制电机的转速,这比传统的PWM接口信息速度要快很多倍。

常见的PWM电调波形更新速度为每秒钟四百次,而数字接口的更新速度可达到百万次。尤其是对于动力变化非常敏感的多旋翼飞行器来说,这种高速通信是非常必要的。该电调还支持转速闭环,并且能够针对电机进行详细调参,这些功能都是传统航模电调不能比拟的。项目地址:http://autoquad.org/wiki/wiki/aq-esc32/

当然,Autoquad也在进步,它发布了全新的飞控产品Autoquad M4,对主控单片机和传感器进行了全面升级,采用常见的STM32F4单片机和数字传感器。

但是面对PIXHawk、APM等已经成熟多年的先进飞控产品,它已经从前辈沦落为后起之秀。

所以说,开源飞控很大程度上促进了四旋翼飞行器这类的产品飞入寻常百姓家,无人机技术的发展,甚至还能帮你完成飞行的梦想。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章