Proyecto Invernadero con Arduino

Invernadero con Arduino


Integrantes:

Céspedes Monago, Piero 1631810
Alberco Capistrano, Guillermo 1420845

Objetivo:

Lograr implementar la placa arduino al cuidado y crecimiento de una planta, logrando un invernadero automatizado.

Descripción del proyecto:

El proyecto consiste en un invernadero que funciona en base a la placa arduino y a una serie de condiciones que se especifican en su codigo, las cuales funcionan en relacion a los datos que envian los sensores conectados a la placa.

Lista de componentes:

  • Arduino Mega 2560
  • Cable USB de la placa Arduino
  • Bateria de 9v
  • Sensor de humedad de suelo SKU (SEN0137)
  • Sensor de temperatura y humedad DHT22
  • Fotoresistencia (LDR)
  • Ventilador
  • Leds (azules y rojos)
  • Resistencias
  • Pistola de silicona
  • Protoboard
  • Modulo led



Diagrama de conexiones de los componentes:

Implementacion del proyecto:

Código:

#include "DHT.h"
#define DHTPIN 2   
#define DHTTYPE DHT22 

const int ventilador=4;
const int LED=3;
int HumSuelo=A1;
int RESISTENCIA = A0;
int entrada = 0;
int humS;
int temp, humedad;

DHT dht(DHTPIN, DHTTYPE);

void setup()
{
  Serial.begin(9600);
  pinMode(LED, OUTPUT);
  digitalWrite(LED, LOW);
  pinMode(ventilador,OUTPUT);
  pinMode(HumSuelo, INPUT);
  dht.begin();
  }

void loop(){
delay(500);
entrada = analogRead(RESISTENCIA);
humS = analogRead(HumSuelo);
float  humedad= dht.readHumidity();
float  temp= dht.readTemperature();
   
if (isnan(humedad) || isnan(temp)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }
    
      Serial.print("Temperatura: ");
      Serial.print(temp);
      Serial.println(" ºC"); //Tempertura: 29ºC
      Serial.print("Humedad del ambiente: ");
      Serial.print(humedad);
      Serial.println(" %");
      Serial.print("Luminosidad: ");
      Serial.print(entrada);
      Serial.println(" lx");
      Serial.print("Humedad del suelo: ");
      Serial.print(humS);
      Serial.println();
      Serial.println();
      Serial.println();
      entrada = (entrada * 255) / 1023;

      delay(500);

    while (temp>=30){
    Serial.println("Temperatura alta:");
    Serial.println("Ventiladores Encendidos");
    Serial.println();
    Serial.println();
    digitalWrite(ventilador,HIGH);
    temp= dht.readTemperature();
    delay(2000);
    }
    while (temp<=21){
    Serial.println("Temperatura baja: ");
    Serial.println("LEDs encendidos");
    Serial.println();
    Serial.println();
    digitalWrite(LED,HIGH);
    temp= dht.readTemperature();
    delay(2000);
    }
    while (humS>=1000){
    Serial.println("Humedad de suelo baja: ");
    Serial.println("Suministrando agua");
    Serial.println();
    Serial.println();
    digitalWrite(ventilador,HIGH); // cambiar por agua cuando se instale la bomba de agua
    humS = analogRead(HumSuelo);
    delay(2000);
    }
    while (humS<=250){
    Serial.println("humedad de suelo alta: ");
    Serial.println("LEDs encendidos");
    Serial.println();
    Serial.println();
    digitalWrite(LED,HIGH);
    humS = analogRead(HumSuelo);
    delay(2000);
    } 
    while (humedad>=80){
    Serial.println("Humedad de ambiente alta; ");
    Serial.println("LEDs encendidos");
    Serial.println();
    Serial.println();
    digitalWrite(LED,HIGH);
     humedad= dht.readHumidity();
    delay(2000);
    }
    while (humedad<=20){
    Serial.println("Humedad de ambiente baja: ");
    Serial.println("Suministrando agua");
    Serial.println();
    Serial.println();
    digitalWrite(LED,HIGH);
    humedad= dht.readHumidity();
    delay(2000);
    }
    analogWrite(LED, entrada);
    digitalWrite(ventilador,LOW);

}

Funcionamiento:

El funcionamiento del invernadero consiste principalmente en las condiciones del codigo y los sensores, si el sensor de humedad y temperatura detecta que hay demasiada humedad, se encendera una modulo led de potencia un poco elevada para transmitirle calor a la planta, pero si detecta que hay mucha temperatura, se encendera el ventilador. Si el sensor de humedad de suelo detecta que hay demasiada humedad, tambien encendera el modulo led para que el agua dentro de la tierra se vaya evaporando de manera lenta, pero si detecta que no hay mucha humedad, se mostrara una alerta para que se le suministre agua a la planta de forma manual.


Conclusiones:

  • Arduino es capaz de poder implementarse en cosas de nuestra vida diaria que no necesariamente sean computadoras o artefactos tecnologicos, como las plantas.
  • Una recomendacion es la de poder agregar un suministro de agua para cuando la planta no tenga suficiente humedad en la tierra, esta sea regada, esto se considero, pero no se pudo agregar a la version final del proyecto.
Referencias:

http://repositorio.utp.edu.co/dspace/bitstream/handle/11059/7436/621317P434.pdf?sequence=1

Comentarios

Entradas populares