8.2.1.
Format du paquet ModBus
ADRESSE
1 octet
CLIENT
CODE DE LA
1 octet
FONCTION
DONNÉES
N octets
CRC
2 octets
TEMPS MORT
Temps requis pour
transmettre 3,5
octets
www.fanox.com
Chaque dispositif sur un bus de communication doit
disposer d'une adresse unique sinon, les deux unités
pourraient répondre en même temps au même ordre.
Tous les ports du relais utiliseront cette adresse qui peut
être programmée sur une valeur de 1 à 247. Lorsque le
maître transmet un cadre avec l'adresse de l'esclave sur
0, cela signifie qu'il s'agit d'un Broadcast. Tous les
esclaves sur le bus de communications réaliseront
l'action demandée mais aucun ne répondra au maître.
Le Broadcast ne sera accepté que pour des écritures
car il est illogique de donner un ordre de lecture en
Broadcast si personne ne va répondre à cet ordre.
Il s'agit de l'un des codes de fonction pris en charge par
l'équipement. Dans ce cas, les seuls codes de fonction
pris en charge seront le 3 pour la lecture et le 16 pour
les écritures. Lorsque l'esclave doit répondre avec une
exception à l'un de ces cadres, il l'indique en plaçant sur
1 le bit le plus lourd de la fonction correspondante. Ainsi,
une exception pour la fonction 3, sera indiquée avec un
83 comme code de fonction et une exception pour la
fonction 16 ou 0x10 sur l'hexadécimale, sera indiquée
avec un 0x90.
Cette partie comprend un nombre variable d'octets en
fonction du code de la fonction. Elle peut comprendre :
les
adresses,
les
longueurs
ajustements, les commandes ou codes d'exception
envoyés par le client.
Code de contrôle à deux octets. ModBUS/RTU
comprend un CRC de 16 bits sur chaque cadre pour la
détection des erreurs. Si l'esclave détecte un cadre
erroné, sur la base d'un CRC incorrect, il ne réalisera
aucune action, et ne répondra pas au maître. La
disposition du CRC est LSB-MSB.
Un cadre est dit « terminé » lorsque rien n'est reçu sur la
ligne pendant une période de 3,5 octets. C'est-à-dire :
15 ms à 2 400 bps
2 ms à 19 200 bps
...etc.
Rev.19
de
données,
les
251/301