INHOUDSOPGAWE:

42 RGB LED Pixel Art Painting: 5 stappe
42 RGB LED Pixel Art Painting: 5 stappe

Video: 42 RGB LED Pixel Art Painting: 5 stappe

Video: 42 RGB LED Pixel Art Painting: 5 stappe
Video: Lukas Graham - 7 Years [Official Music Video] 2024, Julie
Anonim
42 RGB LED Pixel Art -skilderye
42 RGB LED Pixel Art -skilderye

Haai, Dus, vir 'n skoolopdrag genaamd 'As dit dan is', moes ek 'n interaktiewe // iets // maak met 'n Arduino Uno -starterkit (en wat u ook al wou koop). Aangesien ek 'n kuns-/tegnologie -studie doen, wou ek 'n kombinasie van albei (kuns en tegnologie) maak. Ek het gedink ek sal 'n skildery maak wat bestaan uit soveel RGB -LED's as wat ek op my Arduino kan pas en die speler/kunstenaar met die hand deur die RGB -LED's laat gaan en 'n kleur kies. Op hierdie manier kan hulle hul eie "pixel art" maak!

Stap 1: 'n bietjie agtergrondinligting en teorie

Goed, laat ons nie om die bos slaan nie. As u hierdie projek tot lewe wil bring: dit is moeilik. Dit het my baie ure geneem om uit te vind/te leer wat ek moet doen, en nog meer om dit werklik te bereik, maar as u regtig 'n boks met draad wil hê wat baie klein 'skilderye' kan maak, sal ek u leer hoe.

Dus, eerste dinge eerste. Ons wil soveel moontlik LED's/RGB -LED's op ons Arduino hê. Hoe meer (RGB) LED's u aansluit, hoe meer gedetailleerd kan u 'skildery' maak (10x10 pixels gee u meer ruimte as 2x2 regs). Ek veronderstel dat daar meer maniere is om baie (RGB) LED's op u 13 digitale penne te kry (dinge soos 'n skofregister), maar ek het 'n metode genaamd 'Charlieplexing' gebruik. Ek sal skakel na 'n instruksies wat my gehelp het om hierdie konsep te verstaan (ernstig, hulle verduidelik dit baie goed), maar ek gee u ook die vinnige weergawe hier. Charlieplexing gaan soos volg:

Jy sit 'n LED tussen pen 1 en pen 2, as jy pen 1 op HOOG stel en 2 op LAAG, sal die sirkel glad verloop en die LED sal aanskakel. Basiese beginsels. Nou, u heg nog 'n LED aan, maar draai om. Die lang punt is op die 2 en die kort punt op pen 1. As u nou pen 2 na HOOG draai en pen 1 na LAAG, sal u 2de LED aanskakel en u eerste bly af, want die vloei sal verkeerd wees. Nou kan u 2 LED's op 2 penne heg. As ons die 3de pen in die mengsel kry, kan u hierdie truuk tussen 1 en 2, 1 en 3 en 2 en 3. doen. Dit is 6 LED's. Dit gaan voort, 5 penne gee ons (2 + 4 + 6 + 8) 20 LED's. Deur al 13 digitale penne te gebruik, bied ons 156 opsies. Dit is 156 LED's wat u individueel kan aan- en uitskakel.

(oké, vir julle wat wonder. Ja, as dit baie is, is dit onmoontlik om terselfdertyd aan te trek, maar moenie bekommerd wees nie, die arduino kan so vinnig tussen jou LED's skakel, sodat die menslike oog nie die flikkering kan sien nie)

(Beter en meer gedetailleerde verduideliking, met foto's)

Goed, met baie moeite as dit by die bedrading kom (ek sal dit later aanraak), kan ons nogal 'n rooster van LED's maak, maar laat ons maar kyk. LED's is vreeslik vervelig. Hoe kan 'n mens 'n prentjie maak met slegs 2 kleure? Ek veronderstel jy kan, maar dit is koeler as jy meer kleure het om van te kies? reg. Ons draai dus na die RGB -LED's!

RGB LED's is basies 3 LED's in 1. Hulle deel 'n gemeenskaplike katode of anode (waar die krag in of uit gaan) en die ander 3 "bene" is jou Rooi Groen en Blou LED. As ons dit in gedagte hou, ja, ons kan dit ook met mekaar verdeel! Elke RGB -LED tel 3 gewone LED's. Op hierdie manier kan u hulle steeds individueel aan en uitskakel en koel kleure skep om van te kies! Die enigste nadeel is dat dit dinge baie moeiliker maak, aangesien u drie keer soveel LED's moet karteer/beplan en bedraad as wat u oorspronklik moes doen.

Ek het 42 RGB LED's op 13 penne gebruik. Dit is 126 gewone LED's … nogal die nommer. Laat ek jou vertel hoe ek dit gedoen het.

Stap 2: Beplanning

Beplanning
Beplanning

Ja, hierdie stap is redelik maklik sodra u die teorie agter wat u doen, verstaan. U skryf basies al u LED's uit en beplan watter speld na watter "been" van watter RGB LED moet gaan, sodat u al u opsies dek. Ek het 'n prentjie van my beplanning aangeheg; gebruik dit gerus ook (ek het nie alle beskikbare opsies gebruik nie, aangesien ek "slegs" 126 verbindings uit die 156 nodig gehad het.).

Dit is belangrik om dit op papier te kry, u sal dit later nodig hê om te kodeer. As u dit nie uitskryf nie en 1 verbinding deurmekaar raak, werk die kode nie vir die LED nie.

Stap 3: Die kode

Goed, so as u reeds 'n idee het hoe u 2 RGB -LED's soos hierdie op 2 penne kan aansluit: Gaan voort! Dit is lekker om die kode na te gaan, maar ek verseker u dat dit werk! Ek het soveel moontlik "skoon" kodering probeer doen (u kan dit ook met skakelaars in skakelaars regkry, maar dit is net 'n groot gedoe dat u al u kode x42 neerskryf, dit het my laat besef dat daar waarskynlik 'n beter manier).

Die doel van die kode is die volgende. U begin by LED1. Met knoppie 1 kan u na die volgende LED gaan, maar u vorige LED bly aan. Met knop 2 kan u teruggaan na die vorige LED, met knoppie 3 kan u die kleur verander. Die huidige geselekteerde LED knip, sodat u kan sien watter LED 'gekies' is.

Om dit te bereik, het ek met skikkings gewerk. Ek het 'n LED -klas geskep wat die inligting wat u tydens die beplanningsfase neergeskryf het, gebruik om te sien watter pen dit benodig om 'n sekere kleur te skep. Ek plaas hulle almal in 'n skikking en ek laat die arduino deur die LED -skyfie loop om te bepaal watter een is en deur die kleurreeks om te bepaal watter kleur gekies is (die kleur word bepaal deur die skakelaar waarmee 7 kleure gekies kan word). Die knipper word gereguleer deur 'n if-verklaring.

Die kode is aangeheg, aflaai en gebruik dit gerus. Die kommentaarafdeling is oop vir vrae as daar iets is wat u nie verstaan nie, maar u kan dit basies kopieer!

Stap 4: Die moeilikste deel

Die moeilikste deel
Die moeilikste deel
Die moeilikste deel
Die moeilikste deel

So nou het u 'n idee, 'n werkende kode … net nie die werklike produk nie. Dit is verreweg die verskriklikste deel van hierdie projek, en ek raai u aan om dit nie ligtelik op te neem nie. Onthou u al die verskillende bene wat in dieselfde pen eindig? nou ja … jy moet jou rooster van LED's maak, verbind dan elke been met elke ander been wat na dieselfde pen moet gaan, en koppel dit dan aan die pen. Dit is verreweg die moeilikste en myne het ook nie 100% perfek uitgekom nie, maar as u goed is om te soldeer, het u moontlik 'n kans.

Ek sit 'n ry RGB LED's op 'n slag en verbind 'n koperdraad aan elke been (ek beveel koperdraad met omhulsel/omhulsel aan. Myne was te dik en dit het my baie hartseer veroorsaak). Pasop dat geen twee bene of drade aan mekaar raak nie! verbind dan eenvoudig alle drade wat na dieselfde pen moet gaan, en koppel dit dan aan 'n weerstand en koppel dit aan die pen. Ek is seker daar is 'n 'veiliger' manier om dit te doen, maar ek is seker dat 'n mens in draad sou verdrink terwyl jy probeer en eerlik … jou broodbord is net so groot!

(Ek het 'n tekening bygevoeg wat hierdie stap kan vereenvoudig. Dit vertel jou watter been na watter pen moet gaan om my kode presies te volg.)

Dit het my vier hele dae se werk geneem, maar nou kan elke LED (minus 3-4 wat ek opgedrink het) afsonderlik aangeskakel word!

dan hoef u net 'n paar knoppies in te draai en dit te doen! U eie Pixel Art -skildery!

Hierdie man het ook 'n voorbeeld van bedrading gemaak, dit is baie nuttig

Stap 5: Gloat. Absoluut Gloat

As u 'n voorgereg is (soos ek) en u daarin geslaag het om iets soortgelyk aan hierdie rotte te maak, maak dit 'n draad; bly. Jy het regtig goed gedoen!

As u enige vrae/kommentaar het, laat dit dan hieronder, ek sal probeer om te help as ek kan!

Aanbeveel: