Spalvos keitimo šviesos diodas: 13 žingsnių
Spalvos keitimo šviesos diodas: 13 žingsnių
Anonim
Spalvos keitimo šviesos diodas
Spalvos keitimo šviesos diodas
Spalvos keitimo šviesos diodas
Spalvos keitimo šviesos diodas
Spalvos keitimo šviesos diodas
Spalvos keitimo šviesos diodas

Man buvo pavesta sukurti prototipą naudojant tam tikrą jutiklį, kad būtų sukurta išvestis. Aš nusprendžiau naudoti fotoelementą, kuris matuoja šviesos kiekį aplinkoje, ir RGB šviesos diodą kaip išvestį. Žinojau, kad noriu įtraukti LED galimybę rodyti įvairias spalvas, nes maniau, kad būtų smagu. Jei galėčiau sukurti bet kokią norimą produkciją, supratau, kad ji gali būti kuo spalvingesnė.

Įvertinti kainą:

37 USD - „Elegoo Super Starter“rinkinys (apima visus reikmenis)

53 USD - norėdami nusipirkti visas reikmenis atskirai

Naudingos nuorodos:

RGB šviesos diodas -

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

Fotoelementas -

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

„Arduino“programinė įranga -

www.arduino.cc/en/software

„Elegoo Super Start“rinkinys -

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

Prekės

- 1 RGB šviesos diodas

- 1 fotoelementas (dar žinomas kaip fotorezistorius)

- 1 „Arduino UNO“lenta

- 1 duonos lenta

- 1 „Arduino“USB kabelis

- 7 jungiamieji laidai

- 3 220 omų rezistoriai

- 1 10k omo rezistorius

- „Arduino“programinė įranga (nemokamai atsisiųsti)

Neprivaloma

- pora adatinių replių

1 veiksmas: nustatykite šviesos diodą „Breadboard“

„Breadboard“nustatykite šviesos diodą
„Breadboard“nustatykite šviesos diodą
„Breadboard“nustatykite šviesos diodą
„Breadboard“nustatykite šviesos diodą
„Breadboard“nustatykite šviesos diodą
„Breadboard“nustatykite šviesos diodą

Pirmiausia RGB šviesos diodas turi būti tinkamai nustatytas ant duonos lentos

Įdėkite šviesos diodą su kiekviena iš keturių kojų į atskiras to paties stulpelio angas (pažymėtas raidėmis). Ilgiausia koja turėtų būti antroji koja iš viršaus.

Ilgiausios kojos eilutėje (pažymėta skaičiais) prijunkite vieną trumpiklio laido galą.

Kiekvienai iš trijų trumpesnių kojų uždėkite vieną 220 omų rezistorių. Kiekvienas rezistorius turi turėti abi kojas toje pačioje eilutėje kaip ir LED kojos. Čia aš naudoju adatines reples, nes rezistorių kojas gali būti sunku prijungti rankomis.

Prijunkite tris trumpiklius, esančius rezistoriaus pusėje priešais šviesos diodą. Šiose trijose eilutėse turėtų būti vienas jungiamasis laidas, vienas rezistorius ir viena šviesos diodo kojelė.

2 veiksmas: nustatykite „Arduino“šviesos diodą

Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą
Nustatykite „Arduino“šviesos diodą

Dabar, kai šviesos diodas tinkamai sumontuotas ant duonos lentos, jis turi būti prijungtas prie „Arduino“.

Pirmasis trumpiklis, prijungtas prie ilgiausios kojos (turėtų būti antroji šviesos diodo eilutė), turi būti prijungtas prie žemės, „Arduino“pažymėtas „GND“.

Kiti trys trumpieji laidai mažėjančia tvarka turi būti prijungti prie 11, 10 ir 9 prievadų. Viršutinės eilės laidas turi būti prijungtas prie 11, kitas laidas žemyn (turėtų būti trečioji eilutė) jungiasi prie 10, o paskutinis laidas jungiasi prie 9. Šie trys laidai turi eiti lygiagrečiai vienas kitam ir nesutapti.

3 veiksmas: nustatykite fotoelementą „Breadboard“

Nustatykite fotoelementą „Breadboard“
Nustatykite fotoelementą „Breadboard“
„Breadboard“nustatykite fotoelementą
„Breadboard“nustatykite fotoelementą
„Breadboard“nustatykite fotoelementą
„Breadboard“nustatykite fotoelementą

Kad šviesos diodas galėtų reaguoti į aplinkos ryškumą, jis turi gauti informaciją iš jutiklio.

Prijunkite fotoelementą prie duonos lentos abiem kojomis tame pačiame stulpelyje, panašiai kaip prijungtas šviesos diodas.

Prijunkite 10 kΩ rezistorių viena koja toje pačioje eilutėje kaip ir apatinė fotoelemento kojelė. Prijunkite antrąją rezistoriaus koją toliau toje pačioje kolonoje.

4 veiksmas: prijunkite fotoelementą prie „Arduino“

Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“
Prijunkite fotoelementą prie „Arduino“

Įkiškite vieną jungiamąjį laidą toje pačioje eilutėje kaip ir 10k omų rezistorius, bet ne toje pačioje eilutėje fotoelementą.

Prijunkite kitą šio jungiamojo laido galą prie „Arduino“įžeminimo (GND).

Prijunkite du skirtingus jungiamuosius laidus, vieną toje pačioje eilutėje kaip ir kiekviena fotoelemento kojelė.

Prijunkite laidą, esantį toliausiai iki viršaus, prie „Arduino“5 V prievado.

Prijunkite laidą, esantį toliausiai iki apačios, prie „Arduino“A0 prievado.

5 veiksmas: prijunkite „Arduino“

Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“
Prijunkite „Arduino“

Dabar, kai duonos lenta yra nustatyta ir prijungta prie „Arduino“, naudokite USB jungtį, kad prijungtumėte „Arduino“prie kompiuterio.

6 veiksmas: paleiskite kodą

Pradėkite savo kodą
Pradėkite savo kodą
Pradėkite savo kodą
Pradėkite savo kodą

Naudodami „Arduino“programą sukurkite naują eskizą.

Komentare parašykite savo vardą, tam tikrą informaciją apie eskizą ir susiekite visus naudojamus išteklius.

Virš tuštumos sąrankos nustatykite visuotinius kintamuosius. Nedvejodami nukopijuokite ir įklijuokite žemiau esantį kodą. Kai rašote kodą, tam tikros dalys taps skirtingų spalvų. Tai turėtų įvykti.

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

Jei pastebėjote, šiems kintamiesiems priskirti skaičiai atitinka vietą, kurioje yra prijungti laidai „Arduino“plokštėje.

7 žingsnis: panaikinkite sąranką

Tuščios sąrankos
Tuščios sąrankos

Nustatykite RGB šviesos diodą kaip išvestį.

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

Norėdami peržiūrėti fotoelemento rodmenis, paleiskite serijinį monitorių.

Serial.begin (9600); Serial.println („Serijinis monitorius paleistas“); uždelsimas (500); Serial.println ("."); uždelsimas (500); Serial.println ("."); uždelsimas (500); Serial.println ("."); vėlavimas (500);

Įsitikinkite, kad tuštumos sąrankos kodas yra poroje garbanotų skliaustų {}

8 žingsnis: Tuščia kilpa

Tuščia kilpa
Tuščia kilpa
Tuščia kilpa
Tuščia kilpa

Parašykite tuštumos ciklo sekcijos kodą.

Pirmame paveikslėlyje esantis kodas atspausdina fotoelemento rodmenis atskirose eilutėse. Tai palengvina skaitymą.

int reikšmė = analogRead (A0); photocellReading = analogRead (fotoelementas); Serial.println (photocellReading); vėlavimas (40);

Antrame paveikslėlyje esantis kodas atitinka tam tikras skaitymo reikšmes ir tai, kokia spalva bus rodomas šviesos diodas.

