Оглавление:

Часы Фибоначчи: 10 шагов (с изображениями)
Часы Фибоначчи: 10 шагов (с изображениями)

Видео: Часы Фибоначчи: 10 шагов (с изображениями)

Видео: Часы Фибоначчи: 10 шагов (с изображениями)
Видео: Мастер-класс Фибоначчи 2024, Ноябрь
Anonim
Image
Image
Как узнать время?
Как узнать время?

ОБНОВЛЕНИЕ: Этот проект был успешно профинансирован на Kickstartera и теперь доступен для продажи на https://store.basbrun.com Спасибо всем, кто поддерживал мою кампанию!

Я представляю вам Часы Фибоначчи, часы для стильных ботаников. Красивые и в то же время забавные часы используют знаменитую последовательность Фибоначчи для отображения времени совершенно по-новому.

Шаг 1. Как узнать время?

Последовательность Фибоначчи - это последовательность чисел, созданная итальянским математиком Фибоначчи в 13 веке. Это последовательность, начинающаяся с 1 и 1, где каждое последующее число является суммой двух предыдущих. Для часов я использовал первые 5 терминов: 1, 1, 2, 3 и 5.

Экран часов состоит из пяти квадратов, длина сторон которых соответствует первым пяти числам Фибоначчи: 1, 1, 2, 3 и 5. Часы отображаются красным цветом, а минуты - зеленым. Когда квадрат используется для отображения часов и минут, он становится синим. Белые квадраты игнорируются. Чтобы определить время на часах Фибоначчи, вам нужно провести некоторую математику. Чтобы узнать час, просто сложите соответствующие значения красных и синих квадратов. Чтобы прочитать минуты, проделайте то же самое с зеленым и синим квадратами. Минуты отображаются с шагом в 5 минут (от 0 до 12), поэтому вам нужно умножить результат на 5, чтобы получить фактическое число.

Часто существует несколько способов отображения одного времени. Чтобы усложнить задачу, комбинации выбираются случайным образом из всех возможных способов отображения числа. Есть, например, 16 различных способов отображения 6:30, и вы никогда не знаете, какой из них будут использовать часы!

Шаг 2: Схема

Схема
Схема
Схема
Схема

Я построил часы Фибоначчи с помощью микроконтроллера Atmega328P и Arduino. Вы можете купить плату Arduino и плату переключения часов реального времени DS1307 и построить специальный экран для своей схемы, но я предпочел построить свою собственную печатную плату. Это позволяет мне сохранять небольшой размер и низкую цену.

Шаг 3: кнопки

Кнопки
Кнопки

Три кнопки, прикрепленные к контактам №3, №4 и №6 Arduino, используются вместе для изменения времени. Кнопка на контакте № 3 может использоваться отдельно для изменения цветовой палитры светодиодов. К выводу № 5 прикреплена дополнительная кнопка для переключения между различными режимами часов. Два режима - это режимы лампы, а режим по умолчанию - часы. Все кнопки подключены к контактам Arduino с помощью понижающего резистора 10 кОм параллельно.

Шаг 4: Часы реального времени

Часы реального времени
Часы реального времени

Микросхема часов реального времени DS1307 подключена к аналоговым контактам 4 и 5 Arduino с помощью двух подтягивающих резисторов 22 кОм. Вывод часов 5 (SDA) подключен к выводу 27 Atmega328P (Arduino A4), а вывод часов 6 (SCL) подключен к выводу 29 Atmega329P (Arduino A5). Чтобы отсчитывать время в отключенном состоянии, микросхеме DS1307 требуется батарея 3 В, подключенная к контактам 3 и 4 микросхемы. Наконец, часы реального времени управляются кристаллом 32 кГц, подключенным к контактам 1 и 2. На контакт 8 подается напряжение 5 В.

Шаг 5: светодиодная полоса пикселей

Светодиодная полоса пикселей
Светодиодная полоса пикселей

Я использую светодиодные пиксели, созданные на основе драйверов WS2811. Эти микроконтроллеры позволяют мне устанавливать цвет каждого отдельного светодиода с помощью одного выхода на микроконтроллере Arduino. Вывод Arduino, используемый для управления светодиодами в этом проекте, - это вывод №8 (контакт №14 Atmega328P).

Шаг 6: микроконтроллер

Микроконтроллер
Микроконтроллер

Вы найдете все подробности о том, как подключить Atmega328P для создания клона Arduino, в моем посте «Создайте клон Arduino». Я добавил в этот проект новую функцию - порт FTDI для программирования микроконтроллера Arduino непосредственно на этой схеме. Вы подключаете контакт один к контакту сброса Arduino через конденсатор емкостью 0,1 мкФ, чтобы синхронизировать загрузчик с последовательностью загрузки чипа.

Контакт 2 (RX) порта FTDI подключается к контакту 3 Atmega328P (Arduino 1-TX), а контакт 3 (TX) разъема FTDI подключается к контакту 2 Atmega328P (Arduino 0 - RX). Наконец, вывод 4 FTDI идет на 5 В, а вывод 5 и 6 - на землю.

Шаг 7: Корпус

Image
Image
Вложение
Вложение

В видео представлены все этапы строительства корпуса часов Фибоначчи. Идея состоит в том, чтобы создать в часах 5 квадратных отсеков глубиной два дюйма, соответствующих размеру пяти первых членов последовательности Фибоначчи, 1, 1, 2, 3 и 5. Светодиоды распределены по всем квадратам и соединены между собой. заднюю часть часов к печатной плате.

Ограждение построено из березовой фанеры. Рама имеет толщину 1/4 дюйма, а задняя панель - 1/8 дюйма. Сепараторы имеют толщину 1/16 дюйма и могут быть изготовлены из любого непрозрачного материала. Размеры часов 8 ″ x5 ″ x4 ″. Передняя часть часов представляет собой кусок полупрозрачного оргстекла толщиной 1/8 дюйма. Разделители помечаются пером Sharpie.

Покрытие для дерева представляет собой лак на водной основе, который наносится после хорошей шлифовки наждачной бумагой 220.

Шаг 8: сделайте из него лампу

Image
Image

Часы Фибоначчи тоже можно превратить в светящуюся лампу! Опубликованный код уже поддерживает два режима лампы. Просто нажмите кнопку режима, чтобы переключиться между тремя режимами. Код открыт для взлома, не стесняйтесь реализовывать свои собственные режимы!

Шаг 9: Готово

Вы сделали
Вы сделали

Вы сделали! Часы Фибоначчи - фантастическое средство для начала дискуссий … принесите их на следующую встречу NERD или на рождественское семейное воссоединение!

Спасибо за чтение / просмотр!

Шаг 10: Код

Вы можете найти исходный код в моей учетной записи github:

github.com/pchretien/fibo

Рекомендуемые: