ARDUINO Часы на ГРИ v2. Обсуждение проекта

DmitryZ

★✩✩✩✩✩✩
10 Фев 2020
112
34
Китайские компоненты могут добавить разнообразия в скучный мир, в котором "собрал и никаких проблем". Ну и руки, по индивидуальным, не серийным лекалам сделанные, тоже.
 

Владимир 1234

✩✩✩✩✩✩✩
4 Янв 2021
25
2
Не пойму, зачем все эти танцы с бубном для проверки модуля DS3231, когда уже есть готовое приложение для калибровки и установки точного времени. С ним можно протестировать модуль в режиме реального времени, оценить уход частоты кварца, узнать шансы на "спасение". Заодно, установить время с точностью до 1мс, а уход времени, то есть дрейф отрегулировать до 0,1 пи-пи-м. И все это за пару кликов мышкой.

Модуль DS3231 даже не нужно выпаивать для проверки с платы часов. Первое, что нужно сделать, залить в ардуино скетч synchro_RTC.ino. Второе, перекинуть провод с со 2-го пина ардуино на контакт SDW модуля (я это делаю с помощью проводка с двумя "крокодилами" на концах). Третье, установить в программе правильный порт, чтобы получить соединение по USB. Далее действовать согласно инструкции.
Вроде работает , а везде нули....
Может что-то не так делаю?
А через 10 минут игры с приложением 1мин стала уже равна 1мин 20 сек, вот что значит кривые руки
Что-то обнулил или что то присвоил.

Вроде работает , а везде нули....
Может что-то не так делаю?
А через 10 минут игры с приложением 1мин стала уже равна 1мин 20 сек, вот что значит кривые руки
Что-то обнулил или что то присвоил.
Следующий раз стало выглядеть так.
Такое впечатление что он не хочет запоминать новые данные
 

Вложения

Изменено:

Alex13

★✩✩✩✩✩✩
11 Мар 2020
16
17
Китайские компоненты могут добавить разнообразия в скучный мир, в котором "собрал и никаких проблем". Ну и руки, по индивидуальным, не серийным лекалам сделанные, тоже.
У китайцев брал только Ардуину и модуль часов, остальное в ЧИП-ДИП.
 

chedlde

✩✩✩✩✩✩✩
22 Окт 2020
6
0
@chedlde, трудно сказать. Я бы обратил внимание на пайку, вдруг "сопли" где посадили?
Второй вариант - отключить модуль в скетче и попробовать без него. Может, он каким-то образом МП вешает, но чтобы на определённых цифрах... как то не бьётся. Никакого другого влияния этот модуль оказывать не может, он вообще работает в оригинальном скетче раз в 15 минут.
Спасибо большое, вы были правы, очевидно где-то была лажа с пайкой или флюс остался. Собрал еще однй плату на ИН-12, работает. Но, как всегда, есть одно "Но", которое не смог пока победить.
1) На новой плате, последний, 4й, индикатор, минуты, плохо видно 6ку. На ламптесте то же самое, выкручивание резистора на полную не даёт результата. Остальные лампы светят как надо.
IMG_20210117_034538.jpg
2) На старой плате совсем не видно 1цу, размыто (( На ламптесте то же самое, выкручивание резистора на полную не даёт результата. Остальные лампы светят как надо.
IMG_20210117_031935.jpg

Что посоветуете, как победить?
 

psyx86

★★★★✩✩✩
31 Янв 2020
420
238
Спасибо большое, вы были правы, очевидно где-то была лажа с пайкой или флюс остался. Собрал еще однй плату на ИН-12, работает. Но, как всегда, есть одно "Но", которое не смог пока победить.
1) На новой плате, последний, 4й, индикатор, минуты, плохо видно 6ку. На ламптесте то же самое, выкручивание резистора на полную не даёт результата. Остальные лампы светят как надо.
Посмотреть вложение 21081
2) На старой плате совсем не видно 1цу, размыто (( На ламптесте то же самое, выкручивание резистора на полную не даёт результата. Остальные лампы светят как надо.
Посмотреть вложение 21082

Что посоветуете, как победить?
Последнее фото: похоже оптопара умерла.
А там где плохо видно 6, скорее усего окислилась цифра (можно погонять высоким напряжением)
 
  • Лойс +1
Реакции: chedlde

poty

★★★★★★✩
19 Фев 2020
3,257
949
@chedlde, если речь идёт в обоих случаях про одну цифру в одном разряде, то дело, скорее всего, снова в плохо пропаянном соединении в первом случае и замыкании с чем-то (плохо отмыли?) - во втором.
Вообще-то лучше перед припайкой лампы её проверить на работоспособность, потому что я не исключаю с высокой степенью вероятности и версию @psyx86, тем более, что свою версию я выдвинул с предположением. Сейчас, уже в плате, можно попытаться пропаять катод цифры 6 негорящего разряда в первом варианте или замкнуть его (крайне аккуратно! высокое напряжение и риск повредить схему) с соседней пятёркой (непосредственно на ножках лампы, чтобы исключить вероятность непропая).
Во втором случае лучше снять верхнюю плату и соединить проводами только анод нужной лампы и катоды последовательно на короткое время подключать к земле (несколько страниц назад я уже советовал просто сместить разъём катодов при сборке плат).
 
  • Лойс +1
Реакции: chedlde

chedlde

✩✩✩✩✩✩✩
22 Окт 2020
6
0
Последнее фото: похоже оптопара умерла.
А там где плохо видно 6, скорее усего окислилась цифра (можно погонять высоким напряжением)
@chedlde, если речь идёт в обоих случаях про одну цифру в одном разряде, то дело, скорее всего, снова в плохо пропаянном соединении в первом случае и замыкании с чем-то (плохо отмыли?) - во втором.
Вообще-то лучше перед припайкой лампы её проверить на работоспособность, потому что я не исключаю с высокой степенью вероятности и версию @psyx86, тем более, что свою версию я выдвинул с предположением. Сейчас, уже в плате, можно попытаться пропаять катод цифры 6 негорящего разряда в первом варианте или замкнуть его (крайне аккуратно! высокое напряжение и риск повредить схему) с соседней пятёркой (непосредственно на ножках лампы, чтобы исключить вероятность непропая).
Во втором случае лучше снять верхнюю плату и соединить проводами только анод нужной лампы и катоды последовательно на короткое время подключать к земле (несколько страниц назад я уже советовал просто сместить разъём катодов при сборке плат).
Это разные лампы и разные платы, перед пайкой проверял лампы отдельно, там где 1 не работает и как бы засветка идет, 1 работала без проблем. 6ку сейчас попробую проверить отдельно, может действительно лампа бракованная или подуставвшая.
 

chedlde

✩✩✩✩✩✩✩
22 Окт 2020
6
0
Т.е., на этой лампе 2, 3, 4,... работают хорошо? На них фоновая засветка гаснет?
Последнее фото: похоже оптопара умерла.
А там где плохо видно 6, скорее усего окислилась цифра (можно погонять высоким напряжением)
Спасибо большое за советы и участие.
Все лампы перепроверил через резистор, как в советах по сборке. Лампы рабочие. Платы то же, так как переставлял лампы местами.
Еще раз перепаял контакты на лампах и теперь все работает, скорее всего в спешке или по недосмотру получился непропай.
Очень доволен результатом))
Большое спасибо.
Теперь хочется сделать на ИН-14))
 

Артур Т.

✩✩✩✩✩✩✩
13 Янв 2021
4
0
Подстроечный резистор неисправен или в положении, близком к нулю - поставить (выкрутить) примерно в середину диапазона регулирования.
Не поступают импульсы на затвор транзистора - непрошита или неисправна Ардуина, неконтакт/непропай.
Поступающие на затвор импульсы недостаточного для открытия транзистора напряжения - проверить входящее на плату напряжение (не ниже 4,9 вольт желательно), импульсы (осциллографом).
Неисправный конденсатор. Пробит или зашунтирован диод.
Это не исчерпывающий перечень возможных причин, но наиболее вероятный.

Наиболее вероятна проблема с подстроечником, затем - с импульсами на затворе. На применённой схеме нет отдельного генератора для них, потому работа высоковольтного источника проверяется с установленной и прошитой (возможно, повторно прошитой) платой Ардуино. Хотя бы lamp_test надо прошить для пробы. Ну и пропаять плату, отмыть флюс. Заменить транзистор, если это не поможет.
Прошил Ардуино, теперь напряжение на конденсаторе регулируется от 0 до 30 В, при чем падает резко от 30 до 0, когда выкручиваю полностью подстроечный резистор
Входящее напряжение 5,4 В; плата пропаяна, флюс отмыт.
 

poty

★★★★★★✩
19 Фев 2020
3,257
949
@Артур Т., какую плату используете? Какой скетч заливаете?
падает резко от 30 до 0, когда выкручиваю полностью подстроечный резистор
Правильно, потому что "выкручиваете" его в ноль (в сторону уменьшения напряжения).
 

Артур Т.

✩✩✩✩✩✩✩
13 Янв 2021
4
0
@Артур Т., какую плату используете? Какой скетч заливаете?

Правильно, потому что "выкручиваете" его в ноль (в сторону уменьшения напряжения).
Плата:"Arduino Nano, ATmega328P", на ИН-14 со светодиодной точкой, скетч из основной прошивки nixieClock_2_v2.5

@Артур Т., проверь номинал подстроечника - может, на порядок меньше требуемого?
Номинал подстроечника 470 кОм, регулировка работает
 

Habar

✩✩✩✩✩✩✩
22 Апр 2019
6
4
Sergo_ST
Спасибо за прошивку, всё работает прекрасно, но есть пара вопросов. Как я понял в будильнике используется пассивный бузер, а в наличии уже есть кучка активных, с генератором. Можно что-то изменить в прошивке, чтобы использовать их? Индикация даты не планируется?
 

SergejEU

★★✩✩✩✩✩
16 Сен 2020
120
73
Вроде работает , а везде нули....
Может что-то не так делаю?
А через 10 минут игры с приложением 1мин стала уже равна 1мин 20 сек, вот что значит кривые руки
Что-то обнулил или что то присвоил.


Следующий раз стало выглядеть так.
Такое впечатление что он не хочет запоминать новые данные
Привет Владимир,

пробую разобраться, что не так у вас с калибровкой. Хорошо было бы знать с какой версией винды вы работаете?

Судя по первому скину, установка времени (adjustment) у вас сработала, а вот калибровка нет. Это вполне ожидаемо, т.к. для расчета дрейфа времени необходимо дать модулю немного поработать. Из моей практики ~23 часа (т.е. сутки) вполне хватает, чтобы быть уверенным в точности показаний дрейфа до +-0,1 ppm. Десять минут это очень мало, хотя можно сразу оценить, дефектый ли кварц. За этот интервал отвечает константа

#define MIN_TIME_SPAN 200000 // The minimum time required for a stable calculation of the time drift (in Secs).

Вы можете поиграться с ней, уменьшить, скажем, MIN_TIME_SPAN в сто раз, тогда вам придется ждать 2000/60 = 33 минуты, что вполне достаточно, чтобы узнать о порядке дрейфа кварца и стоит ли дальше с ним возиться.

Немного о самой платформе. Я уже писал, что с моей точки зрения, винда плохо подходит для калибровки модуля реального времени (RTC). Синхронизация системного времени в ней реализована отвратительно. Алгоритм синхронизации с эталонным временем (W32tm) практически не поменялся за последние 20-ть лет. Это значит, что вам предстоит синхронизировать комп каждый раз перед проверкой вручную или же лезть в системный реестр и менять интервал синхронизации системного времени с одной недели (default) на раз в час или полчаса.

