基于SLRC400的礦用人員安全系統(tǒng)設計
系統(tǒng)硬件結構
本系統(tǒng)的結構如圖1所示。其中,射頻識別系統(tǒng)中的核心部件采用了SLRC400芯片構成的閱讀器,用以對井下員工的位置進行監(jiān)控。
圖1 系統(tǒng)結構框圖
SLRC400的電氣特性
SLRC400是一種工作在13.56MHz的非接觸式IC卡閱讀器,它支持S015693協(xié)議,在無源的情況下能夠驅(qū)動天線發(fā)射到較長的距離(1.5米)。其主要特點是:數(shù)字部分具有CRC校驗功能;具有并行接口,可以直接與任何8位微處理器相連,為閱讀器和終端電路設計提供了較大的靈活性;高集成解調(diào)和編碼模擬電路;靈活的中斷處理;可編程計時器;獨特的串行數(shù)據(jù);用戶可編程的啟動結構:數(shù)字、模擬和傳輸部分的獨立電源供給;可外接RS-485等芯片。
SLRC400的外圍電路設計
系統(tǒng)的硬件設計包括SLRC400構成的閱讀器硬件電路設計以及CAN總線通信部分的設計。其中,SLRC400外圍電路包括EMC低通濾波電路、接收電路、天線匹配電路和天線。
EMC低通濾波電路
SLRC400的工作頻率是13.56MHz,作為SLRC400時鐘的信號由石英晶體的振蕩產(chǎn)生,同時也是驅(qū)動天線13.56MHz載波頻率的基礎,這不僅導致發(fā)射出13.56MHz的能量,同時也發(fā)射更高次的諧波。國際EMC條例規(guī)定了在寬的頻率范圍內(nèi)發(fā)射能量的幅值。因此,為了滿足這個規(guī)定,加了一個合適的濾波器。
接收電路
SLRC400的內(nèi)部接收電路在射頻卡進入閱讀器范圍時工作。當輸入接引腳RX時,使用內(nèi)部生成VMID。為了提供穩(wěn)定的參考電壓,接地電容C3與VMID相連。閱讀器的接收部分需要在RX和VMID之間加分壓器。
天線線圈電感選取與阻抗匹配問題
精確計算天線線圈電感值是不實際的,但是可以用線圈電感值公式估算。天線的實際電容和電感值取決于很多參數(shù),比如天線的結構(PCB的類型),導線的厚度,纏繞線圈間的距離,屏蔽層,周圍環(huán)境中的金屬或鐵氧體。
電容值的大小會嚴重影響閱讀器的性能,確定電容值可以采用軟件或硬件的方法,一種簡單的方法是:SLRC400有一個SIG0uT引腳,當閱讀器發(fā)出某一指令時,可以通過示波器觀察該引腳的輸出信號,不斷改變卡與閱讀器之間的距離和C2值,示波器將輸出不同的波形,根據(jù)不同的波形即可確定閱讀器最好的性能。
系統(tǒng)的軟件實現(xiàn)
系統(tǒng)軟件設計
系統(tǒng)軟件結構如圖2所示。服務器端、客戶端、數(shù)據(jù)庫分別采用Windows 2000 Advanced Sever,Windows 2000操作系統(tǒng)以及SQL Sever 2000。開發(fā)數(shù)據(jù)庫的軟件眾多,但是VC++以其所見即所得的界面設計、高效的執(zhí)行代碼和極快的編譯速度,成為本設計的首選工具。其中射頻識別系統(tǒng)內(nèi)部單片機采用C51高級語言,SLRC400則采用其標準程序,另外,系統(tǒng)還包含閱讀器其他電路的應用程序設計。
圖2 系統(tǒng)軟件結構圖
SLRC400應用程序算法
二進制搜索算法由一個閱讀器和多個射頻卡之間規(guī)定的一組命令和應答規(guī)則構成。目的在于從多卡中選出任意一張實現(xiàn)數(shù)據(jù)通信。為了從一組射頻卡中選擇其一,閱讀器發(fā)出一個讀卡命令,有意識地將射頻卡序列號傳輸時的數(shù)據(jù)碰撞引導到閱讀器上,即通過閱讀器判斷是否有碰撞發(fā)生。該算法有三個關鍵要素:選用易于識別碰撞的基帶編碼;利用射頻卡序列號唯一的特性;設計一組有效的指令規(guī)則,高效、迅速地實現(xiàn)選卡。
本系統(tǒng)所用到的指令規(guī)則為:Inventory Request--請求(序列號):向閱讀器請求響應;Select(SNR)--選擇(序列號):用某個(事先確定的)序列號作為參數(shù)發(fā)送給射頻卡。如果場中某一射頻卡的序列號和此參數(shù)相同,則此射頻卡被選中,對其他的指令進行響應,而其他序列號的射頻卡只對Inventory Request指令應答;Stay quiet--安靜狀態(tài):取消一個事先選中的射頻卡,射頻卡進入安靜狀態(tài)(非激活),對收到的Inventory Request命令不做應答。為了重新激活射頻卡,可以先將射頻卡移出閱讀器天線的作用范圍再進入,以實現(xiàn)復位,或者收到select及Reset to Ready命令。
對二進制搜索算法系統(tǒng)功能的可靠性起決定作用的是所有射頻卡需要準確的同步,這樣才能按位判斷碰撞的發(fā)生。為了使眾多射頻卡不發(fā)生碰撞,需要重復操作Inventory Request指令。
SLRC400應用編程
讀寫芯片SLRC400的行為通過執(zhí)行特定的9條命令的內(nèi)部狀態(tài)來決定。執(zhí)行命令時所需的聲明或數(shù)據(jù)通過FIFO緩沖器交換。Start up 命令進行復位和初始化;IDLE將SLRC400切換到非激活狀態(tài);Transmit從FIFO緩沖器傳輸數(shù)據(jù)到射頻卡;Receive命令激活接收電路;Transceive從FIFO緩沖器傳輸數(shù)據(jù)到射頻卡;WriteE2命令把從緩沖器獲得的數(shù)據(jù)寫到EEPROM;ReadE2把從EEPROM讀到的數(shù)據(jù)置于FIFO緩沖器;LoadConfig從EEPROM讀數(shù)據(jù)并初始化寄存器;CalcCRC激活協(xié)處理器。在執(zhí)行前對所有寄存器進行初始化,然后閱讀器以一定的時間間隔循環(huán)發(fā)送Inventory Request命令,監(jiān)測閱讀距離內(nèi)是否有射頻卡存在。如果有,則射頻卡響應Inventory Request命令,向閱讀器發(fā)送卡號和CRC校驗值。如果有通信錯誤或無碰撞,則利用Transmit和WriteE2通過數(shù)據(jù)總線發(fā)送給微處理器,然后發(fā)送Stay quiet命令,使剛才的射頻卡進入安靜狀態(tài)。如果有碰撞,就調(diào)用防碰撞程序,以二進制搜索的算法縮小搜索范圍,直到剩下一個射頻響應。
結語
本系統(tǒng)能夠?qū)崿F(xiàn)1.5米的人員識別,并且通過數(shù)據(jù)總線將射頻卡號和位置信息傳送到數(shù)據(jù)中心站,利用本系統(tǒng)能夠及時掌握井下員工的位置。但本系統(tǒng)的識別距離相對較短,如何提高閱讀器的識別距離是今后的工作重點。
參考文獻:
1 ISO/IEC JTC 1,ISO/IEC 15693-2:2001(E),Identification cards-Conttactless integrated circuit(s) cards-Vicinity cards-Part 3:Anticollision and transmission protocol,Geneva, Switezerland,2001