Вы находитесь на странице: 1из 80

Resumen

El presente

informe de prcticas pre-profesionales tiene como objetivo la

implementacin de un programador de riego de tiempo real utilizando el


microcontrolador PIC16F877A,

la que se realiz con el fin de utilizar la

tecnologa que hoy en da ha avanzado mucho para automatizar el riego.


La programacin se realiz en un lenguaje de alto nivel para PICs como lo es el
COMPILADOR C CCS, la simulacin del programador de riego se realiz en el
proteus y para la implementacin de la placa impresa del programador de riego
se utiliz el Cadsoft Eagle PCB

Design Software, la cual cuenta con tres

etapas la primera es la etapa de control, la etapa de visualizacin y control


hombre mquina y la tercera etapa es la interfaz de potencia con la cual se
controla bombas o electrovlvulas de 24v DC a 220v AC.
Este informe describe y muestra imgenes de todo el proceso de
implementacin y evaluacin del programador de riego.
El programador de riego ya implementado cuenta con la opcin de poder incluir
ms dispositivos, de los que posee en los terminales del PIC16F877A para que
en los futuros trabajos se pueda hacer algunas mejoras.

CAPITULO I
GENERALIDADES

1.1 Razn Social de la Empresa o Institucin


Universidad Nacional Jorge Basadre Grohmann
1.1.1 Ubicacin
El laboratorio de Electricidad y Electrnica se encuentra ubicado en el
tercer piso del pabelln A de la facultad de ciencias en la Ciudad
Universitaria Av. Miraflores S/N.
1.1.2 Descripcin
El laboratorio de Electricidad y Electrnica tiene como propsito fomentar
la formacin acadmica de los estudiantes en la investigacin, el
desarrollo tecnolgico y difusin de las nuevas tecnologas; en base de
guas de prcticas impartidas por la Escuela de Fsica en la especialidad
de electrnica y electricidad.
El laboratorio de Electricidad y Electrnica brinda servicio inter facultativo y
propio de la misma escuela.
1.2 Organizacin de la Empresa o Institucin
Por Decreto Ley No. 1894, del 26 de agosto de 1971, fue creada la Universidad
Nacional de Tacna. En los considerados de creacin de los recursos naturales y
la promocin social y econmica de la regin sur del pas.
Inicio sus actividades acadmicas el 13 de mayo de 1972 con una Sesin
Solemne de Apertura del Ao Acadmico en el Saln de Sesiones del exPalacio Municipal, con la presencia de distinguidas personalidades civiles,
militares, eclesisticas, en el que destaca el Dr. Jorge Basadre Grohmann.
2

La Universidad Nacional Jorge Basadre Grohmann tiene la siguiente


organizacin:

Comit
Electoral

Asamblea
Universitaria

Consejo Universitario

Oficina de control
Institucional

Rectorado
VIAD

VIAC
Oficina de Asesora
Oficina de

Sec
r.
Gral

Of. de
Adm.
de
Lab. Y
gabin
etes

Of. de
comunic.
e imagen
inst.

Of. de
Econ.
y
finanz

Of. de
infraestr.

Of.
De
Pers
onal

Of.
Log
.y
ser

OBU
N

Of.
Aut.
Serv.
Acad.

Cons
. de
Coor
d.. e

Cons
. de
Ext.
de
Proy.

Facultades

Ciencias

Escuela de PosGrado
rganos
Descentralizad
os

Lab. De Electricidad
y Electrnica

1.3 Descripcin del proyecto


Se trata de un programador de riego, el cual permite activar el riego a una hora
deseada y tambin programar el tiempo de riego, ya que cuenta con un reloj de
tiempo real (ds1307) la fecha y la hora es mostrada en un visualizador como es
el LCD, el programador de riego tambin cuenta con una interfaz de potencia la
cual nos permite controlar una bomba de agua o electrovlvula de 24v DC o
220v AC.
1.4 Objetivos de la Prctica
1.4.1 Objetivo General

Implementar

un

programador

de

riego

utilizando

el

Microcontrolador PIC16F877A.
1.4.2 Objetivos Especficos

Utilizar el lenguaje de alto nivel compilador C CCS para la

programacin del Microcontrolador PIC16F877A.


Realizar el circuito esquemtico y el board del programador de

riego utilizando el CadSoft EAGLE PCB Design Software.


Implementar el programador de riego, con los materiales
encontrados en el mercado local.

1.6 Antecedentes
En la bsqueda de la eficiencia en el uso del agua. Bralts et al. (1986)
desarrollaron un programa de computo (SCS-Scheduler) para el manejo del
riego. Los datos de entrada se programaron en un datalogger. El programa
contempla estados del sistema, secciones de riego, control y encendido y

apagado de dispositivos. En el mismo sentido, Wessels et al. (1995)


desarrollaron un sistema automatico para el riego controlado por computadora.
guila (2003) desarrollo un sistema automatizado para el manejo del riego en
tiempo real. En el programa se utilizan varios algoritmos que procesan la
informacin meteorolgica, del suelo y cultivo, y resultan en diferentes
estrategias de riego. Todos estos datos se procesan por medio de un datalogger
de la compaa Campbell Scientific Inc. Que a travs de sus puertos de control.
Activa el sistema de distribucin del agua, hasta que se cubren los
requerimientos.
Castro (2008) implemento un sistema de automatizacin en tiempo real, con la
verificacin del riego por medio de las tecnologas de informacin (internet y
dispositivos mviles).
1.5 Justificacin
La implementacin del programador de riego, permite que el usuario no tenga
que realizar los trabajos manuales como abrir y cerrar la llave del agua, para
poder regar sus cultivos o jardn, ya que la implementacin de la tecnologa en
la agricultura o en los jardines domsticos, nos permite el uso eficiente del
recurso hdrico como es el agua.

CAPITULO II
MARCO TEORICO
2.1 Introduccin
Desde la implementacin del circuito integrado, el desarrollo constante de la
electrnica digital ha dado lugar a dispositivos cada vez ms complejos. Entre
ellos los microprocesadores y los microcontroladores, los cuales son bsicos en
las carreras de ingeniera electrnica.
Un microcontrolador en un computador completo, aunque de limitadas
prestaciones, que est contenido en el chip de un circuito integrado y se destina
a gobernar una sola tarea.
El

nmero

de

productos

que

funcionan

en

base

uno

varios

microcontroladores aumenta de forma exponencial.


La industria informtica acapara gran parte de los microcontroladores que se
fabrican.
Casi todos los perifricos del computador, desde el ratn o el teclado hasta la
impresora, son regulados por el programa de un microcontrolador.
Las aplicaciones de los microcontroladores son vastas, se puede decir que solo
estn limitadas por la imaginacin del usuario. Es comn encontrar
microcontroladores en campos como la robtica y el automatismo, en la
industria del entretenimiento, en las telecomunicaciones, en la instrumentacin,
en la industria automotriz, etc.
Aunque el concepto de controlador ha permanecido invariable a travs del
tiempo, su implementacin fsica ha variado frecuentemente. Hace tres
dcadas, los controladores electrnicos se construan exclusivamente con
componentes

de

lgica

discreta,

posteriormente

se

emplearon

los

microprocesadores, que se rodeaban con chips de memoria y E/S sobre una


tarjeta de circuito impreso. En la actualidad, todos los elementos del controlador
se han podido incluir en un solo circuito integrado, el cual recibe el nombre de
6

microcontrolador. Realmente consiste en un sencillo pero completo ordenador


contenido en un circuito integrado.
2.2 Microcontrolador
Un microcontrolador es un circuito integrado que en su interior contiene una
unidad central de procesamiento (CPU), unidades de memoria (RAM y ROM),
puertos de entrada y salida y perifricos. Estas partes estn interconectadas
dentro del microcontrolador, y en conjunto forman lo que se le conoce como
microcomputador.
Se puede decir con toda propiedad que un microcontrolador es una
microcomputadora completa encapsulada en un circuito integrado.
El microcontrolador es un computador dedicado a diversas aplicaciones. En su
memoria solo reside un programa destinado a gobernar una aplicacin
determinada; sus lneas de entrada/salida soportan el conexionado de los
sensores y actuadores del dispositivo a controlar, y todos los recursos
complementarios disponibles tienen como nica finalidad atender sus
requerimientos. Una vez programado y configurado el microcontrolador
solamente sirve para gobernar la tarea asignada.

Figura 1: Esquema bsico general de un microcomputador (microcontrolador),


la CPU es el microprocesador.
Fuente: Fernando E. Valds (2007).
2.3 Microcontrolador PIC 16F877A
El circuito integrado programable(PIC) 16F877A es un microcontrolador con
memoria de programa tipo FLASH, lo que representa gran facilidad en el
desarrollo de prototipos y en su aprendizaje ya que no se requiere borrarlo con
luz ultravioleta como las versiones EEPROM, sino que permite reprogramarlo
nuevamente sin ser borrado con anterioridad.
El PIC 16F877A es un microcontrolador de Microchip Technology fabricado en
tecnologa CMOS, su consumo de potencia es muy bajo y adems es
completamente esttico, esto quiere decir que el reloj puede detenerse y los
datos de la memoria no se pierden.
2.3.1 Arquitectura interna
Los microcontroladores PIC estn basados en la arquitectura Harvard
(Figura 2) que posee buses y espacios de memoria diferenciados para los
datos y las instrucciones. Gracias a ella se puede acceder de forma
simultnea e independiente a la memoria de datos y a la memoria de
instrucciones, por tanto son ms rpidos que los microcontroladores
basados en la arquitectura tradicional de Von Neuman.

Figura 2: Arquitectura Hardvard.


Fuente: Carlos A, Reyes. Microcontroladores PIC programacin en
Basic. Impr. RISPERGRAF, Ecuador.

Figura 3: diagrama de bloques del PIC16F877A


Fuente: Microchip (2003). Datasheet (Hoja tcnica) del pic16f877A
2.3.2 El encapsulado
En la figura 4 se muestra la distribucin de los pines del microcontrolador;
la descripcin de los pines del microcontrolador pic16F877A se muestra en
el anexo 1.

10

Figura 4: Distribucin de pines del PIC16F877A


Fuente: Microchip (2003). Datasheet (Hoja tcnica) del pic16f877A
2.3.3 Memoria de programa (flash)
Es una memoria de 8k de longitud con datos de 14 bits en cada posicin.
Como es de tipo flash se puede programar y borrar elctricamente, lo que
facilita el desarrollo de los programas y la experimentacin. En ella se
graba o almacena el programa o cdigos que el microcontrolador debe
ejecutar. En la figura 5 se muestra el mapa de la memoria de programa.

11

Figura 4: memoria de programa del PIC16F877A


Fuente: Microchip (2003). Datasheet (Hoja tcnica) del pic16f877A
2.4 Reloj de tiempo real (RTC) DS1307
El DS1307 es un poderoso reloj calendario en cdigo decimal binario (BCD),
cuyas caractersticas ms destacadas son las siguientes:

Reloj de tiempo real que cuenta los segundos, los minutos, las horas,
el mes, el da de la semana y el ao, con compensacin de aos

bisiestos, vlido hasta el ao 2100.


Formato de 12 horas con indicador AM/PM o de 24 horas.
Protocolo I2C.
56 bytes de RAM no voltil, para almacenamientos de datos.
Seal de onda cuadrada programable.
Circuitos internos de respaldo para la alimentacin automtico.
Bajo consumo de potencia: menor a 500nA en modo respaldo, a 25

grados Celsius.
Solo 8 pines.
12

A continuacin se muestra el diagrama de conexiones del RTC DS1307


(figura 6), sus respectivas descripciones de sus pines se pueden ver en el
anexo 2.

Figura 6: Asignacin de los pines del DS1307.


Fuente: Dallas (2003), Datasheet (Hoja tcnica) del ds1307.
2.4.1 Circuito tpico de aplicacin.
La figura 7, muestra un diagrama esquemtico de una aplicacin tpica
para este circuito. Se observan las resistencias pull-up en los pines SDA,
SCL y SQW/OUT que normalmente son de 4.7Kohm. Usa un cristal de
cuarzo estndar de 32.768HZ. La alimentacin es normalmente de 5
voltios DC y utiliza una pila de litio de 3v para el respaldo de la
alimentacin.

13

Figura 7: Circuito tpico del rtc ds1307.


Fuente: Dallas (2003), Datasheet (Hoja tcnica) del ds1307.
2.4.2 Mapa de direcciones del rtc ds1307.
En la figura 8, se presenta el mapa de direcciones para los registros del
reloj de tiempo real y la RAM del ds1307. Los registros se localizan en la
direcciones 0x00 hasta 0x07, mientras que la RAM va desde 0x08 hasta
0x3F.
El puntero de direcciones es de 6 bits, de tal manera que cuando se
realiza accesos mltiples y se alcanza la direccin 0x3F, o fin de espacio
de la RAM, el puntero regresa a 0 con el siguiente acceso.

Figura 8: Mapa de direcciones.


Fuente: Dallas (2003), Datasheet (Hoja tcnica) del ds1307.
14

2.4.3 Reloj calendario.


La informacin del tiempo y el calendario esta en formato BCD, y es
obtenida leyendo los registros apropiados los cuales se muestran en la
figura. Los bits marcados con 0 en la figura son intrascendentes para el
funcionamiento del circuito.
El bit del registro 0 es el bit CH (Clock Halt). Cuando este bit se establece
a1, el oscilador se deshabilita, deteniendo el funcionamiento del reloj.
Cuando se establece a 0, el oscilador es habilitado, y el circuito funciona
normalmente.
El RTC, puede trabajar en formato de 12 horas o de 24 horas siendo el bit
6 del registro 2 el encargado de determinar esta funcin. Cuando se
establece a 1, funciona en modo de 12 horas, y el bit es el indicador
AM/PM, siendo 1 cuando es PM. En formato 24 horas, el bit 5 de este
registro es la parte ms significativa de las decenas de horas.

Figura 9: Registros DS1307.


Fuente: Dallas (2003), Datasheet (Hoja tcnica) del ds1307.
2.5 LCD Alfa numrico 2x16.
La definicin ms clara de un LCD es: una pantalla de cristal lquido que
visualiza unos ciertos caracteres. Para poder hacer funcionar un LCD, debe de
estar conectado a un circuito impreso en el que estn integrados los
controladores del display y los pines para la conexin del display. Sobre el
15

circuito impreso se encuentra el LCD en s, rodeado por una estructura metlica


que lo protege.
En total se pueden visualizar 2 lneas de 16 caracteres cada una, es decir,
2x16=32 caracteres. A pesar de que el display slo puede visualizar 16
caracteres por lnea, puede almacenar en total 40 por lnea. Es el usuario el que
especifica qu 16 caracteres son los que se van a visualizar.
Tiene un consumo de energa de menos de 5mA y son ideales para dispositivos
que requieran una visualizacin pequea o media.

Figura 10: LCD alfanumrico 2x16.


Fuente: Archivos propios (2015)

2.5.1. Los caracteres del LCD

El LCD dispone de una matriz de 5x8 puntos para representar cada


carcter. En total se pueden representar 256 caracteres diferentes. 240
caracteres estn grabados dentro del LCD y representan las letras
16

maysculas, minsculas, signos de puntuacin, nmeros, etc... Existen 8


caracteres que pueden ser definidos por el usuario.

Figura 11: caracteres del LCD.


Fuente: Archivos Propios (2015).
2.6 Pulsadores
Es un elemento que permite el paso o interrupcin de la corriente mientras es
accionado. Cuando ya no acta sobre l vuelve a su posicin de reposo. Puede
ser el contacto normalmente cerrado (NC) en reposo, o con el contacto
normalmente abierto (NA). Representacin simblica del pulsador (Figura 12).

Figura 12: Smbolo de funcionamiento de un pulsador


Fuente: Archivos propios (2015)

17

Consta del botn pulsador; una lmina conductora que establece contacto con
los dos terminales al oprimir el botn y un muelle que hace recobrar a la lmina
su posicin primitiva al cesar la presin sobre el botn pulsador (Figura 13).

Figura 13: Pulsador


Fuente: barnasoft.com
2.7 Rel.
Es un dispositivo que consta de dos circuitos diferentes: un circuito
electromagntico (electroimn) y un circuito de contactos, el cual aplicaremos al
circuito que queremos controlar. En la figura 14 se puede ver su simbologa as
como su constitucin (rel de armadura).

Figura 14: Smbolo del rel y constitucin (rel de armadura).


Fuente: http://www.prometec.net/reles/
Su funcionamiento se basa en el fenmeno electromagntico. Cuando la
corriente atraviesa la bobina, produce un campo magntico que magnetiza un

18

ncleo de hierro dulce (ferrita). Esta atrae al inducido que fuerza a los contactos
a tocarse. Cuando la corriente se desconecta vuelven a separarse.
2.8 Led
Un led es un componente optoelectrnico pasivo y, ms concretamente, un
diodo que emite luz.
Formas de determinar la polaridad de un led de insercin (Figura 15):
La pata ms larga siempre va a ser el nodo.
En el lado del ctodo, la base del led tiene un borde plano.
Dentro del led, la plaqueta indica el nodo. Se puede reconocer por ser
ms pequea que el yunque, que indica el ctodo.

Figura 15: Polaridad de un led


Fuente: FjRamirez. (2011) Como conectar un diodo LED
Recuperado de
http://www.tuelectronica.es/tutoriales/electronica/como-conectar-undiodo-led.html

2.9 Resistencias
La resistencia elctrica es la oposicin que ofrece un material al paso de los
electrones (la corriente elctrica).
2.9.1. Resistencias Fijas

19

Son de forma cilndrica cuyo valor est determinado por unas franjas de
colores pintadas en una capsula (Figura 16). Su valor es medido en
ohmios (), tienen una tolerancia al calor producido por el esfuerzo que
realizan al oponerse a la corriente, que es medido en vatios (W).
Comercialmente se utilizan valores que varan desde 1/8w, hasta 20w.

Figura 16: Resistencias fija.


Fuente: Archivos propios (2015).
2.10 Condensadores
El condensador es otro dispositivo de los llamados componentes pasivos, que
es capaz de almacenar una cantidad determinada de electricidad y que est
formado por dos superficies conductoras, llamadas armaduras o placas y entre
ambas, un aislante llamado dielctrico, adems de dos terminales que permiten
su conexionado (Figura 17).

20

Figura 17: Composicin de un condensador


Fuente:Bueno

Antonio

(s.f.).Recuperado

de

http://www.portaleso.com/usuarios/Toni/web_electronica_3/electronic
a_indice.html
La magnitud elctrica asociada al condensador es la capacidad elctrica, que
se representa por la letra "C" y cuya unidad fundamental es el Faradio (F). No
obstante en la prctica, se utilizan sus submltiplos como son el picofaradio
(pF), el nanofaradio (nF) y el microfaradio (F).Existen dos tipos de
capacitores, los cuales se utilizan en electrnica estos son los cermicos y
electrolticos, como se muestra en la siguiente figura (Figura 18).

Figura 18: Tipos de condensadores


Fuente: Bueno Antonio (s.f.) Recuperado de
http://www.portaleso.com/usuarios/Toni/web_electronica_3/electronic
a_indice.html

21

2.11 El compilador C CCS.


El compilador C de CCS ha sido desarrollado especficamente para PIC MCU,
obteniendo la mxima optimizacin del compilador con estos dispositivos.
Dispone de una amplia librera de funciones predefinidas, comandos de
procesado y ejemplos. Adems suministra los controladores (drivers) para
diversos dispositivos como LCD, convertidores AD, relojes en tiempo real,
EEPROM serie, etc.
Un compilador convierte el lenguaje de alto nivel a instrucciones en cdigo
maquina; un cross-compiler es un compilador que funciona en un procesador
(normalmente en un PC) diferente al procesador objeto. El compilador CCS C
es un cross-compiler. Los programas son editados y compilados a instrucciones
maquina en el entorno de trabajo del PC, el cdigo maquina puede ser cargado
del PC al sistema PIC mediante el ICD2 (o cualquier programador).
El CCS C es C estndar y , adems de las directivas estndar (#include, etc),
suministra unas directivas especficas para el PIC (#devise, etc); adems
incluye funciones especficas (bit_set(),etc.). Se suministra con un editor que
permite controlar la sintaxis del programa.
2.11.1 Estructura de un Programa.
Para escribir un programa en C con el CCS se debe tener en cuenta una
serie de elementos bsicos de su estructura (figura 19).
DIRECTIVAS DE PROCESADO: controla la conversin del

programa a cdigo maquina por parte del compilador.


PROGRAMAS O FUNCIONES: conjunto de instrucciones.
Puede haber uno o varios; en cualquier caso siempre debe
haber uno definido como principal mediante la inclusin de la

llamada main().
INSTRUCCIONES: indican cmo debe comportar el PIC en

todo momento.
COMENTARIOS: permite describir lo que significa cada lnea
del programa.

22

Figura 19: estructura bsica de un programa.


Fuente: Archivos propios (2015).
2.11.2 Tipos de Datos
El compilador ccs acepta solo los siguientes tipos de datos.
Tabla 1:
Tipos de datos que acepta el compilador c ccs.
Tipo
Int1
Short
Int
Int8
Int16
Long
Int32

Tamao
1 bit

Rango
0a1

Descripcin
Entero de un bit

8 bit

0 a 255

Entero

16 bit

0 a 65.535

Entero de 16 bit

32 bit

Entero de 32 bit

Float

32 bit

0a
4.294.967.295
+

a
38
1.75 x 10

Como flotante

+

38
3.402 x 10
Char
Void
Signed
int8
Signed
int16
Signed
int32

8 bit
8 bit

0 a 255
-128 a +127

Carcter
Sin valor
Entero con signo

16 bit

-32768 a
+32767
31
2
a

Entero largo con


signo
Entero de 32 bit
con signo

32 bit

23

2
+( 311)

Fuente: manual ccs c compiler (2015)


2.11.3 Las constantes
Las constantes se pueden especificar en decimal, octal, hexadecimal o
binario.
Tabla 2:
Constantes admitidas por el compilador.
Constantes
123
Decimal
0123
Octal (0)
0x123
Hexadecimal (0x)
0b010010
Binario (0b)
x
Carcter
\010
Carcter octal
\xA5
Carcter
hexadecimal
Fuente: manual ccs c compiler(2015)
Adems, se pueden definir constantes con sufijo:
Tabla 3:
Constantes con sufijos.
Constantes
Int8

127Ul

Long

80UL

Signed INT16

80L

Float

3.14F

Char

Con comillas
simples c
Fuente: manual ccs c compiler(2015)
Tabla 4:
Caracteres especiales.
24

Caracteres Especiales
\n

Cambio de lnea

\r

Retorno de carro

\t

Tabulacin

\b

backspace

Fuente: manual ccs c compiler(2015)


2.11.4 Variables
Las variables se utilizan para mostrar posiciones de memoria RAM; se
deben declarar obligatoriamente, antes de utilizarlas; para ello se debe
indicar el nombre y el tipo de dato que se utilizara. Se define de la
siguiente forma:
TIPO NEMBRE_VARIABLE (=VALOR)
TIIPO hace referencia a cualquiera de los tipos de datos vistos
anteriormente (tabla 1), el NEMBRE_VARIABLE puede ser cualquira y el
VALOR es opcional.
Ejemplos
Int8 num=10;
Float x=5;
Las variables en un programa pueden ser LOCAL o GLOBAL. Las
variables locales solo se utilizan en la funcin donde se encuentran
declaradas; las variables globales se pueden utilizar en todas las
funciones que pudiera tener el programa. Ambas deben declararse antes
de ser utilizadas y las globales deben ser declaradas antes de cualquier
funcin y fuera de ellas.
#include<16F877A>
#use delay (4000000)
Int16 cont;
//variable global
Int8 year;
//variable global
Void main ()
{
Int day;
//variable local
}
Void FUNCION ()
{
Char z, conts=F //variables locales
}
2.11.5 Funciones
25

Las funciones son bloques de sentencias; todas las sentencias se deben


enmarcar dentro de las funciones. Al igual que las variables, las funciones
deben definirse antes de ser utilizados.
Una funcin puede ser invocada desde una sentencia que la ha llamado.
El tipo de dato se indica en la definicin de la funcin; en el caso de no
indicarse se entiende que es int8 y en el caso de no devolver un valor se
debe especificar el valor VOID. La funcin, adems de devolver un valor,
puede recibir parmetros o argumentos.
La estructura de una funcin es:
Tipo_dato nombre_funcion (tipo param1, param2,)
{
(Sentencias);
}
Tambin las funciones pueden agruparse en ficheros de libreras
<fichero.h>,

que

se

pueden

utilizar

mediante

la

directiva

#include<fichero.h>.
2.11.6 Declaraciones de control
Las declaraciones son usadas para controlar el proceso de ejecucin del
programa. Las que admite el CCS son:
Sentencia if
Se ejecuta una sentencia o bloque de cdigo si la expresin
que acompaa al if tiene un valor distinto a cero (verdadero).
Si es cero (falso) continua sin ejecutar la sentencia o bloque
de sentencias.
If (expresion)
Sentencia;
If (expresion)
{
Sentencia 1;
Sentencia2;

}
Sentencia if-else
Se evala una expresin y, si es cierta, se ejecuta el primer
bloque de cdigo (o sentencia 1). Si es falsa, se ejecuta el
segundo bloque de cdigo (o sentencia 2).
If(expresin)
{
26

Sentencia 1;
}Else
Sentencia 2;
Sentencia switch
Substituye a if-else cuando realiza una eleccin mltiple que
compara una expresin con una lista de constantes enteras o
caracteres. Cuando se da una coincidencia, el bloque de
sentencias asociadas a esa constante se ejecuta hasta que
aparezca break.
Switch (expresin)
{
Case constante 1:
Bloque 1 de sentencias;
Break;
Case constante 2:
Bloque 2de sentencias;
Break;

Default:
Bloque n de sentencias;
}
Sentencia de bucle for
Se emplea para repetir una sentencia o bloque de sentencias.
For (variable=valor inicial; condicin; incremento)
{
Sentencia (s);
}
La condicin se evala antes de ejecutar la sentencia. Si es
cierta, se ejecuta el bucle. Si no, se sale del mismo.
El incremento establece como cambia la variable de control
cada vez que se repite el bucle.
Es posible anidar bucles for para modificar dos o ms variables
de control.
Sentencia de bucle while
La sentencia se lleva a cabo mientras sea cierta una
expresin.
While (expresin)
{
27

Sentencia (s);
}
La expresin se evala antes de cualquier iteracin. Si es
falsa, ya no se ejecuta la sentencia o bloque de sentencias.
Sentencia de bucle do-while
Do
{
Sentencia (s);
} while (expresin);
Las sentencias se ejecutan antes de que se evalu la
expresin, por lo que el bucle se ejecuta siempre al menos una
vez.

CAPITULO III
MARCO METODOLGICO
3.1 Materiales e instrumentos
Para realizar la implementacin de este proyecto se necesit una serie de
componentes y accesorios, los cual se describen a continuacin.
3.1.1

Etapa de control

Para la etapa de control del programador de riego se utilizaron los


siguientes componentes electrnicos.

01 Microcontrolador PIC16f877A
01 RTC (real time clock) DS1307.
01 ULN2003A.
01 regulador de L7805CV
01 pila de 3.2V
06 resistencias 10K.
28

10 resistencias 330
01 jack.
3.1.2 Etapa de visualizacin
La parte de visualizacin es de suma importancia por lo que es necesario
utilizar los componentes que se detallan a continuacin.
01 Modulo LCD 2x16.
05 pulsadores NA
04 resistencias 10K.
3.1.3 Interfaz de potencia
Para esta etapa es conveniente utilizar los siguientes componentes:

06 relays de 12V.
06 leds.
14 borneras
06 resistencias 330.

3.1.4 Instrumentos y herramientas


Para la implementacin del programador de Riego es necesario disponer
de un conjunto elemental de herramientas y/o instrumentos que se
detallan a continuacin.
Multitster
1 soldador
Estao
Alicates de corte
Tijeras
Taladro

3.1.5 Otros accesorios


Para completar su montaje, se necesitan una serie de accesorios que
permiten su correcto acabado.
29

1 fuente 12VDC
1 placa profesional de fibra de vidrio de una sola cara
1 pliego de papel couche
1 Litro de percloruro frrico
1 recipiente rectangular
1 plancha

3.2 Metodologa.
La metodologa para la implementacin del proyecto propuesto se muestra en la
figura 20.

30

Figura 20: Metodologa para el desarrollo del proyecto.


Fuente: Elaboracin propia (2015).

31

CAPITULO IV
PROCEDIMIENTO
4.1 Seleccin del Hardware.
El hardware a elegir es el microcontrolador PIC16F877A de la empresa
MICROCHIP, este es un dispositivo electrnico que tiene todas las
caractersticas de una computadora y ser de mucha utilidad en la toma de
decisiones.
Para que el programador sea de tiempo real se ha decidido utilizar el RTC (real
time clock) DS1307.

4.2 Seleccin del Software


El cdigo se desarrollara en un lenguaje de alto nivel como lo es el C, y el
software que nos permite compilar a cdigo hexadecimal para luego grabarlo en
el pic es el COMPILADOR C CCS.

Figura 21: Icono del compilador c ccs donde escribiremos el


programa.
Fuente:
Pascual
G.
(2013)
recuperado
de
http://comoprogramrpic.blogspot.com/2011/12/clase1-tiposde-lenguajes-de.html
El software que permite grabar el cogido generado en hexadecimal hacia el pic
es el PICkit2 en la figura 22 se muestra el icono.
32

Figura 22: icono del PICkit 2, con lo que se grabara el cdigo


hexadecimal al pic
Fuente: www.robohobby.com

El software en el que se va realizar la simulacin del programador de riego es el


PROTEUS en la figura 23 se muestra el icono del proteus y para el diseo del
circuito esquemtico y las pistas para el serigrafiado en una placa de cobre es
el Cadsoft EAGLE PCB Design software el icono se muestra en la figura 24.

Figura 23:
electrnicos.

Icono

del

proteus,

simulador

de

circuitos

Fuente:
Pascual
G.
(2013)
recuperado
de
http://comoprogramrpic.blogspot.com/2011/12/clase1-tipos-delenguajes-de.html

33

Figura 24: Icono de Eagle con el que se realizara el circuito


esquemtico y el board.
Fuente: www.cadsoft.de
4.3 Visualizacin del reloj en el LCD
Para la visualizacin del reloj en el LCD primeramente configuramos los puertos
del PIC.
Los pasos para configurar y visualizar en el LCD se describen en el diagrama
de flujo figura 25.

Figura 25: Diagrama de flujo para visualizar el reloj en el LCD.


Fuente: Elaboracin propia (2015).
34

Definir el puerto del pic para conectar al bus de datos del LCD
Se ha configurado el puerto D del pic para la conexin al bus de datos
del LCD.

Figura 26: Descripcin de los pines del LCD.


Fuente: Archivos propios (2015).
La sentencia #define use_portd_lcd TRUE se encarga de configurar
los pines del puerto D.
La conexin del PIC y LCD es a travs del puerto d, tal como muestra
la figura 27.

35

Figura 27: conexin del LCD al PIC.


Fuente: Archivos propios (2015).

Incluir librera LCD.C


Luego de haber configurado el puerto del PIC para la comunicacin
con el LCD se debe incluir la librera LCD.C.
Inicializar LCD
Luego de haber incluido la librera se puede inicializar el LCD para ello
se us la funcin lcd_init (), que se encarga de configurar en formato
de 4 bits con caracteres de 5x8 puntos, y cursor con parpadeo en
modo encendido.
Visualizar el reloj

36

Habiendo inicializado el LCD se procedi a visualizar el reloj utilizando


la funcin printf(lcd_putc,"%02d:%02d:%02d",hrs, min, sec).

4.4 Desarrollo del diagrama de flujo del programador de riego

Para la implementacin del programador de riego se realiz el diagrama de


flujo, la cual ser la gua para realizar el cdigo, en la figura 28 se muestra el
diagrama de flujo principal, lo cual al realizar la codificacin ser el programa
principal y las variables se declaran de forma global.

Los diagramas de flujos que se muestran en la figura 29 y 30 son parte del


diagrama de flujo principal, estos diagramas en la codificacin sern los
subprogramas y las variables se declaran de forma local.

37

38

39

Figura 28: Diagrama de flujo principal para la codificacin del programador.


Fuente: Archivos propios (2015).
40

Figura 29: Diagrama de flujo para configurar el reloj.


Fuente: Archivos propios (2015).
41

El diagrama de flujo que se muestra en la figura 30; es para realizar el cdigo


de programacin de la hora de inicio de riego y el tiempo de riego.

Figura 30: Diagrama de flujo para programar hora y tiempo de riego.


Fuente: Archivos propios (2015).
42

4.4.1 Programacin y compilacin del cdigo desarrollado con el


COMPILADOR C CCS
Luego de haber realizado el diagrama de flujo, se procedi a realizar el
algoritmo de cdigo, en la figura 31 se ilustra el cdigo realizado en el
compilador c ccs.

Figura 31: Cdigo desarrollado en el COMPILADOR C CCS.


Fuente: Archivos propios (2015).

En la figura 32 se puede apreciar la compilacin del cdigo que se realiz


en el compilador C CCS la cual no tuvo errores, lo cual indica que el
diagrama de flujo que se realiz esta bien elaborada.

43

Figura 31: Compilacin del cdigo con xito.


Fuente: Archivos propios (2015).

4.4.2 Esquema y simulacin en el PROTEUS

En la figura 33 se ilustra el esquema electrnico a desarrollarse para la


simulacin e implementacin del programador de riego.

44

Figura 33: Esquema electrnico del programador de riego.


Fuente: Archivos propios (2015).
45

Una vez realizado el cdigo y el esquema electrnico del programador de


riego se procedi a realizar la simulacin del programador de riego, la
figura 34 muestra el inicio de simulacin lo cual se realiz en el
PROTEUS.

Figura 34: Inicio dela simulacin del programador de riego.


Fuente: Archivos propios (2015).

Como se puede apreciar en la figura 35 la simulacin del programador de


riego se realiz de forma exitosa, en la cual se puede observar la fecha y
hora mediante el visualizador (LCD).

46

Figura 35: Simulacin realizada con xito.


Fuente: Archivos propios (2015).
Configuracin del reloj
Los pulsadores son los encargados de interactuar con el usuario para
realizar el control del programador de riego.
Mediante los pulsadores se realiz la configuracin del reloj en la
simulacin que se realiz, el pulsador (CFIG/SAVE) es el encargado
de guardar la configuracin, tal como se muestra en la figura 36.

47

Figura 36: Configuracin de reloj.


Fuente: Archivos propios (2015).
Programacin de riego
Utilizando los pulsadores se procedi a realizar la programacin de la
hora de inicio de riego as como el tiempo de duracin del riego,
mediante el pulsador (CFIG/SAVE) se guard la programacin de
riego tal como se ilustra en la figura 37.
Para realizar una nueva programacin de riego, se utiliza el pulsador
(PRG/SGTE).

48

Figura 37: Programacin de riego.


Fuente: Archivos propios (2015).
Simulacin de riego
En la figura 38 se muestra la simulacin de riego, ya que la hora de
inicio del riego se program a las 10:40, el led encendido indica que se
est realizando el riego, en el lcd se puede apreciar el mensaje de
regando y el tiempo de riego transcurrido desde que se ha inicio del
riego.

49

Figura 38: Simulacin de riego.


Fuente: Archivos propios (2015).
Como se puede apreciar la simulacin en el proteus es de mucha ayuda
para poder descartar posibles errores en el diseo del cdigo.
Por lo observado en la simulacin podemos decir que el cdigo est bien
elaborado.
4.4.3 Implementacin del programador de riego en el protoboard
Despus de realizar la simulacin se procedi a implementar el
programador de riego en el protoboard para cerciorarse que la
simulacin se realiz satisfactoriamente.
La implementacin del programador de riego en el protoboard se realiz
con xito tal como se muestra en la figura 39, lo cual comprueba que la
simulacin fue exitosa; luego de comprobar mediante la simulacin e
implementacin en el protoboard que el esquema electrnico y el cdigo
50

elaborado no presenta errores, se procedio a realizar la placa impresa


para ello se utiliz el Cadsoft EAGLE PCB design Software.

Figura 39: Implementacin del programador de riego en el protoboard.


Fuente: Archivos propios (2015).

4.5 Diseo de un modelo de PCB usando el CadSoft EAGLE PCB Design


Software
Para este diseo de PCB (circuito de placa impresa) se adopt el CadSoft
EAGLE PCB Design Software, del cual se utilizaron los dos editores.
La interfaz de usuario es idntica para todas las partes del programa.
El Schematics: Es un editor de esquemas independiente puede ser
utilizado para dibujar los diagramas de cableado.
El Board: Permite volver la anotacin esquemtica y enrutamiento
automtico o manual para conectar las pistas sobre la base de las
conexiones de los componentes definidos en el schematics.

51

4.5.1 Inicio de Proyecto


Para iniciar un nuevo proyecto del PCB:

Figura 36: Control panel e inicio de nuevo proyecto en el


software Eagle
Fuente: Archivos Propios (2015)
4.5.2 Ubicacin de los componentes
Como se observa la tabla 5 siguiente, la primera columna del lado
izquierdo se muestra los diferentes smbolos, denominado barra de
comandos; y en el lado derecho sus respectivas funciones los cuales se
detallan a continuacin.
Tabla 5
La barra de comandos del Editor de Esquema
Smbolos
Info:

Muestra

las

Funcin
propiedades

del

objeto

seleccionado.
Display: Selecciona y anula la seleccin de la capas
que se mostrarn.
Previamente seleccionado para la visualizacin.
Move: Mueve cualquier objeto visible.
Copy: Copia piezas y otros objetos.
52

Rotate: Gira objetos en 90 grados (tambin posible


con MOVE)
Group: Define un grupo que luego se puede mover,
girar.
Change: Cambia las propiedades de un objeto, por
ejemplo, la anchura de una lnea, el paquete
variante o el tamao del texto.
Cut: La transferencia de los objetos de un grupo
previamente definido en el bfer de pegado.
Delete: Eliminar los objetos visibles.
Add: Agrega elementos de la biblioteca para el
esquema. Una funcin de bsqueda ayuda a los
dispositivos sean encontrado rpidamente.
Replace: Reemplaza un componente (Device) con
otro similar de la biblioteca.
Slo funciona si el nuevo componente tiene por lo
menos tantos pines como la actual.
Name: Da nombres a los componentes, redes, o los
autobuses.
Value: Proporciona valores a los componentes.
Split: Inserta un ngulo en un alambre o malla.
Text: Colocacin de texto.
Polygon: Dibuja un polgono (reas de cobre en
cualquier forma).
Fuente:

Tutoriales

de

EAGLE

(s.f.).

Recuperado

de

http://www.cadsoftusa.com/training/tutorials/?language=en
Para poder situar los nuevos componentes se utiliz la opcin ADD del
cual se desplegar una pequea ventana con todas las libreras y los
componentes que se dispone. De esta forma se procedi para todos los
componentes que se necesit, dndoles posteriormente los valores
deseados con Valu.
4.5.3 Conexin de componentes
53

Para poder realizar la conexin entre los componentes, se utiliza la opcin


wire de la barra de comandos.

Figura 41: Conexin de componentes.


Fuente: Archivos Propios (2015).
4.5.4 De Schematic a Board
Una vez terminado el proyecto en Schematic, se pas a crear la placa del
circuito impreso con el comando

Board, ubicado en la barra de

herramientas.

Figura 42: De Schematic a Board


Fuente: Archivos Propios (2015).

54

Aparecer la ventana del diseo de la placa con los componentes fuera de


ella.
Las lneas que unen los componentes corresponden a las uniones que se
realizaron con los hilos en el Schematic, lo que ayudara a la hora de
dibujar las pistas de la placa.

Figura 43: Diseo de la placa con los componentes fuera de ella.


Fuente: Archivos Propios (2015).
Con el comando Move, coloco los componentes dentro de la placa.

Figura 44: Ubicacin del comando Move del panel de control


Fuente: Archivos Propios (2015).
55

La distancia entre componentes y por donde irn luego las pistas se puede
adaptar en la rejilla de diseo.

Figura 45: Grid este icono ajustar el tamao de red


Fuente: Archivos Propios (2015)
4.5.5 Routeo de la placa
Con los componentes correctamente ubicados dentro del cuadro, se
procedi a enroutarlos. Existen dos formas con el botn Auto y se
enroutar automticamente y la otra opcin, hacerlo manualmente, lo
cual fue utilizado para este proyecto por ser ms eficiente en el trazado de
las pistas y en el espacio utilizado, para ello se opt con el botn de
Routear en cada extremo de los componentes. Si la lnea es azul se
encontrar en la cara inferior.

56

Figura 46: Ubicacin del comando Route del panel de


control.
Fuente: Archivos Propios (2015)
Para determinar las opciones de trazado, se eligi la cara inferior (Bottom)
y un grueso de pista de 0.032 pulgadas, para tierra de 0.04 y un mnimo
de trazo en medio de los pines de un mismo componente de 0.024, con un
ngulo de 45, como se muestra a continuacin.

Figura 47: Trazado de las pistas.


Fuente: Archivos Propios (2015).
Para observar mejor el trazo de las pistas, se recurri a las capas,
activarlas o desactivarlas, que van de acuerdo al inters mostrado.

57

Figura 48: Seleccin de capas por el comando display.


Fuente: Archivos Propios (2015).
Las capas que se utilizaron para la impresin se muestra en la tabla 6.
Tabla 6
Seleccin de capas para imprimir
Capa Nombre

Descripcin

Top

Pistas cara componentes

16

Bottom

Pistas para soldaduras

21

tplace

Serigrafa de componentes

22

Bplace

Serigrafa de soldadura

39

tKeepout

Zona sin pistas de soldadura

40

bKeepout Zona restringida de componentes

41

tRestrict

Zona restringida de componentes


58

42

bRestrict

Zona restringida de soldadura

43

vRestrict

Zona restringida de vas

Fuente:

Tutoriales

de

EAGLE

(s.f.).

Recuperado

de

http://www.cadsoftusa.com/training/tutorials/?language=en
Se desactiv las capas 21, 22, 39, 40, 41, 42, y 43 para
ver solo el trazado de las pistas.
Los diseos del circuito esquemtico y las pistas para la serigrafa de la
placa impresa del programador de riego se muestran en los anexos (ver
pgina 75-78).
4.6 Serigrafa de la placa
Una vez terminado el diseo del Programador de riego en CadSoft
Eagle PCB Design Sofware, se pas a su impresin, en papel couche
de 300gr.
Para la implementacin del proyecto se utiliz tres placas de fibra de
vidrio de 7.5x12.5 cm de longitud.
Se lijo en forma circular la superficie del cobre con una lija de agua,
para poder eliminar los restos de suciedad de la zona y pueda
impregnarse el tner.
Luego se procedi a lavarla con abundante agua y detergente, evitando
las huellas digitales.
Se recort el diseo de la impresin al tamao de la placa hacindole
agujeros en las superficies libres del esquema, se coloc el lado del
tner sobre la parte del cobre de la placa.
Se calent la

plancha a temperatura media luego se aplic con

suficiente presin sobre el papel alrededor de 3 minutos, para fundir el


tner y adherirlo al cobre.
59

Al terminar, se alisto una fuente con agua tibia y se introdujo la placa,


con el fin de humedecer el papel, para que el tner se despegue, todo
esto alrededor de media hora. Una vez bien remojado el papel, se
procedi a retirarlo con los dedos, capa por capa.
Se repas con marcador indeleble de color negro las pistas necesarias.
Luego se introdujo en una fuente con percloruro frrico.
4.7 Implementacin de la placa
Una vez lista la placa, se aplic una capa de aerosol de esmalte
transparente sobre su superficie para evitar la oxidacin del cobre.
Para realizar los orificios de los pads de los diferentes componentes a
utilizar, se emple un taladro manual, con brocas de 1/16 - 1/32 - 1/64,
de acuerdo al tamao de los dispositivos.
Para introducirlos fcilmente los componentes, se ubic correctamente
la zona donde deban ir de acuerdo al diseo original del proyecto, en
la parte superior de la placa, se dobl los terminales a 90 con un
alicate. Quedando as los terminales por el lado impreso.
Se procedi a soldarlos, para esto se calent previamente la punta del
soldador sobre la pista, luego de aadi estao por debajo de este,
logrando as su acabado.
Enseguida de acabado este paso, con la ayuda de un alicate cortamos
a 1 2mm de la soldadura los terminales restantes.
Al finalizar, se limpi los residuos y se procedi a verificar las
soldaduras para su prueba de funcionamiento.

60

Figura 49: Placa impresa de la etapa de control.


Fuente: Archivos Propios (2015).

Figura 50: Placa impresa de la etapa de visualizacin.


Fuente: Archivos Propios (2015).
CAPITULO V
RESULTADOS Y DISCUSIONES
5.1 RESULTADOS
61

5.1.1

Vista final del proyecto


En la figura 51 se muestra la placa de control la cual contiene al
microcontrolador PIC16F877A, al RTC DS1307 y al driver de
potencia (ULN2003A); la placa de visualizacin conformada por
una pantalla LCD 2x16, un pulsador de reset y cuatro pulsadores
los cuales nos permite la configuracin y programacin.

Figura 51: Vista final del programador de riego.


Fuente: Archivos Propios (2015).

En la figura 52 se muestra la placa de la interfaz de potencia que


est conformada por 6 rels, leds indicadores y borneras

62

Figura 52.: Interfaz de potencia del programador de riego.


Fuente: Archivos Propios (2015).
5.1.2

Evaluacin del programador de riego

Por ltimo, se procedi con las pruebas de funcionamiento del


programador de riego para verificar su correcto funcionamiento

La fuente de alimentacin
El programador de riego es alimentado con una tensin de 5v dc y
la interfaz de potencia con 12v dc

Pruebas del programador de riego


En la figura 53 se aprecia el programador de riego funcionado
correctamente, para la configuracin del reloj y programacin de
riego se utilizan los pulsadores, en la tabla 9 se muestra la
descripcin de los mismos.
Con la cual el usuario podara interactuar con el programador de
riego.

63

Figura 53: Programador de riego funcionando.


Fuente: Archivos Propios (2015).
Tabla 7:
Descripcin de los pulsadores para la configuracin y
programacin.
pulsador

Descripcin
Permite ingresar al modo configuracin de reloj,

tambin

con

este

pulsador se

guarda

la

configuracin y programacin de riego.


2

Realiza el incremento
Con este pulsador podemos avanzar un espacio
para poder realizar la configuracin.

Tambin permite ingresar al modo programacin


de riego

Detiene el proceso de riego (stop)

Pulsador de RESET

Fuente: Archivos Propios (2015).


64

Configuracin del reloj


En la figura 54 se muestra la configuracin del reloj, para realizar
la configuracin se presion el pulsador 1 la pantalla mostrara un
cursor parpadeante, con el pulsador 2 se incrementa y con el
pulsador 3 se realiza el cambio de posicin del cursor
parpadeante, una vez realizada la configuracin del reloj se
presiona el pulsador 1 para guardarla.

Figura 54: Configuracin de reloj.


Fuente: Archivos Propios (2015).

Programacin de riego
En la figura 55 se muestra la programacin de riego para ingresar
a este modo se presiona el pulsador 3, con el pulsador 2 se realiza
el incremento, el cambio de posicin del cursor se realiza
presionando el pulsador 3 y para guardar la configuracin se
presiona el pulsador 1.
En la cual se programa la hora en que va iniciar el riego y el
tiempo de riego; en la figura 55 se aprecia la configuracin de la
hora de riego doce horas en punto y del tiempo de riego de diez
65

minutos; el tiempo mnimo admitido por el programador de riego


es de un minuto y el tiempo mximo es de 24 horas.

Figura 55: Programacin de reloj.


Fuente: Archivos Propios (2015).
Activacin de la interfaz de potencia.
En la figura 56 se puede apreciar que la interfaz de potencia se
activa (led encendido), ya que la hora de inicio de riego se
program para las doce horas en punto y en el LCD muestra el
mensaje de REGANDO.
Al activarse la interfaz de potencia, mediante los rels se puede
controlar bombas de aguas o electrovlvulas de 24vdc a 220v
AC, para un sistema de riego.

66

Figura 56: Activacin de la interfaz de potencia.


Fuente: Archivos Propios (2015).
5.1.3 Esquema de operacin bsica del programador de riego
La figura 57 muestra la operacin bsica que realiza el programador de
riego que se implement, la vlvula se activa cuando recibe electricidad
del programador, esto se dar cuando la hora de riego programada sea
igual a la del reloj, la cual ser controlada por la interfaz de potencia, con
los que se activan los aspersores conectados a ella iniciando el riego.

67

Figura 57: Esquema de operacin bsica del programador de riego.


Fuente: www.rainbird.com.
En la figura 58 se aprecia la instalacin del sistema de riego por
aspersin la cual ser controlada por el programador de riego que se
implement.

Figura 58: Instalacin del sistema de riego por aspersin.


Fuente: Archivos propios (2015).
68

El sistema de riego que se instal cuenta con un micro aspersor, una


bomba de agua y el recipiente donde est contenida el agua tal como
se ilustra en la figura 59.

Microaspersor

Recipiente de
agua

Bomba de
agua

Figura 59: componentes del sistema de riego.


Fuente: Archivos propios (2015).
En la figura 60 se puede apreciar que el programador de riego controla
el sistema de riego.

Figura 60: componentes del sistema de riego.


Fuente: Archivos propios (2015).

69

5.2 DISCUSION

La implementacin de este programador de riego, tiene por finalidad


la prctica y la comprensin de la electrnica.

Para verificar el funcionamiento del programador de riego, se


realizaron las pruebas mencionadas en el presente.
El programador de riego se diferencias de los programadores
de riego de marcas registradas, porque los componentes
utilizados en este programador se pueden encontrar en el
mercado local, lo cual lo hace ms econmico.
El reloj del programador de riego est configurado en formato
de 24 horas.
La configuracin del reloj se realiza una sola vez, si se corta la
alimentacin al programador , el RTC DS1307 sigue operando
ya que cuenta con una pila de respaldo de 3.2v, por lo tanto al
contar nuevamente con alimentacin el programador, el reloj
no se modifica.
Una de las limitaciones que presenta el programador de riego
es que solamente est configurado para una sola salida.
El programador de riego no es resistente a la intemperie ni al
agua.

CAPITULO VII
CONCLUSIONES Y RECOMENDACIONES

70

6.1 CONCLUSIONES

Se logr la

PIC16F877A.
La programacin del microcontrolador se realiz en lenguaje C, el cual

implementacin del programador de riego utilizando el

fue elegido por su facilidad en el manejo de las funciones y mdulos del

microcontrolador.
Se realiz la simulacin del programador de riego en el proteus para

descartar posibles errores de programacin.


Se implement las placas impresas del programador de riego utilizando

el CadSoft EAGLE PCB Design Software.


El riego por goteo o aspersin, controlada elctricamente permite
mejorar el mantenimiento de jardines, plantas y cultivos. Se logra el
beneficio de ahorro de agua. Adems el ahorro de tiempo en el regado
diario y econmico.

6.2 RECOMENDACIONES

Para futuros trabajos una posible mejora seria que el programador de


riego tenga una comunicacin serial con una computadora utilizando el

protocolo RS232 para el monitoreo del riego.


La tensin requerir por el programador no debe sobrepasar los 12v

DC.
Seguir las normas de seguridad del laboratorio de electrnica en el
momento de implementar algn proyecto.
CAPITULO VIII
REFERENCIAS

7.1 Bibliogrficas
Carlos A, Reyes. 2008, Microcontroladores PIC programacin en

Basic, 3ra. ED, Ecuador impr: RISPERGRAF.


Fernando E. Valds. 2007, Microcontroladores: Fundamentos y
aplicaciones con pic, Mxico D.F: Alfaomega.
71

Garca Breijo Eduardo. 2008, Compilador C CCS y Simulador Proteus

para Microcontroladores PIC, 1ra. Ed, Mxico D.F.:Alfaomega.


Manual C CCS compiler (2015)
Palacios, Enrique M. 2006, microcontroladores PIC16F84 desarrollo
de proyectos, 2da. Ed, Mxico.

7.2 Electrnicas

Bueno

Antonio

(s.f.)

Unidad

didctica:

Electrnica

Recuperado

Bsica"
de

http://www.portaleso.com/usuarios/Toni/web_electronica_3/electronica

_indice.html
Datasheet

http://www.ecvv.com/company/lcdjoyce/index.html
Datasheet del PIC16F877A Recuperado de http://www.microchip.com
Datasheet del RTC DS1307 Recuperado de http://www.dalsemi.com
Molina Marticorena, Jos Luis (2002-2014).Componentes Electrnicos

del

LCD-016M.

Recuperado

Recuperado

de

de

http://www.profesormolina.com.ar/electronica/componentes/fuente_reg
reg_int.htm

Ramrez F.J. (2011)

Como conectar un diodo LED

Recuperado de

http://www.tuelectronica.es/tutoriales/electronica/como-conectar-un-diodoled.html

Tutoriales

http://www.cadsoftusa.com/training/tutorials/?language=en
Villamil Gonzalez, Hctor Uriel (2009) Leccin 24. Puertos I/O y
principales

de

mdulos

EAGLE(s.f.).Recuperado

en

los

de

pic.

Recuperadohttp://datateca.unad.edu.co/contenidos/309696/ECBTI_M
PyMC_V_02/leccin_24_puertos_io_y_principales_mdulos_en_los_pic.
html

72

ANEXOS
ANEXO 1. TABLA DE DESCRIPCIONES DE LOS PINES DEL
MICROCONTROLADOR PIC16F877A.
Nombre pin
RA0/AN0
RA1/AN1

Pin

RA2/AN2/

V ref

2
3
4

RA3/AN3/

V ref +

Descripcin
E/S Digital o entrada anloga 0.
E/S Digital o entrada anloga 1.
E/S Digital o entrada anloga 2.
E/S Digital o entrada anloga 3.
Bit 4 del puerto A (E/S bidireccional). Tambin se

RA4/TOCKI

usa como entrada de reloj al temporizador


/contador TMR0. Salida colector abierto.
E/S Digital o entrada anloga 4. Tambin lo usa

RA5/SS/AN4

el puerto serial sncrono.


Bit 0 del puerto B (E/S bidireccional). Buffer E/S:

RB0/INT

33

TTL/ST tambin se usa como entrada de

73

interrupcin externa (INT).


Bit 1 del puerto B (E/S bidireccional). Buffer E/S:
RB1

34

TTL
Bit 2 del puerto B (E/S bidireccional). Buffer E/S:

RB2

35

TTL
Bit 3 del puerto B (E/S bidireccional). Buffer E/S:

RB3/PGM

36

TTL (programacin en bajo voltaje).


Bit 4 del puerto B (E/S bidireccional). Buffer E/S:

RB4

37

TTL. Interrupcin por cambio del pin.


Bit 5 del puerto B (E/S bidireccional). Buffer E/S:

RB5

38

TTL. Interrupcin por cambio del pin.


Bit 6 del puerto B (E/S bidireccional). Buffer E/S:

RB6/PGC

39

TTL. Interrupcin por cambio del pin. Entrada de


reloj para programacin serial.
Bit 4 del puerto B (E/S bidireccional). Buffer E/S:

RB7/PGD

40

TTL/ST. Interrupcin por cambio del pin. Entrada


de datos para programacin serial.
E/S Digital. Salida del oscilador Timer 1 o

RC0/T1OSO/T1CKI

15

entrada de reloj Timer 1.


E/S Digital. Entrada del oscilador Timer 1

RC1/T1OSI/CCP2

16

entrada captura 2; salida compara 2; salida


PWM 2.
E/S Digital. Entrada captura 1; salida compara 1;

RC/CCP1

17

RC3/SCK/SCL

18

salida PWM 1.
E/S Digital. Lnea de reloj serial asncrono en el
modo SPI y en el modo

I2 C .

E/S Digital. Lnea de datos en el modo SPI y en


RC4/SDI/SDA

23
el modo

I C .

RC5/SDO

24

E/S Digital.
E/S Digital. Transmisin asncrona (USART) o

RC6/TX/CK

25

reloj sncrono (SSP).


E/S Digital. Recepcin asncrona (USART) o

RC0/RX/DT

V DD

26
11,32

lnea de datos (SSP).


Voltaje de alimentacin DC (+).

V SS

12,31

Referencia de voltaje (GND).


Entrada de RESET al microcontrolador. Voltaje

MCLR

de entrada durante la programacin. En nivel


bajo resetea el microcontolador.
Entrada oscilador cristal oscilador / entrada

OSC1/CLKIN

13

fuente de reloj externa.

74

Salida oscilador cristal. Oscilador RC: salida con


OSC2/CLKOUT
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7

14
19
20
21
22
27
28
29
30

un frecuencia OSC1.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser puerto paralelo en bus de 8 bits.
E/S puede ser pin de lectura (read) en modo

RE0/RD/AN5

microprocesador.
E/S puede ser pin de escritura (write) en modo

RE1/WR/AN6

microprocesador.
E/S puede ser pin de eleccin de chip (chip

RE2/CS/AN7

10

select) en modo microprocesador.

Fuente: Microchip (2003).Data sheet (hoja tcnica) del PIC16f877A.


ANEXO 2. TABLA DE DESCRIPCIONES DE LOS PINES DEL RTC DS1307.
Nombre pin
X1, x2

pin
1,2

descripcion
Conexciones

para

un

cristal de cuarzo estndar


V BAT

32,768HZ.
Entrada de alimentacin
de una pila estndar de

GND
V cc

4
8

litio de 3 voltios.
Voltaje de referencia.
Voltaje de alimentacin

SDA

DC (+5v)
Entrada/salida de datos
para la interfaz

I2 C

Pin de drenaje abierto,


requiere resistencia pullSCL

up externa.
Entrada de

reloj

sincronizar

para
la

transferencia de datos en
la interfaz serial.
75

SQW/OUT

Salida

para

generar

cuatro

posibles

frecuencias
1HZ,

de

4KHZ,

salida:

8KHZ

32KHZ. Pin de drenaje


abierto,
resistencia

requiere
de

una
pull-up

externa.
Fuente: Dallas (2003), Data sheet (hoja tcnica) del DS1307.

ANEXO 3. CIRCUITO ESQUEMATICO Y BOARD DE LA ETAPA DE


CONTROL DEL PROGRAMADOR DE RIEGO REALIZADO EN CADSOFT
EAGLE PCB DESIGN

76

Figura 58: Circuito esquemtico de la etapa de control


Fuente: Archivos propios (2015)

77

Figura 59: Board de la etapa de control


Fuente: Archivos propios (2015)

78

ANEXO 4. CIRCUITO ESQUEMATICO Y BOARD DE LA ETAPA DE


VISUALIZACION Y CONTROL HOMBRE MAQUINA DEL PROGRAMADOR
DE RIEGO REALIZADO EN CADSOFT EAGLE PCB DESIGN.

Figura 60: Circuito esquemtico de visualizacin y control hombre mquina.


Fuente: Archivos propios (2015)

Figura 61: Board de la etapa de visualizacin y control hombre mquina.


Fuente: Archivos propios (2015)
79

ANEXO 5. CIRCUITO ESQUEMATICO Y BOARD DE LA INTERFAZ DE


POTENCIA REALIZADO EN CADSOFT EAGLE PCB DESIGN.

Figura 61: Circuito esquemtico de la interfaz de potencia.


Fuente: Archivos propios (2015)

Figura 61: Board de la interfaz de potencia.


Fuente: Archivos propios (2015)

80

Вам также может понравиться