Como ler um sensor Raspberry Pi Pico W usando Bluetooth
A Raspberry Pi Pico W, uma aclamada placa de desenvolvimento para a Internet das Coisas (IoT) introduzida pela Raspberry Pi Foundation em 2022, tem atraído uma atenção significativa dos fabricantes desde o seu lançamento. Com a disponibilidade da versão 1.5.1 do C SDK e a construção mais recente do MicroPython, os usuários agora podem estabelecer mais facilmente a conetividade Bluetooth nas placas Raspberry Pi Pico W e WH.
A placa facilita a leitura e a partilha de dados através de Bluetooth, apresentando uma série de possibilidades em relação à Internet das Coisas (IoT). Além disso, basta atualizar o firmware para utilizar esta função. Consulte as instruções fornecidas para adquirir dados de sensores através de Bluetooth no seu Raspberry Pi Pico W.
Raspberry Pi Pico W/WH e Bluetooth
O Raspberry Pi Pico W é uma placa de microcontrolador que emula a funcionalidade do aclamado modelo Raspberry Pi Pico, incorporando simultaneamente capacidades sem fios através da integração de conetividade Wi-Fi e Bluetooth. Mantendo as suas dimensões compactas e formato idêntico ao da iteração anterior, este dispositivo possui a pinagem familiar do Raspberry Pi Pico para os seus conectores GPIO duplos de 20 pinos, permitindo aos utilizadores interagir facilmente com dispositivos externos.
O Pico W está equipado com o chipset sem fios Infineon CYW43439, que está integrado com capacidades Wi-Fi 802.11n e Bluetooth 5.2 como características intrínsecas.
Instalar o SDK mais recente do Pico C/C++
O SDK do Pico C/C++ é um kit de desenvolvimento de software abrangente que foi concebido especificamente para utilizar as linguagens de programação C e C++ para programar o microcontrolador Raspberry Pi Pico. Este kit inclui uma coleção de bibliotecas, ferramentas e recursos que se destinam a facilitar o processo de desenvolvimento e a permitir que os programadores criem aplicações para a placa Pico.
Para utilizar o SDK do Pico C/C++, são necessárias determinadas ferramentas de software. Segue-se uma lista das aplicações obrigatórias que devem ser descarregadas:
O compilador Arm GCC é uma ferramenta utilizada para compilar e construir código C/C++ destinado a funcionar no microcontrolador Pico.
O CMake é uma ferramenta de desenvolvimento multiplataforma versátil e adaptável que facilita a gestão de processos de compilação e a geração de ficheiros de projeto, permitindo aos programadores criar facilmente aplicações robustas e eficientes em várias plataformas.
Os utilitários referidos como “Ferramentas de Construção” são indispensáveis se o espaço de trabalho de desenvolvimento de software preferido for o Microsoft Visual Studio 2019, e funcionam como um Ambiente de Desenvolvimento Integrado (IDE)
A utilização de Python, uma linguagem de programação, é necessária para determinadas ferramentas do Pico SDK, pelo que se recomenda a instalação da versão 3.9 ou posterior.
O Git é um sistema de controlo de versões altamente versátil que permite aos utilizadores supervisionar meticulosamente e controlar as modificações no seu repositório de código-fonte de software.
O Visual Studio Code é um editor de código altamente recomendado que apresenta uma compatibilidade excecional com o SDK do Pico, oferecendo uma série de funcionalidades úteis, como realce de sintaxe nativa, preenchimento automático e capacidades de depuração.
Instalação do MicroPython
Para utilizar o MicroPython no seu Pico W, siga estes procedimentos:
Flashing do Firmware UF2
Para iniciar a placa do Pico W no modo de carregador de arranque, existem dois métodos disponíveis. O primeiro envolve a execução do comando
machine.bootloader()
no MicroPython REPL. Em alternativa, pode premir e manter premido o botão BOOTSEL do Pico enquanto liga a placa ao computador via USB.
Ao colocar o seu Pico no modo de carregador de arranque, pode observar que um dispositivo de armazenamento de massa USB passa a ser detetável no seu sistema informático.
Introduza o dispositivo de armazenamento em massa USB que contém o firmware atualizado na porta designada do aparelho.
Pode descarregar o ficheiro UF2 a partir da página de descarregamento do MicroPython
- e se quiser saber mais sobre o que implica a atualização do suporte Bluetooth, pode consultar as notas de lançamento do
.
Durante o processo de atualização do firmware, a luz LED da placa do Pico apresentará um padrão de piscar rápido. Em seguida, o dispositivo é reiniciado automaticamente e volta a estar operacional.
Pode optar por atualizar o firmware do seu dispositivo Pico através do Ambiente de Desenvolvimento Integrado (IDE) Thonny seguindo estes passos:
Utilizar o Thonny IDE
Ligue o dispositivo Pico ao computador através da sua interface USB enquanto mantém a placa Pico no modo de carregador de arranque premindo e mantendo premido o botão BOOTSEL durante o processo de ligação.
Ao iniciar o Thonny IDE no seu dispositivo informático, ser-lhe-á apresentada uma interface com uma janela de editor, conforme ilustrado abaixo:
Modifique o interpretador utilizado pelo MicroPython a partir do menu Thonny. Aceda a ele através de Tools > Options
Na janela Options, seleccione o separador Interpreter e escolha MicroPython (Raspberry Pi Pico) a partir do menu suspenso Interpreter.
Defina a porta para deteção automática e, em seguida, clique no link de instalação localizado na parte inferior da página. Isso abrirá uma nova janela de instalação. O Ambiente de Desenvolvimento Integrado (IDE) deve apresentar automaticamente as informações necessárias para a sua placa, juntamente com o firmware mais recente que requer instalação. Quando o processo de instalação estiver concluído, feche a janela de instalação clicando no botão “Fechar” e, em seguida, seleccione “OK”.
Guardar os módulos Bluetooth necessários
Para facilitar a comunicação sem fios utilizando a tecnologia Bluetooth Low Energy numa Raspberry Pi Pico, é necessário descarregar e instalar dois módulos MicroPython. Este processo pode ser efectuado através da utilização de um ambiente de desenvolvimento integrado (IDE) como o Thonny ou o uPyCraft.
Obtenha o script auxiliar inicial denominado “ble\_advertising.py” no nosso repositório no GitHub, uma vez que facilita a geração e a transmissão de dados de carga útil aos dispositivos associados.
Siga estes passos para executar o código no seu Raspberry Pi Pico:1. abra um novo projeto no Thonny IDE e copie o código fornecido para o editor.2Clique em “Ficheiro” na barra de menu superior, seguido de “Guardar como”.3. Seleccione “Raspberry Pi Pico” no menu pendente em “Guardar como tipo” e, em seguida, clique em “Guardar”.4. O programa será agora guardado como “ble\_advertising.py” na localização selecionada.5Ligue o seu Raspberry Pi Pico via USB ao seu computador.6. Abra duas janelas de terminal, uma para o Raspberry Pi Pico e outra para o seu computador.7.Na janela de terminal do Raspberry Pi Pico, introduza o comando
Por favor, crie um novo ficheiro no ambiente Thonny e cole o código dentro de um ficheiro
Por favor, guarde o programa escrito anteriormente com o seu nome de ficheiro original na placa Pico W, da mesma forma que o fez anteriormente.
Leitura de dados através de Bluetooth LE usando a Pi Pico W
Em primeiro lugar, certifique-se de que a placa Pico W está equipada com os dois módulos, tal como discutido anteriormente.Em seguida, crie um novo documento e duplique nele o código seguinte.
from machine import Pin, ADC
import bluetooth
from ble_simple_peripheral import BLESimplePeripheral
# Create a Bluetooth Low Energy (BLE) object
ble = bluetooth.BLE()
# Create an instance of the BLESimplePeripheral class with the BLE object
sp = BLESimplePeripheral(ble)
adc = ADC(4)
while True:
if sp.is_connected(): # Check if a BLE connection is established
# Read the value from the internal temperature sensor
temperature = adc.read_u16() * 3.3 / (65535 * 0.8)
# Transmit the temperature value over BLE
temperature_data = str(temperature).encode()
sp.send(temperature_data)
time.sleep(1)
O código supracitado foi concebido para extrair dados do sensor de temperatura interno do Pico utilizando a sua funcionalidade Bluetooth integrada e apresentar esta informação na interface do Thonny. Para executar este programa, guarde o ficheiro como “main.py” na placa Pico W e, em seguida, execute-o no Thonny. O utilizador deve então observar a mensagem “Starting Advertising” que aparece na secção shell da aplicação.
Configurar a aplicação Android
Instale a aplicação “Serial Bluetooth Terminal” a partir da Google Play Store no seu dispositivo Android.
Descarregar: Serial Bluetooth Terminal (Gratuito, compras na aplicação disponíveis)
Active a funcionalidade Bluetooth no seu dispositivo móvel e, em seguida, inicie a aplicação. Em seguida, navegue até à opção “Dispositivos” dentro da aplicação.
Verifique os dispositivos Bluetooth Low Energy (BLE) utilizando o separador Bluetooth LE e clicando na opção “Verificar”.
Após uma leitura bem sucedida, o dispositivo será reconhecido pelo sistema como “mpy-uart”. Para estabelecer uma ligação com o Pico W, clique nesta entrada na lista de dispositivos disponíveis.
Depois de estabelecer a ligação entre os dois dispositivos, a vista Terminal da aplicação apresenta a mensagem “Ligado”.
As leituras obtidas a partir do sensor de temperatura devem ser visualizadas na consola da aplicação a um intervalo regular de um segundo, como mostra a ilustração em anexo.
Para estabelecer uma ligação entre duas placas Pico W utilizando Bluetooth, pode pré-carregar o módulo auxiliar “ble\_simple\_central.py” do repositório All Things N GitHub num dos dispositivos que actua como unidade central.
Melhore a sua experiência com o Pico W
A incorporação da tecnologia Bluetooth permite a aquisição ininterrupta de dados de sensores, abrindo novos caminhos para a exploração e contribuindo para uma melhor experiência do utilizador ao utilizar o Raspberry Pi Pico W em empreendimentos da Internet das Coisas (IoT).