Seite 1 von 3

Universal Wrapper Device Thermostat mit Script

Verfasst: 26.04.2013, 21:57
von mikethemagic
Hi,

bin gerade dabei folgendes zu probieren
5.8.3 (3) Thermostat Device
Mit diesem Wrapper-Device kann man systemfremde Temperatur/Luftfeuchte Sensoren auf einfache Weise und ohne den Umweg über Systemvariablen auf der CCU abbilden. Es kann an einen bereits im System vorhandenen Wetter-Sensor (WEATHER-Kanal) angekoppelt, oder per HM-Script gesetzt werden.
Habe das Gerät erfolgreich angelegt und als Modus 'TEMP+HUM' sowie WEATHER|USE_HMDATAPT auf off
USE_HMDATAPT - [x] Gerät überwachen (ggf. SUBSCRIBE_RF=1 und/oder SUBSCRIBE_WR=1) oder DP per HM-Script beschreiben
habe das so verstanden, dass USE_HMDATAPT=off (bei SUBSCRIBE_RF=0 und/oder SUBSCRIBE_WR=0) bedeutet, ich kann den DP per HM-Script beschreiben, z.B. so

Code: Alles auswählen

var tmp = dom.GetObject("Netatmosensor");
var tmpdp= tmp.DPByHssDP("TEMPERATURE");
var ok=tmpdp.State(10);
WriteLine(ok);
WriteLine(tmpdp.Value());
produziert als Ausgabe leider

Code: Alles auswählen

false
0.000000
d.h. Schreiben des DP war nicht erfolgreich.

Hat jemand ein ähnliches Szenario erfolgreich am Laufen?

VG

Michael

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 27.04.2013, 00:52
von mikethemagic
Irgendwas geht da beim Anlegen des Geräts schief. Folgendes scheint reproduzierbar:
  • Wrapper Device mit Nr. 3 (Thermostat) im CUxD (neuste Version) anlegen
  • in der CCU übernehmen und einem Raum und Gewerk zuweisen
  • Alles in Ordnung so weit. Gerät erscheint jeweils im richtigen Gewerk (z.B. Klima) oder Raum (z.B. Wohnzimmer)
  • DPs mit Skript beschreiben geht trotzdem nicht (s.o.)
  • Jetzt mal eine beliebige Systemvariable als Kanal dem Wrapper Device (:1) zuweisen
  • Wenn man sich das Wrapper Device jetzt über die Geräteliste anzeigen lässt hat alles funktioniert (d.h. Systemvariable erscheint als zusätzlicher Wert)
  • Jetzt mal auf die Liste Räume oder Gewerke klicken. Device taucht plötzlich nicht mehr im jeweiligen Gewerk (z.B. Klima) oder Raum (z.B. Wohnzimmer) auf und kann nur noch über die Gesamtgeräteliste angezeigt werden.
  • Gewerk für das Gerät nochmal neu konfigurieren oder ein anderes Gewerk wählen. Taucht trotzdem nicht mehr auf. :?

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 27.04.2013, 11:00
von uwe111
Hallo Michael,
mikethemagic hat geschrieben:
  • DPs mit Skript beschreiben geht trotzdem nicht (s.o.)
Stimmt! :oops: Da habe ich in der Doku doch wirklich zwei wichtige Datenpunkte vergessen.
Entweder bist Du der erste, der das nutzen möchte, oder die anderen haben es selbst herausgefunden bzw. aufgegeben.
Das Setzen der Temperatur geht über den Datenpunkt SET_TEMPERATURE (float):

Code: Alles auswählen

!setzen
dom.GetObject("CUxD.CUX9002001:1.SET_TEMPERATURE").State(30);
!auslesen
WriteLine(dom.GetObject("CUxD.CUX9002001:1.TEMPERATURE").State());
Das Setzen der Luftfeuchtigkeit geht über den Datenpunkt SET_HUMIDITY (float):

Code: Alles auswählen

!setzen
dom.GetObject("CUxD.CUX9002001:1.SET_HUMIDITY").State(50.6);
!auslesen
WriteLine(dom.GetObject("CUxD.CUX9002001:1.HUMIDITY").State());
mikethemagic hat geschrieben:
  • Jetzt mal eine beliebige Systemvariable als Kanal dem Wrapper Device (:1) zuweisen
  • Wenn man sich das Wrapper Device jetzt über die Geräteliste anzeigen lässt hat alles funktioniert (d.h. Systemvariable erscheint als zusätzlicher Wert)
  • Jetzt mal auf die Liste Räume oder Gewerke klicken. Device taucht plötzlich nicht mehr im jeweiligen Gewerk (z.B. Klima) oder Raum (z.B. Wohnzimmer) auf und kann nur noch über die Gesamtgeräteliste angezeigt werden.
  • Gewerk für das Gerät nochmal neu konfigurieren oder ein anderes Gewerk wählen. Taucht trotzdem nicht mehr auf. :?
[/list]
Das sind m.E. alles bekannte Probleme der WebUI, die auch HM-Geräte betreffen.

Viele Grüße,

Uwe.

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 27.04.2013, 21:06
von mikethemagic
Hi Uwe,

danke für den Tipp, jetzt funktioniert es wie gedacht. Einzig der Aufruf von State(...) auf den SET_xxx Datenpunkt liefert immer noch "false" was laut HM-Skript Anleitung bedeutet, dass das Schreiben nicht erfolgreich war. Der Wert wird aber richtig gesetzt. Vielleicht sollte ich auch einfach aufhören die Anleitungen zu lesen :lol:

Dass das mit dem Raum/Gewerk ein alter HM Hut/Bug war mir nicht klar, da es in den Beschreibungen immer um Anlernen der Geräte ging, nicht um das Zuweisen von Systemvariablen. Ausserdem hatte ich anderen HM-CC-TC erfolgreich Systemvariablen zugewiesen, ohne dass sie verschwinden. Dank Deinem Hinweis hab ich nochmal genau alle Kombinationen getestet und tatsächlich, wenn man einem HM-CC-TC eine Variable auf Kanal 2 (Regler) zuweist, passiert nichts, wenn man aber eine Variable auf Kanal 1 (Sensor) zuweist, verschwindet das Gerät aus Gewerk/Raumlisten und lässt sich auch nicht wieder zurückholen, selbst wenn man die Variable wieder entfernt, den Raum neu zuweist, ändert etc. Ich glaube ich muss jetzt ein paar HM-CC-TC neu anlernen :oops:

Danke für die Hilfe

VG
Michael

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 28.04.2013, 00:02
von uwe111
Hallo Michael,
mikethemagic hat geschrieben:Einzig der Aufruf von State(...) auf den SET_xxx Datenpunkt liefert immer noch "false" was laut HM-Skript Anleitung bedeutet, dass das Schreiben nicht erfolgreich war. Der Wert wird aber richtig gesetzt. Vielleicht sollte ich auch einfach aufhören die Anleitungen zu lesen
Das mit dem Lesen machst Du schon richtig. Allerdings liefert das Schreiben zu einem original HM-Schaltaktor bei mir auch false. :o

Viele Grüße,

Uwe.

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 17.12.2013, 10:01
von jan_xx
Hallo zusammen,

könnt ihr mir bitte helfen, ich versuche hier auch einen Regler zusammenzubauen, leider lässt sich
die Solltemperatur nicht setzen...
Was mache ich verkehrt???

Hatte folgendes versucht:
var x = dom.GetObject("CUxD.CUX9002001:1.SET_TEMPERATURE").State(30);

Gruß Jan

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 17.12.2013, 11:44
von uwe111
Hallo Jan,
jan_xx hat geschrieben:Hatte folgendes versucht:
var x = dom.GetObject("CUxD.CUX9002001:1.SET_TEMPERATURE").State(30);
Die Datenpunkte sind in der CUxD-Doku im Abschnitt "5.8.3 (3) Thermostat Device" beschrieben.

Für die Solltemperatur sollte der Aufruf so sein:

Code: Alles auswählen

dom.GetObject("CUxD.CUX9002001:2.SETPOINT").State(30);
Viele Grüße

Uwe

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 17.12.2013, 12:05
von jan_xx
Hallo Uwe,

danke Dir, aber es funktioniert leider nicht, woran könnte es noch liegen??
Ach ja selbst über die WEBUI lässt sich der Sollwert nicht ändern...

Gruß Jan

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 17.12.2013, 12:34
von uwe111
Hallo Jan,

hast Du den Geräteparameter CLIMATECONTROL_REGULATOR|USE_HMDATAPT deaktiviert?

Viele Grüße

Uwe

Re: Universal Wrapper Device Thermostat mit Script

Verfasst: 17.12.2013, 13:06
von jan_xx
Hallo Uwe,

Nee das ist alles an, keine Ahnung woran es liegt.
Würde ja gerne mal ein Screenshort mitschicken, aber irgendwie weiß ich nicht wie das hier im Forum funktioniert.

Ich habe als Fühler einen Funktemperaturfühler unter Kanal 1 eingetragen und bei Kanal 2 den CuXD Namen. Passt das soweit?

Gruß Jan