CONTROLADOR PROGRAMABLE PARA MODULADORES PWM P. J. SOTORRÍO y F. D. TRUJILLO Departamento Tecnología Electrónica. Escuela Universitaria Politécnica. Universidad de Málaga. Plaza El Ejido, s/n, 29013 Málaga. España http://www.dte.uma.es Actualmente, la técnica de conmutación PWM está muy extendida en el desarrollo de circuitos inversores de potencia. Este artículo es consecuencia del diseño e implementación de un sistema programable que genera las señales de control necesarias para este tipo de circuitos. Se dota al sistema de una interfaz de usuario de fácil manejo, realizado bajo entorno LabVIEW. Se corrobora el buen funcionamiento del sistema mediante la correspondiente visualización de formas de onda a la salida del inversor y su posterior filtrado para la eliminación de los armónicos generados. El desarrollo de este sistema está orientado a su utilización como apoyo docente con módulos comerciales de potencia. 1. Introducción Los circuitos inversores de potencia son circuitos que convierten la corriente continua en corriente alterna; es decir, transfieren potencia desde una fuente de continua a una carga de alterna. Los inversores se utilizan en aplicaciones tales como el control de motores de alterna de velocidad ajustable, los sistemas de alimentación ininterrumpida (SAI) o los variadores de frecuencia, entre otras. El método más extendido para efectuar el control de los dispositivos semiconductores de un circuito inversor de potencia es la conmutación basada en la modulación por ancho de pulso (PWM, Pulse Width Modulation) [1]. Esta técnica se basa en la comparación entre dos señales: una señal de referencia, que en el caso que aquí se trata es una señal sinusoidal; y una segunda señal, repetitiva, consistente en una señal triangular. Como resultado de dicha comparación, se obtiene una señal cuadrada de ancho de pulsos variable, función de las dos señales de que se cotejan. Dicha señal cuadrada presenta nivel alto si la señal sinusoidal es mayor que la onda triangular (portadora) y nivel bajo, en caso contrario; y es la que se usa como señal de control de los elementos semiconductores del circuito inversor. Dentro de la conmutación basada en técnicas PWM, se contemplan dos posibilidades de funcionamiento: -PWM simple, en la que se realiza la comparación de la señal sinusoidal con la señal triangular y -PWM doble, en la que además de la comparación anterior, se realiza otra comparación entre la señal triangular y la señal sinusoidal invertida. Según esto, la señal de salida, del inversor en puente completo [1], resultante de la conmutación PWM, independientemente del esquema de funcionamiento, es otra señal cuadrada de ancho de pulsos variable. Como señal cuadrada, está formada por una gran cantidad de armónicos, con lo que se hace necesario el uso de un adecuado filtrado, para eliminar dichos armónicos y obtener una señal sinusoidal de potencia de una única frecuencia (alta tensión, alta corriente) como típica señal de salida de un inversor de potencia que ataca a la carga alterna. De los dos esquemas de funcionamiento descritos, la señal de salida del circuito inversor presenta una menor cantidad de armónicos en el caso de usar PWM doble [1], facilitando el filtrado y consiguiendo una señal sinusoidal con mucha menor distorsión armónica. Por este motivo, el esquema de funcionamiento implementado en este trabajo es el PWM doble. Llegados a este punto, los circuitos de control encargados de realizar las comparaciones son sustituidos por un microprocesador que se encarga de generar las correspondientes señales de control, mediante el procedimiento descrito en el apartado 4. A partir de estas señales de control es posible actuar de forma periódica sobre dichos dispositivos consiguiendo la conversión de señal continua, a la entrada del inversor, en señal alterna, a la salida del mismo. El trabajo que se presenta es fruto del estudio, desarrollo e implementación de un sistema programable que genera las señales de control necesarias para manejar un inversor de potencia con técnicas PWM; de forma que pueda ser utilizado para el manejo de los módulos comerciales de potencia y sirva como material de apoyo didáctico [2]. Además, es posible estudiar las características de las señales de salida del inversor haciendo especial hincapié en la minimización de armónicos. El sistema presenta, asimismo, un entorno de fácil uso para el usuario, con lo que la aplicación desarrollada es de un manejo bastante sencillo e intuitivo, permitiendo versatilidad en su utilización, al poder elegir entre tres posibilidades de funcionamiento: onda PWM, onda cuadrada y onda cuasi-cuadrada. Como se ha puesto de manifiesto en esta introducción, es posible disponer de un sistema digital capaz de generar las señales de control que se requieran para el manejo de un circuito inversor de potencia. De esta forma, se consigue llevar a cabo otra de las ideas objetivo planteada al inicio de este trabajo: desde el punto de vista docente, poner de manifiesto la estrecha relación entre disciplinas dentro del propio ámbito de la Electrónica; cuestión que, en demasiadas ocasiones, queda relegada a un segundo plano. En este caso concreto, la Electrónica de Potencia hace uso de las facilidades que ofrecen los Sistemas Electrónicos Digitales (microprocesadores, concretamente) para conseguir las señales de control necesarias para atacar al circuito inversor. Desde el punto de vista industrial, indicar que el sistema desarrollado tiene un amplio campo de aplicaciones [1]: actuadores para motores de corriente alterna, variadores de frecuencia, fuentes de alimentación ininterrumpidas, generación fotovoltaica, etc. El principio fundamental de funcionamiento del sistema se explica en el apartado 3 de este artículo. Previamente, se hace una descripción general del sistema (sección 2), para continuar con la descripción de la implementación física del proyecto (apartado 4), un resumen de las características generales (apartado 5) y la explicación del programa desarrollado para controlar el microprocesador (sección 6). Por último, se incluye una muestra de los resultados obtenidos (apartado 7) sobre el equipo realizado (apartado 8) y se generan algunas conclusiones sobre el trabajo que se ha llevado a cabo (sección 9). 2. Descripción general La aplicación se desarrolla orientada a disponer de una unidad programable para poder controlar inversores de potencia de tipo H. La programabilidad de la aplicación tiene vocación netamente docente ya que permite que los alumnos establezcan los parámetros funcionales del sistema dentro de una gama de valores. La aplicación genera las señales de control necesarias para un puente típico de tipo H y es independiente de éste ya que está diseñado para poder ser conectado a cualquiera de ellos por medio de fotoacopladores. En el caso particular de nuestros laboratorios de potencia se utiliza la etapa de potencia de un banco de trabajo de la casa Alecop. Todas las señales de control del puente están disponibles pudiendo ser visualizadas por medio de un osciloscopio o un analizador lógico. Además, se ha incluido una circuitería adicional que compone las señales de control para obtener la forma de onda de la señal de salida pero en baja potencia. Para completar esta prestación se ha incluido un filtro de paso bajo que permite ver la señal compuesta en su aspecto continuo (como resultaría a la salida del inversor con una carga). El sistema propuesto facilita la misión docente ya que permite el acceso a los alumnos para modificar las características de las señales generadas a dos niveles. Por un lado dispone de un primer nivel por medio del cual el alumno establece los parámetros de forma interactiva utilizando un panel de control virtual creado para la aplicación. Este panel permite modificar parámetros como la forma de modulación de la onda resultante, pudiendo elegir entre PWM, cuadrada y cuasi-cuadrada con distintos grados de modulación. Otro de los parámetros modificables es la frecuencia de la señal de salida, pudiendo ser modificada de 10 a 100 Hz. Un tercer parámetro ajustable son los tiempos muertos para la etapa de potencia. Un segundo nivel de actuación con el sistema se debe a la facilidad de reprogramación. Por esta causa, los alumnos pueden desarrollar nuevos programas de control para ser cargados sobre el sistema, tanto los del microcontrolador como los del ordenador. 3. Principio funcional El principio de funcionamiento se basa en generar una señal sinusoidal por medio de la técnica de modulación PWM de onda calculada. Para ello el ancho de cada pulso de la señal PWM ha de ser proporcional al valor de la señal sinusoidal en cada uno de los instantes. Para ser más exacto, la cantidad de energía que se aporta con cada impulso ha de ser la misma que aportaría la señal sinusoidal en el mismo intervalo de tiempo. Esto es lo que se ha Figura 1 representado en la figura 1. En ella se tiene el semiperiodo positivo de una sinusoide troceada a intervalos de " radianes y en uno de ellos se ha representado un pulso correspondiente a una señal SPWM (nomenclatura utilizada para denominar la modulación PWM de una señal Sinusoidal). La duración del pulso digital ha de ser tal que las áreas delimitadas por ambas señales (S1 y S2) sean iguales. Si las expresiones de estas áreas son: S1 = B ⋅ H S2 = α + 2π / n ∫α H ⋅ sen(ω t ) ⋅ dω t = [ H ⋅ − cos(ω t ) ] α + 2π / n α = H ⋅ [cosα − cos(α + 2π / n)] (1) en donde n es el número de pulsos. Igualando las áreas S1 y S2 se tiene: B = cosα − cos(α + 2π / n) (2) Este valor del ancho del pulso convertido a intervalo de tiempo en función de la frecuencia de salida es el que define la programación del temporizador. Para cada frecuencia se han de calcular los intervalos de los pulsos así como el número de pulsos a utilizar. En la aplicación se decidió disponer de 20 pulsos (n = 20) por cada periodo de la señal de salida para la frecuencia de 50 Hz. Con ello los intervalos son de 1 ms. Los intervalos de tiempo se establecen por medio de un temporizador digital y en función de la frecuencia a la que éste funciona, se han de calcular los valores de carga del mismo. Dado que los contadores digitales no admiten cuentas fraccionarias, es necesario ajustar el valor teórico calculado al valor real mas próximo permitido. Este ajuste conlleva un error que se reflejará en la calidad de la forma de la onda de salida como distorsión, aunque los cálculos realizados dan como resultado un error inferior al 0,05% en el tamaño del pulso. 4. Realización El circuito propuesto utiliza un microcontrolador PIC 16F873 [3][4] conectado como se muestra en la figura 2. La selección del microcontrolador no es crítica; las únicas condiciones son que disponga de un temporizador de 16 bits y que éste trabaje con frecuencia superior a 2 MHz. Estas dos condiciones tienen como objetivo poder ajustar de forma precisa la frecuencia de la señal de salida, poder disponer de tiempos cortos para ajustes finales y asegurar con suficiente precisión el tamaño de los pulsos de la modulación. Con estas características se consigue una precisión mejor del 0,05%. Se ha elegido el modelo PIC 16F873 porque cumple con estas dos características básicas; además es de muy bajo costo y el fabricante suministra herramientas para la depuración y programación. Asímismo dispone de periféricos que pueden ser útiles para futuras ampliaciones. En la figura 2 se muestra la conexión del microcontrolador al puente inversor. Los transistores que forman este puente deben de llevar la circuitería Figura 2 necesaria correspondiente al diseño del puente en sí mismo. 5. Características generales Las características generales del sistema son las siguientes: - Funcionamiento digital. No se utiliza ningún elemento analógico. - Compacto. El dispositivo de control utilizado es de 28 patillas pero se podría utilizar el modelo 16F72 que funcionalmente es idéntico y está encapsulado en 18 patillas. - Preciso. La estabilidad y precisión de la señal obtenida depende de un oscilador de cuarzo con precisión de 10 ppm en frecuencia y deriva del orden de 1 ppm/año y 0,3 ppm de 0º a 50º - 3 formas de onda moduladas PWM: SPWM, cuadrada y cuasi-cuadrada (15º, 30º, 45º, 60º y 75º) seleccionables. - Tiempos muertos seleccionables para adaptarse a los tiempos de conmutación de los transistores del puente inversor. 6. El programa El funcionamiento del programa se basa en que el procesador actúe sobre los interruptores en los instantes adecuados. Para ello se establece una base de tiempos de 200 ns que se obtiene del reloj de instrucción del procesador que es el que se utiliza para hacer evolucionar un temporizador de 16 bits que genera una interrupción al finalizar la cuenta. El programa que atiende a esta interrupción es el que actúa sobre los interruptores. La carga del temporizador ha de obtener de acuerdo a los cálculos realizados para la modulación en curso. El tiempo entre actuación y actuación de los interruptores lo establece un circuito físico (temporizador) por medio de una interrupción que desencadena la ejecución de un programa que realiza la actuación (rutina de interrupción). Esta rutina está diseñada de forma que no modifica el tiempo relativo entre finales de cuenta del valor cargado en el temporizador. Es decir que el tiempo que se establece en el temporizador es estrictamente respetado por los elementos que componen el sistema. Si bien hay retrasos, éstos son siempre constantes y son compensados en el programa. El programa del microcontrolador se organiza en dos partes el programa principal y la rutina de interrupción. 6.1. El programa Principal El programa principal se encarga de la organización y coordinación del funcionamiento. Para ello dispone de una fase de inicio en la que se establecen los parámetros funcionales y un bucle principal. El bucle principal se ha organizado de forma que la cantidad de datos memorizados de la señal sinusoidal sean mínimos. Concretamente se han almacenado 5 datos, los correspondientes a la zona 1 de la figura 3. La señal se reconstruye gracias a la simetría existente actuando adecuadamente sobre las señales de salida en función de la zona de la sinusoidal que se esté generando. Con objeto de disponer de una rutina de interrupción muy corta en tiempo de ejecución, el programa principal prepara, entre interrupción e interrupción, la información que va a utilizar la rutina de interrupción. En la aplicación final, la rutina de interrupción requiere en total sólo 3 :s y dado que el tiempo más corto a controlar es de 16,4 :s y que la latencia de la rutina de interrupción consume (por su estructura) 2,8 :s [1] de este tiempo, quedan disponibles 10,6 :s como mínimo, lo que equivale a 53 instrucciones básicas. Este tiempo es el que dispone el bucle principal para Figura 3 realizar las funciones de preparación de los valores de actuación y carga para la rutina de interrupción. En la aplicación final esto se realiza en el caso peor en 42 instrucciones (8,4 :s). 6.2. La rutina de Interrupción La rutina de interrupción se ocupa de actuar sobre los interruptores y de recargar el temporizador para establecer el tiempo que ha de durar la situación actual de los interruptores. Además deja un indicador para señalizar al programa principal que ya se ha realizado la interrupción. Como se ha descrito antes, el programa principal prepara los valores de salida y la nueva cuenta del temporizador para estas salidas. La rutina de interrupción sólo ha de tomarlos de los registros asignados (OUT1 y OUT2, REGH y REGL, en este caso). 7. Resultados Una vez efectuados los ajustes necesarios para acoplar el desarrollo teórico con la realidad de los microcontroladores, la medida de la frecuencia de la señal modulada de salida para el valor teórico de 50 Hz fue de 49,9920 Hz lo que significa un error de 0,016%. Además se hicieron medidas del espectro de frecuencias generado en la salida como consecuencia de la modulación. Algunos de estas medidas se muestran en las figuras siguientes: 1) Formas de onda: Las imágenes que se muestran a continuación son las obtenidas por medio del osciloscopio a partir del prototipo (para n = 20). Figura 4. Modulación PWM Figura 5. Modulación por onda cuadrada Figura 6. Modulación cuasi-cuadrada (15º) Figura 7. Modulación cuasi-cuadrada (30º) Figura 8. Modulación cuasi-cuadrada (45º) 2) Espectro de la señal de salida (con filtro de salida de paso bajo de primer orden) para n = 34: Figura 9. Modulación PWM y 50 Hz Figura 10. Modulación casi cuadrada 15º, 50 Hz Figura 11. Modulación casi cuadrada 45º, 50 Hz. Figura 12. Modulación cuadrada y 50 Hz 8. Realización docente El equipo que se ha realizado para la docencia se basa en la descripción anterior y además incorpora una interfaz de usuario realizada por medio de LabView [7] con el aspecto final que se muestra en la figura 13. En ella se puede ver que se dispone de un ordenador personal para el control de la unidad. Para ello, la unidad que genera SPWM dispone de una conexión serie por medio de la cual se maneja su funcionamiento desde el ordenador. Los parámetros que pueden ser especificados son: Frecuencia: 10 - 100 Hz. Tipo de modulación: PWM, cuadrada y cuasi-cuadrada (15º, 30º, 45º, 60º, 75º) Tiempo muerto: 0,2 - 1,6 :s Igualmente, dispone de una función de envío de parámetros a la unidad. Con ello se prepara la forma de onda deseada sobre el ordenador y una vez definida se envía a la unidad, momento en el que ésta modifica sus parámetros funcionales. Figura 13 Asimismo, dado que la funcionalidad de la unidad no es dependiente del ordenador, éste tiene una utilidad para obtener el estado actual de la unidad. Como puede verse en la figura 13, la aplicación muestra una imagen sintetizada de la señal de salida. El osciloscopio situado en el lado derecho se utiliza para ratificar esta forma de onda. El aspecto físico de la unidad es el que muestra la figura 14. 9. Conclusiones El sistema programable desarrollado hace ver, al alumnado, la relación entre las asignaturas de Sistemas Electrónicos Digitales y Electrónica de Potencia. De esta forma, el alumnado dispone de una herramienta muy versátil y potente para afianzar los conocimientos teóricos aprendidos durante la realización de las correspondientes asignaturas y analizar un caso totalmente práctico de generación de ondas PWM mediante técnicas digitales para su aplicación en circuitos inversores de potencia. Con este sistema, los alumnos pueden modificar los parámetros funcionales del sistema de una forma amigable. Además tienen acceso a toda la documentación y a sus justificaciones ya que se trata de un diseño propio. La siguiente ventaja es la realización de otras formas de modulación con el mismo sistema por ser programable por el puerto serie desde el ordenador. Actualmente, tomando como punto de partida el sistema descrito, se trabaja en el desarrollo de un variador de frecuencia para control de velocidad en motores síncronos monofásicos y trifásicos. Figura 14 10. Referencias [1] D.W.Hart, Electrónica de Potencia, Prentice Hall International (2004) [2] F.Pineda, Controlador programable para moduladores PWM (2003) [3] Microchip Technology Inc, DS310xxA, PICmicro MID-RANGE MCU FAMILY [4] Microchip Technology Inc, DS 30292, PIC16F87X Data Sheet [5] P.J.Sotorrío, E.Ruiz, J.M.Romero, Sistemas Basados en Microprocesadores, Spicum 2004, ISBN:849747-009-5 [6] P.J.Sotorrío, E. Ruiz, Diseño práctico de S.B.M., ISBN:84-699-4314-6 (2001) [7] National Instruments, LabVIEW User Manual (2003)