Universidad Austral de Chile Facultad de Ciencias de la Ingeniería Instituto de Electricidad y Electrónica TRABAJO PRACTICO DE ARQUITECTURA DE MICROPROCESADORES CONTROL A DISTANCIA DE APARATOS A TRAVES DE LA LINEA TELEFONICA INTRODUCCIÓN El control a distancia es una moda-lidad que presenta muchas opciones y beneficios para los usuarios. Dentro de sus principales ventajas se encuentran la comodidad que ofrece el no tener que desplazarse hasta algún sitio para ha-cer alguna tarea, la seguridad obtenida ya que se pueden realizar labores peli-grosas sin acercarse al área de trabajo y la rapidez con que se pueden tomar ac-ciones respecto a alguna condición es-pecífica, entre otros. El proyecto realizado ofrece una infinidad de aplicaciones las que dependerán de la imaginación y necesidades de cada usuario OBJETIVOS • Conocer un sistema de telemando alternativo • Dar una nueva aplicación a nuestra línea telefónica • Conocer las ventajas y potencialidades que ofrece tanto un microcontrolador como un codificador de línea telefónica. CONTROL A DISTANCIA DE APARATOS A TRAVÉS DE LA LÍNEA TELEFÓNICA El proyecto que realizamos consistió en crear un equipo que, a través de la línea telefónica, reci-ba órdenes o instrucciones referentes a un usuario pueda, desde la comodidad de su casa u oficina, utilizar el teléfono para ejecutar alguna acción. Por ejemplo, una persona que se encuentre fuera de la ciudad y necesite prender algunas luces de su hogar para simular que la casa no está sola en esos momentos lo podrá hacer simplemente desde cualquier teléfono de red fija, público o con su celular, el único requisito necesario es que el teléfono posea marcación por tonos, es decir, está pensado para trabajar única y exclusivamente con lí-neas telefónicas estándares, en ningún caso con líneas integradas a conmuta-dores privados del tipo PBX (Private Branch Exuhanges) ya que estas pue-den presentar problemas de incompati-bilidad debido a que trabajan con nive-les de voltaje y corriente diferentes. FUNCIONAMIENTO DEL SISTEMA DE SEÑALIZACIÓN DTMF El método de tonos se conoce técnicamen-te corno señalización DTMF (dual−tone multifrequencv: multifrecuencia de do-ble tono). 1 Los marcadores digitales o electrónicos simulan la acción mecáni-ca de los marcadores de disco median-te un teclado que emite los pulsos a medida que se ingresa cada dígito. El uso de teclado permite marcar el núme-ro deseado con mayor rapidez. El método de señalización DTMF utiliza 16 combinaciones distintas de frecuencias de audio, todas comprendi-das dentro de la llamada banda de `voz (300 Hz a 3 kHz). Cada combinación consta de dos señales senoidales: una de un grupo bajo de frecuencias (697 Hz, 770 Hz, 852 Hz, 94 1 Hz) y otra de un grupo alto (1209 Hz, 1336 Hz, 1477 Hz, 1633 Hz). Al pulsar la tecla <<5>> por ejemplo, se envían simultáneamente a tra-vés de la línea telefónica un tono bajo de 770 Hz y un tono alto de 1336Hz. Estos tonos son decodificados en la central telefónica para identificar el dígito marcado. Al pulsar dos o más teclas de una misma fila o columna, se genera un solo tono (el correspon-diente a esa fila o columna). La pul-sación de teclas diagonales no gene-ra tonos. La señalización DTMF tiene va-rias ventajas sobre la de pulsos, in-cluyendo una mayor rapidez de mar-cado y la posibilidad de enviar seña-les de control a través de la línea te-lefónica. La marcación de tonos se distingue fácilmente por los sonidos característicos que genera al digitar cada entrada. Por todo lo anterior es que se hace necesario utilizar un integrado que comprenda todas estas necesidades, nosotros usamos un codificador de tonos de línea telefónica para esta tarea, específicamente el IC CM8870. EL CM8870 Dado que la parte del circuito encargada de hacer la decodificación de los tonos es quizás la más compleja, se ha preferido utilizar un circuito integra-do especial para dicha tarea. En nues-tro caso específico, utilizamos el deco-dificador CM8870 de la empresa CDMA, la cual presenta las características necesarias para la tarea que se quiere realizar y además, se puede conseguir en el mercado fácilmente. Opera con fuente de alimentación 5 voltios Recepción de todos los tonos DTMF Bajo consumo de potencia Requiere muy pocos elementos exter-nos Posee latch en las líneas de salida El CM8870 recibe los tonos DTMF de la línea telefónica y entrega en sus salidas Q1 a Q4 el código bina-rio correspondiente a la tecla que lo pro-duce. Además, posee un pin que genera un pulso positivo cada vez que recibe un tono válido (StD). EXPLICACIÓN DEL CIRCUITO Para una mejor comprensión del circuito completo, lo hemos subdividido en 6 bloques importantes, los cuales cumplen una función específica según su ubicación dentro del circuito. Ellos son: el detector de timbre, el decodificador DTMF, el circuito que contesta la llamada, el circuito de control, la sa-lida de potencia para manejar la carga y la fuente de alimentación. Detector de la señal de timbre La señal de timbre que envía la central telefónica cuando se recibe una llamada tiene aproxi-madamente 90 2 VAC y una frecuencia de 20 Hz. Para detectarla, se utiliza el cir-cuito conformado por el condensador C1, la resistencia R1, el optocoplador IC1, el transistor Q1 y la resistencia R4. La idea es que la señal alterna polariza co-rrectamente el diodo del optocoplador en uno de sus semiciclos, por lo tanto el transistor del mismo se activa haciendo que entre en conducción Q1 Así, el nivel de voltaje sobre R4 pasa de un nivel lógi-co bajo a un nivel alto, haciendo de paso que el LED D1 se encienda y sirva como indicador del conecto funcionamiento de esta parte del sistema. Cuando la línea telefónica se en-cuentra en estado normal (colgado), el voltaje presente sobre la línea es de 48VDC y cuando se levanta el auricu-lar (descolgado), dicho nivel cae por debajo de 10 VDC. Por ello, el circuito de detección del timbre debe utilizar el condensador C1, para que la componen-te DC de la línea sea filtrada y no se produzca una sobrecarga de la misma. Decodificador de tonos. Este circuito, corno ya se mencionó, está construido alrededor de un circuito integrado CM8870 (IC3), el cual utiliza unos pocos componentes externos para reali-zar su trabajo. Su conexión a la línea telefónica se hace a través del condena-dor C2 lo que evita problemas con el voltaje DC de la línea y de paso deja pasar las frecuencias de los tonos DTMF. Circuito de control. Está construido al rededor de un microcontrolador P1C16F84. Su principal función es re-cibir el código binario que entrega el decodificador de tonos y de acuerdo a los dígitos recibidos, decidir si activa o no la carga de salida. También, es el encarga-do de verificar si llegó una señal de timbre en su pin RB7, para activar el circuito que simula que se ha descolgado la bo-cina del teléfono. Cuando el PICI6F84 detecta que se recibió una señal de timbre válida, inicia una temporización de 10 segundos aproxi-madamente, tiempo du-rante el cual permanece activado el circuito que simula que el teléfono ha sido descolgado. Este tiempo es empleado por el usuario que ha hecho la llamada para enviar los tonos DTMF que harán que la carga sea activada o desactivada. El hecho de tener un microcontro-lador en el circuito hace que las posibilidades de control sean muy gran-des, por ejemplo, se pue-de tener una clave de ac-ceso para que sea admitida una orden de encender o apagar la carga. Simulación de teléfono descolgado. Este sistema permite establecer la comu-nicación con el usuario ya que es quien le dice a la central telefónica que la llamada se ha contestado. Su funciona-miento es bastante simple y consiste en poner una resistencia (R3) en paralelo con la línea telefónica, de tal forma que la central vea una impedancia similar a la que pone el teléfono cuan-do es descolgado. Dicha conexión se realiza a través de los contactos del relé K1. el cual a su vez es manejado a través del transistor Q2 que recibe la orden desde el pin RB6 del microcontrolador. Ade-más, en este pin se ha conectado el led D2 lo que permite establecer si el equi-po ha contestado la llamada. Conexión de la carga Cuando el cir-cuito de control recibe una orden váli-da para encender o apagar la carga de salida. Solamente debe activar o desactivar el relé K2, que es el encargado de hacer la conmutación de la misma. La utilización del relé permite que el circuito maneje una carga de cualquier tipo, independientemente de que naturaleza sea. Para confirmar el estado del relé, se ha conectado un led D3 en el mismo pin que lo controla. 3 Fuente de alimentación Con respecto a la alimentación, es necesario utilizar un transformador que entregue a su salida 12 Volts. Continuos, y una corriente suficiente para la alimentación de todo el circuito y sus dos relés, nosotros realizamos las pruebas con una fuente en donde su corriente máxima fue de 1 Amper, la reducción de voltaje de alimentación tanto del PIC como del DTMF se realiza con la ayuda del regulador de voltaje de 12 a 5 Volts, 7805. OPERACIÓN Para operar este equipo se requiere que esté conectado a la línea telefónica y al sistema de alimentación. La primera, actúa como medio de transmi-sión para que el usuario envíe al apara-to todas las órdenes necesarias para rea-lizar la tarea que se requiere. La segun-da, como es obvio, permite que el equipo funcione ya que. Dado que su consumo relativamente alto. No se puede alimen-tar de la línea telefónica. El control de aparatos vía telefó-nica posee un relé como elemento de activar cualquier tipo de carga conec-tada a través de sus contactos. La idea es que el usuario pueda, desde algún sitio lejano, marcar el número de telé-fono en que está conectado el equipo y cuando éste le conteste, poder dar las órdenes de encender o apagar la car-ga. Cuando el usuario hace la llama-da, escucha el timbre como si se tratase de una llamada cualquiera y cuando el equipo contesta, dicha señal termi-na y se puede entonces oprimir las teclas que le indican al equipo que debe activar o desactivar la carga. En nues-tro caso particular, utilizamos la tecla numero 5 para activar la carga y la tecla número 6 para desactivarla. Una recomendación es que el usuario deje la tecla oprimida al menos un segundo lo que garantiza que el receptor reciba la señal correctamente. CONSTRUCCIÓN Y ENSAMBLE La construcción la realizamos con la ayuda del programa de diseño de circuitos impresos AGUILA, el cual da la posibilidad de conectar los componentes al igual que un programa de simulación de circuitos realizando en forma automática la conversión y distribución de los componentes en la placa impresa La placa la realizamos con el método convencional, es decir, trazado de pistas en forma manual y la utilización de un líquido corrosivo para la eliminación del metal innecesario El ensamble de los componentes lo realizamos en forma manual. PRUEBA DEL CIRCUITO Para la prueba del equipo se requie-ren dos líneas telefónicas, una para co-nectar el equipo de control y otra para que el usuario haga la llamada y verifi-que que el sistema funciona correcta-mente. En el caso de nosotros la tarea fue más fácil dado que lo realizamos con la ayuda de un equipo Celular. Básicamente los pasos son los siguientes: Conexión de la línea telefónica al sistema Conexión del equipo telefónico a la salida del sistema Activación del interruptor de encendido del sistema Marcación con la segunda línea telefónica 4 Ingreso al sistema Activación de la carga, tecla 5 Desactivación del sistema, tecla 6 El sistema transcurridos los 10 segundos se desactiva automáticamente Programa del microcontrolador El programa se realizó con la ayuda del programa de edición y simulación MPLAB, el cual presenta una simple y amigable interfaz para el usuario, por otro lado la carga del programa en el microcontrolador, la hicimos con la ayuda de un simple circuito y programa llamado NOPPP. Ambos programas, MPLAB y NOPPP se pueden encontrar en forma gratuita en Internet En líneas generales, el programa hace que el microcontrolador debe estar pendiente de una señal de nivel alto en el pin RA3 lo que indica que se recibe una llamada. Posteriormente, el aparato debe activar el relé que se maneja des-de el pin RA2 y mantenerlo así durante aproximadamente 10 segundos, tiempo durante el cual se debe revisar el pin RB4 que es donde se debe registrar un pulso de nivel alto, proveniente del integrado CD8870, y que indica que se recibió un código DTMF válido Luego de lo anterior, el microcon-trolador sólo debe leer el dato que está presente en sus pines RB3 a RBO, el cual corresponde al dígito que se ha recibido. Esta tarea es bastante senci-lía ya que el MT8SL70 posee larch en sus salidas. Por último, el microcon-trolador responde al número 5 para activar el relé de salida, o al número 6 que indi-ca que se debe desactivar. Una carac-terística especial es que utilizamos la memoria EEPROM de datos del P1C16F84 para almacenar el estado que debe tener la carga en un momen-to determinado. En la figura 4 se muestra el listado del programa. A continuación se muestra el programa utilizado para el microcontrolador: include <p16f84a.inc> __config _XT_OSC & _WDT_OFF & _PWRTE_ON status equ 03h ptoa equ 05h ptob equ 06h loops equ 0dh loops2 equ 0eh control equ 0fh dato equ 10h conta1 equ 11h conta2 equ 12h 5 trisa equ 85h trisb equ 86h z equ 02h c equ 00h w equ 00h r equ 01h eedata equ 85h eeadr equ 09h eecon1 equ 88h eecon2 equ 89h eeif equ 04h wrerr equ 03h wren equ 02h wr equ 01h rd equ 00h org 00 goto inicio retarms movwf loops top2 movlw D'110' movwf loops2 top nop nop nop nop clrwdt nop 6 decfsz loops2 goto top decfsz loops goto top2 return leer bsf status,5 bsf eecon1,rd bcf status,5 movf eedata,w return escrib bsf status,5 bsf eecon1,wren bcf eecon1,eeif movlw 055h movwf eecon2 movlw 0aah movwf eecon2 bsf eecon1,wr espera clrwdt btfss eecon1,eeif goto espera bcf eecon1,eeif bcf eecon1,wren bcf status,5 return ;PROGRAMA PIRNCIPAL 7 inicio bsf status,5 movlw 0fbh movwf trisa movlw 0bfh movwf trisb bcf status,5 bcf ptob,6 bcf ptoa,2 movlw d'50' call retarms prueba clrf eeadr call leer movwf control btfsc control,0 goto activa bcf ptob,6 goto prue2 activa bsf ptob,6 prue2 btfss ptoa,3 goto prueba tempo bsf ptoa,2 movlw d'40' movwf conta1 ciclo1 movlw d'250' movwf conta2 ciclo2 movlw 01 8 call retarms btfsc ptob,4 goto DTMF decfsz conta2,r goto ciclo2 decfsz conta1,r goto ciclo1 bcf ptoa,2 goto inicio DTMF movf ptob,w andlw 0fh movwf dato xorlw 05h btfss status,z goto guarda apaga movf dato,w xorlw 06h btfss status,z goto ciclo2 bcf control,0 guarda clrf eeadr movf control,w movwf eedata call escrib movlw d'50' call retarms 9 btfsc control,0 goto acti1 bcf ptob,6 goto sale acti1 bsf ptob,6 sale goto ciclo2 org 2100h de 00 end CONCLUSIONES El potencial del presente proyecto es muy grande, como dijimos a lo largo del informe, el uso de un microcontrolador hace que el sistema sea muy versátil y simple. Si bien el sistema tiene como única medida de seguridad los 10 segundos de tiempo en donde se puede activar o desactivar la carga en cuestión, perfectamente se puede implementar un control de acceso al sistema, ya sea una contraseña de ingreso por ejemplo Un sistema realmente eficaz correspondería a que este mandase respuestas al usuario, por ejemplo, que informase cuando la carga fuese activada o desactivada efectivamente, en este proyecto no se realizó por razones de costos. Uno de los circuitos cruciales, obviamente aparte del microcontrolador, que en el fondo es el corazón del proyecto, fue también el codificador de tonos de la línea telefónica ya que sin él la circuitería hubiese sido de un tamaño muy superior dado que se hubiesen tenido que diseñar sistemas de filtros digitales para poder obtener cada tono. Este pequeño pero potente circuito es la base para realizar sistemas realmente complejos, como también para darle un uso anexo a la línea telefónica. BIBLIOGRAFIA Electrónica y computadores CEKIT Nºs 52 y 53 www.microchip.com www.CDMA.com INDICE INTRODUCCIÓN 10 OBJETIVOS CONTROL A DISTANCIA DE APARATOS A TRAVÉS DE LA LÍNEA TELEFÓNICA FUNCIONAMIENTO DEL SISTEMA DE SEÑALIZACIÓN DTMF EL CM8870 EXPLICACIÓN DEL CIRCUITO Detector de la señal de timbre Decodificador de tonos. Circuito de control. Simulación del teléfono descolgado. Conexión de la carga Fuente de alimentación OPERACIÓN CONSTRUCCIÓN Y ENSAMBLE PRUEBA DEL CIRCUITO PROGRAMA DEL MICROCONTROLADOR CONCLUSIONES BIBLIOGRAFIA 11