Tutorial Membuat GPS Tracker menggunakan GPS NEO 6M dan SIM800L Berbasis Arduino Uno

Disaat Pandemi Covid-19 saat ini angka kejahatan meningkat. Hal ini karena berbanding lurus dengan Angka pengangguran yang meningkat. Kejahatan yang paling banyak adalah begal dan pencurian kendaraan bermotor. Kali ini kami akan berbagi tentang Tutorial Membuat GPS Tracker menggunakan GPS NEO 6M dan SIM800L Berbasis Arduino Uno. Alat ini berfungsi untuk melakukan pelacakan Posisi kendaraan kita menggunakan GPS. 

 

Baca Juga : Cara Program dan Akses Modul GSM SIM800L V.1 Menggunakan Arduino Nano/Uno.

 

Cara kerjanya adalah jika kita mengirimkan perintah pelacakan pada GPS Tracker, maka SIM800L akan mengirimkan SMS berupa link Koordinat Posisi Kendaraan kita. Link tersebut bisa digunakan untuk melacak Posisi Kendaraan menggunakan Google Maps. 

 

Berikut ini adalah Bentuk Fisik dari GPS NEO 6M:

 

Berikut ini adalah Schematic Diagram GPS Tracker menggunakan GPS NEO 6M dan SIM800L Berbasis Arduino Uno

Berikut ini adalah Hardware yang dibutuhkan :

1. Arduino Uno R3 >>> BELI DISINI

2. Module GPS NEO 6M >>> BELI DISINI

3. Module SIM800L >>> BELI DISINI

4. Dioda 1N4007 >>> BELI DISINI

5. Elco 470uF/16 Volt >>> BELI DISINI

6. Kabel Jumper Secukupnya >>> BELI DISINI


Berikut ini adalah Code Programnya :

 

/***************************

Tutorial Membuat GPS Tracker menggunakan GPS NEO 6M dan SIM800L Berbasis Arduino Uno

Oleh : Arduino Indonesia
Website : www.arduinoindonesia.id
Toko Online : www.workshopelectronics3in1.com
Blog : www.edukasielektronika.com

Copyright @2020

****************************/

#include "SIM900.h"
#include "sms.h"
SMSGSM sms;
char buffer[160];
char smsbuffer[160];
char n[20];
unsigned long last = 0UL;

#include "SoftwareSerial.h"

#include <TinyGPS++.h>
TinyGPSPlus gps;

#include <PString.h>
PString str(buffer, sizeof(buffer));
String kirim="";

int Buzzer = 12;

void setup()
{
  pinMode(Buzzer,OUTPUT);
  Serial.begin(9600);
  if (gsm.begin(9600))
  {
    sms.SendSMS("Nomor HP Anda", "GPS TRACKER ONLINE");
    delsms();
    digitalWrite(Buzzer,HIGH);
    delay(1000);
    digitalWrite(Buzzer,LOW);
    delay(1000);
    digitalWrite(Buzzer,HIGH);
    delay(1000);
    digitalWrite(Buzzer,LOW);
    delay(1000);
    digitalWrite(Buzzer,HIGH);
    delay(1000);
    digitalWrite(Buzzer,LOW);
    delay(1000);
  }
}

void loop()
{
  kirim="";
  while (Serial.available() > 0)
  if( gps.encode(Serial.read()))
  info();
}

void(* resetFunc) (void) = 0;

void delsms()
{
  for (int i=0; i<10; i++)
  { 
    int pos=sms.IsSMSPresent(SMS_ALL);
    if (pos!=0)
    {
      if (sms.DeleteSMS(pos)==1)
      {
      }
      else
      {
      }
    }
  }
}

void info()
{
  str.begin();
  str.print("https://maps.google.com/maps?q=");
  str.print(gps.location.lat(), 6);
  str.print(F(","));
  str.print(gps.location.lng(), 6);
  kirim=str;
   
  int pos=0;
  pos=sms.IsSMSPresent(SMS_ALL);
  if(pos)
  {
    sms.GetSMS(pos,n,20,smsbuffer,100);
    if(!strcmp(smsbuffer,"TrackingGPS"))
    {
      digitalWrite(Buzzer,HIGH);
      str.begin();
      str.print(kirim);
      sms.SendSMS(n,buffer);
      digitalWrite(Buzzer,LOW);
    }
    if(!strcmp(smsbuffer,"ResetGPS"))
    {
      sms.SendSMS(n,"GPS TRACKER RESET");
      delay(5000);
      resetFunc();
    }
    delsms();
  }


Selamat Mencoba.



 



Komentar

Postingan populer dari blog ini

Cara Mengakses dan Pemrograman Sensor Infrared (IR) Proximity FC-51 Menggunakan Arduino Uno

Cara Mengakses dan Pemrograman Sensor Gyroscope dan Accelerometer MPU6050 Menggunakan Arduino Uno