Arduino GPS: para sa lokasyon at pagpoposisyon

Arduino GPS

Sa board ng pag-unlad Maaaring magsagawa ang Arduino ng maraming mga proyekto, ang limitasyon ay madalas na imahinasyon. Kasama ang mga elektronikong sangkap at modyul, ang mga pagpapaandar ay maaaring maidagdag upang magawa mo ang maraming bagay. Ang isa sa mga pagpapaandar na ito ay maaaring ang kakayahang hanapin ang mga bagay o tao, o hanapin sa pamamagitan ng pagpoposisyon gamit ang Arduino GPS.

Ang uri ng pagpoposisyon at pagsubaybay maaari itong gawin gamit ang RFID o mga tatanggap tulad ng tatalakayin natin sa artikulong ito. Sa pamamagitan nito magagawa mong lumikha ng maraming mga proyekto, mula sa mga laro kung saan lumikha ng isang detector at hanapin ang mga bagay, upang hanapin ang mga ninakaw na bagay, upang mahanap ang iyong sarili gamit ang isang GPS, atbp.

Arduino NEO-7 GPS Module

Arduino NEO-6 GPS

Upang magkaroon ng Arduino GPS, maaari mong gamitin ang Mga NEO-6 na aparato, isang pamilya na gawa ng U-Blox at maaari itong maiugnay sa board ng Arduino sa isang simpleng paraan. Bilang karagdagan, mayroon silang isang kumpletong interface ng komunikasyon, kasama ang UART, SPI, I2C, at USB, bilang karagdagan sa pagsuporta sa mga NMEA, UBX binary at RTCM na mga protokol.

Bilang karagdagan, pinapayagan ka nitong Arduino GPS na may NEO-6 na i-minimize ang laki ng iyong proyekto, dahil mayroon itong maliit na laki, pati na rin ang isang mababang gastos. Sa mga tuntunin ng pagkonsumo, maliit din ito. Kapag nasa aktibong mode, kakailanganin lamang nito ang 37mA. Ito ay pinalakas ng 2.7 hanggang 3.6V para sa NEO-6Q at NEO-6M na mga modelo, habang may iba pang mas mababang boltahe na tinatawag na NEO-6G na kailangan lamang sa pagitan ng 1.75 at 2v.

Kung sila ay isinama sa isang modyul, isasama ang a regulador de voltaje na magpapahintulot sa kapangyarihan na direkta ito mula sa koneksyon ng Arduino 5v
.

Ang iba pang mga kagiliw-giliw na parameter ng modyul na ito ay:

  • Ang 30 segundo ng oras ng pag-aapoy malamig, at 1 segundo lamang para sa mainit na pagsisimula.
  • La maximum na dalas ng pagsukat nagtatrabaho sila sa 5Hz lamang.
  • Katumpakan ng posisyon ng 2.5 metro ng pagkakaiba-iba.
  • Katumpakan ng bilis 0.1 m / s
  • Pagkakaiba-iba ng oryentasyon ng 0.5º lamang.

Kung saan bibili ng isang NEO-6 para sa Arduino GPS

Mahahanap mo ang mga aparato at modyul na ito sa maraming mga dalubhasang tindahan ng electronics, o sa Amazon din. Halimbawa, dito maaari mo bilhin ito sa napakamurang presyo:

Halimbawa kay Arduino

Screenshot ng Arduino IDE

Maaari kang matuto nang higit pa tungkol sa pag-program kasama ang Arduino gamit ang libreng kurso sa PDF na magagawa mo pag-download mula dito.

Ang unang bagay na dapat mong gawin upang ikonekta ito sa iyong development board at magkaroon ng iyong Arduino GPS ay upang ikonekta ang iyong NEO-6 module sa board. Ang mga koneksyon Ginagawa nang napakasimple (mga koneksyon sa module ng NEO-6 - Mga koneksyon sa Arduino):

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

Kapag nakakonekta mo ito, kakailanganin mo ring i-download ang SoftSerial library sa iyong Arduino IDE, dahil kakailanganin ito para sa serial na komunikasyon. Malamang na mayroon ka na nito mula sa ibang mga proyekto, ngunit kung hindi, kakailanganin mo I-download at i-install sa iyong IDE.

Kapag tapos na iyon, maaari kang magsimula sa iyong simpleng code upang gawin ang mga nagbasa. Halimbawa, dahil maraming mga protokol ang maaaring magamit, narito ang sketch para sa 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);
   }
}

Siyempre, maaari mong gawin ang iyong mga pagbabago o gumamit ng iba pang mga protokol kung nais mo ... Maaari mo ring magamit ang mga halimbawang magagamit sa iyong IDE para sa library na ito. Ngunit, bago tapusin ang artikulo, dapat mong malaman iyon ang format na NMEA Ang (National Marine Electronics Asociation) ay napaka partikular, upang maunawaan ito, dapat mong malaman ang syntax nito:

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

Iyon ay, ang $ GPRMC ay sinusundan ng isang serye ng mga parameter na nagpapahiwatig ng lokasyon:

  • hhmmss.ss: ang oras ng UTC sa mga oras, minuto at segundo.
  • A: katayuan ng tatanggap, kung saan A = OK at V = alerto.
  • llll.ll, sa: ay ang latitude, kung saan ang isang maaaring maging N o S, para sa hilaga o timog.
  • yyyy.yy, a: ang haba. Muli ang isang ay maaaring maging E o W, iyon ay, silangan o kanluran.
  • atbp.: bilis sa buhol.
  • xx: ay ang kurso sa degree.
  • ddmmyy: ang petsa ng UTC, sa mga araw, buwan at taon.
  • mm, a: ay ang pagkakaiba-iba ng magnetiko sa mga degree, at ang a ay maaaring maging E o W para sa silangan o kanluran.
  • * H H: Checksum o tsekum.

Halimbawa, maaari kang makakuha ng katulad nito:

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


Maging una sa komento

Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.