control de la velocidad en tiempo real de un motor dc...

12
CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC CONTROLADO POR LÓGICA DIFUSA TIPO PD+I USANDO LABVIEW REAL TIME DC MOTOR VELOCITY CONTROL BY FUZZY LOGIC TYPE PD+I CONTROLLERS USING LABVIEW Ricardo Rodríguez Bustinza 1 , Ewar Mamani Churayra 2 RESUMEN En este artículo, se presenta un método basado en inteligencia artificial para controlar una planta motor DC por un microordenador personal (PC), el que interactuando hardware y software logra el control de la velocidad del motor DC en tiempo real usando el algoritmo de control Difuso-PD+I. La adquisición de datos e identificación de los parámetros del motor DC han sido necesarias para el control de la velocidad del motor DC, por medio de la tarjeta de adquisición de datos PCI NIDAQ 6024E cuya interface corre en tiempo real que usa el Workshop Real-Time (RTW), el archivo de datos es procesado con la herramienta de identificación del programa Matlab llamada IDENT. El prototipo del sistema computadora-controlador se diseña empleando la programación grafica de LabVIEW, en este caso se hace uso de las herramientas Fuzzy Logic Control y Simulation Module. El control en tiempo real del sistema se lleva a cabo en el laboratorio usando el convertidor digital-a-analógico (DAC) y encoder formado por dos sensores de efecto hall de tipo incremental que por medio de un convertidor frecuencia voltaje se logra procesar las señales desde las entradas analógicas de la NIDAQ. Se verifican los resultados de simulación de computadora experimentalmente, los que demuestran que la señal de control diseñada puede hacer que la salida del sistema prototipo siga eficientemente las referencias impuestas con mínimo sobrepaso y error en estado estacionario nulo. Palabras clave.- Motor DC, Adquisición de datos, Identificación de parámetros, Diseño del controlador e implementación. ABSTRACT In this article, a method is presented based on artificial intelligence to control a plant DC motor for a personal microcomputer (PC), that interacted hardware and software achieves the control of the speed of the DC motor in real time using the control algorithm Fuzzy-PD+I. The acquisition of data and identification of the parameters of the DC motor have been necessary for the control of the speed of the motor DC, by means of the card of acquisition of data PCI NIDAQ 6024E whose interface runs in the real time that the Workshop Real-Time uses (RTW), the file of data is processed with the tool of identification of the program called IDENT of Matlab. The prototype of the system computer-controller is designed using the graphic programming of LabVIEW, in this case use of the tools Fuzzy Logic Control and Simulation Module. The control in real time of the system is carried out in the laboratory using the digital-to-analogical converter (DAC) and incremental encoder formed by two sensors of effect hall that is possible to process the signs from the analogical input of the NIDAQ by means of a convertor frequency voltage. The results of computer simulation are verified experimentally, those that demonstrate that the designed control sign can make that the exit of the system prototype follows the references imposed with minimum overshoot and null steady-state error. _____________________________________________________________________________________________________________________________ ______________ 1 M.Sc, Ing. Profesor Investigador de la Facultad de Ingeniería Mecánica de la Universidad Nacional de Ingeniería, 2 Bachiller Investigador de la Escuela Profesional de Ingeniería Mecatrónica, Universidad nacional de Ingeniería.

Upload: vokien

Post on 11-Jul-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UNMOTOR DC CONTROLADO POR LÓGICA DIFUSA TIPO PD+I

USANDO LABVIEW

REAL –TIME DC MOTOR VELOCITY CONTROL BY FUZZYLOGIC TYPE PD+I CONTROLLERS USING LABVIEW

Ricardo Rodríguez Bustinza1, Ewar Mamani Churayra2

RESUMEN

