張明虎, 張 暐, 殷 欣, 屈 展
(1.甘肅廣播電視大學(xué)資源中心,甘肅 蘭州 730030;2.國網(wǎng)甘肅省電力公司信息通信公司,甘肅 蘭州 730030; 03.甘肅省輕工研究院,甘肅 蘭州 730030;4.甘肅廣播電視大學(xué)理工學(xué)院,甘肅 蘭州 730030)
RFID手持設(shè)備追溯管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
張明虎1, 張 暐2, 殷 欣3, 屈 展4
(1.甘肅廣播電視大學(xué)資源中心,甘肅 蘭州 730030;2.國網(wǎng)甘肅省電力公司信息通信公司,甘肅 蘭州 730030; 03.甘肅省輕工研究院,甘肅 蘭州 730030;4.甘肅廣播電視大學(xué)理工學(xué)院,甘肅 蘭州 730030)
針對射頻識別技術(shù)(RFID)在追溯方面具有工作場景復(fù)雜、標(biāo)簽識別效率和準(zhǔn)確率高、同步數(shù)據(jù)并發(fā)量大、全生命周期溯源等特點(diǎn),提出了基于高可靠性的數(shù)據(jù)通信協(xié)議和多標(biāo)簽防碰撞算法的安全追溯系統(tǒng)。該追溯系統(tǒng)以WinCE5.0手持設(shè)備為平臺(tái),引入了RFID技術(shù),進(jìn)行產(chǎn)品全生命周期信息的可視化分析和用戶交互式操作。實(shí)測結(jié)果驗(yàn)證了復(fù)雜環(huán)境下RFID全生命周期防偽追溯系統(tǒng)方案的可行性,表明了采用RFID技術(shù)的防偽追溯系統(tǒng)將成為行業(yè)發(fā)展方向。
食品安全;RFID技術(shù); 數(shù)據(jù)通信; 遠(yuǎn)程數(shù)據(jù)庫; 倉儲(chǔ)管理系統(tǒng)
近年來,食品安全問題嚴(yán)重威脅著社會(huì)穩(wěn)定和消費(fèi)者健康,已成為社會(huì)關(guān)注的焦點(diǎn)話題。美國、法國等一些發(fā)達(dá)國家的食品監(jiān)管部門幾乎控制了從農(nóng)田到餐桌的食品生產(chǎn)、加工、流通等全過程;而我國的食品監(jiān)管部門雖屢次提及食品跟蹤追溯體系建設(shè),為每個(gè)食品企業(yè)建設(shè)一個(gè)食品全生命周期跟蹤追溯管理體系,但其應(yīng)用目前尚處于萌芽階段[1-4]。
在食品安全追溯方面,文獻(xiàn)[2]以基于二維碼的綠色食品追溯為研究方向,采用二維碼技術(shù)構(gòu)建了綠色食品溯源體系平臺(tái),實(shí)現(xiàn)了食品信息的獲取、食品質(zhì)量的預(yù)判和食品指標(biāo)的監(jiān)管;文獻(xiàn)[3]分析了國內(nèi)外采用二維碼技術(shù)實(shí)現(xiàn)各類農(nóng)副產(chǎn)品安全追溯系統(tǒng)的現(xiàn)狀,在深入研究和分析二維碼的技術(shù)特征后,提出了以二維碼技術(shù)作為農(nóng)副產(chǎn)品安全追溯手段中可能存在的問題;文獻(xiàn)[4]對二維碼在食品追溯方面存在的缺陷進(jìn)行了研究,采用了非對稱密碼算法,設(shè)計(jì)了基于RSA數(shù)字簽名和二維碼技術(shù)相結(jié)合的追溯平臺(tái)。
射頻識別技術(shù)(radiofrequencyidentifiration,RFID)是一種利用射頻信號實(shí)現(xiàn)非接觸式信息傳送的技術(shù),與傳統(tǒng)的二維碼、普通一位條形碼技術(shù)相比,RFID技術(shù)具有信息讀取距離長、信息更新快、安全系數(shù)高等優(yōu)勢。
本文結(jié)合RFID技術(shù)的智能性、移動(dòng)性、便捷性等優(yōu)點(diǎn),開發(fā)和設(shè)計(jì)了一套應(yīng)用于輔助生產(chǎn)線管理和倉儲(chǔ)管理、以基于RFID技術(shù)和多重加密[5-6]為編碼方式的手持設(shè)備防偽追溯管理端系統(tǒng)。手持設(shè)備防偽追溯管理系統(tǒng)運(yùn)行于手持設(shè)備上,通過WiFi連接遠(yuǎn)程數(shù)據(jù)庫,完成與數(shù)據(jù)庫的相關(guān)操作;通過手持式RFID讀寫器,完成RFID標(biāo)簽數(shù)據(jù)讀寫功能。系統(tǒng)的主要功能是配合生產(chǎn)線管理與倉庫管理,高效可靠完成產(chǎn)品的在線掃碼、批量出入庫管理和終端查驗(yàn)。
本文所設(shè)計(jì)的手持設(shè)備追溯管理系統(tǒng)運(yùn)行在WinCE平臺(tái),采用微軟基礎(chǔ)類庫(microsoftfoundationclasses,MFC)設(shè)計(jì)。用戶通過界面按鈕觸發(fā)對應(yīng)的響應(yīng)函數(shù),進(jìn)入相應(yīng)界面完成操作。手持設(shè)備管理系統(tǒng)采用兩層架構(gòu)模型設(shè)計(jì)[7]。整個(gè)業(yè)務(wù)應(yīng)用劃分為業(yè)務(wù)功能層和數(shù)據(jù)適配層。
系統(tǒng)總體架構(gòu)如圖 1所示。
圖1 系統(tǒng)總體框架圖
1.1 業(yè)務(wù)功能層
在手持設(shè)備管理系統(tǒng)業(yè)務(wù)功能層中,向用戶管理業(yè)務(wù)發(fā)出手持設(shè)備業(yè)務(wù)處理的請求。管理業(yè)務(wù)包括用戶的管理、系統(tǒng)參數(shù)配置的管理以及日志的管理。 手持設(shè)備業(yè)務(wù)包括標(biāo)簽賦碼、裝箱檢查、入庫關(guān)聯(lián)、出庫關(guān)聯(lián)、終端查驗(yàn)、單瓶入庫、單瓶出庫操作。
1.2 數(shù)據(jù)適配層
數(shù)據(jù)適配層設(shè)計(jì)用于與代理服務(wù)器或本地配置文件、日志文件等進(jìn)行交互,實(shí)現(xiàn)文件記錄的增加、刪除、修改、查詢等操作。
手持設(shè)備數(shù)據(jù)適配層的主要功能包括硬件操作、與代理服務(wù)器的網(wǎng)絡(luò)通信操作、本地配置文件操作、日志文件操作。
2.1 數(shù)據(jù)庫訪問
手持設(shè)備管理系統(tǒng)需要訪問數(shù)據(jù)庫,對數(shù)據(jù)庫中的信息進(jìn)行增、刪、改、查等操作,然而手持設(shè)備管理系統(tǒng)運(yùn)行在WinCE5.0平臺(tái),WinCE平臺(tái)不支持對數(shù)據(jù)庫的直接訪問操作,因此需要在桌面端建立一個(gè)代理服務(wù)器。通過手持設(shè)備與代理服務(wù)器的通信,采用WiFi將手持設(shè)備需要對數(shù)據(jù)庫的操作(SQL語句)發(fā)送至代理服務(wù)器,由代理服務(wù)器訪問數(shù)據(jù)庫,執(zhí)行相應(yīng)的操作,并將操作結(jié)果返回至手持設(shè)備。數(shù)據(jù)庫訪問示意圖如圖2所示。
圖2 數(shù)據(jù)庫訪問示意圖
數(shù)據(jù)庫操作結(jié)構(gòu)如圖3所示。數(shù)據(jù)庫操作由DBAdapter接口封裝。DBAdapter接口通過系統(tǒng)配置文件中的數(shù)據(jù)庫連接字符串來連接數(shù)據(jù)庫。對數(shù)據(jù)庫的操作主要由SQLAccessTier類實(shí)現(xiàn),由DBHelper類封裝,并提供調(diào)用接口。
圖3 數(shù)據(jù)庫操作結(jié)構(gòu)圖
2.2 網(wǎng)絡(luò)通信
根據(jù)用戶在賦碼界面選擇的各種產(chǎn)品標(biāo)簽信息,構(gòu)造新的產(chǎn)品標(biāo)簽EPC,并將新的EPC寫入標(biāo)簽。接著調(diào)用網(wǎng)絡(luò)通信類,將標(biāo)簽的TID和新的EPC關(guān)聯(lián)信息發(fā)送至代理服務(wù)器,代理服務(wù)器更新數(shù)據(jù)庫中的產(chǎn)品信息表。
本文將所有手持設(shè)備與代理服務(wù)器通信操作封裝成一個(gè)網(wǎng)絡(luò)輔助類(CNetHelper),為業(yè)務(wù)功能層提供接口,完成數(shù)據(jù)的發(fā)送與接收功能。
網(wǎng)絡(luò)通信類封裝了WinSock中的相應(yīng)操作,包括連接服務(wù)器、發(fā)送和接收數(shù)據(jù)等。連接服務(wù)器時(shí),采用的IP地址和端口號為登陸界面設(shè)置的IP地址和端口號。
①ReportNetErr(intnErrCode,CStringstrErrMsg)函數(shù)用來報(bào)告通信中的錯(cuò)誤。
②ConnectServer(SOCKET&sk,CStringstrIP,intnPort,intnSendTimeout=-1,intnRecvTimeout=-1)函數(shù)用來連接代理服務(wù)器。
③SendAndRecv(SOCKET&sk,CStringstrSend)函數(shù)用來發(fā)送和接收數(shù)據(jù),函數(shù)傳入的strSend為手持設(shè)備發(fā)送給代理服務(wù)器的信息,函數(shù)返回為接收的消息。
④Send(SOCKET&sk,CStringstrSend)函數(shù)用來向代理服務(wù)器發(fā)送消息。
⑤DisConnect(SOCKET&sk)函數(shù)用來斷開代理服務(wù)器的連接。
手持設(shè)備與代理服務(wù)器的部分接口通信協(xié)議如表1所示。
表1 部分接口通信協(xié)議
3.1 多標(biāo)簽防碰撞技術(shù)
目前,RFID防碰撞算法主要采用基于時(shí)分多址的確定性算法和概率性算法。本文采用基于二進(jìn)制樹搜索算法的確定性算法[8-11]。二進(jìn)制樹搜索算法相對較復(fù)雜,但標(biāo)簽識別正確率較高、穩(wěn)定性強(qiáng),且算法實(shí)現(xiàn)目標(biāo)是縮短標(biāo)簽識別延遲時(shí)間和降低標(biāo)簽碰撞率。在生產(chǎn)線和倉儲(chǔ)管理中多標(biāo)簽的情況下,該算法的優(yōu)勢更加明顯。
假設(shè)在手持設(shè)備讀寫操作的有效范圍內(nèi)有6個(gè)產(chǎn)品標(biāo)簽,各標(biāo)簽ID序列如下。
A:01000100
B:01100000
C:01010000
D:01101000
E:00110001
F:00011000
RFID產(chǎn)品標(biāo)簽防碰撞實(shí)現(xiàn)過程主要有以下4個(gè)步驟。
①手持設(shè)備發(fā)出Request讀寫請求,其作用范圍內(nèi)的所有標(biāo)簽作出響應(yīng),讀寫器讀取響應(yīng)標(biāo)簽ID。
②手持設(shè)備對所讀取的標(biāo)簽ID解碼,經(jīng)過曼徹斯特編碼譯碼得到(01X0X0X0),讀寫器發(fā)出Request(01101010,0)指令標(biāo)簽,鎖定ID序列的第 1、3、5 位。鎖定最高位為 0 的標(biāo)簽響應(yīng)該指令,即標(biāo)簽B、D響應(yīng),并把標(biāo)簽序列傳送給手持設(shè)備。
③手持設(shè)備對編碼序列編碼解碼為(0110X000),讀寫器發(fā)出Request(0,0),指令標(biāo)簽鎖定ID序列的第3位。同理鎖定最高位為 0 的標(biāo)簽響應(yīng)該指令,即標(biāo)簽B直接被識別,沒有發(fā)生碰撞。
④手持設(shè)備對標(biāo)簽B完成讀寫操作。整個(gè)識別過程結(jié)束。
本文在多標(biāo)簽工作環(huán)境下,采用基于時(shí)分多址的確定性算法,有效提高了產(chǎn)品標(biāo)簽的識別率、準(zhǔn)確率和標(biāo)簽讀寫速度。
3.2 標(biāo)簽賦碼技術(shù)
手持設(shè)備賦碼技術(shù)也是手持設(shè)備追溯系統(tǒng)的關(guān)鍵技術(shù),用戶可以選擇待賦碼的標(biāo)簽類別,包括產(chǎn)品標(biāo)簽、箱體標(biāo)簽、托盤標(biāo)簽。若待賦碼標(biāo)簽為產(chǎn)品標(biāo)簽,具體的賦值數(shù)據(jù)由用戶界面輸入。用戶通過對標(biāo)簽進(jìn)行掃描,讀取標(biāo)簽的TID和EPC信息,最后對標(biāo)簽進(jìn)行賦碼操作,更新數(shù)據(jù)庫中產(chǎn)品信息。
標(biāo)簽賦碼過程主要分為以下3個(gè)步驟。
①選擇待賦碼的標(biāo)簽類型,若為產(chǎn)品標(biāo)簽,需要從數(shù)據(jù)庫獲取產(chǎn)品標(biāo)簽的參數(shù),并選擇待賦碼的產(chǎn)品參數(shù)。
②掃描待賦碼標(biāo)簽,即讀取標(biāo)簽的TID和EPC信息,根據(jù)選擇的參數(shù)構(gòu)造新EPC。
③根據(jù)用戶在賦碼界面選擇的產(chǎn)品標(biāo)簽各種信息,構(gòu)造新的產(chǎn)品標(biāo)簽EPC,將新的EPC寫入標(biāo)簽。接著調(diào)用網(wǎng)絡(luò)通信類將標(biāo)簽的TID和新的EPC關(guān)聯(lián)信息發(fā)送至代理服務(wù)器;代理服務(wù)器更新數(shù)據(jù)庫中的產(chǎn)品信息表。
賦碼操作,即將新構(gòu)造的EPC寫入標(biāo)簽的EPC區(qū),并更新數(shù)據(jù)庫。
3.3 出入庫關(guān)聯(lián)技術(shù)
產(chǎn)品出入庫關(guān)聯(lián)用于實(shí)現(xiàn)箱體標(biāo)簽和托盤標(biāo)簽之間的關(guān)聯(lián),通過手持設(shè)備讀取箱體標(biāo)簽信息,然后將此箱體放入叉車中。當(dāng)此過程結(jié)束后,將手持設(shè)備中讀取的箱體信息與叉車關(guān)聯(lián),以便入庫。
產(chǎn)品出入庫流程如圖4所示。
圖4 產(chǎn)品出入庫流程圖
3.4 終端查驗(yàn)
終端查驗(yàn)是追溯系統(tǒng)的具體體現(xiàn)。該功能是通過掃描產(chǎn)品標(biāo)簽,獲取產(chǎn)品標(biāo)簽中的信息,從而判斷產(chǎn)品的真?zhèn)巍T诰€查驗(yàn)實(shí)時(shí)從數(shù)據(jù)庫獲取相應(yīng)產(chǎn)品標(biāo)簽的所有參數(shù)信息。用戶選擇在線登錄模式進(jìn)入主功能界面,選擇終端查驗(yàn)功能,進(jìn)入終端查驗(yàn)界面。
終端查驗(yàn)時(shí),掃描標(biāo)簽,觸發(fā)OnBnClickedButtonScan()響應(yīng)函數(shù),調(diào)用CSDKHelper類中的ReadTagNoInf(CTag&tag,EnumTagTypetagType)讀取標(biāo)簽信息,返回一個(gè)CTag類對象m_tag,利用CTag類中的GetTID()和GetEPC()函數(shù),獲取返回m_tag對象的TID和EPC;利用SetDlgItemText()函數(shù),在終端查驗(yàn)頂端EditControl控件中顯示TID和EPC。
解析并顯示相關(guān)信息,根據(jù)返回的m_tag,調(diào)用CTag類中的GetTagType()函數(shù)獲取返回對象的標(biāo)簽類型。若為未知標(biāo)簽、箱體標(biāo)簽或托盤標(biāo)簽,則給出提示,不能正確解析標(biāo)簽信息;若為產(chǎn)品標(biāo)簽,則調(diào)用CDlgBottleInOutDB類中的GetNameFromID(intnID,CList
本文采用多標(biāo)簽防碰撞算法等多項(xiàng)關(guān)鍵技術(shù),設(shè)計(jì)和實(shí)現(xiàn)了應(yīng)用在食品安全防偽追溯的手持設(shè)備追溯管理系統(tǒng)。系統(tǒng)實(shí)際應(yīng)用在基于WinCE5.0平臺(tái)的智能設(shè)備,主要實(shí)現(xiàn)平臺(tái)與生產(chǎn)線管理系統(tǒng)、倉儲(chǔ)管理系統(tǒng)的遠(yuǎn)程訪問及數(shù)據(jù)交互功能。
本文設(shè)計(jì)和實(shí)現(xiàn)的基于RFID技術(shù)的手持設(shè)備追溯管理系統(tǒng),采用基于多標(biāo)簽碰撞算法的防碰撞解決辦法;提出和設(shè)計(jì)的通信編碼協(xié)議,采用RFID標(biāo)簽,對食品從生產(chǎn)、加工、倉儲(chǔ)、運(yùn)輸、銷售等全生命周期進(jìn)行跟蹤追溯。
基于RFID技術(shù)的手持設(shè)備追溯管理系統(tǒng)已應(yīng)用于生產(chǎn)線管理、倉儲(chǔ)管理、終端查驗(yàn)等過程。應(yīng)用結(jié)果表明,該手持設(shè)備防偽追溯管理系統(tǒng)具有架構(gòu)簡潔、易于操作、維護(hù)和升級便捷、可攜帶、可擴(kuò)展及低成本等優(yōu)點(diǎn),有很強(qiáng)的實(shí)用價(jià)值和應(yīng)用推廣價(jià)值。
[1] 顏波,石平,黃廣文.基于RFID和EPC物聯(lián)網(wǎng)的水產(chǎn)品供應(yīng)鏈可追溯平臺(tái)開發(fā)[J].農(nóng)業(yè)工程學(xué)報(bào),2013,29(15):172-183.
[2] 施連敏,郭翠珍,蓋之華,等.基于二維碼的綠色食品溯源系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].制造業(yè)自動(dòng)化,2013,35(8):144-146.
[3] 蘭龍輝,邱榮祖.二維碼技術(shù)在農(nóng)產(chǎn)品物流追溯系統(tǒng)中的應(yīng)用[J].物流技術(shù),2013,231(35):86-89.
[4] 林涌,盧江海,姚軍.基于RSA數(shù)字簽名的二維碼檢驗(yàn)報(bào)告防偽平臺(tái)構(gòu)建[J].質(zhì)量技術(shù)監(jiān)督研究,2015,40(4):55-57.
[5]SAMIHAHA,WIDADI,ZAINIA,etal.InvestigatingtheeffectsofconveyorspeedandproductorientationontheperformanceofwirelessRFIDsysteminproductionlineusingfactorialdesign[C]//ScienceandInformationConference,2015:28-30.
[6] 宋瑞玲,高仲合.RFID防碰撞算法研究[J].計(jì)算機(jī)工程與應(yīng)用,2015,51(16):82-102.
[7] 楊斐,黃軍,陸垂偉.卷煙物流管理中超高頻RFID防碰撞技術(shù)研究[J].物聯(lián)網(wǎng)技術(shù),2015(1):22-24.
[8] 潘昊,陳蒙.物聯(lián)網(wǎng)中無線射頻識別讀寫器系統(tǒng)防碰撞算法優(yōu)化[J].計(jì)算機(jī)應(yīng)用,2015,35(1):23-26,30.
[9] 杜宗印,章國安,袁紅林,等.基于漢明重分組的動(dòng)態(tài)幀時(shí)隙ALOHA防碰撞算法[J].計(jì)算機(jī)應(yīng)用研究,2015,32(5):1464-1466.
[10]韋冬雪,鄭嘉利,黃慶歡,等.基于搜索樹的增強(qiáng)型RFID防碰撞算法[J].計(jì)算機(jī)應(yīng)用與軟件,2015,32(11):226-231.
[11]曹潔,馬飛.一種優(yōu)化編碼的二進(jìn)制搜索RFID防碰撞算法研究[J].計(jì)算機(jī)應(yīng)用與軟件,2015,32(6):283-287.
DesignandImplementationoftheRFIDTraceabilityManagementSystemforHand-HeldDevices
ZHANGMinghu1,ZHANGWei2,YINXin3,QUZhan4
(1.TeachingGuidanceCenter,GansuRadioandTelevisionUniversity,Lanzhou730030,China;2.InformationandCommunicationCompanyofGansuProvinceElectricCorporationofStateGrid,Lanzhou730030,China;3.TheInstituteofGansuProvinceLightIndustrialScientificResearch,Lanzhou730030,China;4.InstituteofScienceandTechnology,GansuRadioandTelevisionUniversity,Lanzhou730030,China)
Inaccordancewiththecharacteristicsofradiofrequencyidentifiration(RFID)inaspectoftraceability,thatincludingcomplicatedworkingscene,highefficiencyandaccuracyfortagidentification,largesynchronousdataconcurrency,andtracingoriginofwholelifecycle,etc.,andconsideringtheunificationmanagementofthetracingsystemforsynchronizedsupporttotheproductionlineandwarehousing,andfulfillingwholelifecycleperiodicityandhighreliabilityofthesystem,asystemforsafetytraceabilityisproposedbasedonhighlyreliabledatacommunicationprotocolsandmultipletaganti-collisionalgorithm.ThetraceabilitysystemadoptsWinCE5.0handhelddevicesasaplatform,inputstheRFIDtechnology,toimplementvisualizationanalysisanduserinteractiveoperationforwholelifecycleinformation.MeasuredresultsverifythefeasibilityoftheRFIDwholelifecycleanti-counterfeitingtraceabilitysystemundercomplicatedenvironment,andshowthatusingRFIDtechnologywillbecomethedevelopingdirectionforanti-counterfeitingtraceabilitysystems.
Foodsafety;RFIDtechnology;Datacommunication;Remotedatabase;Warehousemangementsystem
張明虎(1986—),男,碩士,講師,主要從事物聯(lián)網(wǎng)技術(shù)、嵌入式系統(tǒng)控制技術(shù)和數(shù)據(jù)采集與大數(shù)據(jù)應(yīng)用的分析和研究工作。E-mail:zmx396065442@163.com。
TH7;TP
ADOI: 10686/j.cnki.issn1000-0380.201701014
修改稿收到日期:2016-05-10