Berichten sturen van NodeRed naar je weerstation
Last updated
Last updated
Eerder las je misschien al dat er een rode LED op je weerstation zit. Je weerstation is met de MQTT broker verbonden, niet alleen om de meetgegevens door te geven, maar ook om te luisteren of de LED aan of uit moet!
Via NodeRed kun je ook MQTT berichten versturen naar de MQTT broker, dus kun je via NodeRed de LED op je weerstation besturen. Dit kun je dan handmatig doen, met een schakelaar op je dashboard, maar je zou ook een automatische regeling kunnen maken, dat als de temperatuur hoger wordt dan 30 graden het LEDje automatisch aan gaat.
Met NodeRed kun je nog veel meer, je zou ook een email kunnen laten versturen door NodeRed als de temperatuur te hoog wordt, of een Twitter bericht laten sturen, of een bericht op Telegram, Discord, etc….
Als eerste stap ga je het LED aansturen via het dashboard. Testen van de LED kun je ook doen via de MQTT Test website http://infvopedia.nl/mqt3.html. Als je in het veld IoT-node de vier karaketers van jouw weerstation invult, kun je met de On en Off button op die website je LED besturen.
Als die het doet is de volgende stap om dit via NodeRed te doen. Sleep een switch node (onderin bij de dashboard sectie) van je node-palette in NodeRed naar je werkplek. Open de properties van de switch door erop te dubbelklikken en zorg ervoor dat de switch op het juiste dashboard komt (Metis Weer) en de juiste group (Meters). Je zou ook een aparte group kunnen aanmaken, bijvoorbeeld Controls, dat mag je zelf beslissen.
Vervolgens is het belangrijk om de juiste MQTT berichten te sturen. Eerder las je dat er via JSON berichten wordt gecommuniceerd, dus je moet de switch zo instellen dat hij het juiste JSON bericht stuurt als de Switch aan gezet wordt, en een juiste bericht als hij uit gezet wordt. Dit kun je weer met de JSON parser doen, maar het kan ook op de volgende manier “quick-and-dirty”:
Dus in feite maak je handmatig twee JSON berichten aan en koppelt die als payload bij de juiste gebeurtenis (On en Off).
Zoals steeds, druk op de rode Done knop. Deploy hoeft nog niet, omdat we eerst nog een MQTT node gaan toevoegen. Sleep een mqtt out node van je node-palette naar je werkplek. Als het goed is is het adres van de MQTT broker al ingevuld (en daarbij ook de username en password), je moet zelf nog even het juiste topic toevoegen. Dit is node/VIER_KARAKTERS/actuators, dus met het voorbeeld weerstation dat we al de hele tijd gebruiken wordt dat: node/792a/actuators:
Druk op de rode Done knop, verbindt de switch node met de mqtt out node en druk nu op de rode Deploy knop. Ga naar je dashboard, kies het juiste tabblad (via de drie streepje linksboven, het hamburger menu) en er zal een schakelaar zijn toegevoegd. Met deze schakelaar kun je de LED op je weerstation bedienen!
Veld
Waarde
On Payload
{"0":{"dOut":1}}
Off Payload
{"0":{"dOut":0}}