標(biāo)題: 基于U2270B的125kHzRFID射頻識(shí)別門禁系統(tǒng)的設(shè)計(jì) [打印本頁(yè)]

作者: chenye1132    時(shí)間: 2017-9-19 19:08
標(biāo)題: 基于U2270B的125kHzRFID射頻識(shí)別門禁系統(tǒng)的設(shè)計(jì)

本設(shè)計(jì)的完整源碼下載:
http://www.torrancerestoration.com/bbs/dpj-94685-1.html

  要:本文介紹了一種RFID射頻識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[1]。該設(shè)計(jì)采用低頻125KHz傳輸信號(hào),射頻卡選用EM4001,發(fā)射和接收信號(hào)采用集成模塊U2270B,信號(hào)的編碼和解碼采用曼徹斯特編碼,主控模塊采用STC89C51。經(jīng)驗(yàn)證,該設(shè)計(jì)滿足門禁系統(tǒng)的要求。

0  引言
物聯(lián)網(wǎng)技術(shù)是新興的科技,是多學(xué)科交叉的融合,是未來發(fā)展的方向。而RFID射頻識(shí)別技術(shù)又是物聯(lián)網(wǎng)技術(shù)的核心技術(shù)之一。筆者在教學(xué)過程中,結(jié)合教學(xué)內(nèi)容,用典型的元器件完成了一款125KHz低頻RFID射頻識(shí)別門禁系統(tǒng)的設(shè)計(jì)和實(shí)踐。通過對(duì)系統(tǒng)各個(gè)功能模塊的設(shè)計(jì),鞏固了教學(xué)成果,鍛煉了學(xué)生。該設(shè)計(jì)采用集成模塊U2270B,完成無線射頻信號(hào)的發(fā)射和接收。使用繞制的銅線線圈作為天線發(fā)送和接收無線電波。采用常見的芯片STC89C51作為控制核心,完成無線電的收發(fā)時(shí)序、曼徹斯特解碼以及譯碼顯示等工作。通過Protel畫出電路圖后,在實(shí)驗(yàn)室中制作單面板的實(shí)物,驗(yàn)證了此設(shè)計(jì)的可行性。
1  設(shè)計(jì)原理和實(shí)現(xiàn)方案
1.1  工作原理
射頻識(shí)別(Radio Frequency Identification, RFID)是利用感應(yīng)、電磁場(chǎng)或電磁波為傳輸手段,完成非接觸式雙向通信,獲取相關(guān)數(shù)據(jù)的一種自動(dòng)識(shí)別技術(shù)。
射頻識(shí)別卡最大的優(yōu)點(diǎn)就在于非接觸,因此完成識(shí)別工作時(shí)無須人工干預(yù),適于實(shí)現(xiàn)自動(dòng)化且不易損壞,操作快捷方便。RFID技術(shù)是一個(gè)嶄新的技術(shù)應(yīng)用領(lǐng)域,它不僅涵蓋了射頻技術(shù),還包含了密碼學(xué)、通信原理和半導(dǎo)體集成電路技術(shù),是一個(gè)多學(xué)科綜合的新興學(xué)科。
RFID的基本工作原理:標(biāo)簽進(jìn)入磁場(chǎng)后,接收讀寫器發(fā)出的射頻信號(hào),憑借感應(yīng)電流所獲得的能量發(fā)送出存儲(chǔ)在芯片中的產(chǎn)品信息,或者由標(biāo)簽主動(dòng)發(fā)送某一頻率的信號(hào),讀寫器讀取信息并解碼后,送至中央信息系統(tǒng)進(jìn)行有關(guān)數(shù)據(jù)處理。


1.2  功能
   1)讀卡器識(shí)別距離大于10mm。
   2)設(shè)計(jì)完成顯示ID卡卡號(hào),可隨機(jī)讀取任意ID卡標(biāo)簽并顯示,顯示格式為:“success,ID:XXXXXXXXXX”(X代表0-9的數(shù)字)。
1.3  射頻應(yīng)答器設(shè)計(jì)
    采用EM4001射頻卡:存儲(chǔ)容量:64bit;工作頻率:125KHZ;讀寫距離:2-15cm;芯片類型:EM瑞士微電 EM4100/EM4102;擦寫壽命:讀不限;外形尺寸:ISO標(biāo)準(zhǔn)卡/厚卡;封裝材料:PVC、ABS。      
1.4  閱讀器設(shè)計(jì)方案
1.4.1. 125kHzRFID閱讀器設(shè)計(jì)
為了簡(jiǎn)化硬件電路,采用集成射頻模塊U2270B完成125kHZ方波產(chǎn)生,功率放大與檢波,濾波放大等功能。此方案的優(yōu)點(diǎn):電路簡(jiǎn)單,易于實(shí)現(xiàn)。此方案的缺點(diǎn):增加了程序的復(fù)雜性。125kHzRFID閱讀器的原理如圖2所示。  
1.4.2. 基于U2270B的125kHzRFID閱讀器設(shè)計(jì)
射頻卡讀寫器的關(guān)鍵芯片是射頻卡基站芯片,它主要用于完成數(shù)據(jù)的調(diào)制、發(fā)射和射頻的接收以及數(shù)據(jù)的解調(diào)任務(wù)。由美國(guó)ATMEL公司生產(chǎn)的U2270B 是一種低成本、性能完善的低頻( 100~150kHz) 射頻卡基站芯片, 其主要特點(diǎn)如下:
1.載波振蕩器能產(chǎn)生100kHz~150kHz 的振頻率, 并可通過外接電阻進(jìn)行精確調(diào)整, 其典型應(yīng)用頻率為125kHz。
2.典型數(shù)據(jù)傳輸速率為5kbps( 125kHz時(shí)) 。
3.適用于曼徹斯特編碼和雙相位編碼。
4.帶有微處理器接口, 可與單片機(jī)直接連接。
5.供電方式靈活,可以采用+5V 直流供電, 也可以采用汽車用+12V供電,同時(shí)具有電壓輸出功能, 可以給微處理器或其它外圍電路供電。
6.具有低功耗待機(jī)模式, 可以極大地降低基站的耗電量。
7.125kHz 時(shí)的典型讀寫距離為15mm。
8.適用于對(duì)e5530/e5550/EM4001等射頻卡進(jìn)行讀寫操作。

          2 125kHzRFID系統(tǒng)工作原理                      3 U2270B內(nèi)部結(jié)構(gòu)圖  
