你的位置:首頁(yè) > RF/微波 > 正文

RFID 收費(fèi)系統(tǒng)設(shè)計(jì)新方法:CAN總線克服傳統(tǒng)缺陷

發(fā)布時(shí)間:2013-07-31 責(zé)任編輯:eliane

【導(dǎo)讀】由于傳統(tǒng)的射頻識(shí)別(RFID)收費(fèi)系統(tǒng)具有實(shí)時(shí)性差和通訊效率低等缺點(diǎn),本文將提出一種新型RFID收費(fèi)系統(tǒng)設(shè)計(jì)方案,采用CAN 總線同時(shí)還使用了無(wú)線技術(shù),克服了傳統(tǒng)RFID 收費(fèi)系統(tǒng)的缺陷,具有較強(qiáng)的使用價(jià)值。

針對(duì)傳統(tǒng)基于RS-485 總線的射頻識(shí)別技術(shù)(RFID)收費(fèi)系統(tǒng)具有實(shí)時(shí)性差和通訊效率低的缺點(diǎn),提出了一種基于CAN 總線和2.4G 無(wú)線網(wǎng)絡(luò)的新型RFID 收費(fèi)系統(tǒng)。該系統(tǒng)采用2.4G 無(wú)線網(wǎng)絡(luò)環(huán)境,使一個(gè)CAN 節(jié)點(diǎn)能夠控制六個(gè)RFID 收費(fèi)終端的數(shù)據(jù)傳輸。應(yīng)用溫度模塊獲取的數(shù)據(jù)的無(wú)線傳輸對(duì)該系統(tǒng)進(jìn)行測(cè)試,測(cè)試結(jié)果表明該方案設(shè)計(jì)的正確性。

1 引言

RFID(Radio Frequency IDentification)技術(shù),即射頻識(shí)別技術(shù),是一種通信技術(shù),目前廣泛應(yīng)用于各種收費(fèi)場(chǎng)合,例如:公共交通收費(fèi)系統(tǒng),停車場(chǎng)收費(fèi)系統(tǒng)等等。目前使用RFID 技術(shù)的系統(tǒng)通常使用RS-485 和PC 端進(jìn)行數(shù)據(jù)交互,但是RS-485 使用單主節(jié)點(diǎn),采用輪詢方式,因此存在實(shí)時(shí)性較低和通訊效率低的問(wèn)題。

隨著計(jì)算機(jī)科學(xué)水平的不斷飛躍和工業(yè)發(fā)展的需要,工業(yè)控制系統(tǒng)經(jīng)歷了基地式儀表控制系統(tǒng)、集中式數(shù)字控制系統(tǒng)、集散控制系統(tǒng)到現(xiàn)在廣泛使用的現(xiàn)場(chǎng)總線控制系統(tǒng)的轉(zhuǎn)變。CAN(Controller Area Net)總線是一種基于串行通信網(wǎng)絡(luò)的現(xiàn)場(chǎng)總線。CAN 總線采用多主工作方式,網(wǎng)絡(luò)上的任意節(jié)點(diǎn)可以在任意時(shí)刻向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息。同時(shí),CAN 總線采用非破壞性仲裁技術(shù),當(dāng)兩個(gè)或者更多的節(jié)點(diǎn)同時(shí)向網(wǎng)絡(luò)上傳送數(shù)據(jù),優(yōu)先級(jí)低的節(jié)點(diǎn)將停止發(fā)送,直到優(yōu)先級(jí)高的節(jié)點(diǎn)發(fā)送完數(shù)據(jù)后再發(fā)送,這樣有效地避免了總線競(jìng)爭(zhēng)。CAN 通信距離最遠(yuǎn)可達(dá)10km/5kbps,通信速率最高可大1Mbps.CAN 的每幀數(shù)據(jù)都有CRC校驗(yàn)或者其它檢測(cè)方式,保證了數(shù)據(jù)通信的可靠性。

當(dāng)一個(gè)CAN 節(jié)點(diǎn)發(fā)生嚴(yán)重錯(cuò)誤時(shí),該節(jié)點(diǎn)會(huì)自動(dòng)關(guān)閉,從而不影響其它節(jié)點(diǎn)的正常工作。因此,CAN 總線具有可靠性強(qiáng),實(shí)時(shí)性高和效率高等優(yōu)勢(shì),完全能夠取代RS 485 總線。

考慮到在實(shí)際應(yīng)用環(huán)境中,為了減少大量的布線工作,使用2.4G 無(wú)線網(wǎng)絡(luò)作為數(shù)據(jù)從RFID 到CAN總線之間傳輸?shù)闹修D(zhuǎn)站。無(wú)線技術(shù)具有成本低、靈活性高、可靠性高和安裝時(shí)間短等特點(diǎn)。本次設(shè)計(jì)使用選用nRF24L01 組建無(wú)線通信網(wǎng)絡(luò),該芯片支持多點(diǎn)通信,在接受模式下可以接收6 路不同通道的數(shù)據(jù)。也就是無(wú)線網(wǎng)絡(luò)的接收端可以接收6 個(gè)不同發(fā)送端的數(shù)據(jù),發(fā)送端的數(shù)據(jù)是通過(guò)RFID 模塊獲得。

基于以上的討論,本文將給出一種基于CAN 總線和2.4G 無(wú)線網(wǎng)絡(luò)的新型RFID 收費(fèi)系統(tǒng)。

2 硬件系統(tǒng)設(shè)計(jì)

2.1 系統(tǒng)拓?fù)浣Y(jié)構(gòu)和系統(tǒng)組成

2.1.1 系統(tǒng)拓?fù)浣Y(jié)構(gòu)

如圖1 所示,RFID設(shè)備的相關(guān)數(shù)據(jù)將通過(guò)無(wú)線網(wǎng)絡(luò)傳送至CAN收發(fā)器,后者再將數(shù)據(jù)通過(guò)CAN總線傳送至PC機(jī),PC 機(jī)采用帶有CAN接口的PCI-E擴(kuò)展卡。此外,無(wú)線通訊芯片nRF24L01在接受模式下可以接收6路不同通道的數(shù)據(jù),以此來(lái)實(shí)現(xiàn)一個(gè)CAN節(jié)點(diǎn)最多控制6 個(gè)RFID終端設(shè)備的數(shù)據(jù)傳送。在6個(gè)RFID收費(fèi)終端不能滿足需求的情況下,可以添加更多的節(jié)點(diǎn),所有節(jié)點(diǎn)掛載在CAN總線上,通過(guò)CAN總線,每個(gè)節(jié)點(diǎn)將數(shù)據(jù)傳送至PC端。
圖1 系統(tǒng)拓?fù)浣Y(jié)構(gòu)圖
圖1:系統(tǒng)拓?fù)浣Y(jié)構(gòu)圖 

2.1.2 系統(tǒng)組成

本系統(tǒng)(CAN 節(jié)點(diǎn))有兩個(gè)子系統(tǒng)組成。B 子系統(tǒng)由單片機(jī)、RFID 模塊、無(wú)線模塊、看門狗、液晶屏、時(shí)鐘模塊、按鍵和EEPROM 組成。微控制器(MCU)控制RFID 模塊對(duì)Mifare 1 卡進(jìn)行讀寫操作,無(wú)線模塊將有關(guān)的數(shù)據(jù)發(fā)送給A 子系統(tǒng)。A 子系統(tǒng)由單片機(jī)、無(wú)線模塊、看門狗和CAN 模塊組成。MCU 將經(jīng)由無(wú)線模塊接收到的數(shù)據(jù)通過(guò)CAN 模塊發(fā)送至PC 端。由于一個(gè)節(jié)點(diǎn)最多可以控制6 個(gè)RFID 設(shè)備終端,因此在一個(gè)完整的系統(tǒng)里,A 子系統(tǒng)只有1 個(gè),而B 子系統(tǒng)最多可以有6 個(gè)。

圖2:子系統(tǒng)A 組成框圖
圖2:子系統(tǒng)A 組成框圖
圖3 子系統(tǒng)B 組成框圖
圖3:子系統(tǒng)B 組成框圖。
 
2.2 微控制器

微控制器選用STC89LE58RD+,它具有4 個(gè)8 位并行I/O 端口P0~P3,1 個(gè)4 位并行端口P4,32KB FLASHROM,1280 字節(jié)RAM,3 個(gè)定時(shí)器,8 個(gè)中斷源和4個(gè)中斷優(yōu)先級(jí)的中斷系統(tǒng)。其性能完全滿足設(shè)計(jì)所需。
[page]
2.3 CAN 模塊

CAN 總線的硬件實(shí)現(xiàn)選用飛利浦公司的SJA1000和PCA82C250。

2.3.1 SJA1000 芯片介紹

SJA1000 是一個(gè)獨(dú)立的 CAN 控制器。它支持PeliCAN 模式擴(kuò)展功能(采用CAN2.0B 協(xié)議),具有11 位或 29 位標(biāo)識(shí)符,64 字節(jié)的接收FIFO,具有仲裁機(jī)制和強(qiáng)大的檢錯(cuò)能力等。

2.3.2 PCA82C250 芯片介紹

PCA82C250 是CAN 總線收發(fā)器,它主要是為汽車中高速通訊(高達(dá) 1Mbps)應(yīng)用而設(shè)計(jì)。它可以抗寬范圍的工模干擾和電磁干擾(EMI),降低射頻干擾(RFI),具有熱保護(hù)功能。最多可以連接110 個(gè)節(jié)點(diǎn)。

2.3.3 硬件接口連接

如圖4,P1口作為復(fù)用的地址/數(shù)據(jù)總線連接SJA1000的AD口,P2.0和SJA1000的片選段CS相連,使得SJA1000作為單片機(jī)外圍存儲(chǔ)器映射的I/O器件。此外,SJA1000的RX0、TX0和PCA82C250的RXD、TXD相連。
圖4 SJA1000 和PCA82C250 接口連接示意圖
圖4:SJA1000 和PCA82C250 接口連接示意圖
 
2.4 無(wú)線模塊

2.4.1 nRF24L01 芯片介紹

無(wú)線芯片選用nRF24L01.它是2.4GHz 無(wú)線射頻收發(fā)芯片,傳送速率高達(dá)2Mbps,支持125 個(gè)可選工作頻率,具有地址和CRC 校驗(yàn)功能,提供SPI 接口。

有專用的中斷管腳,支持3 個(gè)中斷源,可向MCU 發(fā)出中斷信號(hào)。具有自動(dòng)應(yīng)答功能,在確認(rèn)收到數(shù)據(jù)后記錄地址,并以此地址為目標(biāo)地址發(fā)送應(yīng)答信號(hào)。支持ShockBurstTM 模式,在此模式下,nRF24L01 可以與低速M(fèi)CU 相連。nRF24L01 在接收模式下可以接收6 路不同通道的數(shù)據(jù)。

2.4.2 nRF24L01 硬件接口連接

如圖5 所示,單片機(jī)通過(guò)模擬SPI 總線時(shí)序和nRF24L01 進(jìn)行通信。其外部中斷管腳IRQ 和單片機(jī)的P3.2(外部中斷0)相連。
圖5 nRF24L01 接口連接示意圖
圖5:nRF24L01 接口連接示意圖

2.5 RFID 模塊

2.5.1 MF RC500 芯片介紹。
RFID 模塊選用飛利浦公司的MF RC500,它是目前廣泛使用的RFID 芯片之一。MF RC500 支持ISO14443A協(xié)議,支持MIFARE 雙接口卡,內(nèi)部有高集成度模擬電路用于應(yīng)答卡的解調(diào)和解碼,具有64 字節(jié)收發(fā)FIFO 緩沖區(qū)和非易失性密鑰存儲(chǔ)器。此外,有專用的中斷管腳,支持6 個(gè)中斷源,可向MCU 發(fā)出中斷信號(hào)。

2.5.2 MF RC500 硬件接口連接。

由圖6 所示, MCU 將MF RC500 中的寄存器作為外部RAM進(jìn)行訪問(wèn)。INT 管腳懸空,不使用中斷功能。
圖6 MF RC500 接口連接示意圖
圖6:MF RC500 接口連接示意圖

3 軟件系統(tǒng)設(shè)計(jì)

在初始化單片機(jī)程序中,子系統(tǒng)A 外部中斷設(shè)置為低電平觸發(fā),子系統(tǒng)A 的中斷信號(hào)源由nRF24L01提供,當(dāng)nRF24L01 收到數(shù)據(jù)后產(chǎn)生中斷信號(hào),通知MCU 來(lái)讀取數(shù)據(jù)。子系統(tǒng)B 不使用中斷功能。
[page]
在初始化nRF24L01 程序中,子系統(tǒng)B 配置為發(fā)送模式,使用16 位CRC 校驗(yàn)。使用自動(dòng)應(yīng)答功能,數(shù)據(jù)通道0 被設(shè)置為接收應(yīng)答信號(hào),其數(shù)據(jù)通道0 的接收地址必須與發(fā)送端的地址相等,以此來(lái)保證能正確的收到應(yīng)答信號(hào)。一個(gè)系統(tǒng)最多可以有六個(gè)子系統(tǒng)A 組成,這6 個(gè)子系統(tǒng)的發(fā)送地址不能重復(fù)。子系統(tǒng)A 配置為接收模式,使用16 位CRC 校驗(yàn),最多接收6 個(gè)通道的數(shù)據(jù)。這6 個(gè)接收地址和各子系統(tǒng)B 中的發(fā)送地址相等。

在初試化SJA1000 中,使用PliCAN 模式,波特率125Kbps,禁止接受和發(fā)送中斷;輸出控制寄存器配置如下:正常模式,TX 下拉,輸出控制極性。此外,需正確配置驗(yàn)收代碼寄存器和驗(yàn)收屏蔽寄存器,此配置用于CAN 總線仲裁功能的實(shí)現(xiàn)。

在初始化MF RC500 中,其主要設(shè)置如下:TX1和TX2 的輸出配置為13.56MHz 能量載波;解碼器的輸入源為內(nèi)部解調(diào)器;使用Q 時(shí)鐘作為接收器時(shí)鐘;禁止發(fā)送和接收中斷;設(shè)置RxThreshold 寄存器值為0xFF,BitPhase 寄存器值為0xAD 等。

復(fù)位請(qǐng)求函數(shù)將在天線的有效范圍內(nèi)搜索Mifare1 卡,如果有卡存在,將建立通信連接并讀取卡上的卡片類型號(hào)TAGTYPE.防碰撞函數(shù)使MF RC500 在多張Mifare 1 卡選擇其中的一張??ㄟx擇函數(shù)能夠和已知序列號(hào)的卡進(jìn)行通信。認(rèn)證函數(shù)將Mifare 1 卡上的密碼和MF RC500 的EEPROM 中的密鑰進(jìn)行匹配。

只有匹配正確后,才能進(jìn)行對(duì)卡的讀寫操作。發(fā)送停機(jī)指令設(shè)置Mifare 1 卡為HALT MODE.CAN 函數(shù)用于將有關(guān)數(shù)據(jù)發(fā)送至PC 機(jī)。本次設(shè)計(jì)采用查詢方式以確保數(shù)據(jù)已經(jīng)發(fā)送。通過(guò)查詢狀態(tài)寄存器中的標(biāo)志位TBS、TCS 和TS 即可確認(rèn)是否數(shù)據(jù)發(fā)送完畢。類似的,在無(wú)線函數(shù)中為確保數(shù)據(jù)已經(jīng)發(fā)送,通過(guò)查詢狀態(tài)寄存器中的TX_DS 即可。

圖7 子系統(tǒng)A 軟件流程
圖7:子系統(tǒng)A 軟件流程
圖8 子系統(tǒng)B 軟件流程圖
圖8:子系統(tǒng)B 軟件流程圖
 
4 系統(tǒng)測(cè)試

首先,對(duì)RFID 模塊進(jìn)行了測(cè)試。將MIFARE 1卡放入天線有效范圍內(nèi),對(duì)該卡進(jìn)行讀寫操作,并將相關(guān)數(shù)據(jù)顯示在液晶屏上。經(jīng)過(guò)該測(cè)試,RFID 模塊讀寫正常。 隨后,測(cè)試該系統(tǒng)傳輸網(wǎng)絡(luò)的實(shí)時(shí)性,本文以溫度數(shù)據(jù)的無(wú)線傳輸進(jìn)行測(cè)試。測(cè)量溫度的裝置為DS18B20 單線溫度傳感器。將該溫度傳感器連接至子系統(tǒng)B 中,溫度傳感器每隔一秒對(duì)室內(nèi)溫度采樣一次,微控制器讀取溫度數(shù)據(jù)并通過(guò)無(wú)線網(wǎng)絡(luò)發(fā)送給A 子系統(tǒng),A 子系統(tǒng)接收數(shù)據(jù)并通過(guò)CAN 總線發(fā)送至PC 端。

PC 端使用Visual Basic 6.0 編寫上位機(jī)程序,上位機(jī)將溫度數(shù)據(jù)繪制成曲線并寫入文本。溫度曲線如圖8 所示,其中溫度值的精度為1 攝氏度。通過(guò)對(duì)溫度曲線圖和文本數(shù)據(jù)的對(duì)比觀察,發(fā)現(xiàn)溫度數(shù)據(jù)無(wú)異常, 數(shù)據(jù)沒有出現(xiàn)丟失情況。

圖9 溫度曲線圖
圖9:溫度曲線圖
 
5 結(jié)語(yǔ)

本文利用了CAN 總線取代RS-485 總線,克服了后者存在的缺點(diǎn)。同時(shí)還使用了無(wú)線技術(shù),在減少大量布線工作的同時(shí),充分利用了nRF24L01 多點(diǎn)通訊的功能。在系統(tǒng)搭建完成后,筆者對(duì)系統(tǒng)進(jìn)行了長(zhǎng)時(shí)間測(cè)試。測(cè)試結(jié)果表明:數(shù)據(jù)傳輸穩(wěn)定,可靠,實(shí)時(shí)性高,克服了傳統(tǒng)基于RS485 總線設(shè)計(jì)的RFID 收費(fèi)系統(tǒng)的缺陷,具有較強(qiáng)的使用價(jià)值。

相關(guān)閱讀:
RFID技術(shù)原理及其射頻天線設(shè)計(jì)
http://anotherwordforlearning.com/rf-art/80005888
設(shè)計(jì)RFID系統(tǒng)需選擇合適的頻率
http://anotherwordforlearning.com/emc-art/80019199
射頻識(shí)別技術(shù)原理分析
http://anotherwordforlearning.com/rf-art/80013359
要采購(gòu)RFID么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