馮旭,李志剛*
(石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院,新疆 石河子 832003)
近年來,隨著我國城鄉(xiāng)居民生活水平的提高,人們的消費觀念及膳食結(jié)構(gòu)已發(fā)生改變,羊肉因其具有高蛋白、低脂肪、低膽固醇、營養(yǎng)豐富、易消化等優(yōu)點而備受青睞[1-2],但羊肉在運輸過程中易發(fā)生腐敗變質(zhì)等質(zhì)量安全問題。羊肉的質(zhì)量安全取決于其整個供應(yīng)鏈,即羊肉在生產(chǎn)、貯藏、運輸、銷售等各個環(huán)節(jié)中始終處于規(guī)定的低溫環(huán)境[3]。如何對羊肉冷鏈運輸過程中溫度進行監(jiān)控是目前的一個難點,因此,研究和設(shè)計羊肉冷鏈溫度監(jiān)測系統(tǒng),對保障羊肉的質(zhì)量安全具有重要意義。
ZigBee技術(shù)是無線傳感網(wǎng)(wirelesssensor network,WSN)的核心技術(shù)之一[4],它結(jié)合了通信技術(shù)、計算機網(wǎng)絡(luò)技術(shù)、傳感器技術(shù)和嵌入式技術(shù)等多種先進技術(shù),具有低復(fù)雜、低數(shù)據(jù)速率、低成本、低功耗等優(yōu)點[5],其節(jié)點體積小,能夠自動完成組網(wǎng),在鋼鐵行業(yè)、煤礦行業(yè)甚至是智能家居等方面有著廣泛的應(yīng)用,在冷鏈物流中也有廣泛應(yīng)用。2006年德國學(xué)者Reiner Jedermann[6]等使用MSP430控制芯片和CC2420無心芯片設(shè)計針對冷鏈配送系統(tǒng)的ZigBee監(jiān)測系統(tǒng),解決了第1代產(chǎn)品不具有實時監(jiān)控功能的問題。2008年、2009年西班牙學(xué)者Luis Ruiz-Garcia[7-8]等對應(yīng)用于水果冷鏈運輸車的無線傳感器網(wǎng)絡(luò)監(jiān)測設(shè)備進行了探索性的研究。邵赫靈[9]等以冷鏈物流為研究對象,基于ZigBee無線傳感網(wǎng)絡(luò)和GPS定位技術(shù),設(shè)計了冷鏈運輸車的遠程監(jiān)控系統(tǒng),此系統(tǒng)可以對整個物流運輸過程實施數(shù)據(jù)的動態(tài)采集、傳輸和報警,從而實現(xiàn)管理者對車輛的有效控制和調(diào)度。劉亮[10]等通過對冷鏈監(jiān)測系統(tǒng)的國內(nèi)外研究現(xiàn)狀進行對比和分析,提出了基于ZigBee和GPRS的冷鏈監(jiān)測系統(tǒng)方案,該系統(tǒng)主要由采集節(jié)點和主控節(jié)點構(gòu)成,通過各個采集節(jié)點來獲取被監(jiān)測對象的溫度等數(shù)據(jù),利用ZigBee方式將數(shù)據(jù)都匯集到主控節(jié)點,主控節(jié)點將數(shù)據(jù)存儲到本地的SD卡中以作備份,同時通過GPRS網(wǎng)絡(luò)把收集到的溫度等數(shù)據(jù)傳遞到遠程監(jiān)控中心。這些學(xué)者對ZigBee在冷鏈物流中應(yīng)用的研究為本文羊肉冷鏈溫度監(jiān)測系統(tǒng)的設(shè)計提供了理論依據(jù)。
本文針對羊肉冷鏈運輸過程中溫度數(shù)據(jù)的實時監(jiān)測的難點,設(shè)計了基于ZigBee的無線傳感網(wǎng)絡(luò)溫度監(jiān)測系統(tǒng),實現(xiàn)了車廂內(nèi)溫度的實時采集與監(jiān)測,保障了羊肉運輸過程中的質(zhì)量安全。
羊肉冷鏈溫度監(jiān)測系統(tǒng)主要以ZigBee無線傳感網(wǎng)絡(luò)為主,該系統(tǒng)主要由多個終端節(jié)點、一個協(xié)調(diào)節(jié)點、GPRS遠程傳輸模塊和上位機組成,如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)圖Fig.1 Overall structure diagram of the system
羊肉冷鏈溫度監(jiān)測系統(tǒng)的主要運行流程如下:終端節(jié)點采集數(shù)據(jù)并將采集的數(shù)據(jù)通過ZigBee無線傳感網(wǎng)絡(luò)傳輸至協(xié)調(diào)節(jié)點,協(xié)調(diào)節(jié)點將接收的數(shù)據(jù)通過通過串口發(fā)送至GPRS模塊。GPRS是一種遠距傳輸技術(shù),通過GPRS模塊可以將采集的溫度數(shù)據(jù)實時地傳輸至上位機,實現(xiàn)對羊肉冷鏈運輸過程中溫度的實時監(jiān)測。
在羊肉冷鏈運輸過程中,溫度是影響其質(zhì)量安全的一個最重要的因素,因此,在進行羊肉冷鏈溫度監(jiān)測系統(tǒng)硬件設(shè)計時首先需要對羊肉在冷鏈運輸過程中的特性進行研究與分析,然后再根據(jù)羊肉的特性對系統(tǒng)的硬件進行設(shè)計。
羊肉在冷鏈物流中主要以冷鮮肉和冷凍肉兩種貯藏方式進行運輸。冷鮮肉和冷凍肉都有各自的優(yōu)缺點,選擇何種貯藏方式對系統(tǒng)有很大的影響。
冷鮮肉是指將畜禽按國家檢疫相關(guān)制度和規(guī)范進行屠宰[11],并將屠宰后胴體迅速冷卻處理[12],使胴體的溫度降至0-4℃,在后續(xù)的加工、運輸和銷售過程中使肉的溫度始終保持在0-4℃范圍內(nèi)[13]。由于冷鮮肉在整個冷鏈過程中始終處于0-4℃之間,使得冷鮮肉具有鮮嫩多汁、富有彈性、味道鮮美等特點,且保留了絕大部分能夠被人體吸收的營養(yǎng)成分,因而深受廣大消費者的喜愛。
冷凍肉是指將肉處于-28℃以下的低溫環(huán)境下,使其中心溫度達到-18℃左右,并在此條件下凍結(jié)貯藏。由于大多數(shù)微生物在-18℃的低溫條件下生長繁殖都受到了極大的抑制,因此冷凍肉的貯藏期很長。但是,肉在-18℃的低溫條件下貯藏的同時細胞內(nèi)的水分也會形成冰晶,大量冰晶的形成,破壞了細胞的組織結(jié)構(gòu),造成肉中的蛋白質(zhì)變性、脂肪氧化等問題,使肉的質(zhì)量下降。在冷凍肉解凍時,冰晶的融化也導(dǎo)致了肉中汁液的析出,使得肉的口感、顏色的等品質(zhì)下降。
表1為冷鮮肉和冷凍肉的優(yōu)缺點比較。
表1 冷鮮肉與冷凍肉的優(yōu)缺點比較Tab.1 The advantages and disadvantages of cold meat and frozen meat
從表1可知:雖然冷凍肉貯藏期較長,但肉的品質(zhì)相對于冷鮮肉有較大的下降,并且由于冷凍溫度低,使得冷鏈運輸過程中溫度控制難度大,也造成了流通成本的上升。相比之下,冷鮮肉在冷鏈運輸過程中溫度始終處于0-4℃,溫度的控制難度大大地降低,并且肉的品質(zhì)能夠較好地保存。因此,冷鮮肉被認為是質(zhì)量最好、品質(zhì)最優(yōu)的一種產(chǎn)品形式[14],本文將采用冷鮮羊肉為研究對象。
ZigBee無線傳感網(wǎng)絡(luò)是羊肉冷鏈溫度監(jiān)測系統(tǒng)中的核心,在對系統(tǒng)的硬件進行設(shè)計時,首先需要對ZigBee無線傳感網(wǎng)絡(luò)的組網(wǎng)形式進行分析與設(shè)計。
ZigBee無線傳感網(wǎng)絡(luò)的拓撲形式主要有星型結(jié)構(gòu)、樹型結(jié)構(gòu)、網(wǎng)狀型結(jié)構(gòu) 3種[3],3種拓撲形式如圖2所示。
星型網(wǎng)絡(luò)是由一個協(xié)調(diào)點和一個或多個終端節(jié)點組成的網(wǎng)絡(luò),在這種網(wǎng)絡(luò)中終端節(jié)點只能和協(xié)調(diào)器節(jié)點進行數(shù)據(jù)傳輸,而協(xié)調(diào)器節(jié)點則主要負責(zé)選擇一個信道和一個網(wǎng)絡(luò)PAN ID,然后啟動整個網(wǎng)絡(luò)。由于這種拓撲結(jié)構(gòu)簡單,因此,常用于節(jié)點數(shù)量較少的區(qū)域。
樹型拓撲結(jié)構(gòu)由一個協(xié)調(diào)器節(jié)點、多個路由器節(jié)點和多個終端節(jié)點組成,子節(jié)點的路由器也可以再連接下級的路由器節(jié)點和終端節(jié)點,此達到了成千上萬級。這種網(wǎng)絡(luò)在保持星型拓撲網(wǎng)絡(luò)簡單性的同時,還能實現(xiàn)較大范圍的網(wǎng)絡(luò)覆蓋,比較適合較大的應(yīng)用場合。
網(wǎng)狀拓撲網(wǎng)絡(luò)是一種自由拓撲網(wǎng)絡(luò),也是由一個協(xié)調(diào)器節(jié)點、多個路由器節(jié)點和多個終端節(jié)點組成,在網(wǎng)狀拓撲網(wǎng)絡(luò)中協(xié)調(diào)節(jié)點和路由節(jié)點都可以與網(wǎng)絡(luò)范圍內(nèi)的其它節(jié)點通信,與樹型結(jié)構(gòu)相比,有相當(dāng)高的環(huán)境適應(yīng)能力。
樹型拓撲結(jié)構(gòu)或網(wǎng)狀拓撲結(jié)構(gòu)適用于較大的應(yīng)用場合,并且結(jié)構(gòu)復(fù)雜,不適用監(jiān)測區(qū)域較小的冷藏車。因此,文本采用星型拓撲結(jié)構(gòu)作為ZigBee的組網(wǎng)形式。
圖2 3種網(wǎng)絡(luò)拓撲星型結(jié)構(gòu)(a)、型結(jié)構(gòu)(b)和網(wǎng)狀型結(jié)構(gòu)(c)示意圖Fig.2 There network topology diagrams
羊肉冷鏈溫度監(jiān)測系統(tǒng)主要分為終端采集部分和協(xié)調(diào)節(jié)點部分,下面將對系統(tǒng)的終端采集部分和協(xié)調(diào)節(jié)點部分的硬件設(shè)計進行詳細介紹。
(1)終端采集部分的主要任務(wù)是對冷藏車的溫度進行采集,并將采集的溫度數(shù)據(jù)通過ZigBee無線傳感網(wǎng)絡(luò)傳輸至協(xié)調(diào)節(jié)點。在終端采集部分硬件設(shè)計時首先對終端采集部分整體結(jié)構(gòu)圖進行設(shè)計,然后根據(jù)終端采集部分的主要任務(wù)和羊肉在冷鏈運輸中的特性要求選擇合適的ZigBee芯片和溫度傳感器,最后對終端采集部分的硬件進行設(shè)計。
圖3 終端采集部分整體結(jié)構(gòu)圖Flag.3 Overall structure diagram of terminal acquisition part
從圖3可以看出:終端采集部分主要由溫度傳感器、ZigBee開發(fā)板構(gòu)成,而微控制器、無線收發(fā)模塊、天線及電池則是ZigBee開發(fā)板的主要組成部分。
ZigBee開發(fā)板有多種型號,本文選用CC2530型號的開發(fā)板。選用CC2530開發(fā)板的原因除了其具有功耗低、性能高、價格便宜等優(yōu)點外,還因為CC2530開發(fā)板擁有256Kb的閃存容量,不至于發(fā)生因為數(shù)據(jù)過大而無法存儲的問題。
DS18B20溫度傳感器是一種獨特的傳感器,它僅需要一個端口引腳就可以進行通訊,其測溫范圍為 -55℃-+125℃,精度為 0.0625℃[15],完全滿足羊肉冷鏈溫度監(jiān)測系統(tǒng)要求的0-4℃溫度范圍。DS18B20溫度傳感器有2種供電方式,一種是外部供電(圖4),另一種是寄生供電(圖5)。本文采用寄生供電。
圖4 外接方式Flag.4 External way
圖5 寄生方式Flag.5 Parasitic way
終端采集部分硬件設(shè)計主要是CC2530開發(fā)板與DS18B20的電路設(shè)計,設(shè)計過程為DS18B20溫度傳感器的DQ引腳與CC2530開發(fā)板的GPIO相連,DS18B20的GND則與CC2530開發(fā)板的GND共地,DS18B20的VDD與CC2530開發(fā)板穩(wěn)壓電源相連接。
(2)協(xié)調(diào)節(jié)點部分的主要任務(wù)是收發(fā)數(shù)據(jù)及向終端節(jié)點發(fā)送命令,根據(jù)這一主要任務(wù)設(shè)計的協(xié)調(diào)節(jié)點部分的整體結(jié)構(gòu)圖如圖6所示。
圖6 協(xié)調(diào)節(jié)點部分整體結(jié)構(gòu)圖Flg.6 Overall structure diagram of coordinate node
從圖6可以看出:協(xié)調(diào)節(jié)點部分的硬件組成部分主要由 CC2530開發(fā)板、GPRS模塊、LCD顯示屏組成。GPRS模塊選用的是SIMCOM公司設(shè)計開發(fā)的通訊模塊SIM800A,SIM800A模塊與協(xié)調(diào)節(jié)點微控制器進行數(shù)據(jù)傳輸時,只需將模塊提供的數(shù)據(jù)發(fā)送(TXD)和接收(RXD)與控制器UART1單元P04和P05引腳相聯(lián),其中 P04為發(fā)送(TXD),P05為接收(RXD)。
監(jiān)測系統(tǒng)軟件設(shè)計主要分為終端節(jié)點軟件設(shè)計和協(xié)調(diào)節(jié)點軟件設(shè)計,這兩部分都是基于Z-Stack2007[16]協(xié)議棧設(shè)計開發(fā)的,主要實現(xiàn)協(xié)調(diào)節(jié)點與GPRS模塊、協(xié)調(diào)節(jié)點與終端節(jié)點之間相互通信及DS18B20溫度傳感器的數(shù)據(jù)采集功能。
基于Z-Stack2007協(xié)議棧開發(fā)的終端節(jié)點和協(xié)調(diào)節(jié)點程序工作流程如圖7所示。其中:
(1)終端節(jié)點軟件設(shè)計只需在Z-Stack2007協(xié)議棧的應(yīng)用層定義溫度采集任務(wù),當(dāng)有任務(wù)時就調(diào)用相應(yīng)的處理函數(shù);無任務(wù)時就進入休眠狀態(tài)。
(2)協(xié)調(diào)節(jié)點軟件設(shè)計中協(xié)調(diào)節(jié)點是整個無線傳感網(wǎng)絡(luò)的核心,具有重要的組網(wǎng)和協(xié)同功能[16]。首先協(xié)調(diào)節(jié)點先對串口等硬件初始化,再在應(yīng)用層發(fā)出組建網(wǎng)絡(luò),網(wǎng)絡(luò)組建完成后為加入網(wǎng)絡(luò)的終端節(jié)點分配地址并允許節(jié)點加入網(wǎng)絡(luò)。
圖7 終端節(jié)點與協(xié)調(diào)節(jié)點工作流程Fig.7 Terminal node and coordination node workflow
終端采集節(jié)點部分主要負責(zé)溫度數(shù)據(jù)的采集及傳送,溫度數(shù)據(jù)是使用DS18B20傳感器來進行采集。由于DS18B20溫度傳感器對讀寫數(shù)據(jù)位的時序非常敏感,因此,在使用時需對DS18B20溫度傳感器進行復(fù)位和拉高總線操作。
⑴復(fù)位:即CC2530開發(fā)板給DS18B20溫度傳感器單總線的低電平至少持續(xù)480 μs。
⑵拉高單總線:只有拉高總線才可以保證CC2530開發(fā)板與DS18B20溫度傳感器正常通信。
終端采集節(jié)點功能的實現(xiàn)主要在于數(shù)據(jù)采集函數(shù)編寫,本系統(tǒng)設(shè)定數(shù)據(jù)采集函數(shù)名為Sample App_Send_P2P_Message,函數(shù)中有一個重點變量deviceID,這個變量表示終端的編號,不同的變量此編號要求不一致,在這里取值要取值0-9。
終端采集節(jié)點傳感器通信程序和數(shù)據(jù)采集程序只需在Z-Stack2007協(xié)議棧的應(yīng)用層進行開發(fā)。在應(yīng)用層定義了溫度采集任務(wù),當(dāng)有任務(wù)就緒時,調(diào)用相應(yīng)的處理函數(shù);無任務(wù)時,系統(tǒng)進入休眠狀態(tài)。終端采集節(jié)點工作流程如圖8所示。
圖8 終端節(jié)點工作流程圖Flag.8 Terminal node working flow chart
協(xié)調(diào)器節(jié)點主要負責(zé)ZigBee網(wǎng)絡(luò)的組建、數(shù)據(jù)接收。協(xié)調(diào)器節(jié)點開始運行后與終端節(jié)點一樣,先進行初始化,包括初始化寄存器、堆棧、系統(tǒng)時鐘等,然后通過修改Z-Stack2007協(xié)議棧的相關(guān)層來實現(xiàn)網(wǎng)絡(luò)的組建。
具體過程為:首先在APP層發(fā)起網(wǎng)絡(luò)組建的請求,NWK層收到請求后向MAC層發(fā)送信道掃描命令,MAC層掃描信道后將可用信道發(fā)送給NWK層;然后根據(jù)信道掃描結(jié)果,確定協(xié)調(diào)器節(jié)點PANID、為其分配地址,并設(shè)置MAC層的相關(guān)參數(shù);最后啟動已組建的網(wǎng)絡(luò)。
ZigBee網(wǎng)絡(luò)建立之后,協(xié)調(diào)節(jié)點就可以接收終端節(jié)點或是路由節(jié)點傳送來的數(shù)據(jù)。協(xié)調(diào)節(jié)點工作流程如圖9所示。
圖9 協(xié)調(diào)器節(jié)點流程圖Flag.9 coordinator node working flow chart
由于實驗條件限制,本文無法模擬0-4℃的低溫環(huán)境,但是參考了文獻[17]研究結(jié)果可知本文設(shè)計的羊肉冷鏈溫度監(jiān)測系統(tǒng)在0-4℃的低溫環(huán)境下是適用的。
為了驗證監(jiān)測系統(tǒng)的測量精度和數(shù)據(jù)傳輸性能,本文在室內(nèi)常溫條件下模擬了冷藏車溫度數(shù)據(jù)的采集,并進行了分析。
在模擬環(huán)境中布置了6個傳感節(jié)點,進行10次的溫度數(shù)據(jù)采集測試,測試結(jié)果如表2所示。從表2可以看出:在系統(tǒng)穩(wěn)定工作的情況下各個節(jié)點測得數(shù)據(jù)溫差不超過±1℃;節(jié)點6測得的溫度數(shù)據(jù)與其他5個節(jié)點的溫度數(shù)據(jù)有一定的溫差,這主要是節(jié)點6放置于門口通風(fēng)處導(dǎo)致。
圖10為各個節(jié)點的溫度曲線圖,從圖7可以看出各個節(jié)點能夠平穩(wěn)的采集溫度數(shù)據(jù),沒有較大的波動。實驗表明各個節(jié)點可以較為準確、穩(wěn)定地采集溫度數(shù)據(jù)。
表2 溫度采集數(shù)據(jù)Tab.2 Temperature collection data
圖10 溫度曲線Flag.10 Temperature curve
數(shù)據(jù)傳輸性能測試主要測試各采集節(jié)點與協(xié)調(diào)節(jié)點的通信可靠性。設(shè)定終端節(jié)點向協(xié)調(diào)節(jié)點發(fā)送數(shù)據(jù)次數(shù)100,測試結(jié)果如表3所示。由表3可知:所有的數(shù)據(jù)采集節(jié)點與協(xié)調(diào)節(jié)點之間的通信成功率均為100%,驗證了系統(tǒng)通信協(xié)議的可靠性。
表3 數(shù)據(jù)傳輸準確性測試結(jié)果Tab.3 Data transmission accuracy test results
(1)本文設(shè)計了基于ZigBee的羊肉冷鏈溫度監(jiān)測系統(tǒng),并以冷藏車為對象對基于ZigBee無線傳感網(wǎng)絡(luò)監(jiān)測系統(tǒng)的硬件設(shè)計和軟件設(shè)計進行說明。
(2)通過參考和分析相關(guān)文獻可知基于 ZigBee無線傳感網(wǎng)絡(luò)設(shè)計的羊肉冷鏈溫度監(jiān)測系統(tǒng)在0-4℃低溫環(huán)境下是適用的。
(3)通過對模擬的實驗環(huán)境溫度進行實時監(jiān)測,結(jié)果表明該監(jiān)測系統(tǒng)采集的溫度數(shù)據(jù)誤差不超過±1℃,并且所有的數(shù)據(jù)采集節(jié)點與協(xié)調(diào)節(jié)點之間的通信成功率均為100%。