覆盆子PI RFID阅读器界面

在这个项目中,我们将了解RFID阅读器(EM-18)和Raspberry PI RFID阅读器界面。我将通过Python脚本与覆盆子PI与覆盆子PI进行接口和访问信息。

覆盆子PI RFID读取器界面图像5

概述

RFID或射频识别是通过电磁波(射频波,特定射频波)的通信方式。RFID标签和RFID卡通常用于身份验证和访问控制。

您可能已经看到人们在办公室的入口处刷过他们的身份证。身份证实际上是具有员工个人信息的RFID卡。他/她刷卡的那一刻,他的检查时间将被计算机捕获。

RFID阅读器和RFID卡

我已经使用RFID阅读器和RFID卡实现了几个项目RFID安全访问控制系统使用8051基于RFID的考勤系统Arduino RFID读者

在所有这些项目中,我提到了一个简单的RFID通信系统包括三个部分:RFID卡或标签(包含嵌入在芯片上的用户或产品信息),RFID读取器(触发RFID卡的设备和触发RFID卡的设备)从卡中提取信息)和主机系统(如计算机或微控制器,然后处理数据)。

在这个项目中,我将使用流行的EM-18 RFID阅读器模块和一些RFID卡。还有另一个名为RFID RC522的流行RFID阅读器。EM-18和RC522 RFID模块之间的主要差异是:

  • EM-18基于125 kHz射频通信,而RC522基于13.56 MHz频率。
  • 通过界面选项,EM-18使用串行通信,而RC522使用SPI通信(尽管芯片支持I2C和UART)。

因此,选择RFID阅读器模块的选择非常重要,因为它定义了使用Raspberry PI或Arduino与模块通信的方式。

我不会进入RFID读者和RFID通信的工作的细节,因为有许多关于这里的教程与这里相同:RFID技术及其应用。我将跳入覆盆子pi rfid读取器界面。

设置Raspberry PI进行串行通信

我在Raspberry PI RFID读取器模块接口中提到的重要事项是EM-18 RFID读取器模块使用UART交流即串行通信。如果您记得,我尚未完成任何项目,直到现在涉及覆盆子PI通过串行通信。

在继续覆盆子PI和RFID读取器模块的界面之前,您需要在Raspberry PI中进行一些事情,以便在Raspberry Pi中启用串行通信。

在Raspberry PI中,可以通过两种方式使用或配置串行端口:访问控制台和串行接口。默认情况下,raspberry pi的串行端口配置为访问Linux控制台I.E.作为控制台I / O引脚。

但是,我们希望将其更改为充当串行通信端口,以便我们可以通过串行通信进行通信的RFID读取器等外部外围设备。

为此,请使用SSH(PUTTY)首先登录您的Raspberry PI。输入以下命令输入raspberry pi配置工具。

sudo raspi-config

在“接口选项”中,选择“串行”选项。

Raspberry PI RFID读取器界面图像1

现在,它询问您是否希望通过串行通信访问登录外壳。选择“否”选项。然后,它要求您想要启用串行端口硬件。选择“是”选项。

覆盆子PI RFID读取器接口图像2

完成过程并重新启动覆盆子PI。raspberry pi通电后,一旦agin使用putty登录并才能检查是否已启用串行端口,请输入以下命令。

dmesg |grep tty.

Raspberry PI RFID读取器界面图像3

在底部,您可以看到“TTYS0”配置为串行。现在,您可以使用Raspberry PI进行接口RFID读取器模块,以通过串行进行通信。

覆盆子PI RFID读取器接口电路图

以下图像显示了覆盆子PI和EM-18 RFID读取器之间的连接。

覆盆子PI RFID读取器接口电路图1

所需的组件

  • 覆盆子PI 3型号b
  • EM-18 RFID阅读器模块
  • RS232 - 至USB适配器(因为我的RFID读者只有RS232输出)
  • 很少有RFID卡或RFID标签
  • RFID读取器电源(我的RFID阅读器有一个5V稳压器)
  • 覆盆子PI和RS232-USB适配器的5V电源
  • 连接电线
  • 680Ω电阻(1/4瓦)
  • 1.5kΩ电阻(1/4瓦)

电路设计

在Raspberry Pi,GPIO14和GPIO14 I.E.物理引脚8和10分别是UART TX和RX引脚。正如我们已启用Raspberry PI的串行端口一样,您可以将这些引脚连接到外部外围设备。

现在是一个很好的时机,raspberry pi适用于3.3V逻辑。因此,覆盆子引脚的RX引脚只能以3.3V逻辑给出。为此,我们需要级别将RFID读取器的TX线转换为3.3V,使用由两个电阻组成的简单分压器网络。

我使用了680Ω和1.5kΩ电阻。分压器的输出连接到Raspbery Pi的UART RXD引脚I. GPIO15。在Raspberry PI和RFID读取器模块之间进行共同的接地连接。

代码

写入简单的Python脚本以读取RFID卡的值,将其与预定义值进行比较(我已经事先收集了所有RFID卡的数据)并显示了特定信息。

笔记:在“端口='/ dev / ttys0'行中,替换ttys0与分配给您的串行设备的名称。

在职的

覆盆子PI RFID读取器模块界面的工作非常简单。在raspberry pi上启用串口后,我们必须分配与UART通信相关联的其余参数即,BAUK率,奇偶频频,停止位和数据大小。所有这些值都设置在Python代码中。

在此之后,您将收到一条消息作为“放置卡”。将RFID卡放在RFID读取器上时,RFID阅读器模块将从卡中读取数据并通过串行通信将数据发送到覆盆子PI。

覆盆子PI进一步分析了该数据,并在屏幕中显示适当的消息。

Raspberry PI RFID读取器界面图像4

应用程序

与Raspberry PI接口RFID读取器可以非常有用,因为您可以实现广泛的应用程序,如:

  • 访问控制
  • 验证
  • 电子机票
  • 电子付款
  • e-toll.
  • 出勤

7回复

  1. 先生,我想用raspberry pi接口em-18,我正确地完成了配置步骤,但我的ttyama0仍然在UART中,它不是转换为串行

  2. 谢谢你的全部,你的意思是通过串行设备的名称来重新开始ttyso,你的意思是我把我的RFID阅读器名称或究竟是什么???,

    1. 不可以。raspberry pi(或raspbian操作系统)将分配每个设备的名称。在我的情况下,通过串行通信接口的RFID读取器给出标识符“TTYS0”。该名称应在代码中指定(在{port ='/ dev / ttys0'}行中)。检查在案例中分配的名称,并在代码中添加相同的名称。

      1. 谢谢你重新翻译先生,我也是分配的设备名称是ttys0所以试过你的代码但没有发生任何事情,我有蜂蜜RFID读者WICHAND接口RS232,所以我使用了R232接口和2个电阻330欧姆和560欧姆,请在这里帮助我粘在或我可以使用输入引脚使用Wiegand接口

发表评论

您的电子邮件地址不会被公开。

电子机器Favicon.
<\/i>","library":""}}" data-widget_type="nav-menu.default">
Baidu
map