В любом же линуксе это реализовано прямо из коробки службой ntpd (по протоколу непрерывного уточнения времени), что гарантирует синхронизацию системного времени с NTP-серверами вплоть до +-5мс от эталонного, чего ну никак нельзя добиться даже на виндовс-сервере. Это еще одна причина перехода на опенсорс, вместо того, чтобы кормить морального урода Гэйтса, личное состояние которого почти удвоилось за последний год и такими темпами будет расти дальше..

P.S. версия обновлена до 1.1.3 - улучшен протокол запросов, что должно предотвратить вывод «мусора» в терминал.
 

poty

★★★★★★✩
19 Фев 2020
3,257
949
@SergejEU, что-то про Windows и NTP несколько однобоко. Ну, не суть. Я специально попробовал устанавливать значение корректирующего регистра на одном из модулей, который активно отстаёт (не с помощью Вашей программы, а прямой записью в регистр). Коррекция явно меньше ожидаемой. Для частоты 8196Гц на SQW выходе изменения в районе 10Гц в каждую сторону. Не стоит потраченного времени.
@Globazin, а что Вы на этом экономите? Пайку 4-х деталей? Смысл?
 

Globazin

★✩✩✩✩✩✩
13 Янв 2020
18
26
@SergejEU, что-то про Windows и NTP несколько однобоко. Ну, не суть. Я специально попробовал устанавливать значение корректирующего регистра на одном из модулей, который активно отстаёт (не с помощью Вашей программы, а прямой записью в регистр). Коррекция явно меньше ожидаемой. Для частоты 8196Гц на SQW выходе изменения в районе 10Гц в каждую сторону. Не стоит потраченного времени.
@Globazin, а что Вы на этом экономите? Пайку 4-х деталей? Смысл?
Смысл есть всегда. У меня при сборке первых часов была проблема в индуктивности, на форуме у многих проблемы с питанием. Это примерно как на современных машинах ставят электрический стояночный тормоз вместо механического, получается в место рычага маленькая кнопка, а суть не изменилась - это прогресс, меньше, надежней, современней....
 

Dimasssiusis

★✩✩✩✩✩✩
20 Янв 2020
128
49
Господа, есть вопрос маленький, может кто знает причину моей проблемы

Разработал платку, все работает идеально, но не горят цифры 1 и 5, проверял дешифратор - рабочий (еще пробовал заменить на другой), также дорожки на него прозваниваются, а на этих цифрах лампа ведет себя так, будто просто не учавствует в действии катод, есть постороннее свечение, будто нет контакта на цифры 1 и 5

Видео и фото для примера:
photo5244734631759163802.jpg

На что еще, помимо дешифратора, обратить внимание? Может в скетче я чего упустил и нужно небольшие правки внести? Так то вроде все подэту плату переделал
 
Изменено:

poty

★★★★★★✩
19 Фев 2020
3,257
949
Соединить выход дешифратора на негорящие цифры с землёй. Если цифры загорятся - значит неверно выбран массив перекодировки цифр. Если нет - проблема в разъёмах или где-то непропай.
Ну, и я не исключаю 155ИД1, несмотря на то, что его меняли.
 
  • Лойс +1
Реакции: Dimasssiusis

Dark-Dante

✩✩✩✩✩✩✩
25 Ноя 2020
26
3
Как я понял в будильнике используется пассивный бузер, а в наличии уже есть кучка активных, с генератором. Можно что-то изменить в прошивке, чтобы использовать их? Индикация даты не планируется?
Пробуйте активный, должен работать. Если у Вас есть идеи на доработку прошивки, пишите Сергею в личку, тему я думаю он не читает, так как эта прошивка разрабатывалась по моей просьбе и с нужным мне функционалом, я же её и тестировал, так как часов у Сергея нет и пишет он код вслепую.
 

SergejEU

★★✩✩✩✩✩
16 Сен 2020
120
73
@SergejEU, что-то про Windows и NTP несколько однобоко. Ну, не суть. Я специально попробовал устанавливать значение корректирующего регистра на одном из модулей, который активно отстаёт (не с помощью Вашей программы, а прямой записью в регистр). Коррекция явно меньше ожидаемой. Для частоты 8196Гц на SQW выходе изменения в районе 10Гц в каждую сторону. Не стоит потраченного времени.
У вас явная ошибка в измерениях либо в вычислениях. На самом деле, согласно даташиту, коррекция с помощью регистра 0x10 возможна в границах от -12,8 до +12,7 ppm от частоты осциллятора. А это означает, что при частоте кварца 32768Hz, максимальный сдвиг частоты составит 32768*(12,8/1000000) ≃ 0,42Hz, т.е. меньше +- полгерца.

У вас же SQW FREQUENCY = 8192Hz, значит сдвиг еще в 4-ре раза меньше. Итого, где-то +-0,1Hz. Ошибка в 100 раз.

Но эти полгерца не умаляют всю пользу калибровки. Даже, если вам повезло с кристаллом и он работает точно, то это вовсе не гарантирует от его износа. Так по докам, за период первого года эсплуатации дрейф лежит в пределах +-1ppm, то уже дальше (0-10) +-5ppm. Возможен уход на 2-3 минуты в год. Что легко поправить калибровкой и уложить в десятки секунд.
 

Matveyugru

✩✩✩✩✩✩✩
14 Ноя 2020
31
2
А есть схема первой версии часов,где стояло 6 ламп и модуль давления-температуры?
 

poty

★★★★★★✩
19 Фев 2020
3,257
949
@Matveyugru, В соответствующей ветке в первом сообщении.
@SergejEU, если немного отмотать назад по сообщениям, то Вы увидите, что я считал ровно тем же способом, что и Вы. Но я говорю о конкретном модуле RTC, который, по словам @Старик Похабыч реально можно было бы "исправить", так как по его опыту эти расчёты не соответствуют практике. В моём случае - практика не соответствует ни расчётам, ни опыту.
Опять же справедливости ради:
  • частота DS3231 имеет определённую стабильность (±2 ppm) в рассматриваемом нами диапазоне температур, что означает, что точнее 63 секунд/год он работать может, но не обязан;
  • все условия даны для стабильного входного напряжения, с учётом того, что далеко не все платы, рассматриваемые здесь, его поддерживают - может добавиться 1ppm/V (и здесь я говорю также о том, что номинальное напряжение для модуля = 3,3В, т.е., 5В, даже если оно будет стабильно, "уведёт" частоту в плюс на 1,7ppm);
  • при изменении Trim Register зависимость частоты от температуры значительно ухудшается (достаточно посмотреть на график FREQUENCY DEVIATION vs. TEMPERATURE vs. AGING VALUE) и прочитать описание температурной компенсации, поэтому коррекция этого регистра может ухудшить стабильность в долговременной перспективе (типа упомянутого Вами года); кстати, и "цена" LSB при изменении температуры тоже непостоянная (т.е., не ровно 0,1 ppm, как Вы считали);
  • ну, и уход кварца из-за старения после первого года - уже ±5.0 ppm.
Исходя из этого - да, в момент калибровки можно добиться (наверное) от исправного модуля весьма точного хода времени, но в долговременной перспективе это вряд ли возможно. Если для того, чтобы откалибровать RTC каждый год нужно проводить многодневные танцы с бубном, то лучше воспользоваться тогда простой коррекцией времени через Wi-Fi, USB, GPS - любым способом, не трогая Trim Register.
Если модуль изначально врёт настолько сильно, как у @Владимир 1234 например, то смысла его корректировать вообще не вижу никакого. Здесь либо проблемы с подключением этого модуля, либо неисправность.
 
  • Лойс +1
Реакции: Dimasssiusis