detectorderingypruebas1-12.
-
Upload
leidy-diaz -
Category
Documents
-
view
43 -
download
2
Transcript of detectorderingypruebas1-12.
DIAGRAMA EN BLOQUES
Para explicar el funcionamiento a través del diagrama en bloques, supongamos que el usuario esta interesado en cometer una acción de encendido-apagado sobre las cargas controladas por medio de este mando, para ello se realiza una llamada telefónica al número de abonado al cual se conecto el control de cargas, el primer bloque, “Detector de ring”, se encarga de detectar la señal de 75v Ef. y 25Hz que introduce la central en la línea telefónica y la transforma en pulsos de nivel TTL que a su vez son enviados al “Microcontrolador PIC”, este luego de recibir una cantidad de pulsos preestablecido, por medio de uno de sus puertos coloca en nivel alto TTL a otro pin de un puerto con el fin de activar el “Simulador de horquilla descolgada”, quién se encarga de contestar la llamada cargando la línea con una impedancia de 560 ohms aproximadamente. Enseguida el PIC carga con un tono que se introduce en la línea a modo de confirmación para el usuario, este paso se repite también cada vez que el usuario realiza un cambio en el estado de las cargas. Ahora el control esta listo para recibir los códigos enviados por el usuario para cometer las diferentes acciones, estos códigos se transmiten a través de la línea telefónica como tonos de multifrecuencia DTMF. El bloque “Decodificador de DTMF” se encarga de detectar y convertir estos códigos de DTMF a binario para que el PIC los pueda identificar, luego este último cambia o no los niveles de los puertos que controlan las cargas según lo indiquen los códigos, teniendo en medio una etapa de “Interfase de potencia”, la cual se encarga de conectar o desconectar las cargas a sus fuentes de tensión y/o corriente correspondientes, dependiendo del nivel de los puertos de control. Luego que el usuario realiza los cambios convenientes debe transmitir el código de finalización, el cuál cumple el mismo proceso anterior desde el bloque “Decodificador de DTMF”, solo que el PIC ahora no cambia los niveles de los puertos de control de cargas, sino que pasa a nivel bajo el puerto que controla el “Simulador de horquilla descolgada” cortando así la comunicación.
1 - Detector de Timbre
LINEA TELEFÓNICA
DETECTOR DE RING
DECODIFICADOR DE DTMF
SIMULADOR DE HORQUILLA DESCOLGADA
MICROCONTROLADOR PIC
U3
NE555
OUT3
RST4
VCC8
CV5
TRG2 THR
6
DSCHG7R1
2k2
12
R610K
12
R847k
12
C1
1uFx250V
1 2
VDD
D61n4148
R1212k
12
+ C710uF
GND
R13
2k2
1 2
VDD+ C5
100uFVDD
GND
R1410k
12
Q1BC327
VDD
GND
ISO16N139
C810nF
12
GND
GND
GND
U2
WS2418
RING1
TIP8
SRCC
3
OFQC
R4
Out5Vo
ltAdJ
6
RectCap7
C6100nF
12
GND
GND
entrada
linea telefonica
RB0
Este módulo es el responsable de acondicionar la señal de timbre presente en la línea telefónica, su función es la de mantener un nivel lógico TTL alto cuando esta señal se encuentra presente en la línea. Este proceso se basa en un circuito integrado WS2418 que detecta el timbre telefónico. Se ha optado por utilizar dicho componente debido a que posee un sistema de protección contra el ruido y variación de las señales telefónicas que pueden afectar el correcto funcionamiento del sistema. Además ya contiene un rectificador puente de diodo de onda completa de alta tensión y un diodo zener interno que lo protege contra la sobretensión. En la salida de dicho integrado se obtiene una señal bitono de frecuencias de 2300 y 1700 Hz. Esta señal bitonal se aplica a un optoacoplador 6N139 en configuración darlington que tiene la función principal de aislar eléctricamente el sistema de control digital de esta etapa. Esto es necesario ya que a la salida del WS2418 el nivel de tensión está en los 26V. La señal a la salida del optoacoplador varia en frecuencia con la señal bitonal con lo cual se produce un conteo de la cantidad de timbre mayor al esperado.
En un principio se optó por filtrar esta señal de manera de tener un pulso TTL estable pero no cumplió con el objetivo, con lo cual se procedió a colocar un circuito monoestable redisparable. Este genera en su salida un pulso de cierta duración en respuesta a un flanco de disparo aplicado a su entrada. La duración del pulso la determina un circuito RC formado por la resistencia R5 y C6. El transistor Q1 se encarga de resetear al monoestable para que sea redisparable. Es decir que ante cualquier señal de disparo se inicia un nuevo ciclo de temporización, incluso si la señal de disparo se aplica en medio de un ciclo existente.
2 - Simulador de horquilla descolgada.
El circuito básicamente cumple la función de emular que el aparato telefónico ha sido descolgado (horquilla descolgada); para que ocurra esto debe colocarse en paralelo con la línea telefónica un resistor de 470 ohm y así generar la impedancia adecuada que indicará que la horquilla ha sido descolgada.
El transistor Q2 excita la bobina del relé; el interruptor de este que es activado por el inductor controla la resistencia de 560 ohm haciendo así que la resistencia se conecte en paralelo a la línea. O sea, que cuando la entrada TTL IN tenga una tensión de 5V aproximadamente, la central interpretará que se ha descolgado la horquilla.
Los 5V ingresan a la resistencia de 10 Kohm limitando la corriente de polarización de base del transistor excitándolo para que el relé funcione de acuerdo a lo antes mencionado.
Le hemos colocado al circuito un diodo en paralelo con el inductor del relé para así proteger al transistor de los picos de la tensión inversa.
En modo inverso, si en la entrada TTL in hay un potencial de 0 V no se excitará al transistor y tampoco al relé haciendo así que el circuito permanezca en reposo sin afectar la impedancia que detecta la central.
RV1VARISTOR
D11n4148
K1
RELAY DPDT
34
5
68
712
R2470
12
T1
TRANSFORMER 600x600
1 5
4 8
C21uF
12
Q2BC337
D71n4148
GND
R9
10k
1 2
12v
J1
HEADER 4
1234
RB7
de ringdetector
Para que el sistema de control pueda manipular y traducir las señales provenientes de la línea telefónica requiere de un sistema de aislamiento eléctrico para evitar el contacto directo con ésta, ya que la diferencia de potencial, polaridad y sobrecargas pueden causar daños al sistema digital. Para esta función se empleó un transformador de impedancia de 600 ohms en el primario y secundario.
Protección por sobrecarga.
El sistema de control se encuentra permanentemente conectado a la línea telefónica. Esta condición hace necesario el desarrollo de una etapa que prevenga eventuales daños accidentales debidos, principalmente, a fenómenos meteorológicos, ya que estos son la causa de la mayor parte de los estragos en los sistemas que emplean la infraestructura telefónica instalada. Esta etapa es la de protección por sobrecarga.
J1
HEADER 2
12 RV1
VARISTOR
El uso de un varistor puede solucionar este requerimiento en gran medida ya que estos dispositivos reducen su resistencia conforme aumenta el voltaje de ruptura en sus terminales, operan en paralelo con la línea de entrada (figura) y su resistencia va de unos cientos de Kilo ohms hasta varios Mega ohms dependiendo del voltaje de bloqueo para el que estén diseñados; Se ha optado por un varistor que opera a una tensión de bloqueo de 150 voltios el cual dará protección al circuito de detección durante una descarga sostenida no mayor a 2 segundos, suficiente para las producidas por fenómenos meteorológicos que son las causas mas frecuentes de daños al equipo telefónico.
3 – Decodificador de dtmf.
El circuito presenta dos prestaciones básicas, la sencillez y el bajo costo debido a que casi todos los procesos lo realiza el circuito integrado que además utiliza componentes discretos.
El circuito decodifica las teclas del 0 al 9, # y * e incluso las teclas A B C y D que no serán utilizadas.
Las resistencias R3 y R4 junto con el capacitor C3 aíslan la tensión de línea. Para generar la base de tiempo para el integrado se utiliza un cristal de cuarzo de 3,579545MHz.
Una vez que un tono es recibido, decodificado y validado, su valor binario es colocado en los terminales Q1, Q2, Q3 y Q4 lo que hace que el terminal STD cambie a nivel alto indicando la presencia de un dato en la salida. Dicho terminal permanece en estado alto durante el tiempo que el tono DTMF esta presente en el sistema y esto se puede traducir también, como el
tiempo que esta pulsado el teléfono remoto.
R3100k
1 2
R4100k
1 2
R5 390k1 2
C3100nF
1 2
U1
CM8870
IN+1
IN-2
STD15
EST16
ST/GT17
Q111
Q212
Q313
Q414
GS3
VREF4
OSC17
OSC28
TOE10
Y13.57945MHz
PORTB[0..7]
RB0
VDD
C4
100nF
1 2VDD
RB7RB6
RB2RB1
RB3
PORTB[0..7]
RB5RB4
del filtro 600:600 ohm
3 – Pruebas realizada hasta el momento.
Mediante el circuito presentado y el firmware utilizado en el microcontrolador pic se ha realizado lo siguiente:
En primer lugar se realizó la comunicación a través de la línea telefónica y el circuito. Luego del cuarto ring se activó el relé para simular la horquilla descolgada. A continuación se procedió a presionar los números del teclado telefónico con lo cual se encendían 3 leds del puerto E del pic indicando en binario el numero pulsado en el teclado telefónico.
LIST P=PIC16F877A #INCLUDE <P16F877A.INC> ;definiciones del uC __CONFIG _CP_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _XT_OSC & _WRT_HALF &
_LVP_OFF & _CPD_OFF
ERRORLEVEL -306, -302, -307 CBLOCK 0x020 memoria
delay cantrings
auxiliar fin ENDC org 0x00 goto INICIO org 0x04 bcf STATUS,RP0 ;banco 0 bcf STATUS,RP1
btfss INTCON,RBIF ;verifica si hubo cambio en RB4-7goto TEMPORIZADOR ;entonces se desbordo el timer1bcf T1CON,TMR1ON ;apago el timer1movf PORTB,W ;muevo el portb al registro W movwf auxiliar ;De W a una variable auxiliarrrf auxiliar,f ;rotamos un lugar hacia la derechamovf auxiliar,W ;volvemos a ubicarlo en Wandlw B'00001111' ;Borramos el primer nibble
movwf PORTE ;Lo pasamos al PORTERESET_PORT
btfsc PORTB,5 ;esperamos que el pin STD del CM8870goto $-1 ;caiga a cero
RBIF_0 movlw B'01001000' ;volvemos a configurar movwf INTCON ;las interrupciones y flagsbtfsc INTCON,RBIF ;si RBIF no se borro entoncesgoto RBIF_0 ;volvemos a configurar las interrupciones y flagsbsf T1CON,TMR1ON ;volvemos a iniciar el timer1
bsf INTCON,GIE ;activamos la interrupcion global return ;salimos de la interrupcion
TEMPORIZADOR decfsz delay,f ;decrementa una vez y sigoto RESET_TEMP ;delay es cero entonces bsf fin,0 ;activamos el flag para desconectarnos de la lineabcf T1CON,TMR1ON ;apagamos el timer1clrf INTCON ;desconectamos las interrupcionesreturn ;salimos de la interrupcion
RESET_TEMPbcf PIR1,TMR1IF ;borramos el flag del timer1 por desbordamientobtfsc PIR1,TMR1IF ;si el flag sigue a 1 entoncesgoto RESET_TEMP ;volvemos a borrarlo nuevamentebsf INTCON,GIE ;activamos la interrupcion global
return ;salimos de la interrupcion
INICIO bcf STATUS,RP0 ;banco 0
bcf STATUS,RP1clrf PORTE ;latch porte=0movlw 0x04 ;cantidad de ringsmovwf cantrings ;antes de atender el telefonomovlw 0x3Fmovwf delaymovlw B'00000000' ;latch portB=0movwf PORTBclrf finclrf PIR1 ;todos los flags a 0bsf STATUS,RP0 ;banco 1movlw B'00000110' ;configuro PORTE Y PORTA comomovwf ADCON1 ;I/O digitalmovlw 0x00 ;movwf TRISA ;configuro PORTA como salidamovwf TRISC ;IDEM PORTCmovwf TRISD ;IDEM PORTDmovwf TRISE ;IDEM PORTEmovlw B'00111111' ;RB6 Y RB7 como salidamovwf TRISB ;y RB0-5 como entradamovlw 0x01 ;permiso de interrupcion paramovwf PIE1 ;el timer1 por overflowbcf STATUS,RP0 ;banco 0
bcf STATUS,RP1clrf TMR1H ;valores iniciales del timer1 TMR1Hclrf TMR1L ;IDEM TMR1L
movlw B'00110100' ;predivisor 1:8, clock interno. movwf T1CON
movlw B'11001000' ;permiso global de interrupciones y permiso de perifericosmovwf INTCON ;que no se controlan por INTCON y permiso por cambio en RB4-
7VERIF1 btfss PORTB,0 ;verifico si esta a 1
goto $-1 ;debido a un ringbsf PORTE,0 ;enciende led0
VERIF2 btfsc PORTB,0 ;verifica si desaparecio ringgoto $-1bcf PORTE,0 ;se apaga el led0
decfsz cantrings,f ;decrementa la cantidad de ringgoto VERIF1 ;si no es cero salta a VERIFI1bsf T1CON,0 ;inicio el conteo del timer1bsf PORTB,7 ;RELE DE SALIDA ACTIVADO para contestar
VERIF3 btfss fin,0goto $-1bcf PORTB,7 ;Desactiva el rele y salimos.
SALIR nopEND