Você está na página 1de 11

Projeto de Bloco: Sistemas Digitais Embarcados [23E2_5]

TP - 9

Projeto de Sistema Embarcado de Irrigação

Frederico Flores Da Silva

PROFESSOR | Edgar J Garcia N Segundo

1 de 11
Sumário

Introdução .............................................................................................................. 3
Objetivo .................................................................................................................. 3
Motivação ............................................................................................................... 4
Componentes …….……….................................................................................. 4 e 5
Esquema ………….......................................................................................... 5
Diagrama de Bloco ................................................................................................ 6
Fluxograma …................................................................................................. 6
Pseudocódigo…….................................................................................................... 7
Funções………………………………........................................................................ 8
Código……………………...................................................................................... 9
Relatório ..................................................................................................................10
Conclusão ...............................................................................................................10

2 de 11
.INTRODUÇÃO

Neste projeto vamos desenvolver um protótipo de sistema embarcado de


irrigação automatizado utilizando a plataforma Arduino com sensores de umidade e
bomba de imersão. O objetivo desta solução é a gestão e otimização do uso da
água e a simplificação da rega diária de um jardim ou até no uso agrícola. Nesta
trabalho vamos abordar os aspectos técnicos dessa implementação, componentes
necessários e simulação, realçando a sua eficácia e aplicação prática, bem como
sua relevância para os critérios ESG (Ambiental, Social e de Governança) como
parte dos Objetivos de Desenvolvimento Sustentável (ODS) propostos pela ONU.

.OBJETIVO

O objetivo é desenvolver um protótipo de sistema embarcado de irrigação


com sensor de umidade de solo, que possa servir de exemplo para implantação de
sistemas de irrigação com sensores para uso real, seja em jardins ou em uso
agrícola. Para tanto, vamos prever o funcionamento, componentes necessários,
pontos de falhas e lógica de programação.

3 de 11
.MOTIVAÇÃO

Sistemas embarcados para automatização de irrigação, entre outras técnicas


de plantio, podem desempenhar um papel fundamental no apoio à agricultura
sustentável e na contribuição para o alcance dos Objetivos de Desenvolvimento
Sustentável (ODS) da ONU. Essa tecnologia permite a gestão eficiente dos recursos
hídricos, promovendo o uso responsável da água (ODS 6 - Água Limpa e
Saneamento) e aumentando a produtividade agrícola (ODS 2 - Fome Zero e
Agricultura Sustentável). Além disso, ao monitorar e otimizar o uso de água com
base nas condições do solo e nas necessidades das plantas, a irrigação
automatizada contribui para a mitigação das mudanças climáticas (ODS 13 - Ação
Contra a Mudança Global do Clima) ao reduzir o desperdício de recursos e a
emissão de gases de efeito estufa. Portanto, a aplicação de sistemas de irrigação
automatizados com Arduino não apenas aumenta a eficiência da agricultura, mas
também se alinha com diversos ODS, promovendo um desenvolvimento
sustentável.

.ESCOLHA DOS COMPONENTES

A escolha do Arduino para nosso projeto se baseia em vantagens técnicas


específicas. O Arduino oferece um ambiente de desenvolvimento intuitivo, com
programação em C/C++, agilizando o desenvolvimento. Comparado a alternativas
mais robustas, como o Raspberry Pi, o Arduino é mais adequado em termos de
custo e complexidade para um projeto de automatização simples de irrigação
residencial. Embora concorrentes como ESP8266/ESP32 sejam viáveis, o Arduino
possui uma base de componentes maior e uma comunidade de usuários mais
extensa.
| Arduino | Raspberry Pi | Apenas Componentes Eletrônicos |
|-------------------------------|-------------------|-------------------|--------------------------------
| Flexibilidade Programática | Sim | Alto | Limitada
| Ajuste de Precisão | Sim | Sim | Limitado
| Integração de Sensores | Sim | Sim | Não
| Expansibilidade Modular | Sim | Sim | Limitado
| Consumo de Energia Eficiente | Sim | Não | Baixo
| Personalização e Adaptação | Alto | Alto | Limitada
| Complexidade de Implementação | Moderada | Moderada a Alta | Médio a Alto
| Custo | Baixo | Baixo a Moderado | Baixo
| Escalabilidade | Adequada para PME | Adequada para M/G | Limitada

