抖音粉丝群1
『7x24小时有问必答』


w3.jpg

KUNBUS Revpi Core 3是工业级的树莓派,可作为小型的工业PC用,外观十分小巧,操作简单,DIN导轨模块化安装,RevPi core 3能与RevPi IO连接,能实时对这些IO的控制。其次RevPi core 3与RevPi网关模块化连接,可通过网关直接进入各种工业以太网和现场总线中,同时RevPi core 3本身具备了Modbus TCP和Modbus RTU主从站的功能,进入两种协议一般不需要再通过网关。RevPi core 3基于树莓派的开发板和系统,其操作系统也是基于Linux内核的,所以也可用RevPi core 3来做硬件和软件的开发,完全适应工业场合,在工业场景下的使用有无限的想象力。本篇我们将为您展示如何使用树莓派的Modbus RTU的主站功能区读取RFID数据。

在以下示例中,我们将RevPi核心用作Modbus RTU主站,并将RFID读卡器连接到它。

所使用的工具:

I、RevPi核心II、从站设备(Iveno RFID MODBUS读卡器RFID-MB-10)III、带有D-Sub 9连接器的线缆IV、适配器(USB转RS485/422)V、网络连接 要求:

I、网络浏览器,例如Google Chrome或Mozilla Firefox。II、RevPi Core位于您的网络中。

将从站连接到RevPi内核


    将RevPi Core的USB端口连接到适配器。

    通过D-Sub 9插座将适配器连接到从站。

    将您的RevPi Core连接到电源。



确定Modbus RTU网络数据


为了配置从站,我们需要事先提供一些数据,以便我们可以通过RevPi内核访问从站。我们在从站的用户手册中找到了这些数据。

在此示例中,我们将RFID读卡器“ Iveno RFID MODBUS读卡器RFID-MB-10 ”用作从属设备。请注意从站用户手册中的以下数据:

数据类型值(RFID读卡器的示例数据)
接口/ dev / ttyUSB0
波特率9600
数据位8
停止位1个
校验位
从站地址1
Modbus功能读取保持寄存器
Modbus寄存器应答器代码[0]1000
Modbus寄存器应答器代码[1]1001
Modbus寄存器应答器代码[2]1002
Modbus寄存器应答器代码[3]1003
Modbus寄存器应答器代码[4]1004

启用ModbusRTU主站功能


    打开您的网络浏览器。

    在Web浏览器的地址栏中输入RevPi Core的IP地址。



出现登录窗口。


    使用用户名“ admin”登录。

    输入密码。您可以在RevPi Core侧面的标签上找到它。

    点击“登录”。


w4.jpg

现在,我们可以查看RevPi Core的当前设备状态。

    点击“服务”标签。在“启用/禁用Modbus主站”行中单击“启用”。点击“全部保存”按钮。

注意!您也可以在命令行上激活“主机”功能。输入以下命令:“ sudo revpi-config enable pimodbus-master”。

w5.jpg



    点击“应用”标签。

    单击条目“ PiCtory”后面的开始按钮,PiCtory开始。


w6.jpg

ModbusRTU主站配置


    打开设备目录中的“虚拟设备”文件夹。

    选择ModbusRTU Master。

    按住鼠标左键,然后将Modbus-RTU Master拖到RevPi Core 3。



w7.jpg

在“设备数据”窗口中设置MODBUS主站的基本配置。如果您使用许多设备,并希望稍后在另一个程序中处理数据,那么此输入将非常有帮助。在“值编辑器”中定义串行连接的参数。我们已经从传感器的用户手册中确定了从站的值:


    设备路径:USB设备路径波特率:9600校验位:无数据位:8停止位:1

w8.jpg


    右键单击配置板上的Modbus RTU主站。将打开一个可选菜单。选择条目“扩展数据”以打开输入配置。


w9.jpg

这是我们设置Modbus命令的地方。在此示例中,我们需要一个命令来读取RFID传感器的值。我们已经从传感器的使用说明书中收集了必要的信息:

从站地址:1功能码:READ_Holding_REGISTERS寄存器地址:1000寄存器数量:5

w10.jpg

保存配置


单击“文件>保存”以保存文件。点击“工具>重置驱动程序”。这将激活设备配置的更改。
在过程映像中查询值

打开命令行并输入以下命令:
piTest -v Input_Word_1
您将在过程映像中获取值的位置信息:
variable name: Input_Word_1offset: 11length: 16bit
这些值在过程映像中,从地址16开始。我们需要读取10个字节。
我输入以下命令并查看需要的值:“ piTest -r 11,10,h”。如果现在将RFID卡握在读卡器上,则可以观察过程映像中值的变化。
piTest -r 11,10,h00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 0004 00 00 00 1b 00 87 00 2b 0004 00 00 00 1b 00 87 00 2b 0004 00 00 00 1b 00 87 00 2b 00[...] 以上是我们利用树莓派RevpPi core 3读取RFID信号的全部过程。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码