Temperatur in Variable schreiben / anzeigen auf Startseite

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von paul53 » 13.03.2015, 16:41

Also lautet die Scriptzeile jetzt

Code: Alles auswählen

t = dom.GetObject("Wandthermostat").DPByHssDP("TEMPERATURE").Value();
und es funktioniert wie es soll ?
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Benutzeravatar
Alex Frost
Beiträge: 7
Registriert: 12.03.2015, 21:05

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Alex Frost » 13.03.2015, 16:46

Jetzt schon. Ich bin so blind. Hab anstelle "var t" ein "var Temperatur" erstellt. Im nach hinein leuchtet es ein, das es so nicht gehen kann.du bist mein Retter. Vielen vielen Dank, es geht wie gewünscht. Tip top, Hilfe !!!!!!


Gesendet von iPad mit Tapatalk
"Possum sed nolo!"

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von paul53 » 13.03.2015, 17:09

Alex Frost hat geschrieben:Hab anstelle "var t" ein "var Temperatur" erstellt
Das hätte auch funktioniert, hättest Du für alle Funktionen den geänderten Script-Variablennamen benutzt:

Code: Alles auswählen

! Temperatur in String-SV schreiben
var Temperatur;
Temperatur = dom.GetObject("Wandthermostat").DPByHssDP("TEMPERATURE").Value();
Temperatur = Temperatur.ToString(1)#" °C";
dom.GetObject("Temperatur").State(Temperatur);
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Benutzeravatar
Alex Frost
Beiträge: 7
Registriert: 12.03.2015, 21:05

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Alex Frost » 13.03.2015, 17:14

paul53 hat geschrieben: Das hätte auch funktioniert, hättest Du für alle Funktionen den geänderten Script-Variablennamen benutzt:

Code: Alles auswählen

Temperatur = Temperatur.ToString(1)#" °C";
Daran ists gescheitert. War bei mir noch

Code: Alles auswählen

Temperatur = t.ToString(1)#" °C";
Naja, man wird immer schlauer. Jedenfalls vielen Dank für deine Mühe.
Ich komm sicher mal wieder drauf zurück. :)


Gesendet von iPad mit Tapatalk
"Possum sed nolo!"

Lumaley
Beiträge: 6
Registriert: 31.05.2017, 18:03

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Lumaley » 31.05.2017, 18:17

Guten Abend Leute,

ich häng mich auch mal ein bei diesem alten Post, aber nachdem ich gestern Abend 4h lang Foren und Anleitungen durchgelesen habe, bin ich nun zum Schluss gekommen, dass es das Beste ist, dass ich euch mal um Hilfe bitte.
PS: Die Anleitung:
"HM Script Abfrage von Datenpunkten (RF,IP...)" von alchy habe ich auch schon durchgelesen und befolgt.
Mein Ziel, Aussen Temperatur mit Innen Temperatur vergleichen und dementsprechend dann ein Motor betätigen.
Mein Aussensensor: HM-WDS30-T-O
Mein Innensensor: HmIP-STH

Mein Skript:

Code: Alles auswählen

! Temperatur Aussen erfassen
var _temp_aussen_obj = dom.GetObject("Thermostat Estrich Aussen");
var _temp_aussen = _temp_aussen_obj.Value();

! Temperatur Innen erfassen
var _temp_innen_obj = dom.GetObject("Thermostat Estrich Innen");
var _temp_innen = _temp_innen_obj.Value();

WriteLine("Aussen:");
WriteLine(_temp_aussen);
WriteLine("Innen:")
WriteLine(_temp_innen);
Wenn ich das im "Skript testen" eingebe, kommt als Ausgabe:

Code: Alles auswählen

Aussen:
false
Innen:
false
Es kommt ein "false" raus :roll:

Was ich dann noch probiert habe, ist das "dom.GetObject("Thermostat Estrich Aussen");" durch

Code: Alles auswählen

var _temp_aussen_obj = dom.GetObject("BidCos-RF.NEQ1142297:1.TEMPERATURE");
zu ersetzen, was dann auch wunderbar geklappt hat. Er spuckt mir eine Temperatur aus.

Doch leider habe ich nicht die richtige Schreibweise für meinen Innen Temperaturfühler gefunden (HM-IP).

Könnt ihr mir da helfen?

Ich danke schon vielmals im Voraus!!!

Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Bratmaxe » 01.06.2017, 09:00

Das Objekt musst du nicht unbedingt vorher in eine Variabel speichern, wenn du diese danach nicht mehr brauchst.
Hier mein Vorschlag für die Innentemperatur:

Code: Alles auswählen

var _temp_innen = dom.GetObject("BidCos-RF.HIERIDEINTRAGEN:1.ACTUAL_TEMPERATURE").Value();

du erhälst bei deiner Ausführung nur "false", da du .Value() auf das Objekt und nicht auf die Temperatur von dem Objekt machst, das ist nicht zulässig, und daher erhälst du "false"!. Bei deinem abgeänderten Code machst du es dann richtig und führst .Value() Auf den Kanal.Temperatur aus und somit erhälst du hier die richtige Temperatur!
Gruß Carsten

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von alchy » 01.06.2017, 10:33

Lumaley hat geschrieben: HM Script Abfrage von Datenpunkten (RF,IP...)" von alchy habe ich auch schon durchgelesen und befolgt.
Haben dir deine Eltern nicht "du sollst nicht lügen " beigebracht? :mrgreen:

Du magst es vielleicht gelesen haben, aber befolgt hast du es absolut nicht.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Lumaley
Beiträge: 6
Registriert: 31.05.2017, 18:03

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Lumaley » 01.06.2017, 18:04

alchy hat geschrieben:
Haben dir deine Eltern nicht "du sollst nicht lügen " beigebracht? :mrgreen:

Du magst es vielleicht gelesen haben, aber befolgt hast du es absolut nicht.

Alchy
Doch hab ich eigentlich, wie man es da sehen kann:

Code: Alles auswählen

var _temp_aussen_obj = dom.GetObject("BidCos-RF.NEQ1142297:1.TEMPERATURE");
Das hat ja wunderbar geklappt mit dem NICHT Homematic Temperaturfühler, aber mit dem Homematic IP Thermostat hat es leider nicht geklappt.

Ich werd mal weiter testen und melde mich dann wieder falls es geklappt hat und auch wieder falls es nicht geklappt hat :D :D :D

Lumaley
Beiträge: 6
Registriert: 31.05.2017, 18:03

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Lumaley » 01.06.2017, 18:16

Bratmaxe hat geschrieben:Das Objekt musst du nicht unbedingt vorher in eine Variabel speichern, wenn du diese danach nicht mehr brauchst.
Ich möchte in einem späteren Schritt dann die 2 Variablen miteinander vergleichen.

Aber ist nicht von Belang solang ich die Temperatur nicht auswerten kann^^

Lumaley
Beiträge: 6
Registriert: 31.05.2017, 18:03

Re: Temperatur in Variable schreiben / anzeigen auf Startsei

Beitrag von Lumaley » 01.06.2017, 18:28

Vielen Dank!!!
Der kleine aber feine Unterschied zwischen TEMPERATURE und ACTUAL_TEMPERATURE

Code: Alles auswählen

var _temp_aussen_obj = dom.GetObject("BidCos-RF.NEQ1142297:1.TEMPERATURE");
var _temp_aussen = _temp_aussen_obj.Value();

var _temp_innen_obj = dom.GetObject("HmIP-RF.000E5569A249B9:1.ACTUAL_TEMPERATURE");
var _temp_innen = _temp_innen_obj.Value();

WriteLine(_temp_aussen);
WriteLine(_temp_innen);
Das gibt mir nun die Temperaturen die ich benötige!
:D :D :D

Könnt ihr mir noch den Unterschied sagen zwischen actual_temperature und temperature?

Lieber Gruss und ein grosses Dankeschön :)

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“