Zestaw Raspberry Pi Pico Advanced Kit od Elecrow do nauki programowania
Nie tak dawno sprawdzałem co oferuje laptop CrowPi L (napędzany Raspberry Pi 4), wraz z zestawem Crowtail i kompletem samouczków do stawiania pierwszych kroków w świecie programowania. A z początkiem września Elecrow wypuścił kolejny set, który tym razem opiera się na Raspberry Pi Pico. Ów zestaw składa się, aż z 32 modułów elektronicznych, poza tym znajdziemy w nim również części do złożenia inteligentnego samochodu, którego sami będziemy mogli zaprogramować.
Wszystkie elementy Raspberry Pi Pico Advanced Kit upchano w przezroczystą walizeczkę. A każdy z modułów został fabrycznie wyposażony w piny, aby łatwo umieszczać je na płytce prototypowej i skupić się na nauce programowania. Z tym zestawem rozpoczniemy przygodę z językiem MicroPython.
Sercem każdej lekcji jest oczywiście niewielki Raspberry Pi Pico z autorskim mikrokontrolerem RP2040, który został oparty o ARM Cortex M0+ o taktowaniu 133 MHz. Pi Pico posiada 264 kB pamięci SRAM oraz 2 MB pamięci Flash. Układ wyposażono w 26 pinów GPIO, które wykorzystamy podczas realizowania zadań z samouczka. Dobrą wiadomością jest to, że elektroniczny podręcznik jest dostępny za darmo na stronie Elecrow. Jednak jest też mniej fajna wiadomość, albowiem poziom szczegółowego opisania ćwiczeń nie jest, aż tak dokładny jak w przypadku lekcji dla CrowPi.
W treści zadań znajdziemy informacje, jakie moduły będziemy wykorzystywać, schemat podłączenia i przykładowy kod. Szkoda, że zabrakło wyjaśnień działania/funkcji poszczególnych modułów, aby poszerzyć swoją wiedzę z jednego źródła. A tak przyjdzie nam buszować w Internecie.
Oczywiście zwieńczeniem wszystkich lekcji jest budowa zdalnie sterowanego samochodu, który na ten moment musiałem odpuścić, ze względu na brak lutownicy. Jedyne cztery elementy, które wymagają lutowania to przewody, które musimy zespoić z dwoma silnikami kół. Szkoda, że Elecrow nie zadbał o ten szczegół. Lutownica już zamówiona, ale gdzieś utknęła na sortowni amazonu…
Jednak nie zrezygnujemy z tematyki samochodowej i sprawdzimy lekcję 20, gdzie zasymulujemy działanie sygnalizacji świetlnej: "Traffic Light".
Przygotowania
Przede wszystkim, aby rozpocząć ćwiczenie, potrzebujemy skompletować wymagane elementy:
- Raspberry Pi Pico,
- kabel micrUSB,
- płytka prototypowa,
- moduł sygnalizacji świetlnej,
- segmentowy wyświetlacz TM1637,
- kabelki mostkujące.
Zainstalować niezbędne oprogramowanie na komputerze (edytor Thonny) i odpowiedni firmware na Raspberry Pi Pico.
Instalacja edytora Thoony.
Instalacja edytora Thoony to najprostszy punkt — wystarczy udać się na stronę thonny.org i pobrać wersję zgodną z naszym systemem operacyjnym. Potem w samym programie musimy wybrać interpreter, udając się do:
Tools -> Settings -> Interpreter -> MicroPython (Raspberry Pi Pico)
Gdy podłączymy płytkę Raspberry Pi Pico do komputera to Thonny powinien automatycznie wybrać port do komunikacji. Informacja ta wyświetlana jest w prawym dolnym rogu programu.
Wgrywanie firmware
Ten proces również nie należy do skomplikowanych. Musimy odwiedzić stronę projektu Raspberry Pi i ściągnąć UF2. Następnie podłączamy Pico do komputera za pomocą kabla USB, trzymając w tym samym momencie przycisk BOOTSEL. W komputerze powinno pojawić się nowe urządzenie RPI-RP2, na które musimy przenieść pobrany wcześniej plik UF2. Po tym Raspberry Pi Pico powinno się zrestartować i być gotowy do pracy z językiem MicroPython.
Budujemy układ
Zbudowanie układu w tym przypadku nie należy do skomplikowanych. W końcu łączymy ze sobą trzy elementy: Pi Pico z modułem sygnalizacji i wyświetlaczem.
Raspberry Pi Pico | TM1637 4-Bits Digital Tube |
---|---|
3V3 | VCC |
GND | GND |
GP4 | DIO |
GP5 | CLK |
Raspberry Pi Pico | Traffic Light Module |
---|---|
GND | GND |
GP0 | R |
GP1 | Y |
GP2 | B |
Programujemy
Gdy już wszystkie połączenia zostały "zrobione" można zabrać się za programowanie. W pierwszym etapie musimy zaimportować wymagane biblioteki (Aby uruchomić wyświetlacz, potrzebujemy wgrać tm1637.py do pamięci Pi Pico, do tego wykorzystujemy opcję w Thonny. Wystarczy otworzyć ów bibliotekę na komputerze i zapisać ją w mikrokotrolerze za pomocą opcji "Save as" wybierając jako miejsce docelowe Raspberry Pi Pico) i przypisać piny do podłączonych modułów.
Sygnalizacja będzie zachowywać się w następujący sposób (działać w pętli):
- Czerwone światło włącza się na 30 sekund
- Żółte miga 5 razy w odstępach 0,3 sekundy
- Zielone światło włącza się na 10 sekund
A na zegarze będą prezentowane sekundy do wyłączenia Czerwonego światła.
# Biblioteki from machine import Pin from time import sleep import tm1637 # ustawienia pinow tm = tm1637.TM1637(clk=Pin(4), dio=Pin(5)) Led_R = Pin(0, Pin.OUT) Led_Y = Pin(1, Pin.OUT) Led_G = Pin(2, Pin.OUT) # zachowanie sygnalizacji if __name__ == '__main__': while True: num = 30 Led_R.value(1) for i in range(30): num=num-1 tm.number(num) sleep(1) Led_R.value(0) for i in range(5): Led_Y.value(1) sleep(0.3) Led_Y.value(0) sleep(0.3) Led_G.value(1) sleep(10) Led_G.value(0)
To działa :)
Szanuje bardzo ideę, którą podąża Elecrow udostępniając na rynku coraz to nowsze zestawy do nauki i zabawy z programowaniem. Raspberry Pi Pico Advanced Kit jest na pewno dużo tańszy niż laptopy CrowPi, aktualna jego cena wynosi tylko 41,09 dolarów, więc może okazać się interesującym kąskiem dla kogoś, kto chce rozpocząć przygodę z programowaniem :)
* egzemplarze do testów i recenzji zostały udostępnione przez producenta