Este projeto implementa um controlador fuzzy aplicado a um sistema de refrigeração, utilizando a linguagem python, node-red e mosquitto. O controlador fuzzy recebe como entradas o erro e a variação do erro, enquanto a saída corresponde à potência do refrigerador. A imagem abaixo ilustra o funcionamento geral do projeto:
- Node.js (used v18.17.1);
- Node-red;
- Python (used v3.8.10)
- Jupyter Notebook;
- MN (Muito Negativo): Indica um erro muito negativo. Ou seja, está muito frio.
- N (Negativo): Indica um erro negativo. Ou seja, está frio.
- Z (Zero): Indica um erro próximo a zero.
- P (Positivo): Indica um erro positivo. Ou seja, está quente.
- MP (Muito Positivo): Indica um erro muito positivo. Ou seja, está muito quente.
A imagem abaixo permite visualizar os itens descritos acima:
- MN (Muito Negativa): Indica uma variação do erro muito negativa. Ou seja, está esfriando muito.
- N (Negativa): Indica uma variação do erro negativa. Ou seja, está esfriando.
- Z (Zero): Indica uma variação do erro próxima a zero.
- P (Positiva): Indica uma variação do erro positiva. Ou seja, está esquentando.
- MP (Muito Positiva): Indica uma variação do erro muito positiva. Ou seja, está esquentando muito.
A imagem abaixo permite visualizar os itens descritos acima:
- MB (Muito Baixa): Indica uma potência do refrigerador muito baixa.
- B (Baixa): Indica uma potência do refrigerador baixa.
- M (Média): Indica uma potência do refrigerador média.
- A (Alta): Indica uma potência do refrigerador alta.
- MA (Muito Alta): Indica uma potência do refrigerador muito alta.
A imagem abaixo permite visualizar os itens descritos acima:
O projeto utiliza a biblioteca Paho para enviar os dados do erro e temperatura para um broker MQTT (Mosquitto).
Os dados enviados para o broker MQTT podem ser visualizados e monitorados usando o Node-RED. O Node-RED oferece uma interface gráfica amigável para criar fluxos de dados, facilitando a compreensão e análise dos resultados do sistema.
-
Configuração do Ambiente: Certifique-se de ter todas as dependências instaladas: Jupyter Notebook.
-
Execução do Jupyter Notebook: Execute o notebook Jupyter principal do projeto para iniciar o sistema de refrigeração com o controlador fuzzy.
-
Instalação do Node-RED: A instalação do node-red requer previamente o node.js instalado.
sudo npm install -g --unsafe-perm node-red
Depois instale o pacote para poder visualizar os dados graficamente:
npm install node-red-contrib-ui-timelines-chart
-
Análise de Resultados: Analise os resultados do sistema de refrigeração com o controlador fuzzy através do notebook e visualize os dados no Node-RED.