- PVSM.RU - https://www.pvsm.ru -

GPS часы на Arduino

image

Здравствуйте, меня зовут Дмитрий, сегодня я расскажу как я создал GPS часы. В конце статьи будет ссылка на прошивку и CAD 3D модель.

Итак захотелось мне сделать что нибудь на Arduino и при этом что нибудь полезное. И выбор мой пал на часы но не просто часы а часы с синхронизацией времени по GPS ну и будильником заодно.

Описание конструкции

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

  1. Ardurino Uno центр всей системы — Цена 3.45$.
  2. GPS модуль VK2828U7G5LF — Цена 6.21$.
  3. CD4026BE драйверы для цифровых индикаторов 5 шт. Цена 2.20$.
  4. Разъемы под драйверы 16Pins. Купил их чтобы не повредить драйверы при пайке. Цена 0.51$.
  5. 7 сегментные цифровые индикаторы 1,8 дюйма с общим катодом на это нужно обратить внимание, индикаторами с общим анодом нельзя управлять при помощи CD4026BE. 4 шт. Цена 3.63$.
  6. Разъемы под цифровые индикаторы 5Pins 10 шт. Эти разъемы выпили у меня много крови дело в том что ноги цифровых индикаторов немного тоньше обычных штырьков которые в них вставляются, поэтому обязательно подогните концы ног у цифровых индикаторов в сторону. Цена 1.57$.
  7. Резисторы 220 Ом. Нужны для ограничения тока в цепи светодиодов 40 шт я по неопытности заказал на 2 Вт но конечно-же подойдут и на 0,5 Вт. Цена 2.22$.
  8. Резисторы на 12 кОм. Покупал я их как «подтягивающие» для кнопок но потом узнал что у Ardurino есть встроенный резистор который активируется в режиме PullUp. Но они мне пригодились когда надо было подогнать яркость 2 центральных светодиодов под яркость цифровых индикаторов. Спаяв 5 штук параллельно я получил 2,3 кОм. Так что они все таки пригодились 20 шт. Цена 0.68$.
  9. Динамик пищалка активный. Цена 0.82$.
  10. Светодиод красный 10 шт. Цена 1.25$.
  11. Шлейф из проводов dupont line 20 см. Я использовал его как источник проводков для соединения компонентов. Цена 1.13$.
  12. Энкодер нужен для выставления времени будильника и настройки. Энкодер я выбрал поскольку при помощи него процесс установки времени упрощается в сто раз. Почему энкодеры не применяются повсеместно в всех часах ума не приложу. Цена 0.98$.
  13. Ручка для энкодера. Стандартная ручка ужасна. Цена 1.31$.
  14. Кнопка со встроенным в неё светодиодом. Цена 0.87$.
  15. Датчик освещенности BH1750 (я выбрал тот который короткий). Естественно я захотел чтобы часы автоматически регулировали свою яркость. Цена 0.81$.
  16. Мосфет модуль 2 шт. Почему 2 штуки? Первый как вы понимаете я использую для управления яркостью циферблата, а второй я использую чтобы отключать GPS модуль, конечно у него есть спящий режим но в этом режиме он отключается не полностью, поэтому я устроил ему «спящий режим» при помощи мосфета. Стоит ли отключать GPS модуль? Да стоит при включенном GPS часы потребляют 120 миллиампер а при выключенном только 80. Почему модуль? Потому что мосфеты продаются только партиями по 10 шт а мне столько не надо. Цена 1.06$.
  17. Индуктивный сенсор CJMCU-0101. Цена 1.73$.
  18. Набор разъем гнездо 40Pin 5 шт. Нужен чтобы при помощи них подключать провода к плате. Вы спросите почему я не использовал эти разъемы для цифровых индикаторов? Потому что я с начало заказал те разъемы а потом понял что их мне будет недостаточно. Цена 1.56$.
  19. Акрил из него сделан корпус. Я взял 2 куска. Первый 200x200x4 мм Полупрозрачный из них я сделал переднюю и заднюю панели. Второй 200x200x3 мм полностью черный из него я сделал боковые панели. Панели между собой я склеил термоклеем. Цена 13.03$.
  20. Специальный нож крюк для резки акрила. Цена 2.01$
  21. Две монтажные двусторонние платы 9x15 см. Цена 4.18$.
  22. Силиконовые само-клюющиеся ножки 4 шт. Цена 0.88$.
  23. Шестигранные латунные стойки для плат М3X12 20 шт формата папа мама. И М3x20 10 шт формата мама мама. Цена 3.67$.
  24. Винты черные с головкой под внутренний шестигранник 20 шт. Цена 2.06$.
  25. Макетная плата и перемычки для неё. Она вам понадобится чтобы проверить работа-способность ваши компонентов перед их установкой. Цена 3.77$.

Возможно вам понадобится блок питания как я уже сказал часы во время синхронизации потребляют 120 миллиампер когда GPS модуль отключен только 80 миллиампер но у меня он был.

Кроме того настоятельно рекомендую выпаять все светодиоды как с Arduino так и с модулей, а то внутри часов будет настоящая дискотека.

Итак в результате мы имеем 60,72$ или 4007 рублей по курсу на момент написания статьи. При этом если у вас нет паяльника мультиметра и других паяльных принадлежностей то вам придется отдать за них примерно столько-же.

Принцип работы

При включении часы показывают количество спутников которое видит GPS модуль. После того как синхронизация происходит часы начинают показывать время. При нажатии на энкодер можно устанавливать будильник. Кнопка включает и выключает будильник при этом она отображает включен-ли будильник.При срабатывание будильника если положить руку сверху на часы то можно перевести их в режим снуз (индикатор будильника будет при этом мигать).
Если нажать на энкодер при зажатой кнопке включения будильника можно установить нужный часовой пояс (по умолчанию +3). Последующее нажатие на энкодер позволяет выставить задержку режима снуз у будильника.

Ну и поскольку это GPS часы то у них есть «секретный» режим. Если их включить зажав кнопку включения будильника, часы перейдут в режим когда, они пересылают данные с GPS модуля через USB порт. При помощи программы u-center можно просматривать эти данные. Кроме того когда загорится индикатор работы будильника это будет означать что часы нашли координаты. После этого вращая энкодер можно увидеть сначала широту а потом долготу.

Фотосесия

image
Вид сзади со снятым корпусом.

image
Задняя плата с другой стороны.

image
Плата с цифровыми индикаторами спереди.

image
Плата с цифровыми индикаторами сзади.

Вывод

Не смотря на высокую стоимость этих часов я ими все таки доволен. Как вы понимаете производитель ориентируется на потребности среднестатистического потребителя. А благодаря Arduino можно создать продукт который полностью вас удовлетворит.

Прошивка вместе с CAD 3D моделью. [1]

Данная модель сделана при помощи программного пакета Creo Parametric (бывший ProEnginer) для её просмотра вам понадобится либо сам Creo Parametric либо просмоторщик который называется Creo View Express его можно скачать с сайта ptc но вам придется у них зарегестрироваться.

Автор: Дмитрий

Источник [2]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/diy/319796

Ссылки в тексте:

[1] Прошивка вместе с CAD 3D моделью.: https://github.com/Deema35/Arduino_GPS_Clock

[2] Источник: https://habr.com/ru/post/454676/?utm_source=habrahabr&utm_medium=rss&utm_campaign=454676