楊槐 王小平 蔡川
摘要:針對大型企業(yè)生產(chǎn)線的每個機械設(shè)備都會出現(xiàn)疲勞或者損壞而監(jiān)管難的特點,設(shè)計制作了基于物聯(lián)網(wǎng)技術(shù)的設(shè)備監(jiān)管系統(tǒng)的傳感器節(jié)點,以便采集機械設(shè)備的運行數(shù)據(jù)(包括振動參量、溫度、濕度參量),從而及早發(fā)現(xiàn)并替換存在隱患的機械設(shè)備。
關(guān)鍵詞:物聯(lián)網(wǎng);復(fù)雜機械設(shè)備;在線監(jiān)測;無線傳感器網(wǎng)絡(luò);ZigBee
中圖分類號:TP393文獻標(biāo)識碼:A文章編號:1009-3044(2012)20-5000-03
隨著我國成為世界制造中心,尤其是對重工業(yè)城市重慶來說,加工制造企業(yè)大量內(nèi)遷,各種企業(yè)保有大量機械設(shè)備,日常診斷和維護是一件非常繁重的任務(wù)。按照一個中型企業(yè)具有100臺需要監(jiān)測的設(shè)備計算,監(jiān)測每臺設(shè)備需要5-10個數(shù)據(jù)采集節(jié)點,那么,完成對該企業(yè)設(shè)備的在線實時監(jiān)測需要節(jié)點500-1000個。如果每個企業(yè)都采用這種方式的話,其市場容量將會是一個天文數(shù)字。物聯(lián)網(wǎng)技術(shù)作為一種新興技術(shù),整合傳感器技術(shù)、通信技術(shù)及計算機技術(shù),給解決機械設(shè)備的故障監(jiān)測提供了技術(shù)上的支撐。
1設(shè)備在線監(jiān)管系統(tǒng)的設(shè)計方案、指標(biāo)及原理
設(shè)備在線監(jiān)管系統(tǒng)的設(shè)計思想是:采用zigbee協(xié)議構(gòu)建無線傳感器網(wǎng)絡(luò),匯聚節(jié)點匯聚信息,并通過串口傳輸?shù)角度胧狡脚_,完成對采集數(shù)據(jù)的分析處理,對設(shè)備進行實時監(jiān)控。
整個系統(tǒng)如圖1所示。
圖1系統(tǒng)方案
系統(tǒng)工作流程如圖2所示。
節(jié)點通過傳感器Sensor采集相關(guān)信息(包括溫度、濕度、加速度),進入節(jié)點的MCU,通過ZigBee網(wǎng)絡(luò)匯聚到協(xié)調(diào)節(jié)點。
協(xié)調(diào)節(jié)點對所收到的各終端節(jié)點進行數(shù)據(jù)融合,封裝成一定的數(shù)據(jù)格式(后面有介紹),通過串行端口傳遞到嵌入式網(wǎng)關(guān)。
嵌入式網(wǎng)關(guān)從協(xié)調(diào)節(jié)點的串口讀取數(shù)據(jù),對自定義協(xié)議進行解碼,并在該嵌入式網(wǎng)關(guān)中構(gòu)建TCP服務(wù)器及WEB服務(wù)器,對收到的數(shù)據(jù)按照TCP/IP協(xié)議格式進行封裝,并等待各終端節(jié)點的連接,嵌入式網(wǎng)關(guān)完成的功能相當(dāng)于一個簡單的物聯(lián)網(wǎng)中間件。
在終端上通過TCP連接網(wǎng)關(guān),接收數(shù)據(jù)并進行實時分析和展示,并完成相關(guān)信息的告警及控制。
2傳感器節(jié)點硬件設(shè)計
2.1傳感器節(jié)點工作原理
2.1.1節(jié)點MCU選擇
對于機械振動的測試,需要把傳感器節(jié)點安裝在機械設(shè)備上,這就要求節(jié)點具有較小的體積和可靠的性能。
考慮到本設(shè)計需要對大量數(shù)據(jù)進行處理,因此,考慮使用數(shù)據(jù)存儲器和程序存儲器偏大的微控制芯片。其次,本系統(tǒng)需要對多組模擬量進行采集分析,考慮到構(gòu)造最小系統(tǒng)的條件約束,同時為了簡化系統(tǒng)電路,提高系統(tǒng)穩(wěn)定性,因此在微控制芯片選擇時,需要考慮一個具有內(nèi)部集成模擬/數(shù)字轉(zhuǎn)換的MCU。綜合以上因素,我們選擇了Texas Instruments公司的CC2530F256作為MCU。CC2530功能模塊見圖3所示。CC2530基于MEMS制造技術(shù),把微處理器(內(nèi)部集成增強型8051核),存儲器和射頻前端芯片整合在一起,那么制作出來的數(shù)據(jù)采集節(jié)點體積小,安裝在待測設(shè)備的不同部位,能夠?qū)崟r體現(xiàn)該設(shè)備的運行狀態(tài),能反應(yīng)設(shè)備的真實運行狀況。具有超大容量RAM和超大容量程序存儲器,同時具有12位高精度和高速A/D轉(zhuǎn)換,滿足本設(shè)計對微處理器的要求,而且,其大容量的存儲器為本設(shè)計升級和增加功能、使用性質(zhì)改變提供了足夠空間,避免系統(tǒng)升級后造成主控芯片更換而帶來的硬件浪費和不必要放入軟件開發(fā)費用,這樣的選擇符合資源冗余原則。
圖3 CC2530功能框圖
2.1.2振動傳感器選擇
目前市場上的加速度傳感器有單軸、雙軸和三軸加速度傳感器三種,因為對機械設(shè)備的監(jiān)測應(yīng)該檢測空間上不同方向上的及速度,才能準(zhǔn)確反映出設(shè)備的運行狀態(tài),因此考慮三軸加速度傳感器。美國模擬器件公司(ADI)的ADXL345ACCZ加速度傳感器正是基于IMEMS技術(shù),具有經(jīng)過認(rèn)證的質(zhì)量和可靠性。比同類器件的功耗典型值低50%,待機電流0.2uA,工作電流23uA是同類器件中功耗最低的產(chǎn)品。ADXL345ACCZ是一種帶有信號調(diào)理電路提供數(shù)字電壓輸出(I2C輸出)的小量程、小外形、低功耗的3軸加速度計。
2.1.3溫度濕度模塊的選擇
2.1.4傳感器節(jié)點構(gòu)成框圖
數(shù)據(jù)采集節(jié)點構(gòu)成如圖4所示。
各傳感器通過I2C總線連接到MCU,由于CC2530MCU沒有I2C硬件接口,所以在實現(xiàn)的過程中,通過P1_0和P1_1模擬I2C總線,完成對傳感數(shù)據(jù)的采集。
2.2傳感器節(jié)點總體硬件框架
其總體硬件框架如圖5所示。
節(jié)點硬件分成三個模塊,電源板、MCU板(即CC2530板)以及傳感器板。其中電源板完成DC-DC變換,為傳感器板和CC2530板提供3.3V、5V兩種電壓,同時也完成傳感器節(jié)點電源管理功能。MCU板完成數(shù)據(jù)處理、MAC協(xié)議、網(wǎng)絡(luò)協(xié)議的加載和運行,并驅(qū)動射頻收發(fā)模塊進行無線通信。傳感器板完成傳感器數(shù)據(jù)的采集。
3傳感器節(jié)點軟件設(shè)計
3.1傳感器節(jié)點軟件
采用TI的Z-STACK協(xié)議棧。該協(xié)議棧實現(xiàn)了IEEE802.15.4以及ZigBee協(xié)議。開發(fā)工具為IAR EW8051 7.51A。
3.2 Z-STACK協(xié)議棧
Z-STACK協(xié)議棧大概按照網(wǎng)絡(luò)協(xié)議分層。
APP(Application Programming):應(yīng)用層目錄,這是用戶創(chuàng)建各種不同工程的區(qū)域,在這個目錄中包含了應(yīng)用層的內(nèi)容和這個項目的主要內(nèi)容,在協(xié)議棧里面一般是以操作系統(tǒng)的任務(wù)實現(xiàn)的。
HAL(Hardware (H/W)Abstraction Layer):硬件層目錄,包含有與硬件相關(guān)的配置和驅(qū)動及操作函數(shù)。
MAC:MAC層目錄,包含了MAC層的參數(shù)配置文件及其MAC的LIB庫的函數(shù)接口文件。
MT(Monitor Test):實現(xiàn)通過串口可控各層,于各層進行直接交互。
NWK(ZigBee Network Layer):網(wǎng)絡(luò)層目錄,含網(wǎng)絡(luò)層配置參數(shù)文件及網(wǎng)絡(luò)層庫的函數(shù)接口文件,APS層庫的函數(shù)接口
OSAL(Operating System (OS) Abstraction Layer):協(xié)議棧的操作系統(tǒng)。
Profile:AF(Application work)層目錄,包含AF層處理函數(shù)文件。
Security:安全層目錄,安全層處理函數(shù),比如加密函數(shù)等。
Services:地址處理函數(shù)目錄,包括著地址模式的定義及地址處理函數(shù)。
Tools:工程配置目錄,包括空間劃分及ZStack相關(guān)配置信息。
ZDO(ZigBee Device Objects):ZDO目錄。
ZMac:MAC層目錄,包括MAC層參數(shù)配置及MAC層LIB庫函數(shù)回調(diào)處理函數(shù)。
ZMain:主函數(shù)目錄,包括入口函數(shù)及硬件配置文件。
Output:輸出文件目錄,這個EW8051 IDE自動生成的。
3.2.1 Zigbee網(wǎng)絡(luò)中的節(jié)點
通常情況下,在ZigBee網(wǎng)絡(luò)中,每一個節(jié)點都是有屬于自己制定的配置參數(shù),因此能更好的確定其設(shè)備的各種類型,同樣的在網(wǎng)絡(luò)中也會有著不一樣的任務(wù)。一般的,在屬于多跳網(wǎng)絡(luò)的ZB網(wǎng)絡(luò)中,兩個節(jié)點需要完成數(shù)據(jù)傳輸,可能需要經(jīng)過其他中間節(jié)點的協(xié)助,所以節(jié)點的類型參數(shù)配置是非常必要的。對每個節(jié)點有兩個任務(wù):
1)執(zhí)行指定的網(wǎng)絡(luò)功能函數(shù)
2)配置確定的參數(shù)到指定的值。
網(wǎng)絡(luò)功能的設(shè)置確定了該節(jié)點的類型,參數(shù)配置和指定的值確定了堆棧的模式。節(jié)點類型在ZigBee中,設(shè)備類型分為三類:協(xié)調(diào)器,路由器和終端設(shè)備。其中,協(xié)調(diào)器為黑色的節(jié)點。路由器為紅色的節(jié)點,終端設(shè)備為白色的節(jié)點。
在ZB網(wǎng)絡(luò)中,協(xié)調(diào)器就是作為網(wǎng)絡(luò)中的第一個開始的設(shè)備,也可以說成是一個ZB網(wǎng)路的建立或者是啟動網(wǎng)路的設(shè)備。通常情況下,協(xié)調(diào)器節(jié)點若要開始建立一個網(wǎng)絡(luò),首先必須要選擇一個信道以及一個網(wǎng)絡(luò)標(biāo)志符號(同時這也被叫做PAN ID)。除此之外,在網(wǎng)絡(luò)中,協(xié)調(diào)器設(shè)備還有其他的用途,比如網(wǎng)絡(luò)中的綁定的構(gòu)建以及安全機制的構(gòu)建等。
注意事項:在網(wǎng)絡(luò)中,協(xié)調(diào)器的主要是功能主要是構(gòu)建一個網(wǎng)絡(luò)和配置的性質(zhì)參數(shù)。如若這些配置和參數(shù)一旦構(gòu)建完成的話,那么協(xié)調(diào)器就只能是如同一個路由器了,在網(wǎng)絡(luò)中的其他操作都是不依賴于這個協(xié)調(diào)器的,造成這樣是因為ZigBee是屬于一個分布式的網(wǎng)絡(luò)。
通常情況下,路由器的主要功能分為三種:a.路由器作為一種很普通的設(shè)備被加入進網(wǎng)路中;b.多跳路由;c.路由器被作為一種輔助性的設(shè)備,幫助其他的子節(jié)點來完成通信。照常理來講,路由器必須是要處于工作狀態(tài)的,因此這就要求主干線對其進行供電(注意此類的供電與平常的電池供電是不一樣的)。不過,在某些指定的網(wǎng)絡(luò)結(jié)構(gòu)中是可以采用日常電池供電,比如:我們生活中所見的“串樹型”的網(wǎng)絡(luò)模式中,由于該模式中是允許路由器進行周期性的運轉(zhuǎn)的,因此可以使用電池進行供電的。
為了更好的維持網(wǎng)絡(luò)中最基本的正常運轉(zhuǎn),對終端設(shè)備是沒有進行指定的責(zé)任。即在一個網(wǎng)絡(luò)中,終端設(shè)備是沒有比不缺少的性質(zhì)。因此,終端設(shè)備是可以根據(jù)自己的功能需要進行喚醒或者是睡眠狀態(tài);所以也為電池供電設(shè)備。通常情況下,終端設(shè)別的內(nèi)存都是比較少的。
3.2.2添加自己的代碼
由于采用CC2530的評估版,根據(jù)其例程,主要在App中添加自己的任務(wù)。
4結(jié)論
該傳感器節(jié)點設(shè)計成功完成對溫度、濕度數(shù)據(jù)等參數(shù)的正常采集。各傳感器節(jié)點和協(xié)調(diào)節(jié)點以ZigBee協(xié)議方式構(gòu)成AdHoc網(wǎng)絡(luò),通信正常。另外為了展示實時曲線繪制,對傳感器節(jié)點的數(shù)據(jù)在博創(chuàng)平臺可以進行實時曲線展示,并可以對節(jié)點進行控制。