Universelle Heizungssteuerung

kein Problem

public function getWindowStatus ($objectID) {return GetValue($objectID);}

    // Fenster Stati-Funktionen für HomeMatic

    public function getOpendWindowValue() {echo "hallo 1"; return 1;} // $FENSTER_OFFEN = 1;

    public function getClosedWindowValue() {echo "hallo 0"; return 0;}// $FENSTER_GESCHLOSSEN = 0;  

Also nach Einfügen des Echos, bekomm ich beim Manuellen Ausführen des Triggers folgendes Zurückgemeldet:

hallo 0hallo 1hallo 1

Mist, hatte das Echo sogar so eingefügt. Bloß war des Syntax Falsch, Anfängerfehler :wink:

das sollte normalerweise heißen: erstes Fenster zu, zweites und drittes Fenster auf. Hast Du momentan zwei offene und ein geschlossenes Fenster?

Ist nur ein Fenster und das ist Momentan geschlossen. Ist das Fenste im array Küche & Büro mit der ID 28196
Die Anderen habe ich vorerst auskommentiert.

		// ### Definition der ObjectIDs der Fenster-Kontakte
		// ### LAST CHANGE IN IN REVISION 2
		$this->heizungssteuerung['rootNodesFenster'] = array();
		$this->heizungssteuerung['rootNodesFenster']['Küche & Büro'] = array();
		$this->heizungssteuerung['rootNodesFenster']['Küche & Büro'][0] 				= 28196 /*[Geräte\Erdgeschoss\Küche & Büro\Fenster\SENSOR]*/ ; // cAOIDs ok
		//$this->heizungssteuerung['rootNodesFenster']['Wohn & Esszimmer'] = array();
		//$this->heizungssteuerung['rootNodesFenster']['Wohn & Esszimmer'][0] 				= 11984 /*[Geräte\Erdgeschoss\Flur & Esszimmer\Fenster Esszimmer\SENSOR]*/ ; // cAOIDs ok
		//$this->heizungssteuerung['rootNodesFenster']['Wohn & Esszimmer'][1] 				= 56485 /*[Geräte\Erdgeschoss\Flur & Esszimmer\Fenster Flur\SENSOR]*/ ; // cAOIDs ok

äh ich habe das mal getestet. Ich habe nur 1 Fenster im Bad eingetragen, da ich nicht mehr Sensoren habe.

Da kommt bei mir

0212102121021210212102121

raus … Warum weiß ich gerade selbst nicht. Ist schon einen Moment her, dass ich da das letzte mal draufgeschaut habe, aber bei mir funktioniert es mit deinem einen Fenster einwandfrei.

Jetzt muss ich mal schlafen gehen :frowning:

Morgen finde ich hoffentlich noch mal Zeit, das etwas genauer nachzuschauen …

Hmm, Okey. Auf jedenfall schonmal Danke für deine Hilfe.

Jetzt muss ich mal schlafen gehen :frowning:

Geht mir nicht Anderst, Wünsche eine Gute Nacht!

p.s. Mach die deswegen aber keinen Stress, kommt nicht auf ein paar Tage an.

Gruß Daniel

Hallo Christoph,

etwas spät, aber nicht vergessen :slight_smile:

Je nachdem, welches Heizungsinterface Du benutzt, hast Du die Soll-Temperaturen schon in IPS-Variablen (heiz-Soll-Temperaturen) stehen, die Du einfach woanders mit einem Link anzeigen könntest. Welches Heizungs-Interface nutzt Du?

Für die zweite Frage lies Dir mal http://www.ip-symcon.de/forum/threads/12051-Universelle-Heizungssteuerung?p=157069#post157069 und auf der nächsten Seite (23) vor allen Dingen den zweiten Post durch. Dann können wir uns weiter darüber austauschen, was design-technisch Sinn macht und was Du Dir vorstellen könntest …

Hallo,

1.) Ja, grundsätzlich wird das ja jeden Tag neu geschrieben … Hast Du grundsätzlich dabei berücksichtig, dass bei einem Plan nach Räumen nicht jede Zeit 1x da stehen würde, sondern 7x? Bei ca. 4 Slots pro Tag wären das also 28 Variablen (Zeit 1 bis 4 Montag, Zeit 1 bis 4 Dienstag …) Findest Du das übersichtlicher? Dirty-Hack mäßig könnte ich raussuchen, das man einen Link von der eigentlichen Variable in einem neuen „Zeitplan nach Räumen“ erstellt. Das suche ich aber nur raus, wenn Du 28 Variablen für sinnvoll hällst …

Oder habe ich das falsch verstanden? Willst Du nur die Zeiten für jeden Raum (einzeln in jedem Tag) miteinander gruppieren?

2.) Ist + Soll + Heiz-Stati sind ja feste Variablen, die nicht dynamisch gelöscht und neu erstellt werden. Mit Links solltest Du diese Variablen eigentlich woanders auch neu gruppieren können. Bei mir sind Ist-Temperaturen im Web-Front nur ein Link auf die HomeMatic Temperature-IDs. Heiz-Stati und Soll-Temperaturen könnest Du theoretisch auch komplett verschieben; Sie werden ja nur über ihre IDs angesprochen. Persönlich habe ich alle Heizungs-Dinge gerne auch in einem Ordner und würde woanders nur Links verwenden um später nicht an x verschiedenen Stellen danach suchen zu müssen, falls ich mal was ändern will.

Ich bin mir unsicher, ob es an 2.6 liegt …

Wie heißen deine Heizplan-Variablen? Sie sollten „Raum (Bindestrich) Zeit bis Zeit heißen“.

Der erste Fehler ist

$actualZeitString = trim($actualRaumUndZeit[1]); 

Dort ist der Fehler, dass diese Variable nicht existiert. Sie kommt aus

$actualRaumUndZeit = explode("-",$actualVariableName);

Das wiederum nimmt den Namen der Variable auseinander.

Alle restlichen Fehler kommen dann eigentlich, da es vorher den Array Teil nicht gab.

Hmm … ich habe jetzt mal die Dummyinstanz weg genommen und gucke mal ob es dann geht. Wir wohl daran liegen, das ich die Ankleidevariablen gruppiert habe und dadurch der Fehler entsteht.

Bezgl. der generellen Gruppierung, möchte ich eigentlich nur die Zeiten Pro Tag, pro Raum gruppieren.

So ganz habe ich es auch nicht verstanden. Evtl. lag es daran, dass ich die Kommentare teilweise auch „über deine Kommentar hinweg“ habe laufen lassen, s.d. Kommentare von dir verschachtelt in meinen lagen. Ich habe jetzt einfach zeilenweise auskommentiert und es klappt.
An dieser Stelle nochmal vielen Dank für die Unterstützung :slight_smile:

Kommentar in Kommentar muss auch gehen (ich nutze das ständig …)

Ich könnte mir eher vorstellen, dass Du irgendwo ein unsichtbares Zeichen hattest, was jetzt vielleicht weg ist.

Wenn Du genügend Zeit hast, würde ich noch mal einen kompletten Kommentar über alles setzen und dann einzeln die Zeichen der Einzel-Kommentare löschen, damit man sieht an welcher Zeile es liegt / lag …

Persönlich will ich bei so was irgendwie immer gerne wissen, woran es gelegen hat …

Ok, also bei mir hats an dem Gruppencontainer gelegen, weil das Script ja eigentlich auf die „Childs“ in der Kategorie geht. Dadurch das ich die Dummyinstanz für den Raum angelegt habe, wußte das Script nix damit anzufangen.
Dann bin ich wohl doch auf Hilfe von dir angewiesen … :rolleyes:

Gruß
Jens

ich habe im Webfront noch nie Gruppen angelegt - hatte einfach noch keine Zeit :frowning:

Zeig mal einen Screenshot von Objektbaum,wie man die Webfront Gruppierung hinbekommt. Ist das alles einfach in eine gemeinsame Kategorie gepackt?

Guckst du hier: http://www.ip-symcon.de/forum/threads/12051-Universelle-Heizungssteuerung?p=178756#post17875

Ich hatte dazu einfach im Baum des jeweiligen Tages eine Dummyinstanz angelegt und die Variablen da hinein verschoben. Alternativ müsste man dann den Heizplan oder die einzelnen Tage komplett ausblenden und neue Kategorien mit Links erstellen. Aber das ist dann ja wieder alles doppelt gemopplet :wink:

Das ist ein Screenshot vom WebFront, ich will aber den Objektbaum in der IPS-Console sehen … Oder habe ich was übersehen?

Guckst du hier:

Hallo Ernie,

danke für die Antwort!

Ich nutze die HomeMatic Thermostate, also

$this->heizungssteuerung['heizungsKomponenten'] = "HomeMaticKomponenten";

Ich habe die Soll-Temperaturen für Abwesend und Anwesend in dem Ordner Heizplan\00-Temperatur Profile\ - beispielsweise „Schlafzimmer - Abwesend“ und „Schlafzimmer - Anwesend“. Die könnte ich mir per Link irgendwo anzeigen. Ich meinte das aber so, dass ich mir die gerade aktive Solltemperatur irgendwo anzeigen lassen möchte. Wenn ich also gerade im Profil „Schlafzimmer Anwesend“ bin, möchte in die Variable „aktive Solltemperatur“ auf 20° setzen, wenn ich aber im Profil „Schlafzimmer Abwesend“ bin, möchte ich die Variable „aktive Solltemperatur“ auf 18° setzen.

Werde ich mir morgen mal in Ruhe anschauen. Danke!

Gruß,
Christoph

Ich glaube, wir müssen noch mal die Begriffe klären …

00-Temperatur Profile\Anwesend oder Abwesend sind Wunsch-Temperaturen. Die Temperatur, die dein Raum wünschenwerterweise haben soll.

In meiner aktuellen Version heißt es nicht mehr verwirrenderweise 00-Temperatur-Profile sondern 00-Wunsch-Temperaturen.

Bei HomeMaticKomponenten steht die aktuell gültige Soll-Temperatur (die sich aus An- oder Abwesenheit und der vorgegebenen Wunsch-Temperatur ergitb) direkt im HomeMatic-Thermostat, da dieses die Temperatur regelt. Wenn Du diese Variable anzeigen möchtest, musst Du nur einen Link auf die entsprechende Variable machen. Oder habe ich es falsch verstanden?

Nee … wir müssen keine Begriffe klären. Irgendwie stand ich auf dem Schlauch :confused::eek:. Natürlich kann ich die Solltemperatur direkt aus dem HM-Thermostat auslesen … Sorry für die Umstände.

Kommen wir zum Rest:

Ich habe das gerade mal testen wollen und stelle fest, dass mein HM-Thermostat seit eh und je auf „Manuell“ steht und nie anders eingestellt war. Wenn ich nun am Rad die Temperatur verstelle, bekommt IPS das mit und nach 2 Minuten schlägt das Script gnadenlos zu und verstellt die Temperatur auf die durch die Steuerung vorgegebene Soll-Temperatur.

Kann das jemand anders nachstellen?

Gruß,
Christoph