- Arduino tabanlı Araç Takip sistemi için Gerekli Bileşenler:
- GSM Modülü konumu izlemek için nasıl kullanılabilir:
- Arduino ile GSM ve GPS Arayüzünün Devre Açıklaması:
- Arduino kullanan GSM ve GPS tabanlı Araç Takip sistemi - Çalışıyor
- Araç Konumunu Takip Etmek için Arduino Koduyla GAM ve GPS Arayüzü
Araç Takip sistemleri, filo yönetimi ve varlık takip uygulamalarında çok yaygın olarak kullanılmaktadır. Günümüzde bu sistemler sadece aracın konumunu takip etmekle kalmıyor, aynı zamanda hızı raporlayabiliyor ve hatta uzaktan kontrol edebiliyor. Genel olarak araçların takibi, aracın konumunu Enlem ve Boylam (GPS koordinatları) şeklinde takip ettiğimiz bir süreçtir. GPS Koordinatları, bir konumun değeridir. Bu sistem dış mekan uygulamaları için çok verimlidir. Bu tür Araç Takip Sistemi Projesi yaygın olarak Kabinler / Taksiler, çalınan araçlar, okul / kolej otobüsleri vb. Takibinde yaygın olarak kullanılmaktadır. Bu Araç Takip Sistemi aynı zamanda GPS ve GSM kullanarak bir aracı takip edin ve ayrıca donanım ve yazılımda birkaç değişiklik yaparak Kaza Algılama Uyarı Sistemi, Asker Takip Sistemi ve daha pek çok şey olarak da kullanılabilir.
Ayrıca daha önce birçok başka araç takip sistemi kurduk, ilgilenirseniz kontrol edebilirsiniz.
- Arduino kullanarak GPS Araç Takibi ve Kaza Uyarısı
- Arduino ve ESP8266 kullanarak Google Haritalar ile Araç Takibi
- MSP430 kullanarak GPS Araç Takibi ve Kaza Uyarısı
- Arduino kullanarak LoRa tabanlı GPS Araç Takibi
- SIM800 ve Arduino kullanarak GPS olmadan Konum İzleyici
Arduino tabanlı Araç Takip sistemi için Gerekli Bileşenler:
Arduino'ya dava açan basit bir araç takip sistemi kurmak için aşağıdaki bileşenlere ihtiyacımız olacak.
- Arduino UNO
- GSM Modülü
- GPS Modülü
- 16x2 LCD
- Güç kaynağı
- Kabloların Bağlanması
- 10 K Tencere
GSM Modülü konumu izlemek için nasıl kullanılabilir:
GPS, Küresel Konumlandırma Sistemi anlamına gelir ve Dünya üzerindeki herhangi bir konumun Enlem ve Boylamını tam UTC saatiyle (Evrensel Zaman Koordineli) tespit etmek için kullanılır. GPS modülü, araç takip sistemi projemizin ana bileşenidir. Bu cihaz, saat ve tarihle birlikte her saniye uydudan koordinatları alır.
GPS modülü, izleme konumu ile ilgili verileri gerçek zamanlı olarak gönderir ve NMEA formatında çok fazla veri gönderir (aşağıdaki ekran görüntüsüne bakın). NMEA formatı, yalnızca bir cümleye ihtiyacımız olan birkaç cümleden oluşur. Bu cümle $ GPGGA'dan başlar ve koordinatları, zamanı ve diğer yararlı bilgileri içerir. Bu GPGGA, Küresel Konumlandırma Sistemi Düzeltme Verileri olarak adlandırılır. GPS verilerini ve dizelerini buradan okuma hakkında daha fazla bilgi edinin.
Dizedeki virgülleri sayarak $ GPGGA dizesinden koordinatı çıkarabiliriz. $ GPGGA dizesini bulduğunuzu ve bir dizide depoladığınızı varsayalım, ardından Enlem iki virgülden sonra ve Boylam dört virgülden sonra bulunabilir. Şimdi bu enlem ve boylam diğer dizilere yerleştirilebilir.
Aşağıda, açıklamasıyla birlikte $ GPGGA Dizesi bulunmaktadır:
$ GPGGA, 104534.000,7791.0381, K, 06727.4434, E, 1,08,0,9,510,4, M, 43,9, M,, * 47
$ GPGGA, HHMMSS.SSS, enlem, K, boylam, E, FQ, NOS, HDP, rakım, M, yükseklik, M,, sağlama toplamı verileri
Tanımlayıcı |
Açıklama |
$ GPGGA |
Küresel Konumlandırma sistemi düzeltme verileri |
HHMMSS.SSS |
Saat, dakika saniye ve milisaniye biçiminde zaman. |
Enlem |
Enlem (Koordinat) |
N |
Yön N = Kuzey, S = Güney |
Boylam |
Boylam (Koordinat) |
E |
Yön E = Doğu, W = Batı |
FQ |
Kalite Verilerini Düzeltin |
NOS |
Kullanılan Uyduların Sayısı |
HPD |
Yatay Hassasiyet Kaybı |
Rakım |
Deniz seviyesinden yükseklik |
M |
Metre |
Yükseklik |
Yükseklik |
Sağlama toplamı |
Sağlama Verileri |
Arduino ile GSM ve GPS Arayüzünün Devre Açıklaması:
Bu Araç Takip Sistemi Projesinin Devre Bağlantıları basittir ve belwo'daki resimde gösterilmiştir. Burada GPS modülünün Tx pini doğrudan Arduino'nun 10 numaralı dijital pinine bağlıdır. Burada Yazılım Seri Kitaplığı'nı kullanarak pin 10 ve 11'de seri iletişime izin verdik ve sırasıyla Rx ve Tx yaptık ve GPS Modülünün Rx pinini açık bıraktık. Varsayılan olarak Arduino'nun Pin 0 ve 1'i seri iletişim için kullanılır, ancak SoftwareSerial kitaplığını kullanarak, Arduino'nun diğer dijital pinlerinde seri iletişime izin verebiliriz. GPS Modülüne güç sağlamak için 12 Volt besleme kullanılır.
GSM modülünün Tx ve Rx pinleri doğrudan Arduino'nun Rx ve Tx pinlerine bağlanır. GSM modülü ayrıca 12v besleme ile çalışır. İsteğe bağlı bir LCD'nin veri pinleri D4, D5, D6 ve D7, Arduino'nun 5, 4, 3 ve 2 numaralı pinlerine bağlanır. LCD'nin komut pini RS ve EN, Arduino'nun 2 ve 3 numaralı pinlerine bağlanır ve RW pini doğrudan toprağa bağlıdır. LCD'nin kontrastını veya parlaklığını ayarlamak için bir Potansiyometre de kullanılır.
Arduino kullanan GSM ve GPS tabanlı Araç Takip sistemi - Çalışıyor
Bu projede Arduino bir GPS Alıcısı ve GSM modülü ile tüm süreci kontrol etmek için kullanılmaktadır. GPS Alıcısı, aracın koordinatlarının tespiti için kullanılır, GSM modülü, koordinatların SMS ile kullanıcıya gönderilmesi için kullanılır. Durum mesajlarını veya koordinatları görüntülemek için isteğe bağlı bir 16x2 LCD de kullanılır. GPS Modülü SKG13BL ve GSM Modülü SIM900A kullandık.
Programlamadan sonra donanımımız ile hazır olduğumuzda aracımıza takıp çalıştırabiliriz. Daha sonra aracımızın içinde bulunan sisteme “Takip Aracı” SMS'i göndermemiz yeterlidir. Dizinin başlangıcını ve sonunu doğru bir şekilde tanımlamak için #Track Vehicle * gibi bazı önek (#) veya son ek (*) kullanabiliriz, bu projelerde yaptığımız gibi: GSM Tabanlı Ev Otomasyonu ve Kablosuz Bildirim Panosu
Gönderilen mesaj, sisteme bağlı olan GSM modülü tarafından alınır ve mesaj verilerini Arduino'ya gönderir. Arduino onu okur ve tüm mesajdan ana mesajı çıkarır. Ve sonra bunu Arduino'daki önceden tanımlanmış mesajla karşılaştırın. Herhangi bir eşleşme olursa Arduino, GPS modülü verisinden $ GPGGA Dizgesini çıkararak koordinatları okur (GPS çalışması yukarıda açıklanmıştır) ve GSM modülünü kullanarak kullanıcıya gönderir. Bu mesaj, araç konumunun koordinatlarını içerir.
Araç Konumunu Takip Etmek için Arduino Koduyla GAM ve GPS Arayüzü
Programlama bölümünde ilk olarak kitaplıkları dahil ediyoruz ve LCD ve yazılım seri iletişimi için pinler tanımlıyoruz. Ayrıca verileri depolamak için dizilerle bazı değişkenler tanımlayın. Yazılım Seri Kitaplığı, pin 10 ve 11'de seri iletişime izin vermek için kullanılır.
#Dahil etmek
Burada array str , GSM modülünden alınan mesajı depolamak için kullanılır ve gpsString , GPS dizisini depolamak için kullanılır. char * test = ”$ GPGGA” koordinatlar için ihtiyacımız olan doğru dizgiyi karşılaştırmak için kullanılır.
Bunun ardından kurulum fonksiyonunda seri iletişim, LCD, GSM ve GPS modülünü başlattık ve LCD'de bir karşılama mesajı gösterdik.
geçersiz kurulum () {lcd.begin (16,2); Serial.begin (9600); gps.begin (9600); lcd.print ("Araç Takibi"); lcd.setCursor (0,1);……………
Döngü işlevinde mesaj ve GPS dizisi alıyoruz.
geçersiz döngü () {serialEvent (); eğer (temp) {get_gps (); izleme (); }}
Fonksiyonlar geçersiz init_sms ve boşluk send_sms () başlatılıyor ve mesaj göndererek kullanılır. İnit_sms işlevinde uygun 10 haneli Cep telefonu numarası kullanın.
Fonksiyon boşluk get_gps () alınan dize koordinatları ayıklamak için kullanılmıştır.
Function void gpsEvent () , GPS verilerini Arduino'ya almak için kullanılır.
İşlev void serialEvent () , GSM'den mesaj almak ve alınan mesajı önceden tanımlanmış mesajla (Takip Aracı) karşılaştırmak için kullanılır.
void serialEvent () {while (Serial.available ()) {if (Serial.find ("Track Vehicle")) {temp = 1; kırmak; }…………..
İlklendirme fonksiyonu 'gsm_init () ' , GSM Modülünü başlatmak ve yapılandırmak için kullanılır, burada öncelikle GSM modülünün bağlı olup olmadığı GSM modülüne 'AT' komutu gönderilerek kontrol edilir. Yanıt tamam alınırsa, hazır olduğu anlamına gelir. Sistem, hazır olana kadar veya 'Tamam' alınana kadar modülü kontrol etmeye devam eder. Ardından ATE0 komutu gönderilerek ECHO kapatılır, aksi takdirde GSM modülü tüm komutları tekrarlayacaktır. Son olarak Ağ kullanılabilirliği 'AT + CPIN?' komutu, takılan kart SIM kart ise ve PIN varsa, + CPIN: READY cevabını verir. Bu ayrıca ağ bulunana kadar tekrar tekrar kontrol edilir. Bu, aşağıdaki Video ile açıkça anlaşılabilir.
Aşağıdaki Kod Bölümünde yukarıdaki tüm işlevleri kontrol edin.