Hallo,
ich habe einen Fenster Sensor und möchte nun gerne, wenn das Fenster offen ist die Soll Temperatur der Heizung verändern. Ich habe auch ein Codeschnipsel gefunden aber leider bekomme ich immer noch einen syntax error:
### Dummy, um zu erkennen, ob Fenster geöffnet wurde ###
define Schlafzimmer.fensteroffen dummy
### Dummy speichert ,,vorher"-Temperatur der Heizung ###
define Schlafzimmer.fensteroffenTemp dummy
### Bei Öffnung wird aktueller Wert gespeichert in Dummy, Temp auf 12 gesetzt und der Zustands-Dummy aktiviert ###
define TempSchlafzimmerSenken notify hm.schlafzimmerFensterSensor.open {
my $SchlafzimmerCurrentTemp=ReadingsVal("hm.schlafzimmer","desired-temp",0);
[b] fhem ("set hm.schlafzimmer desired-temp 12.0;; set Schlafzimmer.fensteroffen on;; set Schlafzimmer.fensteroffenTemp $SchlafzimmerCurrentTemp")[/b]
}
### Bei Schließen wird alter Wert wieder gesetzt, Zustands-Dummy wieder aus, nur wenn Zustand bisher offen ###
define TempSchlafzimmerAnheben notify hm.schlafzimmerFensterSensor.closed {
my $SchlafzimmerTempBefore=Value("Schlafzimmer.fensteroffenTemp");
if (Value("Schlafzimmer.fensteroffen") eq "on") {
fhem ("set hm.schlafzimmer desired-temp $SchlafzimmerTempBefore;; set Schlafzimmer.fensteroffen off")
}
}
Wäre cool wenn mir jemand helfen könnte. Danke und Grüße schonmal
herrmie
Wenn du Homematic Ventile im Einsatz hast, kannst du einfach den Fensterkontakt mit dem Ventil peeren. Das Ventil erkennt dann "Fenster auf" und regelt auf die eingestellte "Fenster auf" Temperatur herunter. Beim schließen wird dann der vorherige Wert eingestellt.
Mit anderen Ventilen kenn ich mich leider nicht aus, da ich nur Homematic im Eisatz habe.
VG
Frank
Hallo,
ZitatWäre cool wenn mir jemand helfen könnte.
Wäre cool wenn du etwas mehr zur verwendeten Hardware verraten könntest.
Dann würde die Hilfe auch zielgerichtet erfolgen können.
Grüße
Hallo,
zufällig sind es Homematic Ventile. du meinst dann sicher den channel _WindowRec und dort das reading winOpnTemp-int?
Sorry, mehr Infos:
Fensterkontakt: HM-SEC-SC
Heizungsthermostat: HM-CC-RT-DN
Grüße
herrmie
Hallo,
Homematic hat einen eigenen Unterbereich im Forum - dort wirst du evtl. schneller fündig oder aber du bekomsmt schneller Antwort.
Dann hätten wir noch http://www.fhemwiki.de/wiki/Kategorie:HomeMatic_Components (http://www.fhemwiki.de/wiki/Kategorie:HomeMatic_Components) zu bieten.
Evtl. findest du auch dort etwas.
Zitatzufällig sind es Homematic Ventile.
Mit "etwas mehr verraten" meinte ich auch die genaue Bezeichnung ;)
Aber soweit ich weiß können die HM-Ventile mit den HM-Fensterkontakten gepeert (heisst das so?) werden.
Dann sollte das Ventil automatisch die Heizung zumachen - ganz ohne Code.
Grüße
@Puschel74
Hab ich ihm oben schon geschrieben, im Homematic Bereich ist irgendwo auch beschrieben wie man peert (Beim Fensterkontakt muss die Anlerntaste und am Ventil auch, glaub ich gedrückt werden)
VG
Frank
schau mal hier, da hat sich Tommy viel Mühe gemacht !
http://forum.fhem.de/index.php/topic,17790.msg117437.html#msg117437 (http://forum.fhem.de/index.php/topic,17790.msg117437.html#msg117437)
Gruß
Hallo,
ich habe zuerst den Fenstersensor an fhem angelernt und danach habe ich die channels über fhem gepeert. Hab eben mal getestet und so wie es aussieht gehts.
Dennoch würde mich interessieren, was an dem Code oben falsch ist.
Grüße und danke.
herrmie
Hallo,
[b] fhem ("set hm.schlafzimmer desired-temp 12.0;; set Schlafzimmer.fensteroffen on;; set Schlafzimmer.fensteroffenTemp $SchlafzimmerCurrentTemp")[/b]
Ich tipp mal auf die beiden
@franky
Ja sorry - da war ich zu schnell mit dem "überfliegen" vom Text ;D
Grüße
Hallo,
wenn du die meinst, die wollte ich einfach nur machen, um die Zeile hervorzuheben.
Grüße
herrmie
Hallo,
ja die meinte ich - aber auch wieder was gelernt dabei 8)
Einfach nur das Bold-zeichen und alles nachfolgende wird fett gedruckt ;D
Aber zu deinem Code - ich hab jetzt die ( und ) und { und } und " nicht gezählt.
Beim schnellen drüberfliegen sieht er eigentlich ok aus bis auf den . (Punkt)
Ich weiß ja nicht ob das das Problem sein könnte aber in Devicenamen vermeide ich den Punkt da dieser in Perl als "ein beliebiges Zeichen" interpretiert wird.
Ich meine aber das Rudi? geschrieben hat das das wohl kein Problem sein dürfte (ich find aber den Thread nichtmehr) - es kann aber auch jemand anders gewesen sein.
Kurzum - ich benutze als Trenner bei meinen Namen den _
Ja, einige finden das sieht nicht schick aus aber ...
über die FHEM-Oberfläche "bediene" ich mein Haus nicht.
Dafür habe ich Sensoren - Taster, Bewegungsmelder, Temp.-Feuchte.-Helligkeit usw.
Ganz langsam "steuere" ich mein Haus auch schon per Sprache aber das ist noch "gewöhnungsbedürftig".
Die Aktoren bzw. deren Namensgebung sind mir persönlich (und meiner Frau) egal - es muss nur funktionieren (und das ganz besonders bei meiner Frau) ;D
Aber BTT.
Ich hab wie gesagt den Code nicht in meine Testumgebung eingebaut aber so sieht er (für mich) ok aus.
Einen "syntax error" habe ich in FHEM aber noch nie bekommen - das wundert mich jetzt etwas.
Oder was meinst du mit
Zitataber leider bekomme ich immer noch einen syntax error:
?
Grüße
Mit Syntax error meine ich, wenn ich mein angelegte config abspeichern will.
Grüße