Cách đọc cảm biến Raspberry Pi Pico W bằng Bluetooth
Raspberry Pi Pico W, một bảng phát triển IoT phổ biến từ Raspberry Pi Foundation, đã thu hút được rất nhiều sự chú ý của các nhà sản xuất sau khi ra mắt vào năm 2022. Kể từ khi phát hành chính thức phiên bản 1.5.1 của SDK C và bản dựng MicroPython mới nhất, việc kết nối Bluetooth hoạt động trên bo mạch Raspberry Pi Pico W (và WH) trở nên dễ dàng hơn.
Bảng cho phép bạn đọc và chia sẻ dữ liệu qua Bluetooth, mở ra vô số cơ hội dự án xung quanh IoT. Và điều tốt là nó chỉ yêu cầu cập nhật chương trình cơ sở. Chỉ cần làm theo các bước bên dưới để đọc dữ liệu cảm biến bằng Bluetooth trên Raspberry Pi Pico W của bạn.
Mục Lục
Raspberry Pi Pico W/WH và Bluetooth
Raspberry Pi Pico W là một bo mạch vi điều khiển được xây dựng dựa trên sự thành công của mẫu Raspberry Pi Pico ban đầu. Duy trì yếu tố hình thức tương tự như người tiền nhiệm của nó, nó bổ sung kết nối Wi-Fi và Bluetooth. Nó vẫn có sơ đồ chân Raspberry Pi Pico tiêu chuẩn cho các tiêu đề GPIO 20 chân kép của nó.
Pico W được trang bị chipset vô tuyến Infineon CYW43439 vốn hỗ trợ cả Wi-Fi 802.11n và Bluetooth 5.2.
Cài đặt Pico C/C++ SDK mới nhất
Pico C/C++ SDK là bộ công cụ phát triển phần mềm được thiết kế đặc biệt để lập trình bộ vi điều khiển Raspberry Pi Pico sử dụng ngôn ngữ lập trình C và C++. Nó cung cấp một bộ thư viện, công cụ và tài nguyên để đơn giản hóa quy trình phát triển và cho phép các nhà phát triển tạo ứng dụng cho bảng Pico.
Để làm việc với SDK Pico C/C++, bạn sẽ cần một số thành phần phần mềm thiết yếu. Dưới đây là danh sách các chương trình cần thiết để tải xuống:
- Trình biên dịch ARM GCC: Được sử dụng để biên dịch và xây dựng mã C/C++ của bạn cho bộ vi điều khiển Pico.
- CMake: Một hệ thống xây dựng đa nền tảng giúp quản lý quá trình xây dựng và tạo các tệp dự án.
- Công cụ xây dựng cho Visual Studio 2019: Những công cụ này là bắt buộc nếu bạn đang sử dụng Visual Studio làm môi trường phát triển tích hợp (IDE) của mình.
- con trăn: Ngôn ngữ lập trình này được sử dụng bởi một số công cụ Pico SDK, vì vậy hãy đảm bảo bạn đã cài đặt phiên bản 3.9 trở lên.
- Git: Hệ thống kiểm soát phiên bản này cho phép bạn quản lý và theo dõi các thay đổi trong cơ sở mã của mình.
- Mã phòng thu trực quan: Mặc dù không bắt buộc, nhưng Visual Studio Code là trình chỉnh sửa mã phổ biến với sự hỗ trợ tuyệt vời cho Pico SDK, cung cấp các tính năng như đánh dấu cú pháp, hoàn thành mã và gỡ lỗi.
Cài đặt MicroPython
Ngoài ra, bạn có thể sử dụng MicroPython để lập trình Pico W của mình, như chúng tôi sẽ sử dụng trong ví dụ bên dưới. Dưới đây là các bước bạn cần thực hiện để cài đặt và sử dụng nó.
Nhấp nháy chương trình cơ sở UF2
Có một số cách để đưa bảng Pico W vào chế độ bộ nạp khởi động. Một cách là thực hiện lệnh máy.bootloader() tại REPL của MicroPython. Một tùy chọn khác là giữ nút BOOTSEL của Pico trong khi cắm bo mạch vào cổng USB của máy tính.
Khi Pico của bạn ở chế độ bộ nạp khởi động, bạn sẽ nhận thấy rằng thiết bị lưu trữ dung lượng lớn USB xuất hiện trên máy tính của mình.
Bây giờ, tất cả những gì bạn cần làm là sao chép tệp UF2 chứa chương trình cơ sở mới vào thiết bị lưu trữ dung lượng lớn USB này.
Bạn có thể tải xuống tệp UF2 từ trang tải xuống MicroPython—và nếu bạn muốn tìm hiểu sâu hơn về nội dung của bản cập nhật hỗ trợ Bluetooth, bạn có thể xem qua các ghi chú phát hành.
Khi quá trình flash chương trình cơ sở đang diễn ra, bạn sẽ thấy đèn LED trên bảng Pico của mình nhấp nháy nhanh. Sau đó, bo mạch sẽ tự động thiết lập lại và sẵn sàng sử dụng.
Ngoài ra, bạn có thể flash chương trình cơ sở vào Pico từ Thonny IDE, như chi tiết bên dưới.
Sử dụng Thonny IDE
Đầu tiên, kết nối Pico của bạn với máy tính qua USB. Đảm bảo Pico đang ở chế độ bộ nạp khởi động bằng cách giữ nút BOOTSEL khi kết nối bảng.
Khởi chạy Thonny IDE trên máy tính của bạn và bạn sẽ thấy một giao diện với cửa sổ soạn thảo, như hình bên dưới.
Bạn sẽ cần thay đổi trình thông dịch được sử dụng thành MicroPython. Từ menu Thonny, đi đến Công cụ > Tùy chọn.
bên trong Tùy chọn cửa sổ, bấm vào Thông dịch viên chuyển hướng. Chọn MicroPython (Mâm xôi Pi Pico) từ Thông dịch viên trình đơn thả xuống.
Đặt cổng thành Cố gắng phát hiện tự động, sau đó nhấp vào liên kết cài đặt ở dưới cùng, liên kết này sẽ mở ra một cửa sổ cài đặt khác. IDE sẽ tự động điền thông tin chi tiết về bo mạch của bạn cùng với chương trình cơ sở mới nhất mà bạn cần cài đặt. Sau khi cài đặt hoàn tất, nhấp vào nút Đóng nút và sau đó chọn ĐƯỢC RỒI.
Lưu các mô-đun Bluetooth cần thiết
Để bật giao tiếp Bluetooth Low Energy trên Raspberry Pi Pico, bạn cần lưu hai mô-đun MicroPython. Đây là cách bạn có thể làm điều đó bằng cách sử dụng Thonny IDE (hoặc các IDE khác như uPyCraft).
Truy cập repo GitHub của chúng tôi và lấy mã trợ giúp đầu tiên dưới tên ble_advertising.py. Điều này sẽ giúp bạn tạo tải trọng và phát chúng tới các nút được kết nối.
Khi bạn sao chép mã, hãy mở một dự án mới trên Thonny IDE và dán mã đó vào trình chỉnh sửa. Sau đó lưu vào Pico W dưới dạng ble_advertising.py bằng cách nhấp vào Tệp > Lưu BẰNG và sau đó chọn Quả mâm xôi Pi Pico.
Tạo một tệp khác trong Thonny và sao chép mã dưới tệp có tên ble_simple_peripheral.py trong repo GitHub.
Lưu mã với tên ban đầu của nó trên bảng Pico W như bạn đã làm trước đây.
Đọc dữ liệu qua Bluetooth LE bằng Pi Pico W
Trước tiên, hãy đảm bảo rằng bạn đã tải trước hai mô-đun cho bo mạch Pico W (như đã trình bày ở trên). Sau đó tạo một tệp mới và sao chép mã bên dưới vào đó.
from machine import Pin, ADC
import bluetooth
from ble_simple_peripheral import BLESimplePeripheral
ble = bluetooth.BLE()
sp = BLESimplePeripheral(ble)
adc = ADC(4)
while True:
if sp.is_connected():
temperature = adc.read_u16() * 3.3 / (65535 * 0.8)
temperature_data = str(temperature).encode()
sp.send(temperature_data)
time.sleep(1)
Mã này sẽ đọc cảm biến nhiệt độ bên trong Pico và truyền nó qua Bluetooth. Lưu tệp dưới dạng chính.py trên bảng Pico W của bạn rồi chạy nó trong Thonny. Bạn sẽ có thể thấy “Bắt đầu quảng cáo” trong khu vực Shell.
Định cấu hình ứng dụng Android
Trên điện thoại Android của bạn, hãy cài đặt ứng dụng Serial Bluetooth Terminal từ Cửa hàng Google Play.
Tải xuống: Thiết bị đầu cuối Bluetooth nối tiếp (Có sẵn giao dịch mua trong ứng dụng, miễn phí)
Bật Bluetooth của điện thoại, sau đó khởi chạy ứng dụng. Hướng đến thiết bị.
đi đến Bluetooth LÊ tab sau đó bấm vào QUÉT.
Sau khi quét, bạn sẽ thấy tên của Pico W được liệt kê là mpy-uart. Bấm vào nó để kết nối.
Sau khi hai thiết bị được kết nối, bạn sẽ thấy từ “Đã kết nối” trong ứng dụng Phần cuối xem.
Các giá trị của cảm biến nhiệt độ sẽ bắt đầu được điền trong thiết bị đầu cuối của ứng dụng mỗi giây, như thể hiện trong hình trên.
Bạn có thể kết nối qua Bluetooth với một Pico W khác phục vụ trong vai trò “trung tâm” bằng cách tải trước mô-đun trợ giúp có tên ble_simple_central.py được tìm thấy trong kho lưu trữ MUO GitHub.
Nâng cao trải nghiệm Pico W của bạn
Với tích hợp Bluetooth, việc thu thập các giá trị cảm biến trở nên dễ dàng, mở khóa các khả năng mới và nâng cao trải nghiệm tổng thể khi làm việc với Raspberry Pi Pico W trong các dự án IoT.