文獻標識碼: A
文章編號: 0258-7998(2013)07-0069-04
食品冷鏈是指易腐產品從加工、貯藏、運輸、銷售、直到送達消費者手中的特殊供應鏈系統,其各個環節產品始終處于所必需的低溫環境下,以保證食品質量安全。目前多數物流公司主要通過將溫濕度檢測記錄儀放在車廂內進行溫濕度記錄,在物品交接時一次性讀取數據,公司和客戶無法動態檢測到冷鏈運輸車輛的過程狀態,降低了物流中心監測的準確性和實時性[1]。因此,本文設計了一種基于RFID的冷鏈運輸監測網絡,RFID采集系統有效降低了車載終端能耗,免除了跟蹤過程中的人工干預,GPRS網絡使得用戶無需另外組網,為客戶節省了組網和維護費用[2]。物流中心實時監測冷鏈運輸車輛的在途信息,用戶也可以用手機通過短信以AT指令形式查詢貨物在途參數。
1 系統總體結構設計
冷鏈運輸監測網絡的整體結構如圖1所示。整個監測系統由車載終端設備、GPRS通信網絡和監測中心三部分構成。
車載終端內RFID電子標簽和讀寫器承擔著貨物標簽信息和溫濕度數據采集與讀取任務。GPS定位模塊Ublox NEO接收衛星傳來的導航電文。中央處理器STM32F103RBT6將RFID系統采集的溫濕度數據進行分析和預處理,同時對GPS定位數據進行解析與封裝。車載終端通過GPRS無線模塊SIM900定時向監測中心發送當前溫濕度、經緯度、車載速度、日期時間等信息,并顯示在車載終端的LCD液晶屏上。監測中心無線接收和處理車載在途信息,將當前溫濕度顯示在監測界面上,并通過Google Earth實時顯示車輛位置。
中央處理器STM32內置電話簿,當溫濕度或者車載速度超過設定的相應閾值,就通過SIM900發送短信給手機用戶報警,同時駕駛室蜂鳴器響起,司機可立即采取應急措施。
2 車載終端硬件設計
2.1 中央處理器STM32F103RBT6
本系統采用意法半導體公司(ST)生產的基于ARM Contex_M3內核的RISC 32位微控制器,CPU處理速度快,工作頻率最高可達72 MHz,定點運算速率達到每秒9×107條指令;片內128 KB Flash,20 KB SRAM,擁有強大的程序和數據存儲能力;資源豐富,外圍連通性好,擁有9個通信接口(3個UART、2個I2C、2個SPI、1個CAN、1個USB2.0);外圍設備豐富,多達80個快速I/O端口擴展,7通道DMA控制器,7個定時器,2個12位的A/D轉換;支持JTAG/SWD接口的調試下載及IAP(在應用可編程),無需專用的編程器/仿真器;具有睡眠、停機和待機模式,體積小、性能高,可滿足車載終端低功耗與多串口的需求。
中央處理器STM32F103RBT6的UART2通過MAX3232芯片連接GPS數據采集模塊Ublox NEO的串口,用UART3通過MAX3232芯片連接無線通信模塊SIM900,UART1利用RS232-RS485轉換器與RFID讀寫器相連,通過PA口向LCD NOKIA5110液晶屏寫入顯示數據[2]。中央處理器硬件連接圖如圖2所示。
2.2 RFID數據采集模塊
RFID數據采集系統是整個車載終端的重要組成部分,電子標簽采集冷藏車廂內的動態溫濕度數據并處理轉換成電信號,通過2.45 GHz微波射頻通信將信息傳輸給讀寫器。
電子標簽采用有源主動式,工作狀態下通信距離可達30~50 m,休眠狀態功耗極低, 低頻喚醒距離在0.5~7 m之間準確可控。讀寫器采用全向式,通信距離達15~50 m,內置存儲器可用于暫存溫濕度數據,先進的時隙ALOAH防碰撞算法支持讀寫器同時讀寫200個電子標簽,在車載內可以組建一個無線局域網,實現多點采集車廂內的溫濕度。本文采用的溫濕度傳感器是SHT1X系列,此傳感器電阻溫度系數大,感應靈敏,電阻值隨溫度變化基本呈線性關系[3]。RFID電子標簽測溫范圍為
-40℃~+123℃,測溫精度為±0.5℃; 濕度測量范圍為0% RH~100% RH,測濕精度為±2% RH。采用RFID技術解決了冷鏈物流人工干預、能耗高的固有缺點,而且電子標簽體積小、易拆卸,可重復利用,有效降低了物流成本。
2.3 GPS定位模塊Ublox NEO
本系統中GPS定位模塊采用Ublox NEO 5Q,該模塊支持NEMA0183 V3.01協議標準輸出,TTL電平接口,GPS模塊不能直接與中央處理器相連接,必須先通過MAX3232將TTL電平轉換成RS232電平后,才能連接到中央處理器的接口。 GPS定位模塊硬件原理圖如圖3所示。
Ublox NEO引腳8(TXD1)和引腳9(RXD1)分別通過MAX3232與STM32F103RBT6的RXD2和TXD2相連。定位精度小于2.5 m;限制運行速度高達1 000節,相當于515 m/s;具有50通道衛星接收功能;工作電壓2.7 V~3.6 V;啟動時間短,功耗低,全速模式135 mW,定位快速;提供多種接口,便于擴展。模塊上電工作時,與中央處理器STM32F103RBT6進行通信,通過初始化設置定時輸出GPS導航電文,中央處理器對GPS導航電文進行解析,提取出日期、時間、經緯度、車載速度等有用信息作為物流中心監測的基本數據。并通過Google Earth軟件在監測界面顯示車輛地理位置。
2.4 無線通信模塊SIM900
本系統采用SIMCOM公司工業級四頻段GSM/GPRS模塊SIM900進行遠程數據傳輸,SIM900模塊體積小、功耗低,可以快速安全可靠地實現系統方案中的短信消息服務和GPRS數據無線傳輸。SIM900內嵌PPP撥號協議和TCP/IP協議棧。模塊工作電壓為3.4 V~4.5 V,可工作在850/900/1800/1900 MHz四個頻段。該模塊硬件設計原理圖如圖4所示。
中央處理器STM32F103RBT6通過UART3與SIM900接口進行通信,原理與GPS模塊接口一致,SIM900模塊的引腳TXD_O和RXD_I需要通過MAX3232電平轉換后才能與中央處理器的RXD3和TXD3相連,SIM900與中央處理器的通信協議是AT命令集,中央處理器通過發送AT指令可以對SIM900模塊進行控制[4],設置工作模式,傳輸速率設置為115 200 b/s。SIM900模塊內置SIM卡進行通信。
3 系統軟件結構和功能設計
監測系統的應用軟件程序容量大,實時性強,因此系統軟件采用模塊化的設計方法,使整個系統流程層次分明,邏輯清楚,便于各個模塊軟件的調試、修改和維護,同時提高了系統的可靠性和靈活性。系統軟件包括:車載終端主程序、溫濕度采集程序、GPS定位及解析程序、GPRS網絡登錄及通信程序、報警及LCD顯示程序、串口通信等,本文主要介紹其中重要模塊的軟件程序流程。
3.1 車載終端主程序設計
中央處理器STM32F103RBT6通過中斷方式讀取溫濕度數據和GPS定位信息,然后對數據進行分析和預處理。微處理器通過向SIM900寫入不同的AT指令集實現GPRS網絡登錄、TCP/IP鏈路建立、發送GPRS數據、收發SMS消息等[4]。若溫濕度數據、車載速度不在設定的閾值內,則向中央處理器內置電話簿中的所有號碼發送短消息報警,同時駕駛室內蜂鳴器響起,駕駛人員可采取應急措施。車載終端工作流程圖如圖5所示。
3.2 GPS數據解析與處理
車載終端上電工作時,GPS模塊Ublox NEO每隔一段時間就把接收到的衛星導航電文通過串行口傳輸給STM32中央處理器,中央處理器編程控制讀取導航電文的時間間隔,以降低功耗和節約通信費用。從GPS模塊可以得到幾個不同的數據幀,不同的數據幀的幀格式和幀頭都不同,幀頭主要有$GPGGA、$GPGSA、$GPGSV及$GPRMC等。不同幀頭的數據結構不同。在正常定位情況下,定位數據如日期、時間、經緯度、速度等均可以從“$GPRMC”中提取。根據GPS模塊初始化的設定,GPS定位接收機對每一條GPS信息都進行分析及處理,還要對日期、時間、經度、緯度、速度進行轉換。數據轉換完畢后,就把數據按規定的格式打包,提供給信息發送程序,由發送程序決定是否發送給監控中心。程序根據主控模塊的設定來處理這些數據。
“$GPRMC”幀格式如下所示:
$GPRMC,043628.00,A,3903.76434,N,11706.46351,E,0.256,,181112,,,D*71.
中央處理器STM32F103RBT6進行GPS數據接收時,檢測“$GPRMC”幀頭的ASCⅡ是否正確。若正確,就接收幀內數據并進行解析[2],其他無效或者冗余信息舍棄,接收的有效信息按GPS數據傳輸協議封裝成UDP數據包,通過GRPS網絡無線傳輸給監測中心,監測中心接收數據后通過Google Earth將車輛位置實時顯示在電子地圖上。
3.3 GPRS鏈路建立與數據傳輸
中央處理器STM32F103RBT6向SIM900寫入AT指令,設置GPRS連接方式、監測中心的固定IP地址和端口號、短信發送模式、接收方號碼等[4],完成模塊初始化并通過GGSN網關接入遠程監測中心的Internet。然后將采集到的溫濕度以及解析后的定位數據編碼成PDU格式[4],通過GPRS網絡傳輸給遠端監控中心,同時可接受AT指令形式的短信查詢。
為增強系統的安全性和可靠性,防止惡意短信查詢和騷擾,手機用戶進行短信查詢時需要進行身份和口令的雙重確認,中央處理器內置電話簿,非電話簿用戶短信均被當做垃圾短信處理。口令格式如“COM+tem=?”,COM為公司名,tem為查詢的內容,此處為溫濕度、定位信息、車載速度等,對于不符合口令格式的短信查詢將當作垃圾短信處理。
3.4 監測中心軟件設計
監測中心軟件主要實現的功能包括車輛管理功能、用戶管理功能、貨物狀態監測功能,通過人機界面進行信息查詢和實時監測。監測中心采用C/S模式,車載終端作為客戶端,請求與監測中心進行網絡通信;監測中心作為服務器,偵聽網絡的連接請求,接收、處理和存儲數據,并將信息及時有效地顯示在監測界面上。軟件采用VC6.0 C++編寫可視化的Socket服務器程序,采用ACCESS2003分表存儲相關數據,系統具有良好的擴展性與移植性[5]。
4 實驗結果與分析
本文搭建了一個冷鏈運輸監測網絡系統,該系統以STM32F103RBT6微處理器為控制核心,由RFID電子標簽、讀寫器、GPS定位模塊Ublox NEO和SIM900無線通信模塊構成,實現冷鏈運輸車與遠程監測中心之間的網絡監測。在STM32為主控模塊的硬件上編寫底層驅動程序,實現各個子模塊的功能。監測中心以VC6.0和ACCESS2003為軟件開發平臺,實現了無線數據的接收、處理、顯示和存儲功能[5]。該系統目前初步完成了對車廂內的溫濕度數據和車輛定位信息的監測,通過無線通信模塊將采集到的信息定時發送給監測中心,并完善突發預警機制,實現無人值守的網絡監測。
物流中心的監測界面顯示了當前監測中心的固定IP地址和進行數據偵聽的偵聽端口,并可在此界面上在線設置溫濕度的監測閾值。點擊監測界面的“地圖定位顯示”,監測中心處理定位數據后,將實時接收的定位數據通過Google Earth顯示出來,定位界面如圖6所示。
整個系統經過大量的收發數據測試與調試,車載終端初次啟動和網絡信號較弱時系統重啟后參數如表1所示。從表1中可以看出,系統具有丟包率低、網絡時延小、定位快速的特點,可滿足車載終端與監測中心通信實時性好和可靠性高的要求。車載終端加入了數據安全設置和冗余信息處理,有效維護了貨物運輸在途參數安全等問題。
本系統采用先進的RFID技術、GPS技術、GPRS技術及溫濕度傳感技術,實現冷鏈運輸過程中將食品溫度變化記錄在“帶溫濕度傳感器的RFID標簽”上,實時上傳到監控中心平臺,提供及時準確的溫濕度監測,從而掌控了生鮮食品的運輸在途參數;能在必要時及時發出預警,有效降低了生鮮食品冷鏈運輸過程中的損耗,保證了在途食物的質量和安全;有效克服了過去信息傳遞不及時,信息追溯困難等問題。系統具有成本低、功耗低、實時性、擴展性良好的特點,提高了冷鏈運輸車的實時監測能力,在提高食品運輸品質的同時,降低了食品損耗和供應鏈中的投資成本。
參考文獻
[1] 王鈾.采用物聯網技術實現藥品食品全程冷鏈監控[J].物流技術與應用,2011(2):70-72.
[2] 魏芬,王海彬.基于ARM的智能車載終端設備系統的設計[J].單片機與嵌入式系統應用,2012,12(8):66-69.
[3] 張璘,陶琳,袁江南,等.基于GSM的遠程溫濕度監測系統研究及實現[J].電子技術應用,2012,38(6):93-96.
[4] 董宇,楊強,顏文俊.基于nRF905和GPRS的智能家居用電監測系統[J].電子技術應用,2012,38(9):78-81.
[5] 鄭琪,方思行. 通用多線程服務器的設計與實現[J].計算機工程與應用,2003,39(16):146-147.