Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Invernadero Inteligente PDF
Invernadero Inteligente PDF
INFORME DE PROYECTO
Facultad de Ciencias básicas e ingenierías
FINAL INTRUMENTACION I
Departamento de Matemática y Física
Invernadero inteligente
Cristian Alexis Angarita Rodriguez 1, Brayan Javier Saldarriaga Mesa 2 Jose Luis Parra Curtidor3
1
161003603 ingeniería electrónica
2
161003640 ingeniería electrónica
3
161003631 ingeniería electrónica
Facultad de Ciencias Básicas e Ingenierías.
Programa de Ingeniería Electrónica
Resumen
El presente informe presentamos el desarrollo y e implementación de un invernadero inteligente el cual fue desarrollado
como solución alternativa para la problemática presentada por los agricultores en las primeras semanas de germinación
vegetal; ya que las primeras ocho semanas de germinación resultan cruciales en el crecimiento y germinación de la planta
por ende se necesita un mayor cuidado y monitoreo de las mimas. Como solución a esta problemática se planteó la
construcción de un invernadero inteligente monitoreando y controlando las principales variables ambientales.
Como resultado se obtuvo un invernadero inteligente de bajo costo construido con arduino mega y algunos censores que
responden automáticamente a los cambios ambientales.
En conclusión el invernadero inteligente construido responde a la problemática planteada por los agricultores, considerándose
una respuesta óptima y económica.
CONTROL DE ILUMINACION
La iluminación se controla mediante el
accionamiento de mecanismo con un censor
Img1. Invernadero inteligente
M30099 instalado normalmente en el interior del
Enumeramos los principales sistemas controlados invernadero conectando sistemas de iluminación
en un invernadero inteligente: artificial instalados en el invernadero con objeto
de suministrar un mayor número de horas de
CONTROL DE TEMPERATURA iluminación que actúan sobre los fotoperiodos de
El control de la temperatura se realiza mediante las plantas provocando cambios en los estadíos
censor de temperatura DS18B20 instaladas en fisiológicos y aumentos en las producciones
una estación climática en el interior del debido al incremento en la tasa fotosintética.
hacer algo mal, en el peor de los casos puede
Arduino Mega reemplazar el Chip por unos pocos dólares y
empezar de nuevo.
El Arduino Mega 2560 es un tablero de
microcontrolador basado en
el ATmega2560 . Cuenta con 54 pines de
entrada / salida digital (de los cuales 15 se
pueden usar como salidas PWM), 16 entradas
analógicas, 4 UART (puertos serie de
hardware), un oscilador de cristal de 16 MHz,
una conexión USB, un conector de
alimentación, un cabezal ICSP, y un botón de
reinicio. Contiene todo lo necesario para
soportar el microcontrolador; simplemente
conéctelo a una computadora con un cable
USB o enciéndalo con un adaptador de CA a
CC o una batería para comenzar. El tablero
Mega 2560 es compatible con la mayoría de Img 3. Arduino UNO
los escudos diseñados para el Uno y los
tableros anteriores Duemilanove o Diecimila. Sensor de temperatura digital DS18B20.
El termómetro digital DS18B20 proporciona de 9
bits a 12 bits Mediciones de temperatura Celsius y
tiene una alarma función con superior no volátil
programable por el usuario y puntos gatillo más
bajos, se comunica a través de un Bus de 1 cable
que por definición requiere solo una línea de datos
(y tierra) para la comunicación con un
microprocesador.
16x2 LCD
Arduino UNO (Otro Tipo)
Cables y conectores
4. Conclusiones
La implementación de la placa arduino
resulta eficiente en el desarrollo de tareas
de campo ya que es accesible
Figura3. Resultado de humedad
económicamente y cumple a cabalidad las
Se analizó que para un correcto crecimiento de las tareas asignadas
plantas es necesario 6 horas de luz diarias; para Este proyecto a escala puede ser
garantizar un constate crecimiento de las mismas implementado en ámbitos laborales
se diseñó un sistema con foto celdas para agrónomos y obtener los mismos buenos
garantizar 24 horas diarias de luz. resultados.
La implementación de tecnología es
eficiente y necesaria en contextos
agrónomos, siendo este un campo carente
de estudio.
En conclusión el proyecto cumplió todos
los requisitos propuestos, dio respuesta a
la problemática planteada, y se realizó a
bajo costo; por lo tanto, se considera
exitosa su investigación.
.
5. Bibliografía.
[1] https://store.arduino.cc/usa/mega-2560-r3
[2]https://store.arduino.cc/usa/arduino-uno-
Figura4.luz entrante leds apagados rev3
[3]https://moviltronics.com.co/sensores/136-
sensor-ds18b20.html
[4]http://www.novagric.com/es/blog/articulos/q void loop(){
ue-es-un-invernadero-inteligente sensors.requestTemperatures();
[5]https://moviltronics.com.co/sensores/429- envio1=sensors.getTempCByIndex(0);
modulo-sensor-con-fotocelda.html lcd.setCursor(0, 0); // Ponte en la line 1, posicion
[6]https://www.ardobot.co/bluetoth-hc- 6
05.html?UA-57914847- lcd.print("TEMP:");
1&gclid=EAIaIQobChMI9Y28o4yB4QIVE1m lcd.setCursor(8, 0);
GCh2ROQ8bEAkYAiABEgKqVfD_BwE lcd.print(envio1);
[7]http://www.arduino.web.id/2012/03/belajar- lcd.setCursor(14, 0);
arduino-dan-lcd.html lcd.print(" C");
if(envio1<0 and envio1<10){
6. Anexos. mensaje="se hiela la planta ";
digitalWrite(chicharra, LOW);
CODIGO ARDUINO MEGA }
if(envio1<12 and envio1>10){
#include <OneWire.h> mensaje="detiene desarrollo ";
#include <DallasTemperature.h> digitalWrite(vent, LOW);
#include <LiquidCrystal.h> }
LiquidCrystal lcd(7, 8, 9, 10, 11, 12); if(envio1>18 and envio1<21){
#define DATO 6 mensaje="Desarrollo normal ";
OneWire ourWire (DATO); digitalWrite(vent, LOW);
DallasTemperature sensors(&ourWire); }
int rainPin = A0; if(envio1>21 and envio1<24){
int luz=A1; mensaje="Mejor desarrollo ";
int valorbasehumedad = 800; digitalWrite(vent, LOW);
int valorluz = 200; }
int LEDS =2 ; if(envio1>25 and envio1<30){
int vent=3; mensaje="Germ. optima ";
float envio; digitalWrite(vent, LOW);
int tempe=32; }
int entrada=0; if(envio1>31 and envio1<34){
int valorhume=0; mensaje="Temp. muy alta ";
int chicharra=4; digitalWrite(vent, HIGH);
String mensaje; delay(3000);
float envio1; }
void setup() { if(envio1>34){
Serial.begin(9600); mensaje="Se quema ";
sensors.begin(); digitalWrite(vent, HIGH);
delay(3000);
pinMode(LEDS, OUTPUT); }
digitalWrite(LEDS, LOW); lcd.setCursor(0, 1);
pinMode(chicharra, OUTPUT); lcd.print(mensaje);
digitalWrite(chicharra, LOW);
pinMode(vent, OUTPUT); if(Serial.available()){ // lee el bluetooth y
digitalWrite(vent, LOW); almacena en estado
lcd.begin(16, 2); // Fijamos el numero de entrada = Serial.read();
caracteres y filas }
// Aqi va el mensaje if (entrada==0){digitalWrite(vent, LOW);
} digitalWrite(LEDS, LOW);
digitalWrite(chicharra, LOW);}
if (entrada==1){ sensors.requestTemperatures();
digitalWrite(vent, HIGH); envio1=sensors.getTempCByIndex(0);
}
if (entrada==2){digitalWrite(LEDS, HIGH);} if(envio1<0 and envio1<10){
if (entrada==3){digitalWrite(chicharra, mensaje="se hiela la planta";
HIGH);} digitalWrite(chicharra, LOW);
}
} if(envio1<12 and envio1>10){
mensaje="detiene desarrollo";
digitalWrite(chicharra, LOW);
}
if(envio1>18 and envio1<21){
mensaje="Desarrollo normal";
CODIGO ARDUINO UNO digitalWrite(chicharra, LOW);
}
if(envio1>21 and envio1<24){
mensaje="Mejor desarrollo";
#include <OneWire.h> digitalWrite(chicharra, LOW);
#include <DallasTemperature.h> }
#define DATO 6 if(envio1>25 and envio1<30){
OneWire ourWire (DATO); mensaje="Germ. optima";
DallasTemperature sensors(&ourWire); digitalWrite(chicharra, LOW);
int rainPin = A0; }
int luz=A1; if(envio1>31 and envio1<34){
int valorbasehumedad = 800; mensaje="Temp. muy alta";
int valorluz = 200; digitalWrite(chicharra, HIGH);
int LEDS =2 ; delay(3000);
int vent=3; }
float envio; if(envio1>34){
int tempe=32; mensaje="Se quema";
int entrada=0; digitalWrite(chicharra, HIGH);
int valorhume=0; delay(3000);
int chicharra=4; }
String mensaje;
float envio1; if(Serial.available()){ // lee el bluetooth y
void setup() { almacena en estado
Serial.begin(9600); entrada = Serial.read();
sensors.begin(); }
if (entrada==0){digitalWrite(vent, LOW);
pinMode(LEDS, OUTPUT); digitalWrite(LEDS, LOW);
digitalWrite(LEDS, LOW); digitalWrite(chicharra, LOW);}
pinMode(chicharra, OUTPUT); if (entrada==1){
digitalWrite(chicharra, LOW); digitalWrite(vent, HIGH);
pinMode(vent, OUTPUT); }
digitalWrite(vent, LOW); if (entrada==2){digitalWrite(LEDS, HIGH);}
if (entrada==3){digitalWrite(chicharra,
// Aqi va el mensaje HIGH);}
}
void loop(){