[Actualité] [Domotique] [Test] Carte Zigbee avec 4 relais, compatible Zigbee2MQTT
par
, 30/07/2024 à 11h00 (2415 Affichages)
Dans mon billet précédent, je vous avais présenté mes premières expérimentations de communication Zigbee avec une carte Raspberry Pi comme serveur domotique grâce au service Zigbee2MQTT. Malgré un catalogue de composants Zigbee déjà bien fourni, il me fallait encore une carte Zigbee prototype avec plusieurs entrées-sorties, réutilisable en fonction des projets menés. C’est là que la carte Zigbee 4 Channel Relay intervient :
Zigbee 4 channel Relay, Alab Technology
1 Convertisseur 230 VAC – 5 VDC 2 Module Zigbee 3 Bouton d’appairage 4 Bornier entrées numériques x 4 5 Bouton-poussoir à appui momentané x 4 6 LED verte de statut 7 Relais X 4
Et voici un schéma de l'architecture du réseau testée :
La carte est alimentée par le secteur 230 V (bornier à vis pour phase L et neutre N), et on peut déjà regretter de ne pas avoir proposé une alimentation 12 ou 24 V CC.
Le constructeur propose plusieurs versions de son firmware, j’ai pris celle avec l’option : Independent Push (closing the input switches the status to the opposite). Avec cette option, les entrées et la commande des relais fonctionnent de façon indépendante.
Comme la carte est compatible Zigbee2MQTT, la communication se fait par le service de messagerie MQTT, avec des messages publiés au format JSON, du genre :
Code json : Sélectionner tout - Visualiser dans une fenêtre à part {"input_state_in1":0, "input_state_in2":0, "input_state_in3":0, "input_state_in4":0, "linkquality":30, "state_l1":"OFF", "state_l2":"OFF", "state_l3":"OFF", "state_l4":"OFF"}
Voir les paramètres exposés (dont certains dépendent du firmware flashé) https://www.zigbee2mqtt.io/devices/alab.switch.html
- Les entrées
Comme dit précédemment, les actions sur les entrées sont sans conséquences sur les commandes des relais (voir les variantes du firmware proposées par le constructeur).
Il suffit de s’abonner au topic zigbee2mqtt/fleb-relay (fleb-relay : nom simplifié donné au composant) pour récupérer l’état 0 ou 1 des quatre entrées via les propriétés "input_state_inx". Attention, ces quatre entrées se comportent comme des bascules. La fermeture du circuit, que ce soit par un dispositif branché entre les deux bornes de l’entrée ou par un appui sur le bouton-poussoir correspondant, provoque le basculement de l’état en entrée (mais on peut aussi forcer l'entrée en publiant un {"input_state_inx":0} ou {"input_state_inx":1} sur le topic zigbee2mqtt/fleb-relay/set).
- Les sorties
Les relais sont des relais miniatures SPDT (Single Pole Double Throw), c’est-à-dire qu’il y a trois connecteurs pour chaque relais qui sont repérés sur les borniers à vis : Common (COM), Normally Open (NO), et Normally Closed (NC).
Aucune sortie COM, NC ou NO des relais n'est reliée à l’alimentation de la carte, vous pouvez donc les connecter à vos appareils et leur alimentation, et commuter des charges jusqu’à 230V AC / 5A.
Par exemple pour activer le 1er relais (Channel 1), il faut publier un message au topic zigbee2mqtt/fleb-relay/set avec le contenu {"state_l1":"ON"}, et {"state_l1":"OFF"} pour le désactiver. Une petite LED rouge à côté de chaque relais s’allume lorsque celui-ci est activé.
Ci-dessous, une petite vidéo de démonstration où je fais claquer les relais et pousse quelques boutons (interface Web avec Node-RED) :
Construction de l'interface Web avec Node-RED sur Raspberry Pi
À suivre pour une application concrète avec cette carte (système d'arrosage automatique, commande d'ouverture de toit d'une serre, allez savoir...)