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

@@ -34,7 +34,7 @@ while True:
now = datetime.now()
if now.second % interval_seconds == 0 and now.microsecond < 100_000:
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)

View File

@@ -9,11 +9,15 @@ class SgReadyController():
meter_values = state[meter_name]
power_to_grid = meter_values['40206 - M_AC_Power'] * 10 ** meter_values['40210 - M_AC_Power_SF']
mode = None
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:
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):
"""