威纶通与外围设备MODBUS-RTU通讯的使用

  • 组成
  • 功能
  • 电路
  • 设置
  • 程序
  • 总结

  • 组成

触摸屏:威纶通的MT6103iP

温控模块:竞速电子SEC3007

PID表:东崎电气TE6-RC18W

PLC:三菱FX3U

PLC 232通讯模块:FX3U-232-BD

  • 功能

使用触摸屏与1站温控模块和2站PID表进行MODBUS-RTU的通讯,再使用触摸屏的宏指令读取和写入1,2站的数据,转发给PLC使用

  • 电路

  • 设置

按如图所示设置选择FX3U PLC,选择串口RS232,设置串口COM1,波特率38400,数据位7位,偶检验,停止位1位

按如图所示设置选择MODBUS-RTU从站,选择串口485 2W ,设置串口COM2,波特率9600,数据位8位,无校验,停止位1位

设置温控模块的波特率为9600,数据位为8位,无校验,停止位为1位,地址为1号站

设置PID表的波特率为9600,数据位为8位,无校验,停止位为1位,地址为2号站

  • 程序

创建宏指令程序

设置为周期执行,时间间隔为500ms

编写程序

先定义要使用到的变量

读取1,2站的数据,该案例只需要读取数据

读取函数是这样设置的

地址类型选择4X是因为读时发出的功能码时03H,写时发出的功能码时10H

地址1#0

其中1表示的是站号,0表示的是偏移的地址

将读取的数据转发写入PLC中

写入函数是这样设置的

设置方式和读取函数类似的

保存编译就完成了

  • 总结

该功能实现了触摸屏通过MODBUS-RTU与监控设备的1,2站进行通讯,同时使用宏指令读取设备的地址数据,再将读取的数据写入PLC供PLC使用,从而间接的实现PLC与监控设备的通讯。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要获取多个设备不同的Modbus-RTU通讯的数据,你需要使用一个支持Modbus-RTU通讯协议的软件或者库来实现。这个软件或库可以与多个设备进行通讯,并且可以解析并读取设备发送的数据。 一种常见的实现方式是使用Modbus-RTU通讯协议的Python库,例如pymodbus。通过使用这个库,你可以编写Python代码来读取多个Modbus-RTU设备的数据。 具体的实现步骤如下: 1. 配置串口参数:通讯Modbus-RTU需要使用串口通讯,所以你需要配置串口参数(例如波特率、数据位、停止位等)。 2. 连接设备:使用pymodbus库连接多个Modbus-RTU设备。 3. 读取数据:使用pymodbus库读取设备发送的数据。 下面是一个简单的Python代码示例,用于读取多个Modbus-RTU设备的数据: ```python from pymodbus.client.sync import ModbusSerialClient as ModbusClient # 配置串口参数 port = '/dev/serial0' baudrate = 9600 bytesize = 8 parity = 'N' stopbits = 1 # 连接设备 client1 = ModbusClient(method='rtu', port=port, baudrate=baudrate, bytesize=bytesize, parity=parity, stopbits=stopbits) client1.connect() client2 = ModbusClient(method='rtu', port=port, baudrate=baudrate, bytesize=bytesize, parity=parity, stopbits=stopbits) client2.connect() # 读取数据 result1 = client1.read_holding_registers(address=0, count=10, unit=1) result2 = client2.read_holding_registers(address=0, count=10, unit=2) # 断开连接 client1.close() client2.close() ``` 在这个示例中,我们首先配置了串口参数,然后使用pymodbus库连接了两个Modbus-RTU设备(分别是1号设备和2号设备)。最后,我们使用read_holding_registers()函数读取了这两个设备的保持寄存器中的数据。 需要注意的是,这只是一个简单的示例代码,实际上你可能需要编写更复杂的代码来处理多个设备的数据,例如使用多线程或异步编程来提高效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值