Search Code

Kurs Lekcija 5 od 10: Upravljanje RGB LED WS2812B pomoću Raspberry Pi Pico

This lesson is part of: Raspberry Pi Pico 4WD Smart Car

Kurs Lekcija 5 od 10: Upravljanje RGB LED WS2812B pomoću Raspberry Pi Pico

Ova lekcija, dio Robojax Raspberry Pi Pico Smart Car kursa, fokusira se na kontrolu RGB LED trake (WS2812B) na SunFounder pogonu na 4 kotača. Ići ćete dalje od jednostavnog uključivanja/isključivanja i naučiti kako miješati crvene, zelene i plave vrijednosti kako biste stvorili bilo koju boju, kontrolirali pojedinačne LED diode i stvarali dinamične svjetlosne sekvence poput efekta "hodajućeg" svjetla. Ova vještina je temeljna za dodavanje vizualnih povratnih informacija i ličnosti vašim robotskim projektima.

Kontrola RGB LED dioda je ključna vještina za svaki robotski ili elektronski projekt. Evo nekoliko praktičnih stvari koje možete napraviti s ovim znanjem:

  • Prilagođeni indikatori statusa: Koristite različite boje da pokažete stanje vašeg robota, poput zelene za "spreman," plave za "radi," i crvene za "greška."
  • Interaktivni svjetlosni efekti: Kreirajte "jurenje" ili "knight rider" stil svjetlosnih uzoraka za dinamičnijeg i zanimljivijeg robota.
  • Vizualne povratne informacije za senzore: Programirajte LED diode da mijenjaju boju na osnovu podataka sa senzora, poput crvene kada je prepreka blizu ili plave kada prati liniju.
  • Ambijentalno osvjetljenje: Postavite LED diode na nasumičnu boju ili specifičnu nijansu kako biste stvorili prilagođenu atmosferu za vaš automobil ili druge projekte.

Hardver/Komponente

Ovaj projekt koristi komponente koje dolaze sa SunFounder Raspberry Pi Pico 4-wheel drive kompletom za automobil. Ključna komponenta je sama RGB LED traka, koju kontrolira Raspberry Pi Pico.

  • Raspberry Pi Pico
  • SunFounder 4-wheel drive komplet za automobil (koji uključuje WS2812B RGB LED traku)
  • Baterijski paket za automobil (za napajanje LED dioda, kao što je spomenuto u videu)

Vodič za povezivanje

Video lekcija ne detaljizira proces povezivanja, jer je dio unaprijed sastavljenog dizajna kompleta za automobil. LED diode su već povezane na Raspberry Pi Pico. Za prilagođeno postavljanje, obično biste povezali data pin WS2812B trake na GPIO pin na Pico-u, zajedno s napajanjem (5V) i uzemljenjem (GND). Pošto ova lekcija koristi komplet za automobil, nije potrebno dodatno povezivanje.

Ako ovo gradite na breadboard-u, povezali biste data liniju vaše LED trake na GPIO pin (npr. GP0) i napajali je vanjskim 5V napajanjem.

Objašnjenje koda

Lekcija se fokusira na korištenje unaprijed napisanih funkcija iz biblioteke kompleta za automobil. Ključna funkcija za kontrolu svjetala je set_light_color(). Ova metoda se poziva na objektu automobila i uzima dva glavna argumenta: ID broj svjetla i listu od tri vrijednosti koje predstavljaju intenzitet crvene, zelene i plave (RGB).

Evo pregleda kako koristiti ključne funkcije prikazane u videu:

  • car.set_light_color(LED_ID, [R, G, B]): Ovo je najdirektniji način za kontrolu pojedinačne LED diode. LED_ID je cijeli broj od 0 do 23, a boja je lista poput [255, 0, 0] za crvenu.
  • Pomoćne funkcije biblioteke: Biblioteka kompleta pruža funkcije višeg nivoa poput set_all_light_color(), set_bottom_left_color(), i set_bottom_right_color() za lakšu kontrolu grupa LED dioda.

Da biste stvorili prilagođenu boju, možete podesiti tri vrijednosti u listi. Na primjer, [255, 255, 0] čini žutu, [0, 255, 255] čini cijan, a [255, 0, 255] čini ružičastu ili magenta. Video demonstrira stvaranje ovih boja miješanjem primarnih RGB vrijednosti.

Za nasumične boje, možete koristiti funkciju random.randint(0, 255) za generiranje nasumičnih vrijednosti za R, G i B, kao što je prikazano u "random" primjeru. Ovo dodjeljuje jedinstvenu, nasumičnu boju svakoj od 24 LED diode.

Živi projekt/Demonstracija

U videu, instruktor demonstrira koncepte uživo. Prvo pokazuje kako uključiti sva donja svjetla u čvrstu zelenu boju postavljanjem RGB vrijednosti na [0, 255, 0]. Zatim mijenja boju u crvenu postavljanjem [255, 0, 0]. Demonstracija se nastavlja pokazujući kako kontrolirati pojedinačne LED diode po njihovom ID broju (0-23) i postavljati njihove boje nezavisno.

Značajan dio videa posvećen je stvaranju efekta "hodajućeg svjetla". Ovo se radi s for petljom koja iterira od 1 do 24. U svakoj iteraciji, uključuje trenutnu LED diodu na određeno vrijeme (npr. 300 milisekundi) i zatim je isključuje na vrlo kratko vrijeme (npr. 10 milisekundi) prije nego što pređe na sljedeću. Ovo stvara iluziju svjetla koje se kreće duž trake. Instruktor također pokazuje kako podesiti brzinu ovog efekta mijenjanjem vrijednosti kašnjenja.

Na kraju, demonstrira program "nasumične boje," koji koristi random biblioteku za generiranje jedinstvene boje za svaku od 24 LED diode svaki put kada se kod pokrene, stvarajući živopisan, višebojni prikaz.

Poglavlja

  • [00:00] Uvod u RGB LED diode i Smart Car kurs
  • [02:36] Razumijevanje RGB modela boja
  • [05:00] Kontrola svjetala s funkcijama biblioteke
  • [09:01] Kako kontrolirati pojedinačne LED diode (0-23)
  • [13:08] Stvaranje efekta hodajućeg svjetla
  • [15:32] Generiranje nasumičnih boja za svaku LED diodu
No code attached.

Resources & references

No resources yet.

Files📁

No files available.