概述
RFID或射頻識(shí)別是一種通過(guò)電磁波進(jìn)行通信的方式(射頻波,具體而言)。 RFID標(biāo)簽和RFID卡通常用于身份驗(yàn)證和訪問(wèn)控制。
您可能已經(jīng)看到人們?cè)谵k公室入口處刷身份證。身份證實(shí)際上是具有雇員個(gè)人信息的RFID卡。在他/她刷卡的那一刻,他的檢查時(shí)間將被計(jì)算機(jī)捕獲。
我已經(jīng)使用RFID閱讀器和RFID卡實(shí)施了多個(gè)項(xiàng)目,如 RFID安全訪問(wèn)控制系統(tǒng)使用8051 ,基于RFID的考勤系統(tǒng)和 Arduino RFID閱讀器。
在所有這些項(xiàng)目中,我提到一個(gè)簡(jiǎn)單的RFID通信系統(tǒng)由三部分組成:RFID卡或標(biāo)簽(包含嵌入在芯片上的用戶或產(chǎn)品信息), RFID閱讀器(觸發(fā)RFID卡并從卡中提取信息的設(shè)備)和主機(jī)系統(tǒng)(如計(jì)算機(jī)或微控制器,然后處理數(shù)據(jù))。
在這個(gè)項(xiàng)目中,我將使用流行的EM-18 RFID閱讀器模塊和一些RFID卡。另一種流行的RFID閱讀器稱為RFID RC522。 EM-18和RC522 RFID模塊之間的主要區(qū)別是:
EM-18基于125 KHz射頻通信,而RC522基于13.56 MHz頻率
進(jìn)入接口選項(xiàng)后,EM-18使用串行通信,而RC522使用SPI通信(盡管芯片也支持I2C和UART)。
因此,選擇RFID閱讀器模塊非常重要,因?yàn)樗x了如何使用Raspberry Pi或Arduino與模塊進(jìn)行通信。
我不會(huì)詳細(xì)介紹RFID閱讀器和RFID通信的工作細(xì)節(jié),因?yàn)橛性S多類似于這里的教程: RFID技術(shù)及其應(yīng)用。我將跳轉(zhuǎn)到Raspberry Pi RFID閱讀器界面。
設(shè)置用于串行通信的Raspberry Pi
我在Raspberry Pi RFID閱讀器模塊接口中提到的重要事項(xiàng)是EM-18 RFID閱讀器模塊使用UART通信即串行通信。如果你還記得,我還沒有完成任何涉及Raspberry Pi串口通信的項(xiàng)目。
在繼續(xù)使用Raspberry Pi和RFID閱讀器模塊的接口之前,有為了在Raspberry Pi中啟用串行通信,您需要在Raspberry Pi中執(zhí)行一些操作。
在Raspberry Pi中,串行端口可以使用或配置為兩個(gè)方式:訪問(wèn)控制臺(tái)和串行接口。默認(rèn)情況下,Raspberry Pi的串行端口配置為訪問(wèn)Linux控制臺(tái),即作為控制臺(tái)I/O引腳。
但是,我們希望將其更改為充當(dāng)串行通信端口,以便我們可以連接外部外圍設(shè)備,如本項(xiàng)目中的RFID閱讀器,通過(guò)串行通信進(jìn)行通信。
為了做到這一點(diǎn),首先登錄您的Raspberry Pi使用SSH(Putty)。輸入以下命令進(jìn)入Raspberry Pi配置工具。
sudo raspi-config
在“接口選項(xiàng)”中,選擇“串行”選項(xiàng)。

現(xiàn)在,它詢問(wèn)您是否要通過(guò)串行通信訪問(wèn)登錄shell。選擇“否”選項(xiàng)。 然后,它要求您啟用串行端口硬件。選擇“是”選項(xiàng)。

完成該過(guò)程并重新啟動(dòng)Raspberry Pi。在Raspberry Pi啟動(dòng)后,一旦使用Putty登錄agin并檢查串行端口是否已啟用,請(qǐng)輸入以下命令。
dmesg | grep tty

在底部,您可以看到,“ttyS0”已配置如串行。現(xiàn)在,您可以繼續(xù)使用Raspberry Pi連接RFID閱讀器模塊,通過(guò)串口進(jìn)行通信。
Raspberry Pi RFID閱讀器接口電路圖
下圖顯示了Raspberry Pi和EM-18 RFID閱讀器之間的連接。

所需組件
Raspberry Pi 3 Model B
EM-18 RFID閱讀器模塊
RS232 - 到 - USB適配器(因?yàn)槲业腞FID閱讀器只有RS232輸出)
少量RFID卡或RFID標(biāo)簽
RFID閱讀器電源(我的RFID閱讀器有5V穩(wěn)壓器)
用于Raspberry Pi和RS232-USB適配器的5V電源
連接電線
680Ω電阻(1/4瓦)
1.5KΩ電阻(1/4瓦)
在Raspberry Pi上GPIO14和GPIO14即物理引腳8和10分別是UART TX和RX引腳。由于我們已經(jīng)啟用了Raspberry Pi的串行端口,您可以將這些引腳連接到外圍設(shè)備。
現(xiàn)在是時(shí)候注意Raspberry Pi的工作原理了3.3V邏輯。因此,Raspberry Pin的RX引腳只能用3.3V邏輯給出。為了做到這一點(diǎn),我們需要使用一個(gè)由兩個(gè)電阻組成的簡(jiǎn)單分壓器網(wǎng)絡(luò)將RFID讀取器的TX線電平轉(zhuǎn)換為3.3V。
我使用了680Ω和1.5KΩ電阻。分壓器的輸出連接到Raspberry Pi的UART RXD引腳,即GPIO15。在Raspberry Pi和RFID讀取器模塊之間建立共同的接地連接。
代碼
編寫一個(gè)簡(jiǎn)單的Python腳本來(lái)讀取RFID卡中的值,將其與預(yù)定義的值進(jìn)行比較(我已事先收集了所有RFID卡的數(shù)據(jù))并顯示特定信息。
注意:在“port =‘/dev/ttyS0’”行中,將ttyS0替換為分配給您的串行設(shè)備的名稱。
工作
Raspberry Pi RFID閱讀器模塊接口的工作非常簡(jiǎn)單。在Raspberry Pi上啟用串行端口后,我們必須分配與UART通信相關(guān)的其余參數(shù),即波特率,奇偶校驗(yàn),停止位和數(shù)據(jù)大小。所有這些值都在Python代碼中設(shè)置。
在此之后,您將收到“放置卡片”的消息。當(dāng)您將RFID卡放在RFID閱讀器上時(shí),RFID閱讀器模塊將從卡讀取數(shù)據(jù)并通過(guò)串行通信將數(shù)據(jù)發(fā)送到Raspberry Pi。
這Raspberry Pi進(jìn)一步分析數(shù)據(jù),并在屏幕上顯示相應(yīng)的消息。

應(yīng)用程序
接口帶有Raspberry Pi的RFID閱讀器非常有用,因?yàn)槟梢詫?shí)現(xiàn)廣泛的應(yīng)用,例如:
訪問(wèn)控制
驗(yàn)證
電子機(jī)票
電子支付
電子收費(fèi)
考勤
-
python
+關(guān)注
關(guān)注
57文章
4876瀏覽量
90057 -
樹莓派
+關(guān)注
關(guān)注
122文章
2078瀏覽量
110474
發(fā)布評(píng)論請(qǐng)先 登錄
探索AT88RF1354:高性能13.56 MHz Type B RF閱讀器的深度剖析
RFID技術(shù)優(yōu)點(diǎn)
基于樹莓派(RaspberryPi)構(gòu)建高效實(shí)時(shí)監(jiān)控系統(tǒng)
如何在樹莓派上設(shè)置并使用VNC?遠(yuǎn)程訪問(wèn)完整指南!
絕了!耐達(dá)訊自動(dòng)化EtherCAT轉(zhuǎn)RS232盤活RFID閱讀器
精通樹莓派桌面:遠(yuǎn)程桌面解決方案全指南!
哪些場(chǎng)景要使用到RFID標(biāo)簽打印機(jī)?RFID標(biāo)簽打印機(jī)一般多少錢?
樹莓派小技巧:無(wú)需鍵盤或顯示器,如何通過(guò)WiFi設(shè)置樹莓派?
東集RFID讀寫器有什么用
ESP32驅(qū)動(dòng)MFRC522 RFID模塊讀寫IC卡數(shù)據(jù)
10萬(wàn)用戶見證!樹莓派 Connect 正式版發(fā)布:遠(yuǎn)程訪問(wèn)功耗直降50%!
別再用鑰匙啦!樹莓派Pico教你用RFID“刷”門禁~
RFID紙質(zhì)芯片卡的應(yīng)用
淺談樹莓派在工業(yè)領(lǐng)域的應(yīng)用!
如何使用樹莓派連接EM-18RFID閱讀器模塊 并通過(guò)Python腳本從一些RFID卡訪問(wèn)信息
評(píng)論