storing sg ready mode to db

This commit is contained in:
Nils Reiners
2025-09-25 21:24:45 +02:00
parent b066658eb0
commit 1784b7c283
2 changed files with 10 additions and 6 deletions

View File

@@ -33,8 +33,8 @@ controller = SgReadyController(es)
while True: while True:
now = datetime.now() now = datetime.now()
if now.second % interval_seconds == 0 and now.microsecond < 100_000: if now.second % interval_seconds == 0 and now.microsecond < 100_000:
state = es.get_state_and_store_to_database(db) state = es.get_state_and_store_to_database(db)
controller.perform_action(heat_pump_name='hp_master', meter_name='solaredge_meter', state=state) mode = controller.perform_action(heat_pump_name='hp_master', meter_name='solaredge_meter', state=state)
db.store_data('sg_ready', mode)
time.sleep(0.1) time.sleep(0.1)

View File

@@ -9,11 +9,15 @@ class SgReadyController():
meter_values = state[meter_name] meter_values = state[meter_name]
power_to_grid = meter_values['40206 - M_AC_Power'] * 10 ** meter_values['40210 - M_AC_Power_SF'] power_to_grid = meter_values['40206 - M_AC_Power'] * 10 ** meter_values['40210 - M_AC_Power_SF']
mode = None
if power_to_grid > 10000: if power_to_grid > 10000:
self.switch_sg_ready_mode(hp.ip, hp.port, 'mode2') mode = 'mode2'
self.switch_sg_ready_mode(hp.ip, hp.port, mode)
elif power_to_grid < 0: elif power_to_grid < 0:
self.switch_sg_ready_mode(hp.ip, hp.port, 'mode1') mode = 'mode1'
self.switch_sg_ready_mode(hp.ip, hp.port, mode)
return mode
def switch_sg_ready_mode(self, ip, port, mode): def switch_sg_ready_mode(self, ip, port, mode):
""" """