Valeurs Modbus erronées sur Weintek : décalages de registres, types et ordre des mots

Une température de 25,0 apparaît comme 250. Une valeur négative devient un nombre supérieur à 65 000. Une valeur flottante se transforme en un entier immense. Ces symptômes peuvent survenir alors que la communication Modbus fonctionne.

Table des matières

La vraie question : quels octets sont arrivés et comment l'IHM les a-t-elle interprétés ?

Commencez par l'adresse, puis type, ordre des mots et échelle. Tout changer ensemble peut créer une valeur crédible sans résoudre l'erreur.

Guide pour projets EasyBuilder Pro lisant Modbus TCP ou RTU. Types d'adresses et conversions dépendent du pilote et de sa version.

Lire les registres bruts avant de modifier l'affichage

Sauvegardez le projet IHM puis choisissez une valeur vérifiable indépendamment.

Pour cette valeur, relevez :

  • Appareil serveur, station ou identifiant d'unité.
  • Entrée de table de registres et convention d'adresse.
  • Registre d'entrée ou holding.
  • Longueur, type, ordre des mots et échelle des unités.
  • Adresse d'objet IHM et format numérique.

Si possible, lisez chaque registre 16 bits en hexadécimal par objets provisoires en lecture seule. Comparez au moniteur du serveur ou à une réponse capturée. Tenez compte des conversions déjà actives dans le pilote.

N'écrivez aucun motif d'essai dans les consignes ou sorties actives. Utilisez un appareil isolé ou une zone de test réservée.

Si l'objet disparaît ou signale une erreur de communication, rétablissez d'abord la lecture. Le guide sur la disparition d'objets IHM Weintek pendant la communication Modbus traite ce problème.

Le registre 40001 et l'adresse 0 peuvent désigner le même emplacement

Les adresses des requêtes Modbus commencent à zéro. Le fabricant définit leur correspondance avec ses variables. Le numéro du manuel n'est donc pas forcément celui à entrer dans l'IHM. Protocole d'application Modbus V1.1b3, sections 4.3–4.4.

Pour des références classiques de registres holding :

DescriptionPremier registre holdingOnzième registre holding
Référence conventionnelle4000140011
Adresse de protocole à base zéro010
Indice de registre à base un111

Exemple seulement, pas règle universelle. Certains manuels donnent l'adresse brute du protocole, parfois en hexadécimal.

Le guide MODBUS TCP/IP standard Weintek liste les adresses 3x et 4x à partir de 1. Vérifiez la convention du pilote avant de reprendre un décalage d'un autre client. Guide Weintek MODBUS TCP/IP, pages 1–2.

Un décalage d'un registre peut rendre des données valides mais voisines, voire mélanger deux valeurs 32 bits. Réponse réussie ne prouve pas l'adresse.

Vérifiez la zone : fonction 03 pour holding, fonction 04 pour input. Le seul numéro ne suffit pas. 

Besoin d'un variateur Altivar de remplacement ?

Parcourez notre sélection de disques durs Altivar d'origine neufs pour vos projets de maintenance, de dépannage et de remplacement.

Schneider ATV320 (1)

Les mêmes bits peuvent représenter des nombres différents

Un registre Modbus contient 16 bits. L'application décide s'il représente un entier signé/non signé, BCD, indicateurs ou partie d'une valeur.

Ces exemples calculés montrent l'importance du format :

Motif brutInterprétationRésultat
0xFF9CEntier 16 bits non signé65436
0xFF9CEntier 16 bits signé−100
0x1234Entier binaire non signé4660
0x1234BCD compacté1234
0x41480000Flottant IEEE 754 sur 32 bits12.5
0x41480000Entier 32 bits non signé1095237632

Les deux dernières lignes ont les mêmes 32 bits. Changer les décimales ne transforme pas l'entier en flottant.

Si les positifs sont bons mais les négatifs énormes, examinez le signe. Un compteur erroné après 32 767 suggère un entier 16 bits signé.

Pour 32 bits dans deux registres 16 bits, vérifiez les deux et l'adresse initiale. Le format 32 bits ne déplace pas l'adresse et ne valide pas le second registre.

Ordre des mots et des octets : deux vérifications

Modbus envoie l'octet fort d'un registre 16 bits en premier. Cela ne définit pas l'ordre des deux mots d'une valeur 32 bits. Suivez la table du serveur. 

Exemple : le flottant 12,5 possède le motif IEEE 754 0x41480000:

Disposition des registres du serveurRegister NRegister N+1
Mot de poids fort en premier0x41480x0000
Mot de poids faible en premier0x00000x4148

L'IHM doit assembler les mots dans le bon motif avant lecture flottante.

Pour distinguer les permutations, nommez quatre octets A B C D :

