ISSN 0718-3291 Versión Impresa

ISSN 0718-3305 Versión en línea

Volumen 26 N° 2, Abril - Junio 2018

pdf Índice

Desarrollo de un variador de velocidad trifásico: enfoque de programación multitarea

Desarrollo de un variador de velocidad trifásico: enfoque de programación multitarea

Ingeniare. Revista chilena de ingeniería

versión On-line ISSN 0718-3305

Ingeniare. Rev. chil. ing. vol.26 no.2 Arica jun. 2018

http://dx.doi.org/10.4067/S0718-33052018000200213 

Artículos

Desarrollo de un variador de velocidad trifásico: enfoque de programación multitarea

Develop of speed three-phase variator: programing focused on multitasking

Santiago Benavides-Córdoba1 

Nicolás Muñoz-Galeano1 

Juan B. Cano-Quintero1 

1 Facultad de Ingeniería. Departamento de Ingeniería Eléctrica. Grupo de Manejo Eficiente de la Energía - GIMEL. Universidad de Antioquia. Calle 67 N° 53-108, Oficina 19-437. Medellín, Colombia. E-mail: santiago.benavides@udea.edu.co; bernardo.cano@udea.edu.co

RESUMEN

Este artículo presenta la programación multitarea para el desarrollo de un variador de velocidad trifásico. Este enfoque no se ha reportado en la literatura técnica, aunque es de relevancia para estudiantes de ingeniería, investigadores e ingenieros desarrolladores de equipos de electrónica de potencia. Se propone la programación multitarea para la implementación de las tareas que debe realizar el variador de velocidad. Las tareas necesarias en un variador de velocidad son descritas y programadas en el microcontrolador (dsPIC30F4012) utilizando máquinas de estados, considerando tiempos y prioridades mediante multitarea preferente y cooperativa. Este artículo propone una forma de programación para variadores de velocidad que permite el desarrollo del software desde etapas incipientes. La estructura de programación propuesta permite el uso de microcontroladores de menores prestaciones y, por ende, la reducción de los costos de producción. Se presenta un variador de velocidad trifásico que puede cambiar la amplitud y la frecuencia del voltaje de salida sin paros o interrupciones. La validación de la programación multitarea se realiza en un prototipo experimental desarrollado en el laboratorio evaluando la ejecución y los tiempos de las tareas.

Palabras clave: Multitarea; programación; variador de velocidad trifásico; bajo costo; máquinas de estados; microcontrolador

ABSTRACT

This paper presents multitasking programing of a three-phase speed variator development. This focus has not been reported in technical literature, although it is relevant for engineering power electronics developers, students, and researchers. Hybrid multitasking programing is proposed for the implementation of task that speed variator must carry out. Needed tasks in the speed variator are described and programed in a microcontroller (dsPIC30F4012) using state machines, considering times and priorities with preemptive and cooperative multitasking. This paper proposes a programing form for speed variator that allow software develop since its early stage. The programing structure enables the use of microcontrollers with lower performance. Thus reduction of production costs could be achieved. A three-phase speed variator is presented that can change output-voltage frequency and amplitude without stops or interrupts. Validation of multitasking programming is done on an experimental prototype developed in the laboratory, evaluating the execution times of tasks.

Keywords: Multitasking; programing; three-phase speed variator; low cost; state machines; microcontroller

INTRODUCCIÓN

Un variador de velocidad tiene como función principal cambiar la frecuencia de la tensión en su salida para obtener velocidades variables en motores de inducción. Sin embargo, para poder cambiar la frecuencia, el variador requiere ejecutar múltiples tareas. Los enfoques comunes de los artículos referente a variadores de velocidad son: 1) diseño y control de variadores de velocidad 1-4, 2) Dimensionamiento de elementos reactivos 5, 3) estrategias de modulación que permiten cambiar la magnitud y la frecuencia de la tensión de salida: control escalar 6-7 y control vectorial 8-9. No se encontró en la revisión bibliográfica el enfoque, para variadores de velocidad, que realice la programación multitarea, es por esto que este artículo presenta el desarrollo de los algoritmos que permiten la programación multitarea para variadores de velocidad trifásicos. Este artículo facilita el desarrollo porque presenta los algoritmos como máquinas de estados, que se pueden programar en etapas, y comprende detalles necesarios para el desarrollo de variadores de velocidad desde etapas incipientes.

La programación multitarea permite la ejecución de tareas en paralelo en dispositivos programables 10. Este tipo de programación se ha desarrollado en dos diferentes filosofías: programación cooperativa 11 y programación preferente 12-14. Este artículo presenta la programación de un variador de velocidad utilizando la programación multitarea cooperativa con interrupciones para realizar las tareas necesarias considerando su importancia en la ejecución. Se selecciona esta filosofía porque la modulación no puede ser interrumpida y el resto de tareas pueden esperar la finalización entre ellas mismas. La programación multitarea ha sido desarrollada y se han estudiado factores como el tiempo de retraso que puede tener una tarea 15. En la literatura se han reportado diferentes formas de realizar la programación multitarea en microcontroladores, dos de estas formas son: máquinas de estado 16 y sistemas operativos en tiempo real 17. Los sistemas operativos de tiempo real pueden tener un alto costo y ocupa más recursos en el microcontrolador, por tanto, se selecciona máquinas de estados por su simplicidad y los pocos recursos que requiere. Cada máquina de estados es una tarea del variador y las diferentes tareas del sistema son ejecutadas secuencialmente en un ciclo infinito 16. Cada tarea debe realizar sus operaciones y actualizar su estado en un intervalo corto de tiempo, permitiendo al ciclo avanzar de forma efectiva a la siguiente tarea sin interrumpir el normal funcionamiento del variador.

El desarrollo de la electrónica de potencia se apoya en la evolución de los sistemas embebidos y utiliza las diferentes formas de programación para su diseño. Una de las tareas fundamentales de un variador de velocidad es la modulación senoidal de ancho de pulso SPWM (Senoidal Pulse Width Modulation) y su implementación se ha realizado utilizando dispositivos como 18: controlador digital de señales (DSC, Digital Signal Controller), procesador digital de señales (DSP, Digital Signal Processor) 19, microcontroladores (MCU, Microcontroller) o arreglos de compuertas programables por campo (FPGA, Field Programmable Gate Arrays) 20-22. Entre estos dispositivos los MCU's y DSC's se destacan por su bajo costo y menores requerimientos de hardware pero, a su vez, por una menor potencia de cálculo y capacidad de memoria. Algunos de estos dispositivos tienen módulos independientes para realizar tareas específicas, por tanto, en ellos se pueden programar varias tareas al mismo tiempo. La programación propuesta prescindirá de sistemas embebidos de costos elevados propiciando el uso de microcontroladores de bajas prestaciones y menor costo.

Este artículo describe la implementación de un variador de velocidad trifásico programado con un sistema multitarea basado en máquinas de estados. La programación multitarea propuesta permite utilizar el dispositivo microcontrolador de bajas prestaciones (dsPIC30F4012), poca memoria y poca velocidad. El uso de este microcontrolador permitirá reducir los costos de producción de equipos basados en electrónica de potencia. Como principal tarea se ha programado la modulación SPWM para garantizar la generación de señales senoidales con bajo contenido de armónicos de acuerdo a las normas 23-24. El variador desarrollado, adicionalmente, tiene programadas las siguientes tareas esenciales: 1) comunicación bidireccional entre la interfaz de usuario y sistema de control principal, 2) sensado y envío de datos de voltaje y corriente RMS, 3) cambios suaves y controlados al realizar el cambio de parámetros de la modulación en funcionamiento y 4) la facilidad de establecer los valores de voltaje y frecuencia de la onda de salida mediante un puerto serial.

La sección II, programación multitarea orientada al variador de velocidad, se divide en las siguientes subsecciones: modulación SPWM en el microcontrolador, Recepción de carácter, restricciones y cambio de parámetros y sensado de voltaje y corriente. La sección III presenta resultados experimentales.

PROGRAMACIÓN MULTITAREA ORIENTADA AL DESARROLLO DEL VARIADOR DE VELOCIDAD

Los variadores de velocidad son dispositivos que se encargan de variar la velocidad de motores de inducción, pero los variadores de velocidad tienen protocolos de comunicación, diferentes tipos de control, medida de corriente y voltaje a la salida, entre otras características que dependen de la empresa y la proyección del producto. En el diseño de un variador de velocidad debe considerarse que existen diferentes procesos que deben ser programados, por tanto, se propone el modelo de programación multitarea cooperativa con interrupciones estableciendo jerarquía entre las tareas que debe ejecutar el variador evitando que las tareas principales sean interrumpidas.

La programación multitarea propuesta para el variador de velocidad utiliza tres niveles de ejecución de los siete disponibles del microcontrolador dsPIC30F4012, ver Figura 1. La Figura 1 muestra las tareas necesarias del variador de velocidad y la jerarquía de ejecución. En el nivel cero se realiza la programación multitarea cooperativa que es interrumpida cuando el nivel siete y seis requieren atención, pero el nivel siete tiene preferencia al nivel seis cuando se requieren las dos tareas al mismo tiempo. El nivel cero es el nivel con menor prioridad, en este nivel se verifican los valores de ingreso (obtenidos vía comunicación serial), luego se realiza el cambio de parámetros que afectan la modulación, se capturan y se envían los datos sensados. El nivel seis es una interrupción provocada por la recepción de un carácter del puerto serial, el que es almacenado en vectores para su posterior procesamiento en el nivel cero. El nivel siete es la interrupción encargada de realizar la modulación SPWM; la modulación se realiza en el mayor nivel de prioridad para dar funcionamiento continuo al variador de velocidad, esta tarea no debe ser interrumpida.

