Skorzystaj z łączności Bluetooth Pico W, aby przesyłać wartości z czujnika temperatury do telefonu z systemem Android.
Raspberry Pi Pico W, popularna płytka rozwojowa IoT stworzona przez Raspberry Pi Foundation, zyskała dużą popularność wśród twórców po wprowadzeniu na rynek w 2022 roku. Od oficjalnego wydania wersji 1.5.1 C SDK i najnowszej kompilacji MicroPython, łatwiej było uzyskać łączność Bluetooth działającą na płycie Raspberry Pi Pico W (i WH).
Płytka umożliwia odczytywanie i udostępnianie danych przez Bluetooth, otwierając mnóstwo możliwości projektowych związanych z IoT. A dobrą rzeczą jest to, że wymaga tylko aktualizacji oprogramowania układowego. Wystarczy wykonać poniższe czynności, aby odczytać dane czujnika za pomocą Bluetooth na swoim Raspberry Pi Pico W.
Raspberry Pi Pico W/WH i Bluetooth
Raspberry Pi Pico W to płytka mikrokontrolera, która opiera się na sukcesie oryginalnego modelu Raspberry Pi Pico. Zachowując ten sam współczynnik kształtu, co jego poprzednik, dodaje łączność Wi-Fi i Bluetooth. Nadal posiada standard
Pinout Raspberry Pi Pico dla swoich podwójnych 20-pinowych nagłówków GPIO.Pico W jest wyposażony w chipset radiowy Infineon CYW43439, który z natury obsługuje Wi-Fi 802.11n i Bluetooth 5.2.
Instalowanie najnowszego zestawu SDK Pico C/C++
Pico C/C++ SDK to zestaw programistyczny zaprojektowany specjalnie do programowania mikrokontrolera Raspberry Pi Pico przy użyciu języków programowania C i C++. Zapewnia zestaw bibliotek, narzędzi i zasobów upraszczających proces programowania i umożliwiających programistom tworzenie aplikacji dla płyty Pico.
Aby pracować z zestawem SDK Pico C/C++, będziesz potrzebować kilku niezbędnych komponentów oprogramowania. Oto lista niezbędnych programów do pobrania:
- Kompilator ARM GCC: Służy do kompilowania i budowania kodu C/C++ dla mikrokontrolera Pico.
- CMake: Wieloplatformowy system kompilacji, który pomaga w zarządzaniu procesem kompilacji i generowaniu plików projektu.
- Narzędzia kompilacji dla programu Visual Studio 2019: Te narzędzia są wymagane, jeśli używasz programu Visual Studio jako zintegrowanego środowiska programistycznego (IDE).
- Pyton: Ten język programowania jest używany przez niektóre narzędzia Pico SDK, więc upewnij się, że masz zainstalowaną wersję 3.9 lub nowszą.
- Git: Ten system kontroli wersji umożliwia zarządzanie i śledzenie zmian w bazie kodu.
- Kod Visual Studio: Chociaż nie jest to obowiązkowe, Visual Studio Code jest popularnym edytorem kodu z doskonałą obsługą Pico SDK, zapewniając takie funkcje, jak podświetlanie składni, uzupełnianie kodu i debugowanie.
Instalacja MicroPythona
Alternatywnie możesz użyć MicroPython do zaprogramowania swojego Pico W, jak użyjemy w naszym przykładzie poniżej. Oto kroki, które musisz wykonać, aby go zainstalować i używać.
Flashowanie oprogramowania układowego UF2
Istnieje kilka sposobów na przełączenie płyty Pico W w tryb bootloadera. Jednym ze sposobów jest wykonanie polecenia maszyna. bootloader() w MicroPythonie REPL. Inną opcją jest przytrzymanie przycisku BOOTSEL Pico podczas podłączania płyty do portu USB komputera.
Gdy Pico znajdzie się w trybie bootloadera, zauważysz, że na twoim komputerze pojawi się urządzenie pamięci masowej USB.
Teraz wszystko, co musisz zrobić, to skopiować plik UF2, który zawiera nowe oprogramowanie układowe, na to urządzenie pamięci masowej USB.
Możesz pobrać plik UF2 z Strona pobierania MicroPythona- a jeśli chcesz zagłębić się w to, co pociąga za sobą aktualizacja obsługi Bluetooth, możesz przejść przez Informacje o wydaniu.
Po zakończeniu flashowania oprogramowania układowego dioda LED na płycie Pico zacznie szybko migać. Tablica automatycznie się zresetuje i będzie gotowa do użycia.
Alternatywnie możesz sflashować oprogramowanie układowe do Pico z Thonny IDE, jak opisano poniżej.
Korzystanie z Thonny IDE
Najpierw podłącz Pico do komputera przez USB. Upewnij się, że Pico jest w trybie bootloadera, przytrzymując przycisk BOOTSEL podczas podłączania płyty.
Uruchom Thonny IDE na swoim komputerze i powinieneś zobaczyć interfejs z oknem edytora, jak pokazano poniżej.
Będziesz musiał zmienić używany interpreter na MicroPython. Z menu Thonny przejdź do Narzędzia > Opcje.
w Opcje oknie kliknij na Interpretator patka. Wybierać MicroPython (Raspberry Pi Pico) od Interpretator menu rozwijane.
Ustaw port na Spróbuj wykryć automatycznie, a następnie kliknij łącze instalacyjne na dole, co spowoduje otwarcie kolejnego okna instalacyjnego. IDE powinno automatycznie zapełnić się szczegółami Twojej płyty wraz z najnowszym oprogramowaniem układowym, które musisz zainstalować. Po zakończeniu instalacji kliknij przycisk Zamknąć przycisk, a następnie wybierz OK.
Zapisywanie niezbędnych modułów Bluetooth
Aby włączyć komunikację Bluetooth Low Energy na swoim Raspberry Pi Pico, musisz zapisać dwa moduły MicroPython. Oto jak możesz to zrobić za pomocą Thonny IDE (lub innych IDE, takich jak uPyCraft).
Idź do naszego Repozytorium GitHub i pobierz pierwszy kod pomocniczy pod nazwą ble_reklama.py. Pomoże to w generowaniu ładunków i rozsyłaniu ich do połączonych węzłów.
Po skopiowaniu kodu otwórz nowy projekt w Thonny IDE i wklej go do edytora. Następnie zapisz w Pico W jako ble_reklama.py klikając na Plik > ZapiszJak a następnie wybierając Piko Raspberry Pi.
Utwórz kolejny plik w Thonny i skopiuj kod pod plikiem o nazwie ble_simple_peripheral.py w repozytorium GitHub.
Zapisz kod z jego oryginalną nazwą na płycie Pico W, tak jak robiłeś to wcześniej.
Odczytywanie danych przez Bluetooth LE za pomocą Pi Pico W
Najpierw upewnij się, że wstępnie załadowałeś płytę Pico W dwoma modułami (jak opisano powyżej). Następnie utwórz nowy plik i skopiuj do niego poniższy kod.
z maszyna import Szpilka, ADC
import Bluetooth
z ble_simple_peryferia import BLESimplePeripheral# Utwórz obiekt Bluetooth Low Energy (BLE).
ble = bluetooth. BLE()# Utwórz instancję klasy BLESimplePeripheral z obiektem BLE
sp = BLESimplePeripheral (ble)
adc = ADC(4)chwilaPRAWDA:
Jeśli sp.is_connected(): # Sprawdź, czy nawiązano połączenie BLE
# Odczytaj wartość z wewnętrznego czujnika temperatury
temperatura = adc.odczyt_u16() * 3,3 / (65535 * 0,8)
# Prześlij wartość temperatury przez BLE
temperatura_dane = str (temperatura). kodowanie ()
sp.wysłać(temperatura_dane)
czas.spać(1)
Ten kod odczyta wewnętrzny czujnik temperatury Pico i prześle go przez Bluetooth. Zapisz plik jako main.py na swojej płycie Pico W, a następnie uruchom ją w Thonny. Powinieneś być w stanie zobaczyć „Początkowa reklama” w obszarze powłoki.
Konfigurowanie aplikacji na Androida
Na telefonie z systemem Android zainstaluj aplikację Serial Bluetooth Terminal ze sklepu Google Play.
Pobierać:Szeregowy terminal Bluetooth (Dostępne bezpłatne zakupy w aplikacji)
Włącz Bluetooth w telefonie, a następnie uruchom aplikację. Nawigować do Urządzenia.
Idź do Bluetooth LE zakładkę, a następnie kliknij SKANOWANIE.
Po zeskanowaniu zobaczysz nazwę Pico W wymienioną jako mpy-uart. Kliknij go, aby się połączyć.
Gdy oba urządzenia zostaną połączone, w aplikacji zobaczysz słowo „Połączono”. Terminal pogląd.
Wartości czujnika temperatury powinny zacząć pojawiać się w terminalu aplikacji co sekundę, jak pokazano na powyższym obrazku.
Możesz połączyć się przez Bluetooth z innym serwerem Pico W w „centralnej” roli, wstępnie ładując moduł pomocniczy z nazwą ble_simple_central.py znalezione w Repozytorium MUO GitHub.
Popraw swoje wrażenia z Pico W
Dzięki integracji Bluetooth gromadzenie danych z czujników staje się bezproblemowe, otwierając nowe możliwości i poprawiając ogólne wrażenia z pracy z Raspberry Pi Pico W w projektach IoT.