Съдържание:

Използване на LED матрица като скенер: 8 стъпки (със снимки)
Използване на LED матрица като скенер: 8 стъпки (със снимки)

Видео: Използване на LED матрица като скенер: 8 стъпки (със снимки)

Видео: Използване на LED матрица като скенер: 8 стъпки (със снимки)
Видео: Стоян колев се кара с яница 2024, Ноември
Anonim
Image
Image
Направете боклуци от остарели визитки!
Направете боклуци от остарели визитки!

Начална страница на MarcioT Следвайте още от автора:

Направете кубчета от остарели визитки!
Направете кубчета от остарели визитки!
Направи си сам 2.5x до 5x очила за опера/концерт
Направи си сам 2.5x до 5x очила за опера/концерт
Направи си сам 2,5x до 5x очила за опера/концерт
Направи си сам 2,5x до 5x очила за опера/концерт
Безжичен детектор за изтичане на вода в цял дом и система за аварийно изключване на водата
Безжичен детектор за изтичане на вода в цял дом и система за аварийно изключване на водата
Безжичен детектор за изтичане на вода в цял дом и система за аварийно изключване на водата
Безжичен детектор за изтичане на вода в цял дом и система за аварийно изключване на водата

За: Аз съм любител с интерес към софтуер с отворен код, 3D печат, наука и електроника. Моля, посетете моя магазин или страница на Patreon, за да подкрепите работата ми! Повече за marciot »

Обикновените цифрови фотоапарати работят, като използват голям набор от светлинни сензори за улавяне на светлина, отразена от обект. В този експеримент исках да видя дали мога да направя камера за обратно движение: вместо да разполагам с масив от сензори за светлина, имам само един сензор; но аз контролирам всеки от 1 024 отделни източника на светлина в 32 x 32 LED матрица.

Начинът, по който работи, е, че Arduino осветява един светодиод наведнъж, докато използва аналоговия вход за наблюдение на промените в сензора за светлина. Това позволява на Arduino да тества дали сензорът може да "види" определен светодиод. Този процес се повтаря бързо за всеки от 1 024 отделни светодиода, за да се генерира карта на видими пиксели.

Ако обект е поставен между LED матрицата и сензора, Arduino може да улови силуета на този обект, който се осветява като „сянка“, след като заснемането приключи.

БОНУС: С малки ощипвания същият код може да се използва за реализиране на „цифров стилус“за рисуване върху LED матрицата.

Стъпка 1: Части, използвани в тази компилация

Части, използвани в тази конструкция
Части, използвани в тази конструкция
Части, използвани в тази конструкция
Части, използвани в тази конструкция

За този проект използвах следните компоненти:

  • Arduino Uno с дъска
  • 32x32 RGB LED матрица (от AdaFruit или Tindie)
  • 5V 4A захранващ адаптер (от AdaFruit)
  • Женски адаптер за DC захранване 2.1 мм жак към винтова клема (от AdaFruit)
  • Ясен, 3 мм TIL78 фототранзистор
  • Кабелни проводници

AdaFruit също продава щит Arduino, който може да се използва вместо джъмперни проводници.

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

Фототранзисторът дойде от моите десетилетия колекции от части. Това беше чиста 3 мм част, обозначена като TIL78. Доколкото мога да разбера, тази част е предназначена за IR и идва или с ясен калъф, или с тъмен корпус, който блокира видимата светлина. Тъй като RGB LED матрицата излъчва видима светлина, трябва да се използва ясната версия.

Изглежда, че този TIL78 е прекратен, но предполагам, че този проект може да бъде направен с помощта на съвременни фототранзистори. Ако намерите нещо, което работи, уведомете ме и аз ще актуализирам тази инструкция!

Стъпка 2: Окабеляване и тестване на фототранзистора

Окабеляване и тестване на фототранзистора
Окабеляване и тестване на фототранзистора

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

Използвах проводници за свързване на фототранзистора към щифтовете GND и A5 на Arduino. След това създадох скица, която зададе щифта A5 като INPUT_PULLUP. Това обикновено се прави за ключове, но в този случай осигурява захранване на фототранзистора!

#дефинирайте СЕНЗОР A5

void setup () {Serial.begin (9600); pinMode (SENSOR, INPUT_PULLUP); } void loop () {// Прочетете аналоговата стойност непрекъснато и я отпечатайте Serial.println (analogRead (SENSOR)); }

Тази скица отпечатва стойности към серийния порт, съответстващи на яркостта на околната среда. Използвайки удобния „Сериен плотер“от менюто „Инструменти“на Arduino IDE, мога да получа движещ се участък от околна светлина! Докато покривам и разкривам фототранзистора с ръце, сюжетът се движи нагоре и надолу. Приятно!

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

Стъпка 3: Свържете кабела на матричната лента към Arduino

Свързване на матричния лентов кабел към Arduino
Свързване на матричния лентов кабел към Arduino

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

Уверете се, че раздела на конектора съвпада с този на диаграмата.

Като алтернатива, за по -чиста верига, можете да използвате матричния щит RGB, който AdaFruit продава за тези панели. Ако използвате щита, ще трябва да запоите в заглавка или проводници за фототранзистора.

Стъпка 4: Свързване на матрицата

Свързване на матрицата
Свързване на матрицата
Свързване на матрицата
Свързване на матрицата
Свързване на матрицата
Свързване на матрицата

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

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

Стъпка 5: Инсталирайте библиотеката на AdaFruit Matrix и тествайте матрицата

Инсталирайте библиотеката на AdaFruit Matrix и тествайте матрицата
Инсталирайте библиотеката на AdaFruit Matrix и тествайте матрицата

Ще трябва да инсталирате "RGB матричен панел" и AdaFruit "Adafruit GFX библиотека" във вашата Arduino IDE. Ако имате нужда от помощ при това, урокът е най -добрият начин да отидете.

Предлагам ви да изпълните някои от примерите, за да се уверите, че вашият RGB панел работи, преди да продължите. Препоръчвам примера "plasma_32x32", тъй като е доста страхотен!

Важна забележка: Открих, че ако захранвам Arduino, преди да включа 5V захранването към матрицата, матрицата ще свети слабо. Изглежда, че матрицата се опитва да черпи енергия от Arduino и това определено не е добре за нея! Така че, за да избегнете претоварване на Arduino, винаги включвайте матрицата, преди да включите Arduino!

Стъпка 6: Заредете кода за сканиране на матрицата

Втора награда в конкурса Arduino 2019

Препоръчано: