How to Use GPS with Arduino - Internet of Things

How to Use GPS with Arduino

GPS Interfacing with Computer Using Arduino
GPS is a very useful device which is used in many electronics projects and applications like vehicle tracking systemGPS Clock, Accident Detection Alert System, traffic navigation and surveillance system etc. But question is how to use the GPS and read the data from GPS? We can easily get the GPS data directly into our computer using Arduino. 

GPS stands for Global Positioning System and used to detect the Latitude and Longitude of any location on the Earth, with exact UTC time (Universal Time Coordinated). This device receives the coordinates from the satellite for each and every second, with time and date. GPS offers great accuracy and also provides other data besides position coordinates, we will into look it shortly.

In this arduino GPS tutorial, we are going to explain that how to Test or Interface GPS module using Computer and Arduino. For interfacing GSM with computer we either need USB to Serial Converter or Arduino Board. Here we are using Arduino board to interface GPS. We only need Arduino Board, GPS module, computer and 12v/3.3v adaptor for power supply. Here we have used GPS receiver Module SKG13BL (shown in above figure).
Before connecting it to the computer, we first need to remove the Arduino IC (Atmega chip) from the Arduino Board, as we only need the serial circuitry of the Arduino. This is called the Gateway mode. Removing the IC is shown in below figures:
Now do the connection like given in below picture:
  1. GPS TX pin to Digital PIN 1 of Arduino (TXD)
  2. GPS Ground Pin to GND PIN of Arduino
  3. GPS Power (3.3v) Pin to 3.3v PIN of Arduino
After connections, connect the USB cable to the computer, open your Arduino IDE software in computer, select com port and open serial monitor to listen the serial port and Power up the Arduino and GPS module.
Now you will see GPS data on Arduino Serial Monitor Window like below. Below are two snapshots, first one is, when GPS is not in range and second one is, when GPS in range.
GPS Data When GPS Receiver is out of range:

GPS Data When GPS Receiver is in Range:

In serial Window, you can see some sentences that start from $ sign. These are NMEA sentences.GPS module sends the Real time tracking position data in NMEA format (see the screenshot above). NMEA format consist several sentences, in which four important sentences are given below. More detail about the NMEA sentence and its data format can be found here.
·         $GPGGA: Global Positioning System Fix Data
·         $GPGSV: GPS satellites in view
·         $GPGSA: GPS DOP and active satellites
·         $GPRMC: Recommended minimum specific GPS/Transit data

These strings contain many GPS parameters like: Time, Date, Longitude, Latitude, speed, no. of satellites in used, altitude and many other things.
For any location coordinates and time, we can use $GPGGA and $GPRMC.
For Date and time we can use $GPRMC string.
When we use GPS module for tracking any location, we only need coordinates and we can find this in $GPGGA string. Only $GPGGA (Global Positioning System Fix Data) String is mostly used in programs and other strings are ignored. This string consist fix data as below:
$GPGGA,104534.000,7791.0381,N,06727.4434,E,1,08,0.9,510.4,M,43.9,M,,*47
$GPGGA,HHMMSS.SSS,latitude,N,longitude,E,FQ,NOS,HDP,altitude,M,height,M,,checksum data
Identifier
Description
$GPGGA
Global Positioning system fix data
HHMMSS.SSS
Time in hour minute seconds and milliseconds format.
Latitude
Latitude (Coordinate)
N
Direction N=North, S=South
Longitude
Longitude(Coordinate)
E
Direction E= East, W=West
FQ
Fix Quality Data
NOS
No. of Satellites being Used
HDP
Horizontal Dilution of Precision
Altitude
Altitude (meters above from sea level)
M
Meter
Height
Height
Checksum
Checksum Data

And $GPRMC string mainly contains velocity, time, date and position
$GPRMC,123519.000,A, 7791.0381,N, 06727.4434,E,022.4,084.4,230394,003.1,W*6A
$GPRMC,HHMMSS.SSS,A,latitude,N,longitude,E,speed,angle,date,MV,W,CMD
Identifier
Description
RMC
Recommended Minimum sentence C
HHMMSS.SSS
Time in hour minute seconds and milliseconds format.
A
Status // A=active and V= void
Latitude
Latitude 49 deg. 16.45 min. North
N
Direction N=North, S=South
Longitude
Longitude(Coordinate)
E
Direction E= East, W=West
Speed
speed in knots
Angle
Tracking angle in degrees
Date
Time stamp (Date in UTC)
MV
Magnetic Variation
W
Direction of variation E/W
CMD (*6A)
Checksum Data

       Demo & Code



How to Use GPS with Arduino How to Use GPS with Arduino Reviewed by XXX on สิงหาคม 27, 2560 Rating: 5

ไม่มีความคิดเห็น