GPS Location Finder

Hi everyone , Today let us see how to make a NEO-6m GPS module and arduino.first let us see what is GPS .

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: WHAT IS GPS?

The Global Positioning System (GPS), originally NAVSTAR GPS, is a satellite-based radionavigation system owned by the United States government and operated by the United States Air Force. It is a global navigation satellite system (GNSS) that provides geolocation and time information to a GPS receiver anywhere on or near the Earth where there is an unobstructed line of sight to four or more GPS satellites. Obstacles such as mountains and buildings block the relatively weak GPS signals.

The GPS does not require the user to transmit any data, and it operates independently of any telephonic or internet reception, though these technologies can enhance the usefulness of the GPS positioning information. The GPS provides critical positioning capabilities to military, civil, and commercial users around the world. The United States government created the system, maintains it, and makes it freely accessible to anyone with a GPS receiver.

Step 2: GATHER THE MATERIALS REQUIRED:

The materials requried are:

*NEO-6m gps module

*Arduino uno

*Lcd display

Step 3: CIRCUIT

The circuit as follows:

GPS module ==> Arduino

* GND ==> GND

* TX ==> Digital pin (D3)

* RX ==> Digital pin (D4)

*Vcc ==> 3.3 V

LCD==> Arduino
* VSS ==> GND

* VCC ==> 5V

*VEE ==> 10K Resistor

*RS ==> A0 (Analog pin)

*R/W ==> GND

*E ==> A1

*D4 ==> A2

*D5 ==> A3

*D6 ==> A4

*D7 ==> A5

*LED+ ==> VCC

*LED- ==> GND

Step 4: CODE

#include <LiquidCrystal.h>
#include <SoftwareSerial.h>
#include <TinyGPS.h>
//long   lat,lon; // create variable for latitude and longitude object
float lat ,lon ; // create variable for latitude and longitude object 
SoftwareSerial gpsSerial(3,4);//rx,tx
LiquidCrystal lcd(A0,A1,A2,A3,A4,A5);
TinyGPS gps; // create gps object
void setup(){
Serial.begin(9600); // connect serial
Serial.println("The GPS Received Signal:");
gpsSerial.begin(9600); // connect gps sensor
lcd.begin(16,2);
}
 
void loop(){
    while(gpsSerial.available()){ // check for gps data
    if(gps.encode(gpsSerial.read()))// encode gps data
    { 
    gps.f_get_position(&lat,&lon); // get latitude and longitude
    // display position
    lcd.clear();
    lcd.setCursor(1,0);
    lcd.print("GPS Signal");
   
    lcd.setCursor(1,0);
    lcd.print("LAT:");
    lcd.setCursor(5,0);
    lcd.print(lat);
    Serial.print(lat);
    Serial.print(" ");
    Serial.print(lon);
     Serial.print(" ");
    lcd.setCursor(0,1);
    lcd.print(",LON:");
    lcd.setCursor(5,1);
    lcd.print(lon);
    
   }
  }
  
  String latitude = String(lat,6);
    String longitude = String(lon,6);
  Serial.println(latitude+";"+longitude);
  delay(1000);
  
}

Step 5: OUTPUT

So after all the connections and uploading the code ,the GPS module take some time to get satellite fix which is usually 15 to 20 minutes .If it takes more time go outdoor and try as it is not able to get the satellite fix inside the house. After that you can see that the lcd display can show the GPS cordinates .

Be the First to Share

    Recommendations

    • Instrument Contest

      Instrument Contest
    • Make it Glow Contest

      Make it Glow Contest
    • STEM Contest

      STEM Contest

    Discussions

    0
    None
    audreyobscura

    5 days ago

    Thanks for sharing your GPS tips!