国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Android小型無(wú)人機(jī)控制軟件的實(shí)現(xiàn)

2018-02-01 18:52李錚王子豪樊麗榮陳爽張?jiān)孪?/span>
山東青年 2017年10期
關(guān)鍵詞:無(wú)人機(jī)

李錚+王子豪+樊麗榮+陳爽+張?jiān)孪?/p>

摘要:針對(duì)目前小型無(wú)人機(jī)遙控器的復(fù)雜性,設(shè)計(jì)與實(shí)現(xiàn)了一種基于Android的小型無(wú)人機(jī)控制軟件。該軟件主要由飛行姿態(tài)控制模塊、軟件界面模塊和數(shù)據(jù)傳輸模塊組成。軟件主要通過(guò)藍(lán)牙與無(wú)人機(jī)進(jìn)行無(wú)線數(shù)據(jù)交互,完成對(duì)無(wú)人機(jī)的飛行姿態(tài)控制和攝像機(jī)的圖像傳輸經(jīng)系統(tǒng)測(cè)試,該終端運(yùn)行穩(wěn)定、操作簡(jiǎn)便、易推廣。

關(guān)鍵詞:無(wú)人機(jī);飛行姿態(tài)控制;Android;APP

引言

隨著互聯(lián)網(wǎng)的發(fā)展以及智能手機(jī)的普及,移動(dòng)端無(wú)人機(jī)控制軟件的設(shè)計(jì)與開(kāi)發(fā)成為國(guó)內(nèi)外研究的熱點(diǎn)。傳統(tǒng)的無(wú)人機(jī)體積大,控制系統(tǒng)成本高,操控技術(shù)要求高,可攜帶性差,不利于特定極端條件下使用。而小型四旋翼無(wú)人機(jī)具有體積小巧,易攜帶,控制簡(jiǎn)便且量產(chǎn)費(fèi)用低的優(yōu)點(diǎn),在特定環(huán)境的勘探下具有明顯優(yōu)勢(shì)[5]。因此,開(kāi)發(fā)設(shè)計(jì)一款移動(dòng)端小型無(wú)人機(jī)控制軟件,具有很大的實(shí)用意義。

目前,美國(guó)已經(jīng)建立了一個(gè)小型無(wú)人機(jī)研發(fā)應(yīng)用中心,利用無(wú)人機(jī)進(jìn)行氣候變化和資源勘探等科學(xué)研究,同時(shí)也在開(kāi)發(fā)小型無(wú)人機(jī)的多種民用用途。在國(guó)內(nèi),武漢新研制出了一種專門(mén)用于火情監(jiān)測(cè)的無(wú)人機(jī)系統(tǒng),集合了GPS定位、數(shù)字圖像處理、信息傳輸?shù)榷喾N計(jì)算機(jī)技術(shù)。大疆公司也發(fā)布了旗下兩款小型四旋翼無(wú)人機(jī)“御Mavic”和“曉Spark”,充分肯定了小型無(wú)人機(jī)在一些應(yīng)用場(chǎng)合的重要性和必要性。但是,目前國(guó)內(nèi)外傳統(tǒng)無(wú)人機(jī),其在消防、勘探等領(lǐng)域的應(yīng)用技術(shù)還不夠成熟完善,如無(wú)人機(jī)體型較大無(wú)法進(jìn)入狹小空間;使用遙控器操作過(guò)于繁瑣,效率不高;地面站設(shè)備過(guò)多不易攜帶[6]。若在小型無(wú)人機(jī)應(yīng)用基礎(chǔ)上再利用智能手機(jī)來(lái)取代傳統(tǒng)遙控器則可擴(kuò)大應(yīng)用場(chǎng)合及簡(jiǎn)化無(wú)人機(jī)操控的難度。再利用藍(lán)牙傳輸技術(shù),在保證一定范圍的同時(shí)也解決了當(dāng)今一些操控軟件使用外接發(fā)射器的問(wèn)題,使得無(wú)人機(jī)套件攜帶起來(lái)更加方便。因此,設(shè)計(jì)一款僅通過(guò)藍(lán)牙傳輸即可控制小型無(wú)人機(jī)飛行的軟件是非常有意義和有必要的。

本文設(shè)計(jì)與實(shí)現(xiàn)了一種基于Android的小型無(wú)人機(jī)控制軟件。該軟件基于Android智能平臺(tái),主要由飛行姿態(tài)控制模塊、軟件界面模塊和數(shù)據(jù)傳輸模塊組成。軟件通過(guò)藍(lán)牙和無(wú)線電功能與無(wú)人機(jī)進(jìn)行無(wú)線數(shù)據(jù)交互,完成對(duì)無(wú)人機(jī)的飛行姿態(tài)控制和攝像機(jī)的圖像傳輸。經(jīng)系統(tǒng)測(cè)試,該終端運(yùn)行穩(wěn)定、操作簡(jiǎn)便、易推廣。

1.系統(tǒng)總體設(shè)計(jì)

基于Android小型無(wú)人機(jī)控制軟件的系統(tǒng)總體設(shè)計(jì)分為飛行姿態(tài)控制模塊、軟件界面模塊、數(shù)據(jù)傳輸模塊三部分。飛行姿態(tài)控制模塊利用各傳感器產(chǎn)生的當(dāng)前無(wú)人機(jī)狀態(tài)信息以及輸入的控制信號(hào)來(lái)產(chǎn)生飛行姿態(tài)控制信號(hào),通過(guò)藍(lán)牙反饋給無(wú)人機(jī)[7]。軟件界面模塊主要設(shè)計(jì)與繪制軟件的各種界面。數(shù)據(jù)傳輸模塊,主要實(shí)現(xiàn)軟件與無(wú)人機(jī)之間的數(shù)據(jù)傳輸,包括利用藍(lán)牙的控制信號(hào)的傳輸以及利用5.8Ghz信道的圖像傳輸[1][2]。圖1為系統(tǒng)總體設(shè)計(jì)圖。

2.具體實(shí)現(xiàn)

2.1飛行姿態(tài)控制模塊

無(wú)人機(jī)智能PID控制方法目前技術(shù)成熟,應(yīng)用非常廣泛。因傳感器采集數(shù)據(jù)較易失真,小型四旋翼無(wú)人機(jī)采用雙閉環(huán)PID控制,以角度為外環(huán),角速度為內(nèi)環(huán),來(lái)減小姿態(tài)歐拉角的誤差。同時(shí),角速度由陀螺儀單一輸出,不易受其他因素影響;又因陀螺儀對(duì)姿態(tài)變化敏感,在姿態(tài)變化時(shí)可以迅速更新角速度,增強(qiáng)了系統(tǒng)的穩(wěn)定性[4]。

在Android傳感器框架下,利用與傳感器相關(guān)的類對(duì)各種傳感器進(jìn)行監(jiān)聽(tīng)和數(shù)據(jù)采集,并處理傳感器產(chǎn)生的飛行姿態(tài)控制信息。圖2為飛行控制信號(hào)產(chǎn)生的流程圖。

2.2軟件界面模塊

智能終端的屏幕刷新是通過(guò)不斷的覆蓋Canvas來(lái)實(shí)現(xiàn)的,Android系統(tǒng)中提供了專用的繪圖應(yīng)用接口,運(yùn)用這些接口工具,可以在Canvas畫(huà)布上繪制圖形,也可以修改已經(jīng)存在的圖形和對(duì)象,改變它們的呈現(xiàn)形式。Canvas作為繪圖元素,也可認(rèn)作系統(tǒng)提供的框架,其系統(tǒng)配套操作是畫(huà)圖API。在連續(xù)的繪圖過(guò)程中,所有經(jīng)過(guò)表面View對(duì)象得到畫(huà)布對(duì)象之前的狀態(tài)會(huì)被儲(chǔ)存。為了使圖形呈現(xiàn)出來(lái),必須先覆蓋或者抹掉畫(huà)布上之前的圖像,這個(gè)步驟需要通過(guò)刷屏來(lái)實(shí)現(xiàn)[3]。若不進(jìn)行刷屏更新畫(huà)布,則新繪圖即是建立在舊畫(huà)布之上,這就會(huì)出現(xiàn)之前圖形的繪圖軌跡,不滿足UI界面設(shè)計(jì)的基本要求。通過(guò)刷屏來(lái)更新畫(huà)布的主要代碼如下所示。

public void MyDraw( ){

Canvas canvas = holder.lockCanvas( );

paint.setColor(Color.BLUE);

Canvas drawRect(0, 0, this.getWidth( ), this.getHeight( ), paint );

paint.setColor(Color.ORANGE);

Canvas.drawText(“BreakLine”, textX, textY, paint );

holder.unlockCanvasAndPost(canvas);}

在使用SurfaceView對(duì)象的過(guò)程中,必須先創(chuàng)建 Surface,然后才能開(kāi)始圖形繪制任務(wù)。Surface 對(duì)象不能夠直接被處理,要先使用getHolder( )方法獲得 SurfaceHolder對(duì)象。最終通過(guò) addCallback( )方法,來(lái)產(chǎn)生針對(duì)SurfaceHolder 對(duì)象的通知消息,從而進(jìn)行SurfaceHolder.Callback 回調(diào)。

一個(gè)典型的SurfaceView 包括一個(gè)由 Thread 所派生的類,它可以在創(chuàng)建的時(shí)候接收對(duì)當(dāng)前的SurfaceHolder 的引用,在Thread 的 run 方法中,由該引用可以得到布局中SurfaceView 的 Canvas 對(duì)象,并更新Canvas,運(yùn)用SurfaceView 對(duì)象繪圖的整個(gè)過(guò)程可以描述為圖3流程[6]。endprint

2.3數(shù)據(jù)傳輸模塊

軟件和無(wú)人機(jī)之間的飛行姿態(tài)的控制通過(guò)藍(lán)牙組件完成,藍(lán)牙BLE模塊選用HM11藍(lán)牙模塊,能夠有效降低整個(gè)系統(tǒng)的整體功耗,同時(shí)軟件端使用bluetoothAdaper組件來(lái)接受和發(fā)送藍(lán)牙數(shù)據(jù),可在30米以內(nèi)的開(kāi)放環(huán)境中實(shí)現(xiàn)與地面軟件端之間的通信。

軟件和無(wú)人機(jī)之間的圖像傳輸通過(guò)圖傳系統(tǒng)完成,圖傳系統(tǒng)包括:相機(jī)、5.8GHZ天線發(fā)射端與接收端、安卓軟件接收端。

相機(jī)集成5.8GHZ發(fā)射天線,型號(hào)為VM275T,重3.6g,功耗25MW,安裝在無(wú)人機(jī)表面并可拆卸,僅通過(guò)無(wú)人機(jī)電源供電,易于調(diào)試以及維護(hù)。此相機(jī)拍攝視頻可直接轉(zhuǎn)碼后通過(guò)RTSP標(biāo)準(zhǔn)協(xié)議發(fā)送到接收端。接收端采用安卓手機(jī)OTG外接5.8GZH信號(hào)接收器,獲取的模擬信號(hào)直接傳到手機(jī)中,播放器解碼轉(zhuǎn)換為圖像后展示在軟件上[8]。

在圖傳顯示方面最大的問(wèn)題是圖像卡頓。圖像卡頓有兩種情況造成,一是傳輸中數(shù)據(jù)丟失,二是軟件接收端數(shù)據(jù)丟失。針對(duì)傳輸過(guò)程中數(shù)據(jù)丟失的問(wèn)題,解決方法是在傳輸過(guò)程中選擇更穩(wěn)定的TCP協(xié)議[9],通過(guò)此協(xié)議數(shù)據(jù)傳輸更穩(wěn)定但距離相對(duì)較短;針對(duì)圖像軟件端丟失數(shù)據(jù)的問(wèn)題,解決方法是采用接收、解碼顯示雙線程,中間通過(guò)緩存隊(duì)列來(lái)進(jìn)行數(shù)據(jù)的共享,避免了因接收數(shù)據(jù)和解碼一個(gè)線程,導(dǎo)致解碼不及時(shí)、接收線程阻塞造成的數(shù)據(jù)丟失。

3.系統(tǒng)測(cè)試

1. 無(wú)人機(jī)打開(kāi)電源通電,等待自檢完成。

2. 安裝手機(jī)端接收天線,打開(kāi)軟件,點(diǎn)擊連接出現(xiàn)圖4界面,搜索無(wú)人機(jī)藍(lán)牙信號(hào)并匹配。

3. 點(diǎn)擊校準(zhǔn),待無(wú)人機(jī)M1和M2兩燈常亮,表明無(wú)人機(jī)一切正常,可以起飛。

4. 點(diǎn)擊解鎖,機(jī)漿開(kāi)始旋轉(zhuǎn),左側(cè)按鈕控制油門(mén)及旋轉(zhuǎn),右側(cè)按鈕控制飛行方向。

該軟件操作主界面如圖5所示,界面頂部6個(gè)按鈕為功能按鈕,分別實(shí)現(xiàn)連接、解鎖、起飛、無(wú)頭、定高、校準(zhǔn)功能,兩側(cè)圓形為使用SufaceView繪制無(wú)人機(jī)的控制搖桿界面,左邊控制升降旋轉(zhuǎn),右邊控制前后左右飛行。

4.小結(jié)

本文設(shè)計(jì)與實(shí)現(xiàn)了一種基于Android的小型無(wú)人機(jī)控制軟件。該軟件基于Android智能平臺(tái),主要由飛行姿態(tài)控制模塊、軟件界面模塊和數(shù)據(jù)傳輸模塊組成。軟件主要通過(guò)藍(lán)牙與無(wú)人機(jī)進(jìn)行無(wú)線數(shù)據(jù)交互,完成對(duì)無(wú)人機(jī)的飛行姿態(tài)控制和攝像機(jī)的圖像傳輸。經(jīng)系統(tǒng)測(cè)試,該終端運(yùn)行穩(wěn)定、操作簡(jiǎn)便、易推廣。

[參考文獻(xiàn)]

[1]賈輝.基于Android 系統(tǒng)的無(wú)人機(jī)控制及通信系統(tǒng)設(shè)計(jì)[D].天津:中國(guó)民航大學(xué),2015.

[2]羅偉.基于Android 平臺(tái)的即時(shí)通訊系統(tǒng)的研究與實(shí)現(xiàn)[D].湖南:湖南師范大學(xué),2009.

[3]黃晟.基于用戶體驗(yàn)的APP 設(shè)計(jì)研究[D].陜西:陜西科技大學(xué),2012.

[4]陸偉男,蔡啟仲,李剛,等.基于四軸飛行器的雙閉環(huán)PID控制[J].科學(xué)技術(shù)與工程,2014,14(33):127-131.

[5]王晨,趙之璐,李亞儒.淺談未來(lái)無(wú)人機(jī)發(fā)展的關(guān)鍵技術(shù)[A].中國(guó)航空學(xué)會(huì).2014(第五屆)中國(guó)無(wú)人機(jī)大會(huì)論文集[C].北京:航工工業(yè)出版社,2014.

[6]郭霖.第一行代碼 Android[M].北京:人民郵電出版社,2014.

[7]鄭華美.小型無(wú)人機(jī)地面站軟件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2015.

[8]劉仲宇,張濤,李嘉全,等.超小型無(wú)人機(jī)相機(jī)系統(tǒng)關(guān)鍵技術(shù)研究[J].光電工程,2013,40(04):80-85.

[9]韓東斐.小型旋翼無(wú)人機(jī)數(shù)字圖像傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2016.

[10]張峰,佟巍,周立冬,等.國(guó)外救援無(wú)人機(jī)的發(fā)展現(xiàn)狀[J].中國(guó)醫(yī)療設(shè)備,2016,31(06):175-177.

基金項(xiàng)目:北京市屬高等學(xué)校高層次人才引進(jìn)與培養(yǎng)計(jì)劃項(xiàng)目(CIT&TCD201504058)、國(guó)家自然科學(xué)基金重點(diǎn)項(xiàng)目(51334003)、國(guó)家自然科學(xué)基金(61473039)、北京信息科技大學(xué)研究生教育質(zhì)量工程類項(xiàng)目(NO.5121724107)。

(作者單位:北京信息科技大學(xué)信息與通信工程學(xué)院,北京 100101)endprint

猜你喜歡
無(wú)人機(jī)
高職院校新開(kāi)設(shè)無(wú)人機(jī)專業(yè)的探討
江源县| 奇台县| 茂名市| 潞西市| 广东省| 江源县| 共和县| 宣恩县| 黔西| 东莞市| 西和县| 蒙阴县| 兴文县| 玛多县| 闵行区| 东莞市| 汉阴县| 平谷区| 扬中市| 丰镇市| 布尔津县| 西丰县| 呼伦贝尔市| 聂拉木县| 精河县| 芒康县| 桂阳县| 宜阳县| 闸北区| 延川县| 大洼县| 叙永县| 甘孜| 大足县| 方正县| 涪陵区| 榆社县| 漯河市| 罗田县| 铜梁县| 凤山县|