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
Busca:
Projeto Termômetro
Projeto para termômetro urbano. Um sensor de temperatura registra o dado da temperatura atual e ao depender da temperatura ativa uma série de três LEDs. Se estiver abaixo de 20°C liga somente o primeiro LED, entre 20°C e 30°C liga o primeiro e o segundo LEDs e se estiver acima de 30°C liga todos os LEDs. Também será enviado para uma dashboard onde será possível ler a temperatura e umidade.
Os LEDs são acionados utilizando 5V, a partir de uma conexão feita entre os mesmo e o ESP-32. O sensor a ser utilizado é o sensor DHT-11 (Sensor de temperatura e umidade) onde somente o sensoriamento de temperatura será utilizado. Serão utilizados resistores no circuito para garantir o funcionamento dos LEDs.
O sistema registrará a temperatura do ambiente a cada 5 segundos e enviará as temperaturas para o banco de dados do MYSQL.
A dashboard mostrará não só quais LEDs estão ativos mas também a temperatura e umidade desde a última atualização.
[ID:178] Autor: - Criado em: 2024-06-12 17:42:42 - [ Compartilhar ]
projeto sala esterelizada
Projeto de Monitoramento da Qualidade do Ar em Ambientes Fechados
Introdução
As salas de ambiente de limpeza controlados, comumente conhecidas como cleanrooms, são ambientes projetados para manter níveis baixos de poluentes ambientais, como poeira e micróbios, também por ser um ambiente fechado, muitas vezes é interessante verificar o nivel de co2 caso nao haja fluxo de ar constante ou seja proximo de areas de grande poluição. Essas salas são amplamente utilizadas em indústrias como semicondutores, biotecnologia e centros de dados, onde a contaminação pode comprometer a qualidade dos produtos ou experimentos.
Esse controle é possível graças à interconexão dos dispositivos por meio da Internet das Coisas (IoT). Sensores e sistemas de controle são conectados em uma rede inteligente, permitindo o monitoramento e o gerenciamento remoto de salas e ambientes à distância. Tecnologias como MQTT e Node-RED desempenham um papel importante nesse processo. O MQTT é um protocolo de mensagens eficiente que facilita a troca de informações entre os dispositivos. Já o Node-RED é uma ferramenta de programação visual que simplifica a integração dos dispositivos e a criação de fluxos de automação personalizados. Neste trabalho o IoT será responsavel em reter as informações por meio de sensores, envia-los por meio do protocolo MQTT que possui o intuito de comunicação entre eles e processa-los e mostra-los no Node-RED de forma simples e de fácil entendimento.
Em conclusão, o projeto de monitoramento da qualidade do ar utiliza tecnologias como o ESP32, o protocolo MQTT, a plataforma Node-RED e a IoT para criar um sistema de controle de ambientes e controlado de forma precisa e eficiente.
Objetivo
Foi feito sistema de monitoramento da qualidade do ar em ambientes fechados, utilizando dispositivos IoT, um banco de dados em tempo real e um dashboard para visualização e análise dos dados coletados pelos sensores.
Componentes do Projeto
Dispositivos IoT
- Foi utilizado sensores de qualidade do ar, como sensores de dióxido de carbono (CO2)Sensor MG811 e sensor de partículas finas (PM2.5) DSM501A, para coletar dados sobre a qualidade do ar no ambiente. Todos os sensores foram simulados por potenciômetros no presente projeto.
Plataforma de IoT
- Plataforma de IoT escolhida; ESP32, que foi usada para conectar e gerenciar os sensores de qualidade do ar. O microcontrolador será responsável de coletar os dados dos sensores e enviá-los para o banco de dados em tempo real, juntamente para o node red.
Banco de Dados
- Banco de dados em tempo real; o MYSQL. para armazenar as leituras dos sensores de qualidade do ar ao longo do tempo.
Dashboard
- Dashboard web; Node-red . Ele seleciona dados em tempo real e exibe visualizações das leituras dos sensores. O dashboard mostra gráficos e alertas em cores sobre a qualidade do ar, permitindo uma fácil compreensão das condições do ambiente.
Integração
- O projeto interage a plataforma de IoT com o banco de dados, para que as leituras dos sensores sejam enviadas e armazenadas em tempo real.
- Foi conectado o banco de dados ao dashboard para exibir as informações lidas de forma visual e acessível.
Funcionamento do Projeto
Os sensores de qualidade do ar coletarão dados sobre CO2 e porcentagem de particulas no ambiente. Esses dados são enviados para a plataforma de IoT, que os encaminha para o banco de dados em tempo real. O dashboard conectado ao banco de dados exibirá gráficos em tempo real da qualidade do ar.
Benefícios
- Monitoramento em tempo real: É possivel monitorar a qualidade do ar em tempo real, identificando rapidamente quaisquer problemas que possam afetar a saúde, limpeza e o conforto no ambiente.
- Análise histórica: O banco de dados auxilia na identificação de padrões e na tomada de decisões para melhorar a qualidade do ambiente.
Este projeto oferece uma solução prática e útil para monitorar e analisar a qualidade do ar em ambientes fechados, contribuindo para o bem-estar das pessoas que frequentam esses espaços e qualidade do ar para não comprometer a função do uso do ambiente.
Resultados e discussões
Os resultados obtidos demonstraram que a integração das tecnologias utilizadas - ESP32, MQTT, instância EC2 e Node-RED - possibilitou o controle e gerenciamento da porcentagem de Co2 e da porcentagem de particulas em tempo real, facilitando o monitoramento de diversos ambientes fechados.
A Figura 3 apresenta os Flows utilizados no Node-RED para processamento e visualização dos dados e os flows responsáveis pelo banco de dados:
Figura 3: Flows no Node-RED para controle do dashboard.
Figura 4: Dashboard no Node-RED
Esses Flows foram responsáveis por receber os dados coletados pelo ESP32 via MQTT, processá-los e apresentá-los em uma interface visual intuitiva. Através desses Flows, é possivel visualizar os niveis de co2 e particulas no ar (Figura 4.) , de forma clara e acessível.
Conclusão
Em conclusão, a aplicação das tecnologias IoT, MQTT, Node-RED, ESP32, AWS EC2 e o sensores de co2 e particulas possibilitaram a criação de um sistema avançado de controle e monitoramento de ambientes fechados. Através do uso dessas tecnologias, foi possível obter dados em tempo real sobre a porcentagem de co2 e porcentagem de particulas no ar, facilitando a gestão de atividades realizadas na sala a ser monitorada, a previsão de nova limpeza e a visualização de controle. A implementação desse sistema traz agilidade, eficiência em salas de ambiente controlado.
[ID:177] Autor: - Criado em: 2024-06-07 19:46:22 - [ Compartilhar ]
Estufa Inteligente
Projeto de Estufa Inteligente
## Objetivo
O objetivo deste projeto é criar uma estufa automatizada e inteligente que proporcione condições ideais para o crescimento de plantas, otimizando a acessibilidade dos dados pelo usuário em dashboard.
Componentes Principais
1. *Sensores:*
- Sensor de temperatura e umidade: Monitora as condições internas da estufa.
- Sensor de luminosidade: Mede a intensidade da luz.
2. *Atuadores:*
- Sistema de irrigação: Controla a quantidade de água fornecida às plantas.
- Cortinas automatizadas: Ajustam a entrada de luz solar.
3. *Controlador:*
- Esp32: Possíbilita o controle e assessíbilidade dos dados na instalação.
4. *Software:*
- Instâncias Ubuntu alocadas em servidores da Oracle no formato always free.
- Node-Red: Permite fácil manuseio do código por seu estilo low code, além de tornar prático e rápido a implantação dos dados para dasboards.
- Aplicativo para acessar os dispositivos.
Funcionamento
1. *Monitoramento:*
- Os sensores coletam dados (temperatura, umidade, luminosidade, umidade do solo).
2. *Controle:*
- O controlador processa os dados e toma decisões com base em regras (por exemplo, irrigar se a umidade do solo estiver baixa).
- Na instância da Oracle, dados extraídos pelo comando GET são utilizados para determinar o controle necessário e também gerar dashboards.
3. *Ações:*
- O sistema de irrigação é ativado conforme necessário.
- Cortinas são ajustadas para manter a luminosidade ideal.
4. *Notificações:*
- O aplicativo envia alertas ao usuário (por exemplo, "Solo muito seco" ou "Temperatura alta").
Benefícios
- Economia de recursos (água e energia).
- Melhoria na saúde das plantas.
- Facilidade de monitoramento e controle.
Para a implantação prática deverá se adequar às necessidades específicas e considerar detalhes como o tipo de plantas cultivadas, o tamanho da estufa e a disponibilidade de recursos.Dados assim podem ser obtidos em APIs diversas relacionada a agricultura.
[ID:176] Autor: - Criado em: 2024-06-05 18:05:24 - [ Compartilhar ]
PROJETO - Monitoramento de temperatura e umidade para uma estufa inteligente usando IoT, banco de dados e dashboard.
1. Introdução
O controle eficiente de temperatura e umidade é crucial para o cultivo em estufas. Utilizando a Internet das Coisas (IoT), banco de dados e dashboards, é possível criar um sistema que monitora e gerencia esses parâmetros em tempo real.
2. Objetivo
O objetivo deste projeto é desenvolver um sistema para monitorar as condições de uma estufa usando um sensor DHT22 conectado a um ESP32, que enviará os dados para um servidor e armazenará em um banco de dados. Esses dados serão visualizados em um dashboard criado com Node-RED.
3. Materiais
ESP32: Utilizado para ler os dados do sensor DHT22 e enviar as informações via Wi-Fi.
Sensor DHT22: Usado para medir temperatura e umidade.
Instância EC2 do servidor Ubuntu: Máquina virtual na Amazon Web Services (AWS) usada para hospedar o servidor que recebe os dados do ESP32.
Banco de dados RDS MySQL: Serviço de banco de dados usado para armazenar os dados de temperatura e umidade.
MQTT: Protocolo de comunicação leve para troca de dados entre o ESP32 e o servidor.
Node-RED: Ferramenta para criar aplicações que recebem e processam dados em tempo real, exibindo-os em dashboards.
Arduino IDE: Utilizado para programar o ESP32.
[ID:175] Autor: - Criado em: 2024-06-01 19:02:19 - [ Compartilhar ]
Projeto de Controle de Robô SCARA Utilizando Servomotores com Integração de IoT, Banco de Dados e Dashboard
Visão Geral:
A automação industrial tem avançado significativamente com o desenvolvimento da tecnologia, e uma das ferramentas mais emblemáticas dessa evolução são os robôs. Entre eles, destaca-se o robô SCARA (Selective Compliance Assembly Robot Arm) por sua precisão e eficiência em tarefas repetitivas, como montagem, embalagem e manipulação de materiais. Este projeto visa desenvolver um sistema de controle para um robô SCARA utilizando servomotores e integrando tecnologias de Internet das Coisas (IoT), banco de dados e dashboards interativos.
O principal objetivo deste projeto é implementar um sistema de controle eficiente para um robô SCARA. Para isso, serão utilizados servomotores que proporcionam a precisão e o controle de movimento essenciais para as operações do robô. Além disso, a integração de IoT permitirá a comunicação em tempo real entre o robô e uma infraestrutura de controle remota. Esta comunicação será realizada por meio de um ESP 32, que enviará e receberá informações via uma rede sem fio. O sistema IoT incluirá a utilização de protocolos seguros de comunicação, como MQTT (Message Queuing Telemetry Transport), garantindo a integridade e a confidencialidade das informações transmitidas.
O banco de dados será utilizado para armazenar informações relevantes sobre a cinemática do robô, oferecendo um sistema de configuração dupla: “automático”, que permitirá ao robô realizar operações de forma autônoma, e “manual”, que permitirá ao usuário controlar diretamente os movimentos do robô, e gravá-los quando aplicável. Por fim, a criação de um dashboard interativo fornecerá uma interface amigável para o controle do sistema, permitindo a visualização em tempo real dos dados operacionais e o ajuste de parâmetros de controle conforme necessário.
Materiais utilizados:
- 1 x ESP 32 Wemos D1 R32;
- 1 x Protoboard de 830 pontos;
- 1 x Potenciomentro de 10K;
- 1 x Servo motor de 9g SG90;
- 1 x Led da cor amarela;
- 1 x Resistor de 330 ohm;
- 1x Powerbank 10000 mAh;
- Juppers do tipo macho-femea.
Tópicos MQTT:
- potenciometro1/valor;
- servo1/angulo;
- atuador.
Tópico potenciometro1/valor:
Esse tópico será responsavel por publicar as leituras analogicas do potenciomentro que serão convertidas gruas para posterioremente enviar para o servo motor
int valorPot1 = analogRead(A0);
int angulo1 = map(valorPot1, 0, 4095, 0, 180); // Converte o valor do potenciômetro 1 para um ângulo (0-180)
client.publish(mqtt_topic_pot1, String(valorPot1).c_str());
Tópico servo1/valor:
Esse tópico por sua vez será responsavel por receber as publicações do tópico anterior e então enviar o ângulo já convertido em uma faixa de movimentação do servo motor
StaticJsonDocument<200> doc;
DeserializationError error = deserializeJson(doc, message); // Verifica se a mensagem é para o servo 1
if (String(topic) == mqtt_topic_servo1) {
int angulo = message.toInt();
if (angulo >= 0 && angulo <= 180) {
x1 = map(angulo, 0, 180, 1200, 8000);
ledcWrite(14, x1);
}
}
Tópico atuador:
Tópico responsavel receber a solicitação de um toggle button e então acionar o atuador do robô ( representado pelo Led)
StaticJsonDocument<200> doc;
DeserializationError error = deserializeJson(doc, message);
if (String(topic) == mqtt_topic_atuador) {
if (doc.containsKey("z")) {
zValue = doc["z"].as();
}
if (zValue == 1 ) {
digitalWrite(27, HIGH);
delay(1000); } //Lógica para desacionar o atuador
if (zValue == 0 ) {
digitalWrite(27, LOW);
delay(1000);
}
}
Infraestrutura do Propmt de comandos:
Este projeto conta com uma infraestrutura em nuvem que possibilita o controle remoto dos angulos mensurados e do status de liga e desliga do atuador, via internet,no qual é representado pela figura abaixo:
Seu fluxo (flow) Node-RED implementado, pode ser observado abaixo:
Resultado final:
Uma vez desenvolvido o fluxo de captação e monitoramento de leituras externas, foi possível desenvolver a seguinte prototipagem de teste:
[ID:173] Autor: - Criado em: 2024-05-29 23:37:08 - [ Compartilhar ]
Controle de corrente alternada de uma rede bifásica usando NODE-RED e Mosquitto
Descrição do Projeto:
- Objetivo: Criar um ambiente IoT para analisar o consumo em Amper de uma circuito bisafico.
- Componentes-chave: Node-RED, PostgreSQL e Mosquitto.
- Node-RED: Uma plataforma de desenvolvimento visual para conectar dispositivos IoT e serviços web.
- PostgreSQL: Um sistema de gerenciamento de banco de dados relacional para armazenar dados coletados.
- Mosquitto: Um broker MQTT (Message Queuing Telemetry Transport) para troca de mensagens entre os dispositivos IoT.
Explicando o codigo realizado no esp32
- Inclui as bibliotecas necessárias:
- WiFi: para estabelecer uma conexão Wi-Fi.
- PubSubClient: para conectar-se e publicar dados em um servidor MQTT.
- EmonLib: uma biblioteca para medição de energia elétrica.
- Define as constantes para a conexão Wi-Fi e servidor MQTT, incluindo o nome da rede Wi-Fi (WIFI_SSID), senha (WIFI_PASSWORD), endereço do servidor MQTT (MQTT_SERVER), porta (MQTT_PORT) e os tópicos MQTT para publicação dos dados de corrente (MQTT_TOPIC1 e MQTT_TOPIC2).
- Define os pinos do sensor de corrente conectados ao ESP32 (SENSOR1_PIN e SENSOR2_PIN).
- Define o objeto EnergyMonitor para cada fase (emon1 e emon2) usando a biblioteca EmonLib. Configura a taxa de calibração para 90.91 (verificar a calibração apropriada para o seu sistema).
- Inicia a conexão Wi-Fi usando as credenciais fornecidas (WIFI_SSID e WIFI_PASSWORD).
- Aguarda até que a conexão Wi-Fi seja estabelecida.
- Configura o cliente MQTT (mqttClient) para se conectar ao servidor MQTT especificado (MQTT_SERVER) e na porta especificada (MQTT_PORT).
- Inicia a medição de corrente para cada fase usando os pinos dos sensores de corrente e a taxa de calibração definida anteriormente.
- O loop principal começa:
- Verifica se o cliente MQTT está conectado. Se não estiver, chama a função reconnect() para reconectar.
- Chama mqttClient.loop() para manter a comunicação com o servidor MQTT.
- Calcula a corrente eficaz (RMS) para cada fase usando emon1.calcIrms() e emon2.calcIrms(), especificando o período de amostragem em microssegundos (1480 para 60Hz, 1860 para 50Hz).
- Cria uma string de payload formatada com os valores de corrente.
- Publica os valores de corrente nos respectivos tópicos MQTT usando mqttClient.publish().
- Imprime os valores de corrente no monitor serial.
- Aguarda um intervalo de 3 segundos antes de repetir o loop.
- A função reconnect() é chamada quando a conexão MQTT é perdida ou não foi estabelecida. Ela tenta reconectar ao servidor MQTT, gerando um ID de cliente único e tentando a conexão novamente. Se a conexão for bem-sucedida, a mensagem "connected" é exibida no monitor serial. Caso contrário, a função aguarda 5 segundos antes de tentar novamente.
Esse código em particular é projetado para medir corrente elétrica em duas fases usando sensores de corrente não invasivos, calcular a corrente eficaz (RMS) e publicar os valores em um servidor MQTT.
Executores:
Ezequiel Guedes Lima Junior
Sandro Caires.
[ID:171] Autor: - Criado em: 2023-07-02 12:39:29 - [ Compartilhar ]
(GEA) Gerenciamento de Estoque Automatizado
A aplicação de IoT em um sistema de gerenciamento de estoque automatizado pode trazer diversos benefícios, como maior eficiência, redução de erros e economia de tempo. Existem várias aplicações possíveis e entre elas podemos citar o uso de sensores de monitoramento que podem ser colocados em prateleiras, contêineres ou produtos individuais para monitorar o estoque em tempo real, onde os sensores coletam dados relevantes, como níveis de estoque, datas de validade, temperatura, movimentação de produtos, entre outros e esses dados são enviados para o servidor central.
Usando a placa ESP32 como o dispositivo IoT para coletar os dados do estoque e conectando sensores para monitorar as informações relevantes do estoque e configurando um broker MQTT para atuar como o intermediário da comunicação entre a ESP32 e o Node-RED.
A aplicação da Internet das Coisas (IoT) em um sistema de gerenciamento de estoque automatizado é uma abordagem inovadora que utiliza tecnologias como o NodeMCU e o MySQL para otimizar o controle e a eficiência do estoque.
O NodeMCU, um dispositivo baseado nos microcontroladores ESP32 ou ESP8266, desempenha um papel crucial nesse sistema, em que é responsável por coletar e transmitir dados sobre o estoque em tempo real, por meio de sensores de identificação, como leitores de código de barras ou tags RFID (Identificação por Radiofrequência), o NodeMCU pode rastrear e registrar informações precisas sobre cada item do estoque, incluindo quantidade, localização e status.
Utilizando a conexão Wi-Fi disponível no NodeMCU, os dados coletados são enviados para um servidor central na nuvem, onde são processados e armazenados. Nesse contexto, o MySQL, um sistema de gerenciamento de banco de dados, desempenha um papel fundamental. Ele recebe as informações do estoque e as organiza de forma estruturada para consultas e análises posteriores.
Com o uso do MySQL, é possível realizar consultas avançadas para obter informações específicas sobre o estoque, como a quantidade disponível de um determinado produto, a localização exata de um item ou até mesmo gerar relatórios sobre o histórico de movimentações do estoque. Essas informações são acessíveis por meio de um sistema de gerenciamento ou interface de usuário, que pode ser um aplicativo móvel ou uma plataforma web.
A integração entre a aplicação IoT, o NodeMCU e o MySQL permite o monitoramento em tempo real do estoque, eliminando a necessidade de contagens manuais e reduzindo significativamente erros humanos. Além disso, esse sistema automatizado de gerenciamento de estoque oferece a capacidade de tomar decisões mais assertivas e proativas, como identificar a necessidade de reabastecimento de produtos, prever demandas futuras com base em padrões de vendas e até mesmo otimizar a distribuição dos produtos no espaço físico disponível.
A aplicação dessa solução de gerenciamento de estoque automatizado baseada em IoT, NodeMCU e MySQL traz diversos benefícios para as empresas. Além de melhorar a precisão e a eficiência no controle do estoque, ela também reduz custos operacionais ao evitar perdas por falta ou excesso de produtos. Além disso, a automação proporciona um melhor planejamento de estoque, permitindo uma resposta mais ágil às demandas do mercado e uma experiência de compra mais satisfatória para os clientes.
Com a coleta de dados em tempo real, a análise avançada e a automação do processo, as empresas podem alcançar uma eficiência e precisão sem precedentes, resultando em uma operação mais eficiente, redução de custos e maior satisfação do cliente.
PROJETO
1. Introdução
O gerenciamento de estoque automatizado é um sistema inovador que revoluciona a forma como as empresas controlam seus estoques. Ao utilizar tecnologias avançadas, como inteligência artificial e automação de processos, esse sistema oferece uma abordagem eficiente e precisa para otimizar o controle de inventário. O objetivo deste projeto é simular o estoque de uma empresa automobilística, utilizando uma ESP32 e um potenciômetro, onde o LED aceso indica se a quantidade de material no estoque esta próxima da capacidade mínima ou máxima.
2. Materiais
- ESP32: utilizado para ler os dados do potenciômetro e enviar as informações da capacidade do estoque
- Potenciômetro: usado como simulador da quantidade de produto no estoque.
- Instância EC2 do servidor Ubuntu: É uma máquina virtual fornecida pela Amazon Web Services (AWS), com sistema operacional Ubuntu instalado. Foi utilizada para hospedar o servidor que recebeu os dados enviados pelo ESP32.
- Banco de dados RDS MySQL: É um serviço de banco de dados que é usado para armazenar os dados da capacidade no estoque.
- MQTT: É um protocolo de comunicação leve de mensagens usado para comunicação entre dispositivos IoT e é usado para a troca de dados entre o ESP32 e o servidor.
- Aplicação e Dashboard no Node-RED: É utilizado para criar uma aplicação que recebe os dados do controle do estoque, em tempo real, e os exibiu de forma intuitiva e em dashboards.
- Arduino IDE para a programação da ESP32
3. Montagem
4. Programação
Para fazer a programação, foi necessário inserir as bibliotecas para a configurar a conexão Wi-Fi, e para fazer a comunicação MQTT:
Em seguida, foram definidas as contantes
Depois, foram criadas as instâncias necessárias para a comunicação Wi-Fi e MQTT no ESP32. A instância "espClient" é usada para a comunicação Wi-Fi, enquanto a instância "client" é usada para a comunicação MQTT através do protocolo PubSubClient. Essas instâncias são posteriormente utilizadas para estabelecer a conexão com o broker MQTT e realizar as operações de publicação e subscrição necessárias.
E, então, foi feita a função setup que realizou as configurações iniciais do ESP32, estabelece a conexão Wi-Fi e a conexão MQTT com o servidor, exibe informações relevantes no Monitor Serial e lida com possíveis falhas na conexão MQTT. Essa função foi executada uma vez no início da execução do programa para configurar o ambiente de comunicação.
E para finalizar, foi feita a função loop que realizou a leitura dos sensores analógicos, converteu os valores lidos em porcentagens, publicou esses valores no broker MQTT e aguardou um segundo antes de repetir o processo. Isso permitiu os dados dos sensores serem enviados continuamente para o Node-RED, onde foram processados e utilizados conforme necessário.
5. Flow do Node-RED
No Node-RED, foi criado um fluxo para receber os dados MQTT provenientes do ESP32 e processá-los de maneira adequada. Além disso, foram desenvolvidos os nós necessários para exibir as informações relacionadas ao controle de estoque.
Inicialmente, configurou-se um nó MQTT para receber as mensagens enviadas pelo ESP32. Esse nó foi ajustado para se conectar ao tópico MQTT correto e receber os dados de forma precisa.
Em seguida, os dados recebidos passaram por uma etapa de processamento utilizando nós específicos no Node-RED. Nesses nós, foram realizadas as análises necessárias para determinar o estado do estoque. Por meio de estruturas condicionais, os valores dos sensores foram comparados com os limites de capacidade definidos.
No projeto, se o valor do sensor indicasse um estoque de alternadores de 25% da capacidade, um nó de controle ativaria um LED na interface para sinalizar a necessidade de reposição de estoque. Da mesma forma, se o valor ultrapassasse 85% da capacidade, também seria acionado para alertar sobre a possível superlotação do estoque.
O mesmo foi feito para o estoque de pastilha de freio.
Após o processamento dos dados, as informações relevantes foram armazenadas em um banco de dados MySQL. Utilizando nós específicos do Node-RED, foi estabelecida a conexão com o banco de dados e os dados coletados foram inseridos. Dessa forma, garantiu-se o armazenamento persistente das informações, permitindo consultas futuras e a geração de relatórios ou gráficos para uma análise mais detalhada.
Por fim, os dados armazenados no banco de dados foram apresentados em uma interface de visualização. Utilizando os recursos disponíveis no Node-RED, de gráficos e tabelas, as informações do controle de estoque foram exibidas de forma atrativa e fácil de compreender. Isso proporciona aos usuários uma visão clara do estado do estoque, facilitando a tomada de decisões rápidas e embasadas.
Em resumo, o fluxo desenvolvido no Node-RED integrou o ESP32, o protocolo MQTT, o banco de dados MySQL e a interface de visualização, possibilitando um controle automatizado do estoque. Essa solução oferece monitoramento em tempo real, alertas personalizados e uma visão visual do estado do estoque, contribuindo para a eficiência e aprimoramento do gerenciamento automatizado de estoque.
[ID:170] Autor: - Criado em: 2023-07-01 03:37:31 - [ Compartilhar ]
Controle de LED e Registro de Ações usando Node-RED, PostgreSQL e Mosquitto com Docker Compose
Descrição do Projeto:
- Objetivo: Criar um ambiente IoT para controlar um LED e registrar as ações em uma aplicação.
- Componentes-chave: Node-RED, PostgreSQL e Mosquitto.
- Node-RED: Uma plataforma de desenvolvimento visual para conectar dispositivos IoT e serviços web.
- PostgreSQL: Um sistema de gerenciamento de banco de dados relacional para armazenar dados coletados.
- Mosquitto: Um broker MQTT (Message Queuing Telemetry Transport) para troca de mensagens entre os dispositivos IoT.
Configurando o Ambiente com Docker Compose:
- Docker: Uma plataforma de virtualização que permite empacotar e executar aplicativos em contêineres.
- Docker Compose: Uma ferramenta para definir e executar aplicativos Docker multi-contêineres
Exemplo de Arquivo docker-compose.yml
:
version: "3.1"
services:
node-red: (Configurações do serviço Node-RED)
pgsql_mqtt: (Configurações do serviço PostgreSQL)
mosquitto: (Configurações do serviço Mosquitto)
networks: projetoiot: (Configurações da rede "projetoiot")
Configurações do Serviço Node-RED:
- Container Name: Nome do contêiner para o serviço Node-RED.
- Image: Imagem utilizada para o serviço (nodered/node-red:latest).
- Restart: Política de reinicialização do contêiner (always).
- Portas: Mapeamento da porta 1880 do contêiner para a porta 1880 do host.
- Variáveis de Ambiente: Configurações personalizadas, como o fuso horário.
- Volumes: Montagem de volumes para persistência de dados do Node-RED.
Configurações do Serviço PostgreSQL:
- Container Name: Nome do contêiner para o serviço PostgreSQL.
- Image: Imagem utilizada para o serviço (postgres:alpine3.18).
- Restart: Política de reinicialização do contêiner (always).
- Portas: Mapeamento da porta 5444 do contêiner para a porta 5432 do host.
- Variáveis de Ambiente: Configurações personalizadas, como usuário, senha e fuso horário.
- Volumes: Montagem de volumes para persistência de dados do banco
Explicando o codigo realizado no esp32
Inclusão de bibliotecas:
- WiFi.h: Permite a configuração e conexão com redes Wi-Fi.
- PubSubClient.h: Biblioteca MQTT para Arduino.
- WiFiClientSecure.h: Biblioteca para conexões seguras através do protocolo SSL/TLS.
Definição das variáveis e objetos:
espClient
: Objeto do tipo WiFiClientSecure para conexões seguras.client
: Objeto PubSubClient para interagir com o servidor MQTT.lastMsg
: Variável para armazenar o timestamp da última mensagem recebida.msg
: Array de caracteres para armazenar as mensagens recebidas.value
: Variável inteira para armazenar o estado do LED.
Configuração inicial:
- Conexão Wi-Fi: Configuração e conexão com a rede Wi-Fi especificada.
- Configuração do cliente MQTT: Definição do servidor MQTT, porta e credenciais de autenticação.
- Configuração do callback: Definição da função de callback que será executada quando mensagens forem recebidas.
Função de callback:
- É chamada quando uma mensagem é recebida em um dos tópicos assinados.
- Extrai o tópico e a mensagem recebida.
- Com base no tópico, realiza ação correspondente (ligar/desligar o LED).
Função de reconexão:
- É chamada quando ocorre uma desconexão com o servidor MQTT.
- Tenta reconectar ao servidor MQTT e assina novamente os tópicos.
Função loop()
:
- Verifica se o cliente MQTT está conectado. Se não estiver, chama a função de reconexão.
- Executa o loop do cliente MQTT para processar mensagens.
- Aguarda um curto período de tempo (100 ms) antes de repetir o loop.
O código estabelece uma conexão Wi-Fi, conecta-se a um servidor MQTT e assina dois tópicos relacionados aos LEDs. Quando mensagens são recebidas nesses tópicos, o estado dos LEDs é alterado com base no conteúdo da mensagem ("on" para ligar e "off" para desligar).
Esquema da ligaçao do ESP32
Fluxo do Node Red
Resultado da dashboard
Respositorio do Github
https://github.com/brunodangelos/prototipoiot
Nome:
Bruno D`Angelo Silva
Maike Willian Bonfochi Martins
[ID:169] Autor: - Criado em: 2023-06-28 23:11:10 - [ Compartilhar ]
Monitoramento de Consumo de Água em Residências
INTRODUÇÃO
Com o aumento da conscientização sobre a escassez de recursos hídricos e a importância da conservação de água, o monitoramento do consumo de água em residências tornou-se uma prioridade, com os avanços tecnológicos da Internet das Coisas (IoT), é possível implementar sistemas inteligentes de monitoramento que permitem uma gestão mais eficiente desse recurso vital. Nesse contexto, o uso de dispositivos como o ESP32, combinado com protocolos de comunicação eficientes, como o MQTT (Message Queuing Telemetry Transport), e plataformas de desenvolvimento visual, como o Node-RED, tem desempenhado um papel fundamental.
O ESP32 é um microcontrolador com recursos de conectividade Wi-Fi e Bluetooth. Com ele, é possível coletar dados em tempo real dos medidores de água instalados nas residências e transmiti-los para um servidor central usando o protocolo MQTT. O ESP32 pode ser programado para medir o consumo com base nas leituras dos medidores. Além disso, ele pode ser configurado para enviar alertas em tempo real, caso haja vazamentos.
O MQTT é um protocolo de comunicação leve e de baixo consumo de energia, projetado especificamente para ambientes de IoT. Sua eficiência e capacidade de lidar com redes de dispositivos distribuídos fazem dele a escolha ideal para o monitoramento de consumo de água em residências.
O Node-RED é uma plataforma de desenvolvimento visual que simplifica a criação de fluxos de dados IoT, é possível criar painéis de controle intuitivos e personalizados para visualizar os dados de consumo de água em tempo real. Ele oferece uma ampla gama de ferramentas e nós pré-construídos que facilitam a integração entre o ESP32, o MQTT e outros sistemas de monitoramento. Com o Node-RED, é possível configurar alertas e notificações personalizadas, permitindo que os usuários sejam informados sobre vazamentos, incentivando a conservação e a detecção precoce de problemas.
O monitoramento de consumo de água em residências usando MQTT, Node-RED e ESP32 proporciona uma visão detalhada e em tempo real do consumo de água em cada residência, essa abordagem permite a identificação de padrões de uso, a detecção de anomalias e a implementação de estratégias eficientes de conservação. Além disso, os dados coletados podem ser usados para análises a longo prazo, permitindo que as concessionárias de água tomem decisões baseadas em evidências para otimizar o fornecimento de água e promover a sustentabilidade.Essa integração representa um avanço significativo na gestão eficiente dos recursos hídricos, essa abordagem inteligente possibilita um monitoramento preciso, uma resposta rápida a vazamentos e uma conscientização dos usuários sobre seu consumo, contribuindo para a preservação dos recursos naturais e o desenvolvimento de comunidades sustentáveis.
MATERIAIS E MÉTODOS
- ESP32
- 3 Potênciometros (Simulçao do sensor de vazão)
- Arduino IDE
- Node-RED
- AWS - EC2
- MySQL
No início do projeto para o monitoramento de consumo de água em residências foi feito uma análise detalhada dos objetivos. Isso envolveu a identificação dos parâmetros relevantes a serem monitorados, como volume consumido, bem como a definição das funcionalidades desejadas e dos objetivos a serem alcançados. Em seguida, foi realizada a configuração do ambiente de desenvolvimento na plataforma Node-RED, ela foi utilizada para desenvolver a interface de usuário e configurar as regras de monitoramento e notificação.
O MQTT, foi adotado para estabelecer a comunicação entre o ESP32 e o servidor central, permitindo a transmissão rápida e confiável dos dados de medição, como o consumo, das residências para o servidor de monitoramento. No lado do servidor, foram configurados os componentes necessários, como um servidor MQTT e um banco de dados, para receber e armazenar os dados de consumo de água, sendo responsável por receber os dados enviados pelos ESP32s nas residências, já o banco de dados, como o MySQL, foi utilizado para armazenar os dados e permitir análises sobre um padrão de consumo para obter um gerenciamento eficaz no consumo de água. Dessa forma, o monitoramento de consumo de água em residências, utilizando essas ferramentas proporcionou uma solução eficaz para acompanhar e controlar o uso desse recurso vital, promovendo a conscientização e incentivando a conservação de água nas residências.
RESULTADOS
As variáveis e constantes definem as informações de rede, como o nome da rede Wi-Fi (ssid) e a senha (password), o endereço do servidor MQTT (mqttServer) e as credenciais de autenticação (mqttUser e mqttPassword). Além disso, existem tópicos MQTT para cada sensor específico, como chuveiro, torneira da cozinha e irrigação do jardim.
A função setup() é chamada uma vez no início do programa e é responsável por realizar as configurações iniciais:
Nessa função, é realizada a inicialização da comunicação serial (Serial.begin) para exibir mensagens de depuração. Em seguida, é feita a conexão com a rede Wi-Fi usando as informações fornecidas (ssid e password).
Após a conexão Wi-Fi, a função tenta se conectar ao servidor MQTT. A conexão é estabelecida usando o método client.connect(), passando o nome do cliente (ESP32Client), o nome de usuário (mqttUser) e a senha (mqttPassword). Se a conexão for bem-sucedida, uma mensagem é exibida na porta serial indicando que o ESP32 está conectado ao servidor MQTT. Caso contrário, uma mensagem de falha é exibida junto com o estado atual da conexão.
A função loop() é chamada repetidamente após o setup() e é responsável por coletar os dados dos sensores e enviá-los para o servidor MQTT:
Nessa função, os valores dos sensores são lidos usando a função analogRead(). Esses valores são mapeados para faixas de medição específicas usando a função map(), convertendo-os em valores de consumo de água real. Em seguida, são criadas strings contendo os valores de consumo de água para cada sensor, as mensagens de depuração são exibidas na porta serial para verificar os valores dos sensores. Por fim, os valores de consumo de água são publicados nos respectivos tópicos MQTT usando o método client.publish(). Os valores são convertidos em arrays de caracteres usando o método c_str() antes de serem publicados.
- Nó "Tabela Consumo": Exibe um medidor do consumo (L) em uma interface gráfica.
- Nó "Gráfico Consumo": Exibe um gráfico de linha na interface gráfica para visualizar os dados do consumo ao longo do tempo.
- Nó "function": Executa uma função JavaScript personalizada.
- Nó "ui_text": Exibe um texto na interface gráfica.
- Nó "mqtt out": Envia mensagens para um tópico MQTT específico.
- Nó "mqtt in": Recebe mensagens de um tópico MQTT específico.
- Nó "ui_group": Agrupa visualmente outros nós relacionados na interface gráfica.
Na região da direita lida com as conexões responsáveis pela conexão do banco de dados. Os nós "mqtt in" estão configurados para receber os dados dos sensores nos tópicos "esp32/chuveiro" , "esp32/torneirac" e "esp32/irrigacao". Os nós "function" ("Chuveiro", "Torneira da Cozinha" e "Irrigação do Jardim") extraem os valores dos sensores dos dados recebidos e os adicionam à mensagem. O nó "join" combina as mensagens recebidas dos sensores em um único objeto.
O nó "function" ("SELECT") cria a instrução SQL de seleção, e o nó "mysql" executa essa instrução e retorna os dados da tabela. O nó "change" é usado para formatar os dados retornados em um formato adequado para exibição no gráfico. O nó "ui_chart" exibe os dados formatados em um gráfico na interface do usuário.
Nas seguintes imagens estão ilustrados o monitoramento de cada sensor de um respectivo local da residência, além disso, o sistema utiliza um LED para indicar se o monitoramento está acontecendo, caso haja consumo sem estar com o sistema ligado, pode detectar que esteja com algum problema e assim resolvendo o quanto antes. Com LED vermelho significa que o sistema está desligado e com LED verde o sistema está funcionando.
Como os dados são armazenados no banco de dados, o fluxo inclui uma funcionalidade para visualizar os últimos 10 registros em um gráfico de linha e em uma tabela. A funcionalidade do dashboard é exibi-los em tempo real em um gráfico e tabela por meio das ferramentas como ESP32 e Node-RED.
Conclusão
Em conclusão, o projeto de monitoramento de consumo de água em residências trouxe benefícios significativos para o controle e conscientização do uso desse recurso vital. Através da utilização de um dispositivo ESP32 e sensores adequados, foi possível coletar dados precisos sobre o consumo de água em diferentes pontos da residência.
A integração com o Node-RED e o banco de dados MySQL permitiu a criação de um painel de controle intuitivo, que possibilitou aos moradores visualizarem de forma clara e acessível as informações sobre seu consumo de água. Gráficos, tabelas e outras representações visuais contribuíram para uma melhor compreensão dos padrões de consumo e a identificação de possíveis áreas de otimização. Os moradores puderam identificar vazamentos, ajustar seus hábitos de consumo e tomar medidas para reduzir o desperdício de água.
[ID:168] Autor: - Criado em: 2023-06-28 01:41:53 - [ Compartilhar ]
Projeto de placas de Circuito Impresso
Uma breve introdução das etapas de criação e algumas plataforma de desenvolvimento, características e vantagens para escolher a mais adequada para o seu projeto.
Por Cícero Santos, Dejair Matos, Jean Rodrigues e Júlio Backer
Introdução
O projeto de placas de circuito impresso (PCB) é uma etapa crucial no desenvolvimento de dispositivos eletrônicos. Essas placas desempenham um papel fundamental ao conectar e organizar os componentes eletrônicos de forma eficiente, garantindo o funcionamento adequado dos circuitos. Neste artigo, exploraremos as etapas essenciais do projeto de PCBs, desde a concepção até a fabricação, fornecendo uma visão geral do processo de criação dessas placas essenciais.
A primeira etapa do projeto de PCBs é a concepção, onde ocorre o planejamento e o design inicial da placa. Isso envolve a definição dos requisitos do circuito, a identificação dos componentes necessários e a determinação da disposição física dos elementos na placa. Utilizando softwares de design específicos, os engenheiros criam o esquema elétrico da PCB, estabelecendo as conexões e as trilhas de cobre que irão interligar os componentes eletrônicos.
Após a fase de concepção, segue-se a etapa de layout da PCB. Nesse estágio, os detalhes do design esquemático são convertidos em um layout físico, onde os componentes são posicionados e as trilhas são traçadas de forma a otimizar o espaço disponível e garantir um bom fluxo de corrente. Além disso, é importante considerar aspectos como o gerenciamento térmico e a minimização de interferências eletromagnéticas. O uso de software de design de PCBs é fundamental para auxiliar nessa etapa, permitindo uma visualização precisa e a geração de arquivos necessários para a fabricação da placa.
Objetivo
O objetivo deste post é fornecer uma visão geral das etapas fundamentais do projeto de placas de circuito impresso (PCBs), ao mesmo tempo em que abordamos as plataformas de desenvolvimento mais populares para a prototipagem dessas placas. Exploraremos tanto as características e diferenças entre as plataformas quanto as etapas essenciais do projeto de PCBs, permitindo que você compreenda o processo completo e faça uma escolha informada para o seu projeto específico. Ao final deste post, você terá conhecimento sobre as etapas do projeto de PCBs e estará familiarizado com as principais plataformas disponíveis, capacitando-o a dar os próximos passos na criação de suas próprias placas de circuito impresso.
Etapas de um projeto para circuito impresso
1 - Especificação de requisitos: A etapa de especificação de requisitos é essencial para o projeto de PCBs. Nesse estágio, são definidas as necessidades e funcionalidades do circuito, levando em consideração fatores como a tensão de alimentação, corrente máxima, tamanho físico, interfaces de comunicação e restrições ambientais. Com uma especificação clara, é possível estabelecer as bases para o desenvolvimento da placa, garantindo que atenda às expectativas e requisitos do projeto.
2 - Seleção de componentes e elaboração do diagrama elétrico: Após a definição dos requisitos, inicia-se a seleção dos componentes eletrônicos adequados. É importante considerar aspectos como compatibilidade elétrica, disponibilidade, custo e características técnicas dos componentes. Com os componentes selecionados, é elaborado o diagrama elétrico, que representa de forma esquemática as conexões e interações entre os elementos do circuito. Essa etapa é fundamental para garantir a correta interconexão dos componentes na placa.
3 - Verificação e simulação: Antes de prosseguir para o layout da PCB, é recomendado realizar a verificação e simulação do projeto. Isso envolve a análise de circuitos, testes de integridade de sinal e simulações para garantir o funcionamento esperado do circuito. Utilizando softwares de simulação, é possível identificar possíveis problemas e realizar ajustes no design antes de avançar para a próxima etapa, economizando tempo e recursos no processo de desenvolvimento.
4 - Layout de PCB: Nessa etapa, ocorre a tradução do diagrama elétrico para o layout físico da PCB. Os componentes são posicionados na placa, levando em conta o tamanho, o espaçamento adequado e a otimização da rota de trilhas para garantir um fluxo de corrente eficiente. Além disso, são adicionadas as trilhas de cobre que conectam os componentes, considerando as regras de projeto e as necessidades de dissipação de calor e redução de interferências eletromagnéticas.
5 - Fabricação da PCB: Após a conclusão do layout, o projeto é enviado para a fabricação da PCB. Nesse processo, o arquivo gerado é utilizado para a produção em massa da placa, incluindo a impressão do layout na placa de base e a aplicação de processos químicos para a formação das trilhas de cobre. A qualidade da fabricação é fundamental para garantir a integridade e o funcionamento correto da PCB.
6 - Montagem do protótipo: Com a PCB fabricada, inicia-se a etapa de montagem do protótipo. Os componentes eletrônicos selecionados são soldados na placa seguindo as orientações do layout. Essa etapa requer cuidado e precisão, pois qualquer erro na montagem pode comprometer o funcionamento do circuito. É importante também considerar a utilização de técnicas adequadas, como o uso de pasta de solda e equipamentos adequados para a soldagem.
7 - Testes de laboratório e de campo: Após a montagem do protótipo, é realizado um conjunto de testes para verificar o funcionamento e desempenho da PCB. Esses testes podem ser realizados em laboratório
Plataformas para criação dos circuitos
Na área do projeto de placas de circuito impresso (PCBs), a escolha do software de design adequado desempenha um papel fundamental. Existem diversas opções disponíveis, cada uma com suas características e vantagens. Nesta seção, vamos explorar alguns dos softwares mais populares para o desenho de PCBs, incluindo o Altium, Eagle, Proteus, KiCad e EasyEDA. Abordaremos as principais funcionalidades e recursos oferecidos por cada um deles, permitindo que você faça uma escolha informada ao selecionar a plataforma mais adequada para o seu projeto de PCB. Com essas ferramentas poderosas em mãos, você estará preparado para criar designs precisos e eficientes, impulsionando o desenvolvimento de suas placas de circuito impresso.
Altium: O Altium é um software abrangente e amplamente utilizado no projeto de PCBs. Ele oferece recursos avançados, como roteamento automático de trilhas, análise de integridade de sinal, simulação de circuitos e bibliotecas de componentes extensas. Sua interface intuitiva e poderosa facilita a criação de designs complexos, permitindo a colaboração eficiente entre equipes de engenharia. Além disso, o Altium oferece suporte para múltiplas camadas e é amplamente reconhecido pela sua capacidade de gerar arquivos de fabricação precisos.
Eagle: O Eagle é um software popular e amplamente adotado por sua facilidade de uso e versatilidade. Ele oferece uma vasta biblioteca de componentes, permitindo que os projetistas encontrem facilmente os elementos necessários para suas PCBs. O Eagle também possui recursos de simulação de circuitos, visualização 3D do layout e capacidade de criar designs de várias camadas. Além disso, sua comunidade ativa e suporte robusto tornam o Eagle uma opção atraente para projetistas iniciantes e experientes.
Proteus: O Proteus é uma plataforma de design eletrônico que oferece um ambiente integrado para a criação de PCBs. Ele combina recursos de design de circuitos, simulação e layout de PCB em uma única solução. Com uma ampla variedade de modelos de componentes e um mecanismo de simulação preciso, o Proteus permite testar e validar o projeto antes da fabricação. Além disso, ele oferece ferramentas de roteamento avançadas, suporte para designs de várias camadas e uma interface amigável.
KiCad: O KiCad é uma opção de software de design de PCB de código aberto, amplamente reconhecido pela sua comunidade ativa e suporte contínuo. Ele oferece uma ampla gama de recursos, como esquemático elétrico, layout de PCB, roteamento automático de trilhas e verificação de regras de projeto. O KiCad também permite a importação/exportação de arquivos em diferentes formatos e possui uma biblioteca extensiva de componentes. Com sua natureza de código aberto, o KiCad oferece flexibilidade e customização para atender às necessidades específicas de cada projeto.
EasyEDA: O EasyEDA é uma plataforma de design de PCB baseada em nuvem, que combina recursos de esquemático elétrico, layout de PCB e simulação em uma interface amigável. Ele é conhecido por sua facilidade de uso e colaboração, permitindo que os projetistas criem PCBs de forma rápida e eficiente. O EasyEDA também oferece uma vasta biblioteca de componentes e ferramentas de verificação automática, além de suporte para design de várias camadas. Sua natureza baseada em nuvem permite o acesso e a edição dos projetos em qualquer lugar, simplificando a colaboração e o compartilhamento de projetos.
Comparativo preço dos Softwares
Software |
Licença |
Custo |
Interface |
Simulação de Circuitos |
Design de PCB |
S.O. |
Altium |
Comercial |
Alto ($ 12.000) |
Avançada |
Sim |
Sim |
Windows / Linux / MAC |
Eagle |
Comercial |
Médio/Alto ($ 545 / ano) |
Fácil de usar |
Sim |
Sim |
Windows / Linux / MAC |
Proteus |
Comercial |
Médio/Alto ($ 7.000) |
Intuitiva |
Sim |
Sim |
Windows |
KiCad |
Código Aberto |
Gratuito |
Moderada |
Sim |
Sim |
Windows / Linux / MAC |
EasyEDA |
Free |
Gratuito |
Intuitiva |
Sim |
Sim |
Cloud |
Conclusão
Ao explorar as etapas essenciais do projeto de placas de circuito impresso (PCBs) e analisar algumas das principais plataformas de desenvolvimento, como Altium, Eagle, Proteus, KiCad e EasyEDA, fica claro que a escolha correta do software é crucial. Cada plataforma oferece recursos avançados para simplificar o design, a simulação, o roteamento e a verificação das PCBs. É importante considerar a facilidade de uso, a disponibilidade de bibliotecas de componentes, a capacidade de simulação e o suporte a designs complexos ao selecionar um software de PCB. Além disso, é essencial dominar as etapas do projeto para obter resultados eficientes e precisos.
Independentemente do software escolhido, um entendimento sólido das etapas do projeto de PCB é fundamental. Desde a especificação de requisitos até os testes finais, dominar essas etapas e utilizar as ferramentas adequadas pode garantir a criação de PCBs funcionais e confiáveis. Portanto, é recomendado pesquisar e explorar as diferentes opções de software disponíveis, considerando as características específicas do projeto e as necessidades individuais. Com a escolha correta e o conhecimento das etapas do projeto, é possível desenvolver PCBs de alta qualidade e impulsionar o sucesso dos dispositivos eletrônicos.
Fontes:
https://professorpetry.com.br/Bases_Dados/Apostilas_Tutoriais/Projeto_PCI_Charles.pdf
https://www.fs-pcba.com/pt/introducao-as-ferramentas-de-design-de-pcb/
https://easyeda.com/pt
https://www.altium.com/
https://www.autodesk.com/products/eagle/overview?term=1-YEAR&tab=subscription
https://www.labcenter.com/
https://www.kicad.org/
[ID:167] Autor: - Criado em: 2023-06-26 20:58:53 - [ Compartilhar ]
(SMQA) Sistema de Monitoramento de Qualidade da Água: Tecnologias e Técnicas para Implementação Eficiente
A qualidade da água é um recurso fundamental para a vida em nosso planeta, afetando diretamente a saúde humana e o equilíbrio dos ecossistemas aquáticos. Para garantir a preservação e o monitoramento contínuo desse recurso vital, torna-se essencial a utilização de sistemas eficientes de monitoramento da qualidade da água. Neste contexto, a integração de tecnologias e técnicas modernas, como microcontroladores, sensores, comunicação Wi-Fi, armazenamento de dados em um banco de dados e criação de um dashboard para visualização dos dados coletados, desempenha um papel crucial.
Tecnologias como MQTT e Node-RED desempenham um papel importante nesse processo. O MQTT é um protocolo de mensagens eficiente que facilita a troca de informações entre os dispositivos. Já o Node-RED é uma ferramenta de programação visual que simplifica a integração dos dispositivos e a criação de fluxos de automação personalizados. Com a utilização dessas tecnologias, fica muito mais fácil o monitoramento de forma online e ao vivo no que diz respeito a qualidade da água tomando por base o seu pH e o teor de cloro que existe naquela água.
Materiais e Métodos:
Node-RED: Utilizado como ferramenta de programação visual para criar os fluxos de automação.
AWS EC2: Serviço de computação em nuvem usado para hospedar o servidor Node-RED.
2 potenciômetros: Simulam os sensores (pH e teor de cloro).
ESP32: Microcontrolador que conecta os potenciômetros ao servidor Node-RED via Wi-Fi.
Procedimento:
1. Configuração do AWS EC2: Criar uma instância EC2, instalar o Node-RED e configurar um servidor MySQL.
2. Configuração dos potenciômetros: Conectar às portas adequados do ESP32 e ler os valores dos potenciômetros.
3. Comunicação via MQTT: Utilizar a biblioteca MQTT no ESP32 para enviar os dados dos potenciômetros para o servidor Node-RED.
4. Desenvolvimento dos fluxos no Node-RED: Criar fluxos para receber os dados MQTT do ESP32, processá-los e armazenar no banco de dados MySQL.
5. Armazenamento de dados no MySQL: Configurar o Node-RED para se conectar ao banco de dados MySQL e salvar os dados recebidos dos potenciômetros.
6. Testes e ajustes: Verificar o funcionamento correto dos fluxos, incluindo a correta inserção dos dados no banco de dados MySQL.
Utiliza-se também o uso do banco de dados MySQL. O Node-RED é configurado para se conectar ao MySQL e salvar os dados recebidos dos potenciômetros, permitindo o armazenamento e posterior consulta das informações coletadas. Isso possibilita o registro e histórico dos valores dos potenciômetros ao longo do tempo, além de deixar o histórico de data e hora.
Código:
Explicação:
As primeiras duas linhas do código incluem as bibliotecas necessárias para a conexão Wi-Fi (WiFi.h) e para a comunicação MQTT (PubSubClient.h).
As próximas linhas são referentes à definição das variáveis:
ssid: O nome da rede Wi-Fi à qual o ESP32 deve se conectar.
password: A senha da rede Wi-Fi.
mqttServer: O endereço do servidor MQTT que o ESP32 irá se conectar.
mqttPort: A porta do servidor MQTT.
mqttUser e mqttPassword: As credenciais de autenticação para se conectar ao servidor MQTT.
mqttTopicph, mqttTopicteordecloro: Os tópicos MQTT para os potenciômetros simulados.
Essas variáveis serão utilizadas posteriormente no código para estabelecer a conexão Wi-Fi, conectar ao servidor MQTT e para se inscrever nos tópicos MQTT relevantes.
A linha de baixo declara um objeto WiFiClient chamado espClient, que será usado para estabelecer a conexão Wi-Fi.
Em seguida, declara-se um objeto PubSubClient chamado client, que será usado para realizar a comunicação MQTT.
A função setup () é uma função especial do Arduino que é executada apenas uma vez no início do programa. Aqui, estamos iniciando a configuração inicial.
A função Serial.begin(115200) inicializa a comunicação serial com uma taxa de transmissão de 115200 bits por segundo. Isso permite que você se comunique com o ESP32 através do monitor serial para depuração e exibição de mensagens.
WiFi.begin(ssid, password) inicia a conexão Wi-Fi, utilizando o nome da rede (ssid) e a senha (password) definidos anteriormente.
Em seguida, há um loop que aguarda até que o ESP32 esteja conectado à rede Wi-Fi. Durante esse tempo, ele exibe pontos no monitor serial para indicar o progresso da conexão.
Após a conexão ser estabelecida, o endereço IP local do ESP32 é exibido no monitor serial.
A partir desse ponto, podemos prosseguir com o restante do código na função setup ().
Explicação:
A função loop() é o ponto de entrada do loop principal do programa. Nesse caso, começamos chamando client.loop(), que é uma função do PubSubClient responsável por manter a conexão MQTT ativa e processar qualquer mensagem recebida.7
Em seguida, lemos os valores dos sensores analógicos sensorPinph e sensorPinteordecloro, usando analogRead(). Essa função retorna um valor inteiro entre 0 e 4095, representando a leitura analógica do pino.8
Os valores lidos dos sensores são mapeados para faixas de valores específicas. Por exemplo, map (sensorValueph/4095)*14 mapeia o valor lido do sensor da sala (que varia de 0 a 4095) para um valor entre 0 e 14.
As variáveis ph e teordecloro armazenam os valores mapeados dos sensores.10
As variáveis phPayload e teordecloroPayload são criadas para armazenar os valores dos sensores como strings.11
Usando Serial.print() e serial.println(), exibimos no monitor serial os valores dos sensores para fins de depuração.12
Por fim, usamos a função client.publish() para enviar os valores dos sensores para os respectivos tópicos MQTT mqttTopicph e mqttTopicteordecloro. Os valores são convertidos para strings usando c_str () antes de serem publicados.13
O comando delay (1000) adiciona um atraso de 1 segundo antes de iniciar.
Este é o flow ultilizado para as logicas de cada cômodo da casa:
Nó "ui_gauge": Este nó exibe um medidor de ph em uma interface gráfica.
Nó "debug": Este nó é usado para depuração. Ele exibe mensagens no console do Node-RED.
Nó "ui_chart": Este nó exibe um gráfico de linha na interface gráfica para visualizar os dados ao longo do tempo.
Nó "ui_led": Este nó exibe um LED na interface gráfica para indicar o estado de um dispositivo.
Nó "function": Este nó executa uma função JavaScript personalizada. Pode ser usado para manipular e transformar mensagens.
Nó "ui_text": Este nó exibe um texto na interface gráfica.
Nó "comment": Este nó é usado para adicionar um comentário no fluxo para fins de documentação.
Nó "mqtt in": Este nó recebe mensagens de um tópico MQTT específico.
Nó "ui_group": Este nó agrupa outros nós relacionados visualmente em uma interface gráfica.
Nó "mqtt-broker": Este nó é configurado como o broker MQTT para se conectar a um servidor MQTT
Essa é a parte que lida com a leitura de dados de sensores e armazená-los em um banco de dados MySQL:
Os nós "mqtt in" estão configurados para receber os dados dos sensores nos tópicos "esp32/ph" e "esp32/teordecloro".
Os nós "function" ("ph" e "teordecloro") são responsáveis por extrair os valores dos sensores dos dados recebidos e adicioná-los à mensagem.
O nó "join" combina as mensagens recebidas dos três sensores em um único objeto.
O nó "delay" introduz um atraso de 5 segundos para permitir que os dados sejam coletados antes de serem inseridos no banco de dados.
O nó "function" ("INSERT") cria uma instrução SQL de inserção com os valores dos sensores e a data/hora atual.
O nó "mysql" executa a instrução SQL de inserção e armazena os dados no banco de dados MySQL.
O nó "inject" é usado para disparar uma consulta de exclusão dos dados da tabela "tempLog".
O nó "mysql" executa a instrução SQL de exclusão no banco de dados.
O nó "inject" é usado para disparar uma consulta de seleção dos últimos 10 dados da tabela "tempLog".
O nó "function" ("SELECT") cria a instrução SQL de seleção.
O nó "mysql" executa a instrução SQL de seleção e retorna os dados da tabela.
O nó "change" é usado para formatar os dados retornados em um formato adequado para exibição no gráfico.
O nó "ui_chart" exibe os dados formatados em um gráfico na interface do usuário.
[ID:164] Autor: - Criado em: 2023-06-25 19:57:09 - [ Compartilhar ]
CHOCADEIRA IOT
OBJETIVO
O projeto desenvolvido consiste no controle de temperatura, humidade e de um motor para rotacionar os ovos de uma chocadeira através de um circuito eletronico utilizando ESP32, sensor de temperatura e umidade DHT11, Node-Red, MQTT - Mosquitto, AWS ( Serviço de computação em Nuvem - Ubuntu E2C).
VISÃO GERAL
Uma incubadora de ovos é um dispositivo ou equipamento projetado para criar condições ideais para a incubação e desenvolvimento de ovos fertilizados de aves e répteis.
Essas incubadoras são usadas principalmente por avicultores e criadores de aves para aumentar a taxa de sucesso na eclosão dos ovos, permitindo o controle preciso de fatores ambientais, como temperatura, umidade e ventilação. Ao criar um ambiente controlado e estável, as incubadoras de ovos simulam as condições necessárias para que os ovos se desenvolvam adequadamente e produzam pintinhos saudáveis.
As incubadoras de ovos podem variar em tamanho e capacidade, desde pequenos modelos domésticos para uso pessoal até grandes máquinas industriais capazes de incubação em larga escala. Geralmente, essas incubadoras são equipadas com sensores e termostatos que monitoram e mantêm os parâmetros ambientais necessários para o desenvolvimento embrionário, enquanto as rotações regulares dos ovos ajudam a evitar deformações e problemas de crescimento.
MATERIAIS
Para a elaboração do circuito desta chocadeira, foram utilizados os seguintes componentes:
- 1 x ESP 32 WROOM;
- 1 x DHT 11;
- 1 x Aquecedor;
- 1 x Bomba de água;
- 1 x Motor Síncrono CA (motor de micro-ondas);
- 1 x Display LCD 16 x 2;
- 1 x Drive com 4 Relé 5V;
- 1 x Potenciômetros;
- 3 x Push boton.
CIRCUITO
Utilizando o ESP 32 para o controle do circuito.
Conexões das portas logicas.
Entradas:
- Botão Alterar, Digital 23
- Botão Selecionar Temperatura Digital 32
- Botão Selecionar Umidade Digital 19
- Potenciômetro Analógica 4
Saídas (atuadores):
- Aquecedor Digital 27
- Bomba d’agua digital 25
- Motor digital 33
Acionando relé para o chaveamento dos atuadores.
- Aquecedor - relé
- Bomba d’agua - relé
- Motor - relé
TÓPICOS MQTT
- esp32/leitura
- esp32/valor/Bomba
- esp32/valor/Luz
- esp32/valor/Humidade
- esp32/valor/Temperatura
- esp32/valor/setpointTemperatura
- esp32/valor/setpointUmidade
INFRAESTRUTURA PARA MONITORAMENTO
Com o intuito de viabilizar o monitoramento e o controle do projeto, o mesmo conta com um monitoramento e controle remoto, com infraestrutura em nuvem, de fácil acesso pelo navegador WEB.
Serviços instalados:
- Servidor PostgreSQL v15.3;
- Servidor Eclipse Mosquitto v2.0.15;
- Servidor Node-RED v3.0.2.
No contexto do monitoramento da comunicação entre componentes IoT, o Node-RED pode ser configurado para receber e processar os dados enviados pelos dispositivos IoT.
O Node-RED, monitora a comunicação entre os componentes IoT do projeto, registrar as leituras em bancos de dados SQL e fornecer um painel de monitoramento e comando (dashboard).
O fluxo (flow) Node-RED implementado:
PROTOTIPO DO CIRCUITO
CONCLUSÃO
Em resumo, o projeto de chocadeira utilizando tecnologias como ESP32, MQTT, Node-RED e IoT ofereceu uma solução altamente eficiente e inovadora para a criação de um ambiente controlado destinado à incubação de ovos. A integração do ESP32 com MQTT permitiu a coleta e o envio em tempo real de dados, o que possibilitou um monitoramento preciso dos parâmetros ambientais essenciais ao sucesso do processo de incubação. Além disso, o uso do Node-RED como plataforma de desenvolvimento simplificou a implementação das regras de automação e a criação de um painel de controle intuitivo. A combinação dessas tecnologias resultou em uma chocadeira conectada e inteligente, capaz de automatizar o controle de temperatura, umidade e viragem dos ovos, o que contribuiu para uma taxa de sucesso superior na incubação. Além disso, a integração com a IoT possibilitou o acesso remoto aos dados e o controle da chocadeira por meio de dispositivos móveis, o que trouxe mais comodidade ao usuário e maior flexibilidade.
AUTORES
José Vicente Teodoro Igino - teodoro.jose@aluno.ifsp.edu.br
Higor Zambaldi Trabuo - higor.trabuco@aluno.ifsp.edu.br
[ID:160] Autor: - Criado em: 2023-06-24 13:43:20 - [ Compartilhar ]
Readme
Projeto desenvolvido por: Jean C. Galhardi e Julio Cesar Becker M. Pinto
Projeto de Monitoramento de Produção de Vinhos com ESP32 Este é um projeto que utiliza o microcontrolador ESP32 e sensores de umidade e temperatura para monitorar a produção de vinhos. Ele permite coletar informações precisas sobre as condições ambientais durante o processo de produção, garantindo que as condições ideais sejam mantidas para obter um vinho de alta qualidade.
Visão Geral do Projeto O objetivo deste projeto é fornecer um sistema de monitoramento contínuo e em tempo real das condições de umidade e temperatura em uma vinícola. O ESP32 é o microcontrolador utilizado para realizar a aquisição dos dados dos sensores e enviar essas informações para um dispositivo externo, como um computador ou smartphone, para visualização e análise.
Os sensores de umidade e temperatura são conectados ao ESP32, que é programado para ler os dados desses sensores em intervalos regulares. Esses dados são então enviados via MQTT para um banco de dados, onde podem ser visualizados e armazenados para análise posterior.
Componentes Necessários Microcontrolador ESP32 Sensor de umidade e temperatura DHT11 Placa de desenvolvimento (protoboard) ou PCB para montagem dos componentes Cabos jumper para conexões Fonte de alimentação adequada para o ESP32 e os sensores Dispositivo externo para visualização dos dados (computador, smartphone, etc.) Instruções de Instalação Montagem do Circuito: Conecte os sensores de umidade e temperatura ao ESP32 seguindo as especificações do fabricante. Certifique-se de fazer as conexões corretamente, ligando os pinos de sinal dos sensores aos pinos corretos do ESP32.
Programação do ESP32: Utilize a IDE do Arduino ou outra plataforma de desenvolvimento compatível com o ESP32 para programar o microcontrolador. Escreva o código necessário para ler os dados dos sensores e enviar essas informações para o dispositivo externo por meio da comunicação sem fio escolhida.
Configuração da Comunicação Sem Fio: Defina as configurações de comunicação sem fio, como SSID e senha da rede Wi-Fi, ou configure as opções de comunicação Bluetooth ou LoRa, de acordo com as necessidades do projeto.
Teste e Depuração: Faça testes para garantir que os sensores estejam funcionando corretamente e que os dados estejam sendo transmitidos com sucesso para o dispositivo externo. Verifique se as leituras de umidade e temperatura são precisas e se a comunicação sem fio está estável.
Integração com Aplicativo ou Plataforma de Monitoramento: Desenvolva ou utilize um aplicativo ou plataforma de monitoramento para receber e exibir os dados enviados pelo ESP32. Certifique-se de configurar a integração corretamente, inserindo as credenciais de conexão necessárias.
Funcionamento do Projeto Após a conclusão da instalação e configuração do projeto, o ESP32 começará a ler os dados dos sensores de umidade e temperatura em intervalos regulares
[ID:159] Autor: - Criado em: 2023-06-23 22:43:46 - [ Compartilhar ]
Integração e Entrega Contínua Sem Servidor Aplicado a Plataforma Arduino
Autores:
- Bruno D’Angelo Silva
- Ezequiel Guedes Lima Junior
- Gustavo Millan Fernandes
- José Leandro Vieira
- Maike W. B. Martins
-Objetivo:
Integração Contínua sem Servidor: A integração contínua sem servidor é uma abordagem que automatiza o processo de compilação, teste e implantação de software, eliminando a necessidade de gerenciar infraestrutura. No contexto do artigo, esse conceito é aplicado para automatizar a geração e implantação de atualizações OTA para dispositivos Arduino.
Este trabalho foi desenvolvido em cima do artigo a seguir:
https://medium.com/google-cloud/serverless-continuous-integration-and-ota-update-flow-using-google-cloud-build-and-arduino-d5e1cda504bf
-Componentes:
Google Cloud Build: O Google Cloud Build é um serviço fornecido pelo Google Cloud Platform que permite criar pipelines de CI/CD. Ele permite configurar gatilhos que acionam a execução de tarefas de compilação e implantação sempre que ocorrem alterações em um repositório de código-fonte. No artigo, o Google Cloud Build é utilizado para automatizar o processo de compilação e implantação das atualizações OTA para dispositivos Arduino.
Arduino: Arduino é uma plataforma de prototipagem eletrônica de código aberto amplamente utilizada para a criação de dispositivos IoT. No contexto do artigo, dispositivos Arduino são usados como alvos para as atualizações OTA. Esses dispositivos podem ser programados para se conectarem à nuvem e receberem atualizações de software remotamente.
Atualizações OTA (Over-the-Air): Atualizações OTA referem-se à capacidade de atualizar o software de dispositivos remotamente, sem a necessidade de conexão física ou intervenção manual em cada dispositivo individualmente. No contexto do artigo, as atualizações OTA são geradas e implantadas usando o Google Cloud Build, permitindo que os dispositivos Arduino recebam atualizações de software de forma automatizada e contínua.
Git: O Git é um sistema de controle de versão amplamente utilizado para o gerenciamento de código-fonte. Ele permite que desenvolvedores rastreiem as alterações feitas no código ao longo do tempo, facilitem a colaboração em equipe e revertam para versões anteriores, se necessário. No contexto do artigo, o Git é utilizado para versionar e controlar o código-fonte do projeto Arduino, permitindo o monitoramento das alterações e o acionamento de gatilhos de integração contínua quando ocorrem alterações no repositório.
PlatformIO: PlatformIO é uma plataforma de desenvolvimento para criação de projetos de IoT. Ela oferece um ecossistema integrado que inclui ferramentas de desenvolvimento, gerenciamento de bibliotecas, depuração e suporte a uma ampla gama de plataformas, incluindo Arduino. No artigo, o PlatformIO é utilizado para instalar as dependências necessárias, compilar e enviar o firmware para os dispositivos Arduino.
Tanto o Git quanto o PlatformIO desempenham papéis importantes no processo de desenvolvimento, controle de versão e implantação de atualizações OTA para dispositivos Arduino. O Git permite o controle e o gerenciamento das alterações de código-fonte, enquanto o PlatformIO fornece as ferramentas necessárias para compilar, enviar e gerenciar o firmware dos dispositivos Arduino.
Ao combinar esses componentes (Git, PlatformIO, Google Cloud Build e Arduino), o artigo demonstra como criar um fluxo de integração contínua sem servidor para dispositivos Arduino, permitindo atualizações OTA automatizadas e contínuas com o suporte do Google Cloud Build como plataforma de CI/CD.
[ID:158] Autor: - Criado em: 2023-06-23 22:42:26 - [ Compartilhar ]
Projeto Monitoramento e Medição de Níveis de Fluídos
Projeto do trabalho de conclusão da disciplina de Plataformas de Prototipação para IoT (E2PPT) IFSP CTD. Os fontes e demais recursos usados no projeto estão disponíveis neste repositório no GitHub.
Autores
- Daniel Gonçalves <goncalves.d@aluno.ifsp.edu.br>
- Murilo dos Reis Tavares <murilo.tavares@aluno.ifsp.edu.br>
Visão Geral
Medidores de nível de fluído em contêineres usando sensores ultrassônicos. Os dados originados nos sensores são publicados em um tópico via MQTT. Um segundo conjunto, inscrito no tópico, analisa os níveis e comanda uma bomba d'água garantindo o escoamento do contêiner correspondente. Esse conjunto também pode ser acionado arbitrariamente através de um comando lido de um segundo tópico.
Um terceiro conjunto contendo um ESP32 e um LCD 15x2 faz a leitura do tópico e exibe as leituras no display. Também contém um botão que comanda, arbitrariamente, o escoamento do contêiner, enviando um comando em um segundo tópico.
Unidade de Monitoramento
- 1 x ESP32 WROOM Devkit V1;
- 1 x Display LCD 15x2 I2C;
- 1 x LED (green) indicação de conectado;
- 1 x LED (blue) indicação de leitura (subscription) ou escrita (published);
- 1 x Push Button (yellow cap) para selecionar o contêiner;
- 1 x Push Button (green cap) para parametrizar o nível do contêiner;
- 1 x Push Button (red cap) para comandar o acionamento arbitrário da bomba de escoamento.
Diagrama da Unidade de Monitoramento
Unidade de Medição
- 1 x ESP32 WROOM Devkit V1;
- 1 x Sensor HC-SR04 ultrassônico para medir o nível do fluído.
Diagrama da Unidade de Medição
Unidade de Escoamento
- 1 x ESP32 WROOM Devkit V1;
- 1 x Bomba d'água submersível, modelo JT100 (3V a 6V, vazão 80L/h a 120L/h);
- 1 x TIP41C NPN para acionar a bomba d'água;
- 1 x LED (yellow) indicação de acionamento da bomba de escoamento.
Diagrama da Unidade de Escoamento
Cada contêiner a ser monitorado deve possuir uma unidade de medição e uma unidade de escoamento.
Tópicos MQTT
- p/container/level
- p/container/set
- p/pump
Tópico `p/container/level`
Onde são publicadas as leituras de nível dos containers.
- Publishers: Unidades de medição;
- Subscribers: Unidades de monitoramento;
{
"origin": {
"from": "measureUnit",
"id": 1
},
"level": {
"ms": 911,
"cm": 15
}
}
Tópico `p/container/set`
Onde são publicados os ajustes de parâmetros de nível dos containers. Por exemplo, uma unidade de monitoramento pode definir que a leitura atual de um determinado container como sendo o limite a partir do qual o escoamento deverá ser comandado.
- Publishers: Unidades de monitoramento;
- Subscribers: Unidades de medição;
{
"origin": {
"from": "monitorUnit",
"id": 1
},
"destination": {
"to": "measureUnit",
"id": 1
},
"level": {
"ms": 747,
"cm": 13
}
}
Tópico `p/pump`
Onde são publicados os comandos para as unidades de escoamento.
- Publishers: Unidades de monitoramento (para escoamento manual), Unidades de medição (para escoamento a partir do nível determinado);
- Subscribers: Unidades de escoamento;
{
"origin": {
"from": "measureUnit",
"id": 1
},
"destination": {
"to": "pumpUnit",
"id": 1
},
"pump": {
"seconds": 3
}
}
Infraestrutura para Monitoramento e Logging
Este projeto conta com uma infraestrutura em nuvem que possibilita o monitoramento e controle remoto dos contêineres mensurados, via internet, através de um navegador em um PC ou smartphone. Os serviços disponíveis através de uma instância EC2 do tipo t2.micro onde estão virtualizados os serviços através de containers Docker. Os serviços instalados são:
- Servidor PostgreSQL v15.3
- Servidor Eclipse Mosquitto v2.0.15
- Servidor Node-RED v3.0.2
Através do Node-RED é possível monitorar a comunicação entre os componentes IoT que compõem o projeto, registrar as leituras em bancos de dados SQL e fornecer um painel de monitoramento e comando (dashboard).
Captura das telas do dashboard
O fluxo (flow) Node-RED implementado pode ser obtido neste gist, cuja representação na interface da plataforma se parece com a captura de tela:
Captura de tela do flow do projeto
Simulações dos Circuitos
Os circuitos estão simulados na plataforma Wokwi e cada um dos módulos pode ser acessado nos links abaixo:
Ao executar a simulação de uma Unidade de Medição não esqueça de modificar a identificação da unidade em `SONAR_ID` para um número inteiro positivo entre `1` e `99` (inclusive). É importante que esse número não se repita entre as Unidades de Medição.
Da mesma forma, ao executar a simulação de uma Unidade de Escoamento não esqueça de modificar a identificação da unidade em `PUMP_ID` para o mesmo número da Unidade de Medição a qual está relacionada.
Diferente das Unidades de Medição, é possível ter mais de uma Unidade de Escoamento com o mesmo `PUMP_ID`.
Simulações dos circuitos em execução
Acesse este link para mais detalhes sobre a Rede WiFi ESP32 na plataforma de simulação Wokwi.
[ID:157] Autor: - Criado em: 2023-06-22 23:16:54 - [ Compartilhar ]
IoT - Sensores e Atuadores e a Comunicação entre Dispositivos
Basedo na apresentação feita em sala de aula.
Autores
- Daniel Gonçalves <goncalves.d@aluno.ifsp.edu.br>
- Higor Zambaldi Trabuco <higor.trabuco@aluno.ifsp.edu.br>
- Murilo dos Reis Tavares <murilo.tavares@aluno.ifsp.edu.br>
- Sandro Caires <sandro.caires@alunoifsp.edu.br>
Comunicação TCP/IP
Opera usando o modelo OSI (Open Systems Interconnection)
- Camada 7: Aplicação
- Camada 6: Apresentação
- Camada 5: Sessão
- Camada 4: Transporte
- Camada 3: Rede
- Camada 2: Enlace
- Camada 1: Física
Protocolos mais Comuns
- MQTT (MQ Telemetry Transport)
- CoAP (Constrained Application Protocol)
Características comuns:
- Leves e simples
- Desenvolvidos para dispositivos limitados
- Desenvolvidos para baixa largura de banda, não confiáveis e de alta latência
- Amplamente adotados e disponíveis
MQTT
- Possibilita comunicação assíncrona
- Modelo pub/sub
CoAP
- Comunicação individual
- Modelo request/report
Topologias
Estrela
- Nó central (Access Point - AP)
- Comunicação é centralizada
- AP distribui a comunicação entre os nós
Mesh
- Comunicação direta entre os nós
- Mais de um caminho entre um nó e outro
- Maior complexidade de roteamento
- Consumo sensivelmente maior quando comparado com a topologia em estrela
Comunicação de Long Alcance
NB-IoT (Narrow-Band IoT)
- Solução dentro do espectro LPWA (Low Power Wide Area)
- Até 25 km
- Baixo consumo e baixo custo
- Padrão aberto e com suporte de uma indústria já consolidada
- Aproveita as redes já existentes, como as redes móveis celulares
- Podem se mover pela área de cobertura sem interrupções
LoRa (Low Range)
- Até 40 km em áreas rurais
- Até 5 km em áreas urbanas
- Seguro
- Baixo consumo e baixo custo
Comunicação de Médio Alcance
IEEE 802.15.4
- ZigBee
- Entre 10 e 100 metros
- Até 65 mil nós
- Seguro (criptografia AES de 128 bits)
IEEE 802.11
- WiFi
- Entre 30 a 50 metros, podendo alcançar até 100 metros
- Banda não licenciada 2,4 e 5 GHz
Comunicação de Curto Alcance
Bluetooth
- Até 79 canais *
- Até 10 metros
- Baixo consumo
BLE (Bluetooth Low Energy)
- Até 40 canais *
- Até 30 metros
- Consumo menor em relação ao Bluetooth, principalmente na relação alcance/consumo
Resumo de Alcance
Resumo do alcance das tecnologias mencionadas
40km | LoRa (áreas rurais) |
25km | NB-IoT LPWA |
5km | LoRa (áreas urbanas) |
100m | IEEE 802.15.4 ZigBee / IEEE 802.11 WiFi |
50m | IEEE 802.11 WiFi |
30m | IEEE 802.11 WiFi/BLE |
10m | IEEE 802.15.4 ZigBee / BLE / Bluetooth |
[ID:156] Autor: - Criado em: 2023-06-22 22:57:11 - [ Compartilhar ]
(ARCV) Automação Residencial com Controle por Voz.
A automação residencial com controle por voz é uma solução inovadora que transforma casas em espaços inteligentes. Utilizando tecnologias como reconhecimento de voz, assistentes virtuais e dispositivos conectados, essa abordagem revoluciona a forma como interagimos com nossos ambientes domésticos. Com assistentes virtuais populares, como a Alexa, a Siri e o Google Assistente, podemos controlar dispositivos e sistemas da casa por meio de comandos de voz, proporcionando conveniência e eliminando a necessidade de interações físicas diretas.
Essa transformação é possível graças à interconexão dos dispositivos por meio da Internet das Coisas (IoT). Sensores, atuadores e sistemas de controle são conectados em uma rede inteligente, permitindo o monitoramento e o gerenciamento remoto da residência.
Tecnologias como MQTT e Node-RED desempenham um papel importante nesse processo. O MQTT é um protocolo de mensagens eficiente que facilita a troca de informações entre os dispositivos. Já o Node-RED é uma ferramenta de programação visual que simplifica a integração dos dispositivos e a criação de fluxos de automação personalizados. Com o uso dessas tecnologias, a automação residencial com controle por voz oferece conveniência, segurança e eficiência energética. Os comandos de voz permitem o controle dos dispositivos sem a necessidade de interfaces físicas específicas. Além disso, é possível acionar sistemas de segurança e gerenciar a iluminação e a temperatura, resultando em maior segurança e economia de energia.
Materiais e Métodos:
- Node-RED: Utilizado como ferramenta de programação visual para criar os fluxos de automação.
- AWS EC2: Serviço de computação em nuvem usado para hospedar o servidor Node-RED.
- 3 potenciômetros: Simulam os sensores .
- ESP32: Microcontrolador que conecta os potenciômetros ao servidor Node-RED via Wi-Fi.
Procedimento:
1. Configuração do AWS EC2: Criar uma instância EC2, instalar o Node-RED e configurar um servidor MySQL.
2. Configuração dos potenciômetros: Conectar aos pinos adequados do ESP32 e ler os valores dos potenciômetros.
3. Comunicação via MQTT: Utilizar a biblioteca MQTT no ESP32 para enviar os dados dos potenciômetros para o servidor Node-RED.
4. Desenvolvimento dos fluxos no Node-RED: Criar fluxos para receber os dados MQTT do ESP32, processá-los e armazenar no banco de dados MySQL.
5. Armazenamento de dados no MySQL: Configurar o Node-RED para se conectar ao banco de dados MySQL e salvar os dados recebidos dos potenciômetros.
6. Testes e ajustes: Verificar o funcionamento correto dos fluxos, incluindo a correta inserção dos dados no banco de dados MySQL.
Nesse procedimento, além dos materiais e tecnologias mencionadas, é adicionado o uso do banco de dados MySQL. O Node-RED é configurado para se conectar ao MySQL e salvar os dados recebidos dos potenciômetros, permitindo o armazenamento e posterior consulta das informações coletadas. Isso possibilita o registro e histórico dos valores dos potenciômetros ao longo do tempo.
CODIGO:
Link para o codigo:Link para o código
Explicação:
Configurações Wi-Fi e MQTT:- ssid e password representam o nome e a senha da rede Wi-Fi que você deseja se conectar.
- mqttServer é o endereço do servidor MQTT ao qual você deseja se conectar.
- mqttPort é a porta utilizada para a conexão MQTT (geralmente, é a porta 1883 para MQTT sem criptografia).
- mqttUser e mqttPassword são as credenciais de autenticação para o servidor MQTT.
- Tópicos MQTT:
- mqttTopicsala, mqttTopiccozinha e mqttTopicquarto são os tópicos MQTT usados para enviar e receber mensagens relacionadas a diferentes áreas do sistema.
- mqttTopicLedsala, mqttTopicLedcozinha e mqttTopicLedquarto são os tópicos MQTT usados para controlar os LEDs em cada área específica.
- Pinos dos sensores e LEDs:
- sensorPinsala, sensorPincozinha e sensorPinquarto são os números dos pinos usados para conectar os sensores em cada área.
- ledPinsala, ledPincozinha e ledPinquarto são os números dos pinos usados para conectar os LEDs em cada área.
- O código cria um objeto WiFiClient chamado espClient que será usado para estabelecer a conexão Wi-Fi.
- Em seguida, o objeto espClient é passado como parâmetro para o construtor do objeto PubSubClient chamado client. Isso configura o cliente MQTT para usar a conexão Wi-Fi estabelecida pelo espClient.
- A função setup() é uma função especial do Arduino que é executada apenas uma vez no início do programa. Nela, as seguintes ações são realizadas:
- A comunicação serial é iniciada com uma taxa de transmissão de 115200 baud (Serial.begin(115200)).
- A conexão Wi-Fi é estabelecida usando o nome da rede (ssid) e a senha (password) fornecidos. O código aguarda até que a conexão seja estabelecida antes de prosseguir para as próximas linhas.
- O endereço IP local do dispositivo ESP32 é obtido usando a função WiFi.localIP() e é exibido no monitor serial para fins de depuração.
- Os pinos dos LEDs (ledPinsala, ledPincozinha, ledPinquarto) são configurados como saídas usando a função pinMode(). Isso permite controlar os LEDs conectados a esses pinos.
- O servidor MQTT (mqttServer) e a porta MQTT (mqttPort) são configurados usando o método setServer() do objeto client.
A função de retorno de chamada (callback) para processar as mensagens recebidas pelo cliente MQTT é configurada usando o método setCallback() do objeto client.
- Conexão ao servidor MQTT:
- Um loop é iniciado enquanto o cliente MQTT não estiver conectado.
- Uma mensagem de "Conectando ao servidor MQTT..." é exibida no monitor serial.
- O cliente MQTT tenta se conectar ao servidor usando o método connect().
- Se a conexão for bem-sucedida, uma mensagem de "Conectado ao servidor MQTT!" é exibida no monitor serial.
- O cliente MQTT se inscreve em três tópicos usando o método subscribe().
- Falha na conexão ao servidor MQTT:
- Se a conexão falhar, uma mensagem de "Falha na conexão - Estado: " é exibida no monitor serial.
- O estado atual do cliente MQTT é obtido usando o método state().
- Há um atraso de 2 segundos antes de tentar novamente a conexão.
- Função de retorno de chamada (callback):
- A função callback() é chamada quando uma mensagem é recebida no cliente MQTT.
- Ela recebe o tópico (topic), o payload (conteúdo da mensagem) e o comprimento do payload (length).
- A função processa as mensagens recebidas de acordo com a lógica do programa.
- Processamento de mensagens para o LED de sala:
- A função callback() verifica se o tópico recebido é igual a mqttTopicLedsala.
- Se for o caso, o valor recebido é exibido no monitor serial.
- O payload (em formato de vetor de bytes) é convertido para uma string para uso posterior no programa.
- Processamento de mensagens para o LED de sala:
- O valor recebido é convertido para letras minúsculas usando o método toLowerCase().
- O LED de sala é ligado ou desligado de acordo com o valor recebido:
- Se o valor for igual a "true", o LED de sala é ligado usando digitalWrite(ledPinsala, HIGH).
- Caso contrário, o LED de sala é desligado usando digitalWrite(ledPinsala, LOW).
- Processamento de mensagens para o LED de cozinha:
- A função callback() verifica se o tópico recebido é igual a mqttTopicLedcozinha.
- Se for o caso, o valor recebido é exibido no monitor serial.
- O payload (em formato de vetor de bytes) é convertido para uma string para uso posterior no programa.
- O valor da string é convertido para letras minúsculas usando o método toLowerCase().
- O LED de cozinha é ligado ou desligado de acordo com o valor recebido:
- Se o valor for igual a "true", o LED de cozinha é ligado usando digitalWrite(ledPincozinha, HIGH).
- Caso contrário, o LED de cozinha é desligado usando digitalWrite(ledPincozinha, LOW).
Processamento de mensagens para o LED de quarto:
- A função callback() verifica se o tópico recebido é igual a mqttTopicLedquarto.
- Se for o caso, o valor recebido é exibido no monitor serial.
- O payload (em formato de vetor de bytes) é convertido para uma string para uso posterior no programa.
- O valor da string é convertido para letras minúsculas usando o método toLowerCase().
- O LED de quarto é ligado ou desligado de acordo com o valor recebido
- Se o valor for igual a "true", o LED de quarto é ligado usando digitalWrite(ledPinquarto, HIGH)
- Caso contrário, o LED de quarto é desligado usando digitalWrite(ledPinquarto, LOW).
- Função reconnect():
- Essa função é responsável por tentar reconectar ao servidor MQTT caso a conexão seja perdida.
- Um loop é iniciado enquanto o cliente MQTT não estiver conectado.
- Uma mensagem de "Tentando reconectar ao servidor MQTT..." é exibida no monitor serial.
- O cliente MQTT tenta se reconectar ao servidor usando o método connect().
- Se a conexão for bem-sucedida, uma mensagem de "Conectado ao servidor MQTT!" é exibida no monitor serial.
- O cliente MQTT se inscreve nos tópicos mqttTopicLedsala, mqttTopicLedcozinha e mqttTopicLedquarto usando o método subscribe().
- Se a conexão falhar, uma mensagem de "Falha na conexão - Estado: " é exibida no monitor serial.
- O estado atual do cliente MQTT é obtido usando o método state().
- Há um atraso de 2 segundos antes de tentar novamente a conexão.
- Função loop():
- Essa função é executada continuamente em um loop na placa ESP32.
- Se o cliente MQTT não estiver conectado, a função reconnect() é chamada para tentar reconectar ao servidor.
- O método loop() do objeto client é chamado para manter a comunicação com o servidor MQTT.
- Os valores dos sensores analógicos (sensorPinsala, sensorPincozinha, sensorPinquarto) são lidos usando analogRead().
- Os valores dos sensores são mapeados para uma faixa de 0 a 100 usando map(), para obter valores percentuais.
- Os valores mapeados são convertidos para strings usando String().
- As strings dos valores dos sensores são armazenadas nas variáveis salaPayload, cozinhaPayload e quartoPayload para uso posterior no programa.
- Envio de dados para o Node-RED - Sala:
- Uma mensagem é exibida no monitor serial informando que os dados estão sendo enviados para o Node-RED, seguida pelo valor da variável sala.
- O cliente MQTT publica (envia) a mensagem contida na variável salaPayload para o tópico mqttTopicsala usando o método publish().
- O método c_str() é usado para obter um ponteiro para a string contida em salaPayload no formato de vetor de caracteres.
- Envio de dados para o Node-RED - Cozinha:
- Uma mensagem é exibida no monitor serial informando que os dados estão sendo enviados para o Node-RED, seguida pelo valor da variável cozinha.
- O cliente MQTT publica (envia) a mensagem contida na variável cozinhaPayload para o tópico mqttTopiccozinha usando o método publish().
- Envio de dados para o Node-RED - Quarto:
- Uma mensagem é exibida no monitor serial informando que os dados estão sendo enviados para o Node-RED, seguida pelo valor da variável quarto.
- O cliente MQTT publica (envia) a mensagem contida na variável quartoPayload para o tópico mqttTopicquarto usando o método publish().
- Atraso e repetição:
- Há um atraso de 1 segundo usando o comando delay(1000) para controlar a frequência de envio dos dados.
- Em seguida, o código retorna ao início do loop para repetir o processo de leitura dos sensores e envio dos dados.
Flow:
Link para o flow : Flow - Marcus Redondo
Este é o flow ultilizado para as logicas de cada cômodo da casa
Nó "ui_gauge": Este nó exibe um medidor de nível de som (decibéis) em uma interface gráfica.
Nó "debug": Este nó é usado para depuração. Ele exibe mensagens no console do Node-RED.
Nó "ui_chart": Este nó exibe um gráfico de linha na interface gráfica para visualizar os dados ao longo do tempo.
Nó "ui_led": Este nó exibe um LED na interface gráfica para indicar o estado de um dispositivo.
Nó "function": Este nó executa uma função JavaScript personalizada. Pode ser usado para manipular e transformar mensagens.
Nó "ui_text": Este nó exibe um texto na interface gráfica.
Nó "comment": Este nó é usado para adicionar um comentário no fluxo para fins de documentação.
Nó "mqtt out": Este nó envia mensagens para um tópico MQTT específico.
Nó "mqtt in": Este nó recebe mensagens de um tópico MQTT específico.
Nó "ui_group": Este nó agrupa outros nós relacionados visualmente em uma interface gráfica.
Nó "mqtt-broker": Este nó é configurado como o broker MQTT para se conectar a um servidor MQTT
Nó "Delay 5s": Este Nó não deixa as informações travarem na função CallBack do codigo
Essa é a parte que lida com a leitura de dados de sensores e armazená-los em um banco de dados MySQL
Os nós "mqtt in" estão configurados para receber os dados dos sensores nos tópicos "esp32/sala", "esp32/cozinha" e "esp32/quarto".
Os nós "function" ("Sala", "Cozinha" e "Quarto") são responsáveis por extrair os valores dos sensores dos dados recebidos e adicioná-los à mensagem.
O nó "join" combina as mensagens recebidas dos três sensores em um único objeto.
O nó "delay" introduz um atraso de 5 segundos para permitir que os dados sejam coletados antes de serem inseridos no banco de dados.
O nó "function" ("INSERT") cria uma instrução SQL de inserção com os valores dos sensores e a data/hora atual.
O nó "mysql" executa a instrução SQL de inserção e armazena os dados no banco de dados MySQL.
O nó "inject" é usado para disparar uma consulta de exclusão dos dados da tabela "tempLog".
O nó "mysql" executa a instrução SQL de exclusão no banco de dados.
O nó "inject" é usado para disparar uma consulta de seleção dos últimos 10 dados da tabela "tempLog".
O nó "function" ("SELECT") cria a instrução SQL de seleção.
O nó "mysql" executa a instrução SQL de seleção e retorna os dados da tabela.
O nó "change" é usado para formatar os dados retornados em um formato adequado para exibição no gráfico.
O nó "ui_chart" exibe os dados formatados em um gráfico na interface do usuário.
Essa é a dashboard finalizada com o monitoramento dos 3 cômodos da casa.
Em conclusão, a automação residencial com controle por voz é uma solução inovadora que oferece conveniência, segurança e eficiência energética. Através do uso de tecnologias como reconhecimento de voz, assistentes virtuais e dispositivos conectados, é possível transformar casas em espaços inteligentes, permitindo o controle de dispositivos e sistemas por meio de comandos de voz. A interconexão dos dispositivos por meio da Internet das Coisas (IoT) desempenha um papel fundamental nesse processo, possibilitando o monitoramento e gerenciamento remoto da residência. O uso de protocolos eficientes como o MQTT e ferramentas de programação visual como o Node-RED simplificam a integração dos dispositivos e a criação de fluxos de automação personalizados. Ao utilizar a automação residencial com controle por voz, é possível controlar dispositivos sem a necessidade de interfaces físicas específicas, tornando a interação mais intuitiva e conveniente. Além disso, é possível acionar sistemas de segurança, gerenciar a iluminação e a temperatura, resultando em maior segurança e economia de energia. A combinação de sensores, atuadores, assistentes virtuais e sistemas de controle inteligentes cria um ambiente residencial que se adapta às necessidades e preferências do usuário, proporcionando um maior conforto e qualidade de vida. No contexto do procedimento apresentado, o uso do Node-RED, AWS EC2, potenciômetros e ESP32 demonstra uma implementação prática da automação residencial com controle por voz. A integração desses elementos permite a coleta de dados dos sensores, o envio e recebimento de informações via MQTT, o processamento e armazenamento desses dados em um banco de dados MySQL, além de interações com LEDs e a exibição de informações em uma interface gráfica. Em suma, a automação residencial com controle por voz representa uma tendência crescente na transformação digital dos ambientes domésticos, proporcionando uma experiência mais intuitiva, eficiente e conectada aos usuários. Com o avanço contínuo da tecnologia, é provável que novas inovações e aprimoramentos surjam nesse campo, tornando nossas casas cada vez mais inteligentes e personalizadas às nossas necessidades.
[ID:155] Autor: - Criado em: 2023-06-21 04:11:38 - [ Compartilhar ]
Acionamento Remoto de Motor com ESP32, RFID, MQTT, Banco de Dados PostgreSQL ,API Java e Node-Red.
Autores:
-José Leandro Vieira
-Gustavo Millan Fernandes
1. Introdução
O objetivo deste projeto de eletrônica é desenvolver um sistema de acionamento remoto de um motor utilizando o protocolo MQTT (Message Queuing Telemetry Transport), com a utilização de um cartão RFID devidamente validado. Somente um cartão RFID registrado será capaz de acionar e parar o motor. Além disso, o projeto prevê o desligamento do motor em caso de aumento elevado de temperatura. Para a implementação, foram montados três módulos, cada um com suas funções específicas, e foi utilizado um banco de dados PostgreSQL para registrar os IDs dos cartões RFID lidos e seus respectivos status.
2. Materiais Utilizados
Os seguintes materiais foram utilizados na montagem do projeto:
- Módulo 1: ESP32, leitor RFID RC522 e um botão Push Button para alternar o modo do módulo entre leitura e gravação.
- Módulo 2: ESP32, relé para acionamento do motor através do Módulo 3, outro relé para inverter o giro do motor, LEDs indicadores de estado da conexão Wi-Fi e servidor MQTT, display LCD para mostrar o estado da conexão Wi-Fi, estado do servidor MQTT e temperatura ambiente (obtida através de um sensor LM35).
- Módulo 3: Ponte H que será acionada via relé do Módulo 2. Possui um botão Push Button que possibilita a inversão do giro do motor.
3. Funcionamento do Sistema
O sistema é composto por três módulos distintos que trabalham em conjunto para o acionamento do motor e o monitoramento de temperatura. O fluxo de funcionamento do sistema é descrito a seguir:
3.1 Módulo 1
O Módulo 1 contém o ESP32, o leitor RFID RC522 e um botão Push Button. Ele é responsável pela leitura dos cartões RFID e pela validação dos mesmos. O botão Push Button permite alternar o módulo entre o modo de leitura e gravação. Quando um cartão RFID válido é lido, o Módulo 1 atualiza o tópico no servidor MQTT e também registra o ID do cartão no banco de dados, juntamente com o status de ativação.
Descrição imagem: Módulo 1.
Fonte: https://wvieira.com.br/wp-content/uploads/img/mqtt_rfid_modulo_01.jpg
3.2 Módulo 2
O Módulo 2 possui um ESP32, relé de acionamento do motor através do Módulo 3, relé para inverter o giro do motor, LEDs indicadores de estado da conexão Wi-Fi e servidor MQTT, e um display LCD. Esse módulo é configurado para publicar e ler no mesmo tópico no servidor MQTT, protegido por usuário e senha. Quando há uma atualização nesse tópico, o Módulo 2 atualiza seu estado, acionando o relé correspondente para ligar o motor por meio da Ponte H.
O Módulo 2 também possui um sensor de temperatura LM35, que mede a temperatura ambiente. Essa informação é exibida no display LCD, juntamente com o estado da conexão Wi-Fi e do servidor MQTT. Caso ocorra um aumento elevado de temperatura, o motor será desligado, e a ligação do motor só será possível novamente após a temperatura diminuir para níveis seguros.
3.3 Módulo 3
O Módulo 3 é composto pela Ponte H, que é acionada pelo relé do Módulo 2. Além disso, possui um botão Push Button que possibilita a inversão do giro do motor.
Descrição imagem: Módulos 2 e 3
Fonte: https://wvieira.com.br/wp-content/uploads/img/mqtt_rele_modulo_02_e_03_ponte_h.jpg
3.4 Dashboard de Controle
O dashboard de controle criado no Node-Red( Ferramenta de desenvolvimento baseada em fluxo de dados ), possuí dois botões, um para ligar o motor e outro para desligar o motor, ambos ao ser clicado atualiza o tópico no servidor MQTT, e assim liga ou desliga o motor remotamente.
Pelo dashboar também é possível visualizar o status em que o motor se encontra, possuí também um alerta para quando a temperatura está alta, e por último é exibido o histório dos acionamentos e desligamentos do motor, mostrando o horário e se o motor foi desligado devido a temperatura ou não.
Descrição imagem: Dashboard Node-Red
Fonte: https://wvieira.com.br/wp-content/uploads/img/node_red_ui.png
4. Banco de Dados, API e Node-Red
Foi utilizado o banco de dados PostgreSQL para armazenar os IDs dos cartões RFID lidos e seus respectivos status de ativação. Essas informações são registradas sempre que um cartão válido é lido pelo Módulo 1. Para facilitar as operações de atualização do status do cartão RFID, foi criado chamadas HTTP, com todo o fluxo das regras controlada pelo Node-Red.
Descrição imagem: Node-Red Flow
Fonte: https://wvieira.com.br/wp-content/uploads/img/node_red_flow.png
5.Considerações Finais
O projeto de acionamento remoto de motor com RFID, MQTT, banco de dados e API apresentado neste relatório demonstra a utilização de diferentes módulos eletrônicos interconectados para permitir o controle seguro e remoto de um motor. O sistema utiliza o protocolo MQTT para a comunicação entre os módulos, garantindo a transmissão segura das informações. Além disso, o uso de um banco de dados PostgreSQL permite o registro e a atualização dos cartões RFID válidos, facilitando o gerenciamento do sistema.
[ID:154] Autor: - Criado em: 2023-06-15 00:59:28 - [ Compartilhar ]
Sistema de Irrigação Inteligente (SII)
INTRODUÇÃO
O Sistema de Irrigação Inteligente (SII) é uma solução avançada e eficiente que tem revolucionado a agricultura nos últimos anos, utilizando tecnologias como o microcontrolador ESP32, o protocolo MQTT, a plataforma Node-RED e a Internet das Coisas (IoT). Essas tecnologias combinadas permitem a criação de um sistema inteligente e automatizado para o controle de irrigação de forma precisa e otimizada.
O microcontrolador ESP32 desempenha um papel fundamental no SII. Com sua capacidade de processamento e conectividade Wi-Fi, o ESP32 é capaz de receber dados de sensores, como os de umidade do solo, e tomar decisões com base nessas informações. Além disso, sua conectividade Wi-Fi permite a comunicação com outros dispositivos e sistemas, tornando possível o controle remoto e a integração do sistema de irrigação.
O protocolo MQTT é utilizado para a comunicação entre os diferentes componentes do SII. Trata-se de um protocolo de mensagens leve e eficiente, ideal para aplicações de IoT. O ESP32 pode publicar dados de sensores e receber comandos através do MQTT, facilitando a troca de informações e o controle do sistema de irrigação.
A plataforma Node-RED desempenha um papel importante no desenvolvimento e na configuração do SII. Com sua interface visual intuitiva, o Node-RED permite a criação de fluxos de automação de forma simplificada. É possível configurar nós MQTT para receber e enviar mensagens, processar dados dos sensores e tomar decisões com base nas informações coletadas. Essa plataforma facilita a personalização e a configuração dos fluxos de automação do sistema de irrigação.
A integração do ESP32, MQTT, Node-RED e IoT no SII oferece uma série de benefícios. Os sensores conectados ao ESP32 podem coletar dados de umidade do solo em tempo real e enviá-los para o Node-RED através do MQTT. No Node-RED, é possível processar esses dados, acionar válvulas de irrigação e ajustar automaticamente a quantidade de água fornecida às plantas com base em algoritmos inteligentes.
Com o uso dessas tecnologias, o SII proporciona uma irrigação mais precisa e eficiente, adaptando-se às necessidades específicas das plantas e às condições climáticas em tempo real. Além disso, o controle remoto e a integração com outros sistemas permitem que o agricultor monitore e gerencie o sistema de irrigação de forma conveniente e flexível.
Em conclusão, o Sistema de Irrigação Inteligente (SII) utiliza tecnologias como o ESP32, o protocolo MQTT, a plataforma Node-RED e a IoT para criar um sistema de irrigação automatizado e controlado de forma precisa. Essa abordagem oferece uma irrigação mais eficiente, adaptável e sustentável, permitindo o monitoramento e o controle remoto do sistema, além de otimizar a produtividade agrícola.
MATERIAIS E MÉTODOS
Os materiais utilizados para a execução do projeto foram:
- ESP32;
- Termopar tipo J: o termopar tipo J é um sensor de temperatura amplamente utilizado em hortas automatizadas devido à sua alta precisão, resistência a ambientes hostis, resposta rápida e facilidade de integração em sistemas de automação. Sua aplicação permite o controle preciso da temperatura ambiente e do solo, garantindo condições ideais de crescimento das plantas e possibilitando o monitoramento remoto das condições de temperatura;
- Transdutor de umidade FC-28: o módulo sensor de umidade de solo FC-28 é um dispositivo compacto que utiliza a tecnologia de sensor de resistência para medir a umidade do solo. Ele consiste em duas sondas metálicas que são inseridas no solo, e um circuito interno converte a resistência medida em um sinal proporcional à umidade. O FC-28 pode ser facilmente integrado a microcontroladores como Arduino e Raspberry Pi, permitindo automatizar a irrigação em projetos de jardinagem inteligente. A calibração adequada é essencial para obter leituras precisas. É uma ferramenta valiosa para controlar a rega e manter um jardim saudável;
- Node-RED;
- Ubuntu Server 20.04 LTS;
- RDS;
- Mosquitto;
- Broker MQTT;
- Sistema de gerenciamento de banco de dados (MySQL).
A primeira etapa consiste em realizar uma revisão completa dos requisitos do projeto. Isso envolve determinar quais parâmetros do processo serão monitorados e controlados, bem como definir as funcionalidades necessárias. A revisão dos requisitos é fundamental para estabelecer uma base sólida para o desenvolvimento do projeto.
Uma vez que os requisitos do projeto são definidos, é necessário selecionar os componentes adequados para o sistema de monitoramento. Neste caso, o microcontrolador ESP32-WROOM-DA foi escolhido e a Arduino IDE foi utilizada como ferramenta de programação. A configuração do ambiente de desenvolvimento, incluindo a instalação da IDE e outras ferramentas relevantes, é essencial para garantir a correta programação do microcontrolador.
O próximo passo envolve a programação do microcontrolador para coletar dados dos sensores e controlar os atuadores, se necessário. Utilizando a Arduino IDE, é possível escrever o código necessário para ler os dados dos sensores, estabelecer a comunicação com os módulos de sensores e atuadores, e enviar os dados para o servidor. Isso permite a aquisição eficiente dos dados do tanque industrial.
Para garantir a transmissão dos dados coletados, é necessário configurar a conexão com a internet no microcontrolador. Neste caso, a conexão Wi-Fi foi utilizada para estabelecer a comunicação com um servidor externo. Essa configuração permite o envio dos dados coletados para armazenamento e análise posterior.
No lado do servidor, é necessário configurar um ambiente apropriado para receber e processar os dados provenientes do microcontrolador. Neste projeto, utilizou-se o sistema operacional Ubuntu Server 20.04 LTS, o sistema de gerenciamento de banco de dados RDS e o broker MQTT Mosquitto. Essas configurações são essenciais para garantir a estabilidade e o gerenciamento eficiente dos dados coletados.
Com o servidor configurado, o Node-RED foi utilizado para desenvolver a interface de usuário. Essa plataforma visual permitiu a criação de dashboards interativos para visualizar os dados do tanque industrial. Gráficos, tabelas e outras representações visuais dos dados coletados foram criados, proporcionando uma melhor compreensão do processo de monitoramento.
Por fim, foi necessário estabelecer a integração entre o Node-RED e o banco de dados MySQL. Essa integração permite o armazenamento persistente dos dados coletados do tanque industrial, garantindo sua disponibilidade e possibilitando análises futuras. Os dados são continuamente armazenados para fins de referência e podem ser facilmente acessados para análises posteriores.
RESULTADOS
O código desenvolvido permitiu a leitura e monitoramento dos sensores de temperatura, pressão e nível do tanque, e a integração com um servidor MQTT para enviar os dados coletados.
O sistema utiliza um microcontrolador ESP32, sensores de umidade do solo e temperatura ambiente para monitorar as condições ambientais.
O sensor de umidade do solo mede a umidade presente no solo e envia os dados para o microcontrolador por meio do protocolo MQTT. Os dados são exibidos em um medidor de umidade e em um gráfico de linha, permitindo acompanhar a variação da umidade ao longo do tempo.
Além disso, o sistema utiliza um LED para indicar se a umidade está baixa. Um nó de função é usado para comparar o valor de umidade e, caso seja inferior a 70%, o LED é acionado, indicando que a umidade está baixa.
O sensor de temperatura ambiente também envia dados para o microcontrolador através do MQTT. Os dados são exibidos em um medidor de temperatura e em um gráfico de linha, permitindo acompanhar a variação da temperatura ao longo do tempo.
Assim como o sensor de umidade, o sistema utiliza um LED para indicar se a temperatura está acima de um determinado limite. Outro nó de função é utilizado para comparar o valor da temperatura e, caso seja superior a 30°C, o LED é acionado, indicando que a temperatura está excessiva.
Todos os componentes são exibidos em um painel de controle, que permite visualizar de forma intuitiva as informações sobre a umidade do solo e a temperatura ambiente. O painel também exibe um texto indicando se a umidade está baixa e se a temperatura está excessiva.
Esse sistema de irrigação inteligente permite monitorar as condições do solo e do ambiente, fornecendo informações em tempo real sobre a umidade e a temperatura. Com base nessas informações, os agricultores ou jardineiros podem tomar decisões mais informadas sobre a irrigação de suas plantas, garantindo um uso eficiente da água e evitando problemas causados por condições inadequadas de umidade e temperatura.
A funcionalidade do fluxo em questão é coletar, armazenar e visualizar dados de temperatura e umidade provenientes de um dispositivo ESP32. O fluxo utiliza a plataforma Node-RED, juntamente com MQTT e um banco de dados MySQL, para realizar essas tarefas.
Primeiramente, os dados de temperatura e umidade são recebidos por meio de dois nós MQTT In. Esses nós capturam as informações enviadas pelo dispositivo ESP32, que publica esses dados nos tópicos "esp32/temperatura" e "esp32/umidade".
Em seguida, os nós Function extraem os valores de temperatura e umidade das mensagens recebidas e atribuem esses valores às propriedades correspondentes.
Posteriormente, as mensagens são unidas em uma única mensagem pelo nó Join, que combina as propriedades "temperatura" e "umidade" em uma única estrutura.
Após um atraso de 5 segundos, o fluxo continua com a inserção dos dados no banco de dados MySQL. O nó Function constrói uma instrução SQL para inserir os valores de temperatura, umidade e um timestamp na tabela "dados".
Uma vez que os dados são armazenados no banco de dados, o fluxo inclui uma funcionalidade para visualizar os últimos 10 registros em um gráfico de linha e em uma tabela. O nó MySQL executa uma consulta SELECT para obter esses dados, que são formatados adequadamente pelo nó Change e enviados para o nó UI Chart. Esse nó é responsável por exibir o gráfico de temperatura e umidade em um painel de controle.
Além disso, o fluxo também inclui a possibilidade de excluir os dados da tabela, bem como recuperar e exibir os últimos 10 registros em uma tabela por meio do uso de nós adicionais.
Em resumo, a funcionalidade do fluxo é coletar e armazenar os dados de temperatura e umidade enviados pelo ESP32, bem como exibi-los em tempo real em um gráfico e tabela por meio do Node-RED, MQTT e MySQL. Essa solução é útil para monitorar e analisar as condições ambientais com base nos dados coletados pelo dispositivo ESP32.
CONCLUSÃO
O Sistema de Irrigação Inteligente (SII) é um projeto que utiliza tecnologias avançadas para automatizar e controlar o processo de irrigação na agricultura.
O projeto é baseado no uso do microcontrolador ESP32, que é responsável por coletar dados de sensores, como os de umidade do solo, e tomar decisões com base nessas informações. Ele também permite a comunicação com outros dispositivos e sistemas, possibilitando o controle remoto e a integração do sistema de irrigação.
O protocolo MQTT é utilizado para a troca de informações entre os componentes do SII. Ele é um protocolo de mensagens leve e eficiente, ideal para aplicações de Internet das Coisas (IoT). O ESP32 publica os dados dos sensores e recebe comandos por meio do MQTT, facilitando a comunicação e o controle do sistema de irrigação.
A plataforma Node-RED é utilizada para o desenvolvimento e configuração do SII. Com sua interface visual intuitiva, o Node-RED permite a criação simplificada de fluxos de automação. É possível configurar os nós MQTT para receber e enviar mensagens, processar os dados dos sensores e tomar decisões com base nas informações coletadas. Essa plataforma facilita a personalização e configuração dos fluxos de automação do sistema de irrigação.
A integração dessas tecnologias no SII traz benefícios significativos. Os sensores conectados ao ESP32 coletam dados de umidade do solo em tempo real e os enviam para o Node-RED por meio do MQTT. No Node-RED, os dados são processados e são acionadas válvulas de irrigação de forma automática. Além disso, algoritmos inteligentes permitem ajustar automaticamente a quantidade de água fornecida às plantas, levando em consideração suas necessidades e as condições climáticas.
Com o uso do SII, é possível obter uma irrigação mais precisa e eficiente, adaptada às necessidades das plantas e às condições ambientais em tempo real. O controle remoto e a integração com outros sistemas permitem que o agricultor monitore e gerencie o sistema de irrigação de maneira conveniente e flexível.
Em resumo, o Sistema de Irrigação Inteligente utiliza tecnologias como o microcontrolador ESP32, o protocolo MQTT, a plataforma Node-RED e a IoT para automatizar e controlar o processo de irrigação na agricultura. Isso resulta em uma irrigação mais eficiente, adaptável e sustentável, permitindo o monitoramento em tempo real, o controle remoto e a otimização da produtividade agrícola.
[ID:153] Autor: - Criado em: 2023-06-14 20:52:21 - [ Compartilhar ]
Automação Industrial com Controle de Processos - Tanque industrial
A automação industrial com controle de processos desempenha um papel fundamental na operação eficiente e segura de tanques industriais. Tanques são amplamente utilizados em diversos setores, como petroquímico, alimentício, farmacêutico e de produção de bebidas, para armazenar líquidos, gases ou sólidos. A automação industrial nesse contexto refere-se à aplicação de sistemas e tecnologias que automatizam e controlam as operações dos tanques. Ela envolve o uso de sensores, controladores e atuadores para monitorar e regular os parâmetros do processo, como nível, temperatura, pressão, vazão e qualidade do conteúdo do tanque.
Materiais
Para a construção do presente projeto foi utilizado os seguintes componentes:
- ESP32-WROOM-DA Module;
- Sensor de temperatura;
- Sensor de pressão;
- Sensor de nível;
- Sensores de vazão;
- Cabo micro USB;
- Protoboard;
- Conexão com a internet;
- Computador;
- Arduino IDE;
- Node-RED;
- Ubuntu Server 20.04 LTS;
- RDS;
- Mosquitto;
- Broker MQTT;
- Sistema de gerenciamento de banco de dados (MySQL).
Em posse dos componentes, foi possível iniciar a construção da dashboard em Node-RED para visualizar as variáveis presentes no tanque industrial, permitindo assim sua automação e controle de seus processos.
Métodos
Em primeiro lugar, foi realizada uma análise detalhada dos requisitos do projeto. Isso envolve identificar quais parâmetros do processo precisam ser monitorados e controlados, definir as funcionalidades desejadas e estabelecer os objetivos a serem alcançados. Essa etapa é crucial para direcionar o desenvolvimento do projeto. Uma vez que os requisitos estão estabelecidos, foi selecionado os componentes adequados para o sistema.
Em seguida, foi realizada a configuração do ambiente de desenvolvimento. A Arduino IDE é uma ferramenta amplamente utilizada para programar microcontroladores, como o ESP32-WROOM-DA. Portanto, foi realizada a instalação da IDE e outras ferramentas relevantes para permitir a programação adequada do microcontrolador.
O próximo passo consistiu em programar o microcontrolador para adquirir dados dos sensores e, se necessário, controlar os atuadores. Utilizando a Arduino IDE, foi possível escrever o código necessário para ler os dados dos sensores, estabelecer a comunicação com os módulos de sensores e atuadores, e enviar os dados para o servidor.
Após, foi preciso configurar a conexão com a internet no microcontrolador. Isso permitiu que os dados coletados fossem enviados para um servidor externo. Essa conexão foi realizada por meio de uma conexão Wi-Fi.
No lado do servidor, foi necessário configurar um ambiente apropriado para receber e processar os dados vindos do microcontrolador. Sendo utilizado o Ubuntu Server 20.04 LTS como sistema operacional, o RDS como sistema de gerenciamento de banco de dados e o Mosquitto como broker MQTT. Essas configurações garantem um ambiente robusto para o armazenamento e gerenciamento dos dados.
Com o servidor configurado, se utilizou do Node-RED para desenvolver a interface de usuário. Essa plataforma visual permitiu a criação de dashboards interativos para visualizar os dados do tanque industrial. Sendo realizada a criação de gráficos, tabelas e outras representações visuais dos dados coletados, proporcionando uma melhor compreensão do processo.
Por fim, foi necessário estabelecer a integração entre o Node-RED e o banco de dados MySQL. Isso possibilitou o armazenamento persistente dos dados coletados do tanque industrial, garantindo sua disponibilidade e possibilitando análises futuras.
Resultados alcançados
O projeto de automação industrial com controle de processos em tanques industriais obteve resultados significativos, proporcionando avanços no monitoramento e controle eficiente desses sistemas. Com a implementação dos componentes selecionados, incluindo o módulo ESP32-WROOM-DA, sensores de temperatura, pressão, nível e vazão, além da integração com o Node-RED e o banco de dados MySQL.
O projeto de automação industrial com controle de processos em tanques industriais utilizou o microcontrolador ESP32 em conjunto com o Arduino IDE para obter resultados significativos. O código desenvolvido permitiu a leitura e monitoramento dos sensores de temperatura, pressão e nível do tanque, e a integração com um servidor MQTT para enviar os dados coletados.
Através da conexão Wi-Fi estabelecida pelo ESP32, os dados foram enviados para um servidor MQTT utilizando a biblioteca PubSubClient. Isso possibilitou a comunicação e integração com outros dispositivos e sistemas, como o Node-RED, para visualização e controle dos parâmetros do tanque.
O ESP32 realizou a leitura contínua dos sensores de temperatura, pressão e nível, permitindo o monitoramento em tempo real dos parâmetros do tanque industrial. Essa funcionalidade forneceu informações precisas sobre as condições do tanque, possibilitando a detecção de possíveis problemas e a tomada de ações corretivas de forma rápida.
A utilização do protocolo MQTT e a conexão com o servidor MQTT permitiram a publicação dos dados coletados. Os valores obtidos pelos sensores foram convertidos e enviados para tópicos específicos no servidor MQTT, estabelecendo uma comunicação eficiente entre o ESP32 e outros dispositivos ou sistemas conectados ao servidor.
Esses resultados contribuíram para a construção de um sistema de automação industrial mais eficiente e seguro. O monitoramento em tempo real dos parâmetros do tanque industrial possibilitou uma melhor compreensão e controle dos processos. A integração com o servidor MQTT permitiu a troca de informações com outros dispositivos e sistemas, ampliando as possibilidades de visualização e controle dos dados do tanque.
O sistema de monitoramento de temperatura, pressão e nível desenvolvido utilizando o Node-RED apresentou resultados satisfatórios durante os testes realizados. A integração dos sensores ao fluxo do Node-RED foi bem-sucedida, permitindo a recepção contínua dos dados de temperatura, pressão e nível. Os nós "mqtt in" configurados para os respectivos tópicos "esp32/temperature", "esp32/pressure" e "esp32/level" receberam as mensagens MQTT enviadas pelos sensores conectados ao ESP32 de forma confiável, garantindo a coleta dos dados necessários para o monitoramento em tempo real.
Os dados coletados foram exibidos de maneira clara e compreensível por meio de medidores interativos e gráficos. Os nós "ui_gauge" apresentaram um desempenho satisfatório ao exibir os valores das variáveis em medidores na interface gráfica. Esses medidores foram atualizados de forma dinâmica e responsiva, permitindo aos usuários visualizar instantaneamente os valores das variáveis monitoradas em tempo real.
Além disso, os nós "ui_chart" foram utilizados para exibir gráficos interativos que mostravam a variação das variáveis ao longo do tempo. Os gráficos de linha representaram de maneira eficiente a mudança dos valores das variáveis no eixo Y em função do tempo no eixo X. Essa representação visual facilitou a identificação de tendências e padrões nas variações das variáveis monitoradas, possibilitando uma análise mais aprofundada dos dados.
Durante os testes, o sistema de monitoramento demonstrou sua capacidade de lidar com uma grande quantidade de dados de forma eficiente. A plataforma Node-RED mostrou-se estável e robusta, permitindo a recepção e processamento contínuo dos dados dos sensores, mesmo em situações de alta demanda.
A interface gráfica intuitiva do Node-RED contribuiu para a usabilidade do sistema de monitoramento. Os medidores e gráficos interativos forneceram informações claras e compreensíveis, permitindo aos usuários analisar e interpretar os dados facilmente. Essa facilidade de uso torna o sistema adequado para diversas aplicações de monitoramento em diferentes ambientes.
Além do monitoramento em tempo real, o fluxo também permitiu a visualização dos últimos 10 registros de temperatura, pressão e nível em um gráfico e tabela. Por meio do nó "inject", o fluxo foi acionado periodicamente a cada 60 segundos, realizando uma consulta "SELECT" no banco de dados MySQL para obter os dados mais recentes. Os dados foram formatados adequadamente e exibidos no gráfico de linha por meio do nó "ui_chart". Esse recurso ofereceu aos usuários a capacidade de analisar não apenas as leituras em tempo real, mas também as variações históricas das variáveis.
Através dos passos descritos anteriormente, foi possível construir uma dashboard eficiente para o controle e automação de um tanque industrial. O sistema de monitoramento, utilizando o Node-RED, integrou de forma confiável os sensores de temperatura, pressão e nível ao fluxo de dados.
A dashboard foi projetada para fornecer informações claras e compreensíveis aos usuários. Os medidores apresentaram os valores das variáveis em tempo real, permitindo uma visualização instantânea e intuitiva das condições do tanque. Além disso, os gráficos de linha exibiram a variação das variáveis ao longo do tempo, facilitando a identificação de tendências e padrões.
Conclusão
Em conclusão, o projeto de automação industrial com controle de processos em tanques industriais trouxe avanços significativos para a eficiência, segurança e monitoramento desses sistemas. Através da seleção cuidadosa dos componentes, como o microcontrolador ESP32-WROOM-DA e os sensores de temperatura, pressão, nível e vazão, foi possível obter um monitoramento preciso em tempo real dos parâmetros do processo.
A integração com o Node-RED e o banco de dados MySQL permitiu a criação de uma interface de usuário intuitiva e interativa, fornecendo uma visão abrangente e compreensível dos dados coletados. Isso possibilitou o controle automatizado dos processos do tanque industrial, com a capacidade de ajustar atuadores e tomar decisões com base nas informações em tempo real.
Além disso, a análise dos dados armazenados no banco de dados proporcionou insights valiosos sobre o desempenho do tanque ao longo do tempo, permitindo melhorias contínuas e uma abordagem baseada em dados para otimizar o processo.
O projeto também teve um impacto positivo na segurança, com a detecção antecipada de condições anormais e riscos potenciais. A automação industrial contribuiu para a prevenção de acidentes, protegendo a integridade dos trabalhadores e do meio ambiente.
Dessa forma, o projeto de automação industrial com controle de processos em tanques industriais demonstrou os benefícios da aplicação de sistemas e tecnologias avançadas nesse contexto. A eficiência operacional foi aprimorada, a segurança foi reforçada e a tomada de decisões se tornou mais informada e embasada em dados.
Considerando os resultados alcançados, fica claro que a automação industrial desempenha um papel fundamental na operação eficiente e segura dos tanques industriais. A contínua busca por aprimoramentos nessa área impulsiona o avanço tecnológico e a inovação, promovendo um ambiente industrial mais eficiente, sustentável e seguro para todos os envolvidos.
[ID:152] Autor: - Criado em: 2023-06-13 16:55:18 - [ Compartilhar ]
Monitoramento de Reservatório de Água Utilizando Sensores

O controle de gasto de água é uma questão cada vez mais relevante nos dias de hoje. Com o aumento da população e o crescimento das áreas urbanas, há uma demanda crescente por água, e a falta de um controle efetivo pode levar ao desperdício e à escassez desse recurso vital. A ausência de mecanismos de medição precisos e de sistemas de monitoramento adequados dificulta a identificação e a correção de vazamentos e o acompanhamento do consumo, resultando em um uso excessivo e desnecessário de água.
Além disso, a falta de controle de gasto de água também pode levar a problemas financeiros para os consumidores. Sem informações precisas sobre o consumo, os usuários podem enfrentar contas altas e surpresas desagradáveis ao final do mês. A ausência de um monitoramento adequado torna difícil para os consumidores identificar e corrigir possíveis vazamentos ou mudar seus hábitos de consumo para economizar água, resultando em desperdício e custos desnecessários.
Outro desafio enfrentado é a indisponibilidade de fornecimento efetivo de água em determinadas áreas. Em muitas regiões, especialmente em locais com infraestrutura precária ou em épocas de seca, a falta de um sistema de monitoramento e controle adequado dificulta a distribuição equitativa de água. Isso pode levar a interrupções frequentes no fornecimento de água, afetando a qualidade de vida das pessoas e prejudicando atividades essenciais, como a agricultura e a indústria.
Esses problemas destacam a necessidade urgente de um sistema de monitoramento de reservatório de água eficiente e sustentável, capaz de controlar o gasto, prevenir o desperdício e garantir um fornecimento adequado para todas as áreas. O uso da IoT e de tecnologias de monitoramento pode desempenhar um papel crucial nessa solução, permitindo um acompanhamento em tempo real do consumo, identificação de vazamentos e uma gestão mais eficiente dos recursos hídricos.
Características do projeto
O sensor de pressão escolhido para o projeto (Transdutor de pressão 15 PSI) foi selecionado levando em consideração uma série de características essenciais. Priorizou-se a robustez do sensor, garantindo sua capacidade de resistir a ambientes adversos e condições desafiadoras. Além disso, a qualidade na leitura e precisão do sensor foram fatores determinantes na escolha, assegurando medições confiáveis e precisas da pressão da água. Por fim, a durabilidade do sensor foi um critério fundamental, visando sua longevidade e desempenho consistente ao longo do tempo.
Para realizar a leitura dos dados coletados pelo sensor, optou-se pelo uso do Arduino Uno devido à sua ampla compatibilidade com sensores analógicos. A escolha dessa placa foi feita com base na sua capacidade de integração e suporte a diversos tipos de sensores. Além disso, para a transmissão dos dados coletados via MQTT, optou-se pelo ESP8266, que oferece conectividade Wi-Fi e é capaz de enviar os dados de forma eficiente para a plataforma desejada. Essa combinação entre o Arduino Uno e o ESP8266 proporcionou uma solução segura e confiável para o projeto, permitindo a coleta e transmissão efetiva dos dados de pressão da água.
No ESP8266, a codificação foi configurada para publicar os dados coletados - incluindo informações do sensor, horário e valor da leitura - em um broker hospedado em um ambiente Linux na AWS. Esse broker recebia os dados e os armazenava em um banco de dados MySQL. Dessa forma, foi estabelecido um fluxo contínuo de dados do sensor para o banco de dados, permitindo a persistência e o armazenamento das informações coletadas de maneira eficiente e confiável.
Para simplificar a leitura dos dados, a criação de um dashboard e a consulta dos registros, foi adotado o Node-RED. Essa escolha foi feita visando a simplicidade e a facilidade de produção em curto prazo. O Node-RED oferece uma interface visual intuitiva e amigável, permitindo a criação rápida de fluxos de dados, integração de diferentes serviços e visualização dos dados de forma personalizada. Com o Node-RED, foi possível desenvolver uma solução prática e funcional para a leitura, visualização e consulta dos dados provenientes do sensor de pressão da água.
Tecnologias
Node-RED
Node-RED é uma plataforma de desenvolvimento visual baseada em código aberto, que permite a criação de aplicações IoT de forma intuitiva e rápida. Desenvolvida pela IBM, ela utiliza uma interface gráfica para conectar nós (nodes) que representam diferentes funcionalidades e serviços. Essa abordagem visual simplifica a criação de fluxos de dados, integração de dispositivos e interações entre sistemas, mesmo para usuários sem conhecimento aprofundado em programação.
É amplamente utilizado para facilitar a implementação de projetos IoT e automação residencial. Ele permite a integração de dispositivos IoT, serviços web e bancos de dados de maneira simples e flexível. Com a utilização de nós pré-configurados e extensões, é possível conectar sensores, atuadores e outros componentes de hardware, além de realizar o processamento dos dados recebidos e ações de controle. Com a sua interface amigável e recursos avançados, Node-RED ajuda a acelerar o desenvolvimento de aplicações IoT e facilita a criação de soluções customizadas para uma ampla gama de cenários.
MySQL
MySQL é um sistema de gerenciamento de banco de dados relacional (RDBMS) amplamente utilizado, desenvolvido pela Oracle Corporation. Ele oferece uma solução eficiente e escalável para armazenamento e recuperação de dados estruturados. O MySQL utiliza a linguagem de consulta estruturada (SQL) como base para manipulação e gerenciamento dos dados.
O MySQL é utilizado em uma ampla variedade de aplicações, desde pequenos projetos até sistemas de grande escala. Ele é conhecido por sua confiabilidade, desempenho e facilidade de uso. O MySQL é capaz de lidar com grandes volumes de dados e suporta várias operações, como consultas complexas, atualizações e transações. Com suporte a diferentes plataformas, ele pode ser utilizado tanto em ambientes de desenvolvimento quanto de produção. O MySQL é frequentemente utilizado em aplicativos da web, sistemas de gerenciamento de conteúdo, sistemas de comércio eletrônico, aplicativos de análise de dados e muitos outros casos em que o armazenamento e a recuperação de dados são essenciais.
MQTT
QTT (Message Queuing Telemetry Transport) é um protocolo de mensagens leve e de código aberto projetado para comunicação entre dispositivos em redes de IoT. Ele foi desenvolvido para ser eficiente em termos de largura de banda, consumo de energia e utilização de recursos, tornando-o adequado para ambientes de rede com restrições.
O MQTT utiliza o modelo de publicação/assinatura, em que os dispositivos se comunicam por meio de um intermediário chamado de broker. Os dispositivos publicam mensagens em tópicos específicos no broker, e outros dispositivos podem se inscrever nesses tópicos para receber as mensagens. Isso permite uma comunicação assíncrona e distribuída entre dispositivos, com uma sobrecarga mínima de rede.
É amplamente utilizado em sistemas de IoT para troca de informações entre dispositivos e servidores na Internet. Ele é ideal para cenários em que os dispositivos precisam enviar e receber dados de forma eficiente e confiável, como monitoramento remoto, automação residencial, cidades inteligentes e aplicações industriais. O MQTT é especialmente adequado para redes com conexões instáveis ou de baixa largura de banda, devido à sua capacidade de lidar com condições adversas e garantir a entrega de mensagens mesmo em situações de conectividade intermitente.
Sensor
O transdutor de pressão 15 PSI (pound per square inch) é um dispositivo projetado para medir a pressão em sistemas industriais e aplicações de controle. Com essa faixa de medição, o sensor é capaz de detectar e registrar pressões significativas em diversos ambientes de trabalho.
Esse sensor de pressão é projetado para fornecer leituras precisas e confiáveis, permitindo o monitoramento e controle efetivos de sistemas que operam dentro dessa faixa de pressão. Ele pode ser usado para monitorar a pressão em tanques, tubulações, cilindros e outros dispositivos ou componentes onde a pressão é um fator crítico. Com essas informações de pressão, os sistemas podem tomar decisões adequadas, como acionar alarmes, ajustar válvulas ou realizar ações de segurança, garantindo o desempenho ideal e a segurança dos processos.
Os transdutores de pressão são projetados para serem robustos e duráveis, capazes de resistir a ambientes adversos e condições industriais exigentes. Eles podem ser disponibilizados em diferentes formatos, como sensores de pressão absoluta, relativa ou diferencial, permitindo uma ampla gama de aplicações. Com a precisão e a confiabilidade oferecidas, esse sensor de pressão desempenha um papel crucial na garantia da eficiência e segurança de sistemas que operam em tais faixas de pressão.

Arduino
O Arduino Uno é uma das placas de desenvolvimento mais populares e amplamente utilizadas no mundo da eletrônica e da prototipagem. Desenvolvido pela Arduino LLC, o Arduino Uno é baseado em um microcontrolador Atmega328P, que oferece um conjunto de pinos de entrada e saída digital e analógica, bem como recursos de comunicação serial. Ele é projetado para ser fácil de usar, mesmo para iniciantes, e possui uma comunidade ativa e vibrante.
O Arduino Uno é amplamente adotado por entusiastas, estudantes e profissionais que desejam construir projetos eletrônicos interativos e programáveis. Com a sua interface de programação amigável e a linguagem de programação baseada em Wiring/C++, é possível escrever código para controlar sensores, atuadores e outros dispositivos eletrônicos. Além disso, o Arduino Uno é compatível com uma ampla variedade de módulos e shields, o que permite expandir suas capacidades e adicionar funcionalidades extras aos projetos.
Seja para prototipagem rápida, automação residencial, robótica ou projetos de arte interativa, o Arduino Uno oferece uma plataforma versátil e acessível para transformar ideias em realidade. Sua popularidade se deve não apenas à sua simplicidade e flexibilidade, mas também à riqueza de documentação, tutoriais e exemplos disponíveis online, tornando-o uma escolha confiável para uma ampla gama de aplicações.
Esp8266
O ESP8266 é um microcontrolador altamente popular e de baixo custo, que integra um chip Wi-Fi, permitindo a conectividade com a internet e comunicação sem fio. Desenvolvido pela empresa chinesa Espressif Systems, o ESP8266 possui uma arquitetura de sistema em chip (SoC) poderosa e recursos avançados, apesar de seu tamanho compacto. Ele pode ser programado usando a linguagem de programação Arduino ou a linguagem nativa do SDK ESP8266, oferecendo flexibilidade aos desenvolvedores.
Graças à sua conectividade Wi-Fi, o ESP8266 é amplamente utilizado em projetos de IoT e automação residencial, permitindo que dispositivos se comuniquem com a internet e uns com os outros. Ele pode ser utilizado para controlar sensores, atuadores e outros componentes eletrônicos, bem como para transmitir e receber dados em tempo real. Sua capacidade de processamento e memória também o torna adequado para implementar soluções mais complexas, como servidores web embutidos e sistemas de monitoramento remoto. O ESP8266 se tornou uma escolha popular entre os entusiastas e profissionais de IoT devido à sua acessibilidade, recursos robustos e ampla comunidade de suporte e desenvolvimento.
Conclusão
Em conclusão, a integração do sensor de pressão, Arduino Uno, ESP8266 e antena de sinal em um sistema de monitoramento de caixa d'água por meio da Internet das Coisas (IoT) oferece uma solução eficiente e confiável para o controle e monitoramento do nível de pressão da água. Essa combinação de tecnologias permite a coleta precisa de dados de pressão, sua transmissão em tempo real para uma plataforma de armazenamento e a visualização dos dados por meio de um dashboard acessível. Com essa solução, é possível obter insights valiosos sobre o consumo de água, identificar possíveis problemas e tomar medidas adequadas para garantir o uso sustentável e eficiente dos recursos hídricos.
Rep. no Github: https://github.com/DejairMatos/Nivel_IoT
Por @DejairMatos e @cicerosnt
Fotes:
https://aws.amazon.com/pt/what-is/mqtt/
https://www.arduino.cc/en/about
https://www.robocore.net/wifi/modulo-wifi-esp8266
https://www.saravati.com.br/sensor-de-pressao-1-2-mpa-174-psi.html
https://www.hivemq.com/mqtt-essentials/
https://www.mysql.com/
https://nodered.org/docs/
[ID:151] Autor: - Criado em: 2023-06-13 04:30:35 - [ Compartilhar ]
Medição de Temperatura, Umidade e Luminosidade Node-Red
O monitoramento de ambiente é uma temática importante para diversas áreas, como a meteorologia, a agricultura, a indústria e a saúde. A medição de temperatura, umidade e luminosidade permite a obtenção de dados precisos sobre o ambiente em que determinado processo ou atividade ocorre, possibilitando a tomada de decisões mais assertivas e a otimização de recursos. Nesse sentido, o uso de dispositivos como o sensor BME280, que mede temperatura, umidade e pressão atmosférica, e de tecnologias como o microcontrolador ESP32 e serviços de computação em nuvem, como AWS, têm se tornado cada vez mais comuns. Além disso, a integração de tecnologias como o Node-RED, o MongoDB e o MQTT-Mosquitto, possibilita o desenvolvimento de soluções mais completas e eficientes para o monitoramento de ambiente, de forma remota e em tempo real. Diante disso, é possível perceber que a tendência de mercado é a utilização de tecnologias que possibilitem a integração de dispositivos e serviços, permitindo a obtenção de dados mais precisos e a otimização de processos. Dashboard: Um modelo de dashboard para monitoramento de ambiente usando o Node-RED, MongoDB e MQTT-Mosquitto pode ser construído usando os dados dos sensores BME280 e LDR. O Node-RED pode ser usado para coletar dados dos sensores e transmiti-los para o banco de dados MongoDB usando o protocolo MQTT-Mosquitto. Os dados coletados do banco de dados e visualizados em um dashboard usando a ferramenta nativa do Node-RED para a inclusão de novos plugins, conhecida como Manage Palette que contém todos os nós novos e atualizados. O dashboard pode conter gráficos que mostram as tendências de temperatura, umidade e luminosidade ao longo do tempo, bem como alertas em tempo real quando os valores dos sensores ultrapassam limites pré-definidos. Também é possível incluir um fluxo de informações gravado no banco de dados, que permite aos usuários visualizar os dados de cada sensor individualmente. Usando o Node-RED, MongoDB e MQTT-Mosquitto para integrar os sensores BME280 e LDR, e exibindo os dados em um dashboard personalizado, as pessoas podem monitorar facilmente o ambiente em tempo real e tomar decisões informadas com base nos dados coletados. Fonte:https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/dashboard.png ESP32: O microcontrolador ESP32 é uma escolha popular para o desenvolvimento de projetos de IoT. Ele é fabricado pela TSMC usando seu processo de 40nm e desenvolvido pela Espressif Systems. O ESP32 incorpora Wi-Fi e Bluetooth de dupla função, com várias CPUs e capacidades. É uma plataforma acessível e eficiente para a implementação de soluções conectadas, permitindo a criação de dispositivos inteligentes e aplicativos de automação residencial, monitoramento ambiental, rastreamento e muito mais. Sua relevância comercial se dá pela sua capacidade de oferecer uma solução completa e eficiente para a conectividade em projetos de IoT. Esta é uma escolha popular para o desenvolvimento de projetos de IoT. Ele oferece uma plataforma acessível e eficiente para a implementação de soluções conectadas, abrindo caminho para a criação de uma ampla gama de dispositivos inteligentes e aplicativos de automação residencial, monitoramento ambiental, rastreamento e afins.
Sensor BME280: O sensor BME280 é um dispositivo digital de alta precisão fabricado pela Bosch, que mede temperatura, umidade e pressão barométrica. Ele é especialmente desenvolvido para aplicações móveis e dispositivos vestíveis, onde o tamanho e o baixo consumo de energia são parâmetros-chave de design. O sensor é pré-calibrado e não requer componentes adicionais para começar a medir. Ele é capaz de medir com precisão a umidade de 0 a 100%, pressão de 300 a 1100 hPa e temperatura de -40°C a 85°C. O BME280 é amplamente utilizado em uma variedade de aplicações, incluindo monitoramento climático, controle de jogos e medição de altitude. Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/sensor-BME280.jpg Sensor LDR: O sensor LDR, também conhecido como fotoresistor, é um componente passivo que diminui a resistência em função da luminosidade que recebe. Ele é utilizado em circuitos eletrônicos como um sensor de luz, permitindo que os dispositivos reajam a mudanças de luminosidade em seu ambiente. Com relação à sua relevância comercial, o sensor LDR é amplamente utilizado em equipamentos eletrônicos, como câmeras fotográficas, sistemas de iluminação automática e monitores de brilho. Além disso, ele também pode ser utilizado em projetos de monitoramento ambiental, como os sistemas de irrigação inteligentes que utilizam sensores de temperatura e umidade juntamente com o sensor LDR para o monitoramento da luminosidade. As tecnologias envolvidas nesses sistemas incluem o Node-RED, MongoDB, MQTT-Mosquitto e o microcontrolador ESP32, que oferece uma plataforma eficiente e acessível para a criação de dispositivos conectados e aplicações de automação. Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/sensor-LDR.jpg Programação Flow: Node-RED é uma ferramenta de programação visual que usa programação baseada em fluxo para criar aplicativos orientados a eventos. Isso significa que os usuários podem desenhar uma representação visual do fluxo de seu aplicativo, facilitando a compreensão e a manutenção. O principal método de organizar fluxos no Node-RED é separá-los em várias guias dentro do editor. Com sua interface intuitiva e extensibilidade, permite criar fluxos de trabalho conectando nós para implementar lógica e funcionalidade de forma eficiente e integrada. Além disso, o Node-RED é um ambiente de programação de low code que permite aos usuários programar sem precisar digitar longas linhas de código. Isso torna mais fácil para os usuários criar aplicativos IoT sem a necessidade de aprender linguagens de programação complexas. No geral, a estrutura de programação baseada em fluxo e o ambiente de low code do Node-RED o tornam uma ferramenta poderosa para criar aplicativos que monitoram e controlam dispositivos IoT. A modelagem objeto desse projeto utiliza a solução MQTT - Mosquitto (bloco roxo), filtros de passagem (bloco amarelo), integração com banco de dados Mongo (bloco marrom) e exibição na dashboard (bloco azul). Associadamente, foi incluído blocos de debug (bloco verde) onde são apresentados os elementos de mensagens de desenvolvimento para teste e validação. Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/flow-node-red.png MongoDB: MongoDB é um banco de dados orientado a documentos, ao contrário dos bancos de dados tradicionais que seguem o paradigma de relacionamento de armazenar dados em tabelas. No MongoDB os dados são armazenados em documentos JSON que podem ser facilmente lidos e manipulados pelo software. Ele é flexível, permitindo que os desenvolvedores trabalhem com dados semi-estruturados e não-estruturados, e escalável, permitindo o aumento da capacidade de armazenamento e processamento com facilidade. Sendo assim, uma excelente escolha para aplicações que precisam de armazenamento de dados flexível e escalável. Quando falamos de dados flexíveis e escaláveis em uma aplicação que utiliza o Node-RED como dashboard, MongoDB como banco de dados e o broker MQTT-Mosquitto juntamente com elementos de borda, como os sensores BME280 e LDR, espera-se que o projeto possa eficientemente armazenar e recuperar dados relevantes para análise e tomada de decisão. A integração dessas tecnologias permite que os dados coletados pelos sensores sejam enviados e armazenados no banco de dados MongoDB em formato JSON. Com a ajuda do Node-RED, é possível configurar o fluxo de dados para o armazenamento correto e fácil recuperação de dados. A utilização do Mosquitto MQTT broker garante a comunicação confiável e em tempo real entre os elementos. Com essas tecnologias em conjunto, espera-se que o projeto forneça uma solução escalável e flexível para a gestão de dados em tempo real em uma ampla gama de aplicações. Nas figuras abaixo são apresentados a estrutura de dados coletados pelo o banco de dados MongoDB deste projeto. Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/mondodb-structure-view-1.jpeg Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/mondodb-structure-view-2.jpg Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/mondodb-structure-view-3.png ________________ MQTT: O protocolo MQTT é um protocolo M2M amplamente utilizado na IoT. É um protocolo leve baseado em mensagens, suportado por quase todas as plataformas IoT, ideal para enviar e receber dados de objetos inteligentes. O protocolo usa um paradigma de publicação/assinatura e é eficiente em termos de energia, já que possui uma natureza assíncrona. Essa característica permite que ele gerencie de forma eficiente a parte energética e os recursos de segurança o tornam uma escolha popular para implementações de IoT em diferentes setores, como automação residencial, monitoramento ambiental, agricultura inteligente e muitos outros. O componente principal do MQTT é o broker, que recebe e despacha mensagens para assinantes com base em um tópico. Ele não exige que o editor e o assinante estejam conectados ao mesmo tempo. Já o Mosquitto é uma implementação popular do MQTT e bem vista nas aplicações IoT. O Mosquitto MQTT é um software de broker de mensagens de código aberto e leve que implementa o protocolo MQTT para permitir a comunicação entre dispositivos IoT com recursos de baixa potência. Ele usa o modelo de publicação/assinatura e tem conceitos como tópicos, mensagens, assinantes e brokers. Um dispositivo publicador pode publicar uma mensagem em um tópico e os assinantes devem se inscrever neste tópico para visualizar as mensagens. O broker é responsável por receber todas as mensagens, filtrar as mensagens, decidir quem está interessado nelas e, em seguida, publicar as mensagens para os clientes inscritos. O Mosquitto broker é altamente escalável, permitindo escalabilidade horizontal para lidar com um grande número de dispositivos. Utilizando o Node-RED é possível integrar facilmente a tecnologia MQTT, já que ela é suportada de forma nativa, assim como tecnologias de banco de dados, como MongoDB, possibilitando uma conversa fluida entre todas essas tecnologias de integração. O Node-RED é uma plataforma de código aberto que permite aos desenvolvedores criar fluxos de dados para IoT de forma visual. Ele suporta a integração com MQTT e MongoDB, permitindo que os desenvolvedores criem dashboards personalizados e relatórios para analisar e visualizar dados em tempo real. O Node-RED é uma plataforma altamente flexível e escalável, tornando-se uma escolha popular para desenvolvedores de IoT em todo o mundo. Conclusão: Em conclusão, o uso de plataformas de prototipação para gerenciamento de áreas de risco com IoT apresenta inúmeras vantagens e possibilidades. Essas plataformas permitem a criação de soluções personalizadas e adaptáveis às necessidades específicas de cada projeto, fornecendo uma maneira eficiente de monitorar e gerenciar áreas de risco. Com a integração de dispositivos IoT, como o sensor BME280 e o ESP32, e o uso de tecnologias como o Node-RED, o MongoDB e o MQTT, é possível obter dados precisos, realizar análises em tempo real e tomar decisões embasadas em informações confiáveis. Além disso, a facilidade de implementação, a escalabilidade e a interoperabilidade são características-chave dessas plataformas, permitindo uma maior flexibilidade e adaptabilidade aos desafios do gerenciamento de áreas de risco. No entanto, é importante enfrentar os desafios relacionados à implementação, como a integração de sistemas e a segurança dos dados, garantindo que as soluções sejam robustas e confiáveis. Em suma, as plataformas de prototipação para gerenciamento de áreas de risco com IoT oferecem um potencial significativo para aprimorar a segurança, o monitoramento e a tomada de decisões em situações de risco, contribuindo para a proteção de vidas e propriedades. Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/led-off-practical-test.jpg Fonte: https://raw.githubusercontent.com/fabicorvelo/TemperatureMonitor/main/photo-folde/led-on-practical-test.jpg
[ID:150] Autor: - Criado em: 2023-06-04 01:45:38 - [ Compartilhar ]
Plataformas de prototipação para gerenciamento de áreas de risco com IoT
Fabiane Corvêlo de Araújo Gabriel Charlui Correa José Vicente Teodoro Igino Plataformas de prototipação para gerenciamento de áreas de risco com IoT: Com o rápido avanço da Internet das Coisas (IoT) e suas aplicações em diversos setores, o gerenciamento eficiente de áreas de risco tornou-se uma prioridade para governos, empresas e comunidades. Às áreas propensas a desastres naturais, acidentes industriais e outros eventos catastróficos exigem soluções inteligentes e ágeis que possam detectar, monitorar e responder a situações de risco em tempo real. É nesse contexto que surgem as plataformas de prototipação para gerenciamento de áreas de risco com IoT. Essas plataformas oferecem um ambiente de desenvolvimento integrado, que combina sensores inteligentes, dispositivos conectados e análise de dados em tempo real para fornecer uma visão abrangente e precisa das condições de risco em uma determinada área. Por meio da implementação de soluções baseadas em IoT, é possível coletar dados ambientais, geoespaciais, meteorológicos, entre outros, e utilizá-los para avaliar e prever ameaças potenciais. O objetivo principal dessas plataformas é permitir a rápida prototipação e implementação de sistemas de gerenciamento de áreas de risco, fornecendo recursos avançados de monitoramento, detecção precoce e resposta a emergências. Ao combinar a coleta de dados em tempo real com algoritmos de análise e visualização, essas plataformas provêm gestores de riscos, equipes de resgate e autoridades competentes às informações mais relevantes para tomada de decisões e forma de agir proativa diante de situações de perigo iminente. Nesta publicação, exploramos as principais características e benefícios das Plataformas de Prototipação para Gerenciamento de Áreas de Risco com IoT (PPGAR). Abordamos as tecnologias subjacentes, como sensores inteligentes, redes de comunicação, análise de dados e interfaces de usuário intuitivas. Além disso, discutiremos os desafios associados à implementação dessas soluções, bem como exemplos de casos de uso e aplicações práticas em diferentes contextos. Por fim, destacamos o potencial transformador dessas plataformas, não apenas no gerenciamento de áreas de risco, mas também na criação de comunidades mais seguras, sustentáveis e resilientes. A disposição geral demonstra que a combinação da IoT com estratégias de gerenciamento de riscos pode desempenhar um papel fundamental na mitigação de desastres e na proteção de vidas e patrimônio. Sobre as Catástrofes e Desastres Naturais: Os desastres naturais são eventos devastadores que podem ter um impacto significativo nas comunidades e no meio ambiente. Dentre eles, destacam-se terremotos, vulcões, furacões e outros fenômenos naturais que podem causar destruição em larga escala e resultar em perda de vidas humanas, deslocamentos populacionais, danos à infraestrutura e impactos socioeconômicos de longo prazo. Entendendo esses desastres naturais e seus efeitos, é possível observar a importância da preparação, mitigação e resposta adequada a esses eventos: * Terremotos são tremores da superfície terrestre causados por movimentos tectônicos. Eles podem ocorrer em várias regiões do mundo, resultando em colapso de edifícios, deslizamentos de terra e tsunamis. O terremoto de magnitude 9,0 que atingiu o Japão em 2011 é um exemplo trágico desse fenômeno, causando destruição em massa e a perda de milhares de vidas humanas; * Os vulcões são aberturas na crosta terrestre por onde ocorre a erupção de lava, cinzas e gases. Esses eventos podem levar a incêndios, destruição de áreas agrícolas e impactos na qualidade do ar. Um exemplo notório de erupção vulcânica é o do Monte Vesúvio em 79 d.C., que devastou as cidades romanas de Pompeia e Herculano; * Furacões, também conhecidos como ciclones tropicais ou tufões, são poderosas tempestades caracterizadas por ventos intensos, chuvas torrenciais e ondas de tempestade. Eles se formam sobre os oceanos tropicais e podem atingir a costa com força devastadora. O furacão Katrina, que atingiu a região do Golfo dos Estados Unidos em 2005, causou uma das maiores catástrofes naturais da história do país, com inundações generalizadas e danos materiais graves. Além desses eventos, outros desastres naturais, como enchentes, deslizamentos de terra e incêndios florestais, também podem ter consequências devastadoras para as comunidades afetadas. A rapidez e a eficácia da resposta aos desastres desempenham um papel crucial na mitigação dos impactos e na proteção de vidas. Diante desses desafios, é fundamental investir em medidas de prevenção, planejamento e resposta a desastres. Ao combinar a características da IoT com estratégias de gerenciamento de risco, às plataformas de gerenciamento de áreas de risco podem auxiliar na mitigação dos impactos e na proteção das comunidades afetadas. O desenvolvimento contínuo e a adoção dessas soluções inovadoras são essenciais para enfrentar os desafios cada vez mais complexos colocados pelos desastres naturais e para promover um futuro mais seguro e resiliente. PPGAR - Plataformas de Prototipação para Gerenciamento de Áreas de Risco: As plataformas de prototipação para gerenciamento de áreas de risco com IoT são sistemas desenvolvidos para auxiliar no monitoramento e controle de áreas propensas a diversos tipos de riscos, como desastres naturais, acidentes industriais, poluição, entre outros. Essas plataformas utilizam a Internet das Coisas (IoT) para coletar dados em tempo real por meio de sensores e dispositivos conectados, permitindo o acompanhamento contínuo das condições e o gerenciamento proativo dos riscos. Essas plataformas são projetadas para oferecer uma visão abrangente das áreas de risco, permitindo o monitoramento de variáveis-chave, como níveis de água, qualidade do ar, movimentação do solo, condições meteorológicas, entre outras. Os dados coletados são enviados para uma plataforma central, onde são processados, analisados e apresentados de forma visual para os usuários responsáveis pelo gerenciamento da área de risco. Uma das principais vantagens das plataformas de prototipação é a capacidade de prototipar soluções antes de sua implementação em larga escala. Com o uso de tecnologias de prototipação rápida, como o desenvolvimento de aplicativos e sistemas em nuvem, é possível testar diferentes cenários e estratégias de mitigação de risco antes de sua implementação definitiva. As plataformas de prototipação para gerenciamento de áreas de risco com IoT oferecem recursos avançados como análise preditiva e inteligência artificial, permitindo a identificação de padrões, a previsão de eventos e a tomada de decisões mais informadas. Isso possibilita uma resposta mais rápida e eficiente aos riscos identificados, reduzindo potenciais danos e impactos negativos. Em resumo, essas plataformas são ferramentas poderosas que combinam tecnologias de IoT, análise de dados e prototipação rápida para auxiliar na gestão e mitigação de riscos em áreas vulneráveis. Elas oferecem uma abordagem proativa e baseada em dados para o gerenciamento de riscos, contribuindo para a segurança e a proteção de comunidades e infraestruturas. Componentes: As plataformas de prototipação para o gerenciamento de áreas de risco com IoT geralmente são compostas por vários componentes que trabalham em conjunto para coletar, transmitir, processar e analisar dados relacionados às áreas de risco. Alguns dos principais componentes incluem: -> Sensores e Dispositivos IoT: Esses componentes são responsáveis por coletar dados relevantes sobre a área de risco, como informações climáticas, níveis de água, movimentação de solo, entre outros. Os sensores podem variar dependendo da natureza dos riscos envolvidos, e os dispositivos IoT são usados para conectar os sensores à plataforma de gerenciamento. -> Rede de Comunicação: Uma rede de comunicação confiável é essencial para transmitir os dados coletados pelos sensores para a plataforma de gerenciamento. Isso pode incluir redes sem fio, como Wi-Fi, redes de área ampla (WAN) ou até mesmo redes de satélite, dependendo da localização e das necessidades específicas da área de risco. -> Armazenamento de Dados: Como os dados coletados podem ser volumosos, é necessário ter um sistema de armazenamento adequado para manter essas informações de forma segura e acessível. Isso pode envolver o uso de bancos de dados robustos ou até mesmo tecnologias de armazenamento em nuvem. -> Análise de Dados: Para extrair insights significativos dos dados coletados, é necessário aplicar técnicas avançadas de análise de dados. Isso pode envolver a aplicação de algoritmos de machine learning para identificar padrões, detecção de anomalias e previsão de eventos futuros. -> Plataforma de Gerenciamento: O coração de uma cidade inteligente. Com uma interface intuitiva, os usuários têm acesso a dados em tempo real para tomadas de decisões informadas. Além disso, a plataforma conta com recursos avançados de análise de dados, como algoritmos de detecção de padrões, aprendizado de máquina e inteligência artificial. Visualize informações por meio de gráficos, mapas interativos e painéis informativos para uma compreensão completa e decisões acertadas. -> Integração com Sistemas de Alerta e Notificação: Uma parte crítica das plataformas de gerenciamento de áreas de risco é a capacidade de emitir alertas e notificações em tempo real. Isso permite que as autoridades e as partes interessadas sejam informadas prontamente sobre eventos de risco iminente, para que possam tomar as medidas adequadas de resposta e mitigação. Esses componentes trabalham em conjunto para fornecer uma solução abrangente e eficaz no gerenciamento de áreas de risco com IoT. A integração adequada de cada um desses elementos é essencial para garantir a coleta de dados precisos, a análise adequada e a tomada de decisões informadas para prevenir desastres e proteger as comunidades afetadas. Caso de Uso: * Safecast A Safecast é uma organização sem fins lucrativos que utiliza plataformas de prototipação para gerenciar áreas de risco através da coleta, visualização e compartilhamento de dados de radiação em todo o mundo. A empresa desenvolveu uma plataforma de prototipação que permite a criação e implantação de dispositivos IoT para medir a radiação em tempo real. Essa abordagem baseada em IoT e plataformas de prototipação permite que a Safecast obtenha uma visão abrangente e em tempo real dos níveis de radiação em várias áreas, incluindo regiões afetadas por desastres nucleares ou outros eventos relacionados. A Safecast colabora com outras organizações e instituições de pesquisa, compartilhando seus dados para contribuir com estudos científicos e ajudar na tomada de decisões relacionadas à segurança e saúde pública. * Airbus Defence and Space A Airbus Defence and Space é uma empresa aeroespacial que utiliza plataformas de prototipação e IoT para monitorar áreas de risco. O sistema desenvolvido pela Airbus usa uma rede de sensores distribuídos em diferentes localidades para coletar dados ambientais em tempo real. Esses dados são processados pela plataforma de prototipação para fornecer informações detalhadas sobre as condições das áreas de risco. A plataforma também utiliza imagens de satélite de alta resolução para complementar o monitoramento em terra. Com essa abordagem, a Airbus oferece uma solução avançada e integrada para o gerenciamento de áreas de risco, permitindo ações proativas e uma resposta mais rápida para mitigar os efeitos dos desastres. Os Desafios para a Implementação da PPGAR: A implementação de plataformas de prototipação para o gerenciamento de áreas de risco com IoT apresenta alguns desafios que devem ser superados para garantir sua eficácia e adoção adequada. Alguns dos principais desafios incluem: -> Infraestrutura adequada: Para implementar com sucesso uma plataforma de prototipação para o gerenciamento de áreas de risco com IoT, é necessário estabelecer uma infraestrutura adequada. Isso envolve a instalação de sensores IoT em áreas estratégicas, a criação de uma rede de comunicação estável e confiável para transmitir os dados coletados, além de garantir a disponibilidade de recursos de armazenamento e processamento para lidar com grandes volumes de dados. -> Integração de sistemas e dispositivos: A integração de diferentes sistemas e dispositivos é um desafio significativo na implementação de plataformas de prototipação para gerenciamento de áreas de risco. É necessário garantir a compatibilidade e interoperabilidade dos dispositivos IoT, sensores, redes de comunicação e sistemas de processamento de dados. Além disso, é preciso estabelecer padrões de comunicação e protocolos para permitir a troca eficiente de informações entre os componentes do sistema. -> Gerenciamento e análise de dados: As plataformas de prototipação geram uma quantidade massiva de dados provenientes de sensores e dispositivos IoT. O desafio é gerenciar, armazenar e processar esses dados de forma eficiente e segura. Além disso, é necessário aplicar técnicas avançadas de análise de dados, como aprendizado de máquina e inteligência artificial, para extrair insights significativos e tomar decisões informadas com base nos dados coletados. -> Segurança e privacidade: A implementação de plataformas de prototipação para gerenciamento de áreas de risco com IoT requer uma atenção especial à segurança e privacidade dos dados. É necessário implementar medidas robustas de segurança cibernética para proteger os dados coletados, garantir a integridade das informações transmitidas e prevenir acesso não autorizado. Além disso, é preciso estar em conformidade com as regulamentações de privacidade de dados e garantir a proteção das informações pessoais dos usuários envolvidos no sistema. -> Aceitação e colaboração das partes interessadas: A implementação bem-sucedida de plataformas de prototipação para gerenciamento de áreas de risco requer a colaboração e participação de várias partes interessadas, como autoridades governamentais, agências de resposta a emergências, especialistas em riscos e comunidades afetadas. É necessário promover a conscientização, demonstrar os benefícios e envolver ativamente todas as partes interessadas desde o início do processo para garantir sua aceitação e apoio contínuo. Ao enfrentar esses desafios de forma eficaz, é possível implementar plataformas de prototipação para o gerenciamento de áreas de risco com IoT, fornecendo uma abordagem inovadora e tecnologicamente avançada para a prevenção e resposta a desastres naturais. Essas plataformas têm o potencial de melhorar a eficiência, a tomada de decisões e a resiliência das comun Conclusão: As plataformas de prototipação para gerenciamento de áreas de risco com IoT fornecem uma abordagem inovadora e tecnologicamente avançada para a prevenção e resposta a desastres naturais. No entanto, sua implementação enfrenta desafios significativos, como infraestrutura adequada, integração de sistemas e dispositivos, gerenciamento e análise de dados, segurança e privacidade e aceitação e colaboração das partes interessadas. Apesar disso, se esses desafios forem enfrentados efetivamente, as plataformas de prototipação têm o potencial de transformar a gestão de riscos, tornando as comunidades mais resilientes e seguras.
[ID:149] Autor: - Criado em: 2023-06-04 01:34:04 - [ Compartilhar ]
[ID:148] Autor: - Criado em: 2023-06-04 01:00:32 - [ Compartilhar ]
Palestra: Monitoramento de ambiente com IA
Hardware para IoT: Monitoramento de ambiente com IA
Alunos: Luiz Antônio Fernandes Gomes.
Yago Oliveira Bomfim Dias.
IoT no monitoramento de ambiente
IoT consegue desempenhar um papel fundamental no monitoramento de ambiente, oferecendo a capacidade de coletar uma ampla variedade de dados e distribuir estrategicamente em locais relevantes e, em seguida, transmitidos por meio de tecnologias de comunicação sem fio para uma plataforma centralizada ou para algum projeto específico que irá se utilizar desses dados coletados. Com a aplicação da IA, os dispositivos de monitoramento de ambiente podem ser equipados com recursos avançados de análise e processamento de dados, permitindo a detecção de padrões, a identificação de anomalias e a geração de insights valiosos. Isso amplia a capacidade de monitoramento, fornecendo informações mais detalhadas e em tempo real sobre as condições ambientais.
IoT no monitoramento de ambiente: Componentes
• Microcontroladores: são o cérebro dos dispositivos IoT, permitindo o processamento dos dados coletados pelos sensores e a execução de instruções para os atuadores.
• Sensores: são responsáveis por medir diferentes grandezas físicas, como temperatura, umidade, luminosidade e movimento.
• Atuadores: são utilizados para realizar ações físicas com base nos dados coletados pelos sensores, como acionar um motor, ligar uma lâmpada ou abrir uma válvula.
• Módulos de comunicação: possibilitam a troca de informações entre os dispositivos IoT e a nuvem ou outros dispositivos.
Hardware para monitoramento de ambiente: Exemplos de aplicação
No contexto de monitoramento de ambiente, a IoT oferece essa capacidade de coletar uma ampla variedade de dados, como temperatura, umidade, qualidade do ar, níveis de ruído, luminosidade. Esses dados são coletados por sensores distribuídos estrategicamente em locais relevantes e, em seguida, transmitidos por meio de tecnologias de comunicação sem fio para uma plataforma centralizada. A combinação da capacidade de coleta de dados dos dispositivos IoT com as capacidades analíticas e de aprendizado de máquina da IA melhora a eficiência operacional de dos resultados. A implementação adequada da IA pode proporcionar benefícios significativos, desde uma melhor qualidade do ar até uma utilização mais eficiente de recursos energéticos, contribuindo para um ambiente mais saudável e sustentável.
•Monitoramento de qualidade do ar em áreas urbanas;
•Controle de umidade em estufas agrícolas;
•Monitoramento de temperatura em armazéns de alimentos;
•Detecção e monitoramento de vazamentos de água;
•Monitoramento acústico em ambientes urbanos;
Hardware para monitoramento de ambiente: Exemplo de sensores e atuadores
Sensor de temperatura: Mede a temperatura ambiente em graus Celsius ou Fahrenheit. Exemplos: LM35 e DS18B20.
Sensor de umidade: Detecta a umidade relativa do ar. Exemplos: DHT11 e BME280.
Sensor de qualidade do ar: Mede a presença de poluentes atmosféricos, como dióxido de carbono (CO2), monóxido de carbono (CO), partículas suspensas, entre outros. Exemplos:MQ-135 e PMS5003.
Sensor de luminosidade: Detecta a intensidade da luz. Exemplos:LDR (Light Dependent Resistor) e TSL2561.
Motor: Utilizado para acionar mecanismos, como abrir ou fechar uma válvula ou controlar o movimento de um dispositivo.
Servo motor: Permite controlar o ângulo de rotação com precisão, sendo útil para aplicações como controle de posição e movimento.
LED: Amplamente utilizado para indicar estados ou fornecer feedback visual em dispositivos IoT.
Relé: Permite controlar o acionamento de dispositivos de alta potência, como lâmpadas, motores ou sistemas de aquecimento.
Hardware para monitoramento de ambiente: Plataformas de desenvolvimento e prototipação
Arduino: Uma plataforma de prototipação eletrônica amplamente utilizada, composto por uma placa de desenvolvimento, que possui um microcontrolador e uma variedade de pinos de entrada e saída, permitindo a conexão de sensores e atuadores. Existem diversos módulos e sensores disponíveis para o Arduino, que podem ser usados para monitorar e coletar dados ambientais.
Raspberry Pi: Um computador de placa única amplamente utilizado para prototipação e desenvolvimento, possui um processador mais poderoso em comparação com outras plataformas, sendo capaz de executar um sistema operacional completo, permitindo que seja desenvolvidas soluções mais complexas.
ESP32: um microcontrolador Wi-Fi e Bluetooth de baixo custo e baixo consumo de energia muito adequado para projetos de IoT, pois possui recursos de conectividade integrados sendo possível criar dispositivos de monitoramento de ambiente que se conectam diretamente à Internet e enviam dados para servidores ou plataformas de nuvem.
Particle Photon: uma placa de desenvolvimento IoT que combina um microcontrolador com conectividade Wi-Fi. Ele oferece uma maneira rápida e fácil de prototipar dispositivos conectados para monitoramento de ambiente. Com o Particle Photon, você pode conectar sensores e enviar dados para a nuvem Particle, onde você pode visualizar, analisar e agir com base nesses dados.
Hardware para monitoramento de ambiente: Comunicação
Wi-Fi: uma tecnologia amplamente adotada e oferece uma conectividade confiável e de alta velocidade. É ideal para aplicações em que os dispositivos IoT estão dentro do alcance de uma rede Wi-Fi existente. O uso de módulos Wi-Fi, como o ESP8266 e o ESP32, simplifica a implementação da conectividade Wi-Fi em projetos de IoT.
Bluetooth: uma tecnologia de comunicação sem fio de curto alcance, adequada para conectar dispositivos próximos entre si. É amplamente utilizado em dispositivos wearable e aplicações de monitoramento de saúde. O Bluetooth Low Energy (BLE) é uma variante de baixo consumo de energia do Bluetooth, adequado para dispositivos IoT alimentados por bateria.
Zigbee: um protocolo de comunicação sem fio projetado especificamente para aplicações de IoT. Ele oferece baixo consumo de energia e suporta comunicação de curto alcance entre dispositivos. Zigbee é comumente utilizado em aplicações de automação residencial e industrial, onde são necessárias redes de malha.
LoRa: uma tecnologia de comunicação sem fio de longo alcance que permite a transmissão de dados em grandes distâncias com baixo consumo de energia. É adequado para aplicações de IoT em áreas rurais, monitoramento ambiental e rastreamento de ativos.
Considerações Finais
No âmbito da monitorização ambiental da Internet das Coisas (IoT), o hardware desempenha um papel fundamental na recolha e tratamento de dados ambientais, através da prototipagem de hardware, soluções de monitorização customizadas e adaptáveis a parâmetros ambientais como temperatura, humidade, qualidade do ar e nível de ruído. A seleção adequada de componentes é crucial para garantir a precisão e confiabilidade dos dados coletados, o que é importante para diferentes setores para tomar decisões mais precisas, identificar questões ambientais, melhorar a eficiência operacional e contribuir para o desenvolvimento sustentável. A utilização da IA no monitoramento de ambiente impulsiona a capacidade de coleta, processamento e análise dos dados provenientes dos dispositivos IoT. Os algoritmos de IA possibilitam a detecção de padrões e outros aspectos importantes para a essa parte de monitoramento de ambiente.
Em conclusão, o hardware de monitoramento ambiental IoT é um campo promissor que oferece oportunidades significativas para melhorar a qualidade de vida, promover a sustentabilidade e facilitar a tomada de decisões mais informadas, enquanto, por meio da prototipagem, é possível começar a desenvolver tecnologias que contribuam para uma vida mais saudável e ambiente mais sustentável para soluções inovadoras. a combinação do hardware para IoT com a IA no monitoramento de ambiente representa uma evolução significativa na capacidade de compreensão e atuação com base nos dados coletados. Essa integração possibilita soluções mais inteligentes, eficientes e sustentáveis, com impactos positivos para empresas, comunidades e meio ambiente. O futuro do monitoramento de ambiente está intrinsecamente ligado à sinergia entre hardware avançado e IA, impulsionando avanços contínuos e proporcionando benefícios cada vez mais significativos.
Referências
•ELECTRONICS, Mouser. Sensores e Atuadores IoT. Embarcados - Sua fonte de informações sobre Sistemas Embarcados. Disponível em: . Acesso em: 25 maio 2023.
•NEWARK, LATeRe Representante. Protocolos de Rede sem fio de IoT. Embarcados - Sua fonte de informações sobre Sistemas Embarcados. Disponível em: . Acesso em: 25 maio 2023.
•Hardware para IoT: Como definir o melhor para o seu projeto? Disponível em: . Acesso em: 25 maio 2023.
•O que é Internet of Things (IoT)? Disponível em: . Acesso em: 25 maio 2023.
•SANTOS, Geise. Prototipação: Plataformas de hardware e software para sistemas embarcados. Embarcados - Sua fonte de informações sobre Sistemas Embarcados. Disponível em: . Acesso em: 25 maio 2023.
[ID:147] Autor: - Criado em: 2023-06-03 12:58:01 - [ Compartilhar ]
Painel para monitoramento da umidade do solo e do ar juntamente com temperatura utilizando ESP32
Se você é um entusiasta de jardinagem ou agricultura, provavelmente já se deparou com o desafio de entender as necessidades exatas das suas plantas. Afinal, saber a umidade do solo, a umidade do ar e a temperatura pode ser crucial para garantir um ambiente saudável e propício ao crescimento. Por isso nosso projeto propõe desenvolver um painel capaz de mostrar a umidade do solo e de quebra mostrar a temperatura e umidade do ar. Utilizando uma placa ESP32 Wroom customizada pelo pessoal da DIY More (que possui um sensor de umidade do solo capacitivo juntamente com um DHT11) conseguimos desenvolver um projeto que possa ficar "espetado" em qualquer vazo ou local de sua casa que possua terra, isso pelo fato dele vir equipado com um sistema de carregamento e um suporte para baterias de 3.7v (Li-ION do tipo 18650).
Para construir o projeto foi utilizado os seguintes componentes:
- 1x Placa ESP32 Wroom DIY More (ou esp32 dev kit comum)
- 1x Sensor de umidade do solo capacitivo
- 1x Sensor de temperatura e umidade do ar (DHT11)
- 1x Bateria 18650 / Ou qualquer fonte de alimentação que forneça 3.7v
- 1x Suporte para bateria 18650 (se for utilizar a bateria)
- 1x Cabo micro USB (para gravar o firmware e se nessário alimentar a placa)
- 1x Protoboard (opcional)
- 1x Caixa para armazenar o projeto (opcional)
- Cobertura WiFi
- Uma conexão com a internet
- Um computador com o Arduino IDE instalado
- Uma instalação do Node-RED
- Uma instalação do PostgreSQL
- Um broker MQTT configurado, no nosso caso, utilizamos um broker público fornecido pelo pessoal da EMQX (https://www.emqx.io/)
Como estamos utilizando a placa ESP32 Wroom DIY More, não é necessário utilizar nenhum tipo de resistor ou capacitor para utilizar o sensor de umidade do solo, pois a placa já vem com um circuito de condicionamento de sinal para o sensor.
Configuração da infraestrutura
No nosso projeto utilizamos docker para configurar o Node-RED e o PostgreSQL, mas você pode utilizar qualquer outra forma de instalação. O docker é uma das melhores alternativas, visto que a instalação é simples e rápida, além de ser possível utilizar o docker-compose para configurar os containers. Para instalar o docker, basta seguir o tutorial oficial: https://docs.docker.com/engine/install/
Observação: Há um arquivo do docker-compose na raíz do projeto!
Após a instalação do docker, basta acessar o local onde o projeto foi clonado e executar o seguinte comando para instalar o Node-RED e o PostgreSQL:
```bash
$ sudo docker compose up -d
```
Com isso o Node-RED estará disponível para acesso na porta 1880 e o PostgreSQL na porta 5432.
Ao clonar o repositório, tanto o Node-RED quanto o PostgreSQL já estarão configurados, porém, é necessário criar o banco de dados e a tabela que será utilizada para armazenar os dados. Para isso, basta acessar o Node-RED utilizando o usuário "admin" e a senha "Ifsp2023".
Instalação dos pacotes necessários no Node-Red e importação do Flow
Para que o projeto funcione corretamente será necessário instalar os seguintes pacotes ao Node-Red:
- node-red-contrib-postgresql (para conexão com o banco de dados PostgreSQL)
- node-red-dashboard (possibilita a construção de uma interface)
Com isso feito, basta importar o arquivo de fluxo que está na raíz do projeto (flows.json).
Para que o projeto inicie, basta executar o bloco "prepare" no fluxo chamado "Preparação da base de dados". Com isso, o banco de dados e a tabela serão criados.
Configuração do firmware
No firmware disponível no diretório "esp" dentro do arquivo "esp.ino", é necessário alterar as seguintes linhas:
```c
const char* ssid = "";
const char* password = "";
const char* mqttTopic = "";
```
Nessas variáveis você deve definir os valores que se encaixam no que você deseja. O ssid e a senha são referentes a sua rede WiFi, e o mqttTopic é o tópico que será utilizado para publicar as mensagens MQTT. No nosso caso, utilizamos um tópico que consiste em um UUID versão 4, mas você pode utilizar qualquer outro tópico que desejar. O nosso tópico se parece com isso: "b6f0a0a0-1b1b-4b1b-8b1b-1b1b1b1b1b1b".
Após alterar essas variáveis, basta gravar o firmware na placa ESP32 Wroom DIY More utilizando o Arduino IDE.
Com isso o projeto estará pronto para ser utilizado.
Como funciona?
Em resumo, o nosso ESP32 coleta os dados do DHT11 e do sensor de umidade do solo, e publica esses dados no tópico MQTT "/input-data". O Node-RED, que está configurado para se inscrever nesse tópico, recebe esses dados e os armazena no banco de dados. Com os dados armazenados, o Node-RED disponibiliza a informação em tempo real através de um dashboard, que pode ser acessado através do endereço ENDERECO-IP:1880/ui. Onde ENDERECO-IP é o endereço IP da máquina onde o Node-RED está instalado. Ao final da implementação obtivemos a seguinte construção:
-
Dispositivo no solo e Dashboard
-
Flow
Conclusão
Com isso, através do uso desse dispositivo, somos capacitados a entender melhor as necessidades específicas das nossas plantas, adaptando o ambiente de acordo com as condições ideais para seu desenvolvimento saudável, podendo até otimizar o uso da água, evitando tanto a escassez quanto o excesso, e tomar medidas preventivas contra problemas relacionados à umidade e temperatura. Há também espaço para melhorias, como um controle de irrigação automático, que pode ser feito através de um relé que ativa uma solenóide, liberando a água para irrigação e permitindo monitorar e controlar através do painel de controle.
Muito obrigado pela atenção e espero que você tenha gostado do projeto!
Alunos: Luiz Antonio F. Gomes e Yago Oliveira Bomfim Dias
[ID:146] Autor: - Criado em: 2023-06-01 00:46:43 - [ Compartilhar ]
(SMQA) Sistema de Monitoramento de Qualidade da Água: Tecnologias e Técnicas para Implementação Eficiente
A qualidade da água é um recurso fundamental para a vida em nosso planeta, afetando diretamente a saúde humana e o equilíbrio dos ecossistemas aquáticos. Para garantir a preservação e o monitoramento contínuo desse recurso vital, torna-se essencial a utilização de sistemas eficientes de monitoramento da qualidade da água. Neste contexto, a integração de tecnologias e técnicas modernas, como microcontroladores, sensores, comunicação Wi-Fi, armazenamento de dados em um banco de dados e criação de um dashboard para visualização dos dados coletados, desempenha um papel crucial.
-
Microcontrolador e Sensores: O primeiro passo para a implementação de um sistema de monitoramento de qualidade da água é a seleção adequada de um microcontrolador e dos sensores necessários. O microcontrolador atua como o cérebro do sistema, coletando dados dos sensores e executando as operações de controle. Sensores de pH, condutividade, oxigênio dissolvido e temperatura são comumente utilizados para avaliar a qualidade da água. Esses sensores fornecem dados precisos e em tempo real sobre os parâmetros-chave, permitindo a detecção de variações e a identificação de problemas potenciais.
-
Comunicação Wi-Fi: Uma vez que os dados são coletados pelos sensores, é necessário transmiti-los de forma eficiente para um local centralizado. A comunicação Wi-Fi é uma solução conveniente, permitindo a transferência de dados sem fio para um servidor ou nuvem. Isso elimina a necessidade de fios físicos e permite uma monitoração em tempo real e remota. Além disso, a comunicação Wi-Fi possibilita a rápida detecção de anormalidades e o envio de alertas para ações corretivas imediatas.
-
Armazenamento de Dados em um Banco de Dados: A gestão eficiente dos dados coletados é fundamental para o sucesso do sistema de monitoramento. Um banco de dados adequado, como o MySQL ou PostgreSQL, pode ser utilizado para armazenar os dados de maneira estruturada e segura. Isso permite o acesso rápido e a análise posterior dos dados, auxiliando na identificação de padrões e na tomada de decisões embasadas.
-
Criação de um Dashboard para Visualização dos Dados: Um dashboard intuitivo e visualmente atraente é uma ferramenta essencial para interpretar e apresentar os dados coletados de forma compreensível. Utilizando linguagens de programação web, como HTML, CSS e JavaScript, é possível criar um painel interativo que exiba gráficos, tabelas e informações relevantes sobre a qualidade da água. Essa interface amigável permite que os usuários monitorem facilmente as mudanças nos parâmetros, visualizem tendências ao longo do tempo e identifiquem áreas problemáticas.
O desenvolvimento de um sistema de monitoramento de qualidade da água eficiente envolve a integração de várias tecnologias e técnicas. A utilização de microcontroladores, sensores, comunicação Wi-Fi, armazenamento de dados em um banco de dados e criação de um dashboard possibilita um monitoramento preciso, em tempo real e remoto. Essa abordagem oferece aos gestores e pesquisadores uma visão abrangente da qualidade da água, permitindo a tomada de medidas proativas para preservar e proteger esse recurso vital para a vida no nosso planeta.
[ID:145] Autor: - Criado em: 2023-05-24 20:12:22 - [ Compartilhar ]
Umidificador Inteligente: Conectando Saúde e Tecnologia
No mundo atual, onde a tecnologia está presente em quase todos os aspectos da nossa vida, é empolgante ver como ela pode transformar até mesmo os aparelhos mais simples em dispositivos inteligentes e eficientes. Um exemplo disso é o umidificador inteligente, uma solução inovadora que combina a melhoria da qualidade do ar com recursos avançados de conectividade e controle. Neste artigo, exploraremos o que é um projeto de umidificador inteligente e as tecnologias e técnicas necessárias para implementá-lo.
-
Microcontrolador e Sensores: O coração de um umidificador inteligente é um microcontrolador, um componente eletrônico programável capaz de controlar as operações do dispositivo. O microcontrolador deve ser escolhido levando em consideração a capacidade de processamento e a compatibilidade com os sensores necessários. Sensores de umidade, temperatura e qualidade do ar são essenciais para monitorar as condições ambientais e ajustar o funcionamento do umidificador de acordo com as necessidades.
-
Comunicação Wi-Fi: A integração de um módulo de comunicação Wi-Fi permite que o umidificador inteligente se conecte a uma rede local ou à Internet. Isso possibilita o acesso remoto ao dispositivo por meio de um aplicativo móvel ou uma plataforma online. A comunicação Wi-Fi também permite a troca de dados com outros dispositivos e serviços, abrindo um mundo de possibilidades para automação e controle inteligente.
-
Armazenamento de Dados em um Banco de Dados: Um aspecto importante de um umidificador inteligente é a capacidade de coletar e armazenar dados sobre as condições do ambiente ao longo do tempo. Isso pode ser feito por meio de um banco de dados, onde as informações são registradas e organizadas para análises futuras. O uso de um banco de dados possibilita o rastreamento de tendências, identificação de padrões e otimização do desempenho do umidificador com base nos dados coletados.
-
Para facilitar a interpretação dos dados coletados, a criação de um dashboard intuitivo é fundamental. Um dashboard é uma interface gráfica que apresenta informações de forma clara e visualmente atraente. Nele, é possível exibir a umidade, temperatura, qualidade do ar e outras métricas relevantes, além de gráficos e relatórios. O acesso a essas informações em tempo real fornece aos usuários uma visão abrangente das condições do ambiente e permite que tomem decisões informadas.
O umidificador inteligente é um exemplo impressionante de como a tecnologia pode aprimorar produtos comuns, oferecendo uma experiência mais conveniente e eficiente. Com a combinação de um microcontrolador, sensores, comunicação Wi-Fi, armazenamento de dados em um banco de dados e a criação de um dashboard para visualização, é possível criar um umidificador que se adapta às necessidades específicas do usuário, promovendo uma melhor qualidade do ar e contribuindo para uma vida mais saudável. A integração entre saúde e tecnologia nunca foi tão promissora.
O projeto foi implementado com 2 potenciometros simulando 2 sensores, um de temperatura e outro de umidade, quando o sensor de temperatura mede 30 graus ou passa disso, o umidificador ligará, o sensor de umidade também aciona o umidificador inteligente pela porcentagem de umidade no ar, caso fique menor que 70 porcento, o umidificador ligará também fazendo o controle de umidade do ambiente, gerando assim conforto automatizado.
[ID:144] Autor: - Criado em: 2023-05-24 18:15:49 - [ Compartilhar ]
(DPA) Detecção da Poluição do Ar
(DPA) Detecção da Poluição do Ar é um campo de estudo e tecnologia que visa monitorar e avaliar a qualidade do ar em tempo real. A poluição do ar é uma preocupação ambiental significativa devido aos seus efeitos negativos na saúde humana, no meio ambiente e no clima. A detecção e monitoramento da poluição do ar são essenciais para entender os níveis de poluentes atmosféricos e implementar medidas adequadas para mitigar seus impactos.
Além da detecção da poluição do ar, a análise e interpretação dos dados coletados são fundamentais para entender as tendências, identificar fontes de poluição, avaliar riscos à saúde e implementar estratégias de controle e redução da poluição. Os dados podem ser usados para informar políticas públicas, regulamentações ambientais, planejamento urbano e conscientização da população.
A detecção da poluição do ar desempenha um papel crucial na proteção da saúde pública, na aliviação das mudanças climáticas e na promoção de um ambiente sustentável. Ao fornecer informações precisas sobre a qualidade do ar, é possível tomar medidas preventivas e corretivas para reduzir os impactos da poluição e melhorar a qualidade de vida das pessoas.
Materiais e Métodos:
Node-RED: Utilizado como ferramenta de programação.
AWS EC2: Serviço de computação em nuvem usado para hospedar servidor.
2 potenciômetros: Simulam os sensores .
ESP32: Microcontrolador que conecta os potenciômetros ao servidor Node-RED via Wi-Fi.
Procedimento:
1. Configuração do AWS EC2: Criar uma instância EC2, instalar o Node-RED e configurar um servidor MySQL.
2. Configuração dos potenciômetros: Conectar aos pinos adequados do ESP32 e ler os valores dos potenciômetros.
3. Comunicação via MQTT: Utilizar a biblioteca MQTT no ESP32 para enviar os dados dos potenciômetros para o servidor Node-RED.
4. Desenvolvimento dos fluxos no Node-RED: Criar fluxos para receber os dados MQTT do ESP32, processá-los e armazenar no banco de dados MySQL.
5. Armazenamento de dados no MySQL: Configurar o Node-RED para se conectar ao banco de dados MySQL e salvar os dados recebidos dos potenciômetros.
ARDUINO IDE:
1. Configuração da conexão Wi-Fi: Iniciar a conexão Wi-Fi usando o nome de rede (SSID) e a senha fornecidos.
2. Configuração do servidor MQTT: Configurar o servidor MQTT e a porta para estabelecer a comunicação MQTT.
3. Loop de reconexão: Verificar se o cliente MQTT está conectado e, caso contrário, tentar reconectar-se ao servidor MQTT.
4. Função de callback: Processar as mensagens MQTT recebidas pelo dispositivo com base no tópico e payload.
Nó "medido enxofre": Exibe um medidor de nível de poluição (micrograma por metro cúbico) em uma interface gráfica.
- Nó "Gráfico enxofre": Exibe um gráfico de linha na interface gráfica para visualizar os dados ao longo do tempo.
"function": Executa uma função JavaScript personalizada.
- Nó "ui_text": Exibe um texto na interface gráfica.
- Nó "mqtt out": Envia mensagens para um tópico MQTT específico.
- Nó "mqtt in": Recebe mensagens de um tópico MQTT específico.
- Nó "ui_group": Agrupa visualmente outros nós relacionados na interface gráfica.
A parte inferior lida com as conexões responsáveis pela conexão do banco de dados.
Os nós "mqtt in" estão configurados para receber os dados dos sensores nos tópicos "esp32/enxofre" e "esp32/ozonio". Os nós "function" ("enxofre" e "ozonio") extraem os valores dos sensores dos dados recebidos e os adicionam à mensagem. O nó "join" combina as mensagens recebidas dos sensores em um único objeto.
O nó "function" ("SELECT") cria a instrução SQL de seleção, e o nó "mysql" executa essa instrução e retorna os dados da tabela. O nó "change" é usado para formatar os dados retornados em um formato adequado para exibição no gráfico. O nó "ui_chart" exibe os dados formatados em um gráfico na interface do usuário.
Por fim, a dashboard mostra o monitoramento dos dois sensores, acendendo um LED caso a concentração de ozônio ultrapasse 80% de 100 µg/m³, indicando um risco à saúde. O mesmo alerta é aplicado ao sensor de enxofre, com o limite de 20% de 100 µg/m³. E segue seu banco de dados abaixo:
[ID:143] Autor: - Criado em: 2023-05-24 00:48:44 - [ Compartilhar ]
(MCAR) Monitoramento de Consumo de Água em Residências
A Internet das Coisas (IoT) tem se destacado como uma solução poderosa para o controle e monitoramento de sistemas diversos. Um exemplo prático dessa aplicação é o monitoramento de consumo de água em residências. Com a combinação de tecnologias como MQTT, Node-RED, ESP32, AWS EC2 e o sensor de fluxo de água, é possível criar um sistema eficiente e inteligente para gerenciar o consumo de água de forma remota e em tempo real.
O monitoramento de consumo de água em residências é essencial para promover o uso consciente desse recurso vital e evitar desperdícios. A utilização de um sensor de fluxo de água permite medir com precisão a quantidade de água que está sendo consumida. O sensor coleta os dados de fluxo e os transmite ao ESP32, uma placa de desenvolvimento versátil e ideal para aplicações IoT devido às suas capacidades de conectividade, como Wi-Fi e Bluetooth.
Através do protocolo MQTT (Message Queuing Telemetry Transport), os dados de fluxo de água coletados pelo ESP32 são enviados de forma rápida e segura para a nuvem. O MQTT é conhecido por ser um protocolo leve, econômico em termos de largura de banda e altamente escalável, tornando-o uma excelente escolha para aplicações IoT.
Esses dados são recebidos e processados pelo Node-RED, uma plataforma de programação visual que permite a criação de fluxos de trabalho intuitivos para a IoT. No Node-RED, é possível criar um fluxo que receba os dados de fluxo de água, aplicando lógica de controle para monitorar o consumo. Com base nos dados recebidos, é possível configurar ações automatizadas, como alertas de consumo excessivo, desligamento de sistemas não essenciais ou notificações em tempo real.
Essas ações podem ser executadas por meio de integração com serviços em nuvem, como a AWS EC2 (Elastic Compute Cloud). A AWS EC2 é uma plataforma de computação em nuvem que permite executar aplicativos escaláveis e confiáveis. Com a integração da AWS EC2, é possível armazenar os dados de consumo de água, processá-los e executar análises avançadas. Além disso, é possível configurar serviços de notificação, como envio de e-mails ou mensagens de texto, para alertar os usuários quando o consumo de água atingir limites críticos.
Em resumo, a combinação de MQTT, Node-RED, ESP32, AWS EC2 e o sensor de fluxo de água oferece uma solução completa para o monitoramento de consumo de água em residências. Essa abordagem baseada em IoT possibilita o gerenciamento remoto e em tempo real do consumo de água, incentivando práticas sustentáveis e evitando desperdícios. Com a evolução contínua da tecnologia IoT, espera-se que novas melhorias e recursos sejam desenvolvidos para aprimorar ainda mais o monitoramento de consumo de água em residências.
[ID:141] Autor: - Criado em: 2023-05-23 00:07:58 - [ Compartilhar ]
(SII) Sistema de Irrigação Inteligente
O Sistema de Irrigação Inteligente (SII) é uma solução avançada e eficiente que tem revolucionado a agricultura nos últimos anos, utilizando tecnologias como o microcontrolador ESP32, o protocolo MQTT, a plataforma Node-RED e a Internet das Coisas (IoT). Essas tecnologias combinadas permitem a criação de um sistema inteligente e automatizado para o controle de irrigação de forma precisa e otimizada.
O microcontrolador ESP32 desempenha um papel fundamental no SII. Com sua capacidade de processamento e conectividade Wi-Fi, o ESP32 é capaz de receber dados de sensores, como os de umidade do solo, e tomar decisões com base nessas informações. Além disso, sua conectividade Wi-Fi permite a comunicação com outros dispositivos e sistemas, tornando possível o controle remoto e a integração do sistema de irrigação.
O protocolo MQTT é utilizado para a comunicação entre os diferentes componentes do SII. Trata-se de um protocolo de mensagens leve e eficiente, ideal para aplicações de IoT. O ESP32 pode publicar dados de sensores e receber comandos através do MQTT, facilitando a troca de informações e o controle do sistema de irrigação.
A plataforma Node-RED desempenha um papel importante no desenvolvimento e na configuração do SII. Com sua interface visual intuitiva, o Node-RED permite a criação de fluxos de automação de forma simplificada. É possível configurar nós MQTT para receber e enviar mensagens, processar dados dos sensores e tomar decisões com base nas informações coletadas. Essa plataforma facilita a personalização e a configuração dos fluxos de automação do sistema de irrigação.
A integração do ESP32, MQTT, Node-RED e IoT no SII oferece uma série de benefícios. Os sensores conectados ao ESP32 podem coletar dados de umidade do solo em tempo real e enviá-los para o Node-RED através do MQTT. No Node-RED, é possível processar esses dados, acionar válvulas de irrigação e ajustar automaticamente a quantidade de água fornecida às plantas com base em algoritmos inteligentes.
Com o uso dessas tecnologias, o SII proporciona uma irrigação mais precisa e eficiente, adaptando-se às necessidades específicas das plantas e às condições climáticas em tempo real. Além disso, o controle remoto e a integração com outros sistemas permitem que o agricultor monitore e gerencie o sistema de irrigação de forma conveniente e flexível.
Em conclusão, o Sistema de Irrigação Inteligente (SII) utiliza tecnologias como o ESP32, o protocolo MQTT, a plataforma Node-RED e a IoT para criar um sistema de irrigação automatizado e controlado de forma precisa. Essa abordagem oferece uma irrigação mais eficiente, adaptável e sustentável, permitindo o monitoramento e o controle remoto do sistema, além de otimizar a produtividade agrícola.
[ID:137] Autor: - Criado em: 2023-05-21 17:17:17 - [ Compartilhar ]
Controle de Nível de Tanque de Combustível
Descrição
A gestão eficiente e precisa dos tanques de combustível em postos é fundamental para garantir um abastecimento contínuo e o melhor aproveitamento dos recursos. Nesse contexto, a aplicação de tecnologias como IoT, MQTT, Node-RED, ESP32, AWS EC2 e o sensor de pressão MPX5100DP possibilita a criação de um sistema avançado de controle e monitoramento.
Através de um dashboard intuitivo, os gestores terão acesso em tempo real aos dados dos tanques, facilitando o gerenciamento de estoque, a previsão de compras e a visualização da disponibilidade das bombas. Essa abordagem baseada em IoT traz agilidade, eficiência e maior controle para os postos de combustíveis, contribuindo para um melhor atendimento aos clientes e otimizando a gestão operacional.
1. Introdução
A Internet das Coisas (IoT) tem revolucionado a forma como controlamos e monitoramos sistemas diversos, oferecendo soluções poderosas para otimizar processos e aumentar a eficiência. Um exemplo prático dessa aplicação é o controle de nível em tanques de combustível, uma tarefa essencial para garantir um fornecimento contínuo e seguro de combustível, ao mesmo tempo em que evita esgotamentos e vazamentos perigosos. A combinação de tecnologias como MQTT, Node-RED, ESP32, AWS EC2 e o sensor de pressão MPX5100DP tem permitido a criação de sistemas inteligentes e eficientes para gerenciar o nível de combustível de forma remota e em tempo real. Essas tecnologias em conjunto oferecem uma solução completa e escalável para o monitoramento e controle de tanques de combustível.
O sensor de pressão MPX5100DP é especialmente projetado para medir com precisão a pressão, o que o torna ideal para monitorar o nível de combustível em um tanque. Ao coletar dados de pressão, o sensor fornece informações confiáveis sobre o nível de combustível, permitindo uma tomada de decisão adequada.
O ESP32, uma placa de desenvolvimento versátil, desempenha um papel fundamental na aplicação IoT, graças às suas capacidades de conectividade Wi-Fi e Bluetooth. O ESP32 atua como o dispositivo intermediário entre o sensor de pressão e a nuvem, recebendo os dados de pressão e transmitindo-os para a nuvem de forma rápida e segura por meio do protocolo MQTT.
O MQTT, conhecido por ser um protocolo leve e altamente escalável, é a escolha perfeita para a comunicação entre dispositivos IoT e a nuvem. Ele permite que os dados de pressão coletados pelo ESP32 sejam enviados eficientemente para a nuvem, onde podem ser processados e analisados.
No Node-RED, uma plataforma de programação visual intuitiva, é possível criar fluxos de trabalho personalizados para a IoT. Utilizando o Node-RED, os dados de pressão provenientes do tanque de combustível podem ser recebidos e processados, permitindo a implementação de lógica de controle para monitorar o nível. Com base nesses dados, é possível configurar ações automatizadas, como alertas de nível baixo, desligamento do fornecimento de combustível ou notificações em tempo real.
A integração com a AWS EC2 proporciona um ambiente escalável e confiável para armazenar os dados de nível do tanque de combustível, realizar processamentos avançados e executar análises. Além disso, é possível configurar serviços de notificação, como envio de e-mails ou mensagens de texto, para alertar os responsáveis quando o nível de combustível atingir limites críticos.
Em resumo, a combinação de MQTT, Node-RED, ESP32, AWS EC2 e o sensor de pressão MPX5100DP oferece uma solução completa para o controle e monitoramento de nível em tanques de combustível. Essa abordagem baseada em IoT permite um gerenciamento remoto e em tempo real, garantindo um fornecimento contínuo e seguro de combustível. Com o contínuo avanço da tecnologia IoT
2. Metodologia
Para a obtenção dos dados foi utilizado o sensor MPX5100DP (Figura 1.), que desempenha o papel de coletar os dados de pressão e enviar para o ESP32. Na programação do microcontrolador, foi desenvolvido um algoritmo para calcular os valores de volume no tanque a partir das leituras de pressão dos sensores. Esses dados são então transmitidos via Wi-Fi para um broker MQTT, utilizando esse protocolo, os dados foram enviados para uma instância EC2. Os dados obtidos são armazenados em um banco de dados e disponibilizados por meio de um web server, que pode ser acessado remotamente pela internet.
Figura 1. Sensor MPX5100DP
Essa metodologia possibilitou o controle e monitoramento eficiente do nível de combustível em tempo real, além de facilitar a gestão dos postos de combustíveis. A combinação do ESP32, MQTT, instância EC2 e Node-RED permitiu a coleta, processamento e visualização dos dados de forma integrada, contribuindo para uma melhor tomada de decisões e otimização do gerenciamento dos tanques de combustível.
3. Resultados e Discussões
Os resultados obtidos demonstraram que a integração das tecnologias utilizadas - ESP32, MQTT, instância EC2 e Node-RED - possibilitou o controle e monitoramento eficiente do nível de combustível em tempo real, facilitando o gerenciamento em postos de combustíveis, principalmente quando necessário monitorar diversos tanques ao mesmo tempo.
A Figura 2 apresenta os Flows utilizados no Node-RED para processamento e visualização dos dados, já a Figura 3 apresenta os flows responsáveis pelo banco de dados:
Figura 2: Flows no Node-RED para controle do dashboard.
Figura 3: Flows no Node-RED para controle e comunicação com o banco de dados MySQL.
Esses Flows foram responsáveis por receber os dados coletados pelo ESP32 via MQTT, processá-los e apresentá-los em uma interface visual intuitiva. Através desses Flows, os gestores puderam visualizar o nível de combustível em cada tanque (Figura 4.), a disponibilidade das bombas e outras informações relevantes de forma clara e acessível.
Figura 4: Dashboard em funcionamento, monitorando os valores de três tanques diferentes.
A combinação dessas tecnologias e a utilização dos Flows no Node-RED proporcionaram uma solução completa e integrada para o controle e monitoramento de tanques de combustível. Com o acesso fácil e rápido aos dados em tempo real, os gestores puderam tomar decisões informadas e ágeis, garantindo um abastecimento contínuo e seguro. Além de possuírem um banco de dados, para que sejam acessados dados passados (Figura 5.), o que facilita no reconhecimento, por exemplo, da característica de venda em cada época do ano
Figura 5: Dashboard com banco de dados em MySQL
Em suma, os resultados obtidos confirmam a eficácia desse sistema na gestão e monitoramento de tanques de combustível em postos. A aplicação das tecnologias IoT, MQTT, Node-RED, ESP32, AWS EC2 e o sensor de pressão MPX5100DP oferece benefícios significativos, como a prevenção de desabastecimento, a redução de perdas por vazamentos e a melhoria da experiência do cliente. Essa abordagem tem o potencial de ser ampliada e adaptada para diferentes setores, proporcionando melhorias contínuas na gestão de recursos e processos industriais.
4. Conclusão
Em conclusão, a aplicação das tecnologias IoT, MQTT, Node-RED, ESP32, AWS EC2 e o sensor de pressão MPX5100DP possibilitou a criação de um sistema avançado de controle e monitoramento de tanques de combustível em postos. Através do uso dessas tecnologias, foi possível obter dados em tempo real sobre o nível de combustível, facilitando a gestão de estoque, a previsão de compras e a visualização da disponibilidade das bombas. A implementação desse sistema traz agilidade, eficiência e maior controle para os postos de combustíveis, contribuindo para um melhor atendimento aos clientes e otimizando a gestão operacional.
[ID:136] Autor: - Criado em: 2023-05-21 15:37:30 - [ Compartilhar ]
Sistema de Alarme e Detecção de Intrusão
A combinação do ESP32, MQTT e Node-RED para um sistema de alarme e detecção de intrusão representa uma solução moderna e eficiente no campo da segurança residencial e comercial. O ESP32 é um microcontrolador poderoso e versátil, capaz de conectar-se à rede Wi-Fi e executar uma variedade de tarefas. O MQTT é um protocolo de mensagens leve e confiável, que permite a comunicação entre dispositivos IoT de forma eficiente. E o Node-RED é uma plataforma de desenvolvimento visual que simplifica a integração e o gerenciamento de fluxos de dados.Neste contexto, a utilização do ESP32 como dispositivo central do sistema de alarme e detecção de intrusão proporciona recursos avançados para monitoramento e controle remoto. O ESP32 pode ser configurado para interagir com sensores de movimento, sensores de abertura de portas e janelas, câmeras de segurança e outros dispositivos de detecção. Esses dados são transmitidos via MQTT, garantindo uma comunicação segura e confiável.
O Node-RED desempenha um papel fundamental ao fornecer uma interface visual intuitiva para configurar e controlar o fluxo de informações. Através de sua interface baseada em nós, é possível criar lógicas de automação personalizadas e acionar ações específicas com base nos eventos de detecção de intrusão. Além disso, o Node-RED permite a integração com outros serviços e plataformas, como notificações por e-mail, mensagens de texto ou integração com sistemas de segurança existentes.Ao combinar essas tecnologias, é possível desenvolver um sistema de alarme e detecção de intrusão altamente eficiente, flexível e escalável. A detecção de intrusão em tempo real é realizada pelos sensores conectados ao ESP32, que enviam alertas via MQTT. O Node-RED, por sua vez, recebe esses alertas, executa ações pré-configuradas, como acionar sirenes, enviar notificações ou registrar eventos em um banco de dados.
Metodologia
Para o desenvolvimento do projeto foi utilizado o microcontrolador ESP32, responsavel pelo controle dos perifericos e comunição com o node-RED via MQTT, por sua vez, o node-RED manipula as informações e as plota no dashboard. foi utilizado para simular o sensor ultrassonico um potênciometro, alem de um buzzer para alerta sonoro e de leds, sendo esses responsaveis pelo status do sistema de forma visual.
Prototipo
Como pode ser visto na figura 1, o ESP32 esta conectado aos dispositivos, o potenciometro posicionado mais ao centro da potoboard para simular o sensor ultrassonico, o buzer usado para o sinal sonoro de alerta posicionado no canto superior direito e logo atrás o led vermelho de sinal de alerta visual que trabalha em conjunto com o buzzer. Há ainda, dois leds posiiconados mais proximos ao ESP, esses são os leds de acesso, o vermelho para sinalizar que o sistema está ativo e armado, o verder é responsavel por sinalizar que o acesso esta liberado,o que significa que pode adentrar na residencia, pois o sistema de alerta de intrusão e alarme esta inativo.
Figura 1(Prototipo do sistema).
Node-RED
Figura 2(Nós de controle).
Por meio desses nós é feito o controle do sistema, como pode ser visualizado pela imagem(Figura 2) por meio dos blocos mqtt-in e mqtt-out são trocadas informações com o esp32. São duas formas de acesso, sendo essa por senha e por botão, possue tambem o "botão reinicia" esse fica responsavel por reiniciar/acionar o sistema de alarme, alem disso, há um led que monitora o status do acesso, mostrando ao usuario se o acesso foi permitido ou se o sistema de alarme esta ativo.
Para a leitura do sensor, os nós da figura 3 mostra como é feita o controle de fluxo de ifnromação do sensor. Os dados do sensor são enviados para o nós pelo bloco esp32/sensor, a informação obtida flui para os demais blocos que manipula e plota em um gauge, que é responsavel por mostrar de forma visual o status de distancia captada do sensor.
Figura 3(nós de leitura do sensor).
Os nós de notificação(figura 4) é responsavel por acionar o led de alerta , esses nós recebem o fluxo de informação pelo bloco esp32/out, esse por sua vez esta em sincronia com o sensor e por meio do dado recebido o usuario é capaz de visualizar na dashboard um led sinalizando o sinal de alerta.
Figura 4(Nós de notificação).
Já os nós da figura 5 são responsaveis pelo banco de dados. Os primeiros blocos recebem as informações de distancia do sensor, armazenam no banco de dados mysql,o node-RED então seleciona os 10 valores plotados na tabela do banco de dados,e se esses dados coletados estiverem de acordo com o criterios pre estabelecidos como ,distancia minima para ativar o alarme, o node-RED então plota as informações em uma tabela no dashboard.
Figura 5(nós de banco de dados).
Node-RED/ Dashboard
coletada as informações do esp, os dados podem então serem manipulados pela dashboard do node-RED. Na Figura 6 podemos visualizar a dashboard do projeto, nela estão dispostos os 2 botões de acesso e de reiniciar o sistema, o campo de senha utilizados tambem como acesso e o gauge anteriormente comentado, que é utilizado para visualizar a distancia do sensor, alem do led de alerta que fica como alerta visual. Os dados de alerta recebidos pelo banco de dados são plotados na tabela, e por meio dela o usuario fica sabendo de forma precisa da data e do horario em que o alarme foi acionado, podendo assim fazer o monitoramento em tempo real dessas possiveis invasões.
Figura 6(dashboard).
Codigo
#include
#include "PubSubClient.h"
#include
#include
- Essas linhas incluem as bibliotecas necessárias para o programa, que são:
WiFi.h
: Permite a conexão do ESP32 a uma rede Wi-Fi.PubSubClient.h
: Biblioteca para a comunicação usando o protocolo MQTT.ArduinoJson.h
: Biblioteca para manipulação de dados em formato JSON.Wire.h
: Biblioteca para comunicação I2C (não utilizada neste código).
const char* ssid = "ifsp-ibge-1";
const char* password = "ifspcatanduva";
const char* mqttServer = "awsluiz.duckdns.org";
const int mqttPort = 1883;
const char* mqttTopic = "casa/controle";
const char* clientId = "ESP32";
const int analogPin = 36;
const int ledAcesso = 27;
const int ledNegado = 12;
const int ledAlerta = 13;
const int buzzerPin = 14;
int lastSensorValue = 0, valorLimite = 50;
- Essas constantes são usadas ao longo do programa e definem configurações como nome da rede Wi-Fi, senha, servidor MQTT, tópico MQTT, pinos dos LEDs e do buzzer, entre outros.
WiFiClient espClient;
PubSubClient client(espClient);
bool sensorAtivado = true;
- Essas variáveis são usadas em diferentes partes do programa.
espClient
é usado para a conexão Wi-Fi,client
é o cliente MQTT esensorAtivado
indica se o sensor está ativado ou não.
void mqttSendJson(float valor1) {
DynamicJsonDocument doc(1024);
doc["device"] = "ESP32";
doc["distancia"] = valor1;
char JSONmessageBuffer[200];
serializeJson(doc, JSONmessageBuffer);
client.publish("esp32/sensor", JSONmessageBuffer);
Serial.print("msg json enviado: ");
Serial.println(JSONmessageBuffer);
}
- Essa função é responsável por criar e enviar uma mensagem JSON contendo o valor da distancia para o tópico MQTT "esp32/sensor". A mensagem é construída usando a biblioteca ArduinoJson e é publicada usando o cliente MQTT.
void mqttSendJsonIO() {
DynamicJsonDocument doc(1024);
doc["device"] = "ESP32";
doc["OUT2"] = digitalRead(ledAlerta);
char JSONmessageBuffer[200];
serializeJson(doc, JSONmessageBuffer);
client.publish("esp32/out", JSONmessageBuffer);
Serial.print("msg json out enviado: ");
Serial.println(JSONmessageBuffer);
}
- A função
mqttSendJsonIO()
envia uma mensagem JSON para um servidor MQTT. A mensagem contém informações sobre o dispositivo ("ESP32") e o estado do pinoledAlerta
. A função utiliza a biblioteca ArduinoJson para criar o JSON e a funçãoclient.publish()
para publicar a mensagem no tópico "esp32/out". O conteúdo da mensagem JSON é exibido no monitor serial para fins de depuração.
void loop() {
client.loop();
if (sensorAtivado) {
int sensorValue = analogRead(analogPin);
if (abs(sensorValue - lastSensorValue) >= 10) {
client.publish("esp32/sensorraw", String(sensorValue).c_str());
lastSensorValue = sensorValue;
float valor = ((float)sensorValue / 4095) * 100;
mqttSendJson(valor);
mqttSendJsonIO();
if (valor <= valorLimite && digitalRead(ledAcesso) == LOW) {
digitalWrite(ledAlerta, HIGH);
tone(buzzerPin, 1000, 1000);
delay(1000);
digitalWrite(ledAlerta, LOW);
noTone(buzzerPin);
}
}
}
delay(500);
}
- A função
loop()
é executada continuamente após a funçãosetup()
. Nela, o cliente MQTT é atualizado (client.loop()
), e se o sensor estiver ativado, é lido o valor do sensor analógico. Se houver uma variação significativa no valor do sensor em relação ao valor anterior, uma mensagem com o valor bruto do sensor é publicada no tópico "esp32/sensorraw". Em seguida, é calculado o valor percentual do sensor e são enviadas mensagens JSON contendo esse valor para os tópicos.
void callback(char* topic, byte* payload, unsigned int length) {
String topicStr = topic;
if (topicStr.equals("casa/controle")) {
String payloadStr = "";
for (int i = 0; i < length; i++) {
payloadStr += (char)payload[i];
}
if (payloadStr.equals("on")) {
sensorAtivado = false; // Desliga o sensor
digitalWrite(ledAcesso, HIGH);
digitalWrite(ledNegado, LOW);
} else if (payloadStr.equals("off")) {
sensorAtivado = true; // Liga o sensor novamente
digitalWrite(ledAcesso, LOW);
digitalWrite(ledNegado, HIGH);
}
}
}
- A função
callback()
é responsável por tratar as mensagens recebidas no tópico MQTT "casa/controle". Ela recebe o tópico, o payload da mensagem e o comprimento do payload como argumentos. - Dentro da função, é verificado se o tópico recebido é igual a "casa/controle". Se for, o payload da mensagem é convertido em uma string e armazenado em
payloadStr
por meio de um loop que itera pelo comprimento do payload. - Em seguida, é verificado o valor da string
payloadStr
. Se for "on", isso significa que o comando para desligar o sensor foi recebido. Nesse caso, o sensor é desativado (sensorAtivado
é definido comofalse
), o pinoledAcesso
é ligado e o pinoledNegado
é desligado. - Se o valor da string for "off", isso indica que o comando para ligar o sensor foi recebido. Nesse caso, o sensor é ativado novamente (
sensorAtivado
é definido comotrue
), o pinoledAcesso
é desligado e o pinoledNegado
é ligado.
Resultados e Discussões
Os resultados obtidos com o projeto demonstrou de forma eficaz a combinação do ESP32, MQTT e Node-RED. Proporcionando um sistema de alarme e detecção de intrusão inteligente e integrado, capaz de garantir a segurança e a tranquilidade de residências e estabelecimentos comerciais. Essa solução oferece flexibilidade, personalização e controle total sobre o sistema de segurança, tornando-se uma opção poderosa para a proteção contra intrusões indesejadas.
[ID:135] Autor: - Criado em: 2023-05-21 14:29:24 - [ Compartilhar ]
(MTUA) Monitoramento de Temperatura e Umidade em Ambientes
O monitoramento de temperatura e umidade em ambientes é uma tarefa essencial em diversos contextos, desde residências até instalações industriais. Para implementar projetos dessa natureza, é necessário utilizar tecnologias e técnicas específicas que garantam a coleta precisa e eficiente dos dados. Neste texto, exploraremos as etapas fundamentais envolvidas nesse processo, incluindo a integração de um microcontrolador ESP32 com sensores, a comunicação via protocolo MQTT, o armazenamento de dados em um banco de dados MySQL e a criação de um dashboard para visualização dos dados coletados utilizando o Node-RED.
A primeira etapa consiste na seleção adequada dos sensores de temperatura e umidade. Existem diversas opções disponíveis no mercado, mas para esse projeto, vamos considerar sensores específicos para medir essas grandezas. Os sensores serão conectados ao microcontrolador ESP32, que será responsável por capturar os dados e enviá-los para processamento.
O ESP32 é uma placa de desenvolvimento amplamente utilizada em projetos de IoT, devido às suas capacidades de comunicação e processamento. Com o microcontrolador ESP32, é possível programar o seu funcionamento utilizando a linguagem de programação Arduino. Assim, será possível controlar a leitura dos sensores e o envio dos dados para a plataforma de processamento.
A comunicação entre o microcontrolador e a plataforma de processamento pode ser realizada através do protocolo MQTT (Message Queuing Telemetry Transport). O MQTT é um protocolo leve e eficiente, especialmente projetado para aplicações de IoT. Ele permite a troca de mensagens entre dispositivos conectados, seguindo o modelo publicador/assinante. No caso do monitoramento de temperatura e umidade, o ESP32 atuará como um dispositivo publicador, enviando os dados dos sensores para um servidor MQTT.
Para implementar a plataforma de processamento, utilizaremos o Node-RED. Trata-se de uma ferramenta de programação visual que permite criar fluxos de dados de forma intuitiva. O Node-RED possui uma ampla gama de nodes disponíveis, o que facilita a integração de diferentes dispositivos e serviços. Com o Node-RED, criaremos um fluxo que receberá as mensagens MQTT enviadas pelo ESP32, extrairá os dados de temperatura e umidade e os armazenará em um banco de dados MySQL.
O MySQL é um sistema de gerenciamento de banco de dados relacional muito popular. Utilizaremos o Node-RED para estabelecer a conexão com o banco de dados MySQL e criar as tabelas necessárias para armazenar os dados coletados. Assim, será possível registrar as medições de temperatura e umidade de forma organizada e acessível para consultas futuras.
Além do armazenamento dos dados, é importante visualizá-los de forma clara e intuitiva. Para isso, criaremos um dashboard utilizando as funcionalidades oferecidas pelo Node-RED. Com o uso de nodes específicos para a criação de gráficos e interfaces de usuário, poderemos construir um dashboard personalizado que apresente as informações de temperatura e umidade em tempo real, facilitando a interpretação dos dados coletados.
Portanto, a implementação de um projeto de monitoramento de temperatura e umidade em ambientes envolve a integração do microcontrolador ESP32 com sensores, a comunicação através do protocolo MQTT, o armazenamento dos dados em um banco de dados MySQL e a criação de um dashboard para visualização dos dados coletados utilizando o Node-RED. Essas tecnologias e técnicas fornecem uma solução completa e eficiente para a coleta e análise dessas informações.
Materiais:
Componentes:
- Protoboard
- 2 Potenciômetros (para simular os sensores de temperatura e umidade)
- ESP32
- Cabos e jumpers para conexões
Software e Ferramentas:
- Arduino IDE (para programar o ESP32)
- Node-RED (para criar o fluxo de dados e o dashboard)
- MySQL (banco de dados para armazenamento dos dados)
- Servidor Ubuntu (para hospedar o banco de dados e executar o Node-RED)
Metodos:
Inicialmente, realizou-se uma análise dos requisitos do projeto, com o objetivo de identificar os parâmetros do processo a serem monitorados e controlados.
Posteriormente, programou-se o microcontrolador para adquirir dados dos sensores. Através da Arduino IDE, foi possível escrever o código necessário para ler os dados dos sensores, estabelecer a comunicação com os módulos de sensores, e enviar esses dados para um servidor externo.
Código disponivel em: Programação Esp32.
Para permitir a transmissão dos dados coletados, configurou-se a conexão Wi-Fi no microcontrolador, possibilitando o envio dos dados para um servidor externo.
No lado do servidor, foi configurado um ambiente apropriado para receber e processar os dados provenientes do microcontrolador. Utilizando o Ubuntu Server como sistema operacional, instalou-se e configurou-se o Mosquitto como broker MQTT, bem como o MySQL como sistema de gerenciamento de banco de dados. Essas configurações garantiram um ambiente confiável para o armazenamento e gerenciamento dos dados coletados.
Utilizando o Node-RED, desenvolveu-se a interface de usuário do sistema. Essa plataforma visual permitiu a criação de dashboards interativos, nos quais foi possível visualizar os dados coletados do ambiente monitorado. Foram criados gráficos, tabelas e outras representações visuais dos dados, proporcionando uma melhor compreensão do processo monitorado.
flow disponivel em: Node-red, Mqtt, Mysql.
Por fim, foi estabelecida a integração entre o Node-RED e o banco de dados MySQL, permitindo o armazenamento persistente dos dados coletados e viabilizando análises futuras.
Com base nesses procedimentos e na utilização dos componentes mencionados, foi possível implementar um sistema de monitoramento de temperatura e umidade em ambientes. A utilização da protoboard, dos potenciômetros para simular os sensores, do ESP32, da Arduino IDE, do Node-RED, do protocolo MQTT, do MySQL e do servidor Ubuntu permitiu a aquisição, o armazenamento e a visualização dos dados coletados por meio de um dashboard interativo.
Procedimentos adotados:
Configuração física:
- Monte a protoboard e conecte os potenciômetros aos pinos analógicos do ESP32.
- Conecte o ESP32 à protoboard e faça as conexões elétricas necessárias.
- Certifique-se de que todos os componentes estejam alimentados corretamente.
Programação do ESP32:
- Abra o Arduino IDE e configure-o para programar o ESP32.
- Escreva o código necessário para ler os valores dos potenciômetros e enviar os dados para o Node-RED através do protocolo MQTT.
- Carregue o código no ESP32 e verifique se está funcionando corretamente.
Configuração do Node-RED:
- Instale o Node-RED no servidor Ubuntu seguindo as instruções do site oficial.
- Abra o Node-RED no navegador e crie um novo fluxo.
- Adicione nodes MQTT para receber as mensagens enviadas pelo ESP32.
- Utilize nodes de processamento para extrair os dados dos tópicos MQTT e prepará-los para o armazenamento no banco de dados.
- Adicione nodes de banco de dados MySQL para conectar-se ao banco de dados e inserir os dados coletados.
- Configure corretamente as credenciais do banco de dados e as consultas SQL para criar tabelas e armazenar os dados.
- Adicione nodes de dashboard para criar interfaces gráficas que mostrem os dados em tempo real.
Configuração do banco de dados MySQL:
- Instale o servidor MySQL no servidor Ubuntu.
- Crie um novo banco de dados e tabelas correspondentes para armazenar os dados de temperatura e umidade.
- Certifique-se de que as credenciais do banco de dados no Node-RED estejam corretas e permitam a conexão com o MySQL.
Configuração da rede Wi-Fi:
- Verifique se todos os dispositivos (ESP32, servidor Ubuntu e computador com Node-RED) estão conectados à mesma rede Wi-Fi.
- Certifique-se de que a rede Wi-Fi esteja configurada corretamente e funcionando adequadamente.
Execução e Monitoramento:
- Inicie o Node-RED no servidor Ubuntu e verifique se o fluxo está sendo executado corretamente.
- Acesse o dashboard no Node-RED através do navegador para visualizar os dados de temperatura e umidade em tempo real.
- Ajuste os potenciômetros na protoboard para simular diferentes valores de temperatura e umidade e observe como os dados são atualizados no dashboard.
Com base nos materiais utilizados e no fluxo de trabalho descrito acima, foi possível implementar um sistema de monitoramento de temperatura e umidade em ambientes, simulando os sensores com potenciômetros e visualizando os dados em tempo real no dashboard do Node-RED.
Resultados alcançados:
-Implementação bem-sucedida do sistema, com todos os componentes funcionando corretamente.
- Monitoramento em tempo real da temperatura e umidade.
- Visualização intuitiva dos dados por meio de um dashboard no Node-RED.
- Dashboard node-red:
- Armazenamento persistente dos dados em um banco de dados MySQL:
- Sistema confiável e estável durante todo o período de monitoramento.
- Potencial de escalabilidade para futuras expansões e melhorias.
Em resumo, o projeto obteve sucesso ao desenvolver um sistema funcional e eficiente para monitorar e visualizar a temperatura e umidade em ambientes, proporcionando informações em tempo real e facilitando a análise dos dados coletados.
Conclusão:
O projeto de monitoramento de temperatura e umidade em ambientes foi concluído com sucesso. Através da análise cuidadosa dos requisitos, seleção adequada dos componentes e configuração correta do ambiente de desenvolvimento, conseguimos implementar um sistema funcional e eficiente.
Utilizando a protoboard, potenciômetros, ESP32, Arduino IDE, Node-RED, protocolo MQTT, MySQL e o servidor Ubuntu, conseguimos adquirir os dados dos sensores simulados, estabelecer a comunicação Wi-Fi e enviar os dados para o servidor. A configuração do ambiente do servidor, com Mosquitto como broker MQTT e MySQL como sistema de gerenciamento de banco de dados, permitiu o armazenamento seguro e o acesso aos dados coletados.
Graças ao Node-RED, foi possível criar um dashboard intuitivo e interativo para visualizar os dados em tempo real, com gráficos e tabelas representativas. A integração com o banco de dados MySQL garantiu a persistência dos dados, possibilitando análises futuras.
O projeto demonstrou a viabilidade e eficácia do monitoramento de temperatura e umidade em ambientes, utilizando tecnologias como ESP32, MQTT, MySQL e Node-RED. Os resultados alcançados confirmaram a importância do monitoramento preciso e em tempo real desses parâmetros, contribuindo para a tomada de decisões informadas e aprimoramento dos processos.
Com a conclusão bem-sucedida desse projeto, abre-se um leque de possibilidades para aplicar essa solução em diferentes cenários, contribuindo para a melhoria da qualidade e eficiência em diversas áreas, como agricultura, indústria e monitoramento ambiental.
[ID:134] Autor: - Criado em: 2023-05-20 19:19:09 - [ Compartilhar ]
(AICP) Automação Industrial com Controle de Processos
A Automação Industrial com Controle de Processos (AICP) é uma solução avançada e eficiente que tem transformado a indústria nos últimos anos. Com a utilização de tecnologias como o microcontrolador ESP32, o protocolo MQTT e a plataforma Node-RED, é possível criar um sistema inteligente que permite automatizar e controlar processos industriais de forma precisa e otimizada.
O ESP32, um microcontrolador poderoso e versátil, é ideal para projetos de Automação Industrial. Com sua capacidade de processamento e conectividade Wi-Fi e Bluetooth, o ESP32 é capaz de receber e processar informações provenientes de sensores e atuar em atuadores para controlar máquinas e processos industriais.
Na implementação da AICP, é possível utilizar o ESP32 em conjunto com o protocolo MQTT. O MQTT é um protocolo de comunicação leve e eficiente, ideal para aplicações IoT, que permite a troca de mensagens entre dispositivos de forma assíncrona. O ESP32 pode publicar informações e receber comandos através do MQTT, facilitando a integração e o controle dos processos industriais.
O Node-RED é uma plataforma de desenvolvimento visual que permite a criação de fluxos de automação de forma intuitiva. Com o Node-RED, é possível configurar nós MQTT para receber e enviar mensagens, processar dados, realizar análises e tomar decisões com base nas informações coletadas pelos sensores. Essa plataforma oferece uma interface gráfica amigável, facilitando a configuração e a personalização dos fluxos de automação industrial.
A integração do ESP32, MQTT e Node-RED na AICP possibilita a criação de um sistema de automação industrial completo e inteligente. Os sensores conectados ao ESP32 podem coletar dados em tempo real sobre temperatura, pressão, fluxo, entre outros, e enviar essas informações para o Node-RED através do MQTT. No Node-RED, é possível processar esses dados, acionar atuadores e realizar o controle dos processos industriais com base em algoritmos de controle avançados.
Com a AICP, é possível obter uma automação industrial mais eficiente, precisa e flexível. Através da integração do ESP32, MQTT e Node-RED, é possível otimizar o controle dos processos industriais, monitorar e analisar dados em tempo real, realizar ajustes automáticos e tomar decisões mais informadas para melhorar a eficiência operacional e a qualidade dos produtos.
Conclusão: a Automação Industrial com Controle de Processos (AICP), utilizando o ESP32, Node-RED, MQTT e IoT, é uma solução avançada que proporciona maior eficiência e precisão no controle dos processos industriais. A integração dessas tecnologias oferece uma automação mais inteligente, possibilitando a coleta de dados em tempo real, análises avançadas e a tomada de decisões mais informadas para otimizar a produção industrial.
[ID:133] Autor: - Criado em: 2023-05-20 19:18:35 - [ Compartilhar ]
(ARCV) Automação Residencial com Controle por Voz.
A automação Residencial com Controle por Voz (ARCV) é um dos conceitos mais promissores da Internet das Coisas (IoT) nos últimos anos. Com a combinação da plataforma ESP32, o protocolo MQTT e o Node-RED, podemos criar um sistema inteligente que permite controlar dispositivos domésticos por meio de comandos de voz.
O ESP32, um microcontrolador poderoso e versátil, é ideal para esse tipo de projeto. Com sua capacidade de processamento e conectividade Wi-Fi e Bluetooth, o ESP32 pode receber comandos de voz e processá-los para ativar ações específicas.
Para implementar a ARCV, podemos utilizar um módulo de reconhecimento de voz compatível com o ESP32. Esse módulo será responsável por capturar os comandos de voz do usuário e convertê-los em dados digitais compreensíveis pelo microcontrolador.
Ao receber um comando de voz, o ESP32 irá processar a informação e publicar uma mensagem MQTT em um tópico específico. Essa mensagem conterá as instruções para executar a ação correspondente, como acender ou apagar luzes, regular a temperatura do ambiente, abrir ou fechar cortinas, entre outras possibilidades.
No Node-RED, podemos configurar um nó MQTT de entrada para se inscrever no tópico onde as mensagens MQTT são publicadas pelo ESP32. Assim que uma mensagem é recebida, podemos definir uma lógica de fluxo para interpretar o comando e acionar os dispositivos ou sistemas adequados.
Além disso, o Node-RED oferece uma interface gráfica intuitiva para criar regras mais complexas. Podemos adicionar nós de reconhecimento de voz adicionais para aprimorar a capacidade de compreensão do sistema, permitindo comandos mais sofisticados e personalizados.
A Automação Residencial com Controle por Voz (ARCV) é uma aplicação inovadora da IoT que proporciona comodidade e praticidade aos usuários. Com a utilização do ESP32, MQTT e Node-RED, é possível criar um sistema inteligente que permite controlar dispositivos e sistemas domésticos por meio de comandos de voz.
A implementação da ARCV traz uma nova dimensão de interação com a automação residencial, tornando-a mais intuitiva e acessível. Comandos simples e naturais podem ser usados para controlar luzes, temperatura, cortinas e outros dispositivos, proporcionando um ambiente mais confortável e personalizado.
A combinação do ESP32, MQTT e Node-RED permite uma integração fácil e flexível entre os dispositivos, proporcionando uma experiência de automação residencial completa e inteligente. Com a ARCV, a voz do usuário se torna a ferramenta principal para controlar o ambiente doméstico, tornando-o mais eficiente e adaptado às necessidades individuais.
[ID:132] Autor: - Criado em: 2023-05-20 18:54:58 - [ Compartilhar ]
Detecção de Vazamento de Gás
A aplicação de Internet das Coisas (IoT) consiste em um sistema completo para detecção de vazamento de gás, utilizando um dispositivo NodeMCU (como o ESP32 ou ESP8266) para o envio e recebimento de comandos de um servidor na nuvem. Esse sistema envolve o desenvolvimento do backend, do dashboard e a integração com um banco de dados.
No backend, foi utilizada uma arquitetura baseada em nuvem para receber e processar os comandos enviados pelos dispositivos NodeMCU. Para isso, foi criada uma API (Interface de Programação de Aplicativos) que recebe os dados de detecção de vazamento e realiza o processamento necessário. Essa API pode ser desenvolvida utilizando tecnologias como Node.js, Python ou outras linguagens de programação adequadas para o contexto.
Os dispositivos NodeMCU são configurados para monitorar constantemente a presença de gás no ambiente. Eles estão equipados com sensores de gás capazes de detectar concentrações perigosas e, quando identificado um vazamento, enviam um sinal para o servidor na nuvem através de uma conexão de internet sem fio (Wi-Fi). Essa comunicação pode ser realizada utilizando o protocolo como MQTT.
O servidor na nuvem recebe os dados dos dispositivos NodeMCU e realiza o processamento necessário. Isso pode incluir a análise dos níveis de concentração de gás, a verificação de alarmes, o acionamento de notificações para os usuários e outras ações pertinentes ao sistema de detecção de vazamento de gás.
Além do backend, foi desenvolvido um dashboard para apresentar as informações coletadas de forma visual e amigável aos usuários. Esse dashboard pode ser acessado por meio de um aplicativo móvel ou de uma interface web, permitindo que os usuários monitorem em tempo real os níveis de gás, recebam alertas e visualizem históricos de detecção de vazamento.
Para garantir a persistência e o armazenamento dos dados, integramos um banco de dados ao sistema. O banco de dados é responsável por armazenar as informações coletadas pelos dispositivos NodeMCU e permitir consultas e análises posteriores. Nesse projeto, o sistema de gerenciamento de banco de dados que será utilizado é o MySQL.
Em resumo, o desenvolvimento dessa aplicação de IoT para detecção de vazamento de gás envolve a criação de um backend baseado em nuvem, a configuração dos dispositivos NodeMCU para envio de dados, a integração com um banco de dados para armazenamento das informações e a criação de um dashboard para visualização dos dados pelos usuários. Essa solução permite o monitoramento em tempo real, o recebimento de alertas e o controle eficiente de possíveis vazamentos de gás.
PROJETO
1. Introdução
A detecção de vazamentos de gás é de extrema importância para garantir a segurança dos ambientes domésticos e prevenir acidentes graves, como explosões e incêndios. Por isso, o objetivo deste projeto é simular a detecção de vazamento de gás natural e GLP em uma cozinha de restaurante, utilizando uma ESP32 e um potenciômetro.
2. Materiais
- ESP32: Ideal para projetos de IoT (Internet das Coisas). Foi utilizado para ler os dados do potenciômetro e enviar as informações do vazamento de gás.
- Potenciômetro: Um dispositivo simples que foi usado como simulador de vazamento de gás. Ele permitiu o controle manual da quantidade de "vazamento" simulada.
- Instância EC2 do servidor Ubuntu: É uma máquina virtual fornecida pela Amazon Web Services (AWS), com sistema operacional Ubuntu instalado. Foi utilizada para hospedar o servidor que recebeu os dados enviados pelo ESP32.
- Banco de dados RDS MySQL: É um serviço de banco de dados relacional também oferecido pela AWS. Foi usado para armazenar os dados do vazamento de gás, e permitiu o acesso e análise posterior.
- Protocolo de comunicação MQTT: É um protocolo leve de mensagens usado para comunicação entre dispositivos IoT. Foi utilizado para a troca de dados entre o ESP32 e o servidor.
- Aplicação e Dashboard no Node-RED: O Node-RED é uma plataforma de desenvolvimento visual que facilita a criação de fluxos de dados para IoT. Foi usado para criar uma aplicação e um dashboard que recebeu os dados do vazamento de gás, e os exibiu de forma intuitiva e permitiu a monitorização em tempo real.
3. Configuração
4. Desenvolvimento do Código no ESP32
A programação foi feita por meio do Arduino IDE, e seguiu os seguintes passos:
Inclusão das bibliotecas necessárias para a configuração e conexão Wi-Fi, e para a comunicação MQTT:
Definição das constantes:
Função setup: faz a conexão com a rede Wi-Fi e a configuração do servidor MQTT
Função loop():
- Lê os valores analógicos dos pinos conectados aos potenciômetros, que simulam os níveis de vazamento de gás.
- Calcula a porcentagem de vazamento de gás com base nos valores lidos.
- Converte os valores em strings.
- Exibe os valores lidos no monitor serial para fins de depuração.
- Publica os valores dos níveis de gás nos respectivos tópicos MQTT.
- Aguarda 1 segundo antes de repetir o loop.
5. Configuração e Desenvolvimento no Node-RED
No Node-RED, foi criado um fluxo para receber os dados MQTT do ESP32, configurado os nós MQTT para receber e processar os dados corretamente, e desenvolvido os nós necessários para exibir as informações do vazamento de gás em um dashboard.
Depois, os dados foram armazenados no banco de dados MySQL.
Na primeira parte, o fluxo começa com um nó "mqtt in", que é responsável por receber mensagens do tópico MQTT. O valor da mensagem recebida é armazenado na variável "sensorValuegas_natural" presente na primeira função “Turn On LED”.
Nessa função, há uma estrutura condicional "if-else" que verifica se o valor do sensor (sensorValuegas_natural), e é utilizada para controlar dispositivo de LED referente ao gás natural. Se o valor for maior que 20% do Limite Inferior de Explosividade, o LED da dashboard será acionado.
Na segunda parte, acontece o mesmo, mas a mensagem é armazenada na variável “sensorValuegas_petroleo”. E, caso ultrapasse 25% do limite inferior de explosividade, o segundo LED é acionado.
Além disso, para cada variável, há um gráfico de linha que mostra a variação da porcentagem de gás com o tempo, e um medidor de vazamento de gás em porcentagem.
Esse trecho de código basicamente extrai os valores recebidos pelos nós MQTT, e os armazena em uma variável chamada gas_natural e gas_petroleo e, em seguida, atribui esses valores à propriedade msg.gas_natural e msg.gas_petroleo Em seguida, os objetos msg modificados retornam para continuar o fluxo no Node-RED e são inseridos no banco de dados.
Na primeira parte desse trecho, são selecionados os dados referentes às porcentagem de gás natural e GLP para serem plotadas no gráfico que exibe a variação dessas duas variáveis com o tempo. Na segunda parte, são selecionados todos os valores do banco de dados para serem exibidos em uma tabela. E, a última parte, deleta dados do banco de dados.
6. Conclusão
Por fim, esses dados foram exibidos de forma clara em uma dashboard.
[ID:131] Autor: - Criado em: 2023-05-20 02:27:04 - [ Compartilhar ]
Instalando MongoDB no Ubuntu
A sequência de instalação segue a documentação do MongoDB e o passo a passo é ilustrado neste vídeo.
Importe a chave pública usada pelo sistema de gerenciamento de pacotes.
Em um terminal, instale o gnupg se ainda não estiver disponível:
sudo apt-get install gnupg
Emita o seguinte comando para importar a chave GPG pública do MongoDB de https://pgp.mongodb.com/server-6.0.asc :
curl -fsSL https://pgp.mongodb.com/server-6.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg --querido
[ID:130] Autor: - Criado em: 2023-05-19 13:18:05 - [ Compartilhar ]
Detector de presença do celular de Luiz
Nos últimos anos, a Internet das Coisas (IoT) tem se tornado uma tendência crescente, possibilitando a conexão de dispositivos do cotidiano à internet, trazendo praticidade e automação para diversas áreas. Neste texto, vamos explorar a criação de um detector IoT que utiliza a plataforma ESP32, o protocolo MQTT e o Node-RED para detectar o celular do Luiz Eduardo, um aluno do curso.
Desenvolvimento: O ESP32 é um microcontrolador poderoso e versátil amplamente utilizado no desenvolvimento de projetos IoT. Ele combina capacidade de processamento, conectividade Wi-Fi e Bluetooth, e pode ser programado com a linguagem Arduino IDE, o que o torna uma excelente escolha para nosso projeto.
O protocolo MQTT (Message Queuing Telemetry Transport) é um protocolo leve de troca de mensagens projetado para comunicação entre dispositivos IoT. Ele funciona em um modelo de publicação/assinatura, onde os dispositivos enviam mensagens para tópicos específicos e outros dispositivos podem se inscrever nesses tópicos para receber as mensagens.
Para implementar nosso detector celular por meio da leitura de comunicação bluetooth, podemos utilizar um sensor de proximidade conectado ao ESP32. Quando o sensor detectar a presença de um objeto próximo, indicando que o celular do Luiz Eduardo está próximo, o ESP32 irá publicar uma mensagem em um tópico MQTT específico.
Em seguida, podemos usar o Node-RED, uma ferramenta de programação visual baseada em fluxos, para receber as mensagens MQTT e executar ações com base nelas. No Node-RED, podemos configurar um nó MQTT de entrada para se inscrever no tópico em que o ESP32 publica as mensagens. Assim que uma mensagem for recebida, podemos definir uma ação, como acionar um alarme sonoro ou enviar uma notificação para um aplicativo no celular do Luiz Eduardo.
O Node-RED também oferece uma interface gráfica intuitiva para criar regras e interações mais complexas. Podemos adicionar lógica adicional, como acionar um registro de presença em um banco de dados, enviar um e-mail ou até mesmo ligar luzes automaticamente quando o celular do Luiz Eduardo for detectado pelo ESP32.
Conclusão: Com a combinação do ESP32, MQTT e Node-RED, é possível criar um detector IoT para detectar o celular do Luiz Eduardo de forma eficiente. Através do sensor de proximidade conectado ao ESP32, podemos publicar mensagens MQTT que serão recebidas e processadas pelo Node-RED. Isso permite uma variedade de ações personalizadas, como acionar alarmes, enviar notificações ou executar automações específicas quando o celular for detectado. A implementação dessa solução pode trazer praticidade e segurança ao ambiente do curso, permitindo que o Luiz Eduardo seja identificado de forma automática e precisa.
[ID:129] Autor: - Criado em: 2023-05-17 22:49:58 - [ Compartilhar ]
Banco de dados para IoT: Mongodb ou Mysql
Tanto o MongoDB quanto o MySQL são bancos de dados populares e amplamente utilizados em projetos de IoT. Aqui estão algumas das vantagens e desvantagens de cada um deles:
MongoDB: Vantagens:
- Esquema flexível: o MongoDB é um banco de dados NoSQL, o que significa que ele é mais flexível em relação à definição do esquema de dados. Isso torna mais fácil trabalhar com dados estruturados e não estruturados, o que é uma vantagem em muitos projetos de IoT.
- Escalabilidade: O MongoDB é altamente escalável, com a capacidade de lidar com grandes quantidades de dados e um grande número de conexões simultâneas. Isso é importante em projetos de IoT, onde muitos dispositivos podem estar enviando dados ao banco de dados ao mesmo tempo.
- Consultas rápidas: o MongoDB é projetado para ser rápido, com consultas que podem ser executadas em segundos ou menos, mesmo em grandes conjuntos de dados. Isso é importante em projetos de IoT, onde é necessário acessar rapidamente os dados enviados pelos dispositivos.
Desvantagens:
- Requer mais recursos: o MongoDB é geralmente mais intensivo em recursos do que o MySQL e pode exigir mais recursos do sistema para executar.
- Menor adoção: o MongoDB é menos comum do que o MySQL e pode ser mais difícil encontrar suporte e recursos de aprendizado.
MySQL: Vantagens:
- Suporte robusto: o MySQL é amplamente utilizado em todo o mundo e possui uma grande comunidade de usuários e desenvolvedores, o que significa que há muitos recursos e suporte disponíveis.
- Escalabilidade: O MySQL é escalável e pode lidar com grandes quantidades de dados e muitas conexões simultâneas, o que é importante em projetos de IoT.
- Confiabilidade: o MySQL é conhecido por ser confiável e estável em condições de carga pesada, o que é importante em projetos de IoT, onde há muitos dispositivos enviando dados ao banco de dados.
Desvantagens:
- Esquema rígido: o MySQL é um banco de dados relacional, o que significa que ele exige um esquema rígido para a definição dos dados. Isso pode dificultar a inclusão de dados não estruturados em projetos de IoT.
- Desempenho: o MySQL pode ser um pouco mais lento do que o MongoDB em certas situações, especialmente em grandes conjuntos de dados e em consultas mais complexas.
Em resumo, o MongoDB pode ser mais adequado para projetos de IoT que envolvem grandes quantidades de dados não estruturados e precisam de uma alta escalabilidade. Por outro lado, o MySQL pode ser mais adequado para projetos de IoT que precisam de um esquema rígido e confiabilidade comprovada. No entanto, a escolha entre eles depende do projeto específico e das necessidades do negócio.
[ID:128] Autor: - Criado em: 2023-05-06 16:14:47 - [ Compartilhar ]
Serviços em Nuvem (Cloud)
Os serviços de tecnologia em cloud(nuvem) podem ser muito úteis para o desenvolvimento de sistemas embarcados e Internet das Coisas (IoT). Os sistemas embarcados são computadores dedicados a uma função específica, como um termostato inteligente ou um sistema de controle de segurança, e muitas vezes são limitados em recursos de processamento e armazenamento. Com o uso de serviços cloud, é possível armazenar dados coletados por esses dispositivos em servidores em nuvem, realizar análises em tempo real e fornecer atualizações de software remotamente.
Os serviços de tecnologia em cloud fornecem três modelos que podem resolver nossos problemas de negócios. A seguir está uma lista de serviços de tecnologia em nuvem.
- Platform as a Service (PaaS)
- Infrastructure as a Service (IaaS)
- Software as a Service (SaaS)
PaaS (Plataforma como Serviço) é um modelo de serviço em nuvem em que os provedores de nuvem oferecem uma plataforma completa para que os desenvolvedores possam criar, testar, implantar e gerenciar aplicativos em nuvem. Os desenvolvedores podem usar ferramentas de desenvolvimento baseadas em nuvem e ambientes de execução, bem como serviços de banco de dados e gerenciamento de recursos. Com o PaaS, os desenvolvedores podem se concentrar no desenvolvimento de aplicativos sem se preocupar com a infraestrutura subjacente.
IaaS (Infraestrutura como Serviço) é um modelo de serviço em nuvem em que os provedores de nuvem oferecem recursos de infraestrutura, como servidores virtuais, armazenamento, redes e sistemas operacionais, aos clientes. Os clientes podem usar esses recursos para implantar e executar seus próprios aplicativos e serviços em nuvem, sem precisar gerenciar a infraestrutura física subjacente. Com o IaaS, os clientes têm controle total sobre a configuração e o gerenciamento de seus recursos em nuvem.
SaaS (Software como Serviço) é um modelo de serviço em nuvem em que os provedores de nuvem oferecem aplicativos de software baseados em nuvem para os clientes. Os clientes podem acessar e usar esses aplicativos por meio de um navegador da web ou de um aplicativo móvel, geralmente pagando uma taxa de assinatura mensal ou anual. Com o SaaS, os clientes não precisam instalar ou manter o software em seus próprios computadores ou dispositivos móveis, e as atualizações são feitas automaticamente pelo provedor de nuvem.
Companhias e outros serviços para IoT
[ID:127] Autor: - Criado em: 2023-04-28 11:56:12 - [ Compartilhar ]
Troca de mensagens em formato Json
JSON (JavaScript Object Notation) é um formato de dados leves e muito utilizado para troca de informações entre sistemas em aplicações web. Ele é baseado em um subconjunto da linguagem JavaScript e é facilmente legível por humanos e por computadores.
O JSON é um protocolo que permite a transferência de dados entre sistemas de forma estruturada. Ele utiliza uma sintaxe simples e padronizada para representar objetos e dados, como strings, números, booleanos, listas e dicionários.
O JSON é amplamente utilizado em aplicações web, principalmente em serviços de API (Application Programming Interface) para troca de dados entre diferentes sistemas, como aplicações web e mobile. Ele é uma alternativa popular para o protocolo XML, por ser mais fácil de ler e escrever, além de ser mais leve e eficiente.
Exemplos de aplicação:
<?php
$url = 'https://olinda.bcb.gov.br/olinda/servico/PTAX/versao/v1/odata/CotacaoDolarDia';
$data = file_get_contents($url);
$json = json_decode($data);
$cotacao = $json->value[0]->cotacaoVenda;
echo "Cotação do dólar: R$ " . $cotacao;
?>
Nesse código, a função file_get_contents
é utilizada para obter os dados da API do Banco Central. Em seguida, a função json_decode
é utilizada para transformar os dados em um objeto PHP. Finalmente, o valor da cotação é extraído do objeto e exibido na tela.
[ID:126] Autor: - Criado em: 2023-03-27 21:35:14 - [ Compartilhar ]
Protocolo UDP
O que é o Protocolo UDP?
A internet no geral se baseia em fazer uma requisição de dados e responde-los, um exemplo disso é o usuário escrever na área de pesquisa (requisição) do youtube e depois eles responderem (resposta) ao pedido do usuário. Para descrever os passo-a-passo de como funciona as requisições, preicisa ter o conhecimento que existem diversos modelos que descrevem regras (protocolos) por tras dos processos (passos). O modelo´de arquitetura que utiliza o UDP é o TCP/IP, na qual o mesmo possui 5 camadas.
A camada em que utiliza o UDP é a camada de transporte, ela é a camada responsável pelo transporte de dados entre diferentes máquinas/equipamentos, além do protocolo UDP existe tambem nessa camada o protocolo TCP. A figura 1 estará representando as camadas existentes na arquitetura TCP/IP.
Figura 1: Modelo de arquitetura TCP/IP
Para explicar melhor o protocolo UDP vamos falar antes sobre o TCP. Ele é um protocolo voltado á conexão que tenha por garantia a segurança, integridade e ordem dos dados enviados, logo se fosse utilizado essse protocolo dentro de um microcontrolador ele enviaria os dados com muita segurança, mas para que essa segurança aconteça precisa seguir alguns passos que possibilitam isso, logo para manter essa confiabilidade os dados o TCP utiliza a ferramenta _three way handshake_ (aperto de mão de três vias), tambem conhecida como SYN,SYN-ACK,ACK. O funcionamento acontece quando o segundo host (máquina/servidor/microcontrolador) recebe um pacote e responde com a confirmação do sincronização (SYNchronize-ACKnowledgment), já o primeiro host, para finalizar, manda uma confirmação (ACKnowledge) para o segundo, assim estabelecendo a conexão. Por causa disso o TCP tambem é conhecido como conexão de ponto-a-ponto, comumente chamados de servidor e cliente. É interessante notar que o TCP permite o envio simultâneo de dados de ambos os pontos ao outro, durante todo o fluxo de comunicação. Desse modo, o TCP é ideal para casos em que a confiabilidade dos dados é essencial, como quando se trata de mensagens de texto, entretanto, por existir muitos passos para efetuar essa comunicação ela acaba sendo mais lenta. A figura 2 mostrará o tree way handshake.
Figura 2: Tree way handshake
Agora que foi falado do TCP, tem-se a base para falar do UDP. O UDP tem um requisito que é, não ter falta de confiablidade, isso significa que por meio da utilização desse protocolo, quando for enviado os dados de uma máquina à outra, não existirá a garantia de que os dados enviados chegarão intactos e na ordem correta, além de que esse protocolo não usa a ferramenta handshake, logo ele não necessita estabelecer uma cominicação. Mesmo parerendo um problema a falta de confiabilidade, tem-se um grande ponto positivo nisso, que é a grande velocidade que esse protocolo tem. Isso é o que diferencia o UDP para com o TCP, um tem confiabilidade, mas a resposta é mais lenta, o outro não tem confiabilidade, mas tem uma resposta muito rápida.
Conclui-se que não existe um protocolo melhor ou pior, mas com aplicabilidades difentes. O TCP é utilizado para transporte de texto, já o UDP é muito utilizado em jogos (em que é normal alguns bytes se perderem na comunicação,mas que é sempre importante que a aplicação continue rodando com rapidez sem se importar tanto com as perdas e falhas, para que não ocorra o famigerado lag).
Referencias:
https://www.alura.com.br/artigos/quais-as-diferencas-entre-o-tcp-e-o-udp?gclid=Cj0KCQjw2MWVBhCQARIsAIjbwoPocuANLmBaoutN_sI0GXgwj5OQvs_jjYGQiQePC7ScjE2dMKo7Y20aAj1XEALw_wcB
https://blog.betrybe.com/desenvolvimento-web/udp-diferencas-tcp/
http://www.bosontreinamentos.com.br/redes-computadores/12-diferencas-entre-os-protocolos-tcp-e-udp/
http://www.bosontreinamentos.com.br/redes-computadores/curso-de-redes-protocolo-udp-user-datagram-protocol/
https://secbitrez.wordpress.com/2018/08/04/tcp-three-way-handshake/
https://materialpublic.imd.ufrn.br/curso/disciplina/4/19/6/9
[ID:122] Autor: - Criado em: 2022-06-29 22:45:58 - [ Compartilhar ]
Trabalho LoraWAn
LoRa é uma tecnologia de comunicação sem fio para longa distancias e baixo consumo de energia para isso ela usa ondas de rádio, sendo implementada em estruturas de dispositivos iot a bateria ou a uma fonte de energia.
estabelecida em 2015 a lora aliance desenvolve o lorawan, o protocolo de comunicação usado pelos dispositivos lora.
Em sua estrutura existem:
End Devices: sensores ou atuadores enviam mensagens sem fio moduladas para os gateways ou recebem mensagens sem fio de volta dos gateways, essa comunicação usa o protocolo lorawan
Gateways - receba mensagens de dispositivos finais e as encaminhe para o Network Server em um novo protocolo
Network Server: um software executado em um servidor que gerencia toda a rede
Application servers: um software executado em um servidor responsável pelo processamento dos dados para os aplicativos
frequências regionais
a lora aliance determina frequências licenciadas para a comunicação dos dispositivos lora em cada pais.
Channel Plan |
Common Name |
EU863-870 |
EU868 |
US902-928 |
US915 |
CN779-787 |
CN779 |
EU433 |
EU433 |
AU915-928 |
AU915 |
CN470-510 |
CN470 |
AS923 |
AS923 |
KR920-923 |
KR920 |
IN865-867 |
IN865 |
RU864-870 |
RU864 |
lora classes
esses dispositivos por serem half duplex não podem enviar e receber dados ao mesmo tempo, podendo realizar apenas uma ação de cada vez, as maneiras como esses métodos de recebimento de dados são divididos em 3 classes
classe A: com o menor consumo de energia mas apenas abre uma( ou duas dependendo da configuração) janelas de tempo (rx) para receber informações do gateway logo após realizar o uplink
classe B: abre janelas pre determinadas em momentos específicos essas janelas são agendadas pelo próprio gateway
classe c: mantem a comunicação sempre aberta para comunicação, porem consome mais energia que as outras classes
Referencias
https://www.thethingsnetwork.org/docs/lorawan/
https://consultimer.com/o-que-e-lora-conheca-a-tecnologia-de-radiofrequencia-de-longo-alcance/
https://lora-alliance.org/
https://www.researchgate.net/figure/Graphical-description-of-the-three-LoRaWAN-classes_fig1_351889574
[ID:120] Autor: - Criado em: 2022-06-29 19:42:36 - [ Compartilhar ]
Sigfox
Definição
A SigFox foi desenvolvida por uma empresa francesa, que leva o mesmo nome, com o intuito de conectar todos os objetos do mundo físico ao universo digital. A SigFox trata-se de uma rede global dedicada à Internet das Coisas (IoT), baseada em baixo consumo de energia, longo alcance e dados que oferecem um serviço de conectividade de ponta a ponta.
Princípios da tecnologia
Ultra-Narrow Band (UNB):
A rede Sigfox usa a técnica de Ultra-Narrow Band para a transmissão de mensagens. Esta técnica usa canais de 100Hz de largura de banda nas regiões ETSI e ARIB (Europa, Japão), e de 600Hz na região FCC (Américas, Oceania).
Figura 1 – A rede Sigfox é baseada em Ultra-Narrow Band
A tecnologia Ultra Narrow Band se caracteriza por um uso ótimo da potência disponível, o que permite que os dispositivos Sigfox se comuniquem por longas distâncias de forma confiável, mesmo em canais com interferências e ruídos.
A faixa de frequência utilizada depende da região. Na Europa, por exemplo, é usada a faixa entre 868 e 868,2 MHz. Já no resto do mundo é usada a faixa entre 902 e 928 MHz, havendo restrições de acordo com a regulamentação local.
Acesso Aletório ao Canal / Diversidade
O acesso aleatório é um recurso fundamental para alcançar uma alta qualidade de serviço, a transmissão não está sincronizada entre a rede e o dispositivo. O dispositivo envia a mensagem em uma frequência aleatória e em seguida envia 2 réplicas em diferentes frequências e tempo, criando diversidade de tempo e frequência. Esta diversidade aumenta muito a resistência do sistema a interferências pois uma mesma mensagem tenta vários “caminhos” – frequências e tempos diferentes para garantir a recepção bem-sucedida da mensagem.
Figura 2 – Salto de frequência nas repetições (ETSI)
Recepção cooperativa
Na recepção cooperativa um objeto não está vinculado a uma estação base específica, ao contrário dos protocolos celulares. A mensagem emitida é recebida por uma estação base próxima e, em média, o número de estações base é de 3. Isso é chamado de “diversidade espacial”. Diversidade espacial, juntamente com a diversidade de tempo e frequência das repetições, são os principais fatores por trás da alta qualidade de serviço da rede Sigfox.
Figura 3 – Mensagem recebida por múltiplas estações base Sigfox
Mensagens Pequenas
Para atender as restrições de autonomia de bateria e custo dos objetos conectados, o protocolo Sigfox é otimizado para mensagens pequenas. O tamanho da mensagem vai de 0 a 12 bytes. Embora a princípio isto pareça pouco, com uma mensagem de até 12 bytes é o suficiente para a maioria das aplicações de IoT para objetos simples. Com 132 Bytes é possível enviar informações de sensores, eventos, coordenadas de GPS e dados da aplicação.
Tabela 1 – Exemplos de mensagens
Mensagem | Tamanho da mensagem |
Coodenada GPS | 6 byte complete, muito menos se delta da última posição completa |
Temperatura | 10 bits (de -40 a +105 com 0,1C de precisão) |
Velocidade | 1 byte - 0 a 255Km/h |
Stats do Objeto | 1 bit |
Keep Alive | 0 bytes |
Principais características da rede Sigfox
Visão geral da arquitetura de rede:
A rede Sigfox possui uma arquitetura horizontal e estreita, composta por 2 camadas principais:
Figura 4 – Arquitetura da rede Sigfox
Visão geral da arquitetura de rede
A camada Network Equipment consiste essencialmente em estações base responsáveis pelo recebimento das mensagens enviadas pelos dispositivos e envio das mesmas para a camada Sigfox Support Systems. A camada Sigfox Support System constitui a rede principal sendo encarregada de processar as mensagens e enviá-las através de callbacks para o sistema do cliente. A camada Sigfox Support System inclui módulos e recursos que são essenciais para garantir a implantação, operação e o monitoramento da rede, como o sistema de suporte empresarial para pedidos e cobranças, e suporte de rádio para garantir o bom funcionamento da rede. A comunicação entre as camadas é feita através da Internet por uma conexão VPN.
Arquitetura de rede plana
A arquitetura plana da rede Sigfox é a chave para reduzir os custos de investimentos e operacional. O Software Defined Radio (SDR) Sigfox ajuda a reduzir os custos das estações base e a aumentar sua flexibilidade. Nesta arquitetura a operadora Sigfox – no Brasil a WND – entrega aos seus parceiros as camadas de rede intermediárias prontas para uso. Cabe ao desenvolvedor a criação da aplicação na nuvem e a escolha ou criação dos dispositivos que pretende usar. Não há necessidade de se preocupar com a compra de gateways, sua instalação e manutenção planejamento de RF, contratação e estabelecimento de backhaul, criação de um servidor para receber mensagens em tempo real, etc.
Figura 5 – Arquitetura plana
Alta capacidade de rede
A rede Sigfox possui uma alta capacidade de rede permitindo a escala de bilhões de objetos conectados. Essa capacidade de rede são resultados dos seguintes fatores:
•A modulação ultra-narrow band tem o benefício de eficiência no espectro e resistente a interferências, enquanto toda a energia é concentrada em uma largura banda muito pequena;
•Diversidade de tempo e frequência, introduzida pelo acesso aleatório;
•Diversidade espacial devido às células de rede sobrepostas.
Figura 6 – Combinação de especificações Sigfox resulta em uma alta capacidade da rede
Outra vantagem é que a capacidade é a mesma independentemente do link de rádio, enquanto outras redes têm uma capacidade decrescente à medida que a qualidade do link de rádio piora:
Figura 7 – Capacidade de manutenção independentemente da qualidade do link de rádio
Alta eficiência energética
A alta eficiência energética permitida pela tecnologia Sigfox permite que os parceiros produzam chips que consomem de 10 mA a 50 mA durante a transmissão. Esse valor vai depender do chip utilizado. A figura a seguir exibe o consumo em durante a comunicação e tempo inativo:
Figura 8 – Baixíssimo consumo aumenta o tempo de bateria (região FCC)
Longo alcance
Uma das principais vantagens competitivas da tecnologia Sigfox está na grande cobertura possível e com um número relativamente pequeno de estações base. Esta vantagem deriva de:
•O “link budget” muito bom da tecnologia Sigfox. Ele indica quanto o sinal pode ser atenuado e ainda assim se ter uma recepção perfeita. Na tecnologia Sigfox o link budget é de 158dB, da mesma ordem de LTE e NB-IOT;
•A Taxa de dados propositalmente limitada a menos que 600bps aumenta a sensibilidade do receptor e a chance de uma recepção adequada; boa cobertura indoor, devido ao uso de banda sub-GHz.
Figura 9 – Link Budget Sigfox (região FCC)
Resiliência a interferências
A tecnologia Sigfox apresenta capacidades anti-jamming únicas, devido à robustez intrínseca da UNB, juntamente com a diversidade espacial das estações de base (+20 dB). A melhor prova da alta resiliência aos interferentes é a capacidade de transmitir apesar da presença de sinais de interferência. A modulação de banda ultra-estreita tem uma certa robustez intrínseca porque a sobreposição com o ruído é muito baixa. Para que uma mensagem seja recebida, o sinal deve ser pelo menos 8 dB acima do nível de ruído, conforme exibido na figura a seguir:
Figura 10 – Capacidades anti-jamming provida pela UNB
Segurança
Com base em sua experiência e suas parcerias, a Sigfox aplicou a segurança por princípios de design em todas as etapas de definição do seu protocolo e no desenvolvimento de sua infra-estrutura. Isso abrange a cadeia IoT completa, incluindo dispositivos, infraestrutura de rede e serviços baseados na nuvem:
Figura 11 – Segurança por padrão
Referências Bibliográficas
EMBARCADOS. Uma visão técnica da Rede SigFox. Disponível em: https://www.embarcados.com.br/uma-visão-tecnica-da-rede-sigfox/. Acesso em: 15 jun. 2022.
SIGFOX. Nossa História. Disponível em: https://www.sigfox.com/en/sigfox-story. Acesso em: 15 jun. 2022.
[ID:118] Autor: - Criado em: 2022-06-29 18:00:25 - [ Compartilhar ]
RESUMO
Para este projeto de integração e facilitação de gerenciamento de horários de alarmes em escolas (ou outra aplicação semelhante como turnos de escritórios e indústrias) foi desenvolvida uma interface onde é possível acionar, remotamente, o atuador que comanda a sirene, ligada à uma placa que condiciona o sinal para o alto-falante piezoelétrico. A conectividade e gerenciamento ficam à cargo de um ESP32, a programação foi realizada em IDE Arduino e NodeRED. O protocolo de comunicação escolhido foi o MQTT, via Wi-Fi disponível no campus e no local de testes/desenvolvimento.
OBJETIVO
O objetivo é permitir que o disparo da sirene seja automatizado com o preenchimento de um banco de dados com os horários que cada sirene deve ser acionada. Uma vez programado os dias e horários de cada sirene no banco, o disparo ocorrerá sem interferência do usuário, que também pode acionar manualmente fora dos horários programados e alterar o volume.
METODOLOGIA
O sistema, baseado em plataformas open source e open hardware, usa uma sirene piezoelétrica de central de alarme residencial, recuperada de sucata. Um protótipo foi elaborado e montado em placa de matriz de contatos, sendo acionada por módulo de relês comandado pelo ESP32. Recebendo o sinal de disparo ou no horário programado, o relê é acionado e a sirene é ligada por um tempo programado no ESP e desliga após esse tempo. O teste do sistema foi feito tanto pelo botão da interface para acionamento manual quanto usando horários programados. Os horários são baseados no horário GMT que é obtido da rede pelo ESP no momento da conexão.
CONCLUSÃO
O projeto se mostrou não só estável, mas também relativamente simples e barato para implementação e escalabilidade, permitindo que várias unidades operem concomitantemente na mesma rede ou até mesmo em redes diferentes, se houver necessidade, permitindo o uso em plantas industriais diferentes e o controle e programação de horários de turno por um RH central. Também é necessário destacar a agilidade em mudanças de horários que o sistema pode fornecer, diminuindo o custo com pessoal de monitoramento de horário e também para funções de segurança, como toques personalizados paca incêndios, terremotos, evacuações de emergência, perigos químicos, biológicos e outras ameaças, sendo uma ferramenta a favor da segurança e integridade física dos ocupantes dos locais de instalação.
[ID:115] Autor: - Criado em: 2022-06-29 16:06:32 - [ Compartilhar ]
Placa base Aster - Toradex
A Toradex é uma empresa suiça que projeta e desenvolve computadores em módulo (CoM) ou sistemas em módulo (SoM) juntamente com placas base e acessórios compatíveis para o mercado de sistemas embarcados. É uma empresa que fornece produtos e suporte gratuito.
Os produtos fornecidos pela empresa podem ser usados em diversas aplicações entre elas pode-se citar indústria robótica e de automação, assistência médica, transporte, veículos e agricultura, testes e medições e Smart city.
Dentre a gama de produtos existentas na empresa Toradex, aqui aborda-se a placa base Aster (Figura 1).
Figura 1: Placa base Aster
Fonte: TORADEX.
Esta é uma placa da família Colibri, na Toradex existem três famílias, possui pinos compatíveis com Arduino e Raspberry Pi, o que possibilita integração entre elas, logo o aproveitamento de projetos, por exemplo.
As maiores vantagens dessa placa se devem ao fato de ser uma placa robusta, podendo ser implementada em ambientes mais críticos, além de ter suporte técnico completo e gratuito fornecido pela empresa, possui também uma longa vida útil e uma plataforma escalável, ou seja, de migração rápida.
[ID:114] Autor: - Criado em: 2022-06-29 05:20:02 - [ Compartilhar ]
QUALIDADE DA ÃGUA POR CONDUTIVIDADE
Introdução
O monitoramento da qualidade de líquidos é um procedimento de extrema importância em indústrias, ou até mesmo em nossas casas. O projeto em questão visa realizar o monitoramento remoto de um recipiente controlado, medindo os valores de PPM(partículas por milhão) presentes e o nível de líquido utilizando sensores apropriados.
Para realizar as medições foi utilizado um sensor de nível de água analógico para o monitoramento no nível da água e um sensor TDS para as medições de condutividade da água.
O Sensor Módulo Medidor de Qualidade da Água TDS, tem a função de realizar as medições das impurezas encontradas na água. Segundo Ramalho (2009) a condutividade é definida como a capacidade de um material em conduzir corrente elétrica, sendo assim a capacidade de condução depende da presença de íons.
Este projeto tem em vista a montagem de um sistema de observação da qualidade da água armazenada em um reservatório, disponibilizando os dados na internet de forma acessível.
Metodologia
O servidor para a hospedagem e o banco de dados do servidor foi utilizado o servidor do AWS da amazon, através dos serviços do DuckDNS para a configuração do site.
Para a configuração do servidor e a instalação dos programas necessários, foi utilizado o programa do Windows Visual estúdio. Por meio dele houve a instalação e configuração do PHP, APACHE, Mysql, NodeRed.
A programação foi aplicada no microcontrolador por meio do programa Arduino configurando para o envio dos dados obtidos pelos sensores e os envia para o banco de dados.
Os dados obtidos são processados através do NodeRed que coleta os dados e os envia para a apresentação no layout do site.
O protótipo finalizado contará com o tanque para armazenagem da água, o recipiente terá duas válvulas, com intuito de abastecimento e drenagem.
Para a montagem do site foi utilizado do servidor AWS da amazon para a criação do servidor e o banco de dados para o armazenamento de dados.
O controle do sistema será realizado por uma malha fechada, que de acordo com Maya e Leonardi (2014) é caracterizado por um sistema de controle que impõe as condições das saídas de acordo com as variáveis de entrada. As variáveis de entrada do sistema são dadas pelo medidor de condutividade da água (TDS) e pelo sensor de nível da água.
Os dados obtidos serão processados através de um microcontrolador modelo ESP 32. O componente será programado para manter a água em um nível de turbidez aceitável, iniciando um processo de drenagem, até o esvaziamento completo do recipiente.
Resultados e Discussões
Tendo uma bancada de teste pronta juntamente a programação e o banco de dados, foram analisadas as amostras de água dentro de um reservatório com duas válvulas, entrada e saída, junto a um sensor de condutividade TDS.
Seus dados foram enviados para um banco de dados de um website web utilizando Node-RED e MQTT, mostrando os valores em um layout criado.
Conclusão
Tendo os conhecimentos da importância do uso cotidiano da água. Obteve-se um projeto que alcança as demandas de analisar a condutividade da água armazenada, assim comparando o nível de TDS para relatar se ela é própria de acordo com esse processo, de forma remota com o banco de dados online.
[ID:112] Autor: - Criado em: 2022-06-28 19:43:59 - [ Compartilhar ]
NB-IoT
O que é o NB-IoT?
O Narrowband Internet of Things (NB-IoT) que na tradução quer dizer Banda Estreita para Internet das Coisas é um padrão de tecnologia de conectividade sem fio criado pelo 3GPP (3rd Generation Partnership Project). Desenvolvido para oferecer uma boa conectividade, cabe a ele realizar a cobertura de grandes áreas, mas que não demandam um alto volume de transmissão de dados como é o caso das lavouras do agro.
Assim, o NB-IoT é conceituado como um padrão de tecnologia LPWAN (Low Power Wide Area Network) que permite uma ampla conexão de dispositivos e serviços, por imeio das redes móveis, como as redes 3G e 4G. Ele usa um espectro de frequência licenciado onde não há interferências com outros dispositivos, garantindo assim uma transferência de dados bem mais estáveis.
Com base nisso, ele foi projetado para que se pudesse trabalhar com dispositivos específicos que apresentavam algumas limitações: como poder de processamento, a vida útil da bateria e longas áreas.
Figura 1 - NB-IoT
Fonte: Enterprise IoT Insights (2019)
Funcionamento
O NB-IoT foi desenvolvido para operar usando bandas de espectro estreito de 180kHz ou 200kHz. Ele é resumidamente uma tecnologia de celular, ou seja, usa as bandas de celulares de comunicação, sendo projetado para operar de 3 maneiras diferentes:
- Usando a banda GSM para substituir implantações existentes (autônomo);
- Usando a banda LTE enquanto a compartilha (dentro da banda);
- Usando espaçamento entre os canais LTE para maximizar o espectro de comunicação (banda de guarda).
Uma vez que a conexão é estabelecida, o dispositivo mantém a conexão por um tempo configurável até que se torne nativo e se desconecta.
Funcionamento dos Dispositivos Habilitados para o NB-IoT
O dispositivo permanece desconectado da rede até que tenha dados para transmitir, então ele estabelece uma conexão com o NB-IoT, transmite os dados e desconecta. Quando conectado, o equipamento do usuário pode solicitar mais recursos e transmitir mais dados.
O NB-Iot também permite uma desconexão imediata logo que a confirmação dos dados é recebida.
Um exemplo de dispositivo é o Quectel BC95-G, que é um módulo NB-IoT certificado pela Telefônica (VIVO) de alto desempenho que suporta várias bandas de frequência.
Figura 2 - Módulo Quectel BC95-G
Fonte: Quectel
Vantagens
Algumas de suas vantagens são:
- Tecnologia de baixo custo;
- Funciona com um baixo consumo energético;
- Maior longevidade das baterias dos equipamentos;
- Permite a conexão de um númerosignificativo de equipamentos IoT;
- Cobertura de longo alcance, sendo por isso ideal para áreas agrícolas.
Desvantagens
Algumas das suas desvantagens são:
- Deve ser usado para enviar e receber pequenas quantidades de dados;
- Não é um protocolo de comunicação baseado em IP e por isso não pode ser utilizado em aplicações como de um smartphone comum;
- Indicada para ativos basicamente estáticos, como medidores ou sensores fixos em um local, já que os handoffs de rede e torre podem ser um problema.
Aplicações
Dentre suas aplicações estão:
- Transmitir dados e informações de sensores de temperatura, umidade e qualidade do ar/solo de forma eficaz e segura;
- Transmitir dados do monitoramento das variáveis internas de silos armazenadores de grãos;
- Georreferenciamento.
Referências
BLACKMAN, J. Três modelos de implantação de NB-IoT – e por que o desempenho de NB-IoT não é o que deveria ser. Enterprise IoT Insights, 2019. Disponível em: https://enterpriseiotinsights.com/20190718/channels/fundamentals/three-nb-iot-deployment-models. Acessado em: 21 jun. 2022.
BLOG CONECTARAGRO. NB-IoT: Veja como funciona e quais as suas características. 2021. Disponível em: https://blog.conectaragro.com.br/como-funciona-e-caracteristicas-do-nb-iot/. Acessado em: 21 jun. 2022.
BLOG CONECTARAGRO. NB-IoT: 4 recursos que você pode utilizar na sua lavoura. 2021. Disponível em: https://blog.conectaragro.com.br/nb-iot-4-recursos-que-voce-pode-utilizar/. Acessado em: 21 jun. 2022.
ENTERPRISE IOT INSIGHTS. Three NB-IoT deployment models – and why NB-IoT performance is not what it should be. 2019. Disponível em: https://enterpriseiotinsights.com/20190718/channels/fundamentals/three-nb-iot-deployment-models. Acessado em: 21 Jun. 2022.
NBIoT: Going where 2G, 3G, 4G can’t go. Realty & More Magazine. Disponível em: https://www.realtynmore.com/nbiot-going-where-2g-3g-4g-cant-go/. Acessado em: 21 Jun. 2022.
QUECTEL. Telefónica Certifies Quectel’s NB-IoT Module with Subscription Swap Capabilities. Disponível em: https://www.quectel.com/news-and-pr/telefonica-certifies-quectels-nb-iot-module-with-subscription-swap-capabilities. Acessado em: 27 Jun. 2022.
[ID:108] Autor: - Criado em: 2022-06-28 00:59:49 - [ Compartilhar ]
CoAP
Definição
O CoAP, “Constrained Application Protocol”, ou, em uma tradução aproximada, “Protocolo de Aplicação Restrita”, foi desenvolvido pelo grupo de trabalho CoRE (Constrained Restful Environments) do IETF (SILVA; CARVALHO; NAZARIO, 2012).
O CoAP é um protocolo de transferência de informações da camada de aplicação baseado no método request-response, com o mesmo conjunto de operações básicas se comparado ao HTTP (GET, PUT, POST e DELETE), porém consideravelmente mais simples, consome menos memória, processamento e, consequentemente, energia (BORMANN; CASTELLANI; SHELBY, 2012).
O principal responsável pela redução da complexidade é o uso do UDP ao invés do TCP. O CoAP, diferentemente do UDP que não soluciona este problema, trata a perda de pacotes adicionando uma camada à mensagem para detecção e retransmissão dos pacotes. Por esse motivo, um cabeçalho CoAP tem apenas quatro bytes somados a dois bytes para opções e a resposta da requisição ocupa apenas um byte. Assim, uma requisição geralmente usa de 10 a 20 bytes (WESTPHALL, 2018).
A implementação do CoAP não se atém a um protocolo eficiente para a camada de aplicação, mas supera essa ideia viabilizando uma fácil compatibilidade com requisições HTTP através de proxies. Um proxy é um intermediário com um gateway, que com um lado se comunica usando certo protocolo e com outro lado se comunica usando um protocolo diferente, ou seja, é capaz de ligar protocolos diferente e permitir a troca de informações (BORMANN; CASTELLANI; SHELBY, 2012).
Figura 1 - Compatibilidade entre CoAP e HTTP via proxy
Fonte: BORMANN; CASTELLANI; SHELBY, 2012
Aplicação
Ele é bom em ambientes com recursos limitados: dispositivos com energia limitada, enlaces com baixa largura de banda, redes congestionadas ou com perdas. Em redes congestionadas, CoAP/UDP pode funcionar, porém o MQTT/TCP, alternativa ao CoAP, pode não ser nem capaz de administrar um handshake completo. CoAP pode ser usado onde broadcast e multicast são necessários (Comunicação multicast é uma relação de um para vários endpoints. Dispositivos limitados podem ser associados tanto por sua posição ou propósito, e essas relações podem tanto ser pré-configuradas ou configuradas durante as operações. Exemplo: um grupo de interruptores CoAP onde um simples comando de comunicação para o grupo pode acender ou apagar todas as luzes de um andar específico de um prédio). CoAP é adequado na construção de algo no qual um dispositivo é implantado em modo "report only". Uma vez implantado, o dispositivo apenas reporta dados de volta para o servidor. O CoAP é adequado para redes de comunicações domésticas, posto que ferramentas informativas, equipamentos de controle e de comunicação em redes de Casas Inteligentes precisam ser leves e ter baixo custo (SILVA; CARVALHO; NAZARIO, 2012).
Funcionamento
Figura 2 – Camadas abstratas do CoAP
Fonte: SILVA; CARVALHO; NAZARIO, 2012
As aplicações podem fazer requisições ou receber repostas, sendo que estas mensagens são tratadas pelo protocolo de segurança DTLS e enviadas via UDP.
Figura 3 – Cabeçalho CoAP
Fonte: BORMANN, 2014
Segundo Westphall (2018) os componentes do cabeçalho são:
Version: Indica a versão do protocolo usada, para que os dois lados da comunicação saibam qual versão do protocolo seguir. Caso um valor não conhecido esteja nesse campo, a mensagem deve ser ignorada.
Type:
- Confirmable (0): Mensagem enviada deve ser confirmada pelo receptor através de um “Acknowledgement”, para mensagens com confiabilidade. Essa mensagem é retransmitida com intervalos que crescem exponencialmente até o recebimento do “Ack” ou “Reset”.
- Non-Confirmable(1): Mensagem enviada deve não ser confirmada com “Acknowledgement” e rejeitada caso o receptor não seja capaz de entendê-la.
- Acknowledgement (2): Mensagem enviada como primeira resposta de uma mensagem do tipo Confirmable, identificando o ID da mensagem que está sendo confirmada, indicando seu recebimento.
- Reset (3): Indica que uma mensagem (Confirmable ou Non-Confirmable) foi recebida, mas o receptor não pôde processar adequadamente, provavelmente por não conhecer o contexto adequado da mensagem.
Token Lengh: Indica o tamanho do campo Token, na segunda linha do cabeçalho.
Code: Indica o tipo de requisição que está sendo feita, semelhante ao HTTP, o CoAP implementa os métodos básicos GET, POST, PUT e DELETE. Tratando-se de uma resposta, o campo Code indica o código da resposta pertencendo a uma das três classes: sucesso, erro do cliente ou erro do servidor.
Message ID: É um identificador, normalmente sequencial, para cada mensagem enviada por determinado emissor, o qual não deve ser reutilizado até o “Ack” não ser mais esperado pelo emissor da mensagem.
Token: Contendo de 0 a 8 bytes de informação útil, serve para relacionar a requisição à determinada resposta. Idealmente, deve ser implementado de maneira que o token para o par cliente-servidor seja único.
Options: É um campo usado para definir informações como: URI do destinatário da mensagem, porta do destinatário, caminho do recurso, query (em caso de parametrização), formato do payload, formato de conteúdo aceito como resposta, tempo limite para cache, condicionais de formato como resposta e outras.
Payload: O payload de uma mensagem é a representação do recurso requisitado ao servidor, em caso de GET, ou do recurso enviado ao servidor, em caso de POST ou PUT. Exemplificando: se o cliente fizer a requisição na URI "humidade", e o servidor possuir a informação de que a humidade é de 50%, então essa informação será retornada no campo de payload.
Transmissão de Dados Grandes
O UDP ordena os pacotes enviados, ou seja, a ordem é aleatória, então transmissões muito grandes formadas por mais de um pacote seriam desordenadas em situações como, por exemplo, uma atualização de firmware, essa situação não seria aplicada em simples leituras de sensores, mas em casos em que outras funções maiores são requisitadas (WESTPHALL, 2018).
Para resolver esse problema o CoAP possui uma versão com transmissão em blocos. Cada bloco é enviado com um identificador e uma flag informando se ele é o último bloco. Sendo que cada envio é respondido por um ACK, evitando assim as perdas de pacotes (BORMANN, 2016).
Função Observador
Na arquitetura REST, na maioria das vezes que um cliente deseja receber uma informação do servidor essa ação deve ser feita através de um comando GET para cada leitura. Dessa maneira, caso o cliente deseje receber uma informação periodicamente, ele deve enviar um GET nos intervalos de tempo desejado. No entanto, dispositivos com restrições energéticas permanecem hibernando por muito tempo e o momento em que o comando GET é enviado pode coincidir com o momento de hibernação. Além disso, lidar com GETs periodicamente sobrecarrega o dispositivo. Para não haver perdas de requisições, nem sobrecarga de dispositivos, o CoAP tem a Função Observador. Com esta função, o cliente envia um GET, com uma flag indicando o desejo de atualização periódica, ao servidor (sensor, microcontrolador etc.). O sensor, então, dorme sem perder requisições e envia periodicamente o dado especificado no GET (WESTPHALL, 2018).
Segurança
Assim como o HTTP é combinado com o TLS (Transport Layer Security) com objetivo de obter segurança nas trocas de mensagens, o CoAP é combinado com o DTLS (Datagram Transport Layer Security), para obter segurança semelhante à presente na Web. Desse modo em um sistema que utiliza CoAP ela pode estar sem segurança (NoSec), apresentar um par de chaves pré-estabelecido (Pre-shared key (PSKs)), apresentar um par assimétrico de chaves sem certificado (Raw Public Key) ou as chaves assimétricas apresentam um certificado X.509 (SILVA; CARVALHO; NAZARIO, 2012).
Em muitos casos, a maneira mais desejável para garantir segurança entre cliente e servidor seria usando o TLS, todavia o uso do UDP não permite que o TLS seja utilizado, por isso o DTLS (TLS para datagramas) foi projetado para ser o mais similar ao TLS possível, minimizando novas invenções de seguranças e possibilitando aproveitamento de código e estrutura do TLS (RESCORLA, 2012).
Figura 4 – Registro DTLS
Fonte: KOTHMAYR et al., 2013
Segundo Westphall (2018) os componentes do registro são:
Tipo de Conteúdo da Mensagem: Como no TLS, uma mensagem pode representar quatro situações diferentes: estabelecimento do handshake, mudança de protocolos de segurança, alerta de possível comprometimento de segurança ou uma mensagem da aplicação.
Versão do DTLS: Versões diferentes do DTLS possuem diferentes recursos, algoritmos e maneiras de tratar erros. Por isso, no cabeçalho existe o campo para indicar a versão do protocolo entre duas entidades, a fim de haver compatibilidade no uso do DTLS.
Número de sequência: A principal função do número de sequência é a reordenação de mensagens. No DTLS, cada mensagem recebe um número de sequência específico e quando um dispositivo recebe uma mensagem X ele consegue determinar se X é a próxima mensagem esperada. Se for, ela é processada. Se não for, X é direcionada a uma fila para ser processada no momento correto.
Época da mensagem: A época da mensagem é um campo incrementado a cada troca de configurações de segurança (cipher state change) e serve para mensagens serem interpretadas de acordo com as configurações adequadas. Durante a transmissão, os pacotes sofrem alteração de ordem, sendo posteriormente reordenados pelo número de sequência.
Vetor de Inicialização: Cifras de bloco possuem modos de operação como o CBC (Cipher Block Chaining), no qual a saída de um bloco é usado como entrada para cifrar o bloco seguinte. Na cifra do primeiro bloco é usado um vetor de inicialização, geralmente aleatório, necessário para o destinatário decifrar a mensagem.
Payload: O payload é a mensagem em si, que será interpretada pela aplicação após decifração.
MAC: Assim como no TLS, o MAC é calculado para verificação de integridade e autenticidade da mensagem enviada. Todavia, diferentemente do TLS, no DTLS um erro de MAC implica em um alerta e um descarte da mensagem, sem término de conexão. O MAC é calculado com base em uma chave e a concatenação dos campos presentes na Figura 8, considerando o payload em texto claro e excluindo os campos MAC, MAC cont, padding e PL.
CoAP x MQTT
Figura 5 – Comparação CoAP x MQTT
Fonte: ACERVO LIMA, 2021
Referências Bibliográficas
ACERVO LIMA. Diferença entre os protocolos CoAP e MQTT. [S. l.], 2021. Disponível em: https://acervolima.com/diferenca-entre-os-protocolos-coap-e-mqtt/. Acesso em: 14 jun. 2022.
BORMANN, C. The Constrained Application Protocol (CoAP). 2014. Disponível em: https://tools.ietf.org/html/rfc7252. Acesso em: 14 jun. 2022.
BORMANN, C. Block-Wise Transfers in the Constrained Application Protocol (CoAP). 2016. Disponível em: https://tools.ietf.org/html/rfc7959. Acesso em: 14 jun. 2022.
BORMANN, C.; CASTELLANI, A. P.; SHELBY, Z. Coap: An application protocol for billions of tiny internet nodes. IEEE Internet Computing, v. 16, n. 2, p. 62–67, March 2012. ISSN 1089-7801.
KOTHMAYR, T. et al. Dtls based security and two-way authentication for the internet of things. Ad Hoc Networks, v. 11, n. 8, p. 2710 – 2723, 2013. ISSN 1570-8705. Disponível em: http://www.sciencedirect.com/science/article/pii/S1570870513001029. Acesso em: 14 jun. 2022.
RESCORLA, E. Datagram Transport Layer Security Version 1.2. 2012. Disponível em: https://tools.ietf.org/html/rfc6347. Acesso em: 14 jun. 2022.
SILVA, Aryane Barros Maciel; CARVALHO, Felipe Fadul; NAZARIO, Mariana Dabul. Constrained Application Protocol. [S. l.], 2019. Disponível em: https://www.gta.ufrj.br/ensino/eel878/redes1-2019-1/vf/coap/index.html. Acesso em: 14 jun. 2022.
WESTPHALL, Johann. Desenvolvimento de uma Aplicação com dispositivo IoT usando Protocolos DTLS e CoAP. 2018. Trabalho de Conclusão de Curso (Grau de Bacharel em Ciências da Computação) - Universidade Federal de Santa Catarina, [S. l.], 2018. Disponível em: https://repositorio.ufsc.br/bitstream/handle/123456789/192164/Monografia_Johann_Westphall.pdf?sequence=1&isAllowed=y. Acesso em: 14 jun. 2022.
[ID:107] Autor: - Criado em: 2022-06-27 19:10:41 - [ Compartilhar ]
Sirene Escolar Remota
RESUMO
Para este projeto de integração e facilitação de gerenciamento de horários de alarmes em escolas (ou outra aplicação semelhante como turnos de escritórios e indústrias) foi desenvolvida uma interface onde é possível acionar, remotamente, o atuador que comanda a sirene, ligada à uma placa que condiciona o sinal para o alto-falante piezoelétrico. A conectividade e gerenciamento ficam à cargo de um ESP32, a programação foi realizada em IDE Arduino e NodeRED. O protocolo de comunicação escolhido foi o MQTT, via Wi-Fi disponível no campus e no local de testes/desenvolvimento.
OBJETIVO
O objetivo é permitir que o disparo da sirene seja automatizado com o preenchimento de um banco de dados com os horários que cada sirene deve ser acionada. Uma vez programado os dias e horários de cada sirene no banco, o disparo ocorrerá sem interferência do usuário, que também pode acionar manualmente fora dos horários programados e alterar o volume.
METODOLOGIA
O sistema, baseado em plataformas open source e open hardware, usa uma sirene piezoelétrica de central de alarme residencial, recuperada de sucata. Um protótipo foi elaborado e montado em placa de matriz de contatos, sendo acionada por módulo de relês comandado pelo ESP32. Recebendo o sinal de disparo ou no horário programado, o relê é acionado e a sirene é ligada por um tempo programado no ESP e desliga após esse tempo. O teste do sistema foi feito tanto pelo botão da interface para acionamento manual quanto usando horários programados. Os horários são baseados no horário GMT que é obtido da rede pelo ESP no momento da conexão.
CONCLUSÃO
O projeto se mostrou não só estável, mas também relativamente simples e barato para implementação e escalabilidade, permitindo que várias unidades operem concomitantemente na mesma rede ou até mesmo em redes diferentes, se houver necessidade, permitindo o uso em plantas industriais diferentes e o controle e programação de horários de turno por um RH central. Também é necessário destacar a agilidade em mudanças de horários que o sistema pode fornecer, diminuindo o custo com pessoal de monitoramento de horário e também para funções de segurança, como toques personalizados paca incêndios, terremotos, evacuações de emergência, perigos químicos, biológicos e outras ameaças, sendo uma ferramenta a favor da segurança e integridade física dos ocupantes dos locais de instalação.
[ID:102] Autor: - Criado em: 2022-06-22 03:35:59 - [ Compartilhar ]
Módulo supervisório para biodigestores de uso em restaurantes
O trabalho tem por objetivo desenvolver um módulo supervisório para monitorar as variáveis dentro de um biodigestor, aqui propõe-se monitorar, a princípio, temperatura e umidade, para assim controlá-las em uma faixa de trabalho ideal para assim aumentar a produção do biogás.
O sensor utilizado foi um DHT22, escolhido por medir ambas variáveis, além de possuir um encapsulamento próprio, que o torna mais resistente as condições e variações dentro do ambiente de monitoramento.
Figura 1: Sensor DHT22.
Por meio de uma programação desenvolvida no software Arduino IDE os dados obtidos pelo sensor são armazenados no microcontrolador ESP32, esse possui módulos Wifi e Bluetooth de comunicação integrados em seu chip. Através do módulo Wifi o ESP32 irá se comunicar com o protocolo de comunicação MQTT e assim poderá enviar os dados recebidos para a plataforma de desenvolvimento Node-RED, que é uma plataforma de desenvolvimento baseada em fluxo para programação visual.
Essa plataforma foi usada para desenvolver uma página web, que poderá ser acessada remotamente de qualquer celular ou computador, nessa página são mostrados os dados dos sensores e esses são arquivados em um banco de dados em nuvem, localizado nos servidores da Amazon Web Services (AWS).
Figura 2: Montagem do circuito
Figura 3: Representação gráfica dos dados na dashboard
[ID:101] Autor: - Criado em: 2022-06-11 04:50:23 - [ Compartilhar ]
MONITORAMENTO REMOTO E CONTROLE DE UMIDADE E TEMPERATURA DE UM PROTÓTIPO DE UMA SALA LIMPA
Introdução
Atualmente, a indústria farmacêutica vem crescendo devido a evolução da tecnologia e a preocupação com a saúde que elevou a expectativa de vida das pessoas, fazendo assim um aumento na produção e no consumo de medicamentos (SOUZA, 2019). Assim, é necessário o desenvolvimento adequado dos produtos em toda sua cadeia, pois ajuda a evitar a contaminação e danos a saude das pessoas. Uma forma de manter a propriedade do produto final deuse o enfoque na implementação de ambientes controlados denominados salas limpas, que se trata de um ambiente fechado com uma unidade de tratamento de ar (UTA) com os respectivos materiais e insumos que fazem parte do serviço e produto da empresa, tendo a sua utilização como forma de garantir um local necessário para os processos de fabricação e a promoção de medidas preventivas (FINEP, [2022]). O projeto visa a criação de um protótipo de uma sala limpa com o monitoramento remoto e a gestão dos principais parâmetros que a envolvem como, a temperatura e a umidade do ar.
Metodologia
Para simular o ambiente da sala limpa, será montada um protótipo com uma caixa acrílica, com coolers e uma vela para o controle da temperatura e um umidificador externo para a umidade. Os dados de temperatura e umidade serão obtidos através do sensor DHT11 e transmitidos pela ESP32 que direcionará para um banco de dados alocado em um servidor na nuvem da Amazon Web Service por meio do protocolo MQTT e com Node-Red será realizado a programação em blocos para o tratamento dos dados e a demonstração gráfica em uma página web. Resultados e Discussão
Na Figura 1 é demonstrado a criação do protótipo da sala limpa e pode-se analisar a estrutura onde o projeto foi colocado em prática.
Figura 1 – Protótipo de uma Sala Limpa
Fonte: Autoria própria
A programação do Node-Red e a página web com as apresentações gráficas dos dados coletados é demonstrado na figura 2.
Figura 2 – Protótipo de uma Sala Limpa
Conclusões
Conclui-se que o protótipo da sala limpa atingiu os objetivos pré-estabelecidos que era de controlar a temperatura e a umidade, obtendo-se uma resposta gráfica e rápida mediante as mudanças simuladas.
[ID:100] Autor: - Criado em: 2022-06-10 22:11:28 - [ Compartilhar ]
Sistema de Detecção de Gases para laboratório de quimica
SISTEMA DE DETECÇÃO DE GASES
Introdução
Um dos principais acidentes dentro de um laboratório químico é causado por explosão, que gera a liberação de gases. (Unicamp, 2022)
Para que isso não aconteça, o mercado acaba investindo em instrumentos que possam estar medindo essa quantidade de gás existente no ar. O mercado oferece vários aparelhos que são utilizados para medição de gases, porem eles têm alto custo para ser adquiridos, e normalmente são usados nas indústrias. (Stefan, 2020)
A internet das coisas veio aumentar a qualidade da existência de sistemas e serviços de baixo custo, criando oportunidade especificas em várias áreas. (Muenchen, 2018)
O IOT vem se apresentando como uma das principais tecnologias emergentes, gerando novas aplicações das tecnologias de informação, comunicação e sensoriamento. (ZENELLA, 2014)
Assim com esta frequente inovação tecnológica temos como objetivo a construção de sensores de gases e fumaça com menores custos e integrados via Wi-Fi para um constante monitoramento dos dados.
Metodologia
O método utilizado para o para a obtenção dos dados foi realizada a partir do módulo ESP32 que faz a obtenção e upload dos dados solicitados. Na ESP foi realizada a programação para calcular os valores tensão (V) e corrente (A) obtidos a partir das leituras dos sensores, após essa obtenção os dados serão enviados via Wi-Fi para uma plataforma de análise via NODE-RED, além disso os dados ficam armazenados em um banco de dados e um web-server criado para acesso local ou remoto pela internet. Para que sejam passíveis estes os acessos, temos como base a utilização de máquinas virtuais em softwares da Amazon Web Service (AWS), a partir de uma instância do tipo EC2 (Amazon Elastic Compute Cloud) (AMAZON WEB SERVICE, 2022), com o auxílio do software Visual Studio Code e ferramentas de programação como o Node-RED (MICROSOFT, 2022; OpenJS Foundation, [2022]).
Após a obtenção e armazenamento dos dados utilizando a curva retirada do manual, junto com a função da mesma, foi possível obter o valor em ppm das concentrações dos gases analisados.
Resultados e Discussão
A partir da programação obtivemos um sistema de monitoramento constante da emissão de gases GLP e fumaça, além do controle da umidade presente no ar. Tudo sendo presentados em dashboards online.
Figura 1: Prototipagem
Figura 2: Prototipagem no NodeRed
Figura 3: Dashboard da temperatura e umidade
Figura 4: Dashboard de gás
Este controle poderá ser utilizado para supervisão da segurança das salas de química, detectando os gases liberados pelos bicos de bunsen destas salas do prédio, assim como para as cozinhas já que o mesmo também detecta o gás liberado pelos bujões.
Conclusões
Foi possível apontar que os dados obtidos foram um pouco inconclusivos devido ao baixo tempo de execução e ausência de testes em laboratório devido ao COVID nas datas de entrega do projeto. No entanto o funcionamento do circuito ocorreu dentro do planejado e com pequenos ajustes poderá ser implementado em laboratório.
Agradecimentos
Como agradecimento para a execução deste projeto gostaríamos de mencionar a instituição de ensino IFSP com a colaboração e disponibilidade dos laboratórios para a montagem do projeto, aos professores Fabiano Tadeu Mathias Costa juntamente ao Marcos Aparecido Chaves Ferreira agradecemos pelo excelente trabalho e auxílio na execução do mesmo.
[ID:94] Autor: - Criado em: 2022-06-10 21:10:07 - [ Compartilhar ]
MONITORAMENTO REMOTO DE UMA PLANTA DE IRRIGAÇÃO
Palavras-Chave: monitoramento, irrigação, ESP32, remoto.
Introdução
A utilização das águas na agricultura é importante por servir como fonte de nutrientes para as culturas, sendo que a irrigação é uma técnica necessária para minimizar a degradação do solo. Embora a irrigação seja um método bastante utilizado pela agricultura na produção de alimentos, porém enfrenta alguns problemas principalmente em grandes áreas de plantio, tal como a falta de tecnologia para detectar falhas nas tubulações e gerenciamento dos recursos. Em vista da necessidade de acompanhar o desenvolvimento das áreas de plantio, propõe-se elaborar um circuito de medição de dados como temperatura ambiente, pressão da água, umidade do solo e do ar.
Metodologia
Os sensores dispostos ao longo da planta construída, coletam os dados referente a pressão da água na tubulação, temperatura do ambiente, umidade do solo e a umidade relativa do ar. Logo os dados coletados são processados pelas unidades NodeMCU localizadas nas extremidades da planta. Após o processamento, os dados são enviados para o servidor Web implementado em uma máquina virtual na plataforma AWS e com o auxílio da ferramenta de programação Node Red foi elaborada uma Dashboard para visualização dos dados e um sistema de alerta/notificações.
Resultados e Discussão
Os dados coletados com o monitoramento remoto, estão expressos a seguir.
Figura 1- Dashboard
Tabela 1- Análise da pressão
Parâmetros |
bar |
Sistema desligado |
0 |
Falhas na tubulação |
0.2 |
Funcionamento normal |
0.7 |
Falha por obstrução |
0.9 |
Fonte: Autoria Própria
Com os dados coletados foi possível determinar parâmetros para indicar falhas de funcionamento, enviar alertas e manter os usuários informados por meio do monitoramento remoto. Na figura 1, são exibidos os gráficos obtidos com o sensor de umidade do solo, umidade relativa do ar, diferença de pressão da água, temperatura do ambiente e as mensagens de informação/alerta. A tabela 1 monstra os parâmetros obtidos com a coleta das informações relacionados a pressão da água na tubulação.
Conclusões
O objetivo de construção da planta de irrigação assim como a coleta de dados de forma remota, analisá-los e disponibilizá-los em uma dashboard, foram alcançados. E para projetos futuros podem ser adicionados mais sensores para melhorar a qualidade dos dados.
[ID:93] Autor: - Criado em: 2022-06-10 20:26:45 - [ Compartilhar ]
Sistema de Detecção de RuÃdo Sonoro
O presente projeto tem como objetivo desenvolver um sistema eletrônico que possa detectar alterações de ruídos sonoros pré-determinados em ambientes industriais e escolares, com o intuito de obter um lugar mais seguro, agradável e produtivo.
O sensor utilizado é um Microfone Omnidirecional INMP441 (Figura 1), capaz de captar som em todas as direções, além disso já conta com um conversor analógico para digital e um filtro antialiasing, o qual permite a passagem de todas as frequências corretas, cortando as indesejáveis.
Figura 1 - Sensor Microfone Omnidirecional INMP441
Por meio de uma programação, os dados obtidos são tratados e armazenados no microcontrolador ESP32 (Figura 2), que possui um módulo WIFI e um módulo Bluetooth de comunicação integrados ao seu chip. A comunicação com o protocolo MQTT é feita usando a comunicação WIFI da ESP32.
Figura 2 - Microcontrolador ESP32
Para sinalizar visualmente quando o limite de ruído em decibéis é ultrapassado utiliza-se um Led vermelho. Logo, o circuito para obtenção de dados usado no projeto pode ser visto na Figura 3 e a montagem final do projeto na Figura 4.
Figura 3 - Circuito para obtenção de dados
Figura 4 - Montagem final projeto
Para a comunicação com o MQTT foi necessário alugar um servidor no AWS para fazer o armazenamento das informações no banco de dados, que são enviados para o MQTT pela ESP32. O banco de dados utilizado nesse servidor da AWS foi o Mysql, que tem a função de salvar os dados enviados para o MQTT na nuvem. Esses dados são exibidos na web, por meio de um IP público gerado pela instância AWS.
Por meio do Node-RED, uma ferramenta de desenvolvimento baseada em fluxos para programação visual em nós, ou em blocos, foi desenvolvida uma programação (Figura 5) que faz uma demonstração gráfica dos dados obtidos e as apresenta numa página da web (Figura 6).
Figura 5 - Programação Node-RED
Figura 6 - Representação gráfica dos dados coletados
Nas Figuras 4 e 6 é possível ver o Led acesso, já que o limite de ruído estipulado em 70dB foi ultrapassado, emitindo assim o alerta visual.
[ID:90] Autor: - Criado em: 2022-06-10 01:15:05 - [ Compartilhar ]
Sistema de controle de climatizadores
RESUMO
O consumo médio de climatizadores é extremamente alto, sendo assim, é possível realizar um controle para não afetar a sua performance com o objetivo de reduzir o gasto médio. A ideia é realizar um controle e monitoramento de dados do climatizador e do laboratório de robótica. Para a realização será necessário um microcontrolador esp32, sensores de corrente elétrica ACS712, sensor de temperatura DS18B20, máquina virtual, servidor web e VS Code. Aplicando os sensores amperímetros para medir a corrente elétrica dos climatizadores e o sensor de temperatura para medir em quantos graus está o laboratório e mandando todos esses dados por meio do esp32 para a máquina virtual, que receberá esses dados e por meio do código desenvolvido no VS Code irá controlar o funcionamento do climatizador e realizar os gráficos para ser apresentado no servidor web. Por meio deste projeto pretende-se gerar gráficos apresentando tais dados e controlar o climatizador a fim de reduzir o consumo de energia elétrica do IFSP Campus Catanduva. Com o sucesso do projeto, é possível ser implementado em todas as salas do IFSP, reduzindo o consumo e assim reduzindo os gastos.
FUNDAMENTAÇÃO TEÓRICA
Com o intuito de reduzir o consumo de energia elétrica na sala de robótica do IFSP campus Catanduva, este projeto será realizado visando aprimorar o funcionamento e prevenir o mau uso dos climatizadores.
O consumo médio de uma residência fica em torno de 173,7 kWh/mês, isso em toda a região Sudeste, se formos analisar apenas o estado de São Paulo temos um consumo médio de 169,9 kWh/mês, de acordo com o Anuário Estatístico de Energia Elétrica 2021 da EPE (Empresa de Pesquisa Energética, do Governo Federal). Uma residência brasileira no geral, consome em média 165,1 kWh/mês, segundo essa mesma fonte. Levando em conta que o projeto será realizado dentro de uma instituição de ensino, sabemos que o consumo médio pode ser muito mais elevado do que em relação a uma residência, porém para efeito de comparação vamos utilizar uma residência.
O funcionamento do ar-condicionado é por meio da sucção do ar ambiente, que será conduzido através da serpentina do evaporador, este ar entra em contato com um gás refrigerante que está em estado líquido. Basicamente o ar-condicionado resfria o ar quente presente no ambiente devolvendo-o em uma temperatura baixa, segundo Consul. Um esquema representando o ar condicionado pode ser visto na figura 1.
Figura 1 – Esquema climatizador.
Fonte: WebArCondicionado.
Pegando um ar-condicionado de 18.000 BTUs se observa que o seu consumo médio gira em torno de 32,3 kWh e 34,2 kWh, segundo Yuri Correa, redação do portal WebArCondicionado. Ou seja, apenas um ar-condicionado de 18.000 BTUs ligado apenas 1hr por dia gera um gasto mínimo de 32,3 kWh, se um ar-condicionado desse ligado por 6horas em um dia, já ultrapassaria o consumo médio de uma residência brasileira.
Pensando sobre isso e tendo em vista que uma instituição de ensino como o Instituto Federal de São Paulo possui diversos ar-condicionado entende-se que o gasto proveniente dos climatizadores possuem um alto impacto nos gastos mensais da instituição. Para reduzir os gastos e pela necessidade de se ter um controle dos climatizadores, para não manter ligado sem necessidade, o projeto foi realizado por meio de um sistema IoT (Internet of Things).
A internet das coisas promove a interação de diversos aparelhos, sensores, servidores, tanto físicos quanto virtuais, as informações de sensores, instalados em qualquer ambiente por exemplo, precisa ser enviada para servidores na nuvem e com esses dados realizar ações sobre o ambiente, de acordo com Alan Fernandes. Com a crescente difusão do conhecimento sobre IoT muitos sistemas de controle provavelmente serão implementados utilizando tal tecnologia, por não precisar de um servidor local para operar o sistema de controle.
As instituições de ensino desempenham um papel muito relevante na formação de cidadãos conscientes e responsáveis em relação às questões socioeconômicas e ambientais, segundo Adailton. As instituições precisam ser exemplos para os alunos que ali estão, pois, tendo um melhor controle dos gastos da instituição alguns alunos podem ser influenciados e começar a economizar também.
OBJETIVOS
OBJETIVO GERAL
- Controlar e monitorar os climatizadores.
OBJETIVOS ESPECÍFICOS
- Monitorar a temperatura de uma sala de aula do IFSP;
- Fazer o controle dos climatizadores para reduzir o consumo de energia elétrica.
- Fazer a aquisição da corrente elétrica dos climatizadores.
VIABILIDADE DE EXECUÇÃO – ORÇAMENTO
Para realizar este projeto foi necessário adquirir uma placa de desenvolvimento conhecida por esp32, no valor de aproximadamente R$40,00, dois sensores de corrente elétrica, ACS712 30A, para usar nos climatizadores no valor de, aproximadamente, R$25,00 a unidade e um sensor de temperatura DS18B20 para medir a temperatura da sala no valor de, aproximadamente, R$17,00. Todos os componentes foram adquiridos sem ajuda financeira e sem patrocínios financeiros, mas em relação à estrutura podemos contar com toda a infraestrutura do IFSP Campus Catanduva para realização do projeto.
RESULTADOS ESPERADOS E DISSEMINAÇÃO
A partir da utilização e implementação dos sensores de corrente elétrica e de temperatura espera-se obter dois gráficos, um de temperatura x tempo e outro de corrente elétrica x tempo, estes gráficos serão apresentados em um site web de acesso livre, sendo esse site o smart campus de Catanduva onde possui diversos outros projetos.
Este projeto pode ser considerado uma “inovação local” considerando que o IFSP de Catanduva não possui um sistema desse implementado no campus, porém fora do ambiente do campus esse projeto não pode ser considerado uma inovação pois já possuem outros projetos nessa área e com o mesmo objetivo.
Para realizar a divulgação dos resultados será realizado um artigo para a Mostra PeEx e o todos os resultados do projeto poderão ser acompanhados através do site em que ele ficará disponibilizado.
[ID:89] Autor: - Criado em: 2022-06-09 13:47:54 - [ Compartilhar ]
Motivação do projeto
A utilização de placas solares vem aumentado por conta do preço da energia, junto a isso vem a necessidade de equipamentos para auxiliar as medições tanto de produção quanto de consumo. Com essa necessidade tem os produtos vendidos no mercado que tem uma grande variedade de preços, porém é restrito a uma faixa de produção baixa em produtos mais baratos, e em produtos mais caros geralmente não consegue suprir a necessidade de algumas pessoas. Assim se deu a ideia de utilizar um projeto já desenvolvido para aumentar essa faixa de produção.
Objetivos do Projeto
O objetivo é desenvolver um MPPT com supervisão via aplicativo, onde nele será indicado a energia produzida e armazenada nas baterias e com seus horários de pico. A primeira parte é dada pelo desenvolvimento do PCI utilizando o software Proteus 8.1, indicando as ligações e componentes utilizados. A segunda par é a PCI física. A terceira parte é fazer a soldagem dos componentes nas PCI. A quarta parte é fazer a implementação do programa e fazer os testes necessários. A quinta e ultima parte é fazer o desenvolvimento do aplicativo e fazer sua implementação.
Referências
https://www.instructables.com/DIY-1kW-MPPT-Solar-Charge-Controller/
[ID:86] Autor: - Criado em: 2022-05-11 21:21:17 - [ Compartilhar ]
Sistema de Controle de Umidade e Temperatura do Ar no Ambiente
Diante as situações climáticas atuais do Brasil, relacionadas ao alto índice de desmatamento e poluição, a baixa umidade do ar é um problema que afeta a população em tempos de seca ou de temperatura elevada, comprometendo seriamente sua saúde, como os problemas respiratórios. Com isso, o presente projeto propõe a construção de um sistema de monitoramento da temperatura e da umidade relativa do ar em ambientes internos.
[ID:84] Autor: - Criado em: 2022-05-02 16:59:16 - [ Compartilhar ]
Projeto de Controle: Módulo para Biodigestores de uso em Restaurantes
Contextualizando
O descarte inapropriado de matéria orgânica gera gases poluentes que contaminam o ar e o solo. Uma das alternativas a esta contaminação do solo são os biodigestores: sendo recipientes onde podemos armazenar restos orgânicos para produzir biogás através de biodigestão anaeróbica (RIBEIRO, 2020). O biogás tem se apresentado como uma alternativa barata e eficaz ao gás de cozinha derivado de petróleo (GLP — Gás Liquefeito de Petróleo), principalmente em comunidades rurais. Segundo Barreira (2011), a matéria-prima para produção do biogás (também conhecida como biomassa) é uma das mais abundantes e baratas do mundo, podendo ser obtida de inúmeras formas.
Segundo os dados divulgados pela EMPRESA de PESQUISA ENERGÉTICA — EPE (2015), as maiores fontes de geração do biogás por biodigestor no Brasil são: os aterros sanitários (51%), a indústria de alimentos e bebidas (25%), a suíno cultura (14%) e o lodo de esgoto (6%).
Atualmente existem diversos modelos de biodigestores disponíveis no mercado brasileiro, projetados conforme a categoria de dejetos que serão decompostos por eles. Entretanto, a ampla maioria destes modelos carece de um sistema de controle associado a sua produção do biogás, dificultando a obtenção dados como: a quantidade do gás produzido, a qualidade do gás e o seu tempo de produção.
Objetivo
O objetivo do presente trabalho é possibilitar a análise remota de dados sobre a produção de biogás em biodigestores de uso específico. Com base nesta análise, poderemos obter dados sobre quais restos de alimentos deverão ser separados e armazenados no biodigestor, a quantidade em volume de gás que estes alimentos podem produzir, o tempo gasto no processo de digestão destes e a qualidade do gás produzido no biodigestor.
Para tanto, serão monitoradas condições físicas de ambiente consideradas fundamentais (KUNZ, STEINMETZ E AMARAL, 2019) durante o processo de biodigestão anaeróbica:
- Temperatura: A temperatura considerada ideal para manter vivos os microorganismos responsáveis pela digestão da matéria orgânica no biodigestor é de 30 á 40 graus Celsius;
- Percentual de Hidrogênio (p.H): Para se preservar a existência dos microorganismos decompositores o p.H. deve se manter próximo á neutralidade 6 á 7 por cento;
- Pressão: A pressão no sistema biodigestor não poderá exceder o seu limite na estrutura, tendo em vista que a área do biodigestor não será alterada com o aumento de volume do gás;
- Volume: O volume de gás (em litros) será a forma de quantificar o tanto de gás produzido pelo sistema;
- Percentual de Metano: O percentual de metano será a forma de quantificar (em porcentagem) a qualidade do gás produzido pelo biodigestor, que segundo especialistas são de 50 á 70% do gás.
Métodos e Desenvolvimento
A escolha dos sensores que serão utilizados por este Módulo deverá basear-se no resultado de ensaios feitos em biodigestores Dry Digestion de batelada (KUNZ, STEINMETZ E AMARAL, 2019), seguindo as recomendações das normas alemã DIN (38.414, 2008) e européia VDI (4630, 2006), onde poderemos determinar com precisão quais eventos físicos poderão intervir na aquisição de dados pelos sensores. De modo geral, os componentes escolhidos para o nosso projeto são:
- Módulo ESP 32 Dev Kit V1;
- Sensor LM35;
- Módulo sensor ultrassônico;
- Módulo sensor de p.H;
- Módulo sensor de metano MQ-5;
- Regulador 7805;
- Capacitores: 1000µf e 10µf;
- Resistores: 10kΩ, 1kΩ, 680Ωe 100Ω;
- Protoboard;
- Leds: vermelho e verde.
[ID:82] Autor: - Criado em: 2022-05-02 01:59:47 - [ Compartilhar ]
Módulo para Biodigestores de uso em Restaurantes
O descarte inapropriado de matéria orgânica, como restos de alimentos descartados por restaurantes e cozinhas, geram gases poluentes que contaminam o ar e o solo, visando reduzir esse poluentes decidimos elaborar um sistema supervisório que poderá ser utilizado em biodigestores ou sistemas semelhantes. Esses fazem o aproveitamento dos gases gerados pelos restos de alimentos durante o processo de biodigestão anaeróbica. O sistema poderá ser replicado em restaurantes, instituições de ensino e indústrias que tenham interesse em desenvolver sistemas que reaproveitem a matéria orgânica para produção de biogás.
SMART 1 – Definir os sensores que serão utilizados;
SMART 2 – Desenvolver um sistema de aquisição de dados;
SMART 3 – Controlar temperatura e liberação de substâncias no sistema;
SMART 4 – Construir um protótipo do reservatório de gás.
[ID:81] Autor: - Criado em: 2022-05-02 00:25:30 - [ Compartilhar ]
Detecção de poluentes no ar
No IFSP campus Catanduva não possui nenhum sistema de monitoramento da qualidade do ar, ou seja, para detectar os principais poluentes do ar. Logo é interessante haver um sistema com essa característica, pois alguns gases são prejudiciais à saúde, e em grandes concentrações pode provocar a morte.
OBJETIVOS
O objetivo é desenvolver um sistema de aquisição de dados das concentrações de alguns gases presente em um ambiente fechado por meio de sensores e um microcontrolador (ESP32), fazer a integração desses com a nuvem e uma interface gráfica.
Além disso, informar o comparativo com os valores definidos por uma norma para possibilitar a análise da condição do ar.
O projeto será bem-sucedido se cumprir os seguintes objetivos:
- SMART 1 - desenvolver um sistema de aquisição de dados;
- SMART 2 - construir um protótipo do sistema de detecção.
- SMART 3 - construir a interface gráfica online com o auxílio do Node-Red.
- SMART 4 – realizar a conexão do protótipo com a interface.
- SMART 5 – escrever o memorial do projeto.
O sistema de detecção de poluentes no ar descrito neste projeto será aplicado em ambientes fechados e com foco em alguns gases poluentes específicos como CO, H2, NH3, NO2, CO2 e alguns gases inflamáveis, portanto, os demais não serão averiguados e o projeto não poderá ser aplicado para ambientes abertos.
[ID:76] Autor: - Criado em: 2022-04-29 23:55:51 - [ Compartilhar ]
[ID:75] Autor: - Criado em: 2022-04-29 20:54:05 - [ Compartilhar ]
Detector De Gases
Quando há uma queimada existe a liberação de gás carbônico (CO2), metano (CH4), monóxido de carbono (CO) e nitroso de oxigênio (N2O). (Fearnside, 2002)
Segunda a resolução nº 491/2018 da CONAMA, para não ser prejudicial, o CO pode apresentar uma concentração de 9ppm, já o CO2 ele pode apresentar concentração 1000ppm. (BRASIL, 2018)
Um dos principais acidentes dentro de um laboratório químico é causado por explosão, que gera a liberação de gases. Dentro de um laboratório um liquido que possui um ponto de fulgor abaixo da temperatura ambiente naquele momento, em uma condição especifica, pode liberar uma quantidade de vapor que ao se misturar com o ar pode gerar uma mistura inflamável, se essa mistura for se acumulando e se tiver algum meio de ignição, pode acontecer uma explosão.(Unicamp, 2022)
Para que isso não aconteça, o mercado acaba investindo em instrumentos que possam estar medindo essa quantidade de gás existente no ar.
O mercado oferece vários aparelhos que são utilizados para medição de gases, porem eles tem alto custo para ser adquiridos, e normalmente são usados nas industrias. (Stefan, 2020)
Os seres humanos com o passar dos anos foram evoluindo, e cada vez mais se conectando por meio de novas tecnologias. A internet das coisas veio aumentar a qualidade da existência de sistemas e serviços de baixo custo, criando oportunidade especificas em varias áreas. (Muenchen, 2018)
O IOT vem se apresentando como uma das principais tecnologias emergentes, gerando novas aplicações das tecnologias de informação, comunicação e sensoriamento. (ZENELLA, 2014)
Para sistemas microcontrolados, que é o principal hardware utilizado em IOT, há a existência de sensores que possam estar medindo a quantidade de concentração de gás no ar. Esses sensores que vão ser utilizados são do tipo eletrolíticos. Comparados aos instrumentos industriais, esses são de baixo custo e estão associados a módulos que permitem a conexão com um microcontrolador. O seu funcionamento acontece por meio de uma variação de tensão existente em uma resistência interna que se altera conforme o sensor detecta algum gás, isso torna possível perceber a variação de tensão, que é transmitida na entrada do microcontrolador, que por pode ser analógico ou digital. (HANWEI ELETRONICS, 201-a)
Os sensores da família MQ enviam um sinal analógico para o microprocessador, entretanto o valor analógico emitido pelo sensor tem que ser trabalhado para poder saber o seu real resultado, pois o mesmo não manda um sinal direto. Para que a concentração seja determinada, tem-se que utilizar o manual do sensor para pegar as curvas de atuação do mesmo. No manual há a existência de um gráfico, mostrada na figura 1, que apresenta os valores que corresponde à razão pela concentração do gás em partes por milhão. (Stefan, 2020)
Figura 1: Curva retirada do manual como exemplo
Por meio da analise de vários artigos chegou-se a conclusão que a função que mais se aproxima das curvas apresentadas nos gráficos acima é da forma mostrada na equação (1).
yx=axb |
(1) |
OBJETIVOS
Objetivo geral
Construir um sistema para a detecção e monitoramento de gases para os laboratórios de química do campus por meio de sensores via microcontrolador ESP32.
Objetivos específicos
- Desenvolver um sistema para aquisição de dados.
- Construir Protótipo.
- Implementar os dados adquiridos a uma máquina virtual por meio do AWS.
- Acionar atuadores a partir dos dados enviados para a máquina virtual.
- Realizar memorial do projeto.
MATERIAIS E MÉTODOS
Os materiais que terão maior prioridade para a construção do projeto serão:
- Módulo ESP32 NodeMCU;
- Sensor de humidade e temperatura DHT11
- Sensor de gás inflamável e fumaça MQ-2
- Sensor para gás GLP MQ-135
A partir dos componentes acima o circuito poderá ser montado com estrutura simulada em software onde foi simulado com um Arduino por falta do ESP, porém o mesmo será montado com o ESP no mesmo esquema exemplificado na figura 2.
Figura 2 - Circuito do Projeto
Fonte: própria autoria.
A função do módulo ESP32 será fazer a obtenção e upload dos dados solicitados. Na ESP será realizada a programação para calcular os valores tensão (V) e corrente (A) obtidos a partir das leituras dos sensores, após essa obtenção os dados serão enviados via Wi-Fi para uma plataforma de análise via NODE-RED, além disso os dados ficaram armazenados em um banco de dados e um web-server será criado para acesso local ou remoto pela internet. Para que sejam passíveis estes os acessos, teremos com base a utilização de máquinas virtuais do em softwares da Amazon Web Service (AWS), a partir de uma instância do tipo EC2 (Amazon Elastic Compute Cloud) (AMAZON WEB SERVICE, 2022), com o auxílio do software Visual Studio Code e ferramentas de programação como o Node-RED (MICROSOFT, 2022; OpenJS Foundation, [2022]).
Utilizando a curva retirada do manual, junto com a função da mesma, é possível obter o valor em ppm das concentrações de gases.
RESULTADOS
Para o desenvolvimento deste projeto obtivemos um sistema de monitoramento constante, da emissão de gases GLP e fumaça, além do controle da umidade presente no ar. Onde os dados monitorados podem ser analisados local ou remotamente por meio de um servidor e um site, criados de modo online para a exibição desse monitoramento.
Para a obtenção dos dados a cima foi necessário o seguinte programa no Node-Red:
Este controle poderá ser utilizado para supervisão da segurança das salas de química, detectando os gases liberados pelos bicos de bunsen destas salas do prédio, assim como para as cozinhas já que o mesmo também detecta o gás liberado pelos bujões.
Além disso, o projeto pode funcionar como um segundo meio de detecção de fumaça destes locais, tendo em vista que um dos sensores utilizados também os capta caso haja algum problema com os detectores de incendo, proporcionando ainda mais segurança nestes casos.
Apesar do alto nível de segurança para incêndios teoricamente já existentes nestes locais, um controle para evitar o início destes incêndios, somente pelos gases liberados ainda é inexistente. Dessa forma, temos um potencial para inovação do projeto no aperfeiçoamento das características de um produto já obrigatoriamente implementado.
A obtenção dos resultados destas supervisões poderá ser utilizada para futuros trabalhos sendo possível assim a divulgação em revistas de artigos científicos ou eventos.
Link para Video do prjeto: https://youtu.be/eAhjwZ6Lf0U
PROTOCOLO UDP
O que é UDP?
Como todos os protocolos de rede, o UDP é um método padronizado para transferir dados entre dois computadores em uma rede. Comparado a outros protocolos, o UDP realiza este processo de forma simples: envia pacotes (unidades de transmissão de dados) diretamente para um computador de destino sem estabelecer primeiro uma conexão, indicando a ordem dos referidos pacotes ou verificando se eles chegaram como pretendido — Os pacotes UDP são chamados de ‘datagramas’.
Para que o UDP é usado?
O UDP é comumente usado em comunicações sensíveis ao tempo, em que, ocasionalmente, descartar pacotes é melhor do que esperar. O tráfego de voz e vídeo é enviado usando este protocolo porque ambos são sensíveis ao tempo e projetados para lidar com algum nível de perda. Por exemplo, VOIP (voz sobre IP), que é usado por muitos serviços telefônicos baseados na Internet, opera sobre UDP. Isso ocorre porque uma conversa telefônica estática é preferível a uma que seja nítida, mas muito atrasada.
Entenda a estrutura de cabeçalho UDP!
UDP envolve datagramas com um cabeçalho UDP, que contém quatro campos totalizando oito bytes.
Os campos em um cabeçalho UDP são:
- Porta de origem – a porta do dispositivo que envia os dados. Este campo pode ser definido como zero se o computador de destino não precisar responder ao remetente.
- Porta de destino – a porta do dispositivo que recebe os dados. Os números da porta UDP podem estar entre 0 e 65.535.
- Comprimento – especifica o número de bytes compreendendo o cabeçalho UDP e os dados de carga útil UDP. O limite para o campo de comprimento UDP é determinado pelo protocolo IP subjacente usado para transmitir os dados.
- Checksum – O checksum permite que o dispositivo receptor verifique a integridade do cabeçalho do pacote e da carga útil. É opcional no IPv4, mas tornou-se obrigatório no IPv6
TCP vs UDP: quais as principais diferenças entre esses protocolos?
O UDP é mais rápido, mas menos confiável do que o TCP, outro protocolo de transporte comum. Em uma comunicação TCP, os dois computadores começam estabelecendo uma conexão por meio de um processo automatizado denominado ‘handshake’. Somente depois que esse handshake for concluído, um computador realmente transferirá pacotes de dados para o outro.
As comunicações UDP não passam por esse processo. Em vez disso, um computador pode simplesmente começar a enviar dados para o outro:
Além disso, as comunicações TCP indicam a ordem em que os pacotes de dados devem ser recebidos e confirmam se os pacotes chegam conforme o planejado. Se um pacote não chegar — por exemplo, devido a congestionamento em redes intermediárias — o TCP exige que ele seja reenviado. As comunicações UDP não incluem nenhuma dessas funcionalidades.
Quais as vantagens e desvantagens do UDP?
O UDP tem vários benefícios para diferentes tipos de aplicativos, incluindo:
- Sem atrasos de retransmissão — UDP é adequado para aplicativos sensíveis ao tempo que não podem pagar atrasos de retransmissão para pacotes perdidos. Os exemplos incluem Voice over IP (VoIP), jogos online e streaming de mídia.
- Velocidade — a velocidade do UDP o torna útil para protocolos de resposta a consultas, como DNS, nos quais os pacotes de dados são pequenos e transacionais.
- Adequado para broadcasts — a falta de comunicação ponta a ponta do UDP o torna adequado para broadcasts, em que os pacotes de dados transmitidos são endereçados como recebíveis por todos os dispositivos na Internet. As transmissões UDP podem ser recebidas por um grande número de clientes sem sobrecarga do lado do servidor.
- Desvantagens do protocolo de datagrama do usuário
-
1. Sem conexão
UDP é sem conexão, o que significa que não requer necessariamente um circuito virtual antes do processo de transferência de dados. Portanto, sem qualquer preparação ou negociação, o grama de dados pode ser enviado ao receptor. O receptor deve ser capaz de cuidar deles.
2. Não confiável
UDP geralmente não é confiável porque não há nenhum conceito de retransmissão, reconhecimento ou tempo limite aqui. Sempre que um grama de dados é enviado, não é possível garantir que será entregue ao host de destino. Às vezes, o grama de dados pode ser perdido no caminho ou entregue duas vezes. A pior parte é que não há sequer uma indicação disso, a menos que o anfitrião decida mencioná-los. No entanto, esses tipos de taxas de falha são muito baixas em conexões de rede.
3. Pedido incorreto
Além de os dados não serem entregues, também podem estar fora de serviço no UDP. Não é possível garantir que a sequência em que os dados estão sendo enviados esteja na mesma ordem ao chegar ao aplicativo host. Às vezes, os pacotes podem ser ordenados de forma que você receba primeiro um pacote que foi enviado com atraso. Além disso, não há como prever esses pedidos até que sejam recebidos.
4. Sem controle de congestionamento
Ao contrário do TCP, os métodos de controle de congestionamento não estão presentes no UDP. Como não há nenhum método de controle de congestionamento no UDP, um grande número de dados transmitidos via UDP pode causar congestionamentos. Para isso, não há restrições que possam ser impostas.
5. Suporte para roteador
No que diz respeito ao tratamento do UDP, os roteadores são bastante descuidados. Isso ocorre porque sempre que um grama de dados é colidido, ele não os retransmite. Além disso, em um roteador os pacotes UDP serão descartados antes mesmo dos pacotes TCP.
Referencia:
SEABRA, Giulianna. O que é UDP e quais as diferenças com o TCP?. In: O que é UDP e quais as diferenças com o TCP?. [S. l.], 19 jun. 2019. Disponível em: https://blog.betrybe.com/desenvolvimento-web/udp-diferencas-tcp/. Acesso em: 23 jun. 2022.
[ID:74] Autor: - Criado em: 2022-04-29 20:42:06 - [ Compartilhar ]
Monitoramento remoto e controle de umidade de um protótipo de uma sala limpa
As salas limpas em indústrias farmacêuticas são importantes para elaboração de produtos de forma mais higiênica, para isso se faz necessário um controle de alguns parâmetros específicos como, a umidade de ar, a temperatura ou fluxo ar.
O projeto visa a criação de um protótipo de uma sala limpa com o monitoramento remoto e a gestão dos principais parâmetros que a envolvem como, a temperatura e a umidade do ar.
- SMART 1: Desenvolver um sistema de aquisição de dados;
- SMART 2: Construir um protótipo de uma sala limpa;
- SMART 3: Implementação dos principais dados via microcontrolador ESP32;
- SMART 4: Exercer o relatório do projeto;
- SMART 5: A construção do circuito controlador.
O sistema de detecção dos parâmetros serão aplicados em um ambiente fechado com uso de uma caixa de acrílico para fase de teste e finalização do projeto.
[ID:73] Autor: - Criado em: 2022-04-29 20:14:37 - [ Compartilhar ]
Detector de Ruido
A escolha do projeto se deu devido a indecisão ou desconhecimento do uso de protetores auriculares no ambiente de indústria. E também a necessidade de se ter um sistema para uso em sala de aula que identifique aumento de ruídos evitando possíveis perturbações sonoras principalmente em autistas.
Os objetivos do projeto são:
- SMART 1: Identificar índices de ruídos relacionados a cada área;
- SMART 2: Simular o sistema eletrônico em ambiente virtual;
- SMART 3: Desenvolver um sistema de aquisição de dados;
- SMART 4: Construir um protótipo do sistema de detecção sonoro;
- SMART 5: Testar o protótipo em ambiente real
O sistema de detecção de ruídos será aplicado em ambiente fechado em um primeiro momento (fase de testes de funcionamento) e posteriormente em um ambiente real.
[ID:72] Autor: - Criado em: 2022-04-29 20:05:32 - [ Compartilhar ]
Monitoramento de uma planta de irrigação
A irrigação é um método muito utilizado pela agricultura na produção de alimentos, mas enfrenta alguns problemas principalmente em grandes áreas de plantio, como a dificuldade em detectar falhas na tubulação como vazamentos, quebras ou mal funcionamento dos aspersores, outro problema encontrado é o controle de umidade do solo, tendo em vista que a falta ou excesso de água pode causar danos a produção.
Integrar tecnologia ao sistema de irrigação, como a implementação de um sistema de monitoramento, permite que o agricultor acompanhe o desenvolvimento da plantação e tenha um controle maior sobre os desperdícios e gastos desnecessários. O monitoramento permite mensurar a umidade do solo, a pressão da água nas tubulações, temperatura e umidade relativa do ar, o que possibilita detectar o problema com rapidez, assim o agricultor pode evitar gastos de energia programando os dispositivos elétricos para atuarem somente quando necessário, e com o sistema de alerta de falhas os desperdícios de água e fertilizantes, em casos de fertirrigação, podem ser reduzidos.
[ID:70] Autor: - Criado em: 2022-04-29 15:25:55 - [ Compartilhar ]
Resultados do projeto
Esquema da programação em blocos no Node-RED:
Módeulo GPS e ESP32 em uso:
Página web e node dashboard demonstrando a localização plotada no mapa, eletropostos ao redor, comparação de autonomia e rotas para o local:
[ID:64] Autor: - Criado em: 2021-07-14 01:20:42 - [ Compartilhar ]
Analise da energia gerada por uma placa solar fotovoltaica
INTRODUÇÃO
A possibilidade de utilização da radiação solar como fonte de energia é conhecida desde o século XIX (TREVELIN, 2014). No entanto, em função da escassez de combustíveis fósseis e seu possível esgotamento futuro, a necessidade de se utilizar fontes renováveis de energia tem crescido exponencialmente nas últimas décadas.
No Brasil, a adoção do uso de energia solar em grande escala ainda é recente. A geração de energia solar fotovoltaica correspondeu a 1% da oferta de energia elétrica do país em 2019, proporcionada por um aumento na capacidade instalada de 675 MW em usinas centralizadas e 1430 MW em micro e mini produções (Empresa de Pesquisa Energética, 2020).
Mesmo que essa participação corresponda a apenas uma pequena parcela da oferta de energia, a rapidez na difusão da tecnologia é alta. Ainda segundo os balanços energéticos da Empresa de Pesquisa Energética (2020), só em 2019 a geração solar cresceu em 92,2% em relação a 2018, seguindo tendências dos anos anteriores.
Esse crescimento da demanda tem proporcionado diminuições relevantes nos custos para implementação de sistemas fotovoltaicos, como se pode observar nos leilões de energia elétrica do país (EMPRESA DE PESQUISA ENERGÉTICA, 2017, 2018, 2019). Com essa expansão, o Brasil tem se tornado competitivo no mercado fotovoltaico, e apresenta grande potencial para investimentos na área.
Além de ser uma economia emergente e que incentiva o uso de fontes energéticas renováveis para produção elétrica, a localização geográfica do Brasil o torna um local propício para investimentos em energia solar. De acordo com Agência Nacional De Energia Elétrica (2005), o país, por ter grande parte de seu território próximo da linha do Equador, tem poucas variações na duração solar do dia e recebe uma quantidade significativa de radiação. Dessa forma, se torna importante entender o funcionamento de práticas de melhoria na eficiência energética de placas solares fotovoltaicas e o comportamento desses painéis em diferentes situações.
OBJETIVOS
Objetivo geral
Gerar energia elétrica a partir de uma fonte solar fotovoltaica e monitorar a eficiência do sistema de geração energética.
Objetivos específicos
• alimentar uma carga com a energia convertida de uma placa solar fotovoltaica
• elaborar um circuito de medição de parâmetros como tensão e corrente fornecidos pela placa
• elaborar programação para obtenção e tratamento dos dados recebidos
• montar banco de dados e página web para monitoramento do projeto
• acompanhar e analisar eficiência da placa conforme potencial solar da região.
MATERIAIS E MÉTODOS
Para a realização deste projeto, serão utilizados principalmente os seguintes componentes:
-
placa fotovoltaica de 10 W;
-
módulo ESP32 NodeMCU;
-
fusível 0,6 a;
-
capacitor 2200 uF;
-
regulador 7812;
-
regulador 7833;
-
sensor de corrente ACS712;
-
amplificadores operacionais;
-
conversor AD MCP3202;
-
lâmpada 12 V, 2 W.
Com esses componentes, o circuito básico será montado para a execução do projeto conforme a Figura 1.
Fonte: própria autoria.
O circuito será alimentado pela placa solar com uma tensão que varia de 19V a 20V quando exposta ao sol.
A placa deverá ficar exposta ao sol em local sem sombras, posicionada em direção ao norte e com uma inclinação referente à latitude da cidade.
Para o circuito de carga, serão utilizados componentes como um fusível, um capacitor e reguladores 7812 e 7833. O objetivo desses componentes é fazer a proteção do circuito e a regulagem da tensão que a carga irá receber. A tensão gerada pela placa irá alimentar uma lâmpada de 12 V e o microcontrolador ESP32, que funciona com uma tensão de entrada de 3,3 V (ESPRESSIF SYSTEMS, 2021).
Um sensor de corrente ACS712 que realiza medição a partir do efeito Hall será utilizado para as medições. Para além do circuito básico, em função da melhoria da resolução do sinal obtido, poderão ser incrementados ao circuito amplificadores operacionais 741 e um conversor AD MCP3202, além de divisores de tensão para obtenção dos valores de tensão gerados pela placa. O sinal amplificado será enviado ao ESP32.
O módulo ESP32 (figura 3) terá a função de fazer a obtenção e tratamento dos dados solicitados. Uma programação será elaborada para calcular os valores proporcionais de tensão (V), corrente (A) e potência (W) sobre as leituras obtidas, enviar esses dados via Wi-Fi para uma plataforma de análise e armazená-los em um banco de dados. A partir do ESP32, um web-server para acesso local pela internet também será criado.
Já a plataforma de acesso remoto será realizada com base na utilização de máquinas virtuais do Amazon Web Service (AWS). Um web-server será criado a partir de uma instância do tipo EC2 (Amazon Elastic Compute Cloud) (AMAZON WEB SERVICE, 2021), com o auxílio do software Visual Studio Code e ferramentas de programação como o Node-RED (MICROSOFT, 2021; OpenJS Foundation, [2021]).
Dentre algumas análises na prática com o projeto, figura 3, a dashboard mostrou os dados da tensão de forma satisfatória, figura 2.
Figura 2. Dashboard do projeto.
Fonte: própria autoria.
Figura 3. Projeto na prática.
Fonte: própria autoria.
Esse projeto utiliza o software de programação em blocos, Node-Red e de uma interface de nível (Figura 4). No software foi utilizado comunicação por Message Queuing Telemetry Transport (MQTT), protocolo de mensagens para sensores e dispositivos móveis para redes IP, que é responsável pela transmissão entre os dados dos sensores, como corrente, tensão que foi o objetivo desse trabalho, junto com o microcontrolador ESP32 e Node-Red (Figura 5).
Figura 4. Interface gráfica do aplicativo Node-RED
Fonte: própria autoria.
Foi feito uma melhoria na dashboard para a leitura dos dados como a corrente, tensão e potência (Figura 5).
Figura 5. Interface dos dados da placa solar.
Fonte: própria autoria.
RESULTADOS E DISCUSSÕES
Feito o projeto, é possível fazer análise de que precisa-se melhorar o circuito, pois faltou componentes e houve instabilidade no sensor de corrente. Com isso, foi possível analisar somente a tensão em que a placa fotovoltaica se encontrava, com o não funcionamento do sensor de corrente, não foi possível gerar a potência. Pretende-se melhorar o circuito para obter melhores resultados, e também aprofundar no projeto construindo um protótipo de rastreador solar. Como o circuito não funcionou, foi construído um circuito utilizando um potenciômetro, para analisar o funcionamento da dashboard. Com isso, foi possível analisar conforme aumentava e diminuía o potenciômetro.
[ID:63] Autor: - Criado em: 2021-07-07 22:37:01 - [ Compartilhar ]
ESTUDO COMPARATIVO NO CONTROLE DE TEMPERATURA DE FLUXO DE ÃGUA A PARTIR DO USO DOS CONTROLADORES PID E ON-OFF
O presente projeto utiliza-se do software de programação Node-Red e de uma interface gráfica (Figura 1) que o próprio software oferece. No software foi utilizado nodos de comunicação por Message Queuing Telemetry Transport (MQTT), protocolo de mensagens leve para sensores e pequenos dispositivos móveis otimizado para redes TCP/IP, que é responsável pela transmissão entre os dados dos sensores (temperatura, corrente elétrica e fluxo de água), aquisitados pelo microcontrolador ESP32 WROOM-32, e o Node-Red (Figura 2).
Figura 1 - Interface gráfica do aplicativo Node-RED
Fonte: Autoria Própria
Figura 2 - Nodos responsáveis pela comunicação via dupla entre o Node-RED e o microcontrolador (em violeta) e sua impressão na interface gráfica
Fonte: Autoria Própria
O Node-RED e o MQTT também foram utilizados para a comunicação entre o aplicativo Telegram e o software Node-RED. O bot do Telegram (Figura 3) é privado e tem as seguintes funções: o repasse do link do dashboard da interface gráfica (citada acima), a definição da temperatura máxima e mínima do intervalo de temperaturas (definido pelo operador via Telegram e enviado via MQTT para o Node-RED e ESP32),a verificação do valor de temperatura atual, a verificação do intervalo de temperaturas atual e o envio de mensagens ao operador quando a temperatura está fora desse intervalo (Figura 4). Os nodos do Node-RED responsáveis pelo funcionamento do bot do Telegram são representados na Figura 5.
Figura 3 - Bot Telegram e suas funções
Fonte: Autoria Própria
Figura 4 - Aviso de saída do intervalo de temperaturas do bot do Telegram
Fonte: Autoria Própria
Figura 5 - Nodos responsáveis pelo funcionamento do bot do Telegram
Fonte: Autoria Própria
Por fim, foi utilizado um banco de dados MySQL para o armazenamento das variáveis do horário da leitura, da leitura atual de temperatura, da temperatura máxima e mínima. Os útlimos dez dados armazenados no banco foram impressos na interface gráfica na forma de tabela (Figura 6) e os nodos responsáveis pela leitura e escrita do banco de dados MySQL é são representados na Figura 7.
Figura 6 - Tabela com os últimos dez valores de leitura
Fonte: Autoria Própria
Figura 7 - Nodos responsáveis pela leitura e escrita do banco de dados MySQL
Fonte: Autoria Própria
[ID:62] Autor: - Criado em: 2021-07-07 22:34:26 - [ Compartilhar ]
MELHORIA DO PROTOTIPO DE APARELHO CPM PARA REABILITAÇÃO DE JOELHO
Metodologia e Aplicações de Uma Bancada De Reabilitação de Joelho
O presente projeto tem como objetivo a aquisição de dados de um de uma bancada de reabilitação de joelho por meio de sensores para acesso remoto para epara o acompanhamento de possiveis falhas na execução do movimento ou acompanhamento da melhora corporal, facilitando o acomanhaento do fisioterapeuta especializado, para a aprimoramento semanal do protocolo de reablitação, tendo em vista efetuar uma melhor apresentação do IHM para o fisioterapeuta e trazer uma tecnologia mais atual e concreto.
Para realizar esse projeto, é preciso estabelecer objetivos específicos:
- Criar uma instância EC2 na Amazon Web Services (AWS);
- Instalar Apache, MySQL e PHP na instância;
- Criar um RDS na AWS e configurar ele através do MySQL;
- Instalar o Node-RED na instância EC2;
- Utilizar o protocolo MQTT no Node-RED e no microcontrolador (Esp32);
- Construir uma interface dashboard através do Node-RED para que o usuário possa realizar o controle e visualizar os dados pela mesma;
- Integrar o banco de dados RDS no Node-RED;
- Desenvolver o circuito e integrar o Esp32;
- Aplicar o sistema na bancada de joelho;
O respectivo trabalho consta como um complemento do TCC do aluno Vinícius Bizache Cruz sobre "Melhoria do protopito de aparelho CPM para reabilitação de joelho ".
O sensor simulado para o projeto foi o encoder incremental, que apresenta uma alimentação em de 5 à 24Vcc, tendo uma resolução de 600 pulsos por rotação. A figura 1 representa o enconder
FIGURA 1. Enconder
fonte: proprio autor
Os dados serão coletados utilizando o ESP32 (Figura 2) e armazenados em uma database.
FIGURA 2. ESp 32
fonte: proprio autor
Para visualizar os dados lidos pelo sensor, foi elaborado um dashboard por meio da ferramenta Node-Red. Foi utilizado também o editor de código-fonte Visual Code para elaborar a programação, bem como uma máquina virtual, para possibilitar a comunicação.observada na figura 3 abaixo.
FIGURA 3. node red
fonte: proprio autor
Na interface desenvolvida pode-se observar graficos e indicadores das variaveis para facilitar a visualização. A figura 4 representa a dashboard elaborada. A mesma apresenta um comando de armazenamento de bancos de dados.
FIGURA 4. dashboard
fonte: proprio autor
[ID:61] Autor: - Criado em: 2021-06-17 16:18:16 - [ Compartilhar ]
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: - Criado em: 2021-05-31 18:04:57 - [ Compartilhar ]
Sistema de irrigação inteligente utilizando ESP32
Introdução
Com a falta de chuvas que atinge grandes regiões espalhadas pelo mundo inteiro, é de grande importância pensarmos em soluções para aproveitar da melhor forma possível esse bem tão essencial para a vida, que é a água. Pensando nisso, é de suma importância que todos nós economizem água, principalmente em lavouras de plantação. Desta forma esse projeto proposto tem como objetivo, a implementação de um sistema de irrigação inteligente, onde a planta vai receber de água a quantidade adequada para seu desenvolvimento. O sistema de irrigação proposto se dá por meio de gotejamento, que será aplicada diretamente em cada planta, o que reduzira o consumo de água e também o desperdício. A fim de realizar a automação do processo de irrigação localizada, utilizará um módulo ESP32, baseado no conceito de IoT (Internet das Coisas), montando uma central controladora de fluxo de água através da junção de uma bomba submersa e sensores de temperatura e umidade. Dessa forma o projeto estará visando a sustentabilidade de pequenas áreas de cultivo, aumentando a eficiência do plantio e diminuindo perdas com recursos hídricos, tornando mais rentável o setor da agricultura. Esse projeto tem como objetivo principal desenvolver um sistema capaz de controlar o bombeamento de água, através da umidade do solo. Este circuito possuirá automatização em seus acionamentos.
A horta do campus é de fundamental importância, pois a mesma não conta com fins lucrativos, mas sim ser auto suficiente, oferecendo hortaliças, auxiliando numa alimentação balanceada para os alunos do campus.
Objetivo
Um led, deverá acender e logo em seguida, acionar a bomba submersa quando a umidade do solo indicar valor abaixo de 30%(trinta por cento), e apagar logo após a umidade atingir um valor superior ao minimo estabelecido.
Objetivo específico
O projeto tem como intuito principal o desenvolvimento de um código, utilizando a plataforma dashboar, e aplicar para omitimização de uma horta que fica nas dependências do Instituto Federal, Campus Catanduva-SP. Tal horta, já conta com instalação de um sistema de irrigação automatizado em dois módulos agroflorestais. O sistema utiliza um microcontrolador Arduino que recebe a informação programada e ativa as válvulas de solenóide, acionadas por relés, ligando ou desligando a irrigação. Porém esse projeto que já está em andamento/funcionamento, encontra alguns desafios que por através deste projeto, espera se resolver. Um dos problemas mencionado por um servidor do campus, é e que o atual sistema com Arduino, precisa ser reprogramado frequentemente. Então esse trabalho propõe que essa alteração possa ser feita remotamente pela dashboard.
Matérias e Métodos.
Nesse trabalho usaremos um microcontrolador ESP32 cujo o mesmo apresenta-se como um meio inovador no desenvolvimento de projetos automatizados além do clássico módulo de comunicação Wi-Fi apresenta um sistema com processador Dual Core, Bluetooth híbrido e múltiplos sensores embutidos, tornando a construção de sistema como internet das coisas (IoT) muito mais simples e compacto.Usaremos também outros componentes eletrônicos e também desenvolver um código na plataforma Arduino que vai se cumunicar com a Esp32.
As características da placa são as seguintes:
- CPU: Xtensa® Dual-Core 32-bit LX6;
- Memória ROM: 448 KBytes;
- Clock máximo: 240MHz;
- Memória RAM: 520 Kbytes;
- Memória Flash: 4 MB;
- Wireless padrão 802.11 b/g/n;
- Conexão Wifi de 2.4Ghz (máximo de 150 Mbps);
- Antena embutida na placa;
- Conector micro USB para comunicação e alimentação;
- Wi-Fi Direct (P2P), P2P Discovery, P2P Group Owner mode e P2P Power Management;
- Modos de operação: STA/AP/STA+AP;
- Bluetooth BLE 4.2;
- Portas GPIO: 11;
- GPIO com funções de PWM, I2C, SPI, etc;
- Tensão de operação: 4,5 ~ 9V;
- Conversor analógico digital (ADC).
Sensor DHT11
É um sensor de umidade e temperatura que permite fazer leituras de temperaturas entre 0 a 50 Celsius e umidade entre 20 a 90%
As características do sensor DHT11 são as seguintes:
- Faixa de medição de umidade: 20 a 90%
- Faixa de medição de temperatura: 0° a 50°C
- Alimentação: 3-5VDC (5,5VDC máximo)
- Corrente 200uA a 500 mA
- Precisão de umidade de medição: +/- 5,0% UR
- Precisão de medição de temperatura: +/-2.0 °C
- Tempo de resposta: 2s
- Dimensão: 23x12x5mm (incluindo os terminais)
Sensor de umidade do solo higrômetro
É um sensor feito para detectar as variações de umidade no solo, sendo que quando o solo está seco a saída do sensor fica em estado alto, e quando úmido em estado baixo.
As características do sensor são as seguintes:
- Tensão de operação: 3,3-5v
- Sessibilidade ajustável via potenciômetro
- Saída digital e analógica
- Fácil instalação
- Led indicador para tensão (vermelho)
- Led indicador para saída digital (verde)
- Comparador LM393
- Dimensões PCB 3x1,5cm
- Dimensões sonda 6x2cm
- Comprimento cabo 21cm
Bomba Submersa
São bombas de recalque de elevado rendimento, concebida para circulação ou bombeamento de água em tanques, aquários ou lagos. Uma das maiores vantagens é que ela pode ser utilizada tanto em água doce quanto salgada devido ao seu impeller de cerâmica que evita corrosão. Ela é facilmente desmontável, permitindo que manutenções rotineiras sejam extremamente mais fáceis, evitando qualquer problema na bomba, como um impeller obstruído ou até mesmo danificado.
As caracteristicas da bomba submersa são:
- Alta eficiência com baixo consumo energético
- Elevada vazão e coluna d'água
- Impeller em cerâmica, que permite uso em aquários de água doce ou salgada
- Corpo resistente construído em plástico ABS
- Tela de proteção que evita que peixes entrem na bomba, assim como maiores resíduos que possam danificar o impeller
- Indicada para sumps, lagos, cascatas e fontes
- Fácil montagem e desmontagem para manutenções preventivas
- Suporte com fortes ventosas, que evitam que a bomba se movimente
- Acompanha kit de conexões
Parte do código
#include
#include
#include
#include "DHT.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#define DHTPIN 4
#define DHTTYPE DHT11
const char* ssid = "Flamengo";
const char* password = "997565941";
const char* mqtt_server = "henriqueifsp.duckdns.org";
DHT dht(DHTPIN, DHTTYPE);
WiFiClient espClient;
PubSubClient client(espClient);
const int bomba = 26;
const int bomba2 = 32;
const int umidade = 34;
long lastMsg = 0;
char msg[50];
int value = 0;
float h, hu, t;
//*****************************************************
void setup() {
Serial.begin(115200);
dht.begin();
setup_wifi();
client.setServer(mqtt_server, 1883);
//client.setCallback(callback);
//xTaskCreate(leumidade_task, "le umidade", 5000, NULL, 3, NULL);
xTaskCreate(letemperatura_task, "le temperatura", 5000, NULL, 4, NULL);
pinMode (bomba, OUTPUT);
pinMode (bomba2, OUTPUT);
}
Conclusão
Apesar das dificuldades encontradas devido a pandemia da COVID-19, o resultado foi satisfatório e o projeto atendeu o propósto inicial. Embora não tenha sido possível uma aplicação física do protótipo na horta do campus, os acionamentos funcionaram perfeitamante e o código que foi desenvolvido poderá ser utilizado futuramente para a continuidade de implementação da irrigação na horta do campus.
[ID:54] Autor: - Criado em: 2021-05-26 18:13:33 - [ Compartilhar ]
Node-Red Cursos
Sugestões para se capacitar em Node-Red
Instalação de nodes extras
- Node-RED Dashboard extra nodes
Node-RED Dashboard extra nodes (collection) - Node-RED (nodered.org)
Introdução ao Node-RED
O que é o Node-RED?
Node-RED é uma plataforma de programação visual para conectar dispositivos de IoT e criar fluxos de dados. Ele é baseado na linguagem JavaScript e é executado no Node.js.
Como instalar o Node-RED?
Para instalar o Node-RED, siga os seguintes passos:
- Instale o Node.js na sua máquina, se ainda não estiver instalado. Você pode baixá-lo no site oficial do Node.js.
Criando um fluxo básico no Node-RED
Agora vamos criar um fluxo básico para buscar uma cotação de dólar em formato JSON e exibi-la em um dashboard.
- Arraste um nó
inject
e um nóhttp request
para o canvas do Node-RED. - Configure o nó
inject
para injetar a mensagem a cada 5 segundos. - Configure o nó
http request
para fazer uma solicitação GET para a URLhttps://economia.awesomeapi.com.br/json/last/USD-BRL
. - Conecte o nó
inject
ao nóhttp request
. - Arraste um nó
debug
para o canvas do Node-RED e conecte-o ao nóhttp request
. - Clique em "Deploy" para salvar e implantar o fluxo.
- Abra a guia "Debug" na interface do Node-RED para ver a resposta da solicitação HTTP.
Exibindo a cotação do dólar em um dashboard
Agora que temos a cotação do dólar em formato JSON, vamos exibi-la em um dashboard.
- Arraste um nó
template
para o canvas do Node-RED. - Configure o nó
template
para exibir a cotação do dólar em um formato agradável. Por exemplo:
O preço atual do dólar é {{payload.USD_BRL.high}}.
- Conecte o nó
http request
ao nótemplate
. - Arraste um nó
ui_template
para o canvas do Node-RED e configure-o para exibir o conteúdo do nótemplate
. - Configure o nó
ui_template
para exibir o conteúdo HTML como texto. - Clique em "Deploy" para salvar e implantar o fluxo.
- Abra o dashboard do Node-RED em uma nova guia do navegador. Acesse a URL
http://localhost:1880/ui
para visualizar o dashboard. - O valor da cotação do dólar deve ser exibido no dashboard.
Este é apenas um exemplo básico de como usar o Node-RED para buscar dados de uma API e exibi-los em um dashboard. Existem muitos outros recursos disponíveis no Node-RED, como bancos de dados, integração com outros
Exemplos em scripts flow
Script 1: elaboração de um script flow que busque uma informação de cotação de dolar em formato json e exiba em dashboard.
Exemplo com uso dos módulos Netio
https://www.netio-products.com/en/application-notes/an31-node-red-example-of-rest-xml-communication-with-netio-4x
Cursos:
Desenvolvimento de aplicações integrando serviços Web, fontes de dados e dispositivos IoT com o uso do Node-RED. Ministrantes: Celso Alberto Saibel Santos e Jordano Ribeiro Celestrin (pdf) (github). Curso USP com reposítório e exemplos básicos json.
[2] Curso Udemy de Reginaldo Santos. Do Zero ao Node-Red (Prototipagem rápida). Assista ao curso liberado no Canal Youtube do Autor [playlist youtube] [aula 1-4 som editado] (Seção 7 Front End )
( Seção 8 Construindo Estação )
[3] HowTo: Node Red – Creating a User Interface with Dashboard Nodes
[4] Slide aplicaões: https://sesam-world.com/_pdf/sesam-134/05-IBM.pdf
[5] Passe, Fernando et al . Perspectivas para o uso do Node-Red no Ensino de IoT
[6] da Silva, Esdras Barbosa Lima J. Node-RED KNoT: Um módulo de integração da ferramenta Node-RED com a meta plataforma KNoT
[ID:50] Autor: - Criado em: 2021-05-18 02:32:34 - [ Compartilhar ]
Conheça o MQTT- Protocolo de Comunicação
O Protocolo Mqtt permite a comunicação entre os dispositivos para Internet das Coisas.
Teoria: Link 1, link 2
O seguinte tutorial, embora explica como instalar um broker Mosquitto no Ubuntu, sendo realizado os testes na instância Ubuntu cloud AWS.
Referência: https://www.vultr.com/docs/how-to-install-mosquitto-mqtt-broker-server-on-ubuntu-16-04
$ sudo apt-get update
$ sudo apt-get install mosquitto
$ sudo apt-get install mosquitto-clients
Habilite o redirecionamento de portas utilzando ufw
$ sudo apt install ufw $ sudo ufw allow 1883 $ sudo ufw allow 22 $ sudo ufw enable
Para testar mensagem assine (subscribe o tópico "test"
$ mosquitto_sub -t "test"
Publicando mensagem:
mosquitto_pub -m "message from mosquitto_pub client" -t "test"
Para segurança do broker, permita conexão apenas de usuários com senha. Crie o scrpit:
$ sudo nano /etc/mosquitto/conf.d/default.conf
Preencha o arquivo com o seguinte texto:
allow_anonymous false
password_file /etc/mosquitto/passwd
Execute o comando:
$ sudo systemctl restart mosquitto
Configure senha para o usuário por exemplo "dave"
$ sudo mosquitto_passwd -c /etc/mosquitto/passwd dave
Password: password
Reinicie a instância e repita os testes:
$ mosquitto_sub -t "test" -u "dave" -P "password"
$ mosquitto_pub -t "test" -m "message from mosquitto_pub client" -u "dave" -P "password"
O MQTT.fx é um Software Cliente versão Windows, onde é possivel testar protocolo MQTT. Com ele é possível publicar e assinar tópicos.
https://mqttfx.jensd.de/index.php/download
Existem diversos aplicativos para celular, utilizar o protocolo mqtt para suas aplicações IOT. O aplicativo android: MQTT Dash é muito simples de operar.
IOT com Smarphone
Este projeto da IBM, descreve uma aplicação de ensaios utilizando o giroscópio do celular como sensor IOT enviando para o Broker público HiveMQ
https://developer.ibm.com/tutorials/iot-mobile-phone-iot-device-bluemix-apps-trs/
Utilizando Arduino com MQTT
Enviando valores através de mensagens no formato Json para um broker mqtt
Utilize a biblioteca para implementar o serviço mqtt em exemplos com Arduino. A bilioteca oferece funções para leitura e publicação de mensagens em formato Json. O seguinte exemplo mostra uma função que prepara uma mensagem Json para ser publicada no broker.
Links:
[1] Utilizando MQTT com Node Red
[2] Video aula Teams, apresentando o MQTT.
[ID:48] Autor: - Criado em: 2021-05-11 21:28:53 - [ Compartilhar ]
Sistema de controle de acesso com detecção de máscara e temperatura corporal
Fonte: PyImageSearch
Em meio a pandemia de coronavírus diversas medidas foram criadas para conter o avanço da doença, uma dessas o uso obrigatório de máscaras em diversas regiões. Este projeto consiste em um sistema de controle de acesso autônomo IOT com detecção de uso de máscara e temperatura corporal, que tende a fazer o controle de acesso em locais fechados, permitindo a entrada de pessoas com máscara e temperatura corporal estável, e não permitindo o acesso de pessoas sem máscaras (ou com máscaras utilizadas de forma inadequada ao rosto) e com temperatura corporal considerada febril.
Os materiais a serem utilizados são: uma Raspberry Pi 4B, sensor de temperatura IR e câmera para fazer a detecção de máscara e por meio de Deep Learning com Computer Vision, a Raspberry Pi enviará dados para um webserver, que será responsável de fazer o controle de acordo com os parâmetros estabelecidos de acesso.
Espera-se que o sistema consiga liberar o acesso apenas de pessoas que estejam com uma temperatura estável e com o uso correto de máscara.
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
I - Sistema de verificação de uso de máscara
Para se verificar o uso de máscara uma programação em Python é utilizada .
Primeiramente um dataset de 1376 imagens é utilizado para o aprendizado de máquina e está dividido em 2 classes:
-
with_mask
: 690 imagens -
: 686 imagenswithout_mask
Após a finalização da etapa de aprendizado , um modelo é gerado, este modelo é usado por outra programação responsável por transmitir a câmera com quadros de verificação de uso de máscara.
O as linhas de código abaixo são responsáveis de enviar a cada 5 segundos dados do sensor para uma API
Na imagem abaixo temos como fica a estrutura da API com o envio dos dados
A estrutura anterior é requerida para o node-red e tratada como mostrado na imagem abaixo:
II - Sistema de verificação de temperatura
No sistema de temperatura o sensor envia os dados para uma DB MySQL que envia os dados mais recentes a uma página .php , este site .php é lido no Node-RED
Imagem do Dashboard finalizado:
Referências :
COVID-19: Face Mask Detector with OpenCV, Keras/TensorFlow, and Deep Learning - PyImageSearch
observations/mask_classifier at master · prajnasb/observations (github.com)
[ID:47] Autor: - Criado em: 2021-05-05 23:37:52 - [ Compartilhar ]
Node-Red, apresentação e instalação
Node RED, é a principal ferramenta de programação para a internet das coisas.
Construída em node.js, utiliza programação gráfica através de blocos (conhecidos como nós) com funções predefinidas para a realiação de tarefas por meio de um fluxo (flows).
A programação é realizada por meio de browser com acesso a back-end do framework.
Ambiente de programação
Há basicamente três tipos de nós.
nós de entrada (permitem que os dados sejam inseridos em uma aplicação),
nós de saída (permitem o envio de dados para fora de uma aplicação) e
nós de processamento (permitem a manipulação dos dados que entram nos mesmos afim de disponibilizar novos dados para o estágio posterior).
Há um vasta variedade de nós para as mais diversas aplicações possíveis instalados através do menu Manager.
Maiores informações sobre a aplicação e exemplos de códigos (flows) visite a pagina oficial: https://nodered.org
Instalação do Node-Red |
Para instalação do Node-red, sugerimos os seguintes links com tutorial. O primeiro link embora direciona para instalação em Debian, funcionou para instalação Ubuntu no AWS. A primeira etapa deve-se conectar com o servidor para utilizar os comandos prompt de atualização de pacotes:
$ sudo apt-get update
$ sudo apt-get upgrade -y
Passo 2: Instale NPM e NodeJS
$sudo apt install npm
$ sudo apt-get install nodejs
Verificar versão instalada
$ node -v
Atualizar versão node
Há um pacote chamado n, que nos ajuda a alterar a versão do Node
$ sudo npm install -g n
$ sudo n stable
Reinicie seu terminal para que as mudanças tenham efeito.
Instalando Node-red com npm
$ sudo npm install -g --unsafe-perm node-red
$ sudo n stable
Node-red em linha de comando criando usuario admin
$ sudo npm install -g --unsafe-perm node-red-admin
Para que Node-red na ative na inicialização, edite o arquivo nodered.service e cole o conteúdo deste Script deste ( link), salve-o o novo arquivo
[Unit]
Description=Node-RED
After=syslog.target network.target
[Service]
ExecStart=/usr/local/bin/node-red --max-old-space-size=128 -v
Restart=on-failure
KillSignal=SIGINT
# log output to syslog as 'node-red'
SyslogIdentifier=node-red
StandardOutput=syslog
# non-root user to run as
#WorkingDirectory=/home/rui/
#User=rui
#Group=rui
# if using a root user
WorkingDirectory=/root/
User=root
Group=root
[Install]
WantedBy=multi-user.target
$ sudo nano /etc/systemd/system/nodered.service
Para iniciar automaticamente o nodered toda vez que o sistema reiniciar, é necessário rodar o comando:
sudo systemctl enable nodered.service
Habilite a porta 1880 nas regras de portas do Oracle ou AWS, e rode o prompt:
sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 1880 -j ACCEPT
sudo netfilter-persistent save
Use os comandos de service QUANDO precise inicilizar, parar, status ou reinicializar o nodered
sudo service nodered start
sudo service nodered stop
sudo service nodered status
sudo service nodered restart
O serviço Node-Red funcionará no endereço http://seuip:1880 de seu servidor. Para AWS utilize as orientações deste link (https://www.techunits.com/topics/setup-guides/step-by-step-guide-to-install-node-red-on-ubuntu-18-04-lts/) para alocar a porta para este serviço.
Embora no final da instalação apareça um endereço de ip local (127.0.0.0), confira o serviço funcionando em http://ip_seu_servidor:1880
Colocando senha para acesso aos flows |
Esta instalação porém não ativa uma senha para bloquear o acesso aos seus flows.
Para colocar uma senha de segurança de acesso aos flows siga as seguintes instruções.
https://nodered.org/docs/user-guide/runtime/securing-node-red
Instale o módulo de segurança como root (super usuário)
$ sudo ufw allow 1880
$ sudo su
$ npm install -g --unsafe-perm node-red-admin
Rode o seguinte script e determine uma senha para o login "admin", ao pressionar ENTER, aparecerá esta senha criptografada, copie-a:
$ node-red admin hash-pw
Copie esta senha que será inserida no script de credenciais. Acesse a pasta oculta ./nodered em /home/ubuntu ou /root. Edite o arquivo ainda com root
$ cd .node-red
$ nano settings.js
Localize o seguinte trecho no arquivo ./node-red/settings.js , para retirar os comentarios e cole a senha criptografada.
CRTL+X para salvar o arquivo. Reinicie o servidor utilizando o comando reboot ou a na área de administração das instâncias do cloud (AWS ou Oracle).
Links:
[1] Video aula Teams Prof. Marcos Chaves.
[ID:45] Autor: - Criado em: 2021-05-05 03:55:05 - [ Compartilhar ]
Estação De Controle Climático
O presente projeto tem por finalidade servir à comunidade desempenhando o papel de uma estação de controle climático, isso é, com armazenamento em nuvem. Em teoria, ele funcionará como um painel de estação meteorológica na nuvem que permitirá visualizar os registros do sensor utilizado, o ESP32, remotamente. Sensor irá solicitar o HTTP POST a um script PHP para a inserção dos dados em um banco (database) MySQL. O sensor permitirá mensurar a umidade e a temperatura, onde também ele estará conectado com um ar e um humidificador, onde você pode controlar a temperatura mínima e a temperatura máxima, quando chegar a temperatura máxima o ar condicionado ele é ativado e quando atingir a temperatura mínima ele é desligado, isso também funcionará com o humidificador, onde a o usuário irá defininir umaumidade relativa máxima e uma mínina e quando a leitura da umidade for igual a umidade relativa minima definida pelo usiário ela irá ligar o umidificadore quando atingir a umidade relativa máxima ela desligará, onde ttambém contém um botão onde o usuário poderia ligar manualmente o ar condicionado ou o humidificador. Em relação à construção do projeto será utilizado, incluso hardware e software, as tecnologias abaixo:
- ESP32 – Programado com Arduíno IDE
- Servidor de hospedagem + nome de domínio
- Script PHP para inserção de dados no MySQLe exibição em uma página web
- Banco de dados MySQL para armazenamento
- Node-Red
- aws
- apache/PHP
- MQTT
Será utilizado o sensor BME280 modelo capaz de realizar a medição de pressão atmosférica, umidade e temperatura, também conhecido como barômetro é um módulo digital de alta capacidade e resolução, utilizado nas mais diversas aplicações junto a microcontroladores, como por exemplo ESP32.
- Utilizado em projetos de estações meteorológicas e aperfeiçoamento de navegação GPS, ele apresenta grande potencial e mostra ser um produto de grande auxílio para projetistas que procuram um exclusivo produto capaz de executar as três funcionalidades principais sem ocupar muito espaço.
- Através de seu padrão de conexão por I2C, o sensor de Pressão BME280 aumenta a sua praticidade de utilização, além de contribuir na maior precisão da obtenção de resultados.
- Desenvolvido com base no sensor Bosh ME280, o Sensor possui design simplificado com pequenas dimensõe que tornam este pequeno módulo um produto de fácil adaptação nos mais diversificados projetos, além de contar com 2 exclusivos furos para melhorar a fixação do mesmo junto aos mais diversificados projetos.
CARACTERÍSTICAS:
- Sensor de Pressão BME280;
- Sensor de Umidade;
- Sensor de Temperatura;
- Produto pequeno de fácil utilização;
- Sistema de comunicação I2C;
- Compatível com diversos modelos de microcontroladores;
Sobre o módulo ESP32 que é utilizado no projeto ele é um módulo de alta performance para aplicações envolvendo wifi, contando com um baixíssimo consumo de energia. Com 4 MB de memória flash, o ESP32 permite criar variadas aplicações para projetos de IoT, acesso remoto, webservers e dataloggers, entre outros.
Foi utilizado no projeto que irá 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:.
Logo após a criação da instância, foi realizado uma instalação de um servidor HTTP Apahce, php e mysql. Para a instalação foi realizado o tutorial descrito no site da Digital Ocean: .
[ID:42] Autor: - Criado em: 2021-05-04 21:15:13 - [ Compartilhar ]
Controle e monitoramento em rede local para pequenos cultivos
INTRODUÇÃO
Nos últimos anos a produção agrícola brasileira tem-se desenvolvido constantemente em suas produções, podendo se tornar um dos grandes fornecedores de alimentos no futuro. Com a alta produção também se acarreta gasto energético e hídrico, que podem levar ao aumento do preço do produto. De acordo com o relatório O Estado da Alimentação e da Agricultura (SOFA) 2020, a agricultura irrigada corresponde a mais de 70% do uso de água no planeta, a qual nem sempre é utilizada da melhor forma, podendo haver desperdício devido ao mal uso e controle da irrigação. Em um relatório divulgado pela ONU, o uso de água tem crescido em uma taxa aproximadamente duas vezes maior do que o crescimento da população ao longo do último século. Todos esses gastos hídricos são atribuídos a má utilização dos métodos de irrigação do cultivo.
Segundo Coelho e Silva (2009), o conceito de Agricultura de Precisão é associado a utilização de tecnologia, sendo hardware e software, com o intuito de monitorar e controlar parcelas de terreno buscando a melhoria na produção e reduzir impactos ambientais resultantes das atividades agrícolas. Balafoutis, Van Evert e Fountas (2020) afirmam que as tecnologias ajudam a coletar e transmitir dados em tempo real a baixo custo, permitido realizar uma análise para determinar o estado do agroambiente e posteriormente aplicar intervenções técnicas no nível de campo por meios convencionais ou automatizadas para melhoria do processo.
A umidade é um dos fatores do solo que quando empregada sua análise e automatização apresenta diversos benefícios para agricultura, como por exemplo, a economia de água, a melhora nos rendimentos das plantas, a redução a dependência dos fertilizantes e a melhora na qualidade das culturas (Hassan-Esfahani et al., 2014). Um exemplo aplicado por Zotarelli et al. (2009), mostrou que plantios que utilizaram sensores de umidade no solo obtiveram uma taxa de 15 a 51% de redução da utilização de água na irrigação em comparação com irrigação de tempo fixo e observou um aumento de produtividade da safra ente 11 a 26% (apud Datta et al., 2018).
A determinação da quantidade de água que o solo é capaz de reter, está ligado com as características físico, químico e biológico do solo, podendo afetar a produtividade agrícola. A possibilidade de determinar a umidade do solo é de grande interesse para trabalhos de irrigação. Segundo Kaiser et al. (2010), a umidade do solo apresenta influência na porosidade e suscetibilidade à compactação do solo.
Klein (2008) destacou que existem diversos métodos e técnicas para determinação da umidade do solo, tendo principais diferenças entre eles a forma de medição, custo, tempo de resposta e operacionalidade em campo. Ele também afirma que o método de extração de água de uma amostra de solo por meio do calor utilizando-se estufas elétricas, é capaz de determinar a umidade gravimétrica do solo pela relação entre a massa de água e a massa do solo seco. Santos (2006) afirma que esse método é destrutivo, mas muito preciso, sendo utilizado como padrão de calibração para outros equipamentos.
Existem diversos tipos de sensores disponíveis, com desempenhos variáveis, uns medem o teor de umidade do solo, enquanto outros medem o potencial da água no solo e a constante dielétrica. Dentre eles tem-se sensores TDR e TDT, que são precisos, mas de alto custo para aplicação. Em contraste, os sensores de capacitância são mais baratos, mas requerem calibração para resultados de medição satisfatórios. A capacitância do sensor é determinada pela constante dielétrica e este sensor fornece dados de umidade do solo em tempo real de acordo com a variação. Visconti, Paz, Martínez e Molina (2014), descrevem que os sensores que buscam obter dados de umidade explorando propriedades dielétricas do solo, são relativamente baratos e flexíveis comparados aos sensores TDR e TDT. Atualmente existe diversos modelos comerciais de sensores capacitivos para determinação do teor de umidade no solo, tendo como vantagens o baixo custo e fácil utilização, sendo utilizados para aplicações em pequenas hortas e plantas para a automatização.
Tendo como base referências em relação ao custo dos sensores, os sensores capacitivos se mostram mais atingíveis os consumidores, considerando a implementação da automação de pequenos cultivos e plantas residenciais. O presente projeto visa utilizar o sensor de umidade de baixo custo, implementando em um sistema automatizado, procurando manter ou melhorar a produtividade do cultivo e reduzir os gastos hídricos.
OBJETIVOS
Este trabalho apresenta como objetivo geral reduzir problemas relacionados à irrigação e agricultura, buscando o controle e a economia de ambas as partes, aumentando a produção e diminuindo a quantidade de água utilizada e, ao mesmo tempo, minimizar a intervenção manual nas operações de irrigação, tornando uma opção eficaz para a irrigação inteligente.
Objetivo específico
Por meio de utilização de um microcontrolador e um sensor de umidade pretende-se:
- Automatização de pequenos cultivos
- Diminuir gastos de água
- Controlar a irrigação de acordo com a necessidade da planta
- Controle e monitoramento remoto por meio de uma web server local
- Coleta de dados sobre a umidade e volume de água do cultivo
MATERIAIS E MÉTODOS
O projeto a ser desenvolvido é um sistema de irrigação automatizada, utilizando o microcontrolador esp32, na qual possui uma placa wireless, para realizar uma interface de monitoramento remoto em rede local. Para isso é necessário a utilização de sensores de monitoração do solo, uma bomba d’água e um atuador para acionamento da bomba.
Esp32
O Esp32 faz parte de uma família de microcontroladores feitos a partir de um único chip de 2,4 GHz de baixo custo e baixo consumo de energia com conexões Wi-Fi e Bluetooth já integradas, o que facilita a implementação de um servidor local para a interface do programa.
Possui um total de 39 pinos que podem ser usados tanto para input quanto output, dentre eles, 10 pinos podem ser usados como capacitive touch pins, capazes de serem acionados apenas por um toque. Este microcontrolador é responsável por receber e enviar dados para rede local e por meio da programação a ser desenvolvida, será capaz de acionar os irrigadores. A programação será realizada na plataforma Arduino IDE utilizando a linguagem C para os sensores e atuadores e HTML para o servidor web.
Sensor de umidade
Os sensores de umidade do solo, conhecidos também como higrômetros, tem como função determinar a umidade do solo. Basicamente há dois modelos de sensores sendo eles os resistivos e capacitivos. Os sensores resistivos obtêm o teor de umidade do solo com a corrente resultante em seus terminais. Já o capacitivo apresenta uma vida útil maior em comparação aos resistivos devido a ter maior resistência a corrosão, medem a variância da capacitância que é traduzida em umidade relativa. A escolha do sensor também se difere ao uso para diferentes tipos de cultivos, pois determinados cultivos possuem as raízes mais profundas por isso precisam de sensores de maior alcance ao sistema radicular.
No presente projeto será utilizado um sensor de umidade capacitivo utilizando comunicação com o esp32 que mandará as informações para a web server local, onde será definido o valor do intervalo do teor de umidade do solo para o plantio em questão. O usuário terá o feedback da umidade do solo por meio do sensor, o qual poderá ser definido e modificado na web server, escolhendo a porcentagem em que o sistema de irrigação deverá ligar e desligar.
Atuador e bomba d’água
Para sistemas de irrigação, as bombas a serem utilizadas precisarão de tipos de atuadores diferentes para que consigam alimentá-la. Para o projeto em questão será utilizado uma bomba d’água 12V, com isso será desenvolvido um circuito de acionamento com um optoacoplador e relé. O modulo optoacoplador será desenvolvido utilizando o software Proteus que acionará a bomba de acordo com os valores de umidade especificadas pelo usuário na web server.
RESULTADOS ESPERADOS
Como resultado deste trabalho espera-se um protótipo que automatize um sistema de irrigação para pequenos cultivos a pequenas plantas, por meio do uso do ESP32 e monitoramento via web conectado à rede local, proporcionando uma redução nos gastos hídricos e aumento da produtividade pela manutenção do teor de umidade do solo designado a planta em questão.
Para disseminação dos resultados obtidos neste projeto, os dados serão apresentados para uma banca avaliadora para então determinar futuros processos a serem implementados e então decidir por uma possível publicação.
[ID:41] Autor: - Criado em: 2021-05-04 21:01:19 - [ Compartilhar ]
Eletropostos: onde ficam?
Em São Paulo, estado em que pode se encontrar uma grande quantidade de veículos elétricos em uso, a quantidade de eletropostos ainda é baixa. Em maioria, os usuários de elétricos fazem a recarga da bateria em suas próprias casas, onde precisam instalar carregadores. A imagem trás alguns dos carregadores para carros elétricos do estado.
Fonte: https://g1.globo.com/carros/carros-eletricos-e-hibridos/noticia/2019/08/13/o-quanto-roda-onde-recarregar-custo-como-e-o-dia-dia-com-carros-eletricos.ghtml
[ID:39] Autor: - Criado em: 2021-05-04 19:14:14 - [ Compartilhar ]
Sobre a inserção de veÃculos elétricos no Brasil
A principal diferença na tecnologia empregada entre veículos elétricos (VEs) e veículos convencionais (VMCIs) está na configuração do powertrain, que é o conjunto de componentes que trabalham na conversão de potência do motor em movimento. Enquanto um VMCI, que utiliza um motor de combustão interna, consome grandes quantidades de combustível e gera emissões de escapamento, os veículos elétricos podem ser parcial ou totalmente abastecidos com eletricidade (AMSTERDAM ROUNDTABLES FOUNDATION, 2014).
O sistema integrado de VEs envolve tecnologias das áreas de engenharia elétrica, mecânica e química (CHAU et al., 2017), e se divide nas subáreas de sistema de energia, sistema de propulsão e sistema auxiliar. Conforme Chau et al. (2017), o sistema de propulsão tem sido desenvolvido com o objetivo de melhorar a eficiência dos motores, a densidade de potência (potência por unidade de volume) e a densidade de torque (unidade de torque por volume), e a sua controlabilidade.
Para veículos híbridos comuns (VEHs) e híbridos plug-in (VEHPs), Chau et al. (2017) indica que se utilizam os motores ISG (Integrated starter generator) e EVT (Electric variable transmissor), enquanto que para veículos totalmente elétricos (VEBs), os motores utilizados se enquadram nas categorias de motores DC série, DC shunt, DC de excitação independente e DC de ímã permanente, motores de indução gaiola-de-esquilo, motores síncronos PM, PM BLDC e de relutância variável.
Conforme o estudo de Lorf et al. (2013), o powertrain pode operar nos modos de tração, frenagem, recuperação e coasting. No modo de tração, o fornecedor energético aplica uma força de propulsão às rodas, e no modo coating, a fonte de energia é desengatada e a resistência do veículo é igualada à diminuição de energia cinética. Na frenagem, os freios mecânicos dissipam energia cinética da desaceleração como calor, e na recuperação, a energia cinética da desaceleração é parcialmente recuperada e transferida para o sistema de armazenamento energético (LORF et al, 2013).
De acordo com as características do powertrain do veículo, a bateria utilizada também varia e exerce influência considerável na utilização do veículo. Para veículos convencionais, as baterias de chumbo ácido fornecem a energia para combustão interna do motor e para o sistema elétrico do veículo (CARNEIRO et al., 2017). Quando se trata de veículos elétricos, no entanto, a bateria utilizada depende de características específicas.
Segundo Lowe et al. (2010), para VEHs, a bateria atua principalmente na armazenagem de energia proveniente da frenagem regenerativa, assim, precisa armazenar menores quantidades de energia. Para VEHPs, a bateria necessita de maior capacidade energética e potência, enquanto para VEBs, em que o motor é carregado somente pela bateria, torna-se necessário ter grande capacidade energética, ciclos de carga/descarga completos e tamanho maior (LOWE et al., 2010). As baterias de íon-lítio, por conta de sua alta densidade energética (INTERNATIONAL RENEWABLE ENERGY AGENCY, 2017), são as mais utilizadas em veículos elétricos.
Quanto ao sistema auxiliar dos veículos, Chau et al. (2017) indica que os desenvolvimentos tecnológicos são voltados às áreas de auxílio ao fornecimento energético, direção hidráulica e controle de temperatura, com o objetivo de reduzir o consumo energético dos eletrônicos e melhorar a capacidade do veículo de fazer manobras.
Por conta das características de sua estrutura e powertrain, veículos que utilizam energia elétrica apresentam como maior vantagem a possibilidade de redução do emprego de combustíveis fósseis e a diminuição na emissão de gases de efeito estufa (GEE ou CO2eq) durante sua fase de uso. A produção e tratamento de fim de vida dos veículos, no entanto, também gera impactos ambientais. Assim como na fase de uso dos veículos, a fonte de energia elétrica utilizada na produção do powertrain e da bateria é o fator com maior potencial de mitigação das emissões de GEE (HELMERS; DIETZ; WEISS, 2020).
Conforme o estudo de Transport & Environment (2020), mesmo em locais onde a eletricidade tem maior pegada de carbono, VEBs podem ser mais limpos que convencionais. Mesmo veículos elétricos híbridos, como os VEHs e os VEHPs, que apresentam uma conjunção de motor elétrico e motor a combustão interna, podem apresentar significante redução na emissão de CO2eq (INTERNATIONAL ENERGY AGENCY, 2019).
Em vista da perspectiva ambiental positiva oferecida por esse tipo de tecnologia, as vendas globais de VEs crescem de forma significativa. Em 2019, VEBs e VEHPs foram 2,6% do total de vendas, e o estoque mundial de elétricos chegou a 7,2 milhões de veículos (INTERNATIONAL ENERGY AGENCY, 2020).
No Brasil, entretanto, os veículos elétricos representam uma pequena parcela da frota total, que é composta, principalmente, por veículos flex-fuel e veículos a gasolina (ASSOCIAÇÃO BRASILEIRA DA INDÚSTRIA DE AUTOPEÇAS; SINDICATO NACIONAL DA INDÚSTRIA DE COMPONENTES PARA VEÍCULOS AUTOMOTORES, 2020). Apesar da pouca expressividade da tecnologia na frota, a difusão de elétricos avança anualmente. De acordo com estimativas da Associação Brasileira Da Indústria De Autopeças e do Sindicato Nacional Da Indústria De Componentes Para Veículos Automotores (2020), veículos híbridos e elétricos representavam 0,031% da frota total do país em 2018, e passaram a ser 0,1% em 2019. Quanto ao número de licenciados, em 2020, veículos leves híbridos e elétricos representaram 1% do licenciamento anual, contra apenas 0,4% de participação em 2019 (ASSOCIAÇÃO NACIONAL DOS FABRICANTES DE VEÍCULOS AUTOMOTORES, 2021).
Segundo o estudo da Empresa de Pesquisa Energética (2020), o setor de transportes brasileiro é responsável pelo consumo de 32,7% da energia produzida no país e por 45,4% das emissões totais associadas à matriz energética. A energia utilizada nesse setor é proveniente de fontes como óleo diesel, gasolina, etanol, etc., e para veículos leves, 55% da energia para abastecimento vem da gasolina tipo A, e 45% é proveniente do etanol (EMPRESA DE PESQUISA ENERGÉTICA, 2020).
Assim, a inserção de veículos que geram menor consumo energético e menos impacto ambiental pode ser particularmente benéfica para o país. A matriz elétrica brasileira, composta principalmente por fontes de energia renováveis (EMPRESA DE PESQUISA ENERGÉTICA, 2020), permite que a energia elétrica utilizada por VEs tenha menor pegada de carbono e que o veículo tenha menor impacto durante sua fase de uso.
Dessa maneira, o estudo da tecnologia empregada nos sistemas auxiliar, de propulsão e de energia para VEs é importante para que se possa trazer a tecnologia às fábricas brasileiras e aumentar a adesão do uso de elétricos pela população. Para tal, é preciso entender como ocorrerá o aumento na demanda de energia elétrica e qual o impacto ambiental causado pelas emissões durante as fases de produção, uso e descarte dos veículos.
Ademais, é preciso entender como a inserção de elétricos pode influenciar o mercado veicular brasileiro e como é possível adequar a tecnologia à matriz energética do país e otimizar sua eficiência, de maneira a diminuir os impactos ambientais causados pela frota.
REFERÊNCIAS BIBLIOGRÁFICAS
AMSTERDAM ROUNDTABLES FOUNDATION. EVolution: electric vehicles in Europe gearing up for a new phase? Amsterdam Roundtable Foundation, McKinsey & Company The Netherlands. 2014. 60 p. Disponível em: https://www.mckinsey.com/~/media/McKinsey/Locations/Europe%20and%20Middle%20East/Netherlands/Our%20Insights/Electric%20vehicles%20in%20Europe%20Gearing%20up%20for%20a%20new%20phase/Electric%20vehicles%20in%20Europe%20Gearing%20up%20for%20a%20new%20phase.ashx. Acesso em: 16 jan. 2021.
ASSOCIAÇÃO NACIONAL DOS FABRICANTES DE VEÍCULOS AUTOMOTORES. Carta da ANFAVEA 416. São Paulo: ANFAVEA, 2021. Disponível em: http://www.anfavea.com.br/cartas/carta416.pdf. Acesso em: 18 jan. 2021.
ASSOCIAÇÃO BRASILEIRA DA INDÚSTRIA DE AUTOPEÇAS; SINDICATO NACIONAL DA INDÚSTRIA DE COMPONENTES PARA VEÍCULOS AUTOMOTORES. Relatório da frota circulante. Brasil: ABIPEÇAS; SINDIPEÇAS, 2020. Disponível em: https://www.sindipecas.org.br/sindinews/Economia/2020/RelatorioFrotaCirculante_Abril_2020.pdf. Acesso em: 18 jan. 2021.
CARNEIRO, R. L.; et al. Aspectos essenciais das baterias chumbo-ácido e princípios físicos-químicos e termodinâmicos do seu funcionamento. Revista Virtual de Química: Bauru, v. 9, n. 3, p. 889-911, jun. 2017. Disponível em: http://static.sites.sbq.org.br/rvq.sbq.org.br/pdf/v9n3a06.pdf. Acesso em: 20 jan. 2021.
CHAU, K. T.; JIANG, C.; HAN, W.; LEE, C. H. T. State of the art electromagnetics research in electric and hybrid vehicles. Progress in electromagnetics research, [s.l.], v. 159, p. 139-157, 2017. Disponível em: http://www.jpier.org/PIER/pier159/10.17090407.pdf. Acesso em: 19 jan. 2021.
EMPRESA DE PESQUISA ENERGÉTICA. Balanço energético nacional 2020. Rio de Janeiro: EPE, 2020. Disponível em: https://www.epe.gov.br/sites-pt/publicacoes-dados-abertos/publicacoes/PublicacoesArquivos/publicacao-479/topico-521/Relato%CC%81rio%20Si%CC%81ntese%20BEN%202020-ab%202019_Final.pdf. Acesso em: 15 jan. 2021.
HELMERS, E.; DIETZ, J.; WEISS, M. Sensitivity analysis in the life cycle assessment of electric vs. combustion engine cars under approximate real-world conditions. Sustainability, [S.l.], v. 12, n. 1241, p. 1-31, 2020. Disponível em: https://www.mdpi.com/2071-1050/12/3/1241. Acesso em: 05 jul. 2020.
INTERNATIONAL ENERGY AGENCY. Global EV outlook. França: IEA, 2019. Disponível em: https://www.iea.org/reports/global-ev-outlook-2019. Acesso em: 18 jan. 2021.
INTERNATIONAL ENERGY AGENCY. Global EV outlook. França: IEA, 2020. Disponível em: https://www.iea.org/reports/global-ev-outlook-2020. Acesso em: 18 jan. 2021.
INTERNATIONAL RENEWABLE ENERGY AGENCY. Electricity storage and renewables: costs and markets to 2030. Abu Dhabi: IRENA, 2017. Disponível em:http://www.irena.org/publications/2017/Oct/Electricity-storage-and-renewables-costs-and-markets. Acesso em: 18 jan. 2021.
LORF, C.; et al. Comparative analysis of the energy consumption and CO2 emissions of 40 electric, plug-in hybrid electric, hybrid electric and internal combustion engine vehicles. Elsevier, Nova York, v. 23, p. 12-19, ago. 2013. Disponível em: http://www.academia.edu/28242562/Comparative_analysis_of_the_energy_consumption_and_CO2_emissions_of_40_electric_plug-in_hybrid_electric_hybrid_electric_and_internal_combustion_engine_vehicles. Acesso em: 15 jan. 2021.
LOWE, M.; et al. Lithium-ion batteries for electric vehicles: the U.S. value chain. Durham: Duke University Global Value Chains Center. 2010. 76 p. Disponível em: https://www.researchgate.net/publication/294580055_Lithium-ion_Batteries_for_Electric_Vehicles_the_US_Value_Chain. Acesso em: 19 jan. 2021.
MINISTÉRIO DO MEIO AMBIENTE. Inventário nacional de emissões atmosféricas por veículos automotores rodoviários 2013: ano-base 2012. Brasil: MMA, 2013, 115p. Disponível em: https://iema-site-staging.s3.amazonaws.com/2014-05-27inventario2013.pdf. Acesso em: 19 jan. 2021.
Fonte: Projeto de TCC de Julia Massareli
[ID:38] Autor: - Criado em: 2021-05-04 18:54:42 - [ Compartilhar ]
Elaboração de um ambiente didático industrial implementando um sistema supervisório para controle e monitoramento com o modulo ESP32
O presente trabalho tem por objetivo apresentar o desenvolvimento e implantação de um sistema supervisório para monitoramento, análise e controle de um processo automático de injeção, o qual contara com uma simulação contendo seus principais atuadores, todo o processo será montado em cima do software NodeRED e o modulo ESP32, a comunicação e programação dos componentes será realizada através do uso da linguagem C/C++ e o protocolo MQTT. A finalidade do trabalho e acrescentar funções ao sistema padrão de supervisórios, o qual trabalhar com Iot (internet of things) nos possibilita abranger essa nova área chamada Internet, visando o melhoramento no desempenho e o baixo custo
Sistemas Supervisórios
Na história, nos meados da década 70/80, o avanço da eletrônica ficou cada vez mais significante, surgindo os microprocessadores, assim o computador se converteu em uma peça chave em diversos setores industriais, assim surgindo os sistemas supervisórios, teoricamente um sistema supervisório destina-se a capturar e armazenar em um banco de dados informações sobre o processo de produção, vindo de sensores.
Esp 32
O nome ESP32 se refere a um chip com função de microcontrolador produzido pela Espressif para trabalhar com dispositivos móveis e aplicações de Internet das Coisas. O ESP32 é capaz de funcionar em ambientes com temperatura na faixa de - 40°C até 125°C. O módulo contém Wi-Fi e Bluetooth integrados, podendo funcionar como um sistema standalone ou como escravo de outro dispositivo. Conta com um processador de 32 bits (Espressif, 2019).
Segundo Ibrahim (2017) o ESP32 apresenta um poderoso design de núcleo único ou núcleo duplo de 32 bits (com dois núcleos de processador físico) que pode operar em frequências diferentes, conforme mostrado na Figura 3. Possui capacidade de armazenamento exponencialmente maior até 240 MHz. Não apenas duplica a quantidade de memória flash em comparação com o modelo ATmega 2560 em comparação com o microcontrolador Arduino tradicional
A placa tem 18 entradas analógicas para conversão digital e oferece resolução de 12 bits em uma escala de 0 a 3,3 V. Essas entradas são usadas para coletar os dados do sensor fornecidos em formato analógico e convertê-los em uma escala digital. De 0 a 4095 (12 bits) a 32, você pode operá-lo posteriormente no software (ESPRESSIF, 2018).
As principais caraterísticas técnicas do microcontrolador ESP32 são:
• CPU: Xtensa® Dual-Core 32-bit LX6;
• ROM: 448 KBytes;
• RAM: 520 Kbytes;
• Portas GPIO: 11;
• Wireless padrão 802.11 b/g/n;
• Tensão de operação: 4,5 ~ 9V.
Node-RED
O software completamento open source, ou seja, possui códigos abertos. O que simplifica a elaboração de programas, abrangendo a área de internet das coisas, possui uma programação de blocos, cujos contém o código, a mecânica de ligar os blocos, chamados de nós, do inglês nodes. A junção dos blocos para realizar uma atividade, formam um fluxo, cujo termo usado em inglês e flow.
Protocolo MQTT
O MQTT foi criado com a ideia de coletar dados de vários dispositivos e enviá-los a um banco de dados. Seu protocolo extremamente leve o torna ideal para uso como monitor por meio de monitoramento remoto, especialmente para conexões máquina a máquina. A Figura 1 resume a estrutura básica do protocolo MQTT. Os processos tendem a ser cada vez mais eficientes, autônomos, confiáveis e personalizáveis.
A implantação de uma rede industrial com MQTT vem carregada com uma série de benefícios, como maior eficiência na distribuição de informações, o consumo da banda de rede e reduzida drasticamente, extremamente leve e de fácil manipulação e a segurança baseada em permissão.
Objetivo
Realizar a simulação e demonstração de um ambiente industrial, destacando uma máquina industrial, no qual será usado um motor, um inversor de frequência, encoder e sensores. Já com o software Node-RED será feito um modelo supervisório mostrando a interação em tempo real, para fins de um entendimento completo do seu funcionamento e controle.
Objetivos Específicos
• Utilizar o conceito Iot para tratamento e transmissão dos dados coletados através do microcontrolador ESP32
• Pesquisa sobre o protocolo MQTT para a comunicação
• Pesquisa e estudo sobre a ferramenta de programação NodeRED e linguagem C/C++
• Implementar o sistema de servidor local e dashboard (supervisório) que possibilitara o usuário observar o processo em tempo real
• Realizar testes nos sensores que serão utilizados
• Realizar testes na comunicação para avaliar os dados medidos
• Realizar a montagem física do trabalho
Referencias
ESPRESSIF. ESP32-WROOM32 Datasheet. 2021. Disponível em: https://www.espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf. Acesso em: 05 maio. 2021
[ID:37] Autor: - Criado em: 2021-05-04 17:56:51 - [ Compartilhar ]
AUTOMAÇÃO RESIDENCIAL COM ESP32 E NODE-RED
Atualmente as pessoas estão buscando cada vez mais comodidade e praticidade, fazendo com que a automação residencial se torne uma opção capaz de trazer mordomia e facilidade para essas pessoas. Inicialmente a automação residencial começou como um produto de difícil acesso e alto custo, porém, essa realidade está mudando. Com o surgimento de novas tecnologias, a aplicação da automação tem se tornado cada vez mais acessível, como consequência, barateando e aumentando sua viabilidade.
Esse trabalho propõe elaborar um sistema de automação residencial eficiente, que pode ser acessado de qualquer lugar que você esteja.
Para realizar esse projeto, é preciso estabelecer objetivos específicos:
- Criar uma instância EC2 na Amazon Web Services (AWS);
- Instalar Apache, MySQL e PHP na instância;
- Criar um RDS na AWS e configurar ele através do MySQL;
- Instalar o Node-RED na instância EC2;
- Utilizar o protocolo MQTT no Node-RED e no microcontrolador (Esp32);
- Construir uma interface dashboard através do Node-RED para que o usuário possa realizar o controle e visualizar os dados pela mesma;
- Integrar o banco de dados RDS no Node-RED;
- Desenvolver o circuito e integrar o Esp32;
- Aplicar o sistema na residência.
Esse trabalho é um complemento ao TCC de Pedro Eduardo Suga Machado sobre "Automação residencial visando um melhor gerenciamento energético".
Diagrama esquemático do controle do relay:
→
+
→
→
Diagrama esquemático da coleta de dados do sensor:
←
+
+
←
←
Dashboard desenvolvida no Node-RED:
[ID:36] Autor: - Criado em: 2021-04-28 00:21:39 - [ Compartilhar ]
Robô móvel com acoplamento de luz UV-C como esterilizador
A lâmpada UV-C foi descoberta em meados de 1800 como uma forte fonte descontaminante, sendo confirmado como esterelizadora na década de 1960. Com essa confirmação também teve a confirmação que para isso, a lâmpada teria que atender certos critérios como velocidade de acordo com a potência da lâmpada. Porém essa lâmpada também é nociva para humanos se houver grande exposição, por isso procura-se há tempos um meio de utilizar essa função de forma segura.
Esse projeto tem como objetivo montar um robô que percorra uma superfície de forma autônoma, com a lâmpada acoplada, assim como um circuito eletrônico que controle as ações desse robô. O acionamento e mudança de ações desse projeto será através de um controle remoto via wifi, com isso utilizando um ESP32 para tal ação.
A lâmpada utilizada será uma da OSRAM de 4W, como mostra a figura a seguir. Essa lâmpada tem dimensões pequenas (15 centímetros), porém essa escolha surgiu pois essa é de um tamanho que possibilita o acoplamento sem danificar o robô escolhido e que se encaixa em dimensões com o do robô.
O robô escolhido foi o EXPLORERDS, que é um robô esteira, e que possui garras controláveis, além de possuir espaço para expansão de autonomia além da do fabricante, sem necessitar de designers mirabolantes ou perda da autonomia.
O trabalho contará com uma página online, onde terá o controle do acionamento e interrupção do funcionamento do robô, além de poder ver os dados do sensor ultrassônico.
[ID:35] Autor: - Criado em: 2021-04-27 23:27:02 - [ Compartilhar ]
Controle de Posição de um Atuador Linear Utilizando um Sensor LVDT
FUNDAMENTAÇÃO TEÓRICA
As indústrias constantemente buscam aprimorar a qualidade e flexibilidade dos processos. Para isso são utilizados sensores que permitem o monitoramento dos processos de forma precisa e automática. Existem no mercado sensores de aplicações diversas, que podem ser utilizados para determinar valores essenciais para a realização de determinadas tarefas. Para medições em deslocamentos lineares, o sensor mais aplicado é o LVDT (DIAS, 2015). Os LVDT 's (Linear variable differential transformers) são uma categoria de sensores de deslocamento linear que permite uma medição muito precisa. Chegando até 0,001 mm de precisão (KEYENCE, 2021), podendo ser acompanhada por um sistema supervisório. O sensor possui três bobinas dispostas em série ao longo de um tubo. De forma que um núcleo metálico ferromagnético possa se deslocar no interior das bobinas. A bobina central é chamada de primária e as outras duas bobinas laterais são chamadas de secundárias. O núcleo móvel é unido a uma haste não metálica usada para realizar a medição. A figura 2.1 mostra um esquematico do funcionamento do sensor.
Figura 2.1 Esquemático sensor LVDT
Fonte: Adaptado de Greif, Sassa e Fukuoka (2006).
Segundo Félix et al. (2010) uma corrente alternada de alta frequência (de 1 a 10 KHz) é aplicada à bobina primária, gerando a corrente a ser induzida em cada bobina secundária. Conforme o núcleo se move, a indução nas bobinas secundárias muda, gerando uma variação na tensão de saída. Sendo assim, é necessário que o sinal seja condicionado por meio de um circuito de instrumentação que irá retificar, filtrar e amplificar a saída do transformador. O sensor LVDT é amplamente utilizado para medir grandezas diversas baseado na distância de deslocamento. Por exemplo, ao aplicar uma força a uma mola de constante conhecida, pode-se medir a deformação da mola por meio de um LVDT e então determinar a força aplicada. Outra aplicação possível é a medição de pressão diferencial. Acoplando um LVDT a um tubo de Venturi, a diferença de pressão ao longo do tubo irá atuar o LVDT por meio de membranas. As aplicações acima utilizam o LVDT de forma indireta, pois ele é aplicado em conjunto com um sistema para determinar outros parâmetros que originalmente ele não mede. Uma aplicação que o utiliza diretamente é a de determinar deflexão em vigas ou até em ensaios mecânicos de ruptura (SAVARIS; PINTO, 2017). Também é muito aplicado para controle de qualidade de superfícies de peças usinadas (KEYENCE, 2021). No mercado existem diversos fabricantes que produzem o sensor como a Keyence (2021), a MTS sensors (2021) e a RDP group (2021). Os seus custos são extremamente elevados, sendo os mais baratos próximos a R$ 400,00. O alto custo torna a sua aplicação em laboratórios acadêmicos praticamente inviável. Dessa maneira, esse trabalho visa à construção de um LVDT de pequeno porte com baixo custo e sua aplicação em um sistema de controle de posição de um atuador linear.
Objetivos
O presente trabalho tem como objetivo a construção e calibração de um sensor LVDT de baixo custo para aplicações de controle de posição de um atuador linear, bem como desenvolver um sistema de monitoramento Web para que a leitura dos valores do sensor seja feita de forma remota.
Materiais e métodos
- Esp32;
- Desenvolvimento de um sensor LVDT;
- Montagem dos circuitos de alimentação e instrumentação
- Desenvolvimento da programação do banco de dados;
- Coleta de dados dos sensores para o banco de dados.
Utilizando o Esp32 é feito uma comunicação via internet para que envie um sinal para o atuador e receba do sensor qual posição o atuador está. Esse programa é feito apartir do Node Red com MQTT em dominio público para que seja monitorado de qualquer local com acesso a internet.
REFERÊNCIAS BIBLIOGRÁFICAS
DIAS, Rogerio Paulo Ferraz. Transdutor Diferencial de Variação LinearCondicionamento de Sinal e Desmodulação Síncrona. 2015. Dissertação(Mestrado em Engenharia Eletrotécnica)- Faculdade de Engenharia de Lisboa, Instituto Superior de Engenharia de Lisboa, Lisboa, 2015.
FELIX, M.; LIZARRAGA, A.; ISLAS, A.; GONZALEZ, A.. Analysis of a ferrofluid core LVDT displacement sensor. Iecon 2010 - 36Th Annual Conference On Ieee Industrial Electronics Society, [S.L.], jan. 2010. IEEE. http://dx.doi.org/10.1109/iecon.2010.5675411.
GREIF, Vladimir; SASSA, Kyoji; FUKUOKA, Hiroshi. Failure mechanism in an extremely slow rock slide at Bitchu-Matsuyama castle site (Japan). Landslides, [S.L.], v. 3, n. 1, p. 22-38, 10 fev. 2006. Springer Science and Business Media LLC. http://dx.doi.org/10.1007/s10346-005-0013-0.Keyence Brasil. Disponível em: . Acesso em: 21 de maio de 2021.
MTS Sensors. Disponível em: < https://www.mtssensors.com/Products/IndustrialPositionSensors?creative=249847231389&keyword=lvdt%20sensor&matchtype=p&network= g&device=c&gclid=CjwKCAjwtJ2FBhAuEiwAIKu19iM8hXwVQAxth21OzNXTBv5Puy qnBAhwwBe3NId7_5L7qyh2HPPkzBoCzfsQAvD_BwE>. Acesso em: 21 de maio de 2021.
RDP Group. Disponível em: . Acesso em: 21 de maio de 2021.
SAVARIS, G.; PINTO, R. C. A.. Influence of coarse aggregate on shear resistance of selfconsolidating concrete beams. Revista Ibracon de Estruturas e Materiais, [S.L.], v. 10, n. 1, p. 30-40, fev. 2017. FapUNIFESP (SciELO). http://dx.doi.org/10.1590/s1983-41952017000100003
[ID:34] Autor: - Criado em: 2021-04-27 23:10:15 - [ Compartilhar ]
CONSTRUCÃO DE UM KIT DIDÃTICO INVERSOR DE FREQUÊNCIA MONOFÃSICO
O uso de motores pode ser evidenciado em diversos processos, e na grande maioria é necessário o controle de velocidade e o sentido de rotação do eixo, para fazer esse controle será utilizado circuitos inversores de frequência. Os inversores de frequência são equipamentos conversores de potência DC em potência CA, onde a saída é adequada às características desejada, tensão, corrente e frequência (AHMED, 2000).
A conversão de energia CC para CA é comumente utilizada em diversos equipamentos e sistemas eletrônicos. Essa conversão é basicamente feita utilizando interruptores eletrônicos. A característica fundamental desses circuitos, está no funcionamento dos interruptores atuando na condução e bloqueio.
Os circuitos inversores são divididos em dois grupos: inversores de fonte de tensão (Voltage source inverters – VSI) e inversores de fonte ideal de corrente (current source onverters – CSI). Os inversores (VSI) utilizam uma fonte de tensão constante e independente da corrente consumida. Da mesma forma, os inversores (CSI) utilizam uma fonte de corrente constante e independente da variação de tensão de entrada. Os inversores de tensão possuem maior aplicação e são baseados na modulação por largura de pulso (PWM).
Segundo Ahmed (2010) os três tipos de modulação por largura de pulso (PWM) mais utilizado são: modulação por largura de pulso simples, modulação por largura de pulso múltipla e modulação por largura de pulso senoidal.
Há diferentes circuitos e topologias que se aplicam aos três tipos de inversores de tensão mais utilizados. Esses circuitos serão intensivamente estudados para constituir uma aplicação capaz de ajudar a compreensão do funcionamento dos circuitos inversores.
Objetivo Geral
Construção de um sistema didático conversor de tensão do tipo inversor baseado em três tios fundamentais da literatura com objetivo de demonstrar didaticamente o funcionamento dos circuitos conversores CC/CA.
O projeto proposto possui a relevância de atuar auxiliando o ensino das disciplinas do curso de Engenharia de Controle e Automação e nos laboratórios de eletrônica e microcontroladores, bem como, no fomento de novas linhas de pesquisa.
Finalmente, ao término deste projeto espera ter-se construído um sistema composto por um circuito monofásico inversor de frequência didático para auxiliar no ensino teórico e prático de disciplinas do curso de engenharia.
[ID:33] Autor: - Criado em: 2021-04-27 23:06:27 - [ Compartilhar ]
Redirecionamento DDNS com DuckDns para AWS ou Raspberry
Redirecionamento DDNS
Crie uma conta no Duckdns para traduzir a URL IP em formato amigável com nomes.
O Duck DNS é um serviço que permite traduzir o endereço IP dinâmico de seu servidor na nuvem (AWS) ou local (Raspberry, computador ou outro equipamento) que está utilizando um endereço de URL fornecido pela operaadora (VIVO, Claro, etc). para um nome ex: http://embarcadosifsp.duckdns.org. Este serviço está alojado na plataforma de cloud de Amazon e o código do serviço está disponível sob a licença GNU GPLv3. Visite o site http://www.duckdns.org , conecte-se utilizando uma rede social ou github. Criado a conta, copie o Token (YOUR_TOKEN). Adicione um domínio (domains YOUR_DOMAIN) que será apontado. Os domínios apontaram para o mesmo ip se os servidores estiverem na mesma rede e ip público. Cabe instalar um script para conectar, e utilizar portas diferentes em cada domínio configurando o modem/roteador para o ip correto interno.
Para que o Duck DNS atualize automaticamente, é preciso que seu servidor rode um pequeno script periodicamente e informe o servidor DuckDns. Como estamos utilizando linux para nosso os desenvolvimentos de projetos, vamos utilizar o serviço CRON que automaticamente rodará o script .sh em intervalos de tempos pré definidos.
Crie uma pasta para instalar o script:
mkdir /home/pi/duckdns
cd /home/pi/duckdns
nano duck.sh
Dentro do arquivo insira o seguinte texto:
echo url="https://www.duckdns.org/update?domains=[YOUR_DOMAIN]&token=[YOUR_TOKEN]&ip=" | curl -k -o ~/duckdns/duck.log -K -
Salve o arquivo e dê permissão de execução
chmod 700 duck.sh Agora acesso o seriço Crontab para configurar a execução em intervalos de tempo. crontab -e
Insira este texto para executar o script a cada 5 minutos. Pode-se aumentar o intervalo.
*/5 * * * * /home/pi/duckdns/duck.sh >/dev/null 2>&1
Confira a execução e log
./duck.sh cat duck.log sudo service cron start
Formatação do CRONTAB
Comandos:
crontab -l # Viewing the cronjobs as currently logged in user crontab -e # Edit the cronjob for currently logged in user
Exemplos de configuração CRONTAB
Todos os dias as 6 am
0 6 * * * /home/eazylinux/script.sh
A cada 5 minutos
*/5 * * * * /home/eazylinux/script.sh
Ajustar o horário do servidor Ubuntu
timedatectl é uma ferramenta para controle de data e horário do sistema. Pode ser usado para alterar o relógio e suas configurações. Definindo fuso horário como São Paulo:
$ sudo timedatectl set-timezone America/Sao_Paulo
Referências:
Criando uma conta DNS https://pplware.sapo.pt/informacao/duck-dns-servico-dns-dinamico-totalmente-gratuito/
Configurando Cron e duck.sh: https://www.wundertech.net/how-to-setup-duckdns-on-a-raspberry-pi/
Crontab tips and tricks https://www.eazylinux.com/crontab-tips-and-tricks/
[ID:30] Autor: - Criado em: 2021-04-27 19:07:13 - [ Compartilhar ]
Construindo uma API e uma dashboard PHP + AJAX + JSON
Utilizando scripts do repositório: https://github.com/mchavesferreira/ajaxdados podemos construir uma dashboard básica.
O script temperaturasendjson.php publica os últimos dado de um banco de dados no formato JSON.
O script buscajson.php exemplifica uma API simples em PHP que separa em uma nova hieraquia e campos desejados de uma JSON.
O script index.php exemplifica a utilização de javascript e php para geração de Ajax.
Ajax é uma forma atualizar apenas uma parte da página ou campo de pagina sem precisar de uma atualização da pagina inteira, gerando chamadas assíncronas. Este exemplo utiliza a biblioteca JQuery, simplificando o uso de códigos. O script embutido no corpo do código html, realiza o método GET em duas URL. Uma URL é código que busca em nosso banco de dados ( temperaturasendjson.php) e a outra URL busca dados de cotação do Bitcoin em formato Json. O script separa os campos desejados e substitui no corpo do texto os campos da classe
por exemplo.
Baixe o repositório direto no linux: git clone https://github.com/mchavesferreira/ajaxdados
Referências:
Códigos de resposta do HTTP: https://developer.mozilla.org/en-US/docs/Web/HTTP/status
Video 1: Tutorial AJAX + JSON com Java Script puro https://www.youtube.com/watch?v=YzMTXID1U9Q
Requisições AJAX com JQUERY + JSON https://www.youtube.com/watch?v=4v0PhQs08DI&
[ID:29] Autor: - Criado em: 2021-04-27 18:08:12 - [ Compartilhar ]
Utilizando banco de dados Mysql e os comandos SQL básicos
Esta aula explicaremos o que é um banco de dados, revisão de métodos GET e POST para envio de dados utilizando o nodemcu para armazenar dados na nuvem. Para começar é preciso ter um servidor linux com serviço de web e bancos de dados com acessos a comandos padrões SQL. Utilizaremos o serviço de instância AWS, porém pode ser realizado localmente em sua rede intranet, desde que o nodemcu e o servidor web tenham acesso entre si. A seguir apresentamos a video aula gravada no TEAMS, e disponilizamos os códigos necessários para implementar no repositório Github e os comandos básicos de SQL utilizados para construir este exemplo de aplicação.
Repositório de arquivos: https://github.com/mchavesferreira/php_app
Para instalação utilizar o comando: git clone https://github.com/mchavesferreira/php_app
Aula síncrona TEAMS Banco de dados e requisições POST e GET
5:59 Protocolo Http, www, TCP/IP, DNS
12:05 Requisições GET e POST
15:44 Projeto NodeMcu
22:28 Introdução ao Mysql.
38:31 Repositório projeto php_app Comentários sobre arquivos
41:01 - Criando base de dados, uso de comandos SQL
56:20 Utilizando RDS com base de dados e uso do repositório php_app
1:06:30 Inserindo dados via POST e GET via php
1:09:59 Uso de um código .ino para envio de dados via GET e POST (arquivo1 e arquivo2)
Comandos básicos Mysql
utilizando exemplos de códigos. Aqui estão alguns comandos mais utilizados:
// conecta com o banco de dados via terminal localmente
mysql -u root -p
Acesso remoto utilizando rds
mysql -u admin -h database-1.cscbnowewjwj.sa-east-1.rds.amazonaws.com -p
Criar um banco de dados:
Para criar um banco de dados, utilize o comando "CREATE DATABASE", seguido do nome do banco de dados que deseja criar:
CREATE DATABASE nome_do_banco_de_dados;
Listar os bancos de dados:
Para listar todos os bancos de dados disponíveis, utilize o comando "SHOW DATABASES":
SHOW DATABASES;
Selecionar um banco de dados:
Para selecionar um banco de dados específico, utilize o comando "USE", seguido do nome do banco de dados:
USE nome_do_banco_de_dados;
Criar uma tabela:
Para criar uma tabela em um banco de dados, utilize o comando "CREATE TABLE", seguido do nome da tabela e das colunas que ela terá:
CREATE TABLE nome_da_tabela ( coluna1 TIPO_DE_DADO, coluna2 TIPO_DE_DADO, coluna3 TIPO_DE_DADO );
Listar as tabelas:
Para listar todas as tabelas em um banco de dados, utilize o comando "SHOW TABLES":
SHOW TABLES;
- Criar uma tabela
CREATE TABLE nome_da_tabela (
coluna1 TIPO_DE_DADO,
coluna2 TIPO_DE_DADO,
coluna3 TIPO_DE_DADO
);
Com id:
CREATE TABLE clientes (
id INT PRIMARY KEY AUTO_INCREMENT,
nome VARCHAR(50) NOT NULL,
rg VARCHAR(20) NOT NULL,
cpf VARCHAR(14) NOT NULL,
endereco VARCHAR(100) NOT NULL
);
Na criação de tabelas em MySQL, os tipos mais comuns de dados que você encontrará são:
-
INT ou INTEGER: é um tipo de dados inteiro usado para armazenar números inteiros, com ou sem sinal.
-
VARCHAR: é um tipo de dados de caractere usado para armazenar strings de comprimento variável. Este tipo de dados é ideal para armazenar texto.
-
CHAR: é um tipo de dados de caractere usado para armazenar strings de comprimento fixo. Este tipo de dados é útil quando você precisa armazenar strings com um comprimento fixo.
-
DATE: é um tipo de dados usado para armazenar datas. As datas são armazenadas no formato AAAA-MM-DD.
-
TIME: é um tipo de dados usado para armazenar horários. Os horários são armazenados no formato HH:MM:SS.
-
DATETIME: é um tipo de dados usado para armazenar datas e horários. As datas e horários são armazenados no formato AAAA-MM-DD HH:MM:SS.
-
BOOLEAN: é um tipo de dados booleano usado para armazenar valores verdadeiros ou falsos.
-
FLOAT: é um tipo de dados de ponto flutuante usado para armazenar números decimais com pontos flutuantes.
Esses são apenas alguns dos tipos de dados mais comuns usados na criação de tabelas em MySQL. É importante selecionar o tipo de dados correto para cada coluna, com base nos requisitos de dados e no tamanho do conjunto de dados.
Descrever características da base de dados
Describe nome_da_tabela;
Inserir dados em uma tabela:
Para inserir dados em uma tabela, utilize o comando "INSERT INTO", seguido do nome da tabela e dos valores a serem inseridos
INSERT INTO nome_da_tabela (coluna1, coluna2, coluna3) VALUES (valor1, valor2, valor3);
Atualizar dados em uma tabela:
Para atualizar dados em uma tabela, utilize o comando "UPDATE", seguido do nome da tabela e das colunas a serem atualizadas
UPDATE nome_da_tabela SET coluna1 = novo_valor WHERE condição;
Excluir dados em uma tabela:
Para excluir dados em uma tabela, utilize o comando "DELETE FROM", seguido do nome da tabela e da condição para excluir os registros desejados
DELETE FROM nome_da_tabela WHERE condição;
Consultar dados em uma tabela:
Para consultar dados em uma tabela, utilize o comando "SELECT", seguido das colunas que deseja visualizar e da tabela que deseja consultar:
SELECT coluna1, coluna2, coluna3 FROM nome_da_tabela WHERE condição;
Esses são apenas alguns exemplos de códigos mais utilizados para gerenciar bancos de dados em MySQL. Existem muitos outros comandos disponíveis, dependendo das suas necessidades específicas. É importante ter um conhecimento sólido desses comandos para garantir que está gerenciando seus dados de forma eficaz e segura.
// Outros exemplo de comandos para seleção de dados todas as linhas da base de dados
SELECT * FROM tempLogo;
SELECT temperature FROM tempLogo;
SELECT * FROM tempLogo limit 1; // limita 1 linha
SELECT * FROM tempLogo limit 2,3; // limita 1 linha
SELECT * FROM tempLogo order by timeStamp ASC;
SELECT * FROM tempLogo order by timeStamp DESC;
SELECT * FROM tempLogo where temperature=23;
SELECT * FROM tempLogo WHERE DATE(timeStamp) = CURDATE();
SELECT * FROM tempLogo WHERE DATE_SUB(CURDATE(),INTERVAL 1 DAY);
//apagar linhas da tabela por seleção
DELETE from tempLogr where humidity=50;
// apagar tabela completa
DROP TABLE tempLogr;
// alterar um campo na tabela
UPDATE users SET nome = Marcos, email =xxxxx@gmail.com WHERE ra=CTxxxxx;
// adicionar colunas mysql
ALTER TABLE users ADD COLUMN urljson VARCHAR(120);
ALTER TABLE blogusers ADD COLUMN summary TEXT;
// deletar coluna da tabela
ALTER
TABLE nome_da_tabela
DROP COLUMN ;
//modificar coluna
ALTER TABLE blogusers MODIFY title varchar(60);
//Realizando exportação de uma base de dados para um arquivo backup.sql
mysqldump -u admin -p nomedabase > backup_sensor.sql
// Copiando tabelas específicas de uma base
mysqldump nomedabase tabela1 tabela2 tabela3 > dump.sql
// Importando uma base de dados de um arquivo para o banco de dados mysql
mysql -u root -p -h localhost nomedabase
Exemplo de aplicação com ESP32 como cliente http e conectando a API para armazenamento em mysql (exemplo)
Referências:
http://www.artfulsoftware.com/infotree/qrytip.php?id=78
https://www.w3schools.com/sql/sql_datatypes.asp
ESP32/ESP8266 Insert Data into MySQL Database using PHP and Arduino IDE: https://randomnerdtutorials.com/esp32-esp8266-mysql-database-php/
Guia Mysql: https://dev.mysql.com/doc/refman/8.0/en/creating-tables.html
Playlist Curso de Banco de daos Mysql. Curso em Vídeo https://www.youtube.com/playlist?list=PLHz_AreHm4dkBs-795Dsgvau_ekxg8g1r
[ID:28] Autor: - Criado em: 2021-04-27 14:29:51 - [ Compartilhar ]
DESENVOLVIMENTO DE BANCADA DIDÃTICA PARA ESTUDO DE ELETRÔNICA DE POTÊNCIA
Metodologia e Aplicações De Uma Bancada Didatica.
O presente projeto tem como objetivo a aquisição de dados de um de uma bancada didatica para o estudo de letronica de potencia lendo os sensores para acesso remoto para o acompanhamento de possiveis falhas na execução do da bancada e o acompanhamento das varieaveis que estão lendo na bancada, facilitando o acomanhaento do da pessoa que estra utilizando o mesmo, sendo usado para a aprimoramento do conteudo didatico, tendo em vista efetuar uma melhor apresentação do IHM para o aluno que estiver utilzando e o professor que estiver ensinando e trazer uma tecnologia mais atual e concreto para dentro da sala de aula.
Para realizar esse projeto, é preciso estabelecer objetivos específicos:
- Criar uma instância EC2 na Amazon Web Services (AWS);
- Instalar Apache, MySQL e PHP na instância;
- Criar um RDS na AWS e configurar ele através do MySQL;
- Instalar o Node-RED na instância EC2;
- Utilizar o protocolo MQTT no Node-RED e no microcontrolador (Esp32);
- Construir uma interface dashboard através do Node-RED para que o usuário possa realizar o controle e visualizar os dados pela mesma;
- Integrar o banco de dados RDS no Node-RED;
- Desenvolver o circuito e integrar o Esp32;
- Aplicar o sistema na bancada de joelho;
O respectivo trabalho consta como um complemento do TCC do aluno Murillo Ferraz Veiga Araujo sobre "Desemvolvimento de bancada Didatica para estudo de eletrônica de potencia".
Os dados serão coletados utilizando o ESP32 (Figura 2) e armazenados em uma database.
FIGURA 2. ESp 32
fonte: proprio autor
Para visualizar os dados lidos pelo sensor, foi elaborado um dashboard por meio da ferramenta Node-Red. Foi utilizado também o editor de código-fonte Visual Code para elaborar a programação, bem como uma máquina virtual, para possibilitar a comunicação.observada na figura 3 abaixo.
FIGURA 3. node red
fonte: proprio autor
Na interface desenvolvida pode-se observar graficos e indicadores das variaveis para facilitar a visualização. A figura 4 representa a dashboard elaborada. A mesma apresenta um comando de armazenamento de bancos de dados.
FIGURA 4. dashboard
fonte: proprio autor
[ID:27] Autor: - Criado em: 2021-04-27 04:11:40 - [ Compartilhar ]
ESTUDO SOBRE SISTEMA TRACKER EM MICRO USINAS SOLARES
A energia elétrica é a principal fonte do desenvolvimento de qualquer setor daquilo que hoje compreendemos como sociedade. Seja na indústria, na medicina, na agricultura ou até mesmo na cultura, a energia elétrica está enraizada nos avanços e nas inovações de cada setor sendo ela necessária para todo avanço socioeconômico que é refletido em melhorias na qualidade de vida de todos.
Atender e acompanhar a demanda de energia elétrica não é uma tarefa fácil, requer planejamento de longo prazo e investimentos maciços em infraestrutura para geração e transmissão. No Brasil, entre junho de 2001 a fevereiro de 2002, falhas no planejamento decorrentes de diversos fatores, implicaram no evento que ficou popularmente conhecido como “apagão”. Bardelin (2004) aponta que os responsáveis pela produção de energia elétrica não realizaram os devidos preparos para suportar o crescimento da demanda. Por outro lado, tal evento foi responsável por criar novas diretrizes e estratégias com a finalidade de impedir o “apagão” de acontecer novamente.
O Brasil dispõe de uma das maiores capacidades hídricas do mundo e, por esse motivo, concentra sua matriz energética em usinas hidroelétricas. Em contrapartida, a escassez de chuvas foge do controle do homem e interfere diretamente na capacidade de produção das mesmas. Baseado nas fragilidades da matriz energética brasileira o governo lançou por meio da Lei n° 10.438/2002 o Programa de Incentivo às Fontes Alternativas de Energia Elétrica (Proinfa) que foi uma das primeiras respostas ao “apagão” com o objetivo de disponibilizar de maneira mais rápida uma pequena parcela da demanda e regulamentar as pequenas geradoras de energia elétrica advindas de fontes renováveis.
No decorrer do tempo, a necessidade da redução de impactos ambientais provenientes da produção de energia elétrica, impulsionou o desenvolvimentos de tecnologias limpas sendo a tecnologia fotovoltaica, a que apresenta melhores soluções no atual contexto de geração distribuída. O Ministério de Minas e Energia, por meio da Portaria MME n° 538/2015 criou o Programa de Desenvolvimento da Geração Distribuída de Energia Elétrica (ProGD), no qual, buscando principalmente a utilização da fonte solar de energia, incentivar a instalação de geradores de energia elétrica cada vez mais próximos do local de consumo e amenizar os astronômicos investimentos em grandes redes de distribuição e usinas geradoras que, normalmente são instaladas a centenas de quilômetros das unidades consumidoras.
Por ser um país de dimensões continentais, o Brasil apresenta características muito diversificadas no que tange a incidência de radiação solar. De acordo com o Atlas Brasileiro de Energia Solar (2017), o mercado de geração de energia solar fotovoltaica se mostra promissor, tendo em vista, a queda crescente nos custos financeiros iniciais, incentivos governamentais e privados a financiamentos que amortizam o tempo de retorno do investimento e, principalmente, a geração de energia que atenua os picos da demanda que ocorrem, com maior frequência, no período que a geração solar fotovoltaica é maior.
Apesar da constante evolução na área, Duarte (2019) indica que a disseminação em grande escala da tecnologia de geração de energia a partir de placas fotovoltaicas encontra diversos obstáculos. Um dos entraves é a interferência de fatores intrínsecos ao movimento da terra com relação ao sol, o que implica diretamente nos índices de radiação solar. Tal interferência é responsável pelo aproveitamento de apenas um quinto da capacidade total das instalações de placas fixas.
Na busca pelo melhor aproveitamento da radiação solar que, embora não seja renovável mas sim infinita, o estudo de técnicas como sistemas de seguidores solares se apresenta como uma alternativa que segundo Cassares (2016), pode causar um ganho entre 15% e 30% quando comparado a instalações fixas. A principal particularidade da aplicação desse sistema é evitar o sombreamento da placa de modo automático por meio de sensores e atuadores que buscam manter as placas sempre normal com relação a incidência solar.
[ID:26] Autor: - Criado em: 2021-04-27 04:10:58 - [ Compartilhar ]
ANÃLISE REMOTA DA TEMPERATURA DA RESISTÊNCIA DE UM CHUVEIRO ELÉTRICO
O objetivo geral da pesquisa é realizar o monitoramento remoto da temperatura da água de um chuveiro elétrico, mostrando em tempo real os valores lidos pelo sensor de temperatura (DS18B20) em dashboards.
Como resultado deste trabalho espera-se obter dados da temperatura, poder analisá-los. A intenção de criar esse sistema supervisório é facilitar na posterior análise do controle PID da potência da resistência (por conseguinte, da temperatura da água) e facilitar na plotagem de gráficos no software Excel.
[ID:25] Autor: - Criado em: 2021-04-27 04:10:15 - [ Compartilhar ]
Sistema de Monitoramento de Forças de Corte no Torneamento
INTRODUÇÂO
A usinagem é um dos processos de fabricação mais importantes que existe, uma vez que a maioria das peças fabricadas por fundição, forjamento ou outros processos de fabricação necessitam de ajustes posteriores em suas dimensões, isso é feito por meio da usinagem (GUTERRES, 2017).
Machado et al. (2009) afirma que a usinagem é um processo essencialmente prático e envolve um elevado número de variáveis. Embora seja praticamente impossível prever o desempenho no corte de metais, estudos detalhados dos processos de usinagem possuem valor e cada ponto fundamental que é estudado e interpretado de maneira adequada contribui para o entendimento do processo.
De acordo com Machado et al. (2009) tanto do ponto de vista prático quanto do ponto de vista experimental, a medição da força de usinagem é importante em processos de usinagem. Tal medição pode ter a exatidão e a precisão desejadas, dependendo da necessidade, bem como ser apenas de caráter quase estático, com um valor médio sem preocupação com os componentes dinâmicos, ou ser em uma alta taxa de aquisição para registrar aspectos inerentes ao processo dinâmico de formação de cavacos.
Alguns dispositivos de medição de forças de usinagem são construídos utilizando conceitos de extensometria. Segundo Braga (2019) tais dispositivos são capazes de medir a força devido à deformação de um corpo sólido, gerando uma reposta proporcional à carga aplicada. As principais razões para a sua aplicação estão diretamente ligadas ao seu baixo custo, tamanhos reduzidos e a possibilidade de realização de medições dinâmicas.
OBJETIVOS
O projeto pretende desenvolver um protótipo para monitoramento de forças de corte para processo de torneamento utilizando componentes de baixo custo em sua construção.
MATERIAIS E METODOS
Para realização do projeto será necessário projetar e fabricar o sensor de força, no caso uma célula de carga extensometrica, seleção e aplicação de amplificador o para sinal dos extensômetros, configuração e programação da placa de prototipagem rápida para aquisição de sinal, programação de sistemas para armazenar e apresentar dados.
- Célula de Carga extensiometrica
- A placa de amplificação de sinal do sinal bem como a de instrumentação ainda nao foram definidas. Com o decorrer e desenvolvimento do projeto de TCC este post será atualizado afim de que seja possivel a reprodução deste mesmo projeto por qualquer pessoa interessada.
RESULTADOS ESPERADOS
O objetivo deste trabalho é o projeto e construção de um sistema de monitoramento de força de corte para o processo torneamento. A finalidade deste equipamento é controlar a força de corte afim de aumentar a vida util do bit de corte.
SISTEMAS EMBARCADOS
Juntamente com o projeto do TCC sera desenvolvido uma aplicação para exibição dos dados coletados na rede mundial de computadores.
O monitoramento foi realizado por meio do micro controlador ESP32, que possui um modulo WI-FI e um modulo bluetooth integrados. Utilizando o modulo WI-FI, da ESP32, será feita comunicação com a WEB. Foi necessário a criação de servidor web AWS, disponibilzado gratuitamente pela Amazon, para armazenar os dados que serão enviados pela ESP, e apresenta-los publicamente na web, por meio de IP público, também disponibilizado pela instancia da AWS. Neste servidor foi necessário a instalação do MQTT, que é um protocolo de mensagens M2M (machine to machine) e serve para comunicar com a WEB, e tambem o MySQL, que é um banco de dados. Este banco de dados tem a função de salvar os dados enviados ao mqtt na nuvem.
Está comunicação foi desenvolvida por meio da plataforma Node-Red, que é uma ferramenta visual de ambiente de código aberto, que inicialmente foi desenvolvida para implementar, criar e/ou conectar dispositivos de IoT, tendo sido estendida posteriormente para hardwares, APIs e web services.
A seguir será exibido um esquematico de como foi feita esta comunicação entre o ESP32 e o usuario da rede mundia de computadores.
ESP32 envia para
que envia para
que envia para
Sendo assim, os dados coletados serão exibidos na WEB de maneira simples e objetiva, de uma maneira que qualquer pessoa consiga acessar e utilizar os dados.
[ID:24] Autor: - Criado em: 2021-04-27 04:09:08 - [ Compartilhar ]
CONSTRUÇÃO DE UM TRANSDUTOR ELETRO-ÓPTICO PARA MONITORAMENTO DA QUALIDADE DE ENERGIA ELÉTRICA
O cristal líquido nemático (CLN), principal elemento da pesquisa, foi fabricado por BDH-chemicals Ltda. Trata-se de uma mistura eutética E7 composta basicamente por 4 moléculas que apresentam como característica ligações polares dadas pelos grupos -CºN (ligações fortes).
Figura 1 – Moléculas que compõem o CLN-E7
Fonte: Costa (2000)
As células foram confeccionadas no Instituto de Microeletrônica do Centro de Informática de Campinas (IM/CTI).
[ID:22] Autor: - Criado em: 2021-04-27 04:07:22 - [ Compartilhar ]
BICICLETA ERGOMÉTRICA: INSTRUMENTAÇÃO E ANáLISE DA GERAÇÃO DE ENERGIA
1. INTRODUÇÃO
Esse projeto tem como objetivo geral realizar o monitoramento da energia gerada por uma pessoa quando se exercita em uma bicicleta ergométrica. Será monitorado via ESp32 o sinal da tensão que sairá do gerador acoplado à biclicleta (alternador automovito). A energia gerada pelo alternador será armazenada em uma bateria automotiva. neste projeto também será realizado o monitoramento da carga da bateria. Tanto os parametros de tensão como os da carga, lidos pelo Esp32 serão exibidos no dashboard. Será feito um banco de dados e os dados poderão ser acessados a qualquer momento de forma remota. Será possível observar o gráfico em tempo real. Foi criado também uma instância (EC2) e um banco de dados (mySQL) utilizando os serviços Amazon Web Services (AWS). Para que essa rede funcionasse da maneira adequada para o projeto, nela, foi instalado o servidor Apache, protocolo MQTT e a ferramenta Node-red, que será fundamental para a comunicação. Todo esse processo pode ser melhor entendido no diagrama de imagens a seguir:
O Esp32 envia o sinal dos sensores para o
que envia para o
que enviará para o
2. Fundamentação Teórica
Segundo Neto, J., Neto R. e Macagnan (2016), a forma com que estão sendo utilizados os recursos naturais do planeta e os processos que se efetuam para converter esses recursos em bens de consumo estão causando grandes danos ao ecossistema. Devido a esse fator, as tomadas de decisões políticas, econômicas e sociais devem levar em conta os temas ambientais. Ressalta-se, também, que a energia é o que move o mundo, e o constante aumento da demanda energética é uma das questões que mais preocupa os governos e a sociedade. Dessa forma é necessário encontrar novos processos que melhorem o aproveitamento deste recurso.
Dias, Lima e Rodrigues (2016) alegam que a sociedade moderna fica a cada dia ainda mais dependente do abastecimento de energia elétrica, pois é por meio dela que realizamos trabalho, produzimos, desenvolvemos e concedemos bem-estar e conforto aos nossos dias. É importante enfatizar também que 80% da energia produzida no mundo está ligada a queima de combustíveis fósseis, o que contribui para o aquecimento global e para a destruição da camada de ozônio, causando um imenso prejuízo ao meio ambiente e fazendo-se cada vez mais necessário o trabalho para buscar um desenvolvimento energético mais sustentável para o planeta.
Lopes (2009) afirma que ao se desenvolver em sociedade, as pessoas aumentaram o seu nível de conforto e a sua longevidade, isso devido a diversos fatores, como, por exemplo, o avanço da agricultura e da medicina. Entretanto isso acabou resultando no aumento da densidade populacional do planeta, o que eleva a busca e a disputa por recursos energéticos, causando impactos ambientais que, paradoxalmente, vem diminuindo a qualidade de vida, principalmente em alguns grupos isolados. Lopes (2009) também esclarece que quando olhamos para comunidades isoladas, o planejamento energético feito nessas localidades geralmente objetiva somente encarregar-se da demanda de energia elétrica residencial. Entretanto, se colocarmos em pauta a baixa renda dessas famílias, entende-se que a energia elétrica deveria ser utilizada de outras formas, como, por exemplo, para a execução de atividades produtivas, com o intuito de impulsionar o desenvolvimento socioeconômico dessas comunidades.
Considerando esses argumentos, entende-se que é necessário a utilização de meios alternativos para a produção de energia elétrica, tendo em vista a sustentabilidade e a preservação do meio ambiente. Devemos também trabalhar para a ampliação do acesso a formas de energia mais baratas e que sejam verdadeiramente sustentáveis.
Nessa mesma linha de raciocínio, Júnior (2012) ressalta que a utilização da energia elétrica em aparelhos residenciais, os quais permitem maior praticidade e conforto às nossas vidas, acaba nos tornando cada vez mais dependentes dela. Fato que somado ao aumento populacional gera uma demanda cada vez maior de energia elétrica, resultando no aumento de seu preço. Declara-se também que o fluxo de energia elétrica para as grandes cidades é significativo e que os grandes gargalos energéticos se encontram nesse ambiente. Dessa forma, é importante o estudo do ambiente urbano como uma fonte potencial de economia, para que assim possa desenvolver-se a regeneração de energia nessas localidades.
Dessa forma, ao estudar outras maneiras de produzir energia elétrica cria-se uma alternativa à energia produzida pelas concessionárias, eliminando, assim, a necessidade e o custo de transporte dessa energia, uma vez que será gerada próximo aos centros consumidores. Essa produção causa uma redução da demanda por energia elétrica que provém de hidrelétricas, o que acarreta a diminuição do seu preço. Além disso, atualmente milhares de pessoas buscam por uma vida mais saudável, o que as fazem frequentar academias esportivas. Nesse aspecto, a energia que as pessoas gastam nessas academias é perdida no ambiente em forma de calor, entretanto, boa parte dessa energia pode ser recuperada por bicicletas ergométricas, pedaleiras ou elípticos. (JÚNIOR, 2012).
3. DESENVOLVIMENTO
Foram realizadas as atividades que haviam sido planejadas para o projeto. Foi realizado o monitoramento da Tensão e da Corrente, esses dados foram lidos pelo Esp32. Para continuidade do trabalho, foi criada uma instancia(EC2) e um banco de dados(mySQL) utilizando os serviços da Amazon Web Services(AWS), nessa instancia foi instalado o servidor Apache, protocolo MQTT e a ferramenta Node-red. Nesse banco de dados foi armazenado os dados coletados pelo Esp32. Foi desenvolvida uma programação na ferramenta Node-RED, conforme visto na figura 1, para coletar os dados do Esp32 e armazena-los no banco de dados.
Posteriormente, foi instaladaa a extensão Dashboard no Node-red para que os dados armazenados ficassem de uma maneira apresentável para o usuário final (forma gráfica e em tabela). Os dados presentes no Dashboard podem ser vistos nas figuras 2 e 3.
Figura 1. Programação desenvolvida no Node-RED
Figura 2. Dashboard.
Figura 3. Dashboard (Gráfico do banco de dados).
Na figura 4 a seguir é possível ver como foi realizada a montagem do ESp 32.
Figura 4. Esp32.
REFERÊNCIAS BIBLIOGRÁFICAS
DIAS, L. R.; LIMA, G. B., RODRIGUES, D. B. Sistema de geração de energia elétrica a partir de uma bicicleta ergométrica. In: Conferência de Estudos em Engenharia Elétrica, 14., 2016. Anais eletrônicos... Uberlândia: UFU, 2016. Disponível em: . Acesso em: 15 jan. 2021.
JÚNIOR, C. A. C. Cidades sustentáveis: análise comparativa com cidades contemporâneas. 2012. Trabalho de Conclusão de Curso (Bacharelado em Engenharia Mecânica) – Universidade Estadual Paulista, Guaratinguetá, 2012.
NI LABVIEW. Versão 18.0. [S.l.]: National Instruments, 2018. 1. CD.
LOPES, D. G. O impacto da energia elétrica proveniente do reformador de etanol e célula a combustível: cenário para a promoção do desenvolvimento socioambiental da comunidade “Pico do Amor”/MT. 2009. 96 f. Dissertação (Mestrado em Planejamentos de Sistemas Energéticos) – Faculdade de Engenharia Mecânica, Universidade Estadual de Campinas, Campinas, 2009.
MACAGNAN, A. L. ; NETO, J. A. R.; NETO. R. A. Determinação da eficiência energética da tração humana na geração de energia elétrica através de uma bicicleta ergométrica. 2016. Trabalho de Conclusão de Curso (Bacharelado em Engenharia Elétrica) - Universidade Tecnológica Federal do Paraná, Curitiba, 2016.
[ID:20] Autor: - Criado em: 2021-04-27 04:03:53 - [ Compartilhar ]
Monitoramento preventivo de enchentes utilizando internet das coisas
O objetivo geral do trabalho é desenvolver um sistema de monitoramento sem interrupções utilizando um sensor ultrassônico para medir a distância entre a água do rio e a ponte, dessa forma determinando o nível do rio, esses dados serão enviados para uma gateway via rede LoRaWAN. A gateway localizada no IFSP Campus Catanduva enviará os dados para clound. Com esses dados será desenvolvido um dashboard para que o usuário consiga ter mais clareza na interpretação. O dispositivo contará com um sistema de alimentação contínua, baseado em um painel fotovoltaico ligado a um controlador de carga e uma bateria. A placa irá carregar a bateria nos horários de exposição ao sol, por outro lado, a bateria garantirá que o sistema continue atuando fora da incidência solar. Através disso, contribuir para a cidade de Catanduva, com o propósito de resolver os problemas da comunidade em relação a enchentes.
Após a instalação do circuito na ponte do rio, os dados do nivel serão enviados via LoRa para o segundo microcontrolador
->
->
Para continuidade do trabalho, foi criada uma instancia(EC2) e um banco de dados(mySQL) utilizando os serviços da Amazon Web Services(AWS), nessa instancia foi instalado o servidor Apache, protocolo MQTT e a ferramenta Node-red, que sera de extrema importância para o interligamento de todos os recursos do trabalho. Inicialmente a programação foi desenvolvida para o envio por protocolo MQTT para o node-red, ja dentro do node, também é feito a instalação da extensão MQTT, de uma maneira intuitiva e simples, os dados vindos do esp32 serão conectados ao banco de dados mySQL, as imagens a seguir ilustram o processo.
->
->
->
Com os dados armazenados no banco de dados, a extensão Dashboard é instalada no Node-red para que os dados armazenados fiquem em uma maneira apresentavel para o usuário.
A imagem a seguir mostra o esquema completo do projeto feito.
Figura 1. Node-Red.
A visualização do usuario ficara como na imagem a seguir.
Figura 2. Dashboard.
Fonte: Próprio autor.
O resultado esperado é a montagem de um protótipo de leitura de nível do rio, e sua comunicação através de telemetria por meio de radiofrequência entre um ponto de ensaio e o campus IFSP Catanduva. Utilizar tal equipamento em condições reais de monitoramento em tempo real do nível do rio São Domingos em um trecho próximo a unidade escolar, difundido o uso de tecnologia IOT na prevenção de possíveis enchentes.
[ID:19] Autor: - Criado em: 2021-04-27 04:01:44 - [ Compartilhar ]
Sistema De Dosagem De Sólidos
O projeto consiste na elaboração de um sistema de dosagem para sólidos, com o intuito de facilitar e agilizar um processo de produção. Essa máquina tem a função de dosar e envasar terra vegetal em embalagem plástica. Pretende-se por meio deste equipamento, obter uma linha de produção onde o produto ofereça qualidade e satisfação ao consumidor.
O material a ser dosado deve ser depositado no reservatório, após uma embalagem plástica é posicionada no funil de saída, logo o sensor de umidade realiza a leitura, em seguida o sensor Strain Gauge realiza a leitura da compressão e emite um sinal de tensão proporcional em milivolts, que é amplificado pelo Módulo Conversor HX711, o controle será realizado por meio do microcontrolador ESP32 que possui um módulo WI-FI integrado, realizando a comunicação através do protocolo MQTT, posteriormente, mostra-se o peso e a porcentagem de umidade da matéria na Dashboard, desenvolvido na plataforma Node-RED®. Por conseguinte, ao acionar o botão, fecha o contato que é recebido pelo ESP32, acionando o módulo relé, este por sua vez liga a válvula solenoide que comanda o pistão a avançar. Esse movimento fecha a primeira porta de dosagem e abre a segunda liberando o material pelo funil de saída. O ESP32 comanda que após o envase, o cilindro retorne e a de saída se fecha, reiniciando o ciclo. O número de ciclos será determinado de acordo com a quantidade de matéria requerida. A Figura 1, mostra o diagrama esquemático para o sensor de umidade.
Figura 1 - Diagrama sensor de umidade
A Figura 2, mostra o diagrama esquemático para o sensor de Straing Gauge.
Figura 2 – Diagrama sensor Straing Gauge
Diante disso, através de um servidor Web, onde a leitura e o controle de dados são realizados de forma remota. Pretende-se fazer a aquisição dos dados dos sensores e armazenar no banco de dados MYSQL implementado no sistema operacional Ubuntu, alocado em uma instância EC2 na plataforma de computação em nuvem aws da Amazon®. Como mostra a Figura 3.
Figura 3 – Diagrama servidor web
O desenvolvimento propõe-se analisar como dispositivos de baixo custo, podem ser eficientes na automação de processos. A partir do estudo, nota-se que a IoT promove um monitoramento eficaz das variáveis do processo, com objetos de interface intuitivos facilitando a interação do operador. A Figura 4, visualiza-se a vista isométrica do protótipo.
Figura 4 - Protótipo do Sistema.
Fonte: Nathan Briga
[ID:17] Autor: - Criado em: 2021-04-27 03:59:58 - [ Compartilhar ]
Medidor de CombustÃvel Digital
Com as contínuas constatações de fraudes relacionadas às bombas de combustíveis durante os últimos anos, torna-se cada vez mais preciso a elaboração de medidores mais confiáveis e precisos que ajudam o condutor a ter mais controle de seu consumo tanto quanto gasto referente a combustíveis. Considerando que a maioria dos veículos automotivos no mercado possuem medidores imprecisos e que não esclarecem fielmente e precisamente a quantidade de combustível restante no tanque ao condutor, o presente projeto tem como objetivo monitorar o nível de combustível presente no tanque de forma digital, ilustrando exatamente a quantidade restante para o usuário, além de avisar por meio de um sinal de luz quando o nível chegar a reserva e também mostrar o consumo em tempo real, tudo por meio de uma página web.
Ao passar dos anos com a evolução da tecnologia, diversos parâmetros pertinentes aos automóveis começaram a serem obtidos e expostos ao condutor de uma forma muito confiável e exata, o que parece não o correr quando o assunto é a medição do nível de combustível presente nos tanques que, mesmo passando por algumas melhorias, ainda continua apresentando constantes falhas na leitura e exibição do combustível. Sabendo desse detalhe, muitos proprietários de postos de combustíveis no Brasil têm aproveitado a falta de confiabilidade que o medidor possui para, de certa forma, prejudicar seus clientes, adulterando as suas respectivas bombas de combustíveis, que passam a marcar quantidades maiores que a realmente abastecida no veículo, enganando assim o consumidor.
Por essas razões o objetivo desse projeto é desenvolver um sistema digital de medição de combustível utilizando um baixo custo e que entregue uma medição confiável e eficiente ao condutor, permitindo assim seu correto monitoramento e gerenciamento da quantidade de combustível presente em seu veículo. Dessa forma o sistema terá a função de apontar a quantidade de combustível que foi injetada no tanque logo após o abastecimento, funcionando como um dispositivo de comparação com fins de proteger o consumidor e evitar ações fraudulentas.
A leitura do nível será realizada por meio de um módulo ultrassônico HC-SR04 e o monitoramento será efetuado por um microcontrolador ESP32, que possui integrado ao seu chip um módulo wi-fi e um módulo bluetooth para comunicação. Assim sendo, será utilizada a comunicação wi-fi do ESP32 para empreender a comunicação por meio do protocolo de mensagens MQTT.
A partir da aquisição dos dados é necessário que haja um sistema que possa armazenar tais dados como também os transmitir ao condutor em tempo real. Desse modo foi preciso a criação de um servidor web para hospedar os dados que serão enviados do ESP32 pelo protocolo MQTT. Para o presente projeto foi escolhido o servidor AWS (Amazon Web Service) que oferece serviços de computação em nuvem gratuitamente para os usuários.Com o servidor ativo, é gerado um IP público que foi utilizado para hospedar uma página web que apresenta os dados obtidos em tempo real, funcionando como um sistema supervisório.
Dentro do servidor criado foi necessário a instalação do protocolo de comunicação MQTT como também a geração de um banco de dados para guardar todas as informações vindas do sensor. Para o projeto foi escolhido o sistema de gerenciamento para banco de dados MySQL que é fornecido pela Oracle Corporation. Com esse sistema ativo, foi possível gravar os dados enviados pelo MQTT em nuvem, não necessitando dessa forma de um hardware específico para armazenamento.
Como o protocolo MQTT requer um mediador (broker) para gerir as publicações entre os dispositivos, foi exigido a utilização de uma ferramenta que fosse capaz de ler os dados enviados ao broker como também de mostrar os valores para o usuário. Sendo assim foi escolhido a plataforma Node-RED de desenvolvimento baseada em fluxo para programação visual, criada originalmente pela IBM. Por meio do Node-RED pode-se elaborar um sistema supervisório (dashboard) totalmente visual e intuitivo que permite conectar todos os dispositivos e mostrar ao condutor todas as informações contidas no servidor web.
Para a conclusão das etapas descritas até então foram seguidos os passos que são relatados a seguir:
- Inicialmente foi criado uma instância na Amazon (AWS), utilizando este link: https://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.CreateWebServer.html;
- Após a criação da instância EC2, na mesma foi necessário a instalação do Linux (com kernel Ubuntu), do web server Apache e do banco de dados Mysql/PHP. Para esta etapa foi seguido o tutorial apresentado no seguinte link: https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-20-04-pt;
- Nesta instância também foi necessário a instalação do MQTT, a qual foi feita seguindo o tutorial deste outro link: https://www.vultr.com/docs/how-to-install-mosquitto-mqtt-broker-server-on-ubuntu-16-04;
- A instalação da plataforma Node-Red também foi executada na instância EC2, seguindo o tutorial apresentado neste blog Sistemas Embarcados. Durante esta etapa também foi criado uma senha para proteger os flows de progaramação na plataforma.
- Por fim foi criado um Domain Name System (DNS), no site https://www.duckdns.org/, seguindo os passos descritos neste mesmo blog Sistemas Embarcados.
[ID:16] Autor: - Criado em: 2021-04-27 03:59:03 - [ Compartilhar ]
Monitoramento de sistema hidropônico
1. Fundamentação teórica
A área territorial referente à produção agrícola representa um percentual inferior a 20% do total disponível. Em função desse baixo percentual direcionado a produção tradicional, a procura por novos métodos de produção cresce constantemente. Com o objetivode diminuir a dependência do cultivo com o solo, aplicam-se métodos alternativos, como por exemplo a produção hidropônica (NETO;BARRETO, 2012).
A produção hidropônica confere vantagens aos produtores, já que promovem a facilidade no manejo da cultura,aproveitamento dos insumos, controle das condições ambientes, além de possibilitar a produção durante todo o ano (ANTÔNIO, 2004).
O sistema de produção hidropônico, ao ser comparado a métodos de cultivo tradicionais, apresenta redução na quantidade de água e agrotóxicos aplicados, eficiência na produção e maior praticidade para o trabalho manual (DRAGO, 2017).
No Brasil, destacam-se os cultivos hidropônicos baseados no sistema NFT (Fluxo Laminar de Nutrientes). Esse sistemaé composto por um reservatório, um conjunto de bombeamento com sistema de retorno da solução nutritiva e canais de cultivo para posicionamento das plantas. A solução nutritiva circula por meio dos canais, e esse fluxo irriga as raízes das plantas (COSTA, 2009).Em função da acessibilidade e facilidade na implantação e produção, o sistema NFT apresenta ampla aplicação comercial (FELTIM, 2009). A figura 1 representa o sistema NFT para cultivo.
Figura 1. Sistema hidropônico NFT.
Fonte: Hidrogood, 2019.
Para monitorar a solução nutritiva e as outras variáveis que interferem no desenvolvimento da produção hidropônica,aplicam-sesistemas eletrônicosquecontribuempara o aumento da produtividade e redução do custo da produção (DOMINGOS, 2019).
A automação da produção hidropônica dispensa vigilância presencial periódicae promove controle e monitoramento dos parâmetros fundamentais para o desenvolvimento do cultivo, como os fatores que influenciam a solução nutritiva (pH, temperaturae condutividade elétrica) e as variáveis provenientes do meio em que a estrutura está localizada (temperatura, umidade e luminosidade) (NETO, 2015).
Com o objetivo de estabelecer as condições necessarías para o desenvolvimento da planta, deve-se avaliar e monitorar constantemente os parâmentros relacionados a solução nutritiva, como o pH, a condutividade elétrica e a temperatura (JUNIOR; FERREIRA; CANATO, 2020). O pH de uma solução nutritiva, em um cultivo de alfaces, deve permanecer na faixa de 6,0 a 6,5, a concentração avaliada pela condutividade elétrica deve estar entre 1,5 mS/cm a 2,5 mS/cm e a temperatura da solução deve manter na faixa de 20°C a 25°C (EMBRAPA, 2000).
Para monitorar o pH de uma solução nutritiva, pode-se aplicar o sensor pH 4502 C, já que o instrumento apresenta uma faixa de leitura adequada com a necessidade do cultivo de alface. O sensor é composto por dois eletrodos, um de referênciae o outro indicador de vidro. Os eletrodos são combinados em somente uma ponta de prova para realizar a medição (BARON, 2019). A medição do pH de uma amostra está relacionada a diferença de potencial obtida por meio das diferentes concentrações no eletrodo indicador de vidro e na solução (BARON, 2019). A figura 2 representa o sensor pH 4502 C com o eletrodo de medição.
Figura 2. Sensor pH 4502C + eletrodo.
Fonte: DR Robot, 2016.
Para monitorar a condutividade elétrica de uma solução nutritiva, pode-se aplicar o sensor KS 0429, já que o instrumento demonstra uma faixa de operação adequada com a solicitada para um cultivo de alface. A condutividade elétrica é a capacidade que uma solução apresenta de conduzir corrente elétrica em função dos íons dissolvidos (BARON, 2019). Em uma solução, o fluxo de corrente ocorre em função do deslocamento dos íons formados pela diluição de um sólido, que resulta em cargas elétricas opostas (BARON, 2019). Os íons na solução influenciam o fluxo de corrente que se desloca entre os dois eletrodos do sensor de condutividade elétrica. A medição é feita mergulhando os eletrodos na solução, que encontram-se em uma única ponta de prova, com o objetivo de monitora a condutividade elétrica (BARON, 2019). A figura 3 demonstra o sensor KS 0429 com o eletródo de medição.
Figura 3. Sensor KS 0429 + eletrodo.
Fonte: KeyeStudio, 2021.
Para monitorar a temperatura da solução, pode-se aplicar o sensor DS18B20, por apresentar uma ampla faixa de medição que atende a necessidade do cultivo de alface. A temperatura da solução influencia diretamente a região radicular da cultura, já que temperaturas superiores a 27 °C podem prejudicar o processo fotossintético, o teor de água nas folhas, a taxa de expansão foliar e o crescimento da raiz (BREMANKAMP et. al, 2012). A figura 4 representa o sensor DS18B20.
Figura 4. Sensor DS18B20.
Fonte: Dallas Semiconductor, [2000?].
O controle e monitoramento de um cultivo hidropônico pode ser realizado por meio de sistemas automatizados com aplicação de sensores e atuadores (SOUZA, et. al, 2016).Pode-se ainda agregar aplicativos desenvolvidos para dispositivos móveis que permitam monitorar e auxiliar a produção hidropônica (VIDI, 2019). A comunicação entre sistemas eletrônicos e interfaces gráficas pode ser aplicada para o controle de uma produção hidropônica (ANTONIOLLI, 2019). Essa transmissão de dados está relacionada ao conceito de IoT (Internet das Coisas), e refere-se a ferramentas que possibilitam o acesso remoto, em conjunto com o fornecimentodeinformações em tempo real (ANTONIOLLI, 2019). Pretende-se monitorar os parâmetros que interferem no desenvolvimento das plantas por meio de sensores. O controle e monitoramento pode ser feito meio do Esp 32. A figura 5 representa o Esp 32.
Figura 5. Esp 32.
Fonte: Amazon, 2020.
2. Objetivo Geral
O objetivo geral do projeto é desenvolver um sistema de monitoramento de uma horta hidropônica por meio do Esp32 e da interface desenvolvida no Node-Red.
2.1 Objetivos Específicos
O projeto tem como objetivos específicos:
Definir e estudar sensores/atuadores de baixo custo disponíveis e adequados para o sistema hidropônico;
Estudar o Esp 32.
3. Materiais e Métodos
Atividade: Revisão bibliográfica. - Materiais/Métodos: Scielo, Portal de Periódicos Capes, Scholar Google, etc.;
Atividade: Definir e avaliar os componentes eletrônicos (sensores, atuadores, conversor AD, bomba d’água) de baixo custo. - Materiais/Métodos: Scielo, Portal de Periódicos Capes, Scholar Google, etc.;
Atividade: Definir e avaliar o Esp32. - Materiais/Métodos: Scielo, Portal de Periódicos Capes, Scholar Google, etc.;
Atividade: Instalar os componentes eletrônicos;
Atividade: Desenvolver a programação. - Materiais/Métodos: Visual Code, Node-Red, Arduino.
4. Resultados
Para o desenvolvimento do projeto aplicado para máteria de sistemas embarcados, foi realizado a comunicação dos sensores responsáveis pela leitura das grandezas relacionadas a solução nutritiva (pH, condutividade elétrica e temperatura) com a placa ESP32. Para visualizar dos dados lidos pelos sensores, foi elaborado um dashboard por meio da ferramenta Node-Red. Foi utilizado também o editor de código-fonte Visual Code para elaborar a programação, bem como uma máquina virtual, para possibilitar a comunicação. A figura 6 representa o desenvolvimento da interface pelo Node-Red.
Figura 6. Desevolvimento dashboard para sensores.
Fonte: Próprio autor.
A figura 7 representa o dashboard desenvolvido com os dados de monitoramento da solução nutritiva da horta hidropônica. Na interface, pode-se observar os valores de temperatura da solução, pH e condutividade elétrica ao longo do tempo, e o valor lido instantaneamente pelo Esp32.
Figura 7. Dashboard Node-Red.
Fonte: Próprio autor.
5. Referências
ANTONIOLLI, A.Sistema de monitoramento automatizado para controle de qualidade de água em sistema aquapônico.2019.Trabalho de Conclusão de Curso(Bachareladoem Engenharia de Computação e Informação) -Universidade do Vale do Taquari, Lajeado, 2019.
ANTONIO, I. C.; ARAÚJO, J. A. C. Perfil horizontal da temperatura diurna em cultivo de alface, no sistema de hidroponia NFT, em Jaboticabal (SP).Científica, v.32,n. 1,p.30-34, 2004. Disponível em: https://ainfo.cnptia.embrapa.br/digital/bitstream/item/191676/1/306-8-Cientifica-pg-30-34.pdf
BARON, L. C. Avaliação da viabilidade técnica de dispositivos de baixo custo para automação de um sistema hidropônico NFT. 2019. Dissertação (Mestrado em Engenharia de Energia na Agricultura) - Universidade Estadual do Oeste Paulista, Cascavel, 2019.
BREMENKAMP, D. M. et. al. Efeito da temperatura da solução nutritiva no crescimento da alface (Lactuca sativa L.) em hidroponia. Horticultura Brasileira, v. 30, n. 2, p. 596-604, jul. 2012. Disponível em: http://www.abhorticultura.com.br/EventosX/Trabalhos/EV_6/A5373_Comp.pdf. Acesso em: 12 mai. 2021.
COSTA, E.; LEAL, P. A. M. Produção de alface hidropônica em três ambientes de cultivo.Engenharia Agrícola,v. 29,n. 3,p.358-369,jul./set. 2009. Disponível em: https://www.scielo.br/pdf/eagri/v29n3/a03v29n3.pdf
DOMINGOS, A. S. Sistema de monitoramento de cultivo hidropônico.Orientador: Odilson Tadeu Valle. 2019. Trabalho de Conclusão de Curso(Bacharelado em Engenharia de Telecomunicações) -Instituto Federalde Santa Cataria, São José, 2019.
DRAGO, A. Z. PENA, J. G. C. Estudo e desenvolvimento de um sistema automático para cultivo de hortaliças pelo sistema hidropônico através de controleembarcado.Esfera Acadêmica Tecnologia,v. 2,n. 2,p.25-28, 2017. Disponível em:https://multivix.edu.br/wp-content/uploads/2018/10/revista-esfera-tecnologia-v02-n02-artigo-02.pdf
EMBRAPA. Circular Técnica: Principios de Hidroponia. Brasília: [s.n.], 2000.
FELTRIM, A. L. et al. Produção de alface americana em solo e em hidroponia no inverno e verão, em Jaboticabal, SP.Revista Brasileira de Engenharia Agrícola e Ambiental,v. 9,n. 4,p. 505-509,mai.2005. Disponível em:https://www.scielo.br/pdf/rbeaa/v9n4/v9n4a10.pdf
NETO, A. J. et al. Monitoramento de um circuito hidropônico através de um circuito de automação e controle.Ciência exatas e tecnológicas,v. 3,n. 1,p. 105-116, nov. 2015. Disponível em: https://periodicos.set.edu.br/fitsexatas/article/view/2644/1534
NETO, E. B., BARRETO, L. P. As técnicas de hidroponia.Anais da Academia Pernambucana de Ciência Agronômica, v. 8-9, p. 107-137, 2011-2012. Disponível em: https://core.ac.uk/download/pdf/228884069.pdf
OHSE, S. et al. Qualidade de cultivares de alface produzidos em hidroponia. Scientia Agrícola, v.58, n.1, p.181-185, jan./mar. 2001. Disponível em: https://www.scielo.br/pdf/sa/v58n1/a27v58n1.pdf
OLIVEIRA, F. P. Desenvolvimento de aplicativos nativos Android e IOS para restaurante universitário da UFRJ.2018. Trabalho de Conclusão de Curso(Bachareladoem Engenharia da Computação) -UniversidadeFederal do Rio de Janeiro, Rio de Janeiro, 2018.
SOUZA, A. S. et. al. Horta hidropônica automatizada por microcontrolador. In: MOSTRA NACIONAL DE ROBÓTICA, 6., 2016, Bahia. Anais eletrônicos[...]. Bahia: MNB, 2016. Disponível em: http://sistemaolimpo.org/midias/uploads/041a39b02a1a5bb1d271f19551ba9396.pdf.
VIDI, A. F. Megapônico:automação de estufa agrícola para plantio hidropônico controlada por aplicativo. Revista Científica Semana Acadêmica,v.1, n.167, p.1-18, mai. 2019. Disponível em: https://semanaacademica.com.br/system/files/artigos/artigo_final_tcc_ii_corrigido_1_0.pdf
[ID:15] Autor: - Criado em: 2021-04-27 03:57:49 - [ Compartilhar ]
CONTROLE DE TEMPERATURA DE UM MINI TANQUE UTILIZANDO O ESP-32.
O sensor escolhido para esse projeto foi o sensor de temperatura ds18b20, a escolha desse sensor foi devido sua fácil aplicabilidade e baixo custo, além de ser comercializado já encapsulado e vedado.
Após a escolha do sensor alguns objetivos foram traçados e cumpridos conforme o desenvolvimento do projeto:
- Criação de uma instância EC2 (Linux), utilizando os serviços da Amazon Web (AWS)
- Instalação do Apache na instância, que permitiu que nossa instância fosse acessada por uma página Web.
- Instalação do PhP e MySQL na instância.
- Criação e configuração de um banco de dados (RDS) utilizando novamente os serviços da Amazon Web.
- Instalalação da ferramenta do Nod-Red em nossa Instância Ec2.
- Aplicação do protocolo de mensagens MQTT, para comunicação do Nod-red com o microcontrolador Esp-32.
- Configuração mais detalhada das ferramentas do Nod-Red, aplicação dos valores recebidos do sensor em gráficos.
- Incorporar o MySQL dentro do Nod-Red, e fazer com que os dados recebidos sejam enviados ao banco de dados criado anteriormente.
- Configuração final do Nod-Red e circuito físico e apresentação do projeto.
Observação: Foi utilizado o VIsual Code para implementação das ferramentas na instância.
pós cumprir todos os objetivos listados e utilizando todas as ferramentas indicadas pelo professor, foi possível realizar o monitoramento do sensor de temperatura através de uma página Web. O esquemático de comunicação está representado na figura abaixo.
Caminho dos dados enviados pelo sensor até chegar no Nod-Red.
Dashboard desenvolvido para o monitoramento de temperatura
[ID:14] Autor: - Criado em: 2021-04-27 03:56:54 - [ Compartilhar ]
Desenvolver um computador de bordo e rastreador para carros Murari
Desenvolver um computador de bordo e rastreador para carros antigos com conxão GSM para monitoramento e bloqueio remoto, dotado de display para visualização onboard
ESP 32, sensores diversos, módulo GPS, display e módulo GSM. Aquisitar dados através do ESP e exibir em display. Enviar, via GSM, quando solicitado por mesagem de SMS, a localização do veículo e permitir o bloqueio da ignição do mesmo por uso de SMS
Um protótipo sólido para continuar os estudos de viabilidade de torná-lo um produto comercial com aplicação geral em carros antigos, carburados e com custo acessível para colecionadores mesmo de modelos mais simples comos Fusca, Escort, Monza e outros.
[ID:13] Autor: - Criado em: 2021-04-27 03:55:46 - [ Compartilhar ]
Aquisição e acesso remoto de dados de motor carburado
O presente projeto tem como objetivo a aquisição de dados de um motor carburado por meio de sensores para acesso remoto para encontrar e/ou previnir possiveis falhas, facilitando a regulagem e manutenção do veículo com o intuito de trazer uma tecnologia mais atual para veículos mais antigos. Com relação a hardware e software, serão usados:
-ESP32 – Programado com Arduíno IDE;
-Servidor de hospedagem + nome de domínio;
-Script PHP para inserção de dados no MySQLe exibição em uma página web;
-Banco de dados MySQL;
-Utilização do software Node RED.
Os dados serão coletados utilizando o ESP32 (Figura 1) e armazenados em uma database.
Figura 1.
Estes dados serão representados em um site programado no software Node RED, esta programação pode ser observada na figura 2 abaixo.
Figura 2.
Neste site terão graficos, para analize mais detalhada, e medidores, para leitura em tempo real, como demosntrado no exemplo da figura 3. Também pode ser visto nessa figura o botão para corte de ignição como sistema de segurança anti-furto e um indicador mostrando se ele esta ativo ou não, assim como o led para indicar se o motor esta ligado ou não.
Figura 3.
[ID:12] Autor: - Criado em: 2021-04-27 03:54:38 - [ Compartilhar ]
VeÃculos elétricos no Brasil: mapeamento de eletropostos
Veículos elétricos têm entrado no mercado automotivo brasileiro de maneira significativa na última década, e seu impacto, desde então, se tornou alvo de diversas pesquisas que visam entender como o crescimento desse setor se dará no futuro com essas mudanças. No entanto, para que a substituição de veículos convencionais e a adoção em massa de elétricos ocorra de fato no país, são necessárias melhorias na infraestrutura, como no setores de rede elétrica e de recarga veicular. Assim, estudos sobre como facilitar a introdução dessa tecnologia se fazem necessários. É nesse escopo que se encaixa o presente projeto.
Esse trabalho, assim, propõe elaborar um aplicativo de mapeamento de eletropostos que auxilie os motoristas de veículos elétricos a traçar rotas para o posto de recarga mais próximo.
Para realizar o projeto, os objetivos específicos definidos envolvem:
- Criar um servidor e página web a partir de uma instância EC2 do AWS Service e ferramentas como o Node-RED
- Mapear pontos de recarga para veículos elétricos em São Paulo, como a casa do proprietário de veículo e outros eletropostos utilizando a API do Google;
- Simular a localização do veículo por meio de coordenadas de GPS obtidas com um ESP32 e com um módulo GY-NEO6MV2;
- Obter dados de autonomia do veículo simulado, de forma a se saber quantos quilômetros o veículo ainda consegue percorrer com eletricidade antes de a bateria descarregar;
- Traçar rotas para os postos mais próximos da localização atual do veículo;
- Verificar até qual posto o veículo consegue chegar com a energia que lhe resta.
Esse trabalho é um complemento ao TCC de Julia Maria Massareli sobre "Veículos elétricos no Brasil: tecnologias aplicadas, demanda energética e impactos ambientais".
Figura - Exemplo de eletroposto em São Paulo
Fonte: https://cosol.com.br/blog/novo-eletroposto-para-recarga-de-veiculos-instalado-em-sp
[ID:11] Autor: - Criado em: 2021-04-27 03:53:27 - [ Compartilhar ]
ALIMENTADOR AUTOMÃTICO PARA ANIMAIS DOMÉSTICOS CONTROLADO VIA APLICATIVO
Introdução
Cresce a cada ano, no Brasil, a quantidade de animais de estimação. Segundo o IBGE, em 2013, esse número alcançava em torno 132,4 milhões, dos quais 52,2 milhões representavam a população de cães e 22,1 milhões, a de gatos. Atualmente, os animais domésticos atingiram um novo estatuto cultural: estão cada vez mais “antropomorfizados”, são considerados membros da família e tratados, em muitos casos, como crianças, servindo como companhia e terapia para os humanos (PASTORI e MATOS, 2015). Entretanto, a rotina das famílias na sociedade contemporânea, na qual as pessoas estão cada vez mais atarefadas e, muitas vezes, necessitam passar um certo tempo ausentes de casa, tem feito com que os proprietários de animais domésticos sejam cada vez menos cuidadosos no que se diz respeito à alimentação de seus pets. Devido a isso, a saúde nutricional dos animais pode ser afetada pelo excesso ou falta de nutrientes em sua dieta, resultando em graves consequências, como patologias (obesidade e desnutrição) e suas complicações (ALVES, 2020).
Igualmente aos seres humanos, os animais necessitam de uma alimentação balanceada, variando de acordo com seu porte físico e espécie. Ela é de suma importância para que o animal tenha uma vida saudável, mas infelizmente essa questão pode ser negligenciada pelos donos dos pets. Muitas pessoas, por exemplo, oferecem comida destinada a seres humanos para seus animais de estimação, podendo acarretar doenças, devido à carência ou excesso de nutrientes. Segundo Grandjean (2006), outro erro comum que pode afetar também a saúde dos animais, é não estabelecer um limite na alimentação, oferecendo uma quantidade diária muito maior ou menor que a recomendada. Pois uma boa parte dos animais não possuem autocontrole e caso um limite não seja estabelecido, eles continuarão ingerindo alimento enquanto estiver ao seu alcance.
Diante de todos esses problemas, é possível ter como solução a tecnologia e a automação, mais especificamente, a automação residencial. Com a crescente utilização da automação em benefício da otimização das atividades humanas e, consequentemente, de tudo aquilo que o cerca, houve uma redução da maioria dos problemas do dia a dia que, antes, eram considerados irremediáveis (FIRMINO e MATEUS, 2020). Uma boa alternativa para amenizar e até mesmo resolver o problema da alimentação dos pets, seria a utilização de um dispositivo eletrônico e mecânico, capaz de fornecer e controlar, de forma balanceada, a quantidade de alimento adequada para o animal de estimação, de modo que o pet se alimente corretamente, sem excessos ou carências, que prejudiquem a sua saúde e qualidade de vida.
E esse dispositivo pode ser um alimentador controlado, ou melhor, um alimentador automático. Com o avanço contínuo da tecnologia, esse tipo de dispositivo vem sendo cada vez mais utilizado pelos donos de pets, desde o mais simples, sem controle ou automação, até o totalmente automático. O uso de um alimentador pode fornecer, para o dono, a possiblidade de sair de casa sem grandes preocupações com a alimentação de seu pet e até realizar viagens curtas, dependendo do tipo de alimentador, além de também poder fornecer uma alimentação mais balanceada e saudável para o animal.
Objetivo Geral
Este trabalho tem com objetivo geral desenvolver um protótipo de um alimentador automático para pets controlado via aplicativo.
Objetivos Específicos
- Construir a estrutura do alimentador, com uma vasilha de ração e outra de água;
- Montar um circuito eletrônico para medição (sensores), controle (microcontrolador) e acionamento;
- Desenvolver um programa para medição, controle e acionamento.
- Desenvolver um aplicativo com uma interface, para que o usuário possa ter todas as informações e realizar as ações necessárias do alimentador.
.
Figura 1. Exemplo de alimentador automático comercial.
Para o desenvolvimento deste projeto, será usado o microcontrolador ESP32-WROOM-32 (Figura 2) para o controle, sensor ultrassônico (Figura 3) para a medição e válvula solenoide para o acionamento (Figura 4). O ambiente de programação será o PlatformIO, funcionando como extensão do Visual Studio Code. E o controle será efetuado em uma página Web, feito por meio do NodeRED, com o protocolo MQTT. Na Figura 5 é visto uma montagem inicial do protótipo.
Figura 2. Módulo do ESP32 DEVKIT V1.
Figura 3. Módulo Sensor Ultrassônico HC-SR04.
Figura 4. Válvula Solenoide 110V.
Figura 5. Protótipo inicial.
Além de uma leitura instatanea de nível na página Web, também foi utilizado um banco de dados (usando o RDS da Amazon) para armazenar e ter um histórico das leituras do sensor. Também foi implementado o FreeRTOS no firmware do ESP32, para ter várias funções da programação rodando em conjunto, sem conflitos ou problemas com tempo. Na Figura 6 temos a página Web do projeto.
Figura 6. Dashboard.
[ID:10] Autor: - Criado em: 2021-04-27 03:51:50 - [ Compartilhar ]
Monitoramento hÃdrico do IFSP Campus Catanduva
O presente projeto tem como objetivo o monitoramento diário, mensal e anual da vazão hídrica do Instituto Federal de São Paulo - Campus Catanduva, com a finalidade de monitorar possiveis irregularidade no gastos hídricos, assim demonstrando possiveís vazamentos em tempo real por meio de uma página web.
A leitura da vazão hídrica será realizada com um hidriometro elster m170-III com um sensor de efeito hall acoplado ao mesmo, a figura 1 ilustra o hidrometro.
Figura 1
O monitoramento foi realizado por meio do micro controlador ESP32, que possui integrado ao seu chip um modulo WIFI e um modulo bluetooth de comunicação. Utilizando o a comunicação WIFI, da ESP32, será feita comunicação com o protocolo de mensagens MQTT, como ilustra a figura 2.
Figura 2
Para a comunicação com o MQTT foi necessário a criação de servidor web AWS para hospedar os dados, que seram enviados pela ESP para o MQTT, e apresenta-los publicamente na web, por meio de IP publico gerando também pela instancia AWS. Neste servidor foi necessário a instalação do MQTT e de um banco de dados, que no presente trabalho foi utilizado Mysql. Este banco de dados tem a função de salvar os dados enviados ao mqtt na nuvem, como ilustra figura 3.
Figura 3
Está comunicação foi desenvolvida por meio da plataforma Node-Red, que é uma ferramenta de desenvolvimento baseada em nós, ou em blocos, com o objetivo de conectar dispositivos de hardware, APIs, serviços online e ferramentas para o desenvolmento dos mesmo, como por exemplo são MQTT e Mysql. A figura 4 ilustra os blocos de comuincação, na plataforma Node-Red, entre o MQTT e Mysql.
Figura 4
Também no Node-Red foi desenvolvida uma página web para o monitoramento e armazenamento de um historico de consumo hídrico diario e anualmente. Para a execução das etapas descritas anteriormente foi seguido os seguintes passos, que seram relatados apartir de agora.
Inicialmente foi criado uma instancia na Amazon (AWS), utilizando este link: https://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/CHAP_Tutorials.WebServerDB.CreateWebServer.html
Após a criação da instancia EC2, na mesma foi necessário a instalação do Linux, com um kernel Ubunto, do web server Apacahe, o banco de dados Mysql e o PHP, nesta etapa foi seguido o tutorial apresentado no seguinte link: https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-ubuntu-20-04-pt
Nesta instancia também foi necessário a instalação do MQTT, as mesma foi feita seguindo o tutorial deste outro link: https://www.vultr.com/docs/how-to-install-mosquitto-mqtt-broker-server-on-ubuntu-16-04
A instalação da plataforma Node-Red também foi executa na instancia EC2, seguindo o tutorial apresentado neste blog Sistemas Embarcados, nesta etapa também foi criado uma senha para os flow de progaramação da plataforma.
Após está etapa foi criado um Domain Name System (DNS), no site https://www.duckdns.org/, seguindo os passos descritos neste mesmo blog Sistemas Embarcados.
Outra etapa necessária para o desenvolvimento da dashboard de monitoramento, ainda no Mysql, foi a criação de um banco de dados (Database), dentro deste foram criadas diversas tabelas responsáveis por armazenar todos os dados recebidos do hidrômetro, sendo, respectivamente, um para receber os dados em geral, uma para cada hora do dia, de 0 horas até as 23 horas, outra para os dias da semana e outra para cada mês do ano.
Utilizando a plataforma Node-Red, como mencionado na figura 4, a tabela que recebe os dados em geral adquire as informações enviadas via o nó MQTT por meio de um nó INSERT, que utiliza a linguagem Mysql de inserção, que tem como função inserir os dados na tabela. Após está etapa a mesma tabela envia os dados para as tabelas de horas, por meio de um nó SELECT, neste nó foi utilizado uma linguagem Mysql para selecionar sempre o último dado recebido pela tabela geral. Em outra função estes dados coletados são somados durante a última hora e salvo na hora corresponde, ou seja, os dados são somados das 00:00 até as 00:59 e salvos na tabela da 01:00 hora. Este procedimento é feito em todas as horas do dia e salvos em cada uma das 24 tabelas que representam cada hora do dia.
Por meio desta mesma ideia os valores de cada dia da semana e de cada mês são salvos, ou seja, os dados volumétricos são somados por dias e por mês sendo salvos em cada dia e cada mês presente.
A partir desta etapa finalizada foi desenvolvido a parte de back-end da dashboard, ou seja, o envio de dados das tabelas para a pagina de monitoramento, sendo assim para cada tabela foi criada uma programação com os nós SELECT, responsável por buscar os últimos dados, o nó Mysql, responsável por acessar o banco de dados e o nó Change que por sua vez é responsável por armazenar e enviar os dados para a dashboard. A figura 4 ilustra está programação.
Figura 4
Finalizado o back-end da página foi desenvolvida a parte do front-end da dashboard, ou seja, é a parte em que o usuário visualizará os gastos hídricos, a mesma foi construída por meio do nós, no Node-Red, http-responsive, que tem como função efetuar o GET da página responsável pelo acesso a página, outro nó é o template, que neste caso foram utilizado dois, um para o CSS, ou seja o estilo da página e outro para o HTML e JavaScript responsável pela criação em sí da página. A figura 5 ilutra os nós responsáveis pelo desenvolvimento da página.
Figura 5
A dashboard possui, como dito no começo deste trabalho, um gráfico por hora, outro semanal e outro mensal, os mesmo foram desenvolvidos com as linguagens de programação HTML, JavaScrpit e CSS style. Para isto foram utilizados códigos exemplos retirados dos sites descritos a seguir:
- Código fonte de exemplo para gráfico por hora: Basic column | Highcharts.com
- Código fonte de exemplo para os gráficos Semanal e Anual: Visualization: Column Chart | Charts | Google Developers
Com todas estas etapas concluídas temos a dashboard de monitoramento dos gastos hídricos do campus Catanduva pronta, como ilustra figura 6.
Figura 6
[ID:8] Autor: - Criado em: 2021-04-27 03:49:25 - [ Compartilhar ]