Металл2024 Реклама
Метобр2024 Реклама

Извратные часы с "кукушкой"

Kromeshnik
Идет загрузка
Загрузка
21.08.2020
4573
29
Творчество

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

9

Извратные часы с В свое время сделал множество часов, но все электронные, с lcd, с 7-сегментными индикаторами, со светодиодной матрицей, с радио, с инет-радио, со всевозможными датчиками, gps-ами и пр. В основном все на подарки близким. И тут на форуме начали мелькать механические большие часы и что-то клюнуло меня в мягкое место и начало зудеть - хочу свои большие механические, но, чтоб никаких ручных заводов и пр. лабуды. 

И тут как-то весь проект у меня ну вот не пошел, затыки ну на каждом шаге..

Порылся в закромах - нашел у себя nodemcu, двигло 28byj c драйвером uln2003, ds3231, ну все, решено, буду делать. Идея была простая - дергаем раз в сутки время с инета, в остальное время используем ds3231 (ну да, изврат, достаточно и одного инета, но нет, захотелось мегаточности и без постоянного инета). Начал думать, как определить позиционирование стрелок - перебрал в уме варианты в виде механических концевиков (отбросил), оптических (заманчиво, но тогда надо, чтобы стрелки проходили точно в зазор и датчик надо еще как-то крепить сбоку/сверху...отбросил), лазерные датчики (дорого), смотрел еще разные варианты определения метоположения, магнитного поля и пр. (дорого, сложно..отбросил), нашел у себя герконы - о, вот оно! Изначально сделал под 2 геркона - 1 на часовую стрелку, 2 - на минутную, в итоге, понял, что и достаточно - на часовой. Посмотрел ссылки на печатаемые часы, ничего не понравилось, глянул только идеи, как и какие зубчатые колеса люди делают и начал проектировать. Колеса - с помощью GearTrax, остальное я делаю в солиде. Сделал, распечатал (а надо сказать, что колеса я до этого никогда на принтере не печатал) и пошли первые грабли.

1. Колеса...большие зубчатые колеса печатаются без проблем, маленькие (с малым кол-во зубьев, например 12 и меньше) - снизу 1 слой получается кайма, которую надо убирать. Колеса маленькие, напильник большой - намучался...Поигрался с настройками печати - ширина линии, высота туда-сюда - доигрался до того, что сопло возомнило себя трактором и пропахало мое ultrabase-стекло (отлично отработало 2 года) так, что все, приехали, слой сдерт, прилипания нет (попшикал гелем для волос - норм, можно печатать дальше).  А проблему с печатью мелких колес так и не решил, и почему у больших колес такого нет - загадка для меня так и осталась. Если кто знает - маякните.

2. Чем меньше зубьев у колеса минутной стрелки - тем больше разброс во время хождения часов (неприятно). Пришлось проектировать с большим количеством зубьев для минутной стрелки со всеми вытекающими (размер колес больше, у часовой стрелки зубьев еще больше и т.д.)

3. Крепление двигла 28byj такое неудачное, что ось получается неперпендикулярной к плоскоти и колесо, надетое на эту ось выдает восьмерки. Это решить конечно можно, но кто ж знал. Перепроектировал, перепечатал основание.

4. Как я уже говорил, никогда не печатал зубчатые колеса, потому расстояние от колес до колес взял такое, какое было написано в GearTrax...угу, мог бы и догадаться, что надо было допуск в миллиметр взять - ну, сам дурак, опять перепечатал.

5. Собрал, вроде шуршит...ан нет, где-то цепляет, где-то подтормаживает...боролся долго, хотел переделать на нормальную схему с металлическими осями и подшипниками, но их в наличии не было, заказывать лень, решил добить то, что есть. Короче, понял, что двигло слабенькое и местами ему просто не хватает мощности.

6. Наткнулся на еще одни грабли, при управлении двигателем использую библиотеку AccelStepper, так вот, когда я рассчитал сколько шагов надо делать двиглу для 1 минуты - вышло нецелое число, думаю, ладно, библиотека с этим справится, раз дробные можно подставлять, и тут я опять промахнулся...оказывается stepper1.moveTo(100.2) вызванное 60 раз будет не то же самое, что и stepper1.moveTo(6012), хотя математически должно...обойти конечно можно всякими извратами, раскинуть эту дробную часть в течение часа на разные положения, корректировать прохождением стрелки через геркон и т.д. но к тому моменту я устал, плюнул, достал из запасов принтера 17 nema и драйвер A4988. Опять все перепроектировал и распечатал.

7. Наконец-то что-то начало получаться, осталась проблема - для определения текущего положения стрелок (в начале включения часов) я запускаю двигло и жду, пока сработает прерывание на герконе, как только сработало - ага, двигатель стоп, визуально смотрю на стрелки - у меня это 11:25, и дальше, зная, сколько шагов надо для прохождения 1 минуты (у меня это 200) можно выставить любое время. В теории все замечательно. На практике мне попался какой-то чудный геркон - он, во время прохождения стрелки над герконом, замыкался дважды! Что естественно мешало определить, в какое время он сработал - в 1 положении или во 2. Решил все это программно-извратно. Заработало. И тут новая напасть - через пару дней двигатель перестал останавливаться когда стрелка проходит геркон - оказывается геркон намагнитился и перестал "выключаться"...Мой словарный запас матов давно иссяк к этому моменту. Геркон поменял, подумал, передвинул магнит на стрелке ниже, на самой границе, чтоб только хватало, чтоб замыкать. Это помогло. Фиг знает, будет ли магнититься еще, время покажет.

8. И самый главный облом моего проекта - я хотел питать все от аккумулятора, nodemcu и драйвер передвинули стрелку на минуту, заснули на минуту, проснулись и опять передвинули и т.д. Nodemcu прекрасно спит, A4988 тоже прекрасно засыпает, благо есть отдельный вывод sleep - вообще все просто. Оказалось, что мне до часового мастера как до луны. Когда питание от двигателя отключается - колеса под тяжестью стрелок сдвигаются. Надо перепроектировать, добавлять зубчатых колес и пр. а мне уже лень. Пришлось забыть про энергоэффективность и держать двигатель постоянно залоченым. Зато теперь можно прикрутить внешнее освещение.

9. Раз швейцарской точности у меня не вышло (в целом все точно идут, но из-за погрешности старта и в течение 12 часов стрелки могут показывать +-1 минуту - чаще +- полминуты). Плюнул и на это, сил уже не было. Решил прикрутить голосовое оповещение времени каждый час. Благо года 3 как валяются у меня модули miniMP3 плеер. Правда с ними так и не работал, руки не дошли.

10. С этим модулем тоже оказалось не все так гладко, как пишут в инете. Про него уже вкратце, ибо всех заморил уже. а) хоть и пишут, что моду ль работает от 3.3В до 5В - не верьте! наглая ложь! Уже на 4,4В начинаются замикания и модуль работает нестабильно

б) у меня было 2 динамика, один больше, другой меньше, но на обоих написано 4 Ома 3W, так вот, с 1 - работает, со 2 - даже на 5 В ну не хочет и хоть ты тресни - заикается, вырубается модуль и все тут. Припаял последовательно 2 таких динамика - заработало, но по громкости так же, как 1 маленький...

в) программно определять играет ли/закончилась композиция у меня получилось только с большими файлами и то не всегда...лучше использовать отдельный выход на модуле - busy, с ним проблем с определением играет или уже закончилась композиция - без проблем. Убил много времени, чтобы к этому прийти.

г) нашел в инете какую-то АТС, а там озвучки цифр, времени и пр. скачал, закинул на sd, обработал, теперь каждый час часы кукукают и говорят время, в 12 часов - кукукают 12 раз, и сразу после обновления времени из инета - говорят день недели, день, месяц и время. (сделал еще ночной режим - с 23 до 6 утра не говорят, чтоб соседей не будить + сделал кнопку, чтоб совсем звук можно было выключить) .

Вот такая вот хрень получилась..Еще не решил, будут настенные или настольные и с освещением тоже думаю.Короче такая история, как делать не надо. Ниже чуток фоток. Исходники, stl, звуки, вдруг кому надо - пишите, выложу без проблем. Но настоятельно не рекомендую повторять проект.

Извратные часы с Извратные часы с Извратные часы с Извратные часы с Извратные часы с Извратные часы с Извратные часы с и коротенькое видео, как озвучивает:

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

9
Комментарии к статье
Кремень КБ Реклама
Кремень КМ Реклама