pyFroniusReg/examples/read_regs.py

44 lines
1.2 KiB
Python
Executable file

#!/usr/bin/env python3
from pyfroniusreg import gen24_registers as froniusreg
from pyfroniusreg.froniusreg import registerReadError
from pymodbus.client.tcp import ModbusTcpClient
fronius1 = ModbusTcpClient("172.19.107.211", port=502, timeout=10)
fronius1.connect()
print(froniusreg.ID.getValue(fronius1))
print(froniusreg.L.getValue(fronius1))
# Some strings
print(froniusreg.Mn.getValue(fronius1))
print(froniusreg.Md.getValue(fronius1))
print(froniusreg.Vr.getValue(fronius1))
print(froniusreg.SN.getValue(fronius1))
print(froniusreg.DA.getValue(fronius1))
soc = froniusreg.scaledStateOfCharge.getValue(fronius1)
print(" SOC: %s%%" % soc)
discharge = froniusreg.scaledOutWRte.getValue(fronius1)
print(" DRate: %d%%" % discharge)
charge = froniusreg.scaledInWRte.getValue(fronius1)
print(" CRate: %d%%" % charge)
mode = froniusreg.StorCtl_Mode.getValue(fronius1)
print(" Mode: %d" % mode)
reserve = froniusreg.scaledReserve.getValue(fronius1)
print(" Res: %d" % reserve)
rate = froniusreg.scaledMaxChaRte.getValue(fronius1)
print(" rate: %d" % rate)
rate = froniusreg.scaledMaxWChaGra.getValue(fronius1)
print(" WGra rate: %d" % rate)
revert = froniusreg.InOutWRte_RvrtTms.getValue(fronius1)
print("Timer: %d" % revert)