Перевод с сайта про самоделки instructables.com


Как работают часы

Решил я, наконец, разобраться с Arduino, в результате чего сделал свой первый проект: полностью механические цифровые часы.



Компоненты


Электроника:

  • (1) Arduino Nano.
  • (2) PCA9685, 16-канальные 12-битные PWM драйверы сервомоторов.
  • (1) DS3231, часы реального времени (RTC).
  • (1) TTP223B, сенсорный выключатель.
  • (33) SG90 сервомотора.
  • (2) 20KG мощные сервомоторы.
  • (1) Переключатель сигнала сервомотора.
  • (1) 12V 6A блок питания.

Материалы:

  • Ореховая фанера 3 мм.
  • Ореховый шпон.
  • Оргстекло 3 мм.
  • Проволока из углеродистой стали.
  • Винты.
  • Постоянные магниты.
  • Шарики металлические 6 мм.

Оборудование:

  • Лазерный резак Glowforge.
  • Разные инструменты.

Шаг 1: схема и код


Принципиальная схема работы устройства довольно простая. Всё соединяется со всем через контакты SDA, SCL, землю и V+.

Код в целом работает по следующим принципам:

  • Каждым мотором управляют одна или две платы PCA9685. У каждой цифры есть 7 сегментов – получается 14 сервомоторов для часов и 14 для минут. Есть ещё два мощных мотора, поворачивающих корпус, 4 поднимающих платформу, и 1 для двоеточия.
  • Время берётся из чипа часов реального времени.
  • Я включил в схему сенсорный выключатель, чтобы иметь возможность переключать форматы часов (12/24 часа).

Шаг 2: прототипирование










Цифры и числа


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

Начал я с единственной цифры. На фото видно дорожки в подъёмном механизме, по которым, по первоначальному плану, должны были перемещаться шарики. Также я хотел, чтобы при изменении текущего времени все шарики сначала падали – но такая система оказалась слишком сложной. И хорошо, поскольку часы и сейчас работают достаточно громко – а ежеминутное падение сотни шариков наверняка быстро бы начало раздражать.

Шаг 3: проектирование








Верхняя часть корпуса


Сервомоторы подключены к соединительным проводам. По одному проводу идёт к каждому из сегментов чисел, и на каждый сегмент есть по четыре магнита. Нужно просто повторить всё это 28 раз.

Первый слой – магниты, второй удерживает сервомоторы, третий – электронику, а потом идёт задняя стенка. Да, возможно, компоновка получилась слишком плотной – что поделать.

На боковых стенках закреплены два мотора 20Kg, вращающие весь корпус для загрузки и разгрузки шаров. Кстати, в дальнейшем я не буду использовать разные материалы для одного проекта. Я хотел, чтобы часы по большей части были прозрачными, с небольшой деревянной отделкой. Работать с материалами разной толщины, у которых к тому же получается разная толщина разреза в лазерном резаке, было очень сложно.

Подъёмный механизм (нижняя часть)


У подъёмного механизма есть 4 мотора, помогающие поднимать и опускать платформу, где стальные шарики выстраиваются под сегменты цифр. Подъём осуществляется посредством простой реечной передачи.

Ножки


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

Шаг 4: завершающие штрихи








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