Project Simple Menggunakan GPS NEO Dan Arduino UNO

Project Simple Menggunakan GPS NEO Dan Arduino UNO

Ingin tahu cara melacak lokasi menggunakan Arduino? Dalam proyek sederhana ini, kita akan menggunakan modul GPS NEO untuk menghubungkan Arduino UNO dengan sistem pelacakan GPS. Kamu akan belajar bagaimana membaca data lokasi secara real-time dan memanfaatkannya dalam berbagai aplikasi praktis. Yuk, ikuti langkah-langkahnya dan buat proyek GPS pertamamu!

untuk codenya kalian bisa gunakan code dibawah ini :

#include <Arduino.h>

#include <SoftwareSerial.h>
#include <TinyGPS++.h>
#include <TaskScheduler.h>

SoftwareSerial gps_Serial(A0, A1); // RX, TX (ESP) | TX, RX (GPS)
TinyGPSPlus gps;
unsigned long previousMillis_gps = 0;
const long interval_gps = 5000;
Scheduler gps_runner;
void debug_gps(String text);
void koneksi_gps();
void gpsTaskCallback();
Task gpsTask(500, TASK_FOREVER, &gpsTaskCallback);


void debug_gps(String text) {
  Serial.println(text);
}
void koneksi_gps() {
  debug_gps("gps Mencari Sinyal...");
  unsigned long currentMillis_gps = millis();
  while (gps_Serial.available() > 0) {
    if (gps.encode(gps_Serial.read())) {
      float latitude_gps = gps.location.lat();
      float longitude_gps = gps.location.lng();
      if (gps.location.isUpdated()) {
        debug_gps("Read, NEW location : " + String(latitude_gps, 6) + "," + String(longitude_gps, 6)); 
      
      } else {
        debug_gps("Read, OLD location : " + String(latitude_gps, 6) + "," + String(longitude_gps, 6)); 
      }
      if (currentMillis_gps - previousMillis_gps >= interval_gps) {
        String link_gps;
        if (String(latitude_gps, 6)=="0.000000" || String(longitude_gps, 6)=="0.000000")
        {
            debug_gps("gps : 0");
        }
        else
        {
            link_gps += "&latitude=" + String(latitude_gps, 6);
            link_gps += "&longitude=" + String(longitude_gps, 6);
            link_gps += "&gps=" + String(latitude_gps, 6) + "," + String(longitude_gps, 6);
            debug_gps(link_gps);
            //proses_iot(link_gps);
            previousMillis_gps = currentMillis_gps;
        }
      }
     
    }
  }
}
void gpsTaskCallback() {
  koneksi_gps();
}


void setup()
{
Serial.begin(9600);
  Serial.begin(115200);
  gps_Serial.begin(9600);
  gps_runner.addTask(gpsTask);
  gpsTask.enable();

}
void loop(){
gps_runner.execute();
delay(1000);


}


Untuk skematik, kamu bisa ikuti skematick di bawah ini

Untuk pengujian, kami telah melakukan uji coba yang bisa kamu lihat di video di bawah ini. Yuk, cek hasilnya dan lihat bagaimana program ini bekerja dengan lancar!

selamat mencoba, salam labrobotika

Jika anda berminat menggunakan jasa labrobotika, silahkan hubungi admin: WHATSAPP