Szukaj kodu

Kurs Lekcja 5 z 10: Sterowanie diodą RGB WS2812B za pomocą Raspberry Pi Pico

Ta lekcja jest częścią: Raspberry Pi Pico 4WD Smart Car

Kurs Lekcja 5 z 10: Sterowanie diodą RGB WS2812B za pomocą Raspberry Pi Pico

Ta lekcja, będąca częścią kursu Robojax Raspberry Pi Pico Smart Car, koncentruje się na sterowaniu paskiem LED RGB (WS2812B) w zestawie samochodu z napędem na 4 koła SunFounder. Wykroczysz poza proste włączanie i wyłączanie i nauczysz się mieszać wartości czerwieni, zieleni i błękitu, aby tworzyć dowolne kolory, sterować pojedynczymi diodami LED oraz tworzyć dynamiczne sekwencje świetlne, takie jak efekt „przemieszczającego się" światła. Ta umiejętność jest podstawą dodawania wizualnych informacji zwrotnych i charakteru Twoim projektom robotycznym.

Sterowanie diodami LED RGB to kluczowa umiejętność w każdym projekcie robotycznym lub elektronicznym. Oto kilka praktycznych rzeczy, które możesz zbudować dzięki tej wiedzy:

  • Niestandardowe wskaźniki stanu: Używaj różnych kolorów, aby pokazać stan robota, np. zielony dla „gotowy", niebieski dla „pracuję" i czerwony dla „błąd".
  • Interaktywne efekty świetlne: Twórz wzory świetlne w stylu „pościgu" lub „rycerza", aby robot był bardziej dynamiczny i angażujący.
  • Wizualne informacje zwrotne dla czujników: Zaprogramuj diody LED tak, aby zmieniały kolor na podstawie danych z czujników, np. czerwony, gdy przeszkoda jest blisko, lub niebieski, gdy robot podąża za linią.
  • Oświetlenie nastrojowe: Ustaw diody LED na losowy kolor lub konkretny odcień, aby stworzyć niestandardową atmosferę dla swojego samochodu lub innych projektów.

Sprzęt/Komponenty

Ten projekt wykorzystuje komponenty dołączone do zestawu samochodu z napędem na 4 koła SunFounder Raspberry Pi Pico. Kluczowym komponentem jest sam pasek LED RGB, który jest sterowany przez Raspberry Pi Pico.

  • Raspberry Pi Pico
  • Zestaw samochodu z napędem na 4 koła SunFounder (który zawiera pasek LED RGB WS2812B)
  • Zestaw baterii do samochodu (do zasilania diod LED, jak wspomniano w filmie)

Instrukcja podłączania

Lekcja wideo nie opisuje szczegółowo procesu podłączania, ponieważ jest on częścią wstępnie zmontowanego projektu zestawu samochodu. Diody LED są już podłączone do Raspberry Pi Pico. W przypadku niestandardowej konfiguracji zazwyczaj podłącza się pin danych paska WS2812B do pinu GPIO na Pico, wraz z zasilaniem (5V) i masą (GND). Ponieważ ta lekcja korzysta z zestawu samochodu, nie jest potrzebne żadne dodatkowe podłączanie.

Jeśli budujesz to na płytce stykowej, podłącz linię danych paska LED do pinu GPIO (np. GP0) i zasil go zewnętrznym źródłem 5V.

Wyjaśnienie kodu

Lekcja koncentruje się na używaniu wcześniej napisanych funkcji z biblioteki zestawu samochodu. Podstawową funkcją do sterowania światłami jest set_light_color(). Ta metoda jest wywoływana na obiekcie samochodu i przyjmuje dwa główne argumenty: numer ID światła oraz listę trzech wartości reprezentujących intensywność czerwieni, zieleni i błękitu (RGB).

Oto zestawienie, jak używać kluczowych funkcji pokazanych w filmie:

  • car.set_light_color(LED_ID, [R, G, B]): To najbardziej bezpośredni sposób sterowania pojedynczą diodą LED. LED_ID to liczba całkowita od 0 do 23, a kolor to lista, np. [255, 0, 0] dla czerwieni.
  • Funkcje pomocnicze biblioteki: Biblioteka zestawu zapewnia funkcje wyższego poziomu, takie jak set_all_light_color(), set_bottom_left_color() i set_bottom_right_color(), aby łatwiej sterować grupami diod LED.

Aby utworzyć niestandardowy kolor, możesz dostosować trzy wartości na liście. Na przykład [255, 255, 0] daje żółty, [0, 255, 255] daje cyjan, a [255, 0, 255] daje różowy lub magentę. Film pokazuje tworzenie tych kolorów przez mieszanie podstawowych wartości RGB.

Dla losowych kolorów możesz użyć funkcji random.randint(0, 255), aby wygenerować losowe wartości dla R, G i B, jak pokazano w przykładzie „random". Przypisuje to unikalny, losowy kolor każdej z 24 diod LED.

Projekt na żywo/Demonstracja

W filmie instruktor demonstruje koncepcje na żywo. Najpierw pokazuje, jak włączyć wszystkie dolne światła na jednolity zielony kolor, ustawiając wartości RGB na [0, 255, 0]. Następnie zmienia kolor na czerwony, ustawiając [255, 0, 0]. Demonstracja kontynuuje pokazanie, jak sterować pojedynczymi diodami LED według ich numeru ID (0-23) i ustawiać ich kolory niezależnie.

Znaczna część filmu poświęcona jest tworzeniu efektu „przemieszczającego się światła". Robi się to za pomocą pętli for, która iteruje od 1 do 24. W każdej iteracji włącza bieżącą diodę LED na określony czas (np. 300 milisekund), a następnie wyłącza ją na bardzo krótki czas (np. 10 milisekund) przed przejściem do następnej. Tworzy to iluzję światła przesuwającego się wzdłuż paska. Instruktor pokazuje również, jak dostosować prędkość tego efektu, zmieniając wartości opóźnienia.

Na koniec demonstruje program „losowy kolor", który używa biblioteki random do generowania unikalnego koloru dla każdej z 24 diod LED za każdym razem, gdy kod jest uruchamiany, tworząc żywy, wielokolorowy wyświetlacz.

Rozdziały

  • [00:00] Wprowadzenie do diod LED RGB i kursu Smart Car
  • [02:36] Zrozumienie modelu kolorów RGB
  • [05:00] Sterowanie światłami za pomocą funkcji bibliotecznych
  • [09:01] Jak sterować pojedynczymi diodami LED (0-23)
  • [13:08] Tworzenie efektu przemieszczającego się światła
  • [15:32] Generowanie losowych kolorów dla każdej diody LED
Brak załączonego kodu.

Zasoby i odniesienia

Brak zasobów.

Pliki📁

Brak dostępnych plików.