首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Pymodbus RTU连接故障

Pymodbus RTU连接故障
EN

Stack Overflow用户
提问于 2017-01-19 22:49:48
回答 1查看 3.5K关注 0票数 3

我是python和modbus的初学者,现在我正在尝试用pymodbus控制连接到串行端口的风扇几个小时。使用制造商的专有软件,我能够控制风扇,这样连接本身就可以工作了。然而,我自己的代码却没有。

根据手册,风扇设置为以下值:

模式: RTU

波特率: 19200

奇偶校验:偶数

超时:1

从ID: 247 (F7h)

数据库:8

我修改了Pymodbus Library Examples中的pymodbus示例代码。这是我的代码:

代码语言:javascript
运行
复制
from pymodbus3.client.sync import ModbusSerialClient as ModbusClient
Fan = ModbusClient(method='rtu',port ='/dev/ttymxc1', parity = 'E', baudrate='19200', timeout=1)
connection = Fan.connect()
a = Fan.write_register(2,1, unit=0xF7)
b = Fan.read_holding_registers(2,1, unit = 0xF7)
Fan.close()

读取和写入命令都会导致以下错误:

代码语言:javascript
运行
复制
pymodbus3.exceptions.ModbusIOException: Modbus Error: [Input/Output] Server responded with bad response

即使没有插入电缆,我也会收到相同的信息。

有没有人有什么建议出了什么问题?

EN

回答 1

Stack Overflow用户

发布于 2017-01-20 20:23:53

超时是端口等待应答的时间。

将超时设置为~2000,1表示1毫秒,它们可能表示1秒。

并尝试地址1(如果上面的地址不起作用),同时检查Modbus地址是否可以配置为其他地址(可能是风扇上的一些开关)。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41744751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档