Page 8 - Enrolles_SNT
P. 8
Exercice 1
Combien de données différentes (appelées aussi champs) sont incluses dans une trame de type NMEA 0183?
Corrigé de l’exercice p. 37
Nous allons nous intéresser aux premiers champs de la trame NMEA, en étudiant les données de la trame saisie dans le script ANALYSE.
• $GPGGA correspond au type de trame reçue. Nous ne nous en servirons pas dans ce projet.
• 013742.000 est l’heure à laquelle la trame a été créée selon le format ## h ## min ##.### s.
• 4851.4931,N est la latitude selon le format ## degré ##.#### min. Le champ suivant # indique l’hémisphère.
• 00217.6763,E est la longitude selon le format ### degré ##.#### min. Le champ suivant # indique la position par rapport au méridien de Greenwich.
Complétez le script ANALYSE précédent avec la fonction temp(ch) :. Script
def temps(ch): h = ch[0:2] m = ch[2:4] s = ch[4:]
return h+" h "+m+" min "+s+" s" Exercice 2
ch[0:2] permet de récupérer
les caractères 0 à 1 de la chaîne
de caractères ch, le caractère 2 étant exclu.
À quoi servent les instructions m = ch[2:4] et s = ch[4:] ?
Que faut-il saisir dans la console Python du script ANALYSE pour afficher l’heure à laquelle la trame
NMEA a été émise?
EXTRACTION DE LA LOCALISATION
Corrigé de l’exercice p. 37
Théorie Pour connaître le lieu où la trame NMEA a été émise, il faut s’intéresser, d’après ce qui précède, à ses champs n° 2, n° 3, n° 4 et n° 5 (le premier champ étant le champ 0). Notre objectif étant de pouvoir situer sur une carte la localisation précise, nous allons devoir porter une attention particulière aux unités de mesure dans lesquelles les positions sont exprimées.
Pour exprimer une position géographique, on utilise habituellement les notations dites DMS pour degré, minute et seconde, ou bien les notations dites DD pour degré décimal. Dans la trame NMEA, c’est un troi- sième système de notation qui est utilisé, à savoir DM pour degré et minute décimale. Il faut donc écrire un convertisseur qui va permettre de passer d’un système à l’autre.
Il faut retenir que le degré d’angle vaut 60 minutes d’angle et qu’une minute d’angle vaut 60 secondes d’angle (1° = 60’ et 1’ = 60’’).
Nous allons écrire un convertisseur pour passer du système DM au système DD.
Complétez le script ANALYSE précédent avec les fonctions DM_DD_lat(ch) et DM_DD_lon(ch) :
34
7 ÉCRAN MAGIQUE 6 TI-RGB ARRAY 5 MUSIQUE ! 4 TRAME NMEA 3 ROVER 2 AUTOUR DES IMAGES 1 PIXEL ART