Bonjour,
Ok, je comprends un peu mieux je pense, le premier schémas n’était pas assez détaillé et j’ai un peu zappé, désolé… Voilà ce que je visualise :

(Note : ni le voyant ni l’ESP32 ne sont bien sûr pas placés en série sur le fil de la phase, mais c’est la logique utilisée…)
Donc la consommation du voyant intégré à l’interrupteur donne l’information, via l’ESP, si l’ampoule à commander est éclairée ou non (sur ce schémas, elle est donc éteinte). Et cet interrupteur est monté en va-et-vient avec les contacts du relais en NO/NC.
Le voyant est donc bien allumé à partir du moment où l’ampoule est éclairée, quelque soit la méthode pour l’allumer (via le relai ou l’interrupteur), et éteint sinon, right ?
Reprenons…
Ca, c’est pour connaître l’état réel du voyant en partant du principe que voyant allumé = ampoule allumée et voyant éteint = ampoule éteinte. A partir du moment où l’ESP détecte une consommation, le test #[Système][ESP_ECL][Analog]# ?
est vrai. On exécute alors la commande LIGHT_ON
. Sinon, c’est la commande LIGHT_OFF
.
La réponse est donc oui. LIGHT_ON
va agir sur l’info Etat_mural
en la mettant à 1 ou à 0, et celle-ci permet de visualiser l’état réel du voyant (et de l’ampoule donc) et de l’utiliser dans un design ou dans un scénario.
Côté relais maintenant, pour commander l’ampoule.
Dans un montage en va-et-vient, il faut tout d’abord préciser qu’il n’y a pas à proprement parler de position ON-OFF. L’allumage effectif ne dépend uniquement que de la position de l’interrupteur (ou du relais) en aval (ou en amont).
Il faut donc commander le relais avec une commande de type toggle (là, je fais enfin le lien avec la demande initiale…), pour allumer ou non l’ampoule suivant la position de l’interrupteur en aval.
Ceci dit, sur la plupart des cartes relais, il y a en principe une commande physique de type toggle, comme celle-ci sur une de mes cartes relais (ca peu différer évidemment suivant le constructeur du relais, mais généralement elle existe) :
Il faut utiliser cette commande, sinon pas moyen de faire via un virtuel à mon avis (mais c’est possible par un scénario).
Voilà ce qu’il faudrait inclure dans le virtuel en plus :
Explications :
L’action Toggle_relais
créé un toggle avec l’information binaire Etat_toggle_relais
. Si on l’active, Etat_toggle_relais
passe de 1 à 0 et vice-versa.
L’action TOGGLE
va elle actionner d’une part le relais en mode toggle (la commande exacte reste à trouver), et d’autre part (avec l’opérateur &&
) elle va actionner également l’action Toggle_relais
, qui va donc changer l’état de Etat_toggle_relais
.
Ainsi, on atteint les objectifs :
- la recopie de l’état réel de l’ampoule (= le voyant) avec l’information
Etat_Mural
, exploitable pour un design/scénario/…
- Une action possible sur le relais lui-même en mode toggle, qui va allumer ou éteindre l’ampoule, avec recopie de l’état du relais via l’information
Etat_toggle_relais
si nécessaire (note : ce n’est pas obligatoire d’avoir cette info, on peut très bien s’en passer et ne pas créer la commande Toggle_relais
…)
- Une action possible également avec l’interrupteur mural, qui va avec le montage en va-et-vient, permettre d’allumer ou d’éteindre de son côté l’ampoule.
(testé OK chez moi…).
Ca te paraît clair ?