Como enviar alertas do Raspberry Pi Pico W para um telefone ou tablet
LarLar > blog > Como enviar alertas do Raspberry Pi Pico W para um telefone ou tablet

Como enviar alertas do Raspberry Pi Pico W para um telefone ou tablet

Dec 08, 2023

Alertas personalizados, mensagens do seu Pico W para o seu dispositivo móvel.

O Raspberry Pi Pico W, de US $ 8, é uma pequena prancha maravilhosa. Durante a escassez global de fornecimento de chips, ele preencheu um buraco bastante grande em forma de Raspberry Pi no estoque do Raspberry Pi e forneceu aos fabricantes uma plataforma IoT (Internet das Coisas) de baixo custo e fácil de usar. Claro que não é o primeiro microcontrolador conectado à Internet (podemos discutir essa honra nos comentários), mas para muitos fãs do Raspberry Pi foi o primeiro passo no maravilhoso mundo dos microcontroladores.

Enquanto o Raspberry Pi executa um sistema operacional Linux completo, o Raspberry Pi Pico W depende do firmware para fornecer uma camada na qual podemos escrever nosso código. MicroPython é uma das linguagens oficialmente suportadas e passou por muitas melhorias para acomodar o Raspberry Pi Pico. Uma melhoria foi a inclusão de urequests (microsolicitações) que permitem ao nosso Pico W enviar e receber solicitações HTTP.

Neste tutorial, usaremos urequests junto com ntfy.sh, um serviço e aplicativo gratuito para dispositivos Android e Apple que pode interceptar mensagens de dispositivos IoT e exibi-las em seu dispositivo. Vamos utilizá-lo para enviar alertas para o nosso celular Android, alertas que são acionados por um sensor PIR (infravermelho passivo) que detecta movimento em uma sala.

Ntfy.sh é um serviço extremamente eficaz e simples. Em vez de instalar um módulo Python/MicroPython específico, ele funciona com solicitações de envio de mensagens do Raspberry Pi Pico W usando um tópico específico (muito semelhante ao funcionamento do MQTT). Nosso dispositivo Android/iOS está inscrito neste tópico e recebe as notificações do Pico W.

Estamos limitados ao envio de texto no Raspberry Pi Pico W, mas este projeto também pode ser usado com Raspberry Pi SBCs e a câmera oficial Raspberry Pi para enviar imagens (ou qualquer outra forma de anexo) quando um evento acontecer. Diga se um pássaro está se alimentando do seu comedouro ou se alguém está no seu quintal. Para obter um exemplo de como usar imagens com ntfy.sh, dê uma olhada em nosso tutorial sobre como usar dicionários.

O circuito para este projeto é incrivelmente simples, propositalmente. Existem apenas três conexões entre o sensor PIR e o Raspberry Pi Pico.

Conecte os fios entre o Pico e o sensor PIR antes de prosseguir.

1.Instale ntfy.shpara o seu dispositivo Android / iOS.

2. Abra o aplicativo e clique em + para criar uma nova assinatura.

3.Crie um novo tópico e clique em Inscrever-se. Optamos por usar o teste. Crie um tópico que seja pessoal para você. Observe também que os tópicos podem não ser protegidos por senha, portanto, não envie dados confidenciais.

4.Deixe o aplicativo abertono seu dispositivo.

Agora passamos para a codificação do Raspberry Pi Pico W.

5.Siga esses passospara baixar a versão mais recente do MicroPython para o Raspberry Pi Pico W. As etapas mais importantes são baixar e instalar a imagem do firmware UF2 e configurar o Thonny. O resto é opcional.

6.Abra Thonnyeclique no botão Parar para atualizar a conexão. Isso garante que o Python Shell esteja aberto e funcionando corretamente.

7.Crie um novo arquivo em branco.

8.Importe o módulo de rede e depois importe urequests, renomeando-o para requests. O módulo de rede permite que nosso Pico W se conecte à internet. Urequests é uma versão MicroPython do módulo de solicitações do Python que usaremos para enviar uma mensagem do Pico W. Urequests agora está pré-instalado na versão mais recente do firmware UF2.

9.Importe a função sleep do horário e fixe da máquina. A função sleep será usada para adicionar uma pausa ao código do projeto. O módulo da máquina contém funções e classes que permitem ao nosso código controlar e ler pinos GPIO.

10.Crie um objeto, pir, e use-o para criar uma conexão com o pino de saída PIR no GPIO 16.O pino precisa ser definido como entrada, e devemos puxar o pino GPIO para cima (3V) para que quando o PIR for acionado, o sinal puxe o pino para baixo.