Innholdsfortegnelse:
- Trinn 1: Samle sammen tingene du trenger for dette prosjektet
- Trinn 2: Forstå hva bena på RGB LED gjør
- Trinn 3: Sett inn 330 Ohm -motstandene og jordkabelkabelen i brødbrettet
- Trinn 4: Legge til LED i vår krets
- Trinn 5: Fest kablene til brødbrettet Del 1: Koble til bakken
- Trinn 6: Fest kablene til brødbrettet Del 2: Koble til det røde LED -beinet
- Trinn 7: Fest kablene til brødbrettet Del 3: Koble til det grønne LED -beinet
- Trinn 8: Fest kablene til brødbrettet Del 4: Koble til det blå LED -beinet
- Trinn 9: Programmering i Scratch: Circuit Check
- Trinn 10: Programmering i Scratch: Hva jeg ønsket å gjøre med RGB LED
- Trinn 11: Skjermopptak av skrapeprogrammet
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Oppdateringsnotater torsdag 25. februar 2016: Jeg har forbedret Scratch -programmet og redesignet min instruerbare.
Hei folkens, med dette prosjektet ønsket jeg å bruke Scratch til å sykle en RGB LED gjennom fargespekteret.
Det er mange prosjekter som gjør dette med Arduino, så jeg var nysgjerrig på å se om jeg kunne få et anstendig resultat med Raspberry Pi.
Mitt første forsøk på denne instruerbare var ikke veldig bra, så jeg har gjort litt mer forskning og tror jeg har noe som fungerer bedre. Da jeg så på noen Arduino -prosjekter for å prøve å forstå hvor jeg gikk galt i mitt originale program, snublet jeg over et helt utmerket Arduino -manus, som jeg vil koble deg til på slutten. Vennen min Andrew og jeg brukte ettermiddagen på å konvertere den til Scratch. Vi har gjort vårt beste med det, og jeg håper du vil prøve det.
Dette prosjektet er en oppfølging fra min instruktør om å endre lysstyrken til en LED ved hjelp av knapper og Scratch som du finner her:
www.instructables.com/id/PWM-Based-LED-Cont…
Lenke til den originale Arduino Sketch jeg baserte Scratch -programmet mitt på:
www.arduino.cc/en/Tutorial/DimmingLEDs forfatter Clay Shirky
Trinn 1: Samle sammen tingene du trenger for dette prosjektet
Komponenter du trenger:
En Raspberry Pi med et Raspian -operativsystem og internettforbindelse
1 x brødbrett
1 x RGB LED (vanlig katode)
3 x 330 ohm motstander (oransje oransje brun)
4 x mannlige/kvinnelige brødbrettkabler
1 x mannlig/mannlig brødbrettkabel (eller en liten enkeltkjerne jumperkabel hvis du har en)
Trinn 2: Forstå hva bena på RGB LED gjør
Ta din RGB LED og se på bena, du vil legge merke til at det ene benet er lengre enn alle de andre. Orienter LED -en slik at dette lengste benet er til venstre.
Pin 1 brukes til å få LED -en til å lyse RØD
Pin 2 er bakkenålen
Pin 3 får LED -en til å skinne GRØNN
Pinne 4 får LED -en til å skinne BLÅ
RGB -LED -en jeg bruker har en felles katode, som i utgangspunktet betyr at du kobler bakken til et Raspberry Pi -jordnål for å få det til å fungere.
Trinn 3: Sett inn 330 Ohm -motstandene og jordkabelkabelen i brødbrettet
For å holde ting lett å se på diagrammet kan vi plassere motstandene og jordkabelen der de må være først. Motstander har ikke polaritet, så det spiller ingen rolle hvilken vei de går.
Merk: Hvorfor trenger vi tre motstander for en LED?
Tenk på en RGB -LED som 3 forskjellige lysdioder samlet i en. Hvis vi hadde 3 individuelle lysdioder i en krets ville vi brukt en motstand for hver enkelt, og derfor trenger vi en motstand for hvert fargeben på RGB LED.
Trinn 4: Legge til LED i vår krets
Nå har vi motstandene og jordkabelen på plass, vi kan installere vår LED i brødbrettskretsen. Orienter LED -en slik at det lengste benet er til venstre.
Del bena forsiktig litt slik at de kan plugges inn i brødbrettet, og pass på at hvert ben er på samme linje som en tilsvarende motstand.
Det lengste benet (etappe 2) skal stå i linje med den svarte jordkabelen.
Trinn 5: Fest kablene til brødbrettet Del 1: Koble til bakken
La oss først koble bakken fra Raspberry Pi til bakken på LED -en.
I diagrammet har jeg koblet han/hunn -kabelen fra pin 6 på Raspberry GPIO til bakken på brødbrettet for å koble LED -bakken til Raspberry Pi.
Referansekortet viser deg pin -oppsettet for Raspberry Pi GPIO. Den 40 -pinners GPIO til høyre på bildet er for Raspberry Pi 2, som jeg bruker til å gjøre dette prosjektet.
Trinn 6: Fest kablene til brødbrettet Del 2: Koble til det røde LED -beinet
Skyv hanenden av kabelen inn i hullet like over motstanden til venstre, og skyv hunenden av kabelen på GPIO17 (pin11) på Raspberry Pi.
Referansekortet for GPIO -pinnene hjelper deg med å finne den riktige pinnen.
Trinn 7: Fest kablene til brødbrettet Del 3: Koble til det grønne LED -beinet
Skyv hanenden av kabelen inn i hullet like over motstanden i midten, og skyv hunenden av kabelen på GPIO18 (pin12) på Raspberry Pi.
Referansekortet for GPIO -pinnene hjelper deg med å finne den riktige pinnen.
Trinn 8: Fest kablene til brødbrettet Del 4: Koble til det blå LED -beinet
Skyv hanenden av kabelen inn i hullet like over motstanden til høyre, og skyv hunenden av kabelen på GPIO27 (pin13) på Raspberry Pi.
Referansekortet for GPIO -pinnene hjelper deg med å finne den riktige pinnen.
Trinn 9: Programmering i Scratch: Circuit Check
Da jeg først kablet opp dette prosjektet, var jeg litt uforsiktig og blandet sammen fargekablene mine, noe som betydde at når jeg ville at rødt skulle komme på, kom grønt i stedet, så jeg skrev et enkelt program for å bekrefte at alt var koblet riktig.
LED -testen styres av 3 par nøkler
A og Z styrer RØD, A slår rødt på, Z slår rødt av
S og X styrer GRØNN, S slår grønt på, X slår grønt av
D og C kontroll BLÅ, D slår blå på, C slår blå av
Når du setter en pinne til høy, tennes LED -en, og når den settes til lav, slås LED -en av.
Last ned programmet og test kretsen din hvis du vil være sikker på at den er ordentlig koblet til.
Trinn 10: Programmering i Scratch: Hva jeg ønsket å gjøre med RGB LED
Programmering i Scratch er en fin opplevelse. Den har et klikk og dra -grensesnitt og er ganske intuitivt. Selv om det først og fremst ble opprettet for å introdusere barn for programmering, synes jeg faktisk det er et ganske nyttig programmeringsmiljø som jeg tror er vist i koden som styrer LED -en i prosjektet mitt.
Så her er det jeg ønsket å skje:
Fargeskiftene vil bli utført i tre faser:
I den første fasen starter vi med maksimalt rødt og grønt og blått satt til et veldig lite nivå.
Vi begynte deretter å redusere rød lysstyrke med -1, mens vi økte den grønne lysstyrken med 1.
Vi brukte en sløyfeteller for å begrense hvor mange ganger dette skjedde.
Når sløyfetelleren nådde 255 startet vi den andre fasen.
I den andre fasen vil grønt være på maksimum, rødt og blått satt til et lavt nivå.
Vi senker den grønne lysstyrken med -1 mens vi øker bluesens lysstyrke med 1.
Sløyfetelleren for den andre fasen ble satt til 509.
Når den nådde 509 ville vi starte fase 3.
I fase tre er blått på maksimal lysstyrke og grønt og rødt er på lave nivåer.
Vi begynner å senke blå lysstyrke med -1 mens vi øker rød lysstyrke med 1.
Når sløyfetelleren nådde 763, begynte syklusen på nytt i fase 1.
Vi har tre variabler redVal, greenVal og blueVal for å holde verdiene for hver farges lysstyrkenivå, og disse verdiene sendes deretter ut til de riktige GPIO -pinnene for å strømme til benene på LED -lampene for å sette hver farges lysstyrkeverdi, noe som igjen gir oss fargemiksen vi ønsker.
Og det er mitt forsøk på å sykle gjennom fargespekteret ved hjelp av en RGB LED og Scratch.
Hvis du har en Arduino og du kjører skissen jeg linket som inspirerte meg til å skrive Scratch -versjonen, vil du se at det ikke er noen farge som flimrer i det hele tatt. Jeg er ikke helt sikker på hvorfor Scratch -versjonen flimrer så mye. Jeg mistenker at Arduino er bedre til å håndtere PWM, men hvis du ser noe i koden min som må forbedres, ville jeg virkelig være takknemlig hvis du tok deg tid til å fortelle meg det.
Takk for at du leser min instruktive, og jeg håper du får en fin dag!
Trinn 11: Skjermopptak av skrapeprogrammet
Hvis du vil prøve å programmere det selv, er det en nærmere titt på oppsettet.