劉永禮 侯慶豐
(1. 新疆輕工職業(yè)技術(shù)學(xué)院,新疆 烏魯木齊 830021;2. 甘肅農(nóng)業(yè)大學(xué),甘肅 蘭州 730070)
實(shí)時的供應(yīng)鏈管理技術(shù)對保障生鮮食品的安全和質(zhì)量至關(guān)重要。例如,生鮮食品運(yùn)輸過程中的溫度調(diào)控不當(dāng)可能會導(dǎo)致質(zhì)量下降,據(jù)估計[1-2],每年因此造成的產(chǎn)品損失高達(dá)35%。此外,卡車的振動也會對水果和蔬菜造成損傷[3]。因此,生鮮食品供應(yīng)鏈環(huán)境參數(shù)監(jiān)測具有重要的經(jīng)濟(jì)價值,運(yùn)輸及儲存條件是影響生鮮食品安全和質(zhì)量的重要因素。
在傳統(tǒng)的冷鏈管理系統(tǒng)中,在車輛和倉庫中安裝了溫度計和濕度傳感器。這種方法有一些明顯的缺點(diǎn),如:只能在本地顯示和記錄環(huán)境信息,不能與遠(yuǎn)程用戶共享實(shí)時數(shù)據(jù);只能監(jiān)控倉庫或車輛內(nèi)的宏觀環(huán)境,不能監(jiān)控每種食品包裝盒內(nèi)的微觀環(huán)境;不能記錄卡車裝載、車輛切換時的環(huán)境狀況。因此,這些系統(tǒng)不能實(shí)時、連續(xù)地提供生鮮食品的環(huán)境信息[4-8]。
無線傳感器網(wǎng)絡(luò)(WSN)是一種新的生鮮食品供應(yīng)鏈管理技術(shù)[9],可以提供關(guān)于生鮮食品的實(shí)時環(huán)境信息,具有良好的性能和低廉的成本;傳感器節(jié)點(diǎn)也可以安裝在生鮮食品包裝盒中,并貫穿整個供應(yīng)鏈?;诮陙砦㈦娮蛹夹g(shù)的不斷進(jìn)步[10],無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的成本和功耗在過去幾年中有了顯著下降。通過適當(dāng)?shù)呐渲?,WSN節(jié)點(diǎn)可以檢測與食品安全和質(zhì)量有關(guān)的各種環(huán)境參數(shù),如溫度、濕度、二惡英、乙烯、振動等[11-13]。WSN已被廣泛應(yīng)用于各種領(lǐng)域的監(jiān)測系統(tǒng),如精確農(nóng)業(yè)、遠(yuǎn)程醫(yī)療和動物行為檢測[14-15]。冷鏈管理是無線傳感器網(wǎng)絡(luò)的一個重要應(yīng)用領(lǐng)域。前人對無線傳感器網(wǎng)絡(luò)的數(shù)據(jù)通信進(jìn)行了研究和試驗(yàn)[16],采用智能分析系統(tǒng)幫助決策。然而,由于以下原因,以往的大部分工作不能直接用于生鮮食品供應(yīng)鏈管理:① 以往的大部分工作只收集典型的環(huán)境參數(shù),如溫度和濕度。然而,其他環(huán)境參數(shù),如生鮮食品在運(yùn)輸過程中的運(yùn)動狀態(tài),也會影響質(zhì)量。一個典型的例子是嚴(yán)重的振動和意外的墜落會對水果和蔬菜造成機(jī)械損傷[17]。② 改善非連接狀態(tài)終端設(shè)備的電源管理,當(dāng)終端設(shè)備超出任何路由器或協(xié)調(diào)器的工作范圍,或路由器和協(xié)調(diào)器偶爾斷電時,終端設(shè)備將處于非連接狀態(tài)[5,14,18]。在生鮮食品供應(yīng)鏈中,協(xié)調(diào)器和路由器通常安裝在倉庫或車輛中,由有源電源供電,而終端設(shè)備則安裝在箱子或容器上。當(dāng)將生鮮食品從倉庫裝載到車輛并將其從車輛卸載到倉庫時,終端設(shè)備將離開原始的WSN網(wǎng)絡(luò),并在加入新的WSN網(wǎng)絡(luò)之前處于未連接狀態(tài)[19]。如果沒有適當(dāng)?shù)木W(wǎng)絡(luò)交換方案,終端設(shè)備處于非連接狀態(tài)時可能會產(chǎn)生相當(dāng)大的能耗[20-21]。
為實(shí)現(xiàn)可重構(gòu)、低數(shù)據(jù)率、低成本、低功耗的WSN節(jié)點(diǎn),研究擬開發(fā)一套生鮮食品供應(yīng)鏈管理實(shí)時監(jiān)控系統(tǒng)。
該系統(tǒng)可分為3個部分:安裝在車輛或倉庫中的無線傳感器網(wǎng)絡(luò)(WSN)、互聯(lián)網(wǎng)或移動網(wǎng)絡(luò)的廣域網(wǎng)(WAN)以及遠(yuǎn)程端的用戶。無線傳感器網(wǎng)絡(luò)定期收集和傳輸溫度、相對濕度、二氧化碳濃度和GPS定位數(shù)據(jù)。同時,傳感器檢測食品包裝內(nèi)的運(yùn)動狀態(tài),包括非法開啟、異常振動、過度傾斜和意外墜落,并以事件驅(qū)動模式傳輸。廣域網(wǎng)作為一種中介,可以被廣泛訪問,考慮到不同的工作環(huán)境,GPRS和WiFi端口都集成在網(wǎng)關(guān)上[22]。供應(yīng)商或零售商可以從廣域網(wǎng)獲取感知到的數(shù)據(jù)和警報,做出適當(dāng)?shù)臎Q策來處理不同的問題,并進(jìn)一步優(yōu)化供應(yīng)鏈管理。
系統(tǒng)中的無線傳感器網(wǎng)絡(luò)拓?fù)浒ㄐ切屯負(fù)浜蜆湫屯負(fù)洌梢愿鶕?jù)應(yīng)用場景進(jìn)行選擇。在星形拓?fù)渲校幸粋€協(xié)調(diào)器和多個終端設(shè)備[23]。在樹拓?fù)浣Y(jié)構(gòu)中,有一個協(xié)調(diào)器、多個路由器和多個終端設(shè)備。協(xié)調(diào)器是網(wǎng)絡(luò)的啟動者和管理者,負(fù)責(zé)控制終端設(shè)備的加入/退出;還作為WSN和WAN之間的網(wǎng)關(guān)。路由器建立多跳通信結(jié)構(gòu),同時監(jiān)控環(huán)境參數(shù)。它們將數(shù)據(jù)中繼和聚合作為集群的頭部。末端裝置與不同類型的傳感器集成,以收集和傳輸環(huán)境信息和異常運(yùn)動狀態(tài)[24]。
系統(tǒng)獲得的信息可分為4類:環(huán)境條件、運(yùn)動狀態(tài)、位置和網(wǎng)絡(luò)狀態(tài)[25]。監(jiān)測對象、獲取信息和相應(yīng)傳感器的詳細(xì)信息見表1。
(1) 環(huán)境條件:環(huán)境條件包括溫度、濕度和一氧化碳濃度,溫度是影響貨架期的最重要參數(shù)。相對濕度與食物的水分?jǐn)U散有關(guān)。二氧化碳反映了代謝活動的速度。定期獲得所有環(huán)境條件。
(2) 運(yùn)動狀態(tài):運(yùn)動狀態(tài)包括異常振動、意外墜落、過度傾斜和容器非法打開。收集這些信息是為了評估生鮮食品在運(yùn)輸過程中的物理損傷。
(3) 位置:使用商用GPS模塊檢測車輛位置。
表1 獲取信息和傳感器的詳細(xì)信息Table 1 Obtained information and details of sensors
(4) 網(wǎng)絡(luò)狀態(tài):網(wǎng)絡(luò)狀態(tài)包括終端設(shè)備電壓和無線傳感器網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。使用微處理器上的ADC測量電壓。從接收到的數(shù)據(jù)中的路由信息中收集無線傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),并將其顯示為圖形。
實(shí)時生鮮食品供應(yīng)鏈管理無線傳感器網(wǎng)絡(luò)的硬件包括終端設(shè)備、路由器和協(xié)調(diào)器。在這項(xiàng)工作中,協(xié)調(diào)器和路由器是在同一個原型(稱為聚合節(jié)點(diǎn))中實(shí)現(xiàn)的。聚合節(jié)點(diǎn)和終端設(shè)備在結(jié)構(gòu)和功能上都不同。設(shè)計并實(shí)現(xiàn)了兩種印刷電路板。
為了減少感應(yīng)對印刷電路板的干擾,對強(qiáng)信號和弱信號進(jìn)行隔離,縮短了布線長度。為了提高印刷電路板散熱效果,增加了高功耗模塊。利用CADENCE的設(shè)計條目CIS建立了原型的開發(fā)環(huán)境,利用CADENCE設(shè)計了PCB板。
終端設(shè)備的結(jié)構(gòu)和原型分別如圖1所示。由一個1 500 mA·h 的片狀鋰電池供電,以便在生鮮食品容器中快速安裝。采用由8051微處理器和IEEE802.15.4標(biāo)準(zhǔn)射頻模塊組成的CC2530運(yùn)行ZigBee協(xié)議,對傳感器進(jìn)行控制。實(shí)時時鐘芯片DS2417提供當(dāng)前時間并產(chǎn)生定時脈沖以喚醒CPU。為了收集1.3中列出的信息,必須為終端設(shè)備的硬件設(shè)計選擇相應(yīng)的傳感器。
1. ZigBee CCC2530 2. 光強(qiáng)度傳感器模塊 3. 傳感器 4. 電池
(1) 環(huán)境傳感器:環(huán)境傳感器包括溫度/濕度傳感器和一氧化碳傳感器。溫度/濕度傳感器SHT21用于監(jiān)測集裝箱、倉庫和車輛中的溫度和濕度。溫度傳感器SOR的工作范圍為-40~125 ℃,精率±0.3 ℃;相對濕度傳感器的工作范圍為0%~100% RH,精率±2% RH。
(2) 運(yùn)動傳感器:安裝在端部裝置上的三軸加速度計可以檢測到異常振動、意外墜落、過度傾斜。采用MMA8453Q作為加速度傳感器,提供3軸10位定義的加速度數(shù)據(jù)。通過為MMA8453Q設(shè)置適當(dāng)?shù)挠|發(fā)參數(shù),任何異常的運(yùn)動狀態(tài)都將觸發(fā)中斷,并且終端設(shè)備將向服務(wù)器發(fā)送中斷類型和加速度計的值。使用光傳感器檢測到非法打開容器。當(dāng)容器在運(yùn)輸過程中打開時,傳感器將觸發(fā)中斷,并將此非法打開事件報告給服務(wù)器。所有異常運(yùn)動狀態(tài)將作為警報報告給用戶。
聚合節(jié)點(diǎn)(協(xié)調(diào)器和路由器)的架構(gòu)和原型如圖2所示。聚合節(jié)點(diǎn)主要由中央處理器、基于ZigBee的無線傳感器網(wǎng)絡(luò)內(nèi)部通信的CC2530、車載無線傳感器網(wǎng)絡(luò)與遠(yuǎn)程服務(wù)器通信的GPRS模塊、倉庫無線傳感器網(wǎng)絡(luò)與服務(wù)器通信的WiFi、獲取車輛位置的GPS模塊、環(huán)境傳感器和運(yùn)動傳感器組成。收集信息的傳感器。其他部件:中央處理器采用ARM Cortex-M3,用于采集傳感器信息,處理CC2530與WIFI/GPRS模塊之間的通信。Cortex-M3使用UART協(xié)議與CC2530、GPRS模塊和WiFi模塊通信。H7710E DTU(數(shù)據(jù)終端單元)支持GPRS協(xié)議,WiFi模塊工作在2.412~2.484 GHz和1 200~115 200 bps。GPS模塊采用NEO-6M-0-001,定位精度為2.5 m。COZIRA是一種二氧化碳傳感器,用于監(jiān)測倉庫和車輛內(nèi)的二氧化碳濃度,由12~36 V電源供電,可直接連接到電源。
1. 加速傳感器 2. ZigBee CC2530 3. GPRS模塊 4. CO2傳感器 5. CPU 6. 計時器 7. 電源管理器圖2 聚合節(jié)點(diǎn)的架構(gòu)和原型Figure 2 Architecture and prototype of aggregation node
基于Z棧對無線傳感器網(wǎng)絡(luò)的嵌入式軟件進(jìn)行編程(Z棧是由TI開發(fā)的用于CC2530的免費(fèi)ZigBee協(xié)議棧)。除了通信協(xié)議程序外,Z-Stack還提供了一個事件驅(qū)動的任務(wù)調(diào)度程序。因此,用戶只需為其特定的應(yīng)用開發(fā)應(yīng)用層程序和外圍設(shè)備的硬件驅(qū)動程序。Z-Stack的詳細(xì)介紹見2006年《Ti Z-Stack用戶指南》;2006年《Z-Stack示例應(yīng)用程序》及2006年《Z-Stack API》[26]。
在生鮮食品供應(yīng)鏈中,終端設(shè)備必須離開原來的無線傳感器網(wǎng)絡(luò),并在裝卸過程中加入新的無線傳感器網(wǎng)絡(luò)。如果加載或卸載過程復(fù)雜,終端設(shè)備可能會長時間失去與任何網(wǎng)絡(luò)的連接。此外,當(dāng)車輛停止時,協(xié)調(diào)器或路由器斷電時,終端設(shè)備也將失去與節(jié)點(diǎn)的連接。在上述情況下,如果處理不當(dāng),終端設(shè)備將繼續(xù)搜索新的網(wǎng)絡(luò)工作,并嘗試連接到路由器或協(xié)調(diào)器,從而導(dǎo)致相當(dāng)高的功耗。
終端設(shè)備的壽命是無線傳感器性能的關(guān)鍵因素,將終端設(shè)備設(shè)置為睡眠模式是在沒有任務(wù)運(yùn)行時,降低功耗的傳統(tǒng)方法。這種節(jié)能方案由Z棧提供。然而,只有當(dāng)終端設(shè)備已經(jīng)連接到WSN時,Z棧的節(jié)能方案才會生效。因此,為了降低非連接狀態(tài)下的功耗,設(shè)計了一種改進(jìn)的生鮮食品供應(yīng)鏈監(jiān)控終端設(shè)備的網(wǎng)絡(luò)切換方案。
當(dāng)終端設(shè)備從關(guān)機(jī)狀態(tài)切換到初始狀態(tài)時,開始搜索并嘗試加入新網(wǎng)絡(luò)。如果終端設(shè)備不能加入任何網(wǎng)絡(luò),將設(shè)置睡眠時間,并進(jìn)入非連接睡眠狀態(tài),在該狀態(tài)下,當(dāng)前的消耗量大約為13 μA。當(dāng)睡眠時間結(jié)束時,終端設(shè)備中的實(shí)時時鐘喚醒微處理器,將回到初始狀態(tài)并再次嘗試加入新網(wǎng)絡(luò)。如果終端設(shè)備成功加入網(wǎng)絡(luò)工作,則終端設(shè)備將初始化配置參數(shù)并進(jìn)入已加入睡眠狀態(tài)。使用實(shí)時時鐘或加速度傳感器和非法打開傳感器引起的中斷,可以喚醒處于聯(lián)合睡眠狀態(tài)的終端設(shè)備。在被喚醒后,終端設(shè)備收集并上傳相應(yīng)的傳感器信息,并將其傳輸?shù)缴霞壒?jié)點(diǎn)。如果傳輸失敗,終端設(shè)備將返回初始狀態(tài);否則,終端設(shè)備將保持加入的睡眠狀態(tài)。如果接收到配置命令,則終端設(shè)備將相應(yīng)地設(shè)置配置參數(shù)。無論終端設(shè)備處于哪個狀態(tài),一旦節(jié)點(diǎn)電源被切斷,終端設(shè)備將進(jìn)入電源關(guān)閉狀態(tài),在電源恢復(fù)之前不應(yīng)用于任何命令。特別是當(dāng)終端設(shè)備無法加入網(wǎng)絡(luò)時,將保持非連接睡眠狀態(tài),并定期喚醒以嘗試加入網(wǎng)絡(luò)。正確設(shè)置接入時間和休眠時間,可以顯著降低終端設(shè)備斷開與任何網(wǎng)絡(luò)連接時的功耗。
3.2.1 配置軟件 由于應(yīng)用場景和食品種類的多樣性,生鮮食品供應(yīng)鏈監(jiān)控系統(tǒng)需要配置不同的設(shè)置。例如,倉庫存儲可以使用WiFi,車輛運(yùn)輸可以使用GPRS通信,冷凍食品監(jiān)控時的感知頻率高,生鮮水果蔬菜監(jiān)控時的感知頻率低。試驗(yàn)開發(fā)了一套組態(tài)軟件。表2列出了系統(tǒng)的可配置設(shè)置。
3.2.2 PC和智能手機(jī)的用戶界面 PC和智能手機(jī)的用戶界面負(fù)責(zé)向最終用戶顯示傳感器和警報信息等環(huán)境信息,滿足智能化食品物流管理的要求。設(shè)計開發(fā)了一個在PC機(jī)上運(yùn)行的應(yīng)用程序和智能手機(jī)“供應(yīng)鏈管理助手”的應(yīng)用程序,其用戶界面如圖3所示。供應(yīng)鏈管理輔助應(yīng)用程序界面如圖4所示。應(yīng)用程序顯示溫度、相對濕度和當(dāng)前位置的實(shí)時信息,通過信息推送,通知用戶異常加速和非法打開等報警信息。
表2 系統(tǒng)的可配置設(shè)置Table 2 Configurable settings of the system
圖3 應(yīng)用程序用戶界面Figure 3 Application user interface
圖4 輔助應(yīng)用程序界面Figure 4 Auxiliary application interface
測試了所開發(fā)的無線傳感器網(wǎng)絡(luò)的功能和性能。在測試場景中,使用1個協(xié)調(diào)節(jié)點(diǎn)、8個路由器節(jié)點(diǎn),最多192個終端設(shè)備。
對于協(xié)調(diào)器和路由器,嵌入式軟件包括CC2530程序和Cortex-M3程序。CC2530程序?qū)崿F(xiàn)了基于TI提供的Z堆棧的標(biāo)準(zhǔn)ZigBee協(xié)議棧。Cortex-M3程序通過CC2530、WiFi模塊和GPRS模塊實(shí)現(xiàn)傳感器驅(qū)動、傳感器數(shù)據(jù)采集和UART通信。
表3 能耗測量結(jié)果Table 3 Measurement results of energy consumption
為了分析節(jié)點(diǎn)的實(shí)際功耗,對終端設(shè)備進(jìn)行了動態(tài)電流測試。電池和終端設(shè)備之間的動態(tài)電流由電流探針檢測并顯示在示波器上。連接到網(wǎng)絡(luò)的終端設(shè)備稱為連接的終端設(shè)備,未連接到網(wǎng)絡(luò)的終端設(shè)備稱為未連接的終端設(shè)備。試驗(yàn)測量了連接端和非連接端的發(fā)射和接收電流和時間消耗。對于未連接的終端設(shè)備,每個周期的網(wǎng)絡(luò)連接時間設(shè)置為13 s。功耗測量結(jié)果如表3所示。當(dāng)采用1 500 mA·h的電池,數(shù)據(jù)傳輸周期為1 min時,終端設(shè)備的壽命可以超過1年。當(dāng)喚醒周期為10 min,電池所含能量為1 500 mA·h,非連接端設(shè)備的壽命為150 d,改進(jìn)網(wǎng)絡(luò)交換方案的終端設(shè)備比未改進(jìn)網(wǎng)絡(luò)交換方案的終端設(shè)備壽命長得多[27]。延長終端設(shè)備的使用壽命,使其能夠應(yīng)用于長期監(jiān)測生鮮食品供應(yīng)鏈管理。
在實(shí)際電池電壓測試中,測試了星型拓?fù)渲信渲玫?0個終端設(shè)備和樹型拓?fù)渲信渲玫?92個終端設(shè)備。采樣周期設(shè)定為1 min,通過跟蹤兩個不同終端設(shè)備的日電池電壓,繪制實(shí)際電池電壓曲線,如圖5所示。在星型拓?fù)浜蜆湫屯負(fù)渲泄ぷ?0 d后,終端設(shè)備的實(shí)際電池電壓保持穩(wěn)定。
在傳輸成功率測試中,星型拓?fù)洳捎昧?種節(jié)點(diǎn)規(guī)模的10~80個終端設(shè)備,中間值為10個終端設(shè)備。在樹型拓?fù)浣Y(jié)構(gòu)中,10種節(jié)點(diǎn)規(guī)模采用100~190個終端設(shè)備,間隔為10個終端設(shè)備。對每一級終端設(shè)備進(jìn)行了3次成功率測試,并記錄了平均結(jié)果。星型拓?fù)渲械乃?0個終端設(shè)備的數(shù)據(jù)傳輸都完全成功;對于樹型拓?fù)渲械?90個終端設(shè)備,成功率達(dá)到99.3%,對通信的穩(wěn)定性具有重要意義。
圖5 電池電壓曲線Figure 5 Battery voltage curve
基于ZigBee標(biāo)準(zhǔn),設(shè)計并實(shí)現(xiàn)了一種用于生鮮食品供應(yīng)鏈監(jiān)測的無線傳感器網(wǎng)絡(luò),詳細(xì)介紹了系統(tǒng)的體系結(jié)構(gòu)、硬件設(shè)計和軟件實(shí)現(xiàn),并基于環(huán)境和運(yùn)動狀態(tài)信息的綜合監(jiān)控,非連接終端設(shè)備的節(jié)能方案,以及具有可配置拓?fù)浜拖到y(tǒng)設(shè)置的無線傳感器網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)。通過理論分析和實(shí)際無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)測試,評價了數(shù)據(jù)傳輸?shù)墓δ?、功耗和成功率。結(jié)果表明,該系統(tǒng)具有較好的使用壽命;改進(jìn)后的網(wǎng)絡(luò)切換方案可顯著降低非連接終端設(shè)備的功耗,延長節(jié)點(diǎn)的使用壽命。系統(tǒng)數(shù)據(jù)傳輸成功率達(dá)99%以上。
與以往的研究[16]相比,該系統(tǒng)不僅能監(jiān)測環(huán)境參數(shù),還能監(jiān)測生鮮食品的運(yùn)動狀態(tài),為供應(yīng)鏈管理提供更全面的信息。設(shè)計并實(shí)現(xiàn)了一種改進(jìn)的網(wǎng)絡(luò)切換方案,以降低生鮮食品裝卸時非連接端設(shè)備的功耗。與傳統(tǒng)的ZigBee系統(tǒng)相比,該方案顯著延長了終端設(shè)備的壽命。此外,還可以根據(jù)不同的應(yīng)用需求配置系統(tǒng)的門路、傳感頻率和網(wǎng)絡(luò)拓?fù)涞韧ㄐ艆f(xié)議。如何設(shè)計超低成本、高集成度的傳感器節(jié)點(diǎn)是今后研究的熱點(diǎn)。