U-BLOX NEO 6M GPS Modülü

U-BLOX NEO 6M GPS Modülü

NEO-6M GPS modülü, küçük boyutu, düşük güç tüketimi ve yüksek hassasiyeti ile bilinen bir GPS alıcı modülüdür. Bu modül, GPS uydu sisteminden gelen sinyalleri alır ve bu sinyalleri işleyerek konum, hız, zaman ve diğer GPS verilerini sağlar. NEO-6M modülü, genellikle harici anten ve bir mikrodenetleyici gibi diğer cihazlarla entegre edilir.

NEO-6M GPS modülünün temel işlevleri şunlardır:

  1. Konum Belirleme: GPS alıcısı, uydu sinyallerini alarak cihazın dünya üzerindeki konumunu belirler. Bu, enlem ve boylam koordinatları şeklinde sağlanır.
  2. Hız ve Yön Belirleme: GPS alıcısı, alınan uydu sinyallerini kullanarak cihazın hızını ve hareket yönünü belirler.
  3. Zaman Sağlama: GPS alıcısı, uydu saatlerinden gelen zaman bilgilerini kullanarak hassas bir zaman kaynağı sağlar.
  4. Navigasyon: GPS alıcısı, kullanıcının belirli bir hedefe yönlendirilmesine veya rota oluşturulmasına yardımcı olabilir. Bu, GPS modülünden gelen konum ve yön bilgilerinin bir navigasyon uygulaması tarafından işlenmesiyle gerçekleşir.

NEO-6M GPS modülü, genellikle hobi elektroniği projeleri, dronlar, araç takip sistemleri, denizcilik uygulamaları, harita oluşturma ve diğer yer belirleme amaçları için kullanılır. Kullanıcılar, bu modülü entegre etmek suretiyle cihazlarına GPS yetenekleri ekleyebilir ve hassas konum ve navigasyon bilgilerini elde edebilirler.

NEO-6M GPS modülü, GPS verilerini iletmek için standart NMEA 0183 protokolünü kullanır. Bu protokol, GPS alıcısından gelen verileri belirli bir formatta sağlar. Özellikle, NEO-6M modülü $GPGGA, $GPRMC, $GPGLL, $GPGSA, $GPGSV, $GPVTG gibi yaygın NMEA cümlelerini kullanır. Bu cümleler, konum, hız, zaman ve diğer GPS verilerini sağlar ve genellikle seri iletişim bağlantısı üzerinden okunur ve işlenir. Bu sayede, NEO-6M GPS modülünden alınan NMEA cümleleri, kullanıcının konum ve navigasyon bilgilerini almasına ve işlemesine olanak tanır.

Modül Bağlantısı

Modülden Gelen GPS Dataları Almak İçin Gerekli Kod

#include <SoftwareSerial.h>

// GPS modülünden veri almak için kullanılacak pinler
const int RXPin = 10;  // GPS modülünden gelen veriyi okumak için
const int TXPin = 11;  // GPS modülüne komut göndermek için

// SoftwareSerial nesnesi oluştur
SoftwareSerial gpsSerial(RXPin, TXPin);

void setup() {
  // Seri monitör ve GPS seri bağlantısını başlat
  Serial.begin(9600);
  gpsSerial.begin(9600);
}

void loop() {
  // GPS modülünden gelen veriyi oku
  if (gpsSerial.available()) {
    String gpsData = gpsSerial.readStringUntil('\n');
    
    // Gelen veriyi seri monitöre yazdır
    Serial.println(gpsData);
  }
}

MODÜLDE KULLANILAN NMEA CÜMLELERİNİ PARÇALARINA AYIRARAK DETAYLANDIRALIM

Her bir NMEA cümlesini parçalara ayırarak detaylandıralım:

  1. $GPGGA
    • Açıklama: GPS Fix verisi içerir ve konum, uydu sayısı, DOP ve yükseklik bilgilerini sağlar.
    • Örnek:$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
    • Parçaları:
      • Saat: 123519
      • Enlem: 4807.038 N
      • Boylam: 01131.000 E
      • Fix kalitesi: 1
      • Kullanılan uyduların sayısı: 08
      • HDOP: 0.9
      • Deniz seviyesinden yükseklik: 545.4 M
      • Geoid yüksekliği: 46.9 M
  2. $GPGLL
    • Açıklama: Enlem, boylam ve zaman bilgilerini sağlar.
    • Örnek:$GPGLL,4916.45,N,12311.12,W,225444,A
    • Parçaları:
      • Enlem: 4916.45 N
      • Boylam: 12311.12 W
      • Saat: 225444
  3. $GPGSA
    • Açıklama: GPS DOP ve aktif uyduları listeler, pozisyon doğruluğu hakkında bilgi verir.
    • Örnek:$GPGSA,A,3,04,05,09,12,24,26,,,,,,,1.8,1.0,1.5*33
    • Parçaları:
      • Seçim modu: A
      • Konumlama modu: 3
      • Kullanılan uydular: 04, 05, 09, 12, 24, 26
      • PDOP: 1.8
      • HDOP: 1.0
      • VDOP: 1.5
  4. $GPGSV
    • Açıklama: Görünen GPS uydularının detaylı bilgilerini (PRN, el, azimut, SNR) içerir.
    • Örnek:$GPGSV,2,1,08,01,40,083,41,02,17,070,43,03,29,094,42,04,12,308,43*70
    • Parçaları:
      • Toplam cümle sayısı: 2
      • Cümlenin sırası: 1
      • Görülen toplam uydular: 8
      • PRN, elevasyon, azimut, SNR (sinyal gücü) bilgileri
  5. $GPRMC
    • Açıklama: Minimum önerilen navigasyon verilerini (zaman, durum, enlem, boylam, hız, rota, tarih) sağlar.
    • Örnek:$GPRMC,184441.00,A,3720.51868,N,04042.64191,E,0.233,,050624,,,A*76
    • Parçaları:
      • Saat: 184441.00
      • Durum: A
      • Enlem: 3720.51868 N
      • Boylam: 04042.64191 E
      • Hız: 0.233
      • Tarih: 050624
      • Mod göstergesi: A
  6. $GPVTG
    • Açıklama: Yere göre rota ve hız bilgilerini verir.
    • Örnek:$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K*48
    • Parçaları:
      • Gerçek rota: 054.7 T
      • Manyetik rota: 034.4 M
      • Hız: 005.5 Knot
      • Hız: 010.2 Kilometer/saat

Bu parçalar, NEO-6M GPS modülünden alınan yaygın NMEA cümlelerini ve her birinin içerdiği bilgileri açıklar. Bu bilgiler, genellikle GPS cihazlarından alınan verileri analiz etmek ve konum bilgisini belirlemek için kullanılır.

Açıklamalar ve Kullanım:

  • $GPGGA: Bu cümle GPS alıcısından alınan temel konum ve uydu bilgilerini içerir.
  • $GPGLL: Enlem ve boylamın yanı sıra zaman bilgilerini verir.
  • $GPGSA: GPS alıcısının pozisyon doğruluğu ve hangi uyduları kullandığı hakkında bilgi sağlar.
  • $GPGSV: Görünen uyduların ayrıntılı bir listesini verir, bu da sinyal kalitesi ve uydu görünürlüğü hakkında bilgi sağlar.
  • $GPRMC: GPS alıcısından gelen temel navigasyon bilgilerini sağlar, bu genellikle en önemli cümledir.
  • $GPVTG: GPS alıcısından alınan rota ve hız bilgilerini içerir.

Bu NMEA cümleleri, GPS modülünün gönderdiği verilerin nasıl çözümleneceği ve kullanılacağını anlamak için gereklidir. Her bir cümle, belirli bir bilgi türünü standart bir formatta sağlar ve bu veriler navigasyon, takip ve konumlandırma uygulamalarında kullanılır.

COLD START ve HOT START Nedir?

NEO-6M GPS modülü, üzerindeki yedek pil sayesinde Hot Start özelliğini destekler. Bu yedek pil, GPS modülünün kapatılması durumunda bile verilerin korunmasını sağlar. İşte Hot Start ve Cold Start arasındaki farklar ve pilin ne kadar süre sonra etkisiz hale geldiğiyle ilgili bilgiler:

  1. Hot Start (Sıcak Başlatma):
    • Hot start, GPS alıcısının kısa bir süre içinde tekrar açılması durumunda gerçekleşir.
    • NEO-6M GPS modülünde bulunan yedek pil sayesinde, modül kapatıldıktan sonra bile önceki konum ve uydu bilgileri bellekte korunur.
    • Bu yedek pil, modülün tekrar açılması durumunda önceki verilere erişim sağlar ve daha hızlı bir başlangıç yapılmasını sağlar.
    • Hot start süresi, genellikle saniyeler veya birkaç dakika içinde tamamlanır.
  2. Cold Start (Soğuk Başlatma):
    • Cold start, GPS alıcısının tamamen kapatıldıktan sonra tekrar açılması durumunda gerçekleşir.
    • Yedek pilin etkisiz hale gelmesi veya pil gücünün tükenmesi durumunda, NEO-6M GPS modülü tüm önceki verilerini kaybeder ve başlangıç pozisyonunu bilmeden sıfırdan başlar.
    • Cold start sırasında, GPS alıcısı ilk sabitlenme sürecini tamamlamak için daha uzun süre gerektirebilir çünkü alıcı tüm uydu sinyallerini yeniden bulmalı ve işlemlemelidir.
    • Cold start süresi, birkaç dakikadan onlarca dakikaya kadar değişebilir, bu da uydu görünürlüğüne, anten yerleşimine ve GPS alıcısının kalitesine bağlıdır.

NEO-6M GPS modülünde bulunan yedek pil, modül kapatıldığında bile önceki verilerin korunmasını sağlar ve böylece Hot Start süresinin daha hızlı olmasını sağlar. Ancak, pilin etkisiz hale gelmesi durumunda veya pil gücünün tükenmesi durumunda Cold Start süreci başlatılır ve daha uzun bir sabitlenme süresi gerekebilir. Yedek pilin etkinliği ve ömrü, modülün kalitesine ve kullanım koşullarına bağlı olarak değişebilir.

U-BLOX NEO 6M GPS MODÜLÜNÜ GERÇEK ZAMANLI
OLARAK U-CENTER 2 YAZILIMI ÜZERİNDEN İZLEME

u-center, u-blox GPS modüllerinin yapılandırılması, test edilmesi ve verilerin görüntülenmesi için kullanılan bir uygulamadır. NEO-6M modülü Arduino ile kullanılarak u-center üzerindeki verileri görüntülemek için şu adımları izleyebilirsiniz:

  1. Bağlantıları Yapın:
    • NEO-6M modülünü Arduino’ya bağlayın. TX pini Arduino’nun RX pinine, RX pini ise Arduino’nun TX pinine bağlanmalıdır. Ayrıca modülün güç ve toprak pinlerini de Arduino’ya bağlayın.
  2. Arduino Kodunu Yükleyin:
    • Yukarıda verdiğimiz gibi Arduino için bir kod yazın veya aşağıdaki örneği kullanın. Bu kod, GPS modülünden gelen verileri seri port üzerinden u-center programına iletecektir.
  3. u-center’ı İndirin ve Kurun:
    • u-center’ı resmi u-blox web sitesinden indirin ve bilgisayarınıza kurun.

  1. Aygıtı Bağlayın:
    • Arduino’nuzu bilgisayarınıza bağlayın ve u-center programını açın.
    • Menü çubuğundaki “Devices/Add Device” (Cihazlar/Cihaz Ekle) sekmesini seçin ve “Port” (Bağlantı Noktası) altından Arduino’nun bağlı olduğu seri portu seçin.
  1. Baud Hızını Ayarlayın:
    • Arduino kodunda belirttiğiniz baud hızına (örneğin, 9600) uygun olanı seçin.

  1. Bağlantıyı Kurun:
    • “Connect” (Bağlan) düğmesine tıklayarak u-center’ın Arduino ile bağlantı kurmasını sağlayın.
  2. Verileri İzleyin:
    • Bağlantı başarılı olduğunda, u-center programında GPS modülünden gelen verileri görebilirsiniz. Konum bilgileri, hız, yükseklik ve diğer parametrelerin gerçek zamanlı olarak güncellenen değerlerini izleyebilirsiniz.
  1. Parametreleri Yapılandırın (Opsiyonel):
    • Gerekirse, u-center üzerinden GPS modülünün çeşitli parametrelerini yapılandırabilirsiniz. Örneğin, veri gönderme sıklığını veya kullanılan navigasyon protokolünü ayarlayabilirsiniz.

Bu adımları takip ederek, Arduino ve NEO-6M GPS modülü kullanarak u-center programını nasıl kullanacağınızı öğrenebilirsiniz.

Yorumlar kapalı.

nurullahozkan@outlook.com.tr