You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/pl/1-getting-started/lessons/1-introduction-to-iot/pi.md

17 KiB

Raspberry Pi

Raspberry Pi to komputer jednopłytkowy. Możesz dodawać czujniki i siłowniki, korzystając z szerokiej gamy urządzeń i ekosystemów. W tych lekcjach będziesz używać ekosystemu sprzętowego o nazwie Grove. Kodowanie na Raspberry Pi oraz dostęp do czujników Grove odbywa się za pomocą języka Python.

Raspberry Pi 4

Konfiguracja

Jeśli używasz Raspberry Pi jako swojego sprzętu IoT, masz dwie opcje możesz przejść przez wszystkie lekcje i pisać kod bezpośrednio na Pi, lub możesz połączyć się zdalnie z Pi w trybie "headless" i pisać kod na swoim komputerze.

Przed rozpoczęciem musisz również podłączyć Grove Base Hat do swojego Pi.

Zadanie - konfiguracja

Zainstaluj Grove Base Hat na swoim Pi i skonfiguruj Pi.

  1. Podłącz Grove Base Hat do swojego Pi. Gniazdo na hat pasuje do wszystkich pinów GPIO na Pi, wsuwając się na nie aż do podstawy. Hat zakrywa Pi.

    Zakładanie Grove Hat

  2. Zdecyduj, w jaki sposób chcesz programować swoje Pi, i przejdź do odpowiedniej sekcji poniżej:

Praca bezpośrednio na Pi

Jeśli chcesz pracować bezpośrednio na swoim Pi, możesz użyć wersji desktopowej Raspberry Pi OS i zainstalować wszystkie potrzebne narzędzia.

Zadanie - praca bezpośrednio na Pi

Skonfiguruj swoje Pi do programowania.

  1. Postępuj zgodnie z instrukcjami w przewodniku konfiguracji Raspberry Pi, aby skonfigurować swoje Pi, podłączyć je do klawiatury/myszy/monitora, połączyć z siecią WiFi lub Ethernet i zaktualizować oprogramowanie.

Aby programować Pi za pomocą czujników i siłowników Grove, musisz zainstalować edytor do pisania kodu urządzenia oraz różne biblioteki i narzędzia do interakcji ze sprzętem Grove.

  1. Po ponownym uruchomieniu Pi uruchom Terminal, klikając ikonę Terminal na górnym pasku menu lub wybierz Menu -> Accessories -> Terminal.

  2. Wykonaj następujące polecenie, aby upewnić się, że system operacyjny i zainstalowane oprogramowanie są aktualne:

    sudo apt update && sudo apt full-upgrade --yes
    
  3. Wykonaj następujące polecenia, aby zainstalować wszystkie potrzebne biblioteki dla sprzętu Grove:

    sudo apt install git python3-dev python3-pip --yes
    
    git clone https://github.com/Seeed-Studio/grove.py
    cd grove.py
    sudo pip3 install .
    
    sudo raspi-config nonint do_i2c 0
    

    To rozpoczyna instalację Git oraz Pip do instalacji pakietów Pythona.

    Jedną z potężnych funkcji Pythona jest możliwość instalacji pakietów Pip są to pakiety kodu napisane przez innych ludzi i opublikowane w Internecie. Możesz zainstalować pakiet Pip na swoim komputerze jednym poleceniem, a następnie używać go w swoim kodzie.

    Pakiety Python Grove od Seeed muszą być zainstalowane ze źródła. Te polecenia sklonują repozytorium zawierające kod źródłowy tego pakietu, a następnie zainstalują go lokalnie.

    💁 Domyślnie, gdy instalujesz pakiet, jest on dostępny wszędzie na twoim komputerze, co może prowadzić do problemów z wersjami pakietów na przykład jedna aplikacja może zależeć od jednej wersji pakietu, która przestaje działać po zainstalowaniu nowej wersji dla innej aplikacji. Aby rozwiązać ten problem, możesz użyć wirtualnego środowiska Pythona, czyli kopii Pythona w dedykowanym folderze, a instalowane pakiety Pip są dostępne tylko w tym folderze. Nie będziesz używać wirtualnych środowisk na swoim Pi. Skrypt instalacyjny Grove instaluje pakiety Python Grove globalnie, więc aby użyć wirtualnego środowiska, musiałbyś je skonfigurować, a następnie ręcznie ponownie zainstalować pakiety Grove w tym środowisku. Łatwiej jest po prostu używać pakietów globalnych, zwłaszcza że wielu deweloperów Pi ponownie flashuje czystą kartę SD dla każdego projektu.

    Na koniec to polecenie włącza interfejs I2C.

  4. Uruchom ponownie Pi, używając menu lub wykonując następujące polecenie w Terminalu:

    sudo reboot
    
  5. Po ponownym uruchomieniu Pi, ponownie uruchom Terminal i wykonaj następujące polecenie, aby zainstalować Visual Studio Code (VS Code) to edytor, którego będziesz używać do pisania kodu urządzenia w Pythonie.

    sudo apt install code
    

    Po zainstalowaniu VS Code będzie dostępny z górnego menu.

    💁 Możesz używać dowolnego IDE lub edytora Pythona, jeśli masz preferowane narzędzie, ale lekcje będą zawierały instrukcje oparte na używaniu VS Code.

  6. Zainstaluj Pylance. Jest to rozszerzenie dla VS Code, które zapewnia wsparcie dla języka Python. Zapoznaj się z dokumentacją rozszerzenia Pylance, aby uzyskać instrukcje dotyczące instalacji tego rozszerzenia w VS Code.

Zdalny dostęp do kodowania na Pi

Zamiast kodować bezpośrednio na Pi, możesz uruchomić je w trybie "headless", czyli bez podłączonej klawiatury/myszy/monitora, i konfigurować oraz pisać kod na nim z poziomu swojego komputera, używając Visual Studio Code.

Konfiguracja systemu Pi OS

Aby kodować zdalnie, system Pi OS musi być zainstalowany na karcie SD.

Zadanie - konfiguracja systemu Pi OS

Skonfiguruj system Pi OS w trybie headless.

  1. Pobierz Raspberry Pi Imager ze strony oprogramowania Raspberry Pi OS i zainstaluj go.

  2. Włóż kartę SD do swojego komputera, używając adaptera, jeśli to konieczne.

  3. Uruchom Raspberry Pi Imager.

  4. W Raspberry Pi Imager wybierz przycisk CHOOSE OS, a następnie wybierz Raspberry Pi OS (Other), a potem Raspberry Pi OS Lite (32-bit).

    Raspberry Pi Imager z wybranym Raspberry Pi OS Lite

    💁 Raspberry Pi OS Lite to wersja Raspberry Pi OS bez interfejsu graficznego i narzędzi opartych na UI. Nie są one potrzebne dla Pi w trybie headless, co sprawia, że instalacja jest mniejsza, a czas uruchamiania szybszy.

  5. Wybierz przycisk CHOOSE STORAGE, a następnie wybierz swoją kartę SD.

  6. Uruchom Advanced Options, naciskając Ctrl+Shift+X. Te opcje pozwalają na wstępną konfigurację Raspberry Pi OS przed zapisaniem go na karcie SD.

    1. Zaznacz pole Enable SSH i ustaw hasło dla użytkownika pi. To hasło będzie używane do logowania się na Pi później.

    2. Jeśli planujesz połączyć się z Pi przez WiFi, zaznacz pole Configure WiFi i wprowadź swoją nazwę sieci WiFi (SSID) oraz hasło, a także wybierz swój kraj WiFi. Nie musisz tego robić, jeśli będziesz używać kabla Ethernet. Upewnij się, że sieć, do której się łączysz, jest tą samą, na której znajduje się twój komputer.

    3. Zaznacz pole Set locale settings i ustaw swój kraj oraz strefę czasową.

    4. Wybierz przycisk SAVE.

  7. Wybierz przycisk WRITE, aby zapisać system operacyjny na karcie SD. Jeśli używasz macOS, zostaniesz poproszony o podanie hasła, ponieważ narzędzie zapisujące obrazy dysków wymaga uprawnień administratora.

System operacyjny zostanie zapisany na karcie SD, a po zakończeniu karta zostanie wysunięta przez system operacyjny, a ty zostaniesz o tym powiadomiony. Wyjmij kartę SD z komputera, włóż ją do Pi, włącz Pi i poczekaj około 2 minut, aż się poprawnie uruchomi.

Połączenie z Pi

Następnym krokiem jest zdalny dostęp do Pi. Możesz to zrobić za pomocą ssh, które jest dostępne na macOS, Linux i nowszych wersjach Windows.

Zadanie - połączenie z Pi

Uzyskaj zdalny dostęp do Pi.

  1. Uruchom Terminal lub Wiersz Poleceń i wprowadź następujące polecenie, aby połączyć się z Pi:

    ssh pi@raspberrypi.local
    

    Jeśli używasz starszej wersji Windows, która nie ma zainstalowanego ssh, możesz użyć OpenSSH. Instrukcje instalacji znajdziesz w dokumentacji instalacji OpenSSH.

  2. Powinno to połączyć cię z Pi i poprosić o hasło.

    Możliwość znajdowania komputerów w sieci za pomocą <hostname>.local to stosunkowo nowa funkcja w Linux i Windows. Jeśli używasz Linux lub Windows i pojawią się błędy dotyczące nieznalezienia nazwy hosta, będziesz musiał zainstalować dodatkowe oprogramowanie, aby włączyć sieć ZeroConf (określaną przez Apple jako Bonjour):

    1. Jeśli używasz Linux, zainstaluj Avahi, wykonując następujące polecenie:

      sudo apt-get install avahi-daemon
      
    2. Jeśli używasz Windows, najprostszym sposobem na włączenie ZeroConf jest zainstalowanie Bonjour Print Services for Windows. Możesz również zainstalować iTunes dla Windows, aby uzyskać nowszą wersję narzędzia (które nie jest dostępne samodzielnie).

    💁 Jeśli nie możesz połączyć się za pomocą raspberrypi.local, możesz użyć adresu IP swojego Pi. Zapoznaj się z dokumentacją adresu IP Raspberry Pi, aby uzyskać instrukcje dotyczące różnych sposobów uzyskania adresu IP.

  3. Wprowadź hasło, które ustawiłeś w zaawansowanych opcjach Raspberry Pi Imager.

Konfiguracja oprogramowania na Pi

Po połączeniu z Pi musisz upewnić się, że system operacyjny jest aktualny, oraz zainstalować różne biblioteki i narzędzia do interakcji ze sprzętem Grove.

Zadanie - konfiguracja oprogramowania na Pi

Skonfiguruj zainstalowane oprogramowanie Pi i zainstaluj biblioteki Grove.

  1. W swojej sesji ssh wykonaj następujące polecenie, aby zaktualizować system, a następnie uruchomić Pi ponownie:

    sudo apt update && sudo apt full-upgrade --yes && sudo reboot
    

    Pi zostanie zaktualizowane i uruchomione ponownie. Sesja ssh zakończy się, gdy Pi zostanie uruchomione ponownie, więc odczekaj około 30 sekund, a następnie połącz się ponownie.

  2. W ponownie połączonej sesji ssh wykonaj następujące polecenia, aby zainstalować wszystkie potrzebne biblioteki dla sprzętu Grove:

    sudo apt install git python3-dev python3-pip --yes
    
    git clone https://github.com/Seeed-Studio/grove.py
    cd grove.py
    sudo pip3 install .
    
    sudo raspi-config nonint do_i2c 0
    

    To rozpoczyna instalację Git oraz Pip do instalacji pakietów Pythona.

    Jedną z potężnych funkcji Pythona jest możliwość instalacji pakietów Pip są to pakiety kodu napisane przez innych ludzi i opublikowane w Internecie. Możesz zainstalować pakiet Pip na swoim komputerze jednym poleceniem, a następnie używać go w swoim kodzie.

    Pakiety Python Grove od Seeed muszą być zainstalowane ze źródła. Te polecenia sklonują repozytorium zawierające kod źródłowy tego pakietu, a następnie zainstalują go lokalnie.

    💁 Domyślnie, gdy instalujesz pakiet, jest on dostępny wszędzie na twoim komputerze, co może prowadzić do problemów z wersjami pakietów na przykład jedna aplikacja może zależeć od jednej wersji pakietu, która przestaje działać po zainstalowaniu nowej wersji dla innej aplikacji. Aby rozwiązać ten problem, możesz użyć wirtualnego środowiska Pythona, czyli kopii Pythona w dedykowanym folderze, a instalowane pakiety Pip są dostępne tylko w tym folderze. Nie będziesz używać wirtualnych środowisk na swoim Pi. Skrypt instalacyjny Grove instaluje pakiety Python Grove globalnie, więc aby użyć wirtualnego środowiska, musiałbyś je skonfigurować, a następnie ręcznie ponownie zainstalować pakiety Grove w tym środowisku. Łatwiej jest po prostu używać pakietów globalnych, zwłaszcza że wielu deweloperów Pi ponownie flashuje czystą kartę SD dla każdego projektu.

    Na koniec to polecenie włącza interfejs I2C.

  3. Uruchom ponownie Pi, wykonując następujące polecenie:

    sudo reboot
    

    Sesja ssh zakończy się, gdy Pi zostanie uruchomione ponownie. Nie ma potrzeby ponownego łączenia się.

Konfiguracja VS Code do zdalnego dostępu

Po skonfigurowaniu Pi możesz połączyć się z nim za pomocą Visual Studio Code (VS Code) z poziomu swojego komputera jest to darmowy edytor tekstu dla programistów, którego będziesz używać do pisania kodu urządzenia w Pythonie.

Zadanie - konfiguracja VS Code do zdalnego dostępu

Zainstaluj wymagane oprogramowanie i połącz się zdalnie z Pi.

  1. Zainstaluj VS Code na swoim komputerze, postępując zgodnie z dokumentacją VS Code.

  2. Postępuj zgodnie z instrukcjami w dokumentacji zdalnego programowania w VS Code za pomocą SSH, aby zainstalować potrzebne komponenty.

  3. Postępując zgodnie z tymi samymi instrukcjami, połącz VS Code z Pi.

  4. Po połączeniu postępuj zgodnie z instrukcjami dotyczącymi zarządzania rozszerzeniami, aby zainstalować zdalnie na Pi rozszerzenie Pylance.

Hello world

Tradycyjnie, gdy zaczynamy pracę z nowym językiem programowania lub technologią, tworzymy aplikację 'Hello World' małą aplikację, która wyświetla tekst, np. "Hello World", aby upewnić się, że wszystkie narzędzia są poprawnie skonfigurowane.

Aplikacja Hello World dla Raspberry Pi pozwoli Ci upewnić się, że Python i Visual Studio Code są poprawnie zainstalowane.

Ta aplikacja znajdzie się w folderze o nazwie nightlight i będzie ponownie wykorzystywana z różnym kodem w dalszych częściach tego zadania, aby stworzyć aplikację nightlight.

Zadanie - hello world

Stwórz aplikację Hello World.

  1. Uruchom VS Code, bezpośrednio na Raspberry Pi lub na swoim komputerze, łącząc się z Pi za pomocą rozszerzenia Remote SSH.

  2. Otwórz terminal w VS Code, wybierając Terminal -> New Terminal lub naciskając CTRL+`. Terminal otworzy się w katalogu domowym użytkownika pi.

  3. Wykonaj poniższe polecenia, aby utworzyć katalog na swój kod i plik Python o nazwie app.py w tym katalogu:

    mkdir nightlight
    cd nightlight
    touch app.py
    
  4. Otwórz ten folder w VS Code, wybierając File -> Open... i wskazując folder nightlight, a następnie wybierz OK.

    Okno dialogowe otwierania w VS Code pokazujące folder nightlight

  5. Otwórz plik app.py w eksploratorze VS Code i dodaj poniższy kod:

    print('Hello World!')
    

    Funkcja print wypisuje na konsolę wszystko, co zostanie do niej przekazane.

  6. W terminalu VS Code uruchom poniższe polecenie, aby uruchomić swoją aplikację w Pythonie:

    python app.py
    

    💁 Może być konieczne wyraźne użycie python3, aby uruchomić ten kod, jeśli masz zainstalowanego Pythona 2 obok Pythona 3 (najnowszej wersji). Jeśli Python 2 jest zainstalowany, wywołanie python uruchomi Pythona 2 zamiast Pythona 3. Domyślnie najnowsze wersje Raspberry Pi OS mają zainstalowanego tylko Pythona 3.

    W terminalu pojawi się następujący wynik:

    pi@raspberrypi:~/nightlight $ python3 app.py
    Hello World!
    

💁 Ten kod znajdziesz w folderze code/pi.

😀 Twój program 'Hello World' zakończył się sukcesem!

Zastrzeżenie:
Ten dokument został przetłumaczony za pomocą usługi tłumaczenia AI Co-op Translator. Chociaż staramy się zapewnić dokładność, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za autorytatywne źródło. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z użycia tego tłumaczenia.