Оглавление:
- Запасы
- Шаг 1: 3D-печать деталей
- Шаг 2: установка Arduino
- Шаг 3: Код
- Шаг 4: Сборка часов Corona
- Шаг 5: Установка часов Corona
- Шаг 6: Мысли и итерации дизайна
Видео: Часы Corona: 6 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
По мере того, как коронавирус распространяется по планете, и все больше и больше стран ограничивают своих граждан в своих домах, чтобы замедлить распространение вируса, многие из нас вынуждены проводить дни без дела. К счастью, здесь, чтобы протянуть руку помощи, и с учетом нескольких идей конкурс Instructables Clock казался идеальным временем для проведения досуга:)
Если вы тоже боретесь со скукой в семье из-за заключения коронавируса, не бойтесь, часы Corona здесь для вас с гарантированными 2 днями времени сборки плюс бесконечные часы наблюдения за пролетом времени с вашими новыми часами Corona!
Итак, идея часов заключалась в том, чтобы на лицевой панели часов были стальные шары, а не стрелки, управляемые магнитами, чтобы шары двигались как по волшебству вокруг часов. Внешний шар представляет минуты, а внутренний шар представляет часы.
Я разработал все файлы САПР с помощью Autodesk Fusion 360.
Все это запрограммировано с использованием Arduino.
Надеюсь, вам понравится это руководство, и, возможно, вы тоже сочтете его идеальным испытанием для печати / сборки в свободное время.
Без лишних слов приступим к Строительству !!!
Запасы
ЭЛЕКТРОНИКА:
- 2x сервопривода TowerPro SG90 (ссылка здесь)
- 1x Arduino Nano (ссылка здесь)
- 1x Arduino Nano Shield (ссылка здесь)
- 1x кабель Mini USB (ссылка здесь)
- 1x 5 В USB зарядное устройство для телефона (ссылка здесь)
- 1x кнопочные модули (ссылка здесь) !!! Убедитесь, что вы покупаете ту же модель, что и эта !!!
- Пакет перемычек между гнездом и гнездом (ссылка здесь)
- 2 стальных шарика диаметром от 10 до 15 мм
- 2x 15 мм диаметром x 3 мм шириной Неодимовые магниты (ссылка здесь) Я бы купил больше двух на случай, если вы сломаете их, как это сделал я:(
ПЛАСТИКА:
Детали могут быть напечатаны из PLA, PETG или ABS.
Для достижения наилучших результатов вам понадобятся 2 цветные нити.
Обратите внимание, что катушки по 500 г каждой более чем достаточно для печати 1 часов.
3Д ПРИНТЕР:
Минимальная необходимая платформа для сборки: Д130мм x Ш130мм x В75мм
Подойдет любой 3d-принтер. Я лично распечатал детали на Creality Ender 3, недорогом 3D-принтере стоимостью менее 200 $. Распечатки получились идеально.
Инструменты:
1x Маленькая крестовая отвертка - это все, что вам нужно:)
Шаг 1: 3D-печать деталей
Все детали доступны для загрузки на Pinshape (ссылка здесь)
Я тщательно спроектировал все детали часов для 3D-печати без каких-либо вспомогательных материалов, опор или краев, необходимых для печати.
Все детали были распечатаны на Creality Ender 3.
- Время печати: около 20 часов
- Материал: ПЭТГ
- Высота слоя: 0,3 мм
- Заполнение: 15%
- Диаметр сопла: 0,4 мм
Список запчастей для часов выглядит следующим образом:
Белый:
- 1x база
- 1x крышка
- 1x держатель сервопривода
- 1x винтик
- 1x серво стойка
- 1x внутренний круг
- 1x внешний круг
- 1x расширение руки
- 4x контакта
- 2x держатель для пуговиц
- 2x зажима для ног
Красный:
- 2x ноги
- 1x пластина
Постобработка:
Если вам не повезет или у вас не очень дорогой принтер, некоторые детали нужно будет шлифовать, если они вращаются и скользят между собой.
Шаг 2: установка Arduino
Corona Clock использует программирование Arduino C ++ для своей работы. Для загрузки программ в часы мы будем использовать Arduino IDE.
Установите Arduino IDE на свой компьютер
Arduino IDE (ссылка здесь)
Чтобы убедиться, что код работает в Arduino IDE, выполните следующие действия.
- Загрузите желаемый код Arduino ниже (Corona Clock.ino)
- Откройте его в Arduino IDE.
- Выберите Инструменты:
- Выберите доску:
- Выберите Arduino Nano
- Выберите Инструменты:
- Выберите процессор:
- Выберите ATmega328p (старый загрузчик)
- Нажмите кнопку Проверить (Отметить) в левом верхнем углу Arduino IDE.
Если все пойдет хорошо, внизу должно появиться сообщение Готово. Вот и все, что вы завершили Шаг 2 !!!
Шаг 3: Код
Вот посмотрите код для тех, кто вас интересует, вам, скорее всего, придется настроить движения рычага сервопривода, чтобы точно откалибровать их, поскольку точность каждого сервопривода варьируется.
#включают
Сервомашинный PUSHER;
Сервопривод myservoSLIDER;
const int buttonMinutes = 4;
int buttonStateMinutes = 0;
int FiveMinuteCounter = 0;
int OneHourCounter = 0;
беззнаковый long time_now = 0;
установка void ()
{Serial.begin (9600);
pinMode (buttonMinutes, ВВОД);
myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (90); myservoSLIDER.write (90); задержка (5000); myservoPUSHER.detach (); myservoSLIDER.detach (); }
пустой цикл ()
{FiveMinuteCounter = ((миллис () / 1000)% (300)); // FiveMinuteCounter = 0 каждые 5 минут
buttonStateMinutes = digitalRead (buttonMinutes);
Serial.print ("FiveMinuteCounter:");
Serial.print (FiveMinuteCounter); Serial.print ("OneHourCounter:"); Serial.print (OneHourCounter); Serial.print ("buttonStateMinutes:"); Serial.println (buttonStateMinutes);
// если кнопка нажата, перемещаем минутный шар на 5 минут вперед
если (buttonStateMinutes == 1)
{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wait5seconds (); myservoSLIDER.write (130); wait5seconds (); myservoPUSHER.write (140); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }
// если прошло 5 минут, переместить минутный мяч на 5 минут вперед
если (FiveMinuteCounter == 0)
{myservoPUSHER.attach (2); myservoSLIDER.attach (3); myservoPUSHER.write (30); wait5seconds (); myservoSLIDER.write (130); wait5seconds (); myservoPUSHER.write (140); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter ++; }
// если минутный шар переместился 12 раз, перемещаем часовой шар на 1 час вперед
если (OneHourCounter> = 12) {myservoPUSHER.attach (2); myservoSLIDER.attach (3);
myservoPUSHER.write (65);
wait5seconds (); myservoSLIDER.write (50); wait5seconds (); myservoPUSHER.write (130); wait5seconds (); myservoSLIDER.write (90); wait5seconds (); myservoPUSHER.write (90); wait5seconds (); myservoPUSHER.detach (); myservoSLIDER.detach (); OneHourCounter = 0; }}
недействительно wait5seconds ()
{время_ново = миллис (); while (millis () <time_now + 500) {// ждем ок. 500 мс}}
Шаг 4: Сборка часов Corona
Все следующие шаги изображены в видео о сборке выше.
- Загрузите код в Arduino Nano
- Закрепите Arduino Nano на Nano Shield
- Прикрутите один из сервоприводов к серво-стойке, как показано на видео.
- Поместите серво и сервопривод в держатель сервопривода и пропустите кабель через прорезь, как показано на видео.
- Подключите сервопривод к контакту D2 Nano Shield.
- Подключите другой сервопривод к контакту D3 Nano Shield.
- Прикрутите другой сервопривод к основанию, как показано на видео.
- Подключите USB-кабель к электросети или к ноутбуку.
- Подключите другой конец USB-кабеля к Arduino Nano на 2 секунды, пока сервоприводы не достигнут своего исходного положения на 90 градусов.
- Отключите USB-кабель от сети или ноутбука и Nano Shield.
- Поместите сервомеханизм в удлинитель сервопривода.
- Прикрутите этот сервомеханизм к сервоприводу, подключенному к штырю D2, под углом 90 градусов к корпусу сервопривода точно так, как показано на видео.
- Подключите кнопку к контакту GND, V + и контакт S к контакту D4 Nano Shield с помощью 3 кабелей dupont.
- Вставьте 4 штифта в основание часов.
- Поместите Arduino Nano Shield на базу.
- Вставьте кнопку в основание
- Закрепите пуговицу держателем пуговицы.
- Вставьте ножки в соответствующие слоты в основании.
- Закрепите ножки на месте зажимами для ножек.
- Подключите USB-кабель к Arduino через оставшееся отверстие в основании.
- Вставьте держатель сервопривода в основание через 4 штифта. Убедитесь, что он установлен правильно (видео)
- Вставьте направляющий штифт Circle в держатель сервопривода.
- Поместите оставшийся рычаг сервопривода на шестеренку.
- Привинтите этот рычаг сервопривода к другому сервоприводу под углом 90 градусов к корпусу сервопривода и с сервоприводом, расположенным в центре хода (видео)
- Расположите внутренний круг на месте отверстием для магнита, направленным вниз (6) (выходное отверстие для кабеля).
- Расположите внешний круг на месте отверстием для магнита вверх (12).
- Осторожно вставляйте магниты (неодимовые магниты сильны и могут нанести вред себе и другим при контакте друг с другом)
- Поместите тарелку в крышку так, чтобы тарелка совпала с отверстиями в крышке.
- Поместите крышку сверху так, чтобы цифра 6 была обращена к отверстию для выхода кабеля.
- Поместите стальные шарики сверху туда, где они магнитно приклеятся.
Вот и все, часы должны быть полностью собраны и готовы к работе!
Шаг 5: Установка часов Corona
Для установки часов внешний минутный круг должен начинаться с верхней 12 позиции.
К счастью, внутренний часовой круг может начинаться в любом положении, которое вы хотите
Затем вы можете перейти к включению часов, подключив их и используя кнопку для настройки минут.
и вручную вращая Стальной шарик для настройки часов.
Шаг 6: Мысли и итерации дизайна
Это был потрясающий проект, который в полной мере испытал мои инженерные способности!
Я уже некоторое время имел в виду эту идею, и то, что я действительно смог воплотить этот проект в жизнь, просто потрясающе. Это было нелегко, особенно в поисках механизма синхронизации и способа использования дешевых 180-градусных сервоприводов SG90 для его питания.
На выполнение этого проекта у меня ушло чуть меньше недели. Я прошел не менее 10 дизайнерских итераций, чтобы выполнить этот проект, некоторые из которых представлены на фотографии выше. Все это того стоило, время потрачено не зря!
Рекомендуемые:
Часы Vortex: наручные часы с зеркалом бесконечности: 10 шагов (с изображениями)
Часы Vortex: наручные часы с зеркалом бесконечности: целью этого проекта было создание носимой версии зеркальных часов бесконечности. Он использует свои светодиоды RGB для индикации времени, назначая часы, минуты и секунды красным, зеленым и синим светам соответственно и перекрывая эти оттенки t
Фотохромные часы и светящиеся в темноте часы: 12 шагов (с изображениями)
Фотохромные часы и часы, светящиеся в темноте: в этих часах используется специально созданный 4-значный 7-сегментный дисплей, сделанный из ультрафиолетовых светодиодов. Перед дисплеем размещается экран, который состоит либо из фосфоресцирующего («светится в темноте»), либо из фотохромного материала. Загорается кнопка вверху
C51 4-битные электронные часы - деревянные часы: 15 шагов (с изображениями)
C51 4-битные электронные часы - деревянные часы: у меня было немного свободного времени на этих выходных, поэтому я собрал эти 4-битные электронные цифровые часы DIY за 2,40 австралийских долларов, которые я недавно купил на AliExpress
Часы Gixie: самые красивые часы со светящейся трубкой: 4 шага
Часы Gixie: самые красивые часы Glow Tube: мне очень нравятся часы Nixie Tube, но они слишком дороги, я не могу их себе позволить. Итак, я потратил полгода на создание этих часов Gixie Clock. Gixie Clock достигается за счет использования освещения ws2812 для создания акрилового света. Я делаю все возможное, чтобы сделать трубку RGB тоньше
Создайте настоящие часы с боем колокола для вашего ПК и часы с огнетушителем: 3 шага (с изображениями)
Создайте настоящие часы с боем колокола для вашего ПК и часы с огнетушителем: медный колокол, маленькое реле, еще несколько вещей и настоящий колокол могут пробить часы на вашем рабочем столе. Хотя этот проект работает на Windows и Mac OS X тоже, я решил установить Ubuntu Linux на ПК, который я нашел в мусорном ведре, и поработать над этим: у меня никогда не было