- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何从 Register with pymodbus 中读取数据?
我正在尝试这段代码:
import pymodbus
from pymodbus.pdu import ModbusRequest
from pymodbus.client.sync import ModbusSerialClient as ModbusClient
#initialize a serial RTU client instance
from pymodbus.transaction import ModbusRtuFramer
#count= the number of registers to read
#unit= the slave unit this request is targeting
#address= the starting address to read from
client = ModbusClient(method = 'rtu', port='/dev/extcomm/0/0', stopbits = 1, bytesize = 8, parity = 'N' , baudrate= 38400)
#Connect to the serial modbus server
connection = client.connect()
print(connection)
#Starting add, num of reg to read, slave unit.
coil = client.read_holding_registers(0x01,1,unit=1)# address, count,
slave address
print(coil)
#Closes the underlying socket connection
client.close()
这给了我这个错误:
Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 2 bytes (0 received)
我的slave id是1号,我要读的寄存器也是1号,但不知道为什么还是不行。
最佳答案
from pymodbus.client.sync import ModbusSerialClient as ModbusClient
client = ModbusClient(method='rtu', port='COM4', baudrate=2400, timeout=1)
client.connect()
read=client.read_holding_registers(address = 222 ,count =10,unit=1)
//Address is register address e.g 30222,
//and count is number of registers to read,
//so it will read values of register 30222 to 30232
//unit is slave address, for 1 device leave it 1
data=read.registers[int(2)] #reading register 30223
print(data) #printing value read in above line
关于python - 如何使用 pymodbus 读取寄存器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51056141/
我是 python 和 modbus 的初学者,现在我正在尝试使用 pymodbus 控制连接到串行端口的风扇几个小时。使用制造商的专有软件,我能够控制风扇,因此连接本身有效。然而,我自己的代码没有。
谁能解释如何通过 Modbus TCP/IP 使用 pymodbus 以正确的方式创建请求并获得响应? 我有 PLC,我想将其用作从站,PC 用作主站。 我尝试这样做: from pymodbus.c
我被指派在没有任何文档的情况下执行该任务。我在从 MODBUS 读取数据时遇到问题。这是我能够创建的脚本: from pymodbus.constants import Endian from pym
我对 pymodbus 相当陌生,我正在尝试使用 pymodbus 读取协作机器人的保存寄存器以获取当前 z 坐标的值。此类信息位于 7053 地址。我查看了较旧的问题,但无法让我的代码工作: fro
我有 pymodbus TcpClient 超时问题: import logging from pymodbus.client.sync import ModbusTcpClient logging.
我是 docker 和 Modbus 的新手,我正在尝试使用 Modbus(准确地说是 pymodbus 工具包)编写自定义客户端/服务器应用程序,我可能遇到了 docker 的一些问题。 我试过示例
我有一个 python 脚本,可以使用 pymodbus 库处理 Modbus 事务。为了进行故障排除,我想打印发送和接收到设备的原始字节,最好以十六进制格式。 这是简化的代码,请参阅底部的注释以获取
我有一些在 pymodbus 1.2 下编写的 modbus TCP 代码相关代码是 result = modbus_client.read_holding_registers(40093, 3) 在
如何从 Register with pymodbus 中读取数据? 我正在尝试这段代码: import pymodbus from pymodbus.pdu import ModbusRequest
我写了一个测试代码,它从 PLC 的 modbus 服务器读取一些线圈/寄存器。当我调用一个请求时,代码有效。我拔下电缆,然后 Twisted 调用 clientConnectionLost 函数,这
我对 Modbus 和 PyModBus 很陌生,但是我花了很多时间尝试阅读和试验它。如果有人能指出我正确的方向,我将不胜感激…… 我在寄存器 40001、40003、40005 和 40007(分别
我正在对 PLC 设备(Moxa ioLogik E1214)进行编程,并将 DI 端口连接到按钮,并将线圈连接到 LED 灯。这个想法是,当您按下按钮时,LED 应该亮起。 如果您按住按钮直到执行读
我正在尝试从Modbus TCP读取字符串(Usecase-1)和一个请求中的多种类型的数据(Usecase-2)数据 em> 设备,但是无法正确解码。 系统配置: Python 3.6.5 Pymo
希望你做得很好!我最近开始使用 python 进行 modbus 通信。我想澄清我的一些疑虑。 哪个模块更适合使用 Python 实现 modbus - minimalmodbus、pymodbus、
我想停止 pymodbus async ModbusTcpServer 然后启动一个新服务器。因此,我尝试使用以下简化的代码片段,但出现错误: from pymodbus.server.async i
一般来说,我是 pymodbus 和 modbus 的新手,我已经尝试了一段时间直接添加一个 float 到服务器上下文没有任何成功,我想知道你是否有任何关于如何去做的线索。我已经尝试通过执行以下操作
我使用 pymodbus 读取并解码 float_32 值。 之前,我使用以下代码简单地对其进行解码: from pymodbus.client.sync import ModbusTcpClient
当我尝试使用 pymodbus 和 raspberry pi 读取保持寄存器时遇到问题。我似乎无法同时连接两个服务器/从属设备(一个或另一个都可以工作,但在一起,我无法从两个设备读取寄存器)。这些连接
我已经开始使用 pymodbus 从 modbus 读取值以存储在异地数据库中。我一直在努力解决响应中收到的值与我在 Jace 上看到的值不同的问题。 我也尝试过 modbus-tk 并且我得到了同样
我正在做一个项目,我有两个都安装了 Pymodbus 的 Debian 虚拟机。我正在尝试设置一个虚拟测试环境,在其中我可以在它们通信时从第三个 Kali VM 对两者执行各种网络攻击。不幸的是,我对
我是一名优秀的程序员,十分优秀!