13.5 Écriture registres multiples (0x10)
Cette fonction est utilisée pour écrire un bloc de registres
d'exploitation contigus dans l'esclave. Les adresses de registre
commencent par zéro, ce qui signifie qu'un registre numéroté 100
est adressé comme 99.
Exemple de requête de maître à esclave
Champ
Adresse
Code fonction
Adresse début HI
Adresse début LO
Quantité HI
Quantité LO
Compte d'octets
Registre 33 HI
Registre 33 LO
Registre 34 HI
Registre 34 LO
Dans la requête, l'esclave avec l'adresse 1 est interrogé pour
écrire la valeur 0x0001 dans le registre à l'adresse 0x0020 et la
valeur 0xB0B0 dans le registre à l'adresse 0x0021.
Exemple de réponse d'esclave à maître
Champ
Adresse
Code fonction
Adresse début HI
Adresse début LO
Quantité écrite HI
Quantité écrite LO
La réponse renvoie le code fonction, en commençant par
l'adresse et la quantité de registres écrits.
13.6 Diagnostics (0x08)
Cette fonction fournit un test pour vérifier le système de commu-
nication entre le maître et l'esclave Grundfos. Elle contient un
sous-code d'un seul octet pour identifier le test à effectuer.
Les sous-codes suivants sont pris en charge :
Sous-
Nom
code
Return query data
Les données de cette requête doivent être en écho dans
0x00
la réponse. La réponse doit être identique à la requête,
ainsi cette fonction est souvent utilisée pour vérifier la
communication Modbus.
Restart communications
0x01
Tous les compteurs de communication sont remis à zéro
et le dispositif est redémarré.
Return diagnostics register
0x02
Retourne au registre diagnostics 16 bits. Voir para-
graphe
13.7 Interprétation du registre
Force Listen Only
Force le dispositif en mode Listen Only (écoute seule).
Ceci rend effectivement silencieux le dispositif, ce qui le
0x04
rend incapable de communiquer sur le réseau. Pour
remettre le dispositif en mode normal, une commande
"Restart communications" (code 0x08, sous-code 0x01)
doit être émise.
Clear counters and diagnostics register
Remet tous les compteurs et le registre diagnostics à
0x0A
zéro. Ceux-ci sont aussi effacés lors de la mise sous ten-
sion/du redémarrage.
Return bus message count
0x0B
Retourne le nombre de messages détectés par l'esclave.
Return bus CRC error count
0x0C
Retourne le nombre d'erreurs CRC dans l'esclave.
48
Valeur
0x01
0x10
0x00
0x20
0x00
0x02
0x04
Exemple de requête de maître à esclave
0x00
0x01
0xB0
0xB0
La réponse est identique à la demande.
Valeur
Exemple de réponse d'esclave à maître
0x01
0x10
0x00
0x20
0x00
0x02
13.7 Interprétation du registre diagnostics
Le registre diagnostics est interprété de la manière suivante :
diagnostics.
La valeur de bit 1 signifie vrai, sauf indication contraire. Le
registre diagnostics est lu à l'aide du code fonction 0x08 et du
sous-code 0x02.
Sous-
Nom
code
Return bus exception count
0x0D
Retourne le nombre de réponses d'exception Modbus
que l'esclave a transmis.
Return slave message count
0x0E
Retourne le nombre de messages traités par l'esclave.
Return slave no response count
0x0F
Retourne le nombre de messages pour lesquels
l'esclave n'a pas transmis de réponse.
Return bus character overrun count
0x12
Retourne le nombre de dépassements dans l'esclave.
Clear overrun counter
0x14
Efface le compteur de dépassement. Celui-ci est aussi
effacé lors de la mise sous tension/du redémarrage.
Champ
Adresse
Code fonction
Sous-code
Données
Données
Champ
Adresse
Code fonction
Sous-code
Données
Données
Bit Description
Défaut de communication avec le groupe de surpression
0
Grundfos.
L'autotest EEPROM a échoué. Le test est effectué au
1
démarrage du groupe.
Le groupe de surpression Grundfos n'est pas pris en
2
charge.
Le décalage adresse Modbus est différent de la valeur par
3
défaut, c'est-à-dire différent de zéro.
Avec la vitesse de transmission du Modbus définie par
4
logiciel.
5
RÉSERVÉ
6
RÉSERVÉ
7
RÉSERVÉ
8
RÉSERVÉ
9
RÉSERVÉ
10 RÉSERVÉ
11 RÉSERVÉ
12 RÉSERVÉ
13 RÉSERVÉ
14 RÉSERVÉ
15 RÉSERVÉ
Valeur
0x01
0x08
0x00
0xAB
0xCD
Valeur
0x01
0x08
0x00
0xAB
0xCD