Modbus RTU

darksoul07 Messages postés 19 Date d'inscription dimanche 8 juin 2003 Statut Membre Dernière intervention 11 avril 2008 - 24 juin 2004 à 13:46
ludo98 Messages postés 2 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 8 mars 2005 - 8 mars 2005 à 12:49
Slt voila mon problème :
je recoi des trames sur le réseau après avoir décomposer la trame j arrive a détecter ou se trouve mes températures mais je n arrive pas a les convertir en valeur décimale. mes températures peuvent etre négative et avec 3 chiffres après la virgule.

le protocole utilisé est modbus RTU

si quelqu un a un site ou de la doc sur ce protocol ou sur le codage des données

vla quelque exemples :
1°C 3F 80 00 00
2°C 40 00 00 00
3°C 40 40 00 00
0.001 3A 83 12 6F
-0.001 BA 83 12 6F
-9999 C7 C3 4F 80
9999 47 C3 4F 80
10 41 20 00 00
20 41 A0 00 00
21 41 A8 00 00

MERCI D AVANCE C URGENT POUR MON BOULOT

^^^§^^^

2 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
25 juin 2004 à 00:42
il s'agit simplement de la représentation binaire sur 32 bits d'un flottant selon la norme IEEE 754 (si je me gourre pas)

si tu as ta valeur dans un long (32 bits)ex : long val 0x3A83126F;> float f = *((float*)&val);

et f = 0.001;

attention lors de l'affectation des 4 octets de val au poids fort et poids faible.
0
ludo98 Messages postés 2 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 8 mars 2005
8 mars 2005 à 12:49
salut, je travaille sur le protocol Modbus et j'aurais aimé savoir s'il était possible d'avoir des indfos sur la conception de celu-ci en C Merci d'avance
0