webrelay-modbus/test1.py
2020-02-10 20:18:39 -08:00

45 lines
1,013 B
Python

import easymodbus.modbusClient
ipaddr, port = ('192.168.1.21', 502)
uid = 240
modbusclient = easymodbus.modbusClient.ModbusClient(ipaddr, port)
# modbusclient.timeout = 5000
modbusclient.unitidentifier = uid
modbusclient.connect()
modbusclient.is_connected()
# holdingRegisters = easymodbus.modbusClient.convert_registers_to_float(modbusclient.read_holdingregisters(2038,8))
# print (holdingRegisters)
def reg2str (r):
ms = (r & 0xff00) >> 8
ls = (r & 0xff)
return chr(ms) + chr(ls)
from functools import reduce
holdingRegisters = modbusclient.read_holdingregisters(296,1)
print(hex(holdingRegisters[0]))
holdingRegisters = modbusclient.read_holdingregisters(297,1)
print(holdingRegisters)
modbusclient.close()
from stabiliti import StabilitiController as SC
sc = SC(ipaddr)
sc.getNetworkConfigs()
sc.printAllFaults(sc.readFaultActivity())
sc.printAllFaults(sc.readFaultOccurence())
print (
list(filter (lambda x: x[1] == '1', enumerate(sc.readFaultActivity())))
)
sc.checkClose()