Obsah:

Použití LED matice jako skeneru: 8 kroků (s obrázky)
Použití LED matice jako skeneru: 8 kroků (s obrázky)

Video: Použití LED matice jako skeneru: 8 kroků (s obrázky)

Video: Použití LED matice jako skeneru: 8 kroků (s obrázky)
Video: Jak může mít 11 prstů? 😳 2024, Červenec
Anonim
Image
Image
Vyrábějte krabicové věci ze zastaralých vizitek!
Vyrábějte krabicové věci ze zastaralých vizitek!

Autor: marciotMarcioT's Home PageSledujte více od autora:

Vyrábějte krabicové věci ze zastaralých vizitek!
Vyrábějte krabicové věci ze zastaralých vizitek!
DIY 2,5x až 5x brýle na operu/koncert
DIY 2,5x až 5x brýle na operu/koncert
DIY 2,5x až 5x brýle na operu/koncert
DIY 2,5x až 5x brýle na operu/koncert
Bezdrátový detektor úniku vody z celého domu a nouzový systém uzavření vody
Bezdrátový detektor úniku vody z celého domu a nouzový systém uzavření vody
Bezdrátový detektor úniku vody z celého domu a nouzový systém uzavření vody
Bezdrátový detektor úniku vody z celého domu a nouzový systém uzavření vody

O: Jsem fanda se zájmem o open-source software, 3D tisk, vědu a elektroniku. Chcete -li podpořit moji práci, navštivte můj obchod nebo stránku Patreon! Více o marciot »

Běžné digitální fotoaparáty fungují tak, že k zachycení světla, které se odráží od předmětu, využívá velké množství světelných senzorů. V tomto experimentu jsem chtěl zjistit, zda mohu postavit zpětnou kameru: místo řady světelných senzorů mám pouze jeden senzor; ale ovládám každý z 1 024 jednotlivých světelných zdrojů v matici LED 32 x 32.

Funguje to tak, že Arduino rozsvítí jednu LED najednou, přičemž pomocí analogového vstupu sleduje změny světelného senzoru. To umožňuje Arduinu otestovat, zda senzor „vidí“konkrétní LED. Tento proces se opakuje pro každou z 1 024 jednotlivých LED rychle, aby se vytvořila mapa viditelných pixelů.

Pokud je mezi matici LED a snímač umístěn předmět, Arduino dokáže zachytit siluetu tohoto objektu, který se po dokončení snímání rozsvítí jako „stín“.

BONUS: S drobnými vylepšeními lze stejný kód použít k implementaci „digitálního stylusu“pro malování na matici LED.

Krok 1: Díly použité v této sestavě

Díly použité v této stavbě
Díly použité v této stavbě
Díly použité v této stavbě
Díly použité v této stavbě

Pro tento projekt jsem použil následující komponenty:

  • Arduino Uno s Breadboard
  • 32x32 RGB LED matice (buď od AdaFruit nebo Tindie)
  • 5V 4A napájecí adaptér (od AdaFruit)
  • Samičí napájecí adaptér DC 2,1 mm jack na šroubovou svorkovnici (od AdaFruit)
  • Čirý 3mm fototranzistor TIL78
  • Propojovací vodiče

AdaFruit také prodává štít Arduino, který lze použít místo propojovacích vodičů.

Protože jsem měl nějaké kredity Tindie, dostal jsem matici od Tindie, ale matice od AdaFruit se zdá být identická, takže by měl fungovat jeden.

Fototranzistor pocházel z mých desítek let starých sbírek dílů. Jednalo se o čirý 3mm díl označený jako TIL78. Pokud mohu říci, tato část je určena pro IR a přichází buď s čistým pouzdrem, nebo s tmavým pouzdrem, které blokuje viditelné světlo. Protože matice RGB LED vydává viditelné světlo, je nutné použít čirou verzi.

Zdá se, že tento TIL78 byl přerušen, ale domnívám se, že tento projekt by mohl být vyroben pomocí současných fototranzistorů. Pokud najdete něco, co funguje, dejte mi vědět a já aktualizuji tento Instructable!

Krok 2: Zapojení a testování fototranzistoru

Zapojení a testování fototranzistoru
Zapojení a testování fototranzistoru

Normálně byste potřebovali odpor v sérii s fototranzistorem napříč napájením, ale věděl jsem, že Arduino má schopnost povolit vnitřní výsuvný odpor na kterémkoli z kolíků. Měl jsem podezření, že bych toho mohl využít k připojení fototranzistoru k Arduinu bez dalších komponent. Ukázalo se, že moje tušení bylo správné!

Pomocí vodičů jsem připojil fototranzistor k pinům GND a A5 na Arduinu. Poté jsem vytvořil skicu, která nastavila kolík A5 jako INPUT_PULLUP. To se běžně provádí u přepínačů, ale v tomto případě poskytuje energii fototranzistor!

#define SENZOR A5

neplatné nastavení () {Serial.begin (9600); pinMode (SENZOR, INPUT_PULLUP); } void loop () {// Čte analogovou hodnotu nepřetržitě a tiskněte ji Serial.println (analogRead (SENSOR)); }

Tato skica vytiskne hodnoty na sériový port odpovídající okolnímu jasu. Pomocí šikovného „Sériového plotru“z nabídky „Nástroje“v Arduino IDE mohu získat pohyblivý graf okolního světla! Když rukama zakrývám a odkrývám fototranzistor, děj se pohybuje nahoru a dolů. Pěkný!

Tato skica je pěkným způsobem, jak zkontrolovat, zda je fototranzistor zapojen se správnou polaritou: fototranzistor bude citlivější, když se zapojí jedním směrem proti druhému.

Krok 3: Zapojení plochého kabelu Matrix do Arduina

Zapojení plochého kabelu Matrix do Arduina
Zapojení plochého kabelu Matrix do Arduina

Abych připojil matici k Arduinu, prošel jsem tohoto šikovného průvodce od Adafruit. Pro větší pohodlí jsem vložil diagram a vývody do dokumentu a vytiskl rychlou referenční stránku, kterou jsem mohl použít při zapojování všeho.

Dbejte na to, aby se výčnělek na konektoru shodoval s výčnělkem na obrázku.

Alternativně pro čistší obvod můžete použít maticový štít RGB, který AdaFruit prodává pro tyto panely. Pokud používáte štít, budete muset pájet v záhlaví nebo vodičích pro fototranzistor.

Krok 4: Připojení matice

Připojení matice
Připojení matice
Připojení matice
Připojení matice
Připojení matice
Připojení matice

Přišrouboval jsem vidlicové svorky na napájecích vodičích matice k adaptéru jack a ujistil se, že je polarita správná. Protože část terminálů zůstala odkrytá, celé jsem to pro jistotu zabalil elektrickou páskou.

Poté jsem zapojil napájecí konektor a plochý kabel a dával jsem pozor, abych při tom nerušil propojovací vodiče.

Krok 5: Nainstalujte si knihovnu matic AdaFruit a otestujte matici

Nainstalujte si knihovnu matic AdaFruit a otestujte matici
Nainstalujte si knihovnu matic AdaFruit a otestujte matici

Do IDE Arduino budete muset nainstalovat „RGB maticový panel“a AdaFruit „Adafruit GFX knihovnu“. Pokud s tím potřebujete pomoci, je nejlepším způsobem návod.

Doporučuji spustit některé z příkladů, abyste se ujistili, že váš panel RGB funguje, než budete pokračovat. Doporučuji příklad „plasma_32x32“, protože je to docela úžasné!

Důležitá poznámka: Zjistil jsem, že kdybych zapnul Arduino, než jsem připojil 5V napájení k matici, matice by se rozsvítila matně. Zdá se, že se matice snaží čerpat energii z Arduina a to pro ni rozhodně není dobré! Abyste se vyhnuli přetížení Arduina, vždy zapněte matici, než zapnete Arduino!

Krok 6: Načtěte kód skenování Matrix

Druhá cena v soutěži Arduino 2019

Doporučuje: