Onduleur Huawei SUN2000

Bonsoir,

Je tente de configurer le plugin MyModbus pour récupérer toutes les infos de mon onduleur Huawei SUN2000, y compris les valeurs négative du compteur d’énergie (37113).

Pour le moments tous les tests sont en échec.

Avez-vous une idée ?
J’ai désactivé le plugin modbus pour faire ces essais.
Je suis en dernière version beta avec mise à jour des dépendances.

Aurélien

Tu as lu la doc modbus du Huawei ? :face_with_raised_eyebrow:

Le 37113 se lit en int32 sur 2 bytes…

Salut @agadoc,

Je te remercie, dans modbus j’ai bien la même configuration que toi.
Dans MyModbus j’ai tout essayé et j’ai toujours le même résultat, j’ai mis a jour en I32 et même résultat. Une erreur.

Aurélien.

Et dans Modbus tu récupère la valeur ?
Si oui, tu fais récupérer cette valeur dans un virtuel et tu fais le calcul que je t’ai donnée dans l’autre post (uniquement pour le négatif)

La valeur positive n’a pas besoin de calcul, c’est la bonne de base.

En ce qui concerne mymodbus, je ne sais pas, @Michel_F t’aidera certainement mieux.

Salut @Aurels71,

Essaie en décochant « Garder la connexion ouverte »

Et il serait pratique pour moi si tu copiais les logs et les postais (dans des balises de code ou comme fichier) ici au lieu de faire une capture incomplète.
J’avoue ne pas réussir à interpréter correctement. mais :


A priori : pas de réponse en 3 secondes → Timeout

D’autres registres sont lisibles ? Avec d’autres outils (Modbus Doctor, …) ?

je me permets de préciser : int32 = 32 bits soit 2 registres soit 4 bytes (4 octets)

@Michel_F, sans doute une compréhension différente, Huawei indique i32 quantity 2, retranscrit dans le modbus officiel avec bytes à 2. Si je met byte a 4 ca ne fonctionne pas…

Il y a un timeout dans mymodbus (c etait le cas sur l’ancienne version aussi) car la requête n’est pas bonne.

Les outils comme qmodmaster font exactement la même chose d’ailleurs… C’est comme si l’onduleur fermait la connexion si une requête inexacte lui était envoyée…

Quelqu’un peut poster la doc de l’onduleur SVP ?

edit: j’ai lu sur le forum de Huawei qu’il fallait attendre 1 seconde entre la connexion et la première requête. J’ai rajouté ce point dans la todo liste.

@Michel_F
je t’avais prévenu pourtant déjà de ce point au début. Te souviens tu ?

Oh oui, je me souviens.

Ce sera implémenté de manière à ce qu’on puisse mettre le temps d’attente que l’on veut.
Coming soon

Bonsoir à tous,

Je vous remercie pour votre aide, il faut que je retrouve la doc.

J’ai desactivé le maintient de la connexion est toujours pareil.

0028|[2023-03-23 21:38:24]DEBUG : PyModbusClient: requests:{"142923": {"last_value": null, "name": "GRID POWER", "type": "info", "slave": 1, "fct_modbus": "3", "data_type": "int32", "addr": 37113, "freq": 1, "byteorder": ">", "wordorder": ">"}}
0029|[2023-03-23 21:38:24]DEBUG : PyModbusClient: client protocol is:tcp
0030|[2023-03-23 21:38:24]DEBUG : Connecting to 192.168.0.232:502.
0031|[2023-03-23 21:38:24]DEBUG : Connecting.
0032|[2023-03-23 21:38:24]DEBUG : Client connected to modbus server
0033|[2023-03-23 21:38:24]INFO : Protocol made connection.
0034|[2023-03-23 21:38:24]INFO : Connected to 192.168.0.232:502.
0035|[2023-03-23 21:38:24]DEBUG : send: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x90 0xf9 0x0 0x2
0036|[2023-03-23 21:38:24]DEBUG : Adding transaction 1
0037|[2023-03-23 21:38:27]INFO : Protocol lost connection.
0038|[2023-03-23 21:38:27]DEBUG : Client disconnected from modbus server: trying to send
0039|[2023-03-23 21:38:27]DEBUG : Getting transaction 1
0040|[2023-03-23 21:38:27]ERROR : PyModbusClient: Something went wrong while reading GRID POWER (command id 142923): TimeoutError()
0041|[2023-03-23 21:38:39]DEBUG : Connecting to 192.168.0.232:502.
0042|[2023-03-23 21:38:39]DEBUG : Connecting.
0043|[2023-03-23 21:38:39]INFO : Protocol lost connection.
0044|[2023-03-23 21:38:39]DEBUG : Client disconnected from modbus server: None
0045|[2023-03-23 21:38:39]DEBUG : Waiting 100 ms before next connection attempt.
0046|[2023-03-23 21:38:39]DEBUG : Client connected to modbus server
0047|[2023-03-23 21:38:39]INFO : Protocol made connection.
0048|[2023-03-23 21:38:39]INFO : Connected to 192.168.0.232:502.
0049|[2023-03-23 21:38:39]INFO : Protocol lost connection.
0050|[2023-03-23 21:38:39]DEBUG : Client disconnected from modbus server: None
0051|[2023-03-23 21:38:39]DEBUG : Connecting.
0052|[2023-03-23 21:38:39]DEBUG : Connecting to 192.168.0.232:502.
0053|[2023-03-23 21:38:39]DEBUG : Connecting.
0054|[2023-03-23 21:38:39]DEBUG : Client connected to modbus server
0055|[2023-03-23 21:38:39]INFO : Protocol made connection.
0056|[2023-03-23 21:38:39]DEBUG : Client connected to modbus server
0057|[2023-03-23 21:38:39]INFO : Protocol made connection.
0058|[2023-03-23 21:38:39]ERROR : Factory protocol connect callback called while connected.
0059|[2023-03-23 21:38:39]INFO : Connected to 192.168.0.232:502.
0060|[2023-03-23 21:38:39]INFO : Connected to 192.168.0.232:502.
0061|[2023-03-23 21:38:39]DEBUG : send: 0x0 0x2 0x0 0x0 0x0 0x6 0x1 0x3 0x90 0xf9 0x0 0x2
0062|[2023-03-23 21:38:39]DEBUG : Adding transaction 2
0063|[2023-03-23 21:38:39]INFO : Protocol lost connection.
0064|[2023-03-23 21:38:39]DEBUG : Client disconnected from modbus server: None
0065|[2023-03-23 21:38:39]DEBUG : Getting transaction 2
0066|[2023-03-23 21:38:39]INFO : Protocol lost connection.
0067|[2023-03-23 21:38:39]WARNING : Ignoring launch of delayed reconnection, another is in progress
0068|[2023-03-23 21:38:39]DEBUG : Client disconnected from modbus server: None
0069|[2023-03-23 21:38:39]DEBUG : Waiting 100 ms before next connection attempt.
0070|[2023-03-23 21:38:39]ERROR : PyModbusClient: Something went wrong while reading GRID POWER (command id 142923): ConnectionException()

