Innholdsfortegnelse:

Fargeskiftende LED: 13 trinn
Fargeskiftende LED: 13 trinn

Video: Fargeskiftende LED: 13 trinn

Video: Fargeskiftende LED: 13 trinn
Video: SUNDAY BellaTube Live with Jamie & Nicole 2024, Juli
Anonim
Fargeskiftende LED
Fargeskiftende LED
Fargeskiftende LED
Fargeskiftende LED
Fargeskiftende LED
Fargeskiftende LED

Jeg fikk i oppgave å lage en prototype ved hjelp av en slags sensor for å generere en utgang. Jeg bestemte meg for å bruke en fotocelle, som måler mengden lys i et miljø, og en RGB LED som utgang. Jeg visste at jeg ønsket å inkorporere LEDs evne til å vise forskjellige farger, fordi jeg syntes det ville være morsomt å ha. Hvis jeg kunne lage hvilken type utgang jeg ville, tenkte jeg at jeg like godt kunne få den til å være så fargerik som mulig.

Anslått kostnad:

$ 37 - Elegoo Super Starter kit (inkluderer alle rekvisita)

$ 53 - For å kjøpe alt utstyret individuelt

Hjelpsomme linker:

RGB LED -

create.arduino.cc/projecthub/muhammad-aqib…

Fotocelle -

create.arduino.cc/projecthub/MisterBotBreak/how-to-use-a-photoresistor-46c5eb

Arduino -programvare -

www.arduino.cc/en/software

Elegoo Super Start -sett -

www.amazon.com/gp/product/B01D8KOZF4/ref=p…

Rekvisita

- 1 RGB LED

- 1 fotocelle (aka fotoresistor)

- 1 Arduino UNO -styre

- 1 brødbrett

- 1 USB -kabel for Arduino

- 7 hoppetråder

- 3 220 ohm motstander

- 1 10k ohm motstand

- Arduino -programvare (gratis å laste ned)

Valgfri

- en nåletang

Trinn 1: Sett opp LED på Breadboard

Sett opp LED på Breadboard
Sett opp LED på Breadboard
Sett opp LED på Breadboard
Sett opp LED på Breadboard
Sett opp LED på Breadboard
Sett opp LED på Breadboard

Først må RGB -LED -en være riktig satt opp på brødbrettet

Plasser lysdioden med hvert av de fire benene i separate hull i samme kolonne (angitt med bokstaver). Det lengste benet skal være det andre benet fra toppen.

I raden (angitt med tall) på det lengste benet, plugger du inn den ene enden av en startkabel.

Plasser en motstand på 220 ohm for hvert av de tre kortere benene. Hver motstand skal ha begge beina i samme rad som LED -bena. Det er her jeg ville brukt nåletangen, ettersom bena på motstandene kan være vanskelige å plugge inn for hånd.

Koble til tre jumperkabler på siden av motstanden motsatt LED -en. For disse tre radene bør det være en startkabel, en motstand og ett ben på LED -en.

Trinn 2: Sett opp LED på Arduino

Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino
Sett opp LED på Arduino

Nå som lysdioden er riktig satt opp på brødbrettet, må den kobles til Arduino.

Den første hoppetråden som er koblet til det lengste benet (bør være den andre raden i LED -en) må kobles til bakken, angitt med "GND" på Arduino.

De tre andre hoppetrådene, i synkende rekkefølge, må kobles til portene 11, 10 og 9. Ledningen i den øverste raden skal kobles til 11, den neste ledningen ned (skal være den tredje raden) kobles til 10, og den siste ledningen kobles til 9. Disse tre ledningene skal løpe parallelt med hverandre og ikke overlappe hverandre.

Trinn 3: Sett opp fotocelle på brødbrett

Sett opp fotocelle på brødbrett
Sett opp fotocelle på brødbrett
Sett opp fotocelle på brødbrett
Sett opp fotocelle på brødbrett
Sett opp fotocelle på brødbrett
Sett opp fotocelle på brødbrett

For at LED -en skal reagere på miljøets lysstyrke, må den motta informasjon fra en sensor.

Koble fotocellen til brødbrettet med begge bena i samme kolonne, på samme måte som lysdioden var plugget inn.

Plugg 10k ohm motstanden inn med ett ben i samme rad som fotocellens nederste ben. Plugg det andre benet til motstanden lenger ned i samme kolonne.

Trinn 4: Koble fotocellen til Arduino

Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino
Koble fotocelle til Arduino

Plugg inn en jumper wire i samme rad som 10k ohm motstanden, men ikke i samme rad fotocellen.

Koble den andre enden av denne startkabelen til jord (GND) på Arduino.

Koble til to forskjellige ledertråder, en i samme rad som hver av fotocellbeina.

Plugg ledningen lengst til toppen inn i 5V -porten på Arduino.

Koble ledningen lengst til bunnen til A0 -porten på Arduino.

Trinn 5: Koble til Arduino

Koble til Arduino
Koble til Arduino
Koble til Arduino
Koble til Arduino
Koble til Arduino
Koble til Arduino
Koble til Arduino
Koble til Arduino

