Etat de la porte de garage et ouverture (ESPEasy) Maj 16/10/21

Récemment équipé d’une porte de garage motorisée, je souhaite remonter l’état d’activation (ouverture ou fermeture) de la porte de garage.
Le but étant d’utiliser cette information en cas d’absence au domicile (alarme), vérifier l’état après appui sur la commande d’ouverture.
Mais aussi de pouvoir ouvrir et fermer la porte via espeasy/jeedom.
Le système de commande de la porte possède une sortie lumière permettant de fournir le jus pour allumer une lumière (230V 300W max) que je décide d’utiliser.

Matériel nécessaire

  • 1 module optocoupleur à isolement (2€ sur Aliexpress),
  • 1 module relay (1€ sur Aliexpress),
  • 1 module ESP avec entrée Analogique, carte ADS1015 ou module équivalent, j’ai pris un Wemos D1 mini (3€ sur Aliexpress),
  • fils électriques 1,52 ou 2,52 et fils Dupont ou jarretières.

Repérage

Je repère la sortie lumière et le bouton poussoir d’ouverture sur la carte :

Câblage

Pensez à couper le courant avant de toucher aux branchement.
Le module optocoupleur est à nu (vernis tout de même), mais j’ai préféré le glisser dans une gaine thermorétractble pour l’isoler complètement.

Je procède au câblage de l’optocoupleur comme suit :

Puis j’ajoute le module relais au Wemos en branchant sur NO et Commun.

Configuration module optocoupleur

Côté ESP, j’ai au préalable installé le firmware espeasy.

Dans Devices, ajouter « Analog input – internal ».

À ce stade, les informations qui remontent sont :

  • valeur à 1024 pour tension de 0V en entrée d’optocoupleur : porte inactive,
  • valeur < 50 pour tension de 230V en entrée d’optocoupleur : porte en activation.

Pour créer une information binaire, 1 = porte active et 0 = porte inactive, il faut créer un Switch.

Dans Devices ajouter « Switch input – Switch » à configurer comme ceci :

Il faut, à présent, créer une règle :

on OpenGarageDoor#Analog do
if [OpenGarageDoor#Analog] > 1000
TaskValueSet,3,1,0
else
TaskValueSet,3,1,1
endif
endon

OpenGarageDoor#Analog : Nom#Value de « Analog input »
TaskValueSet : il faut indiquer le numéro de la tâche Switch input. Ici 3.

Configuration module relais

Un « device » switch auquel on associe le GPIO du relais, ici 5.

Pour tester, tapons GPIO,5,1 dans le champ commande du menu Tools. Si le relais était au préalable à 0, la porte devrait s’ouvrir.
Sauf que le relais reste collé (à 1).
En tapant maintenant GPIO,5,0, rien ne se passe. En effet, l’ouverture/fermeture par le boitier de commande ne prend en compte que la fermeture de boucle (NO).
Du coup, il faudrait créer une rules pour passer le relais à 0 juste après sont passage à 1.
On surveille le GPIO5, sur GPIO5 passe à 1 on créé un minuteur (n°5 ici) à 1 seconde, avec son déclenchement en fin de minuteur qui met GPIO5 à 0 :

on System#Boot do
Monitor GPIO,5
endon


On GPIO#5=1 do
timerSet,5,1
endon
on Rules#Timer=5 do
gpio,5,0
endon

Contrôleur

Reste plus qu’à remonter l’information au contrôleur, je choisis MQTT pour le remonter à Jeedom via le plugin jMQTT.
Je vous mets le template avec noms de commandes, logos, historique déjà sélectionnés.
A glisser dans /plugins/jMQTT/data/template/ :

Widget dashboard avant d’appuyer sur le bouton action porte :

Une fois le bouton activé :

On peut également le coupler à un détecteur d’ouverture de porte/fenêtre pour avoir la certitude de l’état de la porte.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.