4 de 11
.COMPONENTES

| Nome | Quantidade | Componente | Preço Estimado (R$)


|------------------|------------|-----------------------------|----------------------|
| Arduino Uno R3 | 1 | Arduino Uno R3 | 50,00 |
| Bomba CC | 1 | Motor CC | 20,00 |
| Transistor NPN | 1 | Transistor NPN (BJT) | 2,00 |
| Resistor 220 ohm | 2 | Resistor 220 ohm | 0,50 |
| LED Verde | 1 | LED Green | 1,00 |
| LCD 16 x 2 | 1 | LCD 16 x 2 | 30,00 |
| Potentiometer 10k| 1 | Potentiometer 10k | 3,00 |
| LED Vermelho | 1 | LED Red | 1,00 |
| 330 Resistor | 1 | 330 Resistor | 0,50 |
| 200 Resistor | 1 | 200 Resistor | 0,50 |
| Sensor de umidade| 1 | Sensor de umidade do solo | 15,00 |

.ESQUEMA

5 de 11
.DIAGRAMA DE BLOCO

.FLUXOGRAMA

6 de 11
.PSEUDOCÓDIGO
Início do Programa:
Inicialize o monitor serial com uma taxa de 9600 bauds
Inicialize o display LCD com 16 colunas e 2 linhas
Exiba "Sistema de Irrigacao" na primeira linha do LCD
Exiba "Automatizado!" na segunda linha do LCD
Configure o pino do motor como saída
Configure o pino do LED Vermelho como saída
Configure o pino do LED Verde como saída
Aguarde 2 segundos
Limpe o LCD
Exiba "Umidade = " na primeira linha do LCD
Exiba "Bomba = " na segunda linha do LCD

Loop Principal:
Leia o valor do sensor de umidade LM35
Converta o valor para umidade do solo em porcentagem
Exiba a umidade do solo no LCD
Verifique a umidade do solo:
Se a umidade do solo for menor que 310:
Ligue o motor da bomba d'água
Acenda o LED Vermelho
Apague o LED Verde
Exiba "LIGADA" no LCD
Senão:
Desligue o motor da bomba d'água
Apague o LED Vermelho
Acenda o LED Verde
Exiba "DESLIGADA" no LCD

Envie a umidade do solo para o monitor serial

Fim do Programa

7 de 11
.FUNÇÕES DOS COMPONENTES

> Sensor de Umidade do Solo LM35:


O LM35 é um sensor de umidade do solo analógico.
Deve se conectar o pino VCC do LM35 a uma fonte de alimentação de 5V.
O pino GND do LM35 a terra (GND).
Opino VOUT do LM35 a uma porta analógica do Arduino (por exemplo, A0) para ler
a tensão de saída do sensor.
O LM35 gera uma tensão analógica proporcional à umidade do solo medida.
O Arduino lê essa tensão usando a função analogRead() na porta analógica
configurada.
A leitura obtida pelo Arduino é convertida em valores de umidade do solo
usando uma fórmula específica.
O valor da umidade do solo pode ser exibido ou usado para tomar decisões em seu
programa Arduino.

> LEDs
Sua função principal é fornecer informações visuais sobre o estado do
sistema e das condições do solo. Aqui está como o display LED funciona como um
atuador neste sistema:
Isso permite que os operadores ou observadores vejam facilmente se o
sistema está irrigando (LED Verde) ou se está desligado (LED Vermelho)

>Tela LCD
o LCD (display de cristal líquido) está desempenhando um papel importante
na interface homem-máquina (IHM) e na exibição de informações essenciais. Aqui
está o papel específico que o LCD está desempenhando no sistema:

● Exibição de Informações Críticas:

O LCD é usado para exibir informações críticas relacionadas ao sistema de


irrigação, especificamente a umidade do solo e o estado da bomba de irrigação.
Ele mostra a umidade atual do solo, que é medida pelo sensor de umidade
do solo (LM35), em tempo real.
● Indicação Visual do Estado da Irrigação:

