Inhoudsopgave:

Hoe de GPS-module (NEO-6m) met Arduino te interfacen: 7 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe de GPS-module (NEO-6m) met Arduino te interfacen: 7 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"

Video: Hoe de GPS-module (NEO-6m) met Arduino te interfacen: 7 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"

Video: Hoe de GPS-module (NEO-6m) met Arduino te interfacen: 7 stappen (met afbeeldingen) Antwoorden op al uw
Video: LDmicro 14: I2C LCD & DS3231 Real-Time Clock (Microcontroller PLC Ladder Programming with LDmicro) 2024, Juni-
Anonim
Hoe de GPS-module (NEO-6m) te interfacen met Arduino
Hoe de GPS-module (NEO-6m) te interfacen met Arduino

In dit project heb ik laten zien hoe een GPS-module met Arduino UNO kan worden gekoppeld. De gegevens voor lengte- en breedtegraad worden weergegeven op het LCD-scherm en de locatie kan op de app worden bekeken.

Lijst met materiaal

  • Arduino Uno ==> $8
  • Ublox NEO-6m GPS-module ==> $15
  • 16x2 LCD ==> $3
  • Breadboard ==> $2
  • Jumper draden ==>$2

De totale kosten van het project bedragen $ 30 dollar.

Stap 1: Over GPS

Over GPS
Over GPS
Over GPS
Over GPS
Over GPS
Over GPS

Wat is GPS Het Global Positioning System (GPS) is een op satellieten gebaseerd navigatiesysteem dat bestaat uit ten minste 24 satellieten. GPS werkt onder alle weersomstandigheden, waar ook ter wereld, 24 uur per dag, zonder abonnementskosten of instelkosten.

Hoe GPS werktGPS-satellieten cirkelen twee keer per dag in een precieze baan om de aarde. Elke satelliet zendt een uniek signaal en baanparameters uit waarmee GPS-apparaten de exacte locatie van de satelliet kunnen decoderen en berekenen. GPS-ontvangers gebruiken deze informatie en trilateratie om de exacte locatie van een gebruiker te berekenen. In wezen meet de GPS-ontvanger de afstand tot elke satelliet aan de hand van de hoeveelheid tijd die nodig is om een verzonden signaal te ontvangen. Met afstandsmetingen van nog een paar satellieten kan de ontvanger de positie van een gebruiker bepalen en weergeven.

Om uw 2D-positie (breedte- en lengtegraad) en trackbeweging te berekenen, moet een GPS-ontvanger op het signaal van minimaal 3 satellieten zijn vergrendeld. Met 4 of meer satellieten in zicht kan de ontvanger uw 3D-positie bepalen (breedtegraad, lengtegraad en hoogte). Over het algemeen volgt een GPS-ontvanger 8 of meer satellieten, maar dat hangt af van het tijdstip van de dag en waar u zich op aarde bevindt.

Zodra uw positie is bepaald, kan de GPS-eenheid andere informatie berekenen, zoals:

  • Snelheid
  • Handelswijze
  • Spoor
  • Reisafstand
  • Afstand tot bestemming

Wat is het signaal?

GPS-satellieten zenden minimaal 2 radiosignalen met een laag vermogen uit. De signalen reizen per gezichtslijn, wat betekent dat ze door wolken, glas en plastic gaan, maar niet door de meeste vaste objecten, zoals gebouwen en bergen. Moderne ontvangers zijn echter gevoeliger en kunnen meestal door huizen volgen.

Een GPS-signaal bevat 3 verschillende soorten informatie:

  • Pseudo-willekeurige code is een I. D. code die aangeeft welke satelliet informatie uitzendt. Op de satellietpagina van uw apparaat kunt u zien van welke satellieten u signalen ontvangt.
  • Ephemeris-gegevens zijn nodig om de positie van een satelliet te bepalen en geven belangrijke informatie over de gezondheid van een satelliet, de huidige datum en tijd.
  • Almanakgegevens vertellen de GPS-ontvanger waar elke GPS-satelliet zich op elk moment van de dag moet bevinden en tonen de orbitale informatie voor die satelliet en elke andere satelliet in het systeem.

Stap 2: Arduino, Neo6m GPS en 16x2 LCD

Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD
Arduino, Neo6m GPS en 16x2 LCD

1. Arduino

Arduino is een open-source elektronicaplatform gebaseerd op gebruiksvriendelijke hardware en software. Arduino-boards kunnen inputs lezen - licht op een sensor, een vinger op een knop of een Twitter-bericht - en dit omzetten in een output - een motor activeren, een LED aanzetten, iets online publiceren. U kunt uw bord vertellen wat het moet doen door een reeks instructies naar de microcontroller op het bord te sturen. Hiervoor gebruik je de Arduino programmeertaal (gebaseerd op Wiring), en de Arduino Software (IDE), gebaseerd op Processing.

Vereiste bibliotheken om GPS in Arduino IDE te laten werken.

SoftwareSerial

TinyGPS

Je kunt ook je eigen aangepaste Arduino uno maken.

2. NEO-6m GPS-module (zoals weergegeven in afbeelding i2)

NEO-6m GPS-module gegevensblad

3. 16x2 LCD-scherm

LCD-scherm (Liquid Crystal Display) is een elektronische weergavemodule en vindt een breed scala aan toepassingen. Een 16x2 LCD-scherm is een zeer eenvoudige module en wordt veel gebruikt in verschillende apparaten en circuits. Deze modules hebben de voorkeur boven zeven segmenten en andere LED's met meerdere segmenten. De redenen hiervoor zijn: LCD's zijn zuinig; gemakkelijk programmeerbaar; hebben geen beperking voor het weergeven van speciale en zelfs aangepaste tekens (in tegenstelling tot zeven segmenten), animaties enzovoort. Een 16x2 LCD betekent dat het 16 karakters per regel kan weergeven en dat er 2 van dergelijke regels zijn. In dit LCD-scherm wordt elk teken weergegeven in een 5x7 pixelmatrix. Dit LCD-scherm heeft twee registers, namelijk Command en Data. Het commandoregister slaat de commando-instructies op die aan het LCD-scherm zijn gegeven. Een opdracht is een instructie die aan het LCD-scherm wordt gegeven om een vooraf gedefinieerde taak uit te voeren, zoals het initialiseren, het scherm wissen, de cursorpositie instellen, het display bedienen, enz. Het dataregister slaat de gegevens op die op het LCD-scherm moeten worden weergegeven. De gegevens zijn de ASCII-waarde van het teken dat op het LCD-scherm moet worden weergegeven.

Pindiagram en pinbeschrijving (zoals weergegeven in afbeelding i3 en i4)

4-bits en 8-bits modus van LCD Het LCD-scherm kan in twee verschillende modi werken, namelijk de 4-bits modus en de 8-bits modus. In 4-bits modus sturen we de data nibble door nibble, eerst upper nibble en dan onder nibble. Voor degenen onder u die niet weten wat een nibble is: een nibble is een groep van vier bits, dus de onderste vier bits (D0-D3) van een byte vormen de onderste nibble terwijl de bovenste vier bits (D4-D7) van een byte vormen de hogere nibble. Dit stelt ons in staat om 8-bits gegevens te verzenden. Terwijl we in de 8-bits modus de 8-bits gegevens direct in één keer kunnen verzenden, omdat we alle 8 datalijnen gebruiken.

Lees- en schrijfmodus van LCD Het LCD-scherm zelf bestaat uit een interface-IC. De MCU kan lezen of schrijven naar dit interface-IC. Meestal zullen we gewoon naar de IC schrijven, omdat lezen het complexer maakt en dergelijke scenario's zijn zeer zeldzaam. Informatie zoals de positie van de cursor, onderbrekingen bij het voltooien van de status, enz.

Stap 3: Aansluitingen

Verbindingen
Verbindingen
Verbindingen
Verbindingen
Verbindingen
Verbindingen
Verbindingen
Verbindingen

Interface van GPS-module met Arduino

Arduino ===> NEO6m

GND ===> GND

Digitale pin (D3) ===> TX

Digitale pin (D4) ===> RX

5Vdc ===> Vcc

Hier raad ik u aan om een externe voeding te gebruiken om de GPS-module van stroom te voorzien, omdat de minimale stroomvereiste voor de GPS-module om te werken 3,3 V is en Arduino niet in staat is om zoveel spanning te leveren..

Usb driver

Nog een ding dat ik heb gevonden tijdens het werken met een GPS-antenne die met een module wordt geleverd, is dat het geen signaal in huis ontvangt, dus ik heb deze antenne gebruikt - het is veel beter.

Antenne

Om deze antenne aan te sluiten, moet u de connector gebruiken die wordt weergegeven in afbeelding i6.

Interface van Arduino UNO en JHD162a LCD

LCD ===> Arduino Uno

VSS ===> GND

VCC ===> 5V

VEE ===> 10K Weerstand

RS ===> A0 (analoge pin)

R/W ===> GND

E ===> A1

D4 ===> A2

D5 ===> A3

D6 ===> A4

D7 ===> A5

LED+ ===> VCC

LED- ===> GND

Stap 4: Resultaat

Resultaat
Resultaat
Resultaat
Resultaat

Stap 5: Demo

Aanbevolen: