Как подключить gps модуль к компьютеру


GPS/GLONASS принимает сигналы спутников глобального позиционирования — GPS, GLONASS и Galileo — и рассчитывает свои географические координаты, скорость перемещения, высоту над уровнем моря и точное локальное время.

Данные передаются на управляющую электронику в текстовом формате NMEA по интерфейсу UART.

Спутники непрерывно передают навигационные сигналы на дециметровых волнах. В сигнал входят метки точного времени и координаты самого спутника.

Для работы навигаторов нужно открытое небо с минимум четырьмя спутниками в прямой видимости. Чтобы система работала по всей планете в каждой орбитальной группировке приходится держать более двух десятков спутников.

GPS/GLONASS-модуль общается с управляющей платой по протоколу UART. В зависимости от управляющей платформы выберите вариант подключения GPS-модуля.

На управляющей плате Iskra JS и Arduino платах с микроконтроллером ATmega32U4 / ATSAMD21G18 , данные по USB и общение через пины 0 и 1 осуществляется через два раздельных UART . Это даёт возможность подключить GPS-модуль к аппаратному UART на пинах 0 и 1 .

Список поддерживаемых плат:

При подключении удобно использовать Troyka Shield.
С Troyka Slot Shield можно обойтись без лишних проводов.

Некоторые платы Arduino, например Arduinio Uno, прошиваются через пины 0 и 1 . Это означает невозможность использовать одновременно прошивку/отладку по USB и общение с GPS-модулем. Решение проблемы — программный UART . Подключите пины TX и RX GPS-модуля к другим контактам управляющей платы и используйте библиотеку SoftwareSerial.

Для примера подключим управляющие пины GPS-модуля TX и RX — на 4 и 5 контакты управляющей платы.

При подключении удобно использовать Troyka Shield.
С Troyka Slot Shield можно обойтись без лишних проводов.

На платах форм-фактора Arduino Mega 2560 аппаратный UART, который отвечает за передачу данных через пины 1 и 0 , отвечает также за передачу по USB. Это означает невозможность использовать одновременно UART для коммуникации с GPS-модулем и отладки по USB.

Но на платах такого форм-фактора есть ещё дополнительно 3 аппаратных UART:

Список поддерживаемых плат:

Подключим GPS-модуль к объекту Serial1 на пины 18 и 19 на примере платы Arduino Mega 2560

Рассмотрим примеры работы GPS-модуля в зависимости от управляющей платформы.

В качестве примера выведем в Serial данные с GPS-модуля. Распарсим строки в отдельные переменные и сохраним их. Для этого скачайте и установите библиотеку TroykaGPS

В отличии от аппаратного UART (HardwareSerial), за работу программного UART (SoftwareSerial) отвечает микроконтроллер, который назначает другие пины в режим работы RX и TX , соответственно и данные которые приходят от модуля GPS обрабатывает сам микроконтроллер во время программы. По умолчанию скорость общения GPS-модуля равна 115200 , что значительно выше чем позволяет библиотека SoftwareSerial. В итоге часть информации которая приходит с GPS-модуля будет утеряна.

Решение понизить скорость общения GPS-модуля с управляющей платой. Из описание команд управления GPS-модулем найдём NMEA-команду понижение скорости до 9600 бод.

Данную команду придётся выполнять при каждом новом включении GPS-модуля. В качестве примера выведем в Serial данные с GPS-модуля. Распарсим строки в отдельные переменные и сохраним их. Для этого скачайте и установите библиотеку TroykaGPS

Выведем данные о координатах, высоте над уровнем моря, количестве видимых спутников и точном времени в консоль Web IDE.

Каждую секунду в консоль будет выводится информация от модуля.

Данные с GPS-модуля передаются на управляющую электронику в текстовом формате NMEA, состоят из последовательного набора данных, разделенных запятыми. Каждое NMEA сообщение начинается с $ , заканчивается \n (перевод строки) и не может быть длиннее 80 символов.

В этом эксперименте рассмотрим работу модуля GPS-приемника, позволяющего определять наше местоположение с помощью глобальной системы GPS, и подключение данного приемника к плате Arduino.

Необходимые компоненты:

GPS (Global Positioning System) – это система, позволяющая с точностью не хуже 100 м определить местоположение объекта, то есть определить его широту, долготу и высоту над уровнем моря, а также направление и скорость его движения. Кроме того, с помощью GPS можно определить время с точностью до 1 наносекунды. GPS состоит из совокупности определенного количества искусственных спутников Земли (спутниковой системы NAVSTAR) и наземных станций слежения, объединенных в общую сеть. В качестве абонентского оборудования служат индивидуальные GPS-приемники, способные принимать сигналы со спутников и по принятой информации вычислять свое местоположение. Мы используем GPS-приемник V.KEL VK16E (см. рис. 33.1).

Рис. 33.1. GPS-приемник V.KEL VK16E


Назначение выводов:

• BOOT – зарезервировано;
• GND – общий вывод;
• RX – вход для данных в последовательном формате UART;
• TX – выход для данных в последовательном формате UART;
• VCC – вход напряжения питания от 3,3 до 5 В;
• PPS – выход импульсов времени.

Холодный старт происходит, когда GPS-приемник был выключен длительное время, перемещался в выключенном состоянии на значительное расстояние или его часы не совпадают с данными спутника. При холодном старте со спутников скачивается альманах. Время обновления альманаха – от 5 до 15 минут в зависимости от условий приема и количества видимых спутников. Особенность – приемник в это время должен быть неподвижен. Теплый старт происходит, когда приемник был выключен более 30 мин. При этом происходит прием уточняющих данных. Занимает 0,5–1,5 мин. Горячий старт происходит, когда приемник был отключен непродолжительное время. Данные считаются свежими, и приемник просто находит спутники (опираясь на данные альманаха). Для проверки работоспособности подключим модуль по последовательному порту к компьютеру с ОС Windows, используя USBTTL- адаптер, и запустим программу MiniGPS_v1.7.1.exe. Программа показывает количество найденных приемником спутников и в случае их достаточного числа показывает наше местоположение – географические широту и долготу (см. рис. 33.2). Мигание зеленого светодиода сигнализирует о достаточном для определения положения количестве спутников. Теперь подключим GPS-приемник к плате Arduino и будем выводить данные о местоположении – географические широту и долготу в монитор последовательного порта Arduino. Схема подключения показана на рис. 33.3.

Приступим к написанию скетча. Будем использовать библиотеки SoftwareSerial и TinyGPS, позволяющую выделять нужные данные из всего потока, передаваемого приемником. Содержимое скетча показано в листинге 33.1.

Порядок подключения:

1. Собираем схему, согласно рис. 33.1.
2. Загружаем в плату Arduino скетч из листинга 33.1.
3. Ждем мигания зеленого светодиода на приемнике GPS, сигнализирующего о наличии данных о местоположении.
4. Смотрим в мониторе последовательного порта Arduino вывод данных широты и долготы. Также получаем текущую дату и время по Гринвичу (рис. 33.4).

Если у Вас возникла необходимость подключить к ноутбуку GPS-приемник, чтобы отслеживать свое местоположение, а покупать его не хочется, то в этой статье Вы узнаете, как с таким же успехом можно использовать телефон на Android в качестве такого GPS-приемника. Разумеется, в телефоне должен быть GPS и еще оба устройства должны иметь Bluetooth, который будет использоваться в качестве беспроводной связи.

В Google Play Market можно найти много приложений, предназначенных для передачи координат GPS по Bluetooth, например: GPS over BT, GPS2Bluetooth, Share GPS, Bluetooth GPS Output (платное). Мне больше всего понравился GPS over BT, но если у Вас не получится осуществить передачу данных GPS с помощью этого приложения, попробуйте приложения перечисленные выше.

Перед тем как запускать приложение, выполните следующие предварительные настройки:

  • Выполните сопряжение по Bluetooth телефона с ноутбуком.
  • Включите опцию GPS в телефоне.

Запустите приложение GPS over BT, приложение автоматически выполнит поиск спутников, определит местоположение и начнет передавать данные подключенному по Bluetooth ноутбуку.

Чтобы увидеть карту спутников, нажмите на кнопку «Меню» телефона и выберите соответствующий пункт.

Настройте виртуальный последовательный порт для Bluetooth-устройства в ноутбуке. Для этого в Windows выполните следующие действия: откройте окно «Устройства и принтеры» (Пуск > Панель управления > Оборудование и звук > Устройства и принтеры), найдите среди подключенных к ноутбуку устройств телефон сопряженный по Bluetooth, нажмите на него правой кнопкой мыши и выберите команду контекстного меню «Свойства».

Затем в окне свойств переключитесь на вкладку «Службы» и поставьте галочку рядом с пунктом «Последовательный порт (SPP)…» и нажмите на кнопку «Применить». После небольшого ожидания Вы увидите номер COM-порта, который в дальнейшем Вам понадобится для подключения приемника GPS в программе навигации для Windows.

Скачайте на ноутбук и установите желаемое приложение для навигации, например: SAS.Планета, Google Earth, 2Gis и т. п. Я предпочитаю SAS.Планета (ее не нужно устанавливать), поэтому ниже будет приведена настройка приемника GPS именно для этой программы. В общих чертах в остальных программах настройка аналогичная.

Скачайте, распакуйте и запустите программу SAS.Планета. Выберите в окне программы команду «GPS > Настройки».

В открывшемся диалоговом окне «Настройки» на вкладке «GPS» убедитесь что в группе «GPS type» отмечен пункт «COM». В поле «Порт» выберите нужный номер порта, тот, о котором говорилось выше (в моем случае COM8). Скорость можно не трогать, в соответствии с документации при подключении по протоколу NMEA 0183 на скорости 4800 бод/с данные GPS передаются один раз в секунду. Нажмите на кнопку «GPS Вкл/Выкл», затем на кнопки «Применить» и «ОК».

В главном окне программы, на карте должно быть отображено Ваше местоположение, а на панели справа другие подробности (скорость, пройденный путь, высота над уровнем моря, азимут и др.).

Читайте также:
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Adblock
detector