cjungde hat geschrieben: Do Aug 31, 2023 11:00 am
In dem Moment, in dem ich eure Posts gelesen habe, habe ich das Update bekommen. Ich schau heute Abend nach, was ich anpassen muss. Danke für jeden Tip den ihr schon für mich habt.
Gruß
Christoph
Hallo Christoph,
Ich habe mal das bat.py so abgeändert, also die Statistc werte über die Simulation implementiert:
#!/usr/bin/env python3
from dataclass_utils import dataclass_from_dict
from modules.common.component_state import BatState
from modules.common.component_type import ComponentDescriptor
from modules.common.fault_state import ComponentInfo
from modules.common.simcount import SimCounter
from modules.common.store import get_bat_value_store
from modules.devices.senec.config import SenecBatSetup
class SenecBat:
def __init__(self, device_id: int, component_config: SenecBatSetup) -> None:
self.__device_id = device_id
self.component_config = dataclass_from_dict(SenecBatSetup, component_config)
self.store = get_bat_value_store(self.component_config.id)
self.component_info = ComponentInfo.from_component_config(self.component_config)
self.sim_counter = SimCounter(self.__device_id, self.component_config.id, prefix="speicher")
def update(self, response) -> None:
power=round(response["ENERGY"]['GUI_BAT_DATA_POWER'],2)
soc=round(response["ENERGY"]['GUI_BAT_DATA_FUEL_CHARGE'],2)
imported, exported = self.sim_counter.sim_count(power)
bat_state = BatState(
power=power,
soc=soc,
imported=imported,
exported=exported
)
self.store.set(bat_state)
component_descriptor = ComponentDescriptor(configuration_factory=SenecBatSetup)
und im senec_device.py folgende Anderung:
class Senec_Connection():
def __init__(self, device_ip):
self.device_ip = device_ip
self.read_api = f"https://{device_ip}/lala.cgi"
def get_values(self, request_json = {}):
if not request_json: request_json = BASIC_REQUEST
try:
response = requests.post(self.read_api, json=request_json, verify=False)
damit funktioniert es erst mal.
Ich benutze auch nur den bat teil.
Muss man evtl beim counter und inverter auch so machen.
Schau mal was du davon gebrauchen kannst.
Gruß
Hubert