Innholdsfortegnelse:
- Trinn 1: Deler som brukes i denne bygningen
- Trinn 2: Tilkobling og testing av fototransistoren
- Trinn 3: Koble opp Matrix -båndkabelen til Arduino
- Trinn 4: Koble til matrisen
- Trinn 5: Installer AdaFruit Matrix Library og test matrisen
- Trinn 6: Last inn matriseskanningskoden
Video: Bruke en LED -matrise som skanner: 8 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Av marciotMarcioTs hjemmeside Følg mer av forfatteren:
Om: Jeg er en hobbyist med interesse for åpen kildekode-programvare, 3D-utskrift, vitenskap og elektronikk. Besøk butikken min eller Patreon -siden for å støtte arbeidet mitt! Mer om marciot »
Vanlige digitale kameraer fungerer ved å bruke et stort utvalg av lyssensorer for å fange lys mens det reflekteres fra et objekt. I dette eksperimentet ønsket jeg å se om jeg kunne bygge et bakoverkamera: i stedet for å ha en rekke lyssensorer, har jeg bare en enkelt sensor; men jeg kontrollerer hver av 1, 024 individuelle lyskilder i en 32 x 32 LED -matrise.
Måten det fungerer på er at Arduino lyser én LED om gangen, mens du bruker den analoge inngangen til å overvåke endringer i lyssensoren. Dette gjør at Arduino kan teste om sensoren kan "se" en bestemt LED. Denne prosessen gjentas raskt for hver av de 0, 024 individuelle lysdiodene raskt for å generere et kart over synlige piksler.
Hvis et objekt plasseres mellom LED -matrisen og sensoren, er Arduino i stand til å fange silhuetten til objektet, som lyser opp som en "skygge" når opptaket er fullført.
BONUS: Med mindre justeringer kan den samme koden brukes til å implementere en "digital stylus" for maling på LED -matrisen.
Trinn 1: Deler som brukes i denne bygningen
For dette prosjektet brukte jeg følgende komponenter:
- En Arduino Uno med brødbrett
- 32x32 RGB LED -matrise (enten fra AdaFruit eller Tindie)
- 5V 4A strømadapter (fra AdaFruit)
- Kvinnelig likestrømadapter 2.1 mm kontakt til skrueklemme (fra AdaFruit)
- En klar, 3 mm TIL78 fototransistor
- Jumper ledninger
AdaFruit selger også et Arduino -skjold som kan brukes i stedet for hoppetråder.
Siden jeg hadde noen Tindie -studiepoeng, fikk jeg matrisen min fra Tindie, men matrisen fra AdaFruit ser ut til å være identisk, så en av dem burde fungere.
Fototransistoren kom fra mine tiår gamle samlinger av deler. Det var en klar 3 mm del merket som en TIL78. Så vidt jeg kan fortelle, er den delen ment for IR og kommer enten et klart tilfelle eller et mørkt hylster som blokkerer synlig lys. Siden RGB LED -matrisen slukker synlig lys, må den klare versjonen brukes.
Denne TIL78 ser ut til å ha blitt avviklet, men jeg forestiller meg at dette prosjektet kan lages ved hjelp av moderne fototransistorer. Gi meg beskjed hvis du finner noe som fungerer, så oppdaterer jeg denne instruksen!
Trinn 2: Tilkobling og testing av fototransistoren
Normalt vil du trenge en motstand i serie med fototransistoren på tvers av strøm, men jeg visste at Arduino hadde muligheten til å aktivere en intern opptrekksmotstand på hvilken som helst av pinnene. Jeg mistenkte at jeg kunne dra nytte av det for å koble til fototransistoren til Arduino uten ekstra komponenter. Det viste seg at min anelse var riktig!
Jeg brukte ledninger for å koble fototransistoren til GND- og A5 -pinnene på Arduino. Jeg laget deretter en skisse som satte A5 -pinnen som en INPUT_PULLUP. Dette gjøres normalt for brytere, men i dette tilfellet gir det strøm til fototransistoren!
#define SENSOR A5
ugyldig oppsett () {Serial.begin (9600); pinMode (SENSOR, INPUT_PULLUP); } void loop () {// Les analog verdi kontinuerlig og skriv den ut Serial.println (analogRead (SENSOR)); }
Denne skissen skriver ut verdier til den serielle porten som tilsvarer lysstyrken i omgivelsene. Ved å bruke den praktiske "Serial Plotter" fra "Verktøy" -menyen i Arduino IDE, kan jeg få en bevegelig tomt med omgivende lys! Når jeg dekker og avdekker fototransistoren med hendene, beveger plottet seg opp og ned. Hyggelig!
Denne skissen er en fin måte å sjekke om fototransistoren er koblet til med riktig polaritet: fototransistoren vil være mer følsom når den kobles til en retning mot den andre.
Trinn 3: Koble opp Matrix -båndkabelen til Arduino
For å koble matrisen til Arduino gikk jeg gjennom denne praktiske guiden fra Adafruit. For enkelhets skyld limte jeg diagrammet og pinoutene inn i et dokument og skrev ut en hurtigreferanseside for bruk mens jeg koblet alt sammen.
Pass på at tappen på kontakten stemmer overens med den i diagrammet.
Alternativt, for en renere krets, kan du bruke RGB -matriseskjoldet som AdaFruit selger for disse panelene. Hvis du bruker skjoldet, må du lodde i et topptekst eller ledninger for fototransistoren.
Trinn 4: Koble til matrisen
Jeg skrudde ned gaffelterminalene på matrisens strømledninger til jackadapteren, og sørget for at polariteten var riktig. Siden en del av terminalene ble avslørt, pakket jeg det hele inn med elektrisk tape for sikkerhets skyld.
Deretter koblet jeg til strømkontakten og båndkabelen, og passet på å ikke forstyrre hoppetrådene i prosessen.
Trinn 5: Installer AdaFruit Matrix Library og test matrisen
Du må installere "RGB -matrisepanelet" og AdaFruit "Adafruit GFX -biblioteket" i Arduino IDE. Hvis du trenger hjelp til å gjøre dette, er opplæringen den beste måten å gå.
Jeg foreslår at du kjører noen av eksemplene for å sikre at RGB -panelet fungerer før du fortsetter. Jeg anbefaler eksempelet "plasma_32x32", da det er ganske fantastisk!
Viktig merknad: Jeg fant ut at hvis jeg satte på Arduino før jeg koblet til 5V -forsyningen til matrisen, ville matrisen lyse svakt. Det ser ut til at matrisen prøver å hente strøm fra Arduino, og det er definitivt ikke bra for det! Så for å unngå overbelastning av Arduino, slå alltid på matrisen før du slår på Arduino!
Trinn 6: Last inn matriseskanningskoden
Andre pris i Arduino -konkurransen 2019
Anbefalt:
Visuino Hvordan bruke en knapp som inngang for å kontrollere ting som LED: 6 trinn
Visuino Hvordan bruke en knapp som inngang for å kontrollere ting som LED: I denne opplæringen lærer vi hvordan du slår LED -en PÅ og AV ved hjelp av en enkel knapp og Visuino. Se en demonstrasjonsvideo
Hvordan bruke en tenåring til å skrive ut bilder på Splatoon 2 Bruke SplatPost -skriveren: 10 trinn
Hvordan bruke en tenåring til å skrive ut bilder på Splatoon 2 Bruke SplatPost -skriveren: I denne instruksen vil jeg vise hvordan du bruker SplatPost -skriveren av ShinyQuagsire. Uten klare instruksjoner ville noen som ikke har erfaring med kommandolinjen ha litt problemer. Målet mitt er å forenkle trinnene ned til poi
Neopixel Ws2812 Rainbow LED-glød med M5stick-C - Kjører Rainbow på Neopixel Ws2812 Bruke M5stack M5stick C Bruke Arduino IDE: 5 trinn
Neopixel Ws2812 Rainbow LED-glød med M5stick-C | Running Rainbow på Neopixel Ws2812 Bruke M5stack M5stick C Bruke Arduino IDE: Hei folkens i denne instruksen, vi lærer hvordan du bruker neopixel ws2812 LED eller led strip eller led matrise eller led ring med m5stack m5stick-C utviklingstavle med Arduino IDE, og vi skal lage et regnbuemønster med den
Bruke PSP som datamaskin joystick og deretter kontrollere datamaskinen med PSP: 5 trinn (med bilder)
Bruke PSP som datamaskin joystick og deretter kontrollere datamaskinen din med PSP: Du kan gjøre mange kule ting med PSP homebrew, og i denne instruksen vil jeg lære deg hvordan du bruker PSP som en joystick for å spille spill, men det er også et program som lar deg bruke joysticken som musen. Her er materien
Hvordan bruke Wiimote som en datamus ved å bruke stearinlys som sensor !!: 3 trinn
Slik bruker du Wiimote som en datamus ved å bruke stearinlys som en sensor !!: Denne guiden viser deg hvordan du kobler din Wii -fjernkontroll (Wiimote) til din PC og bruker den som en mus