在上一節(jié)無(wú)人機(jī)飛控方案文章中,小編我為大家講解了幾個(gè)工業(yè)級(jí)、農(nóng)業(yè)植保無(wú)人機(jī)應(yīng)用方案例子,那么今天小編我還是為大家?guī)?lái)幾個(gè)開(kāi)源無(wú)人機(jī)平臺(tái)、軟硬件平臺(tái)、技術(shù)特征、使用傳感器及其運(yùn)用優(yōu)缺點(diǎn)的對(duì)比介紹,供大家學(xué)習(xí)參考。
一、開(kāi)源Ardupilot / APM 系列
APM 是在2007年由DIY無(wú)人機(jī)社區(qū)(DIY Drones)推出的飛控系統(tǒng)。也是迄今為止最為成熟的開(kāi)源自動(dòng)導(dǎo)航系統(tǒng),可支持多旋翼、固定翼、直升機(jī)和無(wú)人駕駛車(chē)等無(wú)人設(shè)備。
APM 基于Arduino的開(kāi)源平臺(tái),對(duì)多處硬件做出了改進(jìn),包括加速度計(jì)、陀螺儀和磁力計(jì)組合慣性測(cè)量單元(IMU)。由于A(yíng)PM良好的可定制性,APM在全球航模愛(ài)好者范圍內(nèi)迅速傳播開(kāi)來(lái)。通過(guò)開(kāi)源軟件Mission Planner,開(kāi)發(fā)者可以配置APM的設(shè)置,接受并顯示傳感器的數(shù)據(jù),使用Google map 完成自動(dòng)駕駛等功能,但是Mission Planner僅支持windows操作系統(tǒng)。
目前,APM飛控已經(jīng)成為開(kāi)源飛控成熟的標(biāo)桿,針對(duì)多旋翼 APM飛控支持各種四、六、八軸產(chǎn)品,并且連接外置GPS傳感器以后能夠增穩(wěn),并完成自主起降、自主航線(xiàn)飛行、回家、定高、定點(diǎn)等豐富的飛行模式。APM能夠連接外置的超聲波傳感器和光流傳感器,在室內(nèi)實(shí)現(xiàn)定高和定點(diǎn)飛行。
APM系列發(fā)展至今,APM2.5 和 APM2.6已經(jīng)是ardupilot飛控最終版本,APM給我們帶來(lái)非常強(qiáng)大的功能,非常的成熟可靠,潛能被充分挖掘出來(lái),功能也非常的豐富。但源于A(yíng)PM系列8位CPU計(jì)算與存儲(chǔ)的能力已經(jīng)遠(yuǎn)遠(yuǎn)不能夠滿(mǎn)足未來(lái)的運(yùn)用需求了,APM系列產(chǎn)品的終結(jié)也是勢(shì)在必行。
APM 系列支持如下自動(dòng)導(dǎo)航板
· PX4 – 一款32位基于ARM的自動(dòng)導(dǎo)航儀,支持很多高級(jí)特性,使用NuttX實(shí)時(shí)操作系統(tǒng)
· APM2 – 一款受歡迎的AVR2560 8位自動(dòng)導(dǎo)航儀
· APM1(已終止開(kāi)發(fā)) – 一款基于A(yíng)VR2560的自動(dòng)導(dǎo)航儀,使用分離式結(jié)構(gòu)
由于 ArduPilot/APM 源碼基于 AP-HAL 硬件抽象層編寫(xiě),使代碼能支持更多自動(dòng)導(dǎo)航板變?yōu)榭赡堋?/p>
APM 開(kāi)發(fā)語(yǔ)言與工具:
用于A(yíng)rduPilot/APM的主要飛行代碼使用C++編寫(xiě)。支持工具使用多語(yǔ)言編寫(xiě),最常用的是python。
目前,主要載具代碼編寫(xiě)為“.pde”文件,由 Arduino 構(gòu)建系統(tǒng)得來(lái)。pde文件是預(yù)處理為.cpp文件構(gòu)建的一部分。pde文件中包含的聲明也能提供構(gòu)建規(guī)則,說(shuō)明需要包含與連接到哪些庫(kù)。
地面站:
ArduPilot/APM支持多種地面站用于計(jì)劃與控制飛行。飛行固件使用MAVLink協(xié)議,它允許飛機(jī)被任何MAVLink兼容設(shè)備控制。
· 使用最廣泛的地面站就是 Mission Planner,使用用于 Windows 的C#語(yǔ)言編寫(xiě)。Mission Planner 的源碼可以在github上查看。Mission Planner 也能通過(guò) mono 運(yùn)行在 Linux 與 MacOS 上。
· QGroundControl 也是地面站的一個(gè)選擇,使用C++的Qt庫(kù)編寫(xiě)
· 對(duì)于面相命令行與可編腳本地面站,你可以使用 MAVProxy
· 對(duì)于 android 平板,你可以使用 ArdroPilot 或者 DroidPlanner
其他特征:
主控芯片:AvrAtmega1280/2560
主要傳感器:Atmega168/328.雙軸陀螺,IMU(單軸陀螺,三軸加速度計(jì)。三軸磁力計(jì)模塊)。氣壓計(jì).AD芯片
編譯環(huán)境:Arduino IDE
開(kāi)發(fā)語(yǔ)言:arduino
開(kāi)發(fā)軟件:Arduino IDE界面友好簡(jiǎn)單,Arduino語(yǔ)言類(lèi)似于C語(yǔ)言
采用算法:兩級(jí)PID控制方式,第一級(jí)是導(dǎo)航級(jí),第二級(jí)是控制級(jí)
硬件平臺(tái):APM2.5: 板載電子羅盤(pán);APM2.6:電子羅盤(pán)外置和GPS融合了
優(yōu)缺點(diǎn):
優(yōu)勢(shì):
1. APM使用人數(shù)多,資料豐富齊全,特別是經(jīng)典款A(yù)PM2.5,上手快
2. 功能完全滿(mǎn)足使用
3. apm固件相對(duì)PX4成熟
4. 有震動(dòng),姿態(tài)的日志記錄,出現(xiàn)問(wèn)題有據(jù)可查
劣勢(shì):
1. 處理器相比F407落后,但是夠用
2. 傳感器分散,集成度不高
二、開(kāi)源 PX4 / PIXHAWK 系列
PX4 系列:
PIXHAWK 是根據(jù)飛控設(shè)計(jì)需求,結(jié)合PX4系列飛控發(fā)展而來(lái)的PX4飛控單塊電路板版本, PX4 系列最初有兩個(gè)版本:PX4FMU與PX4IO。
PX4是一個(gè)由Lorenz Meier所在的瑞士小組所開(kāi)發(fā)的學(xué)校項(xiàng)目,其擁有一個(gè)32位處理器,提供更多內(nèi)存、運(yùn)用分布處理方式并且包含一個(gè)浮點(diǎn)運(yùn)算協(xié)處理器。相比APM,PX4 具有相對(duì)于前者10倍以上的CPU性能及其他更多方面的改進(jìn),Diydrones和3DRobotics把PX4系統(tǒng)視作他們下一代飛控的基礎(chǔ)。
PIXHAWK 系列:
由3DR聯(lián)合APM小組與PX4小組于2014年推出的PIXHAWK飛控是PX4飛控的升級(jí)版本,擁有PX4和APM兩套固件和相應(yīng)的地面站軟件。該飛控是目前全世界飛控產(chǎn)品中硬件規(guī)格最高的產(chǎn)品,也是當(dāng)前愛(ài)好者手中最炙手可熱的產(chǎn)品。
PIXHAWK擁有168MHz的運(yùn)算頻率,并突破性地采用了整合硬件浮點(diǎn)運(yùn)算核心的Cortex-M4的單片機(jī)作為主控芯片,內(nèi)置兩套陀螺和加速度計(jì)MEMS傳感器,互為補(bǔ)充矯正,內(nèi)置三軸磁場(chǎng)傳感器并可以外接一個(gè)三軸磁場(chǎng)傳感器,同時(shí)可外接一主一備兩個(gè)GPS傳感器,在故障時(shí)自動(dòng)切換。
基于其高速運(yùn)算的核心和浮點(diǎn)算法,PIXHAWK使用最先進(jìn)的定高算法,可以?xún)H憑氣壓高度計(jì)便將飛行器高度固定在1米以?xún)?nèi)。它支持目前幾乎所有的多旋翼類(lèi)型,甚至包括三旋翼和H4這樣結(jié)構(gòu)不規(guī)則的產(chǎn)品。它使飛行器擁有多種飛行模式,支持全自主航線(xiàn)、關(guān)鍵點(diǎn)圍繞、鼠標(biāo)引導(dǎo)、“FollowMe”、對(duì)尾飛行等高級(jí)的飛行模式,并能夠完成自主調(diào)參。
PIXHAWK飛控的開(kāi)放性非常好,幾百項(xiàng)參數(shù)全部開(kāi)放給玩家調(diào)整,靠基礎(chǔ)模式簡(jiǎn)單調(diào)試后亦可飛行。PIXHAWK集成多種電子地圖,愛(ài)好者們可以根據(jù)當(dāng)?shù)厍闆r進(jìn)行選擇。PIXHAWK被定位為下一代無(wú)人機(jī)飛控,系統(tǒng)具備的所有特征,均符合未來(lái)無(wú)人機(jī)飛控系統(tǒng)未來(lái)發(fā)展的基礎(chǔ)需求,未來(lái)將會(huì)有更大的發(fā)展空間。
技術(shù)規(guī)格:
處理器
32位 STM32F427 ARM Cortex M4 核心外加 FPU(浮點(diǎn)運(yùn)算單元)
168 Mhz/256 KB RAM/2 MB 閃存
32位 STM32F103 故障保護(hù)協(xié)處理器
傳感器
Invensense MPU6000 三軸加速度計(jì)/陀螺儀
ST Micro L3GD20 16位陀螺儀
ST Micro LSM303D 14位加速度計(jì)/磁力計(jì)
MS5611 MEAS 氣壓計(jì)
舵機(jī)端口7V高壓與高電流輸出
所有的外圍設(shè)備輸出都有過(guò)流保護(hù),所有的輸入都有防靜電保護(hù)
5個(gè)UART串口,1個(gè)支持大功率,兩個(gè)有硬件流量控制
Spektrum DSM/DSM2/DSM-X 衛(wèi)星輸入
Futaba SBUS輸入(輸出正在完善中)
PPM sum 信號(hào)
RSSI(PWM或者電壓)輸入
3.3 與 6.6 ADC 輸入
尺寸
重量 38g
長(zhǎng) 81.5 mm x 寬 50 mm x 高 15.5 mm
Pixhawk 的接口分配
PWM,PPM-SUM和SBUS模式下的舵機(jī)與電調(diào)的連接方法
Pixhawk 接口圖
* 備注:上圖中針腳1在右邊
串口 1 (Telem 1),串口 2 (Telem 2) ,串口 (GPS) 針腳: 6 = GND, 5 = RTS, 4 = CTS, 3 = RX, 2 = TX, 1 = 5V.
三、開(kāi)源 OpenPilot / Taulabs 系列
OpenPilot是由OpenPilot社區(qū)于2009年推出的自動(dòng)駕駛儀項(xiàng)目,旨在為社會(huì)提供低成本但功能強(qiáng)大的穩(wěn)定型自動(dòng)駕駛儀。這個(gè)項(xiàng)目由兩部分組成,包括OpenPilot自駕儀與其相配套的軟件。其中,自駕儀的固件部分由C語(yǔ)言編寫(xiě),而地面站則用C++編寫(xiě),并可在Windows、Macintosh OSX和Linux三大主流操作系統(tǒng)上運(yùn)行。
OpenPilot的最大特點(diǎn)是硬件架構(gòu)非常簡(jiǎn)單,從它目前擁有的眾多硬件設(shè)計(jì)就可以看出其與眾不同之處。官方發(fā)布的飛控硬件包括CC、CC3D、ATOM、Revolution、Revolution nano等,衍生硬件包括Sparky、Quanton、REVOMINI等,甚至包含直接使用STM32開(kāi)發(fā)板擴(kuò)展而成的FlyingF3、FlyingF4、DescoveryF4等,其中CC3D已經(jīng)是300mm以下軸距穿越機(jī)和超小室內(nèi)航模的首選飛控,而DiscoveryF4被大量用于愛(ài)好者研究飛控,Quanton更是成為了Taulabs的首選硬件。
下面我們來(lái)說(shuō)說(shuō)Openpilot旗下最流行的硬件CC3D。
此飛控板只采用一顆72MHz的32位STM32單片機(jī)和一顆MPU6000就能夠完成四旋翼、固定翼、直升機(jī)的姿態(tài)控制飛行(注意,該硬件可進(jìn)行的是三自由度姿態(tài)控制,而不是增穩(wěn)),電路板大小只有35mm×35mm。
與所有開(kāi)源飛控不同,它不需要GPS融合或者磁場(chǎng)傳感器參與修正,就能保持長(zhǎng)時(shí)間的姿態(tài)控制。以上所有功能全部使用一個(gè)固件,通過(guò)設(shè)置便可更改飛機(jī)種類(lèi)、飛行模式、支持云臺(tái)增穩(wěn)等功能。
其編譯完的固件所需容量只有大約100KB,代碼效率令人驚嘆,是所有飛控程序員學(xué)習(xí)的楷模。其地面站軟件集成了完整的電子地圖,可以通過(guò)電臺(tái)實(shí)時(shí)監(jiān)測(cè)飛機(jī)狀態(tài)。
TauLabs飛控是OpenPilot飛控的衍生產(chǎn)品。當(dāng)前TauLabs最流行的硬件叫做Quanton,由原OpenPilot飛控小組成員獨(dú)立完成。
它繼承了OpenPilot簡(jiǎn)單高效的特點(diǎn),并擴(kuò)展了氣壓高度計(jì)和三軸磁場(chǎng)傳感器,將主控單片機(jī)升級(jí)為帶有硬件浮點(diǎn)運(yùn)算的Cortex-M4核心。該飛控是最早支持自動(dòng)調(diào)參的開(kāi)源飛控產(chǎn)品,帶有模型辨識(shí)算法,能夠在飛行中進(jìn)行自整定姿態(tài)PID控制參數(shù)。TauLabs能夠完成許多高級(jí)飛行模式,連接外置GPS后可使多旋翼具備定高、定點(diǎn)、回家等功能。飛控集成了電子地圖,且界面非常友好,使用向?qū)J竭M(jìn)行初始化,初學(xué)者可以簡(jiǎn)單上手。
Multi Wii Copter(MWC)飛控是一款典型的Arduino衍生產(chǎn)品,是專(zhuān)為多旋翼開(kāi)發(fā)的低成本飛控,它完整地保留了Arduino IDE開(kāi)發(fā)和Arduino設(shè)備升級(jí)和使用的方法。由于成本低、架構(gòu)簡(jiǎn)單、固件比較成熟,因此該飛控在國(guó)內(nèi)外擁有大量愛(ài)好者。除了支持常見(jiàn)的四、六、八旋翼以外,該飛控的最大特點(diǎn)是支持很多奇特的飛行器類(lèi)型,比如三旋翼、阿凡達(dá)飛行器(BIcopter avatar style)、Y4型多旋翼(其中兩軸為上下對(duì)置)等,使得該飛控的開(kāi)發(fā)趣味性較強(qiáng),容易博得大家的喜愛(ài)。
評(píng)論