En este artículo, se presenta un método basado en inteligencia artificial para controlar unaplanta motor DC por un microordenador personal (PC), el que interactuando hardware ysoftware logra el control de la velocidad del motor DC en tiempo real usando el algoritmo decontrol Difuso-PD+I. La adquisición de datos e identificación de los parámetros del motor DChan sido necesarias para el control de la velocidad del motor DC, por medio de la tarjeta deadquisición de datos PCI NIDAQ 6024E cuya interface corre en tiempo real que usa el WorkshopReal-Time (RTW), el archivo de datos es procesado con la herramienta de identificación delprograma Matlab llamada IDENT. El prototipo del sistema computadora-controlador se diseñaempleando la programación grafica de LabVIEW, en este caso se hace uso de las herramientasFuzzy Logic Control y Simulation Module. El control en tiempo real del sistema se lleva a caboen el laboratorio usando el convertidor digital-a-analógico (DAC) y encoder formado por dossensores de efecto hall de tipo incremental que por medio de un convertidor frecuencia voltaje selogra procesar las señales desde las entradas analógicas de la NIDAQ. Se verifican losresultados de simulación de computadora experimentalmente, los que demuestran que la señal decontrol diseñada puede hacer que la salida del sistema prototipo siga eficientemente lasreferencias impuestas con mínimo sobrepaso y error en estado estacionario nulo.

Palabras clave.- Motor DC, Adquisición de datos, Identificación de parámetros, Diseño delcontrolador e implementación.

ABSTRACT

In this article, a method is presented based on artificial intelligence to control a plant DC motorfor a personal microcomputer (PC), that interacted hardware and software achieves the controlof the speed of the DC motor in real time using the control algorithm Fuzzy-PD+I. Theacquisition of data and identification of the parameters of the DC motor have been necessary forthe control of the speed of the motor DC, by means of the card of acquisition of data PCI NIDAQ6024E whose interface runs in the real time that the Workshop Real-Time uses (RTW), the file ofdata is processed with the tool of identification of the program called IDENT of Matlab. Theprototype of the system computer-controller is designed using the graphic programming ofLabVIEW, in this case use of the tools Fuzzy Logic Control and Simulation Module. The controlin real time of the system is carried out in the laboratory using the digital-to-analogical converter(DAC) and incremental encoder formed by two sensors of effect hall that is possible to processthe signs from the analogical input of the NIDAQ by means of a convertor frequency voltage. Theresults of computer simulation are verified experimentally, those that demonstrate that thedesigned control sign can make that the exit of the system prototype follows the referencesimposed with minimum overshoot and null steady-state error.

___________________________________________________________________________________________________________________________________________

1M.Sc, Ing. Profesor Investigador de la Facultad de Ingeniería Mecánica de la Universidad Nacional deIngeniería, 2Bachiller Investigador de la Escuela Profesional de Ingeniería Mecatrónica, Universidad nacionalde Ingeniería.

Page 2: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

6 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

Keywords.- DC Motor, Data acquisition, Parameters identification, Control design andimplementation.

INTRODUCCION

El “hacer girar” a los motores, es una tareacomplicada, más aun cuando estos están siendocontrolados por una computadora. El propósito deeste artículo es presentar un método práctico ysistemático para el diseño, simulación, y controlbasado en lógica difusa en tiempo real de unaplanta de motor DC, usando una computadorapersonal como el organizador y desarrollador deobjetivos mediante el programa gráfico deLabVIEW.

Hay muchos tipos de motores DC en la industriaque usan una inercia del rotor que pueden ser muypequeñas y como resultado comercialmenteexisten, motores con muy alto torque-inercia. Lossistemas de motores DC son generalmentecontrolados por la técnica convencional decontroladores Proporcional-Integral-Derivativo(PID), debido a que ellos son diseñadosfácilmente, tienen un bajo costo, el mantenimientoes barato y con alta efectividad. A menudo esnecesario saber el modelo matemático paraconstituir algunos experimentos para sintonizar losparámetros del controlador PID. Sin embargo, seconoce que los controladores PID convencionalesgeneralmente no trabajan bien para los sistemasno-lineales, particularmente los sistemascomplejos con incertidumbres y que no tienenningún modelo matemático preciso. Para superarestas dificultades, hay varios tipos demodificaciones de controladores PIDconvencionales como el desarrollo decontroladores PID adaptivos, [1].

También el controlador basado en lógica difusa(FLC) puede usarse para este tipo de problemas.Cuando se compara al controlador convencional, laventaja principal de la lógica difusa es que norequiere del modelo matemático.

Desde que el controlador presenta base de reglasdifusas basadas en el conocimiento del sistema y laexperiencia del ingeniero de control, el FLCrequiere un modelo matemático menos complejoque los controladores convencionales. Así mismo,para lograr una alta performance los FLC necesitanun esquema alternativo para el control de unsistema, en este caso se trata de un controladorDifuso-PD+I cuyo diagrama de bloques se muestra

en la Fig. 1, donde observamos que la acciónintegral es externa al sistema, siendo beneficiosocuando se reduce el offset.

El diagrama también presenta los bloques queinteractúan con las salidas y entradas analógicas dela NIDAQ PCI 6024E.

Fig. 1 Sistema de adquisición de datos.

ADQUISICION DE DATOS

La adquisición de datos es el proceso queinvolucra la recopilación de información de unaforma automatizada a partir de fuentes demedición análogas y digitales como sensores ydispositivos bajo prueba. La adquisición de datosutiliza una combinación de medición de hardwarey software basado en PC para proporcionar unsistema de medición flexible y definido por elusuario.

El proceso a controlar es un Motor DC EMG30que interconectada con el puerto PCI de lacomputadora donde se encuentra insertada latarjeta de adquisición de datos PCI 6024E quecorre en tiempo real, si combinamos la habilidadde la computadora digital de llevar a cabo cálculoscomplicados y realizar diversas decisiones develocidad y exactitud, resultará un sistema muyflexible que puede manejar una gran variedad deproblemas con el esfuerzo de una programaciónmínima.

La adquisición de los datos y diseño delcontrolador se llevará a cabo mediante lasherramientas del lenguaje grafico de LabVIEWque nos permite implementar el sistema de control,manejando las entradas/salidas análogas en formaconveniente como se muestra en la Fig. 2.

Page 3: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

7Control de la velocidad en tiempo real de un motor DC controlado por lógica difusa tipo PD+I usando

Labview

iMac

Fig. 2 Sistema de adquisición de datos.

El procedimiento experimental de la Fig. 2, nosconduce a obtener la DATA del sistema, la mismaque será analizada para los fines de laidentificación del proceso. Por identificación seentiende la formulación de un modelo que permitarepresentar al sistema con todas sus propiedades ycaracterísticas relevantes. En general, si realizamosun experimento en que aplicamos ciertos valores alas entradas del sistema, obtendremos ciertasrespuestas en sus salidas; de ese modo, dando losmismos valores que en el experimento a lasvariables independientes de nuestro modelo,podemos esperar que después de resolver elconjunto de ecuaciones, la respuesta del modelodebe tener respuestas similares a aquellas salidasdel sistema físico. En nuestro caso usaremos elToolbox de Identificación de parámetros deMatlab, que es una interface gráfica mostrada en laFig. 3.

Fig. 3 Interfaz gráfica del toolbox deidentificación (IDENT) de matlab.

IDENTIFICACIÓN DE PARÁMETROS

El procedimiento para obtener los parámetros delmotor DC EMG-30, y en general de cualquier otromotor DC, presenta el siguiente procedimiento:

Primero.- Usaremos dos motores DC iguales (ocon características similares) y que esténacoplados mecánicamente en los ejes de forma queun motor funcione como generador y el otro como

