基于CAN和2.4G的RFID收費(fèi)系統(tǒng)
1 引言
本文引用地址:http://m.butianyuan.cn/article/153827.htmRFID(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í)性較低和通訊效率低的問題。
隨著計(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ù)是通過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ù)將通過無(wú)線網(wǎng)絡(luò)傳送至CAN 收發(fā)器,后者再將數(shù)據(jù)通過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 總線上,通過CAN總線,每個(gè)節(jié)點(diǎn)將數(shù)據(jù)傳送至PC 端。
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ù)通過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.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ì)所需。
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 相連。
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ī)通過模擬SPI 總線時(shí)序和nRF24L01 進(jìn)行通信。其外部中斷管腳IRQ 和單片機(jī)的P3.2(外部中斷0)相連。
電磁爐相關(guān)文章:電磁爐原理
評(píng)論