Universelle Heizungssteuerung

in Zeile 501 wird geschaut, ob alle Variablenprofile angelegt sind. Genaugenommen das Profile für das WebFront.

Hast Du das wie im Wiki unter http://www.ip-symcon.de/wiki/Ernies_Heizungsscript#zugeh.C3.B6riges_Variablen_Profil_zuweisen erklärt angelegt?

Gruß,

ernie

Hallo,

nach ewig langenm rumgefrickel mit einem alternativen Heizungsscript hier au sdem Forum, werde ich doch wieder auf die altbewährte Methode und das Script von Ernie umsteigen und das auch in nächster Zeit wieder implementieren.
Werde aber erst mal die letzten 20 Seiten vom dem Thread lesen müssen um auf aktuellen Stand zu kommen.

Ich suche aber immer noch eine Methode, wie man Kalendereinträge ( bei mir HomeOffice, Urlaub, Gleittage, usw. ) berücksichtigen kann.
Hat da jemand eine Idee oder sogar Lösung ? Google-Kalender oder besser sogar iCloud-Kalender als Basis währe genial.

Naja, eine fertige Lösung nicht, aber im Prinzip brauchst du nur ein Script, welches die Termine auslesen kann und dann eine zusätzliche Variable true/false setzt. Diese Variable dann mit der Heizvariable aus Ernies Script verknüpfen … zumindest wäre das erst mal die grobe Idee !?

Ich hoffe ja das Ernie irgendwann mal Zeit findet und die ganzen Ideen zu dem Script umsetzt. :D;):rolleyes:

Ich werde eine Variable Urlaub erstellen und diese als Dummy-Fenster in alle Räume einbinden. Das müsste funktionieren.

Gruß,
Christoph

Zusätzliche Variabel sind ja nicht das Problem, das ist ja in Ernies Skript vorgesehen, hab ich in der Vergangenheit auch schon für Feiertage benutzt.

Problem ist, wie ich den Kalender auslesen kann auf Termine, das übersteigt derzeit noch meine PHP-Kenntnisse udn war nicht sonderlich von Erfolg gekrönt.

also ich hab mir das jetzt nochmal angesehen und habe festgestellt dass ich tatsächlich diese Profile („b_Anwesend-Abwesend“ und „~Switch“) nicht angelegt hat
das hab ich nun getan und ich habe noch immer einen fehler siehe Foto

ich habe auch ein Foto dazugegeben das meine ganze heizungssteuerungumgebung zeit … fällt euch da vielleicht ein fehler auf bzw hab ich was vergessen

danke für eure hilfe

lg
Christian

Nur eine Vermutung, ich bin mit meine rKonfig noch nicht fertig.
du musst keine Variablen für die beiden anlegen, sondern Variable-Profile und die mit den entspreichenden Variblen verknüpfen

Ich mache mal Screenshot, hat die Exporter-Version bei mir eingespielt, da sind die drin

ich habe eh Profile angelegt aber diese variable auch mit dem selben namen versehen

schau mal

hallo leute

jetzt bin ich schon viel weiter, ich habe den heizungsplan und die Skripte zeigen kein rotes Rufzeichen jetzt hab ich aber ein weiters Problem

ich möchte diese Steuerung für eine elektroheizung verwenden und die ist in dieser konfig nicht möglich
ich habe heruasgefunden das ich für das ein schalten „HM_WriteValueBoolean(45424 /[1 Steckdose Wohnzimmer]/, „STATE“, true)“ diesen befehl und für das ausschalten "HM_WriteValueBoolean(45424 /[1 Steckdose Wohnzimmer]/, „STATE“, false) " diesen befehl benötige nur wie kann ich dies in die heizungssteuerung einbaun?

danke für eure hilfe

christian

Hallo,

das IPS wo meine Heizungssteuerung drauf lief ist noch nach dem Umzug leider noch nicht im neuen Haus angekommen und eingerichtet :frowning:

Ich habe mal die letzte Version vom ersten Post runtergeladen. Das müsste für deine Fragestellung eigentlich ausreichen.

Die wichtige Datei ist INTERFACE_Heizungskomponenten.ips.php

Hier wird geregelt, wie die verschiedenen Heizungskomponenten angesprochen werden.

Das EinsWireWagoKombinationsKomponenten-Interface stellt ja eine Variable zur Verfügung, aus der man mit andere Scripte lesen lassen kann ob ein Stellantrieb AN oder AUS sein soll.

Vom Prinzip brauchst Du das EinsWireWagoKombinationsKomponenten, das aber nicht nur eine lokale IPS-Variable setzt sondern diese an HomeMatic sendet.

Wenn Du es „einfach“ haben willst, nimmst Du das EinsWireWagoKombinationsKomponenten und schreibt selbst einen Trigger außenrum, der die lokale Variable abfragt und per HM_Write an deine Stellantriebe sendet. Dann hast Du eine gewisse Verzögerung weil zwei Dinge hintereinander passieren (setzen vom Script und danach senden an die Stellantriebe bzw. Steckdosen)

