使用西门子Logo!软舒适,我想连接西门子Logo!(8)与pymodbus!
西门子软舒适性网络输入的设置(我还尝试了ID 255单元和Modbus类型的DI(数字输入))
Pc设置,(我尝试过这两个接口)
Pymodbus代码:
import time
client = ModbusTcpClient('192.168.0.3')
print(client.connect())
while True:
time.sleep(1)
print(client.write_coil(1, True))
time.sleep(1)
print(client.write_coil(1, False))
产出:
True
Modbus Error: [Input/Output] [WinError 10054] An existing connection was forcibly closed by the remote host
Modbus Error: [Input/Output] [WinError 10054] An existing connection was forcibly closed by the remote host
发布于 2022-09-29 11:59:32
通过PC连接到Logo有两种方法,一种是Logo充当Modbus服务器,另一种是Modbus客户端。
徽标!作为Modbus服务器:
添加服务器连接:
将选项完全保留为空:
然后,您将在徽标底部看到一个黄色的小套接字:
不需要进一步配置(图表编辑器可以保留为空)
将此配置推送到Logo:
发送modbus-tcp-消息到Logo,如最初的文章所述.目标线圈在Logo!-Settings中进行了描述(它们从1开始,而pymodbus从0开始,因此需要减去1:
因此,如果我们想打开Q1:
from pymodbus.client.sync import ModbusTcpClient
client = ModbusTcpClient('192.168.0.3') # Default port is 502
client.write_coil(address=8192, value=True) # Default unit_id is 1
徽标!作为客户
添加客户端连接:
输入要读取的值:
运行modbus服务器,请参阅文档
https://stackoverflow.com/questions/73859701
复制相似问题