Habe seit Jahren LCN-Regler im Einsatz, die die Temperaur meiner Heizkörper regeln. Der Regler im LCN hat eine „Quelle Istwert“ R1Var und einen Sollwert. Soweit - sogut - klappt.
Der R1Var-Ist wert ist allerdings ungenau, da der Sensor LCN-TS in der Unterputzdose verbaut ist. Da ich aber sowieso zuverlässige Zigbee Temperatursensoren in ein paar Räumen habe würde ich gerne die Temperatur daraus in den LCN-Regler als IST-Wert via Symcon einbringen.
Moin Hans-Christian,
natürlich geht das … mit einem kleinen Skript.
Du musst deinen Wert in einen Zähler schreiben.
Dazu musst du die Temperatur natürlich erst mal „LCN-konform“ berechnen, damit 21,4° dann 1214 sind (also *10 +1000).
Dann Zähler nullstellen und den aktuellen Wert schicken.
Hast du die PCK-Doku? Bei Modulen bis 140C0D/Nov.2010 sieht das Kommando etwas anders aus.
Ansonsten
Das Skript führst du dann bei jeder Änderung von deinem Wert aus.
Ich habe das nur selten im Einsatz, i.d.R. habe ich den Montageort des LCN-TS optimiert. Nicht in der Dose, sondern unter den Rahmen (oder in einer abgesetzten ‚Sensordose‘); und möglichst weit weg vom wärmenden Netzteil des Moduls. Normalerweise ist die Verschiebung linear, man kann also den Wert auch einfach im LCN berechnen (-x k).
Im LCN-UP Modul (Firmw. 100B05) ist der TS angeschlossen. Unter „Variablen“ sieht man den angeschlossenen Sensor,
der den Messwert auf R1Var weiterreicht. Im „Regler“ sieht man wie der Istwert aus R1Var mit dem Sollwert verglichen wird
und der Regler seine Arbeit aufnimmt.
Wenn ich jetzt von IPS aus
LCN_SendCommand(27532,‚ZS‘,‚9999‘);
ausführe lese ich im LCN Bus-Monitor
M004 → M033 Subtrahiere 9999
was ich grundsätzlich ja gut finde aber mehr tut sich nicht. Meine Frage ist, wo der Wert jetzt abgezogen wurde. Ab R1Var? Idealer wäre ja wahrscheinlich R2Var oder TVar, da diese Variablen ja nicht ständig duch den angehängten Sensor einen Update bekommen.
Habe auch mit dem Befehl „Messwert melden“
LCN_SendCommand(27532,‚MW‘,‚TB‘);
in Variationen herumgespielt, komme aber nicht weiter. Bei diesem Befehl meldet sich nicht mal der Bus-Monitor.
Wäre Klasse, wenn Du mir da noch auf die Spünge helfen könntest.
Moin,
jetzt habe ich das selbst mal getestet …
An einem Modul der Serie 09… (das hat noch keinen Regler und nur die Tvar) funktioniert (trotz Hinweis in der Doku) witzigerweise Z- und Z+ genauso wie ZS und ZA .
Als ‚Zähler‘ geht nur die Tvar - aber auch die lässt sich ja im Regler als Istwert auswählen.
Die MW Abfrage kannst du ja auch im Intervall der Variablenkonfiguration einstellen (Vorsicht, da kannst du den Bus mit kurzen Zyklen auch gut „zuballern“).
Hier mein Testskript:
?php
$temp = GetValueFloat (18904);
$tempLCN = ($temp *10 +1000);
# echo $tempLCN .PHP_EOL;
$LCN_ModulID = 42142; // aus den Splitter Instanzen
LCN_SendCommand($LCN_ModulID,'Z-','0014090'); // nullstellen
#LCN_SendCommand($LCN_ModulID,'ZS','30000'); // nullstellen für Module bis 140C0D/Nov.2010
LCN_SendCommand($LCN_ModulID,'Z+','001'.$tempLCN); // Wert setzen - bei alten Modulen geht nur Tvar (Var1) als Zähler
#LCN_SendCommand($LCN_ModulID,'ZA',$tempLCN); // nullstellen