Programowanie w Pythonie na Raspberry Pi

Czas czytania: 3 min.

Moduły Raspberry Pi nie różnią się zasadniczo od zwykłych komputerów stacjonarnych oraz laptopów pod względem sposobu tworzenia oprogramowania dla nich – w dużej mierze wykorzystywane są te same języki programowania, narzędzia programistyczne (np. środowiska IDE), czy też podstawowe aplikacje systemowe. Minikomputery jednopłytkowe (SBC) mają jednak zasadniczą przewagę nad konwencjonalnymi maszynami, umożliwiają bowiem niskopoziomowy dostęp do podstawowych interfejsów komunikacyjnych – wyprowadzeń GPIO (ang. General Purpose Input/Output) oraz bloków SPI, I2C czy też UART – co pozwala w prosty sposób integrować je z zewnętrznymi urządzeniami. 

Możliwość łatwej współpracy z modułami czujników, przekaźników, czy też kontrolerami silników małej mocy jest zresztą jedną z głównych przyczyn ogromnego, rynkowego sukcesu Raspberry Pi. W połączeniu z niską ceną detaliczną oraz ogromnym wsparciem społecznościowym „maliny” w zakresie zarówno bibliotek programistycznych, jak i gotowych projektów, taka uniwersalność sprawia, że z Raspberry Pi zetknął się chyba każdy fan nowych technologii.

Raspberry Pi logo

Python na Raspberry Pi – czy warto?

Fragment kodu
Fragment kodu

Z pewnością warto zmierzyć się z każdym językiem programowania, ponieważ często są do siebie podobne, i ucząc się kolejnych z nich łatwo zauważyć kolejne podobieństwa przez co nie stanowią one już takiej trudności. Wtedy będziemy w stanie samodzielnie określić do jakich celów użyć jakiego języka. W zależności od potrzeby, są one bowiem bardziej lub mniej przydatne, natomiast nauka podstaw języka Python jest przez wielu uważana za znacznie prostszą, niż ma to miejsce w przypadku innych języków programowania (np. C++). Język ten wydaje się bardzo wszechstnonny i jeśli trochę lepiej poznamy jego składnię i biblioteki, które są jego dopełnieniem, będzie otwierał przed nami kolejne możliwości.

Przyczyn tego stanu rzeczy jest kilka – łatwiejsza obsługa danych różnego typu, prosta i intuicyjna składnia oraz dostępność tysięcy gotowych bibliotek sprawiają, że Python jawi się jako platforma wyjątkowo przystępna dla początkujących użytkowników. Dodatkowo Python – jako język interpretowany – nie wymaga kompilacji, co przyspiesza i upraszcza proces tworzenia oraz testowania programów. 

Popularność i przystępność Pythona sprawiła, że liczba przykładowych projektów na Github, nagrań na YouTube, czy też darmowych kursów internetowych z nim związanych przyprawia wręcz o zawrót głowy. Język ten, jest na tyle popularny, że nawet w przypadku, gdy natrafimy na problem, często wystarczy wpisać hasło w wyszukiwarce, a o odpowiedź wcale nie będzie trudno. Przy okazji warto nadmienić, że zjawisko to występuje także dla pozostałych popularnych języków programowania.

W przypadku Raspberry Pi te ostatnie zalety są szczególnie widoczne, gdyż dedykowane dla popularnego minikomputera systemy operacyjne (np. Raspberry Pi OS, dawniej Raspbian) oferują wsparcie dla Pythona na zasadzie „out of the box”, czyli udostępniają podstawową funkcjonalność bez konieczności ręcznego doinstalowywania jakichkolwiek pakietów. Dlatego też proste programy można przygotować od razu po pierwszym uruchomieniu systemu. 

Co jest potrzebne, by zacząć przygodę z programowaniem Raspberry Pi?

Wspomniane wcześniej wbudowane pakiety systemu Raspberry Pi OS umożliwiają natychmiastowe rozpoczęcie pisania programów w języku Python, dzięki czemu do nauki programowania nie trzeba nic więcej poza samym sprzętem – „maliną” oraz zestawem niezbędnych akcesoriów, w skład którego wchodzi klawiatura, mysz USB, zasilacz oraz (opcjonalnie) monitor z wejściem HDMI i oczywiście karta microSD, pełniąca rolę dysku twardego dla miniaturowego komputera. 

