Comment transformer les données Brut Modbus en données utilisable et compréhensible ?
De nombreux modules ADAM issuent de la gamme des 4000 ou 6000 d'Advantech peuvent être compatibles avec Modbus que ce soit Modbus/TCP ou Modbus/RTU. Cela dépend de si vous utilisez un module ADAM Ethernet ou module ADAM série.
Dans notre cas nous souhaitons donc transformer les données en provenance du protocole Modbus (données brut) issue d'un module ADAM, vers des données compréhensibles et utilisables par un opérateur, technicien ou ingénieur par exemple. La formule de calcul concerne les entrées analogiques et permet de décrypter les valeurs de courant, tension et température.
Prenons un exemple de départ pour expliquer notre problématique.
Sur la capture d'écran ci-dessus on remarque que la valeur Modbus de l'entrées analogique AI0 est égale à "BF1D" en héxadécimal. Nous souhaitons donc convertire cette donnée en un résultat physique raisonnablement compréhensible par un être humain.
La résolution de l'entrée analofique est de 16 bits comme sur la majorité des modules ADAM. Donc les valeurs des données brut (Raw data) issue de Modbus seront donc comprisent entre 0 et 65535 (soit 2^16). Donc en premier lieu il convient de convertir "BF1D" du format Hexa vers décimal. Ce qui donne "48925". L'input range ou variation de données est de +/-10V
Obtenir la bonne donnée lisible d'un module ADAM Modbus
La formule pour obtenir le courant est :
Courant = (Données Modbus brut en décimal) / 65535 x (les variations de données 'Input Range) + (la plus basse variation de données). Ce qui donne donc la formule appliquée suivante : 48925/65535 * (10-(-10))+ (-10)=4.931V
Donc dans votre cas le courant est de 4.931V.