Vous êtes sur la page 1sur 7

Sistelm electronic & Ca. Ltda.

NIT. 900 178 994-5

Control de potencia modular para PC


Hola a todos este proyecto es de mucha necesidad. La idea es controlar varias salidas de potencia (ya sean reles o triacs) desde una computadora con el programa apropiado y por medio del puerto serie RS232. La idea de utilizar el puerto serie responde a varios factores claves:

Siempre hay al menos uno libre en la PC Con solo dos cables alcanza para la interconexin Permite mayores distancias Es mucho mas simple la electrnica y mas reducidos los circuitos impresos Requiere muchas menos lneas de E/S en el C

Estas son las que se me ocurren en este momento, pero cuando me decid por serie tenia muchas mas en mente. La edad....... Bueno, siguiendo con el proyecto la idea es encadenar varios mdulos de manera tal de lograr la cantidad de salidas deseadas y permitir en un futuro expandir el sistema sin apagarlo y sin modificar la estructura inicial del mismo. Algo como lo que se ve en el diagrama de abajo:

Aqu, hay una PC que maneja todo por medio de su salida serie la cual entra al primer mdulo. Este amplifica la seal de entrada RS232 permitindole alcanzar mayores distancias y la enva tal como entra por un lado al microcontrolador del mdulo y por otro lado a la entrada del siguiente mdulo, que hace exactamente lo mismo que ste. Por lo que tengo entendido entre mdulo y mdulo puede haber hasta 25 metros de distancia, aunque esta se puede ampliar utilizando repetidoras
----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda.


NIT. 900 178 994-5

RS232 que son muy fciles de conseguir en el mercado o, de ltima, se pueden hacer con integrados MAX232. Cada mdulo tiene una direccin de 8 bits que lo identifica del resto. Esta direccin est guardada en la memoria EEPROM del C y es posible cambiarla desde el programa que corre en la computadora. Para ello se pens en una llave de seguridad que habilite la escritura de la clave. Algo que le da mas seguridad al sistema y evita programaciones inapropiadas. En el diagrama de abajo se aprecia una idea del esquema al cual he llegado hasta el momento:

El RS232 convertido en TTL entra al micro por uno de los pines del puerto A. Dos pines de este mismo puerto se emplean para censar los interruptores. Uno de ellos es el que se comento arriba, para permitir al programa de la PC modificar el cdigo del mdulo. El otro interruptor se pens para colocarle una llave tipo cerradura la cual, al activarse abre todos los reles o triacs de la salida sin importar el estado en que se encuentren las salidas. Esto es por si un tcnico necesita cambiar algo en la instalacin que parte de esas salidas y desea cortar el suministro. Por mas que el programa le indique al mdulo encender las salidas stas permanecern en estado apagado hasta que se retire la llave de seguridad. EL tanto el LED y el zumbador son para sealizacin. El puerto B completo del micro sale hacia un buffer de corriente ULN2803A que permite manejar directamente las bobinas de los reles o los optoacopladores que seguidamente controlaran los triacs. Esto es a eleccin del armador. Hay solo cuatro operaciones que se pueden realizar: 1. Inicializar el sistema completo. Esto es poner todas las salidas de todos los mdulos en apagado. Y se logra enviando por el puerto serie la siguiente secuencia: 0Fh FFh F0h.

----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda.


NIT. 900 178 994-5

2. Controlar las salidas de determinado mdulo. Esto se logra enviando por el puerto serie tres palabras. La primera de ellas (F1h) indica que se quiere setear las salidas del mdulo que se indica en la siguiente palabra. Por ltimo, la tercer palabra indica el estado que deben adquirir las ocho salidas del mdulo. Y no es mas que una carga directa sobre el puerto B del dato recibido en la tercer palabra, siempre que la segunda palabra sea la misma que la contenida en la EEPROM del mdulo. Esto es para que solo accione el mdulo correspondiente. Abajo se ve bien como es el envo de una secuencia para esta funcin:

3. Establecer direccin del mdulo. Esta funcin requiere que el interruptor de programacin en el mdulo este cerrado. Ni bien el interruptor es accionado el LED se ilumina y el buzzer produce un breve pitido indicando que ha entrado en modo programacin. El sistema queda a la espera de dos palabras, la primera de ellas indica la funcin especfica de programacin (F2h) y la que le sigue indica la direccin que el mdulo debe adoptar. Cuando ambas palabras son recibidas el mdulo guarda en la EEPROM el nuevo cdigo de direccin y tambin hace sonar un pitido largo en el buzzer, indicando que la operacin termin con xito. Luego, el usuario debe abrir nuevamente la llave de programacin lo cual es indicado con el apagado del LED. Abajo se observa como es la trama de datos para esta funcin:

Los dems mdulos, cuando ven en el bus la funcin F2h deben hacer caso omiso a la siguiente palabra para seguir sincronizados. 4. Testear determinado mdulo. Esto es algo as como hacerle un PING al mdulo tras lo cual el buzzer producir tres breves pitidos al tiempo que destella el LED. No afecta el estado de las salidas ni tampoco la direccin del mdulo. Para que esto suceda habr que enviar dos palabras por el bus. La primera conteniendo el cdigo de la funcin (F4h) y la segunda conteniendo la direccin del mdulo, tal como se observa debajo:

----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda. a.


NIT. 900 178 994-5

Actualizacin: 21 AGOSTO de 2006 A continuacin se observa el diagrama electrnico del circuito completo.

El mismo esta compuesto por la fuente de alimentacin que provee los 12V para los rels y los 5V regulados para la electrnica de control. Tambin se aprecia la interface RS232 la cual al mismo tiempo que convierte el dato serie entrante al equipo en TTL lo vuelve a convertir en RS232 a fin de permitir lo continuar otro trecho hacia los siguientes mdulos. El interruptor indicado como Vel. (ubicado en el panel posterior) permite seleccionar si el sistema funcionar a baja velocidad (2400 bps) o a alta velocidad (9600 bps). Otro interruptor (que velocidad tambin debera estar en el panel posterior) permite colocar el mdulo en posicin de programacin. En este estado, el micro espera una palabra por el puerto serie la cual ser adoptada como direccin del mdulo en el bu Luego bus.
----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003 67 3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda.


NIT. 900 178 994-5

de una programacin de direccin la misma queda retenida en la memoria Flash del micro a fin de no perderla ante una desconexin y tambin se emite un sonido de confirmacin. El zumbador posee un interruptor para evitar que el mismo emita sonidos. Esto es til si el sistema funcionar en un sitio de ambiente controlado (donde se requiera silencio). El interruptor indicado como Seg. permite desconectar elctricamente los rels. De esta forma, si se necesita efectuar una modificacin en las salidas y no se quieren correr riesgos se podr hacer independientemente del estado que el equipo presente en el bus. El diodo LED marcado como Act. se ilumina cuando el mdulo es seleccionado y se apaga cuando se completa la operacin efectuada sobre el, por lo que en la prctica solo destellar un instante cuando el mdulo sea accesado.

En la foto se observa el mdulo armado, con sus ocho rels activados.

----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda.


NIT. 900 178 994-5

La fuente del equipo debe poder proveer corriente suficiente para encender los ocho rels simultneamente as como alimentar el circuito lgico. Esto resulta en un consumo aproximado de 1A a plena carga. Por el momento tenemos el firmware funcional pero solo como receptor serie. El mismo recibe un dato por el puerto y lo coloca en los pines del puerto B (acta tal como un receptor serie). Pero en breve vamos a elaborar un firmware totalmente funcional. En tanto el circuito impreso, por el momento tiene muchos errores que hemos corregido de forma precaria (como se ve en la foto de abajo) pero en cuanto tengamos la versin definitiva la vamos a publicar.

;envio de datos del PC al PIC ;2400 - 8N1 status ptoa ptob cfga cfgb r0d r0e conta recep z c equ equ equ equ equ equ equ equ equ equ equ 3h 5h 6h 85h 86h 0dh 0eh 10h 11h 2h 0h ;registro de estados del micro ;puerto a ;puerto b ;registro de config. puerto a ;registro de config. puerto b ;registros de proposito general

;buffer de entrada ;bandera de zero ;bandera de carry

----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Sistelm electronic & Ca. Ltda.


NIT. 900 178 994-5
p w r rx equ equ equ equ org goto org start delay startup redo movlw goto movlw movwF nop nop decfsz goto retlw nop clrf btfss goto call movlw movwf bcf btfss bsf rrf call decfsz goto retlw bsf movlw movwf movlw movwf bcf clrf clrf call movf movwf goto 5h 0h 1h 2h 00h inicio 05h .124 startup .83 r0e ;bit de seleccion de pagina ;para almacenar en w ;para almacenar en el mismo registro ;bit de recepcion de datos en serie ;vector de reset ;salta al comienzo del programa ;saltea el vector de interrupcion ;retardo para generar bit de arranque ;retardo para generar bit de datos ;pierde 12 microsegundos r0e redo 0 ;resta 1 al retardo ;si falta tiempo itera ;si termino retorna limpiando w

recibir

rec rnext

;recibe un byte por RS232 recep ;limpia el buffer de recepcion ptoa,rx ;mira el estado de la linea serie recibir ;si esta inactiva queda a la espera start ;retardo para bit de arranque 8 ;carga cantidad de bits a recibir conta status,c ;limpia el carry ptoa,rx ;mira la linea de recepcion status,c ;si esta en alto sube el carry recep ;rota el buffer de recepcion delay ;retardo entre bits conta ;resta uno a la cant. de bits a recibir rnext ;si faltan bits por recibir itera 0 ;si termino sale y limpia w status,p ;selecciona la pagina 1 de memoria 0ffh ;programa el puerto a como entradas cfga 00h ;programa el puerto b como salidas cfgb status,p ;selecciona la pagina 0 de memoria recep ;limpia el buffer de recepcion ptob ;apaga todas las salidas recibir recep,w ptob ciclo ;queda ;carga ;manda ;itera a la espera de recibir datos en w el dato recibido el dato a las salidas indefinidament

inicio

ciclo

END

----------------------------------------------------------------------------------------------------------------------DIR: Calle 22 # 5-67 Edificio Mixto Oficina 302 Santa Marta (Colombia) TEL: 3015279389-3163132003Mail: sistelm-electronic@hotmail.com

Vous aimerez peut-être aussi