Tranzystor.pl – Vortal Elektroniczny

Arduino – GPS NEO-6M

W tym szybkim wpisie pokaże, jak używać modułu GPS NEO-6M z Arduino. Wszystko aby uzyskać dane GPS. GPS oznacza Global Positioning System i może być używany do określania pozycji, czasu jak i prędkości.

Potrzebne komponenty:

Połączenie modułu GPS z Arduino

Moduł GPS NEO-6M posiada cztery piny: VCC, RX, TX, i GND, „gada” z Arduino poprzez komunikację szeregową za pomocą pinów TX i RX, mamy w sumie 4 przewody.

GPS NEO-6M Arduino
VCC 5V
RX Pin 3
TX Pin 4
GND GND

Kod programu:

#include <SoftwareSerial.h>

SoftwareSerial gps(4, 3);

void setup(){
Serial.begin(9600);
gps.begin(9600);
}

void loop(){
while (gps.available() > 0){
byte gpsData = gps.read();
Serial.write(gpsData);
}
}

Co do samego programu prostszego nie znam 😉

Po wgraniu otwórz monitor szeregowy przy szybkości transmisji 9600.

Powinieneś otrzymać kilka informacji w standardowym języku GPS, NMEA. Każda linia, którą otrzymujesz w monitorze szeregowym, jest zdaniem NMEA.

NMEA to skrót od National Marine Electronics Association, a w świecie GPS jest to standardowy format danych obsługiwany przez producentów GPS.

Jak odczytywać język NMEA

Zdania NMEA zaczynają się od znaku $, a każde pole danych jest oddzielone przecinkiem.

$GPRMC,203140.00,A,5326.84295,N,01432.49372,E,0.058,,250820,,,A*7B
$GPVTG,,T,,M,0.058,N,0.107,K,A*28
$GPGGA,203140.00,5326.84295,N,01432.49372,E,1,09,1.14,31.6,M,39.6,M,,*62
$GPGSA,A,3,28,30,05,07,08,27,18,13,15,,,,2.17,1.14,1.85*07
$GPGSV,3,1,10,05,45,215,23,07,34,069,26,08,16,046,32,09,01,117,*71
$GPGSV,3,2,10,13,61,289,31,15,28,295,20,18,13,313,29,27,08,015,15*73
$GPGSV,3,3,10,28,45,150,33,30,66,076,32*74
$GPGLL,5326.84295,N,01432.49372,E,203140.00,A,A*62

Istnieją różne typy zdań NMEA. Typ wiadomości określają znaki przed pierwszym przecinkiem. GP po znaku $ wskazuje, że jest to pozycja GPS. $ GPGGA to podstawowy komunikat GPS NMEA, który dostarcza trójwymiarowych danych o lokalizacji i dokładności. W następującym zdaniu:

$GPGGA,203140.00,5326.84295,N,01432.49372,E,1,09,1.14,31.6,M,39.6,M,,*62

Pozostałe dane NMEA zawierają dodatkowe informacje:

$ GPGSA – GPS DOP i aktywne satelity
$ GPGSV – Szczegółowe informacje o satelitach GPS
$ GPGLL – szerokość i długość geograficzna
$ GPRMC – Niezbędne dane GPS pvt (pozycja, prędkość, czas)
$ GPVTG – Poprawiona prędkość

Aby dowiedzieć się, co oznacza każde pole danych w każdym z tych zdań, możesz zapoznać się z danymi NMEA tutaj .

5/5 - (2 ocena/y)
Exit mobile version