王 浩
(健雄職業(yè)技術(shù)學(xué)院 軟件與服務(wù)外包學(xué)院,江蘇 太倉(cāng) 215411)
冷庫(kù)的應(yīng)用現(xiàn)在已經(jīng)變的相當(dāng)廣泛,各種食品的保存,全都離不開冷庫(kù),冷庫(kù)環(huán)境監(jiān)測(cè)主要包括兩大方面,溫度與濕度,任何食品的保存,都與其密不可分.然而傳統(tǒng)的冷庫(kù)環(huán)境監(jiān)測(cè)系統(tǒng)采用人工監(jiān)測(cè)和報(bào)警,具有施工成本高、不易擴(kuò)展,同時(shí)有線傳輸面臨布線復(fù)雜,維護(hù)升級(jí)困難等.隨著無線傳感網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展,本文提出一種基于ZigBee 無線傳感網(wǎng)絡(luò)技術(shù)對(duì)食品冷庫(kù)環(huán)境進(jìn)行實(shí)時(shí)監(jiān)測(cè)與報(bào)警的設(shè)計(jì)方案,通過基于ZigBee 協(xié)議的CC2530 芯片通信節(jié)點(diǎn)、溫濕度傳感器以及執(zhí)行節(jié)點(diǎn)相結(jié)合,可以實(shí)現(xiàn)溫濕度的自動(dòng)監(jiān)測(cè)及報(bào)警功能.
為了提高傳統(tǒng)食品冷庫(kù)環(huán)境監(jiān)測(cè)及報(bào)警系統(tǒng)的靈活性和可擴(kuò)展性,使冷庫(kù)監(jiān)測(cè)與報(bào)警系統(tǒng)更加模塊化,在本系統(tǒng)設(shè)計(jì)中采用具有低功耗、低成本、高擴(kuò)展性以及2.4GHZ 頻段的ZigBee 技術(shù),構(gòu)建一個(gè)無線傳感網(wǎng)絡(luò)[1],用以監(jiān)測(cè)冷庫(kù)溫濕度狀況和實(shí)時(shí)報(bào)警.該網(wǎng)絡(luò)由ZigBee 溫度采集節(jié)點(diǎn)、ZigBee 濕度采集節(jié)點(diǎn)、ZigBee 協(xié)調(diào)器節(jié)點(diǎn)和ZigBee 報(bào)警執(zhí)行節(jié)點(diǎn)組成.溫濕度采集節(jié)點(diǎn)負(fù)責(zé)溫濕度數(shù)據(jù)的采集和處理,報(bào)警執(zhí)行節(jié)點(diǎn)完成報(bào)警指示功能,協(xié)調(diào)器節(jié)點(diǎn)一方面負(fù)責(zé)將溫濕度節(jié)點(diǎn)發(fā)送過來的溫濕度數(shù)據(jù)向報(bào)警執(zhí)行節(jié)點(diǎn)的進(jìn)行轉(zhuǎn)發(fā)和接收?qǐng)?bào)警執(zhí)行節(jié)點(diǎn)發(fā)送過來的報(bào)警狀態(tài)數(shù)據(jù)信息,另一方面還將接收到數(shù)據(jù)通過RS232 接口傳送至監(jiān)測(cè)計(jì)算機(jī)進(jìn)行解析處理,并顯示在Window 圖形管理界面中,為用戶提供更快、更直觀地溫濕度數(shù)據(jù)信息和報(bào)警設(shè)備的指示狀態(tài)[2].食品冷庫(kù)環(huán)境監(jiān)測(cè)報(bào)警系統(tǒng)架構(gòu)如圖1 所示.
系統(tǒng)總體可以分為兩部分:監(jiān)測(cè)分析處理部分和報(bào)警指示部分.其主要工作流程如下:
(1)首先由ZigBee 協(xié)調(diào)器節(jié)點(diǎn)建立通信網(wǎng)絡(luò),建立成功后,溫度采集節(jié)點(diǎn)、濕度采集節(jié)點(diǎn)和報(bào)警執(zhí)行節(jié)點(diǎn)分別加入該通信網(wǎng)絡(luò).加入通信網(wǎng)絡(luò)成功之后,所有節(jié)點(diǎn)都可以發(fā)送數(shù)據(jù)到ZigBee 協(xié)調(diào)器節(jié)點(diǎn),也可以接收來自ZigBee 協(xié)調(diào)器節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù)信息[3].
(2)監(jiān)測(cè)分析處理部分所包含的溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)分別帶有溫度傳感器和濕度傳感器,用于循環(huán)采集冷庫(kù)環(huán)境溫濕度參數(shù),然后與事先設(shè)定好的溫濕度上下限進(jìn)行比較.若溫度、濕度值均在合理范圍內(nèi),則向ZigBee 協(xié)調(diào)器節(jié)點(diǎn)發(fā)送溫濕度正常數(shù)據(jù)消息,然后繼續(xù)采集、分析,若發(fā)現(xiàn)溫度值和濕度值中至少一項(xiàng)高于上限或者低于下限值,就向ZigBee 報(bào)警執(zhí)行節(jié)點(diǎn)發(fā)送報(bào)警命令.同時(shí)ZigBee協(xié)調(diào)器節(jié)點(diǎn)還將接收到數(shù)據(jù)通過RS232 接口傳送至監(jiān)測(cè)計(jì)算機(jī)進(jìn)行解析處理,并在Window 圖形管理界面中顯示溫濕度數(shù)據(jù)信息和報(bào)警設(shè)備的指示狀態(tài)信息.
(3)報(bào)警指示部分根據(jù)接收到的命令及時(shí)、準(zhǔn)確的通過四個(gè)可控亮滅的LED 指示燈做出溫度還是濕度超限的操作.最后工作人員或者其它調(diào)控溫濕度的設(shè)備根據(jù)報(bào)警信號(hào),做出正確的調(diào)控溫濕度操作,從而使食品存儲(chǔ)在冷庫(kù)環(huán)境中持續(xù)達(dá)到工業(yè)標(biāo)準(zhǔn),保障食品企業(yè)安全生產(chǎn).
圖1 食品冷庫(kù)環(huán)境監(jiān)測(cè)報(bào)警系統(tǒng)架構(gòu)組成
ZigBee 無線傳感器網(wǎng)絡(luò)的主要設(shè)備有溫度采集節(jié)點(diǎn)、濕度采集節(jié)點(diǎn)、協(xié)調(diào)器節(jié)點(diǎn)和報(bào)警執(zhí)行節(jié)點(diǎn),它們都屬于微型嵌入式系統(tǒng),主要由處理器模塊、無線通信模塊、電源模塊以及相應(yīng)的調(diào)試接口組成.PC 機(jī)通過一個(gè)RS232 接口與協(xié)調(diào)器節(jié)點(diǎn)進(jìn)行串口通信,以便實(shí)時(shí)顯示溫濕度數(shù)據(jù)信息.
協(xié)調(diào)器節(jié)點(diǎn)采用TI 公司的CC2530 作為主處理器.它是一款真正針對(duì)IEEE802.15.4 的ZigBee RF4CE 智能能源應(yīng)用的片上系統(tǒng)解決方案[4].芯片上還結(jié)合了一個(gè)完全集成的高性能射頻收發(fā)器,帶有8051MCU、8KBRAM、256KB 閃存以及其它強(qiáng)勁的支持功能和外設(shè),空中傳輸速率高達(dá)250kbps,特別適合自動(dòng)控制和遠(yuǎn)程控制領(lǐng)域應(yīng)用[5].CC2530 芯片內(nèi)部集成了微處理器和無線通信模塊,它只需少量外圍元器件配合就能實(shí)現(xiàn)信號(hào)的收發(fā)功能,它的外圍電路包括晶振時(shí)鐘電路、無線耦合匹配電路和電源模塊三個(gè)部分.協(xié)調(diào)器節(jié)點(diǎn)硬件結(jié)構(gòu)如圖2 所示.
溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)除了CC2530 芯片內(nèi)部集成了微處理器和無線通信模塊外,其外圍電路包括溫度傳感器/濕度傳感器、晶振時(shí)鐘電路、無線耦合匹配電路和電源模塊四個(gè)部分.
(1)溫度傳感器采用高精度數(shù)字溫度傳感器AD7414 芯片搭載ZigBee 智能傳感器底板,它應(yīng)用專用的數(shù)字模塊采集技術(shù)和溫度傳感技術(shù),確保采集的數(shù)據(jù)具有極高的可靠性和穩(wěn)定性.CC2530 芯片模擬I2C 總線時(shí)序,使用I2C 接口讀取當(dāng)前環(huán)境的溫度測(cè)量值,該芯片具有低功耗、響應(yīng)快、精度高(±0.5℃)、抗干擾能力強(qiáng)等優(yōu)點(diǎn)[6],測(cè)溫范圍為-55℃~-125℃之間.溫度采集節(jié)點(diǎn)硬件結(jié)構(gòu)如圖3所示.
圖3 溫度采集節(jié)點(diǎn)硬件結(jié)構(gòu)
(2)濕度傳感器采用高精度數(shù)字溫度傳感器DHT11 芯片搭載ZigBee 智能傳感器底板,DHT11 是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的濕度傳感器,濕度量程范圍為20%RH-90%RH,CC2530 芯片I/O 模擬單線雙向串行接口時(shí)序,使用單線雙向串行接口,讀取當(dāng)前環(huán)境下濕度傳感器DHT11 的測(cè)量值[7].濕度采集節(jié)點(diǎn)硬件結(jié)構(gòu)如圖4 所示.
圖4 濕度采集節(jié)點(diǎn)硬件結(jié)構(gòu)
報(bào)警執(zhí)行節(jié)點(diǎn)模塊包括ZigBee 執(zhí)行節(jié)點(diǎn)和控制模組,控制模組主要有4 個(gè)5V 繼電器,兩個(gè)雙層USB 口及控制電路三部分組成[].它主要實(shí)現(xiàn)對(duì)開關(guān)量的控制及對(duì)USB 接口供電的電器設(shè)備控制.Zig-Bee 執(zhí)行節(jié)點(diǎn)接收來自ZigBee 協(xié)調(diào)器節(jié)點(diǎn)發(fā)送的指令,然后控制這4 個(gè)繼電器的各個(gè)端口的通斷,以實(shí)現(xiàn)溫濕度LED 指示燈的開和關(guān)操作.報(bào)警執(zhí)行節(jié)點(diǎn)模塊工作方式如圖5 所示.
圖5 報(bào)警執(zhí)行節(jié)點(diǎn)模塊工作圖
系統(tǒng)軟件實(shí)現(xiàn)包括四個(gè)部分:溫度采集節(jié)點(diǎn)、濕度采集節(jié)點(diǎn)、協(xié)調(diào)器節(jié)點(diǎn)以及報(bào)警執(zhí)行節(jié)點(diǎn).
圖6 溫濕度采集節(jié)點(diǎn)程序設(shè)計(jì)流程圖
溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)分別帶有溫度傳感器和濕度傳感器,各自進(jìn)行周期性循環(huán)采集溫濕度參數(shù),然后將采集的結(jié)果和設(shè)定好的上下限進(jìn)行比較.根據(jù)比較的結(jié)果,發(fā)送兩個(gè)字節(jié)的命令數(shù)據(jù)到協(xié)調(diào)器節(jié)點(diǎn).第一個(gè)字節(jié)屬于節(jié)點(diǎn)編號(hào)值,代表該數(shù)據(jù)是由溫度采集節(jié)點(diǎn)、濕度采集節(jié)點(diǎn)或是報(bào)警執(zhí)行節(jié)點(diǎn)發(fā)送的,第二個(gè)字節(jié)是“溫濕度報(bào)警信息”,即代表本次測(cè)量的溫度或者濕度值是正常值、高于上限值還是低于下限值.如果高于上限值則為“2”,如果低于下限值則為“1”,否則為“0”,表示正常.由于溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)的程序設(shè)計(jì)流程基本一樣,為了簡(jiǎn)化程序設(shè)計(jì)流程,以下將溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)經(jīng)過整合形成如圖6 所示的溫濕度采集節(jié)點(diǎn)程序設(shè)計(jì)流程.
當(dāng)協(xié)調(diào)器節(jié)點(diǎn)接收無線數(shù)據(jù),根據(jù)接收到的第一個(gè)字節(jié)編號(hào)判斷是哪個(gè)節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù),如果是報(bào)警執(zhí)行節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù),則將它的地址保存下來,用于向報(bào)警執(zhí)行節(jié)點(diǎn)發(fā)送數(shù)據(jù).如果是溫濕度節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù),則轉(zhuǎn)發(fā)到報(bào)警執(zhí)行節(jié)點(diǎn).協(xié)調(diào)器節(jié)點(diǎn)程序設(shè)計(jì)流程如圖7 所示.
圖7 協(xié)調(diào)器節(jié)點(diǎn)程序流程圖
報(bào)警執(zhí)行節(jié)點(diǎn)上有四個(gè)可控亮滅的LED 指示燈,它接收協(xié)調(diào)器節(jié)點(diǎn)的報(bào)警指示命令,根據(jù)接收到的命令數(shù)據(jù)的第一個(gè)字節(jié)判斷是溫度指示還是濕度指示,根據(jù)第二個(gè)字節(jié)判斷是正常、超過上限還是低于下限.當(dāng)?shù)谝粋€(gè)字節(jié)為溫度編號(hào)值時(shí),第二個(gè)字節(jié)是“0”,表示溫度正常,完成兩個(gè)溫度報(bào)警LED 指示燈都滅的操作.第二個(gè)字節(jié)是“1”,表示溫度低于下限值,完成點(diǎn)亮溫度下限報(bào)警LED 指示燈操作.第二個(gè)字節(jié)是“2”,表示溫度高于上限值,完成點(diǎn)亮溫度上限報(bào)警LED 指示燈操作.當(dāng)?shù)谝粋€(gè)字節(jié)為濕度編號(hào)值時(shí),第二個(gè)字節(jié)是“0”,表示濕度正常,完成兩個(gè)濕度報(bào)警LED 指示燈都滅的操作.第二個(gè)字節(jié)是“1”,表示濕度低于下限值,完成點(diǎn)亮濕度下限報(bào)警LED 指示燈操作.第二個(gè)字節(jié)是“2”,表示濕度高于上限,完成點(diǎn)亮濕度上限報(bào)警LED 指示燈操作,報(bào)警執(zhí)行節(jié)點(diǎn)程序設(shè)計(jì)流程如圖8 所示.
圖8 報(bào)警執(zhí)行節(jié)點(diǎn)程序流程圖
為了驗(yàn)證環(huán)境監(jiān)測(cè)報(bào)警系統(tǒng)能夠正常可靠工作,首先通過RS232 串口線纜連接監(jiān)測(cè)計(jì)算機(jī)串口和ZigBee 協(xié)調(diào)器,然后系統(tǒng)上電啟動(dòng),協(xié)調(diào)器節(jié)點(diǎn)的通信指示燈會(huì)先閃爍3 次,表示建立通信網(wǎng)絡(luò)成功,這時(shí)將會(huì)看到溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)的通信指示燈會(huì)先閃爍三次,報(bào)警執(zhí)行節(jié)點(diǎn)的通信指示燈也會(huì)閃爍三次,表示ZigBee 無線通信網(wǎng)絡(luò)組網(wǎng)成功.這時(shí)通過串口調(diào)試助手工具顯示出所處環(huán)境的“溫度下限”和“濕度下限”值,如圖9 所示.表明當(dāng)前測(cè)量的溫度值和濕度值都低于設(shè)定的下限值,報(bào)警執(zhí)行節(jié)點(diǎn)上的溫度下限LED 指示燈和濕度下限LED 指示燈都會(huì)點(diǎn)亮.這說明溫度采集節(jié)點(diǎn)和濕度采集節(jié)點(diǎn)及報(bào)警執(zhí)行節(jié)點(diǎn)的監(jiān)測(cè)和報(bào)警的數(shù)據(jù)較為精準(zhǔn),可以正常工作.
圖9 溫濕度信息顯示
文中基于ZigBee 無線通信技術(shù),提出一個(gè)基于無線傳輸?shù)氖称防鋷?kù)環(huán)境監(jiān)測(cè)報(bào)警系統(tǒng)解決方案,該系統(tǒng)有效地解決了傳統(tǒng)食品冷庫(kù)監(jiān)測(cè)和報(bào)警系統(tǒng)中連線繁多、故障率高、可擴(kuò)展性差等問題,具有通信可靠、投資少、利于擴(kuò)展等優(yōu)點(diǎn),使食品行業(yè)安全生產(chǎn)存儲(chǔ)得到有效保障.如果更換采集節(jié)點(diǎn)的傳感器和執(zhí)行節(jié)點(diǎn)控制設(shè)備,則該系統(tǒng)可廣泛應(yīng)用于糧食及藥品行業(yè)的監(jiān)測(cè)及控制.
[1]李文仲,段朝玉.ZigBee2007/Pro 協(xié)議棧實(shí)驗(yàn)與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2009.
[2]李曉維,徐勇軍,任豐原.無線傳感器網(wǎng)絡(luò)技術(shù)[M].北京:北京理工大學(xué)出版社,2007.
[3]張少軍.無線傳感器網(wǎng)絡(luò)技術(shù)及應(yīng)用[M].北京:中國(guó)電力出版社,2010.
[4]李靜梅,楊鵬飛,關(guān)海洋.基于ZigBee 技術(shù)的體溫采集系統(tǒng)的設(shè)計(jì)[J].應(yīng)用科技,2010,37(12):43-47.
[5]杜治國(guó),鄧囊,吳少正.Zigbee 無線報(bào)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)人民公安大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,16(2):83-85.
[6]周嶺松,余春暄.基于ZigBee 技術(shù)的溫濕度控制系統(tǒng)[J].電子測(cè)量技術(shù),2011,34(6):47-50.
[7]潘偉.基于ZigBee 技術(shù)的無線傳感網(wǎng)絡(luò)研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(9):244-247.
[8]郭濤,嚴(yán)家明.基于CC2430 的ZjgBee 無線數(shù)傳模塊設(shè)計(jì)[J].微機(jī)處理,20l0(4):105-108.