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