Nå som brødbrettet er satt opp og koblet til Arduino, bruker du USB -kontakten til å koble Arduino til datamaskinen.

Trinn 6: Start koden din

Start koden din
Start koden din
Start koden din
Start koden din

Lag en ny skisse ved hjelp av Arduino -programmet.

I en kommentar skriver du navnet ditt, noen detaljer om skissen, og kobler til eventuelle ressurser du brukte.

Opprett de globale variablene over tomridsoppsettet. Kopier og lim inn koden nedenfor. Når du skriver koden, vil visse deler bli forskjellige farger. Dette skal skje.

int red_light_pin = 11; int green_light_pin = 10; int blue_light_pin = 9; int photocellReading = 0; int fotocelle = 5;

Hvis du merker det, samsvarer tallene som er tilordnet disse variablene med hvor ledningene er plugget inn på Arduino -kortet.

Trinn 7: Ugyldig oppsett

Ugyldig oppsett
Ugyldig oppsett

Etablere RGB -LED som utgang.

pinMode (red_light_pin, OUTPUT); pinMode (green_light_pin, OUTPUT); pinMode (blue_light_pin, OUTPUT);

Start seriemonitoren for å se avlesningene til fotocellen.

Serial.begin (9600); Serial.println ("Seriell skjerm har startet"); forsinkelse (500); Serial.println ("."); forsinkelse (500); Serial.println ("."); forsinkelse (500); Serial.println ("."); forsinkelse (500);

Sørg for at oppsettskoden for tomrommet finnes i et par krøllete seler {}

Trinn 8: Void Loop

Void Loop
Void Loop
Void Loop
Void Loop

Skriv koden for void loop -delen.

Koden i det første bildet skriver ut avlesningene til fotocellen på separate linjer. Dette gjør det lettere å lese.

int verdi = analogRead (A0); photocellReading = analogRead (photocell); Serial.println (photocellReading); forsinkelse (40);

Koden i det andre bildet er det som tilsvarer visse leseverdier til hvilken farge LED -en vil vise.

if (photocellReading 0) {RGB_color (255, 0, 0); // Rød} if (photocellReading 99) {RGB_color (255, 255, 0); // Gul} if (photocellReading 199) {RGB_color (0, 255, 0); // Grønn} if (photocellReading 299) {RGB_color (0, 0, 255); // Blå} if (photocellReading 399) {RGB_color (255, 0, 255); // Magenta}

Hvis du endrer tallverdiene til RGB_color (0s og 255s), endres hvilken farge som vises. Dette er fargene jeg gikk med, men du kan gjerne endre eller bytte dem som du vil.

Dobbeltsjekk at delen for hulromsløyfen er inneholdt i et par krøllete seler {}

Trinn 9: Endre farger

Endre farger
Endre farger

Dette er noen flere farger å velge mellom for forrige trinn. Jeg brukte denne koden som referanse for skissen min.

Trinn 10: Endelig RGB LED -kode

Endelig RGB LED -kode
Endelig RGB LED -kode

På slutten av skissen, utenfor delen for hulromsløyfen, setter du inn denne koden for å bestemme hvilken port på Arduino som kommuniserer verdien for rødt lys, grønt lys og grønt lys.

void RGB_color (int red_light_value, int green_light_value, int blue_light_value) {analogWrite (red_light_pin, red_light_value); analogWrite (green_light_pin, green_light_value); analogWrite (blue_light_pin, blue_light_value); }

På samme måte som med oppsettene for hulrom og hulromsløyfe, må du kontrollere at denne delen finnes i et par krøllete bukseseler {}

Trinn 11: Test lysene

Test lysene!
Test lysene!
Test lysene!
Test lysene!
Test lysene!
Test lysene!

Last opp koden til Arduino -kortet ved å trykke på opplastingsknappen i programmet. Hvis du gjorde det riktig, bør LED -en vise en farge avhengig av hvor mye lys det er i omgivelsene.

Rødt er det mørkeste miljøet, den laveste fotocellavlesningen.

Gul er et litt lysere miljø/høyere fotocelleavlesning. Det ser grått ut på bildet, men det lyste gult personlig.

De tre neste fargene, grønt, blått og magenta, samsvarer alle med trinnvis høyere avlesninger fra fotocellen.

Trinn 12: Feilsøking

Feilsøking
Feilsøking

Hvis fargene ikke endres, eller det tar ekstreme endringer før fargene endres, sjekk fotocellavlesningene i seriell skjerm. Hvert miljø har forskjellige lysnivåer, så det er viktig for koden å reflektere det.

Klikk på Verktøy øverst i Arduino -programmet -> Klikk på Serial Monitor.

Et vindu skal dukke opp som viser en pågående liste med tall. Juster tallene på if -setningene fra trinnet Void Loop.

Trinn 13: Sluttprodukt

Sluttprodukt
Sluttprodukt

Ved å gjøre alle disse trinnene, bør du ende opp med et lys som endrer farger avhengig av lysstyrken i omgivelsene.

For meg, i den gjennomsnittlige lysstyrken på rommet mitt, lyser lyset grønt, men jeg kan enkelt endre fargen ved å enten dekke fotocellen eller øke hvor mye lys det er.

Anbefalt: