Hilfe bei Skript

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Ovidius
Beiträge: 107
Registriert: 20.08.2006, 22:33

Hilfe bei Skript

Beitrag von Ovidius » 05.02.2013, 08:51

Hallo,

zur Steuerung meiner Heizung (Elektroheizung und Fußbodenheizung) möchte ich mir ein einfaches Skript erstellen, das ich dann in jedem Raum mit einem eigenen Programm ausführen kann

dazu habe ich nachfolgende Komponenten im Einsatz
- HomeMatic HM-WDS40-TH-I Funk-Innensensor ITH z.B. Temperatur.Büro
- HomeMatic Funk-Schaltaktor 2fach, Unterputzmontage z.B. Heizung.Büro
Grundsätzlich funktioniert die Steuerung damit

Nun möchte ich mit dem Skript eine Systemvariable vom Typ Zahl (Wertebereich 18-25 Grad) auslesen. (z.B. Heizung.Sollwert.Büro)
Solange die in der Variable eingestellte Temperatur nicht erreich ist soll der Schaltaktor eingeschalten werden. Sobald die Temperatur erreicht ist soll der Schaltaktor dann ausgeschalten werden.

Eigentlich ganz einfach, aber das nachfolgende Skript funktioniert nicht, kann mir Jemand helfen, was mache ich falsch?

Code: Alles auswählen

real isttemp;
real solltempauto;

isttemp = dom.GetObject("Temperatur.Büro").Value();
solltempauto = dom.GetObject("Heizung.Sollwert.Büro").Value();

if (isttemp < solltemp)
{dom.GetObject("Heizung.Büro").State(1);}
else
{ if (isttemp >= solltemp)
  {dom.GetObject("Heizung.Büro").State(0);}
}
Viele Grüße

Peter

technikus
Beiträge: 44
Registriert: 07.04.2012, 12:39

Re: Hilfe bei Skript

Beitrag von technikus » 05.02.2013, 09:21

Hallo Ovidius

Nimm anstelle des Thermometers einen Funkwandthermostat, dann ersparst Du Dir die Skripte. Alle nötigen Funktionen sind eingebaut (Schaltaktor oder Ventilantrieb) Zugriff per Programm ist immer noch möglich.

Gruß technikus

Ovidius
Beiträge: 107
Registriert: 20.08.2006, 22:33

Re: Hilfe bei Skript

Beitrag von Ovidius » 05.02.2013, 09:40

Hallo technikus,

danke für den Tip, aber ich habe bereits 5 Funkthermostate im Einsatz.

Es wäre schön wenn sich Jemand das Skript anschauen könnte der sich damit auskennt.

Viele Grüße

Peter

tmueller99
Beiträge: 156
Registriert: 02.05.2012, 14:50

Re: Hilfe bei Skript

Beitrag von tmueller99 » 05.02.2013, 10:38

Hallo,
habe gerade nur ganz kurz über das Skript geschaut, aber mir fällt auf, dass Du eine Variable solltempauto definierst, aber in Deinen Vergleichen beziehst Du Dich auf solltemp.. Du willst doch sicherlich mit solltempauto vergleichen, oder habe ich etwas übersehen ?
Gruß
Thomas

buempi
Ehrenmitglied
Beiträge: 12194
Registriert: 29.07.2006, 15:58
Wohnort: Schweiz
Danksagung erhalten: 5 Mal

Re: Hilfe bei Skript

Beitrag von buempi » 05.02.2013, 10:39

Hallo Peter

Verwende dieses Script hier: http://homematic-forum.de/forum/viewtop ... =31&t=5233 . Dort wird auch verhindert, dass bei jedem Durchgang EIN oder AUS gesendet wird, obwohl der Aktor schon richtig steht.

Viele Grüsse
Bümpi

Htrecksler
Beiträge: 116
Registriert: 20.04.2012, 12:02

Re: Hilfe bei Skript

Beitrag von Htrecksler » 05.02.2013, 10:41

Ich hab mal hier gelesen, dass Umlaute im Script nicht gerade der Brueller sind.
Und wie oft wird Dein Script ausgeführt?
Hast Du mal den Parser benutzt? Werden die Variablen gefüllt?
Ich bin jetzt leider unterwegs, aber wenn Du bis heute Nachmittag noch erfolglos bist schau ich mir das gerne mal genauer an.
Und der Hinweis von Thomas mit den Variablen war mir auf die schnelle noch gar nicht aufgefallen. :roll:

Ovidius
Beiträge: 107
Registriert: 20.08.2006, 22:33

Re: Hilfe bei Skript

Beitrag von Ovidius » 05.02.2013, 12:51

Hallo Bümpi,
Verwende dieses Script hier: viewtopic.php?f=31&t=5233
das Skript bezieht sich auf einen Raumregler, ich benutze aber einen Temperatursensor.
Ich möchte die Temperatur mit einer Systemvariablen einstellen und nicht über einen Raumregler.

Hallo Thomas,
.. dass Du eine Variable solltempauto definierst, aber in Deinen Vergleichen beziehst Du Dich auf solltemp. ...
danke für den Hinweis, manchmal übersieht man solche Dinge wenn man zu oft draufschaut.
Leider funktioniert das Skript aber nach der Korrektur immer noch nicht.

Peter

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

Re: Hilfe bei Skript

Beitrag von paul53 » 05.02.2013, 13:17

Nach Korrektur sollte das Script etwa so aussehen:

Code: Alles auswählen

real isttemp;
real solltemp;

isttemp = dom.GetObject("Temperatur.Büro").Value();
solltemp = dom.GetObject("Heizung.Sollwert.Büro").Value();

if (isttemp < solltemp)
{dom.GetObject("Heizung.Büro").State(1);}
else
{ if (isttemp >= solltemp)
  {dom.GetObject("Heizung.Büro").State(0);}
}
Im Script werden die beiden Systemvariablen "Temperatur.Büro" und "Heizung.Sollwert.Büro" vom Typ Zahl gelesen und das Ergebnis des 2-Punkt-Reglers ohne Hysterese wird in die Systemvariable "Heizung.Büro" vom Typ Logikwert geschrieben.
Das setzt voraus, dass die SV "Temperatur.Büro" in einem anderen WebUI-Programm mit dem Messwert eines Temperatusensors gefüllt wird und dass in einem weiteren Programm die SV "Heizung.Büro" ausgewertet wird, um einen Aktor zu schalten.
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)

MaxWrestler
Beiträge: 237
Registriert: 11.12.2011, 12:19
Danksagung erhalten: 1 Mal

Re: Hilfe bei Skript

Beitrag von MaxWrestler » 05.02.2013, 13:21

Hallo Peter,
ich würde Dir CUxD von Uwe111 empfehlen !

http://www.homematic-inside.de/software/cuxdaemon

Das Virtuelle Gerät (90) Universal Wrapper Device 3.Thermostat stellt folgende Funktionen zur Verfügung:
Taupunkt
Absolute Luftfeuchte

Min. Temperatur der letzten 24 Stunden
Max. Temperatur der letzten 24 Stunden
Min. Luftfeuchte der letzten 24 Stunden
Max. Luftfeuchte der letzten 24 Stunden

2 Punkt Regler mit einstellbarer Hysterese.
...
Das alles ohne eine Zeile Script !!!

Und jetzt kommt's!
Obendrauf gibt es noch einen Regler für die Solltemperatur.
HM Gerät.jpg
Ansicht HM-Geräte
CUxD Einstellungen.jpg
Ansicht HM-EInstellungen
Und falls du Dir doch noch einen Wandthermostat kaufen möchtest.
Kein Problem, CUxD übernimmt die Solltemperatur auch von diesem !

Falls du fragen hast ... gerne.

Grüße
MaxWrestler

Ovidius
Beiträge: 107
Registriert: 20.08.2006, 22:33

Re: Hilfe bei Skript

Beitrag von Ovidius » 05.02.2013, 13:29

Hallo paul53,

verstehe ich das richtig, dass bei deinem Skript nicht der Schaltaktor Heizung.Büro geschalten wird, sondern eine Systemvariable Heizung.Büro auf 1 oder 2 gestellt wird.

Hallo MaxWrestler,
ich würde Dir CUxD von Uwe111 empfehlen !
das hört sich gut an, bin schon dabei das auszuprobieren.
Ein Frage habe ich schon mal. Beim anlegen kann man bei Funktion 1:Transform oder 2:State auswählen. Was ist der Unterschied.

Schon mal vielen Dank für die Vorschläge

Peter

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“