NEWS
Wie kann ich FS20 Makros in iobroker einfügen
-
Der Zeitplan am Ende passt nicht, da er nur jede volle Stunde wirkt. Vorschlag:
-
Hallo paul53,
Danke für Deine Unterstützung, das Skript werde ich so ändern.
Praktisch müsste doch jetzt im Log z.B. zwischen 11:00 und 11:10 ein Eintrag
über Probelauf erscheinen. Oder irre ich mich.
Anbei der Logauszug.codedwd.0 2019-02-28 11:10:01.816 info starting. Version 2.4.3 in /opt/iobroker/node_modules/iobroker.dwd, node: v8.12.0 dwd.0 2019-02-28 11:10:01.650 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2019-02-28 11:10:00.052 info instance system.adapter.dwd.0 started with pid 16759 fhem.0 2019-02-28 11:09:10.370 info event ioBroker "fhem.0.Ventilation.state_switch on" > set Ventilation on fhem.0 2019-02-28 11:09:09.372 info event ioBroker "fhem.0.GewaechshausLED_Ventilation.state_switch on" > set GewaechshausLED_Ventilation on fhem.0 2019-02-28 11:07:10.158 info event ioBroker "fhem.0.Ventilation.state_switch on" > set Ventilation on fhem.0 2019-02-28 11:07:09.159 info event ioBroker "fhem.0.GewaechshausLED_Ventilation.state_switch on" > set GewaechshausLED_Ventilation on host.ioBroker-RasPi 2019-02-28 11:06:07.047 info instance system.adapter.yr.1 terminated with code 0 (OK) host.ioBroker-RasPi 2019-02-28 11:06:07.035 info instance system.adapter.yr.0 terminated with code 0 (OK) yr.1 2019-02-28 11:06:01.949 info got weather data from yr.no yr.0 2019-02-28 11:06:01.939 info got weather data from yr.no yr.1 2019-02-28 11:06:01.636 info starting. Version 2.0.3 in /opt/iobroker/node_modules/iobroker.yr, node: v8.12.0 yr.0 2019-02-28 11:06:01.589 info starting. Version 2.0.3 in /opt/iobroker/node_modules/iobroker.yr, node: v8.12.0 yr.1 2019-02-28 11:06:01.450 info States connected to redis: 127.0.0.1:6379 yr.0 2019-02-28 11:06:01.427 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2019-02-28 11:06:00.121 info instance system.adapter.yr.0 started with pid 16294 host.ioBroker-RasPi 2019-02-28 11:06:00.058 info instance system.adapter.yr.1 started with pid 16289 host.ioBroker-RasPi 2019-02-28 11:05:03.130 info instance system.adapter.dwd.0 terminated with code 0 (OK) dwd.0 2019-02-28 11:05:01.753 info starting. Version 2.4.3 in /opt/iobroker/node_modules/iobroker.dwd, node: v8.12.0 dwd.0 2019-02-28 11:05:01.610 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2019-02-28 11:05:00.041 info instance system.adapter.dwd.0 started with pid 16174 host.ioBroker-RasPi 2019-02-28 11:00:09.902 info instance system.adapter.daswetter.0 terminated with code 0 (OK) daswetter.0 2019-02-28 11:00:09.886 debug nothing to do host.ioBroker-RasPi 2019-02-28 11:00:09.131 info instance system.adapter.ical.0 terminated with code 0 (OK) host.ioBroker-RasPi 2019-02-28 11:00:04.097 info instance system.adapter.dwd.0 terminated with code 0 (OK) ical.0 2019-02-28 11:00:03.435 info processing URL: Google Mond https://calendar.google.com/calendar/ical/ht3jlfaac5lfd6263ulfh4tql8%40group.calendar.google.com/public/basic.ics ical.0 2019-02-28 11:00:03.431 info processing URL: Google Michael https://calendar.google.com/calendar/ical/m-baer%40t-online.de/private-9fe4ff3cfa48c1d1dd33e5167dff0445/basic.ics daswetter.0 2019-02-28 11:00:03.151 debug update already running daswetter.0 2019-02-28 11:00:03.143 debug objects in list: 1635 ical.0 2019-02-28 11:00:03.214 info processing URL: Google https://calendar.google.com/calendar/ical/de.german%23holiday%40group.v.calendar.google.com/public/basic.ics daswetter.0 2019-02-28 11:00:03.142 debug hourly forecast done, objects in list 1635 ical.0 2019-02-28 11:00:03.033 info processing URL: calendar1 http://11111.ics daswetter.0 2019-02-28 11:00:02.438 debug calling forecast hourly: http://api.daswetter.com/index.php?api_lang=de&localidad=99265&affiliate_id=1q78xxh7eqsc&v=2.0&h=1 daswetter.0 2019-02-28 11:00:02.432 debug using new datastructure daswetter.0 2019-02-28 11:00:02.431 debug set timeout to 60 sec ical.0 2019-02-28 11:00:02.450 info starting. Version 1.7.0 in /opt/iobroker/node_modules/iobroker.ical, node: v8.12.0 daswetter.0 2019-02-28 11:00:02.420 info starting. Version 2.6.0 in /opt/iobroker/node_modules/iobroker.daswetter, node: v8.12.0 ical.0 2019-02-28 11:00:02.240 info States connected to redis: 127.0.0.1:6379 dwd.0 2019-02-28 11:00:02.244 info starting. Version 2.4.3 in /opt/iobroker/node_modules/iobroker.dwd, node: v8.12.0 daswetter.0 2019-02-28 11:00:02.177 info States connected to redis: 127.0.0.1:6379 daswetter.0 2019-02-28 11:00:02.169 debug statesDB connected daswetter.0 2019-02-28 11:00:02.110 debug objectDB connected dwd.0 2019-02-28 11:00:02.029 info States connected to redis: 127.0.0.1:6379 host.ioBroker-RasPi 2019-02-28 11:00:00.109 info instance system.adapter.ical.0 started with pid 15599 host.ioBroker-RasPi 2019-02-28 11:00:00.081 info instance system.adapter.daswetter.0 started with pid 15593 host.ioBroker-RasPi 2019-02-28 11:00:00.042 info instance system.adapter.dwd.0 started with pid 15588 host.ioBroker-RasPi 2019-02-28 10:55:03.498 info instance system.adapter.dwd.0 terminated with code 0
Danke
Gruß Michael -
@Altersrentner sagte in Wie kann ich FS20 Makros in iobroker einfügen:
Oder irre ich mich.
Eine Funktion wird nur ausgeführt, wenn sie aufgerufen wird. Wird die Funktion regelmäßig aufgerufen ?
-
Hallo,
Ja der Probelauf wird immer zu den vorgegebenen Zeiten durchgeführt. Wobei ich mir aber nicht sicher bin.
Dazu liegt die Erstellung der Programmierung zu weit zurück.
Ich mache heute Abend weiter.
Noch eine Frage, wenn ich die Makros so eins zu eins übernehme, sollte dann die Steuerung laufen?
Oder kann man das nicht sagen.
Könntest Du bitte mal auf das Skript 1A7 schauen?
Das ist die Hauptpumpe die über den Probelauf gestartet werden soll.
Das Skript hatte ich aber auch schon gestern fertig. Ist somit auch gelaufen.
Danke
Gruß Michael -
@paul53 Hallo,ich versuche jetzt schon längere Zeit den Baustein "oder "
mit einem Eingang und und zwei Ausgängen zu finden.leider vergeblich.
Wo kann ich den finden?
Gruß Michael -
@Altersrentner Baustein "und" auf "oder" umschalten, dann rechte Maustaste auf den Baustein und "externe Eingänge"
-
@TTBerlin Danke !!prima
Gruß Michael -
Ich komme beim Makro T_Vorlauf Speicher nicht weiter.
Ist der Ansatz richtig. -
Drei Stunden später,
Könnte bitte jemand prüfen ob die Makros so richtig umgesetzt sind?
Danke Gruß Michael -
Ein Trigger innerhalb einer Funktion ist keine gute Idee. Mache es besser so:
-
@paul53 Guten Morgen,
Danke für Deine Verbesserung. Werde ich ändern.
Nun bin ich mit dem ersten Part (Makro HeizkreisSteuerung)so weit durch.
Im Grunde genommen wurden hier nur Variablen verwendet.
Es gibt in der Beschreibung (siehe 1. Beitrag) folgenden Teil:WohnzimmerIS := "Soll: " + T__WZSoll + " Ist: " + T__WZ
Wohnzimmer := T__WZSoll
Vorbau := "Soll: " + T__VorbauSoll + " Ist: " + T__Vorbau
Bad := "Soll: " + T__BadSoll + " Ist: " + T__Bad
Schlafzimmer := "Soll: " + T__SchlafzSoll + " Ist: " + T__Schlafz
Flur := "Soll: " + T__FlurSoll + " Ist: " + T__Flur
Gaestezimmer := "Soll: " + T__GaestezSoll + " Ist: " + T__GaestezMuss das auch noch als Blockly umgesetzt werden?
Gruß Michael -
@paul53 habe deinen Vorschlag realisiert.
Unter "Steuerung Heizventile" Ist mir folgendes aufgefallen;
Bei den Makros tauche gleiche Variablen z.B. "T__WZ"
in verschiedenen Blöcken z.B. "Heizkreissteuerung_EG u.u.u." auf.
Im Makro wird dann:wenn T__WZ > 0 und T__WZ < HeizkreisSteuerung.T__WZSoll dann HeizungsPumpeEG einschalten endewennde_text
auf den Block verwiesen wo sich die Variable befindet.
Wie kann ich das realisieren.
Danke
Gruß Michael -
Mit FS20 und den Makros kenne ich mich nicht aus.
Irgendwoher müssen die Variablen (Messwert, Sollwert) ihren Wert erhalten. In ioBroker sind das Datenpunkte. Ebenso müssen die Schaltaktoren (Pumpe) Datenpunkte sein.
Wie sehen die Datenpunkte aus und woher kommen sie ?
Sind die Sollwerte auch Datenpunkte oder feste Werte ? -
@paul53 Hallo,
Danke für deine Nachricht.
Mir ist klar, das es schwierig sein wird meine Vorstellungen zu verwirklichen.
Pumen sind Datenpunkte, ebenso T_WZ =Temperatur Wohnzimmer.
T_WZSoll = Solltemperatur ist eine feste Vorgabe.** Variablen ** T__WZSoll Typ Zahl, Startwert 22,5 ** T__VorbauSoll Typ Zahl, Startwert 21,0 ** PumpeEinschalten Typ Zahl, Startwert 0 ** Probelauf Typ Zahl, Startwert 0 ** T__Bad Typ Zahl, Startwert 22,5 ** T__Schlafz Typ Zahl, Startwert 10,0 ** T__Flur Typ Zahl, Startwert 22,0 ** T__Gaestez Typ Zahl, Startwert 20,0
Da ich jetzt dafür Variablen eingesetzt habe,
muss ich diese doch dem Datenpunkt zuweisen oder?
Eine Andere Frage ist, Die Variable T_WZ wird es in unterschiedlichen Skripten geben. Funktioniert das?
Gruß Michael -
@Altersrentner sagte:
Die Variable T_WZ wird es in unterschiedlichen Skripten geben. Funktioniert das?
Mit Variablen funktioniert es nicht, Datenpunkte können in beliebig vielen Skripten verarbeitet werden.
T_WZSoll = Solltemperatur ist eine feste Vorgabe. Da ich jetzt dafür Variablen eingesetzt habe, muss ich diese doch dem Datenpunkt zuweisen oder?
Wenn die Sollwerte immer gleichbleiben können (sollen), kann man den Wert im Skript fest vorgeben. Will man Sollwerte auch mal verändern (z.B. bei Anwesenheit / Abwesenheit) muss man Datenpunkte dafür verwenden.
-
@paul53
"Mit Variablen funktioniert es nicht, Datenpunkte können in beliebig vielen Skripten verarbeitet werden."
Das habe ich mir fast gedacht. Dann ist meine ganze Arbeit für die Katze gewesen.
"Wenn die Sollwerte immer gleichbleiben können (sollen), kann man den Wert im Skript fest vorgeben. Will man Sollwerte auch mal verändern (z.B. bei Anwesenheit / Abwesenheit) muss man Datenpunkte dafür verwenden."
Kannst Du mir das bitte an einem Beispiel erklären?
Ich werde dann morgen versuchen die Blocklys mit Datenpunkten abzuändern. -
Jetzt mit Datenpunkten ; 22,5 ist der Sollwert .
Schaltet die Pumpe >22,5 aus?
Gute Nacht
Gruß Michael -
@Altersrentner sagte:
Schaltet die Pumpe >22,5 aus?
Ja, aber das funktioniert nur, wenn die Pumpe ausschließlich für einen Raum zuständig ist. Wie ich dem Makro entnehme, muss die Pumpe einschalten, wenn mind. ein Raumregler die Pumpe anfordert. Dazu benötigt man eine Oder-Verknüpfung.
Beispiel (Trigger nur für einen Raum aufgeführt):
Die Abfrage Temperatur > 0 ist bei ioBroker nicht erforderlich, da sich ioBroker die Werte aller Datenpunkte merkt (auch über einen Reboot).
-
@paul53 Guten Morgen,
Mein Blockly war nur rein informativ für mich.
Meine Heizungsseuerung unterscheidet sich grundlegend von anderen, heißt ist nicht zu vergleichen.
Ich habe keine Raumregler im Einsatz sondern die Temperatursteuerung wird über Makros realisiert.
Jeder Heizkreis hat ein Ventil (auf/zu),
Jede Etage hat eine Heizkreispumpe,
Und es gibt eine Hauptpumpe 1A7 - nur wenn die auf ein geht werden die anderen Pumpen bei Bedarf zugeschaltet.
In jedem Wandheizkreis bzw in jedem Fußbodenheizkreis gibt es einen Tempfühler der mir die entsprechende Heizfläche genau in einem bestimmten Tembereich hält. Desweiteren gibt es für jeden Raum ein Tempraumfühler. Dieser regelt die Raumtemperatur. Für diese Temeraturfühler wird ein
IST_Wert abgefragt und bei erreichen eines SOLL_Wertes schaltet das zugehörige Ventil. Erst wenn in einer Etage alle Ventile geschlossen sind, schaltet die Etagenpumpe aus. Die Hauptpumpe dagegen schaltet erst ab wenn alle Pumpen auf aus stehen.
Es gibt noch weitere Schaltbedingungen, die aber jetzt zu erklären ist zu verwirrend.
Hört sich sicherlich sehr kompliziert an, ist aber sehr effizient.
Danke für Deine Beispiele,
Hier tauche natürlich für mich einige Fragen auf.
Grundlegende Frage:
Variable "WZ_heizen" was verbirgt sich dahinter oder wie wird sie definiert.
Das bezieht sich natürlich auf alle Variablen.
Ein schönes Wochenende wünscht
Michael
ps, jetzt muss ich überlegen womit ich anfange, -
@Altersrentner sagte:
Jeder Heizkreis hat ein Ventil (auf/zu),
Dann gibt es auch einen Datenpunkt zu dem Ventil, also würde ich zu jedem Raum ein Skript erstellen, das in Abhängigkeit von der Differenz Ist- / Sollwert das Ventil (die Ventile) des Raumes ansteuert (2-Punkt-Regler).
Jede Etage hat eine Heizkreispumpe,
Pro Etage ein Skript, das die Ventile auswertet (Oder-Verknüpfung auf offen) und die Etagenpumpe ansteuert.
Die Hauptpumpe dagegen schaltet erst ab wenn alle Pumpen auf aus stehen.
Ein Skript für die Ansteuerung der Hauptpumpe (Oder-Vernüpfung der Etagenpumpen ein).
Variable "WZ_heizen" was verbirgt sich dahinter oder wie wird sie definiert.
WZ_heizen ist die Heizanforderung des Wohnzimmers. Bei wahr werden die Heizkreisventile für das Wohnzimmer geöffnet.