Indholdsfortegnelse:

Brug af en LED -matrix som scanner: 8 trin (med billeder)
Brug af en LED -matrix som scanner: 8 trin (med billeder)

Video: Brug af en LED -matrix som scanner: 8 trin (med billeder)

Video: Brug af en LED -matrix som scanner: 8 trin (med billeder)
Video: POE videooptager ASECAM fiksering af PERSONER definition af en PERSON OG BIL!!! 2024, November
Anonim
Image
Image
Gør Boxy Stuff ud af forældede visitkort!
Gør Boxy Stuff ud af forældede visitkort!

Af marciotMarcioT's hjemmeside Følg mere af forfatteren:

Gør Boxy Stuff ud af forældede visitkort!
Gør Boxy Stuff ud af forældede visitkort!
DIY 2,5x til 5x Opera/koncertbriller
DIY 2,5x til 5x Opera/koncertbriller
DIY 2,5x til 5x Opera/koncertbriller
DIY 2,5x til 5x Opera/koncertbriller
Hele hjemmet trådløs vandlækagedetektor og nødvandslukningssystem
Hele hjemmet trådløs vandlækagedetektor og nødvandslukningssystem
Hele hjemmet trådløs vandlækagedetektor og nødvandslukningssystem
Hele hjemmet trådløs vandlækagedetektor og nødvandslukningssystem

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

Dele brugt i denne bygning
Dele brugt i denne bygning
Dele brugt i denne bygning
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

Tilslutning og test af fototransistoren
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

Tilslutning af Matrix -båndkablet til Arduino
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

Tilslutning af matrixen
Tilslutning af matrixen
Tilslutning af matrixen
Tilslutning af matrixen
Tilslutning af matrixen
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

Installer AdaFruit Matrix Library og test matrixen
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: