Arduino GPS Modülü (Neo6M)

Merhaba arkadaşlar,
Mobilhanem.com için hazırladığımız Arduino Eğitimlerine GPS modülü olan Neo 6M ile devam ediyoruz. Bu dersimizde Neo 6M‘den ve Arduino Neo 6M kullanımından bahsedeceğiz.

GPS Modülü (Neo 6M)

Arduino ile GPS modülü kullanılarak yapılabilecek bir çok proje var,  bazıları GPS takip sistemi, araba takip sistemi, yol izleyici ve daha fazlası yapılabilir. Bu yazımızda, Arduino’yu Neo6M GPS modülü ile arayüzlendirmeyi öğreneceğiz. Herhangi bir GPS modülü ile bu yazıyı takip edebilirsiniz.

 

 

Küresel Konumlandırma Sistemi(GPS)

GPS veya Küresel Konumlandırma Sistemi, konum, hız ve zaman senkronizasyonu sağlayan küresel bir navigasyon uydu sistemidir. GPS veya Global Konumlandırma Sistemi, hava, deniz ve kara seyahati için konum, hız ve zaman senkronizasyonu sağlamak üzere en az 24 uydu, bir alıcı ve algoritmalar kullanan küresel bir navigasyon uydu sistemidir. Uydu sistemi, her biri dört uyduya sahip altı dünya merkezli yörünge düzleminden oluşur. Küresel konumlandırma sistemi her zaman ve neredeyse tüm hava koşullarında çalışır.

Genel olarak, GPS’in beş temel kullanımı vardır:

  • Konum – Konum belirleme.
  • Gezinme – Bir konumdan diğerine gitmek.
  • İzleme – Nesneyi veya kişisel hareketi izleme.
  • Haritalama – Dünya haritaları oluşturma
  • Zamanlama – Hassas zaman ölçümleri yapılmasını sağlar.

GPS kullanan diğer endüstriler: tarım, otonom araçlar, satış ve hizmetler, askeri, mobil iletişim, güvenlik, havacılık ve balıkçılık.

Küresel konumlandırma sistemi teknolojisi de nesli tükenmekte olan türlerin izlenmesi ve hayvanlara kötü muamele gibi yeni ve yenilikçi şekillerde kullanılmaktadır. Örneğin, yasa dışı ticaret pazarını durdurmak için, küresel konumlandırma sistemi cihazları yapay fildişi içine yerleştiriliyor, böylece askeri güçler yasa dışı tüccarları takip edip bulabilir ve nesli tükenmekte olan vahşi yaşamı kurtarabilir.

Küresel Konumlandırma Sistemleri (GPS) Nasıl Çalışır?

Yeryüzünün etrafında dönen bir dizi uydu, daha sonra dünyanın yüzeyi üzerinde veya yakınında bulunan bir GPS cihazı tarafından okunan ve yorumlanan benzersiz bir sinyal gönderir. Konumu hesaplamak için bir GPS cihazının en az dört uydudan gelen sinyali okuyabilmesi gerekir.

Ağdaki her uydu dünyayı günde iki kez çevreler ve her uydu benzersiz bir sinyal, yörünge parametreleri ve zaman gönderir. Herhangi bir zamanda, bir GPS cihazı altı veya daha fazla uydudan gelen sinyalleri okuyabilir, ancak en az dört tane olması gerekir.

 

Tek bir uydu, bir GPS cihazının aldığı ve GPS cihazından uyduya olan mesafeyi hesaplamak için kullanılan bir mikrodalga sinyali yayınlar. Bir GPS cihazı yalnızca bir uydudan uzaklığı hakkında bilgi verdiğinden, tek bir uydu konum olarak fazla bilgi sağlamaz. Uydular, açılar hakkında bilgi vermez, bu da GPS cihazının konumunun kürenin yüzey alanı boyunca herhangi bir yerde olabileceği anlamına gelir – uydu merkez ve yarıçap GPS cihazının uydudan uzaklığıdır.

Arduino GPS Modülü Kullanımı

Arduino ile birlikte GPS modülünü kullanabilmek için devrenin şemasını gösterildiği gibi kurduktan sonra aşağıdaki kodları kullanarak ölçüm yapabilirsiniz. Gerekli açıklamaları kod satırları yanında bulabilirsiniz.

Arduino GPS Modülü Kodları

Arduino ile birlikte GPS modül kullanabilmek için devrenin şemasını gösterildiği gibi kurduktan sonra aşağıdaki kodları kullanarak ölçüm yapabilirsiniz. Gerekli açıklamaları kod satırları yanında bulabilirsiniz.

NEO-6M GPS Modülü, EEPROM’da yerleşiktir ve seramik anten ile birlikte gelir. Rs232 TTL arabirimini kullanır ve 9600bps varsayılan Baud hızı ile 3-5V besleme üzerinde çalışır. Bu nedenle, kodlama sırasında ikisi arasındaki seri iletişimin baud hızına dikkat etmeliyiz.

#include <SoftwareSerial.h>
 
static const int RXPin = 4, TXPin = 3;
static const uint32_t GPSBaud = 9600; // GPS baud hızınız 
 
// GPS cihazınıza seri bağlantı yapma
SoftwareSerial ss(RXPin, TXPin);
 
void setup()
{
  Serial.begin(115200); // Serial monitor baud hızınız 115200, bu hızı serial ekranda seçmeyi unutmayın
  ss.begin(GPSBaud);
}
 
void loop()
{
  // Ekrana yazırılacak veriler
  while (ss.available() > 0){
    Serial.write(ss.read());
  }
}

Seri Monitör Ekranı:

gps modülü seri monitör

Burada, verilerin istediğimiz formatta olmadığını, bir çeşit karışıklık olduğunu görebilirsiniz. Şimdi, bunun için özel bir kütüphane kullanacağız en popüler ve kesin TinyGPS ++ kütüphanesini kullanacağız.  Kütüphaneyi Buradan İndirin

TinyGPS ++ kitaplığını kullanma:

  1. İlk önce Arduino IDE’mize TinyGPS ++ kütüphanesini dahil etmeliyiz. Yukarıda paylaşılan GitHub bağlantısına gidin ve indirin. Bu bir zip dosyası, dosyanın içindeki klasörleri kütüphaneler klasörü altındaki Arduino IDE dizinine çıkartın.
  2.  Arduino IDE’yi açın ve Dosya altında Örnekler – TinyGPSPlus’a gidin ve bu örnek kodlardan herhangi birini yükleyin. Burada <DeviceExample> kodunu yüklüyoruz. Kod yüklendikten sonra seri monitörü açın ve verilerin artık Tarih / Saat ile birlikte Konum: Enlem, Boylam gibi daha okunabilir olduğunu göreceksiniz.

 

 

Dikkat Edilmesi Gerekenler

  • Çalıştırdığınızda GPS modülünün başlangıçta verileri okuması yaklaşık yarım dakika veya bir dakika sürer, bu süre bitmeden gücü kesmeyin serial monitörü izlemeye devam edin.
  • Bazı durumlarda, antenle ilgili sorun olabilecek verileri algılayamazsa, anteni fişten çekin (çıkarılabilir ise) ve tekrar takın.
  • Kodda “Check Connection” (Bağlantıyı kontrol et)  yazıyorsa, vazgeçmeden önce mutlaka iki kez kontrol etmelisiniz. Ayrıca, bazen TX ve RX pinlerinin değiştirilmesi tercih edilir ve şaşırtıcı bir şekilde çalışır.
  • Pencere olmayan kapalı ortamlarda modül yeterli sayıda uyduya bağlanamayabilir, bu yüzden açık hava en iyi test yeridir veya pencere kenarı işinizi görecektir.

 

Neler Öğrendik

Bu dersimizde günlük yaşantımızda kullandığımız birçok cihazda kullanılan GPS modülünü tanıdık. Daha sonra bu sensörün arduino ile birlikte kullanımını gördük.

İşte, şimdi edindiğiniz bilgilerden şu anda yapabileceğiniz bazı projeler.
  • GPS Araç Takip Sistemi
  • GPS Veri kaydedici
  • Akıllı IOT GPS Takip Sistemi

Tüm arduino yazılarımızı buradan ulaşabilirsiniz.

Sorularinizi Buradan sorabilirsiniz.

21

Ömer Gürbüz

Yorum Yaz

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?