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).

 

Macintosh HD:Users:francisfustier:.Trash:minimal.gif

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.

Macintosh HD:Users:francisfustier:.Trash:1to4.gif

Fig.2 : Un émetteur connecté à 4 récepteurs

Macintosh HD:Users:francisfustier:.Trash:4to1no.gif

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.

 

Macintosh HD:Users:francisfustier:.Trash:mux.gif

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.