基于ZigBee技術(shù)的飛行保障工具管理系統(tǒng)
摘要 為了實(shí)現(xiàn)航空兵部隊(duì)日常飛行保障中對(duì)維護(hù)工具進(jìn)行遠(yuǎn)程實(shí)時(shí)精確管理的目的,設(shè)計(jì)了一套基于ZigBee無(wú)線傳感網(wǎng)絡(luò)和條碼技術(shù)的工具實(shí)時(shí)管理系統(tǒng)。該系統(tǒng)由終端數(shù)據(jù)采集系統(tǒng)、ZigBee無(wú)線傳感網(wǎng)絡(luò)和上位機(jī)監(jiān)控端3部分組成。系統(tǒng)完成了條碼槍對(duì)工具條形碼的采集和無(wú)線傳感網(wǎng)絡(luò)對(duì)數(shù)據(jù)的傳輸,PC端建立數(shù)據(jù)庫(kù)和上位機(jī)應(yīng)用程序?qū)崿F(xiàn)了數(shù)據(jù)處理和人機(jī)交互。此外系統(tǒng)還實(shí)現(xiàn)了對(duì)維護(hù)現(xiàn)場(chǎng)工具的實(shí)時(shí)管理,提高了工作效率,杜絕了人為差錯(cuò)的發(fā)生,對(duì)飛行安全保障具有重要意義。
本文引用地址:http://2s4d.com/article/201610/306328.htm在航空兵部隊(duì)飛行保障中,對(duì)工具的管理非常重要,嚴(yán)防將維護(hù)工具遺漏在飛機(jī)內(nèi)部,對(duì)飛行安全保障十分關(guān)鍵。每架飛機(jī)所對(duì)應(yīng)的工具都是獨(dú)一無(wú)二的,工具箱跟隨飛機(jī)的位置移動(dòng),目前是人工對(duì)工具箱中的工具數(shù)量和種類(lèi)進(jìn)行清點(diǎn)確認(rèn),在保證數(shù)量和種類(lèi)準(zhǔn)確無(wú)誤的情況下才能對(duì)飛機(jī)進(jìn)行相關(guān)作業(yè)。現(xiàn)有工作模式由于工具種類(lèi)繁多,人工效率低下且存在人為誤判的情況,這將對(duì)飛行安全造成嚴(yán)重隱患;同時(shí)每天需要去工具房借還工具,工作量較大。為解決上述問(wèn)題,本文設(shè)計(jì)了一種基于ZigBee無(wú)線傳感網(wǎng)絡(luò)的遠(yuǎn)程工具管理系統(tǒng)。系統(tǒng)實(shí)現(xiàn)了通過(guò)條碼槍對(duì)工具出入工具箱條形碼的數(shù)據(jù)采集,并通過(guò)建立ZigBee無(wú)線通信網(wǎng)絡(luò)將條形碼數(shù)據(jù)傳輸?shù)絇C端數(shù)據(jù)庫(kù),在PC端進(jìn)行數(shù)據(jù)處理,通過(guò)可視化界面對(duì)處理結(jié)果進(jìn)行顯示,并將每個(gè)工具箱的數(shù)據(jù)處理結(jié)果發(fā)回現(xiàn)場(chǎng)終端設(shè)備顯示,實(shí)現(xiàn)遠(yuǎn)程對(duì)每架飛機(jī)工具的精確、實(shí)時(shí)管理,并將結(jié)果反饋給現(xiàn)場(chǎng)工作人員,實(shí)現(xiàn)了各類(lèi)人員對(duì)數(shù)據(jù)的共享。本系統(tǒng)有效地解決了現(xiàn)有工作模式下監(jiān)管不到位、存在人為差錯(cuò)隱患、工作程序繁瑣的弊端;既保證了安全又提高了工作效率,對(duì)探索飛行安全保障模式具有重要意義。
1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)功能主要分為3部分:(1)實(shí)現(xiàn)單個(gè)工具箱(ZigBee終端節(jié)點(diǎn))的工具出庫(kù)入庫(kù)時(shí)工具條形碼的采集。(2)ZigBee無(wú)線傳感網(wǎng)絡(luò)的建立,將各終端節(jié)點(diǎn)采集的數(shù)據(jù)實(shí)時(shí)上傳到協(xié)調(diào)器點(diǎn),并進(jìn)行協(xié)調(diào)器點(diǎn)和終端節(jié)點(diǎn)的數(shù)據(jù)交換。(3)在PC端,通過(guò)RS232串口接收協(xié)調(diào)器節(jié)點(diǎn)的數(shù)據(jù),通過(guò)建立的數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)處理,實(shí)現(xiàn)對(duì)處理結(jié)果的可視化顯示并將處理結(jié)果反饋給各個(gè)終端節(jié)點(diǎn)。
整個(gè)工具管理系統(tǒng)的無(wú)線監(jiān)測(cè)網(wǎng)絡(luò)由終端節(jié)點(diǎn)、匯聚節(jié)點(diǎn)、監(jiān)控中心組成。系統(tǒng)采用Z—Stack協(xié)議構(gòu)建無(wú)線傳感器網(wǎng)絡(luò);各個(gè)終端節(jié)點(diǎn)分別執(zhí)行工具條碼的采集、信息的處理和數(shù)據(jù)的傳輸;匯聚節(jié)點(diǎn)包括路由器和協(xié)調(diào)器,路由器負(fù)責(zé)數(shù)據(jù)的收集與轉(zhuǎn)發(fā),協(xié)調(diào)器作為網(wǎng)關(guān)節(jié)點(diǎn),主要負(fù)責(zé)網(wǎng)絡(luò)組建、維護(hù)、控制終端節(jié)點(diǎn)的加入,通過(guò)RS232串口與監(jiān)控主機(jī)實(shí)現(xiàn)數(shù)據(jù)的交互;在監(jiān)控中心通過(guò)建立數(shù)據(jù)庫(kù)并對(duì)數(shù)據(jù)進(jìn)行處理從而實(shí)時(shí)管理整個(gè)網(wǎng)絡(luò)區(qū)域內(nèi)各終端節(jié)點(diǎn)的工具運(yùn)轉(zhuǎn)。在ZigBee協(xié)議的3種拓?fù)浣Y(jié)構(gòu)中,本文選用樹(shù)形網(wǎng)絡(luò),樹(shù)形網(wǎng)絡(luò)比最簡(jiǎn)單的星形網(wǎng)絡(luò)拓?fù)渚W(wǎng)絡(luò)規(guī)模大,同時(shí)比網(wǎng)狀拓?fù)渌栀Y源小,系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
2 硬件設(shè)計(jì)
系統(tǒng)硬件電路的設(shè)計(jì)主要包括終端節(jié)點(diǎn)和協(xié)調(diào)器節(jié)點(diǎn)的硬件設(shè)計(jì)。終端節(jié)點(diǎn)主要負(fù)責(zé)工具條碼數(shù)據(jù)的出入庫(kù)管理、狀態(tài)顯示、數(shù)據(jù)的無(wú)線發(fā)送和接收等任務(wù),并能以自組織的方式加入網(wǎng)絡(luò),是整個(gè)硬件的核心;而匯聚節(jié)點(diǎn)包括路由器節(jié)點(diǎn)和協(xié)調(diào)器節(jié)點(diǎn),路由器節(jié)點(diǎn)主要負(fù)責(zé)數(shù)據(jù)的路由;協(xié)調(diào)器節(jié)點(diǎn)主要負(fù)責(zé)和PC端上位機(jī)程序的數(shù)據(jù)通信,接收路由器的數(shù)據(jù)通過(guò)串口輸出到PC機(jī),通過(guò)串口接收PC端處理后的數(shù)據(jù),通過(guò)無(wú)線傳感網(wǎng)絡(luò)傳輸?shù)礁鱾€(gè)終端節(jié)點(diǎn),同時(shí)負(fù)責(zé)無(wú)線網(wǎng)絡(luò)的建立和維護(hù)。
系統(tǒng)的終端節(jié)點(diǎn)由CC2530核心模塊、數(shù)據(jù)采集模塊、狀態(tài)顯示模塊和按鍵模塊組成。終端節(jié)點(diǎn)的硬件框圖如圖2所示。
2.1 CC2530核心模塊電路
CC2530芯片是ZigBee新一代SoC芯片片上系統(tǒng)解決方案,其能夠以較低的總材料成本建立強(qiáng)大的網(wǎng)絡(luò)節(jié)點(diǎn)。CC2530集成了RF收發(fā)器、增強(qiáng)工業(yè)標(biāo)準(zhǔn)的8051MCU,可編程Flash存儲(chǔ)器,8 kB RAM等。圖3所示為CC2530核心電路圖,主要包括電源電路部分、晶振電路和射頻電路3部分。
2.2 數(shù)據(jù)采集模塊電路
在終端節(jié)點(diǎn)中,條形碼掃描槍負(fù)責(zé)對(duì)工具條形碼出入工具箱的數(shù)據(jù)進(jìn)行采集,通過(guò)RS232串口通信將數(shù)據(jù)傳輸給CC2530,CC2530模塊再將條碼數(shù)據(jù)進(jìn)行處理后通過(guò)無(wú)線傳感網(wǎng)絡(luò)傳輸給上位機(jī)。圖4為系統(tǒng)的USB轉(zhuǎn)串口電路圖。
2.3 狀態(tài)顯示模塊電路
液晶屏采用LCD1602,具有標(biāo)準(zhǔn)的16腳接口,可顯示漢字、英文和圖形。常用的指令集有:清屏指令、輸入方式設(shè)置指令、顯示開(kāi)關(guān)控制指令、光標(biāo)位移指令、功能設(shè)置指令、寫(xiě)數(shù)據(jù)指令等。液晶屏用于顯示工具狀態(tài)信息,工具全部歸還時(shí)顯示為OK,工具缺失是現(xiàn)實(shí)缺失的數(shù)量和工具代碼。液晶屏電路如圖5所示。
LED用于系統(tǒng)的工作狀態(tài)顯示,D1為系統(tǒng)報(bào)警指示燈,終端節(jié)點(diǎn)接收到上位機(jī)反饋的信息為工具數(shù)量不足時(shí)D1為閃爍狀態(tài),并在液晶顯示屏幕上顯示具體確實(shí)的工具代碼。D2為工具出庫(kù)狀態(tài)指示燈,D3為工具入庫(kù)狀態(tài)指示燈,LED電路如圖6所示。
2.4 按鍵模塊電路
按鍵模塊用于系統(tǒng)的工作模式的控制,本系統(tǒng)設(shè)計(jì)了3個(gè)單獨(dú)的按鍵。S1為系統(tǒng)啟動(dòng)按鈕,S2為入庫(kù)狀態(tài)切換按鈕,S3為出庫(kù)狀態(tài)切換按鈕,按鍵電路如圖7所示。
3 系統(tǒng)軟件
軟件部分的設(shè)計(jì)是在硬件網(wǎng)絡(luò)節(jié)點(diǎn)的基礎(chǔ)上,通過(guò)Z—Stack協(xié)議棧實(shí)現(xiàn)組網(wǎng),然后通過(guò)ZigBee無(wú)線傳感網(wǎng)絡(luò)來(lái)完成數(shù)據(jù)的傳送。終端節(jié)點(diǎn)采集工具條碼數(shù)據(jù),通過(guò)構(gòu)建的無(wú)線傳感網(wǎng)絡(luò)將各終端節(jié)點(diǎn)的數(shù)據(jù)傳輸給PC端;PC端通過(guò)將接收的數(shù)據(jù)經(jīng)過(guò)數(shù)據(jù)處理后得出結(jié)果,再將結(jié)果通過(guò)無(wú)線傳感網(wǎng)絡(luò)反饋給相對(duì)應(yīng)的終端節(jié)點(diǎn),并在PC端進(jìn)行可視化顯示;PC端上位機(jī)軟件實(shí)現(xiàn)了人機(jī)交互功能,便于遠(yuǎn)程對(duì)現(xiàn)場(chǎng)狀態(tài)進(jìn)行管理。
3.1 構(gòu)建無(wú)線傳感網(wǎng)絡(luò)
無(wú)線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)的工作有組網(wǎng)與數(shù)據(jù)轉(zhuǎn)發(fā)兩個(gè)階段。程序設(shè)計(jì)采用TI公司最新的符合ZigBee2007規(guī)范的Z-Stack協(xié)議棧。Z—Stack是德州儀器推出的ZigBee協(xié)議棧軟件,為應(yīng)用開(kāi)發(fā)者提供了一個(gè)模板,在其基礎(chǔ)上進(jìn)行開(kāi)發(fā)可大幅加快應(yīng)用開(kāi)發(fā)周期。
Z—Stack采用操作系統(tǒng)的思想來(lái)構(gòu)建,采用事件輪詢機(jī)制。系統(tǒng)按照任務(wù)優(yōu)先級(jí)依次處理事件,而在事件處理完后,進(jìn)入低功耗模式,降低了系統(tǒng)功耗。操作系統(tǒng)抽象層(OSAL)的工作就是對(duì)多個(gè)任務(wù)進(jìn)行系統(tǒng)資源分配,核心是通過(guò)參數(shù)傳遞的事件類(lèi)型來(lái)判斷對(duì)應(yīng)處理相應(yīng)任務(wù)的事件。在系統(tǒng)中,定義Taskevents數(shù)組存放每個(gè)任務(wù)的標(biāo)志位,在OS主體循環(huán)函數(shù)中,輪詢判斷各任務(wù)標(biāo)志位來(lái)對(duì)應(yīng)執(zhí)行相應(yīng)的任務(wù)。進(jìn)而執(zhí)行事件處理函數(shù),完成任務(wù)事件處理。
在進(jìn)行應(yīng)用開(kāi)始時(shí),需要定義添加相應(yīng)的任務(wù)。其中主要包括任務(wù)初始化函數(shù)和事件處理函數(shù)。任務(wù)初始化函數(shù)定義一個(gè)TasksArr數(shù)組,存放所有任務(wù)事件處理函數(shù)的地址。給每個(gè)任務(wù)分配唯一的任務(wù)標(biāo)識(shí)號(hào),最后注冊(cè)系統(tǒng)服務(wù)。Z—Stack協(xié)議棧中按照由高到低的優(yōu)先級(jí)已經(jīng)定義好了MAC層、網(wǎng)絡(luò)層、硬件驅(qū)動(dòng)抽象層、應(yīng)用設(shè)備對(duì)象層的任務(wù),只需添加用戶應(yīng)用層任務(wù)初始化函數(shù)到后面即可。
ZigBee無(wú)線傳感器網(wǎng)絡(luò)在布設(shè)之后,協(xié)調(diào)器首先建立網(wǎng)絡(luò),所用信道和PAN ID應(yīng)防止與其他網(wǎng)絡(luò)有沖突;建立網(wǎng)絡(luò)后,協(xié)調(diào)器處于網(wǎng)絡(luò)監(jiān)聽(tīng)狀態(tài),當(dāng)有終端節(jié)點(diǎn)請(qǐng)求加入網(wǎng)絡(luò)時(shí),協(xié)調(diào)器為終端節(jié)點(diǎn)分配網(wǎng)絡(luò)地址并建立鄰居列表,之后向終端節(jié)點(diǎn)發(fā)送入網(wǎng)確認(rèn)信息,連接成功。設(shè)計(jì)中,終端節(jié)點(diǎn)可以尋找最佳路由,實(shí)現(xiàn)網(wǎng)絡(luò)多跳功能,最后通過(guò)路由器發(fā)送數(shù)據(jù)給協(xié)調(diào)器。
3.2 ZigBee終端節(jié)點(diǎn)軟件設(shè)計(jì)
CC2530是基于8051 MCU的SOC芯片,數(shù)據(jù)傳輸采中將每次發(fā)送的數(shù)據(jù)打包成一個(gè)128位的數(shù)據(jù)包,其中包頭為校驗(yàn)碼55,包尾校驗(yàn)碼為AA,接收端收到數(shù)據(jù)后將數(shù)據(jù)包解析,并判斷包頭包尾是否為“55”和“AA”,若是,則將數(shù)據(jù)包放入緩存中;如果不是,則返回掉包信息,發(fā)送端重新發(fā)送數(shù)據(jù)。終端節(jié)點(diǎn)軟件分為采集數(shù)據(jù)并發(fā)送、接收數(shù)據(jù)并顯示兩部分。通過(guò)串口采集數(shù)據(jù)打包后通過(guò)無(wú)線傳感網(wǎng)絡(luò)發(fā)送。接收協(xié)調(diào)器發(fā)送來(lái)的數(shù)據(jù)后,解析后將符合要求的數(shù)據(jù)在LCD上顯示。
3.3 上位機(jī)軟件設(shè)計(jì)
監(jiān)控中心主要完成數(shù)據(jù)收發(fā)、存儲(chǔ)、處理以及顯示,軟件框圖如圖10所示。上位機(jī)的界面是采用VB編寫(xiě),數(shù)據(jù)庫(kù)采用的是SQL。監(jiān)控中心是本系統(tǒng)的核心部分,終端采集到的各節(jié)點(diǎn)數(shù)據(jù)都通過(guò)無(wú)線傳感網(wǎng)絡(luò)傳輸?shù)缴衔粰C(jī)的數(shù)據(jù)庫(kù)中存儲(chǔ),通過(guò)系統(tǒng)程序?qū)?shù)據(jù)進(jìn)行比對(duì)處理,從而判定各個(gè)終端節(jié)點(diǎn)的工具是否全部在位。
上位機(jī)界面如圖11所示,系統(tǒng)運(yùn)行后打開(kāi)通信端口按鍵,選擇串行端口、波特率,系統(tǒng)則自動(dòng)接收協(xié)調(diào)器通過(guò)串口發(fā)送的數(shù)據(jù),并存儲(chǔ)在系統(tǒng)數(shù)據(jù)庫(kù)中。當(dāng)操作人員按下獲取按鈕時(shí),系統(tǒng)程序?qū)⒎答伋鼋Y(jié)論:當(dāng)工具全部歸還時(shí),對(duì)應(yīng)的終端節(jié)點(diǎn)顯示為綠色;當(dāng)工具未全部歸還時(shí)顯示為紅色,并在下方文本框中顯示所缺工具型號(hào)。按下發(fā)送按鈕時(shí),則將工具狀態(tài)發(fā)送給相應(yīng)終端節(jié)點(diǎn),實(shí)現(xiàn)數(shù)據(jù)的共享交互。
4 結(jié)束語(yǔ)
系統(tǒng)設(shè)計(jì)了一套基于ZigBee技術(shù)的飛行保障工具管理系統(tǒng),有效解決了對(duì)現(xiàn)場(chǎng)監(jiān)管不到位、實(shí)際工作中人為差錯(cuò)等問(wèn)題。通過(guò)系統(tǒng)測(cè)試,無(wú)線傳感網(wǎng)絡(luò)數(shù)據(jù)傳輸穩(wěn)定可靠,能夠有效地監(jiān)控飛行保障現(xiàn)場(chǎng)終端工具使用情況,對(duì)探索航空兵部隊(duì)對(duì)飛行保證中工具進(jìn)行安全高效的管理提供了一套切實(shí)可行的方案。
評(píng)論