Світлодіодний куб 5х5х5
У цій статті описана збірка світлодіодного куба 5 х 5 х 5, який управляється за допомогою Arduino, і вся конструкція розташована на друкованій платі.
Відео роботи світлодіодного куба:
Розробка куба та матеріали
Я бачив багато проектів світлодіодних кубів, і основною їх проблемою є управління великою кількістю світлодіодів за допомогою невеликої кількості контактів. У багатьох проектах для цієї мети використовувалися зсувні регістри. Основною їх проблемою є час, що потрібно для зсуву всіх бітів, і проблеми, які виникають через це. Мені це не сподобалося, і я вирішив намалювати свою схему.
Я використовую 5 дешифраторів по 3-8 ліній на кожен (також вони відомі як демультиплексори), щоб перетворювати двійковий сигнал з 5-бітного паралельного входу в 25-бітний паралельний вихід, який управляє світлодіодами. Особливістю цих дешифраторів є те, що високий рівень сигналу може бути одночасно тільки на одній з 25 ліній. Якщо на п’яти контактах Arduino 01010 (10 у двійковій системі), дешифратори приймають цей сигнал і виводять його на свій 10 контакт. Всього їх 25 з номерами 0-24.
В схемі також використовуються NPN транзистори, на катодах кожної площини куба.
Куб зібраний на спеціальній друкованій платі, виготовленій на заводі, що дозволило уникнути більшої кількості проводів. Всього проект обійшовся в $100.
Попередньо переконайтеся, що ваші дешифратори дають високий рівень сигналу на один з виводів, а на всі інші низький, оскільки є мікросхеми, які дають низький рівень сигналу на один вивід, а високий на всі інші.
Переглянути попередні нариси схеми та таблицю
Збірка куба
Перший крок - це виготовлення куба зі світлодіодів. Я купив дешеві світлодіоди з дуже короткими виводами, і мені довелося використовувати додатковий провід.
Я просверлив у дошці отвори 5мм з відстанню між ними 2.5 см. Світлодіоди вставляються в ці отвори та з'єднуються разом. Таким чином, робиться 5 шарів.
Коли всі 5 шарів готові, їх потрібно з'єднати. Відстань між шарами повинна бути 2.5 см, щоб куб не був сплющеним або розтягнутим. Від катода кожного шару проведіть вниз куба по проводу, який потім буде впаяний у плату. Всього такий куб налічує близько 300 точок пайки.
Макет схеми
Для підключення куба я використав кабель CAT5, оскільки він дешевий і доступний. Я зібрав схему на макетній платі. Виберіть кут куба, який буде вважатися точкою початку відліку, і підключіть до його аноду вивід 0 дешифратора. Наступний анод вважається найближчим анодом по осі X, а коли вони закінчаться, використовуйте аноди по осі Y. Я використовував резистори по 150 Ом між дешифратором і стовпцем.
Для підключення катодів використовується NPN транзистор. Використовуйте резистор між базою транзистора та Arduino. Підключіть 1 вивід транзистора до GND, 2 до Arduino, 3 до катоду.
Програма для Arduino
Після того, як куб підключений до прототипу схеми, необхідно завантажити програму.
Код розбитий на 4 основні частини:
LEDs.h:
Містить номери всіх контактів і масивів.
DisplayBasics.pde:
Містить кілька основних «форм» у кубі, для використання в моделі.
Patterns.pde:
Містить зразки програм відображення, які можна побачити на відео на початку статті.
LEDCubePCB.pde:
Це остаточний варіант мого коду. Номер виконуваної програми змінюється в залежності від положення потенціометра.
Розширення функціональності
Для того, щоб світлодіодний куб був ще кращим, необхідно змінювати програму відображення, не перепрошиваючи мікроконтролер. Для переключення програм я вирішив використовувати перемички, а для зміни тривалості програми - потенціометр. Але я забув, що при використанні перемичок необхідно підтягуюче напруження. Його можна отримати шляхом використання підтягуючих резисторів.
Друкована плата
Я розробив цю схему і друковану плату в Eagle. До статті додаються вихідні файли у форматі Eagle, які можна редагувати. При проектуванні друкованої плати зверніть увагу на розмір отворів, особливу увагу приділіть проводам.
Плата була виготовлена на заводі на замовлення. Якщо ви не можете виготовити плату на заводі, ви можете зробити її за допомогою ЛУТа або фоторезиста.
Виробництво та збірка друкованої плати
Щоб відправити проект на виробництво, необхідні файл сверловки та Gerber файли. Я не вмію їх робити, але слідуючи інструкціям в інтернеті, зміг зробити і їх. Ці файли додаються до статті. Зверніть увагу, що перемички тепер підключені до GND і працюють за рахунок внутрішніх підтягуючих резисторів Arduino.
Почніть збірку з резисторів і панелей, а сам куб паяйте в останню чергу. Усі компоненти використані в звичайному вивідному корпусі, тому монтаж досить простий. Паяйте плату чистим жалом, дотримуйтесь температурного режиму і не перегрівайте компоненти. Я використав роз'єми для всіх мікросхем.
Готово!
Після збірки плати завантажте програму в Arduino і перевірте її. Якщо схема працює неправильно, перепровірте правильність підключення та збору куба.
В архіві нижче додаються файли Eagle, Gerber і вихідні файли ПЗ
Список радіоелементів
Позначення | Тип | Номінал | Кількість | Примітка |
---|---|---|---|---|
U$1 | Плата Arduino |
Arduino Duemilanove
|
1 | |
V1-V5 | Кодер, декодер |
CD74HC238
|
5 | |
T1-T5 | Біполярний транзистор |
2N4401
|
5 | |
Світлодіод | Синій | 125 | 5 мм | |
R1-R25, R27-R31 | Резистор |
150 Ом
|
30 | |
R26 | Потенціометр | 10 кОм | 1 | |
SV1, RESET | Джампер | 6 | ||
SV2 | Роз'єм | 6 виводів | 1 | |
JP1-JP25 | Одиничний роз'єм | 25 |
Прикреплені файли:
- LEDCube_5x5x5.rar (56 Кб)