朱照紅
(江蘇省靖江中等專(zhuān)業(yè)學(xué)校,江蘇泰州,214500)
無(wú)人飛行器無(wú)論在現(xiàn)代軍隊(duì)作戰(zhàn)領(lǐng)域、通信偵查領(lǐng)域,還是在消防演習(xí)領(lǐng)域,抗震救援領(lǐng)域等都能發(fā)揮不可替代的作用,體現(xiàn)其安全、迅速、高效的通信技術(shù)優(yōu)勢(shì)。文獻(xiàn)研究還發(fā)現(xiàn),早在21世紀(jì)初,美國(guó)諾斯羅普(Northrop)公司就提出了一種基于現(xiàn)代通信技術(shù)的自組織軍事聯(lián)合作戰(zhàn)的概念;而國(guó)內(nèi)的一些高校的專(zhuān)家們?cè)?012 年就首次將Wi Fi 通信技術(shù)應(yīng)用到無(wú)人直升飛機(jī)上,并利用 Wi Fi 的組網(wǎng)能力成功實(shí)驗(yàn)了1KM以上的數(shù)據(jù)鏈。本文開(kāi)展了基于WiFi和ZigBee混合自組織組網(wǎng)技術(shù)在飛行器通信系統(tǒng)中的應(yīng)用研究,取得了寶貴的實(shí)踐經(jīng)驗(yàn)和科學(xué)的參考數(shù)據(jù)。
WiFi是一種短距離高速無(wú)線(xiàn)網(wǎng)絡(luò),用W iFi技術(shù)組件的網(wǎng)絡(luò)結(jié)構(gòu)也可以實(shí)現(xiàn)定位及環(huán)境監(jiān)測(cè)等功能。ZigBee是一種基于IEEE802.15.4標(biāo)準(zhǔn)的低速低功耗低成本的無(wú)線(xiàn)網(wǎng)絡(luò),現(xiàn)在常用于物聯(lián)網(wǎng)系統(tǒng),但其組網(wǎng)能力非常強(qiáng)大,并且也能很方便的實(shí)現(xiàn)定位、導(dǎo)航和監(jiān)控等。構(gòu)建一個(gè)兼容和互補(bǔ)二者優(yōu)點(diǎn)的自組織網(wǎng)絡(luò)是本文研究的重點(diǎn)。
在四軸飛行器上可以使用的無(wú)線(xiàn)通信模塊主要有WIFI(如安信公司的ESP系列WiFi模塊)、藍(lán)牙、2.4G模塊、433M模塊、868M模塊等5種大類(lèi)模塊。
基于WiFi技術(shù)和ZigBee技術(shù)的自組織混合通信模型如圖1所示,模型由工作于5GHz頻段的WiFi模塊和工作于2.4G頻段的ZigBee模塊兩大部分組成,并通過(guò)網(wǎng)關(guān)將WiFi網(wǎng)口、ZigBee串口及用戶(hù)控制的串口等完成數(shù)據(jù)處理。
圖1 自組織混合通信模型
在本文設(shè)計(jì)的自組織混合通信模型中,主要由WiFi模塊、ZigBee模塊和網(wǎng)關(guān)等三大模塊組成。
其中,WiFi模塊核心器件選用美國(guó)高通公司的AR9344集成芯片,內(nèi)置4口100M以太網(wǎng)交換機(jī),是2.4G和5G雙頻段單模工作模塊,為避免與ZigBee模塊2.4G沖突,這里選擇工作在5G頻段。本模塊還根據(jù)飛行器工作需要配置了基于W9751技術(shù)的RAM電路、8MFlash電路和基于RFFM4501技術(shù)的射頻收發(fā)集成電路等,這些集成電路的使用是得設(shè)計(jì)更為簡(jiǎn)潔、性能更加優(yōu)良、抗干擾能力更強(qiáng)、制作成本更加低廉。WiFi通信系統(tǒng)硬件結(jié)構(gòu)和實(shí)物圖如圖 2所示。
圖2 基于AR9344的WiFi通信模塊設(shè)計(jì)
ZigBee模塊選用美國(guó)德州儀器公司生產(chǎn)的CC2530收發(fā)一體的集成芯片,實(shí)際使用時(shí)為增大通信和控制距離,通常在其和天線(xiàn)之間增加功率放大器達(dá)到遠(yuǎn)距離通信的目的。由于CC2530射頻輸出是一收發(fā)合用的差分端子,不能直接構(gòu)成射頻前端,因此可與CC2591射頻前后端專(zhuān)用集成電路直接連接,設(shè)計(jì)原理圖如圖3所示。
網(wǎng)關(guān)(Gatway)是連接基于不同通信協(xié)議的網(wǎng)絡(luò)設(shè)備,設(shè)置好網(wǎng)關(guān)的IP地址,TCP/IP協(xié)議變可實(shí)現(xiàn)不同網(wǎng)絡(luò)之間的通信。常用的網(wǎng)關(guān)模塊有博大光通GTi-M1301模塊、基于STM32F的智能家居網(wǎng)關(guān)模塊和基于ARMv7-M架構(gòu)的Cortex-m4處理器網(wǎng)關(guān)模塊等。綜合比較后,選用第三種處理器網(wǎng)關(guān)。Cortex-m4處理器有兩種操作狀態(tài)(調(diào)試狀態(tài)和Thumb狀態(tài))、兩種操作模式(處理模式和線(xiàn)程模式)和兩個(gè)訪(fǎng)問(wèn)等級(jí)(特權(quán)訪(fǎng)問(wèn)等級(jí)和非特權(quán)訪(fǎng)問(wèn)等級(jí))。
此外,飛行器在飛行過(guò)程中還離不開(kāi)衛(wèi)星導(dǎo)航,采用UM220衛(wèi)星芯片通過(guò)接收 GPS信號(hào),以實(shí)現(xiàn)定位功能和時(shí)鐘信號(hào)等。UM220為雙系統(tǒng)高性能模塊,同時(shí)支持BD2 B1、GPS L1兩個(gè)頻點(diǎn),定位精度為2.5m,導(dǎo)航數(shù)據(jù)格式為NMEA0183。
本系統(tǒng)的軟件設(shè)計(jì)主要包括WiFi自組織網(wǎng)絡(luò)、ZigBee軟件和網(wǎng)關(guān)軟件等。
圖3 基于CC2530和CC2591芯片技術(shù)的ZigBee通信原理圖
無(wú)線(xiàn)自組織網(wǎng)絡(luò)(Ad Hoc)是一種多跳的臨時(shí)性自治系統(tǒng),具有網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)動(dòng)態(tài)變化、自組織無(wú)中心網(wǎng)絡(luò)、多條網(wǎng)絡(luò)等特點(diǎn),其網(wǎng)絡(luò)信息交換采用計(jì)算機(jī)網(wǎng)絡(luò)中的分組交換機(jī)制,并且,用戶(hù)終端是筆記本、PDA等可以移動(dòng)的便攜式終端,每個(gè)用戶(hù)終端兼有路由器和主機(jī)兩種功能,可隨時(shí)處于移動(dòng)或者靜止?fàn)顟B(tài)。
ZigBee組網(wǎng)可分網(wǎng)絡(luò)初始化和節(jié)點(diǎn)入網(wǎng)兩步。其中節(jié)點(diǎn)入網(wǎng)可通過(guò)協(xié)調(diào)器連接入網(wǎng),也可通過(guò)父節(jié)點(diǎn)入網(wǎng),下文重點(diǎn)介紹通過(guò)協(xié)調(diào)器入網(wǎng)。因此,任何一個(gè)zigbee節(jié)點(diǎn)要組建一個(gè)網(wǎng)絡(luò)必須要滿(mǎn)足這樣兩點(diǎn)要求:(1)節(jié)點(diǎn)是FFD節(jié)點(diǎn),具備zigbee協(xié)調(diào)器的能力;(2)節(jié)點(diǎn)還沒(méi)有與其他網(wǎng)絡(luò)連接,當(dāng)節(jié)點(diǎn)已經(jīng)與其他網(wǎng)絡(luò)連接時(shí),此節(jié)點(diǎn)只能作為該網(wǎng)絡(luò)的子節(jié)點(diǎn),因?yàn)橐粋€(gè)zigbee網(wǎng)絡(luò)中有且只有一個(gè)網(wǎng)絡(luò)協(xié)調(diào)器。
(1)初始化。首先選定網(wǎng)絡(luò)協(xié)調(diào)器。判斷節(jié)點(diǎn)是否是全功能FFD節(jié)點(diǎn),接著判斷此FFD節(jié)點(diǎn)是否在其他網(wǎng)絡(luò)里或者網(wǎng)絡(luò)里是否已經(jīng)存在協(xié)調(diào)器。一般是通過(guò)主動(dòng)掃描,發(fā)送一個(gè)信標(biāo)請(qǐng)求命令(Beaconrequest command),然后設(shè)置一個(gè)掃描期限(T_scan_duraTIon),如果在掃描期限內(nèi)都沒(méi)有檢測(cè)到信標(biāo),那么就認(rèn)為FFD在其pos內(nèi)沒(méi)有協(xié)調(diào)器,那么此時(shí)就可以建立自己的zigbee網(wǎng)絡(luò),并且作為這個(gè)網(wǎng)絡(luò)的協(xié)調(diào)器不斷地產(chǎn)生信標(biāo)并廣播出去。其次進(jìn)行信道掃描,完成能量掃描和主動(dòng)掃描兩個(gè)過(guò)程——先以遞增的方式對(duì)所測(cè)量的能量值進(jìn)行信道排序,排除能量值超出了可允許能量水平的信道;接著進(jìn)行主動(dòng)掃描,搜索節(jié)點(diǎn)通信半徑內(nèi)的網(wǎng)絡(luò)信息,節(jié)點(diǎn)通過(guò)主動(dòng)信道掃描方式獲得這些信標(biāo)幀,并根據(jù)這些信息,找到一個(gè)最好的、相對(duì)安靜的信道,通過(guò)記錄的結(jié)果,選擇一個(gè)信道。設(shè)置網(wǎng)絡(luò)ID。最后設(shè)置網(wǎng)絡(luò)ID。找到合適的信道后,協(xié)調(diào)器將為網(wǎng)絡(luò)選定一個(gè)網(wǎng)絡(luò)標(biāo)識(shí)符(PAN ID,取值《=0x3FFF),PAN ID可以通過(guò)偵聽(tīng)其他網(wǎng)絡(luò)的ID然后選擇一個(gè)不會(huì)沖突的ID的方式來(lái)獲取。
(2)節(jié)點(diǎn)入網(wǎng)。節(jié)點(diǎn)入網(wǎng)一般包括查找網(wǎng)絡(luò)、發(fā)送請(qǐng)求命令、等待協(xié)調(diào)器處理、發(fā)送數(shù)據(jù)請(qǐng)求命令和回復(fù)等五步。①查找網(wǎng)絡(luò)協(xié)調(diào)器。首先會(huì)主動(dòng)掃描查找周?chē)W(wǎng)絡(luò)的協(xié)調(diào)器,如果在掃描期限內(nèi)檢測(cè)到信標(biāo),那么將獲得了協(xié)調(diào)器的有關(guān)信息,這時(shí)就向協(xié)調(diào)器發(fā)出連接請(qǐng)求。在選擇合適的網(wǎng)絡(luò)之后,上層將請(qǐng)求MAC層對(duì)物理層PHY和MAC層的 phyCurrentChannel、macPANID等PIB屬性進(jìn)行相應(yīng)的設(shè)置。如果沒(méi)有檢測(cè)到,間隔一段時(shí)間后,節(jié)點(diǎn)重新發(fā)起掃描。②發(fā)送關(guān)聯(lián)請(qǐng)求命令(Associaterequest command)。節(jié)點(diǎn)將關(guān)聯(lián)請(qǐng)求命令發(fā)送給協(xié)調(diào)器,協(xié)調(diào)器收到后立即回復(fù)一個(gè)確認(rèn)幀(ACK),同時(shí)向它的上層發(fā)送連接指示原語(yǔ),表示已經(jīng)收到節(jié)點(diǎn)的連接請(qǐng)求。當(dāng)協(xié)調(diào)器的MAC層的上層接收到連接指示原語(yǔ)后,將根據(jù)自己的資源情況(存儲(chǔ)空間和能量)決定給節(jié)點(diǎn)的MAC層發(fā)送響應(yīng)。③等待協(xié)調(diào)器處理。當(dāng)節(jié)點(diǎn)收到協(xié)調(diào)器加入關(guān)聯(lián)請(qǐng)求命令的ACK后,節(jié)點(diǎn)MAC將等待一段時(shí)間,接受協(xié)調(diào)器的連接響應(yīng)。若協(xié)調(diào)器的資源足夠,協(xié)調(diào)器會(huì)給節(jié)點(diǎn)分配一個(gè)16位的短地址,并產(chǎn)生包含新地址和連接成功狀態(tài)的連接響應(yīng)命令,則此節(jié)點(diǎn)將成功的和協(xié)調(diào)器建立連接并可以開(kāi)始通信。④發(fā)送數(shù)據(jù)請(qǐng)求命令。如果協(xié)調(diào)器在響應(yīng)時(shí)間內(nèi)同意節(jié)點(diǎn)加入,那么將產(chǎn)生關(guān)聯(lián)響應(yīng)命令(Associateresponse command)并存儲(chǔ)這個(gè)命令。當(dāng)響應(yīng)時(shí)間過(guò)后,節(jié)點(diǎn)發(fā)送數(shù)據(jù)請(qǐng)求命令(Datarequest command)給協(xié)調(diào)器,協(xié)調(diào)器收到后立即回復(fù)ACK,然后將存儲(chǔ)的關(guān)聯(lián)響應(yīng)命令發(fā)給節(jié)點(diǎn)。如果在響應(yīng)時(shí)間到后,協(xié)調(diào)器還沒(méi)有決定是否同意節(jié)點(diǎn)加入,那么節(jié)點(diǎn)將試圖從協(xié)調(diào)器的信標(biāo)幀中提取關(guān)聯(lián)響應(yīng)命令,成功的話(huà)就可以入網(wǎng)成功,否則重新發(fā)送請(qǐng)求信息直到入網(wǎng)成功。⑤回復(fù)。節(jié)點(diǎn)收到關(guān)聯(lián)響應(yīng)命令后,立即向協(xié)調(diào)器回復(fù)一個(gè)確認(rèn)幀(ACK),以確認(rèn)接收到連接響應(yīng)命令,此時(shí)節(jié)點(diǎn)將保存協(xié)調(diào)器的短地址和擴(kuò)展地址,并且節(jié)點(diǎn)的MLME向上層發(fā)送連接確認(rèn)原語(yǔ),通告關(guān)聯(lián)加入成功的信息。
圖4 網(wǎng)關(guān)數(shù)據(jù)轉(zhuǎn)換
網(wǎng)關(guān)軟件。網(wǎng)關(guān)軟件的作用的是把系統(tǒng)及用戶(hù)數(shù)據(jù)約定標(biāo)準(zhǔn)化的通信協(xié)議,按預(yù)設(shè)格式完成數(shù)據(jù)之間的打包和轉(zhuǎn)換,最終實(shí)現(xiàn)互相通信。數(shù)據(jù)包的轉(zhuǎn)換通常要完成拆包、提取、分發(fā)端口和數(shù)據(jù)打包、重新封裝等方面的工作,如下圖4所示。串口異步通信數(shù)據(jù)每次按8bit為基數(shù)傳輸,開(kāi)始由FE和長(zhǎng)度信息組成。網(wǎng)口數(shù)據(jù)信源地址和信宿地址均為對(duì)應(yīng)總線(xiàn)地址。
小型飛行器的測(cè)試參數(shù)主要涉及飛行器的轉(zhuǎn)速、姿態(tài)和位置。因此,運(yùn)用MATLAB設(shè)計(jì)圖形用戶(hù)界面GUI程序,然后按照各自標(biāo)準(zhǔn)的通信協(xié)議,依次發(fā)送WIiFi信號(hào)或ZigBee信號(hào)來(lái)控制和觸發(fā)旋翼電機(jī)和主控,完成數(shù)據(jù)變換和傳輸,并通過(guò)MATLAB對(duì)飛行器傳回的數(shù)據(jù)進(jìn)行處理、存儲(chǔ)及顯示。經(jīng)系統(tǒng)調(diào)試和測(cè)試,本混合自組織通信系統(tǒng)能夠較準(zhǔn)確可靠的完成小型飛行器的各項(xiàng)主要參數(shù)的測(cè)試和調(diào)整。
本文在綜合比較了WIiFi技術(shù)和ZigBee技術(shù)的各自?xún)?yōu)缺點(diǎn)后,提出混合式自組織網(wǎng)絡(luò)體系的概念,在架構(gòu)了這一自組織體系的基礎(chǔ)上,從硬件和軟件的兩個(gè)方面設(shè)計(jì)一款適用于小型飛行器完成各種控制的通信組織網(wǎng)絡(luò)。