O LCD mostra se a bomba de irrigação está ligada ou desligada.


Quando a umidade do solo cai abaixo de um certo limite, indicando que a
irrigação é necessária, o sistema liga a bomba e exibe "LIGADA" no LCD.
Quando a umidade do solo está acima do limite desejado, indicando que a
irrigação não é necessária, o sistema desliga a bomba e exibe "DESLIGADA" no
LCD.

8 de 11
. CÓDIGO
#include <LiquidCrystal.h>

const int LM35 = A0;


const int motor = 13;
const int LedVermelho = 12;
const int LedVerde = 11;
int valorPercentual = 0;

LiquidCrystal lcd(2, 3, 4, 5, 6, 7);

void setup() {
Serial.begin(9600);
lcd.begin(16, 2);
lcd.print("Sistema de Irrigacao");
lcd.setCursor(0,1);
lcd.print("Automatizado!");
pinMode(motor, OUTPUT);
pinMode(LedVermelho, OUTPUT);
pinMode(LedVerde, OUTPUT);
delay(2000);
lcd.clear();
lcd.print("Umidade = ");
lcd.setCursor(0,1);
lcd.print("Bomba = ");
}

void loop() {
int valor = analogRead(LM35);
float umidadeSolo = valor * 500.0 / 1023.0;
lcd.setCursor(9,0);
lcd.print(umidadeSolo);
lcd.setCursor(8,1);

if (umidadeSolo < 310){


digitalWrite(motor, HIGH);
digitalWrite(LedVermelho, HIGH);
digitalWrite(LedVerde, LOW);
lcd.print("LIGADA ");
}
else {
digitalWrite(motor, LOW);
digitalWrite(LedVermelho, LOW);
digitalWrite(LedVerde, HIGH);
lcd.print("DESLIGADA");
}

Serial.print("Umidade: ");
Serial.println(umidadeSolo);
}

9 de 11
.RELATÓRIO
Junho/23 -> Elaboração do conceito

Agosto/23 -> Primeiro teste com equipamentos reais:

https://youtu.be/o3SBQmPDTC4

Após ser detectado o ponto de falha principal, que seria a indisponibilidade do Arduino, o
professor deu o feedback da importância de termos uma feedback caso o sistema esteja indisponível.

Setembro/23 -> Nova simulação empregando o uso de LED (verde e vermelho) e a


adição de uma tela LCD para proporcionar o feedback imediato do estado do
sistema para o usuário. Otimização do código e da apresentação em geral.

10 de 11
.DEMONSTRAÇÃO

https://www.tinkercad.com/things/h0cOL9Ezwfp
https://youtu.be/KkhAFOWNmWc

.CONCLUSÃO
Desenvolver o sistema de irrigação automatizada com Arduino foi uma
experiência enriquecedora que me proporcionou valiosos aprendizados técnicos.
Este projeto me revelou a importância da automação na agricultura, especialmente
quando se trata de otimizar o uso de recursos, como a água, e promover práticas
agrícolas sustentáveis. Aprendi que a eficiência na irrigação pode ser alcançada por
meio do monitoramento constante das condições do solo e do uso de sensores
específicos, como o LM35, para obter dados em tempo real.
Além disso, percebi como a interface com o usuário desempenha um papel
fundamental na compreensão do funcionamento do sistema e na tomada de
decisões. O display LCD se mostrou uma ferramenta valiosa para exibir informações
vitais, como a umidade do solo e o estado da bomba de irrigação, permitindo uma
monitorização contínua e fácil interação.
Do ponto de vista técnico, este projeto me ensinou sobre controle de
atuadores, integração de sensores e programação Arduino. Concluindo, este projeto
demonstrou como a tecnologia pode desempenhar um papel crucial na agricultura
moderna, trazendo benefícios técnicos e socioambientais significativos. A
automação e o uso responsável de recursos são elementos-chave para enfrentar os
desafios da agricultura contemporânea e alcançar práticas agrícolas sustentáveis.

27/Setembro/2023.

11 de 11

Você também pode gostar