Erstes DOIF: Rollos dimmen wenn TV an ist.

Begonnen von DerTobi, 20 Oktober 2016, 15:31:24

Vorheriges Thema - Nächstes Thema

DerTobi

Hallo zusammen,

ich bin relativ neu hier angemeldet. Teste die ganze Zeit so vor mich hin und habe auch schon einiges hinbekommen.

Ich hänge aber seit ein paar Tagen an meinem ersten "richtigen" DOIF.

Kurz zum Vorhaben. Ich habe einen TV im wohnzimmer. Dieser hängt an einer Fibaro Zwischensteckdose, mit dieser lese ich den Stromverbrauch aus um zu sehen ob der TV an oder aus ist. Samsung 55H6270 (kann ja wohl sonst nicht den Status melden?!). Nun möchte ich gerne Regeln erstellen das meine Rollos (welche auch mit Fibaro Schalteren ausgestattet sind) dimmen wenn der TV Tagsüber eingeschaltet wird und wieder hochfahren wenn er ausgeschaltet wird.

Aber ich scheitere schon an einer einfachen Funktion die nur "blöd" nach der Zeit schaltet.

Hier mal der Code:


Define TV_Schaltung ([15:00-20:00|12345] or [12:30-20:00|60] and [EG_WZ4_RL:state] >= 80 and [Samsung_TV:power] >= 15) (set EG_WZ1_RL dim 65) (set EG_WZ2_RL off) (set EG_WZ3_RL off) (set EG_WZ4_RL dim 20) DOELSEIF ([11:00-20:00|12345] or [12:30-20:00|60] and [Samsung_TV:power] <= 10) (set EG_WZ1_RL dim 99) (set EG_WZ2_RL dim 99) (set EG_WZ3_RL dim 99) (set EG_WZ4_RL dim 99) DOELSE



Dazu noch diese Attr gesetzt:

Attributes
checkReadingEvent 1
room Aktionen
wait 30


Wenn ich das mal irgendwie zum laufen bringe würde ich das gerne noch etwas feiner schalten. Aber das würde mir zum "verstehen" erst mal reichen.

Im EventMonitor taucht außer dem Stromverbrauch des Samsung_TV nichts auf.   

Es wäre echt nett von ecuh wenn ihr mir mal auf die Sprünge helft....langsam bin ich verzweifelt.

sash.sc

Oder Verknüpfungen immer in klammern setzen, da die and Verknüpfungen Vorrang haben.

Gruß Sascha

Von mobil gesendet daher kurze Antwort

Raspi 4B+ Bullseye ;LaCrosse; HomeMatic; MapleCUL; ZigBee; Signalduino ESP32 ; Shellys; MQTT2; Grafana mit Influxdb

Mitch

Warum alle set Befehle extra?
Kann man doch alle mit einen Komma trennen?

Wenn Dein Samsung. am Netz hängt, hat er eine IP und diese kannst Du über das PRECENSE Modul abfragen.
So sehe ich bei mir, ob der TV an ist, oder nicht.

Und wie schon geschrieben, oder gehört nochmal extra in Klammern.
Wenn ich mir DOIFs baue, schreibe ich mir das immer erst leicht verständlich auf.
z.B.:
Zitatwenn TV an und Rollo oben und es ist Tag, dann fahre Rollo auf 80% runter
FHEM im Proxmox Container

DerTobi

Hallo,

Danke für eure Antworten.

Sollte es dann so aussehen?

Define TV_Schaltung (([15:00-20:00|12345] or [12:30-20:00|60]) and [EG_WZ4_RL:state] >= 80 and [Samsung_TV:power] >= 15) (set EG_WZ1_RL dim 65, EG_WZ2_RL off, EG_WZ3_RL off, EG_WZ4_RL dim 20) DOELSEIF ([11:00-20:00|12345] or [12:30-20:00|60] and [Samsung_TV:power] <= 10) (set EG_WZ1_RL dim 99, EG_WZ2_RL dim 99, EG_WZ3_RL dim 99, EG_WZ4_RL dim 99) DOELSE

Tuts leider auch nicht :/

Mitch

Ne, die set Befehle müssen so aussehen: set Device on,set Device off,set Device 40 usw.
Lies dich doch mal in die COmmand Ref zu DOIF ein, da steht wirklich alles sehr gut und einfach beschrieben.
FHEM im Proxmox Container

Ellert

Zitat von: DerTobi am 20 Oktober 2016, 15:48:04
Hallo,

Danke für eure Antworten.

Sollte es dann so aussehen?

Define TV_Schaltung (([15:00-20:00|12345] or [12:30-20:00|60]) and [EG_WZ4_RL:state] >= 80 and [Samsung_TV:power] >= 15) (set EG_WZ1_RL dim 65, EG_WZ2_RL off, EG_WZ3_RL off, EG_WZ4_RL dim 20) DOELSEIF ([11:00-20:00|12345] or [12:30-20:00|60] and [Samsung_TV:power] <= 10) (set EG_WZ1_RL dim 99, EG_WZ2_RL dim 99, EG_WZ3_RL dim 99, EG_WZ4_RL dim 99) DOELSE

Tuts leider auch nicht :/

Gibt es eine Fehlermeldung?

DerTobi

Hey,

nein es gab keine Fehlermeldung. Das fand ich ja so komisch. Ich habe es jetzt aber scheinbar zum laufen gebracht. Es lag wohl wirklich an den fehlenden Klammern.

Vielen Dank an alle!

Hier ist der aktuelle Code:

(([15:00-{sunset_abs(+5195)}|12345] or [12:30-{sunset_abs(+5195)}|60]) and [Samsung_TV:power] >= 15) (set EG_WZ1_RL dim 65,set EG_WZ2_RL off,set EG_WZ3_RL off,set EG_WZ4_RL dim 20) DOELSEIF (([11:00-{sunset_abs(+5300)}|12345] or [12:30-{sunset_abs(+5300)}]) and [Samsung_TV:power] <= 10) (set EG_WZ1_RL dim 99,set EG_WZ2_RL dim 99,set EG_WZ3_RL dim 99,set EG_WZ4_RL dim 99) DOELSE


Ist bestimmt zienlich stümperhaft aber es scheint zu laufen ;-)

Helmi55

Hallo Mitch,
kurze OT Frage zum Lan des Samsung.
Sobald du den TV abdrehst geht sofort die IP weg? Also wenn ich bei meinem Pana nach dem Abdrehen einen Netzwerkscaner laufen lasse
finde ich die IP noch immer???
Danke für deine Antwort
Gruß
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Ellert

Zitat von: DerTobi am 20 Oktober 2016, 19:47:18
Hey,

nein es gab keine Fehlermeldung. Das fand ich ja so komisch. Ich habe es jetzt aber scheinbar zum laufen gebracht. Es lag wohl wirklich an den fehlenden Klammern.

Vielen Dank an alle!

Hier ist der aktuelle Code:

(([15:00-{sunset_abs(+5195)}|12345] or [12:30-{sunset_abs(+5195)}|60]) and [Samsung_TV:power] >= 15) (set EG_WZ1_RL dim 65,set EG_WZ2_RL off,set EG_WZ3_RL off,set EG_WZ4_RL dim 20) DOELSEIF (([11:00-{sunset_abs(+5300)}|12345] or [12:30-{sunset_abs(+5300)}]) and [Samsung_TV:power] <= 10) (set EG_WZ1_RL dim 99,set EG_WZ2_RL dim 99,set EG_WZ3_RL dim 99,set EG_WZ4_RL dim 99) DOELSE


Ist bestimmt zienlich stümperhaft aber es scheint zu laufen ;-)
Ich hätte auf den fehlenden TYPE getippt, bei
ZitatDefine TV_Schaltung DOIF (([1

Mitch

Zitat von: Helmi55 am 21 Oktober 2016, 17:05:38
Hallo Mitch,
kurze OT Frage zum Lan des Samsung.
Sobald du den TV abdrehst geht sofort die IP weg? Also wenn ich bei meinem Pana nach dem Abdrehen einen Netzwerkscaner laufen lasse
finde ich die IP noch immer???
Danke für deine Antwort
Gruß
Helmut

Sobald der TV aus ist, kann man ihn auch nicht mehr pingen.
Die IP ist natürlich noch eine Weile an der Fritte vergeben und auch der TV ist dort noch als online zu sehen.
Aber das PRECENSE Module mach ja einen Ping.
FHEM im Proxmox Container

Helmi55

Danke für die rasche Antwort.
Leuchtet mir ein wenn es über ping funktioniert. Verwende keine Fritte, sollte aber bei anderen Routern auch so sein.
Werde es testen denn da tun sich nette Spielerei auf.......
Nice w/e
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/