2  基于射頻芯片U2270B的125kHzRFID閱讀器電路設(shè)計(jì)
125kHzRFID由以下幾部分模塊電路構(gòu)成:控制電路、射頻模塊電路、射頻天線、顯示電路、聲光報(bào)警電路、串口通信電路、串口轉(zhuǎn)USB電路和電源電路。
2.1  控制電路設(shè)計(jì)
控制電路不僅要完成無線電收發(fā)的時(shí)序控制,還要進(jìn)行譯碼顯示,并完成和上位機(jī)的通信。由于射頻卡EM4001采用曼徹斯特編碼方式,而U2270B不能進(jìn)行曼徹斯特解碼,所以還需要控制單元進(jìn)行曼徹斯特的解碼工作。經(jīng)過對(duì)比和需求分析,最終決定采用STC89C51作為我們的主控芯片,其可以方便地支持串口燒錄,且價(jià)格便宜,功能完全滿足我們的需求。
2.2  射頻模塊電路設(shè)計(jì)
本課程設(shè)計(jì)采用射頻芯片U2270B完成射頻模塊的設(shè)計(jì)。參照U2270B芯片使用手冊(cè)中的典型電路連接,根據(jù)需求,采用第一種連接方式。
2.3  射頻天線設(shè)計(jì)
125kHzRFID射頻系統(tǒng)的應(yīng)答器和閱讀器都需要天線。而由于應(yīng)答器采用EM4001射頻卡,其內(nèi)部已經(jīng)集成了射頻天線。所以,我們只要研究閱讀器的射頻天線設(shè)計(jì)。
RFID射頻系統(tǒng)的天線制作方法有三種,線圈繞制法、蝕刻法、印制法。我們?cè)O(shè)計(jì)的125kHzRFID閱讀器天線只能采用線圈繞制法。下面簡(jiǎn)述其設(shè)計(jì)過程。
實(shí)驗(yàn)結(jié)果證實(shí):在與天線線圈距離很小(x<R)的情況下,磁場(chǎng)強(qiáng)度的上升是平緩的。較小的天線在其中心(距離為0)處呈現(xiàn)出較高的磁場(chǎng)強(qiáng)度,相對(duì)來講,較大的天線在較遠(yuǎn)的距離(x>R)處呈現(xiàn)出較高的磁場(chǎng)強(qiáng)度。(R為天線半徑;x為作用距離。)在電感耦合式射頻識(shí)別系統(tǒng)的天線設(shè)計(jì)中,應(yīng)當(dāng)考慮這種效應(yīng)。
射頻識(shí)別閱讀器作用距離都對(duì)應(yīng)有一個(gè)最佳的天線半徑R。如果選擇的天線半徑過大,那么在與發(fā)射天線的距離x=0處,磁場(chǎng)強(qiáng)度是很小的;相反,如果天線半徑的選擇太小,那么其磁場(chǎng)強(qiáng)度則以x的三次方的比例衰減。
不同的閱讀器作用距離,有著不同的天線最佳半徑,它對(duì)應(yīng)著磁場(chǎng)強(qiáng)度曲線最大值。發(fā)射天線的最佳半徑對(duì)應(yīng)于最大期望閱讀器作用距離的file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBCEB.tmp.png倍值: file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBCFB.tmp.png。
一般調(diào)諧過程當(dāng)中,由于天線線圈本身的電容對(duì)于諧振的影響很小,可以忽略不計(jì),故為了使閱讀器在工作頻率下天線線圈獲得最大的電流,需要外加一個(gè)電容C,完成對(duì)天線的調(diào)諧,達(dá)到這一目的。
設(shè)計(jì)要求:設(shè)計(jì)一個(gè)期望最大作用距離為1cm,工作頻率在125 kHz的繞線天線,系統(tǒng)要求閱讀器天線線圈的半徑盡量小,不超過1cm。
具體設(shè)計(jì)步驟如下:
首先確定天線的最佳半徑,理想的最佳天線半徑應(yīng)當(dāng)為期望作用距離的file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBCFC.tmp.png倍,在實(shí)際設(shè)計(jì)的時(shí)候,應(yīng)在保證系統(tǒng)要求的前提下,盡可能地接近最佳值。本設(shè)計(jì)閱讀器天線的最佳半徑取0.8cm。
其次,再根據(jù)工作頻率以及系統(tǒng)本身的要求確定電感量的大致范圍,本設(shè)計(jì)中取電感量在600~800μH之間。
再者,用電感量與匝數(shù)關(guān)系的經(jīng)驗(yàn)公式大致估計(jì)繞線匝數(shù)。我們?nèi)‰姼辛吭?/font>700μH,用直徑為0.27mm的銅導(dǎo)線進(jìn)行繞制天線。由公式file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBCFD.tmp.png
(式中:L為線圈電感,單位為μH;A為天線線圈包圍面積,單位為cm2;D為導(dǎo)線直徑,單位為cm。)
計(jì)算出匝數(shù):大概在266圈左右,繞完后,根據(jù)公式file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBCFE.tmp.png,選取所用的調(diào)諧電容。
用相關(guān)的儀器如頻譜儀測(cè)量出諧振頻率,由于電感量只是估算的,而且選用的匹配電容也是具有一定標(biāo)稱值的。并不能做到與計(jì)算一致,所以總是會(huì)存在誤差?搭l率的偏移情況,按電感量估算公式逐步增加或者減少線圈匝數(shù),直到達(dá)到指定的諧振頻率125kHz。
2.4  LCD顯示電路設(shè)計(jì)
射頻信號(hào)經(jīng)射頻模塊U2270B接收,并經(jīng)由單片機(jī)解碼今后,送到顯示模塊。由于我們只要顯示出射頻卡唯一可識(shí)別的射頻卡號(hào),所以只需要采用字符型LCD即可。此處我們選擇常用的字符型液晶LCD1602。
2.5  聲光報(bào)警電路設(shè)計(jì)
當(dāng)單片機(jī)完成射頻信號(hào)的曼徹斯特解碼工作之后,將所得的結(jié)果送交LCD1602加以顯示。為了方便用戶使用此RFID系統(tǒng),正確顯示ID號(hào)的同時(shí),驅(qū)動(dòng)蜂鳴器報(bào)警提示,并LED燈提示讀取成功。
2.6  串口通信電路設(shè)計(jì)
為了和計(jì)算機(jī)進(jìn)行通信,實(shí)現(xiàn)上下位機(jī)的數(shù)據(jù)傳輸,完成程序的燒錄,需要采用串口通信。本設(shè)計(jì)采用MAX232完成RFID閱讀器和計(jì)算機(jī)的數(shù)據(jù)串口通信。
2.7  串口轉(zhuǎn)USB電路設(shè)計(jì)
   為了和計(jì)算機(jī)更方便地通信,常采用較為方便的和上位機(jī)進(jìn)行連接的方式,即采用USB的連接方式。此處,使用芯片CP2102將串口的信號(hào)轉(zhuǎn)化為USB連接。
