Kazalo:

Uporaba LED matrike kot optičnega bralnika: 8 korakov (s slikami)
Uporaba LED matrike kot optičnega bralnika: 8 korakov (s slikami)

Video: Uporaba LED matrike kot optičnega bralnika: 8 korakov (s slikami)

Video: Uporaba LED matrike kot optičnega bralnika: 8 korakov (s slikami)
Video: Полное прохождение Half-Life 1 - БЕЗ HUD и КОММЕНТАРИЙ 2024, Julij
Anonim
Image
Image
Naredite kockaste stvari iz zastarelih vizitk!
Naredite kockaste stvari iz zastarelih vizitk!

Avtor marciotMarcioT's Home PageSledi Več avtorja:

Naredite kockaste stvari iz zastarelih vizitk!
Naredite kockaste stvari iz zastarelih vizitk!
DIY 2,5x do 5x očala za opero/koncert
DIY 2,5x do 5x očala za opero/koncert
DIY 2,5x do 5x očala za opero/koncert
DIY 2,5x do 5x očala za opero/koncert
Brezžični detektor puščanja vode v celotnem domu in sistem za izklop vode v sili
Brezžični detektor puščanja vode v celotnem domu in sistem za izklop vode v sili
Brezžični detektor puščanja vode v celotnem domu in sistem za izklop vode v sili
Brezžični detektor puščanja vode v celotnem domu in sistem za izklop vode v sili

O: Sem hobist, ki me zanima odprtokodna programska oprema, 3D tiskanje, znanost in elektronika. Obiščite mojo trgovino ali stran Patreon, da podprete moje delo! Več o marciot »

Običajni digitalni fotoaparati delujejo z uporabo velikega števila svetlobnih senzorjev za zajemanje svetlobe, ki se odbija od predmeta. V tem poskusu sem želel preveriti, ali lahko zgradim kamero za nazaj: namesto niza svetlobnih senzorjev imam samo en senzor; vendar nadzorujem vsakega od 1024 posameznih virov svetlobe v LED matriki 32 x 32.

Način delovanja je, da Arduino osvetli eno LED naenkrat, medtem ko uporablja analogni vhod za spremljanje sprememb v svetlobnem senzorju. To omogoča Arduinu, da preveri, ali lahko senzor "vidi" določeno LED. Ta postopek se hitro ponovi za vsako od 1024 posameznih LED, da se ustvari zemljevid vidnih slikovnih pik.

Če je predmet postavljen med LED matrico in senzor, lahko Arduino ujame silhueto tega predmeta, ki se po končanem zajemu zasveti kot "senca".

BONUS: Z manjšimi nastavitvami lahko isto kodo uporabite za izvajanje "digitalnega pisala" za slikanje na LED matriki.

1. korak: Deli, uporabljeni v tej zgradbi

Deli, uporabljeni v tej zgradbi
Deli, uporabljeni v tej zgradbi
Deli, uporabljeni v tej zgradbi
Deli, uporabljeni v tej zgradbi

Za ta projekt sem uporabil naslednje komponente:

  • Arduino Uno s ploščico
  • 32x32 RGB LED matrika (AdaFruit ali Tindie)
  • Napajalnik 5V 4A (iz AdaFruit)
  • Ženski enosmerni napajalnik 2,1 mm priključek na vijačni priključni blok (iz AdaFruit)
  • Prozoren, 3 mm TIL78 fototranzistor
  • Mostične žice

AdaFruit prodaja tudi Arduino ščit, ki ga je mogoče uporabiti namesto mostičnih žic.

Ker sem imel nekaj kreditov za Tindie, sem matriko dobil od Tindie, vendar se zdi, da je matrika iz AdaFruit identična, zato bi morala ena delovati.

Fototranzistor je prišel iz mojih desetletij starih zbirk delov. To je bil prozoren 3 mm del z oznako TIL78. Kolikor lahko razberem, je ta del namenjen IR in ima bodisi prozorno ohišje bodisi temno ohišje, ki blokira vidno svetlobo. Ker matrika RGB LED oddaja vidno svetlobo, je treba uporabiti čisto različico.

