Documente Academic
Documente Profesional
Documente Cultură
1. Contenido
ndice de conenidos ..............................................................................................................................1
ndice de Ilustraciones ..........................................................................................................................1
2. Descripcin del proyecto. .............................................................................................................2
3. Propuesta del proyecto. ...............................................................................................................2
I. Objetivos. .................................................................................................................................2
4. Diseo Mecnico. .........................................................................................................................2
5. Diseo elctrico. ...........................................................................................................................4
6. Diseo electrnico. .......................................................................................................................5
II. Configuracin de cada uno de los puertos y sus respectivas conexiones. ...............................6
7. Lista de piezas y materiales. .........................................................................................................6
8. Presupuesto Real a detalle con valores gastados.........................................................................7
9. Manual de Operacin y mantenimiento. .....................................................................................7
10. Manual de mantenimiento.....................................................................................................10
11. Cdigo de programacin. .......................................................................................................10
ndice de Ilustraciones
I. Objetivos.
Buscar un ahorro considerable en el riego de un sembro o planta casera mediante
el sistema de riego automatizado.
Mediante la teora y experiencia evaluada en e laboratorio de electrnica, asegurar
que la eficientica tanto energtica como mecnica, se garantiza en el sistema de
riego automatizado.
4. Diseo Mecnico.
Dentro del diseo mecnico, el sistema de riego automatizado presenta una geometra
relativamente sencilla. Los componentes principales son un soporte de madera que
anclara a una caja que contiene los circuitos responsables del funcionamiento electrnico
del sistema de riego automatizado. Adems, se utilizara un tanque de coleccin de agua
que para ejemplificar el caso tiene la cantidad de fluido necesario para poder funcionar
constantemente el sistema de riego. Para la simulacin, se adjunta una maceta que
contiene tierra.
Vista superior. (Acotada en cm)
Dentro del diseo mecnico, se consider que el agua tenga una altura considerable capaz
de que el sistema de bombeo se ejecute con mayor rapidez. La altura mxima de
almacenamiento, ser de 20 cm. Sin embargo, este sistema puede ser autoajustable e
incluso se puede aadir un sistema de mayor capacidad (cm3) e incluso de mayor altura.
La variacin de altura ser eficiente para que la bomba trabaje menos. El material
utilizado para el diseo mecnico es madera de roble. Se eligi este material por presentar
durabilidad y adems consistencia. Para la maseta, durante la presentacin del proyecto
por fines prcticos se consider adaptar una tarrina de plstico, para poder mejorar la
maleabilidad al momento de ubicar el sensor de humedad. De igual forma el tipo de
maseta que se utilice para fines prcticos puede ser variable.
5. Diseo elctrico.
El primer paso que se tom dentro del diseo electrico, fue la de construir una fuente de
voltaje de 9 v que alimentara al Arduino. La fuente de voltaje contiene un transformador
de 120 v -12 v, un puente de diodos, un capacitor de 1000 micro Faradios, un componente
LM7809, un capacitor de 0,01 micro faradios y dos borneras para la entrada y salida de
cables.
En esta vista se puede apreciar cmo van las conexiones en la baquelita, de tal manera
que el siguiente paso es imprimir en papel fotogrfico, la rplica exacta en modo espejo
para poder traspasar la tinta de la impresin lser hacia una baquelita. Despus se debe
ubicar cada uno de los componentes para su posterior soldadura.
6. Diseo electrnico.
En el diseo electrnico, se encuentran todos los circuitos que tienen una funcin
operacional en cada proceso de la informacin programada. En el siguiente esquema se
procede a identificar el sistema de conexiones para el diseo electrnico.
La pantalla tiene 4 entradas la SSA, SSL, GND Y 5V. La entrada SSA de la pantalla va
conectada a la SSA del Arduino. La entrada SSL de la pantalla va conectada a la SSL del
Arduino. Tanto las entradas de voltaje a 5v y las tierras, siempre deben ser emparejadas
entre el componente y el adruino mediante el uso de la protoboard. Despus tenemos el
sensor de humedad, el cual se encuentra conectado a su componente. La salida de 5v del
sensor debe estar conectada a la entrada de 5 v del Arduino y de igual formas las tierras
deben estar emparejadas. Adems, la entrada digital del sensor debe ir direccionada a la
entrada A0, del Arduino. Esta ltima entrada es la no analgica del arduino. Para el rel,
este debe estar conectado un cable al negativo de la bomba y el otro cable al negativo del
transformador. Por otro lado, el positivo del transformador va directo a la bomba. El rel
tiene una entrada a 5 v una entrada a tierra que va emparejado mediante la protoboard. El
ultimo pin del rel, va conectado al pin 7 del Arduino. Finalmente, para la pantalla, las
primeras 4 salidas son de filas y van conectadas a los puertos de 3 a la 6 del Arduino. La
columna 8 de la pantalla, va conectada a la entrada 2 del Arduino.
Materiales
Soporte y estructura de madera
Tubo flexible de plstico
Maceta estndar
Tanque de almacenamiento
Arduino Uno
Baquelitas
2 Capacitores
Puente de diodos
Componente LM7809
Sensor de Humedad
Bomba de Agua
Teclado Membrana
Pantalla LCD
Cables tipo MM.
Cables tipo MH.
Fuente de Voltaje de 12 V
Rel electromecnico
2 Borneras
Caso 3 : Tu
Caso 2: Sensor Caso 4: Tu planta
Caso 1: Se procede planta puede
desconectado, se encuentra
a relaizar el riego ahogarse, retira
de la planta revisa tus bien, verfica
el tapon de la
conexciones. luego
maceta.
Para el caso 1
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <Keypad.h>
LiquidCrystal_I2C LCD(0x27,20,4);
const byte Filas = 4;
const byte Cols = 1;
};
int rele = 7;
void setup() {
pinMode(7, OUTPUT);
digitalWrite(12, LOW);
Serial.begin(9600);
LCD.begin(20, 4);
LCD.backlight();
LCD.init();
inicio();
delay(50);
void inicio() {
LCD.clear();
LCD.setCursor (0,0);
LCD.print("Bienvenido a ");
LCD.setCursor (0,1);
LCD.print ("PlantPal");
LCD.setCursor(0,2);
LCD.print("vamos a ");
LCD.setCursor(0,3);
LCD.print("comenzar ");
delay(5000);
LCD.clear();
LCD.setCursor (0,0);
LCD.print("Para ");
LCD.setCursor (0,1);
LCD.print ("analizar la");
LCD.setCursor(0,2);
LCD.print("humedad presiona ");
LCD.setCursor(0,3);
LCD.print("B ");
}
void loop() {
if (key_ini2 == 'B')
{
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Vamos a medir ");
LCD.setCursor(0,1);
LCD.print("el nivel de");
LCD.setCursor(0,2);
LCD.print("humedad de la");
LCD.setCursor(0,3);
LCD.print("Planta");
delay(5000);
if(nivelhumedad >= 1000)
{
Menu_Humedad(3);
}
if(nivelhumedad < 1000 && nivelhumedad >= 600)
{
Menu_Humedad(0);
Menu_Riego();
}
inicio();
}
nivelhumedad = analogRead(A0);
Serial.println(nivelhumedad);
delay(10);
}
switch(tipo)
{
case 0:
{
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Resultado Listo");
LCD.setCursor(0,1);
LCD.print(" ");
LCD.setCursor(0,2);
LCD.print("Tu planta");
LCD.setCursor(0,3);
LCD.print("requiere riego");
delay(3000);
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Presiona A");
LCD.setCursor(0,2);
LCD.print("Para riego");
LCD.setCursor(0,3);
LCD.print("Automatico");
delay(3000);
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Presiona B");
LCD.setCursor(0,3);
LCD.print("Para riego manual");
delay(3000);
break;
}
case 1:
{
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Tu planta se");
LCD.setCursor(0,1);
LCD.print("encuentra bien");
LCD.setCursor(0,2);
LCD.print("verifica luego");
LCD.setCursor(0,3);
LCD.print("Gracias");
delay(4000);
break;
}
case 2:
{
LCD.clear();
LCD.setCursor(0,0);
LCD.print("Tu planta ");
LCD.setCursor(0,1);
LCD.print("puede ahogarse");
LCD.setCursor(0,2);
LCD.print("reira el tapon ");
LCD.setCursor(0,3);
LCD.print("de la maceta");
delay(4000);
break;
}
case 3:
{
LCD.clear();
LCD.setCursor(0,0);
LCD.print("SENSOR ");
LCD.setCursor(0,1);
LCD.print("DESCONECTADO");
LCD.setCursor(0,2);
LCD.print("REVISA ");
LCD.setCursor(0,3);
LCD.print("TUS CONECCIONES");
delay(4000);
break;
}
}
}
void Menu_Riego() {
char key_ini3 = teclado.getKey();
while(key_ini3 != '*')
{
char key_tipo = teclado.getKey();
if(key_tipo == 'A')
{
Menu_Automatico();
}
if(key_tipo == 'B')
{
Menu_Manual();
}
if(key_tipo == 'C')
{
break;
}
delay(10);
}
}
void Menu_Automatico(){
LCD.clear();
while(key_ini4 != '*')
{
nivelhumedad2 = analogRead(A0);
key_ini4 = teclado.getKey();
digitalWrite(rele, LOW);
LCD.clear();
}
LCD.setCursor(0,0);
LCD.print("Para salir");
LCD.setCursor(0,1);
LCD.print("presione A");
LCD.setCursor(0,2);
LCD.print("luego");
LCD.setCursor(0,3);
LCD.print("precione C");
if(key_ini4 == 'A')
{
break;
}
delay(10);
}
}
void Menu_Manual(){
LCD.clear();
nivelhumedad3 = analogRead(A0);
Serial.println(nivelhumedad3);
delay(250);
}
LCD.clear();
}
LCD.setCursor(0,0);
LCD.print("Para salir");
LCD.setCursor(0,1);
LCD.print("presione A");
LCD.setCursor(0,2);
LCD.print("luego");
LCD.setCursor(0,3);
LCD.print("precione C");
if(key_ini5 == 'A')
{
break;
}
delay(10);
}
}
void Menu_NORiego(){
LCD.clear();
char key_ini6 = teclado.getKey();
while(key_ini6 != 'D')
{
LCD.setCursor(0,0);
LCD.print("Presione D");
LCD.setCursor(0,1);
LCD.print("para salir");
key_ini6 = teclado.getKey();
delay(10);
}
}
void Menu_Destape(){
LCD.clear();
while(key_ini7 != '*')
{
nivelhumedad4 = analogRead(A0);
key_ini7 = teclado.getKey();
nivelhumedad4 = analogRead(A0);
Serial.println(nivelhumedad4);
delay(250);
}
LCD.clear();
}
LCD.setCursor(0,0);
LCD.print("Para salir");
LCD.setCursor(0,1);
LCD.print("presione A");
if(key_ini7 == 'A')
{
break;
}
delay(10);
}
}