Veuillez consulter le document : SDI-12 : A Serial Digital Interface Standard for Microprocessor-Based Sensors, Version 1.3 du 18 juillet 2005, préparée par le Groupe de soutien du protocole SDI-12 (Comité technique), pour une description complète du protocole SDI-12. (http://www.sdi-12.org/).
Les commandes suivantes sont prises en charge :
REMARQUE :
Dans toutes les commandes SDI-12 suivantes, 'a' = l'adresse du dispositif SDI-12 attribué à l'AquaVent,
5.1 Commande Activer validation : a!
Cette commande est utilisée pour s'assurer que l'AquaVent répond au maître SDI-12. Une commande/réponse typique serait : 1 0 ! 2 0<CR><LF> où les '0' représentent l'adresse du dispositif SDI-12 de l'AquaVent et <CR> représente un retour chariot (Hex 0D) et <LF> représente un saut de ligne (Hex 0A). Toutes les réponses d'un AquaVent sont terminées par <CR><LF>. Toutes les commandes du maître SDI-12 se terminent par un point d'exclamation '!'.
5.2 Commande Demande d'adresse de capteur : ?!
L'utilisation d'un point d'interrogation ( ?) comme caractère d'adresse entraîne la réponse de l'AquaVent avec la commande 'a!' de reconnaissance active, où 'a' représente l'adresse de l'AquaVent. Une commande/réponse typique serait : 1 ? ! 2 0<CR><LF>. Les caractères en gras sont envoyés à l'AquaVent ; les caractères normaux sont la réponse de l'AquaVent. Dans ce cas, l'adresse de l'AquaVent est "0". Cette commande est utile pour déterminer l'adresse de l'AquaVent, s'il est le seul enregistreur de données connecté au réseau SDI-12.
5.3 Commande Envoyer l'identification : aI!
AquaVent 5 Tête de puits
Cette commande est utilisée pour demander aux enregistreurs AquaVent leur niveau de compatibilité SDI-12, le numéro de modèle et le numéro de version du micrologiciel. Une commande/réponse typique serait : 0I ! 013SOLINST M20 V1 1.000 1017687<CR><LF> où le premier "0" est l'adresse de l'Enregistreur AquaVent, "13" représente le support du protocole SDI-12 V1. 3, "SOLINST " (8 caractères) identifie le fabricant de l'AquaVent Logger, "M20 " (6 caractères) définit le numéro de modèle de l'AquaVent Logger, "V1 " (3 caractères) est l'identifiant matériel, "1.000" spécifie la version actuelle du firmware, et "1017687" représente le numéro de série de l'AquaVent Logger.
Tête de puits AquaVent
Cette commande est utilisée pour demander aux enregistreurs AquaVent leur niveau de compatibilité SDI-12, leur numéro de modèle et leur numéro de version du micrologiciel. Une commande/réponse typique serait : 1 0I ! 2 013SOLINST M20 10 1.000 1017687<CR><LF> où le premier "0" est l'adresse de l'AquaVent, "13" représente le support du protocole SDI-12 V1.3, "SOLINST " identifie le fabricant de l'AquaVent, "M20" définit le numéro de modèle de l'enregistreur AquaVent, "10" est l'identifiant matériel, "1.000" spécifie la version actuelle du micrologiciel, et "1017687" représente le numéro de série de l'enregistreur AquaVent.
5.4 Commande Modifier l'adresse du capteur : aAb!
Cette commande N'EST PAS prise en charge par le système Solinst AquaVent (voir Section 3.1).
5.5 Commande Démarrer les mesures : aM!
Cette commande indique à l'AquaVent de prendre une mesure. Cependant, la mesure n'est pas renvoyée après cette commande. Au lieu de cela, le temps et le nombre de mesures que l'on peut attendre seront répondues. Par exemple : 1 0M ! 2 00102<CR><LF> où le premier "0" est l'adresse de l'AquaVent, les trois chiffres suivants " 3 010 4 " représentent le temps en secondes qu'il faudra à l'AquaVent pour prendre les mesures, et le dernier "2" indique combien de mesures seront renvoyées. L'AquaVent Solinst renverra une mesure de température et de niveau qui seront toujours prêtes à être lues après le temps spécifié, après quoi le maître SDI-12 pourra émettre la commande d'envoi de données 5 0D0 ! 6 pour récupérer les données de mesure. Les autres commandes de début de mesure telles que aM1 à aM9 sont réservées pour une utilisation future.
5.6 Lancer la commande de mesure avec la somme de contrôle : aMC !
REMARQUE :
La somme de contrôle est une forme de test redondant utilisée pour vérifier s'il existe une erreur dans les données.
Cette commande est identique à la commande aM ! à l'exception du fait qu'une somme de contrôle à trois caractères est renvoyée avant le <CR><LF> dans le cadre de la réponse à la commande Send Data. Les commandes aMC1 à aMC9 sont réservées pour une utilisation future.
5.7 Commande Envoyer les données : aD0!
Cette commande permet de récupérer des groupes de données de l'AquaVent. Une commande aD0! est émise par le maître après une commande M, MC, C, CC ou V. L'AquaVent répond en envoyant les données. Pour un Solinst AquaVent, cela comprend actuellement deux données : la mesure de la température et la mesure du niveau. Une commande/réponse typique est :
REMARQUE :
Lorsque l'AquaVent est en mode SDI-12, les unités actuellement utilisées ne sont pas rapportées au SDI-12 maître ; il est toutefois possible de changer les unités de niveau en utilisant le logiciel Solinst Levelogger pour PC (voir Section 3.1).
0 1 D0 ! 2 0+24.2981+0.35212<CR><LF> où la température est le "+24.2981" en degrés Celsius et le niveau est le "+0.35212" en mètres. Il est possible de modifier les unités de niveau à l'aide du logiciel Levelogger, mais les unités réelles utilisées ne sont pas signalées lorsque l'AquaVent est en mode SDI-12.
En réponse à une demande de somme de contrôle, c'est-à-dire MC, CC, une commande/réponse typique est : 1 0D0 ! 2 0+24.2981+0.35212MQ_<CR><LF> où la température et le niveau sont les mêmes que précédemment et le "MQ_" final est la somme de contrôle. Reportez-vous à la spécification SDI-12 pour plus de détails sur la génération de la somme de contrôle. Pour les commandes M et C, si une mesure ne peut être obtenue, la commande D renvoie 0000<CR><LF> pour indiquer que la mesure n'a pas pu être obtenue. Les commandes aD1 à aD9 sont réservées pour une utilisation future.
5.8 Commencer des mesures simultanées : aC!
Cette commande est similaire à la commande Démarrer les mesures, sauf que des mesures simultanées sont effectuées. Comme la Commande Démarrer les mesures, une commande Envoyer les données est nécessaire pour récupérer les données. Par exemple : 0C!000302<CR><LF>. La réponse indique que deux mesures (température et pression) sont disponibles après 3 secondes. Une commande 0D0! est ensuite émise pour lire ces valeurs de l'AquaVent. Les commandes aC1 à aC9 sont réservées pour une utilisation future.
5.9 Commande Démarrer les mesures simultanées et demander une somme de contrôle : aCC!
Cette commande est similaire à la commande Start Concurrent Measurement avec l'ajout d'une somme de contrôle. Par exemple : 1 0CC ! 2 000302<CR><LF> répondrait ensuite, après 3 secondes, à la commande aD0 ! comme suit :
0D0!0+24.6038+0.34513L<DEL>j<CR><LF>. Où « L<DEL>j » est la somme de contrôle pour les deux valeurs de mesure « +24.6038 » et « 0.34513 ». Les commandes aCC1 à aCC9 sont réservées pour une utilisation future.
5.10 Commande Procéder au test du système : aV!
Cette commande demande à la tête de puits SPX Wellhead de retourner un code de vérification (autodiagnostic) en réponse à une commande aD0! subséquente. Dans ce cas, la SPX Wellhead renvoie un temps non nul parce que l'autodiagnostic vérifie toutes les sommes de contrôle internes de la mémoire et ces opérations prennent environ 13 secondes. Une session typique apparaît comme suit :
0V ! 1 00131 2 <CR><LF> indique qu'une lecture d'état sera prête dans environ 13 secondes.
0<CR><LF> est une demande de service de la tête de puits SPX 1 dans les 13 2 secondes pour indiquer que les opérations de TBI sont terminées et que le code de vérification est disponible.
0D0!0+000 est la commande Envoyer les données émises par le SDI-12 maître pour obtenir le code de vérification BIT « +000 » qui indique qu'aucune anomalie n'a été détectée. Les divers codes d'anomalie sont indiqués dans le Table 5-1. Toutes les représentations décimales des anomalies individuelles sont additionnées pour obtenir le code de vérification BIT. Un peu bit inclus dans une certaine position de bit signifie le test correspondant a échoué.
Position du bit de code | Représentation décimale | Signification du test |
---|---|---|
0 | 1 | Lecture/écriture enregistreur AquaVent |
1 | 2 | SPX Wellhead Test de la mémoire FRAM |
2 | 4 | SPX Wellhead Test de la somme de contrôle de la mémoire FRAM |
3 | 8 | S.O. |
4 | 16 | S.O. |
5 | 32 | S.O. |
6 | 64 | S.O. |
7 | 128 | S.O. |
Tableau 5-1 : Codes d'anomalie de vérification BIT