4.5 Codes d'état et de diagnostic de l'AquaVent MODBUS

4.5.1 État de l'appareil

Il existe deux types de bits d'état d'un appareil. Les deux types de bits restent dans l'état effacé pendant le fonctionnement normal, ce qui résulte en une valeur de registre de zéro. Les bits de type « état » indiquent simplement une condition en cours et sont effacés uniquement lorsque cette condition est résolue. Les bits de type « événement » sont définis par un événement et demeurent définis jusqu'à ce que le client écrive dans le registre, efface le bit comme un moyen d'acquitter l'événement. Il est suggéré d'utiliser la fonction MODBUS 0x16 (Masquer un registre d'écriture). Gardez à l'esprit qu'un bit « événement » ne représente l'historique de l'appareil que depuis la dernière fois qu'il a été effacé.

Certains événements sont normaux et nécessitent simplement une confirmation pour les effacer. Ces bits sont appelés des « bits de confirmation d'événement ». D'autres événements nécessitent une intervention, qui est activée lorsque vous effacez le bit. Ces bits sont appelés des « bits de nouvelle tentative d'événement ».

Table des bits d'état des appareils :

Bit Type Description
0 Evénement -Ack. Arrêt suivi d'un rallumage détecté (événement de mise sous tension.
1 État La configuration des communications n'est pas synchronisée avec la sonde.
2   Réservé
3   Réservé
4   Réservé
5   Réservé
6   Réservé
7 État Tests BIT en cours - quelques registres ne sont pas disponibles
8-15   Réservé

 

4.5.2 Tests de diagnostic

Les diagnostics sont effectués sur l'enregistreur AquaVent en écrivant toutes les valeurs non nulles dans les registres « Vecteur des tests de la sonde ». Les bits qui sont définis dans les registres « Vecteur des tests de la sonde » déterminent quelles routines seront exécutées. À la fin, les résultats seront disponibles pour la lecture dans les registres « Résultat des tests de la sonde » où les mêmes positions de bits sont utilisées, et où un bit défini indique un test qui a échoué, tandis qu'un bit effacé indique que le test n'a pas été sélectionné ou qu'il a réussi.

REMARQUE :

Au cours de ces tests, l'enregistreur AquaVent n'est pas disponible pour d'autres fonctions.

Certains de ces tests prennent un certain temps à traiter et, tant qu'ils ne sont pas terminés, toute demande MODBUS impliquant l'enregistreur AquaVent génère une réponse d'exception MODBUS portant le code 1, « Fonction interdite ». Pour éviter cette incertitude, vous pouvez interroger le registre « État de l'appareil » et attendre que le bit « Attente de la finalisation des tests de diagnostic des enregistreurs » soit effacé.

Table des bits Vecteur des tests de la sonde et Résultat des tests de la sonde :

Bit Description du test
0 Test de la tension de la batterie (Bit 0). La tension de la batterie de l'A/D externe sera utilisée pour générer un défaut d'alimentation chaque fois que la tension est inférieure à 3,1V.
1 Programmez le test de somme de contrôle FLASH (Bit 1). La mémoire du programme calculée La somme de contrôle est comparée à une somme de contrôle de 4 octets stockée dans FLASH.
2 Information Test de somme de contrôle FLASH (Bit 2). La mémoire d'informations calculée La somme de contrôle est comparée à une somme de contrôle de 2 octets stockée dans FLASH.
3 Test FRAM (bit 3). Nous allons lire/écrire divers modèles de test sur l'ensemble de la FRAM appareil. Toutes les données de la FRAM sont conservées. LTCG ne testera que des portions de le FRAM.
4 Journalisation du test de mémoire 1 (Bit 4). Les blocs d'octets sont non destructifs écrit/vérifié pour le premier segment de 512 octets de chaque journalisation de 4096 octets page de mémoire pour le périphérique à faible mémoire.
5 Test 2 de la mémoire d'enregistrement (bit 5). Comme 5) sauf que l'appareil de mémoire haute est testé.
6 Test du capteur de température (bit 6). La valeur A/D brute du capteur de température est lue. Si ce relevé se trouve entre 740000H et E50000H, le test est réussi.
7 Test du capteur de pression (Bit 7). La valeur brute A/D du capteur de pression est lue. Si ce la lecture est comprise entre 810000H et B000000H, le test passera.
8 Test de mémoire de journalisation complète (Bit 8). Les blocs d'octets sont non destructifs écrit/vérifié pour toute la plage de mémoire de journalisation. Un test de mémoire complet de tous octets prend généralement environ 5 à 10 secondes, selon la quantité de mémoire de journalisation installée.
9 Réservé
10 Test de somme de contrôle FLASH du bootloader (Bit 10). La mémoire du bootloader calculée La somme de contrôle est comparée à une somme de contrôle de 4 octets stockée dans FLASH.
11- 31 Les bits 11 à 31 sont réservés pour une utilisation future et doivent être mis à "0".

 

4.5.3 Codes de réponse d'exception

Les codes d'exception MODBUS pris en charge sont :

Code Nom Commentaires
Codes standard
0x01 Fonction interdite Code de fonction MODBUS non pris en charge
0x02 Adresse interdite La plage de registre demandée s'étend au-delà de la table des registres pris en charge
0x03 Valeur de données illégale La structure de demande n'est pas valable
0x04 à 0x05 Réservé  
0x06 Appareil esclave occupé La demande ne peut pas être traitée pour l'instant, mais devrait être disponible sous peu. Le client peut essayer à nouveau la demande plus tard.
0x07 à 0x0B Réservé  
Codes étendus Solinst
0x80 Incohérence sur le terrain L'adresse utilisée ne correspond pas au début d'un champ de registre valable ou le comptage d'octets ne correspond pas à la taille du type de données adressées.
0x81 Registre d'écriture seulement Tentative de lecture d'un registre d'écriture seulement
0x83 Réservé  
0x84 Valeur écrite Tentative d'écriture de données qui sont en dehors de la plage valable pour la variable adressée.
0x85 à 0xA4 Réservé  
0xB0 Sonde inconnue Le traducteur de la tête de puits ne reconnaît pas le type de sonde.
0xB1 Chaîne de caractères incorrecte Chaîne de caractères mal formée (Unicode/caractères incomplets/incorrects, terminaison/remplissage incorrect, etc.)
0xB2 Chaîne de caractères longue La chaîne est trop longue pour tenir de façon interne.
0xB3 Sonde expirée La réponse de bus Solinst a expiré
0xB4 CRC mauvaise sonde au retour Erreur de contrôle de redondance cyclique (CRC) du bus Solinst reçue à la tête de puits.
0xB5 CRC mauvaise sonde à l'envoi Erreur de contrôle de redondance cyclique (CRC) du bus Solinst reçue par la sonde (retourne un décalage de BCC de +7).
0xB6 Exception de la sonde Autre anomalie de la sonde Solinst (la sonde retourne un décalage de BCC de +56).

 

obtenez un devis