OpérationSéquence d'octets obtenue
Sans permutationA B C D
Permuter les deux mots de 16 bitsC D A B
Permuter les octets dans chaque motB A D C
Effectuer les deux permutationsD C B A

« Swap » est trop vague dans un rapport. Notez l'opération exacte et son emplacement.

Où Weintek gère la conversion

Le guide TCP/IP décrit System Parameter Settings → Device Properties → Conversion pour les adresses compatibles, ainsi que 5x comme accès holding avec double permutation des mots. 5x est une convention du pilote, pas une nouvelle zone Modbus. 

Le guide RTU/RTU-over-TCP prescrit de sélectionner 3x_Double ou 4x_Double pour convertir ABCD → CDAB. Suivez le pilote réellement installé. 

Avant conversion, examinez macros et transferts existants. Deux permutations peuvent s'annuler. Un changement global peut casser des objets corrects.

Trouvez l'automate programmable adapté à votre système

Découvrez de nouveaux processeurs PLC, modules d'E/S, alimentations et unités de communication originaux pour vos projets de maintenance et d'automatisation.

schneider PLC

Mettre à l'échelle après décodage correct

Si l'appareil donne la température en dixièmes de degré comme entier signé, une valeur brute 253 représente 25,3 °C.

C'est différent de la transmission directe d'un flottant 25.3.

Suivez la valeur dans le projet :

Registres serveur → nombre décodé → conversion d'unités → affichage

Déterminez chaque étape. Si le PLC convertit déjà en unités physiques et que l'IHM divise encore, l'affichage sera faux même avec adresses et mots corrects.

Décimales, échelle linéaire et conversion d'unités doivent être justifiées. Ne les réglez pas jusqu'à obtenir un seul chiffre plausible.

Comparez plusieurs points : zéro ne révèle pas un facteur dix et un point moyen peut masquer un mauvais décalage.

Mettez à niveau ou remplacez votre IHM

Trouvez des panneaux IHM compatibles pour les modèles abandonnés, les mises à niveau de machines et le remplacement des interfaces opérateur.

Schneider HMI

Questions fréquemment posées

Non. Vérifiez si le manuel donne une référence classique, un indice à base un ou une adresse protocole à base zéro. Contrôlez ensuite la conversion du pilote. Soustraire un deux fois crée une erreur.

Une valeur 32 bits exige deux registres du même nombre, assemblés dans le bon ordre et interprétés avec le bon type. Comparez les mots bruts avant toute échelle.

Non. Chez Weintek, 5x est un accès holding avec permutation des mots et lecture fonction 03. Il change l'interprétation, pas la zone. 

Vérifiez les fonctions d'écriture acceptées, l'adresse et les droits. Le pilote TCP Weintek emploie la fonction 16 pour 4x les écritures, et la fonction 06 pour 6x l'écriture d'un seul registre. Les exigences d'écriture peuvent différer de la lecture.

Oui. Un registre voisin peut contenir une mesure proche et une mauvaise conversion paraître crédible. Comparez plusieurs valeurs connues, adresses, mots bruts et unités. Une valeur plausible ne valide pas le mappage.

Équipez vos projets avec des IHM Omron, Weintek et Proface neuves et originales, disponibles en stock !

Vérifier la correction au-delà d'un objet

Une fois les mots bruts et la valeur corrects, ne modifiez que le réglage identifié dans une copie contrôlée.

Contrôlez valeurs positives, négatives si utiles, fractionnaires et limites. Après changement global, revérifiez les objets du même pilote.

Puis vérifiez alarmes, tendances, recettes et macros. Un affichage corrigé ne garantit pas les autres fonctions lisant les mêmes registres.

Validez l'écriture à part. Lire correctement ne confirme ni adresse d'écriture, encodage ou code fonction. Testez les commandes uniquement selon procédure validée avec sauvegarde et restauration.

Pour envisager le remplacement de l'IHM, fournissez Kwoco le modèle actuel, interfaces requises et besoins du projet. Des nombres incorrects ne prouvent pas une panne matérielle.

Contactez-nous

Remplissez simplement votre nom, votre adresse e-mail et une brève description de votre demande dans ce formulaire. Nous vous contacterons dans les 24 heures.

Produits en vente à chaud

Unité centrale Omron CJ2M-CPU32

Fournisseur de PLC Omron CJ1W-PA202 en Chine

Servomoteur Mitsubishi série MR-JE 400w MR-JE-40A

Besoin d'une rencontre rapide ?

Partagez votre modèle ou vos spécifications et notre équipe vous aidera à trouver rapidement la solution idéale.

Ces sujets pourraient également vous intéresser

Demander un devis

*Nous respectons votre vie privée et garantissons la confidentialité de vos informations.