|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||||||
|
MANDOS
A DISTANCIA
|
||||||||||
|
Probablemente los botones más frecuentemente pulsados en cualquier casa son los del mando a distancia de la televisión. Está claro que los mandos por infrarrojos han sido una revolución. Cada día más aparatos incluyen uno: televisores, aparatos de vídeo, cadenas musicales, coches, sistemas de alarma... Controlar algo con sólo apretar un botón y sin moverse del sitio supone mucha comodidad, pero también más eficiencia: no tenemos que buscar la cerradura del coche a oscuras, no tenemos que dejar lo que estemos haciendo para cambiar la canción que está sonando, podemos detener instantáneamente la grabación de una película cuando comienza la publicidad, etc. Sin embargo, no todo tiene mando a distancia. Seguramente en alguna ocasión hemos echado de menos el tener uno de esos pequeños chismes para controlar algo en concreto. En este artículo explicaré cómo podemos aprovechar un viejo mando a distancia por infrarrojos para actuar sobre cualquier aparato que se nos ocurra.
¿CÓMO ES LA SEÑAL ENVIADA POR UN MANDO A DISTANCIA? Cuando apretamos un botón en nuestro mando un LED (Diodo Emisor de Luz) infrarrojo emite unos rápidos destellos a una frecuencia de 40 KHz, normalmente (¡el LED se enciende y apaga 40000 veces por segundo!). Esa es la señal portadora sobre la que van modulados los pulsos que transmiten información. Así, la señal enviada consiste en pulsos de información, siendo cada uno de ellos una onda cuadrada de 40 KHz. El circuito receptor posee un filtro pasa-banda que sólo deja pasar señales a una frecuencia de 40 KHz. De este modo se logra una cierta inmunidad a otras fuentes de luz perturbadoras, como el Sol o ciertas lámparas. Podemos observar las señales enviadas por un mando a distancia utilizando nuestro PC. Para ello necesitamos un receptor de infrarrojos compuesto por un sensor fotoeléctrico, un circuito amplificador, un filtro pasa-banda, un circuito modulador que elimine la frecuencia de 40 KHz y un comparador o disparador de Schmitt que proporcione una salida digital con unos niveles de tensión adecuados. Afortunadamente, en las tiendas de electrónica tenemos todo lo anterior integrado en componentes de tamaño menor al de un terrón de azúcar y de bajo precio. Uno de estos receptores integrados es el SHARP GP1U58, cuyo diagrama de conexiones muestro a continuación.
También podemos encontrar receptores de este tipo en cualquier aparato de vídeo o televisión. Una vez obtenido, lo único que tenemos que hacer es alimentar el componente con una tensión de 5 voltios. En su salida tendremos unos niveles lógicos TTL invertidos, es decir, 0 voltios durante un pulso y 5 voltios en ausencia de él. Esta salida puede ir conectada directamente a alguno de los bits de entrada presentes en el puerto paralelo del ordenador para ser analizada y procesada por un programa. El sencillo programa logic, escrito en C, muestrea continuamente la señal presente en el pin 15 del puerto paralelo LPT1 y la representa en pantalla, a modo de un analizador lógico. Con él podemos observar las señales emitidas por los mandos a distancia. Estas señales tendrán un aspecto como el siguiente:
Señal emitida por un mando a distancia "Panasonic", al pulsar el botón "1".
Además, interpretaremos el primer pulso y espacio largos, de duración "4T" cada uno, como una indicación de "comienzo de transmisión" que no aporta información útil. El último pulso será de parada y no indica el comienzo de un nuevo bit. De esta manera, la señal será: 0100000000010111111111 Analizando de la misma manera las señales enviadas por los demás botones, he podido observar que los datos tienen la siguiente forma: 01000 XXXXXX 10111 YYYYYY Donde "XXXXXX" representa
un número de 6 bits que identifica el botón pulsado y "YYYYYY"
representa el mismo número complementado, es decir, cambiando los unos
por ceros y viceversa. El enviar información redundante es la mejor forma
de detectar errores en la transmisión. 00011101 XX000000 YYYYYYYY ZZZZZZZZ "YYYYYYYY" es un número de 8 bits, y "ZZZZZZZZ" su complemento. "XX" son dos bits que identifican algún tipo de función. El sistema de codificación de los bits también se basa en la distancia entre pulsos.
CONSTRUIR UN RECEPTOR
Con un poco de imaginación encontraremos multitud de cosas para las que estaría bien tener un control remoto por infrarrojos. En la página de Universal Infrared Receiver se detalla el funcionamiento y construcción de un receptor de infrarrojos (código RC5) que envía los comandos detectados a un PC, vía RS323. Hay dos versiones del circuito: una utiliza el pequeño PIC 12C508 y la otra nuestro 16F84. Mi actual proyecto es controlar todo mi observatorio astronómico (cúpula, telescopio y ordenador) desde un único mando a distancia recuperado de un viejo aparato de vídeo. El diseño es parecido al anterior, pero en este caso unas salidas del PIC activan relés (excitados por transistores), otras integrados TTL y otras están conectadas al puerto paralelo de un PC. De verdad: me encanta este chip. |
||||||||||
|
JMB
19-12-2000 |