• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于輪詢機(jī)制的RFID讀卡系統(tǒng)的設(shè)計與實(shí)現(xiàn)

      2012-08-01 10:51:14胡文藝曾維周闞璦珂
      關(guān)鍵詞:讀卡輪詢讀卡器

      胡文藝 曾維周 闞璦珂

      (成都理工大學(xué) 信息科學(xué)與技術(shù)學(xué)院,成都610059)

      RFID讀卡系統(tǒng)(以下簡稱讀卡系統(tǒng))在人員定位、搜救和管理等方面具有廣泛的應(yīng)用。讀卡系統(tǒng),是一種針對RFID射頻識別(radio frequency identification)的技術(shù)。RFID讀卡器(以下簡稱讀卡器)通過獲取主動式RFID卡發(fā)射的射頻信號,在不需要人工干預(yù)的情況下,通過讀卡器對攜帶RFID卡的人員進(jìn)行信息采集,并把所采集的數(shù)據(jù)信息存儲到相應(yīng)的數(shù)據(jù)庫表中,從而實(shí)現(xiàn)對人員的監(jiān)測定位[1-3]。由于讀卡器的有效讀卡范圍在50m左右,為了提高人員定位精度,讀卡系統(tǒng)需要在監(jiān)控區(qū)域內(nèi)設(shè)置多臺讀卡器。如何有效地對多臺讀卡器進(jìn)行管理,保證獲取每一臺讀卡器讀取的數(shù)據(jù),是讀卡系統(tǒng)設(shè)計時需要考慮的問題。由于本文所設(shè)計的系統(tǒng)采用的讀卡器具有同時讀取范圍內(nèi)所有卡的技術(shù)特點(diǎn),不需要采用RFID卡防碰撞算法[4];因此,本文采用輪詢機(jī)制,通過設(shè)定固定時間間隔,分別讀取每一臺RFID讀卡器設(shè)備,實(shí)現(xiàn)對數(shù)據(jù)的完整獲取。

      1 串口輪詢技術(shù)

      串口輪詢是以基站為終端分配指令的一種處理流程,這種分配可以是針對單個終端或是一組終端的[5]。為單個終端和一組終端連接分配指令,定義指令請求競爭機(jī)制,這種分配不是使用一個單獨(dú)的消息,而是上行鏈路映射消息中包含的一系列分配機(jī)制[6]。在使用多臺讀卡器設(shè)備時,采用輪詢技術(shù)確保每臺讀卡器和系統(tǒng)之間數(shù)據(jù)通信的完整性。如圖1所示,系統(tǒng)首先取得設(shè)備1的地址,發(fā)送命令包獲得數(shù)據(jù)后,取得設(shè)備2的地址發(fā)送命令;按照此順序?qū)?臺讀卡器進(jìn)行遞歸操作,每一個讀卡器傳輸數(shù)據(jù)提供固定的間隔時間,然后再讀取下一臺設(shè)備。

      圖1 串口輪詢流程Fig.1 Serial polling process

      在本系統(tǒng)中,共使用了4臺讀卡器。為了保證數(shù)據(jù)包在傳輸?shù)倪^程中有充足的時間,經(jīng)過實(shí)驗(yàn)后得出每次輪詢時間間隔需要5s。讀卡器通過RS232串口與計算機(jī)進(jìn)行通信,讀卡系統(tǒng)通過上行和下行命令獲取數(shù)據(jù)包中的命令來判斷該數(shù)據(jù)包的類型,并針對該類型數(shù)據(jù)包進(jìn)行相應(yīng)操作,表1為RFID讀卡器數(shù)據(jù)包定義。

      表1 RFID讀卡器數(shù)據(jù)包定義Table 1 Definition of RFID reader packet

      2 系統(tǒng)設(shè)計

      2.1 系統(tǒng)框架

      系統(tǒng)包括RFID卡配置模塊和RFID卡消息輪詢查看模塊兩部分,均采用C/S模式架構(gòu)設(shè)計。兩部分模塊均對RFID卡數(shù)據(jù)進(jìn)行處理,RFID配置模塊實(shí)現(xiàn)對RFID卡數(shù)據(jù)的修改功能,RFID卡消息輪詢查看模塊實(shí)現(xiàn)對RFID卡數(shù)據(jù)的讀取功能。通過3G網(wǎng)絡(luò),兩模塊將數(shù)據(jù)記錄存入數(shù)據(jù)庫服務(wù)器中,用戶可以利用數(shù)據(jù)庫服務(wù)器中數(shù)據(jù)進(jìn)一步系統(tǒng)開發(fā),或者通過對兩模塊數(shù)據(jù)進(jìn)行匹配,實(shí)時進(jìn)行人員監(jiān)控,如圖2所示。

      RFID卡配置模塊,利用身份證讀卡器讀取身份證的ID號碼,再采用RFID配置器錄入RFID卡中,并將該RFID卡號與對應(yīng)的身份證ID記錄寫入數(shù)據(jù)庫中。身份證錄入RFID卡功能的實(shí)現(xiàn)是基于身份證閱讀器設(shè)備SDK的二次開發(fā),RFID配置器部分使用WINDOWS API,從底層讀取COM端口設(shè)備,并完成數(shù)據(jù)讀取和寫入功能。

      RFID卡消息輪詢查看模塊,讀卡器所采集的數(shù)據(jù)通過iNET網(wǎng)絡(luò)數(shù)傳電臺傳到服務(wù)器;RFID卡消息輪詢查看模塊讀取和解譯傳回的數(shù)據(jù),獲得各個讀卡器所讀取的RFID卡號,并將記錄保存至數(shù)據(jù)庫中。該功能模塊采用 WINDOWS API技術(shù)從底層讀取COM端口設(shè)備。由于iNET網(wǎng)絡(luò)數(shù)傳電臺基于黑盒原理設(shè)計工作模式,因此在讀取讀卡器數(shù)據(jù)時,直接使用COM口輪詢技術(shù),建立設(shè)備查詢和設(shè)備數(shù)據(jù)獲取線程,設(shè)置定時器按固定時間間隔刷新讀卡器地址,保證軟件可以分別獲取不同讀卡器讀取的數(shù)據(jù)。

      2.2 數(shù)據(jù)庫設(shè)計

      基于C/S模式的RFID、旅游人員監(jiān)控系統(tǒng)需要將RFID卡配置記錄和RFID卡輪詢記錄存入數(shù)據(jù)庫。根據(jù)系統(tǒng)功能設(shè)計需要,數(shù)據(jù)庫邏輯結(jié)構(gòu)包括RFID配置記錄數(shù)據(jù)庫表和RFID輪詢記錄數(shù)據(jù)庫表。RFID配置數(shù)據(jù)庫表(表2)主要包括記錄號、RFID卡配置記錄時身份證ID號及對應(yīng)RFID卡號和記錄時間戳。RFID卡輪詢記錄數(shù)據(jù)庫表(表3)主要包括記錄號、讀卡器編號、RFID卡的編號和記錄時間戳。

      圖2 基于C/S模式的RFID讀卡系統(tǒng)框架Fig.2 The framework of RFID reader system based on C/S mode

      表2 RFID配置記錄數(shù)據(jù)庫表Table 2 Database table of RFID configurator record

      表3 RFID輪詢記錄數(shù)據(jù)庫表Table 3 Database table of RFID polling record

      3 系統(tǒng)實(shí)現(xiàn)

      系統(tǒng)以Visual Studio C++6.0為開發(fā)語言,使用OLDB方式提供 MS SQL Server 2005數(shù)據(jù)庫操作功能,采用WINDOWS API和CSerialPort類庫來實(shí)現(xiàn)通過COM端口與RFID讀卡器、RFID配置器和身份證閱讀器的通信。讀卡器和RFID卡配置器硬件設(shè)備廠家提供了串口通信數(shù)據(jù)協(xié)議,如表4、表5所示。通信過程上行和下行的數(shù)據(jù)包根據(jù)其命令,可以對數(shù)據(jù)執(zhí)行相應(yīng)的操作,并存入數(shù)據(jù)庫中。

      3.1 RFID卡配置

      RFID卡配置模塊業(yè)務(wù)流程包括2部分,完成身份證號碼讀取和配置RFID卡寫入身份證信息,并將對應(yīng)記錄寫入數(shù)據(jù)庫中。這2部分業(yè)務(wù)過程使用了身份證閱讀器和RFID卡配置器2種不同的硬件設(shè)備,因此,獨(dú)立設(shè)計2個業(yè)務(wù)流程,確保軟件的低耦合性。設(shè)計界面如圖3所示。

      表4 RFID卡閱讀器讀取緩沖區(qū)數(shù)據(jù)協(xié)議Table 4 RFID card reader reads data protocol of buffer

      表5 RFID卡配置器設(shè)置存儲數(shù)據(jù)信息數(shù)據(jù)協(xié)議Table 5 RFID card configurator sets data protocol of stored data information

      圖3 RFID卡配置模塊界面Fig.3 Module interface of RFID card configurator

      3.1.1 身份證號碼讀取

      身份證號碼讀取是通過COM端口讀取身份證讀卡器設(shè)備的數(shù)據(jù),取得身份證號碼并保存,用于配置RFID卡數(shù)據(jù)操作。身份證號碼讀取工作流程(圖4)首先需初始化身份證閱讀器設(shè)備,再通過COM端口用SDK開發(fā)包提供的連接函數(shù)連接身份證閱讀器設(shè)備;連接完成之后調(diào)用SDK開發(fā)包的讀取數(shù)據(jù)函數(shù),將身份證的ID卡號數(shù)據(jù)讀出并傳回。

      圖4 身份證號碼讀取工作流程Fig.4 The workflow of reading ID number

      在開發(fā)過程中采用全局變量m_strIDNum保存數(shù)據(jù)庫并寫入RFID卡中,身份證閱讀器對身份證號碼的讀取代碼如下:

      3.1.2 配置RFID卡數(shù)據(jù)

      利用RFID配置器,將身份證號碼寫入RFID卡中。該功能同時將身份證的ID號碼和RFID卡的編號信息存入數(shù)據(jù)庫,實(shí)現(xiàn)該模塊與RFID卡消息輪詢查看模塊的數(shù)據(jù)交換。

      如圖5所示,該功能使用CSerialPort類庫提供的COM端口通信函數(shù)尋找RFID配置器,完成之后啟動數(shù)據(jù)接收線程,獲取從RFID配置器取得的數(shù)據(jù)。根據(jù)廠家提供的數(shù)據(jù)包命令協(xié)議,將身份證閱讀器獲得的身份證號碼載入數(shù)據(jù)包中寫入RFID卡,并將匹配的數(shù)據(jù)記錄存入數(shù)據(jù)庫服務(wù)器中。身份證號碼寫入RFID卡中代碼如下:

      3.2 RFID卡消息輪詢查看

      RFID卡消息輪詢查看是利用RFID卡主動射頻信號,由RFID讀卡器進(jìn)行讀取,并將數(shù)據(jù)顯示并保存至數(shù)據(jù)庫服務(wù)器中。本系統(tǒng)一共使用了4臺RFID讀卡器,采用輪詢機(jī)制對4臺設(shè)備分別進(jìn)行遞歸訪問,獲得不同RFID讀卡器的數(shù)據(jù),將讀獲的RFID卡編號顯示并存入數(shù)據(jù)庫中,界面如圖6所示。

      圖5 RFID卡配置器工作流程Fig.5 The workflow of RFID card configurator

      圖6 RFID卡消息輪詢查看模塊界面Fig.6 Module interface of RFID card message polling view

      由于數(shù)據(jù)傳輸延時,必須確定有效的時間間隔,以保證每臺設(shè)備的數(shù)據(jù)都能夠完整獲得。通過實(shí)驗(yàn)驗(yàn)證,在本系統(tǒng)中設(shè)定定時器時間間隔為5s,可以達(dá)到設(shè)計目的。

      本系統(tǒng)使用CSerialPort類庫提供的COM端口通信函數(shù)尋找iNET數(shù)傳電臺端口,成功后啟動數(shù)據(jù)接收線程,模塊每隔5s修改發(fā)送命令的硬件地址,通過iNET數(shù)傳電臺分別按相同的時間間隔讀取4臺讀卡器中的數(shù)據(jù)。通過4臺讀卡器發(fā)送讀取RFID卡的命令,獲取下行數(shù)據(jù)包后,模塊將數(shù)據(jù)包中的數(shù)據(jù)存入隊列變量中,通過讀卡器硬件廠家提供的協(xié)議,獲取每一個RFID卡的編號并和讀取數(shù)據(jù)的讀卡器編號一起記錄顯示并存入數(shù)據(jù)庫中。具體流程如圖7所示。

      圖7 RFID卡消息輪詢查看工作流程Fig.7 The workflow of RFID card message polling view

      實(shí)現(xiàn)獲取RFID讀卡器取得的數(shù)據(jù)代碼如下:

      4 結(jié)論

      基于輪詢機(jī)制的RFID讀卡系統(tǒng),通過設(shè)定固定的時間間隔作為輪詢機(jī)制基礎(chǔ),遞歸讀取各臺RFID讀卡器數(shù)據(jù)。與采用防碰撞算法的輪詢機(jī)制相比,本方法由于在具體的項(xiàng)目實(shí)施中讀卡器的分布距離較遠(yuǎn),不存在讀卡器沖突;RFID卡可以同時讀取,不需要考慮RFID卡編號沖突,可以完整地獲取RFID卡數(shù)據(jù),并通過對程序內(nèi)存的有效管理,保證了系統(tǒng)在遞歸讀取數(shù)據(jù)時的穩(wěn)定性,也避免了出現(xiàn)內(nèi)存溢出導(dǎo)致系統(tǒng)崩潰。本系統(tǒng)通過RFID讀卡器數(shù)據(jù)記錄與RFID卡配置模塊的數(shù)據(jù)記錄進(jìn)行匹配,可以實(shí)時獲取人員所在位置,實(shí)現(xiàn)人員的定位和管理。

      [1]孫歆鈺.基于RFID技術(shù)的人員定位系統(tǒng)研究設(shè)計[J].制造業(yè)自動化,2011,33(5):31-33.

      [2]葉晨成,校景中,肖麗.基于RFID的井下人員定位系統(tǒng)[J].武漢理工大學(xué)學(xué)報,2010,32(15):146-149.

      [3]柯建華,魏學(xué)業(yè).基于RFID與CAN的煤礦井下人員定位系統(tǒng)研究[J].煤炭工程,2006(11):104-106

      [4]余發(fā)山,劉艷昌.井下RFID定位系統(tǒng)的讀寫器防碰撞技術(shù)研究[J].煤礦機(jī)械,2007,28(1):32-35.

      [5]Ivor D'Souza,Wei Ma,Cindy Notobartolo.Real-time location systems for hospital emergency response[J].IEEE Computer Society Press,2011,13(2):37-43.

      [6]趙東風(fēng),鄭蘇民.計算機(jī)通信網(wǎng)絡(luò)中輪詢傳輸方式的報文延時性能分析[J].云南大學(xué)學(xué)報,1993,5(5):78-86.

      猜你喜歡
      讀卡輪詢讀卡器
      煤礦井下車輛乘人防漏識別讀卡基站設(shè)計
      煤礦安全(2022年8期)2022-08-16 03:00:24
      智能會議預(yù)約終端內(nèi)置讀卡器性能的改善*
      與淘汰命運(yùn)抗?fàn)帯】炊P記本的讀卡器
      基于等概率的ASON業(yè)務(wù)授權(quán)設(shè)計?
      基于EMV非接通信規(guī)范的非接觸讀卡器設(shè)計
      為二維碼識別的獻(xiàn)禮之作——評測平治二維碼門禁讀卡器
      依托站點(diǎn)狀態(tài)的兩級輪詢控制系統(tǒng)時延特性分析
      利用時間輪詢方式操作DDR3實(shí)現(xiàn)多模式下數(shù)據(jù)重排
      MATLAB實(shí)現(xiàn)組態(tài)王中TCP/IP讀卡器監(jiān)控方法
      基于LINUX的PBOC3.0關(guān)鍵讀卡技術(shù)的研究與應(yīng)用
      科技| 革吉县| 玛沁县| 海城市| 八宿县| 海丰县| 京山县| 绥阳县| 辽宁省| 衡南县| 牙克石市| 瑞安市| 会同县| 固始县| 汶川县| 清镇市| 犍为县| 轮台县| 哈巴河县| 印江| 城口县| 溧水县| 黑龙江省| 石门县| 宁河县| 吉木萨尔县| 泸定县| 赣州市| 碌曲县| 贵港市| 右玉县| 祁连县| 丹阳市| 固原市| 高台县| 平顺县| 九江市| 鹤壁市| 蓬安县| 潼关县| 苏尼特左旗|