RolladenSteuerung mit Sunrise

Begonnen von deavik, 23 Januar 2013, 08:14:46

Vorheriges Thema - Nächstes Thema

deavik

Hallo!

Ich betreibe Rolladensteuerung IT mit Kombination: CUL + RPi.
Steuerung direkt über webinterface funktioniert gut.
Jetzt versuche ich Zeitenprogrammierung.


define rolladen.sunrise.auf1.werktag at *{sunrise(900,"07:30")} { ("set SCHLAF.ROLLO.1 on;;sleep 3;;set SCHLAF.ROLLO.2 on;;sleep 3;;set SCHLAF.ROLLO.3 on;;sleep 3;;set BAD.ROLLO.1 on;;sleep 3;;set BAD.ROLLO.2 on;;sleep 3;;set KINDER.ROLLO on") if(!$we) }
define rolladen.sunrise.auf1.wochend at *{sunrise(900,"08:30")} { ("set SCHLAF.ROLLO.1 on;;sleep 3;;set SCHLAF.ROLLO.2 on;;sleep 3;;set SCHLAF.ROLLO.3 on;;sleep 3;;set BAD.ROLLO.1 on;;sleep 3;;set BAD.ROLLO.2 on;;sleep 3;;set KINDER.ROLLO on") if($we) }
define rolladen.sunrise.auf2.werktag at *{sunrise(0,"07:00")} { ("set KUECHE.ROLLO.1 on") if(!$we) }
define rolladen.sunrise.auf2.wochend at *{sunrise(0,"06:30")} { ("set KUECHE.ROLLO.1 on") if($we) }

define rolladen.sunrise.zu1 at *{sunset(-1800,"16:45")} { ("set SCHLAF.ROLLO.1 off;;sleep 3;;set SCHLAF.ROLLO.2 off;;sleep 3;;set SCHLAF.ROLLO.3 off;;sleep 3;;set BAD.ROLLO.1 off;;sleep 3;;set BAD.ROLLO.2 off;;sleep 3;;set KINDER.ROLLO off") }
define rolladen.sunrise.zu2 at *{sunset(-1800,"17:30")} { ("set KUECHE.ROLLO.1 off") }


Im Everything steht:

at
rolladen.sunrise.auf1.werktag
Next: 07:43:49
rolladen.sunrise.auf1.wochend
Next: 08:30:00
rolladen.sunrise.auf2.werktag
Next: 07:28:49
rolladen.sunrise.auf2.wochend
Next: 07:28:49
rolladen.sunrise.zu1
Next: 17:17:20
rolladen.sunrise.zu2
Next: 17:30:00


Rolladen werden aber nicht geschaltet.
Log zeigt auch keine Fehler:

2013.01.22 07:30:35 3: set KUECHE.ROLLO.1 on
2013.01.22 07:45:35 3: set SCHLAF.ROLLO.1 on;sleep 3;set SCHLAF.ROLLO.2 on;sleep 3;set SCHLAF.ROLLO.3 on;sleep 3;set BAD.ROLLO.1 on;sleep 3;set BAD.ROLLO.2 on;sleep 3;set KINDER.ROLLO on
2013.01.22 17:15:55 3: set SCHLAF.ROLLO.1 off;sleep 3;set SCHLAF.ROLLO.2 off;sleep 3;set SCHLAF.ROLLO.3 off;sleep 3;set BAD.ROLLO.1 off;sleep 3;set BAD.ROLLO.2 off;sleep 3;set KINDER.ROLLO off
2013.01.22 17:30:00 3: set KUECHE.ROLLO.1 off
2013.01.23 07:29:43 3: set KUECHE.ROLLO.1 on
2013.01.23 07:44:43 3: set SCHLAF.ROLLO.1 on;sleep 3;set SCHLAF.ROLLO.2 on;sleep 3;set SCHLAF.ROLLO.3 on;sleep 3;set BAD.ROLLO.1 on;sleep 3;set BAD.ROLLO.2 on;sleep 3;set KINDER.ROLLO on


Habe ich irgendwo Fehler bei Programmierung?
viktor

MisterEltako

Hi!

Also ich denke mit "{" gehst du in Perl und sagst Perl es soll "set Schlaf.Rollo.1 on;;..."
machen.  Dies muss aber ein fhem-Kommando sein. Außerdem fehlt der Zeilenumbruch "\".
Also statt:

define rolladen.sunrise.auf1.werktag at *{sunrise(900,"07:30")} { ("set SCHLAF.ROLLO.1 on;;sleep 3;;set SCHLAF.ROLLO.2 on;;sleep 3;;set SCHLAF.ROLLO.3 on;;sleep 3;;set BAD.ROLLO.1 on;;sleep 3;;set BAD.ROLLO.2 on;;sleep 3;;set KINDER.ROLLO on") if(!$we) }

müsste es so sein:
define rolladen.sunrise.auf1.werktag at *{sunrise(900,"07:30")} {\
fhem ("set SCHLAF.ROLLO.1 on;;sleep 3;;set SCHLAF.ROLLO.2 on;;sleep 3;;\
set SCHLAF.ROLLO.3 on;;sleep 3;;set BAD.ROLLO.1 on;;sleep 3;;set BAD.ROLLO.2 on;;\
sleep 3;;set KINDER.ROLLO on") if(!$we) }....

MfG, MisterEltako
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

deavik

Ok, probiere ich heute gleich.

In Original-Datei gibt es bei mir keine Zeilenumbrüche, aber gut zu wissen.. :)

Vielen Dank
viktor

Tobias

nurmal Nebenbei, für Wochenprofile ist das Modul Heating_Control hilfreich. Damit kann man nicht nur Heizkörpern ein Wochenprofil vergeben ;)
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter