NEWS
[gelöst] Status der Buttons/Schalter anzeigen
-
@tobidd sagte in:
Die Scripte habe ich jetzt so weit erweitert, das sie mir via MQTT die Stati der Lüftung an den iobroker schicken.
MQTT-Datenpunkte für den Status ?
-
@tobidd
Der obere Trigger-Datenpunkt ist der Datenpunkt, mit dem in Vis geschaltet und angezeigt wird.
Wenn dieser Datenpunkt auf true schaltet, wird das Shellscript zum Einschalten ausgeführt, bei Änderung auf false das Shellscript zum Ausschalten.Der untere Trigger-Datenpunkt (MQTT ?) soll den Staus liefern: true bei "Lüftung ist ein" / false bei "Lüftung ist aus". Der Status wird an den Datenpunkt für Vis weiter gegeben.
Welche(r) Datenpunkt(e) enthalten den Status der Lüfung ? -
Der Staus der Lüftung wird in 3 Datenpunkte aufgeteilt.
einmal Akku/Strom (akku/strom)
einmal Automatik/Manuell (auto/manuell)
und einmal AN/AUS (1/2)zur Erläuterung:
Das ganze ist eine Kellerlüftung mit Feuchtigkeitsberechnung die primär über Solarstrom läuft.
Wenn der Akku zu schwach ist, schaltet das Script automatisch auf Strom um.
Im Automatikmodus schaltet das Script die Lüftung bei Unterschreitung einer definierten Grenze ab.
Im manuellen Modus läuft sie solange bis entweder der Automatikmodus eingeschaltet wird oder die Lüftung ganz ausgemacht wird. -
Der Staus der Lüftung wird in 3 Datenpunkte aufgeteilt.
einmal Akku/Strom (akku/strom)
einmal Automatik/Manuell (auto/manuell)
und einmal AN/AUS (1/2)zur Erläuterung:
Das ganze ist eine Kellerlüftung mit Feuchtigkeitsberechnung die primär über Solarstrom läuft.
Wenn der Akku zu schwach ist, schaltet das Script automatisch auf Strom um.
Im Automatikmodus schaltet das Script die Lüftung bei Unterschreitung einer definierten Grenze ab.
Im manuellen Modus läuft sie solange bis entweder der Automatikmodus eingeschaltet wird oder die Lüftung ganz ausgemacht wird. -
Ja.
Status beschreib den Zustand der Lüftung, also An oder Aus
Status
AN: Wert = 1
AUS: Wert = 2Betriebsart: Wert = AKKU oder STROM
Modus : Wert = auto oder mauell
@tobidd sagte:
Status beschreib den Zustand der Lüftung, also An oder Aus
Status
AN: Wert = 1
AUS: Wert = 2Dann sollte das Skript zum Ein-/Ausschalten und Anzeige des Status funktionieren.
Gibt es auch Shellscripte, mit denen der Modus(auto/manu) umgeschaltet werden soll ?
-
Diese Werte werden von den Scripten, die auf dem zweiten RPI laufen via MQTT an iobrocker gesendet.

@tobidd sagte:
Diese Werte werden von den Scripten, die auf dem zweiten RPI laufen via MQTT an iobrocker gesendet.
Dann brauchst Du unter 0_userdata.0 auch max. diese 3 Datenpunkte zu Anzeigen und Steuern, allerdings mit common.type = "boolean".
- "0_userdata.0.Lueftung.Status"
- "0_userdata.0.Lueftung.Modus"
-
Ja, die Umschaltung erfolgt automatisch aber ich wollte damals mehrere Umschaltmöglichkeit haben.
Aber je mehr ich darüber nachdenke um so weniger Sin macht das.Danke für die Anregung.
Ich denke ich werde das morgen noch mal umstricken.
Einfach Lüftung an/aus und den Modus auto/manuell, mehr braucht es eigentlich nicht.Macht es eventuell Sinn alles in ein Script zu packen und dann mit Übergabeparametern zu arbeiten?
-
@tobidd sagte:
Diese Werte werden von den Scripten, die auf dem zweiten RPI laufen via MQTT an iobrocker gesendet.
Dann brauchst Du unter 0_userdata.0 auch max. diese 3 Datenpunkte zu Anzeigen und Steuern, allerdings mit common.type = "boolean".
- "0_userdata.0.Lueftung.Status"
- "0_userdata.0.Lueftung.Modus"
so?
{ "_id": "0_userdata.0.lueftung_betriebsart", "type": "state", "common": { "name": "lueftung_betriebsart", "role": "", "type": "boolean", "read": true, "write": true, "desc": "Manuell erzeugt", "def": false }, "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1579471528624, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } } -
Ja, die Umschaltung erfolgt automatisch aber ich wollte damals mehrere Umschaltmöglichkeit haben.
Aber je mehr ich darüber nachdenke um so weniger Sin macht das.Danke für die Anregung.
Ich denke ich werde das morgen noch mal umstricken.
Einfach Lüftung an/aus und den Modus auto/manuell, mehr braucht es eigentlich nicht.Macht es eventuell Sinn alles in ein Script zu packen und dann mit Übergabeparametern zu arbeiten?
@tobidd sagte:
Macht es eventuell Sinn alles in ein Script zu packen
Ja.
@tobidd sagte in Status der Buttons/Schalter anzeigen:
mit Übergabeparametern zu arbeiten?
Die braucht es nicht, sondern evtl. (globale) Variablen, je nachdem, welche Shellscripte ausgeführt werden sollen.
-
so?
{ "_id": "0_userdata.0.lueftung_betriebsart", "type": "state", "common": { "name": "lueftung_betriebsart", "role": "", "type": "boolean", "read": true, "write": true, "desc": "Manuell erzeugt", "def": false }, "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1579471528624, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }@tobidd sagte in Status der Buttons/Schalter anzeigen:
so?
Besser mit Punkt zwischen lueftung und betriebsart, denn dann ist lueftung ein Ordner. Ohne zusätzliche Ordner wird es schnell unübersichtlich unter 0_userdata.0.
Wenn die Betriebsart nur angezeigt wird, braucht es dafür keinen eigenen Datenpunkt, denn die liefert schon der MQTT-Datenpunkt.

