田 肖,郭曉金,何 川,尹 超
(重慶郵電大學(xué) 通信與信息工程學(xué)院 寬帶網(wǎng)絡(luò)及信息處理實(shí)驗(yàn)室,重慶 400065)
基于ZigBee的疫苗冷鏈運(yùn)輸監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
田 肖,郭曉金,何 川,尹 超
(重慶郵電大學(xué) 通信與信息工程學(xué)院 寬帶網(wǎng)絡(luò)及信息處理實(shí)驗(yàn)室,重慶 400065)
醫(yī)用疫苗作為一種高風(fēng)險(xiǎn)的生物藥品,在其運(yùn)輸過程中,環(huán)境狀況監(jiān)測(cè)等方面智能化程度不高。針對(duì)這種情況設(shè)計(jì)了一種基于ZigBee的疫苗冷鏈運(yùn)輸監(jiān)測(cè)系統(tǒng),此系統(tǒng)以CC2530作為協(xié)調(diào)器和采集節(jié)點(diǎn)組成無線傳感網(wǎng)絡(luò),再經(jīng)由協(xié)調(diào)器把采集的溫度、濕度、震動(dòng)等傳感器數(shù)據(jù)傳遞給STM32來實(shí)時(shí)顯示疫苗環(huán)境狀況,最后由STM32采集地理位置信息,然后一并將所有數(shù)據(jù)和報(bào)警信息通過GPRS傳輸至后臺(tái)上位機(jī)進(jìn)行全方位監(jiān)控。經(jīng)過測(cè)試和分析得出,本系統(tǒng)具有低成本,低功耗,組網(wǎng)靈活和實(shí)用性強(qiáng)等優(yōu)點(diǎn),可以廣泛應(yīng)用于疫苗運(yùn)輸環(huán)境監(jiān)測(cè)領(lǐng)域。
疫苗;ZigBee;STM32;監(jiān)測(cè)系統(tǒng);冷鏈運(yùn)輸
近年來伴隨著我國(guó)疫苗接種量的急劇增加,人們對(duì)人體接種疫苗的安全問題越來越重視,我國(guó)每年疫苗接種量高達(dá)7億,這個(gè)數(shù)字還在持續(xù)增長(zhǎng)。疫苗分發(fā)到全國(guó)各地,絕大多數(shù)都會(huì)通過道路運(yùn)輸,由于疫苗對(duì)周圍環(huán)境要求較高,運(yùn)輸過程中容易受到溫度、濕度的影響,難以保證安全儲(chǔ)存[1]。如何實(shí)現(xiàn)對(duì)疫苗運(yùn)輸過程的安全高效監(jiān)管,避免接種疫苗受損致使其對(duì)人體造成傷害,已經(jīng)成為當(dāng)今社會(huì)亟待解決的問題。
目前國(guó)內(nèi)外對(duì)疫苗運(yùn)輸過程監(jiān)管的智能化程度不高,有的國(guó)家及地區(qū)使用了一些智能技術(shù),大多是對(duì)整個(gè)車廂進(jìn)行一定的溫濕度監(jiān)控,并沒有對(duì)每一箱疫苗進(jìn)行具體的環(huán)境監(jiān)測(cè)和記錄,并且這些措施缺乏主動(dòng)的監(jiān)控預(yù)警技術(shù)。近年來電子信息技術(shù)的快速發(fā)展為疫苗的物理運(yùn)輸行業(yè)帶來了新的契機(jī),利用先進(jìn)的電子技術(shù)設(shè)備,可以有效降低接種疫苗在運(yùn)輸過程中的損失,提高其品質(zhì)。
本課題針對(duì)疫苗運(yùn)輸行業(yè)的特殊背景和監(jiān)測(cè)需求,設(shè)計(jì)了一套簡(jiǎn)潔易用、小型便攜、穩(wěn)定性強(qiáng)的系統(tǒng)[2],用于監(jiān)測(cè)車輛運(yùn)輸狀態(tài)和記錄疫苗環(huán)境信息,從技術(shù)實(shí)現(xiàn)角度為疫苗冷鏈運(yùn)輸跟蹤監(jiān)測(cè)提供一個(gè)可測(cè)試可優(yōu)化的解決方案[3]。
疫苗冷鏈運(yùn)輸環(huán)境監(jiān)控系統(tǒng)如圖1所示,主要由三部分組成:移動(dòng)監(jiān)測(cè)端、車載顯示端、遠(yuǎn)程監(jiān)控端。
圖1 系統(tǒng)整體框架圖
移動(dòng)監(jiān)測(cè)端由基于ZigBee的終端節(jié)點(diǎn)和協(xié)調(diào)器組成,ZigBee終端采集節(jié)點(diǎn)安裝在疫苗存儲(chǔ)箱中,主要負(fù)責(zé)采集運(yùn)輸車廂內(nèi)每一箱疫苗的環(huán)境狀況以及環(huán)境信息的發(fā)送。其環(huán)境信息主要包括溫度、濕度、震動(dòng)等。協(xié)調(diào)器主要負(fù)責(zé)匯聚所有終端節(jié)點(diǎn)傳遞來的傳感器數(shù)據(jù)并通過串口發(fā)送給STM32開發(fā)板。車載顯示端在車輛駕駛室,主要由STM32嵌入式模塊、GPS定位模塊以及GPRS無線通訊模塊組成,其主要功能是處理通過LCD顯示協(xié)調(diào)器傳遞過來的環(huán)境狀態(tài)信息以便跟車人員實(shí)時(shí)知曉,還通過GPS定位模塊采集實(shí)時(shí)地理位置信息,最后把所有環(huán)境數(shù)據(jù)經(jīng)由GPRS模塊發(fā)送給遠(yuǎn)程監(jiān)控端。遠(yuǎn)程監(jiān)控端主要由數(shù)據(jù)庫和上位機(jī)軟件兩部分組成。數(shù)據(jù)庫主要負(fù)責(zé)儲(chǔ)存移動(dòng)監(jiān)測(cè)端采集的疫苗環(huán)境狀態(tài)數(shù)據(jù)以及報(bào)警信息,上位機(jī)軟件主要實(shí)現(xiàn)疫苗的環(huán)境狀態(tài)信息和報(bào)警信息的實(shí)時(shí)顯示,以及歷史數(shù)據(jù)的查詢、刪除、打印等操作,并通過百度地圖實(shí)現(xiàn)運(yùn)輸車輛地理位置查詢及顯示。
系統(tǒng)硬件主要分為ZigBee傳感網(wǎng)絡(luò)模塊和STM32顯示及采集模塊。
ZigBee終端采集節(jié)點(diǎn)以及協(xié)調(diào)器都以TI公司的CC2530F256為核心進(jìn)行設(shè)計(jì),CC2530是針對(duì)2.4-GHz IEEE 802.15.4、ZigBee和RF4CE的一個(gè)片上系統(tǒng)解決方案,理論上其無線傳輸距離在0到400m,傳輸速度最高可達(dá)250kbps,其內(nèi)部集成一顆增強(qiáng)型8051CPU內(nèi)核和高性能的RF收發(fā)芯片,滿足了本系統(tǒng)的低功耗和低成本要求[4]。
終端采集節(jié)點(diǎn)主要功能是疫苗運(yùn)輸過程中所處環(huán)境信息的采集、處理、發(fā)送,除此之外終端采集節(jié)點(diǎn)還具有報(bào)警功能,即當(dāng)疫苗所處環(huán)境異常時(shí)主動(dòng)向協(xié)調(diào)器發(fā)送報(bào)警信息,比如車身顛簸過大,疫苗箱內(nèi)溫濕度超過設(shè)定的安全閾值等。終端采集節(jié)點(diǎn)硬件結(jié)構(gòu)如圖2所示。
圖2 采集節(jié)點(diǎn)硬件結(jié)構(gòu)圖
采集溫濕度主要使用DHT22這種高靈敏度數(shù)字傳感器,其通過單總線方式與CC2530的數(shù)字I/O端口P0_1直接相連,通過軟件模擬DHT22時(shí)序采集溫濕度數(shù)據(jù)。SW-420震動(dòng)傳感器功率小、成本低且靈敏度可調(diào)節(jié),能滿足系統(tǒng)性能需求,與DHT22一樣,SW-420直接與CC2530 P0_6端口相連,通過端口接收到的高低電平判斷是否產(chǎn)生震動(dòng),但終端節(jié)點(diǎn)不用重復(fù)采集震動(dòng)傳感器數(shù)據(jù),震動(dòng)傳感器只作為報(bào)警使用,當(dāng)疫苗存儲(chǔ)箱震動(dòng)到一定程度時(shí)終端節(jié)點(diǎn)通過ZigBee網(wǎng)絡(luò)向車載顯示端和遠(yuǎn)程監(jiān)控端發(fā)送報(bào)警提示信息,故在硬件程序中把CC2530 P0_6端口設(shè)為中斷觸發(fā)模式,通過中斷方式產(chǎn)生震動(dòng)報(bào)警信息。為了便于攜帶安裝,終端采集節(jié)點(diǎn)采用5V電池組供電,由于電路中要用到3.3V電壓,所以需要5V-3.3V電壓轉(zhuǎn)換電路,電壓轉(zhuǎn)化芯片使用REG117-3.3。此外協(xié)調(diào)器主要負(fù)責(zé)接收和發(fā)送數(shù)據(jù),除了沒有傳感器模塊,其硬件結(jié)構(gòu)與采集節(jié)點(diǎn)相同[5]。
車載顯示端主要采用STM32F767作為處理器,該處理器以Cortex-M7為內(nèi)核,具有低成本高性能的優(yōu)勢(shì)[6],同時(shí)使用與STM32F767配套的7寸RGB液晶顯示屏作為顯示設(shè)備。采集地理位置信息的GPS模塊使用U-blox公司生產(chǎn)的低功耗小型化的NEO-7N模塊,車載顯示端需要把協(xié)調(diào)器傳遞來的數(shù)據(jù)通過GPRS無線網(wǎng)絡(luò)發(fā)送到遠(yuǎn)程監(jiān)控端,此次設(shè)計(jì)中GPRS模塊采用SIM800C作為無線發(fā)送模塊。車載顯示端的硬件結(jié)構(gòu)如圖3所示,連線中間文字表示通信方式。
圖3 車載顯示端硬件結(jié)構(gòu)圖
為了防止GPRS出現(xiàn)網(wǎng)絡(luò)故障造成大量數(shù)據(jù)丟失,故需要將傳感數(shù)據(jù)存儲(chǔ)到SD卡中,STM32采用SPI接口與SD卡進(jìn)行數(shù)據(jù)交互,并通過移植FAT32文件系統(tǒng),可以方便快速地讀取SD卡中數(shù)據(jù)。
系統(tǒng)軟件主要分為采集節(jié)點(diǎn)、車載顯示和上位機(jī)三部分。
傳感網(wǎng)絡(luò)通信軟件是基于TI公司提供的Z-Stack協(xié)議棧進(jìn)行開發(fā),同時(shí)整個(gè)開發(fā)環(huán)境IDE使用IAR工具[7]。
ZigBee采集節(jié)點(diǎn)加入網(wǎng)絡(luò)后,會(huì)自動(dòng)周期性采集數(shù)據(jù),其默認(rèn)采集周期為5min,為了減小誤差每次采集7組數(shù)據(jù),采用去極值法即去掉最大值和最小值然后取平均值發(fā)送,無線發(fā)送周期也為5min,當(dāng)溫濕度值超過報(bào)警閾值采集周期將自動(dòng)轉(zhuǎn)換為2min。采集節(jié)點(diǎn)還需根據(jù)采集的數(shù)據(jù)自動(dòng)判斷是否發(fā)送報(bào)警信息,終端采集節(jié)點(diǎn)軟件流程如圖4所示。系統(tǒng)中協(xié)調(diào)器功能相對(duì)簡(jiǎn)單,主要負(fù)責(zé)接收采集節(jié)點(diǎn)數(shù)據(jù)和通過串口給STM32發(fā)送數(shù)據(jù),只需要在Z-Stack協(xié)議棧中初始化并使用相關(guān)串口即可。
圖4 采集節(jié)點(diǎn)軟件流程圖
車載顯示端除了要實(shí)時(shí)直觀顯示協(xié)調(diào)器發(fā)送來的疫苗環(huán)境信息,還要采集車輛地理位置信息,并把地理位置信息和疫苗所處環(huán)境信息發(fā)送到遠(yuǎn)程監(jiān)控端。地理位置信息采集周期為2s與終端采集節(jié)點(diǎn)不同,故在車載顯示端程序中創(chuàng)建兩個(gè)線程分開發(fā)送疫苗環(huán)境狀況和地理位置信息。此外當(dāng)GPRS出現(xiàn)網(wǎng)絡(luò)故障時(shí)要儲(chǔ)存數(shù)據(jù),當(dāng)網(wǎng)絡(luò)恢復(fù)時(shí)進(jìn)行數(shù)據(jù)補(bǔ)傳。在STM32F767中是通過FMC接口來控制TFTLCD的顯示,F(xiàn)MC即可變存儲(chǔ)控制器,這里不做詳細(xì)表述。從軟件層面講使用FMC非常方便,只需在程序中初始化FMC的時(shí)鐘和接口讀寫參數(shù)等,WR(寫)、RD(讀)、DB0-DB15這些控制線和數(shù)據(jù)線,將都會(huì)由FMC自動(dòng)控制。車載顯示端總體軟件流程如圖5所示。
上位機(jī)軟件主要負(fù)責(zé)將遠(yuǎn)程傳遞來的傳感器數(shù)據(jù)和地理位置信息進(jìn)行解析,然后可以直觀清楚的在監(jiān)控界面上觀測(cè)疫苗運(yùn)輸車的地理位置,以及車廂內(nèi)每箱疫苗的溫度、濕度和疫苗儲(chǔ)存箱震動(dòng)情況。本文采用了QT這種圖形用戶界面應(yīng)用開發(fā)框架來設(shè)計(jì)上位機(jī)監(jiān)控軟件,其軟件總體框架如圖6所示[8]。
圖5 車載顯示端軟件流程
圖6 上位機(jī)軟件框架
4.3.1 人機(jī)界面?;谟脩羲季S和工作模式,人機(jī)界面的主要特點(diǎn)體現(xiàn)在友好性、交互性和靈活性。因此在軟件設(shè)計(jì)中加入了詳細(xì)的軟件操作流程和提示,此外為防止數(shù)據(jù)被意外的刪除和篡改,在軟件操作中加入了回滾機(jī)制和用戶權(quán)限限制[9]。為了使數(shù)據(jù)在監(jiān)控頁面上更加生動(dòng)和直觀,把監(jiān)控頁面分為疫苗狀態(tài)窗口和地圖定位窗口,在數(shù)據(jù)查看模塊中通過設(shè)計(jì)智能分析功能可以對(duì)所記錄的數(shù)值以圖文表的形式輸出,這些都極大地方便了管理人員的分析和管理,能客觀真實(shí)反映記錄過程。
4.3.2 地理位置信息提取及地圖顯示。系統(tǒng)中采用的NEO-7N定位芯片遵循NMEA-0183協(xié)議,每幀數(shù)據(jù)采用ASCII碼來傳遞定位信息。每串?dāng)?shù)據(jù)以“$”起始,以回車換行結(jié)束。中間用“,”分割不同的數(shù)據(jù)內(nèi)容。STM32采集GPS數(shù)據(jù)后根據(jù)NMEA-0183協(xié)議定義的數(shù)據(jù)格式提取出經(jīng)度和緯度。并把判定為有效的定位狀態(tài)(A:定位狀態(tài)有效,V:定位狀態(tài)無效)以“N-緯度,E-經(jīng)度”的數(shù)據(jù)格式發(fā)送到上位機(jī)。
為了遵循國(guó)家對(duì)地理信息保密要求,所有電子地圖提供商都必須給地圖數(shù)據(jù)加上偏移量和加密。所以上位機(jī)需要將GPS采集的原始坐標(biāo)轉(zhuǎn)換成百度地圖坐標(biāo)[8]。百度地圖免費(fèi)為廣大消費(fèi)者提供了豐富的API接口,其坐標(biāo)轉(zhuǎn)換API接口分為單個(gè)坐標(biāo)轉(zhuǎn)換接口和批量轉(zhuǎn)換接口,由于系統(tǒng)中需要同時(shí)顯示多輛運(yùn)輸車輛的地理位置,故使用BMap.Convertor.transMore接口函數(shù)進(jìn)行批量坐標(biāo)轉(zhuǎn)換[9]。在QT中嵌入百度地圖的過程是:首先獲取到百度地圖的api key,先調(diào)用百度地圖,其次在QT界面上集成一個(gè)WebKits/Web-View控件,讓Qt和Javascript進(jìn)行交互,然后在網(wǎng)頁源碼中實(shí)現(xiàn)操作及其功能。其網(wǎng)頁源碼中的顯示流程如圖7所示。
圖7 百度地圖顯示流程
系統(tǒng)設(shè)計(jì)完成之后,對(duì)整個(gè)系統(tǒng)進(jìn)行了測(cè)試,移動(dòng)監(jiān)測(cè)端采用8個(gè)ZigBee終端采集節(jié)點(diǎn)和一個(gè)ZigBee協(xié)調(diào)器,終端采集節(jié)點(diǎn)放在設(shè)計(jì)好的冷藏箱中并把冷藏箱放在一輛運(yùn)輸車廂里面。車載顯示端所有硬件及顯示設(shè)備放在車輛駕駛室固定位置,并通過串口線和車廂內(nèi)協(xié)調(diào)器相連。此次測(cè)試通過人為方式使7號(hào)冷藏箱和8號(hào)冷藏箱產(chǎn)生異常情況的方式來檢驗(yàn)報(bào)警功能。測(cè)試結(jié)果表明,系統(tǒng)溫度誤差范圍為±0.5℃,濕度誤差范圍為±2%RH,報(bào)警信息反饋及時(shí),定位精度為5m,且鋰電池供電的終端采集節(jié)點(diǎn)可以連續(xù)工作180個(gè)小時(shí)以上。遠(yuǎn)程監(jiān)控端能同步收到數(shù)據(jù)信息,上位機(jī)監(jiān)控軟件實(shí)時(shí)監(jiān)測(cè)情況如圖8所示。綜合所有測(cè)試結(jié)果,經(jīng)過分析表明本系統(tǒng)能滿足疫苗冷鏈運(yùn)輸過程中的狀態(tài)監(jiān)測(cè)需求,但也還存在一些不足,例如上位機(jī)軟件比較簡(jiǎn)潔,友好性不夠,這些都還需進(jìn)一步提高和完善[10]。
圖8 上位機(jī)監(jiān)控界面
本文設(shè)計(jì)的基于ZigBee的疫苗冷鏈運(yùn)輸環(huán)境監(jiān)測(cè)系統(tǒng),利用傳感器,ZigBee的無線自組網(wǎng)和GPS全球定位系統(tǒng)實(shí)現(xiàn)了對(duì)醫(yī)用疫苗運(yùn)輸過程中的全方位實(shí)時(shí)監(jiān)測(cè),再加上遠(yuǎn)程監(jiān)測(cè)中心,可以有效的降低疫苗物流運(yùn)輸過程中的損失和疫苗受損所帶來的危害,有很重要的現(xiàn)實(shí)使用價(jià)值。
[1]唐昕營(yíng),周東明.“山東疫苗事件”評(píng)析[J].中國(guó)科學(xué):生命科學(xué),2016,46:779-781.
[2]苑宇坤.基于ZigBee和百度地圖的危化品運(yùn)輸跟蹤監(jiān)控系統(tǒng)研究[D].太原:中北大學(xué),2016.
[3]楊朋偉.一種低功耗ZigBee數(shù)據(jù)采集方法[J].科技視界,2015(5).
[4]楊景明.基于ZigBee的無線傳感器網(wǎng)絡(luò)低功耗節(jié)點(diǎn)設(shè)計(jì)[D].大連:大連理工大學(xué),2014.
[5]甘志強(qiáng),王科,楊志勇,等.基于ZigBee技術(shù)的低功耗智能氣象傳感器設(shè)計(jì)[J].電子測(cè)量技術(shù),2015,(2):96-100.
[6]朱銀龍.基于GPS/GPRS/RFID的車載監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)[D].南京:南京航空航天大學(xué),2014.
[7]蔡國(guó)浩.支持多協(xié)議的無線通信網(wǎng)關(guān)的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2016.
[8]陳榮超,陳光武.基于BDS/GPS和百度地圖的現(xiàn)代有軌電車監(jiān)控系統(tǒng)的設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2015,23(10):3 412-3 414.
[9]文立家.基于GPRS的電子公交站牌系統(tǒng)的設(shè)計(jì)[D].哈爾濱:哈爾濱理工大學(xué),2015.
[10]Knutti F,Tobler N,Mathis H.Low-power voting device for use in education and polls employing TI's CC2530 RF CHIP[A].E-ducation and Research Conference IEEE[C].2014:221-224.
Design of Vaccine Cold Chain Transport Monitoring System Based on ZigBee
Tian Xiao,Guo Xiaojin,He Chuan,Yin Chao
(School of Communication&Information Engineering,Chongqing University of Posts&Telecommunications,Chongqing 400065,China)
In this paper,we designed a ZigBee-based vaccine cold chain transport monitoring system.It is a wireless sensor network composed by coordinators and collecting nodes,of which,the coordinator would pass the collected data on temperature,humidity and vibration,etc.,on to the STM32 for the real-time display of the vaccine situation and meanwhile the STM32 would collect geographical and location information and send it,together with the above
,and all warning information,through GPRS,to the backstage upper computer for comprehensive monitoring.At the end,through testing and analysis,we demonstrated the strength of the system and its feasibility in vaccine transport environment monitoring.
vaccine;ZigBee;STM32;monitoring system;cold chain transport
F253.9;U16
A
1005-152X(2017)09-0175-05
10.3969/j.issn.1005-152X.2017.09.040
2017-08-08
田肖(1993-),男,碩士研究生,主要研究方向:信號(hào)處理與片上系統(tǒng)、物聯(lián)網(wǎng)技術(shù);郭曉金(1974-),男,副教授,博士,主要研究方向:信號(hào)處理與片上系統(tǒng)、物聯(lián)網(wǎng)技術(shù)。