NEU! UPGRADE IP 11 verfügbar!
NEU! LICHTWIDGET - DPT 7.600 - Logik Manager Update - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/B9MUEJj2

Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Ab sofort kann jeder die neue VISU & IFTTT testen. Info: viewtopic.php?f=8&t=5074

Release V 4 am 15. Juni 2024
Es gibt nun einen fixen Termin. Info: viewtopic.php?f=8&t=5117

NEU! Ausführliches Video Tutorial zur VISU
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

Unterstützung bei Logik für PV und Heizungssteuerung

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten
Benutzeravatar

Ersteller
Zugschlus
Reactions:
Beiträge: 345
Registriert: Di Okt 02, 2018 4:28 pm
Wohnort: St. Ilgen, Baden-Württemberg
Hat sich bedankt: 112 Mal
Danksagung erhalten: 82 Mal
Kontaktdaten:

Unterstützung bei Logik für PV und Heizungssteuerung

#1

Beitrag von Zugschlus »

Ich habe mir in den letzten Tagen ein paar Gedanken gemacht für die Warmwassersteuerung aus Fotovoltaik zusammen mit der Legionellenproblematik. In Pseudocode müsste das so aussehen:
  • Soll-Temperatur Warmwasser 1: 42 Grad (das ist das Minimum was wir auch dann haben wollen, wenn wir den Strom dafür einkaufen müssen)
  • Soll-Temperatur Warmwasser 2: 60 Grad
  • Wenn eine Ist-Temperatur von 70 Grad seit länger als vier Wochen nicht mehr erreicht wurde, setze Soll-Temperatur Warmwasser 2: 75 Grad
  • Wenn für länger als 30 Minuten mehr als 2 kW Fotovoltaikstrom verkauft wird, setze Soll-Temperatur Warmwasser 2 (damit der Strom nicht mehr verkauft, sondern zum Warmwassermachen verbraucht wird),
  • Beginnen wir wieder, Strom einzukaufen, setze Soll-Temperatur Warmwasser 1.
  • Wenn eine Ist-Temperatur von 70 Grad seit länger als vier Wochen nicht mehr erreicht wurde, setze in der Zeit zwischen 11 und 15 Uhr Soll-Temperatur Warmwasser 2 und gebe elektrische Zusatzheizung frei (damit die Temperatur auf jeden Fall erreicht wird und das in einem Zeitraum stattfindet, in dem mit hoher Wahrscheinlichkeit Solarstrom zur Verfügung steht. In diesem Betriebszustand, verriegle das Setzen der Soll-Temperatur Warmwasser bis der Zeitraum zuende ist.
  • Wenn eine Ist-Temperatur von 70 Grad seit länger als sechs Wochen nicht erreicht wurde, setze einen Alarm.
Ich habe keine Idee, wie ich das mit Gattern implementieren soll. Dagegen erscheint mit die Steuerung der Vorlauf-Temperatur der Hausheizung nach Uhrzeit, Außentemperatur und Öffnungszustand der Heizungsventile im Haus geradezu trivial.

Grüße
Marc
--
Marc Haber, St. Ilgen. Freier IT-Berater, Debian Developer.
TWS 950Q #326, VPN auf Anfrage - KNX, 1Wire (13/55/54 Slaves), MQTT, Cometvisu, viel Grafana, ganz ein bisschen Logik.

Dragonos2000
Reactions:
Beiträge: 2184
Registriert: So Aug 12, 2018 1:38 pm
Wohnort: Karlsruher Raum
Hat sich bedankt: 482 Mal
Danksagung erhalten: 889 Mal

#2

Beitrag von Dragonos2000 »

Ich finde den Logikansatz des TWS gut (wenn auch ungewohnt anders). Eine richtige Statemachine fehlt noch (dafür gibt es einen FR), wobei ich mein ursprüngliches Problem für die Statemachine anders lösen konnte.

Fangen wir mal bei dem Beispiel von Marc an, das mir auf den ersten Blick in einer Custom-Logik gut lösbar erscheint (aber der Teufel sitzt mitunter im Detail):
Welche Eingänge werden benötigt, um diese von außen ggf. ändern zu können? Aktuell habe ich anhand des Beispiels identifiziert:
Binäreingang (für das Überschreiten der 2KW)
Ist-Temperatur
(Zyklischer Trigger wg. Cron-Timer)

Ausgänge:
Binärausgang für Freigabe Zusatzheizung
Binärausgang für Alarm
Soll-Temperatur

Fehlt etwas?
Zuletzt geändert von Dragonos2000 am Mi Jan 29, 2020 1:52 pm, insgesamt 1-mal geändert.
Lg
Jochen
____________________________________________________________
TW 2600 #188
VPN offen, Zugriff jederzeit, Experimente jederzeit, Reboot jederzeit

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#3

Beitrag von Robert_Mini »

Ich habe die Lösungsfindung von der ursprünglichen Diskussion um Skripting herausgetrennt.

Zum Thema:
Aus meiner Sicht würde ich noch die Temperaturwerte und Zeiten als Parameter an die Oberfläche der Logik holen.
- Solltemperatur 1&2&3 (42/60/75)
- Temperatur gegen Legionellen (70°)
- Max. Intervall zur Desinfektion (4 Wochen)
- Parameter Umschaltzeit (30min für Umschaltung auf WW)
- Max. Dauer bis Alarm

Ich hab das mal so verstanden, dass ab den 4 Wochen die Temperatur immer auf 60°C seht, dann um 11 Uhr auf 75°C gesetzt wird und die Zusatzheizung freigegeben wird? Stimmt das so?

Mal aus der Hüfte (mein Wolf ist grad nicht in der nähe):
Comperator Leistung > 2kw => $Leistung_CResult1
Comperator Temperatur > 70 => $Temperatur_CResult1
Monoflop für Freigabe T2 (Trigger wenn P>2kW entspricht $Leistung_CResult1, Dauer 30min, Option re-trigger solange P<2kW) => $Freigabe_Temp2

Monoflop für Freigabe Desinfektion (Trigger wenn T>70 entspricht Temperatur_CResult1, Dauer 4 Wochen, Option re-trigger solange T>70) => $Freigabe_Desinfektion
2x Cron Timer => Cron1 setzt um 11 Uhr $Freigabe_Zeit auf 1, Cron2 setzt um 15 Uhr $Freigabe_Zeit auf 0

$Freigabe_Temp2 ODER $Freigabe Desinfektion => $Select_Temp2
Multiplexer (T1, T2), Auswahl durch $Select_Temp2 => Ausgang $Soll_temp1
$Freigabe Desinfektion UND $Freigabe_Zeit => $Select_Temp3
Multiplexer ($Soll_temp1, T3), Auswahl durch $Select_Temp3 => Ausgang Soll_temp2
Multiplexer (False, True), Auswahl durch $Select_Temp2 => Ausgang $Freigabe_Zusatzheizung

Monoflop für Alarm (Trigger wenn T>70 entspricht Temperatur_CResult1, Dauer 7 Wochen, Option re-trigger solange T>70) => $Alarm

Könnte sich auf einer halben Seite ausgehen.

lg
Robert
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297
Benutzeravatar

Ersteller
Zugschlus
Reactions:
Beiträge: 345
Registriert: Di Okt 02, 2018 4:28 pm
Wohnort: St. Ilgen, Baden-Württemberg
Hat sich bedankt: 112 Mal
Danksagung erhalten: 82 Mal
Kontaktdaten:

#4

Beitrag von Zugschlus »

Dragonos2000 hat geschrieben: Mi Jan 29, 2020 1:51 pm Welche Eingänge werden benötigt, um diese von außen ggf. ändern zu können? Aktuell habe ich anhand des Beispiels identifiziert:
Binäreingang (für das Überschreiten der 2KW)
Am liebsten hätte ich hier eine Möglichkeit, die aktuelle Leistung der Fotovoltaik-Wechselricher und/oder die einkaufte / verkaufte Leistung aus dem Stromzähler des Meßstellenbetreibers als Zahl im Timberwolf zu haben. Ja, geht auch (noch) nicht.

Grüße
Marc
--
Marc Haber, St. Ilgen. Freier IT-Berater, Debian Developer.
TWS 950Q #326, VPN auf Anfrage - KNX, 1Wire (13/55/54 Slaves), MQTT, Cometvisu, viel Grafana, ganz ein bisschen Logik.
Benutzeravatar

Ersteller
Zugschlus
Reactions:
Beiträge: 345
Registriert: Di Okt 02, 2018 4:28 pm
Wohnort: St. Ilgen, Baden-Württemberg
Hat sich bedankt: 112 Mal
Danksagung erhalten: 82 Mal
Kontaktdaten:

#5

Beitrag von Zugschlus »

Robert_Mini hat geschrieben: Mi Jan 29, 2020 2:51 pm Ich hab das mal so verstanden, dass ab den 4 Wochen die Temperatur immer auf 60°C seht, dann um 11 Uhr auf 75°C gesetzt wird und die Zusatzheizung freigegeben wird? Stimmt das so?
Nein, in der Nacht bleibt die Solltemperatur auf niedrigstem Wert, da Wahrscheinlichkeit, Strom vom Dach zu bekommen, gleich Null.

Grüße
Marc
--
Marc Haber, St. Ilgen. Freier IT-Berater, Debian Developer.
TWS 950Q #326, VPN auf Anfrage - KNX, 1Wire (13/55/54 Slaves), MQTT, Cometvisu, viel Grafana, ganz ein bisschen Logik.

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#6

Beitrag von Robert_Mini »

Ok. Dann fehlt aber noch die Angabe, ab wann die 60 freigegebenen werden.
Ich verstehe ab 2kw für 30min oder eben wenn eine Desinfektion ansteht. Ab Sonnenaufgang oder was?

Kannst du mit meinen Gedanken oben was anfangen?
Wir können da Schritt für Schritt ran, aber ein wenig musst du mithelfen :laughing-rolling: .

Lg
Robert
Zuletzt geändert von Robert_Mini am Do Jan 30, 2020 9:29 pm, insgesamt 1-mal geändert.
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297
Benutzeravatar

Ersteller
Zugschlus
Reactions:
Beiträge: 345
Registriert: Di Okt 02, 2018 4:28 pm
Wohnort: St. Ilgen, Baden-Württemberg
Hat sich bedankt: 112 Mal
Danksagung erhalten: 82 Mal
Kontaktdaten:

#7

Beitrag von Zugschlus »

Ja, mit den Gedanken kann ich was anfangen. Ich würde sagen, wir machen das hier erstmal zu bis es eine Möglichkeit gibt, die Daten aus dem Stromzähler in den Timberwolf hineinzubekommen. Mir hat das jetzt schon geholfen weil ich jetzt sehe wie man an so eine Aufgabe herangeht.

Grüße
Marc
--
Marc Haber, St. Ilgen. Freier IT-Berater, Debian Developer.
TWS 950Q #326, VPN auf Anfrage - KNX, 1Wire (13/55/54 Slaves), MQTT, Cometvisu, viel Grafana, ganz ein bisschen Logik.
Antworten

Zurück zu „Logikengine & Logik-Editor“