Talaan ng mga Nilalaman:

Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch: 11 Hakbang
Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch: 11 Hakbang

Video: Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch: 11 Hakbang

Video: Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch: 11 Hakbang
Video: ESP32 Tutorial 6 - Using RGB LED Project 2.3 -SunFounder's ESP32 IoT Learnig kit 2024, Nobyembre
Anonim
Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch
Ikot ang isang RGB LED Sa Pamamagitan ng Color Spectrum Gamit ang isang Raspberry Pi 2 at Scratch

Mga Tala sa Pag-update Noong ika-25 Peb, 2016: Pinagbuti ko ang programa ng Scratch at muling idisenyo ang aking itinuturo.

Kumusta mga tao, sa proyektong ito nais kong gamitin ang Scratch upang ikot ang isang RGB LED sa pamamagitan ng color spectrum.

Mayroong maraming mga proyekto na ginagawa ito sa Arduino, kaya't nausisa ako na makita kung makakakuha ako ng disenteng resulta sa Raspberry Pi.

Ang aking unang pagtatangka sa itinuro na ito ay hindi napakahusay, kaya't gumawa ako ng medyo mas pagsasaliksik at sa palagay ko ay may isang bagay na mas mahusay na gumagana. Kapag tinitingnan ko ang ilang mga proyekto ng Arduino upang subukang unawain kung saan ako nagkamali sa aking orihinal na programa, natagpuan ko ang isang ganap na mahusay na script ng Arduino, kung saan maiuugnay kita sa dulo. Ginugol namin ng aking kaibigan na si Andrew ang hapon sa pag-convert nito sa Scratch. Nagawa namin ang aming makakaya dito at sana ay subukan mo ito.

Ang proyektong ito ay isang follow-on mula sa aking itinuro tungkol sa pagbabago ng liwanag ng isang LED gamit ang mga pindutan at Scratch na maaari mong makita dito:

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

Mag-link sa orihinal na Arduino Sketch na batay sa aking programa sa Scratch sa:

www.arduino.cc/en/Tutorial/DimmingLEDs na may-akda na si Clay Shirky

Hakbang 1: Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin mo para sa Proyekto na Ito

Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito
Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito
Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito
Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito
Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito
Pagkolekta ng Sama-sama ng Mga Bagay na Kakailanganin Mo para sa Proyekto na Ito

Mga sangkap na kakailanganin mo:

Isang Raspberry Pi na may operating system ng Raspian at koneksyon sa internet

1 x Breadboard

1 x RGB LED (karaniwang cathode)

3 x 330 ohm resistors (orange orange brown)

4 x male / female breadboard cables

1 x male / male breadboard cable (o isang maliit na solong core jumper cable kung mayroon ka)

Hakbang 2: Pag-unawa sa Ginagawa ng Mga binti sa RGB LED

Pag-unawa sa Ginagawa ng mga Legs sa RGB LED
Pag-unawa sa Ginagawa ng mga Legs sa RGB LED

Kunin ang iyong RGB LED at tingnan ang mga binti, mapapansin mo na ang isang binti ay mas mahaba kaysa sa lahat ng iba pa. I-orient ang LED upang ang pinakamahabang paa na ito ay nasa kaliwa.

Ginagamit ang Pin 1 upang gawing RED ang LED shine

Ang pin 2 ay ang ground pin

Ginagawa ng pin 3 ang LED na lumiwanag GREEN

Pin ang pin ay gumagawa ng LED na BLUE

Ang RGB LED na ginagamit ko ay may isang karaniwang katod, na nangangahulugang ikinonekta mo ang ground leg nito sa isang Raspberry Pi ground pin upang gumana ito.

Hakbang 3: Pagpasok ng 330 Ohm Resistors at ang Ground Jumper Cable Sa Breadboard

Ipasok ang 330 Ohm Resistors at ang Ground Jumper Cable Sa Breadboard
Ipasok ang 330 Ohm Resistors at ang Ground Jumper Cable Sa Breadboard

Upang mapanatiling madaling makita ang mga bagay sa diagram maaari nating ilagay ang mga resistors at ang ground cable kung saan kailangan nilang mauna. Ang mga resistors ay walang polarity kaya't hindi mahalaga kung anong paraan ang kanilang pupuntahan.