Zdi se, da je bil ta TIL78 ukinjen, vendar mislim, da bi lahko ta projekt izvedli s sodobnimi fototranzistorji. Če najdete nekaj, kar deluje, mi sporočite in posodobil bom to navodilo!

2. korak: Ožičenje in testiranje fototranzistorja

Ožičenje in testiranje fototranzistorja
Ožičenje in testiranje fototranzistorja

Običajno bi potrebovali upor zaporedno s fototranzistorjem po vsej moči, vendar sem vedel, da ima Arduino možnost omogočiti notranji vlečni upor na katerem koli zatiču. Sumil sem, da bi to lahko izkoristil za priklop fototranzistorja na Arduino brez dodatnih komponent. Izkazalo se je, da je moj slutnja pravilna!

Uporabil sem žice za povezavo fototranzistorja z zatiči GND in A5 na Arduinu. Nato sem ustvaril skico, ki je pin A5 nastavila kot INPUT_PULLUP. To se običajno naredi za stikala, vendar v tem primeru zagotavlja napajanje fototranzistorja!

#določite SENZOR A5

void setup () {Serial.begin (9600); pinMode (SENSOR, INPUT_PULLUP); } void loop () {// Neprestano beri analogno vrednost in jo natisni Serial.println (analogRead (SENSOR)); }

Ta skica na serijska vrata natisne vrednosti, ki ustrezajo svetlosti okolice. Z uporabo priročnega "Serijskega ploterja" iz menija "Orodja" v Arduino IDE lahko dobim premikajoč se prikaz zunanje svetlobe! Ko z rokami pokrivam in odkrivam fototranzistor, se ploskev premika gor in dol. Lepo!

Ta skica je lep način, da preverite, ali je fototranzistor povezan z ustrezno polariteto: fototranzistor bo občutljivejši, če bo priključen v eno smer v drugo.

3. korak: Ožičenje matričnega trakovnega kabla na Arduino

Ožičenje matričnega trakovnega kabla na Arduino
Ožičenje matričnega trakovnega kabla na Arduino

Za povezavo matrike z Arduinom sem šel skozi ta priročen vodnik iz Adafruit -a. Za udobje sem diagram in izpiske prilepila v dokument in natisnila stran s hitrimi referencami za uporabo, medtem ko sem vse ožičila.

Pazite, da se jeziček na priključku ujema s tistim na diagramu.

Druga možnost je, da za čistejše vezje uporabite matrični ščit RGB, ki ga AdaFruit prodaja za te plošče. Če uporabljate ščit, boste morali spajkati v glavo ali žice za fototranzistor.

4. korak: Povezovanje matrice

Povezovanje matrice
Povezovanje matrice
Povezovanje matrice
Povezovanje matrice
Povezovanje matrice
Povezovanje matrice

Priključil sem sponke vilic na napajalne kable matrice do adapterja za vtičnico in se prepričal, da je polariteta pravilna. Ker je bil del priključkov izpostavljen, sem zaradi varnosti vse skupaj zavil z električnim trakom.

Nato sem priključil napajalni konektor in tračni kabel, pri tem pazil, da pri tem ne motim mostičkov.

5. korak: Namestite knjižnico AdaFruit Matrix in preizkusite matriko

Namestite knjižnico AdaFruit Matrix in preizkusite matriko
Namestite knjižnico AdaFruit Matrix in preizkusite matriko

V svoj Arduino IDE boste morali namestiti "matrično ploščo RGB" in AdaFruit "knjižnico Adafruit GFX". Če pri tem potrebujete pomoč, je vadnica najboljši način.

Predlagam, da pred nadaljevanjem zaženete nekaj primerov, da se prepričate, da vaša plošča RGB deluje. Priporočam primer "plasma_32x32", saj je res super!

Pomembna opomba: Ugotovil sem, da če bi vklopil Arduino, preden sem priključil 5V napajanje na matrico, bi matrika svetila slabo. Zdi se, da matrika poskuša črpati moč iz Arduina in to zagotovo ni dobro! Da se izognete preobremenitvi Arduina, vedno vklopite matrico, preden vklopite Arduino!

6. korak: Naložite kodo za skeniranje matrike

Druga nagrada na tekmovanju Arduino 2019

Priporočena: