《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于嵌入式和RFID技術的電子門票系統(tǒng)
基于嵌入式和RFID技術的電子門票系統(tǒng)
來源:微型機與應用2011年第9期
沈洪銳,張晶晶,李 燁,,孫番典
(華南師范大學 物理與電信工程學院,,廣東 廣州 510006)
摘要: 介紹了通過在ARM+μClinux+Web+SQLite平臺下擴展CAN總線,并以RFID讀卡器作為控制節(jié)點而實現(xiàn)的電子門票系統(tǒng),。一方面可以方便持卡者查詢門票使用情況、場所路線以及館內(nèi)人流量,幫助其更好地選擇相關路線,;另一方面有助于舉辦方實時了解各片區(qū)的人流情況及追蹤目標,以便做出調(diào)度和提高安防工作效率,。
Abstract:
Key words :

摘  要: 介紹了通過在ARM+μClinux+Web+SQLite平臺下擴展CAN總線,,并以RFID讀卡器作為控制節(jié)點而實現(xiàn)的電子門票系統(tǒng)。一方面可以方便持卡者查詢門票使用情況,、場所路線以及館內(nèi)人流量,,幫助其更好地選擇相關路線;另一方面有助于舉辦方實時了解各片區(qū)的人流情況及追蹤目標,,以便做出調(diào)度和提高安防工作效率,。
關鍵詞: RFID;CAN總線,;ARM,;Web Server;SQLite

 由于RFID電子門票具有防偽性能好,、可靠性高,、適應性強、成本低等特點,,已被普遍應用于各種大型公共活動中,。本文提出一種經(jīng)濟型、基于嵌入式技術的RFID電子門票系統(tǒng),。
1 RFID的原理
 射頻識別(RFID)利用射頻信號的空間耦合或反射的傳輸特性,,對被識別物體自動識別,是一種非接觸式自動識別技術,。RFID主要由電子標簽(Tag)和閱讀器(Reader)兩部分組成,。電子標簽由耦合元件和芯片組成,,其工作能量來源于閱讀器發(fā)出的射頻脈沖,通過無線電波與讀寫設備進行數(shù)據(jù)交換,。閱讀器主要由無線收發(fā)模塊,、天線、控制模塊和接口電路組成,,其主要任務是控制射頻模塊向電子標簽發(fā)射讀取信號,,并接收電子標簽的應答,對電子標簽的標識信息進行解碼,,將標識信息及其他相關信息傳輸?shù)街鳈C以便處理,。該系統(tǒng)選用低頻(125  kHz)RFID系統(tǒng),性能不受環(huán)境影響,,價格低廉,,因此適合大規(guī)模生產(chǎn)使用。
2 CAN總線技術[1]
 CAN是由ISO定義的串行通信總線,,具有高位速率,、高抗電磁干擾性、高可靠性等特點,,而且能夠檢測到產(chǎn)生的任何錯誤,。CAN在微控制器之間互相通信或微控制器與遠程的外圍器件互相通信的情況下是一個理想的解決方法。CAN相比于RS485采用了新技術及獨特的設計,,具有多主節(jié)點的網(wǎng)絡特性,,總線利用率高,數(shù)據(jù)傳輸速度快,,可擴充性好,,通信距離長,具有可靠的錯誤處理和檢錯機制,,個別節(jié)點失效并不影響整個通信網(wǎng)絡的運行,,實時性好。因此在自動化各個行業(yè),,CAN取代RS485將是一種不可逆轉的趨勢,。
3 ARM+μClinux平臺下實現(xiàn)動態(tài)Web[2]
 在μClinux環(huán)境下,httpd,、thttpd和Boa是三個主要的Web服務器,。這里選擇非常適合嵌入式系統(tǒng)的Boa Web服務器,它支持認證,、CGI等,。Boa是一個單任務的http服務器,μClinux代碼已經(jīng)自帶了Boa的源碼,,配置和修改源碼后,,在配置內(nèi)核時把Boa選進內(nèi)核實現(xiàn)入網(wǎng),,通過瀏覽器就可以訪問嵌入式網(wǎng)頁。
 迄今,,實現(xiàn)動態(tài)Web頁面有CGI,、ASP,、PHP和JSP四種技術可供選擇,,由于目前μClinux還不支持ASP、PHP等動態(tài)Web頁面技術,,因此本設計選擇CGI,。CGI提供Web服務器一個執(zhí)行外部程序的通道,這種服務端技術使得瀏覽器和服務器之間具有交互性,。CGI程序接收Web瀏覽器發(fā)送給Web服務器的信息,,進行處理后執(zhí)行相應的任務。本系統(tǒng)選擇與平臺無關的C語言編寫CGI程序,。
4 嵌入式數(shù)據(jù)庫SQLite及其在μClinux上的移植[3]
4.1 嵌入式數(shù)據(jù)庫SQLite簡介

 嵌入式數(shù)據(jù)庫SQLite較其他大型數(shù)據(jù)庫的特點是程序直接調(diào)用相應的API實現(xiàn)對數(shù)據(jù)的存取操作,,無需獨立運行的數(shù)據(jù)庫引擎。SQLite不具有外部依賴性,,完全獨立,,并且提供了對SQL92標準的大多數(shù)支持:支持多表和索引、事務,、視圖,、觸發(fā)和一系列的用戶接口及驅(qū)動。在嵌入式系統(tǒng)中移植SQLite數(shù)據(jù)庫成為一種很好的解決方案,。