motor como se muestra en la Fig. 4. En el motorque funciona como generador las conexiones quedebieran ser la alimentación del motor DC,funcionan como salida, siendo la respuesta delsistema a una entrada arbitraria, lo que quiere decirque la entrada en el motor que funciona comomotor DC debe ser variable para apreciar la saliday/o respuesta en el motor que funciona comogenerador.

Fig. 4 Acople mecánico de los motores EMG30.

Segundo.- Las entradas análogas en una tarjeta deadquisición de datos son usadas para señalesprovenientes de cada motor, dichas señalescorresponden a la alimentación de cada motor, laprimera señal es la alimentación variable al motorque funciona como tal, y que en este caso es lavariable de entrada, la segunda señal adquiridaproviene de la alimentación del motor quefunciona como generador, en este caso es lavariable de salida, se debe tener en cuenta quedebido a la simetría de los motores, la conexión depolaridad de la segunda señal hacia la tarjeta deadquisición de datos debe ser inversa a la que serealizó con la primera señal. Se midendirectamente los voltajes de alimentación de losmotores debido a la relación lineal existente entrela alimentación de un motor DC y la velocidad queestos desarrollan. Las señales adquiridas medianteMatlab (ver Fig. 5).

Fig. 5 Diagrama de bloques en Simulink para laadquisición de datos.

Page 4: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

8 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

Tercero.- Se procede a adquirir la DATA para elpre procesamiento de los datos, para ello se cuentacon diferentes medidas que serán procesadas endiferentes archivos. Se hace necesario filtrar estasseñales adquiridas, para esto se implemento un

filtro digital pasa bajo que anule la señal de ruidoacoplada a estas señales. En la Fig. 6 se muestraun ejemplo de las señales originalmente adquiridaspor la tarjeta PCI6024E antes y después delfiltrado respectivo.

Fig. 6 Señales adquiridas desde la PCI 6024E.

Cuarto.- Generar la función de transferencia delMotor DC, usando los datos filtrados, mediante laherramienta IDENT de Matlab aproximamos unafunción de transferencia que represente el motor,esto requiere configurar adecuadamente la funciónde transferencia a la que se desea aproximar,

además IDENT permite comparar las respuestas detodas las funciones de transferencia aproximadascon cada entrada, es decir muestra y compara lasrespuestas de los diferentes sistemas aproximadospara una misma entrada con la respuesta real talcomo se muestra en la Fig. 7.

Fig. 7 Comparando las señales para procesamiento con el IDENT de matlab.

Luego de comparar todas las funciones detransferencia con cada uno de los modelos seobtiene la Tabla 1, que resume los porcentajes deaproximación de todos los modelos con las

referencias de respuesta real. La Tabla 1 es uncuadro comparativo de las respuestas de losmodelos a las diferentes entradas y las señalesreales de salida del sistema motor.

Page 5: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

9Control de la velocidad en tiempo real de un motor DC controlado por lógica difusa tipo PD+I usando

Labview

Tabla 1. Aproximaciones de los modelos

En la Tabla 1 podemos apreciar que el modelo 6posee mejores aproximaciones con todas lasseñales de referencia. El objetivo es encontrar elmejor modelo que aproxime a la función detransferencia dado en (1).

( ) = + + + (1)

El modelo del motor DC para la posición angulardel motor DC viene dado por:( )( ) = [( + )( + ) + ] (2)

Donde, los parámetros son: inercia ( ), coeficientede fricción viscosa ( ), Resistencia de armadura( ), inductancia de armadura ( ), constante demotor ( ), y constante contra electromotriz ( ).

Podemos usar la aproximación = en losmotores DC para simplificar el número deparámetros.

Además, se requiere de un integrador y ademásmultiplicar por el factor de ganancia , de modoque tengamos la representación de la función detransferencia como voltaje de salida sobre voltajeentrada, dando la forma:

= + ( + ) + ( + ) (3)

Comparando coeficientes las ecuaciones (1) y (3),establecemos las siguientes relaciones:= (4)= (5)+ = + (6)+ = 1 (7)

