BLOG - Sistemas Embarcados

Este blog tem como autores os participantes do projeto Smart Campus e alunos das disciplinas: Sistemas Embarcados(Engenharia de Controle e Automação) e Plataformas de prototipação para Internet das Coisas (Especialização Lato Sensu em Internet das Coisas). O objetivo é a divulgação de trabalhos em desenvolvimento no campus que envolvam a utilização de conceitos de sistemas embarcados, internet das coisas, telemetria e outras tecnologias para a resolução de problemas da indústria, meio ambiente, cidades inteligentes, fazendas inteligentes, ....
Coordenação: Prof. Marcos Chaves

[ LOGIN ] [ Autores ]

numero de postagens:1

Monitoramento do ar-condicionado do IFSP campus Catanduva

O presente projeto tem como objetivo geral a integração dos dados de acionamento dos ar-condicionado do Instituto Federal de São Paulo no campus de Catanduva, para que o usuário tenha acesso as informações por uma interface web. Para atingir esse resultado o projeto é dividido em etapas, considerando-as como objetivos específicos a ser atingido ao decorrer do desenvolvimento do projeto.

  • AWS
  • APACHE / PHP / Mysql
  • Node-Red
  • MQTT

Para a aquisição de dados dos status dos dispositivos, é usado um microcontrolador ESP32, demonstrado na figura 1, na qual possui uma placa wireless, que facilita a comunicação remota. O ESP32 realiza a coleta dos dados e através do protocolo MQTT que tem a função de efetuar a comunicação entre os dispositivos IOT. Após a aquisição dos dados é enviado as informações para um brocker. Para acessar essas informações é utilizado o Node-RED que é uma ferramenta visual de ambiente que permite conectar dispositivos e mostrar ao usuário as informações via web services. Com os dados já disponíveis no Node-Red, será criado um banco de dados para salvar as alterações que os ar-condicionado tiveram com o ligamento e desligamento. No node-red é criado um template para que o usuário possa visualizar as informações de. Os dados armazenados no mysql também poderão ser consultados na Dashboar podendo visualizar os horários e em que salas o dispositivo foi utilizado.

 

Figura 1 - Esp32

 

O projeto será desenvolvido em um servidor virtual no sistema operacional Ubuntu 20.04 utilizando os serviços do aws. Para a instalação do serviço foi utilizado os passos descritos no link:.

Após a criação da instância, foi realizado a instalação de um servidor HTTP Apahce, php e mysql. Para a instalação foi realizado o tutorial descrito no site da Digital Ocean: .

Após a instalação dos passos descritos anteriormente, foi criado um banco de dados nomeada de “horários”, e dentro dela foram criadas tabelas apresentadas na figura 2, que é designado a cada sala do Campus Catanduva e dentro das tabelas são salvas as informações de dia e horário que houve a alteração do estado do ar-condicionado.

Figura 2 - Tabela Sala01

 

Fonte: Autor

 Com a criação de um banco de dados, o próximo passo foi instalar um broker MQQ no Ubuntu, um intermediário entre máquinas e os protocolos. Ele é utilizado no protocolo MQTT para fazer com que os aparelhos possam conversar entre si e agir de maneira automatizada. O broker utilizado foi o Mosquitto pela facilidade na instalação, compatível com vários tipos de maquinário. Para a instalação do broker, foi utilizado o tutorial disponível em: . Mesmo com o tutorial apresenta ensina a instalar no Ubuntu na versão 16.04, os passos descritos também funcionaram corretamente na versão do Ubuntu utilizado nesse projeto.

Com o projeto em desenvolvimento, a primeira parte de trabalho realizado no Node-Red foi o desenvolvimento de um template básico ilustrado na figura 3, para mostrar visualmente o acionamento do ar-condicionado. Foi utilizado botão de acionamento, que simula o ligamento/desligamento dos ar-condicionado, e a mensagem de mudança do estado do botão é enviado via MQTT e o led é acionado dependendo da condição do botão.

Figura 3 - Template

Fonte: Autor

 Após isso a próxima etapa é realizar a integração dos dados de mudança do estado dos ar-condicionado e salvar no banco de dados criado anteriormente para que o usuário possa consultar o histórico de acionamento dos dispositivos. Os dados são enviados do microcontrolador por meio do MQTT e recebido na plataforma node-red. A Figura 4 apresenta os nós utilizado para programação que insere os valores no banco de dados, onde os nós roxos são configurados para a recepção das informações, o nó function descrito como INSERT tem a função de receber esses dados e inserir corretamente dentro do banco de dados (horários).

Figura 4 – Inserção dos valores no banco de dados

Fonte: Autor

Para o correto funcionamento do MQTT é necessário colocar as configurações do servidor utilizado e do topic que funciona como um endereço para o envio das informações. Nas configurações do servidor é necessário colocar o endereço IP e a porta 1883 onde é realizado a comunicação. Para que haja a comunicação também é necessário a liberação dessa porta no servidor que está sendo realizado o projeto. Para liberação dessa porta TCP é utilizado o seguinte comando:

  • sudo ufw allow 1883

Com as configurações realizadas é feita a programação para a inserção de dados no banco como mostrado na figura 5. A primeira coisa a ser realizado é converter o tipo de dados enviado do mqtt de payload para topic na qual é o tipo de dado que é necessário para inserir os dados no banco.

Figura 5 – Programação para inserir os dados

Fonte: Autor

 

Para a utilização do banco de dados, foi necessária a instalação de um nó “node-red-contrib-stackhero-mysql”. Em suas propriedades é necessário colocar o Host que é o Ip/endereço onde o banco de dados se encontra, o User definido como o usuário cadastrado no banco de dados e sua senha no campo do password e por último a database criado no mysql.

Figura 5 – Configuração do banco de dados

Com a configuração do banco de dados e do nó Function já é possível receber os dados do mqtt e adicionar no banco de dados que possibilita o controle de tempo de acionamento dos ar-condicionado do instituto.

[ID:55] Autor:Marcos Vinicios dos Santos - Criado em: 2021-05-31 15:04:57 - [ Compartilhar ]