Indholdsfortegnelse:

Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch: 11 trin
Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch: 11 trin

Video: Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch: 11 trin

Video: Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch: 11 trin
Video: как включить на любом ноутбуке подсветку 2024, November
Anonim
Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch
Kør en RGB -LED gennem farvespektret ved hjælp af en Raspberry Pi 2 og Scratch

Opdateringsnotater torsdag den 25. februar, 2016: Jeg har forbedret Scratch -programmet og redesignet min instruerbare.

Hej fyre, med dette projekt ville jeg bruge Scratch til at cykle en RGB LED gennem farvespektret.

Der er masser af projekter, der gør dette med Arduino, så jeg var nysgerrig efter at se, om jeg kunne få et anstændigt resultat med Raspberry Pi.

Mit første forsøg på denne instruerbare var ikke særlig godt, så jeg har undersøgt lidt mere og tror, at jeg har noget, der fungerer bedre. Da jeg kiggede på nogle Arduino -projekter for at prøve at forstå, hvor jeg gik galt i mit originale program, faldt jeg over et helt fremragende Arduino -script, som jeg vil linke dig til i slutningen. Min ven Andrew og jeg brugte eftermiddagen på at konvertere det til Scratch. Vi har gjort vores bedste med det, og jeg håber, at du vil prøve det.

Dette projekt er en opfølgning fra min instruktør om at ændre lysstyrken på en LED ved hjælp af knapper og Scratch, som du kan finde her:

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

Link til den originale Arduino Sketch jeg baserede mit Scratch -program på:

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

Trin 1: Saml de ting, du skal bruge til dette projekt

Saml de ting, du skal bruge til dette projekt
Saml de ting, du skal bruge til dette projekt
Saml de ting, du skal bruge til dette projekt
Saml de ting, du skal bruge til dette projekt
Saml de ting, du skal bruge til dette projekt
Saml de ting, du skal bruge til dette projekt

Komponenter, du skal bruge:

En Raspberry Pi med et Raspian -operativsystem og internetforbindelse

1 x brødbræt

1 x RGB LED (fælles katode)

3 x 330 ohm modstande (orange orange brun)

4 x han-/hunbrødbrætkabler

1 x han-/hanbrødbrætkabel (eller et lille enkeltkernet jumperkabel, hvis du har et)

Trin 2: Forstå, hvad benene på RGB LED gør

Forstå, hvad benene på RGB LED gør
Forstå, hvad benene på RGB LED gør

Tag din RGB LED og kig på benene, du vil bemærke, at det ene ben er længere end alle de andre. Orienter LED'en, så dette længste ben er til venstre.

Pin 1 bruges til at få LED'en til at lyse RØD

Pin 2 er den jordede pin

Pin 3 får LED'en til at lyse GRØN

Pin 4 får LED'en til at lyse BLÅ

RGB -LED'en, jeg bruger, har en fælles katode, hvilket dybest set betyder, at du forbinder dets jordben til en Raspberry Pi -jordstift for at få det til at fungere.

Trin 3: Indsætning af 330 Ohm -modstandene og jordkabelkablet i brødbrættet

Isætning af 330 Ohm modstande og jordkabel i kablet
Isætning af 330 Ohm modstande og jordkabel i kablet

For at holde tingene lette at se på diagrammet kan vi placere modstandene og jordkablet, hvor de skal være først. Modstande har ikke polaritet, så det er ligegyldigt, hvilken vej de går.

Bemærk: Hvorfor har vi brug for tre modstande til en LED?

Tænk på en RGB LED som 3 forskellige LED'er samlet i en. Hvis vi havde 3 individuelle lysdioder i et kredsløb, ville vi bruge en modstand til hver enkelt, og derfor har vi brug for en modstand for hvert farveben på RGB LED.

Trin 4: Tilføjelse af LED'en til vores kredsløb

Tilføjelse af LED'en til vores kredsløb
Tilføjelse af LED'en til vores kredsløb
Tilføjelse af LED'en til vores kredsløb
Tilføjelse af LED'en til vores kredsløb

Nu har vi modstande og jordkabel på plads, vi kan installere vores LED i brødbrætskredsløbet. Ret LED'en, så det længste ben er til venstre.

Del forsigtigt benene lidt, så de kan sættes i brødbrættet, og sørg for, at hvert ben er på samme linje som en tilsvarende modstand.

Det længste ben (ben 2) skal flugte med det sorte jordkabel.

Trin 5: Tilslutning af kablerne til brødbrættet Del 1: Tilslutning af jord

Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord
Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord
Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord
Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord
Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord
Fastgørelse af kablerne til brødbrættet Del 1: Tilslutning af jord

Lad os først forbinde jorden fra Raspberry Pi til jordbenet på LED'en.

I mit diagram har jeg tilsluttet han/hun -kablet fra pin 6 på Raspberry GPIO til jordskinnen på brødbrættet for at forbinde LED'ens jordben til Raspberry Pi.

Referencekortet viser dig pin -layoutet til Raspberry Pi GPIO. Den 40 pin GPIO til højre på billedet er til Raspberry Pi 2, som jeg bruger til at udføre dette projekt.

