Étape 3: Déchiffrage des protocoles NMEA
Comment nous recevons des données ?
Plupart des récepteurs que vous croiserez transmettra informelle via une connexion de données série simple. Souvent il est codé dans la plaines caractères ASCII, mais les autres formats binaires compacts sont disponibles chez certains modules pour les débits supérieurs. Nous regarderons un ASCII ordinaire d’alimentation car il est beaucoup plus facile à interpréter. Les données que nous recevons depuis le module GPS sont mis en forme selon la norme de NMEA 0183.
Le protocole NMEA
La National Marine Electronics Association a élaboré une norme pour de nombreux appareils électriques de bord différents. Le NMEA 0183 standard est utile pour les récepteurs GPS de sortie puisque c’est un clair et relativement lente (généralement 4800 ou 9600 bauds) protocole qui est acceptable pour n’importe quel microcontrôleur moderne avec un UART à gérer. Penchons-nous sur un bloc de quatre sortie de chaîne par le module MTK3339. J’ai espacé la chaîne ci-dessus pour le rendre plus clair à lire, mais le flux brut n’a pas d’espaces après les virgules et retourne un seul ensemble de chariot et saut de ligne caractères à la fin de chaque chaîne (chaînes commencent par un caractère "$").
GPGSA
Satellites actifs de positionnement mondial - cette chaîne nous dira le nombre de satellites qui se trouvent actuellement dans la portée du module, le type de correction (2D ou 3D) et la précision du signal.
GPBOD
Les coordonnées de positionnement recommandé Minimum globales - c’est la viande des chaînes de données, contenant l’heure de fixer, si le récepteur est ok, latitude, longitude, vitesse (en noeuds), type de difficulté.
GPVTG
Global de positionnement Course Over Ground (bonne piste) - ce dernier contient plus de données concernant la vitesse en nœuds et en kilomètres par heure.
GPGGA
Global Positioning système Fix données - données pleine coordination contenant tout dans la chaîne RMC, en plus des données de précision supplémentaire, mais aussi d’altitude. Nous allons briser cette chaîne plus à fond sur l’étape suivante.