Einstieg in die Automation

Begonnen von chris76e, 14 Februar 2017, 21:58:34

Vorheriges Thema - Nächstes Thema

chris76e

Hi,

nachdem ich jetzt meine Funksteckdosen angelernt habe und alles Schalten kann, brauche ich nun Hilfe wie ich folgendes machen kann:

1. (Gelöst) Wenn ich Multimedia Wand auf ON drücke, dann werden die Steckdosen TV, Soundbar und SubwooferSB eingeschaltet, das sind meine Standart Geräte die ich zum "normalen" TV gucken benutze. Das klappt auch soweit. Es kann aber sein, das ich zwischen durch das ein oder andere ausschalte und dafür ein anderes Gerät aus der Gruppe "Multimedia" an machen. Der Status von Multimedia Wand soll sich da durch nicht ändern. Beim drücken von Multimedia Wand  OFF sollen dann alle Geräte der Gruppe ausgeschaltet werden.Wie mache ich das am besten?

Lösung:
Habe ich jetzt wie in Punkt 2 gelöst, nur das halt hier nur die "Multimedia" Geräte in der Struktur sind. Den Rest wird dann mit Tablet UI gemacht

define mwaus structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR
attr mwaus clientstate_behavior relativeKnown
attr mwaus clientstate_priority An|On|on Aus|Off|off
attr mwaus devStateIcon Aus|Off|off:general_aus@red An|On|on:general_aus@green
attr mwaus room Wohnzimmer
attr mwaus webCmd off


2. (Gelöst) Bei Wohnzimmer alles aus werden alle Steckdosen ausgeschaltet. Möchte hier aber gerne nicht die Auswahl on/off haben, sondern nur ein Symbol das Signalisiert das wenn mindestens eine Steckdose aus den Gruppen Multimedia und Licht eingeschaltet ist, und wenn ich auf das Symbol drücke dann alle ausgehen und sich das Symbol ändert.

Lösung:

define WZ structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr WZ clientstate_behavior relativeKnown
attr WZ clientstate_priority An|On|on Aus|Off|off
attr WZ devStateIcon Aus|Off|off:general_aus  An|On|on:general_aus@red
attr WZ room Wohnzimmer
attr WZ webCmd off




3. (Gelöst) Meine Leinwand wird durch einen IT CMR-500 gesteuert, d.h. Wenn ich auf ON drücke, dann fährt die Leinwand runter, nochmal On das stoppt die. Wenn ich auf Off drücke, dann fährt die hoch bis zum Endpunkt. Hier möchte ich gerne so machen, das wenn ich z.B. auf ein Pfeilrunter Symbol drücke die Leinwand runter fährt und nach eine bestimmten Zeit anhält also "ON, 10 Sekunden warten und dann nochmal ON"

Lösung:
define lw_dummy dummy
attr lw_dummy webCmd on
define LWR1 notify lw_dummy:.* set Leinwand on ;;sleep 2;; set Leinwand on

Beta-User

Hallo chris76e,

das sind ganz schön viele Fragen auf einmal.

Was 1. angeht, würde ich vermutlich einen Dummy definieren und dann unterschiedliche Aktionen ausführen, wenn der an bzw. ausgeschaltet wird.

Für 2. solltest Du mal sehen, ob Du das mit einer Structure gelöst bekommst (und dem Attribut clientstate_priority), evtl. mußt Du dann das webcmd noch anpassen

Für 3. kannst Du entweder ein Dummy mit notify und einem mehrstufigen Befehl (wait(10)) nehmen, besser ist es aber uU., schlicht die korrekte Ausfahrlänge der Leinwand an dieser selbst einzustellen (meine hat dazu eine Einstellschraube).

Sicher gibt es aber auch noch andere Optionen, wie die se Themen angegangen werden können 8).
Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Hollo

Zitat von: chris76e am 14 Februar 2017, 21:58:34
...Der Status von Multimedia Wand soll sich da durch nicht ändern. Beim drücken von Multimedia Wand  OFF sollen dann alle Geräte der Gruppe ausgeschaltet werden.Wie mache ich das am besten?
Guck mal in die commandref zu structure. Dort gibt es ein Attribut "relative", mit dem die Struktur ON ist, sobald 1 Gerät davon on ist, und OFF sobald alle Geräte off sind.

Zitat...wenn mindestens eine Steckdose aus den Gruppen Multimedia und Licht eingeschaltet ist, und wenn ich auf das Symbol drücke dann alle ausgehen und sich das Symbol ändert...
Dann mach eine structure, in der die Strukturen Multimedia und Licht enthalten sind; ebenfalls mit dem relative.

FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

Thorsten Pferdekaemper

Zitat von: chris76e am 14 Februar 2017, 21:58:34
3. Meine Leinwand wird durch einen IT CMR-500 gesteuert, d.h. Wenn ich auf ON drücke, dann fährt die Leinwand runter, nochmal On das stoppt die. Wenn ich auf Off drücke, dann fährt die hoch bis zum Endpunkt. Hier möchte ich gerne so machen, das wenn ich z.B. auf ein Pfeilrunter Symbol drücke die Leinwand runter fährt und nach eine bestimmten Zeit anhält also "ON, 10 Sekunden warten und dann nochmal ON"
Zu den ersten beiden würde ich auch structure empfehlen. Beim dritten Punkt kann man z.B. ein "set ... on;;sleep 10;; set ...on" oder ähnlich machen. Wenn man das Ding aber während der 10 Sekunden stoppen können will, dann im Kommando ein tempräres at anlegen, das man auch wieder löschen kann.
Gruß,
   Thorsten
FUIP

chris76e

#4
Habe jetzt mal einige Sachen ausprobiert. Ist doch was viel für den Anfang.

Möchte jetzt erstmal Punkt 2 meiner Liste erledigen  :)

Habe es hinbekommen das wenn 1 Gerät aus Wohnzimmer an mir das auch angezeigt wird.


define TV_Wand2 structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr TV_Wand2 clientstate_behavior relativ
attr TV_Wand2 clientstate_priority Any_On|An All_Off|Aus


Jetzt bekomme ich 3 Verschieden Symbole angezeigt, bei AUS  - mindestens 1 An - Alle AN
Das möchte ich aber ändern das nur 2 Verschieden angezeigt werden. Habe versucht das wie bei den Fensterkontakte zu machen, das funktioniert hier aber nicht.

attr devStateIcon off:fts_general_aus@red on:fts_general_aus@green


Thorsten Pferdekaemper

Hi,
versuch mal beim Attribut clientstate_behaviour "relative" (mit e am Ende) oder "relaiveKnown".
Gruß,
  Thorsten
FUIP

chris76e

#6
Danke, so habe ich es hinbekommen das sich auch das Symbol ändert.

define WZ structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr WZ clientstate_behavior relativeKnown
attr WZ clientstate_priority An|On|on Aus|Off|off
attr WZ devStateIcon off:general_aus  An:general_aus@red
attr WZ room Wohnzimmer


Gibt es jetzt auch noch die möglichkeit das ich den Schalter "On" wegbekomme? Möchte halt nur alles Auschalten können.

Benni

Zitat von: Thorsten Pferdekaemper am 15 Februar 2017, 13:23:52
Wenn man das Ding aber während der 10 Sekunden stoppen können will, dann im Kommando ein tempräres at anlegen, das man auch wieder löschen kann.

Oder ein benanntes sleep verwenden, das kann mit cancel bei Bedarf auch abgebrochen werden

Hollo

Zitat von: chris76e am 15 Februar 2017, 17:47:13
...

define TV_Wand2 structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr TV_Wand2 clientstate_behavior relativ
attr TV_Wand2 clientstate_priority Any_On|An All_Off|Aus


Jetzt bekomme ich 3 Verschieden Symbole angezeigt, bei AUS  - mindestens 1 An - Alle AN
Das möchte ich aber ändern das nur 2 Verschieden angezeigt werden. Habe versucht das wie bei den Fensterkontakte zu machen, das funktioniert hier aber nicht.
...
Hast meinen Beitrag aber schon gelesen, oder?   :D
Guck mal in die commandref zu structure. Dort gibt es ein Attribut "relative", mit dem die Struktur ON ist, sobald 1 Gerät davon on ist, und OFF sobald alle Geräte off sind.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

chris76e

@Hollo

Das habe ich doch hier geschafft. Oder meinst du was anderes?

Zitat von: chris76e am 15 Februar 2017, 23:31:08
Danke, so habe ich es hinbekommen das sich auch das Symbol ändert.

define WZ structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr WZ clientstate_behavior relativeKnown
attr WZ clientstate_priority An|On|on Aus|Off|off
attr WZ devStateIcon off:general_aus  An:general_aus@red
attr WZ room Wohnzimmer


Gibt es jetzt auch noch die möglichkeit das ich den Schalter "On" wegbekomme? Möchte halt nur alles Auschalten können.

Thorsten Pferdekaemper

Zitat von: chris76e am 15 Februar 2017, 23:31:08Gibt es jetzt auch noch die möglichkeit das ich den Schalter "On" wegbekomme? Möchte halt nur alles Auschalten können.
Drück halt einfach nicht drauf...

Zitat von: Hollo am 16 Februar 2017, 09:30:52
Hast meinen Beitrag aber schon gelesen, oder?   :D
Ich glaube, dass sein Fehler hauptsächlich war, dass er "relativ" statt "relative" geschrieben hatte.

Gruß,
   Thorsten
FUIP

chris76e

Zitat von: Thorsten Pferdekaemper am 16 Februar 2017, 10:22:49
Drück halt einfach nicht drauf...

Hmm, gibt es dafür keinen Befehl in Fhem? Wenn nein, kann man das Später in Tablet UI machen?

So sieht meine Losung für Punkt 2 zur Zeit aus
define WZ structure room wz_TV wz_SubSB wz_Soundbar wz_AVR wz_SubAVR wz_Fluter wz_Schrank
attr WZ clientstate_behavior relativeKnown
attr WZ clientstate_priority An|On|on Aus|Off|off
attr WZ devStateIcon Aus|Off|off:general_aus  An|On|on:general_aus@red
attr WZ room Wohnzimmer
attr WZ webCmd off



Benni


Thorsten Pferdekaemper

Zitat von: chris76e am 16 Februar 2017, 10:35:26
Hmm, gibt es dafür keinen Befehl in Fhem?
Siehe Benni.
Ich meinte damit eigentlich eher: Warum den Aufwand?

ZitatWenn nein, kann man das Später in Tablet UI machen?
Ja, da kannst Du sozusagen den Befehl für "on" leer lassen.

Gruß,
   Thorsten
FUIP

chris76e

OK, die Antwort gefällt mir 8)

Dann kann ich Punkt 2 als gelöst sehen.

Jetzt kommen noch die beiden anderen Punkte  :)

Mit Tablet UI werde ich mich erst beschäftigen wenn alles andere nach meinen Vorstellungen läuft.