Str_Xx - Sices DST2600 Mode D'emploi

Masquer les pouces Voir aussi pour DST2600:
Table des Matières

Publicité

représente donc une valeur négative. Pour trouver la valeur réelle, il faut :
a) Multiplier le registre supérieur par (2^16)  4294836224
b) Additionner le registre inférieur
c) Le représenter en hex
d) Inverser tous les bits
e) Additionner un
f) Représenter en décimal
g) Diviser par deux élevé au nombre de bit déc.
h) Appliquer le signe négatif
Le couple de registres 31072 (inférieur) et 65534 (supérieur) représentent donc la valeur
-100000.
2) SL_00 (aucun bit décimal).
Supposons de lire la valeur 34464 dans le registre d'indice inférieur et 1 dans le registre
d'indice supérieur. Comme on peut le voir, le bit 15 du registre supérieur est 0 et
représente donc une valeur positive. Pour trouver la valeur réelle, il faut :
a) Multiplier le registre supérieur par (2^16)  65536
b) Additionner le registre inférieur
c) Diviser par deux élevé au nombre de bits en décimal
Donc, la paire de registres 34464 (inférieur) et 1 (supérieur) représentent la valeur
100000.
3) SL_08 (huit bits en décimal).
Supposons de lire la valeur 31072 dans le registre d'indice inférieur et 65534 dans le
registre d'indice supérieur. Comme on peut le voir, le bit 15 du registre supérieur est 1 et
représente donc une valeur négative. Pour trouver la valeur réelle, il faut :
a) Multiplier le registre supérieur par (2^16)  4294836224
b) Additionner le registre inférieur
c) Le représenter en hex
d) Inverser tous les bits
e) Additionner un
f) Représenter en décimal
g) Diviser par deux élevé au nombre de bit déc.
h) Appliquer le signe négatif
Le couple de registres 31072 (inférieur) et 65534 (supérieur) représentent donc la valeur
-390,625.
4) SL_08 (huit bits en décimal).
Supposons de lire la valeur 34464 dans le registre d'indice inférieur et 1 dans le registre
d'indice supérieur. Comme on peut le voir, le bit 15 du registre supérieur est 0 et
représente donc une valeur positive. Pour trouver la valeur réelle, il faut :
a) Multiplier le registre supérieur par (2^16)  65536
b) Additionner le registre inférieur
c) Diviser par deux élevé au nombre de bits en décimal
Donc, la paire de registres 34464 (inférieur) et 1 (supérieur) représentent la valeur
390,625.
6.2.6

STR_XX

Ce code indique une information de type chaîne ASCII. Les informations peuvent occuper un
ou plusieurs registres (contigus). Le champ "XX" indique le nombre de registres.
Les chaînes sont transférées à travers MODBUS en mémorisant deux caractères pour
chaque registre et en utilisant un certain nombre de registres consécutifs. Un exemple de
chaîne peut être le nom de l'installation qui est transférée sur certains dispositifs en utilisant
les "holding registers" 40829-40840 (et qui sera donc identifiée au format STR_12). Le nom
de l'installation est composé donc au maximum de 24 caractères (12 registres par deux
caractères). Tenir compte cependant que l'unité terminale des chaînes qui est le caractère
ASCII 00 doit être également présente. Par exemple, supposons que le nom de l'installation
soit "NOUVELLE INSTALLATION". Elle sera ainsi transférée :
26
 4294867296
 FFFE7960H  11111111111111100111100101100000
 0001869FH  00000000000000011000011010011111
 000186A0H  00000000000000011000011010100000
 100000
 4294867296
 FFFE7960H  11111111111111100111100101100000
 0001869FH  00000000000000011000011010011111
 000186A0H  00000000000000011000011010100000
 100000
Communication en série et protocole SMS
 100000
 100000 / (2^0) = 100000
 -100000
 100000 / (2^0) = 100000
 100000
 100000 / (2^8) = 390,625
 -390,625
 100000 / (2^8) = 390,625

Publicité

Table des Matières
loading

Table des Matières