TABLE OF CONTENTS
[Link] Contents Page
no
1. Introduction 6
2. Objects 7
3. Components Required 7
4. Circuit Diagram 8
5. Arduino Code 10
6. Working Principle 10
7. Conclusion 11
8. References 11
Smart GPS Tracker Using Arduino
Introduction
In today's world, GPS (Global Positioning System) technology plays a crucial role in tracking
and navigation. This mini-project presents a Smart GPS Tracker using an Arduino board,
GPS module, and GSM module to track real-time location and send coordinates via SMS. The
system can be used in vehicle tracking, personal safety, and other location-based applications.
Objectives
To design a smart GPS tracking system using Arduino.
To integrate a GPS module for obtaining location coordinates.
To use a GSM module for sending location details via SMS.
To develop an efficient and cost-effective tracking system.
Components Required
Arduino Uno
GPS Module (Neo-6M or similar)
GSM Module (SIM800L or similar)
16x2 LCD Display (Optional for Displaying Coordinates)
Power Supply (5V/12V Adapter or Battery Pack)
Connecting Wires
SIM Card with Active SMS Service
Circuit Diagram
The GPS module receives location coordinates from satellites, and the GSM module sends the
location via SMS to a predefined mobile number. The connection details are as follows:
1. GPS Module to Arduino:
o VCC → 5V
o GND → GND
o TX → RX (Pin 4)
o RX → TX (Pin 3)
2. GSM Module to Arduino:
o VCC → 5V
o GND → GND
o TX → RX (Pin 10)
oRX → TX (Pin 9)
3. LCD Display (Optional):
o Connect to Arduino via I2C interface.
Arduino Code
#include <SoftwareSerial.h>
SoftwareSerial gpsSerial(4, 3); // RX, TX for GPS
SoftwareSerial gsmSerial(9, 10); // RX, TX for GSM
void setup() {
[Link](9600);
[Link](9600);
[Link](9600);
[Link]("Smart GPS Tracker Initialized");
}
void loop() {
if ([Link]()) {
String gpsData = [Link]('\n');
[Link]("GPS Data: " + gpsData);
if ([Link]("GPRMC") > 0) {
String location = extractCoordinates(gpsData);
sendSMS(location);
}
}
delay(5000);
}
String extractCoordinates(String gpsData) {
int latIndex = [Link](",N");
int lonIndex = [Link](",E");
if (latIndex != -1 && lonIndex != -1) {
String latitude = [Link](latIndex - 9, latIndex);
String longitude = [Link](lonIndex - 10, lonIndex);
return "Latitude: " + latitude + "\nLongitude: " + longitude;
}
return "Location not found";
}
void sendSMS(String location) {
[Link]("AT+CMGF=1"); // SMS mode
delay(1000);
[Link]("AT+CMGS=\"+1234567890\""); // Replace with recipient number
delay(1000);
[Link]("GPS Location:\n" + location);
[Link]((char)26);
delay(1000);
[Link]("SMS Sent!");
}
Working Principle
1. The GPS module receives signals from satellites and extracts location coordinates.
2. The Arduino reads the GPS data, processes it, and extracts latitude and longitude.
3. The GSM module sends the extracted location details to a predefined phone number via
SMS.
4. The system continuously updates the location every 5 seconds.
Applications
Vehicle Tracking: Monitor the real-time location of vehicles.
Personal Safety: Track children, elderly individuals, or hikers.
Logistics & Delivery: Track parcels and goods during transit.
Wildlife Tracking: Monitor the movement of animals in research projects.
Conclusion
This Smart GPS Tracker using Arduino, GPS, and GSM modules provides an effective and
low-cost tracking solution. The system is easy to implement and can be further enhanced by
integrating IoT and mobile app functionalities for real-time tracking on [Link] project offers
a practical and efficient way to track locations in real-time. It is an excellent choice for learning
and implementing GPS and GSM communication in embedded systems.
References
"The C Programming Language" by Brian W. Kernighan and Dennis M. [Link] resources and
documentation on linked lists in C."The C Programming Language" by Brian W. Kernighan and Dennis
M. Ritchie: This classic book is a comprehensive guide to the C programming language, covering
fundamental concepts and data structures."Data Structures and Algorithm Analysis in C" by Mark Allen
Weiss: This book provides an in-depth look at data structures and algorithms, including linked lists,
which are essential for this [Link] Linked List Manipulation" by George S. Lueker: This paper
discusses efficient techniques for manipulating linked lists, which can be helpful for optimizing the To-Do
list implementation.