2.8  電源電路
電路采用的芯片和其他元器件都可在5V電源下工作,因此通過電源適配器將220V交流電變?yōu)?2V直流電,并選用三端穩(wěn)壓芯片7805將12V直流電轉(zhuǎn)換為直流5V穩(wěn)壓電源。
3  印制電路板設(shè)計(jì)
Altium Designer軟件通過把原理圖設(shè)計(jì)、電路仿真、PCB繪制編輯、拓?fù)溥壿嬜詣?dòng)布線、信號(hào)完整性分析和設(shè)計(jì)輸出等技術(shù)完美融合,使電路設(shè)計(jì)的質(zhì)量和效率大大提高。
根據(jù)電路模塊的特點(diǎn),我們將此125kHzRFID射頻系統(tǒng)劃分為兩大電路模塊:控制模塊和射頻模塊。由于射頻芯片U2270B采用SOP16貼片封裝,所以我們采用一塊單獨(dú)的單面板來制作。
電路原理圖和PCB圖如下圖所示:
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBD0F.tmp.png     file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBD10.tmp.jpg
          圖4 125kHzRFID控制模塊原理圖                    5 125kHzRFID射頻模塊原理圖
   file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBD21.tmp.jpg            file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsBD31.tmp.jpg     
         圖6 125kHzRFID控制模塊PCB圖                  7 125kHzRFID射頻模塊PCB圖
鑒于用單面板進(jìn)行驗(yàn)證設(shè)計(jì),為了減小實(shí)現(xiàn)的難度,將整個(gè)RFID射頻識(shí)別系統(tǒng)分成了兩個(gè)獨(dú)立的小模塊(控制模塊、射頻模塊)分別加以實(shí)現(xiàn)。
4  125kHzRFID程序設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)包括如下幾個(gè)部分:U2270B控制、LCD1602驅(qū)動(dòng)、聲光報(bào)警驅(qū)動(dòng)和串口驅(qū)動(dòng)和曼徹斯特特解碼。LCD1602驅(qū)動(dòng)、聲光報(bào)警驅(qū)動(dòng)和串口驅(qū)動(dòng)相對(duì)簡(jiǎn)單。U2270B不進(jìn)行解碼,由單片機(jī)完成解碼。解碼軟件設(shè)計(jì)相對(duì)較復(fù)雜,要對(duì)ID卡進(jìn)行解碼,首先應(yīng)掌握ID卡的存儲(chǔ)格式和曼徹斯特編碼方式,然后對(duì)解碼后的數(shù)據(jù)進(jìn)行計(jì)算。
(一) EM4100數(shù)據(jù)存儲(chǔ)格式
EM4100164位數(shù)據(jù)信息,它由5個(gè)區(qū)組成:9個(gè)引導(dǎo)位、10個(gè)行偶校驗(yàn)位“PO~P9’、4個(gè)列偶校驗(yàn)位“PC0~PC3”、40個(gè)數(shù)據(jù)位“D00~D93”和1個(gè)停止位S0。
每當(dāng)EM4100將64個(gè)信息位傳輸完畢后,只要ID卡仍處于讀卡器的工作區(qū)域內(nèi),它將按照順序發(fā)送64位信息,如此重復(fù),直至ID卡退出讀卡器的有效工作區(qū)域。
(二)  Manchester碼編碼方式
Manchester編碼:位數(shù)據(jù)“1”對(duì)應(yīng)著電平下跳,位數(shù)據(jù)“0”對(duì)應(yīng)著電平上跳。在一串?dāng)?shù)據(jù)傳送的數(shù)據(jù)序列中,兩個(gè)相鄰的位數(shù)據(jù)傳送跳變時(shí)間間隔應(yīng)為1P。若相鄰的位數(shù)據(jù)極性相同(相鄰兩位均為“0”或“1”),則在兩次位數(shù)據(jù)傳送的電平跳變之間,有一次非數(shù)據(jù)傳送的、預(yù)備性的(電平)“空跳”。電平的上跳、下跳和空跳是確定位數(shù)據(jù)傳送特征的判據(jù)。在曼徹斯特調(diào)制方式下,EM41001每傳送一位數(shù)據(jù)的時(shí)間是64個(gè)振蕩周期,其值由RFn決定。若載波頻率為125 kHz,則每傳送一位的時(shí)間為振蕩周期的64分頻,即位傳送時(shí)間為:1P=64/125 kHz=512μs,則半個(gè)周期的時(shí)間為256us。
(三)Manchester碼解碼算法
利用STC89C51單片機(jī)進(jìn)行解碼,STC89C51的T口的輸入捕捉單元可用于精確捕捉一個(gè)外部事件的發(fā)生,記錄事件發(fā)生的時(shí)間印記。當(dāng)一個(gè)輸入捕捉事件發(fā)生時(shí),T口的計(jì)數(shù)器TCNTl中的計(jì)數(shù)值被寫入輸入捕捉寄存器ICRl中,并置位輸入捕獲標(biāo)志位ICFl,產(chǎn)生中斷申請(qǐng)?赏ㄟ^設(shè)置寄存器TCCRlB的第6位ICESl來設(shè)定輸入捕捉信號(hào)觸發(fā)方式。本設(shè)計(jì)利用單片機(jī)的輸入捕捉功能進(jìn)行解碼。
Manchester編碼特點(diǎn)可知,每位數(shù)據(jù)都由半個(gè)周期的高電平和半個(gè)周期的低電平組成,因此可將一個(gè)位數(shù)據(jù)拆分為兩位,即位數(shù)據(jù)“1”可視為“10”,位數(shù)據(jù)“0”可視為“01”,則64位數(shù)據(jù)可視為由128位組成。為了獲得完整且連續(xù)存放的64位ID信息,在此接收兩輪完整的64位數(shù)據(jù),即接收256位。則上一輪接收到的停止位后緊跟著的必然是本輪接收到的起始位,據(jù)此找出起始同步頭。再根據(jù)曼碼特點(diǎn)獲得ID卡的有效數(shù)據(jù)(“10”解碼為“1”;“01”解碼為“O”)并進(jìn)行LCR校驗(yàn),若校驗(yàn)無誤,則將ID卡號(hào)輸出至PC機(jī),并準(zhǔn)備下一次的解碼;否則,直接準(zhǔn)備下一次解碼。另外,在程序中首先定義一個(gè)數(shù)組bit[256]用來存放接收到的數(shù)據(jù);定義一個(gè)變量用來標(biāo)記256位數(shù)據(jù)接收完成;定義一個(gè)變量用來標(biāo)記校驗(yàn)有錯(cuò)誤產(chǎn)生。由于無ID卡靠近讀卡器的有效工作區(qū)時(shí),單片機(jī)輸入捕捉引腳輸入的是高電平,因此在主程序中先設(shè)定為下降沿觸發(fā),清零計(jì)數(shù)器TCNTl,打開T/C1的輸入捕捉功能。     
5  實(shí)驗(yàn)驗(yàn)證
該設(shè)計(jì)的實(shí)驗(yàn)驗(yàn)證效果如下所示,可以在10mm的距離上正確地讀取射頻卡的信息,并通過LCD1602準(zhǔn)確地進(jìn)行顯示。

6  結(jié)語(yǔ)
本設(shè)計(jì)采用了集成元件U2270B以及典型電路,繞制的天線,51單片機(jī)控制芯片,及簡(jiǎn)單的外圍電路,搭建了一個(gè)低頻125KHzRFID門禁系統(tǒng)。該設(shè)計(jì)簡(jiǎn)單實(shí)用,經(jīng)過驗(yàn)證,讀取穩(wěn)定,作用距離滿足設(shè)計(jì)要求。


作者: qinc111    時(shí)間: 2017-11-24 00:33
為什么EM40xx.c中的REM和TIME_OF沒有定義啊




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1