Compare commits
2 commits
00bd4ef1f1
...
8ddab6f2b2
Author | SHA1 | Date | |
---|---|---|---|
8ddab6f2b2 | |||
6c426b2422 |
3 changed files with 34 additions and 3 deletions
33
examples/check_peak.py
Executable file
33
examples/check_peak.py
Executable file
|
@ -0,0 +1,33 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import statistics
|
||||||
|
|
||||||
|
from pyfroniusreg import gen24_registers
|
||||||
|
from pyfroniusreg.froniusreg import RegisterReadError
|
||||||
|
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
|
from pymodbus.client.tcp import ModbusTcpClient
|
||||||
|
|
||||||
|
fronius1 = ModbusTcpClient("172.19.107.211", port=502, timeout=10)
|
||||||
|
fronius1.connect()
|
||||||
|
|
||||||
|
current_time = datetime.now()
|
||||||
|
|
||||||
|
soc = gen24_registers.scaledStateOfCharge.get(fronius1)
|
||||||
|
|
||||||
|
charge_data = []
|
||||||
|
discharge_data = []
|
||||||
|
|
||||||
|
print("Gathering 20 second average of battery Charge")
|
||||||
|
while( (datetime.now() - current_time).seconds < 20):
|
||||||
|
charge_data.append(gen24_registers.scaledToBattery.get(fronius1))
|
||||||
|
discharge_data.append(gen24_registers.scaledFromBattery.get(fronius1))
|
||||||
|
|
||||||
|
avg_charge = statistics.mean(charge_data)
|
||||||
|
avg_discharge = statistics.mean(discharge_data)
|
||||||
|
print(" Charge: %.2f" % avg_charge)
|
||||||
|
print("DisCharge: %.2f" % avg_discharge)
|
||||||
|
print(" SOC: %.2f" % soc)
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ import os
|
||||||
@nox.session
|
@nox.session
|
||||||
def lint(session):
|
def lint(session):
|
||||||
session.install("ruff")
|
session.install("ruff")
|
||||||
session.run("ruff", "check", "--exclude", "examples")
|
session.run("ruff", "check", "--exclude", "examples", "--exclude", "tools")
|
||||||
session.run("ruff", "check", "--extend-select", "N", "src/pyfroniusreg/froniusreg.py")
|
session.run("ruff", "check", "--extend-select", "N", "src/pyfroniusreg/froniusreg.py")
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,6 @@
|
||||||
# Copyright 2024, Paul Warren <pwarren@pwarren.id.au>
|
# Copyright 2024, Paul Warren <pwarren@pwarren.id.au>
|
||||||
# Licensed under AGPLv3, See LICENSE.md for terms
|
# Licensed under AGPLv3, See LICENSE.md for terms
|
||||||
|
|
||||||
from typing import Any
|
|
||||||
|
|
||||||
from pymodbus.constants import Endian
|
from pymodbus.constants import Endian
|
||||||
from pymodbus.payload import BinaryPayloadDecoder, BinaryPayloadBuilder
|
from pymodbus.payload import BinaryPayloadDecoder, BinaryPayloadBuilder
|
||||||
from pymodbus.client.base import ModbusBaseClient
|
from pymodbus.client.base import ModbusBaseClient
|
||||||
|
|
Loading…
Reference in a new issue