naslovna kako_povezati_gps_modem_i_AVR_mikrokontroler_elektronika_projekti_automatika.rsGPS modem je uređaj koji prima signale sa satelita, a obezbeđuje informacije o trenutnoj poziciji (geografska širina i dužina), nadmorskoj visini, vremenu itd. Ovaj modem poseduje antenu kojom prima signale. Nakon prijema, on ih i konvertuje u korisne informacije i šalje ih ka izlazu, najčešće u RS232 logičkom fomratu. Informacije o geografskoj širini, dužini itd se šalju neprekidno, u pratnji identifikacionog stringa.

U ovom članku pokazaćemo kako da povežete jedan GPS modem sa AVR mikrokontrolerom. Koristićemo ATmega16 kontroler. Očitane podatke ćemo prikazati na LCD displeju.
Veza GPS modema i mikrokontrolera (ATmega16) data je na slici 1. GND pinovi kola MAX232 i GPS modemu su povezani. Treba povezati i drugi pin MAX232 sa trećim pinom GPS modema, kao i treći pin MAX232 i drugi pin modema. Ovo je serijski ‘cross cable’ tip komunikacije. Većina GPS modema koristi upravo ovaj vid komunikacije. Izlazni signal se sastoji od niza stringova koji će u nastavku biti detaljno opisani.
Slika1 kako_povezati_gps_modem_i_AVR_mikrokontroler_elektronika_projekti_automatika.rs
Slika 1. Električna šema uređaja
Format dolaznog signala

  U nastavku je dat primer izlaznog signala sa GPS modema sa detaljnim objašnjenjima. Ovaj izlazni string sadrži informacije o geografskim širinama i dužinama, nadmorskoj visini, vremenu itd. Primer jednog izlaznog stringa dat je u nastavku:
$GPGGA,100156.000,2650.9416,N,07547.8441,E,1,08,1.0,442.8,M,-42.5,M,,0000*71
  1. String uvek počinje znakom $
  2. GPGGA – nepromenljivi podaci GPS-a
  3. ‘,’ – zarez služi za razdvajanje dve vrednosti
  4. 100156.000 – GMT vreme kao: 10(sati):01(minuta):56(sekundi):000(ms)
  5. 2650.9416,N – geografska širina kao 26(stepeni) 50(minuta) 9416 (sekundi) NORTH (Severno)
  6. 07547.8441,E – geografska dužina kao 075(stepeni) 47(minuta) 8441 (sekundi) EAST (Istočno)
  7. 1 – nepromenljiva kontrolna vrednost, 0 – neispravan podatak, 1 – ispravan podatak, 2 – DGPS
  8. 08 – broj satelita koji su trenutno dostupni
  9. 1.0 – HDOP
  10. 442.8,M – nadmosrka visina u metrima
  11. -42.5,M – geoid visina
  12. _ – DGPS podaci
  13. 0000 – DGPS podaci
  14. *71 – provera

  Kako bismo sa modema dobili potrebne informacije o geografskoj širini i dužini primenićemo sledeći algoritam:

  1. Preuzeti podatke i uporediti prvi bajt sa ‘$’. Ako se poklapaju, preći u naredni korak, u suprotnom tražiti nove podatake;
  2. Uzimati podatke bajt po bajt i proveriti da li su bajtovi jednaki ‘GPGGA’;
  3. Ako se u drugom koraku bajtovi jednaki, preći na četvrti korak, u suprotnom, vratiti se na prvi korak;
  4. Pošto nam nije potrebno vreme, preskočiti prvi zarez i sačekati naredni;
  5. Početi sa preuzimanjem podataka o širini i smeštanjem u niz ‘lati_value[]’ do sledećeg zareza;
  6. Preuzeti pravac u promenljivoj lati_dir;
  7. Uraditi isto i za dužinu;
  8. Ispisati podatke o širini i dužini na LCD, a potom se vratiti u prvi korak.

Source kod i šemu uređaja možete preuzeti ovde.

POSTAVI ODGOVOR

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.