En la Tabla 2 resume las características de losdiferentes modelos que presentan las mejoresaproximaciones.

Tabla 2. Parámetros de los mejores modelosobtenidos desde el IDENT de Matlab.

Con estos valores proporcionados por la Tabla 2,podemos obtener los parámetros del modelo yjunto con las ecuaciones dadas en (4), (5), (6), y

Page 6: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

10 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

(7) obtenemos los coeficientes de los parámetrosdel motor DC que se listan en la siguiente Tabla 3.

Tabla 3. Parámetros del motor DC EMG30.

El valor de la resistencia se realizó mediantemedición directa entre los cables de alimentaciónde cada motor siendo = 5.2Ω. Con ellopodemos conformar la función de transferencia delmotor DC dado por:

= 0.8931741151656.75501231 × 10 + 7.2368 × 10 + 1(8)

CONTROLADOR DIFUSO PD+I

El uso de técnicas de control clásico como es elcontrol PID de ganancia fija, en algunos casosresulta ser una buena alternativa para controlarsistemas dinámicos; ya que proporcionan tiemposde respuesta rápidos, sin embargo entre mayor esla precisión requerida en el sistema el ajuste deeste tipo de control es más difícil ya que sonbastante sensibles a las señales de ruido y enocasiones introducen oscilaciones cuando sepresentan retardos en el sistema. Cuando ladinámica de los sistemas o procesos a controlar esno lineal, el control tiene que tener la capacidad decompensar esta no-linealidad y aunque el controlPID asume relaciones lineales, este no tiene lacapacidad para responder a estas no linealidades.La no linealidad difícilmente puede sercaracterizada por una ecuación por lo que en lamayoría de los casos es tratada de manerasubjetiva por el operador del proceso. Estasubjetividad tiene implicaciones profundas parapoder modelar este tipo de sistemas a través de lalógica difusa, [3]. La implementación decontroladores PD+I en hardware basados en lógica

difusa es motivada por su habilidad para capturarestrategias cualitativas de control y su capacidadde implementar un comportamiento de controlaltamente flexible. Con estos podemos lograr quenuestros sistemas puedan ajustarse a condicionescambiantes que son muchas veces imposibles depredecir, tales como los cambios ambientales o lascondiciones de desgaste en sus componentesfísicos, por citar algunos ejemplos.

Dentro de los objetivos que nos planteamosresolver:

Diseño de un Controlador Difuso PD+Ipara un Motor DC.

Simular del Controlador Difuso PD+I enLabVIEW.

Implementar en Tiempo Real delControlador Difuso PD+I.

SINTONÍA DEL CONTROLADORPID USANDO EL MÉTODO DE

ZIEGLER NICHOLS

Para el diseño de un controlador PID mediante elmétodo de Ziegler Nichols, se hace necesarioconocer las características de respuesta de la planta(Motor DC EMG-30) a una entrada de referenciaescalón unitario, la extracción de esascaracterísticas se muestran en la Fig. 8.

Fig. 8. Curva de reacción de Ziegler Nichols

Los parámetros resultantes desde la curva dereacción de la Fig. 8 son:

Page 7: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

11Control de la velocidad en tiempo real de un motor DC controlado por lógica difusa tipo PD+I usando

Labview

= 0.0225= 0.8931= 0.02105= 0.8355De acuerdo a las tablas proporcionadas por ZieglerNichols obtenemos los parámetros de sintonía delcontrolador PID que se muestran en la Tabla 3.

Tabla 3. Parámetros PID Ziegler Nichols.

1.2 2 0.51.4362 0.0421 0.0105Los parámetros encontrados corresponden a laestructura del controlador PID dado por:

= ∙ + 1 ∙ ∙ + ∙ −(9)

DISEÑO DEL LAZO DE CONTROL DIFUSOPD+I

Supongamos que se desea controlar un sistemaSISO (de entrada y salida única). Resulta entoncesconveniente utilizar como variables de entrada alcontrolador, el error existente en el proceso( = − ) el cambio del error ( / ) y laacumulación del error (∫ ). Luego cada unadebe ser fuzzyficada, es decir, se deben definir unacantidad de funciones de pertenencia querepresenten los diferentes estados (lingüísticos)que pueden tomar estas variables (por ejemplo,error pequeño, mediano o grande). Para realizareste punto se dispone de una gran cantidad defunciones, tales como gaussianas, triangulares,trapecios, etc.

El procedimiento para definir las funciones debeser el siguiente:

Se elige un número de funciones, de talmodo que se represente todos los estadosque la variable tome.

Se diseñan de un ancho mínimo suficienteque permita obviar el ruido de medición.

Se desea un cierto grado de cruzamientoentre las distintas funciones, para noincurrir en estados pobremente definidos.

Se recomienda partir con funcionessimétricas, para posteriormente realizarajustes.

Inicialmente se recomienda unentrecruzamiento del 50%, de tal modoque cada elemento quede representado enal menos dos funciones.

Luego se deben definir las reglas base, cuyafunción es establecer una vinculación lógica entrelos grados de pertenencia de las distintas variablesde entrada, por ejemplo, si el error es grande ycrece entonces se debe aplicar actuación correctivagrande. Se definen entonces todas las sentenciaslógicas posibles, asignándole a cada una suactuación correspondiente. Luego, las actuacionesdeben ser defuzzyficadas, para ser convertidas anúmero, lo que se logra mediante diversosmétodos, siendo el más utilizado el del centroide,[2].

Una mayor cantidad de entradas, se tiene unamayor cantidad de reglas base, lo que dificultacrecientemente el diseño del controlador. Por ello,conviene retirar el factor integrativo de lasentradas al controlador Fuzzy, para incorporarlo enforma individual sumándolo a la actuación final.Se tiene entonces una especie de controladorhíbrido en que el error y el cambio del error sonvariables de tipo difuso, y la acumulación del errores determinística (crisp). El cambio anterior quedailustrado en la Fig. 9.

Fig. 9 Diagrama del controlador difuso conganancias.

INTRODUCCIÓN A LAS GANANCIAS DEAJUSTE

El controlador difuso PD+I presenta tres términosde entrada: error, error integral, y el error

Page 8: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

12 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

derivativo. Una base de la regla con tres entradas,fácilmente llega a ser bastante grande y, como semencionó anteriormente, las reglas acerca de laacción integral son una molestia. Por consiguientees común separar la acción integral como en elcontrolador difuso PD+I (DPD+I) que se muestraen la Fig. 10.

Fig. 10 Controlador difuso PD+I

La aproximación lineal para el controlador es:

= ∗ ∙ + + (10)

En la última línea asumimos a no cero.Comparando (9) y (10) las ganancias sonrelacionadas de la siguiente forma.∗ = (11)

= (12)

= 1 (13)

Siendo los valores numéricos dados en la Tabla 4.

Tabla 4. Parámetros del controlador DifusoPD+I.

1 1.4362 23.7530 0.0105ALGORITMO DE CONTROL DIFUSO

Considerando la descripción de la planta realizaday modelo de la misma, se procedió a diseñar unsistema en base a lógica difusa mediante el cual sepudiese controlar de buena forma la velocidad delmotor DC. Para ello, se empleó un controlador querecibe como entradas el error , definido como ladiferencia entre el ángulo deseado y el medido; yla derivada del error / . Este controladorentrega una salida proporcional a la rapidez de latensión de actuación sobre el motor DC. Paraeste diseño, se emplearon 7 conjuntos difusos paracada variable de entrada y 7 conjuntos difusos parala variable de salida, haciendo en total 49 reglas(ver Tabla 5).

Tabla 5. Base de reglas difusas.

Derivada del errorΔ

NB NM NS ZO PS PM PB

Error

NB NB NB NB NB NM NS ZO

NM NB NB NB NM NS ZO PS

NS NB NB NM NS ZO PS PM

ZO NB NM NS ZO PS PM PB

PS NM NS ZO PS PM PB PB

PM NS ZO PS PM PB PB PB

PB PB PB PB PB PB PB PB

Page 9: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

13Control de la velocidad en tiempo real de un motor DC controlado por lógica difusa tipo PD+I usando

Labview

La base de reglas tiene estructura IF – THEN, lasfunciones de pertenencia triangulares, implicanciamediante el operador MIN y defuzzyficacionmediante el método del centroide.

Para implementar este controlador, se utilizó elToolkit de Lógica Difusa de LabVIEW, [5 y 6].Los resultados de la simulación del controladorDifuso PD+I muestra la ventana interactiva en elpanel frontal de la Fig. 11.

Fig. 10 Front panel del controlador difuso PD+I.

Mientras que el programa del controlador esmostrado en la Fig. 12.

Fig. 11 Block diagram del controlador difusoPD+I.

IMPLEMENTACION EN TIEMPO REAL

La implementación real del sistema presenta lossiguientes componentes físicos (hardware): latarjeta de adquisición de datos, PCI6024E.

Computadora Pentium IV con los lenguajes deprogramación LabVIEW y Matlab, unosciloscopio, generador de funciones, fuentebipolar, y el motor DC EMG-30. Este sistema semuestra en la Fig. 12.

Fig. 12 Implementación del sistema real.

Para la realización del control de la velocidad delmotor DC en tiempo real se utilizó el programaLabVIEW que es un ambiente de programacióngráfico amigable para el usuario.

Tiene muchas características para trabajar con lastarjetas de adquisición de datos comerciales comola PCI6024E que tiene la capacidad de conversiónA/D y D/A, entradas y salidas digitales (digitalI/O) y contadores-timers (Counter/Timers). [4].

CIRCUITOS ELECTRÓNICOS.

Las limitaciones físicas de algunas tarjetas deadquisición de datos, implican simplificar lasseñales de los sensores a entradas análogas, ya quees lo más común de realizar, para el caso delcontrol de velocidad del motor además tenemosque procesar la señal de control y amplificar dichaseñal adecuadamente a PWM, ya que es la formamás común de realizar el control de un motor DC.

A continuación se describen los circuitoselectrónicos empleados y las características de losmismos.

Page 10: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

14 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

Lectura de encoder

Este circuito se encarga de efectuar la correctalectura del encoder que posee el motor EMG-30,cuyo diagrama esquemático (ver Fig. 13).

Fig. 13 Circuito para lectura de encoder.

Este circuito requiere de una Fuente de Voltaje de5V y el tipo de conexión para los canales A y Bdel encoder es PullUp con resistencias de 4.7k.

Convertidor frecuencia voltaje

La mayor cantidad de entradas análogas en unatarjeta de adquisición de datos, implica que laseñal del encoder deba ser convertida, la formamás común de realizar dicha transformación esconvirtiendo la frecuencia en voltaje en unarelación lo más lineal posible, ya que la frecuenciade señal emitida por un encoder representavelocidad, se deben limitar adecuadamente losniveles de voltaje que corresponden a unafrecuencia determinada o velocidad, para estousaremos el integrado LM331 que posee unalinealidad desde 1Hz hasta 10KHz, laconfiguración básica del circuito se muestra en laFig. 14.

Fig. 14 Circuito para conversión de frecuencia avoltaje.

Señal de control en PWM