Tandaan: Bakit kailangan ng tatlong resistors para sa isang LED?

Mag-isip ng isang RGB LED bilang 3 magkakaibang mga LED na na-bundle sa isa. Kung mayroon kaming 3 indibidwal na LEDs sa isang circuit gagamitin namin ang isang risistor para sa bawat isa, at sa gayon kailangan namin ng isang risistor para sa bawat kulay ng binti ng RGB LED.

Hakbang 4: Pagdaragdag ng LED sa aming Circuit

Pagdaragdag ng LED sa Aming Circuit
Pagdaragdag ng LED sa Aming Circuit
Pagdaragdag ng LED sa Aming Circuit
Pagdaragdag ng LED sa Aming Circuit

Ngayon mayroon kaming mga resistors at ground cable sa lugar, maaari naming mai-install ang aming LED sa breadboard circuit. I-orient ang LED kaya ang pinakamahabang paa ay sa kaliwa.

Dahan-dahang hatiin ang mga binti nang kaunti upang payagan silang mag-plug sa breadboard, tinitiyak na ang bawat binti ay nasa parehong linya bilang isang kaukulang risistor.

Ang pinakamahabang binti (binti 2) ay dapat na linya kasama ang itim na ground cable.

Hakbang 5: Paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground

Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground
Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground
Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground
Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground
Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground
Ang paglakip ng mga Cables sa Breadboard Bahagi 1: Pagkonekta sa Ground

Ikonekta muna natin ang lupa mula sa Raspberry Pi hanggang sa ground leg sa LED.

Sa aking diagram na konektado ko ang male / female cable mula sa pin 6 sa Raspberry GPIO sa ground rail ng breadboard upang ikonekta ang ground leg ng LED sa Raspberry Pi.

Ipinapakita sa iyo ng sangguniang kard ang layout ng pin para sa Raspberry Pi GPIO. Ang 40 pin GPIO sa kanan ng larawan ay para sa Raspberry Pi 2, na ginagamit ko upang gawin ang proyektong ito.

Hakbang 6: Paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Red LED Leg

Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 2: Pagkonekta sa Pulang LED Leg

Itulak ang male end ng cable sa butas sa itaas lamang ng risistor sa kaliwa, at itulak ang babaeng dulo ng cable papunta sa GPIO17 (pin11) sa Raspberry Pi.

Ang sangguniang card para sa mga GPIO pin ay makakatulong na gabayan ka sa tamang pin.

Hakbang 7: Paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg

Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 3: Pagkonekta sa Green LED Leg

Itulak ang male end ng cable sa butas sa itaas lamang ng risistor sa gitna, at itulak ang babaeng dulo ng cable papunta sa GPIO18 (pin12) sa Raspberry Pi.

Ang sangguniang card para sa mga GPIO pin ay makakatulong na gabayan ka sa tamang pin.

Hakbang 8: Paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg

Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg
Ang paglakip ng mga Cables sa Breadboard Bahagi 4: Pagkonekta sa Blue LED Leg

Itulak ang male end ng cable sa butas sa itaas lamang ng risistor sa kanan, at itulak ang babaeng dulo ng cable papunta sa GPIO27 (pin13) sa Raspberry Pi.

Ang sangguniang card para sa mga GPIO pin ay makakatulong na gabayan ka sa tamang pin.

Hakbang 9: Programming sa Scratch: Circuit Check

Programming sa Scratch: Suriin sa Circuit
Programming sa Scratch: Suriin sa Circuit
Programming sa Scratch: Suriin sa Circuit
Programming sa Scratch: Suriin sa Circuit
Programming sa Scratch: Suriin sa Circuit
Programming sa Scratch: Suriin sa Circuit

Nang una kong na-cable ang proyektong ito medyo hindi ako naging pabaya at pinaghalo ang aking mga kable ng kulay, na nangangahulugang nais kong pula ay dumating, sa halip ay berde ang dumating, kaya't nagsulat ako ng isang simpleng programa upang mapatunayan na ang lahat ay wastong na-wire.

Ang LED test ay kinokontrol ng 3 pares ng mga key

Kontrolin ng A at Z ang PULA, Ang isang switch ay pula, ang Z ay muling namamatay

Kontrolin ng S at X ang GREEN, ang S ay lilipat ng berde, ang X ay patay na berde

Kontrolin ng D at C ang BLUE, ang D ay switch ng asul, ang C ay patay na asul

Ang pagtatakda ng isang pin sa mataas ay ginagawang ilaw ng LED, itinatakda sa mababang switch ang LED.

I-download ang programa at subukan ang iyong circuit kung nais mong matiyak na maayos itong naka-wire.

Hakbang 10: Programming sa Scratch: Ano ang Gusto Kong Gawin Sa RGB LED

Programming in Scratch: Ano ang Gusto Kong Gawin Sa RGB LED
Programming in Scratch: Ano ang Gusto Kong Gawin Sa RGB LED

Ang Programming sa Scratch ay isang magandang karanasan. Mayroon itong isang pag-click at drag interface at medyo madaling maunawaan. Bagaman ito ay pangunahin na nilikha upang ipakilala ang mga bata sa pag-program sa palagay ko talaga ito ay isang kapaki-pakinabang na kapaligiran sa pag-program tulad ng sa palagay ko ay ipinakita sa code na kumokontrol sa LED sa aking proyekto.

Kaya narito ang nais kong mangyari:

Ang mga pagbabago sa kulay ay magagawa sa tatlong yugto:

Sa unang yugto nagsisimula kami sa pula sa maximum at berde at asul na nakatakda sa isang napakaliit na antas.

Sinimulan naming bawasan ang maliwanag na pula ng -1, habang pinapataas ang ningning na berde ng 1.

Gumamit kami ng loop counter upang limitahan kung gaano karaming beses nangyari ito.

Kapag naabot ng loop counter ang 255 sinimulan namin ang pangalawang yugto.

Sa pangalawang yugto berde ay magiging maximum, pula at asul na nakatakda sa isang mababang antas.

Ibinaba namin ang berdeng ningning ng -1 habang pinapataas ang blues brightness ng 1.

Ang aming loop counter para sa ikalawang yugto ay nakatakda sa 509.

Kapag umabot sa 509 sisimulan namin ang phase 3.

Sa phase three, ang asul ay nasa maximum na ningning at berde at pula ay nasa mababang antas.

Nagsisimula kaming ibababa ang asul na ningning ng -1 habang pinapataas ang pulang ningning ng 1.

Kapag naabot ng loop counter ang 763, magsisimula ang cycle sa phase 1.

Mayroon kaming tatlong mga variable na redVal, greenVal at blueVal upang hawakan ang mga halaga ng antas ng ningning ng bawat kulay at ang mga halagang ito ay ipinapadala sa tamang mga GPIO pin upang mapagana ang mga binti ng LED upang maitakda ang halaga ng ningning ng bawat kulay, na kung saan ay binibigyan tayo ang color mix na gusto namin.

At iyon ang aking pagtatangka na ikot sa pamamagitan ng color spectrum gamit ang isang RGB LED at Scratch.

Kung mayroon kang Arduino at pinatakbo mo ang sketch na na-link ko na nagbigay inspirasyon sa akin na isulat ang bersyon ng Scratch, makikita mong walang kulay na kumikislap sa lahat. Hindi ako lubos na sigurado kung bakit ang bersyon ng Scratch ay kumikislap nang labis. Pinaghihinalaan ko na ang Arduino ay mas mahusay sa paghawak ng PWM, ngunit kung may nakikita ka sa aking code na kailangang mapabuti, talagang magpapasalamat ako kung maglaan ka ng oras upang sabihin sa akin.

Salamat sa pagbabasa ng aking itinuturo at sana ay magkaroon ka ng magandang araw!

Hakbang 11: Nakunan ng Screen ng Program na Scratch

Screen Capture ng Scratch Program
Screen Capture ng Scratch Program

Kung nais mong magkaroon ng isang go sa pag-program ito ng iyong sarili dito ay isang malapit na pagtingin sa layout.

Inirerekumendang: