Как да си направим пулсиращ Arduino LED куб, който изглежда да дойде от бъдещето

Как да си направим пулсиращ Arduino LED куб, който изглежда да дойде от бъдещето

Ако сте се забъркали с някои начинаещи проекти на Arduino, но търсите нещо малко постоянно и на съвсем друго ниво на страхотно, тогава скромният 4 x 4 x 4 LED куб е естествен избор. Изграждането е далеч по -лесно, отколкото си мислите, а с помощта на мултиплексиране можем да контролираме всички светодиоди директно само от една платка Arduino Uno. Това е чудесна практика за запояване и общата цена на компонентите не трябва да надвишава около 40 долара.





Днес ще опиша подробно конструктивната страна на нещата и ще предложа софтуер, който да работи върху него, който едновременно изглежда впечатляващ и ще ви научи на основите.





Windows 10 контролер за xbox one не работи

Ще имаш нужда

  • АнArduino. Предоставеният код предполага Arduino Uno, но може да се адаптира и към по -голям модел.
  • 64 светодиода - точният избор зависи от вас, но аз използвах тези супер ярки 3 мм сини светодиоди ( 3.2v 30ma ) @ 2,64 паунда за 50.
  • 16 резистори на подходящата стойност за вашите светодиоди. За светодиодите по -горе, 99 пенса купи 100 от тях. Използвайте ledcalc.com - въведете 5v за захранващото напрежение, напрежението на светодиодите (в моя случай 3.2) и тока в милиампери (3.2). Желаният от вас резистор ще бъде показан в полето с етикет Най -близкият резистор с по -висок рейтинг , след това просто потърсете тази стойност в eBay.
  • Някои занаятчийска тел за укрепване на основната структура и за декорация - използвах 0,8 мм дебелина.
  • ДА СЕ прототипна дъска от някакъв вид, към който можете да запоявате всичките си битове. Използвах такъв, който нямаше пълни писти по него, тъй като нямам резачка, но използвайте всичко, което ви подхожда. Прототипиращият щит на Arduino е малко твърде малък, освен ако наистина не стиснете светодиодите си заедно.
  • Случайно компонентна жица - някои нишки на мрежовия кабел и някои от прототипиращите проводници от комплект ще работят добре.
  • Клипове от крокодил или помощните ръце са полезни за задържане на битове на място.
  • Поялник и спойка.
  • Малко скрап дървесина.
  • Свредло, със същия размер бит като вашите светодиоди.

Забележка: 3D чертежите в този урок бяха направени за минути с помощта TinkerCAD . Следвах съществуваща компилация, подробно описана от Instructables от потребителяforte1994, които също бихте могли да прочетете, преди да опитате това.





Не забравяйте да прочетете всички тези инструкции първо преди да опитате това за себе си.

Принципът на този дизайн

Преди да започнете строителството, важно е да имате пълен преглед на това как ще работи това нещо, за да можете да импровизирате и да идентифицирате грешки, докато вървите. Някои LED кубчета използват един изходен щифт за всеки отделен светодиод - но в куб 4x4x4 това ще се нуждае 64 пина - което със сигурност нямаме на Arduino Uno. Едно решение би било да се използват регистрите за смяна, но това е ненужно сложно.



За да контролираме всички тези светодиоди само в 20 пина, ще използваме техника, наречена мултиплексиране. Чрез разделянето на куба на 4 отделни слоя се нуждаем само от контролни щифтове за 16 светодиода - така че за да светнем конкретен светодиод, трябва да активираме както слоя, така и контролния щифт, което ни дава общо изискване от 16+4 пина. Всеки слой има общ катод - отрицателната част на веригата - така че всички отрицателни крака са свързани заедно и свързани към един щифт за този слой.

На анода (положителен) страна, всеки светодиод ще бъде свързан със съответния светодиод в слоя над и под него. По същество имаме 16 колони с положителни крака и 4 слоя с отрицателни. Ето някои 3D изгледи на връзките, които да ви помогнат да разберете:





Строителство

Тъй като няма да използваме изцяло метална конструкция, към която да спояваме, искаме всички крака на светодиодите да се припокриват с около една четвърт и да придадат твърдост на структурата. Сгънете катода на вашите светодиоди - страната с плоския прорез в главата и по -късия крак - отгоре, както е показано на диаграмата. (Няма значение дали го огъвате наляво или надясно, стига да сте последователни и никога да не докосва анода)

Първата критична част от този проект е изработката на дървен джиг. Това ще задържа слой от светодиоди, докато запоявате краката заедно, така че той трябва да бъде точен и да не е твърде хлабав. Използвайки свредлото със същия размер като вашите светодиоди, измерете и след това пробийте 4x4 матрица от на еднакво разстояние дупки. Имайте предвид, че искате около една четвърт от крака да се припокрива със съседа си и използвайте действителна линийка. Проверете всеки отвор, за да се уверите, че светодиодът може да приляга плътно, но не толкова плътно, че няма да можете да го извадите отново или ще имате проблеми, когато се опитвате да премахнете напълно запоен слой.





Запоявайте катодите на 4 реда светодиоди. Внимавайте да не изгорите светодиодите - искате добра гореща ютия и да влизате и излизате. Ето завършени първите ми четири реда.

Сега, за да подсилите твърдостта на слоя, изрежете и запойте две прави късчета занаятчийска тел към двата края, като се уверите, че те се свързват с всеки ред. Това е първият ви завършен слой. Оставете всички излишни крака да стърчат отстрани засега.

Сега би било чудесно време за тестване - просто заредете стандартното приложение за мигане на Arduino и с включен резистор поставете земята върху рамката на слоя и натиснете положителния проводник към всеки светодиод на свой ред.

Дано всички светнат. Ако не, уверете се, че не сте пропуснали спойка някъде и ако е необходимо, сменете светодиода.

Отстранете този слой от джига и повторете процеса Още 3 пъти .

Не се притеснявайте, ако запояването ви не е перфектно - стига да не се скъса и връзката да е стабилна, това няма да повлияе на крайния продукт. Признавам, моето запояване беше доста безнадеждно, моят джиг беше изключен и всичко приличаше на наклонената кула в Пиза. Все пак се гордея с готовия куб и когато светодиодите светят, така или иначе няма да гледате спойките!

Присъединяване към слоеве

След като имате 4 завършени слоя, ще искате да свържете всички вертикални крака заедно. Открих, че това е най -трудната част от изграждането и за да подпомогна процеса изрязах щранг от картата.

Това поддържаше слоевете на подходящата височина, но много крака все още не се подравняваха перфектно - за това използвах няколко крокодилски щипки, за да ги задържа на място.

Първа глупава грешка, която трябва да се избягва

Едва след като завърших пълен слой, осъзнах, че щрангът ми за карта е заседнал на място, така че трябваше да го изрежа! Не правете същата грешка, която направих аз - направете щранга по -дълъг отстрани и съединете парчетата карта извън куба, така че когато завършите слоя, можете да деконструирате щранга и да издърпате картата.

Втора глупава грешка, която трябва да се избягва

Очевидно не запоявайте вертикалния крак към катодната рамка. Вертикалните крака трябва да се свързват само с други вертикални крака и нищо друго.

Отново тествайте, след като всеки слой е прикрепен. Тествайте всички слоеве, всъщност само докосвайки положителния проводник до върха на най -горния слой, като по този начин гарантирате, че имате добър контакт, преминаващ през всички слоеве.

Когато всичките 4 слоя бяха споени заедно, се заех да почистя малко - оставих по един единствен крак, удължен от всеки слой по някакъв начин на стъпало - това щеше да бъде пуснато на дъската по -късно. Други чужди парчета метална рамка и крака бяха отрязани. Очевидно не режете нито един от вертикалните крака - трябва да ги поставим в нашата дъска за прототипиране.

Закрепване към дъската

Помните ли, когато казах, че фиксирането на всеки слой към себе си е най -трудната част? Излъгах. Опитът да се поставят 16 LED крака в малки дупки на прототипна дъска всъщност е по -труден. Най -лесният начин, който открих, беше да пробивам през 4 наведнъж, да ги закрепя отдолу с крокодилски щипки, след което да премина към следващия ред от 4. Използвайте маркера, за да маркирате разстоянието предварително, ако помага.

В ретроспекция, всъщност щях първо да поставя резисторите в протоборда. Така е, първо запоих всички крака на куба в дъската, след което се опитах деликатно да притисна резистори между всеки от тях. Учете се от моята грешка и поставете първо своите резистори.

Опитах се да ги разпределя еднакво по стъпка, за да мога да използвам цялата страна на куба за всички последни връзки с Arduino. Ето схемата, с която отидох:

За четирите отрицателни слоя пуснах по един проводник от всеки слой, след което просто ги издърпах отстрани, по следния начин:

Накрая добавих някои кабели за щепсели, които след това мога да поставя в съответните щифтове на Arduino. Използвайте най -дългия вид, който имате. Забележка Побърках поръчката на места поради лошо планиране. Всеки ред светодиоди обаче беше кодиран с цвят.

Това е. Готово!

Програмиране на вашия куб

Знам, че нямате търпение да задействате това нещо, така че включете 4 -те отрицателни слоя Аналогов I/O пристанища A2 (долен слой) през A5 (горен слой) (те също могат да действат като цифрови входове/изходи) . След това включете 16 -те LED контролни щифта, започвайки с +1 най -вдясно да се цифрови входове / изходи порт 0 , с +15 и +16 преминаване в аналог А0 и А1 . (Не използвайте AREF и GND)

Изтеглете демонстрационни модели и код от инструктиран потребител forte1994 . Той също така предоставя а полезен онлайн инструмент за проектиране на байтовите модели, за да персонализирате собствената си последователност. Ето видео на този код в действие на моя куб (Настроих скоростта на 5, вместо по подразбиране 20) .

memory_management bsod windows 10

Това не е единственият начин да програмирате куба си, разбира се, така че позволете ми да отделя няколко минути, за да ви науча на основите на създаването на собствени модели програмно , вместо да възпроизвеждате предварително зададени модели, както прави горната демонстрация.

Когато се опитвате да програмирате куба си, трябва да знаете няколко неща:

  1. За да се обърнете към един светодиод, използвате a самолет (слой) номер 0–3 и номер на LED щифт 0–15. Завъртете равнината на нисък изход (тъй като това е отрицателният крак) и номера на LED извода HIGH (положителния крак), за да активирате светодиода.
  2. Преди да активирате един светодиод, уверете се, че всички други равнини са изключени - това означава да ги настроите на HIGH изход. Неспазването на това ще доведе до светене на колона от светодиоди, а не на един светодиод.

Имайки това предвид, направих две много прости програмни последователности, които да разгледате - изтеглете кода от тук. Първият просто свети всеки светодиод един по един, последователно. За това използваме два цикъла, като правим повторение на всеки слой и всеки контролен щифт.

Вторият е случаен цикъл (ще трябва да коментирате първия и да активирате това в главния цикъл, за да го тествате). Той просто избира произволен слой и произволен контролен щифт, като ги мига и изключва.

Резюме

Не се плашете от тази конструкция - сериозно ми липсват умения за запояване и се справих добре (Аз мисля?) . Общото време за изграждане беше около час на ден в продължение на една седмица. Следващия път ще се опитам да ви науча на по -амбициозно програмиране за куба, така че се надявам да се присъедините към мен в изграждането на собствен куб тази седмица и зареждането на нов код през следващата седмица - и ако направите своя собствена страхотни приложения или последователности, моля, качете ги в Pastebin и ни уведомете в коментарите!

Дял Дял Туит електронна поща 3 начина да проверите дали имейл е реален или фалшив

Ако сте получили имейл, който изглежда малко съмнителен, винаги е най -добре да проверите неговата автентичност. Ето три начина да разберете дали имейл е истински.

Прочетете Напред
Свързани теми
  • Направи си сам
  • Arduino
За автора Джеймс Брус(707 статии са публикувани)

Джеймс има бакалавърска степен по изкуствен интелект и е сертифициран по CompTIA A+ и Network+. Когато не е зает като редактор на хардуерни рецензии, той се радва на LEGO, VR и настолни игри. Преди да се присъедини към MakeUseOf, той беше техник по осветление, учител по английски език и инженер в центъра за данни.

Още от Джеймс Брус

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате