Оглавление:
- Запасы
- Шаг 1: детали, напечатанные на 3D-принтере
- Шаг 2: Подготовка экрана шагового двигателя ЧПУ
- Шаг 3: Модификации шагового двигателя
- Шаг 4: Добавление часов реального времени и переключателей
- Шаг 5: Схема
- Шаг 6: Подготовка деревянных слайдов
- Шаг 7: лазерная гравировка чисел
- Шаг 8: добавление зубчатых колес к деревянным направляющим
- Шаг 9: сборка часов
- Шаг 10: Программное обеспечение
- Шаг 11: Эксплуатация
- Шаг 12: Заключение
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Мне нравится конструировать и конструировать интересные часы, и я всегда ищу уникальные способы отображения времени. В этих часах используются 4 вертикальных слайда с числами. Четыре шаговых двигателя позиционируют ползуны так, чтобы правильное время отображалось в области отображения часов. Шаговые двигатели управляются с помощью Arduino Uno с ЧПУ Shield. Он использует плату Adafruit PCF8523 RTC для измерения времени. Корпус и механические элементы напечатаны на 3D-принтере, а слайды с цифрами сделаны из дерева с номерами, выгравированными лазером. Я использовал напечатанные на 3D-принтере реечные и ведущие шестерни, установленные на задней части деревянных слайдов, чтобы перемещать слайды вверх и вниз. Система зубчатой рейки и шестерни была получена из этого устройства линейного перемещения, сделанного Тригубовичем на Thingiverse.
Загадочная версия
Я сделал две версии: одну с использованием обычных цифр и загадочную версию, основанную на Cryptic Calendar Instructable cfb70.
Запасы
- Ардунио Уно
- Щит двигателя с ЧПУ
- Драйвер двигателя A4988 (4 шт.)
- Adafruit PCF8523 RTC
- Степперы 28BYJ 5V (4 шт.)
- Разъем питания - цилиндрического типа
- Кнопочный переключатель (2 шт.)
- Электропитание 12В
- Разные 3 мм болты и гайки
- Винты 2 мм для платы RTC (2 шт.)
- 1,5 фута доски из 4/4 твердой древесины (я использовал клен Birdseye Maple)
Шаг 1: детали, напечатанные на 3D-принтере
Всего имеется 14 деталей, напечатанных на 3D-принтере. Я распечатал их с помощью PLA на принтере Prusa i3 Mk3.
- Автоперевозчик
- Ведущие шестерни (4 шт.)
- Реечные шестерни (7 шт.)
- Задняя обложка
- Безель
Стойки для слайдов были слишком длинными, чтобы поместиться на моей кровати для 3D-принтера, поэтому я сломал их пополам и использовал соединение «ласточкин хвост», чтобы соединить две половинки (A и B) вместе.
- Направляющая для стойки A - 500 мм (2 шт.)
- Направляющая для стойки B - 500 мм (2 шт.)
- Направляющая для стойки A - 300 мм (2 шт.)
- Направляющая для стойки B - 300 мм
Файлы STL для Slide Clock можно найти по адресу
Шаг 2: Подготовка экрана шагового двигателя ЧПУ
Добавление драйверов шагового двигателя A4988
Щит шагового двигателя с ЧПУ может использовать различные типы драйверов шагового двигателя. Я использую драйверы Pololu A4988 Stepper. Я управляю моторами полными шагами.
После установки обязательно установите напряжение Vref, чтобы ограничить ток, идущий на двигатели. Я установил Vref на.15v Настройка мотора A на независимость
Щит двигателя поддерживает 4 двигателя, двигатель «A» может работать как второй двигатель, имитирующий один из основных двигателей X, Y или Z, или он может быть независимым двигателем. Для Slide Clock он должен быть независимым и управляться D12 и D13 с Arduino.
Чтобы сделать его независимым, необходимо установить перемычки, как показано на фотографии выше, для подключения контактов A. Stp и A. Dir к D12 и D13.
Мощность шагового двигателя
Шаговые двигатели на 5 В фактически работают от 12 В. Этот источник питания 12 В подключается к разъему питания двигателя CNC Motor Shield.
Питание Arduino Uno
Питание Arduino Uno осуществляется от источника 12 В, подключенного к моторному щитку ЧПУ. Контакт Vin на экране открыт и не подключен к разъему на экране. Таким образом, был подключен провод, идущий от положительной клеммы 12 В, и припаян к контакту Vin на экране, как показано на фотографии выше.
Шаг 3: Модификации шагового двигателя
Шаговые двигатели 28BYJ являются биполярными двигателями и имеют 5-контактный разъем, а CNC Motor Shield предназначен для управления униполярными двигателями и имеет 4-контактные разъемы для подключения двигателей. Чтобы прикрепить шаговые двигатели непосредственно к экрану, я изменил проводку разъема шагового двигателя. В частности, необходимо поменять местами провода №2 (розовый) и №3 (желтый). Для этого я использовал небольшую отвертку, чтобы нажать на язычок, удерживающий провод в корпусе разъема, вытащил его из корпуса и поменял их местами. Затем я пометил разъем, чтобы знать, что он был изменен.
При подключении вилки двигателя к экрану красный провод не используется, поэтому я расположил вилку на разъеме так, чтобы были подключены только контакты 1-4, а красный контакт 5 был плавающим.
Двигатели Slide Clock подключаются следующим образом:
Ось X = Ползунок минут Ось Y = Ползунок десятков минут Ось Z = Ползунок часов Ось A = Ползунок десятков часов
Шаг 4: Добавление часов реального времени и переключателей
Подключение часов реального времени
Часы реального времени Adafruit PFC8523 используют I2C для связи с Arduino, однако CNC Motor Shield не подключается к контактам I2C SDA и SCL на Arduino. Чтобы решить эту проблему, я использовал две перемычки с штыревыми разъемами и вставил их в разъемы SDA и SCL на плате Arduino, а затем установил экран сверху.
Кнопочные соединения
Две кнопки подключены к A1 и A2 на Arduino. CNC Motor Shield подводит эти контакты к заголовку на краю щита и называет их «Удержание и возобновление». Переключатели подключаются к этому заголовку.
Шаг 5: Схема
Шаг 6: Подготовка деревянных слайдов
Я купил 4/4 Birdseye Maple для горок. Чтобы получить нужную толщину, я перепилил древесину пополам, а затем с помощью барабанной шлифовальной машины создал однородную толщину 9,5 мм (3/8 дюйма) для всех исходных досок. Затем я выполнил финишный проход шлифованием с зернистостью 150.
Затем доски были распилены и разрезаны до размеров, указанных ниже.
- Слайд минут: 500 мм x 40 мм x 9,5 мм
- Слайд "Десятки минут": 300 мм x 40 мм x 9,5 мм
- Индикация часов: 500 мм x 40 мм x 9,5 мм (как минуты)
- Слайд "Десятки часов": 150 мм x 40 мм x 9,5 мм
Шаг 7: лазерная гравировка чисел
Перед лазерной гравировкой слайдов я приклеил малярный скотч синего цвета на верхнюю поверхность доски. Это помогает предотвратить ожоги и остатки на краях номеров.
Я использовал лазер Epilog Helix Laser мощностью 45 Вт, размер кровати которого составляет 24 x 18 дюймов. Поскольку слайды минут и часов длиннее 18 дюймов, я повернул все слайды на 90 * при их гравировке. Мои настройки лазера были: скорость 13 и мощность 90.
Я отшлифовал гравированные слайды наждачной бумагой с зернистостью 150 и 180, чтобы подготовиться к отделке.
. Dxf для чисел можно найти в репозитории Github для этого проекта
Завершение После гравировки я отшлифовал дерево до зернистости 180, затем применил кипяченое льняное масло (BLO), подождал 10 минут, вытер его и дал высохнуть в течение 24 часов, затем снова отшлифовал зернистостью 180 и нанес еще один слой BLO и протер, подождал 24 часа. часов, отшлифовали до 180 и нанесли прозрачный глянцевый полиуретан. После отверждения я отшлифовал зерно от 180 до 600, чтобы получить красивый блеск.
Шаг 8: добавление зубчатых колес к деревянным направляющим
К задней части деревянных салазок добавлены зубчатые колеса, они центрируются вдоль задней части как по вертикали, так и по горизонтали.
- Для слайдера «Минуты и часы» две половинки стойки по 500 мм необходимо соединить вместе.
- Для слайда «Десятки минут» две из 300-миллиметровых половин стойки соединяются вместе.
- Для слайда «Десятки часов» я использую одну из двух половин 300-миллиметровой направляющей для стойки.
Зубья шестерни должны располагаться с правой стороны, если смотреть на заднюю часть ползуна.
Шаг 9: сборка часов
Сборка довольно проста. Я использовал болты с шестигранной головкой 3 мм для всей сборки. Ниже перечислены этапы сборки.
- Установите шаговые двигатели на мотор-носитель.
- Добавьте шестерни к двигателям, они не закреплены и будут удерживаться на месте салазками.
-
Установите электронику в заднюю крышку
- Arduino крепится болтами через заднюю часть и гайками для удержания платы.
- RTC вставляет в пластик два винта диаметром 2 мм.
- Разъем питания запрессован в корпус
- Переключатели устанавливаются в два предусмотренных отверстия.
- Задняя крышка имеет соединение «ласточкин хвост», которое крепится к задней части моторного отсека, одна сторона изгибается, позволяя обеим сторонам взаимодействовать с «ласточкин хвост». Спереди ввинчиваются 3-миллиметровые болты для фиксации задней крышки.
- Добавьте лицевую панель
- Слайды с номерами вставляются в пазы и опираются на край прямозубых шестерен. Они сработают при подаче питания на часы.
На задней крышке есть прорези под каплю, чтобы часы можно было повесить на стену. Файлы STL включают дополнительный L-образный кронштейн, который можно использовать для прикрепления часов к столу или рабочему столу для тестирования.
Шаг 10: Программное обеспечение
Исходный код находится на GitHub по адресу
Библиотеки
Slide Clock использует библиотеку SpeedyStepper Стэна Рейфеля, которую можно найти по адресу
Первоначально я пытался использовать библиотеку AccelStepper, поскольку, похоже, это то, что многие люди используют. Он отлично работал с одним шаговым двигателем, но когда я попытался переместить все четыре шагового двигателя одновременно, он замедлился до ползания. Я перешел на библиотеку SpeedyStepper и остался очень доволен. Я буду использовать эту библиотеку для всех моих шаговых потребностей в будущем.
Запускать
При запуске код ищет нажатие клавиши на последовательном порту.
- Если пользователь нажимает клавишу, это активирует меню отладки, которое позволяет вручную управлять всеми шаговыми двигателями.
- Если на последовательном порте нет активности, программное обеспечение инициализирует часы, перемещая слайды в исходное положение, а затем отображает текущее время.
Возвращение слайдов в исходное положение
При использовании шаговых двигателей вам необходимо установить их в «исходное положение», чтобы программа знала физическое положение каждого слайда. Изначально я собирался добавить к каждому слайду датчики холла и магнит для определения исходного положения. Это потребовало дополнительной электроники, и, немного подумав, я понял, что могу просто запустить слайд до самого верха для максимального количества шагов. Если ползун доходит до максимального числа шагов, он отскакивает от цилиндрической шестерни, и когда двигатели останавливаются, все ползуны будут опираться на прямозубую шестерню в самом верху своего предела. Это немного шумно и со временем может привести к износу прямозубых шестерен, но это случается достаточно редко, чтобы не создавать проблем.
Шаг 11: Эксплуатация
Запуск часов
При первом подключении часов в них будут размещены все 4 слайда, а затем будет отображаться текущее время.
Установка времени
Чтобы установить время, нажмите и удерживайте синюю кнопку режима в нижней части часов в течение 1 секунды. Ползунок десятков часов будет перемещаться вверх и вниз на 1/2 дюйма, чтобы указать, что он выбран. Нажмите желтую кнопку выбора, чтобы изменить время, или нажмите кнопку режима, чтобы перейти к следующему слайду (часы). Повторяйте, пока не появится время был установлен, а затем сделайте последнее нажатие на кнопку Mode, чтобы запустить часы.
Шаг 12: Заключение
Есть много вариантов, которые можно изучить с помощью этого дизайна. Одна из идей состоит в том, чтобы заменить цифры буквами и использовать их для отображения слов из 4 букв, которые передают такую информацию, как погода, фондовый рынок или утверждения.
Например, моя жена хочет, чтобы я сделал версию, отображающую ее рабочий статус; Занят, Свободен, Звонок и т. Д. Это можно легко сделать, просто поменяв слайды местами и немного изменив программное обеспечение. Возможности безграничны.
Второй приз в конкурсе ремиксов