Luego de procesar la señal de error por parte de laPC es decir luego de efectuar la corrección delerror, el envío de la señal de control se hacemediante uno de los puertos análogos de salida dela DAC PCI6024E, esta señal no posee lascaracterísticas suficientes como para ingresardirectamente al motor sino que debe ser procesadaadecuadamente; la forma de control más común ynormal es mediante PWM, es decir, la conversiónde la señal de voltaje de control en un señal defrecuencia constante con un ancho de pulsovariable que depende de los niveles de voltaje, esdecir toda la señal de control es transferida almotor pero con diferentes anchos de pulso y nohay pérdidas debido a que es a voltaje constante ylo único que varía son los anchos de pulso.

La conversión de la señal de control a PWM larealizamos usando un microprocesadorPIC16F877A, ya que dicho integrado posee unmodulo especial de conversión de una señalanáloga cualquiera en PWM, modulo que seaprovecha para el control de motores, pero nuestraaplicación solo busca usar el modulo para laconversión de la Señal de control a PWM ya que elobjetivo es diseñar controladores y probarlos desdela PC en Tiempo Real.

Las conexiones que se requieren para elfuncionamiento del módulo PWM se muestran enla Fig. 15.

Fig. 15 Módulo PWM del PIC 16F8777A.

Page 11: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

15Control de la velocidad en tiempo real de un motor DC controlado por lógica difusa tipo PD+I usando

Labview

Etapa de potencia

La etapa de potencia se hizo con el integradoL6203, que básicamente es un puente H especialpara el control de motores y que soporta inclusivehasta 5A de corriente sin problema alguno, elesquemático de este circuito se presenta en la Fig.16.

Fig. 16 Circuito amplificador de potencia.

La señal de PWM generada por el PIC 16F877Ano posee las características de corriente necesariaspara poder mover el motor a cualquier nivel devoltaje, probablemente solo se pueda generarvelocidades pequeñas si solo usamos la señaldirecta del PIC, por ese motivo dicha señal debeser amplificada para que los niveles de corrienteque requiere el motor sean satisfechos.

Los resultados de respuesta del sistema en tiemporeal se muestran en la Fig. 17.

Fig. 17 Control de velocidad del motor DC entiempo real.

La implementación del programa de control entiempo real se muestra en la Fig. 18

Fig. 18 Diagrama de adquisición de datos parael control de la velocidad del motor DCen tiempo real.

CONCLUSIONES

Para realizar este trabajo de investigación, se hatenido que implementar el sistema para el controlde la velocidad del motor DC. La implementaciónha sido fundamental para manipular las variablesfísicas e interactuar convenientemente con latarjeta de adquisición de datos PCI6024E.

El diseño del sistema de control se realizómediante la técnica Difuso PD+I, en este caso seha requerido del modelo para identificar losparámetros del motor DC, siendo estos resultadosóptimos para el diseño del control.

La técnica de control Difuso PD+I cumple con lasmetas impuestas en este trabajo como son, mínimosobrepaso, y error en estado estacionario nulo, losque se han verificado mediante la implementaciónen tiempo real y validando así la técnica de controldesarrollada en este articulo.

REFERENCIAS

1. Jantzen, J., “Design Of Fuzzy Controllers”.Technical University of Denmark. Denmark,1998.

2. Jantzen, J., Tuning Of Fuzzy PID Controllers.Technical University of Denmark. Denmark,1998.

3. Lotfi, Z., Fuzzy Logic Toolbox, User’s Guide.Versión 2. The Math Works, Inc. 1995.

Page 12: CONTROL DE LA VELOCIDAD EN TIEMPO REAL DE UN MOTOR DC …tecnia.uni.edu.pe/site/DataTecnia/TECNIA-24-(1)-2011-01.pdf · sistema, en este caso se trata de un controlador Difuso-PD+I

TECNIA 21 (1) 2011

16 Ricardo Rodríguez Bustinza, Ewar Mamani Churayra

4. PCI6024E National Instruments. User Guide,2005.

5. http://www.ni.com/labview/esa/

6. http://www.ni.com/dataacquisition/esa/

Correspondencia: [email protected]