謝晉飛,靳 鴻,史曉軍
(1.中北大學(xué) 儀器科學(xué)與動(dòng)態(tài)測(cè)試教育部重點(diǎn)實(shí)驗(yàn)室,太原030051;2.晉西工業(yè)集團(tuán)有限責(zé)任公司,太原030027)
隨著我國(guó)綜合國(guó)力和地區(qū)影響力的不斷提升,無(wú)論在在地區(qū)維穩(wěn),還是在反恐治安中,履帶式車輛都扮演著極其重要的角色。 目前在履帶式車輛的動(dòng)態(tài)參數(shù)研究方面,數(shù)據(jù)采集與數(shù)據(jù)分析往往被分割開(kāi)來(lái),如文獻(xiàn)[1]對(duì)發(fā)動(dòng)機(jī)支撐載荷變化數(shù)據(jù)進(jìn)行采集分析,先將數(shù)據(jù)采集到存儲(chǔ)讀數(shù)盒,采集結(jié)束后再將讀數(shù)盒的數(shù)據(jù)讀取到上位機(jī)進(jìn)行分析。 文獻(xiàn)[2]基于總線技術(shù)的網(wǎng)絡(luò)化設(shè)計(jì),對(duì)履帶式裝甲車輛電氣系統(tǒng)進(jìn)行模塊劃分,作為總線上的節(jié)點(diǎn),對(duì)裝甲車輛電氣系統(tǒng)進(jìn)行實(shí)時(shí)、快速、準(zhǔn)確地檢測(cè)。 文獻(xiàn)[3]提出了一種裝甲裝備訓(xùn)練遠(yuǎn)程監(jiān)控系統(tǒng)架構(gòu),實(shí)現(xiàn)了裝甲裝備訓(xùn)練信息數(shù)字化遠(yuǎn)程監(jiān)控。 文獻(xiàn)[4]針對(duì)傳統(tǒng)的裝甲車輛電氣設(shè)備檢測(cè)的缺陷,利用CAN 總線構(gòu)建了網(wǎng)絡(luò)化檢測(cè)系統(tǒng)。 該系統(tǒng)將待檢測(cè)子系統(tǒng)作為總線上的節(jié)點(diǎn),以C8051F040 單片機(jī)為控制單元,通過(guò)相應(yīng)接口電路連接到待測(cè)節(jié)點(diǎn),并將數(shù)據(jù)處理結(jié)果通過(guò)CAN 總線上傳到上位機(jī),實(shí)現(xiàn)對(duì)裝甲車輛電氣系統(tǒng)的實(shí)時(shí)監(jiān)測(cè)。
在此融合物聯(lián)網(wǎng)創(chuàng)新技術(shù),設(shè)計(jì)了履帶式車輛無(wú)線溫度智能監(jiān)測(cè)系統(tǒng),采用無(wú)線分布式傳感器網(wǎng)絡(luò)對(duì)溫度數(shù)據(jù)進(jìn)行實(shí)時(shí)采集、監(jiān)測(cè)。
所設(shè)計(jì)的車載無(wú)線溫度智能監(jiān)測(cè)系統(tǒng),融合物聯(lián)網(wǎng)技術(shù),通過(guò)人機(jī)智能交互界面對(duì)履帶式車輛艙內(nèi)的溫度參數(shù)進(jìn)行讀取、分析,測(cè)試終端的傳感器通過(guò)分布式拓?fù)渚W(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行部署,取代傳統(tǒng)測(cè)試依靠線纜傳輸數(shù)據(jù),大大提高艙內(nèi)電子設(shè)備的可集成度,從而優(yōu)化了整車的信息傳輸系統(tǒng),擴(kuò)展整個(gè)監(jiān)測(cè)系統(tǒng)的空間。 履帶式車輛內(nèi)部機(jī)構(gòu)復(fù)雜,溫度參數(shù)直接體現(xiàn)艙內(nèi)環(huán)境舒適狀況,監(jiān)測(cè)艙內(nèi)的溫度變化狀況可以直觀地告訴車內(nèi)人員所處環(huán)境的溫度變化情況,提高駕駛體驗(yàn)和工作效率。
該系統(tǒng)的整體設(shè)計(jì)方案如下:前端溫度采集節(jié)點(diǎn)構(gòu)成艙內(nèi)無(wú)線傳感網(wǎng)絡(luò),將采集的艙內(nèi)溫度數(shù)據(jù)通過(guò)ZigBee 協(xié)議匯總到協(xié)調(diào)器接收終端,數(shù)據(jù)接收終端再將獲取的溫度數(shù)據(jù)通過(guò)串口上傳到樹(shù)莓派,樹(shù)莓派可根據(jù)需要設(shè)計(jì)適合車輛的人機(jī)交互界面,車內(nèi)人員可以通過(guò)車載顯示屏的人機(jī)交互界面進(jìn)行溫度數(shù)據(jù)的獲取和分析,溫度數(shù)據(jù)同樣可以通過(guò)WiFi 傳輸?shù)竭h(yuǎn)程控制中心,對(duì)艙內(nèi)的溫度數(shù)據(jù)進(jìn)行存儲(chǔ)和分析。 車載無(wú)線溫度智能監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)如圖1 所示。
圖1 車載無(wú)線溫度智能監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)Fig.1 Structure of vehicle-mounted wireless temperature intelligent monitoring system
前端溫度采集節(jié)點(diǎn)由8051 內(nèi)核及其外圍電路、溫度傳感器、CC2530 模塊(傳送)、電源模塊構(gòu)成,設(shè)計(jì)框圖如圖2 所示。
圖2 前端溫度采集節(jié)點(diǎn)Fig.2 Front-end temperature acquisition node
前端溫度采集節(jié)點(diǎn)加入網(wǎng)絡(luò)后,周期性控制傳感器采集數(shù)據(jù)通過(guò)CC2530 的RF 收發(fā)器發(fā)送至協(xié)調(diào)器。 當(dāng)收到上位機(jī)系統(tǒng)發(fā)來(lái)的指令數(shù)據(jù),則對(duì)數(shù)據(jù)進(jìn)行解析,并執(zhí)行相應(yīng)的操作。不同的CC2530 模塊具有不同的節(jié)點(diǎn)網(wǎng)絡(luò)容量,功放與耗能最高的情況下可以包含200~255 個(gè)節(jié)點(diǎn)[5],完全可以滿足履帶式車輛艙內(nèi)的溫度監(jiān)測(cè)需求。
上位機(jī)數(shù)據(jù)處理模塊核心部分由樹(shù)莓派3B+、車載顯示屏內(nèi)嵌人機(jī)互動(dòng)界面、CC2530 模塊 (接收)、電源模塊、串口通信模塊和遠(yuǎn)程PC 端構(gòu)成。 其中,樹(shù)莓派與顯示屏通過(guò)HDMI 接口連接,實(shí)現(xiàn)顯示屏的供電和數(shù)據(jù)傳輸;樹(shù)莓派與CC2530 模塊之間采用USB 串口連接,實(shí)現(xiàn)數(shù)據(jù)和控制指令的傳輸。
當(dāng)協(xié)調(diào)器收到終端發(fā)送的傳感器數(shù)據(jù),首先對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證提取,并且在協(xié)調(diào)器中對(duì)各個(gè)終端的數(shù)據(jù)進(jìn)行整理, 將所有數(shù)據(jù)組合成一個(gè)數(shù)據(jù)包,通過(guò)周期性事件,將數(shù)據(jù)通過(guò)串口通信模塊發(fā)送到上位機(jī)樹(shù)莓派系統(tǒng), 電源模塊給予協(xié)調(diào)器和樹(shù)莓派5 V 供電。上位機(jī)數(shù)據(jù)處理模塊設(shè)計(jì)框圖如圖3 所示。
圖3 上位機(jī)數(shù)據(jù)處理模塊Fig.3 Upper computer data processing module
根據(jù)系統(tǒng)需要所選用的DSl8B20 型溫度傳感器,是美國(guó)Dallas 半導(dǎo)體公司的一種智能數(shù)字溫度傳感器,是目前市面上最常用也是性價(jià)比最高的溫度傳感器。 DSl8B20 的優(yōu)點(diǎn)之一就是讀出或?qū)懭霐?shù)據(jù)均采用單總線接口,這樣就大大簡(jiǎn)化了系統(tǒng)電路連接。DSl8B20 工作的能量由總線提供,無(wú)需外接電源, 也是DSl8B20 適合ZigBee 網(wǎng)絡(luò)的一個(gè)突出優(yōu)點(diǎn)。DSl8B20 體積小,封裝形式多樣,可靠性高,非常適用于履帶式車輛內(nèi)部長(zhǎng)時(shí)間溫度監(jiān)測(cè)。
DS18B20 傳感器有3 個(gè)引腳接線, 即地線、供電線和數(shù)據(jù)線。 根據(jù)DS18B20 的使用說(shuō)明,分別與CC2530 模塊的GND、P0.7 和3.3 V 引腳連接, 其路線如圖4 所示。 在供電線與數(shù)據(jù)線之間接入電壓拉低電阻,防止燒毀器件[6],使數(shù)據(jù)傳輸穩(wěn)定,其阻值為4.7 kΩ。
圖4 DS18B20 與CC2530 模塊接線圖Fig.4 DS18B20 and CC2530 module wiring diagram
該系統(tǒng)數(shù)據(jù)采集與收發(fā)主控采用CC2530 無(wú)線通信模塊。 其使用一個(gè)單周期的8051 兼容內(nèi)核,包括許多不同的外設(shè),允許應(yīng)用程序設(shè)計(jì)者開(kāi)發(fā)先進(jìn)的應(yīng)用。CC2530 設(shè)備系列提供了一個(gè)IEEE 802.15.4兼容無(wú)線收發(fā)器。RF 內(nèi)核控制模擬無(wú)線模塊。除此之外,其自身還提供了一個(gè)接口用于連接外設(shè),這使得無(wú)線設(shè)備的操作與工作方式更加多樣化。CC2530 模塊除了電源供電之外還可以使用干電池供電,在功率合適的情況下可以工作數(shù)月之久,是組建無(wú)線傳感網(wǎng)絡(luò)的最佳模塊。
CC2530 的Flash 容量可以選擇,有32,64,128 kB,這些Flash 可以允許應(yīng)用程序保存必要的數(shù)據(jù),以保證這些數(shù)據(jù)在設(shè)備重啟后可用。 使用該功能,就可以保存具體網(wǎng)絡(luò)參數(shù),當(dāng)系統(tǒng)再次上電后,就可以直接加入網(wǎng)絡(luò),進(jìn)行數(shù)據(jù)采集工作,從而為車載無(wú)線傳感網(wǎng)絡(luò)的間歇重啟工作提供了保障。CC2530芯片及其外圍電路如圖5 所示。
圖5 CC2530 芯片及其外圍電路Fig.5 CC2530 chip and its peripheral circuit
該系統(tǒng)中,協(xié)調(diào)器模塊與樹(shù)莓派采用USB 串口通信模塊,實(shí)現(xiàn)數(shù)據(jù)和控制指令的傳輸。 USB 轉(zhuǎn)串口芯片是電路的核心部分,提供USB 和串口的橋轉(zhuǎn)換, 它分別由3 個(gè)部分組成——USB 轉(zhuǎn)串口芯片PL2303,PL2303 晶振,PL2303 外圍電路。 串口通信模塊電路如圖6 所示。
圖6 串口通信模塊電路Fig.6 Serial communication module circuit
USB 串口相比于其他串口具有很多的優(yōu)勢(shì)[7]。在設(shè)備上使用時(shí)可以熱插拔[8],不需要關(guān)機(jī)再開(kāi)機(jī)等動(dòng)作;USB 串口采用全雙工數(shù)據(jù)傳輸,速度更快,5根線路中2 根用于發(fā)送數(shù)據(jù),另外2 根用于接收數(shù)據(jù),還有1 根是地線,可以同步全速地進(jìn)行讀寫(xiě)操作。
上位機(jī)數(shù)據(jù)處理模塊主控采用樹(shù)莓派3B+微型電腦系統(tǒng)作為控制核心,樹(shù)莓派的實(shí)際尺寸只有信用卡大小,但具有與電腦相同的功能。3B+型樹(shù)莓派配置了一枚64 位1.4 GHz 四核ARM Cortex-A53 處理器,并板載了2.4,5 GHz 的雙頻無(wú)線網(wǎng)卡,支持藍(lán)牙4.2 傳輸。 B+型樹(shù)莓派具有很多接口, 如4 個(gè)USB 2.0 接口、HDMI 接口、網(wǎng)線接口等,同時(shí)配有512 MB RAM 和40 個(gè)通用輸入/輸出口。 使用樹(shù)莓派作為上位機(jī)主控,可以根據(jù)設(shè)計(jì)需要完成上層應(yīng)用的開(kāi)發(fā),連接底層硬件與上層應(yīng)用,是實(shí)現(xiàn)物聯(lián)網(wǎng)云控制和云管理的最佳主控選擇[9]。樹(shù)莓派3B+微型系統(tǒng)實(shí)物如圖7 所示。
圖7 樹(shù)莓派3B+微型系統(tǒng)實(shí)物Fig.7 Raspberry Pi 3B+ micro system object
該系統(tǒng)監(jiān)測(cè)節(jié)點(diǎn)數(shù)據(jù)采集程序通過(guò)嵌入式系統(tǒng)開(kāi)發(fā)工具IAR 軟件進(jìn)行編寫(xiě)與下載。 IAR 編程與下載環(huán)境如圖8 所示。
圖8 IAR 編程與下載環(huán)境Fig.8 IAR programming and download environment
IAR 支持眾多知名半導(dǎo)體公司的微處理器,包括CC2530 模塊中的8051 內(nèi)核。 在編譯與下載之前,需要將DS18B20 溫度傳感器的C++庫(kù)函數(shù)文件移植到系統(tǒng)工程文件中,在主函數(shù)中直接調(diào)用溫度讀取函數(shù),就可以實(shí)現(xiàn)節(jié)點(diǎn)模塊對(duì)溫度數(shù)據(jù)的采集。
編譯完成之后下載到對(duì)應(yīng)的CC2530 模塊中,由于模塊自帶Flash,所以掉電后下載的程序不會(huì)丟失,如果想要更新模塊中的程序,直接通過(guò)IAR 下載覆蓋舊程序即可。
該系統(tǒng)通過(guò)無(wú)線傳感器網(wǎng)絡(luò)技術(shù)WSN(wireless sensor networks)實(shí)現(xiàn)艙內(nèi)溫度監(jiān)測(cè)的獲取,采用分布式的方式將前端溫度采集節(jié)點(diǎn)部署在設(shè)定的網(wǎng)絡(luò)中,將采集到的溫度數(shù)據(jù)信息通過(guò)ZigBee 無(wú)線通信網(wǎng)絡(luò)匯聚到智能控制終端。 該技術(shù)具有自組織、大規(guī)模、可靠性高等特點(diǎn)。
該系統(tǒng)的通信協(xié)議主要基于Z-Stack 協(xié)議棧進(jìn)行開(kāi)發(fā),樹(shù)莓派通過(guò)串口連接CC2530 協(xié)調(diào)器進(jìn)行ZigBee 網(wǎng)絡(luò)的建立與管理, 前端溫度采集節(jié)點(diǎn)作為終端加入ZigBee 網(wǎng)絡(luò), 協(xié)調(diào)器和樹(shù)莓派系統(tǒng)的控制中心對(duì)分布在艙內(nèi)的前端溫度采集節(jié)點(diǎn)進(jìn)行輪詢呼叫。 系統(tǒng)Z-Stack 協(xié)議棧啟動(dòng)流程如圖9所示。
圖9 Z-Stack 協(xié)議棧啟動(dòng)流程Fig.9 Startup flow chart of Z-stack protocol stack
智能監(jiān)測(cè)終端軟件設(shè)計(jì)主要包括樹(shù)莓派登錄界面和監(jiān)測(cè)界面,采用Python 語(yǔ)言可以實(shí)現(xiàn)其軟件程序的開(kāi)發(fā)。
Python 語(yǔ)言擁有開(kāi)源的第三方庫(kù)以及簡(jiǎn)潔的語(yǔ)法規(guī)則,可以大幅縮短軟件開(kāi)發(fā)周期,同時(shí)Python程序具有強(qiáng)大的兼容能力。PyQt5 是Python 與Qt 結(jié)合的產(chǎn)物, 是進(jìn)行圖形界面設(shè)計(jì)最棒的庫(kù)之一,在PC 端上安裝完P(guān)ython 后只需通過(guò)一些命令即可安裝PyQt5。 在Windows 上安裝PyQt5 后,會(huì)生成一個(gè)界面開(kāi)發(fā)軟件Qt Designer。 Qt Designer 是一個(gè)PyQt5 的可視化界面編輯軟件, 它的作用是幫助用戶快速開(kāi)發(fā)出界面文件,采用PyCharm 進(jìn)行調(diào)控系統(tǒng)主程序的開(kāi)發(fā),可以大幅提升編程效率[10]。
樹(shù)莓派已安裝了Python 編譯器, 所以在PC 上采用PyCharm+PyQt5+Python 進(jìn)行智能監(jiān)測(cè)終端軟件的開(kāi)發(fā), 將編寫(xiě)好的.py 源文件下載到樹(shù)莓派上,便可在樹(shù)莓派上執(zhí)行所開(kāi)發(fā)的軟件。 監(jiān)測(cè)終端顯示界面工作流程如圖10 所示。
車載智能檢測(cè)系統(tǒng)設(shè)置有登錄界面,只有用戶名和密碼都正確才能進(jìn)入系統(tǒng),進(jìn)一步提高了系統(tǒng)的安全性。 登錄界面如圖11 所示。
圖10 終端顯示界面工作流程Fig.10 Work flow chart of the terminal display interface
圖11 車載智能監(jiān)測(cè)終端登錄界面Fig.11 Login interface of vehicle-mounted intelligent monitoring terminal
將編譯好的ZigBee 協(xié)議棧下載到對(duì)應(yīng)的CC2530 模塊,1 個(gè)作為協(xié)調(diào)器與車載樹(shù)莓派端連接,另設(shè)4 個(gè)終端節(jié)點(diǎn)作為溫度采集節(jié)點(diǎn),將利用PyCharm+PyQt5+Python 編寫(xiě)好的智能監(jiān)測(cè)終端登錄界面、溫度數(shù)據(jù)采集界面的.py 文件打包發(fā)送到車載樹(shù)莓派,通過(guò)樹(shù)莓派系統(tǒng)自帶的Python 編譯器運(yùn)行文件。
系統(tǒng)上電,4 個(gè)終端節(jié)點(diǎn)分散在實(shí)驗(yàn)室的不同位置,模擬車輛艙內(nèi)環(huán)境,可以適時(shí)地對(duì)改變其所處位置的溫度,通過(guò)車載樹(shù)莓派端直連的HDMI 顯示屏和WiFi 連接的遠(yuǎn)程PC 端來(lái)觀察艙內(nèi)溫度的變化趨勢(shì)。 監(jiān)測(cè)的溫度數(shù)據(jù)直接存放在樹(shù)莓派系統(tǒng)中, 可以通過(guò)HDMI 顯示屏或遠(yuǎn)程PC 端進(jìn)入樹(shù)莓派系統(tǒng)文件夾進(jìn)行查看。 遠(yuǎn)程PC 端溫度監(jiān)測(cè)界面、車載智能監(jiān)測(cè)終端如圖12,圖13 所示。
圖12 遠(yuǎn)程PC 端溫度監(jiān)測(cè)界面Fig.12 Remote PC temperature monitoring interface
圖13 車載智能監(jiān)測(cè)終端Fig.13 Vehicle-mounted intelligent monitoring terminal
目前物聯(lián)網(wǎng)創(chuàng)新技術(shù)在各個(gè)領(lǐng)域擁有巨大的潛在應(yīng)用價(jià)值。 在此依托嵌入式技術(shù)和無(wú)線傳感技術(shù),闡述了履帶式車輛無(wú)線溫度智能監(jiān)測(cè)系統(tǒng)的系統(tǒng)設(shè)計(jì)、硬件結(jié)構(gòu)、軟件協(xié)議。 艙內(nèi)人員可以通過(guò)樹(shù)莓派在HDMI 顯示屏上對(duì)艙內(nèi)溫度數(shù)據(jù)進(jìn)行采集、顯示、存儲(chǔ);將樹(shù)莓派接入以太網(wǎng),使用安裝在PC端的VNC 軟件對(duì)樹(shù)莓派進(jìn)行遠(yuǎn)程登錄,實(shí)現(xiàn)遠(yuǎn)程艙內(nèi)溫度監(jiān)控。 在實(shí)驗(yàn)室環(huán)境下模擬車輛艙內(nèi)環(huán)境進(jìn)行了監(jiān)測(cè)系統(tǒng)整體功能驗(yàn)證,結(jié)果表明該系統(tǒng)基本實(shí)現(xiàn)了設(shè)計(jì)的要求,對(duì)履帶式車輛動(dòng)態(tài)參數(shù)研究具有一定的意義。