Python-modbustcp通信-plc读写

本文介绍了如何使用Python的modbus-tcp库与PLC进行通信,包括读取和写入功能码的详细说明,如READ_COILS、READ_HOLDING_REGISTERS等。同时,解释了modbus参数、PLC存储指令的数据类型,并提供实用代码示例,还涉及到了利用Apscheduler进行任务定时的扩展应用。
摘要由CSDN通过智能技术生成

Python-modbustcp通信-plc读写

1,功能码说明

读取

:%m  对应 READ_COILS 线圈寄存器 数值 0和1

%mw存单字节 %mf浮点数 %md双字节   对应 READ_HOLDING_REGISTERS 保持寄存器 

写入

单个写入线圈寄存器WRITE_SINGLE_COIL%m

单个写入保持寄存器WRITE_SINGLE_REGISTER

写入多个保持寄存器WRITE_MULTIPLE_REGISTERS

写入多个线圈寄存器WRITE_MULTIPLE_COILS

2、使用库


import modbus_tk.modbus_tcp as mt
import modbus_tk.defines as md
import struct//浮点数解码

3、modbus参数说明

slave:客户端id,有个数限制 

function_code:功能码
starting_address:plc开始地址对应%mw12 不超过3位数

quantity_of_x:读寄存器个数

output_value:写入寄存器的值对应寄存器类型 仅在写入的时候有用

data_format:写入数据的格式 f:浮点数l:双字节,但是这个字节一般没用,因为plc是自定义的浮点数和long类型存储,所以需要使用struct库解析数据,如低字节在前高字节在后,

4、plc存储指令基本数据类型

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张凯的工作室

给我一块,我替你解决问题

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值