Relógio com Raspberry Pi Pico W - MakerHero

Relógio com Raspberry Pi Pico W Deixe um comentário

Neste artigo vamos alavancar as capacidade de IoT da Raspberry Pi Pico W e construir um Relógio Inteligente que apresenta em um display gráfico colorido a hora atual e a previsão do tempo (obtidos da Internet) e a temperatura local (obtida de um sensor) .

Relógio com Raspberry Pi Pico W
Relógio com Raspberry Pi Pico W

Materiais Necessários para montar o Relógio com Raspberry Pi Pico W 

Para criar um Relógio Inteligente com Raspberry Pi Pico W, você irá precisar dos seguintes componentes:

Preparativos – Instalando o Interpretador MicroPython

Siga os passos abaixo para preparar a sua Pi Pico para usar o MicroPython:

  • Baixe e instale no seu computador a IDE Thonny (https://thonny.org/).
  • Entre em Tools Options, selecione a aba Interpreter e escolha MicroPython (Raspberry Pi Pico).
Configuração do Relógio com Raspberry Pi Pico W na IDE Thonny
Configuração do Relógio com Raspberry Pi Pico W na IDE Thonny
  • Aberte o botão BOOTSEL da Pi Pico e, mantendo o botão apertado, conecte a Pi Pico ao seu PC. Aguarde a placa ser reconhecida como uma unidade de disco.
  • Clique no link “Install or update firmware”
Instalação do firmware para programar nosso relógio com Raspberry Pi Pico W
Instalação do firmware para programar nosso relógio com Raspberry Pi Pico W
  • Selecione “Raspberry Pi Pico W / Pico WH”
  • Click no botão Install e aguarde aparecer a mensagem Done!
  • Click no botão Close

Instalando o Driver do Display e Fontes

Para escrever no display precisamos instalar um driver e de dois fontes (um deles com os ícones para a previsão de tempo). Para realizar a instalação, execute o Thonny com a Pico W conectada ao micro e siga os passos abaixo:

  • Baixe os arquivos necessários de  https://github.com/dquadros/RelogioPico/archive/refs/heads/main.zip
  • Expanda o zip em um diretório do seu micro
  • No Thonny, use View Files para apresentar os diretórios no micro e na placa
  • Navega na área de aquivo do micro para o diretório onde estão os arquivos da biblioteca, clique com o botão direito e escolha Focus into
  • Clique com o botão direito no diretório lib nos arquivos do micro e escolha Upload to /

Obtendo a URL de Consulta  à Previsão do Tempo

Vamos obter a previsão do tempo do serviço Open-Meteo acessa a página https://open-meteo.com/en/docs e faça as seguintes seleções:

  • Coloque o nome da sua cidade em Select City (ou forneça a latitude e longitude):
  • Desmarque Temperature em Hourly Weather Variables:
  • Marque Weathercode, Sunrise e Sunset em Daily Weather Variables:
  • Em Settings, selecione o fuso horário (Timezone)
  • Copie e salve a API URL

Esquemático relógio com Raspberry Pi Pico W 

A figura abaixo mostra a montagem do projeto.

Esquemático do Relógio Inteligente com o Pico W
Esquemático do Relógio Inteligente com o Pico W

Obs: ao invés do sensor DHT-11 avulso, você pode usar um módulo com ele (como este aqui). Neste caso, acerte as conexões conforme a pinagem do módulo, não é necessário o resistor de 4.7KΩ pois ele já está no módulo.

Programação do relógio com Raspberry Pi Pico W 

O nosso programa vai estar dividido em vários módulos. Cada módulo deve ser copiado no Thonny e salvo na placa com o nome indicado (ou você pode copiar diretamente do micro para a placa a partir do diretório onde você colocou o driver do display.

O primeiro módulo, secrets.py contem o nome e a senha da rede WiFi que será usada:

O módulo weather.py contém as funções para obter a previsão de tempo.

O módulo dht.py contém uma classe para acesso ao sensor DHT11 (extraída do artigo “Como utilizar o PIO da Raspberry Pi Pico para Comunicar sensores DHT11 ou DHT22”).

Por último, o módulo main.py contém o programa principal.

Note que o programa principal utiliza o módulo ntptime (que já vem instalado no MicroPython) para obter a hora atual da internet.

Como o programa principal foi salvo com o nome main.py, ele será automaticamente executado quando a Pi Pico for ligada. Para interromper a execução, digite Control C no Thonny.

Conclusão

Neste artigo vimos como usar o MicroPython para alavancar o recurso de comunicação da Pi Pico e construir um relógio que apresenta um agregado de informações obtidas via internet (hora e clima) com obtidas localmente (temperatura).

Algumas sugestões de mudanças para você implementar:

  • Apresentar a informação de umidade do sensor DHT11
  • Apresentar outras informações obtidas da open-meteo
  • Acrescentar outros sensores locais (como um sensor de pressão BMP280) e apresentar suas informações
  • Acrescentar um buzzer e implementar uma função de alarme
  • Apresentar outras informações obtidas de outras APIs disponíveis na internet

E então, gostou deste projeto? Deixe um comentário abaixo contando se você pretende montá-lo (ou já montou) e o que acrescentaria nele.

Anunciada a Raspberry Pi 5

Faça seu comentário

Acesse sua conta e participe