martes, 2 de junio de 2009

Funcionamiento Básico Del Reloj Digital

La más importante y esencial de las funciones de un reloj común es proporcionar la hora actual, que debe ser la misma para todas las personas que viven en la misma zona horaria. Por convenio, el día se divide en veinticuatro horas. Existen dos modos de leer la hora actual:
1º: Por 24 horas, es decir, desde las 0:00 horas (12 de la noche en el otro empleo horario) hasta las 23:59 horas. Aquí, cuando pasa el minuto de las 12:59 del día, continúa a las 13:00 horas en lugar de ir a la 1 de la tarde o P.M. Este empleo horario considera el día como una unidad completa de tiempo. Es el más elegante pero menos comprensible para la mayoría.
2º: El empleo horario más utilizado considera el día dividido en dos partes iguales de 12 horas cada una. Es menos elegante que el de 24 horas pero más comprensible para la mayoría de las personas:
Desde las 12 de la noche hasta las 11:59 de la mañana: A.M. (ante meridiem, antes del mediodía).
P.M. (post meridiem, después del mediodía) desde las 12 del mediodía hasta las 11:59 de la noche.
Cada hora comprende sesenta minutos y cada minuto comprende sesenta segundos. El segundo es la unidad básica de tiempo y se mide igual en todo el mundo, es decir, no existen diferentes unidades de tiempo en diversas regiones. Un reloj normal marca siempre la hora y los minutos, en algunos casos los segundos.
Las características mas sobresalientes de este reloj son: dígitos formados por diodos LEDs, de un tamaño aproximado a los 7 centímetros de alto, pero fácilmente ampliables; función termómetro, con la posibilidad de agregar la función de lectura de la temperatura exterior; y la posibilidad de utilizar el display construido para otras funciones, como por ejemplo, un dispensador de turnos, etc.Como el corazón del proyecto es un microcontrolador, la posibilidad de ampliar las funcionalidades del reloj son enormes, muchas veces solamente modificando el software que lo controla.Debido a que se trata de proyecto que reviste cierta complejidad, hemos dividido el artículo en tres partes. Intentaremos brindar toda la información necesaria sobre el funcionamiento del reloj, y de los componentes implicados, de manera que los interesados puedan modificarlo para adaptarlo a sus necesidades.

Construya y programe su propio reloj con termómetro.
Efectivamente, el concepto de “divide y vencerás” es muy útil en electrónica. En este caso, tendremos una placa que contendrá todos los LEDs que forman el display, y unos pocos componentes destinados a manejarlos; una segunda placa se encargara del manejo del encendido y apagado de cada uno de los segmentos que forman los dígitos del display y de memorizar el valor representado en el; y la tercera placa sea la que controle la generación de los datos a mostrar, leer el sensor de temperatura, proveer un sistema para el ajuste de la hora y los minutos, etc. Cada una de estas partes tiene el potencial de ser empleada en otro proyecto.El display en si consta de cuatro dígitos de 7 segmentos, con los que se pueden representar los dígitos del “0” al “9” y algunos caracteres, con dos puntos entre cada par de dígitos, para poder mostrar con su parpadeo que el reloj esta efectivamente funcionando.Si bien comercialmente es posible encontrar displays de 7 segmentos, incluso de tamaños respetables, hemos decidido construir nosotros mismos los dígitos, de manera que podamos lograr el tamaño que deseemos, manteniendo un coste realmente bajo, y a la vez nos sirve de excusa para explicar varios conceptos teóricos. Los segmentos de cada digito se conforman mediante varios LEDs conectados en serie, manejados por un transistor capaz de proveerlos de la corriente necesaria para que enciendan.Este display sera el encargado de mostrar la hora en formato “HH:MM” y la temperatura (formato “TT º”).Para manejar la placa del display, utilizaremos un esquema circuital denominado “registro de desplazamiento”, sobre el que ya hemos hablado en NeoTeo, por lo que recomendamos leer el artículo citado en los links que acompañan esta nota. Dicho circuito tiene la ventaja de permitirnos manejar el display mediante solo 4 líneas de control, en lugar de las 29 necesarias si encendiéramos cada segmento en forma individual. Las líneas empleadas conforman un control de tipo serial, mediante una señal que provee pulsos de reloj (llamada CLOCK), otra que entrega los datos propiamente dichos (DATA), una línea de RESET para limpiar el display, y otra que hemos denominado “ON/OFF”, destinada a apagar unos milisegundos el display para que al escribir los datos en el no se perciba ningún tipo de parpadeo.Por último, y a pesar de su pequeño tamaño, la tercera placa es la más importante del proyecto. Destinada a albergar el microcontrolador que gestiona todas las funciones del proyecto, el sensor de temperatura y los pulsadores de ajuste, se conectara a la controladora del display mediante un cable plano.El microcontrolador seleccionado ha sido el PIC 16F628A de Microchip, debido a su bajo costo, cantidad de memoria disponible, y numero de pines de I/O. Lo dotaremos de un cristal de 4MHz, aunque este microcontrolador puede funcionar perfectamente sin un clock externo, para dotar de mayor precisión a nuestro reloj.


Vista posterior del display, con su placa controladora.
Componentes y circuito impreso del display.
Existen varios transductores de temperatura que pueden realizar la tarea mencionada. Entre los mas conocidos y utilizados están las termocúplas, que consisten en un par de metales que al ser sometidos a una temperatura determinada generan un pequeño potencial que puede ser leído. Este tipo de sensores tienen la gran ventaja de un amplio rango de temperaturas de trabajo, capaces de medir valores superiores a los 1000ºC, pero debido a su falta de linealidad no resulta apropiado para nuestro proyecto. Otro sensores muy comunes son los que mediante una unión PN pueden variar una tensión en unos pocos milivoltios por grado centígrado. Quizás el exponente mas común de este tipo de transductores sea la familia de sensores LM35, LM 335, etc., que entregan una tensión se 10mV/ºC. Pero tiene la desventaja de necesitar de un conversor A/D para que el microcontrolador pueda interpretar esa variación de tensión como una temperatura. La solución a nuestro problema viene de la mano de un sensor de Dallas Semiconductor, cuyo código es DS1820. Este circuito integrado, a pesar de su reducido tamaño y de tener solo tres terminales posee una serie de características que lo hacen ideal para este proyecto. Dentro de la pequeña capsula se encuentra un sensor de temperatura, un conversor analógico digital, y una interfaz capaz de entregarnos el dato de la temperatura leída en forma serial, utilizando un bus propietario de la empresa, denominado 1-wire, justamente por utilizar solamente un conductor para leer/escribir en el sensor. Puede sonar extraño la palabra “escribir” asociada a un sensor de temperatura, pero esta pequeña maravilla incluye una pequeña memoria EEPROM en la que podemos guardar algún dato de interés (por ejemplo, una temperatura máxima, mínima, etc.)A todo esto se suma la posibilidad de incluir varios sensores sobre la misma línea de datos, de manera que con solo tres cables (dos de alimentación y uno de datos) se puede leer la temperatura de varios sensores.


Termocupla tipo K.
Sensor digital DS1820.
Como dijimos, el display dispone de cuatro dígitos de 7 segmentos cada uno.

No hay comentarios:

Publicar un comentario en la entrada