Figura 1 Niveles de ejecución propuestos para realizar programación multitarea para el variador de velocidad. 

La programación multitarea preferente se presenta en la modulación SPWM porque interrumpe cualquier rutina que se esté ejecutando en el nivel 6 (RC) y en el nivel 0 (TA y TB), ver Figuras 1 y 2. La tarea recepción de carácter (RC) interrumpe cualquiera de las dos tareas del nivel 0, por tanto, se utilizó para este nivel programación multitarea preferente. Las tareas realizadas en el nivel 0 son tareas que están en el nivel inferior de jerarquía y no interrumpen tareas en su tiempo de ejecución. Las tareas realizadas en el nivel 0 se programan de forma cooperativa, es decir, se inicia una tarea solo si la otra tarea de este nivel finalizó. La Figura 2 muestra una de las posibles combinaciones de las tareas e interrupciones, esta combinación es la que incluye todas las tareas en un intervalo de tiempo. En la Figura 2, TA fue interrumpido dos veces y la TB fue interrumpida una vez. La tarea RC puede ser interrumpida por la tarea SPWM, en este caso particular la tarea SPWM interrumpió a la tarea RC una vez.

Figura 2 Muestra el comportamiento de las interrupciones del variador de velocidad. 

A continuación, en las siguientes subsecciones se detallan las tareas de la Figura 1.

Modulación SPWM en el microcontrolador

La modulación SPWM es la tarea más importante en la programación de un variador de velocidad porque permite controlar el cambio de velocidad de un motor de inducción modificando la frecuencia y amplitud del voltaje de salida de un inversor de puente completo 25. En un variador de velocidad la modulación SPWM no debe dejar de funcionar mientras está operando, por este motivo, la modulación SPWM ocupa el primer lugar de la pirámide de jerarquías.

Para controlar la variación de velocidad se utiliza la topología del inversor trifásico de puente completo. La Figura 3 muestra un inversor trifásico de puente completo, un microcontrolador con las salidas del módulo PWM de motores que controla las señales de encendido y apagado de los interruptores de potencia.

Figura 3 Inversor trifásico de puente completo. 

La función principal del microcontrolador es generar las señales de disparo para los interruptores con el fin de generar una salida AC trifásica entre los terminales A, B y C. La activación de los interruptores se realiza comparando una señal senoidal con una triangular [26], evitando que los interruptores de la misma rama se activen simultáneamente. Las señales de disparo se generan por medio de un esquema de modulación que garantiza una señal de salida con bajo contenido de armónicos 23-24.

Para la modulación SPWM se utiliza la señal triangular mostrada en la Figura 4a) que genera el microcontrolador dsPIC30F4012 27 y que tiene la forma que sugiere la modulación SPWM [26]. El periférico genera la señal triangular utilizando un contador (PTMR) que se incrementa hasta llegar a su valor máximo (PTPER) y luego decrece hasta llegar a cero (Figura 4a). El valor del contador es continuamente comparado con el valor almacenado en el registro CicloDeTrabajo, y el resultado de dicha comparación es una señal cuadrada (Figura 4a). La comparación que realiza el módulo PWM se convierte en la modulación SPWM cuando el CicloDeTrabajo del módulo PWM es cargado con los datos de una señal senoidal de referencia que ha sido previamente discretizada y almacenada como vector en la memoria del microcontrolador (Señal seno discreta). Cada vez que el contador llega a su valor máximo, genera una interrupción y el valor de CicloDeTrabajo es actualizado como se muestra en la Figura 4b. La descripción de la modulación SPWM sugiere que la comparación sea entre una señal senoidal y una triangular, pero, como la señal triangular generada por el módulo PWM del microcontrolador seleccionado siempre es positiva, la señal senoidal para realizar la comparación se le ha puesto un off set de la mitad de la amplitud máxima del registro PTPER (Figura 4b).

Figura 4 a) módulo PWM y b) señal seno discreta y señal triangular de comparación. 

Un variador de velocidad regula la velocidad y la potencia en motores de inducción modificando la frecuencia y la amplitud de su voltaje de salida. Los datos de entrada que permiten configurar la modulación SPWM son: 1) Frecuencia del voltaje de salida f). 2) Índice de modulación de amplitud (M) que es la relación entre la amplitud de la señal de referencia senoidal (As) 26 y la amplitud de la señal triangular (registro PTPER). 3) El número de pulsos (pulsos) que permite cambiar la frecuencia de conmutación del inversor.

El registro PTPER y el vector seno discreto son modificados cada vez que el usuario ingresa nuevos parámetros y está dado por la ecuación (1):

()1

Donde FCY es la frecuencia del ciclo de instrucción del microcontrolador.

El vector seno discreto se modifica cada vez que se realiza un cambio de parámetros, por tanto, se almacena en la memoria RAM del microcontrolador. Para realizar el cambio del vector seno discreto se utiliza un vector senoidal discreto almacenado en memoria ROM con mayor cantidad de datos y con amplitud pico-pico del valor máximo que puede tener el registro PTPER. La modificación del vector seno discreto consiste en tres cambios del vector almacenado en memoria ROM que dependen de los parámetros de ingreso: 1) cambio de número de datos del vector seno discreto asociado al número de pulsos por ciclo ingresado por el usuario, 2) escalado de magnitud del vector por modificación del registro PTPER y 3) modificación de magnitud del vector por índice de modulación de amplitud ingresado por el usuario. Las dos últimas modificaciones se pueden realizar en una sola operación.

La actualización de los parámetros, con la sucesiva modificación del vector discreto y del registro PTPER, se gestiona en el nivel 0. La actualización del vector seno discreto que modifica el registro de CicloDeTrabajo es gestionada en el nivel 7 y se describe usando máquinas de estados. Para realizar la modulación SPWM trifásica se requieren tres vectores seno discreto desfasados 120 grados, pero debido a que se utilizan microcontroladores de bajo costo, se utiliza solo un vector seno y tres contadores para realizar el desfase en la comparación.

La Figura 5 muestra la máquina de estados que gestiona la modulación SPWM, la cual es evaluada cada vez que se genera una interrupción del módulo PWM. La interrupción se activa cada vez que la señal triangular llega a su valor máximo. Se programan tres contadores de pulsos que se incrementan cada vez que ingresa a la interrupción. Estos contadores son empleados para indexar los datos del vector senoidal y desfasarlos 120 grados en los registros de comparación. Para establecer el inicio de los contadores, la dimensión del vector seno se divide entre tres, luego se establece la posición de los contadores 2 y 3 en función de la posición del contador 1. La máquina de estados se compone de 4 estados: 1) el estado principal donde se realiza la comparación y que genera los pulsos de disparos. 2) Estado 1 que reinicia el contador 1 y retorna al estado principal. Los estados 2 y 3 realizan la misma función que el estado 1 reiniciando los contadores 2 y 3, respectivamente. La máquina de estados hace referencia solamente a tres comparaciones que corresponden a los disparos de los interruptores superiores de cada rama, porque el módulo PWM del microcontrolador genera las señales inversas que sirven para el disparo de los interruptores inferiores considerando el tiempo muerto entre las señales de la misma rama. Esta máquina de estados permite simplificar el número de vectores almacenados en la memoria RAM por el uso de los contadores contribuyendo al posible uso de microcontroladores de bajo costo.

Figura 5 Máquina de estados para modulación SPWM. 

Recepción de caracter

Los variadores de velocidad son dispositivos que necesitan comunicación para la modificación de los parámetros de la modulación. La comunicación implementada en este variador de velocidad es la comunicación serial, por lo tanto, el nivel seis de interrupción se asocia al módulo UART de comunicación serial. El microcontrolador espera un conjunto de caracteres numéricos que finaliza con el caracter asociado a la tecla "enter". El conjunto está dividido en subconjuntos separados por el caracter "espacio". El primer subconjunto se asocia a la frecuencia, el segundo a la amplitud y el tercero al número de pulsos de la modulación. Se da este nivel de prioridad a la recepción de caracter para no perder información proporcionada por el usuario.

La Figura 6 muestra la máquina de estados asociada al proceso comunicación con el microcontrolador, la que se evalúa en la interrupción por recepción de dato serial. Esta máquina se encarga de organizar en variables numéricas los subconjuntos de caracteres. Al finalizar el recorrido de la máquina con la tecla "enter" activa una bandera para evaluar las restricciones en el nivel cero.

Figura 6 Máquina de estados para realizar comunicación. 

Restricciones y cambio de parámetros de modulación

Los variadores de velocidad requieren modificar sus parámetros cuando el usuario ha introducido datos. La modificación de parámetros que debe realizar requiere de operaciones y debe considerar las restricciones que limitan el dispositivo. Este cambio de parámetros es lento en comparación con la tarea SPWM y recepción de carácter, por tanto, se realiza en el nivel más bajo de prioridad como tarea cooperativa junto al sensado de voltaje y corriente.

Este proceso se ejecuta cada vez que finaliza la recepción de un conjunto de caracteres con el caracter "enter". El proceso comienza realizando el análisis de restricciones de los datos que ingresaron al microcontrolador. Las características del variador, que definen las restricciones del sistema, se muestran en la Tabla 1. Se establece un rango de frecuencia comercial para la tensión de salida del variador entre 5 y 120 Hz. Se establece un rango de índice de modulación en amplitud de 0 a 100% para poder cambiar la amplitud de la forma de onda de salida de voltaje. El rango de la frecuencia de conmutación fue limitado entre 500 y 3.000 Hz, esto debido a la poca capacidad en memoria que tiene el microcontrolador; sin embargo, dadas las cargas típicas (motores de inducción) y las restricciones en la frecuencia de conmutación el THD de corriente bajo la condición más adversa (frecuencia de conmutación de 500 Hz) no fue mayor al 3%. Para lograrlo se estableció que la inductancia de salida o carga del variador sea mayor a 32 mH, afortunadamente la mayor parte de los motores de inducción comerciales manejan inductancias que se encuentran dentro del rango establecido.

Tabla 1 Características del variador de velocidad diseñado. 

Una vez validadas las restricciones, el cambio de los parámetros de funcionamiento se realiza de manera paulatina para evitar daños asociados a cambios bruscos, utilizando un algoritmo de generación de rampa. El tiempo de la rampa para cambiar de un valor determinado a otro nuevo es mayor en comparación al tiempo de un ciclo de la señal SPWM generada y depende de las características del motor conectado en la salida del variador. La Figura 7 muestra el algoritmo empleado. La variable "dato" se relaciona con los datos que tenía precargados el variador; la variable "dato objetivo" son los datos recibidos; "# de repeticiones" es el número de veces requeridas para llegar al dato recibido, este número determina el tiempo de la rampa utilizando un temporizador del microcontrolador; y " Δ valor" el valor con que va creciendo la rampa. Cada vez que se realiza un incremento en los datos se cambian los parámetros de la modulación SPWM y se ve reflejado inmediatamente en la interrupción encargada de la modulación SPWM.

Figura 7 Algoritmo para cambios suaves. 

Sensado de voltaje y corriente

El sensado de voltaje y corriente se utiliza para conocer el estado de las variables eléctricas del motor (voltaje, corriente y potencia). Para simplificar el hardware y que el prototipo sea económico, se midió la señal de corriente y voltaje de una sola fase que son posteriormente enviados por el puerto serial. Las señales de voltaje y corriente se obtienen de tarjetas que acondicionan la señal de interés en un rango de cero a cinco voltios. El conversor análogo digital del microcontrolador convierte las señales análogas en señales digitales de diez bits de resolución. La información obtenida de las medidas es procesada y almacenada en un vector. Estos datos almacenados son utilizados para obtener el voltaje y corriente RMS del variador de velocidad.

La Figura 8 muestra la máquina de estados que realiza el sensado de voltaje y corriente y procesa la información para obtener los valores RMS. En el estado 1 captura datos de voltaje y corriente en un vector, cuando tiene datos suficientes (número de datos determinado por el programador) los procesa y calcula valores RMS para pasar al estado 2. En este estado se envían los datos por el puerto serial.

Figura 8 Máquina de estados para el sensado. 

RESULTADOS EXPERIMENTALES

La implementación de la programación multitarea se realiza utilizando el hardware desarrollado en el grupo de investigación GIMEL de la Universidad de Antioquia. La Figura 9 muestra el hardware utilizado que se compone de: inversor de puente completo, tarjeta de aislamiento entre control y potencia, tarjeta de desarrollo con dsPIC30F4012 y tarjetas de adquisición de datos. El motor trifásico de inducción utilizado para realizar las pruebas experimentales es un motor WEQ a 220 V y 6.08 A. en conexión doble delta. El hardware de la Figura 8 se describe en la Tabla 2.

Figura 9 Variador de velocidad. 

Tabla 2 Elementos de hardware utilizado para pruebas. 

La programación de los microcontroladores de microchip se realiza en el entorno de desarrollo MPLABX. Este entorno de desarrollo tiene un simulador que tiene la opción de trabajo en modo debug. El trabajo en modo debug para el entorno MPLABX es utilizado para evaluar el funcionamiento del programa: condiciones, instrucciones, ver problemas en funcionamiento y medir tiempos. En este modo de funcionamiento se capturan los tiempos de cada tarea y se los tabula en la Tabla 3. Los tiempos se los clasifica en dos columnas: tiempo de ejecución P y tiempo de ejecución S. El tiempo de ejecución P se presenta cuando el microcontrolador está realizando solamente modulación SPWM; mientras que el tiempo de ejecución S se da cuando el microcontrolador recibe un caracter, procesa la información, procesa los datos o envía los datos medidos.

Tabla 3 Tiempos requeridos por las tareas. 

En el cambio de parámetros de la modulación, el microcontrolador debe realizar diferentes operaciones para modificar las variables internas y lo debe realizar de forma paulatina. Para realizar este cambio se determinó un tiempo de 3 segundos para la tarea restricción y cambio de parámetros. El tiempo de sensado de voltaje y corriente es uno de los más largos en el tiempo S porque envía cuatrocientos datos a la velocidad que está programado el puerto serial en baudios (115.200 baudios). La recepción de caracter está en tiempo S cuando el caracter recibido es un "enter", en este momento la tarea pasa a organizar los datos en variables y el tiempo empleado es mayor que el tiempo P.

La Figura 10 tiene como objetivo mostrar que la tarea modulación SPWM, tarea de mayor jerarquía, funciona apropiadamente. La Figura 10 a) muestra las señales de disparo de los interruptores superiores del inversor puente completo (s1, s3, s5), las señales de disparo de los interruptores inferiores es el inverso de cada una de las señales s1, s3, s5. La frecuencia es de 50 hertz, 100% de índice de modulación y 150 pulsos por ciclo. La Figura 10 b) muestra la corriente del motor de inducción utilizado en las pruebas, En esta figura se evidencia el desfase de 120° entre las fases del variador de velocidad. Las señales de corriente no son seno puras; sin embargo, pueden mejorarse si se conectan inductancias (filtros) en la salida del variador. No suele filtrarse los voltajes provenientes de un variador porque el mismo motor funciona como filtro.

Figura 10 a) Conmutación de interruptores del inversor para obtener la modulación SPWM y b) Señal de corriente medida en el motor de inducción. 

La Figura 11 muestra un oscilograma capturado de una de las fases de corriente mientras se realizaba el cambio de frecuencia en línea sin interrumpir la modulación SPWM. La frecuencia de la onda de corriente inicia en 60 Hz y finaliza en 79,4 Hz. La frecuencia cambia de forma continua sin interrupciones, se muestra también en la Figura 11 la frecuencia de la onda de corriente en un intervalo de tiempo intermedio, 68,7 Hz. El cambio de frecuencia sobre un elemento inductivo hace que la impedancia aumente cuando aumenta la frecuencia (jωL), por lo que, a medida que aumenta la frecuencia debe disminuir la corriente. La Figura 11 muestra que la amplitud de la corriente comienza a disminuir desde 2 A hasta 1,2 A, mostrándose también la magnitud de 1,7 A en el intervalo intermedio. Bajo el cambio de la frecuencia en línea el THD de corriente siempre fue menor al 3%. La amplitud de la corriente de salida de los variadores de velocidad debe permanecer constante cuando se realiza un cambio de la velocidad (frecuencia) [7], para esto se pueden usar controladores, siendo el más común el control voltaje frecuencia. Sin embargo, el objetivo del artículo no es mostrar alguna técnica de control particular si no que es la programación multitarea que puede implementarse. Por lo que, para darle mayor coherencia a los resultados, mostrar el cambio en línea y evidenciar el funcionamiento de la programación multitarea, se decidió, cambiar en línea sin interrupciones, la frecuencia y mostrar en la Figura 11 visualmente el cambio de la frecuencia y la amplitud de la corriente.

Figura 11 Captura de señal senoidal durante el cambio de frecuencia de una fase de corriente. 

CONCLUSIONES

El modelo de programación multitarea es adecuado en la programación de dispositivos que requieren comunicación y cambios en línea; siendo este modelo útil en el diseño de prototipos comerciales. En este prototipo se validó la programación multitarea cooperativa con interrupciones cuando realizaba la modulación SPWM y la recepción de caracter, además se validó la programación multitarea cooperativa cuando se modificaban los parámetros de configuración, realizaba la rampa y media el voltaje y la corriente RMS.

La programación multitarea propuesta fue implementada en un dsPIC30F4012 utilizando las máquinas de estados. Todas las características del variador de velocidad propuestas funcionan y fueron validadas. El motor de inducción realizó trabajo continuo mientras se cambiaba la frecuencia de 60 Hz a 79,4 Hz. La frecuencia cambia de forma continua sin interrupciones y la amplitud en línea sin paros o interrupciones.

Para mejorar la visualización de los resultados cuando se cambió la frecuencia no se realizó el control de la amplitud de corriente evidenciándose que cuando aumenta la frecuencia la corriente disminuye de 2 A a 1,2 A, esto producto del aumento de la impedancia inductiva propia de los motores de inducción. La medida de las magnitudes eléctricas y la actualización de los parámetros de configuración no interrumpieron la modulación SPWM y la recepción de caracter. Durante el funcionamiento del variador de velocidad se modificaron los parámetros y se midió el THD de corriente en diferentes condiciones, el THD de corriente fue menor al 3% mostrando la efectividad de la modulación SPWM que es la tarea principal del variador. Las máquinas de estados desarrolladas utilizan pocos recursos de memoria RAM y ROM permitiendo la implementación de dispositivos de electrónica con microcontroladores de bajo costo.

REFERENCIAS

[1] K.-M. Tsang and W.-L. Chan. "Single DC source three-phase multilevel inverter using reduced number of switches". IET Power Electron. Vol. 7 N° 4, pp. 775-783. Abril 2014.

[2] V.V. Athani and S.M. Deshpande. "Microprocessor Control of a Three-Phase Inverter in Induction Motor Speed Control System". IEEE Trans. Ind. Electron. Control Instrum. Vol. IECI-27, N° 4, pp. 291-298. 1980.

[3] M. Knight and R. Torkildsen. "One-kVA, Three-Phase dc-ac Inverter with Digital Control". IEEE Trans. Aerosp. Electron. Syst. Vol. AES-5 N° 6, pp. 989-995. Noviembre 1969.

[4] M.S. Diab, A. Elserougi, A.M. Massoud, A.S. Abdel-Khalik, and S. Ahmed. "A Four-Switch Three-Phase SEPIC-Based Inverter". IEEE Trans. Power Electron. Vol. 30 N° 9, pp. 4891-4905. Septiembre 2015.

[5] G.E.M. Ruiz, N. Muñoz, and J.B. Cano. "Modeling, analysis and design procedure of LCL filter for grid connected converters". 2015 IEEE Workshop on Power Electronics and Power Quality Applications (PEPQA). Bogotá, Colombia. 2015.

[6] S.A. Hamed. "Performance evaluation of three-phase variable-speed DC drive systems with uniform PWM control". IEEE Trans. Power Electron. Vol. 12 N° 2, pp. 228-242. 1997.

[7] M. Suetake, I.N. Da Silva, and A. Goedtel. "Embedded DSP-based compact fuzzy system and its application for induction-motor V/f speed control". IEEE Trans. Ind. Electron. Vol. 58 N° 3, pp. 750-760. 2011.

[8] A.R. Beig, G. Narayanan, and V.T. Ranga-nathan, "Modified SVPWM Algorithm for Three Level VSI With Synchronized and Symmetrical Waveforms", IEEE Trans. Ind. Electron. Vol. 54 N° 1, pp. 486-494. Febrero 2007.

[9] Z. Shu, J. Tang, Y. Guo, and J. Lian. "An Efficient SVPWM Algorithm With Low Computational Overhead for Three-Phase Inverters". IEEE Trans. Power Electron. Vol. 22 N° 5, pp. 1797-1805. Septiembre 2007.

[10] D. Albazaz. "Design a Mini-Operating System for Mobile Phone". Int. Arab J. Inf. Technol. Vol. 9 N° 1. 2012.

[11] F. Ino, A. Ogita, K. Oita, and K. Hagihara. "Cooperative multitasking for GPU-accelerated grid systems". Concurr. Comput. Pract. Exp. Vol. 24 N° 1, pp. 96 -107. Enero 2012.

[12] S.K. Dash and T. Srikanthan. "Instruction cache tuning for embedded multitasking applications". IET Comput. Digit. Tech. Vol. 4 N° 6, pp. 439-457. Noviembre 2010.

[13] C.R. Knospe, S.J. Fedigan, R.W. Hope, and R.D. Williams. "A multitasking DSP implementation of adaptive magnetic bearing control". IEEE Trans. Control Syst. Technol. Vol. 5 N° 2, pp. 230-238. Mar. 1997.

[14] J. Jie Liu and E. A. Lee. "Timed multitasking for real-time embedded software". IEEE Control Syst. Mag. Vol. 23 N° 1, pp. 65-75. Febrero 2003.

[15] J. Sum and K. Ho. "Analysis on the Effect of Multitasking". 2015 IEEE International Conference on Systems, Man, and Cybernetics. Hong Kong, China. 2015.

[16] Mplab Harmony. "Volume I: Getting Started With MPLAB Harmony", pp. 12-13. 2013. Mayo 2016. URL: URL: http://ww1.microchip.com/downloads/en/DeviceDoc/Volume%20 I%20-%20Getting%20Started%20With%20 MPLAB%20Harmony.pdf

[17] C.K. Chang, Y.-F. Chang, L. Yang, C.-R. Chou, and J.-J. Chen. "Modeling a real time multitasking system in a timed PQ net". IEEE Softw. Vol. 6 N° 2, pp. 46-51. Marzo 1989.

[18] G.E.M. Ruiz, N. Muñoz, and J.B. Cano. "Design methodologies and programmable devices used in power electronic converters - A survey". 2015 IEEE Workshop on Power Electronics and Power Quality Applications (PEPQA). Bogotá, Colombia. 2015.

[19] M.F.N. Tajuddin, N.H. Ghazali, I. Daut, and B. Ismail. "Implementation of DSP based SPWM for single phase inverter". Pisa, Italia. 2010.

[20] K. Vijayakumar, R.A. Kumar, A. Govindasamy, and S. Kannan. "Implementation of Sinusoidal Pulse Width Modulation for Matrix Converter using FPGA". 2014 International Conference on Communication and Signal Processing. Melmaruvathur, India. 2014.

[21] X. Xu, J. Chen, S. Li, K. Hu, and L. Yu. "FPGA Implementation of CPS-SPWM for Grid Connected Photovoltaic System". 2011 Asia-Pacific Power and Energy Engineering Conference. Wuhan, China. 2011.

[22] M. Lakka, E. Koutroulis, and A. Dollas. "Development of an FPGA-Based SPWM Generator for High Switching Frequency DC/ AC Inverters". IEEE Trans. Power Electron. Vol. 29 N° 1, pp. 356-365. Enero 2014.

[23] International Standard. "Electromagnetic compatibility (EMC) - Part 3-2: Limits - Limits for harmonic current emissions (equipment input current < 16 A per phase)". IEC 61000-3-2: 2014. Mayo 2014.

