Arduino GPS: voor locatie en positionering

Arduino-gps

Met Ontwikkelingsraad Arduino kan een veelvoud aan projecten uitvoeren, de limiet is vaak de verbeelding. Met de elektronische componenten en modules, functionaliteiten kunnen worden toegevoegd zodat u meer dingen kunt doen. Een van deze functionaliteiten kan de mogelijkheid zijn om: objecten of mensen lokaliseren of lokaliseren door positionering met Arduino GPS.

Dit type positionering en tracering het kan worden gedaan met behulp van RFID of ontvangers zoals degene die we in dit artikel gaan bespreken. Hiermee kunt u een groot aantal projecten maken, van games waarmee u een detector kunt maken en objecten kunt lokaliseren, gestolen objecten kunt lokaliseren, uzelf kunt lokaliseren met behulp van een GPS, enz.

Arduino NEO-7 GPS-module

NEO-6 GPS-Arduino

Om Arduino GPS te hebben, kunt u de NEO-6-apparaten, een familie vervaardigd door U-Blox en die op een eenvoudige manier op het Arduino-bord kan worden aangesloten. Bovendien hebben ze een complete communicatie-interface, met UART, SPI, I2C, en USB, naast de ondersteuning van NMEA-, UBX-binaire en RTCM-protocollen.

Bovendien kunt u met deze Arduino GPS met NEO-6 de grootte van uw project minimaliseren, omdat het een kleine maat, evenals lage kosten. Qua verbruik is het ook klein. In de actieve modus heeft hij slechts 37 mA nodig. Het wordt aangedreven door 2.7 tot 3.6 V voor de NEO-6Q- en NEO-6M-modellen, terwijl er andere zijn met een lagere spanning, NEO-6G genaamd, die slechts tussen 1.75 en 2 V nodig hebben.

Als ze zijn geïntegreerd in een module, zal een bevatten Voltage Regulator waardoor het rechtstreeks van de Arduino 5v-verbinding kan worden gevoed
.

Andere interessante parameters van deze module zijn:

  • De 30 seconden van ontstekingstijd koud, en slechts 1 seconde voor warme start.
  • La maximale meetfrequentie ze werken op slechts 5Hz.
  • Positie nauwkeurigheid van 2.5 meter variatie.
  • Snelheid nauwkeurigheid 0.1 m/s.
  • Oriëntatie variatie van slechts 0.5º.

Waar koop je een NEO-6 voor Arduino GPS

Je vindt deze apparaten en modules in veel gespecialiseerde elektronicawinkels, maar ook op Amazon. Hier kunt u bijvoorbeeld: koop het tegen een zeer goedkope prijs:

Voorbeeld met Arduino

Screenshot van Arduino IDE

U kunt meer leren over programmeren met Arduino met de gratis PDF-cursus die u kunt download vanaf hier.

Het eerste dat u moet doen om het op uw ontwikkelbord aan te sluiten en uw Arduino GPS te hebben, is om uw NEO-6-module op het bord aan te sluiten. De Conexiones zijn heel eenvoudig gemaakt (NEO-6 module-aansluitingen - Arduino-aansluitingen):

  • GND - GND
  • TX-RX (D4)
  • RX - TX (D3)
  • Vcc - 5V

Als je het eenmaal hebt aangesloten, moet je ook de SoftSerial-bibliotheek in uw Arduino IDE, omdat deze nodig is voor seriële communicatie. Het is waarschijnlijk dat je het al hebt van andere projecten, maar als dat niet het geval is, moet je Download en installeer in je IDE.

Zodra dat is gebeurd, kunt u beginnen met uw eenvoudige code om de metingen uit te voeren. Omdat er bijvoorbeeld verschillende protocollen kunnen worden gebruikt, is hier de schets: voor NMEA:

#include <SoftwareSerial.h>

const int RX = 4;
const int TX = 3;

SoftwareSerial gps(RX, TX);

void setup()
{
   Serial.begin(115200);
   gps.begin(9600);
}

void loop()
{
   if (gps.available())
   {
      char data;
      data = gps.read();
      Serial.print(data);
   }
}

Natuurlijk kunt u uw wijzigingen aanbrengen of andere protocollen gebruiken als u dat wilt ... U kunt ook gebruik maken van de voorbeelden die beschikbaar zijn in uw IDE voor deze bibliotheek. Maar voordat u het artikel beëindigt, moet u weten dat: het NMEA-formaat (National Marine Electronics Asociation) is heel bijzonder, om het te begrijpen, moet je de syntaxis ervan kennen:

$ GPRMC, hhmmss.ss, A, llll.ll, a, yyyyy.yy, a, vv, xx, ddmmyy, mm, a * hh

Dat wil zeggen, $ GPRMC wordt gevolgd door een reeks van parameters die locatie aangeven::

  • uummss.ss: is de UTC-tijd in uren, minuten en seconden.
  • A: ontvangerstatus, waarbij A = OK en V = alarm.
  • llll.ll, naar: is de breedtegraad, waarbij a N of S kan zijn, voor noord of zuid.
  • yyyy.yy, een: is de lengte. Ook hier kan a E of W zijn, dat wil zeggen oost of west.
  • vv: snelheid in knopen.
  • xx: is de cursus in graden.
  • ddmmjj: is de UTC-datum, in dagen, maanden en jaar.
  • mm, een: is de magnetische variatie in graden, en de a kan E of W zijn voor oost of west.
  • *H H: Controlesom of controlesom.

Je zou bijvoorbeeld zoiets kunnen krijgen:

$GPRMC,115446,A,2116.75,N,10310.02,W,000.5,054.7,191194,020.3,E*68


Wees de eerste om te reageren

Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.