Hallo zusammen,
ich habe folgenden Zustand Taster -->Schaltaktor--> Lampe
diese Lampe kann ich über Taster und Schaltaktor schalten das funktioniert super
Jetzt kann mann diese Lampe über den Taster folgendermaßen schalten
Taster einmal drücken blaue LEDs gehen an
Taster aus Lampe aus
Taster nochmal drücken weise LEDs gehen an
Taster aus Lampe aus
Taster nochmal drücken Halogeneuchten gehen an
Taster aus Lampe geht aus
Taster nochmal drücken blaue LED, weise LED und Halogen gehen an
Taster aus alles aus
Jetzt möchte ich über Fhem die einzelnen Lampen direkt ansteuern
Bsp. Taster on off on off on damit die Hologenlampen direkt angehen
so in der Richtung set lampe on off on off on
Wie kann man diese Zustände bauen
schon fast richtig ...
set lampe on, set lampe off, set lampe on
muss ich da für jeden Zustand einen Dummy anlegen
1) Fehlen Infos: zB welche Hardware verwendest du, um die Lampe anzusteuern?
2) Zeig mal, was du bisher schon hast
Zitatdie einzelnen Lampen direkt ansteuern
Heisst das, du willst zB "nur blau" und "nur weiß" überspringen und gleich zum dritten Zustand springen, oder was?
ja genau so
Zitat von: sucht am 09 März 2015, 11:35:36
muss ich da für jeden Zustand einen Dummy anlegen
im prinzip ja, allerdings für mein verständnis nur einen dummy mit dem jeweiligen zustand, hier einfach mal durch nummeriert.
1. Taster einmal drücken blaue LEDs gehen an
2. Taster aus Lampe aus
3. Taster nochmal drücken weise LEDs gehen an
4. Taster aus Lampe aus
5. Taster nochmal drücken Halogeneuchten gehen an
6. Taster aus Lampe geht aus
7. Taster nochmal drücken blaue LED, weise LED und Halogen gehen an
8. Taster aus alles aus
den status dummy zählst du mit jedem tastendruck hoch und über ein case select anweisung (oder wie auch immer das in perl heißt) führst du die entsprechende funktion aus. bei 8 begrenzt du das und setzt wieder die '1'
mal im pseudo code:
wenn dummy_status < 8 dann
dummy_status = dummy_status +1
sonst
dummy_status = 1
ende wenn
select case dummy status
case 1 set blaue_led = an
case 2 set blaue_led = aus
case 3 set weisse_led =an
...
...
case 7 set *_led = an, halogen = an
case 8 set (alle lichter aus)
end select
da ich aber selbst noch nicht so standsicher mit perl bin, befürchte ich das es dafür in perl nen 2 zeiligen kryptischen code gibt der alles auf einmal macht :-)
harry
schau dir mal readingsProxy an. das ist vermutlich besser geeignet deinen code unterzubringen als dummy und notify.
gruß
andre
Ich habe aber nur die readings vom CUL_HM_HM_LC_SW2 und die kann ich doch nicht als readings für readingsproxy nehmen