Indholdsfortegnelse:
- Trin 1: Dele brugt i denne bygning
- Trin 2: Tilslutning og test af fototransistoren
- Trin 3: Tilslutning af Matrix -båndkablet til Arduino
- Trin 4: Tilslutning af matrixen
- Trin 5: Installer AdaFruit Matrix Library og test matrixen
- Trin 6: Indlæs Matrix -scanningskoden
Video: Brug af en LED -matrix som scanner: 8 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Af marciotMarcioT's hjemmeside Følg mere af forfatteren:
Om: Jeg er en amatør med interesse for open source-software, 3D-print, videnskab og elektronik. Besøg min butik eller Patreon -side for at hjælpe med at understøtte mit arbejde! Mere om marciot »
Almindelige digitale kameraer fungerer ved at bruge et stort udvalg af lyssensorer til at fange lys, når det reflekteres fra et objekt. I dette eksperiment ville jeg se, om jeg kunne bygge et baglæns kamera: I stedet for at have en række lyssensorer har jeg kun en enkelt sensor; men jeg styrer hver af 1, 024 individuelle lyskilder i en 32 x 32 LED matrix.
Måden det fungerer på er, at Arduino oplyser én LED ad gangen, mens den analoge indgang bruges til at overvåge ændringer i lyssensoren. Dette giver Arduino mulighed for at teste, om sensoren kan "se" en bestemt LED. Denne proces gentages hurtigt for hver af de 1, 024 individuelle lysdioder hurtigt for at generere et kort over synlige pixels.
Hvis der placeres et objekt mellem LED -matrixen og sensoren, er Arduino i stand til at fange silhuetten af det objekt, der lyser op som en "skygge", når optagelsen er fuldført.
BONUS: Med mindre tweaks kan den samme kode bruges til at implementere en "digital stylus" til maling på LED -matrixen.
Trin 1: Dele brugt i denne bygning
Til dette projekt brugte jeg følgende komponenter:
- En Arduino Uno med brødbræt
- 32x32 RGB LED matrix (enten fra AdaFruit eller Tindie)
- 5V 4A strømadapter (fra AdaFruit)
- Kvinde DC -strømadapter 2,1 mm stik til skrueklemme (fra AdaFruit)
- En klar, 3 mm TIL78 fototransistor
- Jumper ledninger
AdaFruit sælger også et Arduino -skjold, som kan bruges i stedet for jumperwires.
Da jeg havde nogle Tindie -kreditter, fik jeg min matrix fra Tindie, men matrixen fra AdaFruit ser ud til at være identisk, så en af dem burde fungere.
Fototransistoren kom fra mine årtiers gamle samlinger af dele. Det var en klar 3 mm del mærket som en TIL78. Så vidt jeg kan se, er denne del beregnet til IR og kommer enten i et klart tilfælde eller et mørkt hus, der blokerer synligt lys. Da RGB LED -matrix slukker synligt lys, skal den klare version bruges.
Denne TIL78 ser ud til at være afbrudt, men jeg forestiller mig, at dette projekt kunne laves ved hjælp af nutidige fototransistorer. Hvis du finder noget, der virker, så lad mig det vide, og jeg vil opdatere denne Instructable!
Trin 2: Tilslutning og test af fototransistoren
Normalt ville du have brug for en modstand i serie med fototransistoren på tværs af strøm, men jeg vidste, at Arduino havde evnen til at aktivere en intern pull-up-modstand på en hvilken som helst af stifterne. Jeg mistænkte, at jeg kunne drage fordel af det for at tilslutte fototransistoren til Arduino uden yderligere komponenter. Det viste sig, at min anelse var korrekt!
Jeg brugte ledninger til at forbinde fototransistoren til GND- og A5 -benene på Arduino. Jeg lavede derefter en skitse, der satte A5 -stiften som en INPUT_PULLUP. Dette gøres normalt for switches, men i dette tilfælde giver det strøm til fototransistoren!
#define SENSOR A5
ugyldig opsætning () {Serial.begin (9600); pinMode (SENSOR, INPUT_PULLUP); } void loop () {// Læs den analoge værdi løbende, og udskriv den Serial.println (analogRead (SENSOR)); }
Denne skitse udskriver værdier til den serielle port, der svarer til den omgivende lysstyrke. Ved at bruge den praktiske "Serial Plotter" fra menuen "Værktøjer" i Arduino IDE kan jeg få et bevægeligt plot af omgivende lys! Da jeg dækker og afdækker fototransistoren med mine hænder, bevæger plottet sig op og ned. Pæn!
Denne skitse er en god måde at kontrollere, om fototransistoren er forbundet med den rigtige polaritet: fototransistoren vil være mere følsom, når den tilsluttes den ene retning mod den anden.
Trin 3: Tilslutning af Matrix -båndkablet til Arduino
For at koble matrixen til Arduino gennemgik jeg denne praktiske guide fra Adafruit. For nemheds skyld indsatte jeg diagrammet og pinouts i et dokument og udskrev en hurtig referenceside, der skulle bruges, mens alt blev forbundet.
Sørg for, at fanen på stikket matcher den i diagrammet.
Alternativt til et renere kredsløb kan du bruge RGB -matrixskærmen, som AdaFruit sælger til disse paneler. Hvis du bruger skjoldet, skal du lodde et overskrift eller ledninger til fototransistoren.
Trin 4: Tilslutning af matrixen
Jeg skruede gaffelterminalerne på matrixstrømledningerne ned til jackadapteren og sørgede for, at polariteten var korrekt. Da en del af terminalerne blev efterladt, pakkede jeg det hele ind med elektrisk tape for sikkerheden.
Derefter tilsluttede jeg strømstikket og båndkablet, idet jeg var forsigtig med ikke at forstyrre jumperkablerne i processen.
Trin 5: Installer AdaFruit Matrix Library og test matrixen
Du bliver nødt til at installere "RGB -matrixpanelet" og AdaFruit "Adafruit GFX -biblioteket" i din Arduino IDE. Hvis du har brug for hjælp til at gøre dette, er selvstudiet den bedste vej at gå.
Jeg foreslår, at du kører nogle af eksemplerne for at sikre, at dit RGB -panel fungerer, før du fortsætter. Jeg anbefaler eksemplet "plasma_32x32", da det er ganske fantastisk!
Vigtig note: Jeg fandt ud af, at hvis jeg tændte for Arduino, før jeg tilsluttede 5V forsyningen til matricen, ville matrixen lyse svagt. Det ser ud til, at matricen forsøger at trække strøm fra Arduino, og det er bestemt ikke godt for det! Så for at undgå overbelastning af Arduino skal du altid tænde for matrixen, før du tænder for Arduino!
Trin 6: Indlæs Matrix -scanningskoden
Anden pris i Arduino -konkurrencen 2019
Anbefalede:
Brug en trinmotor som en roterende encoder: 9 trin (med billeder)
Brug en trinmotor som roterende encoder: Rotary encoders er gode til brug i mikrokontrollerprojekter som inputenhed, men deres ydeevne er ikke særlig jævn og tilfredsstillende. Da jeg havde mange ekstra stepper motorer rundt, besluttede jeg mig for at give dem et formål. Så hvis du har noget stepper
Brug smartphone som ikke -kontakttermometer / bærbart termometer: 8 trin (med billeder)
Brug Smartphone som kontaktfrit termometer / bærbart termometer: Måling af kropstemperatur med berøringsfri / kontaktløs som en termopistol. Jeg skabte dette projekt, fordi Thermo Gun nu er meget dyrt, så jeg må finde et alternativ til at lave en DIY. Og formålet er at lave med lavbudget version.SuppliesMLX90614Ardu
Keytar Hero (Brug af en Wii Guitar Controller som en synthesizer): 7 trin (med billeder)
Keytar Hero (Brug af en Wii Guitar Controller som en synthesizer): Guitar Hero -spillene var alle raseri for et dusin år siden, så der er sikkert en masse gamle guitarcontrollere, der ligger og samler støv. De har mange knapper, knapper og håndtag, så hvorfor ikke bruge dem igen? Guitarkontrollen
Brug af PSP som computer -joystick og derefter kontrollere din computer med PSP: 5 trin (med billeder)
Brug af PSP som computer joystick og derefter styring af din computer med PSP: Du kan gøre mange fede ting med PSP homebrew, og i denne instruktive vil jeg lære dig, hvordan du bruger din PSP som et joystick til at spille spil, men der er også et program, der giver dig mulighed for at bruge dit joystick som din mus. Her er materien
Sådan bruges Wiimote som computermus Brug af stearinlys som sensor !!: 3 trin
Sådan bruges Wiimote som computermus Brug af stearinlys som sensor !!: Denne vejledning viser dig, hvordan du forbinder din Wii -fjernbetjening (Wiimote) til din pc og bruger den som en mus