Page 4 sur 5

Re: Defaut COM modbus

Posté : 14 nov. 2021, 20:47
par philou77
Salut !

En regardant ta vidéo, je me pose la question de savoir si tu n'aurais pas inversé l'adresse de départ de lecture et le nombre de mots à lire ?

parce que 9C40 ça fait beaucoup de mots à lire à partir de l'adresse 15 dans ce cas.

j'édite :
en regardant mieux, on voit l'adresse changer pour les autres esclaves.. donc c'est pas ça..

Re: Defaut COM modbus

Posté : 14 nov. 2021, 20:51
par lolodu013
bonjour,

Non c'est pas ca.

L'api interroge les registres des appareils. selon les appareils les registres sont différents:

L adresse de l'appareil X
L fonction lecture de l'appareil 3
L nombre de mots de lecture (depuis 9C40 = 40000)
Donc X mots de lecture partir du registre 9C40 19 mots

Re: Defaut COM modbus

Posté : 14 nov. 2021, 21:22
par DurandO
Bonjour,
pour insérer un temps d'attente entre chaque requête, je te propose d’insérer le réseau suivant en début du FC10 :
fc10res1.png
fc10res1.png (9.4 Kio) Vu 1972 fois
Test dans les conditions initialement voulues, le nombre de mots lus (19) y compris pour esclaves déconnant.
Cette tempo va retarder l'activation de "REQ CONTRAT MODBUS" dans les réseaux qui suivent.
Elle est traité puis remis à 0 par le FB10 de com.
A toi de choisir une tempo non-utilisée bien sur.

Ensuite pour l'analyse ce réseau-ci en fin de FC10 :
fc10_fin.png
fc10_fin.png (8.19 Kio) Vu 1972 fois
Tu peux insérer une comparaison MB1000=0 (suivant mon exemple) pour capturer le premier défaut uniquement et tu raz ensuite MB1000.

Tiens nous informé du résultat.

Re: Defaut COM modbus

Posté : 14 nov. 2021, 22:10
par lolodu013
Capture.JPG
Ok par contre dans mon dernier réseau note MB32 et MB36. sur le comparateur etc.. ca serais pas MW32 et MW36 plutôt?

Re: Defaut COM modbus

Posté : 14 nov. 2021, 22:32
par lolodu013

Re: Defaut COM modbus

Posté : 15 nov. 2021, 07:29
par DurandO
Bonjour,
Suivant ta vidéo et ton FB10 :
Esclave 9 PAFE =16#33 --> pas de réponse de l'esclave
puis esclave 2 PAFE = 16#31 --> Erreur CRC16 sur trame reçue

A-tu mis en place la tempo inter-requête ?
Si non : fait le (ce n'est pas faute d'insister).
Si oui, essaies d'augmenter T20 (dans mon exemple) à 500ms, histoire de s'assurer quelle fonctionne et voir si les défauts persistent.

Re: Defaut COM modbus

Posté : 15 nov. 2021, 19:22
par lolodu013
Bonsoir,

Oui j'avais fait la tempo inter requête. je viens de modifier la tempos à 500ms
inter.JPG

Re: Defaut COM modbus

Posté : 15 nov. 2021, 19:31
par lolodu013

Re: Defaut COM modbus

Posté : 16 nov. 2021, 09:51
par DurandO
Bonjour,
Dans l'esclave 10, pourquoi est-ce que tu lis 21 mots au lieu de 19 ?
Il y a forcément une erreur. Cela ne convient pas à la zone réservée dans le DB21 soit 19 mots (38 octets).
Corrige déjà cela.
FC10_ErreurEsc10.png
Après , il faut reconnaître que c'est un programme de merde:
MW40 Nombre de mots alors que c'est l'adresse début de zone lue
MW42 DEBUT ZONE DE MOT alors que c'est le nombre de mots lus
Des mnémoniques à rallonge contenant des espaces.
L'auteur mériterait bien quelque baffes!

Re: Defaut COM modbus

Posté : 16 nov. 2021, 10:43
par DurandO
lolodu013 a écrit : 15 nov. 2021, 19:31
Pour l'analyse, il serait plus simple d'afficher une VAT comme celle-ci (tu peux y ajouter T0) :
VAT.png
Ajouter dans FC10 le test de la tempo pour ne pas changer d'esclave si REQ_CONTRAT_MODBUS est encore actif