Trin 6: Tilslutning af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben

Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben
Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben
Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben
Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben
Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben
Fastgørelse af kablerne til brødbrættet Del 2: Tilslutning af det røde LED -ben

Skub hanenden af kablet ind i hullet lige over modstanden til venstre, og skub den kvindelige ende af kablet ind på GPIO17 (pin11) på Raspberry Pi.

Referencekortet til GPIO -benene hjælper dig med at guide dig til den korrekte pin.

Trin 7: Tilslutning af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben

Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben
Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben
Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben
Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben
Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben
Fastgørelse af kablerne til brødbrættet Del 3: Tilslutning af det grønne LED -ben

Skub hanenden af kablet ind i hullet lige over modstanden i midten, og skub den kvindelige ende af kablet på GPIO18 (pin12) på Raspberry Pi.

Referencekortet til GPIO -benene hjælper dig med at guide den korrekte pin.

Trin 8: Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben

Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben
Fastgørelse af kablerne til brødbrættet Del 4: Tilslutning af det blå LED -ben

Skub hanenden af kablet ind i hullet lige over modstanden til højre, og skub hunenden af kablet på GPIO27 (pin13) på Raspberry Pi.

Referencekortet til GPIO -benene hjælper dig med at guide den korrekte pin.

Trin 9: Programmering i Scratch: Circuit Check

Programmering i bunden: Kredsløbstjek
Programmering i bunden: Kredsløbstjek
Programmering i bunden: Kredsløbstjek
Programmering i bunden: Kredsløbstjek
Programmering i bunden: Kredsløbstjek
Programmering i bunden: Kredsløbstjek

Da jeg første gang kablerede dette projekt, var jeg lidt skødesløs og blandede mine farvekabler, hvilket betød, at når jeg ville have rødt på, kom der grønt i stedet, så jeg skrev et simpelt program for at kontrollere, at alt var korrekt forbundet.

LED -testen styres af 3 par nøgler

A og Z styrer RØD, A tænder rødt, Z slukker rødt

S og X styrer GRØN, S tænder grønt, X slukker grønt

D- og C -kontrol BLÅ, D tænder blå, C slukker blå

Indstilling af en pin til høj får LED'en til at lyse, hvis den indstilles til lav, slukkes LED'en.

Download programmet, og test dit kredsløb, hvis du vil være sikker på, at det er korrekt forbundet.

Trin 10: Programmering i bunden: Hvad jeg ville gøre med RGB LED

Programmering i bunden: Hvad jeg ville gøre med RGB -LED'en
Programmering i bunden: Hvad jeg ville gøre med RGB -LED'en

Programmering i Scratch er en god oplevelse. Det har et klik og træk interface og er ret intuitivt. Selvom det primært blev skabt for at introducere børn til programmering, synes jeg faktisk, at det er et ret nyttigt programmeringsmiljø, som jeg synes er vist i koden, der styrer LED'en i mit projekt.

Så her er hvad jeg ønskede at ske:

Farveændringerne ville blive udført i tre faser:

I den første fase starter vi med rød ved maksimum og grøn og blå sat til et meget lille niveau.

Vi begyndte derefter at reducere rød lysstyrke med -1, mens vi øgede greenens lysstyrke med 1.

Vi brugte en loop tæller til at begrænse, hvor mange gange dette skete.

Da sløjfe -tælleren nåede 255 startede vi den anden fase.

I anden fase vil grønt være maksimalt, rødt og blåt sat til et lavt niveau.

Vi sænker den grønne lysstyrke med -1, mens vi øger bluesens lysstyrke med 1.

Vores sløjfe tæller for anden fase blev sat til 509.

Når det nåede 509, ville vi starte fase 3.

I fase tre er blå ved maksimal lysstyrke, og grøn og rød er på lave niveauer.

Vi begynder at sænke blå lysstyrke med -1, mens vi øger rød lysstyrke med 1.

Når sløjfe -tælleren nåede 763, ville cyklussen starte forfra i fase 1.

Vi har tre variabler redVal, greenVal og blueVal for at holde værdierne for hver farve's lysstyrkeniveau, og disse værdier sendes derefter ud til de korrekte GPIO -ben til strøm til LED'ernes ben for at indstille hver farve's lysstyrkeværdi, hvilket igen giver os den farveblanding, vi ønsker.

Og det er mit forsøg på at cykle gennem farvespektret ved hjælp af en RGB LED og Scratch.

Hvis du har en Arduino, og du kører den skitse, jeg linkede, der inspirerede mig til at skrive Scratch -versionen, vil du se, at der ikke er nogen farve, der flimrer overhovedet. Jeg er ikke helt sikker på, hvorfor Scratch -versionen flimrer så meget. Jeg formoder, at Arduino er bedre til at håndtere PWM, men hvis du ser noget i min kode, der skal forbedres, ville jeg virkelig være taknemmelig, hvis du tog dig tid til at fortælle mig det.

Tak fordi du læste min instruktive, og jeg håber, at du får en god dag!

Trin 11: Skærmoptagelse af Scratch -programmet

Screen Capture af Scratch -programmet
Screen Capture af Scratch -programmet

Hvis du vil prøve at programmere det selv, er der et tæt kig på layoutet.

Anbefalede: