NEWS
Pir Bewegungsmelder über KNX Taster Ein und Ausschalten
-
Guten Tag beisammen,
Ich habe aktuell das Problem da ich "blutiger Anfänger" bin zu verstehen wie ich meine Schaltung realisieren kann. Ich habe einen KNX Glastaster von MDT und habe einen (eigentlich Arduino) PIR-Sensor mit 5Volt über den Raspberry GPIO Pin beschalten wird. Ich habe die Schaltung soweit verwirklicht (Treppenhausschaltung). Habe auch bereits den GPIO & KNX Ultimate und Easy installiert und benutzt. Nun habe ich das Problem das ich gerne hätte das mein KNX Schalter Vorrang hat und der Bewegungsmelder wenn möglich abgeschalten werden kann. Am besten über den Taster selbst, bei der GPIO Palette habe ich nur Ausgänge und keine Eingänge. Hat jemand ne Ahnung wie ich das realisieren kann (Am besten einfach erklärt da mir das ganze noch neu ist)... Falls das ganze nicht möglich ist sollte ich zumindest wenn es geht die Funktion haben irgendwie den Bewegungsmelder abzuschalten, z.B Tagsüber usw.Wäre cool wenn jemand mir genau zeigen könnte wie das ganze funktionieren könnte.
Das hier ist übrigens der BWM (Ich weis nicht der beste aber es ist ein kleines Projekt
Liebe Grüße ciNo
-
@cino-0 Hi, was bekommst du denn für Signale von deinem Taster in Node Red?
Du könntest dir eventuell ne Variable (flow oder global) erstellen die du bei Tasterdruck auf true bzw, false umschaltest und die dann mit einem Switch hinter deinen Bewegungsmeldern abfragen.
Hier mal als Beispiel mit Injekt Nodes und Iobroker Out Node. GPIO und KNX nutze ich selber nicht.
Hier der Code zum Import:[ { "id": "255848e3830f865b", "type": "inject", "z": "9e1c0edb.e6d2d", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 210, "y": 2560, "wires": [ [ "e4119935503ccf28" ] ] }, { "id": "c8c0245195bb44e1", "type": "change", "z": "9e1c0edb.e6d2d", "name": "", "rules": [ { "t": "set", "p": "Taster", "pt": "flow", "to": "false", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 590, "y": 2520, "wires": [ [] ] }, { "id": "7ba27519a03eb719", "type": "switch", "z": "9e1c0edb.e6d2d", "name": "switch flow.Taster", "property": "Taster", "propertyType": "flow", "rules": [ { "t": "false" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 450, "y": 2680, "wires": [ [ "f7addf8651c676f8" ] ] }, { "id": "6fb172d8f361eebb", "type": "inject", "z": "9e1c0edb.e6d2d", "name": "BWM", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 210, "y": 2680, "wires": [ [ "7ba27519a03eb719" ] ] }, { "id": "f7addf8651c676f8", "type": "ioBroker out", "z": "9e1c0edb.e6d2d", "name": "Leuchte", "topic": "", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 680, "y": 2680, "wires": [] }, { "id": "e4119935503ccf28", "type": "switch", "z": "9e1c0edb.e6d2d", "name": "", "property": "Taster", "propertyType": "flow", "rules": [ { "t": "true" }, { "t": "else" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 390, "y": 2560, "wires": [ [ "c8c0245195bb44e1" ], [ "68675fc58d58d633" ] ] }, { "id": "68675fc58d58d633", "type": "change", "z": "9e1c0edb.e6d2d", "name": "", "rules": [ { "t": "set", "p": "Taster", "pt": "flow", "to": "true", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 590, "y": 2580, "wires": [ [] ] } ]
-
@frankyboy73
Ich kann über den Taster den Status direkt anzeigen und ausgeben lassen. Oder vom Zustand vom Schaltaktor. Oder allgemein wie der Taster betätigt ist kann ich weiter geben. Weis aber nicht genau wie ich die verriegelung mache das ich den bewegungsmelder damit abschalten kann, ich hab mit den Switchs schon rum probiert wäre echt hilfreich wenn jemand da eine Ahnung hat wie das geht ... Am besten bzw am liebsten würde ich per Switch den Bewegungsmelder abschalten lassen und per Taster selbst...
Oder er soll zumindest wenn der Taster betätigt wurde dem GPIO Pin kein Durchgang zum schalten gewähren, so wie eine aufhebung erst wenn der schalter nicht betätigt ist, das er wieder funktionstüchtig ist -
@cino-0 Hi, ich dachte mein Post könnte dein Problem lösen. Anstatt meiner Injekt Node "true" hängst du deinen Taster dran. Dort wird die flow Variable bei Tasterdruck umgeschaltet.
Edit: Kommt natürlich drauf an was da für eine MSG aus deinem Taster raus kommt, schaltet der nur um, klappt das so, wechselt der bei Tastendruck von false auf true und wieder zurück auf false, muss man das noch abfangen, sonst wird die Variable bei jedem Tastendruck hin und hergeschaltet. Wenn du sehen willst was aus deinem Taster raus kommt, häng ne Debug node dahinter.
Und anstatt meiner Injekt Node "BWM" hängst du deinen Bewegungsmelder dran, der Switch dahinter blockiert oder blockiert nicht, je nach Zustand der flow Variable, dann deinen Bewegungsmelder. Anstatt meiner Iobroker Out Node dann noch deine KNX Leuchte anhängen.
Das wolltest du doch so, oder habe ich da was falsch verstanden.
Mann könnte eventuell noch die Leuchte bei Tastendruck umschalten, keine Ahnung ob das gewollt ist.
Hier mal ein Beispiel, bei Tastendruck Leuchte ein und BWM inaktiv, noch mal Tastendruck, Leuchte aus und BWM wieder aktiv. Kann man natürlich auch anderrum machen oder auch ganz anders, alles ist möglich.
Es gibt sonst auch noch Nodes, mit denen man einstellen kann, das z.B. das Licht nur bei Dunkelheit geschaltet wird.
https://flows.nodered.org/node/node-red-contrib-light-scheduler -
@frankyboy73
Hey danke Frank! hast du Discord um das zu besprechen kurzzeitig? Falls ja: ciNo#1938
Genau so wie du das da oben beschrieben hast wünsche ich mir das, ich möchte das wenn der Taster an ist das dieser vorrang hat, hab auch nach Nodes schon gesucht die einen bestimmten eingangskanal vorrang geben, finde aber nichts dazu.
Wenn der Taster Aktiv ist dann soll er einfach den Bewegungsmelder eingang "außer gefecht" setzen bis der Taster händisch auf 0 gesetzt wird.
Bei dem Knx taster wird mir True beim einschalten und False beim ausschalten ausgegeben, sollte ja eigentlich so funktionieren wie du es sagst...PS: Hab es mal eingefügt dein Script, ich probier mich mal aus
EDIT: Die schaltung funktioniert jetzt endlich, ich musste beim BWM die 0 und 1 die ausgegeben wird als True und False umwandeln jetzt funktioniert es einwandfrei
Vielen dank!!!
Liebe Grüße ciNo