Si vous avez des panneaux solaires et un onduleur Huawei SUN2000, vous pouvez rapatrier des données directement en TCP/IP via l'onduleur ou via un API sur l'application FusionSolar (a demandé a votre installateur), comme je n'aime pas passer par un système "cloud" qui ne m'appartient pas et donc pas accessible directement, j'ai cherché comment "pomper" les informations directement sur mon onduleur et ca n'a pas été simple. Mon but étant de prendre toutes les infos et de les envoyer sur mon box domotique Jeedom.

Mes recherches

Sur Jeedom il existe quelques plugins "Modbus", c'est une application qui prend en TCP/IP des données d'un tableau interne de l'onduleur mais aucun ne fonctionne, ou plutôt, je n'ai aucune donnée visuel, après 2 jours a avoir tout essayé j'ai abandonné... trop long et fastidieux. J'ai levé donc mes manches de programmeur et j'ai développé un petite application Console (disponible sur Windows et Linux), puis j'ai fais tourner cette application sur mon Synology qui extrait les données de mon onduleur, ca fonctionne ! Maintenant c'est passé la valeur sur une commande virtuel sur Jeedom et bingo !

image

Comment ca fonctionne ?

1) Télécharger la version Windows ou Linux, extraire tous les fichiers dans un répertoire de votre choix
2) Ouvrir le fichier Preferences.json avec un Notepad
3) Changer l'adresse de votre onduleur, le port qui par défaut est 502 et aussi le Device Id s'il est différent de 1
4) Mettez bien l'URL là ou vous voulez poussez les valeurs d'une adresse (attention en GET seulement), vous remarquerez dans l'URL il y a un exemple, vous pouvez mettre l'ID {0} et la valeur {1} d'une commande virtuel Jeedom (voir section suivante point 8)
5) Mettez aussi juste en dessous, l'ID de la commande virtuel séparé d'une virgule avec l'adresse dont la valeur sera envoyé (voir section suivante point 8)


Les adresse 32080 de l'onduleur SUN2000 correspond a la production courante de l'instant présent, et l'adresse 32114 correspond à la valeur de la production du jour, vous pouvez bien sur ajouter d'autres valeurs que vous trouvez dans le fichier PDF des interfaces de HUAWEI

Dans Jeedom:

1) Vous devez avoir installer le plugin VIRTUEL
2) Une fois le plugin installer, allez dans le plugin
3) Ajouter un nouveau composant Virtuel que vous appelez "Onduleur"
4) Ouvrez "Onduleur" et allez dans "Commandes" au dessus
5) Ajoutez une commande via le bouton "Ajouter une info virtuelle" et mettez le nom "Prod Now"
6) Ajoutez une seconde commande virtuel et mettez le nom "Prod Jour"
7) Sauvegardez, maintenant vous avez un ID qui apparaît devant chaque commande, notez ces ID dans le fichier Preferences.json de l'application que vous avez téléchargée
8) Dans la tabulation "Equipements" sous le plugin Virtuel, vous avez l'URL exact avec votre clé Jeedom pour pousser les valeurs, copiez cet URL et mettez cet URL dans le fichier Preferences.json mais #cmd_id# doit être remplacé par {0} et #value# par {1}

Exécutez le tout et voyez si la commande virtuel de Jeedom est mise à jour

Sur Synology

Vous pouvez faire tourner la version LINUX sur Synology via une tâche a executer au démarrage

1) Assurez vous que le paque ".Net 6" est bien installé sur votre Synology
2) Télécharger la version Linux de l'application et copiez tous les fichiers dans un répertoire de votre choix sur votre Synology (par exemple dans "/home/RepOnduleurTCP")
3) Vous devez donnez les permissions d'exécution sur le fichier "OnduleurTCP", vous pouvez le faire dans "File Station" en cliquant sur le fichier avec le bouton droit de la souris, puis "Propriétés" sous l'onglet "Permission", cochez toutes les cases (ou le faire viat ssh avec la commande "chmod +rwx OnduleurTCP")
4) Sur votre Synology, ouvrez le "Panneau de configuration" puis "Planificateur de tâches"
5) Créez une nouvelle tâche "déclenchée", une fenêtre va s'ouvrir, sélectionnez bien "Démarrage" à côté de "Evenement", il va lancer l'app OnduleurTCP dés que le Synology démarre
6) Sous l'onglet "Paramètre de tâche", vous devez notez le chemin ou se trouve le fichier "OnduleurTCP", par exemple:  /volume1/homes/[votre username sous synology]/RepOnduleurTCP/OnduleurTCP

C'est terminer ! Pour la 1ere fois Executez vous mêmes manuellement la tâche avec le bouton "Executez", vous pouvez voir les logs si l'app tourne bien sous le bouton "Action" > "Affichez le résultat"

Téléchargement

Pour Windows: OnduleurTCP_Windows.zip
Pour Linux ou Synology: OnduleurTCP_Linux.zip

Attention, pour Windows ou Linux (ainsi que Synology) vous devez avoir au préalable installer le Runtime .Net 6 (https://dotnet.microsoft.com/en-us/download/dotnet/6.0)

Vous pouvez télécharger ici le fichier PDF avec les adresses de l'interface SUN2000 de Huawei: PDF