NMEA et Multiplexeurs
NMEA est un organisme de standardisation des
protocoles de communication entre les instruments électroniques maritimes. Un
protocole nommé NMEA-0183 a été défini pour permettre aux instruments de communiquer
et d'échanger des données entre eux.
Par exemple, un compas électronique peut envoyer
un cap à un radar pour lui permettre un affichage Nord vers le haut. Un GPS
peut envoyer une information d'écart de route à un pilote automatique pour déclencher
une route programmée, etc.
Emetteurs et
récepteurs
Une communication au protocole NMEA-0183 est
établie au minimum entre un instrument qui envoie des données et un deuxième
qui les reçoit. Par convention, l'instrument qui envoie les données est appelé émetteur
(talker), l'instrument qui reçoit
les données est appelé le récepteur (listener) (Fig.1).
![]()
Fig.1 : Système NMEA minimum
Avec le protocole NMEA-0183,
les données sont traduites en phrases composées de caractères lisibles. Le
contenu de chaque phrase est défini par le standard et débute toujours par un
signe '$' ou '!' et se termine toujours par un code spécial appelé LF (Line Feed). De ce fait, un récepteur sait toujours quand une
phrase commence et quand elle finit. Le standard NMEA spécifie également qu'un
émetteur peut envoyer une ou plusieurs phrases au rythme qu'il souhaite, mais
de préférence pas plus d'une fois par seconde. Une exception toutefois à cette
règle concerne les compas gyroscopiques et fluxgate,
qui peuvent transmettre plus de dix phrases par seconde.
Le
standard NMEA spécifie qu'un émetteur doit avoir la capacité de générer la
communication vers 4 récepteurs. Cela signifie que l'on peut connecter jusqu'à
4 instruments recevant des données d'un autre unique instrument (Fig.2). Cela
est relativement facile à accomplir, comme pour une personne de raconter une
histoire à quatre autres personnes : la seule contrainte étant que le narrateur
parle assez haut.
|
Fig.2 : Un émetteur connecté à 4 récepteurs |
Fig.3 : 4 émetteurs connectés à un récepteur |
La
situation devient plus compliquée quand plusieurs émetteurs doivent envoyer des
données à un unique récepteur. Un exemple classique et celui d'un GPS et d'une girouette-anémomètre devant envoyer leurs données à un
pilote automatique. Un autre exemple étant celui d'un ordinateur de navigation
(récepteur) devant recevoir les données de plusieurs émetteurs (GPS, AIS, instruments)
(fig.3). Le standard NMEA n'a pas prévu ces situations, et sans équipement
spécifique, c'est impossible. Les émissions de chaque émetteur se
court-circuitent et les phrases transmises seront corrompues. L'image étant
celle de plusieurs narrateurs racontant chacun une histoire différente au même
moment à un unique auditeur.
Le multiplexeur
Un multiplexeur NMEA, parfois appelé combiner,
résout le problème en pratiquant un stockage intermédiaire des phrases. Chaque
émetteur (fig.4) est connecté à sa propre entrée NMEA
du multiplexeur. Le multiplexeur lit les phrases complètes reçues par chaque
entrée et les stocke dans une mémoire tampon, ou buffer. Il dispose d'un
buffer par entrée, suffisant pour contenir plusieurs phrases. Ensuite le
multiplexeur vérifie en boucle la présence de phrases dans chaque buffer.
A chaque passage, une phrase est récupérée dans le buffer et envoyée par la
sortie NMEA du multiplexeur.

Fig.4 : Utilisation d'un multiplexeur
La
figure 4 ci-dessus montre l'installation classique d'un multiplexeur, par
lequel les données NMEA transmises par 4 instruments sont combinées en un
unique flux. Ce flux est envoyé à l'ordinateur connecté par une interface série
RS-232 ou USB, pour être utilisé par un logiciel de navigation. Un pilote
automatique peut également être connecté afin de recevoir les données NMEA le
concernant depuis les instruments, l'ordinateur, ou bien les deux suivant la
configuration du multiplexeur. Le pilote automatique peut aussi être connecté
directement à l'ordinateur si le logiciel transmet lui-même les données NMEA
qu'il reçoit des instruments et du GPS.