lunes, 18 de marzo de 2013

Prácticas No. 2 y 5 - Comparadores y Display multiplexado

Esta práctica consistía en calentar una cubeta con agua y mantenerla a 60 grados; para esto se utilizarían tanto una resistencia (para calentar el agua) como un ventilador.

Para saber si el agua se encontraba a 60 grados se utilizó el sensor LM35, por medio de los comparadores se estableció un voltaje de referencia interno (el cual seria el que el sensor manda al estar a 60 grados), al ser el voltaje de entrada mayor a este (el voltaje de entrada era proporcionado por el sensor) el PIC mandaba un pulso el cual prendía el ventilador, si el voltaje de entrada era menor, el PIC mandaba un pulso a un revelador para activar la resistencia y calentar el agua.
Además en una pantalla LCD se mostraba si la temperatura era mayor o menor de 60 grados.

El código es el siguiente:


La simulación es la siguiente:

A continuación se puede ver un vídeo que demuestra el funcionamiento del circuito (la calidad del vídeo es baja):




También se anexa un link para descargar tanto el código como la simulación:



Comparadores


Se llama comparador a un amplificador operacional en lazo abierto (sin re alimentación entre su salida y su entrada) y suele usarse para comparar una tensión variable con otra tensión fija que se utiliza como referencia.
Op-Amp Comparator.svg

En los microcontroladores se utilizan los registros CMCON y VRCON para la programación de los comparadores, a continuación se mostrara ambos registros (los registros que se mostraran pertenecen al PIC16F648A).

CMCON

Como podemos ver el registro CMCON utiliza 8 bits en total (7 - 0) cada uno cuenta con una función que veremos a continuación.

Bits 7 y 6 (C2OUT y C1OUT):
En estos dos bits del registro es donde se mostraran ya sea un 0 o un 1 dependiendo de si el voltaje de entrada y referencia que hallamos configurado. Si por ejemplo nuestro voltaje de referencia es mayor al de entrada entonces se pondrá un 1 en el bit, pero si por el contrario el voltaje de referencia es menor que el de entrada entonces se pondrá un 0.
Bits 5 y 4 (C2INV y C1INV):
Estos dos bits permiten invertir los bits 7 y 6, si se activan poniéndolos en 1 invertirán el resultado de los bits antes mencionados, si se ponen en 0 no se invertirá nada.

Bit 3 (CIS):
Este bit nos permite especificar que pines funcionaran como voltaje de referencia y cuales como voltaje de entrada (voltaje a comparar), esto dependerá de la configuración que elijamos, a continuación se especifica:


Bits 2, 1 y 0 (CM2 : CM0):
Estos bits son los encargados de configurar el modo de comparación que se utilizara, a continuación las combinaciones posibles con sus respectivos diagramas:



VRCON

Este registro se utiliza para configurar el voltaje de referencia en caos de que vallamos a utilizarlo internamente por el PIC.
Bit 7 ( VREN): 
Este bit nos permite activar el voltaje de referencia interno, al ponerlo en 1 lo activamos y en 0 se encuentra desactivado.
Bit 6 (VROE):
Si activamos este bit podremos visualizar el voltaje de referencia interno también en el pin RA2.
Bit 5 (VRR):
Este bit nos permite elegir la formula que utilizaremos para calcular el voltaje de referencia que utilizaremos.
Bit 4:
Este bit no esta habilitado.
Bits 3, 2, 1 y 0 (VR 3:0):
Estos son los bits que utilizaremos para configurar el valor de el voltaje de referencia, el numero en binario que se ponga en estos cuatro bits debe ser convertido a decimal para utilizarlo en la formula.



Para calcular el voltaje de referencia interno utilizaremos una de las siguientes formulas, la que utilicemos dependerá de si colocamos un 1 o un 0 en el bit 5 (VRR) del registro VRCON.