摘 要: 為了對(duì)易腐爛食品、藥品和其他對(duì)溫度敏感的物品在生產(chǎn)、運(yùn)輸和存儲(chǔ)過(guò)程中進(jìn)行實(shí)時(shí)監(jiān)控,利用射頻識(shí)別技術(shù)RFID、電子溫度測(cè)量技術(shù)、無(wú)線傳輸技術(shù)設(shè)計(jì)了基于射頻識(shí)別技術(shù)的無(wú)線溫度監(jiān)測(cè)系統(tǒng)。該設(shè)計(jì)實(shí)現(xiàn)了對(duì)生產(chǎn)、運(yùn)輸和存儲(chǔ)過(guò)程中產(chǎn)品溫度的實(shí)時(shí)監(jiān)測(cè),具有超溫報(bào)警功能,保障了產(chǎn)品生產(chǎn)、運(yùn)輸和存儲(chǔ)過(guò)程中的品質(zhì)。
關(guān)鍵詞: 射頻識(shí)別技術(shù);無(wú)線傳輸;溫度監(jiān)測(cè);RC522
0 引言
人們的生活與溫度息息相關(guān),化學(xué)、物理、生物等學(xué)科的研究都離不開(kāi)溫度。在電力、石油、化工、機(jī)械制造、冶金、大型倉(cāng)儲(chǔ)室、農(nóng)場(chǎng)塑料大棚甚至人們的居室里經(jīng)常需要對(duì)環(huán)境溫度進(jìn)行監(jiān)測(cè),并根據(jù)實(shí)際的要求對(duì)環(huán)境溫度進(jìn)行控制。
隨著無(wú)線傳輸技術(shù)的發(fā)展、電子測(cè)溫技術(shù)的普及以及射頻識(shí)別技術(shù)的成熟,實(shí)時(shí)溫度監(jiān)測(cè)系統(tǒng)與運(yùn)輸過(guò)程透明化變得切實(shí)可行。射頻識(shí)別技術(shù)是一種新式的非接觸識(shí)別技術(shù),通過(guò)射頻信號(hào)可對(duì)無(wú)源非接觸IC卡進(jìn)行供電與通信,該過(guò)程中無(wú)需人工干涉并且可工作于惡劣環(huán)境,而電子測(cè)溫結(jié)果準(zhǔn)確、可測(cè)定范圍廣,正滿足了產(chǎn)品生產(chǎn)、運(yùn)輸過(guò)程中的不同需求。
本系統(tǒng)基于射頻識(shí)別技術(shù)設(shè)計(jì)了溫度實(shí)時(shí)無(wú)線監(jiān)測(cè)系統(tǒng),實(shí)現(xiàn)了超溫報(bào)警、溫度信息儲(chǔ)存和無(wú)線傳輸,對(duì)保證產(chǎn)品生產(chǎn)、運(yùn)輸和存儲(chǔ)安全具有一定意義[1]。
1 溫度監(jiān)測(cè)系統(tǒng)總體設(shè)計(jì)
系統(tǒng)功能框圖如圖1所示,該監(jiān)測(cè)系統(tǒng)有主機(jī)和從機(jī)兩部分。從機(jī)實(shí)現(xiàn)溫度收集功能,并將數(shù)據(jù)發(fā)送到主機(jī)。主機(jī)則將溫度儲(chǔ)存,待有非接觸式RFID卡靠近時(shí),根據(jù)按鍵指令將溫度信息從RFID卡中讀取或者將從機(jī)采集到的溫度信息寫(xiě)入RFID卡,卡中相關(guān)信息則在液晶屏顯示告知用戶。如果接收到從機(jī)采集的溫度信息超出安全范圍則提供報(bào)警功能,提示用戶溫度超過(guò)安全范圍,進(jìn)行緊急處理。
2 溫度監(jiān)測(cè)系統(tǒng)硬件系統(tǒng)設(shè)計(jì)
2.1 主機(jī)硬件系統(tǒng)模塊
主控芯片采用ATMEL公司的AT89S51。AT89S51單片機(jī)是一種具有低功耗、高性能的CMOS 8位微處理器,自帶4 KB在系統(tǒng)可編程Flash存儲(chǔ)器。合理地調(diào)配資源,以完成溫度信息接收、非接觸式IC卡的讀寫(xiě)、信息顯示與報(bào)警等功能。
射頻識(shí)別讀寫(xiě)芯片采用NXP公司的RC522。RC522利用了先進(jìn)的調(diào)制和解調(diào)概念,完全集成了在13.56 MHz下所有類(lèi)型的被動(dòng)非接觸式通信方式和協(xié)議,且支持ISO14443A的多層應(yīng)用[2]。
無(wú)線收發(fā)則采用nRF24L01。nRF24L01是工作在2.4 GHz~2.5 GHz ISM頻段的、由NORDIC生產(chǎn)的單片無(wú)線收發(fā)器芯片。輸出功率頻道的選擇和協(xié)議的設(shè)置可以通過(guò)對(duì)SPI接口寄存器的設(shè)置實(shí)現(xiàn)。它幾乎可以與各種單片機(jī)芯片連接,完成對(duì)數(shù)據(jù)的無(wú)線傳送工作[3]。
2.2 從機(jī)硬件系統(tǒng)模塊
從機(jī)主控芯片采用TI公司的MSP430G2553。MSP430系列微型處理器具有超低功耗特性,可使溫度采集節(jié)點(diǎn)長(zhǎng)時(shí)間處于工作狀態(tài)。而G2553體積小,在僅僅進(jìn)行溫度采集與數(shù)據(jù)發(fā)送工作時(shí),可以更進(jìn)一步降低功耗,同時(shí)可使溫度采集節(jié)點(diǎn)小型化。
無(wú)線收發(fā)采用nRF24L01無(wú)線芯片。溫度檢測(cè)部分采用的是DSl8B20單線數(shù)字測(cè)溫芯片,它能在現(xiàn)場(chǎng)采集溫度數(shù)據(jù),并將溫度數(shù)據(jù)直接轉(zhuǎn)換成數(shù)字量輸出。該傳感器測(cè)量溫度的范圍是-55℃~+125℃,測(cè)量精度為0.125℃。
3 軟件系統(tǒng)設(shè)計(jì)
3.1 主機(jī)軟件設(shè)計(jì)
主機(jī)系統(tǒng)流程圖如圖2所示。依次完成LCD、無(wú)線傳輸、射頻識(shí)別模塊的初始化,然后標(biāo)志位置位,示意初始化完成。
首先對(duì)液晶屏進(jìn)行初始化,接著配置無(wú)線模塊地址、主接收功能,再進(jìn)行射頻識(shí)別模塊的初始化。完成初始化后,開(kāi)始接收溫度信息,并將接收到的溫度信息在LCD上予以顯示。當(dāng)非接觸式RFID接近射頻讀寫(xiě)模塊時(shí),將卡ID與用戶ID進(jìn)行比對(duì),如果為用戶ID則提示用戶進(jìn)行按鍵操作,與此同時(shí)進(jìn)行按鍵功能查詢,用戶可選擇將溫度信息寫(xiě)入RFID卡,清除RFID卡中溫度信息、讀出RFID卡溫度信息。完成按鍵選擇后主控器執(zhí)行相應(yīng)功能,對(duì)RFID卡進(jìn)行特定操作。
射頻識(shí)別模塊的工作流程圖如圖3所示。
3.1.1 射頻識(shí)別模塊初始化
射頻識(shí)別模塊核心芯片RC522可以與所有13.56 MHz類(lèi)型的射頻卡進(jìn)行通信,支持ISO14443A協(xié)議下的的多層應(yīng)用。發(fā)送接收均集成了幀錯(cuò)誤校驗(yàn)(奇偶校驗(yàn)、CRC),其雙向數(shù)據(jù)傳輸速率高達(dá)424 kb/s,有效距離為0~10 cm[4]。
射頻識(shí)別模塊作為本系統(tǒng)的核心模塊,對(duì)其的合理操作便顯得尤為重要。第一步便是初始化RC522[5]。對(duì)CommandReg低4位置位,讓RC522進(jìn)入軟掉電模式進(jìn)行軟復(fù)位。寫(xiě)入CRC初始值。將TxControlReg配置為0x83,即配置天線TX1、TX2驅(qū)動(dòng)使能,置TxAutoReg為0x40,即將其ASK設(shè)置為100%。完成基本配置后,將天線軟啟動(dòng)。以上配置均正確完成時(shí),對(duì)應(yīng)引腳TX1、TX2之間存在載波能量信號(hào)。
3.1.2 射頻識(shí)別模塊的尋卡與防沖撞
首先確定所巡卡片狀態(tài),代碼0x52對(duì)應(yīng)尋感應(yīng)區(qū)內(nèi)所有符合14443A標(biāo)準(zhǔn)的卡[6],而代碼0x26對(duì)應(yīng)尋未進(jìn)入休眠狀態(tài)的卡,將尋卡方式寫(xiě)入RC522,則RC522進(jìn)入尋卡階段,與此同時(shí)讀取卡信息,與對(duì)應(yīng)十六進(jìn)制代碼進(jìn)行比對(duì),當(dāng)符合對(duì)應(yīng)代碼則說(shuō)明卡片已經(jīng)尋到,返回卡尋到標(biāo)志???lèi)型與其對(duì)應(yīng)的十六進(jìn)制代碼如表1所示。完成尋卡后清除所有沖撞信息。將防沖突命令字0x93寫(xiě)入卡中,讀取防沖撞信息即卡片ID號(hào)碼,確定無(wú)沖撞后,將CollReg寄存器最高位置1。
3.1.3 射頻識(shí)別模塊的選定卡片與驗(yàn)證卡密
令RC522將Mifare_One卡卡片選定命令字0x70寫(xiě)入卡中,而后將防沖撞過(guò)程中讀取到的卡片ID寫(xiě)入卡中則完成卡片的選定。接著,可進(jìn)行卡密驗(yàn)證,按照驗(yàn)證卡密模式、塊地址、密碼、卡ID的順序?qū)?duì)應(yīng)代碼依次寫(xiě)入卡中,得到成功信息則說(shuō)明卡密驗(yàn)證成功;否則可讀取Status2Reg寄存器,當(dāng)Status2Reg寄存器最高位為1時(shí),說(shuō)明卡密驗(yàn)證失敗,需重新驗(yàn)證卡密。
3.1.4 射頻識(shí)別模塊的讀寫(xiě)卡信息
讀數(shù)據(jù)只需將讀數(shù)據(jù)指令0x30、所讀取塊地址依次寫(xiě)入卡中,然后便可讀取數(shù)據(jù),數(shù)據(jù)最多只能讀取144字節(jié)。
寫(xiě)數(shù)據(jù)同樣需要將寫(xiě)數(shù)據(jù)指令0xA0、所寫(xiě)塊地址寫(xiě)入卡中。為確保數(shù)據(jù)寫(xiě)入準(zhǔn)確,需計(jì)算CRC值,分別將寫(xiě)數(shù)據(jù)指令與塊地址所計(jì)算得出的CRC的最低位和最高位作為后兩位數(shù)據(jù),將寫(xiě)數(shù)據(jù)指令、塊地址、最低位、最高位依次寫(xiě)入卡中。接著便可往卡中寫(xiě)入信息。
此時(shí)射頻讀寫(xiě)模塊對(duì)卡的操作均可實(shí)現(xiàn)。
3.2 從機(jī)軟件設(shè)計(jì)
從機(jī)軟件流程圖如圖4所示,對(duì)MSP430進(jìn)行時(shí)鐘配置、IO端口配置,對(duì)無(wú)線傳輸、溫度采集模塊進(jìn)行初始化。定時(shí)器每2 s觸發(fā)一次中斷,并在中斷中對(duì)溫度采集標(biāo)志進(jìn)行置位。等待定時(shí)器置位標(biāo)志,每2 s進(jìn)行一次溫度序列轉(zhuǎn)化。完成溫度轉(zhuǎn)換后,將數(shù)據(jù)壓入無(wú)線模塊待發(fā)送區(qū)域,完成數(shù)據(jù)發(fā)送。在等待定時(shí)器置位過(guò)程中處理器進(jìn)入低功耗模式,以降低整個(gè)模塊功耗。
4 設(shè)計(jì)實(shí)現(xiàn)結(jié)果
將測(cè)量溫度與普通溫度計(jì)示數(shù)進(jìn)行比對(duì),采用朝陽(yáng)、背陰、正常室內(nèi)3種不同環(huán)境對(duì)整個(gè)系統(tǒng)模擬運(yùn)行,記錄數(shù)據(jù)如表2所示。經(jīng)分析處理,溫度采集誤差百分比在2%以內(nèi),系統(tǒng)運(yùn)行準(zhǔn)確可靠。
5 結(jié)論
本文設(shè)計(jì)了中距離溫度實(shí)時(shí)無(wú)線監(jiān)測(cè)系統(tǒng),同時(shí)可將溫度信息在非接觸式RFID卡中進(jìn)行存儲(chǔ),測(cè)溫準(zhǔn)確可靠,提高了貨物生產(chǎn)、運(yùn)輸過(guò)程中溫度信息的透明度。本系統(tǒng)可應(yīng)用于貨物生產(chǎn)、運(yùn)輸過(guò)程,實(shí)時(shí)監(jiān)控生產(chǎn)、運(yùn)輸環(huán)節(jié)溫度情況,將溫度情況實(shí)時(shí)告知管理人員,使得生產(chǎn)運(yùn)輸過(guò)程中的溫度在安全溫度范圍之內(nèi)。
參考文獻(xiàn)
[1] 梁瑜.基于SWOT分析的我國(guó)發(fā)展冷鏈物流研究[J].物流科技,2010(2):75-76.
[2] 單瑩,劉旭儒,史儀凱.非接觸式13.56 MHz讀卡器的設(shè)計(jì)[J].工業(yè)儀表與自動(dòng)化裝置,2010(3):27-29.
[3] 張永宏,曹健,王麗華.基于51單片機(jī)與nRF24L01無(wú)線門(mén)禁控制系統(tǒng)設(shè)計(jì)[J].江蘇科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2013(1):63-69.
[4] 趙東艷,符令,胡毅,等.一種13.56 MHz射頻標(biāo)簽仿真模型的設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2013,32(16):26-30.
[5] 魏登峰,田華.基于ARM的嵌入式RIFD讀寫(xiě)器設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009,25(5-2):190-201.
[6] 沈冬青.RFID射頻識(shí)別技術(shù)標(biāo)準(zhǔn)解析及現(xiàn)狀研究[J].中國(guó)安防,2011(4):37-40.