Introducción
En este informe se proseguirá a describir de
forma sencilla el proyecto que hemos realizado para la materia
mecatronica II el cual realizamos en base a los conocimientos
adquiridos en la materia. El proyecto consiste en la
modificación de una pava eléctrica para hacerla mas
funcional. A continuación desarrollaremos como hemos
llevado a cavo las distintas etapas de elaboración del
proyecto, los materiales utilizados y la información de
los mismos.
Memoria
Descriptiva
Este proyecto consiste en modificar el
sistema de una pava eléctrica la cual solo calienta agua
hasta hervirla en un sistema al cual por medio de cinco
pulsadores y un display LCD se completa la interfaz de
comunicación con nuestro Pic16f1828 el cual realiza el
control del sistema. Así podemos seleccionar la
temperatura que deseamos obtener en el agua por medio de los
pulsadores y por otro lado en una función llamada termo
seleccionamos la temperatura deseada y la pava mantendrá
esa temperatura hasta que le ordenemos dejar de
hacerlo.
Desarrollo
Esta parte del sistema esta compuesta por el pic16f1828
el cual tiene como entradas digitales los cinco pulsadores y como
entrada analógica la señal del sensor de
temperatura (LM35). Como salida tenemos la conexión con el
LCD y una salida a un optocoplador el cual sirve de fusible entre
la parte de control (PIC) y la parte de potencia (triac). De esta
forma tenemos en una placa los pulsadores con sus respectivas
resistencias de 10k y sus capacitores de 0.1uf para eliminar los
ruidos por rebote, esta placa se comunica con la de control por
medio de un cable cinta y un conector de siete pines. Por otra
parte tenemos el LCD que también esta conectado con la
placa de control por medio de un cable cinta y un conector de
doce pines. La parte de potencia se encuentra en la misma placa
de control, por lo tanto en esta tendremos el PIC, los conectores
de los pulsadores y LCD; la entrada de corriente para la
alimentación de la parte de control y la entrada y salida
de 220v para la parte de potencia. También tenemos la
conexión del censor de temperatura que se encuentra dentro
de la pava y un diodo zener para darle al PIC una referencia de
la tensión que va a recibir del censor. Físicamente
hemos colocado el LCD y los pulsadores en la tapa del gabinete al
cual también fijamos la base de la pava, de esta forma en
el exterior del gabinete tenemos la pava y la interfaz de
comunicación con el usuario y dentro del gabinete tenemos
las conexiones de las distintas partes del sistema con la placa
de control. La programación del PIC la llevamos a cabo con
el programa Pic Basic Pro. A continuación
añadiremos unas fotos e imágenes de lo mencionado
anteriormente.
Imágenes:
Programa
DEFINE WDTDIS
define INTCLK 4
DEFINE LCD_DREG PORTD
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTD
DEFINE LCD_RSBIT 1
DEFINE LCD_EREG PORTD
DEFINE LCD_EBIT 0
define LCD_BITS 4
define LCD_LINES 2
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEUS 50
trisa=%11111111
trisc=%00111110
trisd=%00000000
trise=%00000000
ADCON1=%10000010
izq var PORTC.5
der var PORTC.4
arriba var PORTC.1
abajo VAR PORTC.2
enter var PORTC.3
res VAR WORD
temper var byte
temp VAR BYTE
i Var byte
porta=0
portc=0
portd=0
porte=0
temper=80
bienvenido:
lcdout $FE,1
lcdout $FE, 2
lcdout "Oprima <- o ->"
inicio:
while (izq=1 & der=1 &
enter=1)
wend
if der=0 then
pause 50
lcdout $FE,1
lcdout $FE, 2
lcdout "Funcion pava"
while der=0
wend
i=1
endif
if izq=0 then
pause 50
lcdout $FE,1
lcdout $FE, 2
lcdout "Funcion termo"
while izq=0
wend
i=0
endif
if enter=0 THEN
pause 50
while enter=0
wend
if i=1 then
goto pava
endif
if i=0 then
goto termo
endif
endiF
goto inicio
pava:
lcdout $FE,1
lcdout $FE,2
lcdout "Pava"
lcdout $FE,$c0
lcdout "Temp deseada:" ,#temper
while (arriba=1 & abajo=1 &
enter=1)
wend
if arriba=0 then
pause 50
temper=temper+1
while arriba=0
wend
endif
if abajo=0 then
pause 50
temper=temper-1
while abajo=0
wend
endif
if enter=0 then
pause 50
while enter=0
wend
goto calientapa
endif
goto pava
calientapa:
WHILE temper > temp
HIGH porte.0
ADCIN 0, res
TEMP = (17*res)/35
LCDOUT $FE,2,"TEMP =
",#TEMp,$df,"C"
PAUSE 500
if enter=0 then
pause 50
while enter=0
wend
low porte.0
lcdout $FE,1
LCDOUT $FE,2
lcdout "FUNCION"
LCDOUT $FE, $c0
lcdout "TERMINADA"
pause 2000
LCDOUT $FE,1
goto bienvenido
endif
WEND
low porte.0
LCDOUT $FE,1
LCDOUT $FE,2
lcdout "FUNCION"
LCDOUT $FE, $c0
lcdout "TERMINADA"
pause 2000
LCDOUT $FE,1
goto bienvenido
termo:
lcdout $FE,1
lcdout $FE, 2
lcdout "Termo"
lcdout $FE,$c0
lcdout "Temp deseada:" ,#temper
while (arriba=1 & abajo=1 &
enter=1)
wend
if arriba=0 then
pause 50
temper=temper+1
while arriba=0
wend
endif
if abajo=0 then
pause 50
temper=temper-1
while abajo=0
wend
endif
if enter=0 then
pause 50
while enter=0
WEND
goto calientate
endif
goto termo
calientate:
ADCIN 0, res
TEMP = (17*res)/35
WHILE TEMPEr > TEMP
HIGH porte.0
ADCIN 0, res
TEMP = (17*res)/35
LCDOUT $FE,2,"Temp =
",#TEMp,$df,"C"
PAUSE 500
if enter=0 then
pause 50
while enter=0
wend
low porte.0
LCDOUT $FE,1
LCDOUT $FE,2
lcdout "FUNCION"
LCDOUT $FE, $c0
lcdout "TERMINADA"
pause 2000
goto bienvenido
endif
WEND
while TEMP > TEMPEr – 5
ADCIN 0, res
TEMP = (17*res)/35
low porte.0
LCDOUT $FE,2,"Temp =
",#TEMP,$df,"C"
PAUSE 50
if enter=0 then
pause 50
while enter=0
wend
LCDOUT $FE,1
LCDOUT $FE,2
lcdout "FUNCION"
LCDOUT $FE, $c0
lcdout "TERMINADA"
pause 2000
goto bienvenido
endif
WEND
goto calientate
PSEUDOCODIGO:
Inicio:
Seleccionar modo
Si es modo pava:
Seleccionar temperatura deseada
Calentar hasta Alcanzar temperatura
deseada
Deja de calentar y vuelve al
inicio.
Si el modo es termo:
Seleccionar temperatura deseada
Calentar asta temperatura
deseada
Deja de calentar
Si la temperatura del agua baja cinco
grados por debajo de la deseada
Calentar asta temperatura
deseada
Presiono pulsador
Vuelve al inicio.
Lista de materiales:
PIC 16f1828
Zócalos de 20 pines
LM35
Conector 12 y 7 pines
Conectores de potencia
R220 Homs
R10 Khoms
C 0.1uf
Triac
Optocoplador
LCD
Pulsadores
Cable cinta
Termocontraible
Pava eléctrica
Hojas de datos
PIC 16F1828
OPTOCOPOPLADOR
MOC 3012
TRIAC
TIC 226
LCD
CM1620CBWS2
LM35
Conclusión
Como conclusión podemos decir que
este proyecto seria difícil de comercializar por el echo
de que hoy en día ya se comercializan pavas
eléctricas con estas funciones o algunas más,
quizás por el mismo importe, pero particularmente fue un
lindo proyecto para concretar. Tuvimos varias dificultades las
cuales en un principio no pudimos solucionar y obteníamos
como resultado el no funcionamiento del sistema, el principal
problema que no se resolvió fue que no encontramos como
definir el oscilador interno del PIC, ya que el PIC 16F1828 posee
3 osciladores internos, y se deben definir cada uno así
como también sus estados (Activos y no Activos). Tampoco
pudimos ponerle un oscilador externo ya que el cristal con los
capacitores van conectados en el mismo puerto que definimos como
analógico para sensar la temperatura.
Debido a estos inconvenientes optamos por
utilizar el PIC 16F887, el cual fue elegido porque el oscilador
interno se define fácilmente, y posee una mayor cantidad
de puertos donde conectar los distintos componentes con mayor
facilidad y distribución (posee 40 patas, mientras que el
16F1828 posee 20). No fue necesario cambiar la estructura general
del programa en sí. En la parte de potencia de la placa,
reemplazamos el TRIAC, pusimos un BTA-41800B en lugar del TIC
226D, ya que el nuevo Triac soporta 25 Amperes; necesarios por la
corriente que consume la resistencia que calienta el
Agua.
Con los cambios realizados, pudimos lograr
que funcione el proyecto tal como lo habíamos
pensado.
TRIAC
BTA41-800b
PIC 16F1828
Autor:
Facundo Isaia
Santiago Gorosito
UNIVERSIDAD TECNOLÓGICA NACIONAL
FACULTAD REGIONAL VILLA MARÍA
Asignatura: Mecatronica II
Profesor: Ing. Ariel Toia.
Fecha de entrega: 12-11-2013