Użytkownicy zaznajomieni z zagadnieniami konsoli linuksowej i dostępu zdalnego mogą obsługiwać minikomputer z dowolnej innej maszyny, podłączonej do tej samej sieci lokalnej, w której znajduje się także Raspberry Pi – wtedy znika konieczność podłączania urządzeń wejściowych USB i dodatkowego monitora, co ma niebagatelne znaczenie dla osób niedysponujących odpowiednią ilością miejsca na biurku.

Zdecydowana większość pierwszych programów nie będzie zresztą wymagała obsługi grafiki, zatem prosta konsola tekstowa w zupełności wystarczy do tworzenia oraz uruchamiania programów. Jeżeli natomiast chcesz od razu zacząć tworzyć skrypty wykorzystujące niskopoziomowe zasoby sprzętowe „maliny”, koniecznie pamiętaj, by zaopatrzyć się w płytkę stykową, zestaw przewodów połączeniowych z wtykami BLS oraz komplet podstawowych elementów elektronicznych – wszystko to znajdziesz (osobno lub w gotowych zestawach startowych) w sklepie Botland.

Rozpoczynamy pisanie własnych programów!

Funkcjonalność pierwszych programów pisanych na komputerach osobistych ogranicza się zwykle do wyświetlania prostych napisów czy też reakcji na znaki wpisywane z klawiatury przez użytkownika. Nie inaczej jest w przypadku początkowych projektów na Raspberry Pi – Python, jak zresztą niemal każdy inny język programowania, oferuje szereg wbudowanych funkcji wejściowych (np. do przechwytywania naciśnięć poszczególnych klawiszy) oraz wyjściowych (np. do „drukowania” tekstu w konsoli, jak proste Hello World). 

Programowanie w Python
Do nauki programowania wystarczy jakikolwiek komputer

Użytkownicy „maliny” mogą jednak z równą łatwością sterować wyprowadzeniami GPIO, wykorzystując do tego celu bibliotekę RPi.GPIO. Kolejnym etapem, naturalnym podczas procesu uczenia się nowej platformy programistycznej, jest poznanie podstawowych zasad tworzenia składni programów: obsługi zmiennych i struktur danych, instrukcji warunkowych, pętli, funkcji, czy też pracy na obiektach. 

Co ważne, wszystkie bardziej zaawansowane układy zewnętrzne – np. nakładki Raspberry Pi Hat z czujnikami wyposażonymi w interfejsy SPI lub I2C – można obsługiwać za pomocą dodatkowych bibliotek, instalowanych ręcznie przez użytkownika i oferujących gotowe, proste w użyciu funkcje, służące np. od odczytu wartości przetwornika czy też zapisu danych do rejestrów konfiguracyjnych. Warto wybierać markowe nakładki, gdyż wiodący producenci (DFRobot, Sparkfun czy Adafruit) niemal zawsze udostępniają dobrze napisane oraz dokładnie przetestowane biblioteki, a także liczne programy przykładowe, dzięki którym stworzenie nawet zaawansowanych projektów sprzętowych jest niebywale ułatwione.

Jak oceniasz ten wpis blogowy?

Kliknij gwiazdkę, aby go ocenić!

Średnia ocena: 4.9 / 5. Liczba głosów: 13

Jak dotąd brak głosów! Bądź pierwszą osobą, która oceni ten wpis.

Podziel się:

Picture of Mateusz Mróz

Mateusz Mróz

Marzyciel, miłośnik podróży i fan nowinek technologicznych. Swoje pomysły na Raspberry Pi i Arduino chętnie przekuwa w konkrety. Uparty samouk – o pomoc prosi dopiero wtedy kiedy zabraknie pozycji w wyszukiwarce. Uważa, że przy odpowiednim podejściu można osiągnąć każdy cel.

Zobacz więcej:

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Ze względów bezpieczeństwa wymagane jest korzystanie z usługi Google reCAPTCHA, która podlega Polityce prywatności i Warunkom użytkowania.