if (fotoelemento skaitymas 0) {RGB_color (255, 0, 0); // Raudona} if (fotoelementasSkaitymas 99) {RGB_color (255, 255, 0); // Geltona} if (fotoelementasSkaitymas 199) {RGB_color (0, 255, 0); // Žalia} if (fotoelemento skaitymas 299) {RGB_color (0, 0, 255); // Mėlyna} if (fotoelemento skaitymas 399) {RGB_color (255, 0, 255); // purpurinė}

Pakeitus RGB_color skaičių reikšmes (0s ir 255s), bus pakeista rodoma spalva. Tai spalvos, su kuriomis aš pasirinkau, tačiau nedvejodami jas pakeiskite arba pakeiskite, kaip jums patinka.

Dar kartą patikrinkite, ar tuštumos kilpos dalis yra garbanotų skliaustų poroje {}

9 veiksmas: spalvų keitimas

Spalvų keitimas
Spalvų keitimas

Tai yra dar keletas spalvų, kurias galite pasirinkti ankstesniame žingsnyje. Šį kodą naudojau kaip nuorodą savo eskizui.

10 veiksmas: galutinis RGB LED kodas

Galutinis RGB LED kodas
Galutinis RGB LED kodas

Eskizo pabaigoje, už tuštumos kilpos skyriaus, įterpkite šį kodą, kad nustatytumėte, kuris „Arduino“prievadas perduoda raudonos, žalios ir žalios šviesos reikšmes.

void RGB_color (int red_light_value, int green_light_value, int blue_light_value) {analogWrite (red_light_pin, red_light_value); „analogWrite“(žalios šviesos_tapas, žalios šviesos_vertybė); analogWrite (mėlyna_šviesos_kaištis, mėlyna_šviesos_vertybė); }

Kaip ir tuštumos sąrankos ir tuštumos ciklo sekcijose, įsitikinkite, kad ši skiltis yra garbanotų skliaustų poroje {}

11 žingsnis: išbandykite šviesas

Išbandykite šviesas!
Išbandykite šviesas!
Išbandykite šviesas!
Išbandykite šviesas!
Išbandykite šviesas!
Išbandykite šviesas!

Įkelkite kodą į „Arduino“lentą paspausdami programos įkėlimo mygtuką. Jei tai padarėte teisingai, šviesos diodas turėtų rodyti spalvą, priklausomai nuo to, kiek šviesos yra aplinkoje.

Raudona yra tamsiausia aplinka, mažiausias fotoelemento rodmuo.

Geltona yra šiek tiek šviesesnė aplinka/didesnis fotoelementų rodmuo. Paveikslėlyje jis atrodo žalsvas, bet asmeniškai žibėjo.

Kitos trys spalvos - žalia, mėlyna ir rausvai raudona - atitinka vis aukštesnius fotoelemento rodmenis.

12 veiksmas: trikčių šalinimas

Problemų sprendimas
Problemų sprendimas

Jei spalvos nesikeičia arba norint, kad spalvos pasikeistų, reikia labai pakeisti, patikrinkite fotoelementų rodmenis serijiniame monitoriuje. Kiekviena aplinka turi skirtingą šviesos lygį, todėl svarbu, kad kodas tai atspindėtų.

„Arduino“programos viršuje spustelėkite Įrankiai -> Spustelėkite „Serial Monitor“.

Turėtų pasirodyti langas, kuriame būtų rodomas nuolatinis skaičių sąrašas. Sureguliuokite „if“teiginių iš „Void Loop“žingsnio numerius.

13 žingsnis: galutinis produktas

Galutinis produktas
Galutinis produktas

Atlikdami visus šiuos veiksmus, turėtumėte gauti šviesą, kuri keičia spalvas, priklausomai nuo aplinkos ryškumo.

Man, esant vidutiniam kambario šviesumui, šviesa šviečia žaliai, tačiau galiu lengvai pakeisti spalvą arba uždengdamas fotoelementą, arba padidindamas šviesos kiekį.