Hauptmenü

At Frage

Begonnen von UweUwe, 24 Juli 2019, 19:19:17

Vorheriges Thema - Nächstes Thema

UweUwe

Hallo,
würde gerne meinen funktionierenden At Befehl für meine Rolladensteuerung:
*{sunrise(0,"7:55","8:30")} set RolladenAlle pct 100 erweitern. Aktuell fährt der Befehl zuverlässig jeden Morgen abhängig vom Sonnenstand zwischen 7:55 und 8:30 alle "RolladenAlle" hoch.

Ich möchte dies erweitern um die Bedingung, dass er nur hochfährt, falls die von Proplanta vorhergesagte Tageshöchsttemperatur für den aktuellen Tag < 25 Grad Celsius ist:
ZitatW_HN ist der name meines Proplanta Wetter devices
Zitatfc0_tempMax sollte das reading für die Tageshöchsttemperatur für den aktuellen Tag sein

Hab mir folgende DEV überlegt, die aber leider nicht tut!
*[{sunrise(0,"7:55","8:30")}] and [ReadingsVal(W_HN, fc0_tempMax, 20) < 25]  (set RolladenAlle pct 100)

Was mache ich falsch?

Gisbert

Hallo Uwe2 ;D

die Lösung dürfte vermutlich nicht schwer sein, sie würde aber deutlich einfacher ausfallen, wenn du die raw-Definition deines funktionierenden Devices postest.
Die gewünschte Erweiterung geht aus deinem Beitrag hervor.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

UweUwe

Hallo Gisbert,

ich verstehe deine Antwort nicht.
Zitatwenn du die raw-Definition deines funktionierenden Devices postest.

ZitatDie gewünschte Erweiterung geht aus deinem Beitrag hervor.

Merci



Gisbert

Hallo Uwe,

du wählst das infrage kommende Device aus, du wählst unten Raw definition aus und kopierst den Inhalt des Fensters in diesem Thread.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY

amenomade

Syntax für ein "at" ist :
at <timespec> Befehl
Du kannst nicht einfach diese <timespec> mit anderen Bedingungen mischen. Diese andere Bedingungen müssen im Befehl getestet werden. Oder das ist kein "at" mehr, sondern du wechselst auf ein DOIF.

Es gibt mehrere Möglichkeiten. Eine davon ist der IF fhem-Befehl: https://fhem.de/commandref_DE.html#IF

Etwas in der Art:

*{sunrise(0,"7:55","8:30")} IF ([W_HN:fc0_tempMax] < 25) (set RolladenAlle pct 100)

Alternativ kann man über Perl gehen:
*{sunrise(0,"7:55","8:30")} { if (ReadingsVal(W_HN, fc0_tempMax, 20) < 25) {fhem "set RolladenAlle pct 100"}}

Wichtig ist bei dem "at" : die Zeitbedingung bleibt alleine! Nur die steuert und triggert
Auf Deutsch würdest Du nicht sagen: "Jeden Tag um 7:55 Uhr und Temperatur kleiner als 25, tue das", sondern eher: "Jeden Tag um 7:55, wenn Temperatur kleiner als 25, dann..."
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

UweUwe

Merci amenomade ,
werde ich ausprobieren ...melde mich ..

MCh76

oder gleich mal das tolle Modul AutoShuttersControl ausprobieren. Habe ich seit Beginn der Woche im Einsatz und bin begeistert. Da könntest du bspw. die Rolladen morgens hochfahren und bei Erreichen bestimmter Grenzwerte wieder beschatten.

Beta-User

Das mit ASC ist m.E. erst der übernächste Schritt, erst sollte "man" mal verstanden haben, wie man von FHEM "nach Perl" kommt und wieder zurück.

@amenomade: Fehlen da nicht noch ein paar Quotes?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files