Está en la página 1de 6

Control de Cargas

J. A. Prez, Senior Member, IEEE, M. Ortiz, Non Member, IEEE, y A. Lpez, Student Member, IEEE
II. PROTOCOLO X10. El X10 es un protocolo estndar de comunicacin, es decir transmisin y recepcin de informacin que funciona a travs del cableado elctrico convencional. Mediante este protocolo se pueden interconectar dispositivos compatibles con X10 creando una red de dispositivos [2]. Para realizar la transmisin de datos se utilizan seales de radiofrecuencia a 120 kHz (Seal Modulada), las cuales son inyectadas en la red elctrica, sincronizndolas con los cruces por cero de la seal de 60 Hz (Seal Portadora). La informacin se transmite a travs de un lenguaje binario, es decir, 0 y 1, contenidos en la seal modulada. Para enviar el 1 binario es necesario inyectar una rfaga de 120 kHz durante 1 milisegundo precisamente despus del cruce por cero de la seal de voltaje de CA. Mientras que un 0 es identificado por la ausencia de la seal de 120 kHz. En la Fig. 1 se muestra grficamente lo comentado con anterioridad.
V
SEAL PORTADORA (120v-60Hz)

Resumen Este documento muestra la manera en la que se envan datos a travs de la red elctrica de una vivienda mediante un dispositivo emisor. La finalidad de este proyecto es controlar una carga elctrica de dicha zona habitacional utilizando los principios de las Tecnologas X10, por lo que se disear un dispositivo capaz de llevar a cabo lo antes mencionado. Habiendo diseado el prototipo emisor, se realizan algunas pruebas en el laboratorio as como en una vivienda convencional para comprobar y verificar su funcionamiento.
Temas claves Protocolo Domtica, PIC 16F877A. X10, Microcontroladores,

I. INTRODUCCIN a tecnologa X10 tuvo su origen en el ao de 1975 dentro de la compaa Pico Electronics. En su inicio, esta compaa dedic su investigacin al desarrollo e implementacin de los circuitos integrados, investigacin que posteriormente se introdujo en la evolucin de distintos trabajos denominados Proyectos X. El X9, creado en 1974, consista en el desarrollo de un dispositivo cambiador de registros controlado a distancia mediante seales ultrasnicas generadas por un control remoto. Fue as que en el ao de 1975, surge el concepto de usar el cableado de corriente alterna existente para transmitir seales para controlar a distancia luces y aparatos electrodomsticos. Para el ao de 1978, se crean los primeros mdulos del protocolo y comienzan a comercializarse a travs de las tiendas de Radio Shack con el nombre de X10 BSR. El sistema estaba conformado por una consola de comando de 16 canales, un mdulo Lmpara, y un mdulo Aparato. Posteriormente apareci el mdulo Interruptor de pared y el primer temporizador X10. Con el paso del tiempo estas tecnologas han ido evolucionando adquiriendo nuevas caractersticas. Hoy en da, existe una amplia gama de equipos que implementan el protocolo X10, desde interruptores para iluminacin a completos paneles de control, control por voz, emisores y receptores de radiofrecuencias, sensores de movimiento e incluso cmaras [1], [2].

t
1 ms
SEAL MODULADA (120 kHz)

Fig. 1. Transmisin de Datos Mediante Protocolo X10.

Para enviar un cdigo X10 a travs de la red elctrica, la informacin debe de estar codificada con el formato que se muestra en la Tabla I.
TABLA I. ESTRCUTURA DEL CODIGO X10.

Tres ciclos sin datos. 3 ciclos = 6 bits

Cdigo de Inicio 2 ciclos = 4 bits

Cdigo de Casa 4 ciclos = 8 bits

Cdigo de direccin/ funcin 5 ciclos = 10 bits

Incluir filiacin en este prrafo: J. A. Prez labora en la Universidad del Sur, Av. Universidad 1200, etc. (e-mail: j.a.perez@unsur.edu.mx). M. Ortz labora en el departamento de Desarrollo,... (email: m.ortiz@hotmail.com) A. Lpez labora con la Compaa de GES, Mxico DF, 52180, etc (email: a.lopez@ieee.org).

A. Tres ciclos vacios. El punto de partida para toda estructura X10, siempre comienza con seis Cruces por Cero sin pulsos, es decir, sin transmitir datos a la red. El motivo de estos seis pasos por cero, es el de permitir que los controladores de cada uno de los dispositivos, sean capaces de vaciar sus contadores y memorias, de cualquier dato que no est grabado permanentemente [2]. B. Cdigo de Inicio (Start Code). Inmediatamente despus de que han transcurrido los tres ciclos, se enva un encabezado que es el Cdigo de Inicio. El

valor que tomar el encabezado siempre ser una constante, ser el valor 1110 y este cdigo se enva en 2 ciclos de la seal portadora [2]. C. Cdigo de Casa (House Code). Los cdigos de casa (House Code) permiten configurar los dispositivos transmisores para enviar seales a los receptores ubicados en distintas localizaciones. Las unidades se identifican con las primeras 16 letras del abecedario, desde la A hasta la P. Los cdigos de casa se envan balanceados, o en otras palabras en complemento, es decir, que cada bit se enva en un periodo completo de la onda senoidal (20ms). En el primer periodo va el bit, y en el segundo la inversa de ese bit. Por ejemplo, para enviar el 1 se enva un 1 en el primer medio ciclo y un 0 en el segundo medio ciclo; para enviar el 0 se enva un 0 en el primer medio ciclo y un 1 en el segundo medio ciclo. ste concepto se puede analizar en la Fig. 1.2 [2].

de cruce por cero conformado por un transformador reductor, una resistencia para la proteccin de corriente y la terminal RB0 del microcontrolador, la cual tiene la caracterstica de detectar interrupciones externas independientemente del tipo de flanco. Para acoplar la seal generada por el microcontrolador con la red es necesario un filtro pasivo pasaaltas que presente baja impedancia para seales PWM y una alta impedancia para la frecuencia de la red elctrica.
ALIMENTACION DEL PIC ( 5V DC)

HABILITA INTERRPCIONES DETECTOR DE CRUCE POR CERO HABILITA PWM

HABILITA TIMER 0

120 V AC

PIC 16F877A

PULSO DE 1 ms CONFIGURA ENVIO DE SEAL

ACOPLAMIENTO DE SEAL

120 V AC

Fig. 3. Diagrama de Bloques del prototipo.

Fig. 2. Cdigo de casa (House Code).

D. Cdigo de Clave (Key Code). Una transmisin X10 completa consta de cuatro bloques de datos completos, es decir, cuatro veces el envi de cdigo de inicio, cdigo de casa, cdigo de direccin/funcin. En las primeras dos transmisiones el cdigo clave tomar la funcin de direccin. En esta funcin, el cdigo definir a que dispositivo de la red va dirigida la funcin asignada, ya que una red X10 puede llegar a tener hasta 16 dispositivos. Posteriormente, en las ltimas dos transmisiones, el cdigo clave tomar la accin de funcin, esto debido a que especificar qu accin realizar el dispositivo seleccionado anteriormente. Para el cdigo clave se envan 10 bits ocupando 5 ciclos de la seal de voltaje de CA. El ltimo bit del cdigo clave, denominado sufijo, indicar si ste ser de direccin o de funcin. La combinacin se muestra en la Tabla II [2].
TABLA II. COMBINACIN DE CDIGO PARA SUFIJO.

A. Detector de Cruce por Cero. Para detectar los Cruces por Cero de la corriente alterna es necesario lograr un acoplamiento entre el PIC y la red elctrica, esto se logra mediante un transformador reductor y una resistencia conectada entre la red elctrica y el PIC. El transformador tiene como funcin reducir el voltaje y la resistencia es para limitar la corriente, ya que de lo contrario la corriente podra daar el circuito interno del microcontrolador. La resistencia es conectada al PIC en el Pin RB0, este pin puede ser configurado como entrada o salida digital y en modo de interrupcin externa. Es importante mencionar que la simplicidad de este detector de cruce por cero se debe a la proteccin interna de la terminal RB0, la cual tiene un recortador que permite el manejo de voltajes de CA mayores a 5 volts. La Fig. 4 muestra el circuito del detector de cruce por cero.
R1 1:10

RB0/INT PIC 16F877A Vss

+ 120V

Fig. 4. Circuito del Detector de Cruce por Cero.

Sufijo

= 01 = 0 Direccin = 10 = 1 Funcin

III. DISEO DEL PROTOTIPO TRANSMISOR. Para lograr el funcionamiento del prototipo es necesario que operaren en conjunto varios componentes los cuales son: Fuente de voltaje del microcontrolador. Detector de cruce por cero. Microcontrolador. Acoplamiento de seal PWM a la corriente de CA. Los componentes mencionados anteriormente se muestran en la Fig. 3. La red elctrica de CA es necesaria para alimentar el microcontrolador y como referencia para el envo de los datos a travs de la red elctrica. El envo de los datos se realiza en cada cruce por cero, lo cual se obtiene a partir de un detector

B. Implementacin de la Seal Modulada. Para hacer el acoplamiento de la seal de 120 KHz en la red elctrica es necesario utilizar un transistor y un filtro pasa altas. El transistor se utiliza como interruptor debido a que la seal que lo alimenta por la base proporciona la referencia para que ste abra o cierre, concretamente la funcin del transistor es proteger al PIC ya que el microcontrolador no se expone directamente al voltaje de acoplamiento. Por su parte, los diodos Zener implementados en esa rea del circuito tienen la funcin de mantener un voltaje constante de 6.8 volts de CD. Para el acoplamiento de las seales es necesario implementar el filtro de tal forma que de un lado se encuentre la seal modulada y del otro lado est la seal de CA. El filtro para cada una de las seales se comporta de diferente manera debido a que la impedancia para cada una de las seales es distinta. Debido a esto, la impedancia para la seal de 120 KHz es muy baja y para la seal de 60Hz la impedancia es muy alta, de esta forma podemos acoplar dichas seales. El circuito para

el acoplamiento de la seal modulada se presenta en la Figura 3.3.


5V CD

INICIO

INICIALIZ A PUERTO D
C3 + CA

C 1

PIC 16F877A OSC 1

R2 R3 D1 Q1 D 2

Q2 OSC2 C2

RC2

INICIALIZ A VARIABLES

R4

INCIALIZ PWM A

Fig. 5. Circuito de acoplamiento de la seal modulada.

INICIALIZ A ELTMR0 INICIALIZ EL A DETECTORDE CRUCEPORCERO HABILITA INTERRUPCIONES

IV. SOFTWARE DEL DISPOSITIVO. Para lograr el correcto funcionamiento de todos los elementos, es necesario desarrollar un programa el cual configure cada registro del microcontrolador y poder obtener los pulsos para transmitir datos mediante el protocolo X10. Para llevar a cabo dicha tarea es conveniente describir cada etapa en forma de subrutina para as simplificar el entendimiento del programa, en la Fig. 6 se muestra cada una del las etapas del programa. A. Inicializacin del Puerto D. El cdigo de apagado o encendido del dispositivo ser seleccionado por el pin RD1 del microcontrolador, para ello es necesario que ste sea configurado como entrada, esto se hace modificando el registro TRISD que se encuentra en el banco 1, para configurar como entrada es necesario poner en alto la bandera que representa este bit. Para determinar el envo de encendido es necesario poner en alto el pin RD1, es decir, poner en 1, y de forma contraria para enviar el cdigo de apagar se pone en 0.

PREGUNTA SI EXISTE INTERRUPCION

SI

ENCENDER (RD1= 1) NO SEHA CONFIGURADO ELENVIO? NO CONFIGURA CODIGO DE ENCENDER

CHECA ELPIN RD 1

APAGAR (RD 0) 1=

SI

SI

SEHA CONFIGURADO ELENVIO? NO CONFIGURA CODIGO DEAPAGAR

ENVIO DECODIGO

Fig. 6. Diagrama de flujo del prototipo.

B. Inicializacin de Variables. Despus de la configuracin principal del PIC se definieron variables la cuales son usadas para cargar los cdigos de envo y de igual forma para la utilizacin de los Timers, entre otras cosas. Esta subrutina es la encargada de borrar los datos cargados en estas variables, siempre y cuando sta sea llamada. C. Inicializacin de PWM. El dispositivo requiere una seal modulada de 120 KHz para transmitir la informacin a travs de la red y posteriormente acoplarla a la red elctrica por medio de un filtro pasa-altas. El mtodo de modulacin por ancho de pulso (PWM), est basado en la obtencin de un voltaje DC variable a partir de una onda rectangular de frecuencia constante y ciclo til variable [3]. Para analizar a detalle la inicializacin de la seal PWM, dirjase al documento: Control de Cargas en Unidades Habitacionales Preservando la Instalacin Elctrica Existente Mediante Microcontroladores.

D. Inicializa del Timer 0. El Timer 0 es un contador, o en su caso tambin puede funcionar como Temporizador. Su funcin depender de la forma en la que se le inyecten los pulsos. Su funcionamiento general consiste en un contador ascendente o descendente, al cual se le asigna un valor inicial, que se incrementa con cada pulso de entrada hasta que llega a su valor mximo. Cuando se llega a tal punto el contador se desborda y procede reiniciar la cuenta desde cero. Para habilitar la seal PWM es necesario cumplir con los siguientes pasos, configurando los registros que a continuacin se presentan: 1. Para determinar el periodo PWM es necesario escribir al registro PR2, 2. Seleccionar el ciclo de trabajo de la modulacin de la seal de 120 KHz, esta se logra escribiendo los registros CCPR1L y CCP1CON, este ltimo solo escribiendo los bits 5 y 4. 3. Configurar como salida el pin CCP1, poniendo como salida el pin RC2. 4. Configurar el preescalador del TMR2 y habilitando el TMR2, escribiendo el registro T2CON. 5. Configurar el modulo CCP1 para operacin PWM. E. Configuracin de Interrupciones. Una vez que se ha configurado la frecuencia y el tiempo de la seal que ser enviada por medio de la red elctrica, es necesario habilitar las interrupciones las cuales se utilizaran para enviar dicha seal, esta ser activada en cada cruce por cero, como se configuro anteriormente la interrupcin se llevar de manera externa mediante el pin RB0. A continuacin se presentar la configuracin de los bits de los registros correspondientes para lograr que las interrupciones se tengan de manera simultnea que los cruces por cero: 1. Poner en 1 el bit GIE del registro INCONT la cual es la bandera de habilitacin global. 2. Posteriormente, se activa cualquier clase de interrupcin mediante el bit PEIE = 1. 3. Habilita la interrupcin externa por pin RB0 poniendo en 1 el bit INTE del registro INTCON. 4. Establecer en flanco ascendente mediante el bit INTEDG=1 del registro OPTION. F. Configuracin y Envo del Cdigo. Una vez que se han inicializado todas las etapas anteriores, el microcontrolador es gobernado por las interrupciones que se generan en el transcurso del programa. Cuando ocurre alguna de las interrupciones, el PIC verifica el estado del Pin RD1. Si ste es igual a 1, significa que se ha elegido el cdigo para encender el dispositivo controlado. Mientras que, si su valor es igual a 0, se ha elegido el cdigo para apagar dicho artefacto. Para configurar la seal que ser enviada a travs de la red elctrica, es necesario llevar a cabo una serie de pasos los cuales son mostrados con el ejemplo siguiente: 1. Para enviar el cdigo de direccin es necesario escribir algunas variables, (son definidas al principio de la programacin); estas variables quedan escritas como se muestra en la Fig. 7.

C STATUS 0 3 0 4 TX_INICIO TX_CAS A 2 1 TX_FUNCION TX_S UF

Fig. 7. Configuracin del cdigo de Direccin.

2. Para que el cdigo quede en posicin de envo es


necesario hacer 4 rotaciones hacia la izquierda en cada una de las variables mencionadas, quedando como se muestra en la Fig. 8, de esta forma los bits estn en posicin de envi. El bit C del registro STATUS guarda el valor del ltimo bit de cada variable, para que este siga la secuencia de rotacin y vuelva a ser cargado en el primer bit de la variable como se muestra en la Fig. 7.
C S TATUS 0
0 1

TX_INIC IO TX_C A AS TX_FUNCION TX_S UF

Fig. 8. Cdigo Encender preparado para su envo.

3. En cada cruce por cero se enva un dato de los almacenados en las variables que se mencionaron anteriormente, rotando estos un lugar hacia la izquierda. Se emplean 22 cruces por cero para enviar la primera rfaga de datos y por consiguiente, las variables quedan con la siguiente informacin.
C STATUS 0 TX_INICIO TX_CAS A TX_FUNCION TX_SUF

Fig. 9. Valores de los Bits despus de haberse enviado el Cdigo de Direccin.

4. Para enviar nuevamente el cdigo de la direccin es


necesario rotar los bits 10 lugares hacia la izquierda quedando como en la Fig. 10.
C S TATUS 0
0 1

TX_INICIO TX_C A AS TX_FUNC ION TX_S UF

Fig. 10. Reacomodo del Cdigo "Encender".

5. Para lograr los tres ciclos en los cuales no contenga


envo de datos, es necesario emplear 28 cruces por cero (lo cual significa 28 interrupciones) para que de esta forma se obtengan los ciclos mencionados. Una vez completado el envo se procede a cargar el cdigo que contenga la accin de encender (Inicio-CasaFuncin), las variables quedan como se muestra en la Fig. 11.
C STATUS 0 3 0 4 TX_INICIO TX_CAS A 2 1 TX_FUNCION TX_SUF

Fig. 13. Medicin de la Seal PWM.

Fig. 11. Configuracin del Cdigo de Funcin.

En la Fig. 14 se puede observar como los pulsos de la seal de 120 kHz son transmitidos en cada cruce por cero. Esto demuestra que las seales s estn sincronizadas para el envo de informacin.

Para enviar el cdigo que contiene la funcin es necesario utilizar el mismo procedimiento que se menciono anteriormente, la nica diferencia son los datos de la direccin y funcin. V.
RESULTADOS .

Conectando todos los elementos del hardware, se obtiene un circuito como se muestra en la Figura 4.1 Posteriormente este circuito se transporta a una placa fenlica para obtener un producto terminado con un mejor aspecto esttico.
R5

Fig. 14. Medicin de la Seal Modulada sincronizada con la Seal PWM.

5 V CD

Alimentacin de PIC Circuito oscilador Salida de seal modulada


S1 C2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21

S IMBOLOGA

Detector de Cruce por Cero

RESISTENCIA . CAPACITOR CRISTAL DE CUARZO

R1

1:10

+
120 V

D O IOD INTERRUPTOR COLA DE RATA TRANSISTOR


CA

ALIMENTACIN DE CA TIERRA ALIMENTACIN DE CD

En la Fig. 15 se demuestra que la seal modulada se encuentra montada sobre la seal de 60 Hz. Se observa un pequeo rizado lo cual representa los pulsos de la seal de 120kHz. Si se observa mas a detalle como se ve en la Fig. 16 se observa que el rizado pertenece a la seal de 120 kHz. En el canal 1 se estn midiendo los pulsos en el Pin RC2 mientras que la medicin del canal 2 se obtiene en el primario del transformador.

PIC 16F877A PIC 16F877A

C3
5 V CD

R4

R2 R6 R3 Q1 D1 D2

Circuito de Acoplamiento

F1

Selector de codigo

Fig. 12. Circuito del Transmisor Diseado.

Fig. 15. Acoplamiento de la Seal Modulada sobre la Seal Portadora.

A. Mediciones. La Fig. 13 muestra la medicin que se realiz en el Pin RC2 que fue configurado como salida para que fuera transmitida la seal PWM. Se puede analizar que la seal PWM tiene un tiempo de trabajo del 50%. Adems se observa que la frecuencia medida es cercana a 119.768 kHz la cual se acerca al valor requerido de 120 kHz.

VI. CONCLUSIONES. De acuerdo a los resultados obtenidos a lo largo de este proyecto se puede dar cuenta que es posible tener una comunicacin entre usuario y mquina, esto con el fin de tener un control preciso de los dispositivos que se encuentran en el hogar. Con las pruebas que se llevaron a cabo durante la realizacin de este proyecto, se demostr que existe una comunicacin entre el transmisor diseado y la red elctrica. Se logr el diseo de un Dispositivo Transmisor capaz de comunicarse con otros dispositivos mediante los conductores de la red elctrica; al mismo tiempo que se comprendi el funcionamiento del protocolo X10, con el cual se lleva a cabo dicha comunicacin. Concretamente, las pruebas realizadas en el laboratorio tambin confirman el ptimo desempeo del dispositivo transmisor diseado, pudiendo as controlar y automatizar una carga elctrica de una vivienda. El decir que se tiene Control significa tener beneficios dentro un espacio habitacional como por ejemplo seguridad, confort y una mejor calidad de vida, obteniendo los beneficios antes mencionados sin alterar la instalacin ya existente y sin hacer cambios en la vivienda, lo cual representa una inversin inicial baja debido a que la mayora de las viviendas cuentan con los servicios bsicos, y en este caso la red elctrica es tomada como herramienta principal para el envo de la informacin. VII. REFERENCIAS.
[1] R. Morgado A. (no date). Anteproyecto de memoria para optar al ttulo de Ing. En Computacin. [En lnea]. Disponible en: http://www.domoticachile.org/index.php? option=com_docman&task=doc_details&gid=3&Itemid=57 [2] B. L. Renzo, P. Guarda y J.P. Salazar. (Octubre, 2004) Automatizacin del hogar usando el protocolo de comunicacin x10. Valdivia, Chile. [en lnea]. Disponible en: www.domoticachile.org/index.php?option=com_docman [3] Manual de Microcontroladores PIC. [En lnea] Disponible en: http://lc.fie.umich.mx/~jrincon/manual%20PICs%20Ruddy.pdf

Fig. 16. Acoplamiento de la Seal PWM.

En el laboratorio se realizaron algunas pruebas de funcionalidad, observando que el dispositivo se desempea correctamente tal y como se muestra en la Fig. 17 y Fig. 18.

Fig. 17. Inyeccin y Recepcin de las Seales X10.

Fig. 18. Inyeccin y Recepcin de las Seales X10.

Otra prueba que se realiz con el dispositivo Transmisor fue en una vivienda convencional. En esta prueba se analiz el comportamiento del dispositivo y de las seales transmitidas y recibidas en diferentes puntos de la vivienda. Es importante mencionar que en el circuito de la vivienda se tienen conectados distintos electrodomsticos lo que significan cargas inductivas, lo que por lo tanto representara ruido en la red elctrica de la vivienda. A pesar de las condiciones del circuito el dispositivo tuvo un correcto desempeo en el control de varios electrodomsticos.

También podría gustarte