Plugin MyModbus

Tags: #<Tag:0x00007f2834d4fec8>

Ouverture d’un poste pour parler du plugin MyModbus .

  1. A quoi ça sert ?
    -Ça sert à communiquer en Modbus ,via une connections Ethernet (seulement Ethernet pour l’instant) .

  2. Pourquoi MyModbus ?
    ma domotique repose sur le plugin Modbus et ce plugin est passé obsolète.
    pas d’info circulant sur une événementiel mise à jour , le dev ne répond pas au mail , donc par conséquent je prend les devants pour garantir l’évolution de mon système.
    3)ça dis quoi ?
    Aujourd’hui le plugin est fonctionnel , je suis reparti du travail qui avait était fais sur Modbus et j’ai amélioré cette base , corrigé des bugs sur le daemon, repris l’interface utilisateur.
    15/01/2020 : Le plugin intègre une configuration spécifique pour les automates Crouzet M3 .
    les mode TCP/IP et Crouzet M3 semble fonctionner correctement c’est donc c’est deux modes qui sortirons dans la prochaine version stableV4

  3. Pour le futur ?
    Dans les prochain mois , je vais continuer à corriger et améliorer le code . ( certainement faire une refonte complète du daemon .Le déployer chez quelques utilisateurs sélectionnés pour voir comment ça réagi sur d’autre config .
    Quand le code sera stable , la documentions à jour, le changelog en place.je le sortirait en public et stable .

  4. Les évolutions du plugin ?
    °)Pas d’évolution dans l’immédiat, d’abord avoir quelques choses de fiable et fonctionnelle .
    °)Je pensais ajouter le mode RTU mais il y a déjà quelque chose qui existe donc à voir si c’est vraiment utile .
    °)Simulation de serveur , ça peut être pratique pour tester :negative_squared_cross_mark:
    °)Gestion automate Crouzet M3 => mise à jour horloge :ballot_box_with_check:
    °)*********************


Lien vers la documentation : #Mymodbus_Doc
Lien Vers le Change_Log : #Mymodbus_ChLog
J’espère que cela répondra à vos attentes .

@ Bientôt sur ce poste

7 J'aimes

Hello,

Super! Je teste quand tu veux!

J’ai répondu à ton MP .

Hello,

J’utilise l’ancien plugin Modbus en prod donc le désactiver, ce ne sera pas possible en l’état.

J’ai donc monté un Jeedom de prod (après avoir bien sué car la dernière version de Docker sur le Synology contient un bug).
Je suis parti d’un Ubuntu (Server), dernière version + update/upgrade + exécution du script d’installation de Jeedom. Rien d’autre.

En l’état, il y est inutilisable dans mon cas (comme l’autre sans modification).

Plusieurs choses :

  • il manque, contrairement à l’ancien plugin l’info suivante : « Vous devez également installer le module pyModbusTCP via la commande : sudo pip install pyModbusTCP ». Sinon, le démon ne se lance pas.
  • le plugin ne fait pas de Modbus RTU over Ethernet. Uniquement du Modbus TCP. Voir Mon post et les dernières pages du post de l’ancien forum. Il faudrait, enfin, ce serait top de pouvoir configurer 3 modes : Modbus TCP, Modbus RTU over Ethernet, Modbus RTU. Les convertisseurs RS/Ethernet ne font pas forcément du Mobus TCP. Le premier que j’ai testé ne faisait que du Modbus RTU Over Ethernet. J’ai évolué sur un modèle de la même marque qui fait les deux.
  • je reçois des « None » comme valeurs. Comme sur l’ancien plugin. Dans mon post, j’ai expliqué comment contourner cela.

Voilà pour mes premiers retours.

Merci pour ton retour .

->Concernant la commande d’installation ,.sudo pip install pyModbusTCP. c’est volontaire quel ne soit plus présente .
Les dépendances devront s’installer automatiquement comme la plupart des autres plugins , mais vu que j’ai pas eu le temps de travailler sur ce point j,ai forcé les dépendances à 1 donc effectivement si tu n’as jamais installé le plugin il t’a fallu taper cette ligne de commande .’ je vais la remettre en attendant '.
->Pour le RTU over Ethernet je l’ai mal précisé mais pour l’instant ce n’ai pas pris en charge .
->Concernant les “none” je vais lire ton poste pour voir ce que c’est exactement .

@ bientôt

@Kyoshi : je viens de pousser une mise à jour qui ajoute la fonction d’installation des dépendances .
Pourrais tu tester cette fonction stp ? L’idéal étant de partir d’une install neuve .
je regarde prochainement pour les retours “none”
@bientot

Hello,

T’as de la chance que j’avais réalisé un snapshot juste avant :wink:
J’ai un snapshot après une fresh install d’Ubuntu Server + MAJ. Et un autre après installation de Jeedom via le script de la doc officielle.
Je suis donc revenu sur mon dernier snapshot et j’ai réinstallé ton plugin.

Il tourne sans problème. Enfin, j’ai toujours des “None” comme valeurs.

La config de ma chaudière est sur le plugin RTU. Si tu veux comparer quelque chose.
Je ne l’utilise pas car il fait uniquement du RTU (et pas du RTU over Ethernet).

1 J'aime

Je viens de remarquer un truc.
Si l’on désactive son objet, le démon continue de chercher les infos sur les adresses que l’on a configuré dans l’objet.

1 J'aime

Bonjour,

Pour ma part je suis comme Kyoshi, j’ai un RPI3 avec le plugin ModbusTCP de Martinez qui tourne (en v3.3.38).
J’ai un autre RPI3 ou j’ai installé la v4, je souhaite mettre celui-ci dans une école pour gérer le chauffage électrique par fil pilote j’ai testé le plugin ModbusRTU de JeedomSAS qui ne fonctionne pas chez moi (je vais faire une demande de support là-dessus).

@Bebel27 Si t’es OK, je suis prêt à tester ton plugin sur le petit dernier.

A+

1 J'aime

Hello,

Dans le topic que j’ai créé concernant les plugins Modbus (lien quelques posts plus haut), il est indiqué comment corriger le plugin RTU pour qu’il fonctionne (USB uniquement, pas de RTU over Ethernet).

Après, si tu n’es pas pressé, il est peut-être préférable d’attendre l’évolution de ce plugin.
Vu que le plugin “Modbus” est abandonné et “Modbus RTU”, aucune communication de la team Jeedom malgré plusieurs demandes…

Oui en effet javais remarqué ce probléme .
En cas d’ajout d’un équipement ou d’une commande info il faut pour l’instant redémarrer le démon .
je regarde ce que je peux faire ( c’est lié au Demon )
Concernant ta chaudière, pourrais tu m’envoyer la documentation en MP STP ?

@pananok , peux tu me donner plus d’info sur ton installations ? tu contrôles quoi exactement en mode bus ?

Re,

Si tu fais référence à ceci :

à priori une mise à jour récente a corriger le problème. Tout se lance bien :

image

Mais en consultant les logs j’ai ceci en boucle :


[2019-12-02 20:28:35][DEBUG] : No JSON object could be decoded
[2019-12-02 20:28:35][DEBUG] : Handling RTU for FIOD0808PB
[2019-12-02 20:28:35][DEBUG] : Handling local request read for FIOD0808PB
[2019-12-02 20:28:35][DEBUG] : Command to execute sudo /usr/bin/python /var/www/html/plugins/modbusrtu/resources/modbusrtud/modbus_rtu.py --slave 2 --device /dev/ttyUSB0 --baud 9600 --byte 8 --parity none --stop 1 --register '{"listdevice":[{"datatype": "normal", "nbregister": "", "functioncode": "", "location": "1"}]}' --action read
[2019-12-02 20:28:44][DEBUG] : MinimalModbus debug mode. Create serial port /dev/ttyUSB0
list index out of range
{}

[2019-12-02 20:28:44][DEBUG] : No JSON object could be decoded

Mais là je suis hors sujet sur ce post.

Lut,

Je vais essayer d’être concis. Je possède depuis une dizaine d’années un automate afficheur Unitronics V570. Au départ le but étaitt de gérer mon chauffage (chaudière fioul et cheminée avec bouilleur). Celui-ci communique en Modbus TCP et possède 2 ports séries. Sur le premier j’ai un modem SMS en RS232 qui me sert à recevoir des alarmes et au pilotage de certains de mes équipements. Sur le second je récupère entre autre un compteur électrique Legrand en Modbus RS485,

A la base j’utilisais (enfin j’utilise encore) myScada (https://www.myscada.org/) un outil de supervision plutôt orienté industriel, installation sur RPI avec une licence dans les 40€ de mémoire. Cependant, la version smarthome comme elle s’appelait n’est plus maintenue.
Exemple de vues :

image

image

image

Je souhaite conservé au maximum la programmation dans mon automate et me servir de Jeedom pour la supervision et le pilotage simple de mes équipements. J’ai installé il y a quelques années en parallèle de myScada un Jeedom sur un autre RPI pour tester. Jeedom a un gros avantages par rapport à myScada c’est la multitude de plugins présents orienté IOT. Cependant myScada avait l’avantage d’avoir le plugin Modbus qui tournait parfaitement avec l’intégralité des fonctionnalités du protocole.

Avec mon automate en plus du chauffage je gère l’alarme, l’éclairage extérieur, la détection de courrier, mes consommations électricité et eau, mon niveau de puits…

Le dashboard de mon Jeedom (je sais c’est le bordel !):

image

Mon souhait débrancher myScada pour tout avoir sur Jeedom, c’est pourquoi je suis particulièrement le(s) plugins Modbus.

Hello,
Toutes les infos sont envoyées :wink:

@pananok, je faisais effectivement référence à cette modification.
Du coup, je te propose de poser la question sur le topic que j’avais créé car il y a des personnes qui l’utilisent.
Et de surveiller celui-ci car @Bebel27 aura certainement besoin de testeurs en USB également :).

Bonjour,

Je voudrais bien tester, possible?
Je dispose en modus d’un automate wago, 2 Zelio et 5 Adam (4-20ma, pt100 et I/O)

nicolas

Je suis également intéressé car j’ai 3 automates Cruzer m3 en TCP.

1 J'aime

Bonsoir,
Ravi de voir que le modbus est de nouveau sur les rails, une excellente initiative.
De mon côté j’ai 4 ADAM 6050 TCP I/O 18ch.
Pour lesquels je n’ai jamais pu en faire quoique ce soit. Hormis m’y connecter et jouer avec son interface.
S’il est possible de les intégrer à JEEDOM je serais le plus heureux.

Je vous suis de prêt.

FAB.

bonjour
@ngm47, @rombautsdidier, @Fabio133 , @pananok ,
Le plugin devrait pas tarder à sortir en stable pour la partie TCP/IP avec un demon adapté de l’ancien plugin .
Pour qu’il sorte il me faut une documentions . J’avais confié cette partie à une personne qui voulait testé le plugin , mais plus aucune nouvelle depuis que je lui ai envoyé le code ( à suivre … ) sion je vais m’en occuper

Ce qui est en cours , la réécriture du demons , qui va permettre d’avoir plusieurs modes de connections ( TCP/IP RTU RTU OVER TCP RTU-ASCII .)

Pour ceux qui utilisent les automates Crouzet il y aura une configuration spécifique avec les commandes dédiées . ( petite exemple : mis à jour de l’heure par ntp de vos crouzets , car je ne sais si vous avez remarqué , mais ceux si dérivent beaucoup dans le temps , retour d’état de la cpu …etc )

Bonne fêtes de fin d’année
@ bientot

3 J'aimes