Hauptmenü

Beschattungssteuerung

Begonnen von SkodaSascha, 28 April 2013, 13:07:01

Vorheriges Thema - Nächstes Thema

SkodaSascha

Die Fehlermeldungen sind jetzt alle weg. Nach dem Speichern wurden 1x die Readingswerte abgerufen, danach leider nicht mehr.

2013.06.09 08:21:50 3: Readingswerte: 8, 6, 11, überwiegend wolkig
2013.06.09 08:21:51 3: Beschattungssteuerung aktiv
2013.06.09 09:51:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 10:21:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 11:06:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 11:36:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 12:36:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 13:51:34 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 14:51:35 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 17:36:33 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
2013.06.09 18:06:33 1: [TWILIGHT] No Weather location found at yahoo weather for location ID: 651520
FHEM auf Raspberry Pi, HMLAN + CUL

MisterEltako

Hi!

Du musst natürlich das zum Test geänderte:

define Rolladensteuerung at +00:00:15 {\

wieder durch dein:

define Rolladensteuerung notify Wetter:condition.* {\

erstetzen...

MfG, MisterEltako.


PS: Vielleicht stellst du es doch noch etwas um, sonst wird mit jeder Wetteränderung Rollo_auf gelöscht und wieder angelegt. Macht eigentlich keinen Sinn:

define Rolladensteuerung notify Wetter:condition.* {\
if (!defined($defs{Rollo_auf})) {\
 fhem("define Rollo_auf at *21:00 {set RolladenSchlafzimmer on;;;;set RolladenWohnzimmer on}");;\
   }\
Beschattungssteuerung($hour, $month);;\
}
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

SkodaSascha

ZitatDu musst natürlich das zum Test geänderte:
define Rolladensteuerung at +00:00:15 {\
wieder durch dein:
define Rolladensteuerung notify Wetter:condition.* {\
erstetzen...

Man man, ich blicke aber auch gar nichts...
Die Readingswerte sind nun auf jeden Fall wieder da !

Heute war sehr gut zum Testen ob der Rolladen vor 21 Uhr hochfährt wenn 20 Grad unterschritten werden. Leider
ist nichts passiert, um 21 Uhr kam dann die Fehlermelung

2013.06.10 21:00:00 3: Bareword "on" not allowed while "strict subs" in use at (eval 5020) line 1.
Bareword "on" not allowed while "strict subs" in use at (eval 5020) line 1.
FHEM auf Raspberry Pi, HMLAN + CUL

MisterEltako

define Rolladensteuerung notify Wetter:condition.* {\
if (!defined($defs{Rollo_auf})) {\
fhem("define Rollo_auf at *21:00 set RolladenSchlafzimmer on;;;;set RolladenWohnzimmer on");;\
}\
Beschattungssteuerung($hour, $month);;\
}

Ein paar Klammern zuviel....

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

SkodaSascha

Dann habe ich wiede ein

ERROR:
Please define Rollo_auf first



beim Speichern.
FHEM auf Raspberry Pi, HMLAN + CUL

MisterEltako

Geht es so?

define Rollo_auf at *21:00 set RolladenSchlafzimmer on;;;;set RolladenWohnzimmer on

define Rolladensteuerung notify Wetter:condition.* {\
Beschattungssteuerung($hour, $month);;\
}

eventuell auch Mal statt ;;;; nur ;; einsetzen (kann es gerade nicht testen)

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

SkodaSascha

Ich habe alle möglichen Variation probiert. Entweder gleich eine Fehlermeldung beim Speichern, oder beim ausführen um 21.00 Uhr.
FHEM auf Raspberry Pi, HMLAN + CUL

moonsorrox

ich wollte mal wissen wie das hier nun zu Ende gegangen, funktioniert die Beschattungssteuerung ohne Probleme dann würde ich sie gern mal übernehmen.?
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Mumpitz

hallo zusammen

da mittlerweilen fast jeden Tag schön Wetter ist und ich knapp vorher noch 3 HM Jalousienaktoren verbaucht habe, bin ich im Moment am basteln meiner Steuerung. Dabei habe ich diese Beispiel genommen und entsprechend für mich abgeändert.

Grundsätzlich hat das ganze heute funktioniert. Was mich allerdings extrem stört ist, dass jedesmal wenn ich die yahoo Wetter Daten hole auch der Steuerbefehl wieder neu ausgelöst wird. Das ist aus meiner Sicht nicht unbedingt nötig. Kann das irgendwie verhindert werden?

Mir ist klar, es hat mit dem event Reading zu tun. Das Problem dabei ist aber, dass sich die Temperatur ja die ganze Zeit ändert, die condition jedoch sehr selten.

Hat jemand eine Lösung?

# fhem.cfg

define n_RollladensteuerungS notify Wetter:condition.* { Beschattungssteuerung($hour, $month) }


# 99_myUtils

Beschattungssteuerung($$) {
# Parameter: $hour, $month
my $hour = shift;
my $month = shift;
my $Temp= ReadingsVal("Wetter","temp_c","999");
my $Sonne= ReadingsVal("Wetter","condition","kein Wert");
Log 3, "Readingswerte: $hour, $month, $Temp, $Sonne";

if (($Temp==999) || ($Sonne eq "kein Wert")) {
Log 3, "Yahoo-Wetter nicht erreichbar oder kein Wert geliefert";
return;}

if (($month >= 3) && ($month <= 10)){
   Log 3, "Beschattungssteuerung aktiv";
   if (($hour >= 10)&& ($hour <= 18)){
        if (($Temp >= 10)&&(Value("Rollladen_Kind") ne "off")){
             if (($Sonne eq "sonnig")||($Sonne eq "teilweise wolkig")||($Sonne eq "heiter")||($Sonne eq "bewölkt")){
                 Log 3, "Beschattungsposition wird angefahren...";
                 Log 3, "Rolladen öffnet um 17:30 Uhr";
                 fhem("set Rollladen_Eltern_1 30");
                 fhem("set Rollladen_Eltern_2 25");
                 fhem("set Rollladen_Kind 30");
                   
                 
            }elsif(Value("Rollladen_Kind") ne "on"){
                #wenn nicht mehr ,,sonnig" oder ,,teilweise wolkig oder "heiter" oder "bewölkt" dann:
                Log 3, " Beschattungsposition wird aufgehoben...";
                fhem("set Rollladen_Eltern_1 auf");
                fhem("set Rollladen_Eltern_2 auf"); 
fhem("set Rollladen_Kind auf");             
            };
               
}
}
}

}


Das entsprechende Log dazu:

2015.04.22 12:35:51 3: CUL_HM set Rollladen_Kind 30
2015.04.22 12:35:51 3: CUL_HM set Rollladen_Eltern_2 25
2015.04.22 12:35:51 3: CUL_HM set Rollladen_Eltern_1 30
2015.04.22 12:35:51 3: Rolladen öffnet um 17:30 Uhr
2015.04.22 12:35:51 3: Beschattungsposition wird angefahren...
2015.04.22 12:35:51 3: Beschattungssteuerung aktiv
2015.04.22 12:35:51 3: Readingswerte: 12, 4, 18, heiter
2015.04.22 12:15:51 3: CUL_HM set Rollladen_Kind 30
2015.04.22 12:15:51 3: CUL_HM set Rollladen_Eltern_2 25
2015.04.22 12:15:51 3: CUL_HM set Rollladen_Eltern_1 30
2015.04.22 12:15:51 3: Rolladen öffnet um 17:30 Uhr
2015.04.22 12:15:51 3: Beschattungsposition wird angefahren...
2015.04.22 12:15:51 3: Beschattungssteuerung aktiv
2015.04.22 12:15:51 3: Readingswerte: 12, 4, 17, heiter
2015.04.22 11:55:51 3: CUL_HM set Rollladen_Kind 30
2015.04.22 11:55:51 3: CUL_HM set Rollladen_Eltern_2 25
2015.04.22 11:55:51 3: CUL_HM set Rollladen_Eltern_1 30
2015.04.22 11:55:51 3: Rolladen öffnet um 17:30 Uhr
2015.04.22 11:55:51 3: Beschattungsposition wird angefahren...
2015.04.22 11:55:51 3: Beschattungssteuerung aktiv
2015.04.22 11:55:51 3: Readingswerte: 11, 4, 17, heiter

scooty

Hallo,

nur so'ne Idee, vielleicht mit einem

attr Wetter event-on-change-reading condition

um das Notify n_RollladensteuerungS nur zu triggern, wenn sich bei Abfrage des Wetters der Wert des Readings condition ändert (und eben nicht wenn der Wert gleich bleibt).

Ansonsten fallen mir nur Dummys zum Speichern des Status der Beschattung und Erweiterung der if-Abfrage in der 99_myUtils ein oder, das würde ich machen, die komplette Beschattungssteuerung über ein DOIF abzubilden.

Viele Grüße,
Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH1080 / IO Homecontrol

Mumpitz

oha, jetzt bringst Du mich ins Rudern

DOIF Abfrage???

Kannst Du mir etwas auf die Sprünge helfen? wie füge ich die einzelnen Kriterien ein?

scooty

Sorry, wollte Dich jetzt nicht verwirren.
Infos zum mächtigen DOIF findest Du in der Commandref (in der deutschen Version sind viele, viele Beispiele).

Probiere es einfach erstmal mit dem event-on-change Attribut.

Viele Grüße,
Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH1080 / IO Homecontrol

Mumpitz

Hallo, ich bins nochmals. Besten Dank für den Hinweis. Habe mir das ganze DOIF durchgelesen und steh etwas auf dem Schlauch. Ich denke den Code würde ich zusammen bringen. Was mir noch fehlt ist mein Wunsch, siehe meine 99_myUtyls,  in ein DOIF zu übersetzen. Kannst Du mir kurz behilflich sein..

Nicht falsch verstehen, ich möchte nicht das du mir das DOIF schreibst. Das möchte ich learning by Doing selber machen. Sondern ich würde mich über die Umgangssprachliche Abfolge, analog meiner Sub Beschattung, freuen!



DieterL

Hm.....ich hab´s mir relativ einfach gemacht......Einen Helligkeitssensor an die Scheibe gepappt. Den Wert abgelesen,bei welchem ich möchte das die Rolläden bis auf 75% herunterfahren und frage dann dies mit Doif ab. Warum so kompliziert mit der Abfrage der Uhrzeit (nachts, morgens und abends ist´s selten hell ?)  ;)
Raspi 2, Cul868, CUL433, Jeelink,HM-USB,4 *ITM100, 6* FHT8V, 6*CMR500, x-FS20 Komp., X- FS20 ST-4, 6* FS20 DI22-4 , YWT-8500, 4* Sonos Play:1, 2* Sonos Pl5, div selbstgestrickte Sensoren, 5* S555TH,9 * LaCrosse TX 29-IT, Philips Hue, 4* Piri-2,HomeMatic 4-Kanal-Schalter, 2*Velux,Bluetooth Stick

Mumpitz

Welchen Helligkeitssensor hast du im Einsatz?