Aurélien

J’ai une lecture qui est passée en une heure :frowning:

0639|[2023-03-23 21:55:04]DEBUG : Connecting.
0640|[2023-03-23 21:55:04]DEBUG : Client connected to modbus server
0641|[2023-03-23 21:55:04]INFO : Protocol made connection.
0642|[2023-03-23 21:55:04]INFO : Connected to 192.168.0.232:502.
0643|[2023-03-23 21:55:04]DEBUG : send: 0x0 0x1 0x0 0x0 0x0 0x6 0x1 0x3 0x90 0xf9 0x0 0x2
0644|[2023-03-23 21:55:04]DEBUG : Adding transaction 1
0645|[2023-03-23 21:55:05]DEBUG : recv: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfd 0xb
0646|[2023-03-23 21:55:05]DEBUG : Processing: 0x0 0x1 0x0 0x0 0x0 0x7 0x1 0x3 0x4 0xff 0xff 0xfd 0xb
0647|[2023-03-23 21:55:05]DEBUG : Factory Response[ReadHoldingRegistersResponse': 3]
0648|[2023-03-23 21:55:05]DEBUG : Getting transaction 1
0649|[2023-03-23 21:55:05]DEBUG : [65535, 64779]
0650|[2023-03-23 21:55:05]DEBUG : handle: [b'\xff\xff', b'\xfd\x0b']
0651|[2023-03-23 21:55:05]DEBUG : PyModbusClient: read value for GRID POWER (command id 142923): -757
0652|[2023-03-23 21:55:05]INFO : Send to jeedom :  {'values': {'142923': -757}}
0653|[2023-03-23 21:55:05]DEBUG : Starting new HTTP connection (1): localhost:80
0654|[2023-03-23 21:55:05]INFO : Protocol lost connection.
0655|[2023-03-23 21:55:05]DEBUG : Client disconnected from modbus server: None
0656|[2023-03-23 21:55:05]DEBUG : jeemymodbus.php: $result *{"values":{"142923":-757}}* type: array
0657|[2023-03-23 21:55:05]DEBUG : jeemodbus.php: Mise à jour cmd GRID POWER -> new value: -757
0658|[2023-03-23 21:55:05]INFO : jeemodbus.php: Mise à jour des commandes info : 'GRID POWER'

Salut @Aurels71,

Je suis en train de programmer les prochaines évolutions et la gestion d’un temps d’attente est prévue.

C’est en cours. J’aimerais pouvoir tester avant de publier, je pourrais te demander ?

@Michel_F oui avec plaisir.

Je te partage la doc
Solar-Inverter-Modbus-Interface-Definitions.pdf (1,1 Mo)

je vois ça comme quelque chose de positif :

  • ta config est bonne
  • MyModbus est capable de lire dans l’onduleur

Il ne reste plus qu’à adapter MyModbus aux spécificités de cet onduleur qui fait parler de lui sur le net quand à sa capacité (limitée) à commuiquer en Modbus.

Surveille la prochaine mise à jour de MyModbus beta, elle devrait te rendre service :wink:

1 « J'aime »

Hello @Michel_F,

Ca fonctionne à merveille :slight_smile:

Grand merci Michel !

Aurélien

1 « J'aime »

Je post ma config du plugin pour l’onduleur SUN2000 3K:



Bonne config. et encore merci Michel !

Aurélien

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.