This flow enables you to implement a override lighting scenario triggered by e.g fire alarm event.
When the alarm will be triggered, main flow logic will be blocked by a switch node and the lights brightness will be set to a specific override level. When the alarm will be disabled, lights will go back to their minimal level and main logic messages will be passed through the switch node.
The DALI Input module works as a communication bridge between non-dali switches, buttons, relays, alarms etc. For more information on DALI INPUT 4446 visit: LMS E2D 6xINPUT MODULE
Import the ready made flow using the instructions here: Importing a Node-RED flow or follow the instructions below.
[{"id":"d26bd93d.9dbaf8","type":"tab","label":"Flow 8","disabled":false,"info":""},{"id":"e7c12687.199de8","type":"group","z":"d26bd93d.9dbaf8","name":"","style":{"fill":"#c8e7a7","label":true},"nodes":["4621ec2d.bb3784","42eb69c8.a6baf8","c67174b3.149708","ac176207.46fef","7f6c811d.ea0c9","3131f576.8bad7a","8b9351d4.72764","559a412a.1a1af","72621b5d.69f0c4","43e1e679.f57e88"],"x":314,"y":59,"w":892,"h":402},{"id":"4621ec2d.bb3784","type":"dali2devs","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"DALI INPUT","uid":"007A259D3975772DDC","dali2dev":"0","devStatus":2,"instanceType":1,"dali2t1":90,"dali2t2":"","instanceData":{"InstanceStatusFlags":2,"InstanceType":1,"Resolution":1,"InstanceError":false,"InstanceActive":true,"InstanceGroup0":255,"InstanceGroup1":255,"InstanceGroup2":255,"EventScheme":2,"EventPriority":3,"EventFilter":3,"EventFilterSize":1,"FeatureType":[],"InputValue":0,"InstanceDetails":{"ShortTimer":25,"ShortTimerMin":8,"DoubleTimer":0,"DoubleTimerMin":9,"RepeatTimer":8,"StuckTimer":20},"DataModelRecipe":["Dali2Instance301_config"],"INSTNR":0},"mode":"normal","x":410,"y":260,"wires":[["42eb69c8.a6baf8"]]},{"id":"42eb69c8.a6baf8","type":"switch","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"","property":"payload.IUEVENT","propertyType":"msg","rules":[{"t":"eq","v":"4","vt":"num"},{"t":"eq","v":"5","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":660,"y":260,"wires":[["c67174b3.149708","3131f576.8bad7a"],["ac176207.46fef","8b9351d4.72764"]]},{"id":"c67174b3.149708","type":"vertex action","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"100%","typeButton":"single","bPayload":{"action":"setbrightness","group":"41b3cc30-1377-4ef0-9e19-3bb6b5d12506","param":"100","priority":"254"},"bState":"","defaultpriority":true,"x":860,"y":220,"wires":[["7f6c811d.ea0c9"]]},{"id":"ac176207.46fef","type":"vertex action","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"min level","typeButton":"single","bPayload":{"action":"minlevel","group":"41b3cc30-1377-4ef0-9e19-3bb6b5d12506","param":null,"priority":"254"},"bState":"","defaultpriority":true,"x":870,"y":300,"wires":[["7f6c811d.ea0c9"]]},{"id":"7f6c811d.ea0c9","type":"vertex cluster","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","rate":90,"x":1080,"y":260,"wires":[]},{"id":"3131f576.8bad7a","type":"change","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"","rules":[{"t":"set","p":"fire_alarm","pt":"global","to":"true","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":880,"y":100,"wires":[[]]},{"id":"8b9351d4.72764","type":"change","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"","rules":[{"t":"set","p":"fire_alarm","pt":"global","to":"false","tot":"bool"}],"action":"","property":"","from":"","to":"","reg":false,"x":880,"y":420,"wires":[[]]},{"id":"5a2216d4.ed3458","type":"dali2devs","z":"d26bd93d.9dbaf8","name":"PIR","uid":"003560E1C1A0ED8CAD","dali2dev":"0","devStatus":2,"instanceType":3,"dali2t1":"10","dali2t2":"5","instanceData":{"InstanceStatusFlags":2,"InstanceType":3,"Resolution":2,"InstanceError":false,"InstanceActive":true,"InstanceGroup0":255,"InstanceGroup1":255,"InstanceGroup2":255,"EventScheme":2,"EventPriority":4,"EventFilter":3,"EventFilterSize":1,"FeatureType":[],"InputValue":0,"InstanceDetails":{"DeadtimeTimer":2,"HoldTimer":1,"ReportTimer":20,"Catching":0},"DataModelRecipe":["Dali2Instance303_config"],"INSTNR":0},"mode":"","x":390,"y":580,"wires":[["d992fbaf.0da318"]]},{"id":"d992fbaf.0da318","type":"vertex action","z":"d26bd93d.9dbaf8","name":"PIR","typeButton":"motionsensor","bPayload":{"PRESENCE":{"action":"setbrightness","group":"0efc9ef58896d0b1839b65d7af598531","param":"50","priority":"255"},"TRANSITION":{"action":null,"group":"0efc9ef58896d0b1839b65d7af598531","param":null,"priority":"0"},"NOPRESENCE":{"action":"off","group":"0efc9ef58896d0b1839b65d7af598531","param":null,"priority":"254"}},"bState":"","defaultpriority":true,"x":560,"y":580,"wires":[["e8274433.1be388"]]},{"id":"c1a8830a.f880b","type":"vertex cluster","z":"d26bd93d.9dbaf8","rate":90,"x":1010,"y":620,"wires":[]},{"id":"dc200ac8.01bf98","type":"dali2devs","z":"d26bd93d.9dbaf8","name":"Button","uid":"0000000829E23C2559","dali2dev":"0","devStatus":2,"instanceType":1,"dali2t1":90,"dali2t2":"","instanceData":{"InstanceStatusFlags":2,"InstanceType":1,"Resolution":1,"InstanceError":false,"InstanceActive":true,"InstanceGroup0":255,"InstanceGroup1":255,"InstanceGroup2":255,"EventScheme":2,"EventPriority":3,"EventFilter":84,"EventFilterSize":1,"FeatureType":[],"InputValue":0,"InstanceDetails":{"ShortTimer":25,"ShortTimerMin":10,"DoubleTimer":0,"DoubleTimerMin":10,"RepeatTimer":8,"StuckTimer":20},"DataModelRecipe":["Dali2Instance301_config"],"INSTNR":0},"mode":"normal","x":390,"y":680,"wires":[["814e413b.d80d2"]]},{"id":"814e413b.d80d2","type":"vertex action","z":"d26bd93d.9dbaf8","name":"button","typeButton":"single","bPayload":{"action":"setbrightness","group":"0efc9ef58896d0b1839b65d7af598531","param":"21","priority":"254"},"bState":"","defaultpriority":true,"x":570,"y":680,"wires":[["e8274433.1be388"]]},{"id":"e8274433.1be388","type":"switch","z":"d26bd93d.9dbaf8","name":"","property":"fire_alarm","propertyType":"global","rules":[{"t":"false"}],"checkall":"true","repair":false,"outputs":1,"x":810,"y":620,"wires":[["c1a8830a.f880b"]]},{"id":"559a412a.1a1af","type":"comment","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"Alarm ON/OFF","info":"","x":540,"y":220,"wires":[]},{"id":"72621b5d.69f0c4","type":"comment","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"Alarm ON: global variable set to true; VA:100%","info":"","x":960,"y":160,"wires":[]},{"id":"43e1e679.f57e88","type":"comment","z":"d26bd93d.9dbaf8","g":"e7c12687.199de8","name":"Alarm OFF: global variable set to false; VA:min level","info":"","x":990,"y":360,"wires":[]},{"id":"56ef7fd1.91f17","type":"comment","z":"d26bd93d.9dbaf8","name":"enable/disable main flow logic","info":"","x":820,"y":580,"wires":[]}]
Step-by-step instructions
1. Find the following nodes in the palette on the left side of the Node-RED, drag them to your workspace and connect them as shown.
dali2devs x3
vertex action x4
vertex cluster
change x2
switch x2
2. Go to the dali2devs node properties. Select the input units' serial number [1], set Dali2Device to Dali2 Input Unit [2] and set the Mode to normal [3]. In the event filters you want to have only two marked - button released and button pressed [4]
3. Switch node:
Depending on the input signal, whether the “Button“ is pressed or released, the switch node will direct the logic to trigger the alarm scene or not.
4. Change nodes:
These two nodes are responsible for setting the global fire_alarm variable to either true or false boolean value. This variable will be used to block or pass through the main flow messages.
5. Vertex action nodes:
Two vertex action nodes are connected directly to the two outputs of the switch node. If the alarm event is triggered, lights in a certain group will light up to 100%. When the alarm is cancelled, the luminaires will dimm down to their minimal level. You can modify actions and levels to suit your application.
6. Enabling and disabling main flow logic:
A switch node, will let through the messages, only if the global fire_alarm variable is set to false - no alarm triggered. Place the switch node right before the vertex cluster.
Do not forget to click Done and Deploy!
Add Comment