Bonjour à tous,
Possesseur d’un onduleur Huawei SUN2000, je suis à la recherche d’un moyen de le faire communiquer avec Jeedom étant donné qu’il n’y pas de plugin dispo sur le market.
Il existe 2 possibilités :
via Modbus, mais les 2 plugins dispo sur le market sont HS et n’ont pas l’air de vouloir fonctionner avec l’onduleur alors que des logiciels tiers y arrivent…
Même avec un ticket ouvert le sur le plugin officiel, ca n’a pas l’air de vouloir avancer étant donné le peu de prise en considération du problème…
Via l’API : est ce que certains d’entre vous (les possesseurs) ont réussi a intégrer un script permettant de récupérer les infos de l’onduleur ?
Si certains d’entre vous ont envie d’avancer sur le sujet, ils sont les bienvenus
Mon installation est prévue pour début de semaine prochaine, et c’est également un SUN 2000 que je vais recevoir … Je me lance donc aussi dans cette recherche !
la version beta de MyModbus disponible sur le market devrait être compatible avec ta configuration.
Si tu souhaites essayer, je suis disposé à t’aider sans problème.
J’ai changé de principe d’installation, ça ne touche plus au python du système (trop invasif et rendait le système instable) je suis quasi sûr que ça marcherait chez toi.
Dis-moi si tu veux essayer. Tu peux déjà essayer de ton coté et en cas de soucis, poster ton problème ici, on regardera ensemble.
Bonjour,
Je rencontre le même problème… et j’ai une petite préférence par la solution « ModBus » car je n’aime pas trop aller chercher sur le cloud une information disponible sur mon réseau local…
Après un certain nombre de recherches j’ai trouvé une libraire python faite pour HA pour récupérer les informations de l’onduleur par ModBus TCP.
Afin de tester cette solution j’ai fait un petit client MQTT qui publie le résultat du ModBus vers le broker MQTT de Jeedom.
Actuellement je fais tourner en « nohup » mon code python sur une VM syno et ça fonctionne très bien.
Le code est dispo sur ce repo github et il y a un petit readme pour décrire sommairement comment l’exécuter
Pour info: ça marche avec un dongle FE et avec le WLAN de l’onduleur, par contre le port à utiliser et le slave_id sont différents
WLAN onduleur (port=6607 et slave_id=0)
Dongle FE (port=502 et slave_id=1)
Très cordialement
Gonzalo
PS: Je n’ai jamais fait de plugin, si quelqu’un peut m’aider à transformer ce code en plugin ça devrait permettre d’avoir un modbus2mqtt
bonjour @gonzalodrobles
je n’ai jamais mis à jour le post c’est vrai, pour info nous avons reussi a faire fonctionner les plugin modbus déjà dispo sur le store.
@gonzalodrobles, oui, sur quel plugin ?
Sur l’officiel, ca se passe dans la configuration générale du plugin.
En fait ce qu’il se passe, c’est que les plugin ne laissent pas le temps à l’onduleur de répondre, du moins à la 1ere connexion, et de ce fait génèrent un timeout.
je serais heureux de pouvoir vous aider simplement à l’aide de MyModbus. Si vous avez besoin d’aide pour un test, je suis dispo par MP.
(je ne vends rien… )
je récupère bien les infos de mon onduleur SUN2000 en modbus avec le plugin modbus, mais je n’arrive pas à lire les valeurs négatives du registre 37113 ( compteur d’énergie GRID).
Avez vous une astuce ?
Je n’arrive pas à lire les registres avec le plugin MyModbus avec les même configs.
La règle de ce forum c’est un post par question/problème, ne t’étonne donc pas si un modérateur déplace ton message et surtout ne le prends pas mal…
La version beta du plugin MyModbus permet de lire correctement beaucoup de type de variables et gère les valeurs négatives comme il faut.
Tu peux te faire un avis en lisant la documentation du plugin : https://bebel27a.github.io/jeedom-mymobdus.github.io/fr_FR/index_b
S’il te faut un coup de main fias un nouveau post en précisant le tag #plugin-mymodbus, je ferai ce que je peux pour t’aider.
Tout a fait d’accord avec le message de @Michel_F, si tu rencontres une difficulté avec un plugin en particulier le mieux est d’ouvrir un sujet dédié plutôt que d’en faire part au détour d’un sujet ayant plus ou moins de lien.
Je vous remercie pour vos conseils. @agadoc je ne comprends pas pourquoi tu est en Kwh pour la prod instantanée, c’est plutôt des Kw.
Je vais faire un test avec ta formule dans un scénario , mais (#value#-4294967296)+65535 ne fonctionne pas dans la formule de calcul de la commande.
@Michel_F Je me lance sur pour faire un nouveau post, car j’ai toujours une erreur de lecture avec MyModbus.
Pouvez-vous me dire si le plugin Mymodbus peut communiquer avec un SUN2000-3.68KTL-L1 (avec 2 batteries) et où je peux trouver les différents registres modbus?
Je n’ai pas encore essayé le plugin mais quand je tente avec la commande mbpoll sous linux ça n’a pas l’air de marcher pour récupérer ici le model id :
pour info, j’ai continué mes tests et j’arrive à avoir des valeurs en ajoutant un Poll rate d’au - 10 secondes avec mbpoll : donc la première fois j’ai pas d’info puis ensuite il veut bien m’en donner :
– Polling slave 1… Ctrl-C to stop)
Read output (holding) register failed: Connection timed out
– Polling slave 1… Ctrl-C to stop)
[30071]: 347
Comme dit plus haut, cet onduleur n’aime pas les connexions trop rapide : d’ailleurs y’a une sorte de firewall dessus car nmap ne me donne pas les ports ouverts …
Aussi, pour mon modèle les registres ne correspondent quasi pas !!! Bizarre
Et enfin je viens d’installer Mymodbus et ça ne fonctionne pas : « no route to host » à mon avis pour la même raison, faut se connecter et attendre x temps avant de lui demander une valeur de registre