MODBUS TCP

Modbus TCP 客户端和服务器 master & server
客户端是信息的接收端,服务端是是信息的发送端,一个服务端可以对应多个接收端。

client端:

import sys
import logging
import modbus_tk
import modbus_tk.defines as cst
import modbus_tk.modbus_tcp as modbus_tcp
LOGGER = modbus_tk.utils.create_logger("console")
def modbustcp_num(crowd_num, ip, port=502):
    try:
        #连接从机地址,这里要注意端口号和IP与从机一致
        MASTER = modbus_tcp.TcpMaster(host=ip, port=port)
        MASTER.set_timeout(5.0)
        LOGGER.info("connected")
        #读取从机1的0-4保持寄存器
        # LOGGER.info(MASTER.execute(1, cst.READ_HOLDING_REGISTERS, 0, 4))
        # #读取从机1的4-14保持寄存器,因为寄存器独立分块了,所以不能直接连通读取,强行结果是会出现数据越界
        # LOGGER.info(MASTER.execute(1, cst.READ_HOLDING_REGISTERS, 4, 14))
        # 需要按照execute格式
        LOGGER.info(MASTER.execute(1, cst.WRITE_SINGLE_REGISTER, 0 ,output_value=crowd_num))
        # LOGGER.info(MASTER.execute(1, cst.WRITE_MULTIPLE_REGISTERS, 0, output_value=[0, 19,1,2]))
        # LOGGER.info(MASTER.execute(1, cst.READ_HOLDING_REGISTERS, 0, 4))

        # LOGGER.info(MASTER.execute(2, cst.READ_COILS, 0, 8))
        # LOGGER.info(MASTER.execute(2
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值