Irrigação Automática com Arduíno UNO

Olá, como estão? A princípio iremos demonstrar como utilizar o KIT de irrigação automática com Arduíno UNO da WJ Componentes.

Arduíno UNO

Componentes Utilizados


OU

  • 1x KIT IRRIGAÇÃO COM ARDUÍNO UNO

Funcionamento do Projeto Irrigação Automática


Antes de mais nada nesse projeto nosso objetivo será realizar a irrigação automática de plantas a partir do sensor de umidade com sonda anticorrosiva.

Montagem do Projeto Irrigação Automática


Pinout Sensor Umidade Solo Anticorrosivo

Logo após compra dos componentes na WJ Componentes, vamos à montagem! Em seguida conectamos os pino VCC, GND e A0 do sensor de umidade de solo HD-38 nós pinos 5V, GND e A0 do Arduíno UNO possui quadro pinos sendo eles VCC, GND, digital e analógico.

Contudo segue abaixo uma imagem que demonstrando a montagem do circuito.

Montagem do Circuito Eletrônico na Protoboard - Kit Irrigação

Diagrama Esquemático do Projeto Irrigação Automática


Diagrama do Circuito Eletrico - Kit Irrigação

Código-fonte do Projeto Irrigação Automática


Em seguida segue abaixo o código-fonte completo do projeto.

//Definições -----------------------------------------------------------------------------------------
#define bomba 13                                     //Definimos bomba
#define sensor A0                                    //Definimos sensor de solo
#define umidSolo 20                                  //Definimos umidade do solo

//Setup ----------------------------------------------------------------------------------------------
void setup() {
  Serial.begin(9600);                                //Inicializamos a Serial
  pinMode(sensor, INPUT);                            //Configuramos como INPUT
  pinMode(bomba, OUTPUT);                            //Configuramos como OUTPUT
}

//Loop -----------------------------------------------------------------------------------------------
void loop() {
  float umidade = analogRead(sensor);                //Lê o sensor e armazena
  umidade = map(umidade, 0, 1024, 100, 0);           //Remapeia umidade para 0 até 100
  Serial.print(umidade);                             //Imprime a variável umidade
  Serial.println("%");                               //Imprime '%'
  if (umidade <= umidSolo) {                         //Verifica se umidade é menor ou igual a umidSolo
    digitalWrite(bomba, HIGH);                       //Liga bomba
  }
  else {
    digitalWrite(bomba, LOW);                        //Desliga bomba
  }
  delay(2000);
}

Vamos dar uma olhada mais de perto no código:

Definições de Pinos

Primeiramente teremos que estar realizar as definições dos pinos que estamos usando em nosso projeto.

//Definições -----------------------------------------------------------------------------------------
#define bomba 13                                     //Definimos bomba
#define sensor A0                                    //Definimos sensor de solo
#define umidSolo 20                                  //Definimos umidade do solo

Funções Setup

Contudo na função setup (), iremos inicializar a Serial e configurar os pinos do sensor como INPUT e o pino da bomba como OUTPUT.

//Setup ----------------------------------------------------------------------------------------------
void setup() {
  Serial.begin(9600);                                //Inicializamos a Serial
  pinMode(sensor, INPUT);                            //Configuramos como INPUT
  pinMode(bomba, OUTPUT);                            //Configuramos como OUTPUT
}

Funções Loop

Em seguida na função loop, lemos o pino do sensor e armazenamos na variável umidade, realizamos o mapeamento da variável umidade correspondente a 0 até 100 ao invés de 0 até 1024. Logo após iremos imprimir o novo valor no monitor Serial e verificamos se o solo está seco ou não.

//Loop -----------------------------------------------------------------------------------------------
void loop() {
  float umidade = analogRead(sensor);                //Lê o sensor e armazena
  umidade = map(umidade, 0, 1024, 100, 0);           //Remapeia umidade para 0 até 100
  Serial.print(umidade);                             //Imprime a variável umidade
  Serial.println("%");                               //Imprime '%'
  if (umidade <= umidSolo) {                         //Verifica se umidade é menor ou igual a umidSolo
    digitalWrite(bomba, HIGH);                       //Liga bomba
  }
  else {
    digitalWrite(bomba, LOW);                        //Desliga bomba
  }
  delay(2000);
}

E assim finalizamos todo o código do Arduíno UNO R3.

Resultado do Projeto Irrigação Automática


Esse foi o resultado obtido com nosso projeto.

Serial - Kit Irrigação

Agradecemos sua Presença


Por fim, espero que tenham gostado e aprendido. Compartilhe com seus colegas e deixe um comentário de qual projeto deveria ser o próximo aqui no Blog da WJ Componentes!!
Enfim estarei deixando o arquivo Arduíno, software e sites utilizados e deixarei os arquivos os Fritzing dos componentes.
Fique à vontade para tirar suas dúvidas nos comentários.

Software e Sites Utilizados

Software e Sites Utilizados

Post Relacionados

Posts mais Recentes

Julio Cesar Bonow Manoel

Julio Cesar Bonow Manoel

Cursando Engenharia da Computação pelo Centro Universitário Facens e atua no desenvolvimento de projetos na WJ Componentes. Participante da equipe de robótica Omegabotz.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *