Termometro digital con pic 18f1320

Solo disponible en BuenasTareas
  • Páginas : 8 (1769 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de noviembre de 2010
Leer documento completo
Vista previa del texto
TERMÓMETRO DIGITAL

Diego Garcia
Gastón Dosso
Sebastián Macias
Facultad de Ingeniería de Oberá – Universidad Nacional de Misiones
Juan Manuel de Rosas 325 - Oberá – Misiones – Argentina

Resumen: El presente artículo trata la implementación de un termómetro digital.
El termómetro digital es una herramienta muy utilizada en la actualidad en distintos procesos industriales, en los cualeses necesario saber la temperatura del proceso en todo momento. El mismo soporta temperaturas elevadas a partir de cero grados, lo cual lo hace muy versátil para distintos ámbitos de aplicación.
El circuito se encuentra basado en el microcontrolador PIC18F1320 y el sensor de temperatura LM35.
Este proyecto fue realizado como trabajo final integrador en la asignatura Técnicas Digitales 2,correspondiente a la carrera de Ingeniería Electrónica.

Palabras claves: Medición de temperatura, microcontrolador.

1. INTRODUCCIÓN
A través de todo lo aprendido en el cursado de la materia técnicas digitales 2 se englobaran los conocimientos para poder realizar de forma optima el proyecto final otorgado por la cátedra.
Se procederá primeramente analizar el problema presentado, parapoder proyectar las etapas de diseño del mismo.


2. DESARROLLO DEL ENSAYO

El ensayo cuenta de varias etapas de proyección. La primera parte se destino al diseño del circuito preliminar, para poder definir como funcionaria el sistema y la realización del diagrama de flujo para orientar la programación. Una vez definido el circuito se procedió a programación del software que comandara lalógica del circuito encargado por el microcontrolador. Luego de verificar la simulación del software se monto el circuito en protoboard para ultimar detalles y comprobar el correcto funcionamiento del circuito definitivo. Y por último, se realizo el diseño de circuito y la impresión del mismo en placa universal para montar los componentes y finalizar con el proyecto.
El funcionamiento del termómetrose basa en la medición de la temperatura capturada por un sensor, la cual debe visualizarse en displays de siete segmentos mostrándose valores en un rango de temperatura de 0 a 99°C.
Las mediciones de la temperatura son obtenidas por el sensor LM35, el cual registra en su terminal de salida un incremento de 10mV por cada grado centigrado. Estos valores de voltaje se los acondiciona mediantecircuitos amplificadores de manera conveniente. El acondicionamiento de la señal se realizo de tal forma que el valor detectado por el ADC sea el mismo que la temperatura en grados. Esto quiere decir, que si la temperatura es de 25 grados centrigrados, el valor detectado por el ADC es 25.
En primera instancia el software ejecuta la rutina de interrupción, en la cual la señal de voltaje se introduce alpin AN0 para realizarse la conversión analógica-digital. Luego el software lo que hace es pasar el valor obtenido de la conversión (registro TEMP) e ir restándolo de a diez valores y almacenando en un contador, llamado DECENA, la cantidad de veces que se hace esta operación hasta que se verifique mediante el registro status que el resto da un valor negativo. Finalmente para obtener el valor de launidad lo que se hace es simplemente mover el registro (TEMP), que almacena el resto, al registro UNIDAD.
Cuando termina esta rutina de interrupción el software vuelve al programa principal donde los registros DECENA y UNIDAD son visualizados en sus respectivos display. El programa queda en un bucle infinito mostrando estos registros, hasta que se produce el desbordamiento del Timer0 y estoproduce una interrupción. Esto se produce una vez por segundo, ya que se configuro el Timer0 con un preescaler x16, con lo cual para que el timer de 10 bits se desvorde tienen que pasar:
Ciclos=(216-1)·16=1048560
Como estamos trabajando con un cristal de 4Mhz y por cada cuatro ciclos del cristal tenemos un ciclo de máquina, con esta cantidad de ciclos, el timer0 se desborda cada 1 segundo...
tracking img