Octet supplémentaire modbus RTU
Posté : 06 août 2024, 10:51
Bonjour,
Je n'ai plus trop d'idée, je tente ma chance sur ce forum au cas où quelqu'un aurait déjà rencontré ce problème, ou aurait une idée.
Le but est de remplacer un April PB400 par un M580.
Sur site, le PB400 communique avec un modem maître en RS232. Le modem renvoie les trames sur un bus de communication en 4 fils sur plusieurs modems esclaves reliés chacun à un PB80.
J'ai réalisé une installation de test pour vérifier que ma communication fonctionnait bien. En mettant un PB400 tout fonctionne parfaitement, mais dès que je mets le M580 (via une NOM0200.2 V1.6), j'ai des erreurs un peu aléatoirement : certaines trames passent, d'autres non, parfois tout fonctionne pendant une minute, parfois rien ne fonctionne.
J'ai donc analysé les trames : tout est OK, jusqu'au PB80 qui répond correctement. Le problème vient après la réponse du PB80 : le modem renvoie bien la réponse mais il y a une trame d'un octet qui s'ajoute comme s'il envoyait une sorte de "fin de message". Il y a donc une trame reçue en plus qui perturbe mon READ_VAR, qui tombe en code 16#07 (problème lors de l'envoi à la cible).
Les modems qui posent problème sont des Alcatel ER BdB 19/25 avec peu de documentation et beaucoup de paramétrage, mais j'ai déjà testé à peu près toutes les combinaisons logiques.
Pour info, la communication fonctionne très bien avec le M580 avec des modems moins "complexes" tels que des ETIC IRC485 que nous avons également sur site.
J'ai l'impression que le PB400 ignorait ces trames supplémentaires auparavant car il n'a aucune erreur et il lit bien les informations renvoyées par les PB80 malgré cela. Je ne sais pas s'il y a un moyen d'ignorer cette trame supplémentaire, ça serait bien mieux que de changer tous les modems sur place..
Si quelqu'un a une idée, je suis preneur, même si j'ai un doute vu le matériel utilisé !
Bonne journée.
Je n'ai plus trop d'idée, je tente ma chance sur ce forum au cas où quelqu'un aurait déjà rencontré ce problème, ou aurait une idée.
Le but est de remplacer un April PB400 par un M580.
Sur site, le PB400 communique avec un modem maître en RS232. Le modem renvoie les trames sur un bus de communication en 4 fils sur plusieurs modems esclaves reliés chacun à un PB80.
J'ai réalisé une installation de test pour vérifier que ma communication fonctionnait bien. En mettant un PB400 tout fonctionne parfaitement, mais dès que je mets le M580 (via une NOM0200.2 V1.6), j'ai des erreurs un peu aléatoirement : certaines trames passent, d'autres non, parfois tout fonctionne pendant une minute, parfois rien ne fonctionne.
J'ai donc analysé les trames : tout est OK, jusqu'au PB80 qui répond correctement. Le problème vient après la réponse du PB80 : le modem renvoie bien la réponse mais il y a une trame d'un octet qui s'ajoute comme s'il envoyait une sorte de "fin de message". Il y a donc une trame reçue en plus qui perturbe mon READ_VAR, qui tombe en code 16#07 (problème lors de l'envoi à la cible).
Les modems qui posent problème sont des Alcatel ER BdB 19/25 avec peu de documentation et beaucoup de paramétrage, mais j'ai déjà testé à peu près toutes les combinaisons logiques.
Pour info, la communication fonctionne très bien avec le M580 avec des modems moins "complexes" tels que des ETIC IRC485 que nous avons également sur site.
J'ai l'impression que le PB400 ignorait ces trames supplémentaires auparavant car il n'a aucune erreur et il lit bien les informations renvoyées par les PB80 malgré cela. Je ne sais pas s'il y a un moyen d'ignorer cette trame supplémentaire, ça serait bien mieux que de changer tous les modems sur place..
Si quelqu'un a une idée, je suis preneur, même si j'ai un doute vu le matériel utilisé !
Bonne journée.