modbus_test/other_client.py

47 lines
1.1 KiB
Python

from pyModbusTCP.client import ModbusClient
print("modbus test")
# Настройки клиента Modbus
MODBUS_SERVER_HOST = "192.168.70.55" # IP-адрес Modbus-сервера
MODBUS_SERVER_PORT = 502
client = ModbusClient(
host=MODBUS_SERVER_HOST,
port=MODBUS_SERVER_PORT,
unit_id=11,
# debug=True
)
client.open()
# addr = 2
# light = client.read_coils(addr, 1)
# print("состояние лампочки", light)
# print("пишем противоположное", not light[0])
# client.write_single_coil(addr, not light[0])
# print("теперь состояние", client.read_coils(addr, 1))
# максимум по input register 2413
# for i in range(2267, 2283):
# for i in range(2500, 2600):
res = []
def get_reg_range(start, stop):
for i in range(start, stop):
r = client.read_holding_registers(i, 1)
if r and r != [0] and r != [65535]:
print(f"{i} === {r}")
get_reg_range(0, 100)
get_reg_range(2100, 2600)
get_reg_range(20000, 24000)
get_reg_range(56000, 57000)
# r = client.read_holding_registers(21901, 1)
# print(r)
# 21901 --- 800 регистр
client.close()