Sisällysluettelo:

LED -matriisin käyttäminen skannerina: 8 vaihetta (kuvien kanssa)
LED -matriisin käyttäminen skannerina: 8 vaihetta (kuvien kanssa)

Video: LED -matriisin käyttäminen skannerina: 8 vaihetta (kuvien kanssa)

Video: LED -matriisin käyttäminen skannerina: 8 vaihetta (kuvien kanssa)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Marraskuu
Anonim
Image
Image
Tee Boxy -tavaraa vanhentuneista käyntikorteista!
Tee Boxy -tavaraa vanhentuneista käyntikorteista!

MarcioT: n kotisivuSeuraa lisää tekijältä:

Tee Boxy -tavaraa vanhentuneista käyntikorteista!
Tee Boxy -tavaraa vanhentuneista käyntikorteista!
DIY 2,5x - 5x ooppera-/konserttilasit
DIY 2,5x - 5x ooppera-/konserttilasit
DIY 2,5x - 5x ooppera-/konserttilasit
DIY 2,5x - 5x ooppera-/konserttilasit
Koko kodin langaton vesivuototunnistin ja hätäsulkujärjestelmä
Koko kodin langaton vesivuototunnistin ja hätäsulkujärjestelmä
Koko kodin langaton vesivuototunnistin ja hätäsulkujärjestelmä
Koko kodin langaton vesivuototunnistin ja hätäsulkujärjestelmä

Tietoja: Olen harrastaja, joka on kiinnostunut avoimen lähdekoodin ohjelmistoista, 3D-tulostuksesta, tieteestä ja elektroniikasta. Käy myymälässä tai Patreon -sivulla auttamaan työtäni! Lisätietoja marciotista »

Tavalliset digitaalikamerat toimivat käyttämällä laajaa valosensorien valikoimaa valon sieppaamiseen kohteesta. Tässä kokeessa halusin nähdä, voisinko rakentaa taaksepäin suunnatun kameran: sen sijaan, että minulla olisi joukko valosensoreita, minulla on vain yksi anturi; mutta ohjaan jokaista 1 024 yksittäistä valonlähdettä 32 x 32 LED -matriisissa.

Se toimii siten, että Arduino syttyy yksi LED kerrallaan ja käyttää samalla analogista tuloa valosensorin muutosten seuraamiseen. Tämän avulla Arduino voi testata, voiko anturi "nähdä" tietyn LED -valon. Tämä prosessi toistetaan nopeasti jokaiselle 1 024 yksittäiselle LEDille nopeasti, jotta saadaan näkyvien pikselien kartta.

Jos objekti asetetaan LED -matriisin ja anturin väliin, Arduino pystyy kaappaamaan kyseisen kohteen siluetin, joka syttyy "varjoksi", kun kuvaus on valmis.

BONUS: Pienillä parannuksilla samaa koodia voidaan käyttää "digitaalisen kynän" toteuttamiseen LED -matriisiin maalaamiseen.

Vaihe 1: Tässä koonnissa käytetyt osat

Tässä koossa käytetyt osat
Tässä koossa käytetyt osat
Tässä koossa käytetyt osat
Tässä koossa käytetyt osat

Tässä projektissa käytin seuraavia komponentteja:

  • Arduino Uno leipälaudalla
  • 32x32 RGB LED -matriisi (joko AdaFruit tai Tindie)
  • 5V 4A virtalähde (AdaFruitilta)
  • Naaras DC -virtalähde, 2,1 mm: n liitin ruuviliittimeen (AdaFruit)
  • Kirkas, 3 mm: n TIL78 -valotransistori
  • Hyppyjohdot

AdaFruit myy myös Arduino -suojaa, jota voidaan käyttää hyppyjohtojen sijasta.

Koska minulla oli joitakin Tindie -hyvityksiä, sain matriisin Tindieltä, mutta AdaFruitin matriisi näyttää olevan identtinen, joten kummankin pitäisi toimia.

Valotransistori tuli vuosikymmenien vanhoista osakokoelmistani. Se oli kirkas 3 mm: n osa, joka oli merkitty TIL78: ksi. Sikäli kuin voin kertoa, tämä osa on tarkoitettu IR: lle ja siinä on joko kirkas kotelo tai tumma kotelo, joka estää näkyvän valon. Koska RGB -LED -matriisi lähettää näkyvää valoa, on käytettävä kirkasta versiota.

Tämä TIL78 näyttää olevan lopetettu, mutta luulen, että tämä projekti voitaisiin tehdä nykyaikaisilla valotransistoreilla. Jos löydät jotain toimivaa, kerro siitä minulle ja päivitän tämän ohjeen!

Vaihe 2: Kytkentä ja valotransistorin testaus

Kytkentä ja valotransistorin testaus
Kytkentä ja valotransistorin testaus

Normaalisti tarvitset vastuksen sarjaan, jossa on fototransistori tehon yli, mutta tiesin, että Arduinolla oli kyky ottaa käyttöön sisäinen vetovastus missä tahansa nastassa. Epäilin, että voisin hyödyntää sitä kytkeäksesi fototransistorin Arduinoon ilman lisäosia. Kävi ilmi, että arvaukseni oli oikea!

Käytin johtimia fototransistorin liittämiseen Arduinon GND- ja A5 -nastoihin. Tein sitten luonnoksen, joka asetti A5 -nastan INPUT_PULLUPiksi. Tämä tehdään yleensä kytkimille, mutta tässä tapauksessa se antaa virtaa valotransistorille!

#define ANTURI A5

void setup () {Serial.begin (9600); pinMode (SENSOR, INPUT_PULLUP); } void loop () {// Lue analoginen arvo jatkuvasti ja tulosta se Serial.println (analogRead (SENSOR)); }

Tämä luonnos tulostaa arvot sarjaporttiin, joka vastaa ympäristön kirkkautta. Käyttämällä kätevää "Sarjaplotteria" Arduino IDE: n "Työkalut" -valikosta, voin saada liikkuvan ympäristön valon! Kun peitän ja paljastan fototransistorin käsilläni, juoni liikkuu ylös ja alas. Kiva!

Tämä luonnos on mukava tapa tarkistaa, onko valotransistori kytketty oikealle napaisuudelle: valotransistori on herkempi, kun se kytketään yhteen suuntaan verrattuna toiseen.

Vaihe 3: Matrix -nauhakaapelin kytkeminen Arduinoon

Matrix -nauhakaapelin kytkeminen Arduinoon
Matrix -nauhakaapelin kytkeminen Arduinoon

Johdottaaksesi matriisin Arduinolle, kävin läpi tämän kätevän Adafruutin oppaan. Liitän kaavion ja pinoutit kätevyyden vuoksi asiakirjaan ja tulostin pikaopas sivun käytettäväksi samalla kun johdotin kaiken.

Varmista, että liittimen kieleke vastaa kaaviossa olevaa.

Vaihtoehtoisesti puhtaamman piirin saamiseksi voit käyttää RGB -matriisisuojaa, jonka AdaFruit myy näille paneeleille. Jos käytät suojaa, sinun on juotettava valotransistorin otsikkoon tai johtoihin.

Vaihe 4: Yhdistä matriisi

Matriisin yhdistäminen
Matriisin yhdistäminen
Matriisin yhdistäminen
Matriisin yhdistäminen
Matriisin yhdistäminen
Matriisin yhdistäminen

Ruuvasin matriisin virtajohtojen haarukan liittimet jakkisovittimeen varmistaen, että napaisuus oli oikea. Koska osa liittimistä jätettiin näkyviin, käärin koko asian sähköteipillä turvallisuuden vuoksi.

Liitin sitten virtaliittimen ja nauhakaapelin, varoen häiritsemästä hyppyjohtoja prosessissa.

Vaihe 5: Asenna AdaFruit -matriisikirjasto ja testaa matriisi

Asenna AdaFruit -matriisikirjasto ja testaa matriisi
Asenna AdaFruit -matriisikirjasto ja testaa matriisi

Sinun on asennettava "RGB -matriisipaneeli" ja AdaFruit "Adafruit GFX Library" Arduino IDE -laitteeseesi. Jos tarvitset apua tämän tekemiseen, opetusohjelma on paras tapa edetä.

Ehdotan, että suoritat joitain esimerkkejä varmistaaksesi, että RGB -paneelisi toimii ennen kuin jatkat. Suosittelen esimerkkiä "plasma_32x32", koska se on aivan mahtava!

Tärkeä huomautus: Huomasin, että jos käynnistän Arduinon ennen kuin kytken 5 V: n virtalähteen matriisiin, matriisi syttyy himmeästi. Näyttää siltä, että matriisi yrittää saada voimaa Arduinosta, eikä se varmasti ole hyväksi sille! Joten välttääksesi Arduinon ylikuormitusta, käynnistä aina matriisi ennen kuin käynnistät Arduinon!

Vaihe 6: Lataa Matrix -skannauskoodi

Toinen palkinto Arduino -kilpailussa 2019

Suositeltava: