你的位置:首頁 > 電源管理 > 正文

物美價(jià)廉的無人機(jī)搖桿微控制器設(shè)計(jì)方案,接著不謝!

發(fā)布時(shí)間:2016-03-04 責(zé)任編輯:wenwei

【導(dǎo)讀】隨著無人機(jī)正在成為新的經(jīng)濟(jì)增長(zhǎng)點(diǎn)和國民收入水平的提高,近年來在高校和民間都得到了更多的關(guān)注。用無線電遙控的無人機(jī)大部分使用JR或者Futaba公司出品的專用遙控器,這些遙控器優(yōu)點(diǎn)是手感好,方便攜帶,但是價(jià)格高昂,通道數(shù)較少,難以滿足無人機(jī)執(zhí)行任務(wù)時(shí)需要較多通道數(shù)的要求。
 
無人機(jī)是無人駕駛飛機(jī)的簡(jiǎn)稱,是利用無線電遙控(含遠(yuǎn)程駕駛)、預(yù)設(shè)程序控制和(或)基于機(jī)載傳感器自主飛行的可重復(fù)使用不載人飛機(jī)。目前用無線電遙控的無人機(jī)大部分使用JR或者Futaba公司出品的專用遙控器,這些遙控器優(yōu)點(diǎn)是手感好,方便攜帶,但是價(jià)格高昂,通道數(shù)較少,難以滿足無人機(jī)執(zhí)行任務(wù)時(shí)需要較多通道數(shù)的要求。少部分使用PC作為控制平臺(tái),使用了飛行搖桿作為控制器,能實(shí)現(xiàn)更專業(yè)的功能,通道數(shù)也多,但是攜帶不方便,需要攜帶手提電腦或者PC到外場(chǎng)調(diào)試,還必須考慮電池續(xù)航問題,造價(jià)也比較高昂,且需要專業(yè)的計(jì)算機(jī)軟件知識(shí)進(jìn)行編程。
 
物美價(jià)廉的無人機(jī)搖桿微控制器設(shè)計(jì)方案,接著不謝!
 
為解決上述不便,本人提出了一種基于Arduino的無人機(jī)控制器設(shè)計(jì)方案。Arduino是2005年1月由米蘭交互設(shè)計(jì)學(xué)院的兩位教師David Cuartielles和Massimo Banzi聯(lián)合創(chuàng)建,是一塊基于開放原始代碼的Simple I/O平臺(tái).Arduino具有類似java、C語言的開發(fā)環(huán)境,將AVR單片機(jī)相關(guān)的一些寄存器參數(shù)設(shè)置等都函數(shù)化了,即使不太了解 AVR單片機(jī)的朋友也能輕松上手,設(shè)計(jì)出各種實(shí)用的電路開發(fā)系統(tǒng),是一款價(jià)格低廉、易于開發(fā)做應(yīng)用的電子平臺(tái)。Arduino包括硬件和軟件在內(nèi)的整個(gè)平臺(tái)是完全開源的。該方案由于采用Arduino平臺(tái),能快速開發(fā)出用較低成本的飛行搖桿來進(jìn)行操縱航模,體驗(yàn)真實(shí)飛行的感覺。由于接口較多,可以實(shí)現(xiàn)高達(dá)20通道以上,能執(zhí)行各種擴(kuò)展任務(wù),且不需要攜帶電腦。
 
系統(tǒng)原理與架構(gòu)設(shè)計(jì)
 
系統(tǒng)框圖如圖1所示,分為兩大部分,分別是地面控制部分和控制執(zhí)行部分。地面控制部分是由單片機(jī)讀取飛行遙桿的數(shù)據(jù),即可獲得飛行搖桿各個(gè)通道的即時(shí)電壓,通過模式轉(zhuǎn)換后,得到各個(gè)通道的值。將上述值經(jīng)過編碼后通過無線數(shù)傳模塊發(fā)送出去。
 
空中指令執(zhí)行部分:
 
由空中無線數(shù)傳接收到信號(hào)后將指令發(fā)送到單片機(jī),單片機(jī)將指令解析,并轉(zhuǎn)換為飛控系統(tǒng)常用的PPM信號(hào),該P(yáng)PM信號(hào)可以直接驅(qū)動(dòng)飛控系統(tǒng)做出響應(yīng)動(dòng)作,從而控制無人機(jī)。
 
物美價(jià)廉的無人機(jī)搖桿微控制器設(shè)計(jì)方案,接著不謝!
 
模塊原理、設(shè)計(jì)與制作

1.搖桿信號(hào)獲取原理
 
要得到飛行搖桿當(dāng)前的桿量,一個(gè)方法是通過搖桿的usb接口讀取,由于各個(gè)廠家的通訊協(xié)議都不兼容,有些還必須獲得授權(quán),實(shí)現(xiàn)起來比較麻煩。另一個(gè)方法是直接獲取搖桿的電位器值。實(shí)際上現(xiàn)在市面上的搖桿除了非常高端的搖桿用了霍爾傳感,大部分都采用了普通的電位器,按照可變電阻來讀取即可。本模塊采用市場(chǎng)上常見的賽鈦客FLY5飛行搖桿,拆開來外殼,所有電位器都是用3P的白色連接插座和電路板連接的,XYZ三軸用來控制飛機(jī)姿態(tài)(升降、副翼和方向),油門由拉桿控制,苦力帽可以用來控制fpv攝像頭云臺(tái),還有其他的按鍵可以映射為其他通道,例如空中投擲物體,自動(dòng)回家,切換飛行模式等。
 
2.桿量解析處理模塊
 
我們采用的單片機(jī)系統(tǒng)采用了ArduinoM E G A 2 5 6 0 開發(fā)板。該開發(fā)板是一塊以ATmega2560為核心的微控制器開發(fā)板,本身具有54組數(shù)字I/O其中14組可做PWM輸出),16組模數(shù)轉(zhuǎn)換輸入端,4組串口,使用16MHz的晶振。讀取搖桿的XYZ軸的電阻值,只需將電位器的電源和地接在電調(diào)輸出的5v和地上,信號(hào)線接在Arduino板的模擬輸入口上,由于Arduino的AD讀取精度最高是10位,在程序里將電阻值映射成0到1023的數(shù)值,F(xiàn)LY5飛行搖桿的分辨率大概在800~900左右。飛行搖桿的電位器是線性的,反應(yīng)較為靈敏的。實(shí)際測(cè)試中搖桿回中后,和打到最大和最小的地方,數(shù)據(jù)會(huì)有一些波動(dòng)和噪點(diǎn),采用卡爾曼濾波算法進(jìn)行處理,可以獲得平滑的曲線。
 
3.無線收發(fā)模塊
 
無線數(shù)傳模塊采用了一對(duì)X b e e P R O900HP無線收發(fā)模塊,該模塊功率為250mW.它們分別用來連接地面控制板單片機(jī)和連接飛行控制的單片機(jī)。配備原裝天線,最遠(yuǎn)可以達(dá)到10KM,比傳統(tǒng)遙控器距離極大的增加。標(biāo)準(zhǔn)的串口TTL接口,將RX和TX分別接在單片機(jī)板上的TX和RX端口上即可。波特率設(shè)置為115200,數(shù)傳是半雙工的,通訊增加CRC校驗(yàn),防止數(shù)據(jù)丟包和被干擾篡改。
 
4.指令解析模塊
 
有了良好的通訊協(xié)議,空中控制板解析出地面發(fā)出的命令后,做出相應(yīng)的驅(qū)動(dòng)舵機(jī)的動(dòng)作。標(biāo)準(zhǔn)PPM信號(hào)的周期固定為20ms,理論上脈寬(脈沖的高電平部分)范圍在1ms-2ms之間,但實(shí)際上脈寬可以在0.5ms-2.5ms之間,脈寬和舵機(jī)的轉(zhuǎn)角0°-180°相對(duì)應(yīng)。目前大多數(shù)無人機(jī)飛行控制器的接收部分都遵循1-2ms規(guī)范,50HZ的數(shù)據(jù)刷新率。本設(shè)計(jì)采用DJI公司的NAZA-M飛控模塊。
 
5.失控保護(hù)模塊
 
在空中指令執(zhí)行部分的單片機(jī)控制系統(tǒng)中,設(shè)計(jì)失控保護(hù)裝置。在Arduino中設(shè)計(jì)定時(shí)器中斷,每隔一段時(shí)間查詢有無收到指令(正常情況下每秒應(yīng)該接收50條指令)。由于飛行器速度高,瞬息萬變,因此可以設(shè)置為1秒沒有接收到任何一條指令,則進(jìn)入懸停狀態(tài),原地懸停待命,在30秒內(nèi)沒有收到地面的命令后,應(yīng)該進(jìn)入失控保護(hù),并切換到飛行器控制器的GPS自動(dòng)返航模式。
 
使用飛行搖桿進(jìn)行操控更具有真實(shí)感,是傳統(tǒng)遙控器無法體驗(yàn)的。左手油門,右手控制升降,副翼,扭動(dòng)z軸控制方向舵。地面站配備 9dBi全向天線,空中配備3dBi原裝天線在開闊地實(shí)測(cè)控制距離為8KM.在單向傳輸?shù)臅r(shí)候沒有出現(xiàn)明顯延遲和抖舵,適合直升機(jī)或多旋翼無人機(jī)等低延時(shí)的控制要求,實(shí)測(cè)延時(shí)小于20ms.雙向傳輸?shù)臅r(shí)候延時(shí)較大,甚至出現(xiàn)了500ms以上的延時(shí),只能適用于固定翼和滑翔機(jī)等對(duì)延時(shí)要求不高的飛行器。通過對(duì)數(shù)傳模塊的分析,原因是數(shù)傳模塊大多都是在單頻率下,只能實(shí)現(xiàn)半雙工的無線傳輸,發(fā)送和接收切換需要延時(shí),如果數(shù)據(jù)量大會(huì)造成阻塞,從而加大延時(shí)。
 
本文提供的解決方案,成本較低,開發(fā)方便,易于實(shí)現(xiàn)。不足之處是單向傳輸雖然延時(shí)低,但是無法實(shí)時(shí)返回飛行器的各種數(shù)據(jù)。為解決該問題,只能使用2對(duì)無線模塊,或采用MIMO天線能實(shí)現(xiàn)全雙工的無線模塊,才能解決。后期將會(huì)繼續(xù)研究,以實(shí)現(xiàn)低成本的雙向傳輸,并實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)返回的OSD和低延時(shí)控制。


推薦閱讀:


從系統(tǒng)模塊開發(fā)設(shè)計(jì)到仿真,都在這里了!
真飛機(jī)拆不著,那就來拆拆無人機(jī)“鼻祖”大疆吧!
會(huì)設(shè)計(jì)小型無人機(jī)飛控系統(tǒng)嗎?不會(huì)我教你
生動(dòng)有趣的無人機(jī)模塊解剖,你敢一試嗎?
讓音樂跟著你跑步,阿思翠BX50運(yùn)動(dòng)耳機(jī)體驗(yàn)




 
 
要采購電位器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