GPS-модуль GY-NEO6MV2 для Arduino

Системы GPS слежения

Сегодня GPS-модули применяются практически во всех сферах человеческой жизни. Маяки встраивают в ошейники для собак и котов, размещают в брелоках. Выпускаются GPS-трекеры для ношения на руке – спортивные, детские варианты.

Специальные модели часов могут выполнять функции, например, навигатора, компаса, сопровождать на маршрутах. И, конечно, маячки широко применяются велосипедистами, байкерами и автолюбителями для контроля местоположения своего транспортного средства, скорости передвижения. В автомобилях такой модуль помогает работе автопилота, может запереть или открыть двери, заблокировать двигатель и многое другое.

GPS-трекер нужного назначения можно купить, а можно собрать самостоятельно.

Расскажем, что необходимо для создания автомобильного маяка. Рассмотрим процесс изготовления трекера на базе GY-NEO6M своими руками.

GPS-модули для «Ардуино»

Arduino – это небольшая плата (цена ее около ста рублей) со встроенной микросхемой, управляющей электронными устройствами (микроконтроллером).

Фактически Ардуино – база с открытым исходным кодом, предназначенная для сборки цифровых приборов.

Для работы с Arduino выпускается большое количество GPS-модулей, которые могут определять координаты точки расположения, время, дату, функционируют в качестве спидометра (показывают скорость движения).

Из наиболее известных можно отметить:

  1. Arduino GPS-модуль VK2828U7G5LF, работающий с навигационными спутниками GPS и поддерживающий ГЛОНАСС. У него есть собственная память, сохраняющая настройки прибора. Работает при напряжении 3–5 вольт и по протоколу NMEA – 0183. Есть внутренняя керамическая антенна.
  2. Arduino GPS-блок SKM53 GPS отличается малым потреблением энергии, невысокой ценой. Оснащен встроенной антенной. Высокая производительность обеспечивается наличием двадцати двух каналов слежения и шестидесяти шести позиционирования.
  3. Arduino GPS-трекер для машины EM-411. Также отличается низким потреблением питания, имеет большую встроенную память. Работает с данными протокола NMEA 0183.
  4. GY NEO6MV2 GPS-модуль тоже рассчитан для подключения к Arduino. Выпускается фирмой U-Blox. Это одна из самых новых разработок, позволяющая получить максимально точные данные о локации. Ниже разберем его возможности подробнее.

Arduino GPS-модуль GY-NEO6MV2

Чаще всего блок GPS NEO 6M используется в автомобилях и коптерах. Новая модификация NEO6MV2 со встроенным блоком управления полетами EEPROM MWC APM2.5 и большой антенной.

Фактически этот модуль является самостоятельным микроконтроллером, анализирующим полученные от навигационных спутников данные.

GPS модуль GY-NEO6MV2

Прибор работает по протоколу NMEA 0183, использующемуся для связи с приемниками.

NMEA расшифровывается как National Marine Electronics Association. Цифры 0183 обозначают использование для навигационного морского оборудования.

NMEA 0183 обеспечивает получение информации:

  • GPRMC – минимальные данные со спутников навигации (координаты, параметры времени, скорости, направления);
  • GPGGA – фиксация све́дений по глобальной системе определения геолокации;
  • GPGSA – активные спутники и их расположение относительно антенны приемника;
  • GPGLL – показатели широты, долготы, время установления координат.

После определения локации GPS-модуль может рассчитать:

  • скорость перемещения;
  • направление движения;
  • расстояние до точки назначения;
  • через какое количество километров модуль отключится без подзарядки.

GPS-трекер для Arduino GY-NEO6MV2 использует:

  • SBAS – спутниковые системы коррекции, увеличивающие точность определения координат (до двух метров);
  • A-GPS – система, снижающая время холодного старта прибора. Ускорение происходит за счет загрузки предварительных данных не с навигационных спутников, а через другие каналы (сервера u-blox, сервисов AssistNow Offline (долгосрочный альманах) и AssistNow Online).

Комплектация

Ардуино GPS-приемник состоит из платы, на которой размещены:

  • блок NEO-6M-0-001;
  • независимая от источников энергии память;
  • аккумуляторная батарея;
  • стабилизатор напряжения;
  • светодиод.

Технические характеристики

Параметры, описывающие инженерные особенности прибора, разместим в таблице.

Характеристика Единица измерения Значение
Напряжение питания Вольты 3–5
Вес Граммы 18
Частота обновления (выдачи информации) Герц 1–5
Диапазон рабочих температур Градусы Цельсия –45… +85
Точность определения местоположения Метры 2,5
Погрешность показаний скорости Метры в секунду 0,1
Погрешность курса (азимута) Градусы 0,5
Время запуска:

Горячего

Холодного

Секунды 1

27

Количество каналов связи Штуки 50

Подключение

У приемника НЕО-6М есть всего четыре контакта:

  • VCC;
  • GND;
  • TX;
  • RX.

Для последовательной связи устройства с Arduino подключение надо производить следующим образом

  • вывод GND (земля) «кидается» на одноименный в Ардуино (GND);
  • RX (вход для данных UART) на модуле соединяется с третьим контактом на Arduino;
  • TX (выход для данных UART) GPS-блока выводится на четвертый контакт платы;
  • VSS (питание) с NEO6 подводится к штырю 5V Ардуино.