[24] A.K. Henryk Markiewcz. "Perturbaciones de Tensión Norma EN 50160". Leonardo Power Qual Initiave. Julio 2004.

[25] J. Gallego and N. Muñoz. "Análisis de Flujos de Potencias Ineficientes Producidos por Convertidores de Potencia". Información Tecnológica. Vol. 25 N° 3, pp. 93-102. 2014.

[26] M.H. Rashid. "Electronica de Potencia Muhammad Rashid". Pearson Educación. Tercera Edición. Ciudad de México, México, pp. 904. 2004. ISBN:9702605326.

[27] Microchip, "dsPIC30F4011/12 Data Sheet", pp. 1-162 2005. Mayo 2016 Mayo 2016 http://ww1.microchip.com/downloads/en/devicedoc/70135C.pdf

Recibido: 21 de Junio de 2016; Aprobado: 26 de Junio de 2017

Autor de correspondencia: nicolas.munoz@udea.edu.co

 

Artículos Relacionados

# Título Ver
1
Modelos de programación entera para un problema de programación de horarios para universidades (2007)
Andrés Saldaña Crovo, Cristian Oliva San Martín, Lorena Pradenas Rojas
HTML | PDF
2
Generación de pistas durante el aprendizaje de la programación para concursos usando el análisis estático y dinámico de las soluciones (2013)
Enrique José Altuna Castillo, Lisandra Guibert Estrada
HTML | PDF
3
Simulación de controladores digitales (2009)
Carlos Álvarez G., Andrés Soto P., Francisco Watkins O.
HTML | PDF
4
Múltiples sistemas de colonias de hormigas para un vrp con ventanas de tiempo y programación de la carga (2009)
Pablo Ortega, Cristian Oliva, Jacques Ferland, Manuel Cepeda
HTML | PDF
5
Diseño de una hiperheurística para la programación de la producción en ambientes job shop (2010)
Omar Danilo Castrillón, William Ariel Sarache, Jaime Alberto Giraldo
HTML | PDF
6
Un algoritmo genético para el problema de Job Shop Flexible (2011)
Rosa Medina Durán, Lorena Pradenas Rojas, Víctor Parada Daza
HTML | PDF
7
Localización de paraderos de detención y diseño óptimo de rutas en el transporte de personal (2011)
Víctor M. Albornoz, Edward H. Johns
HTML | PDF
8
Una formulación matemática y de solución para programar cirugías con restricciones de recursos humanos en el hospital público (2012)
Lorena Pradenas Rojas, Exequiel Matamala Vergara
HTML | PDF
9
Evaluación de la eficiencia de las compañías aéreas brasileñas a través de un modelo híbrido de análisis envolvente de datos (DEA) y programación lineal multiobjetivo (2012)
Juliana Quintanilha da Silveira, João Carlos Correia Baptista Soares de Mello, Lidia Angulo-Meza
HTML | PDF
10
Aplicación del método de composición musical al problema de asignación de unidades de enseñanza y aprendizaje (2014)
Rafaela Blanca Silva López, Rosa Elena Cruz Miguel, Eric Alfredo Rincón García, Roman Anselmo Mora Gutiérrez, Antonin Ponsich
HTML | PDF
11
Desarrollo de un simulador para el protocolo de criptografía cuántica E91 en un ambiente distribuido (2015)
Luis Cáceres Alvarez, Roberto Fritis Palacios, Patricio Collao Caiconte
HTML | PDF
12
Aplicación web basada en programación por restricciones para ingeniería de asignación de espectro (2015)
Fabio G. Guerrero, Juan Francisco Díaz, Carlos Andrés Delgado
HTML | PDF
13
Diseño de una red de distribución a través de un modelo de optimización considerando agotados (2017)
Harol Mauricio Gámez-Albán, Christopher Mejía-Argueta, Ricardo Arturo León Espinosa de los Monteros
PDF
14
Repensando la programación como formación práctica en Ingeniería: Un estudio de caso en primer año (2018)
Natalia Monjelat, Guillermo Rodríguez
PDF
15
Sistema de monitoreo remoto de acuicultura en estanques para la crianza de camarones (2018)
Susana Flores Mollo, Diego Aracena Pizarro
PDF


Otros Artículos

# Título Ver
1
Grado y dirección de la diversificación de las empresas industriales españolas: un análisis de la estrategia de la estrategia de diversificación relacionada (2006)
Patricia Huerta Riveros, José Emilio Navas López
HTML | PDF
2
Factores de éxito en proveedores de bienes manufacturados de la salmonicultura chilena (2009)
Carlos Torres Fuchslocher, Hanns de la Fuente Mella
HTML | PDF
3
Restauración de antiguas campanas de bronce. Parte I: pulvimetalurgia (2014)
Ernesto Ponce L., José de la Vega
HTML | PDF

Desarrollado por: Cristian Díaz Fonseca - cfonseca@matiasluke.cl