Съдържание:
- Стъпка 1: Инструменти и части
- Стъпка 2: Хакване на Breadout Board
- Стъпка 3: Запояване на 0805 LED
- Стъпка 4: Запояване на N-Channel MOSFET
- Стъпка 5: Окабеляване на сензорния масив
- Стъпка 6: Попълване на сензорния масив
- Стъпка 7: Получаване на данни
- Стъпка 8: Laser Tracer (демонстрация)
- Стъпка 9: Гледане на Poopeyes (демонстрация)
Видео: Стационарен радар (LIDAR) Масив с Arduino: 10 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Когато изграждах двуног робот, винаги мислех да имам някаква готина притурка, която да проследи противника ми и да прави атакуващи движения с него. Тук вече съществуват куп проекти за радар/лидар. За моята цел обаче има някои ограничения:
- Модулите на сензорите за ултразвукови вълни са доста големи. Всеки робот би изглеждал като WALL-E.
- Настоящите радарни проекти включват сензор (ултразвукови вълни, IR, лазер,…) и серво мотор в средата. Сканирането на околната среда изисква серво да се движи отстрани. Преместването на неща напред и назад създава промени в инерцията, което е лошо за балансиране и ходене с двуноги.
- Честотата на сканиране е ограничена от скоростта на серво. Вероятно могат да се постигнат само няколко херца. Дори ако честотата на сканиране може да бъде увеличена от някакво супер-серво, това би довело до силни вибрации.
- [Централният сервомотор - сензор] също ограничава позицията за монтаж и дизайна. Трудно е да се монтира такова нещо, освен като глава. Което прави моят двуног всеки път да изглежда като трепереща глава WALL-E. Не е готино!
- Подреждането на [серво-сензор] може да бъде изградено и като стил [сензор за двигател]. Сензорът (или сензорите) се върти непрекъснато по оста на двигателя. Това може да елиминира импулсите и проблемите с ниската честота на сканиране, но не и ограничението за дизайна на торса. Трудностите при окабеляването също биха се увеличили значително.
След търсене този малък сензор VL53L0X от ST се пръсна в очите ми. Чрез заявяване на "Най-малкия в света" сензор за обхват на полета във времето, размерът е само 4,4 x 2,4 x 1,0 mm. С участието
- На чип IR лазерен излъчвател и детектор
- Обхват до 2 м (1,2 м в бърз режим)
- Програмируем I2C адрес
- Изходен щифт за прекъсване на GPIO
- Безопасен за очите
Всички тези специални функции, комбинирани, ми позволиха да преодолея горните проблеми, ако масив от сензори VL53L0X може да работи. Първоначално мислех, че този радар ще се нарича твърдотелен радар, но разбрах, че този термин се използва за нещо друго. Следователно думата „Стационарен“в заглавието означава, че в тази радарна джаджа няма движещи се части. Също така, докато LIDAR (откриване на светлина и обхващане) е технически правилният термин за този чип, RADAR е посочен тук като по -общ термин.
Причината, поради която програмируемият I2C адрес и изходният пин на GPIO са критични за този проект, е обяснена по -късно.
Стъпка 1: Инструменти и части
Инструменти
В този проект са необходими следните инструменти:
- Поялник
- Запояване на помощни ръце
- Инструмент за кримпване Dupont
- 1,5 мм шестоъгълен драйвер
- Инструмент за отстраняване на жични покрития
- Резачка за тел
- Пистолет за горещо лепило
- Пинсети
- Лупа (физическа или приложения във вашия телефон)
- Клещи с плосък нос
Части
В този проект са използвани следните части:
- 10x VL53L0X GY-530 пробивни дъски
- Arduino (Uno, Nano, Mega, Zero, Mini и др.)
- План и няколко кабела за дъски
- AWG #26 проводници с различни цветове
- AWG #30 едножилен проводник
- 5x мъжки конектори Dupont
- 5x единични щифтове Dupont корпуси
- 10x 3D отпечатани държачи за пробивни дъски
- 1x 3D отпечатана кръгла рамка
- 10x винтове с плоска глава M2x10
- 10x 0804 LED (синьо се препоръчва)
- 10x SOT-23 AO3400 N-Channel MOSFET
- Малък кондензатор (10 ~ 100uF)
Пробивна дъска
Пробивната платка VL53L0X, която използвах, е GY-530. Предлагат се и версия Adafruit и Pololu. Ако е възможно, препоръчвам да използвате Adafruit или продукта на Pololu, защото те правят страхотни продукти, страхотни уроци и страхотни софтуерни библиотеки. Тествах на библиотеката VL53L0X на Adafruit и използвах модифицирана версия на библиотеката VL53L0X на Pololu.
Съединители Dupont
Съединителите dupont се използват за макет. Можете да използвате други видове връзка, които имате под ръка.
Винтове и 3D отпечатани части
Винтовете, държачите и кръглата рамка M2 се използват за поставяне на сензорите в кръгова подредба. Можете да използвате други методи, като например да използвате картонени дъски, моделирани дървета, глина или дори да ги залепите горещо върху кутия.
Стъпка 2: Хакване на Breadout Board
Конус на откриване
Използвах един модул, за да нарисувам конуса на откриване. Използване на предимно 3D принтиран робот като цел. Разстоянието се показва на светодиодния дисплей и се измерва приблизително. Измерените данни се записват във файл на Microsoft Excel и се използва функцията за настройка на кривата. Най -подходяща е естествената крива на логаритъма, с ефективно разстояние от 3 см до приблизително 100 см.
На 60 см кривата на откриване за един сензор е около 22 см. С 20 см широка цел, кръговото отделяне от 10 ~ 15 градуса за радарната решетка трябва да даде приемлива резолюция на сканиране.
I2C адрес
Докато адресът на устройството VL53L0X I2C е програмируем, е необходим пълен контрол на пина XSHUT от микроконтролера. Последователността за това е:
- Захранването се прилага към AVDD.
- Всички чипове VL53L0X се привеждат в състояние Hw Standby (нулиране), като привеждат ВСИЧКИ техните XSHUT щифтове към LOW.
- Всеки чип се извежда от състояние на нулиране един по един. I2C адресът по подразбиране след зареждане е 0x52.
- Адресът на чипа се променя на нов адрес чрез команда I2C. Например 0x52 е променено на 0x53.
- Повторете стъпки 3 и 4 за всички чипове.
Теоретично максимум 126 устройства могат да бъдат задвижвани в една и съща шина за 7-битовия диапазон на адресите. На практика обаче ограничаването на капацитета на шината и потъващия ток на микроконтролера може/трябва да ограничи максималния брой устройства.
Новият I2C адрес не се съхранява в чипа VL53L0X срещу изключване или нулиране. Следователно този процес трябва да се извършва веднъж при всяко включване. Това означава, че за всяка единица в радарната решетка е необходим един скъпоценен щифт. Това е твърде недружелюбно към окабеляването и консумацията на щифтове, за радарния колан с 10+ или 20+ единици.
Както бе споменато в STEP1, късметът е, че на чипа VL53L0X има щифт GPIO1, първоначално използван за прекъсване, който може да свърши работа.
GPIO-XSHUTN верижка маргаритка
Изходът GPIO е в състояние на висок импеданс при зареждане и отворен източник на ниско, докато е активен. ПИН-овете GPIO и XSHUT се изтеглят високо към AVDD на пробивната платка GY-530, както е препоръчано в листа с данни. За да поставим надеждно всички чипове VL53L0X в състояние на готовност на Hw (задвижване на XSHUT ниско), се нуждаем от логически НЕ порта (инвертор) за всеки пин XSHUT. След това свързваме GPIO изхода на един чип (N-ти чип), към XSHUTN (XSHUT-NOT) на чипа надолу по веригата (чип N+1).
При включване всички GPIO щифтове (неактивни) се изтеглят нагоре, всички следващи XSHUT щифтове се понижават от портата NOT (с изключение на самия юмручен чип, където неговият пин XSHUTN е свързан към микроконтролера). Промяната на I2C адреса и освобождаването на XSHUT на чипа надолу по веригата се извършва в софтуер, един по един.
Ако използвате различни пробивни платки, трябва да се уверите дали издърпващите резистори са на място или не, и да направите подходящи настройки.
Добавяне на LED
В следващата стъпка, малък 0805 SMD LED ще бъде добавен към пробивната платка, свързана от подложката XSHUT към GND терминала на съседен кондензатор. Въпреки че самият светодиод не влияе върху работата на модула, той ни дава добра визуална индикация на логическото ниво XSHUT.
Закачването на светодиода последователно с издърпващия резистор (10k в моя случай) на щифта XSHUT ще доведе до спад на напрежението. Вместо високо логическо ниво от 3.3v, спадът на напрежението напред за червен светодиод 0805 се измерва 1.6v. Въпреки че това напрежение е по -високо от високото логическо ниво (1.12v) в листа с данни, синият светодиод е по -добър за този хак. Продължителният спад на напрежението за синия светодиод се измерва около 2,4v, което е безопасно над логическото ниво на чипа.
Добавяне на N-MOS инвертор (логически NOT Gate)
Малък SOT-23 N-канал MOSFET е подреден върху LED, който сме добавили. Два терминала (D, S) трябва да бъдат запоени на пробивната платка, а останалият терминал (G) е свързан към GPIO щифта на платката нагоре по веригата с помощта на проводник #26.
Бележки относно добавянето на SMD компоненти
Запояването на SMD компоненти на платка, за която не е предназначено, не е лесна задача. Ако все още не сте чували за 0805, SMD, SOT-23, има вероятност да не сте запоявали тези малки компоненти преди. При ръчно боравене с тези малки компоненти е много често, че:
- Малкото нещо просто падна и изчезна завинаги,
- Малките подложки на малкото нещо просто се отлепиха.
- Малките крака на малкото нещо просто се счупиха.
- Леячът за запояване просто се събра в петно и не можеше да се отдели.
- И още…
Ако все още искате да направите този радар, можете:
- Променете компонентите в по -голям пакет, като DIP стил.
- Вземете повече компоненти от необходимия минимум за практикуване и консумация.
Стъпка 3: Запояване на 0805 LED
Запояване на 0805 SMD LED
Запояването на светодиод 0805 на ръка, на платка, която не е предназначена за SMD, изобщо не е лесна задача. Следващите стъпки са моята препоръка за запояване на светодиода.
- Използвайте помощната ръка, за да държите дъската за разбиване.
- Поставете малко паста за запояване на ръба на SMD кондензатора и подложката "XSHUT".
- Използвайте поялника, за да поставите допълнително спойка върху ръба на кондензатора.
- Поставете малко запояваща паста върху двата края на светодиода 0805.
- Използвайте поялника, за да поставите малко калай върху двата края на светодиода 0805.
- Използвайте пинсетите, за да поставите светодиода, както е показано на снимката. Катодният край обикновено има маркирана линия. В моя пример, в края на катода има зелена линия. Поставете катодния край към края на кондензатора.
- Използвайте пинсетите, за да добавите лек натиск върху светодиода към кондензатора и запоявайте светодиода към края на кондензатора, като добавите топлина към края на кондензатора едновременно. Не натискайте силно светодиода. Капакът му може да се счупи при топлина и прекомерен натиск. След запояване, леко натиснете светодиода отстрани, за да проверите дали светодиодът е запоен на място.
- Сега запоявайте светодиода на подложката XSHUT. Тази стъпка трябва да бъде по -лесна.
Забележка: Краят на кондензатора, показан на снимката, е заземителният извод на тази платка. А потапящата подложка XSHUT се изтегля от резистор.
Тестване на светодиода
Светодиодът трябва да светне, когато подадете захранване (напр. 5V) и заземите към разпределителната платка.
Стъпка 4: Запояване на N-Channel MOSFET
Запояване на AO3400 N-Channel MOSFET
Този MOSFET е в пакет SOT-23. Трябва да го „подредим“върху светодиода и да добавим и проводник:
- Поставете малко запояваща паста и калайдисайте и трите терминала.
- Използвайте пинсети, за да поставите MOSFET върху светодиода 0805. S клемата трябва да докосва горната част на кондензатора
- Запоявайте клемата S с края на кондензатора, както е показано на снимката.
- Нарежете малка част AWG #30 едножилен проводник и отстранете покритието на около 1 cm.
- Използвайте поялника, за да разтопите спойката в отвора XSHUT отдолу и поставете проводника #30 отгоре, както е показано на снимката.
- Запояване на горния край на проводника към клемата MOSFET D.
- Изрежете допълнителен проводник.
Забележка: MOSFET S терминалът е свързан към края на кондензатора, както е показано на снимката. Този край е заземителният терминал. MOSFET D терминалът е свързан към оригиналния XSHUT щифт.
Клема G не е свързана в този момент. Позицията му е точно над някои издърпващи се резистори. Уверете се, че има празнина между тях (N-MOS и резистор) и не контактуват помежду си.
Стъпка 5: Окабеляване на сензорния масив
Общо окабеляване на автобус
Общият автобус включва:
- Vcc мощност. Червено на снимката. Използвам arduino nano с 5v логика. Пробивната платка има LDO и превключвател на нива. Така че е безопасно да използвате 5v като Vin.
- Земя. Черно на снимката.
- SDA. Зелено на снимката.
- SCL. Жълто на снимката.
Тези четири линии са общи линии. Изрежете подходяща дължина на проводниците и ги запоявайте успоредно към всички сензорни модули. Използвах 20 см от arduino до първия сензор и 5 см всеки след това.
XSHUTN и GPIO окабеляване
20 -сантиметровият бял проводник е от контролния щифт на arduino до щифта XSHUTN на първия сензор. Това е контролната линия, необходима за извеждане на първия VL53L0X чип от нулиране и промяна на I2C адреса.
5 см бял проводник между всеки модул е контролната линия на маргаритка. Чипът нагоре по веригата (например чип #3) GPIO подложка, е свързан към низходящия поток (например чип #4) XSHUTN крак (N-Channel MOSFET G терминал).
Внимавайте да не осъществите контакт на G терминала с резистора по -долу. Можете да добавите изолационна лента в пролуката. Защитната обвивка, която обикновено се доставя с чипа VL53L0X, може да се използва тук.
Използвайте топлинния пистолет, за да залепите контролния проводник.
Горещо лепило
Както можете да видите на снимката, върху белия контролен проводник, близо до терминала N-MOS G, има петно от горещо лепило. Тази стъпка е много важна и абсолютно необходима. Плаващото запояване директно към крака на SMD компонента е много слабо. Дори малък натиск върху жицата може да счупи крака. Направете тази стъпка внимателно.
Тестване на светодиода
Когато подавате захранване (напр. 3.3v-5v) и заземяване към сензорния масив, светодиодът на първия модул трябва да реагира с логическото ниво на проводника XSHUTN. Ако свържете XSHUTN към висока логика (напр. 3.3v-5v), светодиодът трябва да е изключен. Ако свържете проводника XSHUTN към ниско (заземяване), светодиодът на първия модул трябва да свети.
За всички следващи модули светодиодът трябва да е изключен.
Този тест се провежда преди свързване към arduino.
Стъпка 6: Попълване на сензорния масив
Тестване на верижка Дейзи
Сега искаме да проверим дали промяната на I2C адреса работи за всички сензори в масива. Както бе споменато, първият чип се управлява от arduino. Вторият чип се управлява от първия чип и т.н.
- Инсталирайте дъската за хляб. 5V и заземителната шина са директно свързани от 5V adriano и земята. Консумацията на ток за всеки сензор е оценена в таблица с данни 19ma.
- Добавете кондензатор към захранващата шина, за да стабилизирате Vin.
- Свържете Vin и Ground от сензорната решетка към захранващата шина.
- Свържете SDA към arduino Nano извод A4 (може да е различен за други микроконтролери).
- Свържете SCL към arduino Nano извод A5 (може да е различен за други микроконтролери).
- Свържете проводника XSHUTN към arduino Nano извод D2. (Това може да се промени в скица).
- Отидете на github https://github.com/FuzzyNoodle/Fuzzy-Radar и изтеглете библиотеката.
- Отворете примера „Daisy_Chain_Testing“и качете скицата.
Ако всичко работи, трябва да видите светодиодите за състоянието да светят един по един, подобно на видеоклипа по -горе.
Можете също така да отворите серийния прозорец и да видите напредъка на инициализацията. Изходът ще изглежда така:
Отваряне на порт Порт отворен Стартиране на скица. Задайте чип 0 в режим на нулиране. Всички светодиоди за състоянието трябва да са изключени. Сега конфигурирайте сензорите. LED трябва да светне един по един. Конфигуриране на чип 0 - Нулирайте I2C адреса на 83 - Инициализирайте сензора. Конфигуриране на чип 1 - Нулирайте I2C адреса на 84 - Инициализирайте сензора. Конфигуриране на чип 2 - Нулирайте I2C адреса на 85 - Инициализирайте сензора. Конфигурацията на радарния масив е завършена.
Сглобете държача и рамката
- Внимателно поставете всеки модул GY-530 върху държача с винта M2x10. Не натискайте MOSFET и не дърпайте проводниците XSHUTN.
- Поставете всеки държач в кръглата рамка. Използвайте малко горещо лепило, за да залепите частите.
Отново винтовете, държачите и кръглата рамка M2 се използват за поставяне на сензорите в кръгова подредба. Можете да използвате други методи, като например да използвате картонени дъски, моделирани дървета, глина или дори да ги залепите горещо върху кутия.
3D печатните файлове, които използвах, са предоставени по -долу. Кръглата рамка има 9 модула, разделени по 10 градуса всеки. Ако имате остро око, в предишните снимки имаше 10 модула. Причината? Обяснено по -долу…
Свалете защитната обвивка
Ако сте следвали стъпките от самото начало, сега е подходящ момент да премахнете защитната обвивка на чипа VL53L0X. На предишните ми снимки те вече са премахнати, защото трябва да тествам модулите и да се уверя, че концепцията работи, преди да публикувам тези инструкции.
За защитната обвивка в листа с данни се посочва: „Тя трябва да бъде премахната от клиента непосредствено преди монтирането на покриващото стъкло“. Двете малки дупки (излъчвател и приемник) на чипа VL53L0X са уязвими към замърсяване, като прах, мазнини, горещо лепило и др.
След като се замърси, обхватът може да бъде намален, а показанията могат да бъдат изключени с очевидна сума. Един от тестовите ми модули случайно е замърсен от лепилна глина, обхватът е намален до 40 см, а отчитането на разстоянието погрешно е увеличено с 50%. Така че внимавай!
Стъпка 7: Получаване на данни
Използвайки примера Raw_Data_Serial_Output
Сега наистина обичаме да виждаме данните от нашия сензорен масив. В библиотеката arduino на GitHub:
https://github.com/FuzzyNoodle/Fuzzy-Radar
Има пример, наречен Raw_Data_Serial_Output. Този пример демонстрира необработените изходни данни от сензорния масив. Изходните стойности са в милиметри.
След като сензорите се инициализират, трябва да видите нещо подобно в серийния прозорец, когато размахвате ръка през сензорите:
Вижте видеоклипа за демонстрация на живо.
Използвайки примера Fuzzy_Radar_Serial_Output
Следващата стъпка е да извлечете полезни данни от тези показания за разстояние. Това, което искахме от RADAR, са разстоянието и ъгълът на целевия обект.
- Разстоянието е в милиметри, свързано с повърхността на сензора. Връщането на 0 означава, че целта е извън обхвата.
- Ъгълът е в градуси, в хоризонталната равнина. Кодът, който в момента се очаква, сензорите са разпределени равномерно. Връщането на 0 градуса означава, че целта е в централната позиция на масива.
В библиотеката се прилагат някои алгоритми за филтриране:
-
Отстраняване на шума:
- Кратките (по отношение на броя на пробите) показания се считат за шум и се премахват.
- Показанията, които са далеч от средната стойност, се премахват.
-
Изчисляване на ъгъла на теглото (вижте илюстрацията по -горе)
- Предполага се, че целевият обект е плоска повърхност
- Ако множество сензори са открили обекта едновременно, се изчислява тегло за всеки сензор.
- Теглото на всеки сензор е обратно свързано с неговото разстояние.
- Резултатният ангел се изчислява от претегления ъгъл на всеки сензор.
-
Избор на основна цел:
- Ако има повече от една група показания, остава най -широката (с повече отчитания на сензора) група.
- Например, ако поставите две ръце пред сензорния масив, ръката, засечена от повече сензори, остава.
-
Най -близкият избор на целта:
- Ако има повече от една открита група със същата ширина, групата на най -близко разстояние остава.
- Например, ако поставите две ръце пред сензорния масив и две открити групи имат еднакъв брой сензори, групата по -близо до сензора остава.
Изходното разстояние и ъгъл се изглаждат чрез нискочестотен филтър
В Raw_Data_Serial_Output необработените показания за разстояние се преобразуват в стойност на разстояние и ъгъл. След като качите скицата, можете да отворите серийния прозорец, за да видите резултата, подобен на този:
Не е открит обект. Не е открит обект. Не е открит обект. Разстояние = 0056 ъгъл = 017 разстояние = 0066 ъгъл = 014 разстояние = 0077 ъгъл = 011 разстояние = 0083 ъгъл = 010 разстояние = 0081 ъгъл = 004 разстояние = 0082 ъгъл = 000 разстояние = 0092 ъгъл = 002 разстояние = 0097 ъгъл = 001 разстояние = 0096 ъгъл = 001 разстояние = 0099 ъгъл = 000 разстояние = 0101 ъгъл = -002 разстояние = 0092 ъгъл = -004 разстояние = 0095 ъгъл = -007 разстояние = 0101 ъгъл = -008 разстояние = 0112 ъгъл = -014 разстояние = 0118 ъгъл = -017 разстояние = 0122 ъгъл = -019 разстояние = 0125 ъгъл = -019 разстояние = 0126 ъгъл = -020 разстояние = 0125 ъгъл = -022 разстояние = 0124 ъгъл = -024 разстояние = 0133 ъгъл = -027 разстояние = 0138 ъгъл = - 031 разстояние = 0140 ъгъл = -033 разстояние = 0136 ъгъл = -033 разстояние = 0125 ъгъл = -037 разстояние = 0120 ъгъл = -038 разстояние = 0141 ъгъл = -039 Не е открит обект. Не е открит обект. Не е открит обект.
И така, сега имате RADAR (LIDAR):
- По -малки от ултразвукови сензорни модули
- Без движещи се части
- Сканира при 40 Hz.
- Оформен като колан, може да се монтира върху кръгла рамка
- Използвайте само три контролни проводника, плюс захранване и заземяване.
- Има диапазон от 30 милиметра до около 1000 милиметра.
В следващите стъпки ще ви покажем няколко готини демонстрации!
Стъпка 8: Laser Tracer (демонстрация)
Това е един пример за използване на стационарен радар, който сме изградили от предишни стъпки. Тази стъпка не е написана подробно, тъй като това е демонстратор на радара. Като цяло се нуждаете от тези допълнителни елементи, за да изградите този демонстрационен проект:
- Два серво
- Глава, излъчваща лазерна писалка
- MOSFET или NPN транзистор за управление на изхода на лазерната глава
- Източник на захранване за сервомоторите. Тя трябва да бъде отделена от микроконтролера.
Кодът може да бъде изтеглен от тук.
Моля, вижте предоставеното видео.
Стъпка 9: Гледане на Poopeyes (демонстрация)
Демонстрация на използване на радар за проследяване на местоположението и разстоянието на обекта.
Препоръчано:
Масив от 7 сегментни дисплея: 6 стъпки (със снимки)
Масив от 7 сегментни дисплея: Изградих светодиоден дисплей, направен от 144 7 сегментни дисплея, контролирани от arduino nano. Сегментите се контролират от 18 MAX7219 ic, които могат да контролират до 64 отделни светодиода или 8 7 сегментни дисплея. Масивът има 144 дисплея, всеки от които се състои от
Дисплей на TFMini Lidar - като радар само със светлина! :-): 3 стъпки
Дисплей на TFMini Lidar - Като радар само със светлина! :-): Има редица неща, които се събраха, за да направят тази работа, но най -голямото (и това, което ме вдъхнови да го направя) е " Arduino Radar Project " намерено на howtomechatronics.com от Деян Неделковски (дата неизвестна). https: // howtomechatronics
Пътуване през стени: Стационарен велосипеден интерфейс на Google Street View: 12 стъпки (със снимки)
Riding Through Walls: Google Street View Стационарен велосипеден интерфейс: The Riding Through Walls: Google Street View Стационарен велосипеден интерфейс ви позволява да се движите през Google Street View от комфорта на вашата всекидневна. Използвайки някои прости електроники, Arduino, стационарен велосипед, компютър и проектор или телевизор
Контрол на LED матричен масив с Arduino Uno (Arduino Powered Robot Face): 4 стъпки (със снимки)
Контрол на LED матричен масив с Arduino Uno (Arduino Powered Robot Face): Тази инструкция показва как да управлявате масив от 8x8 LED матрици, използвайки Arduino Uno. Това ръководство може да се използва за създаване на прост (и сравнително евтин дисплей) за вашите собствени проекти. По този начин може да показвате букви, цифри или персонализирани анимации
Как да си направим бананов телефон (стационарен) и бананен модул: 20 стъпки (със снимки)
Как да си направим бананов телефон (стационарен) и бананен модул: Това е всичко. Имате само няколко седмици преди Коледа и трябва да намерите подарък, който е наистина оригинален и показва колко сте производител. Има хиляди възможности за избор, но едно нещо, което наистина искате да направите, е бананов телеф