Sensor de Umidade e Tempertura para dispositivos Raspberry. O raspweathermonitor expõem os resultados das medições em um Endpoint de uma REST API e que poderá ser consumida por outros sistemas.
O monitor ambiental é montado com os seguintes componentes de hardware:
- Raspberry pi 3+
- Protoboard
- Sensor DHT11
Para a montagem do sensor ambiental é necessário conectar o Sensor DHT11 à pinagem do Raspberry. Para as ligações, identifique o pino de dados e de alimentação do DHT11. As conexões devem ser realizadas seguindo o seguinte esquema:
Após montar o hardware, vamos à configuração dos softwares
Para expor parte de software vamos utilizar:
- Raspberry Pi OS Lite (Kernel version: 5.10) [https://www.raspberrypi.org/software/operating-systems/]
- Adafruit_Python_DHT [https://github.com/adafruit/Adafruit_Python_DHT]
- Django [https://www.djangoproject.com/]
- Django REST framework [https://github.com/encode/django-rest-framework/tree/master]
Instale o Raspberry Pi OS Lite de acordo com o tutorial disponível no site da distribuição: https://www.raspberrypi.org/software/
Após instalar e atualizar o Sistema Operacional, instale o git, se ainda não tiver instalado:
$ sudo apt update
$ sudo apt install git
Instale os pacotes necessários para criar o ambientes virtuais no Python.
$ sudo apt install python3-venv
Clone o código do RaspWeatherMonitor e entre na pasta da aplicação:
$ git clone https://github.com/jscmenezes/raspweathermonitor.git
$ cd raspweathermonitor
Crie o ambiente python e ative-o:
$ python3 -m venv env_raspweathermonitor
$ source env_raspweathermonitor/bin/activate
Atualize o pip, gerenciador de pacotes do Python:
$ pip install --upgrade pip
Instale as dependências do RaspWeatherMonitor:
$ pip install -r requirements.txt
Para testar o funcionamento execute o script simpletest.py e o retorno deve mostrar a temperatura e a umidade medida pelo sensor:
$ python simpletest.py
Temp=17.0*C Humidity=92.0%
Siga os passos descritos em https://core.telegram.org/bots#creating-a-new-bot
Após criar o seu Bot você receberá um token. Adicione o token no arquivo rwmbot.py na linha semelhante a
updater = Updater("token-do-telegram")
Execute o arquivo para testar o bot
$ python rwmbot.py
Adicione seu bot no Telegram e inicie a conversa enviando os comandos /start e a após realize um teste com o /eco
> /start
> /echo "Olá meu robô!"
Se você receber a sua mensagem de volta é porque o bot está funcionando. Verifique a temperatura e a umidade do seu sensor com os comandos /temperatura e /umidade.
É isto!