GPS-часы на Arduino

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

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

И ответ на этот вопрос: да, мы можем собрать часы, используя внутренний таймер, но эта задача будет более сложной. Поэтому использование внешнего модуля для часов на Arduino станет более простым вариантом.

Использование GPS-модуля NEO-6M

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

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

NGPS

Результат, который вы видите на изображении выше, — это данные в формате NMEA, полученные GPS-модулем NEO-6M с различных спутников. Результат включает в себя несколько строк, среди которых нам нужны строки, начинающиеся с $ GPRMC и $ GPRMC.

Код для получения времени GPS из строки $ GPRMC

В строке выше буква рядом с $ GPRMC представляет всемирное координированное время (UTC)) (« ччммсс .ss »).

Затем буква рядом с номером UTC указывает статус данных.

  • «А» означает, что вы получаете сигнал и что все работает правильно.
  • Буква «V» означает, что ваш GPS-навигатор не подключен ни к одному спутнику.

Эти две цифры после буквы «А» означают широту и долготу.

Следующая таблица поможет вам понять значение указанной выше строки NMEA.

Идентификатор Описание
220516 Время в формате часов, минут, секунд и миллисекунд . ( Hms) 18-23-06
А Статус // A = Активно и V = Нет сигнала
Широта Широта 15 град. 23,82 мин. север
N Направление N = север, S = юг
Долгота Долгота 2 2,24 мин. Запад
W Направление E = Восток, W = Запад
Скорость 173,8 скорость в узлах
Угол 231,8
Дата ДАТА по всемирному координированному времени — 01.11.20
MV Магнитная вариация
W Направление изменения E / W

Мы думаем, что этой информации о приведенной выше строке NMEA достаточно для работы над нашим проектом. Если вы хотите узнать больше об этом формате, перейдите по этой ссылке.

Компоненты для сборки GPS-часов на Arduino

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

  • GPS-модуль NEO-6M (можно заказать здесь)
  • Плата Ардуино (можно заказать здесь)
  • Дополнительные провода
  • ЖК дисплей (можно заказать здесь)
  • Макетная плата (можно заказать здесь)
  • Литий-ионный аккумулятор

Программное обеспечение:

  • Arduino IDE

Спецификация GPS-модуля NEO-6M

  • Одновременный прием до 3-х GNSS (GPS, Galileo, ГЛОНАСС, BeiDou).
  • Навигационная чувствительность –167 дБмВт (децибел-милливатт).
  • Безопасность и защита целостности.
  • Встроенная память ROM.
  • Поддерживает все спутниковые системы дополнения.
  • Расширенное обнаружение помех и спуфинга. Совместимость с семействами NEO-7, NEO-6 и NEO-5.

Принципиальная электрическая схема

На следующей картинке показана принципиальная схема часов Arduino GPS.

Принципиальная схема часов

На картинке выше показана схема подключения, в которой мы подключили контакт TX модуля GPS к контакту D9 платы Arduino, запитываем GPS-модуль через саму плату Arduino.

Код программы для GPS-часов

Итог

Таким образом, вы сможете сами собрать и запрограммировать часы на Arduino с использованием GPS-модуля NEO-6M. Если у вас есть какие-либо сомнения по данному проекту, то сообщите нам об этом в разделе комментариев.

С Уважением, МониторБанк

Добавить комментарий