Приглашаю к тестированию системы коррекции хода часов
- Войдите на сайт для отправки комментариев
Большая радость пришла в наш чум - вчера наконец-то удалось прорваться через злобных роботов-тестировщиков и опубликовать на Google Play (пока что в версии для открытого тестирования) свое первое Android-приложение RTC Synchro, предназначенное для определения скорости ухода часов реального времени (+/- секунд за сутки) и настройки коррекции этого ухода. Поставленная цель - уйти от сумасшедшей погрешности модуля DS1307 (в моем случае это 31 секунда) до более/менее приемлемых 1-2 сек.
------------------------------
Всех, владеющих смартфоном и модулями Bluetooth+DS1307, приглашаю к тестированию вышеупомянутого аппа (еще раз ссылка на страничку в магазине Google Play - ТУТА) и обсуждению Arduino-части системы.
А вот и скетч, работающий в связке с вышеупомянутым аппом:
Немного о схеме:
Модуль Arduino Nano, к которому подключены модуль часов DS1307 (A4->SDA, A5->SCL) и Bluetooth (software serial: D7->RX, D6-> TX)
Программный сериал в вышеприведенном скетче используется потому, что аппаратный занят под вывод отладочной информации. Такая конфигурация позволяет проверять работу алгоритма и без связи со смартфоном - все поступающие от смартфона команды можно ввести в терминале, отправляемая на смартфон информация параллельно выводится в терминал.
Бредовая идея.
У ds1307 нет термокомпенсации.
У каждой из микросхем будет свой уход в ту или иную сторону, в зависимости от температуры.
Я на работе часы на ней собрал(там сильно точность не нужна).
Летом и зимой по минуте в неделю в одну сторону убегает, осенью/весной(когда уже холодно а отопления ещё нет) в другую.
Для DS3231 более актуально
А NTP использовать не пробовали. А вы идете из Питера в Москву через Владивосток.
Это всё решается покупкой нормального кварца за 15 рублей, дрейфующего максимум на 20 минут в год после всех температурных поправок.
Это всё решается покупкой нормального кварца за 15 рублей, дрейфующего максимум на 20 минут в год после всех температурных поправок.
3231 проще и наверное даже дешевле, учитывая то, что не нуждается в дополнительных решениях.
А NTP использовать не пробовали. А вы идете из Питера в Москву через Владивосток.
NTP с ардуинки, оснащенной лишь блютусом? Научите.
Ну через uart время с устройства получить проблем нет никаких.
Чем будет отличатся та же процедура для Bluetooth ?
Пару раз в год - да даже пару раз в месяц - потратить десять секунд на соединение с МК, сравнение времени смартфона и МК и нажатие на кнопку коррекции хода в случае необходимости...
Ничто не мешает адаптировать скетч к любым часам, на которые найдется библиотека для управления ими. Для приложения требуется лишь сравнить два-три раза время на эталонном и корректируемом устройстве - тут зависимости от типа микросхемы никакой.
Это эталонное устройство должно либо висеть на проводках, либо ручками подключаться к ним. А смартфон лежит в кармане. Мимо контролируемого устройства прохожу, запускаю приложение, вижу, что часы тикают с допустимым разбегом - успокаиваюсь. Нет - давлю на кнопку, одновременно и устанавливая на МК и точное время и актуальную для сезона коррекцию хода.
А зачем на нано точное время?
Если она никуда не подключается, то и абсолютная точность не нужна.
Если это часы, и нужно более точное время - проще на ESP8266 сделать, цена на том же уровне, но и Wi-Fi уже есть, можно и время получать и данными обмениваться.
А зачем на нано точное время?
Точное - незачем. А относительно точное, с уходом 1-2 секунды в сутки вместо 30-40, вполне может оказаться полезным. Задачи перед людьми стоят разные, методы их решения тоже весьма разнообразны.
Если это часы, и нужно более точное время - проще на ESP8266 сделать, цена на том же уровне, но и Wi-Fi уже есть, можно и время получать и данными обмениваться.
А если это не часы? Если это что-то типа кухонного/дачного/еще какого таймера с привязкой к календарю и каким-то внешним событиям, происходящим в определенное время? Как сказано выше,люди разные, задачи перед ними стоят непохожие, а та же пресловутая DS1307 до сих пор продается наряду с более точной DS3231...
Цель обсуждаемого приложения не создание турбийона из часов с кукушкой, а автоматизация процесса корректировки хода, приведение погрешности из области неприличных значений к удобоваримым. Переход от +/- 30 сек в сутки к 1-2. Или на базе года - от 3-4 часов накопившейся погрешности к 5-6 минутам.
А вы идете из Питера в Москву через Владивосток.
Запятая тут решает ))
Так время же относительно :-), (цитата)
Просто ЦНХ с DS1307 без стабильного кварца и термостабилизации, тема так себе.
Тогда еще и коррекцию ЦНХ по температуре нужно закладывать.
Вот и возникает вопрос, может более точный DS3231, или NTP в ESP? Это же даже дешевле чем нано и BT получится.
Я Цифровую Настройку Хода (ЦНХ) делал под Win на компе в 90-ых, это было сделано, если GPS будет недоступен, (плата GPS тогда ставилась в комп (редкая новинка была) для получения точного времени, точность была нужна до секунды, координаты были не нужны, объект был под землей), а точность обеспечить было нужно. Ну сделал ЦНХ, ну месяцами ходили более менее точно, время по модему рассылали на несколько потребителей.
А сейчас дома часы с ESP8266 и синхронизацией по NTP в каждой комнате. В датчиках тоже ESP, как же без mqtt?
Время там незачем, время на сервере.
Нет, есть еще старые самопальные термостаты, в них есть время, можно посмотреть время минимумов и максимумов температуры за последние сутки. Локально на ЖКИ. Но они подключены к мастеру по RS485, и он обновляет в них время из NTP.
Вот скрин из моей проги из 90-ых:
Не видно что-то скрина.(
Да замучился загружать..., супер недружественный интерфейс...
Блин, увидел скрин и чуть слезу не пустил. Ностальжи. Эх, было время и мы были молодыми....
А в чем проблема?
Я до сих пор такие интерфейсы делаю.