一、開源Ardupilot / APM?
APM是在2007年由DIY無人機社區(qū)(DIY Drones)推出的飛控系統(tǒng)。也是迄今為止最為成熟的開源自動導航系統(tǒng),可支持多旋翼、固定翼、直升機和無人駕駛車等無人設備。
APM基于Arduino的開源平臺,對多處硬件做出了改進,包括加速度計、陀螺儀和磁力計組合慣性測量單元(IMU)。由于APM良好的可定制性,APM在全球航模愛好者范圍內(nèi)迅速傳播開來。通過開源軟件Mission Planner,開發(fā)者可以配置APM的設置,接收并顯示傳感器的數(shù)據(jù),使用Google map 完成自動駕駛等功能,但是Mission Planner僅支持windows操作系統(tǒng)。
目前,APM飛控已經(jīng)成為開源飛控成熟的標桿,針對多旋翼 APM飛控支持各種四、六、八軸產(chǎn)品,并且連接外置GPS傳感器以后能夠增穩(wěn),并完成自主起降、自主航線飛行、回家、定高、定點等豐富的飛行模式。APM能夠連接外置的超聲波傳感器和光流傳感器,在室內(nèi)實現(xiàn)定高和定點飛行。
APM系列發(fā)展至今,APM2.5和APM2.6已經(jīng)是ardupilot飛控最終版本,APM給我們帶來非常強大的功能,非常的成熟可靠,潛能被充分挖掘出來,功能也非常的豐富。但源于APM系列8位CPU計算與存儲的能力已經(jīng)遠遠不能夠滿足未來的運用需求了,APM系列產(chǎn)品的終結(jié)也是勢在必行。
APM系列支持如下自動導航板:
· PX4 – 一款32位基于ARM的自動導航儀,支持很多高級特性,使用NuttX實時操作系統(tǒng);
· APM2 – 一款受歡迎的AVR2560 8位自動導航儀;
· APM1(已終止開發(fā)) – 一款基于AVR2560的自動導航儀,使用分離式結(jié)構(gòu)。
由于ArduPilot/APM源碼基于AP-HAL硬件抽象層編寫,使代碼能支持更多自動導航板變?yōu)榭赡堋?/p>
APM開發(fā)語言與工具:
用于ArduPilot/APM的主要飛行代碼使用C++編寫。支持工具使用多語言編寫,最常用的是python。目前,主要載具代碼編寫為“.pde”文件,由Arduino構(gòu)建系統(tǒng)得來。pde文件是預處理為.cpp文件構(gòu)建的一部分。pde文件中包含的聲明也能提供構(gòu)建規(guī)則,說明需要包含與連接到哪些庫。
地面站:
ArduPilot/APM支持多種地面站用于計劃與控制飛行。飛行固件使用MAVLink協(xié)議,它允許飛機被任何MAVLink兼容設備控制。
· 使用最廣泛的地面站就是Mission Planner,使用用于Windows的C#語言編寫。Mission Planner的源碼可以在github上查看。Mission Planner也能通過 mono運行在Linux與MacOS 上。
· QGroundControl也是地面站的一個選擇,使用C++的Qt庫編寫
· 對于面相命令行與可編腳本地面站,你可以使用 MAVProxy
· 對于android平板,你可以使用ArdroPilot或者 DroidPlanner
其他特征:
主控芯片:AvrAtmega1280/2560
主要傳感器:Atmega168/328。雙軸陀螺,IMU(單軸陀螺,三軸加速度計,三軸磁力計模塊)。氣壓計,AD芯片。
編譯環(huán)境:Arduino IDE
開發(fā)語言:arduino
開發(fā)軟件:Arduino IDE界面友好簡單,Arduino語言類似于C語言
采用算法:兩級PID控制方式,第一級是導航級,第二級是控制級
硬件平臺:
APM2.5:板載電子羅盤;
APM2.6:電子羅盤外置和GPS融合了。
優(yōu)缺點:
優(yōu)勢 |
1. APM使用人數(shù)多,資料豐富齊全,特別是經(jīng)典款APM2.5,上手快 2. 功能完全滿足使用 3. apm固件相對PX4成熟 4. 有震動,姿態(tài)的日志記錄,出現(xiàn)問題有據(jù)可查 |
劣勢 |
1. 處理器相比F407落后,但是夠用 2. 傳感器分散,集成度不高 |
二、開源PX4 / PIXHAWK系列
PX4系列:
PIXHAWK是根據(jù)飛控設計需求,結(jié)合PX4系列飛控發(fā)展而來的PX4飛控單塊電路板版本, PX4系列最初有兩個版本:PX4FMU與PX4IO。
PX4是一個由Lorenz Meier所在的瑞士小組所開發(fā)的學校項目,其擁有一個32位處理器,提供更多內(nèi)存、運用分布處理方式并且包含一個浮點運算協(xié)處理器。相比APM,PX4 具有相對于前者10倍以上的CPU性能及其他更多方面的改進,Diydrones和3DRobotics把PX4系統(tǒng)視作他們下一代飛控的基礎。
PIXHAWK系列:
由3DR聯(lián)合APM小組與PX4小組于2014年推出的PIXHAWK飛控是PX4飛控的升級版本,擁有PX4和APM兩套固件和相應的地面站軟件。該飛控是目前全世界飛控產(chǎn)品中硬件規(guī)格最高的產(chǎn)品,也是當前愛好者手中最炙手可熱的產(chǎn)品。
PIXHAWK擁有168MHz的運算頻率,并突破性地采用了整合硬件浮點運算核心的Cortex-M4的單片機作為主控芯片,內(nèi)置兩套陀螺和加速度計MEMS傳感器,互為補充矯正,內(nèi)置三軸磁場傳感器并可以外接一個三軸磁場傳感器,同時可外接一主一備兩個GPS傳感器,在故障時自動切換。
基于其高速運算的核心和浮點算法,PIXHAWK使用最先進的定高算法,可以僅憑氣壓高度計便將飛行器高度固定在1米以內(nèi)。它支持目前幾乎所有的多旋翼類型,甚至包括三旋翼和H4這樣結(jié)構(gòu)不規(guī)則的產(chǎn)品。它使飛行器擁有多種飛行模式,支持全自主航線、關鍵點圍繞、鼠標引導、“FollowMe”、對尾飛行等高級的飛行模式,并能夠完成自主調(diào)參。
PIXHAWK飛控的開放性非常好,幾百項參數(shù)全部開放給玩家調(diào)整,靠基礎模式簡單調(diào)試后亦可飛行。PIXHAWK集成多種電子地圖,愛好者們可以根據(jù)當?shù)厍闆r進行選擇。PIXHAWK被定位為下一代無人機飛控,系統(tǒng)具備的所有特征,均符合未來無人機飛控系統(tǒng)未來發(fā)展的基礎需求,未來將會有更大的發(fā)展空間。
技術(shù)規(guī)格
處理器
32位 STM32F427 ARM Cortex M4 核心外加 FPU(浮點運算單元)
168 Mhz/256 KB RAM/2 MB 閃存
32位 STM32F103 故障保護協(xié)處理器
傳感器
Invensense MPU6000 三軸加速度計/陀螺儀
ST Micro L3GD20 16位陀螺儀
ST Micro LSM303D 14位加速度計/磁力計
MS5611 MEAS 氣壓計
舵機端口7V高壓與高電流輸出
所有的外圍設備輸出都有過流保護,所有的輸入都有防靜電保護
5個UART串口,1個支持大功率,兩個有硬件流量控制
Spektrum DSM/DSM2/DSM-X 衛(wèi)星輸入
Futaba SBUS輸入(輸出正在完善中)
PPM sum信號
RSSI(PWM或者電壓)輸入
3.3 與 6.6 ADC 輸入
尺寸
重量 38g?
長 81.5 mm x 寬 50 mm x 高 15.5 mm
Pixhawk的接口分配
PWM,PPM-SUM和SBUS模式下的舵機與電調(diào)的連接方法
Pixhawk接口圖
* 備注:
上圖中針腳1在右邊:串口 1 (Telem 1),串口 2 (Telem 2) ,串口 (GPS) 針腳:6 = GND, 5 = RTS, 4 = CTS, 3 = RX, 2 = TX, 1 = 5V。
開源飛控系統(tǒng)在廣大飛控愛好者、機構(gòu)的開發(fā)維護下,功能日漸強大,系統(tǒng)趨于完善。而且,開源系統(tǒng)的開發(fā)維護都是基于Google Code、GitHub等開放式開發(fā)平臺,開發(fā)者們?yōu)榱吮WC遠程協(xié)作的順利進行,通常會維護一個詳盡具體的說明文檔,這也是開源飛控系統(tǒng)一個突出的特點,即整套飛控系統(tǒng)的開發(fā)說明文檔十分詳細,入門教程豐富,非常適合新手學習、了解,或者基于現(xiàn)有飛控系統(tǒng)做二次開發(fā)。
PX4、APM等開源飛控憑借完善強大的功能以及相關技術(shù)支持,為無人機產(chǎn)品線的開發(fā)鋪平了道路。大量實踐表明:一名電子或者自動化相關專業(yè)的碩士研究生甚至本科生發(fā)燒友,或者相關專業(yè)從業(yè)人員,都可以按照相關手冊、教程在較短的時間內(nèi)開發(fā)出一臺功能齊備的無人機樣機,這也是隨后出現(xiàn)的井噴現(xiàn)象的一個技術(shù)基礎。
編輯:黃飛
?
評論