Оглавление:
- Запасы
- Шаг 1. Самый простой способ: закрыть стороны поддона
- Шаг 2: разровняйте бутылки для сидра
- Шаг 3: Найдите положение бутылок и светодиодов
- Шаг 4: сверление отверстий для светодиодов
- Шаг 5: сверление отверстий в бутылках для установочных дюбелей
- Шаг 6: Электронная партия
- Шаг 7: Закрепление бутылок на поддоне и соединение светодиодов
- Шаг 8: Замечания, расширения и улучшения
Видео: CLEPCIDRE: цифровые часы с бутылками сидра: 8 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
Прежде чем углубляться в описание объекта, мне нужно объяснить контекст, в котором он был спроектирован и построен. Моя жена художник и работает в основном с глиной, как керамист, но также и с другими материалами, такими как дерево, сланец или стекло. В большинстве своих художественных работ она пытается показать следы, оставленные временем на объектах, и часто использует материалы, встречающиеся в природе, такие как деревянные кусочки на пляже, чтобы «дать вторую жизнь бывшим в употреблении предметам». Ее сестра и шурин сами делали сидр (в Нормандии), и до сих пор сотни бутылок сидра спят под толстым слоем пыли в их старом прессе. Этого было более чем достаточно, чтобы вызвать у моей жены следующую идею создания: «часы из бутылок сидра». Связь со временем очевидна: у этих бутылок было славное прошлое, и теперь они должны быть свидетелями прошедшего времени и вместе образовывать часы. Итак, год назад она спросила меня: «Дорогой, можешь ли ты сделать мне часы с лампами под 12 бутылок сидра? Я сама расплющу бутылки в своей печи, а ты позаботишься обо всем остальном: деревянной подставке, - поддоне -, лампы и вся электронная схема! Я хочу отображать время, но не всегда, светодиоды также должны беспорядочно мигать, возможно ли? Вам также следует найти решение для фиксации бутылок на поддоне ». Часы должны быть готовы в течение месяца …
«Прозвище» этого произведения искусства - «CLEPCIDRE», что означает (на французском языке) «Circuit Lumineux Electronique Programmé sous bouteilles de CIDRE», это отсылка к названию «CLEPSYDRE», которое обозначает водяные часы, изобретенные египтянами.. Моя жена называет это "Les Bouteilles de Ma Soeur" (Бутылки моей сестры).
Фотография # 1: Запас бутылок сидра у моей невестки
Изображение №2: Исходный документ спецификации
Картинка с 3 по 6: виды на часы.
CLEPCIDRE был показан на двух выставках в прошлом году, первая в «Greniers à Sel» в Онфлёре (Кальвадос, Нормандия, Франция) в апреле 2019 года (фото № 6) и вторая в Тук (Кальвадос, Нормандия, Франция). в июне 2019 года.
Запасы
- Двенадцать бутылок сидра (вы можете попробовать другие виды бутылок: шампанское, игристое вино,… но без гарантии)
- Керамическая печь (мы использовали цилиндрическую печь мощностью 5 кВА с верхней загрузкой)
- Поддон (доски кромочные, размеры: +/- 107смx77смx16см)
- Несколько деревянных досок (чтобы закрыть стороны поддона)
- 24 мощных белых светодиода диаметром 10 мм (например,
- Плата Arduino: Uno или Leonardo ОК, плата меньшего размера может подойти, Mega - это немного перебор
- Два источника питания (5 В для светодиодов и 12 В для плат Arduino и RTC, хотя 5 В для Arduino должно быть в порядке, но не тестировалось)
- Плата RTC (я использовал Adafruit DS1307, но я бы порекомендовал более точные RTC с температурной компенсацией на основе DS3231; DS1307 сдвигается на 2-3 секунды каждый день и требует регулярной повторной настройки)
- 4 регистра сдвига 74HC595 либо как отдельные элементы (16-контактная DIL CMOS IC), либо уже установленные на плате (например, SparkFun Shift Register Breakout - 74HC595 ref BOB-10680)
- Тестовые платы из эпоксидной смолы (50 * 100 мм, отверстия в группе по 3 штуки и платы общего назначения с линейными медными полосами)
- Алмазное сверло (6 или 8 мм) и деревянные дюбели (6 или 8 мм)
- 24 резистора 1/4 Вт (220 Ом)
- Крепежный хомут для механической пробки для бутылок (можно найти в хозяйственном магазине или в Интернете)
- Клей, Провода, термоусадочная гильза, инструменты,.., винты,.., паяльник (18W OK)
Шаг 1. Самый простой способ: закрыть стороны поддона
Попробуйте найти деревянный поддон (я нашел один размером примерно 107 см * 77 см). Между деревянными досками не должно быть зазоров.
Закрепите 4 деревянные доски шурупами, по одной с каждой стороны. Отрежьте 4 доски от лагерных, чтобы получить нужный размер.
Поскольку могут быть (и, вероятно, будут) доски для ног, я рекомендую разрезать их, как показано на рисунке, это освободит доступ к нижним доскам и позволит просверлить отверстия для светодиодов.
Позже, когда положения светодиодов будут отмечены, необходимо будет просверлить в два этапа: сначала отверстие диаметром светодиода (9-10 мм), а затем отверстие большего размера (скажем, 2 см), чтобы получить толщину. соответствует высоте светодиода (толщина деревянной доски может быть больше высоты светодиода)
Рисунок 1: Поддон, вид снизу, с просверленными отверстиями для светодиода.
Шаг 2: разровняйте бутылки для сидра
Мощность нашей печи позволяет нагревать 6 бутылок одновременно на 3 уровнях. При размещении бутылок убедитесь, что они не соприкасаются друг с другом, ни со стенками духового шкафа, ни с колоннами.
Вы можете проявить изобретательность и добавить, например, стеклянные бусины, ракушки или маленькие камешки в бутылки. Также можно вставить под бутылки терракотовую подставку, последняя при нагревании примет форму подставки.
Самое важное в этом процессе - дать бутылкам очень медленно остыть и не открывать печь слишком рано, даже если вы думаете, что температура в печи равна комнатной, вы должны знать, что температура стекла остается выше, чем обжигать одну в течение определенного времени, и любой температурный удар, даже небольшой, может вызвать разбитие стекла. У нас были бутылки, которые ломались через один или два дня после нагрева, и я рекомендую учитывать +/- 30% потерь (предусмотрите от 16 до 18 бутылок, чтобы получить 12 в конце, не говоря уже о тех, которые вам не понравятся. из).
Приведенный здесь температурный профиль следует рассматривать в качестве примера и отражает только характеристики нашей печи. Вам следует выполнить некоторые тесты на своем собственном оборудовании, чтобы найти наиболее подходящую конечную температуру. Если вы нагреете слишком сильно, вы получите полностью плоские бутылки, а если вы будете нагревать слишком меньше, бутылки не будут достаточно плоскими.
Рисунок 1: Обжиговая печь, общий вид.
Изображение 2: Две сплющенные бутылки (сейчас у меня нет изображения бутылок в печи до нагрева)
Рисунок 3: Типичный температурный профиль
Шаг 3: Найдите положение бутылок и светодиодов
В конструкции часов, я объясню позже, есть два светодиода под каждой бутылкой: «внешние» показывают часы (от 0 до 11 и с 12 до 23), а внутренние показывают минуты с шагом 5 (0, 5,… 55). Сначала нужно расположить бутылки вокруг поддона. Для этого вам нужно сначала натянуть струны между центральной кнопкой и 12 кнопками вокруг поддона, если возможно, «диаметрально противоположно». 4 позиции очевидны, и их легко найти: 0, 3, 6 и 9 часов (струны соединяются посередине каждой стороны, два на два). Остальные 4 строчки немного сложнее. Вам нужно сориентировать струны так, чтобы было достаточно места для каждой бутылки (бутылки выровнены по два на два по оси, соответствующей струне) и бутылки, создавая впечатление, чтобы они были распределены равномерно. Этот шаг требует небольшого количества проб и ошибок. Также обратите внимание, что, поскольку они не все одинаковы, вам нужно выбрать, куда должна идти каждая бутылка (это вопрос «художественного чутья»). После того, как место каждой бутылки выбрано, не забудьте прикрепить этикетку с ее номером к каждой бутылке и поставить отметку на поддоне для нижней центральной части каждой бутылки (см. Далее). Эти точки и веревки будут использоваться позже, чтобы найти отверстия для крепежных дюбелей.
Затем необходимо разместить два светодиода относительно каждой бутылки, а затем перенести их на поддон.
Для этого я построил коробку с двумя «мобильными» досками (см. Рисунок), первая перпендикулярна оси бутылки, а вторая, которая привинчивается к первой посередине, позволяя вращение, выровнена по этой оси. На этой второй доске я просверлил два отверстия (диаметром 9 или 10 мм), одно из них в виде петли для пуговиц, чтобы один светодиод можно было перемещать в направлении оси. Я подаю 5 В на каждый светодиод, взятый с платы Arduino или любого другого источника. БУДЬ ОСТОРОЖЕН! Светодиоды высокой яркости могут быть вредными, если вы смотрите на них прямо, поэтому настоятельно рекомендуется наклеить полоску полупрозрачного скотча над светодиодами.
Поместите каждую бутылку в верхнюю часть коробки и перемещайте две доски и "мобильный" светодиод, пока вы не будете удовлетворены эффектом (помните, что вы, возможно, вставили стеклянные бусины в некоторые бутылки и поместили светодиоды под такие бусинки, чтобы усилить световой эффект), Измерьте положение светодиодов относительно центра дна бутылки и ее оси и перенесите эти точки на поддон карандашом. Когда на поддоне будут отмечены все 24 точки, просверлите пилотные отверстия (диаметром 2-3 мм).
Примечание: на последнем рисунке показано расположение первой струны, основанное на фиксированном угле 30 ° между ними, но, как можно видеть, это было несовместимо с пространством, необходимым для бутылок; Мне пришлось заново выровнять струны на бутылках.
Рисунок 1: Рисунок, показывающий светодиоды и их значение
Рисунок 2: Специальная коробка для определения положения светодиодов под каждой бутылкой.
Фото 3: Та же коробка с бутылкой
Рисунок 4: Размещение бутылок (и ниток) на поддоне
Шаг 4: сверление отверстий для светодиодов
Используя пилотные отверстия из предыдущего шага, вы должны теперь просверлить отверстия для светодиодов, но, поскольку толщина доски поддона, вероятно, будет больше, чем высота светодиодов, вам следует уменьшить толщину, просверлив отверстие большего размера (например, с помощью Сверло по дереву 2 см). Просверлите сначала большее отверстие (глубина должна быть такой, чтобы "несверленная" толщина соответствовала высоте светодиода), а затем отверстия для светодиодов. При необходимости отрегулируйте так, чтобы верх лампы был заподлицо с поверхностью дерева.
Отметьте каждое отверстие метками Hx и Mx (H для часов и M для минут, x = 0, 1,..11).
Это проиллюстрировано картинкой.
Шаг 5: сверление отверстий в бутылках для установочных дюбелей
О том, как просверлить отверстия в стекле, можно узнать на этом сайте:
Найдите положение отверстия на оси бутылки, чтобы оно не перекрывало светодиоды, примерно на расстоянии 2–3 см от нижнего центра бутылки должно быть все в порядке. Просверлите отверстие (диаметром 8 мм) с нижней стороны, но на половину толщины (не просверливайте бутылку на всю толщину!). Отметьте ту же точку на верхней стороне поддона и просверлите отверстие того же диаметра (по всей толщине ОК). Положение отверстия измеряется на веревке от дна бутылки, которую вы должны были отметить при их установке.
Закрепите дюбели на каждой бутылке в отверстии с помощью прочного клея (двухкомпонентный) и дайте клею высохнуть.
Как только дюбели будут закреплены, вы можете разместить бутылки на (горизонтальном) поддоне, вставив их дюбели в отверстия. Бутылки нужно ставить головой к хвосту, первую (12h) горлышком наружу.
Снимите бутылки (осторожно вытащив их дюбель из дерева).
Теперь вы можете вставить светодиоды в их отверстия, отрегулировать отверстия, которые слишком малы. Если светодиоды слишком большие, вам нужно будет заблокировать светодиод с помощью привинченной под ним деревянной доски.
Я заметил, что даже сквозь бутылки свет от светодиодов был слишком сильным, и я покрасил их в бледно-желтый цвет.
Рисунок 1: Материал для сверления стекла (примечание: я использовал резиновый коврик под бутылкой)
Шаг 6: Электронная партия
Основная схема управления светодиодами показана на первом рисунке (обратите внимание, что плата RTC не показана на этой схеме, но ее подключение к Arduino легко и хорошо документировано, в большинстве случаев библиотека предоставляется производителем RTC). В окончательной версии макетные платы заменены на печатные платы.
Я решил отделить часовой интерфейс от минутного, чтобы немного упростить программу. Каждый интерфейс основан на двух последовательно соединенных регистрах сдвига 74HC595. Используются все выходы первого регистра (от 0 до 7), тогда как для второго (от 8 до 11) нужны только первые четыре.
Для окончательной системы я создал два отдельных интерфейса, используя тестовые платы 5 см x 10 см (отверстия сгруппированы по 3). Я использовал два типа 74HC595, первый из которых представляет собой собственные 16-контактные микросхемы DIL, которые я установил на двух 16-контактных опорах, припаянных к плате, а второй - две небольшие платы, которые я купил у Sparkfun, с одной поверхностью 74HC595. установлены на каждом (фото №7).
Поскольку я был в спешке, я не мог дождаться изготовления печатных схем, поэтому я сам сделал печатную плату с тестовыми платами, но схемы печатных плат теперь доступны для обоих интерфейсов (см. Изображения печатных плат). Обратите внимание, что у вас есть выбор между одним типом или смесью двух типов, это зависит от вас. Также обратите внимание, что я еще не тестировал изготовленную печатную плату (файлы Fritzing не могут быть загружены сюда, но я могу предоставить их по запросу).
Настройка часов реального времени: при первом подключении Arduino к часам реального времени вам необходимо правильно установить часы. В конце концов, эта регулировка потребуется снова, чтобы компенсировать смещение RTC (2-3 секунды в день).
Эта настройка выполняется в set-up () при условии, что следующая инструкция раскомментирована:
// # define RTC_ADJUST true // Если определить, настройка RTC будет происходить при настройке
Если строка выше закомментирована, set-up () настроит RTC со значениями следующих констант (не забудьте инициализировать эти константы текущими значениями, то есть значениями на момент компиляции и загрузки программа для Arduino)
// Не забудьте настроить константу ниже, если определено RTC_ADJUST !! # define DEF_YEAR 2019 // Год по умолчанию, используемый при начальной настройке RTC
#define DEF_MONTH 11 // Месяц по умолчанию, используемый при начальной настройке RTC
#define DEF_DAY 28 // День по умолчанию, используемый при начальной настройке RTC
#define DEF_HOUR 11 // Час по умолчанию, используемый при начальной настройке RTC
#define DEF_MIN 8 // Минуты по умолчанию, используемые при начальной настройке RTC
#define DEF_SEC 0 // Секунда по умолчанию, используемая при начальной настройке RTC
Также важно: после корректировки не забудьте повторно прокомментировать строку и повторно загрузить программу в Arduino.
// # define RTC_ADJUST true // Если определить, настройка RTC будет происходить в настройке
в противном случае регулировка RTC будет происходить с неверными значениями каждый раз при перезапуске программы (при включении питания или сбросе Arduino). Это случилось во время моих тестов !! (Я забыл прокомментировать эту строку и не понял, что происходит…).
Теперь посмотрим на сам функционал часов.
В основном есть два режима отображения:
-
Режим ЧАСОВ (см. Рисунок №9)
- горит индикатор часа, соответствующий текущему часу
- индикатор минут, соответствующий текущему значению, кратному 5 минутам, горит (этот индикатор горит в течение 5 минут)
- каждый минутный индикатор, кроме того, который включен, мигает в течение 5 секунд (значение индикатора определяется "вторым" значением, считываемым с RTC)
СЛУЧАЙНЫЙ режим (см. Рисунок 10)
все светодиоды включаются и выключаются случайным образом, кроме текущего «часового» и «минутного»
Время, в течение которого горит индикатор минуты, длится 5 минут, но за это время «настоящая» минута увеличивается. Например, когда текущая минута станет 15, «восточный» светодиод будет включен в течение 5 минут, но реальная минута будет 15, 16, 17, 18 и 19 в течение этих 5 минут (мы назовем это «5 минут. цикл )
Программа выполняет три функции:
- Он вычисляет разницу между "реальной" минутой и отображаемой, давая 5 значений: 0, 1, 2, 3 и 4.
- Он вычисляет, как долго должен длиться случайный режим, путем умножения числа, найденного чуть выше, на 6 секунд, что приводит к 5 значениям: 0, 6, 12, 18 и 24 (секунды) для случайного режима и разнице между этими значениями и 30 для режим часов (30, 24, 18, 12 и 6 секунд)
- Он повторяет это межрежимное распределение дважды в течение каждой минуты (общее время в обоих режимах всегда составляет 30 секунд).
Этот «5-минутный цикл» применяется снова и снова каждый раз, когда включается следующий «минутный светодиод» (что происходит каждые 5 минут).
Примечание: реальную минуту можно получить, просто посчитав, как долго длится случайный режим, и разделив эту продолжительность на 6; например, если вы считаете 18 секунд для случайного режима и "25" минут включены, это означает, что реальная минута равна 28 (18/6 = 3 и 25 + 3 = 28)
На этом видео можно увидеть сначала режим часов (текущее время между 10h25 и 10h29), затем случайный режим (длится 6 секунд, что означает, что текущие минуты - 26), а затем снова режим часов. Обратите внимание, что поддон здесь стоит на земле, а «полуночная» бутылка находится справа. Начиная с этой первой выставки, часы теперь представлены вертикально на подставке для штатива (Фото №11).
Также обратите внимание, что на светодиоды текущего часа (10 часов) и минут (25 минут) случайный режим не влияет.
Примечания к схемам печатных плат
Первая печатная плата (родная 74HC595: рисунок 4):
- U1 и U2 - это микросхемы 74HC595.
- Расположение выводов можно найти на рисунке №6 (см. Также вывод, используемый в Arduino, в объявлении переменной программы).
Вторая печатная плата (коммутационные платы Sparkfun 74HC595: рисунок 5)
Расположение выводов можно найти на картинке №7
Я использовал штыревые разъемы, припаянные к обеим интерфейсным платам, поэтому все разъемы проводов являются гнездовыми.
Шаг 7: Закрепление бутылок на поддоне и соединение светодиодов
Для каждой бутылки по очереди:
- Найдите горлышко на поддоне (поставьте бутылку на место, отметьте горлышко и снимите бутылку)
- Закрутите фиксирующую манжету с винтом по центру и по центру горловины (отмечена на поддоне). Я использовал саморезы для гипса. Вы можете просверлить пилотное отверстие в воротнике, если вам это будет проще.
- Вставьте дюбель бутылки в отверстие поддона.
- Закройте воротник на горлышке бутылки, теперь бутылка должна быть закреплена на поддоне.
Вот и все! (не забудьте удалить завязки и этикетки с бутылок на конце).
Для каждого светодиода:
Подключите обе ножки светодиода к проводам + и GND. + Идет от соответствующего выходного контакта на интерфейсной плате, а GND - от одной из промежуточных «распределительных плат GND»; эти платы представляют собой просто тестовые платы (+/- 2 см x 5 см) с линейными полосами, на которые вы припаиваете штекерные разъемы со всеми их выводами, припаянными на одной полосе, причем один вывод подключается к одному доступному контакту GND интерфейса; Если у вас не хватает контактов GND, просто подключите ремешок ко второму и соедините их вместе. Паяные светодиоды рекомендую изолировать термоусадочной гильзой (синий для GND и красный для светодиода, «+»)
Закрепите все платы на поддоне ниже и подключите их вместе проводами с разъемами-розетками (Arduino к интерфейсным платам, 6 сигналов + GND, блоки питания к Arduino и интерфейсным платам и RTC, RTC к Arduino, интерфейсные платы к 24 светодиоды (12 на одной интерфейсной плате). Не забудьте подключить GND ко всем платам.
Закрепите блоки питания на одной вертикальной деревянной доске, подключите кабель переменного тока к первому и подключите последовательно ко второму (будьте осторожны, подключайте кабель переменного тока только после того, как все соединения будут выполнены!).
На видео ниже показаны три первых минуты одного 5-минутного цикла. Текущее время составляет почти 4 часа 55 минут, и видео начинается незадолго до того, как индикатор «50 минут» переключается на индикатор «55 минут» (сначала последние секунды 24-секундного случайного режима, 6 секунд режима часов, а затем переключение на светодиодный индикатор 55 минут). В течение первой минуты (16h55) отображается только режим часов (60 секунд), в течение второй минуты (16h56) каждый шаг в 30 секунд начинается с 6-секундного случайного режима, а затем следует 24-секундный режим часов в течение третьей минуты. (16h57), 12 секунд случайным образом и 18 секунд часы (дважды)
Шаг 8: Замечания, расширения и улучшения
Примечания:
- Когда программа запускается, она ждет до следующей "полной минуты" (т.е. RTC-секунд = 0), прежде чем начнется отображение светодиодов.
-
Некоторые параметры в программе позволяют
- Выберите другую ориентацию для светодиода «полночь».
- Распределите два режима на одну полную минуту вместо двух 30 секунд
- Опора для поддонов и бутылки из-под сидра не являются абсолютно необходимыми, вы можете изобрести другие типы подставок для дисплеев, например, ящик для сахара, как показано на рисунке.
Расширения:
- Я адаптировал программу и сделал "управляемую таблицей" версию, позволяющую разделять тактовый / случайный режимы на основе таблицы синхронизации, а не на основе заранее определенного правила.
- Таблица, зависящая от календаря (дата, час начала, час остановки), позволяет контролировать время начала и окончания часов, так что их можно оставить включенными, когда выставка закрывается вечером (они будут автоматически отключены). останавливает отображение и запускается утром без каких-либо действий вручную)
- В программе есть версия, в которой отображение запускается при обнаружении присутствия посетителя и останавливается через 5 минут после его отсутствия.
Улучшения:
- RTC: более стабильная версия может заменить 1307, используемый до сих пор
- Можно добавить ручную настройку RTC (например, добавив два поворотных энкодера, таких как https://wiki.dfrobot.com/Rotary_Switch_Module_V1_…, и кнопку для подтверждения новых настроек часов и минут)
Рекомендуемые:
Цифровые часы, но без микроконтроллера [Hardcore Electronics]: 13 шагов (с изображениями)
Цифровые часы, но без микроконтроллера [Hardcore Electronics]: довольно легко построить схемы с микроконтроллером, но мы полностью забываем тонны работы, которую микроконтроллер должен был выполнить для выполнения простой задачи (даже для мигания светодиода). Итак, насколько сложно сделать цифровые часы полным
Цифровые часы Arduino, синхронизируемые линией электропередачи 60 Гц: 8 шагов (с изображениями)
Цифровые часы Arduino, синхронизируемые линией электропередачи 60 Гц: эти цифровые часы на базе Arduino синхронизируются линией электропередачи 60 Гц. Он имеет простой и недорогой анодный 4-значный 7-сегментный дисплей, который показывает часы и минуты. Он использует перекрестный детектор для обнаружения входящей синусоидальной волны 60 Гц c
«Простые» часы Digilog (цифровые аналоговые) с использованием переработанных материалов !: 8 шагов (с изображениями)
«Простые» часы Digilog (цифровые аналоговые) с использованием переработанного материала!: Всем привет! Итак, в этой инструкции я расскажу, как сделать эти цифровые + аналоговые часы, используя дешевый материал! Если вы думаете, что этот проект "отстой", вы можете уйти и не читать эту инструкцию. Мир! Мне очень жаль, если
Цифровые часы с морфингом: 14 шагов (с изображениями)
Morphing Digital Clock: короткое видео об этом проекте. С тех пор я реализовал способ установки часового пояса. Благодаря работе сообщества Arduino и ESP8266, эти классные часы на удивление легко построить! Всего два основных компонента: дисплей (очевидно) и Wi-Fi
Цифровые часы "Дали" в стиле 80-х: 7 шагов (с изображениями)
Цифровые часы "Дали" в стиле 80-х: в этом руководстве показано, как создать цифровые часы "дали" в стиле 80-х. Часы с плавящимися цифрами. Впервые я столкнулся с часами этого стиля на Apple Macintosh еще в 80-х, когда был ребенком. В этом руководстве показана моя попытка воссоздать