劉偉
[摘? ? 要]針對傳統(tǒng)采集方案中有線網(wǎng)絡(luò)布線困難,系統(tǒng)擴展性不強,缺乏統(tǒng)一數(shù)據(jù)集成接口的現(xiàn)狀,提出了一種由ZigBee無線通信技術(shù)和Modbus總線接口技術(shù)相結(jié)合的電機溫度及振動參數(shù)采集方案。采用微控制芯片作為參數(shù)采集端及數(shù)據(jù)中轉(zhuǎn)端控制內(nèi)核,CC2530作為無線通信芯片,中轉(zhuǎn)端控制內(nèi)核同時提供Modbus-RTU-Slave及Modbus-TCP-Server接口給上位機。文章詳細介紹了系統(tǒng)的軟硬件結(jié)構(gòu)設(shè)計,傳感器設(shè)備的選擇及Zigbee組網(wǎng)與報文數(shù)據(jù)幀定義封裝,實現(xiàn)了參數(shù)采集系統(tǒng)的智能化,信息化及安裝簡單,容易維護,接口統(tǒng)一的目標。
[關(guān)鍵詞]Zigbee;Modbus-RTU-Slave;Modbus-TCP-Server;數(shù)據(jù)采集
[中圖分類號]TN915.8 [文獻標志碼]A [文章編號]2095–6487(2021)09–00–03
[Abstract]Aiming at the current situation of difficult wired network wiring, weak system expansibility and lack of unified data integration interface in the traditional acquisition scheme, a motor temperature and vibration parameter acquisition scheme based on the combination of ZigBee wireless communication technology and MODBUS interface technology is proposed. The micro control chip is used as the control core of parameter acquisition end and data transfer end, and CC2530 is used as the wireless communication chip. The transfer end control core provides Modbus RTU slave and Modbus TCP server interfaces to the upper computer at the same time. The software and hardware structure design of the system, the selection of sensor equipment, ZigBee networking and packet data frame definition and packaging are introduced in detail. The goal of intellectualization, informatization, simple installation, easy maintenance and unified interface of the parameter acquisition system is realized.
[Keywords]Zigbee;Modbus-RTU-Slave;Modbus-TCP-Server;data acquisition
電機在運行過程中用以衡量其健康狀態(tài)的參數(shù)除了電壓、電流、轉(zhuǎn)矩、功率等外,還包括電機機殼溫度、電機軸承振動等數(shù)據(jù)。在實際工程應(yīng)用現(xiàn)場中,常規(guī)參數(shù)可以通過電機驅(qū)動裝置讀取,而對電機機殼溫度、軸承振動參數(shù)少有關(guān)注,究其原因:①設(shè)備型號各異,規(guī)格不統(tǒng)一,系統(tǒng)維護性差;②設(shè)備安裝分散,不便于傳感器安裝布線;③即便是有采集參數(shù)的設(shè)備,對上位機提供的數(shù)據(jù)接口也不盡統(tǒng)一,系統(tǒng)擴展性差。
近年來隨著工業(yè)物聯(lián)網(wǎng)的發(fā)展,各種無線通信協(xié)議的應(yīng)用越來越普及,采用無線方式構(gòu)建靈活便捷,高拓展性的電機溫度、振動參數(shù)采集系統(tǒng),必將成為以后數(shù)據(jù)采集方面的發(fā)展趨勢。其中,ZigBee是一種高可靠、低功率、低成本、低數(shù)據(jù)速率,高安全性的雙向無線射頻通信技術(shù)。
1 系統(tǒng)硬件設(shè)計
1.1 系統(tǒng)硬件元器件的選擇
通過對采集設(shè)備現(xiàn)場安裝方式、安裝位置、傳感器布線等多方面因素的考慮,采用總線型參數(shù)采集傳感器,磁吸式安裝方式,低功率小型化MCU控制器。
溫度傳感器采用DS18B20,該傳感器僅需要一條數(shù)據(jù)線即可實現(xiàn)與微處理的雙向通信,具有支持多點組網(wǎng)、測量范圍寬、體積小、抗干擾能力強等特點。振動傳感器采用磁吸式安裝方式,可以安裝在軸承蓋上,可以測量振動速度、振動位移,它是由運動線圈切割磁力線而輸出電壓的磁電式變送器,因此具有性能穩(wěn)定、安裝方便等特點。
無線射頻模塊采用CC2530[1],該模塊廣泛應(yīng)用在2.4GHz IEEE802.15.4系統(tǒng)中,可滿足系統(tǒng)對低成本、低功耗的要求,ZigBee模塊根據(jù)功能的不同,分為協(xié)調(diào)器、路由器、終端3種類型。
采集端MCU采用ATmega328P8[2]位微控制芯片,該控制芯片具有尺寸小、功耗低、接口豐富等特點。通過SPI總線增加一塊ADS1118模擬量采集芯片,該芯片分辨率為16位,能更好地還原采樣參數(shù)。數(shù)據(jù)接收端采用ESP32[3]微控制芯片,雙核32位MCU、2.4 GHz雙模WiFi和藍牙芯片,支持多種通信協(xié)議。
1.2 系統(tǒng)的硬件結(jié)構(gòu)
硬件結(jié)構(gòu)主要由底層數(shù)據(jù)采集部分和數(shù)據(jù)接收協(xié)議轉(zhuǎn)換兩大部分組成。底層數(shù)據(jù)采集部分由溫度、振動數(shù)據(jù)采集模塊、ZigBee終端節(jié)點、ZigBee路由器節(jié)點、數(shù)據(jù)采集MCU模塊組成,將這幾個模塊進行邏輯連接,可實現(xiàn)數(shù)據(jù)采集端功能,ZigBee路由器節(jié)點不是必須的,如果距離較近,可不使用單獨的路由器節(jié)點,協(xié)調(diào)器在建立網(wǎng)絡(luò)之后,本身可以當做路由器使用。
數(shù)據(jù)接收及協(xié)議轉(zhuǎn)換端連接ZigBee協(xié)調(diào)器[4]節(jié)點,負責(zé)建立管理整個ZigBee網(wǎng)絡(luò),接收各個采集端上傳的溫度、振動數(shù)據(jù),整理后寫入相關(guān)Modbus[5]寄存器,為上位機提供統(tǒng)一接口。
系統(tǒng)整體硬件結(jié)構(gòu)圖如圖1所示,數(shù)據(jù)采集端、接收端硬件結(jié)構(gòu)及通信接口圖如圖2所示。
2 系統(tǒng)軟件設(shè)計
軟件設(shè)計方面基于美國德州儀器(TI)公司推出的CC2530F256芯片配套的ZigBee協(xié)議棧,微處理器控制程序基于Arduino開發(fā)環(huán)境,利用C語言或C++語言開發(fā)。本系統(tǒng)軟件設(shè)計主要包括三大部分:
(1)數(shù)據(jù)采集端的數(shù)據(jù)采集程序以及數(shù)據(jù)打包上傳的協(xié)議幀設(shè)計。
(2)數(shù)據(jù)采集端與數(shù)據(jù)接收端之間利用ZigBee無線網(wǎng)絡(luò)通信的數(shù)據(jù)傳輸協(xié)議幀的設(shè)計。
(3)數(shù)據(jù)接收端協(xié)議數(shù)據(jù)封包、解包、轉(zhuǎn)換、Modbus通信接口的實現(xiàn)。
數(shù)據(jù)采集端軟件實現(xiàn)主要包括兩部分內(nèi)容:
(1)電機機殼溫度與軸瓦振動數(shù)據(jù)的采集。
(2)根據(jù)設(shè)定的上傳模式,將數(shù)據(jù)封包上傳。
在初始化函數(shù)setup()中首先采用串口命令與CC2530無線芯片通信,根據(jù)CC2530的硬件MAC地址獲取設(shè)備的網(wǎng)絡(luò)短地址,以備后續(xù)通信使用,接著采用sensors.begin();函數(shù)初始化DS18B20單總線設(shè)備。采用ads1118.begin();函數(shù)利用默認參數(shù)初始化ADS1118芯片。在循環(huán)執(zhí)行程序voidloop(void)中通過sensors.requestTemperatures();對溫度采集芯片DS18B20發(fā)送命令以獲取溫度。利用TempC=sensors.getTempCByIndex(i);語句可以獲取第i個溫度采集傳感器的攝氏溫度值。同時利用ads1118.getMilliVolts();函數(shù)獲取振動傳感器反饋的毫伏電壓值。
數(shù)據(jù)上傳模式分為兩種,模式一根據(jù)設(shè)置的參數(shù)閾值,當采集的溫度和振動數(shù)據(jù)超過閾值才進行封包上傳,采用模式一可以有效減輕網(wǎng)絡(luò)傳輸壓力,且可以避免傳輸重復(fù)數(shù)據(jù)。實際應(yīng)用中出現(xiàn)運行超溫,振動超限的情況畢竟屬于少數(shù)。模式二采用輪詢應(yīng)答模式,數(shù)據(jù)采集端接收到數(shù)據(jù)請求后,才執(zhí)行數(shù)據(jù)采集及封包上傳的動作。數(shù)據(jù)采集端工作流程如圖3所示。
(1)數(shù)據(jù)接收端采用CC2530無線芯片的廣播工作模式,向全網(wǎng)設(shè)備下達命令,命令數(shù)據(jù)中包括數(shù)據(jù)采集端工作模式、溫度閾值、振動閾值、設(shè)備短地址。
數(shù)據(jù)采集端上傳數(shù)據(jù)時,采用CC2530芯片的點對點通信工作模式,上傳數(shù)據(jù)幀末尾會根據(jù)傳輸模式的設(shè)定自動添加自身MAC地址或者短地址。命令數(shù)據(jù)幀格式如圖4所示,上傳數(shù)據(jù)幀格式如圖5所示。
(2)數(shù)據(jù)接收端在初始化函數(shù)setup()中通過串口指令根據(jù)MAC地址表獲取網(wǎng)絡(luò)中各個設(shè)備的短地址,以備后續(xù)使用。接收到上傳的數(shù)據(jù)后,通過MAC地址的匹配,將各個設(shè)備的數(shù)據(jù)存放到相應(yīng)Modbus寄存器地址中。當上位機通過Modbus指令更新寄存器中數(shù)據(jù)時,通過回調(diào)函數(shù),程序重新組織下發(fā)命令。數(shù)據(jù)接收端程序流程如圖6所示。
3 上位機Modbus接口設(shè)計
Modbus協(xié)議是廣泛應(yīng)用在各種控制器,上位機軟件上的一種通用通信總線。系統(tǒng)取得數(shù)據(jù)后,為了給其他系統(tǒng)提供一個統(tǒng)一標準的數(shù)據(jù)接口,結(jié)合ESP32微處理器的硬件優(yōu)勢,通過UART串口+TTL轉(zhuǎn)RS485模塊設(shè)計了Modbus-RTU-Slave接口,同時結(jié)合ESP32微處理器提供的WIFI模組建立一個Modbus-TCP-Server接口。
各個設(shè)備采集的溫度、振動數(shù)據(jù)統(tǒng)一以Modbus功能碼F03存放在以40001開始的寄存器中。工作模式,參數(shù)閾值等設(shè)定參數(shù)通過以40050開始的寄存器控制。
4 結(jié)束語
本文重點以CC2530無線射頻芯片為基礎(chǔ),結(jié)合ATmega328P與ESP32等微型處理器以及溫度、振動參數(shù)采集模塊,通過軟件編程組成了一套能提供標準Modbus通信接口的ZigBee無線數(shù)據(jù)采集系統(tǒng)。系統(tǒng)設(shè)計既利用了ZigBee網(wǎng)絡(luò)易組建,成本低、等諸多優(yōu)點,又通過提供的Modbus接口,將物聯(lián)網(wǎng)協(xié)議與工業(yè)通信協(xié)議有機結(jié)合起來。使得萬物互聯(lián)的理念又向工業(yè)領(lǐng)域推進一步??梢钥吹剑S著無線通信技術(shù)應(yīng)用的日益廣泛,相關(guān)成熟技術(shù)必然會推行到工業(yè)領(lǐng)域,工業(yè)領(lǐng)域也越來越重視無線通信技術(shù)。
參考文獻
[1] QST青軟實訓(xùn).Zigbee技術(shù)開發(fā)CC2530單片機原理及應(yīng)用[M].北京:清華大學(xué)出版社,2015.
[2] 佚名.AVR單片機開發(fā)與應(yīng)用實例[M].北京:中國電力出版社,2018.
[3] 楊晉,曹盛宏.智能硬件項目教程-基于ESP32[M].北京:北京航空航天大學(xué)出版社,2020.
[4] 宋俊慷,臧翔.基于ZigBee承載ModBus-RTU的智慧農(nóng)業(yè)監(jiān)測數(shù)據(jù)傳輸網(wǎng)絡(luò)設(shè)計[J].智能計算機與應(yīng)用,2020(7):247-249.
[5] 陳呂州.Arduino程序設(shè)計基礎(chǔ)[M].第二版.北京:北京航空航天大學(xué)出版社,2015.