После соединения Arduino подключается к ПК через USB. Производится холодный старт, и начинается скачивание «альманаха» (получение «псевдослучайного кода», «эфемеридов» и собственно «альманаха»). Период загрузки, как правило, не превышает 15–20 минут. Время зависит от доступности и количества спутников в точке расположения.

Для удобного отображения информации (скетча), расширения возможностей прибора надо подключить библиотеки.

Проверка работы GPS-модуля на «Ардуино»

Перед окончательной сборкой трекера на Arduino необходимо проконтролировать его работоспособность, сделать это можно двумя способами.

GPS-модуль GY-NEO6MV2 для Arduino

Через программу U-Center

Это специальное ПО от производителя приборов для определения местоположения.

Для того чтобы скачать программное обеспечение, надо зайти на u-blox.com, в разделе «Техподдержки» найти версию, подходящую NEO-6M, нужной операционной системе, установленной на десктопе, скачать ПО на компьютер.

Настраивается функционал через меню в разделе Receiver-Port.

После соединения прибора с компьютером (USB-UART) и соединения с программой на приборе загорится зеленый индикатор, и начнется поиск спутников. Как только ответ от навигационных спутников будет получен, на экране ПК появятся данные: время, азимут, координаты.

Все сообщения надо смотреть в окне Messages. Настроить, какая информация будет передаваться на микроконтроллер, можно через пункты меню View – Messages. Чем меньше данных потребуется, тем быстрее контроллер будет обрабатывать массив.

Передаваемая информация отображается в меню View. Каждая строчка начинается с символа $. Затем пишется код протокола NMEA 0183, а уже за ним следуют значения параметров.

Также можно изменить частоту отправки информации в разделе Measurement Period. Если Navigation Frequency установить равным 0,5 Герц, то обновления будут производиться раз в 2 секунды.

Программа U-Center разработана для использования разных блоков, и не все ее опции будут работать на модуле GY-NEO6MV2. Как пример: даже после установки получения данных GLRMC информация приходить не будет, потому что ГЛОНАСС описываемый прибор не поддерживает.

Через Arduino IDE

Программное обеспечение от Ардуино тоже позволяет работать с шилдом NEO 6M.

Узел, подключенный к Arduino, также присоединяется к ПК, загружается скетч (это файлы .ino, или прошивка), и на экране проверяется результат. Иногда можно увидеть только непонятные наборы символов. В этом случае необходимо согласовать скорость работы интерфейса Arduino с ПК и шилда с контроллером.

Для сопряжения с ПК необходимо время (несколько минут), после чего прибор начнет передавать координаты. А на микроконтроллере замигает светодиодная лампочка.

В программе отобразятся долгота и широта текущей точки, время и дата получения данных по Гринвичу.

Arduino IDE позволяет откорректировать часовой пояс в строке Serial.print

Тестирование GPS-модуля Arduino

Иногда в процессе контрольного подключения блока не устанавливается связь с навигационными спутниками. Тогда необходимо проверить:

  • подключение антенны;
  • уровень напряжения питания (5 вольт).

Если все сделано верно, а спутники продолжают оставаться вне зоны доступа, надо вынести прибор на открытое пространство: за окно, на улицу.

Еще лучше для проведения теста взять заряженное устройство Neo-6 и контрольный аппарат (например, планшет или смартфон) и пройтись (проехать) по определенному маршруту. А вернувшись домой, посмотреть записанные треки.

Пользователи, проводящие сравнение, отмечают что:

  • GY NEO6MV2 начал показывать информацию быстрее, чем мобильное устройство;
  • энергопотребление у NEO-6 ниже;
  • получить отображение маршрута на карте сложнее, для этого нужно дополнительно конвертировать данные.

Как сделать GPS-трекер на основе GY-NEO6M

Один из способов собрать своими руками маяк для машины выглядит следующим образом:

  1. Подготавливаем:
    • STM32F3-Discovery – отладочная плата;
    • шилд NEO-6M;
    • ЖК-матрицу, которая будет отображать данные;
    • внешний аккумулятор для обеспечения возможности автономной работы.
  2. Соединяем блок NEO6 с Arduino.
  3. Подключаем экран к плате по схеме:
Выводы LSD Пины Ардуино
VSS GND
VCC 5V
LED+ VCC
LED GND
VEE 10K резистор
D4 A2
RS A0
D5 A3
R/W GND
D6 A4
E A1
D7 A5
  1. Размещаем собранное устройство в корпусе.
  2. Скачиваем и устанавливаем библиотеки:
    • для преобразования сообщений в удобочитаемый формат;
    • SoftwareSerial для ускорения обработки данных.
  3. Подключаемся с ноутбука или ПК к Google Maps или другим картам и снимаем информацию с прибора.

На базе Ардуино, используя устройство GY-NEO6MV2, можно самостоятельно собрать полноценный GPS-приемник-маяк. Итоговые затраты будут значительно ниже предлагаемых на рынке подобных приборов.

Для настройки функционала, проверки работы устройства есть специальное программное обеспечение от разработчиков платы Ардуино, модуля GPS NEO6.

Оцените статью
Блог о спутниковом слежении
Добавить комментарий

Adblock
detector