4.2 SQLite開發(fā)技術
 SQLite本身提供了C語言的API接口,,使得對數(shù)據(jù)庫的操作十分簡單,主要是對3個API函數(shù)的調(diào)用,。
 (1)打開數(shù)據(jù)庫
 int sqlite3_open(const char*filename,,sqlite3**ppDb);
 sqlite3_open()用于打開指定的數(shù)據(jù)庫,,數(shù)據(jù)庫文件名稱由filename參數(shù)指定,,并通過ppDb參數(shù)返回合法的數(shù)據(jù)庫句柄。
 (2)執(zhí)行數(shù)據(jù)庫
    int sqlite3_exec(sqlite3*,,const char *sql,,sqlite_callback, void*,,char**errmsg),;
第一個參數(shù)sqlite3*是前面open函數(shù)得到的指針。第二個參數(shù)const char*sql是一條SQL語句或多條SQL語句,,語句間必須用“,;”號隔開,,以\0結尾。第三個參數(shù)是回調(diào),,當這條SQL語句執(zhí)行之后,,SQLite3會調(diào)用該回調(diào)函數(shù)。第四個參數(shù)void*是傳遞給回調(diào)函數(shù)的參數(shù),,如果不需要傳遞指針給回調(diào)函數(shù),,可以賦NULL給該參數(shù)。第五個參數(shù)char**errmsg用來保存錯誤信息,。
 (3)關閉數(shù)據(jù)庫
 int sqlite3_close(sqlite3*db),;
 參數(shù)db就是打開時的結構體,即數(shù)據(jù)庫句柄,。
4.3 SQLite應用程序交叉編譯
 要將嵌有SQLite的CGI程序應用到S3C44b0+μClinux開發(fā)平臺上,,必須對CGI程序進行交叉編譯。由于交叉編譯要用到romfs格式的libsqlite.a庫文件,,因此必須先對SQLite源代碼進行修改,,以便生成靜態(tài)庫文件libsqlite3.a。然后交叉編譯生成cgi格式文件,,與內(nèi)核一起編譯后下載到開發(fā)板,。
5 電子門票系統(tǒng)的設計
 在S3C44B0+μClinux+Web+SQLite嵌入式平臺下,通過CAN總線與RFID讀卡器進行通信,。整體構架如圖1所示,。該系統(tǒng)可以分為兩個模塊:第一部分為各個場所的刷卡點,包括CAN總線和RFID讀卡器的設計,,該模塊的功能是采集數(shù)據(jù),。第二部分為ARM嵌入式遠程控制功能,實現(xiàn)數(shù)據(jù)的讀取,、儲存以及處理,,數(shù)據(jù)包括CAN總線數(shù)據(jù)和Web內(nèi)建表單數(shù)據(jù)。

 

 

5.1 CAN通信節(jié)點工作原理[4]
 當持卡者將RFID電子門票靠近讀卡器時,,通過固有頻率的射頻載波向無源電子標簽傳送信號,,無源電子門票進入讀寫器的天線工作區(qū)域后被激活,并將載有個人信息的射頻信號經(jīng)卡內(nèi)收發(fā)模塊發(fā)射出去,;讀卡器天線接收到無源電子標簽發(fā)來的射頻信號,,經(jīng)過處理后,提取出個人信息,,通過CAN現(xiàn)場總線送至ARM處理器處理,。
5.2 ARM數(shù)據(jù)處理核心[5]
 ARM把CAN總線傳過來的信息進行解析,得到卡號和位置的信息,并且更新數(shù)據(jù)庫里面各項信息,。持卡者或者主辦方通過Web服務器就可以查詢信息,。CGI程序在收到Web頁面內(nèi)建表單的數(shù)據(jù),對數(shù)據(jù)進行處理,,進而調(diào)用相應的SQLite語言進行處理,,例如select、update等操作,。CGI程序完成處理后的輸出被重定向到客戶瀏覽器,,持卡者或主辦方通過瀏覽器查詢到相關的信息。
 本論文討論了基于嵌入式和RFID技術的電子門票系統(tǒng),,是一個經(jīng)濟實用的解決方案,。傳統(tǒng)的紙質(zhì)門票功能單一,、效率低,、客戶管理和跟蹤很難實施。RFID門票是票務行業(yè)探索的熱點,,相信RFID門票將會被更多的企業(yè),、景區(qū)、活動主辦方,、比賽場所接受并應用,。
參考文獻
[1] 陽憲惠.現(xiàn)場總線技術及應用[M].北京:清華大學出版社,2003.
[2] 吳堅,,張家奇,,蔣平.μClinux下Web Server及CGI技術的實現(xiàn)[J].測控技術,2007,,26(4):64-70.
[3] 莊宗輝,,薛毓強,連瑞紅.嵌入式數(shù)據(jù)庫SQLite在遠程監(jiān)控系統(tǒng)中的應用[J].現(xiàn)代電子技術,,2007(8):62-64.
[4] 柯建華,,魏學業(yè).基于RFID與CAN的煤礦井下人員定位系統(tǒng)研究[J].煤炭工程,2006(11):104-106.
[5] 王國寧.基于嵌入式Internet的CAN總線遠程監(jiān)控系統(tǒng)的研究與實現(xiàn)[D].上海:東華大學,,2006.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載。