Lassens Trimble GPS

Här kommer vi att labba lite med Trimble's Lassen LP GPS-modul, och bl.a. visa lite data på en alfanumerisk och grafisk display. Dessutom kommer vi logga latitud och longitud för att sedan lägga in detta på datorn och låta Google Earth rita ut våran rutt.

GPS-modulen använder ett seriellt interface (UART) för att kommunicera med extern hårdvara. Två pinnar på modulen används till detta, Rx och Tx. Med Tx tar vi emot data (lat, long, hastighet...) och med Tx sänder vi kommandon för att konfigurera vilka data och i vilket format GPS'en ska skicka denna.
Den data vi vill att modulen ska skicka kallas NMEA-strängar. Det är ett protokoll där datan är textbaserad, och vi använder endast detta format för att ta emot datan. En NMEA-sträng kan se ut på följande vis:

$GPGGA,103925.0,5828.176,N,01619.058,E,1,04,3.28,00019,M,028,M,,*5A <CR><LF>

Vad som är typiskt för teckensträngen är det inledande dollartecknet('$') följt av teckensträngens typ/namn(GPGGA) samt ett avslutande radbyte (<CR><LF>).
Varje specifik data är avskiljt i kolumner med kommatecken, och man kan på så sätt enkelt plocka ut den intressanta datan i vilket fält som helst, bara genom att räkna antalet kommatecken. Direkt när man startar GPS'en kommer den leta efter satelliter och kan exempelvis inte räkna ut latitud och longitud. Då är fälten tomma och en stränga kan istället se ut så här;

$GPGGA,165129.0,,,,,0,02,,,,,,,*

 

Vi tittar lite närmare på formatet.
$GPGGA,103925.0,5828.176,N,01619.058,E,1,04,3.28,00019,M,028,M,,*5A
|       1      |      2      |       3       |4|        5        |6|7| 8 |   9  |   10    |11| 12 |13| 14
1. GPGGA - Formattyp. Olika strängtyper innehåller olika GPS-data. GGA  och RMC är de vanligaste, som vi också kommer använda oss av senare.
2. 103925.0 - Tid i UTC - 10:39:25
3. 5828.176 - Latitud 58° 28.176"
4. N - Latitud riktning - North
5. 01619.058 - Longitud - 16° 19.058"
6. E - Longitud riktning - East
8. 04 - Antal satelliter som används
9. 3.28 - Höjd i förhållande till WGS84
10. 00019 - Höjd över havet
11. M - Enheten i vilken höjden är angiven - meter
14. 5A - checksumma

Vi kommer använda fälten för tid, lat, long och altitud.

RMC-strängen innehåller dessutom datum, hastighet och riktning.

PIC'en kommer först att skicka ut några kommandon till GPS'en via TSIP-protokoll där baudrate ställs till 9600,N,8,1 och utdatan ska vara NMEA-strängar.
Sen väntar vi på ett dollartecken och texten "GGA", varefter PIC'en läser in varje tecken tills en stjärna dyker upp.
Då kan vi skriva ut lite text på vår display.

Alfanumerisk display som visar tid, lat, long, höjd och antal satelliter:

Grafisk display som visar tid, datum, riktning, hastighet, lat, long, missvisning, höjd, satelliter och dessutom varvtal från en funktionsgenerator:

 

 

 

 

 

 

Denna hemsida är byggd med N.nu - prova gratis du med.