Cuprins:

Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch: 11 pași
Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch: 11 pași

Video: Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch: 11 pași

Video: Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch: 11 pași
Video: Cum sa faci o LAMPA LED pentru acvariu și DESPRE LUMINA IN GENERAL 2024, Noiembrie
Anonim
Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch
Ciclează un LED RGB prin spectrul de culori folosind un Raspberry Pi 2 și Scratch

Note de actualizare Joi, 25 februarie 2016: Am îmbunătățit programul Scratch și mi-am reproiectat instrucțiunile.

Bună băieți, cu acest proiect am vrut să folosesc Scratch pentru a circula un LED RGB prin spectrul de culori.

Există o mulțime de proiecte care fac acest lucru cu Arduino, așa că am fost curios să văd dacă aș putea obține un rezultat decent cu Raspberry Pi.

Prima mea încercare la acest instructable nu a fost foarte bună, așa că am făcut ceva mai multe cercetări și cred că am ceva care funcționează mai bine. Când mă uitam la câteva proiecte Arduino pentru a încerca să înțeleg unde am greșit în programul meu original, am dat peste un script Arduino absolut excelent, la care vă voi lega la final. Prietenul meu Andrew și cu mine am petrecut după-amiaza transformându-l în Scratch. Am făcut tot posibilul cu el și sper să încercați.

Acest proiect este o continuare a instrucțiunii mele despre modificarea luminozității unui LED folosind butoane și Scratch pe care le puteți găsi aici:

www.instructables.com/id/PWM-Based-LED-Cont…

Link către schița originală Arduino S-am bazat pe programul meu Scratch pe:

www.arduino.cc/en/Tutorial/DimmingLEDs autorul Clay Shirky

Pasul 1: Colectați împreună lucrurile de care veți avea nevoie pentru acest proiect

Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect
Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect
Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect
Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect
Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect
Colectând împreună lucrurile de care veți avea nevoie pentru acest proiect

Componente de care veți avea nevoie:

Un Raspberry Pi cu un sistem de operare Raspian și conexiune la internet

1 x panou de pâine

1 x LED RGB (catod comun)

3 x rezistențe de 330 ohm (portocaliu maro portocaliu)

4 x cabluri de masă / mamă

1 x cablu pentru placa de masă / masculin (sau un cablu mic jumper cu un singur nucleu, dacă aveți unul)

Pasul 2: Înțelegerea a ceea ce fac picioarele de pe LED-ul RGB

Înțelegerea a ceea ce fac picioarele de pe LED-ul RGB
Înțelegerea a ceea ce fac picioarele de pe LED-ul RGB

Luați LED-ul RGB și uitați-vă la picioare, veți observa că un picior este mai lung decât toate celelalte. Orientează LED-ul astfel încât acest picior cel mai lung să fie la stânga.

Pinul 1 este folosit pentru a face LED-ul să strălucească în ROȘU

Pinul 2 este pinul de la sol

Pinul 3 face ca LED-ul să strălucească VERZ

Pinul 4 face LED-ul să strălucească ALBASTRU

LED-ul RGB pe care îl folosesc are un catod comun, ceea ce înseamnă practic că îi conectați piciorul de masă la un pin Raspberry Pi pentru a-l face să funcționeze.

Pasul 3: Introducerea rezistențelor de 330 Ohm și a cablului jumperului de masă în placa de panouri

Introducerea rezistențelor de 330 Ohm și a cablului jumperului de masă în placa de panouri
Introducerea rezistențelor de 330 Ohm și a cablului jumperului de masă în placa de panouri

Pentru a menține lucrurile ușor de văzut pe diagramă, putem plasa rezistențele și cablul de masă acolo unde trebuie să fie mai întâi. Rezistoarele nu au polaritate, deci nu contează în ce direcție merg.

Notă: De ce avem nevoie de trei rezistențe pentru un LED?

