Gestion des envois MODBUS

Bonjour a tous.
Dans le cadre de mes experiences en modbus, je souhaite a présent automatiser l’envoi des trames modbus ecriture selon l’état d’une IO.
En clair, si ma IO est a 0, j’envoie une trame modbus « off » et si ma IO est a 1, j’envoie une trame modbus « on ». Un peu a l’image d’un push. si IO est a 0, envoi d’une requete OFF, si IO à 1, envoi requete ON.
J’ai fait le tour des fonctions disponibles, mais je n’ai rien trouvé.
Pour le ON, pas de soucis, j’ai placé ma IO en condition d’envoi de la fonction modbus write ON. Donc au passage a 1 de la IO, j’envoie la trame pour gérer la fonction ON.
Le soucis c’est pour le OFF. Si on avait la possibilité de mettre un NON devant la IO, il serait possible de mettre NON - IO comme condition d’envoi de la fonction modbus write OFF.
J’ai donc cherché une autre solution, mais pas trouvé dans les liens une fonction qui permettrait d’inverser l’état. Il y a la solution de créer une 2eme IO dont l’état est inversé par rapport a la IO .
j’ai trouvé la solution de passer par une scène, ou la condition est NON - IO et Résultat ON MODBUS WRITE « OFF ».
cela complique un peu la compréhension puisque la gestion ON est dans les liens, la gestion du OFF dans une scène.
Quelqu’un aurait une idée pour simplifier ces actions sommes toutes simples?
@GCE , l’intégration de la fonction NON dans les liens est-elle une évolution envisageable ou dans les tuyaux?

Bonsoir @jeff850

Oui c’est faisable assez simplement avec 2 rules:
Rule 1:
Si IO
ON
TRAME ON

Rule 2:
SI NON IO
ON
TRAME OFF

Sur le dashboard il suffit de mettre un bouton qui pilote l’IO et cela fonctionne :wink:

1 « J'aime »

Je pensais passer par les liens pour simplifier, mais oui, en passant par les Rules, ça sera la solution.

Bonjour @Jweb
Je cherche un moyen propre de lancer mes objet modBus lecture. J’avais commencé avec un clignotant pour les 5 objets mais ça ne fonctionne pas correctement car les trames sont envoyées simultanément.
Ensuite j’ai créé 1 clignotant par objet, mais il y a toujours un moment ou au moins 2 trames sont envoyées en même temps.
Depuis, j’ai créé un clignotant qui déclenche en cascade autant de délais que j’ai d’objet lecture modBus. ça fonctionne mais c’est un peu lourd…
Avez-vous une solution différente?

Bonjour,
il est également possible de lier un clignotant à l’entrée INC+ d’un compteur.
Puis avec les scénarios, si compteur=1 alors envoi trame 1, si compteur =2 alors trame 2, …
bonne journée