Use o Botão IoT e Raspberry Pi para monitorar seu aquário 4

Você acompanhou em um de nossos tutoriais passados como desenvolver seu próprio Botão IoT com Raspberry Pi Zero W. Um botão que pode ser usado para realizar diversas tarefas de IoT e que se conecta a diversos serviços da Web utilizando IFTTT. Neste post iremos mostrar uma aplicação real do Botão IoT e Raspberry Pi, através de um projeto de monitoramento de aquário onde é notificado se o peixe deve ser alimentado utilizando o aplicativo de mensagens Telegram.

O material utilizado neste projeto de monitoração de aquário é o mesmo utilizado no post do botão IoT citado acima, com Raspberry Pi Zero W, mas você pode usar qualquer outra versão da placa Raspberry, se desejar.

Porque usar o monitoramento com botão IoT e Raspberry Pi

Na MakerHero temos nosso mascote, o Berry, um peixe Beta vermelho, que já foi a estrela de um outro post nosso, o Streaming com Raspberry Pi.

O Berry deve ser alimentado uma vez por dia. Como temos diversas pessoas trabalhando na empresa, qualquer um pode alimentar o Berry. Mas antes é necessário saber se ele já foi alimentado para não matar o coitado de tanto comer!

Com isso surgiu a idéia de implementar um sistema que notificasse o dia e a hora em que o peixe foi alimentado pela última vez utilizando o aplicativo de mensagens Telegram. Para que a notificação fosse enviada, seria necessário acionar nosso Botão IoT, que estaria posicionado ao lado do aquário. Toda vez que alguém alimentasse o peixe, deveria apertar o botão. Então a notificação seria enviada avisando que o peixe já foi alimentado.

Seria possível também enviar uma mensagem no chat perguntando a data e hora da última alimentação, e o peixe “responderia” com a informação.

Recebendo notificação via Telegram

Com isso poderíamos facilitar o processo de alimentação do peixe mascote da MakerHero. 

API de Bots do Telegram

Bots nada mais são do que softwares desenvolvidos com o objetivo de simular uma pessoa conversando em um chat como, Facebook, Telegram, Whatsapp e etc. Por exemplo sua casa poderia ter um usuário no Whatsapp e você poderia “conversar” com ela perguntando a temperatura ambiente, mandar uma mensagem para ligar/desligar as luzes e etc.

Assim como outros softwares de bate-papo possuem uma API para criação de Bots, o Telegram também nos dá essa possibilidade. Você já deve ter visto como criar Bots no Telegram utilizando a Beaglebone Black.

Bot Berry The Fish

Foi então criado um Bot chamado Berry The Fish. Para criar Bots basta iniciar um chat com o Bot Father pelo Telegram. Siga os passos indicados e obtenha um token. Esse token será necessário caso você queira reproduzir este Bot em casa.

Botão IoT e Raspberry Pi

O Bot segue a seguinte lógica: Quando o peixe é alimentado, o botão deve ser pressionado, salvando a hora em um arquivo e notificando no Telegram que o peixe foi alimentado. Após 24 horas, é enviada uma nova notificação avisando que o peixe precisa de ração. Se o comando ‘/berry’ é enviado no chat, ele retorna a data e horário que foi alimentado pela última vez.

O Bot foi desenvolvido utilizando Nodejs e o wrapper Node.js Telegram Bot API para acesso a API de Bots do Telegram. Todo o código fonte do Bot está disponível no GitHub da MakerHero. Se quiser testar o Bot em sua própria Raspberry Pi, basta clonar o repositório: https://github.com/MakerHero/berry-the-fish-bot-telegram

Com o projeto do Botão IoT e Raspberry Pi montado, entre na pasta clonada e instale as dependências com o comando abaixo:

npm install

Antes de executar o Bot edite o arquivo app.js colocando o Token criado com o Bot Father.

const token = 'seu token telegram aqui';

Inicie o Bot com o comando abaixo:

node app.js

Abra o Telegram e inicie uma conversa com o Bot. Ao clicar em Start, verifique a linha de comando e anote o número ID do chat. Esse ID será necessário para que o Bot envie mensagens automaticamente sem a necessidade de haver um comando pelo Telegram. Esse é o caso das mensagens de notificação.

Pare o Bot, edite novamente o arquivo app.js colocando o ID do chat na linha seguinte:

const chat_id = 'seu chat ID aqui';

Agora sim o Bot deverá estar em pleno funcionamento.

Se você quiser, pode testar o Bot escaneando o QR Code abaixo, ele tem todas as funcionalidades menos a de notificação, pois depende do chat ID.

QRCode Berry The Fish

Veja todo o sistema em ação no vídeo abaixo:

YouTube video

Gostou do projeto de monitoramento de aquário com botão IoT e Raspberry Pi? Ajude-nos a melhorar o blog comentando abaixo sobre este tutorial. 

Faça seu comentário

Acesse sua conta e participe

4 Comentários

  1. Bom dia Giovanni,

    Gostaria de criar um monitoramento de temperatura e alimentação para peixes de aquários domésticos. É para um trabalho acadêmico. Gostaria de orçamento dos materiais e quais seriam para adquirir com vocês. Obrigado!

    1. Olá amigo!

      Quais materiais você precisa?

      Temos um sensor de temperatura a prova dágua: https://www.makerhero.com/produto/sensor-de-temperatura-ds18b20-a-prova-dagua/

      Para orçamentos entre em contato com nosso atendimento!

      Abraço e bons projetos!

  2. Muito massa! E vcs resolveram um problema de uma forma muito moderna …haha

    Parabéns pelo trabalho! Já pensei em varias possibilidades e projetos, com certeza irei comprar meu primeiro respberry com vcs ai em breve.

    Abraços!

    1. Obrigado pela leitura Felipe!

      Quando adquirir seu Raspberry não deixe de postar seus projetos em nosso fórum.

      E se precisar de ideias para projetos temos várias aqui no Blog.

      Valeu!