controller implemented and tested
This commit is contained in:
14
main.py
14
main.py
@@ -5,12 +5,16 @@ from heat_pump import HeatPump
|
||||
from pv_inverter import PvInverter
|
||||
from solaredge_meter import SolaredgeMeter
|
||||
from shelly_pro_3m import ShellyPro3m
|
||||
from energysystem import EnergySystem
|
||||
from sg_ready_controller import SgReadyController
|
||||
|
||||
# For dev-System run in terminal: ssh -N -L 127.0.0.1:8111:10.0.0.10:502 pi@192.168.1.146
|
||||
# For productive-System change IP-adress in heatpump to '10.0.0.10' and port to 502
|
||||
|
||||
interval_seconds = 10
|
||||
|
||||
es = EnergySystem()
|
||||
|
||||
db = DataBaseInflux(
|
||||
url="http://192.168.1.146:8086",
|
||||
token="Cw_naEZyvJ3isiAh1P4Eq3TsjcHmzzDFS7SlbKDsS6ZWL04fMEYixWqtNxGThDdG27S9aW5g7FP9eiq5z1rsGA==",
|
||||
@@ -23,16 +27,14 @@ shelly = ShellyPro3m(device_name='wohnung_2_6', ip_address='192.168.1.121')
|
||||
wr = PvInverter(device_name='solaredge_master', ip_address='192.168.1.112')
|
||||
meter = SolaredgeMeter(device_name='solaredge_meter', ip_address='192.168.1.112')
|
||||
|
||||
#controller = SgReadyController(hp, wr)
|
||||
es.add_components(hp, shelly, wr, meter)
|
||||
controller = SgReadyController(es)
|
||||
|
||||
while True:
|
||||
now = datetime.now()
|
||||
if now.second % interval_seconds == 0 and now.microsecond < 100_000:
|
||||
db.store_data(hp.device_name, hp.get_state())
|
||||
db.store_data(shelly.device_name, shelly.get_state())
|
||||
db.store_data(wr.device_name, wr.get_state())
|
||||
db.store_data(meter.device_name, meter.get_state())
|
||||
#controller.perform_action()
|
||||
state = es.get_state_and_store_to_database(db)
|
||||
controller.perform_action(heat_pump_name='hp_master', meter_name='solaredge_meter', state=state)
|
||||
|
||||
time.sleep(0.1)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user