Здравствуйте, меня зовут Дмитрий, сегодня я расскажу как я создал GPS часы. В конце статьи будет ссылка на прошивку и CAD 3D модель.
Итак захотелось мне сделать что нибудь на Arduino и при этом что нибудь полезное. И выбор мой пал на часы но не просто часы а часы с синхронизацией времени по GPS ну и будильником заодно.
Описание конструкции
Здесь я также буду приводить цены в долларах, причем с учетом доставки. Все компоненты были куплены на одном всем известном китайском сайте, каком говорить не буду, а то посчитают за рекламу.
- Ardurino Uno центр всей системы — Цена 3.45$.
- GPS модуль VK2828U7G5LF — Цена 6.21$.
- CD4026BE драйверы для цифровых индикаторов 5 шт. Цена 2.20$.
- Разъемы под драйверы 16Pins. Купил их чтобы не повредить драйверы при пайке. Цена 0.51$.
- 7 сегментные цифровые индикаторы 1,8 дюйма с общим катодом на это нужно обратить внимание, индикаторами с общим анодом нельзя управлять при помощи CD4026BE. 4 шт. Цена 3.63$.
- Разъемы под цифровые индикаторы 5Pins 10 шт. Эти разъемы выпили у меня много крови дело в том что ноги цифровых индикаторов немного тоньше обычных штырьков которые в них вставляются, поэтому обязательно подогните концы ног у цифровых индикаторов в сторону. Цена 1.57$.
- Резисторы 220 Ом. Нужны для ограничения тока в цепи светодиодов 40 шт я по неопытности заказал на 2 Вт но конечно-же подойдут и на 0,5 Вт. Цена 2.22$.
- Резисторы на 12 кОм. Покупал я их как «подтягивающие» для кнопок но потом узнал что у Ardurino есть встроенный резистор который активируется в режиме PullUp. Но они мне пригодились когда надо было подогнать яркость 2 центральных светодиодов под яркость цифровых индикаторов. Спаяв 5 штук параллельно я получил 2,3 кОм. Так что они все таки пригодились 20 шт. Цена 0.68$.
- Динамик пищалка активный. Цена 0.82$.
- Светодиод красный 10 шт. Цена 1.25$.
- Шлейф из проводов dupont line 20 см. Я использовал его как источник проводков для соединения компонентов. Цена 1.13$.
- Энкодер нужен для выставления времени будильника и настройки. Энкодер я выбрал поскольку при помощи него процесс установки времени упрощается в сто раз. Почему энкодеры не применяются повсеместно в всех часах ума не приложу. Цена 0.98$.
- Ручка для энкодера. Стандартная ручка ужасна. Цена 1.31$.
- Кнопка со встроенным в неё светодиодом. Цена 0.87$.
- Датчик освещенности BH1750 (я выбрал тот который короткий). Естественно я захотел чтобы часы автоматически регулировали свою яркость. Цена 0.81$.
- Мосфет модуль 2 шт. Почему 2 штуки? Первый как вы понимаете я использую для управления яркостью циферблата, а второй я использую чтобы отключать GPS модуль, конечно у него есть спящий режим но в этом режиме он отключается не полностью, поэтому я устроил ему «спящий режим» при помощи мосфета. Стоит ли отключать GPS модуль? Да стоит при включенном GPS часы потребляют 120 миллиампер а при выключенном только 80. Почему модуль? Потому что мосфеты продаются только партиями по 10 шт а мне столько не надо. Цена 1.06$.
- Индуктивный сенсор CJMCU-0101. Цена 1.73$.
- Набор разъем гнездо 40Pin 5 шт. Нужен чтобы при помощи них подключать провода к плате. Вы спросите почему я не использовал эти разъемы для цифровых индикаторов? Потому что я с начало заказал те разъемы а потом понял что их мне будет недостаточно. Цена 1.56$.
- Акрил из него сделан корпус. Я взял 2 куска. Первый 200x200x4 мм Полупрозрачный из них я сделал переднюю и заднюю панели. Второй 200x200x3 мм полностью черный из него я сделал боковые панели. Панели между собой я склеил термоклеем. Цена 13.03$.
- Специальный нож крюк для резки акрила. Цена 2.01$
- Две монтажные двусторонние платы 9x15 см. Цена 4.18$.
- Силиконовые само-клюющиеся ножки 4 шт. Цена 0.88$.
- Шестигранные латунные стойки для плат М3X12 20 шт формата папа мама. И М3x20 10 шт формата мама мама. Цена 3.67$.
- Винты черные с головкой под внутренний шестигранник 20 шт. Цена 2.06$.
- Макетная плата и перемычки для неё. Она вам понадобится чтобы проверить работа-способность ваши компонентов перед их установкой. Цена 3.77$.
Возможно вам понадобится блок питания как я уже сказал часы во время синхронизации потребляют 120 миллиампер когда GPS модуль отключен только 80 миллиампер но у меня он был.
Кроме того настоятельно рекомендую выпаять все светодиоды как с Arduino так и с модулей, а то внутри часов будет настоящая дискотека.
Итак в результате мы имеем 60,72$ или 4007 рублей по курсу на момент написания статьи. При этом если у вас нет паяльника мультиметра и других паяльных принадлежностей то вам придется отдать за них примерно столько-же.
Принцип работы
При включении часы показывают количество спутников которое видит GPS модуль. После того как синхронизация происходит часы начинают показывать время. При нажатии на энкодер можно устанавливать будильник. Кнопка включает и выключает будильник при этом она отображает включен-ли будильник.При срабатывание будильника если положить руку сверху на часы то можно перевести их в режим снуз (индикатор будильника будет при этом мигать).
Если нажать на энкодер при зажатой кнопке включения будильника можно установить нужный часовой пояс (по умолчанию +3). Последующее нажатие на энкодер позволяет выставить задержку режима снуз у будильника.
Ну и поскольку это GPS часы то у них есть «секретный» режим. Если их включить зажав кнопку включения будильника, часы перейдут в режим когда, они пересылают данные с GPS модуля через USB порт. При помощи программы u-center можно просматривать эти данные. Кроме того когда загорится индикатор работы будильника это будет означать что часы нашли координаты. После этого вращая энкодер можно увидеть сначала широту а потом долготу.
Фотосесия
Вид сзади со снятым корпусом.
Задняя плата с другой стороны.
Плата с цифровыми индикаторами спереди.
Плата с цифровыми индикаторами сзади.
Вывод
Не смотря на высокую стоимость этих часов я ими все таки доволен. Как вы понимаете производитель ориентируется на потребности среднестатистического потребителя. А благодаря Arduino можно создать продукт который полностью вас удовлетворит.
Прошивка вместе с CAD 3D моделью.
Данная модель сделана при помощи программного пакета Creo Parametric (бывший ProEnginer) для её просмотра вам понадобится либо сам Creo Parametric либо просмоторщик который называется Creo View Express его можно скачать с сайта ptc но вам придется у них зарегестрироваться.
Обновление
Конвертировал модель в формат PDF 3d теперь можно просмотреть модель через Acrobat Reader файл находится в папке CAD-3D-Model/01_clock.pdf.
Комментарии (92)
sav13
04.06.2019 05:37Столько проводочков паять! А если один отпаяется — найти неисправность будет очень сложно. Неужели не проще ЛУТом плату развести, заодно убрав туда линейники и прочие детальки.
Сколько спутников ловится в помещении? Обычно у GPS с этим туго.
Ловятся ли одновременно GPS и GLONASS?
Чем на пол статьи перечислять перечень элементов, лучше бы схему. Как говориться, лучше один раз услышать.
В проекте на GITHUB скетч поместите в отдельный каталог, а то будет он цеплять всякие README.md и пр.
Зачем там 3Д модель? Если бы корпус на принтере печатался.deema35 Автор
04.06.2019 05:53Качество приема напрямую зависит от расположения часов. Если они стоят на окне то спутники находятся секунд за десять. Если часы как у меня стоят далеко от окна то могут минуты три обновляться. Правда для часов это не критично. Спутники у меня ловятся только GPS возможно это зависит от настроек модуля, я их не менял какие были такие и оставил.
3D модель нужна чтобы понять поместиться всё внутрь. Представ те вы сделали корпус стали вставлять внутрь компоненты и поняли что они немного не влезают. Или например прорезали отверстия для портов а они оказались немного выше или ниже. Вы же не будете прорезать отверстия в уже готовом корпусе.
А по поводу проводчиков а мультиметр на что.
deema35 Автор
04.06.2019 07:13По поводу цепляния файлов. Я конечно делал проект в VS но я сейчас проверил в IDE от arduino все нормально ничего лишнего не цепляется.
PKav
04.06.2019 11:04GPS не требует фиксации для определения времени, достаточно всего 1 спутника, даже отраженного сигнала, чтобы приемник начал выдавать корректное время.
olartamonov
04.06.2019 11:15Только есть проблема понять, корректное ли оно.
Хотя если есть достоверное знание, что фиксация уже была ранее и с её момента прошло T±t секунд, то можно смотреть на попадание разности времени с GPS и внутренних часов в интервал ±t.
А вот после перезагразки системы таки придётся ждать фиксации.PKav
04.06.2019 11:21Корректность времени проверить легко — если год в дате вменяемый — значит время ±20 секунд корректное. Идеально — если принята коррекция Leap Second, но оно не особо нужно в часах без отображения секунд.
olartamonov
04.06.2019 11:41Для устройства, которое неизвестно сколько пролежало на полке в выключенном виде (может полчаса, а может пять лет), вменяемый год — это какой?..
PKav
04.06.2019 11:55На сколько я помню, при старте он выдает 2034 год, или около того.
Более того, при холодном старте отсчет времени у G7020 начинается с 23:59:44, где 44 потому, что вшитый Leap Second равен 16. Как только время и дата резко перескочат — приемник получил точное время (кроме Leap Second) и можно его использовать. Фиксация координат, кстати, не означает получения коррекции Leap Second и время в этот момент может оставаться неточным даже при корректных координатах.deema35 Автор
04.06.2019 12:29Модуль который я использую не выдает ни какого времени пока не подключится к спутнику. Так что просто ждете когда он выдаст время и это и будет правильное время.
PKav
04.06.2019 12:32Ну так надо включить в настройках вывод времени и даты даже без фиксации. И ещё можно включить предложение PUBX,04, которое выдает и время, и дату, и Leap Second.
Jef239
04.06.2019 20:07+1От схемы, приемника и нужной точности зависит. Если у приемника есть батарейное питание, то обычно есть и часы в CMOS. Уход у них — как у часов персоналки, 1-2 секунды в сутки. Как пример - GEOS-5M.
Если приемник пишет старые координаты во flash, то по одному спутнику мы получим время с точностью (СКО) метров 15, то есть 50нс. Разумеется, если приемник не перемещался. Пример — тот же GEOS-5М.
Про GPS и ему подобные (GALILEO, QZSS) лучше забудьте, без детального разбора протокола сложно понять, принял ли приемник leap second (сейчас это смещение на 18 секунд). Намного лучше ГЛОНАСС, где leap second просто нет (зато в минуте иногда 61 секунда), зато практически напрямую передается год. И суперкадр ЭФИ короче в 5 раз (2.5 минуты вместо 12.5 у GPS).
Даже если приемник не хранит ваши координаты, по одному спутнику ошибка будет до 70 мс (время полета сигнала). То есть для часов — незначащая.
Мораль — оставить прием только по ГЛОНАСС и можно верить первому же полученному времени. Да и дате тоже, у ГЛОНАСС-М биты с номером четырехлетия (N4) в соседних строках с битами номера дня в четырехлетии (NT), принимаются вместе, в одном 30секундном кадре.
P.S. Это так, ворчание насчет «инженерного» подхода. Выдумали проблему на почти пустом месте.
olartamonov
04.06.2019 09:10Первый как вы понимаете я использую для управления яркостью циферблата, а второй я использую чтобы отключать GPS модуль, конечно у него есть спящий режим но в этом режиме он отключается не полностью, поэтому я устроил ему «спящий режим» при помощи мосфета. Стоит ли отключать GPS модуль? Да стоит при включенном GPS часы потребляют 120 миллиампер а при выключенном только 80
Опять двадцать пять, вас там под копирку что ли размножают?..
$PMTK225,4 — и модуль в перманентном backup mode с потреблением меньше 10 мкА, пока ему ногу FORCE_ON не дёрнут.
Ещё лучше — $PMTK225,1,3000,30000,30000,1800000 — и GPS сам просыпается каждые полчаса, чтобы уточнить координаты и время.Alexeyslav
04.06.2019 09:25Более того, часы с питанием от сети… какая экономия энергии?
olartamonov
04.06.2019 09:31Нет, ну я могу понять желание не тратить лишние милливатты, если их можно не тратить.
Но редкий ардуинщик долетит до середины даташита на GPS, хоть он даже на русском у «Навиа» уже есть давно.
PKav
04.06.2019 11:11Не, там нет таких команд — приемник там G7020 от UBlox :)
augorelov
04.06.2019 12:05Есть другие команды для энергосбережения. Изучаем документацию глава 11 «Power Management».
Jef239
04.06.2019 21:11Зачем каждые полчаса? Цель какая? Если у нас часовой кварц, то это уход на 1-2 секунды в сутки, то есть раз в 6 часов достаточно для полусекундной точности. Если у нас кварц похуже, то уход может быть на уровне 10PPM, то есть на секунду раз в 3 часа. Даже в этих условиях раз в полтора часа хватит.
А зачем вам раз в полчаса — в упор не понимаю.
P.S. А что чипсет и протокол перепутали — это детали.
Alexeyslav
04.06.2019 09:24Я бы сделал несколько иначе. Во-первых, управление одной кнопкой — это зло, добавить ещё кнопок сверху для функций. Корпус ведь позволяет, а удобство настройки повышает многократно.
Во вторых, вам повезло что внутри помещения GPS хоть как-то да работает, не везде такое прокатит. Поэтому… делается система первичные-вторичные часы, датчик с GPS висит возле окна и передаёт в эфир широковещательно при помощи nrf24l01 данные по времени ежеминутно. Остальные часы принимают, повинуются и отображают. Преимущество: GPS один а часов много, причем в них можно отказаться от кварцевой стабилизации частоты, брать голый контроллер и пускать его без кварца на внутреннем генераторе.
В третьих. GPS модуль зачем отключать? Часы работают от батареек? Экономия того не стоит… при включении модуль перейдёт в режим холодного запуска, будет заново искать спутники потребляя повышенный ток — экономия не стоит таких неудобств, даже если это просто работает.
Использовать драйверы CD4026BE… ну то такое, на любителя. Лучше использовать stp16cp05, там сразу светодиодные драйверы и сразу отпадает необходимость в токоограничительных резисторах, управление яркостью всего индикатора по одному входу(туда можно вообще напрямую фоторезистор подключить и будет работать аппаратно)… но это лишь регистры, поэтому переводить двоичный код цифры в сегменты надо будет в коде а это пара дополнительных строчек и огромный + в опыт.olartamonov
04.06.2019 09:38Во внешнем модуле заодно ставится BME280 или SHT21 — и готова метеостанция. При этом с GPS с просыпанием раз в пару часов (NB: auto periodic mode — до 35 минут, так что надо руками будить) оно даже на батарейках какое-то разумное время проживёт.
Ну или вообще без всякого GPS — DCF77 какой-нибудь ловить, если территориальное расположение позволяет.Alexeyslav
04.06.2019 10:33+1DCF77 слишком капризен вне Германии. Уже на расстоянии до Москвы его можно принять только ночью с прохождением и при отсутствии индустриальных помех. Или городить узкополосные фильтры на эту частоту, буквально с шириной полосы в 5...10Гц. Ага, и обеспечить стабильность параметров. При этом локальные часы должны держать темп автономно по меньшей мере сутки, а если им добавить элементарный ЦКХ то можно обойтись уже и без GPS.
olartamonov
04.06.2019 10:42У меня внешний модуль Oregon Scientific для BAR800 принимал вполне неплохо — правда, девятый этаж, окна на запад. Но там и антеннка в нём невыдающаяся по чувствительности.
Alexeyslav
04.06.2019 11:57А если «экономную» лампочку включить в комнате с приемником? И соседи пусть включат…
В нём магнитная антенна?olartamonov
04.06.2019 15:16Приёмник на улице, это внешний блок метеостанции.
Alexeyslav
04.06.2019 15:49Так не важно где он, лампочка для него фонит одинаково. У меня одна лампочка закрывает часть диапазона КВ в пределах квартиры… на длинных волнах проверить просто нечем из подручного.
olartamonov
04.06.2019 16:30Я встречал лампочки, которые глушат близко расположенный приёмопередатчик на 433 МГц, но а) это были единичные марки и б) от лампочки до приёмопередатчика было сантиметров в пределах двадцати.
DCF77 же совершенно стабильно принимался. Я вообще за него нежно любил BAR800 (а вот за то, что все три сдохли из-за врождённой болезни — отказа ЖК — не любил).
iliar
04.06.2019 13:09Ну или вообще без всякого GPS — DCF77 какой-нибудь ловить, если территориальное расположение позволяет.
Имхо. GPS универсальнее чем DCF77. Возможно если бы мы жили в германии, то да, DCF77 круто. Но на большей части территории России DCF77 ловится чуть менее чем ни как. А там где ловится очень много чего зависит от состояния атмосферы (будет проходить сигнал или нет), расположения приемника, наличия источников помех поблизости, погоды на марсе и т. д. И как бы да, вроде бы одной успешной синхронизации скажем в неделю достаточно чтобы часы показывали точное время (даже на дерьмовом кварце часы без синхронизации за неделю не так сильно уйдут чтобы это создало бы проблему). С дрогой стороны есть GPS который стабильно раз в секунду дает точное значение времени плюс PPS сигнал.
iig
04.06.2019 11:04Если это часы для дома, и в доме уже есть интернет, то NTP-часы на esp8266 это то что нужно.
deema35 Автор
04.06.2019 12:39Поэтому… делается система первичные-вторичные часы, датчик с GPS висит возле окна и передаёт в эфир широковещательно при помощи nrf24l01 данные по времени ежеминутно.
По мойму все очень громоздка. Хочется ведь чтобы все было в удобном маленьком корпусе.
Я написал про потребление оно подскакивает на 50%. И у меня например синхронизация происходит раз в сутки. Так что я считаю экономия должна быть.Alexeyslav
04.06.2019 13:23Это экономия на спичках. У вас потребление подскакивает раз в сутки, а то что они жрут 80мА круглосуточно, это ничего… не там экономите!
nrf24l01 это платка 1x2см и самое габаритное там это выводы… GPS модуль и тот больше, не говоря об ардуине. Туда кстати можно вариант NANO без USB-интерфейса.
ProstoUser
04.06.2019 11:40Хм… GPS модуль есть, а в чем проблема часовой пояс по умолчанию не +3 делать, а по координатам определять?
Alexeyslav
04.06.2019 12:00А что по координатам определить? Зоны часовые имеют сложную конфигурацию, в контроллере надо держать все эти полигоны… а где их взять(координаты точек полигонов)? что делать на границах полигонов?
deema35 Автор
04.06.2019 12:43Также нужно помнить о постоянных изменениях в законодательстве. Зимнее время то отменяют то оно снова возвращается.
ProstoUser
04.06.2019 13:35Ну да. Полигоны с непонятно какой точностью. Думаю, точность будет ограничена размером памяти. Где координаты взять — вопрос интересный. Если озаботиться, думаю, проблем не будет. Это же границы стран-областей.
В любом случае будет нужна ручная корректировка, а результата никто не заметит — у тебя просто с самого начала правильное время. Да. Продуманный GUI он такой. Его не видно :-)
iliar
04.06.2019 13:16Имхо. Излишний функционал для дома. Для этого тебе нужно будет в память устройства занести карту часовых поясов. При этом это должна быть именно карта, а не просто если долгота больше 50 и меньше 60 то часовой пояс такой то, это так не работает.
Потом получившуюся карту регулярно обновлять. Потому что не только в России правительство переодически херней страдает часовые пояса перекраивая.
А теперь вопрос, зачем нужен этот функционал для часов которые в течении всего срока службы скорее всего даже не покинут пределы квартиры? Не проще ли один раз при запуске ввести поправку и навсегда об этом забыть?ProstoUser
04.06.2019 13:38Поправку все равно надо допускать. Неоднозначности возможны в любом случае.
И да. Это штука, которая работает один раз — при первом запуске. В разработке стоит дорого, эффекта не много. Ну, в общем, для единичного экземпляра смысла нет, но если хочется сделать устройство уровня яблочной компании, то стоит задуматься :-)drWhy
04.06.2019 13:49Гаджет полезный, но уровень яблочной сейчас — это умный дом, в котором информация следует за человеком, предугадывающий запросы обитателей.
ProstoUser
04.06.2019 13:59Согласен на 100%!
Именно поэтому, если делать часы, то они не должны спрашивать про часовой пояс. Они должны его предугадать. :-)Alexeyslav
04.06.2019 14:18Заодно, кстати, при разработке можно математику подтянуть и геометрию. Хотел бы посмотреть код попадания точки в замкнутый произвольный многоугольник, запасся попкорном. Учитывая что в этих поясах есть анклавы…
ProstoUser
04.06.2019 15:54Хотел бы посмотреть код попадания точки в замкнутый произвольный многоугольник
Ну это довольно простая задача. Берем точку заведомо внутри (можно ее задавать вместе с многоугольником) и ищем пересечения отрезка от нашей точки до той, что «заведомо внутри» со всеми сторонами многоугольника. Если число пересечений 0 или четное — мы внутри. Если нечетное — снаружи. Анклавы при этом учитываются как отдельные области.Alexeyslav
04.06.2019 16:01Выглядит как-то сомнительно. Точку ещё брать, пересечение со сторонами… разбить на треугольники и искать попадание интересующей точки в них. Нашли хотябы один — можно заканчивать перебор досрочно.
ProstoUser
05.06.2019 15:48Выглядит как-то сомнительно. Точку ещё брать, пересечение со сторонами… разбить на треугольники и искать попадание интересующей точки в них. Нашли хотябы один — можно заканчивать перебор досрочно.
Треугольники не учитывают аклавы. Кроме того, треугольники хорошо работают с выпуклыми многоугольниками и гораздо хуже в впуклыми. Ну и последнее — как определять попадание точки внутрь треугольника?Alexeyslav
06.06.2019 15:18Как раз в случае треугольников не надо беспокоится об анклавах — надо только правильно описать многоугольник разделив его на треугольники, а для треугольника форма только одна и попадание более определённое. Конкретные алгоритмы можно уже найти в интернете, или посидеть немного в математике.
iig
04.06.2019 16:03Ну это довольно простая задача.
На ардуине? ;)ProstoUser
05.06.2019 15:50Ну а какие проблемы? Для анализа одного отрезка надо всего лишь решить уравнение — одно деление и штук 5 умножений/сложений и 4 сравнения максимум.
iig
05.06.2019 15:58Да никаких, памяти просто мало. А карту координат вершин многоугольников надо где-то хранить.
ProstoUser
05.06.2019 17:40Это от точности зависит. Если как-то грубо, то не особо много и нужно :-)
iig
05.06.2019 17:53Если грубо — можно резать глобус по параллелям и не морочить голову ;). Кому повезло — система угадает таймзону правильно. Кому не повезло — зададут вручную.
psinetron
04.06.2019 12:03Интересный GPS модуль вы взяли. У меня опыт только с NEO-6 имеется. В принципе неплохой. Как с качеством приема у вашего? Он значительно дешевле, а я люблю дешевое )
melodictsk
04.06.2019 12:47А можно было просто взять самый дешёвый смартфон с жпс на борту, где уже всё есть. Найти подходящую софтину с отображением большего циферблата и всё. Или вообще планшет.
Alexeyslav
04.06.2019 13:32И лицезреть тонны рекламы, выгоревший дисплей через пол года и вспухший аккумулятор…
augorelov
04.06.2019 13:05+1deema35, схему электрическую другие любители DIY для повторения должны разбирать по фотографиям с цветными проводками?
Alexeyslav
04.06.2019 13:31А как же получение навыков по реверс-инженерингу? В конце концов, там стандартные шилды, подключение стандартное а к каким выводам(там где есть выбор) подсмотреть можно в коде программы или назначить более удобные свои.
deema35 Автор
04.06.2019 13:56Электрическая схема в подобных устройствах просто будет показывать куда какая нога arduino подключена. Но эту информацию можно узнать и из прошивки. Смотрите файл define.h на гитхабе.
Max-812
04.06.2019 22:32+1Парни. :) Человек сделал для себя ИГРУШКУ. Как хотел. Не надо ему рассказывать, как ее лучше было сделать с оптимальной точки зрения, не превращайте игрушку в работу.
olartamonov
05.06.2019 08:05Если он её сделал для себя, то зачем он нам рассказывает все эти душещипательные подробности про стоимость электронных компонентов на алиэкспрессе? Он предполагает, что нам это будет интересно?
iig
05.06.2019 11:17Он предполагает, что нам это будет интересно?
Вы обратили внимание — значит вам интересно ;)
Считайте это экономической частью пояснительной записки к проекту :Dolartamonov
05.06.2019 11:22Считайте это экономической частью пояснительной записки к проекту :D
Я стартаперов, выходящих с очередного их конкурса радостными «такой-то сказал, что у нас всё отлично и пожелал не останавливаться!», всегда спрашиваю — «а денег при этом дал?».
zhovner
А есть ли какой-то модуль для подключения к компьютеру? Хочу NTP сервер без интернета.
deema35 Автор
Ardurino сам легко подключается к компьютеру. Другое дело что вам придется разработать программу на компьютере которая будет передовать время Ardurino через последовательный порт.
jcmvbkbc
вопрос, как я понял, о том, чтобы ардуина сама работала NTP-сервером.
POS_troi
Да без проблем собственно lloydm.net/Demos/GPS-NTP.html
zhovner
Я почти уверен что должны существовать готовые решения без необходимости писать свои драйвера.
apple01
Существуют GPS модули для подключения через serial или USB (c драйверами), есть также программы для установки времени использующие эти модули. Есть много проектов NTP серверов использующих Raspberry/Arduino/ESP8266/ЕSP32 (без интернета).
kisaa
Есть модуль Ethernet. Собирайте Arduino + Ethernet Shield + GPS, пишите прошивку — и вот готов ваш собственный time-server. Не факт, что потянет по точности как stratum 1, но для большинства нужд хватит.
Javian
Есть вариант NTP часов на ESP8266 + TM1637.
iliar
Есть вариант на распбери. www.satsignal.eu/ntp/Raspberry-Pi-NTP.html
POS_troi
Так это не интересно, готовый девайс жеж, макетку пихнуть некуда кучу проводов то-же, на борту линух который это умеет считай из каробки :)
iliar
За то работает
^ на скрине тест сигнала PPS. Цифра показывает чему было равно системное время в тот момент когда был получен сигнал PPS. Для бытовой точности как по мне весьма недурственный результат. Гораздо лучше чем я бы смог получить с какого то сервера из интернета.
ppl2scripts
Если к компьютеру, то Ардуино не нужен. Достаточно копеечного GPS модуля на USB подключенного напрямую.
Есть опыт сборки и эксплуатации таких серверов, и там ничего сложного нет.
JerleShannara
А зачем модули городить? Берём почти любой GPS приёмник для компа (RS232/USB). Ставим ntpd, ставим gpsd. В конфиге gpsd прописываем порт и тип GPS приёмника. В конфиге ntpd прописываем то, что время тянуть локально с gpsd. Готово, у вас свой автономный NTP сервер. Как это на виндах сделать — увы не знаю, мне такое нужно не было.
Alexeyslav
И… держим постоянно включенным комп?
JerleShannara
>А есть ли какой-то модуль для подключения к компьютеру? Хочу NTP сервер без интернета.
А зачем подключаемый модуль для выключенного ПК?
Alexeyslav
Тогда и NTP не нужен, если время нужно для одного ПК. Точное время многим потребителям нужно — ноутбуки, роутер, планшеты, телевизор…
Для единственного ПК который перманентно в оффлайне, проще синхронизироваться вручную по сигналам точного времени раз в месяц.
iig
Зачем им точное время от специальных часов? Пока вся эта техника работает оффлайново — точности их внутренних часов на их срок службы больше чем достаточно. Если они умеют в интернет — там есть NTP.
JerleShannara
Я давал ответ на тот комментарий. В нём упоминался модуль для компьютера. В условии не стояло десятка девайсов.