Uzun bir aradan sonra herkese tekrar merhaba. Bu gün NEO6M GPS modülü hakkında bir kaç kelam edeceğim. Aletimiz iki parçadan oluşuyor. Birinci parçası porselen antendir. Bu parça küçük bir transmisyon hattı ile NEO6M GPS entegresinin bulunduğu diğer parçaya bağlanır. Asıl işi yapan, NEO6M entegresidir.

mobile-gps-navigation-concept-smartphone-map-city-d-45234942

Modülümüz uydudan aldığı bilgileri RS232 protokolü ile NMEA cümlecikleri olarak verir.  NMEA da bir üst protokoldür.  NMEA nın detayından bahsetmeden önce GPS den kısaca bahsetmek istiyorum. GPS(Global Posioning System), küresel konumlanma sistemi olarak geçer. Toplam 24 uydu ile hizmet vermektedir.  En az üç uydu ile bağlantı sağlanılarak uydular arasındaki mesafe ölçülür ve dünyadaki konum tespit edilir.  Dünyadaki konum, Enlem ve Boylam bilgisi olarak gönderilir.  Şimdi hemen enlem ve boylam bilgisine de değinelim.

$T2eC16ZHJGUFFhyL!ipbBR5ktM60,g--60_57

Enlem ve boylamın matematikteki koordinat sisteminden pek farkı yok. Sadece ifade ediliş biçimleri farklı. Enlem ve boylam, sırasıyla “Derece”.”Dakika”,”Yer Belirteci” şeklinde verilir.  Mesela 33 Derece 20.99 Dakika/Kuzey Enlemi ve ya 33 Derece 20.99 Dakika/Batı boylamı gibi… Enlem ve boylam hakkında daha detaylı bilgi için şu sayfayı inceleyebilirsiniz;  http://uyduhaberlesme.com/enlem-boylam-nedir/

Şimdi gelelim NMEA cümleciklerine. Modüle enerji verildikten bir kaç dakika sonra üzerindeki yeşil led yanıp sönmeye ve RS232 protokolünden NMEA cümlecikleri göndermeye başlar. Bu süre modülün uydularla bağlantı kurabilmesi için gereklidir.   Eğer Arduino kullanıyorsanız modülün “TX” pinini arduinonun “RX” pinine VCC bacağını 5V’a ve GND bacağını Arduinonun GND bacağına bağlayın. Şöyle küçük bir program yazarak Arduinonun RS232 terminalinden NMEA cümleciklerini görebilirsiniz.

 

Gelen NMEA cümlecikleri şu şekildedir;

$GPGGA,102751.000,5621.6802,N,05630.3371,W,1,8,1.03,61.7,M,55.3,M,,*75
$GPGSA,A,3,10,07,05,02,29,04,08,13,,,,,1.72,1.03,1.38*0A
$GPGSV,3,1,11,10,63,137,17,07,61,098,15,05,59,290,20,08,54,157,30*70
$GPGSV,3,2,11,02,39,223,16,13,28,070,17,26,23,252,,04,14,186,15*77
$GPGSV,3,3,11,29,09,301,24,16,09,020,,36,,,*76
$GPRMC,102251.000,A,2321.6802,N,4630.3371,W,0.03,071015,,,A*75

Burada gördüğünüz üzere her cümlecik “$” işareti ile başlar ve GPGGA, GPGSA, GPGSV… gibi başlıklarla devam eder. Her bir başlık altında bazı seri bilgiler verilmiştir.  Tüm başlıklar altında konum bilgileri, saat ve tarih bilgileri,  farklı cihazlar için farklı şekillerde verilmiştir.  Ben GPRMC başlığına bakıyorum ve gerekli bilgileri oradan alıyorum.

Her farklı bilgi “,” ile birbirinden ayrılmıştır.  GPRMC başlığı altında sırasıyla saat bilgisi, uydu bağlantı bilgisi, enlem bilgisi, enlem konum belirteci, boylam bilgisi, boylam konum belirteci, hız ve saat bilgileri verilmiştir.

Yani  ” $GPRMC,102251.000,A,2321.6802,N,04630.3371,W,0.03,071015,,,A*75″ cümlesini anlamlı bir şekilde yazarsak;

Saat: 09:27:51.000

Uydu Bağlantı Durumu: A (Bağlı)

Enlem: 53 Derece 21.6802 Dakika

Enlem Konum Belirteci: N / North (Kuzey)

Boylam: 46 Derece 30.33 Dakika

Boylam Konum Belirteci: W / West Batı

 

Gelen NMEA cümleciklerini programsal olarak ayıklayıp içerisinden bu bilgileri almanız gerekiyor.  Şöyle basit bir program işinizi görecektir.;

 

  • Yusuf hocam paylaşım için teşekkürler.

  • erol3366

    Çok güzel bir yazı. Elinize sağlık Yusuf hocam.