Gândiți-vă la un LED RGB ca la 3 LED-uri diferite grupate într-unul singur. Dacă am avea 3 LED-uri individuale într-un circuit, am folosi un rezistor pentru fiecare și, așadar, avem nevoie de un rezistor pentru fiecare culoare a LED-ului RGB.

Pasul 4: Adăugarea LED-ului la circuitul nostru

Adăugarea LED-ului la circuitul nostru
Adăugarea LED-ului la circuitul nostru
Adăugarea LED-ului la circuitul nostru
Adăugarea LED-ului la circuitul nostru

Acum avem rezistențele și cablul de împământare la locul lor, putem instala LED-ul nostru în circuitul panoului. Orientează LED-ul astfel încât piciorul cel mai lung să fie la stânga.

Împărțiți ușor picioarele puțin pentru a le permite să se conecteze la panou, asigurându-vă că fiecare picior se află pe aceeași linie ca un rezistor corespunzător.

Cel mai lung picior (piciorul 2) trebuie aliniat cu cablul negru de masă.

Pasul 5: Atașarea cablurilor la placa de pâine Partea 1: Conectarea la sol

Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol
Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol
Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol
Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol
Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol
Atașarea cablurilor la placa de bucăți Partea 1: Conectarea la sol

Mai întâi să conectăm solul de la Raspberry Pi la piciorul de la sol de pe LED.

În diagrama mea am conectat cablul tată / mamă de la pinul 6 de pe Raspberry GPIO la șina de masă a panoului pentru a conecta piciorul de masă al LED-ului la Raspberry Pi.

Cardul de referință vă arată aspectul pinului pentru Raspberry Pi GPIO. GPIO-ul cu 40 de pini din dreapta imaginii este pentru Raspberry Pi 2, pe care îl folosesc pentru a face acest proiect.

Pasul 6: Atașarea cablurilor la placa de pâine Partea 2: Conectarea piciorului cu LED roșu

Atașarea cablurilor la placa de bucăți Partea 2: Conectarea piciorului cu LED roșu
Atașarea cablurilor la placa de bucăți Partea 2: Conectarea piciorului cu LED roșu
Atașarea cablurilor la placa de pâine Partea 2: Conectarea piciorului cu LED roșu
Atașarea cablurilor la placa de pâine Partea 2: Conectarea piciorului cu LED roșu
Atașarea cablurilor la placa de pâine Partea 2: Conectarea piciorului cu LED roșu
Atașarea cablurilor la placa de pâine Partea 2: Conectarea piciorului cu LED roșu

Împingeți capătul tată al cablului în orificiul de deasupra rezistorului din stânga și împingeți capătul tată al cablului pe GPIO17 (pin11) de pe Raspberry Pi.

Cardul de referință pentru pinii GPIO vă va ajuta să vă ghidați la pinul corect.

Pasul 7: Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde

Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde
Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde
Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde
Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde
Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde
Atașarea cablurilor la placa de bucăți Partea 3: Conectarea piciorului LED verde

Împingeți capătul tată al cablului în orificiul de deasupra rezistorului din mijloc și împingeți capătul tată al cablului pe GPIO18 (pin12) de pe Raspberry Pi.

Cardul de referință pentru pinii GPIO vă va ajuta să vă ghidați la pinul corect.

Pasul 8: Atașarea cablurilor la placa de pâine Partea 4: Conectarea piciorului LED albastru

Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru
Atașarea cablurilor la placa de bucăți Partea 4: Conectarea piciorului LED albastru

Împingeți capătul tată al cablului în gaura de deasupra rezistorului din dreapta și împingeți capătul tată al cablului pe GPIO27 (pin13) de pe Raspberry Pi.

Cardul de referință pentru pinii GPIO vă va ajuta să vă ghidați la pinul corect.

Pasul 9: Programare în Scratch: Circuit Check

Programare în Scratch: Circuit Check
Programare în Scratch: Circuit Check
Programare în Scratch: Circuit Check
Programare în Scratch: Circuit Check
Programare în Scratch: Circuit Check
Programare în Scratch: Circuit Check

Când am conectat acest proiect pentru prima dată, am fost puțin neglijent și mi-am amestecat cablurile de culoare, ceea ce însemna că atunci când am vrut să apară roșu, a apărut verde, așa că am scris un program simplu pentru a verifica dacă totul a fost conectat corect.

Testul LED este controlat de 3 perechi de taste

A și Z controlează RED, A pornește roșu, Z oprește roșu

Controlul S și X VERDE, S pornește verde, X se oprește verde

Controlul D și C ALBASTRU, D pornește albastru, C oprește albastru

Setarea unui pin la înălțime face ca LED-ul să se aprindă, setându-l la scăzut, LED-ul se stinge.

Descărcați programul și testați circuitul dacă doriți să vă asigurați că este conectat corect.

Pasul 10: Programare în Scratch: Ce am vrut să fac cu LED-ul RGB

Programare în zgârieturi: ce am vrut să fac cu LED-ul RGB
Programare în zgârieturi: ce am vrut să fac cu LED-ul RGB

Programarea în Scratch este o experiență plăcută. Are o interfață de clic și glisare și este destul de intuitivă. Deși a fost creat în primul rând pentru a introduce copiii în programare, de fapt cred că este un mediu de programare destul de util, așa cum cred că este arătat în codul care controlează LED-ul din proiectul meu.

Așadar, iată ce am vrut să se întâmple:

Schimbările de culoare se vor face în trei etape:

În prima fază începem cu roșu la maxim și verde și albastru setate la un nivel foarte mic.

Apoi am început să reducem luminozitatea roșie cu -1, în timp ce creștem luminozitatea verde cu 1.

Am folosit un contor de bucle pentru a limita de câte ori s-a întâmplat acest lucru.

Odată ce contorul buclei a ajuns la 255 am început a doua fază.

În a doua fază, verdele va fi la maxim, roșu și albastru setat la un nivel scăzut.

Reducem luminozitatea verde cu -1, în timp ce creștem luminozitatea albastrelor cu 1.

Contorul nostru de buclă pentru a doua fază a fost setat la 509.

Odată ce a ajuns la 509, vom începe faza 3.

În faza a treia, albastrul este la luminozitate maximă, iar verde și roșu la niveluri scăzute.

Începem să reducem luminozitatea albastră cu -1, în timp ce creștem luminozitatea roșie cu 1.

Odată ce contorul de buclă a ajuns la 763, ciclul va începe din nou în faza 1.

Avem trei variabile redVal, greenVal și blueVal pentru a menține valorile nivelului de luminozitate al fiecărei culori și aceste valori sunt apoi trimise către pinii GPIO corecți pentru a alimenta picioarele LED-urilor pentru a seta valoarea luminozității fiecărei culori, ceea ce, la rândul nostru, ne oferă amestecul de culori pe care îl dorim.

Și asta este încercarea mea de a parcurge spectrul de culori folosind un LED RGB și Scratch.

Dacă aveți un Arduino și rulați schița pe care am legat-o, care m-a inspirat să scriu versiunea Scratch, veți vedea că nu există deloc pâlpâire de culoare. Nu sunt pe deplin sigur de ce versiunea Scratch pâlpâie atât de mult. Bănuiesc că Arduino este mai bun în gestionarea PWM, dar dacă vedeți ceva în codul meu care trebuie îmbunătățit, aș fi cu adevărat recunoscător dacă ați lua timp să-mi spuneți.

Mulțumesc că mi-ai citit instructivul și sper să ai o zi minunată!

Pasul 11: Captură ecran a programului Scratch

Captură ecran a programului Scratch
Captură ecran a programului Scratch

Dacă doriți să vă încercați să o programați singur, iată o privire atentă asupra aspectului.

Recomandat: