С съвет за развитие Arduino може да изпълнява множество проекти, границата често е въображението. С електронни компоненти и модули, могат да се добавят функционалности, за да можете да правите повече неща. Една от тези функционалности може да бъде способността да намерете обекти или хора или намерете чрез позициониране с Arduino GPS.
Този тип позициониране и проследяване това може да се направи с помощта на RFID или приемници като този, който ще обсъдим в тази статия. С това ще можете да създадете множество проекти, от игри, с които да създадете детектор и да откриете обекти, да откриете откраднати предмети, да можете да се локализирате с помощта на GPS и т.н.
GPS модул Arduino NEO-7
За да имате Arduino GPS, можете да използвате NEO-6 устройства, семейство, произведено от U-Blox и което може да бъде свързано към платката Arduino по прост начин. В допълнение, те имат пълен комуникационен интерфейс, с UART, SPI, I2Cи USB, в допълнение към поддръжката на NMEA, UBX двоични и RTCM протоколи.
В допълнение, този Arduino GPS с NEO-6 също ви позволява да минимизирате размера на вашия проект, тъй като той има малък размер, както и ниска цена. По отношение на потреблението също е малко. Когато е в активен режим, ще му трябват само 37mA. Той се захранва от 2.7 до 3.6V за моделите NEO-6Q и NEO-6M, докато има и други с по-ниско напрежение, наречени NEO-6G, които се нуждаят само между 1.75 и 2v.
Други интересни параметри на този модул са:
- 30-те секунди на време на запалване студено и само 1 секунда за горещ старт.
- La максимална честота на измерване те работят само на 5Hz.
- Точност на позицията от 2.5 метра вариация.
- Точност на скоростта 0.1 m / s.
- Промяна на ориентацията от само 0.5º.
Къде да закупите NEO-6 за Arduino GPS
Можете да намерите тези устройства и модули в много специализирани магазини за електроника или също в Amazon. Например тук можете купете го на много евтина цена:
Пример с Arduino
Първото нещо, което трябва да направите, за да го свържете към вашата платка за разработка и да имате вашия Arduino GPS, е да свържете вашия NEO-6 модул към платката. The връзки се правят много просто (NEO-6 модулни връзки - Arduino връзки):
- GND - GND
- TX - RX (D4)
- RX - TX (D3)
- Vcc - 5V
След като го свържете, ще трябва да изтеглите и SoftSerial библиотека във вашия Arduino IDE, тъй като ще е необходим за серийна комуникация. Вероятно вече го имате от други проекти, но ако не, ще трябва изтеглете и инсталирайте във вашата IDE.
След като приключите, можете да започнете с вашия прост код, за да направите четенията. Например, тъй като могат да се използват няколко протокола, ето скицата за 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); } }
Разбира се, можете да направите вашите модификации или да използвате други протоколи, ако желаете ... Можете също да се възползвате от примерите, налични във вашата IDE за тази библиотека. Но преди да приключите статията, трябва да знаете това формата NMEA (National Marine Electronics Asociation) е много конкретно, за да го разберете, трябва да знаете неговия синтаксис:
$ GPRMC, hhmmss.ss, A, llll.ll, a, yyyyy.yy, a, vv, xx, ddmmyy, mm, a * hh
Тоест, $ GPRMC е последван от поредица от параметри, указващи местоположение:
- хммсс.сс: е времето по UTC в часове, минути и секунди.
- A: състояние на приемника, където A = OK и V = предупреждение.
- llll.ll, до: е географската ширина, където a може да бъде N или S, за север или юг.
- гггггггг, а: е дължината. Отново a може да бъде E или W, тоест на изток или на запад.
- ст: скорост във възли.
- хх: е курсът в градуси.
- ddmmmyy: е датата на UTC, в дни, месеци и година.
- mm, a: е магнитната вариация в градуси, а a може да бъде E или W за изток или запад.
- * Н Н: Контролна сума или контролна сума.
Например можете да получите нещо подобно:
$GPRMC,115446,A,2116.75,N,10310.02,W,000.5,054.7,191194,020.3,E*68