FR 2724363 A1 19960315 FR 9410444 A 19940824 La présente invention concerne un dispositif de communication bidirectionnelle entre un plongeur subaquatique et son point de rattachement. Lors d'une plongée subaquatique, rien ne permet aux plongeurs, si ce n'est leur sens de l'orientation ou un compas, de connaître précisément la direction ainsi que la distance les séparant de leur lieu de départ ou d'arrivée. De plus lors d'accident de plongée, aucun dispositif d'alerte ne permet aux plongeurs d'avertir d'éventuels accompagnateurs pour qu'ils puissent leur venir en aide. De même, outre les "pétards de rappel" dont l'utilisation est hasardeuse, voire même dangereuse, il n'existe aucun dispositif permettant aux accompagnateurs de rappeler les plongeurs en activités subaquatiques. II va sans dire que ces propos concernent exclusivement les plongeurs non équipés de systèmes phoniques les reliant à la surface. Le dispositif selon l'invention permet de remédier à ces inconvénients car il rassemble dans un même système toutes ces fonctions de confort et de sécurité pouvant intéresser tant les plongeurs amateurs et professionnels, que les écoles de plongée. Ce système consiste, d'une part en un émetteur fixe ou mobile placé au point de départ ou d'arrivée qui peut être un bateau ou tout moyen de locomotion aquatique ou subaquatique de même qu'une base fixe terrestre. D'autre part en un récepteur accompagnant le plongeur, lui indiquant la direction de l'émetteur, la distance qui l'en sépare, et servant de terminal informatique de communication bidirectionnelle. L'émetteur, en plus des caractéristiques citées plus haut, possède une horloge interne afin de pouvoir marquer le début et la fin d'une plongée, une interface série RS-232, de manière à pouvoir être pris en charge par un ordinateur extérieur, stockant tous les éléments de toutes les plongées. II peut envoyer jusqu'à cinq messages différents, dont trois sont programmables par l'utilisateur. L'émetteur possède une alarme sonore, dont de volume est ajustage par logiciel et a une procédure d'auto-diagnostic qui permet de détecter une panne éventuelle sur la carte électronique. Le récepteur, quant à lui, possède une horloge interne ainsi qu'une table de plongée électronique. II peut envoyer jusqu'à cinq messages différents, dont trois sont programmables par l'utilisateur, et différents de ceux du récepteur.ll possède une alarme sonore, et une procédure d'auto-diagnostic qui permet de détecter une panne éventuelle sur la carte électronique. Le récepteur possède aussi un système de détection d'accumulateur faible, ainsi qu'un système d'allumage automatique dès son immersion. L'émetteur comme le récepteur possède la faculté d'utiliser plusieurs langues étrangères, pour afficher leur messages. Description physique Cet émetteur (Planche:1/15) se compose de 5 parties visibles (Fig.:1): e Un boîtier (A) possédant une fenêtre, par laquelle se fait la visualisation du système d'affichage éclairé (B), quand l'appareil est en service. Un interrupteur avec un voyant témoin de fonctionnement (C). e Un clavier extérieur possédant quarante touches alphanumériques afin que le surveillant de plongée puisse programmer et sélectionner la fonction désirée (D) . Trois connecteurs, sur la face arrière, de manière à brancher l'alimentation 12 Volt, le transducteur ultrasonore, et un ordinateur hôte, ainsi qu'un fusible extractible. Un transducteur ultrasonore rayonnant sur une demi sphère, afin de couvrir 360" horizontalement et 1800 verticalement (E). Et une carte électronique à l'intérieur du boîtier contenant (Fig. 2): Un dispositif à microprocesseur (1), se chargeant de la gestion des différents éléments composant l'émetteur, comportant une EPROM dans laquelle se trouve le programme de gestion, et une mémoire vive pour le stockage des données. Une mémoire EEPROM sérielle 12C, de manière à pouvoir conserver des données malgré les coupures de courant. Une interface d'émission ultrasonore de puissance (2). Une interface de réception et de démodulation (3). Une interface pour le clavier (4). Une interface pour l'affichage (5). Une interface pour le signal d'alarme (6). Une interface série, RS232 (7). D'autre part en un récepteur (Planche 2/15), se décomposant en quatre parties visibles: (Fig. 3): Un boîtier étanche pour son immersion, (A) possédant une fenêtre transparente, par laquelle se fait la visualisation du système d'affichage éclairé (B), quand l'appareil est en service. Un clavier étanche (C), possédant trois touches (1), (2), et (3), attenant au boîtier afin que le l'utilisateur puisse programmer et sélectionner la fonction désirée. Un connecteur (D), consisté de deux lamelles en acier inoxydable affleurant à la surface du boîtier, de manière à brancher une alimentation 9 Volt pour recharger les accumulateurs internes. Ces deux contacts servent aussi de capteurs pour l'allumage automatique de l'appareil, dès son immersion. Un transducteur ultrasonore à caractéristique directionnelle étroite (E). Et à l'intérieur du boîtier, une carte électronique contenant (Fig. 4): Un dispositif à microprocesseur (1), se chargeant de la gestion des différents éléments composant le récepteur, comportant une mémoire morte dans laquelle se trouve le programme de gestion, et une mémoire vive pour le stockage des données. Une mémoire EEPROM sérielle 12C, de manière à pouvoir conserver des données malgré les coupures de courant. Une interface de puissance d'émission ultrasonore (2). Une interface de réception et de démodulation (3). Une interface pour le clavier (4). Une interface pour l'affichage (5). Une interface pour le signal d'alarme (6). Un dispositif de commutation automatique et de surveillance d'alimentation (7). Principes de fonctionnement A l'allumage, L'émetteur lance sa procédure d'auto-diagnostic, puis demande le code personnel d'accès (six caractères alphanumériques) attribué lors de la cession de l'équipement. Ce code interdit le fonctionnement du système, si il n'a pas été introduit au préalable. Cette façon de procéder rend cet appareil inutilisable sans la possession de cette clé, et donc, il ne peut être utilisé uniquement que par son propriétaire légitime. Une fois que ce code est entré puis validé, I'utilisateur sélectionne la fonction "AJOUT PALANQUEES", introduit un pseudonyme (huit caractères alphanumériques quelconques), ainsi que le Code Personnel d'Utilisateur de chaque récepteur (noté CPU, comprenant six caractères alphanumériques qui seront ramenés à trois octets après compression), attribué également lors de la cession des équipements. Ce CPU sert d'une part à éviter l'utilisation d'un récepteur par une personne non autorisée, et d'autre part, comme il ne peut être introduit directement sur l'appareil, il est inclus dans la phase d'initialisation des récepteurs, pour que ce dernier puisse être référencés par l'émetteur. Si l'émetteur envoie un mauvais CPU à un récepteur, alors ce dernier ne pourra pas lui répondre, ni même fonctionner par la suite, sauf dans le cas de la recherche d'un récepteur en détresse. Une fois que tous les émetteurs sont introduits, il suffit de lancer la fonction "INITiALISATION PALANQUEES", et tout le reste se fait automatiquement. Pour le récepteur, à part la fourniture du CPU, rien n'est à faire sauf à l'immersion, le plongeur devra orienter son boîtier pendant une à deux secondes vers le transducteur de l'émetteur, de manière à effectuer cette initialisation.La mise en fonction du récepteur se fera automatiquement dès que les deux contacts en inox seront immergés. Si cette initialisation n'est pas faite, le récepteur affichera : "ATTENTE CODE", de ce fait ne fonctionnera pas, une alarme sonore sera déclenchée par le programme de l'émetteur au bout de quelques secondes, et il affichera "PALANQUEE N xx NON lNlTlALlSEE". Le fonctionnement après la phase d'initialisation de l'émetteur, est très simple. Pour sortir le programme de sa fonction "ATTENTE", il suffit d'appuyer sur une touche quelconque, et après cela, la sélection de la fonction désirée se fait par l'appui de la touche Flèche Droite "= > " ou de la touche Flèche Gauche " L'acceptation du menu ou de la fonction se fait par la touche "ENTREE". Pour sortir d'un menu il suffit d'appuyer sur une touche quelconque, autre que celles citées plus haut. Apres avoir sélectionné, introduit d'éventuels paramètres nécessaires, et validé une fonction, le programme l'exécute, affiche le résultat de cette action, et retourne automatiquement en mode "ATTENTE". II existe treize fonctions utilisateurs scindées en deux groupes: MENU SYSTEME MENU PALANQUEE (Une palanquée = 1 récepteur). Le premier groupe, Menu Système, contient notamment: Al MODIFICATION DATE. Après validation de la fonction, introduire AAMMJJ, ou AA est l'année, MM le mois, et JJ le jour, puis valider par la touche "ENTREE". Introduire ensuite HHMMSS, ou HH est l'heure, MM les minutes, et SS les secondes, puis valider par la touche "ENTREE". Le programme affichera la nouvelle date et la nouvelle heure pendant 10 secondes au maximum. B/ CHANGEMENT LANGUE: Après validation de la fonction, le programme affiche "FRANCAIS", appuyer sur flèche gauche " " pour changer de langue, puis valider avec la touche "ENTREE" une fois que la langue désirée est affichée. Le programme, dès lors, affichera tous les textes dans cette langue. II existe cinq langues disponibles pour l'instant: le Français, I'Anglais, I'Allemand, I'ltalien, et l'Espagnol. C/ MODIFICATION VOLUME. Après validation de la fonction, appuyer sur flèche gauche " diminuer et flèche droite "= > " pour augmenter le son du buzzer, puis valider par la touche "ENTREE". Le programme émettra deux bips pour en faire entendre le résultat. D/ GESTION RS 232. Après validation de la fonction, le programme affiche "GESTION RS232", valider par la touche "ENTREE". Ce sera, dès lors, le programme de l'ordinateur hôte qui gérera la carte électronique, par l'intermédiaire de l'interface RS232. Le micro-contrôleur ne sera plus que l'exécutant des actions commandées par l'ordinateur. Ceci permet de pouvoir faire évoluer, l'appareillage sans modification de l'installation existante. Si aucun ordinateur hôte n'est branché, ou mal branché, alors le programme activera son alarme et affichera "LIAISON DEFECTUEUSE", avant de sortir de cette fonction. E/ PROGRAMMATION MESSAGES. Après validation de la fonction, le programme demande "EMETTEUR OU RECEPTEUR", introduire "E" ou "R", pour sélectionner le groupe de messages à programmer et valider par "ENTREE". Introduire enfin le texte du message (seize caractères alphanumériques) puis valider par la touche "ENTREE". Le programme les numérotera automatiquement. Trois messages peuvent être programmés de la sorte dans chaque groupe. Ensuite le programme affichera "AUTRE MESSAGE ?", s'ils ne sont pas tous programmés. II faut alors appuyer sur la touche "Y" + "ENTREE", pour introduire un autre message, si non le programme sortira de cette fonction par l'appui de n'importe quelle autre touche. Fl ETALONNAGE. Après validation de la fonction, appuyer sur flèche gauche " droite "= > " pour faire défiler sur l'écran, toutes les palanquées en mémoire, puis valider avec la touche "ENTREE" pour confirmer la palanquée qui servira à l'étalonnage du coefficient k du calcule de distance. Le programme effectuera l'initialisation de ce récepteur, et en profitera pour calculer k. Le récepteur devra se trouver obligatoirement à une distance de 10 mètres sous peine d'utiliser par la suite un mauvais coefficient. Si aucun coefficient n'est calculé, alors le programme reprendra le coefficient k de la précédente plongée ou si il n'existe pas alors il le considéra égale à 0. G/ RESET SYSTEME. Après validation de la fonction, le système se remet à zéro, toutes les données contenues dans sa mémoire vive et de son EEPROM. Cette fonction est à utiliser que si l'appareil présente une anomalie visible, ou un comportement illogique par rapport à une action donnée. Si cette fonction ne marche pas, il faut, pour remettre à zéro le système, éteindre l'appareil, attendre quelques secondes, puis le rallumer. II est impératif de réintroduire tous les codes nécessaires, comme si c'était une première mise en marche, ou alors utiliser la fonction GESTION RS 232. Le deuxième groupe, Menu Palanquée, contient notamment: A/ MODIFICATION CODE. Après validation Jê d fonction, appuyer sur flèche gauche droite "= > " pour faire défiler sur l'écran, toutes les palanquées en mémoire, puis valider avec la touche "ENTREE" pour confirmer la palanquée à modifier. Introduire le nouveau CPU, et le nouveau pseudonyme du récepteur concerné, puis valider avec la touche "ENTREE". II est nécessaire de lancer la fonction initialisation après modification d'un CPU d'un récepteur. B/ AJOUT PALANQUEE. Après validation de la fonction, introduire le CPU du récepteur concerné, et son pseudonyme puis valider avec la touche "ENTREE". Le programme affichera, pendant 10 secondes au maximum, "PALANQUEE N xx NOM: YYYYYYYY". Ensuite le programme affichera "AUTRE PALANQUEE ?", s'il en a moins de dix en mémoire.ll faut alors appuyer sur la touche "Y" + "ENTRE", pour introduire une autre palanquée, si non le programme sortira de cette fonction par l'appui de n'importe quelle autre touche. II est nécessaire de lancer la fonction initialisation après l'introduction d'un nouveau récepteur. C/ RETRAIT PALANQUEE. Après validation de la fonction, appuyer sur flèche gauche " droite "= > " pour faire défiler sur l'écran, toutes les palanquées en mémoire, puis valider avec la touche "ENTREE" pour confirmer la palanquée à supprimer. Si par hasard elle se trouvait encore sous l'eau, et que l'émetteur a encore un contact avec elle, il interdira le retrait de celle-ci, affichera "PALANQUEE ENCORE IMMERGEE", et émettra un signal sonore d'alarme. Dans le cas contraire le programme affichera, pendant 10 secondes au maximum, "PALANQUEE N xx ENLEVEE", et l'ôtera de sa mémoire. D/ INITIALISATION PALANQUEES. Après validation de la fonction, appuyer sur flèche gauche " droite "= > " pour faire défiler la palanquée désirée, puis valider avec la touche "ENTREE". Si l'utilisateur s'arrête sur "TOUTES", le programme tentera d'initialiser toutes les palanquées qui ne le sont pas. Si un des récepteurs ne répond pas, alors le programme émettra un signal sonore d'alarme et affichera "PALANQUEE N xx NON INITIALISEE". E/ DISTANCE PALANQUEE. Après validation de la fonction, appuyer sur flèche gauche " droite "= > " pour faire défiler la palanquée désirée, puis valider avec la touche "ENTREE". Si l'utilisateur s'arrête sur "TOUTES", le programme affichera les distances de toutes les palanquées, à raison de une toutes les deux secondes. Après deux balayages, il repassera en mode attente. F/ MESSAGE. Après validation de la fonction, appuyer sur flèche gauche " " pour faire défiler le message désiré, puis valider avec la touche "ENTREE". Ensuite appuyer sur flèche gauche " " pour faire défiler la palanquée désirée, puis valider avec la touche "ENTREE".Si l'utilisateur s'arrête sur "TOUTES", le programme enverra ce message à toutes les palanquées. Si au moins une d'entre elles ne répond pas, il affichera "PALANQUéE N xx NE REPOND PAS", et émettra un signal sonore d'alarme. II existe deux messages pré défini, plus trois programmables: 1/ "PORTEZ SECOURS". 2/ "RAPPEL PALANQUEE". 31 "MESSAGE PROG. 1" 4/ "MESSAGE PROG. 2" 5/ "MESSAGE PROG. 3" Si un des trois derniers messages n'a pas été programmé, le programme passera ce message, et ira au suivant. L'émetteur possède aussi cinq fonctions automatiques, qui sont: A/ AUTO DIAGNOSTIC de sa carte électronique, à l'allumage de l'appareil. B/ COMMUTATION EN MODE ATTENTE, après 10 secondes de non utilisation. C/ MISE EN MODE "SILENCE EMISSION" et "FIN SILENCE EMISSION" des récepteurs, en cas de saturation du trafic. D/ DEMANDE AUTO DIAGNOSTIC d'un récepteur, en cas de mauvaise réception prolongée. E/ DEMANDE DE CHARGE DE LA BATTERIE d'un récepteur. Pour le récepteur, le fonctionnement après la phase d'initialisation reste similaire à celui de l'émetteur. Cependant, I'agencement des touches est quelque peu différent, ainsi que la méthodologie de sélection. En effet, le récepteur ne possède que trois touches. possédant plusieurs fonctions (Planche :2/15 ,fig.:3) * Touche (1) : MARCHE. FONCTION, flèche HAUT, AIDE-1. * Touche (2): MODE, flèche BAS, RECHERCHE-1. * Touche (3): VALIDATION. AIDE-2, RECHERCHE-2. La mise en fonction de l'appareil se fait automatiquement lors de son immersion sous l'eau, et ne peut fonctionner que dans ce milieu. Cependant, la sortie du mode VEILLE et du mode ARRET SYSTEME, se fait par l'appui de la touche (1), et si le récepteur était arrêté, alors il lance sa procédure d'auto-diagnostic.La sélection de la FONCTION, se fait en appuyant plusieurs fois sur la touche (1), dès que celle-ci correspond à ce que voulait l'utilisateur, il valide par la touche (3). Ceci fait, L'appareil passe automatiquement en sélection du MODE, et par appui sur la touche (2), I'utilisateur fait défiler tous les MODE possibles de cette FONCTION. La validation de ce MODE, tout comme pour la FONCTION, se fait par la touche (3). Si une fonction a été validée par erreur, alors pour en sortir il suffit d'appuyer sur la touche (1), pour revenir en sélection de la FONCTION.Une fois que la FONCTION et le MODE sont validés, le récepteur l'exécute et passe automatiquement en mode VEILLE après quelques secondes, dès la réception de l'accusé-réception de l'émetteur. L'appui simultané de la touche (1) et (3), déclenche, sans autre préavis, la FONCTION "AIDE", dans le premier MODE, qui signifie une demande d'assistance immédiate sous l'eau. L'appui simultané de la touche (2) et (3), déclenche, sans autre préavis, la FONCTION "RECHERCHE PALANQUEE EN DETRESSE". Le récepteur, pour cette fonction, n'a pas besoin d'être initialisé par l'émetteur. L'appui simultané de la touche (1), (2) et (3), déclenche, la fonction d'auto-diagnostic du récepteur. Quelque soit la FONCTION choisie, à part les fonctions ne faisant pas intervenir l'émetteur, le récepteur réitérera l'envoi de son message, ou de sa commande, jusqu'à la réception de l'accusé-réception de l'émetteur. II existe neuf fonctions de base accessible par l'utilisateur: A/ MISE EN VEILLE Mise en veille immédiate, c'est le mode réduction de consommation d'énergie. Le retour dans le mode actif se fait en appuyant sur la touche (1). B/ S.O.S. Son exécution se fait par la sélection de la fonction S.O.S. puis de l'un des modes suivants: "AIDE AU FOND". Le premier mode possède la plus haute priorité, et représente une demande d'assistance au fond. Son déclenchement se fait soit par l'appui simultané de la touche (1) et (3), soit par la sélection de la fonction S.O.S., puis de ce mode suivant la méthodologie expliquée plus haut. "AIDE EN SURFACE" Le deuxième mode possède la priorité intermédiaire, et représente une demande d'assistance en surface. "PB RESOLU : OK". Le troisième mode possède la priorité la plus basse, et signifie qu'un problème est survenu, mais a pu être résolu. Pour ce dernier mode le récepteur n'enverra pas la séquence SOS contenant que des zéros. C/ CHERCHE DISTANCE: Son exécution se fait par la sélection de la fonction CHERCHE DISTANCE et, est active directement, sans sélection de MODE. Dans un premier temps, le récepteur affichera "SCANNING", pour indiquer qu'il recherche son point de rattachement, puis dès qu'il l'aura trouvé, il affichera "CALCUL EN COURS". A la fin de la phase de calcul, le récepteur affichera "DISTANCE : WXYZ METRES". D/ MESSAGE: Son exécution se fait par la sélection de la fonction MESSAGE, puis l'appui de la touche (2) fera défiler les différents messages suivant: 1/ "FIN DE PLONGEE". 2/ "TOUT EST OK". 31 "MESSAGE PROG. 1" 4/ "MESSAGE PROG. 2" 5/ "MESSAGE PROG. 3" Apres avoir sélectionné le message désiré, il faut valider par la touche (3). Si un des messages n'a pas été programmé, le programme passera ce message, et ira au suivant. E/ TIMER: Son exécution se fait par la sélection de la fonction TIMER, puis l'appui de la touche (2) fera défiler les différents modes suivants: "TEMPS: HH:MM". Le récepteur affichera le contenu du timer suivant le format : HH représente le nombre d'heures et MM représente le nombre de minutes depuis le déclenchement du chronomètre. Si le timer n'a pas été déclenché alors le programme affichera "00:00" "TIMER ON". Pour déclencher le chronomètre. "TIMER OFF". Pour arrêter le chronomètre. F/ TABLE PLONGEE: Son exécution se fait par la sélection de la fonction TABLE PLONGEE, et est active directement, sans sélection de MODE.Dans un premier temps le récepteur affichera "PROFONDEUR : 00", par l'appui sur la touche (1), ou la touche (2), le programme incrémentera ou décrémentera la profondeur de cinq mètres en cinq mètres. Une fois que cette profondeur est bonne, il faut valider par la touche (3), alors le programme affichera "TEMPS : 00". Toujours par l'appui sur la touche (1), ou la touche (2), le programme incrémentera, ou décrémentera, le temps de minutes en minutes. Une fois ce temps validé par la touche (3), le programme affichera "PROF: xx TPS yy" et les différents paliers qui seront codés de la manière suivante AAm:zz ou AA est la profondeur du palier, et zz est la durée en minutes.Par exemple : 12m:03 veut dire un palier de trois minutes à 12 mètres. Si il y a plusieurs paliers, ils seront séparés par une barre oblique "/", et ils seront mis les uns à la suite des autres. GI CHANGEMENT LANGUE: Son exécution se fait par la sélection de la fonction CHANGEMENT LANGUE et, est active directement, sans sélection de MODE. Après validation de la fonction, le programme affiche "FRANCAIS", appuyer sur la touche (1), ou la touche (2), pour faire défiler toutes les langues disponibles. II existe cinq langues disponible pour l'instant : le Français, I'Anglais, I'Allemand, I'ltalien, et l'Espagnol. Une fois que la langue désirée est affichée sur l'écran, valider par la touche (3). Le programme dès lors affichera tous les textes dans cette langue. HI RECHERCHE PALANQUEE EN DETRESSE: Son exécution se fait soit par la sélection de la fonction RECHERCHE PALANQUEE EN DETRESSE (active directement), soit par l'appui simultané des touche (2) et (3). Dans un premier temps. le récepteur affichera "SCANNING", pour indiquer qu'il recherche l'émetteur envoyant la séquence SOS, puis dès qu'il l'aura trouvé, il affichera "TROUVEE". L'appui sur une touche quelconque provoquera l'abandon de cette fonction. Il ARRET SYSTEME: Le programme affichera "ARRET SYSTEME". Le fait de valider cette fonction impliquera la perte de toutes les donnée contenues en mémoire, et notamment le code de transmission. Son exécution se fait par la sélection de la fonction ARRET SYSTEME, puis le programme demandera une confirmation avant d'exécuter cette FONCTION. II faudra alors valider par la touche (3) si on veut effectivement arrêter le système. si non, L'appui de n'importe quelle autre touche provoquera l'abandon de cette FONCTION. L'exécution de cette fonction impliquera l'envoi du message "ARRET SYSTEME" à l'émetteur, dont le code est EEh et non accessible à l'utilisateur. Apres l'exécution de n'importe quelle fonctions, le récepteur affiche la charge de la batterie, par l'intermédiaire d'un graphique en forme de barre alignées, visualisant le pourcentage restant dans l'accumulateur. Le récepteur possède quatre fonctions automatiques, qui sont: A/ AUTO-DIAGNOSTIC de sa carte électronique, à l'allumage. B/ ALLUMAGE ET ARRET AUTOMATIQUE du récepteur dès son immersion, et sa sortie de l'eau. C/ DETECTION DE BATTERIE FAIBLE, déclenchement de l'alarme sonore si la charge de celle ci est inférieure à la limite tolérée pour un fonctionnement optimal. Le programme affichera "TENSION HORS LIMITES". D/ COMMUTATION EN MODE VEILLE, après 10 secondes de non utilisation. La détermination de la direction La direction est donnée par l'orientation du récepteur vers l'émetteur. Du fait que le récepteur possède un transducteur ultrasonique ayant des caractéristiques directionnelles très étroites, il ne peut capter l'émetteur que si son transducteur fait face à + /- 25 , par rapport à l'axe de transmission de l'émetteur. Protocole de communication L'émetteur et le récepteur, échangent des données binaires par le truchement des ultrasons, servant de porteuse au signal numérique, avec un protocole bien défini. Sur le graphique de la (Planche:3/15,Fig.:5), I'axe (X) représente le temps, et l'axe (Y) représente le niveau logique d'un signal. Les données sont envoyées en série. et ont le format suivant 1 bit de départ (A), 8 bits de données (B), 1 bit d'arrêt (C). Ces données de 8 bits ont la particularité d'être redondantes, c'est à dire que les quatre premiers bits sont égaux aux quatre derniers. En décimale ou en hexadécimale, L'octet formera un palindrome (00,11,..., 99, AA, BB,...,FF).Cette redondance est là de manière à rendre fiable la communication et de pouvoir récupérer des données abîmées par un algorithme particulier, si la transmission devenait mauvaise. Pour l'émetteur, comme pour le récepteur, (planche:3/15,Fig.:6) le signal acoustique transmis dans l'eau, est une modulation d'un signal numérique (2) par porteuse de 50 kHz (1). Le résultat de cette modulation (3), présente la particularité de ne moduler que les 0 logiques, et ceci afin d'éviter l'émission continue de 1, car les micro-contrôleurs utilisés fonctionnent en logique inversée. Le débit sérielle est fixé à 300 Bauds (bits/seconde), du fait de l'inertie des ultrasons, pour éviter des recouvrements de signaux.Les séquences de transmission se font toujours par six octets (Planche:3/1 5,Fig.:7) Sauf dans la phase d'initialisation des récepteurs, le premier (1), le troisième (3) et le cinquième (5) octet, sont les trois mots formant le code de transmission de l'émetteur et du récepteur, soit 16.777.214 combinaisons possibles, le code (00,00,00) étant ôté, car c'est le "code universel" de recherche de la fonction SOS. Le deuxième (2), le quatrième (4), et le sixième (6) octet, véhiculent l'information proprement dite. En fait, I'agencement des données et du code de transmission est imposé par le micro-contrôleur utilisé. En effet, on utilise une fonction spéciale de ce microprocesseur, qui est I' "Automatic Address Recognition" (noté AAR), soit: la reconnaissance automatique d'adresse. Son principe en est fort simple; ce microprocesseur utilise un neuvième bit qui lui permet de savoir, par sa présence ou non, s'il s'agit d'une adresse ("adresse" étant assimilée au n-iéme octet du code de transmission) ou d'une donnée qui a été émise. (Planche:3/1 5-figure:8) Ce neuvième bit (D) se trouve immédiatement après les huit bits de données (B) et avant le bit de stop (C). Quand le micro-contrôleur reçoit ce genre de donnée, et si elle correspond à la donnée contenue dans le registre spécial du système AAR, il déclenche d'une part une interruption logiciel sur une procédure de traitement de la donnée qui suit, et si il était en mode VEILLE, il se remet en fonction après avoir reçu le paquet complet de six octets. Dans le cas contraire, il ignore l'adresse qu'il vient de recevoir et de ce fait, il ne peut pas charger la donnée qui suit. Ce procédé permet, d'une part d'utiliser les ressources du micro-contrôleur qu'à bon escient. et donc de pouvoir limiter la consommation électrique. Les informations émises sont regroupées par deux au sein d'un paquet de six octets. Le premier binôme (Planche:3/1 5,Fig.:7) (A) se compose de l'adresse (1) et de la donnée (2).Si l'adresse (1) correspond à l'adresse contenue dans le registre AAR du micro-contrôleur, alors la donnée (2) peut être chargée par l'intervention du logiciel, puis stockée à des fins de traitement. Ensuite le programme. après vérification et éventuellement correction d'erreur, change le contenu du registre AAR, par le deuxième octet du code de transmission, de manière à ce qu'il puisse recevoir le deuxième binôme. II opère comme cela pour les trois binômes, et des que la troisième donnée est chargée, il réinitialise le registre AAR avec le premier octet du code de transmission. Si un des codes de transmission ne correspondait pas à ceux qui sont présents en mémoire, cela impliquera que le chargement du paquet est incomplet. Pour cela il existe, au sein du logiciel, deux méthodes pour savoir si le paquet a été chargé entièrement et correctement. Le premier moyen consiste en un timer "chien de garde" qui réinitialise le logiciel, si entre deux chargements, il y a eu un temps mort supérieur à la limite tolérée. La deuxième méthode consiste à décrémenter le quatrième octet (4) de un, le sixième octet (6) de deux, de manière à ce que le programme de gestion sache à quel stade de la transmission il en est. Par comparaison du premier et du deuxième quartet formant l'octet, et suivant de quel binôme il s'agit, le programme peut savoir exactement si cette donnée lui était destinée. Ces deux méthodes assurent un "zéro défaut", car l'information n'est acceptée que si toutes ces conditions sont réunies, c'est à dire que le temps séparant la fin de la réception du binôme N et du début de réception du binôme N+1 ne soit pas dépassé, et que les données lui soient bien destinées et valides. Procédures de transmission * Procédure d'initialisation (Planche:4/1 5,tableau: 1) L'émetteur expédie le premier des trois octets du code personnel d'utilisateur (CPU0) du récepteur concerné, en phase d'initialisation. Le récepteur ne peut accepter, à ce stade là, que les données d'un paquet, véhiculé par son propre code personnel d'utilisateur, car il ne connaît pas encore le code de transmission utilisé. Sauf bien entendu pour la RECHERCHE D'UNE PALANQUEE EN DETRESSE, ou ce code est le même pour tous, et connu de tous. Ensuite il expédie le premier octet du code de transmission (CT0), et ainsi de suite jusqu'à l'envoi du troisième octet du code personnel d'utilisateur (CPU2), accompagné du troisième octet du code de transmission (CT2). L'émetteur envoie à nouveau le premier des trois octets du code personnel d'utilisateur (CPU0), suivi cette fois-ci du numéro de palanquée affecté à ce récepteur (NPAL). Ce numéro de palanquée est en fait le numéro d'ordre du récepteur dans le programme de gestion, qui permet de distinguer un récepteur par rapport aux autres, dans un même groupe, géré par cet émetteur. Ensuite il envoie le deuxième des trois octets du code personnel d'utilisateur (CPU1), accompagné du nombre de messages programmés (NbMess). Enfin il envoie le troisième des trois octets du code personnel d'utilisateur (CPU2), suivi du code FFh (notation du nombre 255 en hexadécimal), qui signifie : Fin de transmission. En réponse, le récepteur, envoi d'abord le premier code de transmission (CT0) qu'il vient de recevoir, suivi de son numéro de palanquée (NPAL).Ensuite il envoie le deuxième code de transmission (cl1), suivi de la donnée (BATT) qui représente la charge de sa batterie. Enfin, il envoie le troisième code de transmission (CT2), suivi du code FFh. L'émetteur profitera de ces deux aller retours pour calculer le coefficient k de l'équation de calcul de distance. Si la fonction ETALONNAGE a été sélectionnée, il utilisera ce coefficient pour le calcul de la distance. A la réception de cet accusé réception l'émetteur expédie le premier des trois octets du code de transmission (CT0), suivi cette fois-ci du premier caractère du premier message programmé du récepteur (CAR1). Ensuite il envoie (cl1), suivi du deuxième caractère du premier message programmé du récepteur (CAR2). Enfin il envoie (CT2), suivi du troisième caractère du premier message programmé du récepteur (CAR3). Chaque fin de message sera marqué par le code FFh, pour la séparer du suivant. II enverra les messages programmés de l'émetteur suivant la même méthodologie. En tout, six messages seront envoyés au maximum, trois pour l'émetteur, et trois pour le récepteur. Si aucun message n'est programmé alors l'émetteur n'enverra rien. L'algorithme de transmission de l'émetteur est: (Planche:4/15, Fig.:9): (1): Entrée de procédure, initialisation des variables, et aller à (2). (2) : Affectation d'un numéro de palanquée au récepteur en cours de traitement, et initialisation du timer "Chien de garde", et aller à (3). (3): Envoi des deux paquets de six octets vers le récepteur, incrémentation du nombre de tentatives, déclenchement du chronomètre, et aller à (4). (4): Le nombre de tentatives est-il supérieur ou égal au nombre max. ?. Si oui (O), aller à (7j. Si non (N), aller à (5). (5): Le temps a-t-il été dépassé ou la réponse est-elle arrivée avec erreur ou la réponse n'est elle pas arrivée?: Si oui (O), aller à (3). Si non (N) aller à (6). (6): Envoi des messages programmés au récepteur et aller à (8). (7): Déclenchement de l'alarme et aller à (8). (8): Sortie de la procédure. Et l'algorithme de transmission du récepteur est (Planche:5/15,Fig.:10): (1): Initialisation des variables. (2): Les deux paquets sont ils arrivés sans erreur?: Si non (N) alors aller en (2). Si oui (O) alors aller en (3). (3): Initialisation du code de transmission avec le code envoyé par l'émetteur, envoyer accusé-réception et aller en (4). (4): Le nombre de messages programmés > 0 ?: Si non (N) alors aller en (6). Si oui (O) alors aller en (5). (5): Charger les messages dans l'EEPROM. (6): Sortie de la procédure. * Procédure de calcul de distance: (Planche:5/15 ,tableau :2) Le récepteur expédie le premier des trois octets du code de transmission (CT0), suivi de son numéro de palanquée (NPAL). Ensuite il expédie le deuxième des trois octets du code de transmission (CT1), suivi le l'octet A9h, qui est le code de demande de calcul de distance. Enfin il expédie le troisième des trois octets du code de transmission (CT2), suivi de l'octet FDh, qui est toujours le code de fin de transmission, mais décrémenté de deux. En réponse, L'émetteur expédie le premier des trois octets du code de transmission (CT0), suivi du numéro de palanquée (NPAL) du récepteur qui vient de faire la demande de calcul. Ensuite, il expédie le deuxième des trois octets du code de transmission (CT1), suivi le l'octet A9h, qui est le code de demande de calcul.Enfin, il expédie le troisième des trois octets du code de transmission (CT2), suivi de le l'octet FDh. A la réception de ce message, le récepteur expédie le premier des trois octets du code de transmission (CT0), suivi du numéro de palanquée (NPAL). Ensuite, il expédie (CT1), suivi le la donnée (BATT), qui est la charge de sa batterie. Enfin, il expédie le troisième des trois octets du code de transmission (CT2)., suivi de le l'octet FDh. A la réception de cela, L'émetteur expédie le premier des trois octets du code de transmission (CT0), suivi de son numéro de palanquée (NPAL). Ensuite, il expédie le deuxième des trois octets du code de transmission (CT1), suivi de l'octet de poids fort de la distance calculée et compactée (DlSThigh).Enfin, il expédie le troisième des trois octets du code de transmission (CT2), suivi de l'octet de poids faible, de la distance calculée et compactée (DISTlow). En fait le calcul de la distance se fait de la manière suivante: (Planche:6/15,Fig.:11) Dans un premier temps, le récepteur (B) envoie une séquence codée (1), définissant une demande de calcul de distance, L'émetteur (A) recevant cette séquence, déclenche un chronomètre (2), et envoie un accusé-réception de cette demande de calcul vers le récepteur (3). Dès que le récepteur reçoit cet accusé-réception (4), il réexpédie un code de fin de calcul (5). L'émetteur, à la réception de ce code arrête son chronomètre (6), calcule la distance, et envoie le résultat au récepteur (7), qui l'affichera sur son écran. Si on part du principe que dans l'eau la vitesse d'une onde sonore est C = D/T, (C est la célérité de l'onde sonore, D est la distance parcourue pendant un temps T) alors le calcul de distance ce fait de la manière suivante: Connaissant le temps T nécessaire à un cycle de calcul, c'est à dire le temps séparant le déclenchement du chronomètre de son arrêt, ia distance séparant la source de la cible est D = C x T, mais comme en fait il y à eu deux allerretour, et des temps morts (t) de réaction et de calcul, de l'émetteur et du récepteur, alors: C (T-t)xC mais comme C n'est pas constant D~(T-t)x(C+K) Sachant que 2 2 C=1.500 m/s (moyenne mesurée) dans l'eau à 20C et de salinité de 20 % alors l'équation devient:: D=(T-t)x(750+k) ou k est un coefficient d'étalonnage positif ou négatif. Cette équation est celle qui sert au calcul de la distance dans le programme de gestion de l'émetteur. k sera calculé lors de la phase d'initialisation des récepteurs si la fonction ETALONNAGE a été sélectionnée. Cette méthode permet de pouvoir utiliser avec précision le calcule de distance et ceci quelque soit la température et le degrés de salinité de l'eau. L'algorithme de la procédure de calcul du récepteur est le suivant (Planche:6/15 ,Fig.:12): (1): Initialisation des variables et aller à (2). (2) : Envoi séquence demande de calcul, déclenchement timer "chien de garde, et aller à (3) . (3): Le temps a-t-il été dépassé ou l'accusé-réception est-il arrivé avec erreur ou l'accusé-réception n'est il pas arrive. 9 Si oui (O) alors aller à (2). Si non (N) alors aller à (4). (4): Envoi séquence accusé-réception. déclenchement timer "chien de garde" et aller à (5). (5): Le temps a-t-il été dépassé ou la distance est-elle arrivée avec erreur ou la distance n'est elle pas arrivée: ? Si oui (O) alors aller à (2). Si non (N) alors aller à (6). (6): Affichage du résultat et aller à (7). (7): Sortir de la procédure. Et l'algorithme de la procédure de calcul de l'émetteur est le suivant (Planche:6/15 ,Fig.:13) (I) : Initialisation des variables et aller à (2). (2): Une demande de calcul est elle arrivée?. Si oui (O) alors aller à (3). Si non (N) alors aller à (6). (3) Envoi accusé-réception, déclenchement timer "chien de garde", déclenchement du chronomètre et aller à (4). (4): Le temps a-t-il été dépassé ou l'accusé-réception est-il arrivé avec erreur ou l'accusé-réception n'est-il pas arrivé ? Si oui (O) alors arrêter le chronomètre et aller à (6). Si non (N) alors arrêter le chronomètre et aller à (5). (5): Calculer la distance, envoyer le résultat et aller à (6). (6): Sortir de la procédure. * Procédure de SOS: (Planche:7/15 ,tableau :3) Le récepteur expédie le premier des trois octets du code de transmission (CT0), suivi de son numéro de palanquée (NPAL). Ensuite il expédie le deuxième des trois octets du code de transmission (CT1), suivi le l'octet BAh (= BBh décrémenté de un), qui est le code SOS. Enfin, il expédie le troisième des trois octets du code de transmission (CT2), suivi le l'octet XYh (XYh égale à OEh ou 1 Fh ou 20h), ou XYh est le mode de SOS sélectionné (MODE). En réponse, L'émetteur (CT0) suivi de (NPAL), puis (CTî) suivi de BAh, et enfin (CT2) suivi de FDh. Dés la réception de cet accusé-réception, le récepteur place les trois codes de transmission (CT0, CT1, et CT2) à 0 et émet des 0 comme données.Tous les récepteurs connaissent ce code, et si ils sont positionnés sur la fonction RECHERCHE PALANQUEE EN DETRESSE, alors par orientation du boîtier iis peuvent déterminer d'où provient l'émission du SOS. Le fait de rendre ce message SOS universellement connu, permet de porter secours à des palanquées en difficulté, même si elle ne font pas partie du groupe de récepteurs, auquel est rattaché le récepteur qui la recherche. L'algorithme de la procédure de SOS du récepteur est le suivant (Planche:7/15 ,Fig.:14): (1): Initialisation des variables et aller à (2). (2): Envoi séquence de SOS, déclenchement timer "chien de garde, et aller à (3). (3): Le temps a-t-il été dépassé ou l'accusé-réception est-il arrivé avec erreur ou l'accusé-réception n'est il pas arrivé:? Si oui (O) alors aller à (2). Si non (N) alors aller à (4). (4): Envoi séquence 0, avec code de transmission à 0, et aller à (5). (5): Une touche à t-eile été enfoncée ? Si oui (O) alors aller à (6). Si non (N) alors aller à (4). (6): Sortir de la procédure. Et l'algorithme de la procédure de SOS de l'émetteur est le suivant (Planche:7/15 ,Fig.:15) (1): Initialisation des variables et aller à (2). (2): Un demande de SOS est elle arrivée?. Si oui (O) alors aller à (3). Si non (N) alors aller à (4). (3): Envoi accusé-réception, déclenchement alarme sonore, affichage de la palanquée en détresse, affichage de la nature du SOS et aller à (4). (4): Sortir de la procédure. * Procédure de transmission de messages: (Planche:8/15 ,tableau :4) Ce qui va être dit pour l'émetteur, fonctionne exactement de la même façon pour le récepteur. L'émetteur expédie le premier des trois octets du code de transmission (CT0), suivi du numéro de palanquée (NPAL). Ensuite il expédie le deuxième des trois octets du code de transmission (CT1), suivi le l'octet CBh. Enfin, il expédie le troisième des trois octets du code de transmission (CT2), suivi le l'octet XYh (MESS), ou XYh est le numéro du message (égal à OEh, 1Fh. 20h, 31h, ou 42h). En réponse, le récepteur envoie un accusé reception de la forme (CT0) suivi de (NPAL), puis (CTî) suivi de CBh, et enfin (CT2) suivi de FDh. L'algorithme de ia procédure de MESSAGE de l'émetteur est le suivant (Planche:8/15 ,Fig.:î6) (1): Initialisation des variables et aller à (2). (2): Envoi séquence de MESSAGE, décienchement timer "chien de garde, et aller à (3) . (3): Le temps a-t-il été dépassé ou l'accusé-réception est-il arrivé avec erreur ou l'accusé-réception n'est il pas arrivé:? Si oui (O) alors aller à (2). Si non (N) alors aller à (4). (4): Sortir de la procédure. Et l'algorithme de la procédure de MESSAGE du récepteur est le suivant (Planche:8/15 ,Fig.:17): (1): Initialisation des variables et aller à (2). (2): Un MESSAGE est il arrivé?. Si oui (O) alors aller à (3). Si non (N) alors aller à (5). (3) : Envoi accusé-réception, déclenchement alarme sonore, affichage du message, et aller à (4). (4): Une touche à t-elle été enfoncée ? Si oui (O) alors arrêter alarme et aller à (5). Si non (N) alors aller à (4). (5): Sortir de la procédure. * Procédure de commande système de l'émetteur: (Planche:9/15,tableau:5) Ces procédures ont pour fonction de déclencher sur le récepteur concerné une action bien précise, par exemple un auto diagnostic, ou encore une demande de silence d'émission. Ces fonctions sont transparentes pour l'utilisateur, c'est en fait l'émetteur qui décide de l'opportunité d'utiliser tel ou tel action, en fonction des événements. La procédure de transmission, pour l'émetteur et le récepteur, est exactement la même que pour envoyer un message. La donnée provoquant cette action est DCh, et la donnée suivante (COM) indique la commande par elle même. II existe cinq commandes spécifiques, mais elles ne sont pas exhaustives et peuvent atteindre le nombre maximal de 16, en fonction de l'évolution de l'appareil. * code OEh: Demande d'auto diagnostic du récepteur. * code 1 Fh: Demande charge de batterie du récepteur. * code 20h: Demande de silence d'émission. * code 31h : Fin de silence d'émission. * code 42h : Demande de calcul de distance. 1/ Demande d'auto-diagnostic du récepteur. Dés que le récepteur recevra cette commande, il effectuera les tests cidessous, comme si il avait été provoqué par l'appui simultané des trois touches du clavier, par l'utilisateur. La seule différence étant cependant l'envoi du résultat de ces tests à l'émetteur, et l'émission de trois bips sonores afin de le signaler au plongeur. Si un de ces tests était négatif, alors le récepteur enverra le numéro du premier test défaillant, sous forme redondante adapté au troisième binôme. Le récepteur affichera sur son écran le résultat de chaque test. * Procédure d'auto-diagnostic du récepteur. Pour l'émetteur, comme pour le récepteur, la procédure d'auto diagnostic se fait dans l'ordre suivant: (test 0) Vérification de la mémoire et des registres. (test 1) Vérification du clavier, et de l'alarme acoustique. (test 2) Vérification de l'affichage. (test 3) Pour le récepteur uniquement, vérification de l'interface d'émission ultrasonore. (test 4) Pour le récepteur uniquement, vérification de l'interface de réception ultrasonore. (test 5) Pour le récepteur uniquement, vérification batterie. * TEST O: Pour le premier test le micro contrôleur écrit dans chaque case de sa mémoire interne, et vérifie ensuite si la donnée qu'il vient d'écrire correspond à celle qui vient de lire. Si un défaut est constaté par le micro contrôleur, ce dernier déclenchera une alarme sonore et affichera "ERREUR LECTURE MEMOIRE : XYh", ou XYh est la case mémoire défaillante. Dans le cas contraire il affichera "MEMOIRE OK" et passera au deuxième test. * TEST 1: Pour le deuxième test le micro contrôleur vérifie le clavier, et ensuite l'alarme sonore. L'utilisateur, pour la première phase de ce test devra appuyer sur une ou plusieurs touches quelconques, le programme affichera alors sa valeur "TOUCHE : X" Pour arrêter la vérification, I'utilisateur devra valider par la touche "ENTREE" pour l émetteur ou la touche (3) pour le récepteur. Si aucune touche n'est appuyée au bout de 20 secondes ou si l'interface clavier est hors service. le programme affichera le message suivant ERREUR CLAVIER" et déclenchera son alarme acoustique. Le programme passe ensuite à la vérification de son alarme sonore et demande à l'utilisateur de confirmer son bon fonctionnement par l'appui de la touche "ENTRE" pour l'émetteur ou la touche (3) pour le récepteur.Si une autre touche est appuyée alors le programme affichera "ERREUR ALARME". * TEST 2: Pour ce troisième test, le programme de gestion, affichera sur son écran les seize premières lettres de l'alphabet, et demandera à l'utilisateur, de confirmer le bon affichage de cette série, par l'appui de la touche "ENTREE" pour l'émetteur ou la touche (3) pour le récepteur. Si une autre touche est appuyé alors le programme affichera "ERREUR LCD". * TEST 3: Pour ce quatrième test, le programme de gestion, enverra sur sa sortie série (TxD) L'octet AAh. Si ce dernier est reçu sur la broche (TO), alors le programme affichera "US-E:OK", si non le programme affichera "ERREUR US-E". * TEST 4: Pour ce cinquième test, le programme de gestion enverra sur son entrée série (RxD) L'octet AAh par l'intermédiaire de la broche (T1). Si ce dernier est reçu, alors le programme affichera "US-R:OK", si non le programme affichera "ERREUR US-R". * TEST 5 : Pour ce sixième test, le programme de gestion, effectuera une mesure de la charge de la batterie. Si la batterie présente une charge inférieure à la limite tolérée, alors le programme affichera "TENSION HORS LIMITES", si non il affichera "BATTERIE: OK". Le récepteur, comme l'émetteur, affichera sur son écran le résultat de chaque test. 2/ Demande charge de batterie du récepteur. Dès que le récepteur recevra cette commande, il effectuera une mesure de la charge restante dans sa batterie puis enverra le résultat à l'émetteur. Ce résultat sera un nombre entre 1 et 10. représentant le pourcentage multiplié par dix, sous forme redondante adapté au troisième binôme. Exemple Charge restante - 30 Ó = > RES = 31h. 3/ Demande de silence d'émission. Dès que le récepteur recevra cette commande. il enverra un accusé réception à l'émetteur (RES=FDh), puis interdira toutes les fonctions faisant intervenir l'émetteur sauf la fonction SOS dans tous ses modes. 4/ Fin de silence d'émission. Dès que le récepteur recevra cette commande, il enverra un accusé réception à l'émetteur (RES=FDh), puis autorisera toutes les fonctions qui auront été bloquées par la commande précédente. 5/ Demande de calcul de distance. Dès que le récepteur recevra cette commande, il enverra un accusé réception à l'émetteur (RES=FDh), puis il effectuera un cycle de calcul de distance comme si c'était le plongeur qui l'avait provoqué. Le récepteur n'affichera pas le résultat de ce calcul. * Protocole de communication de l'interface RS232. Quand la fonction GESTION RS-232 de l'émetteur est active, le programme de gestion donne le relais à un sous programme particulier. Ce dernier sert uniquement d'interpréteur de commande en provenance de l'ordinateur hôte, et sert, en quelque sorte, de passerelle entre la RS-232 et l'interface série du micro-contrôleur. Le format de transmission est fixée à 1200 Bauds, 1 bit de départ, 1 bit d'arret, sans parité. Le logiciel de l'ordinateur hôte suivra exactement les mêmes procédures et protocoles de communication, que le programme de gestion de l'émetteur. Les différents codes de commandes sont les suivants: * 01, X, Y, Z : Test de liaison de l'interface RS232 par l'envoi de trois caractères X, Y, Z : valeur retournée A, B, C. Le trinôme {A,B,C} est le résultat d'une fonction polynomiale à coefficients aléatoires de (X,Y,Z). Ce test sert d'une part à l'émetteur, de savoir si un ordinateur est connecté et d'autre part à interdire l'accès de la RS-232 si la réponse est différente du résultat attendu. Cela permet de ne mettre en circulation, que des programmes de gestion de l'émetteur qui auront reçus notre agrément.Si le programme de l'ordinateur hôte ne répond pas, ou si il répond un mauvais résultat alors l'émetteur déclenchera son alarme et affichera "LIAISON DEFECTUEUSE". * 02, R, S, T, U, V, W, X, Y, Z : Initialisation d'un récepteur avec (R,S,T) comme Code de Transmission. (U,V,W) pour premier paquet, et (X,Y,Z) pour deuxième paquet. * 03, W, X, (Y, Z) : Envoi de W octets sur la RS-232. X, Y, Z sont les octets à expédier par l'émetteur avec son CT. W peut avoir la valeur de 1 à 3. Cela impliquera, suivant cette valeur, la présence de Y ou de Z valeur retournée aucune. * 04, X, Y : Donner la valeur Y (0 à 255) au port X de l'émetteur, valeur retournée aucune. * 05, X : Lire le port X de l'émetteur, valeur retournée 05, Y, ou Y est la valeur lue (0 à 255). * 06, X, Y, Z: Positionner la sortie Y du port X à Z, ou Z est égale à 0 ou 1, valeur retoumée aucune. * 07, X, Y: Lire la sortie Y du port X, valeur retournée 07, Z, ou Z est égale àOou 1. * 08: Effectuer l'auto-diagnostic de l'émetteur, valeur retournée 08, Y, ou Y est FFh si tout est OK si non c'est le numéro du test qui a échoué. Les broches (IntO) et (ont) du micro-contrôleur de l'émetteur servent à générer les signaux (CTS) et (RTS) de l'interface RS-232. Description du micro-contrôleur utilisé. Le coeur de la carte électronique de l'émetteur et du récepteur est un micro contrôleur de chez INTEL: le 87C51 FA (Marque et modèle déposé). Ce micro-contrôleur possède une architecture 8 bits et, il figure dans la lignée des MCS 51 d'lNTEL (Marque et modèle déposé). Ce micro contrôleur possède une mémoire vive de 256 octets de RAM et une mémoire morte programmable, EPROM, de 8 kilo octets. De plus il possède, entre autre, 3 ports bidirectionnels de 8 bits avec résistances de tirage à +Vcc (P1 à P3), un port de 8 bits bidirectionnel à drain ouvert (PO), une interface série bidirectionnelle "FULL DUPLEX", trois timer/counters de 16 bits, 7 sources d'interruption, et deux modes de réduction de consommation électrique POWER DOWN et POWER SAVING IDOLE Ce micro contrôleur possède, en outre, 3 modes de protection de lecture de son programme interne, évitant de ce fait tout piratage du logiciel de gestion, ce qui est fort intéressant pour une diffusion publique.Pour toutes les autres caractéristiques, et elles sont nombreuses, se référer au Data Book d'lNTEL (Marque déposée): Embedded Microcontrollers and Processors 1993, dont la référence est 270645-005. Pour l'émetteur comme pour le récepteur, une utilisation similaire des ports d'entrées sorties a été faite. Port 0: Bus de données de l'affichage Port 1 : Gestion des signaux de commande. Port 2: * Bus de données du clavier pour l'émetteur. * Bus de données du clavier, plus les signaux de commande et le bus de donnée du convertisseur A/N pour le récepteur. Port 3 : Gestion des interruptions, de l'interface série, et de l'EEPROM. Les micro-contrôleurs, de l'émetteur comme du récepteur, fonctionnent avec un quartz de 12 mHz. (Planche 10/15, Fig.:18) et (Planche 13/15, Fig.:23) Le système de remise à zéro des micro-contrôleurs est fait par l'association du condensateur (C3) avec la résistance (R1), qui assure le maintient à l'état bas de l'entrée RESET, le temps que l'alimentation se stabilise. (C4) est un condensateur de découplage. Sur tous les schémas électroniques, les connecteurs notés (Jx) sont mâles, et les connecteurs notés (Kx) sont femelles. Les connecteurs portant les mêmes numéros sont à connecter ensemble. Description des schémas électroniques de l'émetteur Interface d'émission ultrasonore de puissance (PlanchelO/l S,Fig.:18). Le coeur de ce sous ensemble est le transistor de puissance 2N3055 (T8), mis dans un système de protection. limitant d'une part la puissance d'émission à 40 Watts, et d'autre part de griller le transistor 2N3055 en cas de courts-circuits. Ce transistor est monté sur radiateur. Le principe de fonctionnement de cet amplificateur est le suivant: Le micro-contrôleur fonctionne en logique inversée, et cela implique que l'information aura la forme de 0 logiques. C'est pour cela que la porte AND formée par les diodes (D2) et (D3), permet de combiner ces deux signaux, de bloquer (T5) par l'intermédiaire de (R10) que si ils sont tous les deux à zéro. Si l'un des deux est à 1, alors le transistor (T5) restera saturé, car il se verra appliquer une tension positive sur sa base. Le fait que (T5) est saturé entraîne le blocage de (T6) et, par voie de conséquence, du 2N3055 (T8). Par contre si (T5) était bloqué, cela entraînerait la saturation des transistors (T6) et (T8). Le principe du système de protection est le suivant: Le courant traversant le 2N3055 (T8) entraîne une augmentation de tension aux bornes de (R16). Lorsque la tension se situe aux environs de 1,2 Volt, (D4) et (T7) passent en conduction. Ceci produit l'écoulement du courant de base de (T6). Le courant traversant le 2N3055 (T8) ne peut plus augmenter. (R14) et (R15) agissent en diviseur de tension, ce dernier a pour but de diminuer la tension appliquée au 2N3055 (T8). Lorsque la tension du noeud (R14), (D4), et (R15) est égale à 1,2 V, il sera fait. par l'intermédiaire de (T7), en sorte que (T6) ne puisse pas augmenter sa conduction. Donc si le courant ou la tension est trop élevée, le 2N3055 (T8) sera mis au repos. Le transducteur ultrasonore se branche directement sur le connecteur (J3). Le transformateur de sortie est de type torique. II est fait en Carbonyle H.P., a un diamètre 1,3", et présente l'avantage de n'offrir que très peu de rayonnements électromagnétiques. Le nombre de spires est de 39 pour le primaire, et 135 pour le secondaire. 2/ Interface de réception ultrasonore (PlanchelO/lS,Fig.: 18). Le coeur de ce sous ensemble est le TDA-4055 (U2). Ce circuit, développé par SIEMENS (Marque déposée) dès les premier pas de la télécommande à infrarouge, et après pas mal de modifications, a hérité d'un grand gain grâce à un CAG, et à un fonctionnement en amplificateur sélectif. Si des impulsions d'amplitude très faible, et mal définies, sont appliquées à l'entrée (broche 8), on les retrouve sur la broche 3 avec une amplitude de 9 V (Vcc), pourvu que la fréquence du signal soit de l'ordre de 50 kHz. Des signaux de fréquence très différentes ne seront pas pris en compte, du fait que ce circuit utilise un réseau RC "double T", dont la fréquence centrale est de 50 kHz. Au repos, le condensateur (C12) est maintenu déchargé par la diode (D1), tant que la sortie du TDA 4050 reste à l'état bas. D'éventuels parasites de très courte durée ne changeront rien à cette situation, mais des créneaux positifs réguliers laisseront (C12) se charger à travers (R5). Si le rapport cyclique des signaux est de l'ordre de 50 %, (C12) n'a pas le temps de se décharger entre deux périodes, et le transistor (T3) conduit, de façon ininterrompue. L'association de (T4), (C10), et (C11), sert de commutateur de réception afin d'éviter d'une part, que lorsque le microcontrôleur émet une donnée, elle soit reçue sur son entrée série, et d'autre part que la tension électrique aux bornes de (J3) vienne détruire l'étage d'entrée de (U2). 3/ Interface clavier (Planchel2/15,Fig. :22). Le coeur de ce sous ensemble est un 74LS156 (U4), un décodeur Binaire/Décimal. Le micro-contrôleur, en faisant appel à sa procédure de lecture du clavier, incrémente les trois premiers bits de son port P2, puis en lisant les cinq autres, il détermine si une touche a été appuyée ou non, suivant le niveau logique présent de ces cinq bits. En fait quand le microcontrôleur sélectionne une ligne, cette dernière présente un niveau logique bas et si une touche est appuyé alors ce niveau logique ce retrcuve sur une des colonnes. Le programme connaissant la ligne et la colonne, n'aura plus qu'à regarder dans sa table de caractères pour connaître la valeur de la touche appuyée. L'utilisation d'un décodeur binaire/décimal permet de pouvoir gérer un clavier de quarante touches, uniquement avec un port de 8 bits.Les cinq diodes (D6 à D10), mises en série sur les colonnes du clavier, servent uniquement à éviter les décharges électrostatiques inhérentes à ce genre de périphérique. 4/ Interface d'alarme acoustique (Planchel2/1S,Fig. :22). Le résonateur utilisé, est un buzzer sub-miniature à tension continue. Cette interface est réalisée tout simplement à l'aide d'un transistor FET (T9), qui sert d'amplificateur de tension. Ce résonateur est commandé par un signal carré à rapport cyclique variable. C'est ce rapport cyclique qui détermine le volume sonore du résonateur. 5/ Interface d'affichage (PlanchelOllS,Fig.:18). L'affichage se fait par un afficheur LCD possédant deux lignes de 16 caractères rétro éclairées, et sa propre circuiterie de gestion. En fait l'interface consiste uniquement en un réseau SIL (RES1) de résistances de tirage, car le port P0 du micro-contrôleur, est à drains ouverts. La commande du rétro éclairage se fait par l'intermédiaire du transistor (T1) qui sert d'amplificateur de courant, et une résistances ajustable (P2) est là de manière à pouvoir régler le contraste de l'afficheur. Pour le moment, cet appareil ne fonctionne qu'avec cette afficheur LCD, mais dans un proche avenir, un écran cathodique, lui sera adapté. 6/ L'interface RS232 (PlanchelOllS,Fig.:18). L'interface RS-232 est réalisée par le circuit monolithique MAX-232 (U3) de chez MATI M (Marque et modèle déposé). Ce circuit, plus l'adjonction de quelques condensateurs, permet à lui seul, de générer les tensions nécessaires répondant aux normes de cette interface, en ne nécessitant qu'une source d'alimentation de +5 Volt. La self (L1) permet de bloquer d'éventuels parasites produit par ce circuit. Les broches (IntO) et (ont) du micro-contrôleur ne sont pas à proprement dit une interface série, cette demière est simulée de façon logiciel, cela permet de libérer les lignes (TxD) et (RxD) de manière à ce que le micro-contrôleur puisse rester en permanence à l'écoute des récepteurs. 7/ L'EEPROM (PlanchelO/l S,Fig.:18). La X2404 (U4) de XI COR (Marque et modèle déposé) est une mémoire morte, programmable et effaçable électriquement, d'une capacité de 512 octets subdivisés en deux pages de 256 octets. La X2404 comporte une interface sérielle et un protocole de communication compatible avec la norme l2C.En fait elle ne nécessite que deux lignes du micro-contrôleur pour pouvoir communiquer avec lui: la ligne (SDA) pour Serial DAta, et la ligne (SCL) pour Serial CLock. La ligne (SDA) est à drain ouvert, la résistance (R17) permet de polariser cette ligne quand elle est à haute impédance.C'est dans cette mémoire que seront stockés tous les paramètres des différents récepteurs (CPU, heures de début et de fin de plongée, pseudonyme, et distance), ainsi que les six messages programmables possibles de l'émetteur et du récepteur, la langue utilisée, et le niveau sonore de l'alarme. Pour plus d'information sur ce circuit intégré, et les protocoles de communication, se référer au Data Book XICOR (Marque déposée). 8/ Interconnexions. Les connexions de l'afficheur LCD sont représentées sur la (Planche11/15, Fig.:19). Les connexions de l'interface RS232 (SUB-9D) sont représentées sur la (Planche11115, Fig.:20). Les câblages des autres connecteurs n'appellent aucun autre commentaire. Description des schémas électroniques du récepteur: interface d'émission ultrasonore de puissance (Planche13/15,Fig.:23). L'amplificateur d'émission de puissance est formé par l'association de deux transistors PNP: (T5), et (T6). Les deux signaux, la porteuse de 50 kHz issue de (P1.6) et la donnée numérique issue de (TxD) du micro-contrôleur, se combine dans une porte AND formée par (D2) et (D3). Le micro-contrôleur fonctionne en logique inversée, et cela implique que l'information aura la forme de 0 logique. C'est pour cela que la porte AND formée par les diodes (D2) et (D3), permet de combiner ces deux signaux, et de saturer (T5) par l'intermédiaire de (R11) que si ils sont tous les deux à zéro.Si l'un des deux est à 1, alors le transistor (T5) restera bloqué, car il se verra appliquer une tension positive sur sa base, au travers de (R10). Ce signal modulé attaque donc la base de (T5), qui en la saturant permet l'écoulement du courant de base de (T6) au travers de l'émetteur de (T5). Le transistor (T6) étant saturé, au rythme du signal modulé, alors le transformateur (TR1) pourra transmettre ce signal amplifié au transducteur ultrasonore connecté sur (J3). 2/ Interface de réception ultrasonore (Planche13/15,Fig.:23). Ce circuit d'interface est exactement le même que pour l'émetteur, ainsi que son principe de fonctionnement. 3/ Interface clavier (Planchel3/1 5,Fig.:23). Le clavier est constitué de trois touches étanches. Les entrées du microcontroleur étant pourvues de résistances de tirage à +Vcc, alors le branchement de ces trois touches se fait directement, en les connectant d'une part aux entrées du micro-contrôleur et d'autre part à la masse. Le fait d'appuyer sur une touche provoquera la mise à la masse d'une des entrées, et par lecture du port, le micro-contrôleur saura de quelle touche il s'agit. 4/ Interface d'affichage (Planche13/15,Fig.:23). L'affichage se fait par un afficheur LCD possédant une ligne de 16 caractères rétro-éclairés, et sa propre circuiterie de gestion. En fait l'interface consiste uniquement en un réseau SIL (RES1) de résistances CMS de tirage à +Vcc, car le port P0 du micro-contrôleur est à drains ouverts. La commande du rétro éclairage se fait par l'intermédiaire du transistor (T1) qui sert d'amplificateur de courant, et une résistance ajustable (P1) est là de manière à pouvoir régler le contraste de l'afficheur. 5/ Interface d'alarme acoustique (Planche13/15,Fig.:23). Le résonateur utilisé, est un buzzer sub-miniature à tension continue. Cet interface est réalisée tout simplement à l'aide d'un transistor FET (T2), qui sert d'amplificateur de tension. Malgré qu'il soit enfermé à l'intérieur du boîtier étanche, cela n'altère en rien, ou si peu, au fait que l'on puisse l'entendre, car l'eau véhicule beaucoup mieux les ondes sonores que l'air. 6/ Dispositif de commutation d'alimentation et de régulation (Planche14/15,Fig.:24). Le coeur de ce montage est un amplificateur opérationnel (U5), monté en comparateur à fenêtre. La tension de référence est fixée par l'ajustable (P2) et la résistance (R18). Dès que le contacteur extérieur (J5) est immergé, cela entraîne une chute de tension sur l'entrée inverseuse (-) de (U5). Du fait que cette tension devient inférieure à celle régnant sur l'entrée non inverseuse (+) de (U5) cela entraîne le basculement de sa sortie, et met en conduction le transistor (T7). Le régulateur de tension (U6), mis en aval de (T7) peut remplir sa fonction, et ainsi alimenter le reste du circuit. (U4) est un convertisseur Analogique/Numérique sériel 12 bits de chez MAXIM, le MAX-187 (Marque et modèle déposé). C'est lui qui permet au micro-contrôleur de connaître la charge de la batterie.Le réseau (R14)-(R15) sert de pont diviseur, car (U4) ne peut mesurer que des tensions de 0 à 5 Volt, et (Dz2) est une diode zener de protection afin de limiter la tension d'entrée à +5V. Le principe de fonctionnement de (U4) est le suivant : Pour effectuer une mesure, le micro contrôleur met sa broche 7 (CS) à 0, de ce fait (U4) met sa broche 6 (DO) à 0 pour indiquer le début du cycle de conversion. Dès que cette conversion est terminée, (U4) met sa broche 6 à 1, qui indique la fin du cycle, alors le micro contrôleur envoi 13 impulsions d'horloge sur la broche 8 (SCLK). La donnée de 12 bit peut être prise sur la broche 6 de (U4) après chaque flan descendant de chaque impulsion d'horloge.La tension ainsi mesurée, et la charge restant dans la batterie sont données par les formules: UBatt = 4.3xUMes et x% restant=10ox(umes.-umin ) (Umax-umin.) UBatt. = Tension réelle de la batterie. UMax = Tension maximum mesurée par (U4). Umin. = Tension minimum mesurée par (U4) (seuil d'alerte). UMes. = Tension mesurée par (U4). La diode (D5) remplit une double fonction : Primo, elle sert à éviter la destruction des circuit intégrés, suite à une inversion de polarité, et secundo, de permettre à (U5) de prélever sur le contacteur (J5), sa mise en courtscircuits du fait de son immersion. car (D5) I'isole de la batterie. 7/ L'EEPROM (Planchel3/1 5,Fig.:23). Ce circuit est exactement le même que pour l'émetteur, ainsi que son principe de fonctionnement. Seule les informations stockées, ne seront pas les mêmes. II engrangera dans cette mémoire: CT, le numéro de palanquée, les heures de début et de fin de plongée, ainsi les six messages programmables. 8/ Interconnexions. Les connexions de l'afficheur LCD sont représentées sur la (Plancheî4/15,Fig.:24). Les câblages des autres connecteurs n'appellent aucun autre commentaire. * Le logiciel de l'ordinateur hôte. Deux versions de ce logiciels existent pour la gestion de l'émetteur. L'une fonctionne sous DOS et l'autre sous WINDOWS (marques déposées), pour des ordinateurs compatibles PC (marques déposées). Ce logiciel rassemble sur un même écran toutes les données concernant tous les récepteurs. Cet écran contient deux zones, d'une part une barre de menu se trouvant en haut de écran et contenant: FICHIERS GESTION OUTILS . ? Le menu FICHIERS contient: Sauvegarde une palanquée Sauvegarde toutes palanquées Charge une palanquée Charge toutes palanquées Efface une palanquée Efface toutes palanquées Le menu GESTION contient:: . Initialisation Nouvelle palanquée Modification palanquée Envoi message Paramètres complémentaires Profil d'une palanquée Le menu OUTILS contient: Programmation message. Date et heures étalonnage k Calculatrice Le menu ? contient: Index de l'aide A propos.. t Sauvegarde une palanquée. Cette fonction permet de sauvegarder tous les paramètres de la plongée, le CPU, ainsi que le pseudonyme de la palanquée. Le programme demandera la palanquée à sauvegarder. II créera un nouveau fichier si cette palanquée n'existait pas auparavant, si non il ajoutera les données de cette plongée à la suite du fichier déjà existant. t Sauvegarde toutes palanquées. Cette fonction reprend le même principe que plus haut, mais appliqué à toutes les palanquées présentes en mémoire. * Charge une palanquées. Cette fonction permet de charger tous les paramètres d'une palanquée (CPU, pseudonyme), ainsi que les données de la dernière plongée. t Charge toutes palanquées. Cette fonction reprend le même principe que plus haut, mais appliqué à toutes les palanquées. Le programme en chargera au maximum dix, et les prendra dans l'ordre alphabétique. * Efface une palanquée. Cette fonction permet de supprimer le fichier d'une palanquée. * Efface toutes palanquées. Cette fonction permet de supprimer les fichiers de toutes les palanquées. * Initialisation. Cette fonction lance la procédure d'initialisation des récepteurs. Cette opération est obligatoire pour leur fonctionnement. * Nouvelle palanquée. Cette fonction permet d'introduire les paramètres d'un nouveau récepteur (CPU, pseudonyme) avant de l'initialiser. * Modification palanquée. Cette fonction permet de modifier le CPU, et le pseudonyme d'un récepteur. II est à noter que le CPU n'apparaît pas clairement sur l'écran. et ceci pour interdire la divulgation de ce code. * Envoi message. Cette fonction permet d'envoyer un message à une ou à toutes les palanquées. * Paramètres complémentaires. Cette fonction permet d'introduire des paramètres complémentaires sur une palanquée: Profondeur max. et durée de plongée, lieu de plongée, ainsi que les noms des plongeurs formant cette palanquées (20 au maximum), plus une zone d'introduction de commentaires libres. * Profil d'une palanquée. Cette fonction permet de rappeler tous les éléments des dernières plongées pour une palanquée déterminée. Elle présente sous forme graphique, tous ses éléments. t Programmation message. Cette fonction permet d'introduire les trois messages programmables de I'emetteur et les trois messages du recepteur, de seize caractères alphanumériques au maximum chacun, et de les activer. Une sous fenêtre permet de sélectionner des messages qui ont déjà été programmés. ce qui évite de les réintroduire. * Date et heures. Cette fonction permet de modifier la date et l'heure de l'ordinateur. étalonnage k. Cette fonction permet de pouvoir détalonner le coefficient k de la formule de calcul de distance. Cette fonction reprend exactement le même principe que pour le programme de gestion de l'émetteur. * Calculatrice. Cette fonction donne accès à une calculatrice. * Index de l'aide. Cette fonction active et affiche l'index l'aide du programme. Cette aide permet de donner des informations complémentaires sur le fonctionnement du logiciel. * A propos... Cette fonction active une fenêtre qui affiche le nom du programme, son numéro de série, ainsi que le nom et l'adresse de son auteur. Le restant de l'écran possède dix fenêtres, correspondant chacune à un récepteur, contenant toutes les informations utiles de ces derniers. Sur la (Planche:15/15,Fig.:26), est représentée une de ces fenêtres. Elle ce présente en quatre parties. La première, se trouvant en haut à gauche, contient le pseudonyme de la palanquée, ainsi que l'heure de début et de fin de plongée. Dans la partie centrale, se trouve l'état de la charge de la batterie du récepteur, ainsi que le résultat de la dernière mesure de distance. Dans la partie droite de cette fenêtre se trouve trois indicateurs de l'état du récepteur: le premier, (INIT.), indique si ce récepteur a été initialisé. Le second, (ACK), indique la réponse du récepteur à la dernière commande ou fonction envoyée. La troisième, (ALARME), indique si une action du récepteur, ou le programme de gestion, a déclenché l'alarme. Enfin la partie basse, indique le dernier massage parvenu, ou le motif du déclenchement de l'alarme. Dès que le programme est lancé, il attendra que l'émetteur lui envoi la série de trois octet via le code 01. Ensuite il lancera la procédure d'auto diagnostic de l'émetteur par le code 08. Si il ne reçois aucune réponse, il affichera un message d'erreur. Si il ne reçoit pas la séquence commençant par 01 avant que l'utilisateur demande l'initialisation des palanquées, il affichera un message d'erreur l'informant sur ce défaut, de manière à ce qu'il place l'émetteur sur la fonction "GESTION RS-232". Application Industrielle. La fabrication des différents circuits imprimés, se fait sans aucun problème, par une chaîne industriel classique. Les composants utilisés son du domaine grand public, ce qui ne posera aucun problème d'approvisionnement, pour une fabrication à grande échelle Les deux transducteurs ultrasonores utilisés, ont été réalisé sur mesure mais rien ne s'cppose à leur fabrication pour une grande série. Le boîtier du récepteur a été réalisé en "RIGIPLAST" (marque déposée), par moulage sous pression, et le boîtier de l'émetteur, est monté sur étrier à deux degrés de liberté, de manière à pouvoir régler l'angle de vision de l'afficheur LCD. Le clavier de l'émetteur peut se présenter sous plusieurs formes, soit un clavier à membranes, qui est le mieux adapter pour l'étanchéité, soit un clavier à touches mécaniques. Un capuchon en caoutchouc a été monté sur le connecteur de l'interface RS-232 de l'émetteur, de manière à le rendre étanche aux divers projections qu'il pourrait subir, si un ordinateur n'était pas connecté. Le dispositif selon l'invention est particulièrement destiné à réaliser un dispositif de communication bidirectionnelle réalisant un "fil d'Ariane" électronique entre un plongeur subaquatique et son point de rattachement, ainsi que d'assurer la sécurité du plongeur subaquatique, en cas de danger. REVENDICATIONS (1) Dispositif de communication bidirectionnelle, réalisant un "fil d'Ariane" électronique entre un plongeur subaquatique et de son point de rattachement fixe ou mobile servant de référence, caractérisé en ce qu'il comporte un émetteur, et un récepteur. (2) Dispositif, selon la revendication (1), caractérisé par le faite qu'ils utilise les ultrasons pour véhiculer un message numérique, pour communiquer l'un avec l'autre. (3) Dispositif, selon les revendications (1), et (2), caractérisé en ce qu'il possède un code de transmission unique, permettant de se distinguer parmi d'autres systèmes de même type. (4) Dispositif, selon les revendications (1), (2), et (3), caractérisé en ce qu'il possède un émetteur capable de gérer plusieurs récepteurs, d'envoyer et de recevoir des messages pré définis ou non, d'assurer le calcul de la distance pour chaque récepteur. (5) Dispositif, selon les revendications (1), (2), et (3), caractérisé en ce qu'il possède un récepteur capable d'indiquer la distance, la direction, d'envoyer et recevoir des messages pré définis ou non. (6) Dispositif, selon la revendication (4), caractérisé par sa capacité à être connecté à un ordinateur hôte, possédant un logiciel qui se substituera au programme de gestion, qui prendra en charge toutes les fonction qu'assurait l'émetteur, et qui permettra de pouvoir faire évoluer l'émetteur sans modification de sa carte électronique. (7) Dispositif, selon la revendication (5), caractérisé par le fait qu'il peut être utilisé pour retrouver un récepteur en difficulté, même si il ne fait pas partie du même groupe de récepteurs géré par son émetteur. (8) Dispositif, selon la revendication (5), caractérisé par le fait qu'il possède un système d'allumage et d'extinction automatique lors de son immersion et de sa sortie de l'eau. (9) Dispositif, selon les revendications (6), (7), et (8), caractérisé par le fait qu'ils sont protégés contre le vol, par leur code personnel d'utilisateur, attribué lors de la cession de l'équipement. (10) Dispositif, selon les revendications (6), (7), et (8), caractérisé par le fait qu'il possede un sous-programme permettant de choisir la langue dans laquelle les messages seront affichés sur les écrans.