Wenn Du es „schön“ haben willst, kopierst Du das EinsWireWagoKombinationsKomponenten Interface und machst darauf ein HomeMaticKomponentenSteckdoseAnAus, dass das EinsWireWagoKombinationsKomponenten und das HomeMaticKomponentenHeizenJaNein miteinander vereint. Also anstatt dem setzen der lokalen Variable in EinsWireWagoKombinationsKomponenten ein senden vom HM_Write an deine Steckdose (ähnlich wie in HomeMaticHeizenJaNein). Hierbei musst Du dann aber nicht die lokalen Variablen sondern die HomeMatic IDs in der Config anpassen.

		$this->heizungssteuerung['writeRaumSollTemeratur'] = array();
		$this->heizungssteuerung['writeRaumSollTemeratur']['Bad'] 				= 36797; // cAOIDs ok ;
		$this->heizungssteuerung['writeRaumSollTemeratur']['Büro']				= 19315; // cAOIDs ok ;
		$this->heizungssteuerung['writeRaumSollTemeratur']['Gästezimmer'] 	= 31325; // cAOIDs ok ;
		$this->heizungssteuerung['writeRaumSollTemeratur']['Schlafzimmer'] 	= 30084; // cAOIDs ok ;
		$this->heizungssteuerung['writeRaumSollTemeratur']['Wohnzimmer'] 		= 42515; // cAOIDs ok ;
		// ### ODER IPS-Variablen (zum speichern und lesen der Werte)
		// ### (diese müssen im IPS-Baum selbst angelegt werden)
		// ###    z.B. bei 1-wire Modulen
		/*
		$this->heizungssteuerung['writeRaumSollTemeratur']['Bad'] 				= 42715; // cAOIDs ok //[Heizung\Heizungssteuerung\heiz - Soll Temperaturen\Bad]
		$this->heizungssteuerung['writeRaumSollTemeratur']['Büro']				= 57644; // cAOIDs ok //[Heizung\Heizungssteuerung\heiz - Soll Temperaturen\Büro]
		$this->heizungssteuerung['writeRaumSollTemeratur']['Gästezimmer'] 	= 26155; // cAOIDs ok //[Heizung\Heizungssteuerung\heiz - Soll Temperaturen\Gästezimmer]
		$this->heizungssteuerung['writeRaumSollTemeratur']['Schlafzimmer'] 	= 35587; // cAOIDs ok //[Heizung\Heizungssteuerung\heiz - Soll Temperaturen\Schlafzimmer]
		$this->heizungssteuerung['writeRaumSollTemeratur']['Wohnzimmer'] 		= 53457; // cAOIDs ok //[Heizung\Heizungssteuerung\heiz - Soll Temperaturen\Wohnzimmer]

Welche Variante willst Du testen?

hallo ernie.

also ich würde schon eine saubere lösung bevorzugen nur ist die frage ob ich das auch alles verstehe bzw umsetzten kann

lg
christian

Als erstes kannst Du mal das WAGO Interface einrichten bis das sauber klappt. Da sind einige Variablen dabei, die Du hinterher für das neue Interface brauchst.

Danach können wir gemeinsam ein neues Interface für die Steckdosen definieren …

Hallo Ernie,

ich habe da mal eine Frage:
Ich habe ja die Möglichkeit, die Zeitfenster über das Webfront zu bearbeiten. Wenn ich jetzt einen Tag z.B. Freitag bearbeite und abweichend vom Standard heizen möchte, setzt sich dieser Tag dann irgendwann wieder auf den Standard zurück? Wenn ja, wann?

Das Script „createHeizplan“ wird täglich um 00:01 Uhr ausgeführt.

Freue mich über eine kurze Antwort.

Gruß,
Christoph

hallo ernie,

mein system besteht aus

4 Stück HM-TC-IT-WM-W-EU Funk-Wandthermostat und
4 Stück HM-ES-PMSw1-Pl Funk-Schaltaktor 1-fach

diese teile sind schon im system und funktionieren soweit

ich habe auch schon in deinem script diese teile berücksichtigt aber das script kann die steckdosen nicht einschalten

lg
christian

Was macht das Script denn bei dir im Moment, wie ist der aktuelle Status?

Ist das die aktuellste Version mit der ich durchstarten kann?

wenn das script gestartet wird dann gibt es keine fehlermeldung … ich schick dir mal einen screenshot damit du dir mein system ansehen kannst

lg
christian

Wenn das Script keine Fehlermeldungen liefert, dann passt das.

Prüf bitte, ob die Variablen unter „Heiz - Stati“ zu den entsprechenden Uhrzeiten „Heizen“ bzw. „Abkühlen“ anzeigen.

Wenn das sichergestellt ist, dann baust Du Dir für jeden Steckdosen-Aktor ein Script. Wenn die Variable auf „Heizen“ geht --> Steckdose an, wenn die Variable auf „Abkühlen“ geht --> Steckdose aus.

Das wäre jetzt mein Vorschlag …

Gruß,
Christoph

falscher Quote vom Forum :frowning:

Erster Post im Thread:

Von dort wird jeden Tag einmal um 00:01 Uhr der Heizplan für den gestrigen Tag in Zukunft (also 6 Tage vorraus) erstellt. Dies passiert indem das PHP Script IPS-Varibalen inklusive Profil und vordefiniertem Wert dynamisch in der Tages-zugehörigen Kategorie erstellt. Damit kann man individuell die Anwesenheit für die nächsten 7 Tage vorgeben sowie bei Bedarf die Heizung direkt per Dashboard, WebFront oder iFront manuell anschmeißen.

Immer nachdem ein Tag vorbei ist wird er neu erstellt. Jede Änderung die du machst gilt für die nächsten kommenden Wochentag, danach ist es wieder standard