INSTITUTO POLITÉCNICO NACIONALtesis.ipn.mx/jspui/bitstream/123456789/13202/1/TesisOK.pdf · 2017....
Transcript of INSTITUTO POLITÉCNICO NACIONALtesis.ipn.mx/jspui/bitstream/123456789/13202/1/TesisOK.pdf · 2017....
INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA
UNIDAD PROFESIONAL ZACATENCO “ADOLFO LÓPEZ MATEOS”
“CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE
EN EL MICROCONTROLADOR FLEXIS JM128”
Trabajo Derivado del Proyecto: 20131437
QUE PARA OBTENER EL TÍTULO DE INGENIERO ELECTRICISTA
PRESENTAN:
EDGAR GUTIÉRREZ GUERRA
JOSÉ ERNESTO GUTIÉRREZ RODRÍGUEZ
DANIEL SIERRA GALINDO
ASESORES: M. EN C. HERRERA ESPINOSA JAVIER
M. EN C. GARCÍA LÓPEZ MANUEL
México D.F. 2014.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128
AGRADECIMIENTOS
Edgar Gutiérrez Guerra
Doy gracias a mi madre por darme la vida, por procurar mi bienestar y estar siempre a mi lado. A mi tía por formar de mi la persona que ahora soy, por los consejos, por los cuidados que tuvo en mi
sin importar las circunstancias, por darme la oportunidad de tener una educación a este nivel, gracias
por enseñarme que no existe ningún impedimento físico para poder lograr lo que queremos, que basta
con tener el deseo de salir adelante y poner todo nuestro empeño en cada cosa que nos
propongamos hacer.
Me lleno de orgullo de poder ser un egresado más de la ESIME del IPN, por lo que agradezco a la
institución permitirme tener una formación académica profesional, que gracias al apoyo de cada uno
de los profesores que me impartieron clase pude obtener los conocimientos teórico-práctico
necesarios en la ingeniería eléctrica.
DEDICATORIAS
A mi hijo por darme el impulso para terminar este proyecto que inicie y que por un momento creí
imposible terminar.
A mi familia por el apoyo incondicional que me han dado.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128
AGRADECIMIENTOS
José Ernesto Gutiérrez Rodríguez
A DIOS Le doy gracias a dios por bendecirme con una familia muy unida a la cual aprecio y amo con toda el
alma.
A MIS PADRES
José Antonio Gutiérrez Arias y Verónica Rodríguez Vite, por su gran apoyo durante mis estudios, ya
que con sus buenos consejos me han ayudado a tener fuerzas en los momentos más adversos de mi
vida, y el terminar la carrera de ingeniería es un logro que se los dedico con amor, gracias por ser los
mejores padres del mundo.
A MIS HERMANAS
Berenice Azare Gutiérrez Rodríguez y María Isabel Gutiérrez Rodríguez, por su apoyo y cariño. Y
decirles que en mi tienen más que un hermano a un amigo con el cual siempre podrán contar.
AL INSTITUTO POLITÉCNICO NACIONAL
Agradezco a mi alma mater por darme la oportunidad de formarme como ingeniero electricista en una
de las escuelas perteneciente a esta, la gloriosa ESIME, estoy seguro que el conocimiento adquirido
en las aulas me servirá para poderme desarrollar como un excelente ingeniero, y buscare poner
siempre en alto el nombre de la ESIME.
PROFESOR ASESOR
Gracias al M. en C. Javier Herrera Espinosa por apoyarnos con su conocimiento y dedicación, para
poder llevar acabo la realización de esta tesis, ya que su experiencia en el tema nos sirvió de mucha
ayuda en momentos de dificultad. Le deseo que todas sus metas se cumplan.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 i
RESUMEN
En este trabajo se realiza un control de velocidad para un motor de C.C por medio de un controlador convencional PID. El sistema de control en presencia de perturbaciones, manda una señal por medio de un lazo de retroalimentación al controlador PID para que opere y mande al sistema a su valor de referencia. El trabajo de tesis inicia, con la consulta de algunas aplicaciones de técnicas de control y con la utilización de sistemas de electrónica. Se prosigue con los conceptos teóricos de control convencional P, PI, PID y las técnicas de sintonización. La parte de sintonización del sistema se realiza primero en simulación (Simulink de MATLAB®) y posteriormente en la implementación física del controlador PID, el cual se encuentra programado en el sistema embebido del (microcontrolador FlexisJM128). Se muestra además, la interacción entre software y hardware de tal manera que se puede ver el uso de los dispositivos que se necesitan para que el regulador funcione. Por último, se muestran las gráficas del comportamiento del controlador PID cuando regula la velocidad del motor de C.C. Las pruebas realizadas al sistema fueron: arranque con PID con y sin carga en el motor, arranque con rampa (sin PID) con y sin carga, adición de carga y sustracción de la misma súbitamente.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 ii
ABSTRACT
In this work, a speed control for a DC motor is realized by means of a conventional PID controller. The control system in the presence of disturbance, it sends a signal via a feedback loop PID controller to operate and command the system to its reference value. The thesis work starts, consultation with some applications of control techniques and with the use of electronics systems. Is continued with the theoretical concepts of conventional control P,PI, PID and the tuning techniques. The system of tuning is performed first simulation (MATLAB Simulink ®) and later in the physical implementation of the PID controller, which is programmed into the embedded system (microcontroller FlexisJM128). Is also shown, the interaction between software and hardware so that it can be seen the use of devices that are need so that the controller works. Finally, the graphs of the behavior of the PID controller are shown when regulating the speed of the DC motor. Tests on the system were: starting with PID with no load on the engine, ramp start (no PID) with and without load, load addition and subtraction of it suddenly.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 iii
ÍNDICE
pág.
Resumen ……………………………………………………………………………………...i
Abstract …………………………………………………………………………………….…ii
Índice ……………………………………………………………………………………….…iii
Glosario …...…………………………………………………………………………………vii
Abreviaturas y símbolos ...…………………………………………………………………viii
Índice de figuras ……………………………………………………………………………..xi
Índice de tablas ………………………………………………………………………….….xv
Capítulo 1 Introducción ….………………………..…………………………………..…....1
1.1 Estado del Arte ...………………….…………………………………………….……....2
1.2 Objetivo …………………………………………………………………………………..6
1.2.1 Objetivo general …………………………………………………………………..6
1.2.2 Objetivos específicos …………………………………………………………….6
1.4 Justificación ……………………………………………………………………………...7
1.5 Estructura .…………………………………………………………………….………….8
Capítulo 2 Fundamentos Teóricos del Sistema de Control ….…….…………………...9
2.1 Motores de corriente continua ...………….……………………………………………9
2.1.1 Clasificación del Motor de C.C ……………………..………….…………...…...9
2.1.2 Circuito equivalente de un motor de C.C con excitación separada ….….…10
2.1.3 Modelado matemático del motor de C.C de excitación separada .………...11
2.2 Introducción al control clásico ………………………………………………………..13
2.2.1 Sistema de control en lazo abierto …...……………….………………………14
2.2.2 Sistema de control en lazo cerrado …………………….……………………..15
2.3 Controladores clásicos ………………………………………………………………..16
2.3.1 Control proporcional (P) ………………………….…………………………….16
2.3.2 Control proporcional-derivativo (PD) ….……...……………………………….18
2.3.3 Control proporcional-integral (PI) .....………………………………………….19
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 iv
pág.
2.3.4 Control proporcional-integral-derivativo (PID) ………….…………………….21
2.4 Sistemas de control en tiempo discreto ……………………………………………..23
2.5 Método de Sintonización para Controladores PID (Ziegler y Nichols) ….……….26
2.5.1 Método de Ziegler y Nichols en lazo cerrado …….………………..…….......26
2.5.2 Método de Ziegler y Nichols en lazo abierto .…….…………..……..…….....27
2.6 Modulación de ancho de pulso (PWM) ……………………………………………..29
Capítulo 3 Elementos Físicos del Sistema de Control …….…………………………..30
3.1 Descripción del controlador de velocidad PID …………………..………………….30
3.2 Máquina síncrona trifásica DL 30190 ………………………………………………..32
3.3 Motor de Corriente Continua DL 30250 …………………..…………………..……..33
3.4 Tacómetro electrónico DL 2025DT ………..……….…………………...…………...34
3.5 Transductor Óptico “encoder” DL 2031M ……..……………….…………..………..34
3.6 Tarjeta Flexis DEMOJM ……………………………………………………………….35
3.6.1Distribución de la memoria ……………………………………………………...36
3.6.2 Funciones de Temporización …………………………………………………..38
3.6.3 Conversión A/D ………………………………………………………………….40
3.7 Etapa de potencia ……………………………………………………………………...45
3.7.1 Inversor 74LS04 ….……………………………………………………..………46 3.7.2 Optoacoplador 4N25 …….……………………………………..……………….46
3.7.3 Mosfet IRFP4060 …………….………………………………………….……...46
3.8 Fuente de corriente continua DL 30018 ………………………………………..…...47
3.9 Fuente de alimentación C.C DL 2613 ….....…………………………….…...……...48
3.10 Diodo de silicio DL 2602 …………………………………………………..…………49
3.11 Módulo de cargas …………………………………………………………………….49
Capítulo 4 Simulación e Implementación del Sistema de Control ………….....……..50
4.1 Introducción ……………………………………………………………………………50
4.2 Sintonización mediante simulación del controlador PID …………………………..51 4.2.1 Respuesta a un escalón del motor de C.C ………………………………..….52
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 v
pág.
4.2.2 Ajuste de la curva y obtención de parámetros del PID ………..…….….…..53
4.2.3 Simulación y pruebas del sistema de control de velocidad ……......……….56
4.3 Implementación del controlador PID en el microcontrolador …………...…………60
4.4 Sintonización del controlador PID implementado ………..…………………………65
4.4.1 Adición de carga ………………………..……………………………………….66
4.4.2 Sustracción de carga ……………………………………………………………67
4.5 Pruebas y resultados del control de la velocidad del motor de C.C modelo
DL- 30250, mediante un controlador PID ………………………………………...…68
4.5.1 Instrumentación del sistema de control ……….……..………………………68 4.5.2 Pruebas y resultados ………………..………...……..…………..……………70 Capítulo 5 Conclusiones y Recomendaciones ……………….………..….……....…...74
5.1 Conclusiones ...…………………………………………………………………………74
5.2 Recomendaciones…………………………………………………………….………75
5.3 Aportaciones y Trabajos a futuro …...………………………………………………..75
Referencias ……………..………………………………………………………………….76
Apéndice A Uso de Codewarrior .…......………………..……………………………….81
A.1 Creación de un proyecto ………....…….……………………………...81
A.2 Agregar beans al programa …………………………….……………..85
A.3 Configuración del bean …………………………………….…………..86
Apéndice B Distribución de pines (pinout) del conector MCU PORT en el circuito
impreso del DEMOJM ..………………..……………..……………....……90
B.1 Distribución de pines MCF51JM128 LQPF/QFP ………………...…91
Apéndice C Descripción de los bloques del sistema de control simulado .……...…92
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 vi
pág. Apéndice D Hojas de datos de los elementos empleados en la etapa de
potencia del control de velocidad ….…………..…....…………….……...97
Apéndice E Resultados de los programas preliminares al PID ….......……………..104 E.1 Resultados de la programación de la rampa ……….……………...104
E.2 Resultados de la programación del PWM y el ADC ……………….105
E.3 Resultados de la programación de la rampa con el ADC y
el PWM……..……………….…….………….……………………………...107
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 vii
GLOSARIO
Microcontrolador: Es un circuito integrado o chip que incluye en su interior las tres
unidades funcionales de una computadora: CPU, Memoria y Unidades de E/S.
Set point: Es cualquier punto de ajuste de alguna variable de un sistema de control.
Punto de inflexión: Es un punto donde los valores de x de una función continua pasa
de un tipo de concavidad a otra.
Bits: Unidad de medida de información equivalente a la elección entre dos
posibilidades igualmente probables.
Software: Conjunto de programas, instrucciones y reglas informáticas para ejecutar
ciertas tareas en una computadora.
Hardware: Conjunto de los componentes que integran la parte material de una
computadora.
Función de transferencia: Es un modelo matemático que a través de un cociente
relaciona la respuesta de un sistema (modelada) a una señal de entrada o excitación
(también modelada).
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 viii
ABREVIATURAS Y SÍMBOLOS
ADC Convertidor analógico digital (Analog to Digital Converter).
A Ampere.
Acción proporcional.
Acción derivativa.
Acción integral.
Coeficiente de fricción viscosa.
Coeficiente de fricción viscosa de la carga.
Coeficiente de fricción viscosa del motor.
BDM Modulo para depurar (Background Debug Module).
BP Banda proporcional.
CAN Red área de control (Controller Area Network).
Corriente alterna.
Corriente continua.
c.d Corriente directa.
Code Warrior.
CMT Sistema temporizado para modulación de señal portadora (Carrier
Modulation Timer).
E(s) Señal de entrada.
f Frecuencia.
IIC Circuito integrado interno (Inter Integrated Circuit).
IA Corriente de armadura.
If Corriente de campo.
Momento de inercia.
Momento de inercia de la carga.
Momento de inercia del motor.
Constante del motor.
Constante de integración.
Constante de derivación.
Constante de proporcionalidad.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 ix
Ganancia Última.
KBI Interfaz para teclado (KeyBoard Interrupts).
L Tiempo de retardo.
Inductancia del campo.
LA1 Inductancia mutua de velocidad.
LAA Inductancia de armadura.
Transistor de efecto de campo con semiconductor de óxido metálico
(Metal Oxide Semiconductor Field Efect Transistor).
MW Megawatts.
mV milivolts.
ms milisegudos.
N Velocidad.
P Polos.
P Potencia real [Kw.].
P Control proporcional.
Control proporcional integral.
Control proporcional derivativo.
Control proporcional integral derivativo.
Modulación del acho de pulso (Pulse Width Modulated).
Resistencia de campo.
Resistencia de armadura.
RTC Contador de tiempo real (Real Time counter).
Revoluciones por minuto.
Radianes por segundo.
SAR Registro sucesivo de aproximación (Succesive aproximation Register)
SPI Interfaz periférica serial (Serial Peripherial Interface).
SCI Interfaz de comunicación serial (Serial Comunication Interface).
TPM Temporizadores/moduladores de ancho de pulso (Timer PWM
Module).
Par electromagnético.
Par externo de carga.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 x
T Constante de tiempo.
Tiempo de muestreo.
Tiempo integral.
u Periodo último.
U(s) Señal de retroalimentación.
Sesgo o reset.
V Volts.
Voltaje de campo.
Voltaje de armadura.
Voltaje en corriente directa.
Voltaje de entrada.
Voltaje medido.
Voltaje de salida.
Voltaje de referencia.
Velocidad rotacional o frecuencia angular.
W Watts.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 xi
LISTA DE FIGURAS
CAPÍTULO 2 pág.
Figura 2.1. Clasificación de los motores de C.C .……………………………………….10
Figura 2.2. Circuito equivalente simplificado de un motor de C.C de excitación
separada …………….......……………...………...…………………………..11
Figura 2.3. Motor de C.C con excitación separada con corriente de campo
constante…………….…………………………………………….………….12
Figura 2.4. Diagrama de bloques del modelo del motor de C.C con excitación
separada ………………………..…………………………………..…………13
Figura 2.5. Sistema de Control de Lazo Abierto ………………………………………..15
Figura 2.6. Sistema de Control de Lazo cerrado ……………………………………….15
Figura 2.7. Acción proporcional en un controlador ………………………….………....16
Figura 2.8. Diagrama de bloques del control proporcional …………………………….17
Figura 2.9. Acción proporcional y proporcional-derivativa …………………………….18
Figura 2.10. Diagrama de Bloques del control proporcional-derivativo ………….......19
Figura 2.11. Acción integral en un controlador …………………….……………………20
Figura 2.12. Diagrama de bloques del control proporcional-integral ……...…….……21
Figura 2.13. Acción de control proporcional-integral-derivativo ……...……………….22
Figura 2.14. Diagrama de bloques del sistema de control PID ………….……………22
Figura 2.15. Sistemas de control en tiempo discreto …………………………..………23
Figura 2.16. Sintonización en lazo cerrado …………..…………………………………26
Figura 2.17. Sintonización en lazo abierto ………………………………………...…….27
Figura 2.18. Curva de respuesta al escalón ..……………………….…………………..28
Figura 2.19. Modulación por ancho de pulso ……………………….…………………..29
CAPÍTULO 3
Figura 3.1. Diagrama a bloques de los elementos físicos que conforman al regulador
de velocidad ……..……………………………..……………………………..30
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 xii
pág.
Figura 3.2. Placa de datos Maquina Síncrona Trifásica DL 30190 ……...…………..32
Figura 3.3. Placa de datos del motor de C.C DL 30250 ……………….……….……..33
Figura 3.4. Tacómetro Electrónico DL 2025DT …………………………..………..…...34
Figura 3.5. Transductor Óptico DL 2031M ………...……………………………………35
Figura 3.6. Tarjeta Flexis DEMOJM …….………………………………………………..36
Figura 3.7. Mapa de memoria para la familia JM ……………………………………….37
Figura 3.8. Temporización de propósito general ……………………………………….38
Figura 3.9. Generación de señal PWM …...……………………………………………..38
Figura 3.10. Eje de la resolución en la conversión A/D ……...………………………...40
Figura 3.11. Eje del muestreo en la conversión A/D ………………..………………....42
Figura 3.12. Diagrama en bloques del ADC ………...…………………………………..43
Figura 3.13. Etapa de Potencia (elementos físicos) ……………………………………45
Figura 3.14. Simulación de la Etapa de Potencia ………………………………………45
Figura 3.15. Estructura y simbología del Mosfet ……………………………………....47
Figura 3.16. Fuente de alimentación DL 30018 ………………………………………...48
Figura 3.17. Fuente de alimentación DL 2613 ………………………………………….48
Figura 3.18. Diodo de silicio DL 2602 …………………………………………………....49
Figura 3.19. Módulo de Cargas …………………………………………………………..49
CAPÍTULO 4 Figura 4.1. Programa en Simulink del motor de C.C con excitación separada ……..52
Figura 4.2. Gráfica velocidad vs tiempo …………………………………………………53
Figura 4.3. Gráfica de la recta tangente para obtener los valores de L y T ………....55
Figura 4.4. Programa en Simulink del control de velocidad del motor de C.C con
controlador PID ……………………………………………………………….56
Figura 4.5. Velocidad del motor en vacío con arranque tipo rampa y controlador
PID ………………………………………………………………………….…..57
Figura 4.6. Corriente del motor en vacío con arranque tipo rampa y controlador
PID …..…..…………………………………………………………………..….57
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 xiii
pág.
Figura 4.7. Velocidad del motor en vacío con arranque tipo escalón y
controlador PID …...……………………………………………………...…...58
Figura 4.8. Corriente del motor en vacío con arranque tipo escalón y
controlador PID ..………………………………………………….…..………58
Figura 4.9. Velocidad del motor a plena carga con arranque tipo escalón y
controlador PID ……………………………………………………..…………59
Figura 4.10. Corriente del motor a plena carga con arranque tipo escalón y
controlador PID ………………….……………..………………………….…59
Figura 4.11. Código del programa de control tipo PID ………………………………...61
Figura 4.12. Diagrama de flujo del programa de control PID ………………………....62
Figura 4.13. Adición de carga …………………………………………....…….…………66
Figura 4.14. Adición de carga con sintonización …………....……………….………....66
Figura 4.15. Sustracción de carga ……………………………………………………….67
Figura 4.16. Sustracción de carga con sintonización ………………………………….68
Figura 4.17. Partes del Sistema de Control …………………….……………………….69
Figura 4.18. Equipo utilizado para la prueba sin carga .……………………………….69
Figura 4.19. Equipo utilizado para la prueba con carga ………….……………………70
Figura 4.20. Arranque con señal tipo rampa y motor en vacío …...…………………..70
Figura 4.21. Arranque con señal tipo rampa y motor cargado ……………...………...71
Figura 4.22. Arranque con señal tipo escalón y motor en vació ……………………...72
Figura 4.23. Arranque con señal tipo escalón con motor cargado…….………………72
Figura 4.24. Respuesta del control PID al adicionar de carga …....…………………..73
Figura 4.25. Respuesta del control PID al sustraer carga ……………………………..73
APÉNDICE A Figura A.1. Pantalla de ejecución del software CW ……………………………………81
Figura A.2. Pantalla Workspace Launcher ……………………………………….……..81
Figura A.3. Creación de un proyecto …………………………………………….……...82
Figura A.4. New Bareboard Project ………………………………………………….…..82
Figura A.5. Selección del Microcontrolador ………………………………………….….83
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 xiv
pág.
Figura A.6. Connections …………………………………………………………………..83
Figura A.7. ColdFire Build Options …………………………………………………….…84
Figura A.8. Rapid Application Development …………………………………….………84
Figura A.9. Carpeta del proyecto …………………………………………………………85
Figura A.10. Components Library ………………………………………………………..85
Figura A.11. Carpeta Components ……………………………………………….………86
Figura A.12. Components Inspector …………………………………………….……….86
Figura A.13. Generate Processor Expert Code …………………………….…………..87
Figura A.14. Código del programa principal ……………………………….…………....87
Figura A.15. Ventana Events.c ……………………………………………….…………..88
Figura A.16. Botón Build ……………………………………………………….………….88
Figura A.17. Botón Debug …………………………………………………….…………..89
Figura A.18. Perspectiva Debug ……………………………………………….…………89
APÉNDICE C Figura C.1. Bloque derivativo …………………………………………………….……….92
Figura C.2. Bloque integrador …………………………………………………………….92
Figura C.3. Bloque transfer Fcn …………………………………….…………………….93
Figura C.4. Bloque osciloscopio ………………………………….………………………94
Figura C.5. Bloque constante …………………………………….……………………….94
Figura C.6. Bloque step …………..……………………………….………………………95
Figura C.7. Bloque sum …………………………………………….……………………..95
Figura C.8. Bloque Gain …………………………………………………………………..96
Figura C.9. Bloque Mux ………………………………………….………………………..96
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 xv
LISTA DE TABLAS
CAPÍTULO 2 pág.
Tabla 2.1 Efectos de cada uno de los controladores Kp, Kd, y Ki en un sistema
a lazo cerrado ..…………………….…………………………..………………23
Tabla 2.2. Valores recomendados de sintonización en lazo cerrado ………………..27
Tabla 2.3. Valores recomendados de sintonización en lazo abierto .………..………28
CAPÍTULO 3
Tabla 3.1. Acceso a tipos de dato en memoria ……………………...…………………37
Tabla 3.2. Tiempos de conversión ………………………………………………………44
CAPÍTULO 4
Tabla 4.1. Parámetros del motor de C.C con excitación separada …………..……...52
APÉNDICE E
Tabla E.1. Lectura de valores del PWM y el ADC ……………………………………106
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 1
INTRODUCCIÓN
El motor de corriente continua aparece en el siglo XIX. Esta máquina es una de las
más versátiles en la industria. Su fácil control de posición, par y velocidad la han
convertido en una de las mejores opciones en aplicaciones de control y
automatización de procesos. A lo largo de la historia, se han desarrollado y
perfeccionado técnicas que han hecho del control automático toda un área de
investigación y desarrollo, orientada a reducir costos de procesos, aumentar calidad
de artículos, mejorar precisión de productos, e incrementar niveles de seguridad,
entre otros.
Las técnicas de control automático se dividen en control convencional y control
inteligente. Las técnicas convencionales más usadas son: control proporcional (P),
control proporcional-derivativo (PD), control proporcional-integral (PI) y control
proporcional-integral-derivativo (PID). Las técnicas de control inteligente son: lógica
difusa, redes neuronales y sistemas neuro-difusos.
Las técnicas convencionales en su origen fueron desarrolladas de forma mecánica;
posteriormente con circuitos analógicos y en la actualidad mediante circuitería digital
e interfaces; como son los Microcontroladores. Estos dispositivos están formados de
circuitería, que en esencia es digital. Los convertidores analógico-digital y digital-
analógico que tienen embebidos junto con otras técnicas implementadas como la
modulación del ancho de pulso permiten realizar una gran cantidad de aplicaciones
en el área de control, hacen de los Microcontroladores una herramienta de trabajo
1
CAPÍTULO
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 2
flexible. El presente trabajo realizará un control PID en el sistema embebido del
microcontrolador FlexisJM128, con la finalidad de controlar la velocidad de un motor
de C.C.
1.1 Estado del Arte
En el área del control automático el primer trabajo significativo fue el regulador de
velocidad centrífugo de James Watt para el control de la velocidad de una máquina
de vapor, en el siglo XVIII [1].
El objetivo de un sistema de control automático, es encontrar un dispositivo externo
al sistema dinámico a controlar (el controlador o compensador) que proporcione una
señal adecuada, al mismo, para que la salida del sistema tenga características
deseadas.
Los análisis de mercado actual en cuanto a controladores, son reflejados en los
manuales publicados por grandes empresas que se dedican a comercializar
dispositivos de control para motores. Una empresa líder en el ramo [2], dice que las
fábricas industriales requieren una gran cantidad de maquinaria alimentada por
distintas energías. No obstante, la energía eléctrica es preponderante, ya que, por
razones técnicas y económicas, la mayoría de los dispositivos mecánicos que se
emplean en los sectores industrial y terciario se accionan mediante motores
eléctricos.
Los motores de corriente continua de excitación separada son ampliamente
utilizados para accionar máquinas a velocidad variable. Se adaptan igualmente bien
a la variación de velocidad con tecnologías electrónicas simples y económicas, a las
aplicaciones en las que se requiere un alto rendimiento e incluso a las potencias
elevadas (varios MW). Sus características también permiten regular con precisión el
par, tanto en modo motor como en modo generador. Su velocidad de rotación
nominal puede adaptarse fácilmente a todo tipo de aplicaciones [2].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 3
El primer registro en México en el contexto histórico concerniente a control de
motores es una tesis realizada en la UNAM por Arieta Gómez Oliverio [3]. Trata de la
implementación de dispositivos electrónicos para efectos de control de un motor de
C.C. En la misma institución se encontraron numerosos trabajos de la década de
1980 concernientes a control de motores de C.C, usando diferentes interfaces para
los usuarios y diversos dispositivos como controladores. También el IPN presenta
numerosos trabajos concernientes a motores de C.C en los mismos años.
A continuación se mencionan algunos artículos y trabajos afines a esta investigación
que apoyan al contexto teórico y que sirvieron para la realización de esta tesis.
En el artículo de J. R. Antoline [4] comparan el desempeño de dos controladores, el
proporcional integral derivativo (PID) y el difuso, sobre una plataforma comercial
utilizada normalmente en aeromodelismo. Utiliza el método del lugar de las raíces
para sintonizar el PID en el control de la posición angular. Las simulaciones y el
control se realizan en Simulink de MATLAB®. Además; para la adquisición de datos
se utiliza la tarjeta PCI 6024E.
En el artículo de Maximiliano A. Freije [5] se presenta el diseño de un controlador
para motores de C.C que permite controlar velocidad y sentido de giro. El trabajo
consiste en evaluar el compartimiento de este tipo de motores en los cuatro
cuadrantes y las distintas topologías de convertidores existentes. Además desarrolla
el hardware para el tipo de controlador PWM. Presento las diferentes topologías de
convertidores para motores de C.C, posteriormente analizó el principio de
funcionamiento y los comparó de acuerdo a la funcionalidad que brindan al motor. A
partir de este análisis, eligió la topología del convertidor de cuatro cuadrantes, la
cual, permite controlar la velocidad, sentido de giro del motor y muestra los
resultados experimentales.
En el artículo de G.N. González y J.E. Bosso [6] se muestra la implementación de
un control de velocidad y posición a lazo cerrado de un motor de C.C con imanes
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 4
permanentes utilizando el controlador digital de señales dsPIC30F4011. Desarrollo el
modelado del motor utilizado y diseño los controles de corriente, velocidad y posición
siguiendo especificaciones definidas para la respuesta transitoria. Además describe
la implementación del hardware y el software del sistema de control propuesto. Los
ensayos de simulación y experimentales muestran el correcto desempeño del control
de velocidad en diferentes situaciones, como el arranque, la detención, la inversión
del sentido de giro y cuando se aplica un escalón de carga. Por otra parte, los
ensayos realizados para evaluar el control de posición, demostraron que la respuesta
transitoria de dicha variable cumple con las especificaciones impuestas en el diseño.
En el artículo de Manuel Sebastián Álvarez Alvarado [7], se presenta el modelo
matemático de un motor de C.C. El modelo matemático se realiza usando
ecuaciones diferenciales y a su vez también desarrolla el análisis respectivo en
términos de las variables físicas que se tienen en el motor, como en la carga
mecánica acoplada al mismo. Adicionalmente se simula y se obtiene la respuesta de
control de la velocidad la cual puede ser en función de la corriente de armadura. Para
esto se utilizó SIMULINK, una herramienta del programa MATLAB.
En el trabajo de Roberto Cipres Siguenza [17] se presenta el diseño e
implementación de un sistema de control difuso tipo Mamdani, para regular la
intensidad luminosa de una lámpara incandescente y tipo mixta. La finalidad es
mantener un nivel de iluminación constante ante cambios de iluminación. El sistema
de control se implementa en una tarjeta de evaluación con microcontrolador
MCHS12GC32. El lenguaje del programa del sistema de control se realizó en el
lenguaje ensamblador con plataforma CODEWARRIOR. La regulación de la
intensidad se hizo mediante la variación de voltaje en las lámparas mediante la
técnica de modulación del ancho de pulso, activado en el microcontrolador.
En el trabajo de José Armando Romero Casañas [18] se muestra un material de
apoyo para la creación y programación de proyectos con Microcontroladores
Freescale HCS12. Se comienza con los conceptos fundamentales que conciernen a
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 5
cualquier tipo de Microcontrolador para después particularizar en el HCS12, mostrar
la forma de iniciar con los diferentes módulos con que cuenta el dispositivo, como
son Entradas y Salidas Digitales, Convertidor Analógico Digital, Temporizadores,
Comunicación Serial, Modulación de Ancho de Pulso.
A fin de demostrar los conceptos descritos teóricamente, se proporcionan una serie
de prácticas que ayudaran a reafirmar dichos conceptos. Se presenta un proyecto
integral de los módulos, el cual está basado en un control PI para regular la
intensidad luminosa de las lámparas, esto de acuerdo con el nivel de iluminación en
que se encuentre su entorno; los resultados obtenidos se dan a conocer mediante
gráficas y fotos del experimento.
En el trabajo de Sinhue López Vite [19] se presenta un análisis y diseño, para la
simulación en la herramienta computacional de Matlab, de un regulador de velocidad
difuso para un motor de C.C con excitación separada empleando los algoritmos de
Takagi-Sugeno y Mamdani. Se presenta el modelo matemático del motor de C.C, el
diseño del control de velocidad tipo Takagi-Sugeno usando bloques de programación
en Simulink de Matlab y el diseño del control de velocidad tipo Mamdani en cinco
funciones de membrecía, usando la misma interface gráfica. Se presentan las
gráficas obtenidas en simulación para los valores de velocidad y corriente en vacío, y
con carga para dos tipos de motores de C.C de diferentes capacidades. De la misma
manera, se dan las gráficas de la simulación de la velocidad y corriente aplicando los
algoritmos de control difuso. A cada simulación se aplica y se retira un valor de par
de carga.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 6
1.2 OBJETIVO
1.2.1 Objetivo General Diseñar e implementar un controlador Proporcional-Integral-Derivativo (PID) para la
regulación de la velocidad de un motor de C.C con excitación separada, utilizando el
microcontrolador Flexis MCF51JM128 de Freescale.
1.2.2 Objetivos Específicos
� Emplear los parámetros eléctricos y mecánicos del motor de C.C modelo DL-
3025 con excitación separada para realizar el estudio de la dinámica de la
máquina con el fin de visualizar si la interfaz (circuito de potencia) a emplear
funcione.
� Desarrollar un análisis matemático para obtener los valores de las constantes
correspondientes al control del PID.
� Elaborar la programación del controlador PID utilizando la tarjeta Flexis
DEMOJM de Freescale.
� Emplear la electrónica de potencia para el desarrollo práctico del control.
� Realizar las pruebas necesarias al controlador que se va a implementar en la
tarjeta para obtener graficas de su comportamiento.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 7
1.3 JUSTIFICACIÓN
En el siglo XXI el uso de los sistemas embebidos ha crecido de forma exponencial.
Esto se debe a su gran flexibilidad para ser empleados en el diseño de aplicaciones
industriales. Los causantes de la flexibilidad son los microcontroladores multifunción.
Estos elementos en estado sólido; ya se utilizan en las diferentes áreas de los
sistemas eléctricos del mundo y son los causantes del llamado “SMART GRID”
(Sistemas Eléctricos Inteligentes), permitiendo que las áreas de Coordinación de
Protecciones, Control, Instrumentación, Medida, Calidad y Administración de energía
sean concatenadas en un solo Sistema de Gestión con el objetivo primordial de
realizar un uso eficiente y racional de la energía eléctrica, contribuyendo a la
reducción de emisiones de CO2 y al calentamiento global.
En México los sistemas SMART, es un área en estado del arte, ya que la tecnología
es extranjera. Esto se debe a que las instituciones educativas en México no
capacitan a los Ingenieros Electricistas en la programación de microcontroladores de
nueva generación. Es por ello que con el presente trabajo se desarrolla un
controlador Proporcional-Integral-Derivativo (PID) para la regulación de la velocidad
de un motor de C.C con excitación separada, utilizando el microcontrolador Flexis
MCF51JM128 de Freescale en un sistema embebido de nueva generación (32 bits)
con el objetivo de introducir el uso de este tipo de tarjetas al área de Ingeniería
Eléctrica y de esta forma ayudar a los futuros Ingenieros Electricistas en la
comprensión de los sistemas SMART, además de que el programa del controlador
PID sirva para futuros trabajos de tesis.
Otra finalidad de este trabajo es la de ayudar al estudiante de ingeniería o ingeniero
con el ambiente de programación para este tipo de microcontrolador.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 8
1.4 ESTRUCTURA En el capítulo 1 se da una breve descripción de lo que se pretende realizar, los
trabajos que existen al respecto, se plantean los objetivos a lograr y la justificación
del porqué de este trabajo de tesis.
En el capítulo 2 se presentan los fundamentos teóricos necesarios para la
implementación del control PID.
En el capítulo 3 se realiza una descripción de cada elemento que se ocupó durante la
implementación y las pruebas del controlador PID.
En el capítulo 4 se presenta el desarrollo de las simulaciones que permitieron realizar
el control de la velocidad a partir del controlador PID, además se presentan los
resultados prácticos obtenidos de la implementación del controlador PID.
En el capítulo 5 se presentan las conclusiones, aportaciones y posibles trabajos
futuros que se pudieran seguir en esta línea de investigación.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 9
FUNDAMENTOS TEÓRICOS DEL
SISTEMA DE CONTROL
2.1 MOTORES DE CORRIENTE CONTINUA
Los motores eléctricos son dispositivos que convierten energía eléctrica en energía
mecánica y el primer registro de la posibilidad de intercambio entre estas energías se
debe a Michel Faraday en 1831 [3]. El descubrimiento dio lugar a la creación del
generador, el motor eléctrico, micrófono, bocina, transformador, galvanómetro entre
otros artefactos. La conversión de energía electromagnética relaciona las fuerzas
eléctricas y magnéticas del átomo con la fuerza mecánica que se aplica a la materia
y al movimiento [3].
La energía mecánica se puede convertir en energía eléctrica y viceversa mediante
dínamos. Aunque esta conversión puede producir también otras formas de energía,
como calor y luz, para la mayor parte de los fines prácticos se mantienen al mínimo
esas pérdidas de energía, y se logra una conversión relativamente directa en ambas
direcciones [4].
2.1.1 Clasificación del motor de C.C
Los motores de corriente continua son los motores más versátiles en la industria. Su
fácil control de posición, par y velocidad la han convertido en una de las mejores
opciones en aplicaciones de control y automatización de procesos.
2
CAPÍTULO
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 10
Existen varios tipos de motores de C.C. En la figura 2.1 se observa una clasificación
de este tipo de motores.
Figura 2.1. Clasificación de los motores de C.C.
2.1.2 Circuito equivalente de un motor de C.C con excitación separada En la figura 2.2 se muestra el circuito equivalente de un motor de C.C. En ésta figura
el circuito del inducido se representa por medio de una fuente de voltaje ideal EA y un
resistor RA. Esta representación es en realidad el equivalente de Thevenin [6] de toda
la estructura del rotor, incluyendo las bobinas, interpolos y devanados de
compensación, si es que éstos existen. Hay unas cuantas variaciones y
simplificaciones de este circuito equivalente básico. La caída de voltaje en las
escobillas a menudo es tan sólo una pequeña fracción del voltaje generado en la
máquina por lo que se puede dejar de considerar o incluirla aproximadamente en el
valor de RA. Además, la resistencia interna de las bobinas de campo a veces se
agrupa con el resistor variable y al total se le llama Rf. Una tercera variación consiste
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 11
en que algunos motores tienen más de una bobina de campo y todas ellas se
representan en el circuito equivalente.
Figura 2.2. Circuito equivalente simplificado de un motor de C.C de excitación
separada.
Las ecuaciones del voltaje inducido, el par generado, la ecuación de la ley de voltaje
de Kirchhoff del circuito del inducido y la curva de magnetización de la máquina, son
todas las herramientas necesarias para analizar el comportamiento y desempeño de
un motor de C.C [6].
2.1.3 Modelado matemático del motor de C.C de excitación separada En la figura 2.3 se representa el modelo de un motor de C.C. con excitación
separada, en donde se considera que la corriente de campo es constante. Bajo
condiciones dinámicas el par electromagnético del motor esta expresado por la
ecuación 2.1 [13].
(2.1)
Dónde:
K = L ff I f es constante en este trabajo.
J = Jm+JL inercia del motor más la de la carga.
B = B m+ B L fricción del motor más la de la carga.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 12
Figura 2.3. Motor de C.C con excitación separada con corriente de campo constante.
Durante el estado dinámico la ecuación de voltaje del circuito de armadura del motor
de la figura 2.3 puede darse de la siguiente manera [13]:
(2.2)
Como el modelo es lineal, se puede emplear la técnica de la transformada de
Laplace para encontrar la dinámica de este motor. Dicha técnica permite convertir las
ecuaciones diferenciales en un conjunto de ecuaciones algebraicas en el dominio de
la frecuencia.
Aplicando la transformada de Laplace a la ecuación 2.1 se tiene [13]:
(2.3)
Donde IA(s), TL (s) y Ω(s) son las transformadas de Laplace de iA, TL y ω
respectivamente. Similarmente la ecuación 2.2 puede expresarse en transformada
de Laplace cómo se muestra en la ecuación 2.4 [13].
(2.4)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 13
En la figura 2.4 se muestra el diagrama a bloques del motor de C.C con excitación
separada a partir de la Transformada de Laplace, en donde se ve la relación de la
velocidad de dicho motor con VA (s) y TL (s), cuando la corriente de campo se
considera constante.
Figura 2.4. Diagrama de bloques del modelo del motor de C.C con excitación
separada.
2.2 INTRODUCCIÓN AL CONTROL CLÁSICO
El control automático estudia los modelos matemáticos de sistemas dinámicos, sus
propiedades y el cómo modificar éstas mediante el uso de otro sistema dinámico
llamado controlador. El ser humano utiliza constantemente sistemas de control en su
vida cotidiana, como en su vista, en su caminar, al conducir un automóvil, al regular
la temperatura de su cuerpo y otros. De igual manera, en el mundo tecnológico
constantemente se utilizan sistemas de control. Los conocimientos de esta disciplina
se aplican para controlar procesos químicos, todo tipo de maquinaria industrial,
vehículos terrestres y aeroespaciales, robots industriales, plantas generatrices de
electricidad y otros [1], [11].
El control ha evolucionado desde básicos sistemas mecánicos, hasta modernos
controladores digitales. En un principio, los sistemas de control se reducían
prácticamente a reacciones; éstas eran provocadas mediante contrapesos, poleas,
fluidos, etc. A principios del siglo pasado, se comenzó el trabajo con modelos
matemáticos más estrictos para realizar el control automático. Se inició por
ecuaciones diferenciales; a mediados de siglo, surgió el análisis de la respuesta en
frecuencia y lugar geométrico de las raíces. Con el surgimiento de sistemas digitales
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 14
que posibilitan el análisis en el dominio del tiempo, los sistemas de control moderno
se basaron en éste y las variables de estado [8]. Un sistema de control está definido
como un conjunto de componentes que pueden regular su propia conducta o la de
otro sistema con el fin de lograr un funcionamiento predeterminado.
Un sistema de control controla la salida del sistema a un valor o secuencia de valores
determinados. El objetivo de cualquier estrategia de control es mantener una variable
llamada controlada igual a un valor deseado conocido como punto de ajuste. La
variable controlada debe permanecer en el punto ajustado [1]. Un sistema de control
puede ser mecánico, neumático, hidráulico, eléctrico, electrónico o por computadora.
Existen diversas estrategias de control como por ejemplo; control de lazo abierto,
control con retroalimentación o lazo cerrado, control en cascada, control de relación y
control predictivo, entre otros [8].
2.2.1 Sistema de control en lazo abierto En los sistemas de control a lazo abierto la variable controlada no se retroalimenta.
La conformidad entre el valor alcanzado por la variable controlada y su valor de
referencia depende de la calibración, y consiste en establecer una relación entre la
variable manipulada y la variable controlada. Estos sistemas solo son útiles en
ausencia de perturbaciones. Además la salida no tiene efecto sobre la acción de
control, es decir no se compara la salida con la entrada de referencia. Por lo tanto,
para cada entrada de referencia corresponde una condición de operación fija. Así, la
precisión del sistema depende de la calibración y del operador cuya función será la
del controlador.
En presencia de perturbaciones, un sistema de control de lazo abierto no cumple su
función asignada, por no tener una forma de conocer el resultado del control
efectuado o salida del proceso. En la práctica el control de lazo abierto sólo se utiliza
si la relación entre la entrada y la salida es conocida y si no se presentan
perturbaciones tanto internas como externas significativas, ver figura 2.5 [2].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 15
Figura 2.5. Sistema de Control de Lazo Abierto.
2.2.2 Sistema de control en lazo cerrado
Se denomina sistema de control de lazo cerrado cuando frente a presencia de
perturbaciones, tiende a reducir la diferencia entre la salida del sistema y el valor
deseado. El principio de funcionamiento consiste en medir la variable controlada
mediante los captadores o sensores, convertirla en señal y retroalimentarla para
compararla con la señal de entrada de referencia. La diferencia entre ésta y la señal
retroalimentada constituye la señal de error, la cual es empleada por la unidad de
control para calcular la variación a realizar en la variable manipulada y mediante los
accionadores o actuadores restablecer la variable controlada en su valor de
referencia [8].
En la figura 2.6 se muestra el sistema de control a lazo cerrado [1].
Figura 2.6. Sistema de Control de Lazo cerrado.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 16
2.3 CONTROLADORES CLÁSICOS
En el análisis y diseño de cualquier sistema de control, uno de los puntos más
importantes a considerar, es definir la forma en cómo la planta se deberá controlar.
En éste trabajo de tesis se utiliza un sistema de control de lazo cerrado con
controlador PID. El controlador PID entra dentro del control clásico. En control
clásico se han planteado una serie de controladores a los que se clasifica de acuerdo
a la manera en que generan su señal de control de la siguiente forma [8]:
a) Control proporcional (P)
b) Control proporcional-integral (PI)
c) Control proporcional-derivativo (PD)
d) Control proporcional-integral-derivativo (PID)
2.3.1. Control Proporcional (P) El control proporcional es un amplificador de ganancia ajustable. Su objetivo es hacer
más rápida la respuesta del sistema y reducir la magnitud del error (diferencia entre
el punto de ajuste y la medición), lo que se consigue al incrementar la ganancia del
controlador. Sin embargo, este incremento en la ganancia puede provocar que el
sistema se haga cada vez más oscilatorio (ver figura 2.7) [10].
Figura 2.7. Acción proporcional en un controlador.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 17
Un controlador proporcional (Kp) tendrá el efecto de reducir el tiempo de elevación,
sin jamás eliminar el error de estado estacionario, en la figura 2.8 se muestra el
bloque de control proporcional [25].
Figura 2.8. Diagrama de bloques del control proporcional.
.
La ley de control de un controlador proporcional está definida por la ecuación 2.5.
(2.5)
donde se denomina sesgo o reset y generalmente tiene un valor de cero. En el
dominio de Laplace y condiciones iniciales nulas, la función de transferencia del
controlador proporcional está dada por la ecuación 2.6 [25].
(2.6)
En ocasiones, se sustituye el parámetro de ganancia proporcional, K o Kp, en las
diferentes expresiones de la ley de control por su inversa, tal y como se muestra en
la ecuación 2.7.
(2.7)
La banda proporcional (BP) tiene el significado siguiente: si se toma la precaución de
normalizar la señal de control en el intervalo [0,1] o [-1,1], en un regulador puramente
proporcional, un 20% de BP, BP = 0.2, indica que un error de proceso del 20%
provocara una acción sobre la variable de control de un 100% [25].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 18
2.3.2. Control Proporcional-Derivativo (PD) En este tipo de controlador, la parte proporcional P ayuda a incrementar la velocidad
de respuesta, mientras que la parte derivativa D tiene su mayor efecto en los
transitorios y hace más amortiguado y estable al sistema. El control responde a la
velocidad de variación del error actuante y puede producir una corrección
significativa antes de que el error actuante se haga excesivo, esto significa que la
acción derivativa se anticipa al error actuante, inicia una acción correctiva temprana y
tiende a aumentar la estabilidad del sistema [8]. El hecho de que la parte derivativa
añada amortiguamiento al sistema nos permite el uso de valores de ganancia Kp
más elevado, lo que produce a su vez un mejoramiento en la exactitud del estado de
régimen [8].
El control PD es un control con alta sensibilidad. Su desventaja radica en que
amplifica señales de ruido y puede producir un efecto de saturación en el
acondicionador. Para obtener esta característica derivativa se deriva directamente la
señal de error y se le afecta por una constante a la que se denomina constante
derivativa (ver figura 2.9) [10], [11].
Figura 2.9. Acción proporcional y proporcional-derivativa.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 19
La acción del control proporcional-derivativo genera una señal de control
proporcional a la derivada de la señal de error, como se muestra en la ecuación 2.8
[34].
(2.8)
Empleando la transformada de Laplace en la ecuación 2.8 se obtiene la función de
transferencia del controlador proporcional-derivativo, la cual se muestra en la
ecuación 2.9 [34].
(2.9)
Siendo la ganancia proporcional y el denominado tiempo derivativo. Un control
derivativo tendrá el efecto de incrementar la estabilidad del sistema, reduciendo el
sobrepico, y mejorando la respuesta transitoria [34], en la figura 2.10 se muestra el
bloque de control proporcional más derivativo [25].
Figura 2.10. Diagrama de bloques del control proporcional-derivativo.
2.3.3. Control Proporcional-Integral (PI) Con un control proporcional, es necesario que exista error para tener una acción de
control distinta de cero. Con acción integral, un error pequeño positivo siempre dará
una acción de control creciente, y si fuera negativa la señal de control será
decreciente tal y como se muestra en la figura 2.11 [8].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 20
Figura 2.11. Acción integral en un controlador.
La acción de control integral genera una señal de control proporcional a la integral de
la señal de error, como se muestra en la ecuación 2.10 [34].
(2.10)
Utilizando la transformada de Laplace en la ecuación 2.10 se obtiene la función de
transferencia del controlador proporcional-integral, la cual se muestra en la ecuación
2.11 [25].
(2.11)
Siendo la ganancia proporcional y el denominado tiempo integral. Tanto
como son ajustables. Un control integral ( ) tendrá el efecto de eliminar el error de
estado estacionario, pero puede empeorar la respuesta transitoria [14].
La figura 2.12 muestra el diagrama de bloque de un controlador proporcional más
integral [25].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 21
Figura 2.12. Diagrama de bloques del control proporcional-integral.
2.3.4. Control Proporcional-Integral-Derivativo (PID)
Un controlador PID incorpora las ventajas que proporcionan cada una de las tres
acciones individuales descritas anteriormente, es un sistema de control que mediante
un actuador, es capaz de mantener una variable o proceso en un punto deseado
dentro del rango de medición del sensor que la mide, es uno de los métodos de
control más frecuentes y precisos dentro de la regulación automática [14].
Actualmente, el controlador PID es aun el más utilizado en la industria moderna,
controlando más del 95 por ciento de los procesos industriales en lazo cerrado. El
control Proporcional-Integral-Derivativo es la solución ideal para sistemas de control
que deseen corregir su respuesta tanto en el transitorio como en el régimen
estacionario ofreciendo una gran libertad de acción al tener tres parámetros (Kp, Ki y
Kd) con los que ajustar el lazo de control [14]. Un regulador PID tiene en cuenta el
error, la integral del error y la derivada del error. Los valores de las constantes, que
reciben el nombre de constantes proporcional, integral y derivativa, definen el
comportamiento del regulador [14], ver figura 2.13.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 22
Figura 2.13. Acción de control proporcional-integral-derivativa.
La figura 2.14 muestra el diagrama de bloques de un controlador proporcional-
integral-derivativo (PID) [25].
Figura 2.14. Diagrama de bloques del sistema controlado PID.
La ecuación 2.12 representa el control PID en el dominio del tiempo [34].
(2.12)
Empleando la transformada de Laplace en la ecuación 2.12 se obtiene la función de
transferencia del controlador proporcional-integral-derivativo, la cual se muestra en la
ecuación 2.13 [34].
(2.13)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 23
El comportamiento que se tiene al ajustar los parámetros (Kp, Kd, Ki) en cada uno de
los controladores, y que sirven para lograr un sistema de control aceptable se puede
ver en la tabla 2.1.
Tabla 2.1 Efectos de cada uno de los controladores Kp, Kd, y Ki en un sistema a lazo
cerrado.
Lazo
cerrado
T. Subida
Sobre impulso
T. de
Estabilización
Error
(Estado estable)
Kp Baja Sube Poco cambio Baja
Ki Baja Sube Sube Elimina
Kd Poco cambio Baja Baja Poco cambio
2.4 SISTEMAS DE CONTROL EN TIEMPO DISCRETO Los reguladores discretos o digitales se pueden obtener a partir de los reguladores
continuos o analógicos aplicando técnicas de integración numérica [37]. El sistema
de control en tiempo discreto se puede ver en la figura 2.15.
Figura 2.15. Sistema de control en tiempo discreto.
Con objeto de estudiar al regulador PID, se representan las acciones de este
independientemente.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 24
Acción proporcional (Ap): Si la acción proporcional de un regulador analógico se
expresa por la ecuación 2.14 [37].
(2.14)
El regulador proporcional discreto que aproxima esta acción (siendo T el periodo de
muestreo) se muestra en la siguiente ecuación 2.15 [37].
(2.15)
Acción derivativa (Ad): Si la acción diferencial de un regulador analógico viene dada
por la ecuación 2.16 [37].
(2.16)
Se puede discretizar la ecuación 2.16 aproximándola por el cociente incremental y se
obtiene la ecuación 2.17 [37].
(2.17)
Acción integral (Ai): Si la acción integral de un regulador analógico viene dado por la
ecuación 2.18 [37].
(2.18)
Es posible utilizar diversas aproximaciones para la realización de la integral en
tiempo discreto. Se aplica la aproximación rectangular a la ecuación 2.18 y se
obtiene la ecuación 2.19 en tiempo discreto [37].
(2.19)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 25
La expresión del regulador PID en tiempo continuo se puede observar en la ecuación
2.13, la discretización de dicha ecuación se realiza mediante alguno de los siguientes
métodos [37].
1. Mediante el operador derivada , se obtiene la ecuación 2.20 [37].
(2.20)
Con y
2. Mediante la transformación bilineal , se obtiene la ecuación 2.21
[37].
(2.21)
Con y
3. Si se emplea el operador derivada para la acción derivativa y la
transformación bilineal para la acción integral, se obtiene la ecuación 2.22
[37].
(2.22)
Con y
El controlador PID en tiempo discreto se utiliza en la tesis para realizar el código de
programación de dicho regulador, ya que el microcontrolador flexisJM128 empleado
trabaja de forma digital.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 26
2.5 MÉTODO DE SINTONIZACIÓN PARA CONTROLADORES PID (ZIEGLER-NICHOLS)
Para la implementación del controlador PID es necesario encontrar sus variables de
ajuste (Kp, Ti y Td), que permitan realizar la sintonización del sistema de control. En
esta línea de investigación no se cuenta con estas, por lo tanto, es necesario
emplear un método teórico establecido para encontrarlas, el método que se
consideró apropiado fue el de Ziegler-Nichols, el cual se emplea para realizar el
primer ajuste al regulador, y a partir de esto encontrar los valores de los parámetros
que den las condiciones deseadas al controlador PID, realizando un ajuste a prueba
y error.
El método Ziegler-Nichols puede ser utilizado tanto en el dominio del tiempo como
de la frecuencia, de tal manera, se tienen dos formas para poder utilizarlo en base a
las características del sistema a controlar.
2.5.1 Método de Ziegler-Nichols en lazo cerrado
El Método consiste en obtener la respuesta de la señal medida a una perturbación
(un pulso en el punto de ajuste) con controlador proporcional. En el cual se observa
la respuesta y si es amortiguada, se incrementa la ganancia hasta lograr oscilaciones
sostenidas (oscilación con amplitud constante) como se puede ver en la figura 2.16
[12].
Figura 2.16. Sintonización en lazo cerrado.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 27
La ganancia del controlador (proporcional) en este caso se denomina “Ganancia
Ultima” y se representa por Kcu, el período de la oscilación se llama “Periodo Ultimo”
y se expresa como u [12].
En base al controlador seleccionado y a los valores de Kcu (Ganancia Ultima) y u
(Periodo ultimo), se calculan los parámetros de ajuste del controlador (Kp. Ti y Td),
para esto se deben de auxiliar de la tabla 2.2.
Tabla 2.2 Valores recomendados de sintonización en lazo cerrado.
CONTROLADOR Kp Ki Kd
P Kcu/2 0
PI Kcu/2.2 0
PID Kcu/1.7
2.5.2 Método de Ziegler-Nichols en lazo abierto
El método consiste en introducir un escalón en la señal de control y se registra el
transitorio de la variable medida o controlada (Curva de Respuesta), como se
muestra en la figura 2.17 [12].
Figura 2.17. Sintonización en lazo abierto.
De la curva de respuesta al escalón se determinan L (tiempo de retardo) y T
(constante de tiempo), como se muestra en la figura 2.18 [12].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 28
Figura 2.18. Curva de respuesta al escalón.
En base al controlador seleccionado y a los valores de L (tiempo de retardo) y T
(constante de tiempo), se calculan los parámetros de ajuste del controlador (Kp. Ti y
Td), para esto se deben de auxiliar de la tabla 2.3.
Tabla 2.3 Valores recomendados de sintonización en lazo abierto.
CONTROLADOR Kp Ki Kd
P 0
PI 0
PID
Para sintonizar el controlador PID empleado en el trabajo de tesis, se utilizara el
método de Ziegler-Nichols en lazo abierto, el desarrollo del método se explica
detalladamente en el capítulo 4.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 29
2.6. MODULACIÓN DE ANCHO DE PULSO (PWM)
La modulación de ancho de pulso es una técnica utilizada para controlar dispositivos,
o para proveer de un voltaje variable de corriente continua, algunas aplicaciones en
las que se utiliza PWM son en el control de motores, iluminación y temperatura. El
periodo de la señal se mantendrá constante, pero la cantidad de tiempo que se
mantiene en alto y bajo dentro de un periodo puede variar, como lo muestra la figura
2.19 en donde en el inciso (a), (b) y (c), se muestra respectivamente el 42.7%,
15.35% y 82.5% de ancho de pulso [9].
Figura 2.19. Modulación por ancho de pulso.
En una onda cuadrada se varía el ancho de pulso positivo, manteniendo constante la
frecuencia, ya que de esta manera el valor medio de la onda resultante es variable
dependiendo de la duración del pulso positivo de la misma, es decir se varía el
tiempo total (la frecuencia del ciclo). Con esta variación de frecuencia se varía el
valor medio de la onda de salida, se intenta obtener un impulso cuyo nivel alto tenga
un ancho de pulso variable dentro del intervalo del periodo de trabajo [9].
La modulación del ancho de pulso es una técnica de control que se empleara para
diseñar el regulador de velocidad utilizado en la tesis, el PWM es un componente
interno de la tarjeta Flexis DEMOJM, del cual se hablara a detalle en el capítulo 4.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 30
EELEMENTOS FÍSICOS DEL
SISTEMA DE CONTROL
3.1 DESCRIPCIÓN DEL CONTROLADOR DE VELOCIDAD PID
El diagrama que permite ver la disposición de los elementos físicos en el sistema de
control, se muestra en la figura 3.1.
Figura 3.1. Diagrama a bloques de los elementos físicos que conforman al regulador
de velocidad.
La descripción del esquema de la figura 3.1 se da a continuación.
El motor de corriente continua esta acoplado mecánicamente a la flecha del
alternador por lo cual, la regulación de frecuencia de este, se realiza mediante el
3
CAPÍTULO
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 31
control de la velocidad del motor de C.C. Las revoluciones a las que gira el rotor se
miden a través de un medidor de posición conocido como encoder.
El encoder es conectado mediante una interfaz a un medidor de velocidad. El
medidor de velocidad contiene un transductor que permite obtener un nivel de voltaje
de corriente directa proporcional a las revoluciones del rotor, adecuando el valor de
voltaje mediante una etapa de entrada del control (Vm analógico). Posteriormente se
introduce el valor (Vmed) a la tarjeta DEMOJM, por medio del convertidor analógico
digital que se encuentra incorporado en dicha tarjeta.
El convertidor A/D digitaliza el voltaje de corriente directa (Vm digital). El valor
digitalizado se resta a un valor de referencia (Vref) produciendo la única variable que
se necesita para realizar el control de velocidad.
El controlador PID (programado en el microcontrolador) es el encargado de producir
una señal de salida que provocará la modulación del ancho de pulso PWM.
Como él PWM que entrega la tarjeta DEMOJM (pwm_dty_act), no tiene el nivel de
voltaje y corriente necesario para controlar al motor de C.C, se adiciona una etapa de
potencia para poder adecuar la señal del PWM a los niveles necesarios de voltaje y
corriente.
La modulación del ancho de pulso dependerá de si se le adiciona carga o se le
sustrae la misma. Siendo el responsable junto con la etapa de potencia de controlar
la velocidad del motor de C.C.
En los apartados siguientes se describe a detalle cada elemento físico que forma
parte de la implementación del regulador de velocidad tipo PID (Proporcional-
Integral-derivativo) para el control del motor de C.C con excitación separada (DL
30250).
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 32
3.2 MÁQUINA SÍNCRONA TRIFÁSICA DL 30190
Una máquina síncrona trabajando de modo alternador produce energía eléctrica
mediante energía mecánica. El término síncrono se refiere al hecho de que la
frecuencia eléctrica de esta máquina está sincronizada con la velocidad de rotación
de su eje [13]. La expresión matemática de la frecuencia eléctrica está dada por la
ecuación 3.1.
(3.1)
En este caso, como el generador es de dos polos el rotor debe girar a 3600 r.p.m.
para generar una frecuencia de 60Hz [13].
Se utilizó la maquina síncrona trifásica modelo DL 30190 como alternador el cual
esta acoplado al motor de C.C. El alternador se encarga de suministrar la tensión de
alimentación para las cargas utilizadas en las pruebas. En la figura 3.2 se puede
observar la placa de datos técnicos del alternador.
Figura 3.2. Placa de datos Maquina Síncrona Trifásica DL 30190.
Sus datos técnicos son [15]:
Como alternador: Potencia: 300 VA
Como motor: Potencia: 300 W
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 33
Tensión: 220/380 V Δ/Y
Corriente: 0.8/0.46 A Δ/Y
Velocidad: 3600 rpm
Excitación: 130 V / 0.18 A
Frecuencia: 60 Hz
Factor de Potencia:
3.3 MOTOR DE CORRIENTE CONTINUA DL 30250
Las características de funcionamiento del motor de C.C se explicaron en el capítulo
2, es por esto que solo se hablara de las especificaciones del motor de C.C DL
30250. Se utilizó el motor de corriente continua con excitación separada modelo DL
30250, para realizar las pruebas en el laboratorio de electrónica IV. Los datos de
placa del motor se pueden observar en la figura 3.3.
Figura 3.3. Placa de datos del motor de C.C DL 30250.
Sus datos técnicos son [15]:
Potencia: 300 W
Tensión: 220 V
Corriente: 1.36 A
Velocidad: 3600 rpm
Excitación: 160 V / 0.16 A
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 34
3.4 TACÓMETRO ELECTRÓNICO DL 2025DT
El tacómetro electrónico, es el encargado de indicar el valor al que está girando el
rotor, en base a la señal que se recibe del encoder. El tacómetro tiene un selector de
tres posiciones en donde se pueden tener tres máximos en la caratula: de 1500
r.p.m, de 3000 r.p.m y de 6000 r.p.m, respectivamente (ver figura 3.4).
El transductor con el que cuenta el tacómetro electrónico. Permite convertir la señal
del “encoder” a voltaje, es decir convierte pulsos/revolución a voltaje en c.d. La
resolución del transductor es de un volt por cada 1000 revoluciones [13].
Figura 3.4. Tacómetro Electrónico DL 2025DT.
3.5 TRANSDUCTOR ÓPTICO “ENCODER” DL 2031M
Un “encoder” es un dispositivo que entrega un número especificado de pulsos en una
revolución mecánica del rotor (ver figura 3.5). El encoder usado en este trabajo se
encuentra instalado en la flecha del rotor del motor de C.C. y tiene una resolución de
5 pulsos/ rev [13]. El encoder está adecuado para relevar la velocidad de rotación
mediante un interruptor opto-electrónico y disco codificado, que puede ser utilizado
también para medidas estroboscópicas [15].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 35
Figura 3.5. Transductor Óptico DL 2031M.
3.6 TARJETA FLEXIS DEMOJM
El MCF51JM128 es un microcontrolador miembro de la familia ColdFire® V1, que ha
sido potenciado con los siguientes componentes y/o características internas, (ver
figura 3.6) [16].
• Núcleo ColdFire® V1 en arquitectura RISC, con puerto para depuración y
programación BDM (Background Debug Module).
• Migra desde o hacia la máquina de 8 bits MC9S08JM60.
• Velocidad de reloj de hasta 55.33 MHz.
• Hasta 128KB de memoria FLASH.
• Hasta 16KB de memoria SRAM.
• Generación de reloj interno.
• Puerto USB-OTG (USB On The Go).
• Puerto CAN (Controller Area Network).
• Unidad aceleración criptográfica.
• Módulo generador de números aleatorios.
• Comparadores análogos.
• Hasta 12 conversores A/D de 12 bits.
• Dos puertos IIC (Inter Integrated Circuit).
• Dos puertos SPI (Serial Peripherial Interface).
• Dos puertos SCI (Serial Comunication Interface).
• Sistema temporizado para modulación de señal portadora CMT (Carrier Modulation
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 36
Timer).
• Hasta 8 canales temporizadores/moduladores de ancho de pulso TPM (Timer PWM
Module).
• Contador de tiempo real RTC (Real Time Counter).
• Hasta 51/66 pines I/O de propósito general en versiones de 64/80 pines
respectivamente.
• Interfaz para teclado KBI (KeyBoard Interrupts).
Figura 3.6. Tarjeta Flexis DEMOJM.
3.6.1 Distribución de la memoria
Las secciones de memoria son del tipo SRAM, FLASH y memoria de registros para
los puertos I/O, configuración y estado. Existen áreas de memoria reservadas para
microcontroladores futuros en la familia ColdFire® V1, las cuales se muestran en la
figura 3.7 como rectángulos sombreados. Las direcciones en el mapa de memoria
son representadas por números hexadecimales, como 0x (FF)FF_8000.
Esta representación indica que la máquina MCF51JM128 tiene 24 líneas efectivas
para los direccionamientos de la memoria, por lo tanto los 8 primeros bits de la
dirección se representan entre “paréntesis ( )”. No obstante, se conserva la
representación en 32 bits para hacer referencia a máquinas futuras o a máquinas de
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 37
versiones superiores [16]. Dependiendo del tipo de dato a manipular (byte, word,
longword), es necesario atender la especificación dada por la tabla 3.1. Allí es
importante destacar la restricción que existe para la memoria FLASH sobre la
escritura de datos tipo byte y word [16].
Figura 3.7. Mapa de memoria para la familia JM.
Los registros de configuración de periféricos se encuentran diseminados en tres
grupos los cuales se muestran a continuación.
0x(FF)FF_8000 – 0x(FF)FF_807F Registros de periféricos en página directa.
0x(FF)FF_9800 – 0x(FF)FF_98FF Registros de periféricos en la página alta.
0x(FF)FF_FFC0 – 0x(FF)FF_FFFF Controlador de interrupciones.
Para los dos primeros grupos de los periféricos, la máquina suministra un acceso
rápido con el modo de direccionamiento absoluto corto [16].
Tabla 3.1 Acceso a tipos de dato en memoria.
Dirección Base Región Lectura Escritura
Byte Word Long Byte Word Long 0x(00)00_0000 Flash x x X - - X 0x(00)80_0000 RAM x x X x x x 0x(00)C0_0000 Rapid GPIO x x X x x X 0x(GG)FF_8000 Periféricos x X x x x
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 38
3.6.2 Funciones de Temporización (TPM: Timer/Pulse Modulator Module) El módulo de temporización (TPM) puede ser utilizado en cuatro modos de
funcionamiento, a continuación se define el modo utilizado en el desarrollo del
programa. Modo temporizador de propósito general (ver figura 3.8).
Figura 3.8. Temporización de propósito general.
La cantidad de conteos es programada en el módulo y multiplicada por la base de
tiempo, que alimenta al contador principal del sistema, da como resultado el tiempo
programado. El fin de la temporización es anunciado por un evento tipo bit (como una
bandera) [16]. Este modo es utilizado cuando se requiere de temporizaciones
precisas y los recursos de temporización interna, como el RTC, se encuentran
ocupados [16].
Funcionamiento del TPM como PWM (Pulse Width Modulation): La Figura 3.9
muestra las partes involucradas en un evento de salida de PWM.
Figura 3.9. Generación de señal PWM.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 39
Para la generación de una señal periódica tipo PWM presentada en algún pin
TPMxCHn, el primer paso es definir el modo de funcionamiento como PWM en los
bits marcados como (A) [16].
El modo PWM tiene la opción de trabajar iniciando con un flanco de subida o
terminando con un flanco de bajada, desde el punto de vista del ciclo de trabajo (DC:
Duty Cycle); o como alineado al centro del período T. Esta última característica es
muy popular para el control de servomotores de 3 fases en C.A y sin escobillas
(brushless) en C.C, en donde son necesarios varios canales de PWM. A continuación
se elige el reloj apropiado según el rango de frecuencias de la señal a generar (B)
[16].
Seguido (C), es necesario especificar un divisor para el reloj elegido. Luego se
programa el período (T) de la señal en el módulo del contador de 16 bits (D) y el ciclo
de trabajo (DC) de la señal en el registro del canal (E) [16].
Cada que sea necesario actualizar el valor del ciclo de trabajo, el usuario deberá
generar un evento de interrupción, utilizando la bandera CHxF y/o habilitando el
mecanismo de interrupción con el bit CHxIE (F) [16]. Si la opción elegida es la de atender un evento de interrupción por canal (output
compare), se recomienda actualizar los valores del nuevo C: C en la atención a dicha
interrupción [16].
El período (T) de la señal de salida del PWM se calcula de acuerdo a las ecuaciones
3.1 y 3.2.
Base de tiempo = 1 / (Frecuencia Reloj Elegido / Divisor) (3.1)
T = Base de tiempo x TPMxMODH:TPMxMODL (3.2)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 40
3.6.3 Conversión A/D (ADC: Analog to Digital Converter)
Antes de comenzar el estudio del módulo ADC del microcontrolador MCF51JM128,
se hará un pequeño repaso sobre los conceptos relacionados con la conversión
análoga a digital de una señal. Las máquinas, como los microcontroladores, tratan de
medir y/o convertir las variables analógicas que el hombre manipula y entiende, pero
el proceso de convertir Introduce una inevitable pérdida de información.
Esta pérdida es inherente al proceso de discretizar las señales análogas y continuas,
que finalmente serán llevadas a cantidades binarias [16].
La figura 3.10 representa una señal analógica continua entre los puntos t0 y t1, que
desde el punto de vista de la magnitud será sometida a un número discreto de
valores binarios y que la cantidad de valores se conoce con el nombre de
Resolución del sistema [16].
Figura 3.10. Eje de la resolución en la conversión A/D.
La resolución del convertidor A/D es la cantidad de valores, discretos, en los cuales
se interpreta la señal a digitalizar. Por ejemplo, para un procesador con un
convertidor A/D que tiene una resolución de 12 bits el número de valores discretos en
los cuales se puede valorar a una señal, sería de 2x12= 4096. El valor ideal para
esos valores sería un número infinito, pero tecnológicamente es imposible [16]. Esos
valores deben estar comprendidos dentro de dos límites, que forman la ventana de
conversión o valores de referencia (Vmin, Vmax). Para la figura 3.10, el punto P
tiene una interpretación en el mundo de lo discreto y es de Vx.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 41
Se recomienda que el usuario aproveche al máximo la resolución del sistema,
adecuando la señal analógica para que excursione de la manera más completa en la
ventana de conversión. Por ejemplo, una señal con un valor máximo de 100mV
deberá ser amplificada por un factor de 30, para una ventana de conversión de 3V y
de ésta manera aprovechar la resolución del sistema [16]. Para calcular el paso
mínimo de conversión y por otro lado conocer el intervalo de pérdida de información,
supóngase que se tiene una señal sometida a un convertidor de 12 bits de
resolución, un Vmin = 0V y un Vmax = 5V.
El paso mínimo de conversión está dado por la ecuación 3.3 [16].
Paso mínimo = (Vmax - Vmin) / Resolución (3.3)
Paso mínimo = (5V – 0V) / 2 = 1.22mV
El cálculo anterior indica que la diferencia en magnitud entre el resultado de una
conversión y la inmediatamente superior (o inferior) es de 1.22mV. Todo valor que no
sea múltiplo entero de un paso mínimo, se deberá aproximar al valor más cercano y
es allí donde un convertidor A/D ignora información del mundo análogo [16].
El Muestreo (sample) es otra característica importante de un convertidor A/D y se
refiere a la cantidad de muestras en la unidad de tiempo que se pueden procesar y
convertir a cantidades discretas. La Figura 3.11 presenta una señal analógica
continua entre los puntos t0 y t1, que desde el punto de vista del muestreo es
sometida a un número finito de muestras y que cada muestra es tomada a un
intervalo constante T, llamado período de muestreo [16].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 42
Figura 3.11. Eje del muestreo en la conversión A/D.
Al igual que en la resolución el muestreo introduce pérdida de información, debido a
los valores que no son muestreados entre dos intervalos de muestreo contiguos.
Idealmente la rata de muestreo debería ser infinita, pero existen restricciones
tecnológicas. Entonces, mientras menor sea la separación entre los Si (T pequeño),
mostrados en la Figura 3.12, más fiel será la señal digitalizada con respecto a la
señal analógica original [16].
Algunas de las características importantes del módulo ADC son:
� Técnica de conversión por aproximaciones sucesivas hasta 12 bits de
resolución.
� Hasta 28 entradas análogas.
� Conversión programable para 8, 10 y 12 bits, justificada a la derecha y no
signada.
� Modo de conversión simple y continua.
� Tiempo de conversión programable y modo de reducción de consumo.
� Evento de finalización de una conversión y generación de evento de
interrupción al finalizar la conversión.
� Hasta cuatro fuentes de reloj de conversión.
� Operación en modo WAIT y STOP 3, para reducción de ruido.
� Posibilidad de selección de reloj asincrónico, para operación en bajo ruido.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 43
� Posibilidad de elegir una señal de disparo por hardware (trigger), para iniciar
conversión.
� Comparación del valor convertido contra un valor programado, para mayor que, igual que o menor que.
La figura 3.12 muestra el diagrama en bloques del módulo ADC, en donde el circuito
(A) corresponde al sistema de reloj del ADC. Este circuito tiene la posibilidad de
seleccionar cuatro fuentes, como: Reloj asíncrono (ADACK), reloj del BUS, reloj del
BUS dividido por dos y un reloj alterno (ALTCLK) [16].
Figura 3.12. Diagrama en bloques del ADC.
El circuito (B) corresponde a los registros de configuración y control del ADC. El
circuito (C) sincroniza toda la operación de conversión, actuando como una gran
máquina de estados. El circuito (D) multiplexa las diferentes entradas analógicas
(canales A/D) que puede atender el sistema ADC y establece la ventana de
conversión [16].
El circuito (E) es el corazón del módulo ADC y corresponde al SAR (Succesive
Aproximation Register) de la conversión. El circuito (F) configura la lógica de
interrupción del módulo ADC y finalmente, el circuito (G) establece las componentes
para la comparación del valor convertido contra un valor programado [16].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 44
Para efectos del cálculo del tiempo que toma una conversión en ejecutarse, la tabla
3.2 relaciona el tiempo dependiendo del reloj elegido (ADCLK = ADICLK/ADIV) y el
bit ADSMP (tiempo corto o largo) [16].
Tabla 3.2. Tiempos de conversión.
Tipo de conversión ADICLK ADLSMP Máximo tiempo de
conversión Simple o primera
en modo continúo.(8 bits)
0x, 10
0
20 ADCK ciclos + 5 ciclos del reloj de
bus. Simple a primera
en modo continúo.(10 y 12
bits)
0x,10
1
23 ADCK ciclos + 5 ciclos del reloj de
bus.
Simple o primera en modo
continúo.(8 bits)
11
1
40 ADCK ciclos + 5 ciclos del reloj de
bus. Simple a primera
en modo continúo.(10 y 12
bits)
11
1
43 ADCK ciclos + 5 ciclos del reloj de
bus.
A manera de ejemplo, supóngase que se está realizando una conversión A/D con
resolución de 12 bits. Para la conversión se ha elegido el reloj de bus interno, que es
de 16MHz. La conversión se realizará en modo continuo y tiempos cortos de
muestreo [16].
El máximo reloj de conversión para el ADC del MCF51JM128 es de 8MHz, entonces
es necesario aplicar un valor de ADIV = 01 (divisor por 2). El valor resultante
conformaría el ADCK de la conversión, de tal manera que el tiempo total de
conversión, para las muestras subsecuentes se calcula conforme a la ecuación 3.4
[16].
Tiempo de conversión = 20 ADCK ciclos / (16MHZ / 2) (3.4)
Tiempo de conversión = 2.5 x 10-6 seg
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 45
3.7 ETAPA DE POTENCIA La etapa de potencia se encarga de controlar los niveles de voltaje y corriente,
necesarios para operar la velocidad del motor de C.C, esta se divide en dos circuitos,
el circuito de control y el circuito de fuerza. El circuito de control consta del inversor
(74LS04) y optoacoplador (4N25), y el circuito de fuerza está conformado por el
MOSFET (IRFP4060). Los componentes electrónicos se muestran en la figura 3.13.
Figura 3.13. Etapa de Potencia (elementos físicos).
El diseño de la etapa de potencia puede ser consultado en la referencia [27].
La simulación de la etapa de potencia se realizó en el Software Livewire; el cual
sirve para simular circuitos electrónicos (ver figura 3.14).
Figura 3.14. Simulación de la Etapa de Potencia.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 46
La función que tienen los elementos electrónicos en dicha etapa, se describe a
continuación.
3.7.1 Inversor 74LS04 Este dispositivo tiene la finalidad de invertir la señal PWM que sale de la tarjeta
DEMOJM; y para corregir este efecto se emplea el circuito integrado 74LS04,
además de que proporciona la corriente necesaria para activar el led del
optoacoplador [13], para mayor información sobre las características técnicas
consultar apéndice D.
3.7.2 Optoacoplador 4N25 Este elemento tiene como finalidad, aislar la etapa de potencia de la etapa de control
(tarjeta DEMOJM); con el objetivo de evitar la introducción de niveles de voltaje y
corriente por parte de la etapa de potencia, que dañen el funcionamiento de dicha
tarjeta [13].
En el trabajo se empleó el optoacoplador 4N25, para mayor información sobre sus
características técnicas consultar apéndice D.
3.7.3 MOSFET IRFP4060
El dispositivo realiza el trabajo de un interruptor ya que al recibir la tensión de
excitación necesaria en su compuerta, se cierra dejando pasar el voltaje necesario
para arrancar al motor de C.C; la apertura y cierre del Mosfet varían con respecto al
PWM del microcontrolador.
El Mosfet (Metal Oxide Semiconductor Field Efect Transistor) de Potencia es el
transistor de efecto de campo del tipo MOS, se le considera transistor de potencia
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 47
porque tiene la facilidad de soportar corrientes arriba de 10 Amperes, voltajes
mayores de 220 Volts.
La conmutación de este dispositivo se realiza por voltaje, haciéndolo un elemento útil
cuando se realizan tareas como accionamiento de motores de C.A. y C.C., fuentes
de alimentación, relevadores de estado sólido y contactores [13]. En la etapa de
potencia se utilizó un Mosfet, por sus características técnicas de funcionamiento;
para mayor información consultar el apéndice D. En la figura 3.15 se puede ver la
estructura y simbología del Mosfet.
Figura 3.15. Estructura y simbología del Mosfet.
3.8 FUENTE DE CORRIENTE CONTINUA DL 30018
La fuente proporciona dos salidas de voltaje en C.C variables, la primera con valor de
(0-225V, 1A) con la cual se alimenta el devanado de campo del motor de C.C ya que
se necesitan (160V/0.16A). La segunda proporciona una tensión variable de (0-
240V/4A), con la cual se alimenta tanto el circuito de fuerza de la etapa de potencia;
como el devanado de armadura del motor de C.C, ya que se necesitan (220V/1.36A).
Además la fuente es adecuada para el suministro en corriente alterna rectificada, fija
y variable, para efectuar todas las pruebas sobre máquinas eléctricas del laboratorio
y, en general, en un laboratorio de mediciones eléctricas [15].
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 48
Figura 3.16. Fuente de alimentación DL 30018.
3.9 FUENTE DE ALIMENTACIÓN C.C DL 2613
La fuente se utilizó para alimentar el optoacoplador 4N25 con una tensión de 15 V de
C.C, ver figura 3.17.
Figura 3.17. Fuente de alimentación DL 2613.
Sus Características técnicas son [15]:
Voltajes de salida: +15V / 0V / - 15V.
Corriente de salida: 2.4A (3A por un corto tiempo).
Alimentación: Monofásica de la red eléctrica Completa con dos led´s y un
interruptor principal con lámpara piloto.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 49
3.10 DIODO DE SILICIO DL 2602
El diodo de silicio de accion rapida de la figura 3.18 se utilizo en antiparalelo en el
devanado de armadura del motor para proteger al sistema de corrientes de fuga que
retornan al sistema de control [15].
Figura 3.18. Diodo de silicio DL 2602.
3.11 MÓDULO DE CARGAS
En la figura 3.19 se puede observar el módulo de cargas resistivas, las cuales fueron
utilizadas para realizar las pruebas. Estas son de vital importancia ya que son las que
se encargan de ocasionar una caída de tensión, variando la velocidad del motor; lo
que ocasiona que el controlador PID entre en funcionamiento regulando la velocidad
del motor. Cada una de estas lámparas es de 60W.
Figura 3.19. Módulo de Cargas.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 50
SSIMULACIÓN E IMPLEMENTACIÓN
DEL SISTEMA DE CONTROL
4.1 INTRODUCCIÓN
En este capítulo se mostrara el proceso de simulación, implementación y resultados
del control de velocidad de un motor de C.C.
Como es bien sabido el controlador PID tiene que ser sintonizado para dar una
respuesta adecuada a la planta que en este caso es el motor de C.C. El proceso de
sintonización se realizara en dos partes. Primero se hará mediante simulación y
realizando los siguientes pasos:
a) De la respuesta a un escalón del motor de C.C.
b) Se ajusta la respuesta al escalón, para trazar la recta tangente según el
procedimiento de Ziegler-Nichols descrito en el aparatado 2.5.2. Esto se
realiza con el objetivo de obtener L y T. Con la tabla 2.3 se determinan las
constantes Kp, Ti y Td. Por último se calculan las constantes Ki y Kd. Con
ayuda de las ecuaciones 4.1 y 4.2.
Con los valores obtenidos de Kp, Ki y Kd en el proceso anterior, se simula la
respuesta del controlador en el sistema de control de velocidad para el motor de C.C
para observar el tipo de respuesta del sistema.
Teniendo la respuesta adecuada del controlador en la simulación, se procede como
segundo paso a la implementación y a la sintonización del controlador elaborado en
4
CAPÍTULO
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 51
el microcontrolador. Para ello se consideran como base las constantes obtenidas en
la simulación y un ajuste fino que consiste en adecuar las constantes Kp, Ki y Kd que
se encuentran programadas en dicho microcontrolador.
Posteriormente se realizan las pruebas:
Arranque con señal tipo rampa con motor en vacío.
Arranque con señal tipo rampa con motor cargado.
Arranque con señal tipo escalón con motor en vacío.
Arranque con señal tipo escalón con motor cargado.
Prueba con carga.
Prueba sin carga.
Es importante mencionar que cuando se arranca el motor (en vacío y con carga) con
señal tipo rampa el PID actúa hasta que el motor llega al valor de referencia.
Mientras que con arranque escalón el controlador PID realiza su función desde el
inicio. Las últimas dos pruebas se realizan una vez que el sistema de control de
velocidad llega al valor de referencia.
4.2 SINTONIZACIÓN MEDIANTE SIMULACIÓN DEL CONTROLADOR PID Como se explico en la introducción del capítulo, la sintonización mediante simulación
consiste en los siguientes pasos:
a) Obtener la respuesta a un escalón del motor de C.C.
b) Ajustar respuesta al escalón, para trazar la recta tangente según el
procedimiento de Ziegler-Nichols descrito en el aparatado 2.5.2 y con ayuda
de las ecuaciones 4.4 y 4.5 se obtienen las constantes Ki y Kd.
En los siguientes dos apartados se describirá a detalle cada uno de los pasos.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 52
4.2.1 Respuesta a un escalón del motor de C.C
Para realizar la respuesta al escalón, primero hay que programar el modelo del
motor de C.C. utilizando Simulink de Matlab. El programa se puede visualizar en el
diagrama a bloques de la figura 4.1. [32, 29,13, 20].
Figura 4.1. Programa en Simulink del motor de C.C con excitación separada.
Los parámetros eléctricos y mecánicos del motor de C.C introducidos al programa se
muestran en la tabla 4.1 y, corresponden al motor de C.C. modelo DL-30250 que se
tiene el laboratorio 4 de electrónica de potencia.
Tabla 4.1. Parámetros del motor de C.C con excitación separada. [26].
Parámetros
Inductancia de armadura
LAA= 0.100472 H
Resistencia de armadura
RA= 7.1514 Ω
Inductancia de campo
Lff=81.28886 H
Resistencia de campo
Rf= 8799.46 Ω
Momento de inercia del motor
J= 0.0046652449 Kg-m2
Inductancia mutua de la velocidad
LA1= 3.63H
Par extremo de carga
TL= 0 Nm
Coeficiente de fricción viscosa
B= 0.0004252 Nw-m-seg
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 53
Aplicando un escalón unitario con magnitud de Va= 220 V, se obtiene una respuesta
en velocidad de magnitud 377 rad/s ( 3600 r.p.m) tal y como se muestra en la figura
4.2 obtenida del osciloscopio virtual. El tiempo aproximado que tarda en llegar a esta
velocidad es de 0.3 s. Cabe destacar que la respuesta obtenida representa el
comportamiento del motor de C.C sin control y sin carga.
Figura 4.2. Gráfica velocidad vs tiempo.
4.2.2 Ajuste de la curva y obtención de parámetros del PID Los puntos que forman la respuesta de la figura 4.2 son ingresados a una hoja de
cálculo en Microsoft Excel. Para realizar el ajuste se reconstruyo la respuesta al
escalón mediante la aplicación de “graficas de dispersión”. Se selecciono la
configuración de un polinomio de tercer grado para que Excel realizara el ajuste de la
gráfica mediante el método de mínimos cuadrados.
La decisión de realizar este método de ajuste, es porque sobre el resultado se puede
aplicar el método de Zingler-Nichols a lazo abierto. Es decir, con el ajuste es posible
encontrar el punto de inflexión y trazar la recta tangente a la curva de respuesta de la
velocidad contra tiempo del motor de C.C.
0 50 100 150 200 250 300 350 4000
50
100
150
200
250
300
350
400Velocidad sin control
Tiempo(ms)
Velo
cid
ad(r
adia
nes/m
s)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 54
Para encontrar el punto de inflexión se utilizó el criterio de la segunda derivada a la
ecuación 4.1, del polinomio de tercer orden obtenido del ajuste de la curva, como se
muestra a continuación:
a) Cálculo de la segunda derivada
y= -319,171 x3+ 31,461 x2+ 3,355.2 x - 13.394 (4.1)
-957,513 x2+ 62, 922 x + 3,355.2 x
-1, 915,026 x + 62,922
b) Se iguala a cero y se resuelve la ecuación:
-1, 915, 026 x + 62,922 = 0
x= -62,922/-1, 915, 026
x= 0.0328
c) Cálculo de la ordenada del punto de inflexión.
y= -319,171 (0.0328)3+ 31,461 (0.0328)2+ 3,355.2 (0.0328) - 13.394
y= 119.24
El punto de inflexión es: (0.0328, 119,24)
Después de tener el punto de inflexión se utiliza la ecuación 4.2 de la pendiente para
trazarla sobre la curva, tal y como se mostro en la figura 2.19. Los cálculos son los
siguientes.
d) Cálculo de la pendiente
P1 (0.0328, 119.24)
P2 (0.036, 135.68) (propuesto)
m= (y2 – y1)/(x2- x1) (4.2)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 55
m= (135.68 – 119.24 / 0.036-0.0328)
m=5137.5
Teniendo los valores de la pendiente y del punto de inflexión, se usa la ecuación 4.3,
de la siguiente manera.
e) La ecuación de la recta:
y= mx + b (4.3)
Despejando b:
b= mx –y
b= (5137.5) (0.0328) – 119.24
b= -49.27
Con estos valores (m= 5137.5 y b= -49.27), se utiliza nuevamente la hoja de cálculo
de Microsoft Excel para poder trazar la recta tangente a la curva de respuesta
(velocidad vs tiempo) del motor de C.C y, encontrar los valores de T y L que son
necesarios para el cálculo de las constantes Kp, Ti, Td; tal y como se aprecia en la
figura 4.3.
Figura 4.3. Gráfica de la recta tangente para obtener los valores de L y T.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 56
Los valores obtenidos de T y L a partir del análisis de la gráfica generada (figura 4.3)
son 0.025 y 0.084 respectivamente.
Utilizando las formulas del método de Ziegler-Nichols en lazo abierto que se
mostraron en la tabla 2.4 del capítulo 2, se calculan los valores de Kp, Ti y Td. Al
realizar las operaciones se obtuvo: 0.357, 0.168 y 0.042 respectivamente. Como es
más común representar el controlador en términos de Kp, Ki y Kd, se calculan Ki y
Kd mediante las ecuaciones 4.4 y 4.5 dando como resultado Ki= 2.125 y Kd =
0.0149.
(4.4)
(4.5)
4.2.3 Simulación y pruebas del sistema de control de velocidad
Para determinar si las constantes permiten un sistema estable y adecuado, se
realizan varias simulaciones considerando el programa en Simulink que se muestra
en la figura 4.4. [32, 29,13, 20].
Figura 4.4. Programa en Simulink del control de velocidad del motor de C.C con
controlador PID.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 57
La figura 4.4 se puede explicar en tres partes: a) Bloque que representa un arranque
con rampa, esto con el objetivo de reducir la corriente de arranque del motor de C.C.
b) Bloque que representa el controlador PID. En el se aprecia que la variable de
entrada es el error que se determina comparando el valor de referencia establecido y
el valor actual que se obtiene mediante el lazo de retroalimentación. La acción de
control que es la salida del controlador se dirige al bloque que representa el voltaje
de armadura del motor de C.C. c) Bloque que representa al motor de C.C.
Con el programa de la figura 4.4, primero se realizo una simulación considerando un
arranque con rampa un arranque del motor en vacío y con controlador PID, dando
como resultado las figuras 4.5 y 4.6
Figura 4.5.Velocidad del motor en vacío con arranque tipo rampa y controlador PID.
Figura 4.6. Corriente del motor en vació con arranque tipo rampa y controlador PID.
0 50 100 150 200 250 3000
50
100
150
200
250
300
350
400Velocidad con rampa y control PID en vacio
Tiempo (ms)
Vel
ocid
ad (
radi
anes
/ms)
0 50 100 150 200 250 3000
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6Corriente de arranque con rampa y control PID sin caraga
Tiempo (ms)
Cor
rient
e (A
)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 58
De acuerdo con la figura 4.5, se aprecia que la velocidad toma un tiempo de 0.2s en
llegar a su valor nominal, que es de 377 rad/s. En la figura 4.6 se observa un pico de
corriente de 1.5A, con un tiempo de estabilidad de 0.2s, para después operar en su
corriente nominal en vació de 0.19A.
Como segunda prueba se realizo una simulación arrancando mediante un escalón al
motor en vació y con controlador PID dando como resultado las figuras 4.7 y 4.8.
Figura 4.7. Velocidad del motor en vació con arranque tipo escalón y controlador PID.
Figura 4.8. Corriente del motor en vacío con arranque tipo escalón y controlador PID.
0 20 40 60 80 100 120 140 160 180 2000
50
100
150
200
250
300
350
400Arranque con control PID en vacio
Tiempo (ms)
Velo
cid
ad (
radia
nes/m
s)
0 20 40 60 80 100 120 140 160 180 2000
2
4
6
8
10
12Corriente de arranque con control PID
Tiempo (ms)
Corr
iente
(A
)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 59
En la figura 4.7 se observa que el tiempo que tarda el sistema de control PID en
estabilizar la velocidad es de 0.15s. Comparándola con la figura 4.5 se observa que
hay una pequeña diferencia en los tiempos de estabilización ya que la rampa tiene
cierto tiempo ya establecido. Por otra parte, se observa que la corriente en este caso
aumenta a un valor de 11.5A, tal y como se observa en la figura 4.8.
Por ultimo se realiza la simulación arrancando mediante un escalón al motor pero a
plena carga y con controlador PID. Los resultados de ello se muestran en la figura
4.9 y 4.10.
Figura 4.9. Velocidad del motor a plena carga con arranque tipo escalón y
controlador PID
Figura 4.10. Corriente del motor a plena carga con arranque tipo escalón y
controlador PID.
0 20 40 60 80 100 120 140 160 180 2000
50
100
150
200
250
300
350
400Arranque con PID y con carga
Tiempo (ms)
Vel
ocid
ad (
radi
anes
/ms)
0 20 40 60 80 100 120 140 160 180 2000
2
4
6
8
10
12
14Corriente de arranque con carga y control PID
Tiempo (ms)
Cor
rient
e (A
)
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 60
En base a los resultados de las simulaciones se puede concluir que los valores Kp,
Ki y Kd obtenidas mediante simulación, permiten un sistema de regulación de
velocidad estable, ya que no se tienen oscilaciones caóticas. Por lo tanto las
constantes serán tomadas como base en la programación para la sintonización del
controlador implementado.
Otra conclusión importante en base a los resultados de las gráficas 4.6, 4.8 y 4.10
es que al introducir la rampa al sistema, se limitan las sobrecorrientes (valores muy
arriba del valor nominal a plena carga), lo que indica que las probabilidades que el
circuito de potencia falle sean mínimas, aunque se sacrifique tiempo de arranque.
Por ello se decide que el programa tenga una “etapa de arranque” tipo rampa.
4.3 IMPLEMENTACIÓN DEL CONTROLADOR PID EN EL MICROCONTROLADOR
Antes de implementar el controlador PID en el microcontrolador FlexisJM128, se
realizaron una serie de programas individuales. El primero fue la programación de la
rampa – PWM, posteriormente se realizo un programa para que interactuaran el
PWM y ADC. Por ultimo se desarrollo un programa integral que contenía la rampa el
PWM y el ADC. Por la importancia de las pruebas hechas en esto programas los
resultados se muestran en el apéndice E.
Cuando el programa integral rampa-PWM y PWM - ADC quedaron ajustados de
acuerdo a las necesidades del trabajo, se procedió a realizar el código de
programación del control PID tomando ecuación 2.19. En la figura 4.11 se muestra
el código completo y en la figura 4.12 se muestra el diagrama de flujo del programa.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 61
Figura 4.11. Código del programa de control tipo PID.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 62
Inicio
Inicio de variables
Configuración de RegistrosADC
for(a=0;a<=150;a++)
PWM1_SetRatio8(a);
for(;;)
err_act=Vref-value;
Ap=Kp*err_act;
Ad=(Kd/T)*(err_act-err_ant);
Ai=(err_act*T)*Ki+Ai_ant;
pwm_dty_act=(Ap+Ad+Ai)+pwm_dty_ant;
if(pwm_dty_act>=0xb5)
if(pwm_dty_act<=0x25)
PWM1_SetRatio8(pwm_dty_act);
err_ant=err_act;Ai_ant=Ai;
Pwm_dty_ant=pwm_dty_act;
Fin
pwm_dty_act=0xb5;
pwm_dty_act=0x25;SI
SI
NO
NO
Figura 4.12. Diagrama de flujo del programa de control PID.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 63
El diagrama de flujo de la figura 4.12 se describe a continuación:
Paso 1.- Al iniciar el programa se declaran e inicializan las variables para el control
tal como:
� kp, ganancia proporcional
� ki, ganancia integral
� kd, ganancia derivada
� Ap, acción proporcional
� Ad, acción derivativa
� Ai, acción integral
� PID, proprcional-integral-derivativo
� Vmed, valor medido
� T, tiempo de muestreo
� error_act, error actual
� error_ant, error anterior
� pwm_dty_ant, ciclo útil anterior (PWM)
� pwm_dty_act, ciclo util actual (PWM)
� Vref, valor de referencia
� value, valor medido (lectura del convertidor analógico-digital)
� Ai_ant, acción integral anterior
Paso 2.- Se inicializa el ADC en el programa empleando beans. El código de
programación es:
PE_low_level_init(); AD1_Start();
Paso 3.- Se realiza una etapa de arranque del sistema con el objetivo de iniciar de
una manera suave el control (en base a los resultados de las figura 4.6, 4.8, 4.10).
Para realizar la etapa anterior se utiliza una estructura cíclica (for) que va de 0 a 150,
ya que el 150 es un número en hexadecimal que representa la velocidad del motor la
cual es de 3000 r.p.m y de igual forma los 3V que entrega el transductor en su
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 64
salida. Dentro del for se emplea el PWM mediante beans y se programa un retardo
de tiempo. La programación esta dada por:
for(a=0;a<=150;a++) { PWM1_SetRatio8(a); Cpu_Delay100US(10); }
Paso 4.- Una vez realizado lo anterior el Microcontrolador procede a ejecutar el
bloque de control PID, el cual se encuentra dentro de una estructura cíclica infinita.
El bloque de control consiste en los siguientes puntos:
1. Se obtiene la lectura de la velocidad del motor por medio del ADC, esta
variable se llama Vmed.
2. Calculo del error actual, este se obtiene de la diferencia entre el valor de
referencia (Vref) y el valor medido (Vmed).
3. Calculo de la salida actual, con la salida actual se calcula el valor de la acción
proporcional, derivada e integral.
4. Los valores de cada una de las acciones entran en la línea de código
(pwm_dty_act= (Ap+Ad+Ai)+ pwm_dty_ant), los valores se suman al valor del
pwm_dty_ant y se guardan en la variable pwm_dty_act.
5. Posteriormente en el código de programa se utilizan dos (if), el primero sirve
para poner un límite superior al PWM, este consiste en comparar el valor de
pwm_dty_act con el valor de 0xB5 y si el valor del pwm_dty_act es igual o
mayor a 0xB5 se hace la salida igual a 0xB5, sino se cumple la condición se
pasa al segundo; este se encarga de poner el límite inferior al PWM, el cual
compara el valor de pwm_dty_act con el valor de 0x25 y si el valor del
pwm_dty_act es igual o menor a 0x25 se hace la salida igual a 0x25, estos if
se encargan de modular el ancho de pulso es decir de controlar la velocidad
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 65
del motor cuando se le adiciona carga o se le sustrae la misma al motor,
actualizando el valor del PWM (pwm_dty_act); pero si no se cumple la
condición de ninguno de los dos el PWM (pwm_dty_act) no cambia, esto se ve
reflejado en la velocidad del motor ya que esto quiere decir que el motor se
encuentra en vació.
6. Los valores de las variables error_ant, Ai_ant y pwm_dty_ant, se están
actualizando a cada momento. Las líneas de código son:
error_ant=error_act pwm_dty_ant=pwm_dty_act
Ai_ant=Ai
Realizado lo anterior el programa regresa nuevamente al Paso 4 y se ejecuta
indefinidamente, siempre y cuando se le adicione o sustraiga carga al motor de C.C
ya que de lo contrario el controlador PID no operara.
4.4 SINTONIZACIÓN DEL CONTROLADOR PID IMPLEMENTADO
La sintonización del PID implementado, se realiza con un motor de C.C con número
de serie DL-30200. Las pruebas que se hicieron fueron:
Adición de carga
Sustracción de carga
Cabe mencionar que motor DL-30200 es de menor capacidad, comparado con el
motor ocupado en las pruebas finales. Esto se debe a evitar corrientes que dañen al
circuito de electrónica de potencia. Además se toman como base las constantes Kp,
Kd y Ki obtenidas en la simulación de apartado 4.2.2. Por ultimo se selecciona el
arranque tipo rampa para el motor de C.C en vacío y sin PID. El controlador PID
entra después de estabilizar el motor a una velocidad de 2500 r.p.m equivalente a
2.5V del transductor de velocidad.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 66
4.4.1 Adición de carga
Para observar el comportamiento del controlador PID se adiciona carga al motor. Los
resultados se pueden observar en la figura 4.13. De la figura se puede ver que el
sistema reacciona ocasionando un tiro negativo de 250 mV y dura un tiempo de 1.2s.
Debido a los resultados de la figura y al número de oscilaciones, se concluye que
las constantes Kp, Ki y Kd del controlador PID tienen que ser reajustadas.
Figura 4.13. Adición de carga.
Al ajustar las constantes se obtiene el oscilograma que se muestra en la figura 4.14.
En ella se observa que la respuesta del controlador mejora ya que se tiene un sobre
tiro de 200 mV y un tiempo de estabilización de 1s siendo menores a los resultados
del oscilograma 4.13.
Figura 4.14. Adición de carga con sintonización.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 67
4.4.2 Sustracción de carga Tomando las Kp, Ki y Kd ocupadas en la prueba con carga en donde se obtuvo la
figura 4.13, el sistema se puso en marcha. Cuando estaba el sistema al valor de
referencia se sustrajo la carga obteniendo como resultado la figura 4.15. En la figura
se muestra que el sistema representa varias oscilaciones antes de llegar al valor de
referencia otra vez. El tiempo de estabilización según el resultado de la figura 4.15 es
de 2.5 s y un sobre tiro positivo de 400mV.
Figura 4.15. Sustracción de carga.
Tomando las Kp, Ki y Kd ocupadas en la prueba con carga en donde se obtuvo la
figura 4.14, el sistema se puso en marcha. Cuando estaba el sistema al valor de
referencia se sustrajo la carga, obteniendo como resultado la figura 4.16. En la figura
se visualiza una respuesta más eficiente ya que se presenta una oscilación que dura
1.6s y un sobretiro de 200mV.
Debido a que los resultados con Kp=0.38, Ki=0.001 y Kd=0.0001 son respuestas
estables y sin oscilaciones (4.14 y 4.16), se puede concluir que el controlador
implementado queda sintonizado. En base a esto se procedió regular un motor de
C.C más grande y cuyo código es DL-30250. Los resultados con este motor se
muestran en el próximo apartado.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 68
Figura 4.16. Sustracción de carga con sintonización.
4.5 PRUEBAS Y RESULTADOS DEL CONTROL DE LA VELOCIDAD DEL MOTOR DE C.C MODELO DL-30250, MEDIANTE UN CONTROLADOR PID El apartado inicia con mostrar mediante figuras la instrumentación realizada para el
control de velocidad del motor de C.C con excitación separada modelo DL-30250,
con controlador PID programado en el microcontrolador FLEXISJM128. Se prosigue
en mostrar las pruebas, que permiten ver el actuar del controlador PID sintonizado.
Es importante mencionar que el arranque del motor se realiza con señal tipo rampa
(con motor en vacío y con carga) y tipo escalón (con motor en vacío). Cuando se
arranca el motor con señal tipo rampa el PID actúa hasta que el motor llega al valor
de referencia. Mientras que con arranque con señal escalón el controlador PID
realiza su función desde el inicio.
4.5.1 Instrumentación del sistema de control En la figura 4.17 se muestra parte de la composición del sistema de control. En ella
se observa la computadora utilizada para cargar el programa del controlador PID al
microcontrolador MCF51JM128 de la tarjeta FlexisDEMOJM128, la fuente de
corriente continua, encargada de alimentar el motor e introducir la potencia al
sistema de control, la etapa de potencia y la tarjeta de evaluación con
microcontrolador embebido.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 69
Del microcontrolador se ocupa el ADC y la salida PWM. Como la salida PWM del
microcontrolador no da potencia, se armó un circuito que se le llama “Etapa de
Potencia”. Lo que sobresale de la etapa de potencia es: el optoacoplador; encargado
de aislar la electrónica de control de la electrónica de potencia y el transistor
MOSFET encargado de realizar las conmutaciones a voltajes que varían entre 200 y
300 VCD con corrientes mayores a un ampere.
Figura 4.17. Partes del Sistema de Control
En la figura 4.18 se observa el sistema de control y el equipo empleado para realizar
las prueba sin carga.
Figura 4.18. Equipo utilizado para la prueba sin carga.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 70
En la figura 4.19 se muestra el sistema de control y la carga empleada para la
prueba que lleva el mismo nombre. El tipo de carga es resitiva y va conectada al
generador que esta acoplado al rotor del motor.
Figura 4.19. Equipo utilizado para la prueba con carga.
4.5.2 Pruebas y resultados La primera prueba consistió en un arranque con señal tipo rampa y motor en vacío.
El arranque tipo rampa asemeja un arranque a tensión reducida y el resultado se
puede observar gráficamente en la figura 4.20.En la figura se ve el aumento de la
tensión de manera paulatina, estabilizándose al valor de referencia de un V = 3 [V]
equivalentes a 3000 r.p.m. en un tiempo de 15s.
Figura 4.20. Arranque con señal tipo rampa y motor en vacío.
15 s
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 71
La segunda prueba consistió en un arranque con señal tipo rampa y motor con
carga. El resultado de la prueba se puede ve en la figura 4.21. En esta gráfica se
observa que la rampa va aumentando de manera paulatina hasta el valor de
referencia de V = 3 [V] equivalentes a 3000 r.p.m. en un tiempo de 16s. Debido a la
carga adicionada en el segundo 12 después de iniciar el arranque del motor se
observa un sobrepico de aproximadamente 100 mV que dura 4s. Esta oscilación es
ajustada por la entrada del controlador PID sintonizado.
Figura 4.21. Arranque con señal tipo rampa y motor cargado.
La siguiente prueba se realizó con arranque con señal tipo escalón con motor en
vacío. En esta prueba actuó el controlador PID desde el inicio tal y como se
menciono al principio del capitulo. El resultado se muestra en la figura 4.22. En la
figura se muestra que el motor llega mucho más rápido al valor de referencia (1s). El
resultado permite concluir que aplicando el control PID sintonizado desde un inicio,
permite arrancar el motor mucho más rápido. Sin embargo hay que tener cuidado ya
que según los resultados de la simulación de las figuras 4.8 y 4.10 existen
sobrecorrientes que podrían dañar a un sistema de potencia mal diseñado o
sensible.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 72
Figura 4.22. Arranque con señal tipo escalón y motor en vació.
La figura 4.23 muestra el resultado de la prueba de arranque con señal tipo escalón
con motor cargado. En ella se puede observar que el sistema se estabiliza 2.5s. Al
segundo se observa un sobretiro de 200 mV que dura 1.5s. El sistema se estabiliza
gracias a la entrada del controlador PID sintonizado.
Figura 4.23. Arranque con señal tipo escalón con motor cargado.
En base a los resultados obtenidos de las figuras 4.21-4.23 se ve que el controlador
esta bien sintonizado. Debido a esto se realizan dos pruebas mas, que consisten en
adicionar y eliminar carga cunado se a alcanzado el valor de referencia.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 73
Los resultados se pueden ve en las figuras 4.24 y 4.25.
Figura 4.24. Respuesta del control PID al adicionar de carga.
Figura 4.25. Respuesta del control PID al sustraer carga.
Se puede ver de la figura 4.24 que al adicionar carga al motor de C.C, ocasiona que
la velocidad de éste disminuya, en ese momento entra el controlador PID,
encargándose de llevar al motor a su velocidad de referencia. El tiempo de la acción
es de 1.15s y el sobretiro negativo es 200mV. Al retirar la carga (lámparas
incandescentes conectadas al alternador), ocasiona que la velocidad del motor
aumente (ver figura 4.25), en ese momento entra el controlador PID. El controlador
PID se encarga de llevar al motor a su velocidad de referencia. El tiempo de la acción
es de 2.6s y el sobretiro es 150 mV.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 74
CCONCLUSIONES
Y
RECOMENDACIONES
5.1 CONCLUSIONES
De los resultados obtenidos se puede concluir:
1. Que los valores Kp, Ki y Kd obtenidos mediante simulación, permitieron un
sistema de regulación de velocidad estable. Cabe resaltar que estos valores
se tomaron como punto de partida en el proceso de sintonización del PID
implementado.
2. Al colocar las Kp, Ki y Kd simuladas, como constantes del PID implementado
en el microcontrolador, se presentaron oscilaciones en el control de velocidad.
Es por ello que se tuvo que realizar un ajuste fino, que consistió en variar de
forma tenue las constantes antes mencionadas, hasta tener un sistema
estable con un mínimo de oscilaciones (ver figuras 4.24, 4.25).
3. Los resultados de las gráficas 4.6, 4.8 y 4.10 mostraron que al introducir la
rampa al sistema, se limitaban las sobrecorrientes (valores muy arriba del
valor nominal a plena carga), lo que indica que las probabilidades que el
circuito de potencia falle, sean mínimas, aunque se sacrifique tiempo de
arranque.
4. Debido a que el control actuó de manera apropiada y el circuito de potencia no
presento falla, se decidió realizar la prueba de arranque con señal tipo escalón
5
CAPÍTULO
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 75
sin y con carga, pero con PID al inicio, lográndose así presentar los resultados
de las graficas de las figuras 4.22 y 4.23. Esto concluye que el control PID
implementado en el microcontrolador Flexis JM128 para controlar la velocidad
del motor está bien sintonizado.
5.2 Recomendaciones
1. Si se desea realizar un código de programación en CodeWarrior 10.4 por
medio de beans, se recomienda leer el apéndice A para familiarizarse en el
entorno de trabajo.
2. Se recomienda un arranque tipo rampa, para evitar que el circuito de
electrónica de potencia falle, aunque se sacrifique tiempo de arranque.
3. Cuando se garantice que el diseño del circuito de electrónica de potencia este
bien diseñado, se puede trabajar con un arranque con señal tipo escalón.
5.3 Aportaciones y Trabajos a futuro
Las aportaciones de la tesis son varias: 1) El tutorial de cómo generar un
programa en CodeWarrior versión 10.4, ya que en el se puede ver de manera
descriptiva la forma de realizar un programa de principio a fin, 2) El algoritmo de
programación de un controlador PID para microcontrolador de 32bits, el cual se
puede ocupar para futuros trabajos que empleen este tipo de controlador y 3) El
circuito de electrónica de potencia.
Como trabajos a futuro se puede proponer: la elaboración en el
microconntriolador de 32 bits, un programa con lógica difusa, redes neuronales o
un sistema neurodifuso que permita regular la velocidad de un motor de C.C.
También se puede proponer como trabajo a futuro, elaborar el control de lazo de
corriente al control de velocidad PID.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 76
REFERENCIAS
[1] K. Ogata, “Ingeniería de Control Moderna”, ed. Prentice Hall, 4a. edición,
Madrid, 2003.
[2] Schneider Electric, “Manual Electrotécnico”, España: Schneider Electric, 1999.
[3] O. Arieta, “Operación y control electrónicos de un motor de corriente directa:
mototrol”, México DF, UNAM, 1959.
[4] J. R. Antoline, J. D. Guerrero y C. E. Mateus, “Diseño de controladores de tipo
proporcional integral derivativo (PID) y difuso para la posición de un motor de
corriente continua (DC)”, Ing. Univ. Bogotá (Colombia), 14 (1): 137-160, Enero-
Junio de 2010.
[5] Maximiliano A. Freije, Walter Kloster, “Controlador PWM para motores de
C.C”, 2006.
[6] G.N. González y J.E. Bosso, “Implementación de un control de velocidad y
posición a lazo cerrado de un motor de C.C con dsPIC30F4011”, Buenos
Aires, Argentina, Octubre de 2012.
[7] Manuel Sebastián Álvarez Alvarado, “Modelo matemático de un motor de
corriente continua separadamente excitado: Control de velocidad por corriente
de armadura”, Instituto de Ciencias Físicas, Escuela Superior Politécnica del
Litoral, Guayaquil, Ecuador, Marzo de 2012.
[8] Ing. Ivette Hernández Dávila, “Desarrollo de diferentes técnicas de control
Inteligente del movimiento/par de un motor de corriente directa para
Aplicaciones de robótica industrial”, Instituto Tecnológico de Apizaco, México,
Septiembre 2011.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 77
[9] Alba Yadira Correa Eras, “Sistema para controlar la velocidad de un motor de
C.C utilizando modulación por ancho de pulso”, IPN, Quito, Junio 2006.
[10] K. Johan and T. Hagglund, “Automatic Tuning of PID Controllers”, ISA, 1988.
[11] V. Mazzone, “Control Automático 1: Controladores PID”, Universidad Nacional
de Quilmes, Marzo 2002.
[12] Víctor M. Alfaro Ruiz, “Método de sintonización de controladores PID que
operan como reguladores”, Universidad de Costa Rica, Junio 2002.
[13] Javier Herrera Espinosa, “Implementación en un DSP de un regulador de
velocidad difuso tipo Takagi – Sugeno para un arreglo de motor de corriente
directa - Alternador “, Tesis para obtener el grado de Maestro en Ciencias,
IPN, México, 2003.
[14] Adriana Melissa Del Carmen Jaime, “Control PID de la velocidad de una
banda transportadora para la clasificación de objetos”, Universidad de
Zacatecas, Mxico, 2008.
[15] DeLorenzo Eurolab, “Manual Laboratorio de Maquinas Eléctricas”, México,
2007.
[16] Diego Alejandro Munera Hoyos, “Microcontroladores de 32 Bits Coldfire
V1/Familia JM”, Revisión Técnica, México, 2008.
[17] Roberto Ciprés Sigüenza, Héctor Alonso Lozada Ruiz, Cesar Alejandro Mejía
Banda, “Implementación de un control inteligente para regular la intensidad
luminosa de una lámpara”, Tesis para obtener el grado de Licenciatura en
Ingeniería Eléctrica, México, IPN, 2011.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 78
[18] José Armando Romero Casañas, Manuel Alejandro Peña Ramos, Ricardo
Cano Carbajal, “Uso de Módulos del Microcontrolador HCS12 en la Integración
de Proyectos de Ingeniería”, Tesis para obtener el grado de Licenciatura en
Ingeniería Eléctrica, México, IPN, 2011.
[19] Sinhue López Vite, “Simulación de reguladores difusos de velocidad para
motores de C.D con excitación separada”, Tesis para obtener el grado de
Licenciatura en Ingeniería Eléctrica, México, IPN, 2008.
[20] Manuel García López. "Programa prototipo para simular el control de la
velocidad de un motor de corriente directa utilizando lógica difusa".
Elaboración de software educativo que apoya la asignatura de Fundamentos
de Programación de la carrera de Ingeniería Eléctrica. Registrado en la
Dirección de Educación Superior del IPN. 17 de Diciembre de 2007.
[21] Dorf, Richard, Bishop Robert, “Sistemas de control moderno”, ed. Prentice
Hall, 10a. edición, España, 2005.
[22] Kuo, Benjamin C, “Sistemas de Control Automático”, ed. Prentice Hall, 7a.
edición, México, 1996.
[23] Dogan Ibrahim, “Microcontroller Based Applied Digital Control”, John Wiley &
Sons, Ltd, England, 2006.
[24] Cecilio Angulo Lahón, Cristobal Raya Giner, “Tecnología de Sistemas de
Control”, Ediciones de la Universidad Politécnica de Catalunya, 1a. edición,
España, 2004.
[25] Josep Balcells, José Luis Romeral, “Autómatas Programables”, ed. Alfaomega,
México, 1998.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 79
[26] Juan Carlos García Vera, Juan Carlos Ramírez Serrano, “Obtención de los
parámetros eléctricos y mecánicos de un motor de corriente directa de
excitación separada”, Tesis para obtener el grado de Licenciatura en
Ingeniería Eléctrica, México, IPN, 2012.
[27] Luis Antonio Gutiérrez Páez, Manuel Falcón Herrera, “Interfaz gráfica basada
en Labview, para el monitoreo de los parámetros de un motor de corriente
continua utilizando el controlador PID”, Tesis para obtener el grado de
Licenciatura en Ingeniería Eléctrica, México, IPN, 2014.
[28] K. Ogata, “Dinámica de Sistemas”, ed. Prentice/ Hay Internacional, México,
1987.
[29] Javier Herrera Espinosa, Jorge Ramírez Trujillo “Modelo Matemático de una
máquina de C.D”, Tesina para obtener el Diplomado de Matemáticas
aplicadas a la ingeniería en la ESIME, Diciembre 2000.
[30] H. Buitrón, “Fundamentos de Servosistemas Lineales”, ed. Limusa, México,
1977.
[31] Y. Nishikaea, N. Sannomiiya, O. Otha, H. Tanaka. “A method for autotuning of
PID control parameters”. Aautomatica 20, 1984. [32] Javier Herrera Espinosa, “Implementación de un controlador difuso para una
maquina de C.D en un microcontrolador 68HC11”, 4o Semana de Control y
Automatización, 1999.
[33] R. J. Mantz, E. Tacconi, “Coomplementary rules to Zieglers and Nichols’rules
for a reegulating and tracking controller”. Int. J. Control, vol 49, 1989.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 80
[34] Rina Navarro, “Ingeniería de Control Analógica y Digital”, ed. Mc Graw Hill,
México, 2004.
[35] M. Spiegel, “Laplace Transform”, ed. Mc Graw-Hill, N.Y, 1970.
[36] John Dorsey “Sistemas de Control continuos y discretos”, ed. Mc Graw Hill,
México, 2005.
[37] Oscar Reinoso Garcia; Jose Maria Sebastian y Zuñiga; Fernando Torres
Medina, “Control de sistemas discretos”, ed. Mc Graw-Hill, 1a. edición,
España, 2004.
[38] G. F. Franklin & D. Powell, “Digital Control of dinamic systems” Addison
Wesley, 1980.
[39] W. Hayt Kemmerly, “Teoría y Cálculos de Servosistemas”, ed. Paraninfo,
España, 1970.
[40] P. J. Gawthrop, “Self tuning PI and PID controllers”, IEEE Conference on
Aplications of Adaptive and Multivariable Control, Hull, Inglaterra, 1982.
[41] Rashid, “Electrónica de Potencia”, 3a edición, ed. Pretince Hall, 2004.
[42] C. D. Johnson. “Process Control Instrumentation Technology”. J W wiley &
Sons. 1982.
[43] Howard L. Harrison, John G. Bollinger, “Controles Automaticos”, ed. Trillas, 6a.
edición, México, 1985.
[44] J. P. Gerry, “A comparison of PID Control Algorithms”, Control Engineering,
Mayo de 1987.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 81
APÉNDICE A. USO DE CODEWARRIOR
Introducción
Para realizar el programa del controlador PID se empleó el software CodeWarrior
versión 10.4; es un Entorno de Desarrollo Integrado (IDE, por sus siglas en inglés),
para crear, editar, compilar y enlazar, simular, ejecutar y depurar programas para
sistemas embebidos de la compañía Freescale. CodeWarrior permite la
programación en distintos lenguajes como: lenguaje ensamblador, C y C++, lo que
hace de éste una herramienta muy poderosa ya que además permite combinar la
rapidez de ejecución de código en lenguaje ensamblador con la claridad del lenguaje
C, y la abstracción de datos de C++.
A.1 Creación de un proyecto
Una vez que se inicializa el programa aparece una imagen como la que se muestra
en la figura A.1.
Figura A.1. Pantalla de ejecución del software CW.
Una vez que se ha ejecutado el CW aparece la pantalla de Workspace Launcher,
(ver figura A.2), en la cual se podrá elegir la carpeta donde se desean guardar los
proyectos creados, además de que se permite cambiar el nombre a dicha carpeta.
Figura A.2. Pantalla Workspace Launcher.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 82
Una vez que se elige la carpeta donde se guardaran los proyectos, el programa se
carga por completo. Se procede a realizar un proyecto, para lo cual se va a la barra
de herramientas y se siguen los siguientes pasos File>New>Bareboard Project, tal y
como se muestra en la figura A.3.
Figura A.3. Creación de un proyecto.
Una vez elegido el tipo de proyecto que se va a realizar (en este caso un proyecto
del tipo Bareboard Project), el siguiente paso es darle nombre al proyecto lo cual se
hace en la pantalla New Bareboard Project, (ver figura A.4).
Figura A.4. New Bareboard Project.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 83
En la pantalla Device que se muestra en la figura A.5, se selecciona el
Microcontrolador que se desea utilizar, en este caso se selecciona ColdFire V1>
MCF51JM Family > MCF51JM128.
Figura A.5. Selección del Microcontrolador.
Una vez que se elige el Microcontrolador a utilizar, lo que sigue es una serie de
pasos que se explican brevemente a continuación.
Connections. En esta ventana se selecciona el tipo de conexión que se establecerá
entre la tarjeta y la computadora (ver figura A.6).
Figura A.6. Connections.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 84
ColdFire Build Options. En esta ventana no se modificara nada por lo que se procede
a dar clic en Next >. Ver (figura A.7).
Figura A.7. ColdFire Build Options.
Rapid Application Development. En esta ventana se selecciona la opción Processor
Expert, ya que esta opción permite poner librerías (beans) y líneas de código que
hacen más fácil la programación. Una vez que se realizó el último paso se da clic en
finalizar y el programa comenzara a generar el proyecto, (ver figura A.8).
Figura A.8. Rapid Application Development.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 85
Una vez que se genera el proyecto, en el programa aparece una carpeta, con el
nombre del proyecto, (ver figura A.9) la cual contiene una serie de subcarpetas
propias del proyecto. Esto claro en la perspectiva C++.
Figura A.9. Carpeta del proyecto.
A.2 Agregar beans al programa Para agregar beans en el programa se va a la ventana Components Library, ver
(figura A.10), donde se encuentran una serie de beans que realizan funciones
específicas, en este caso se elige el bean PWM y se da doble clic al bean para
agregarlo al programa.
Figura A.10. Components Library.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 86
Una vez que se eligió el vean, este se puede ver en la carpeta Components, la cual
pertenece a la carpeta del proyecto, (ver figura A.11).
Figura A.11. Carpeta Components.
A.3 Configuración del bean Para configurar el bean se da doble clic y aparece la ventana Components Inspector-
PWM1. En la ventana se establecen los parámetros para dicho bean. En la figura
A.12, se observa la configuración que se hizo para el bean PWM.
Es importante mencionar que la pantalla Components Inspector-PWM1 es la misma
para todos los beans, con la excepción de que el nombre PWM1 cambiara y tomara
el nombre del bean seleccionado.
Figura A.12. Components Inspector.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 87
Una vez configurado el o los beans deseados, se da clic en la opción Generate
Processor Expert Code, (ver figura A.13). La acción permite generar el código de o
los beans utilizados.
Figura A.13. Generate Processor Expert Code.
Cuando se genera el código, se da click en la carpeta Source>ProcessorExpert.c,
(ver figura A.14), la cual abre una ventana con el mismo nombre. En esta venta se
puede visualizar el programa principal.
Figura A.14. Código del programa principal.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 88
La ventana Events.c aparece al dar clic a la carpeta Source>Events.c. En la
ventana, se puede realizar líneas de código y modificar el actuar del bean para que
trabajen a la par del programa principal. En la figura A.15 se muestra la ventana
Events.c con algunas líneas de código y el método PWM1_SetRatio8 () que
pertenece al bean PWM.
Figura A.15. Ventana Events.c.
Cuando se agrega todos los beans deseados y las líneas de código correspondientes
a la programación, se da clic en el botón Build solo si se desea verificar que no
existan errores en el programa. El icono de build se puede ver en la figura A.16.
Figura A.16. Botón Build.
Si no existen errores en la programación, se procede a establecer la comunicación
entre el programa y la tarjeta. Para realizar tal acción se da clic en el botón Debug,
(ver figura A.17), con lo cual se carga el programa en la tarjeta y este a su vez hará
que aparezca la perspectiva Debug.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 89
Figura A.17. Botón Debug.
En la perspectiva Debug (ver figura A.18), se realiza el último paso, el cual es correr
el programa. Para realizar dicha acción se da clic en el icono Resume y con dicha
acción se concluye la ejecución de un proyecto.
Figura A.18. Perspectiva Debug.
Los pasos antes descritos muestran un ejemplo de crear y ejecutar un proyecto en el
programa de CW con el uso de los Beans.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 90
APENDICE B. DISTRIBUCIÓN DE PINES (PINOUT) DEL CONECTOR MCU PORT EN EL CIRCUITO IMPRESO DEL DEMOJM.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 91
B.1 DISTRIBUCIÓN DE PINES MCF51JM128 LQPF/QFP
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 92
APENDICE C. DESCRIPCIÓN DE LOS BLOQUES DEL SISTEMA DE CONTROL SIMULADO Bloque Derivativo
El bloque ‘Derivativo’ aproxima la derivada de su entrada considerando los valores
iniciales de la salida igual a 0. La exactitud de los resultados depende del tamaño del
periodo de muestreo utilizado en la simulación. Pequeños pasos de muestreo
permiten obtener una curva de la salida más suave y exacta.
Figura C.1. Bloque derivativo.
Bloque integrador
El bloque ‘Integrator’ integra su entrada. Los resultados de la integración van a
depender del método de integración que se seleccione en el menú ‘Configuration
Parameters’ al que se accede mediante la opción marcada como ‘Parámetros de
simulación’. El programa Simulink trata el bloque integrador como un sistema
dinámico con un estado, su salida. La entrada de este bloque es la derivada en el
tiempo del estado.
Figura C.2. Bloque integrador.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 93
Bloque Transfer Fcn
El bloque ‘Transfer Fcn’ implementa una función de transferencia con la entrada U(s)
y la salida Y(s), como se muestra en la ecuación (C.1).
G(s) = U(s)/Y(s)= num(s)/dens (C.1)
Asumiendo un sistema de primer orden con un polo en s = −10 y un cero en s = −2,
la función de transferencia. Se modela tal y como lo muestra la ecuación (C.2)
G(s)= U(s)/Y(s)= (s+2)/(s+10) (C.2)
Este modelo se programa utilizando el bloque ‘Transfer Fcn’, a través de la ventana
de dialogo, (ver figura C.3).
Figura C.3. Bloque transfer Fcn.
Bloque Scope
El bloque ‘Scope’ representa gráficamente la entrada conectada a este bloque con
respecto al tiempo de simulación. Este bloque permite representar varias variables a
la vez para el mismo periodo de tiempo. El ‘Scope’ permite ajustar el tiempo y el
rango de los valores de entrada presentados. Se puede mover y redefinir el tamaño
de la ventana ‘Scope’ y se puede modificar los valores de sus parámetros durante la
simulación.
Si la señal de entrada al bloque ‘Scope’ está formada por varias variables (en lugar
de un vector es una matriz), éste asigna colores a cada elemento de la señal en el
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 94
siguiente orden: amarillo, magenta, cían, rojo, verde y azul oscuro. Cuando la señal
posee más de seis elementos, se repite el orden de los colores. Se pueden ajustar
los límites del eje-y pulsando el botón derecho sobre la gráfica y seleccionando la
opción ‘Axis Properties’.
Figura C.4. Bloque osciloscopio.
Bloque Constant El bloque ‘Constant’ es usado para definir un valor constante real o complejo. Este
bloque acepta salidas escalares, vectores (1-D) o matrices (2-D), dependiendo de la
dimensión del parámetro ‘Constant value’ que se especifica y si la opción ‘Interpreter
vector parameters as 1-D’ está seleccionada o no. La salida del bloque posee la
misma dimensión y los mismos elementos que la opción ‘Constant value’. Si se
configura esta opción como un vector (matriz de 1-D), se debe marcar ‘Interpreter
vector parameters’ como 1-D. Si esta opción no es debidamente configurada el
bloque considera el parámetro ‘Constant value’ como una matriz 2-D.
Figura C.5. Bloque constante.
Bloque step El bloque ‘Step’ genera un escalón entre dos niveles definidos en un espacio de
tiempo especificado. Si el tiempo de simulación es menor que el valor del parámetro
‘Step time’, la salida del bloque será el valor del parámetro ‘Initial value’. Para
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 95
tiempos de simulación mayores o iguales que el valor de ‘Step time’, la salida es el
valor del parámetro ‘Final value’.
Figura C.6. Bloque step.
Bloque sum El bloque ‘Sum’ es la implementación del bloque suma. Este bloque realiza las
operaciones de adición o sustracción de sus entradas, pudiendo sumar o sustraer
entradas escalares, vectoriales o matriciales. Se puede también sumar los elementos
de un único vector entrada. Las operaciones del bloque son definidas en el
parámetro ‘List of Signs’: más (+), menos (-) y separador (|). El separador crea un
espacio extra entre puertos en el icono del bloque. La forma del icono se puede
definir como redonda o rectangular (del inglés round o rectangular) a través del
parámetro ‘Icon shape’ en la ventana de dialogo de parámetros. Si hay dos o más
entradas, el número de operaciones de suma o resta debe ser igual al número de
entradas. Por ejemplo, “+−+” requiere tres entradas y se configura el bloque para
sustraer la segunda entrada a la primera entrada, y luego sumar la tercera.
Figura C.7. Bloque sum.
Bloque Gain El bloque ’Gain’ multiplica la entrada por un valor constante (ganancia). La entrada y
la ganancia pueden ser un escalar, un vector o una matriz. El valor de la ganancia se
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 96
especifica a través del parámetro ’Gain’. El parámetro ’Multiplication’ determina se la
multiplicación es matricial o elemento a elemento. El orden de las multiplicaciones en
las operaciones matriciales es configurado a través de este parámetro.
Figura C.8. Bloque Gain.
Bloques Mux
El bloque ‘Mux’ combina sus entradas en una única salida. Las señales de entrada
pueden ser escalares, vectores o matrices. El parámetro ‘Number of Inputs’ permite
especificar el número de señales de entrada y su dimensión. Un valor de −1 significa
que el puerto correspondiente puede aceptar señales de cualquiera dimensión.
Figura C.9. Bloque Mux.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 97
APENDICE D. HOJAS DE DATOS DE LOS ELEMENTOS EMPLEADOS EN LA ETAPA DE POTENCIA DEL REGULADOR DE VELOCIDAD
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 98
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 99
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 100
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 101
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 102
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 103
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 104
APÉNDICE E. RESULTADOS DE LOS PROGRAMAS PRELIMINARES AL PID E.1 Resultados de la programación de la rampa
Es bien sabido que los motores de C.C demandan una corriente de arranque de 10 a
15 veces su corriente nominal, lo que puede ocasionar que tanto la fuente de
alimentación como los elementos electrónicos de la etapa de potencia, se dañen por
el nivel de sobrecorriente. Es por ello que se realiza la programación de la rampa
para experimentar un arranque a tensión reducida y evitar dichas sobrecorrientes
[32, 29,13]. Cabe recalcar que lo antes mencionado se puede observar en la graficas
del apartado 4.2.3.
La rampa se generó empleando el PWM interno del microcontrolador, el cual
empieza desde un valor mínimo (valor cero) y va aumentando hasta llegar al valor
máximo, que para nuestro caso es de 150. Este valor se obtiene mediante el análisis
que se muestra a continuación.
El motor es llevado a una velocidad de 3000 r.p.m (314 rad/s), la cual por medio de
un transductor se convierte en un valor de voltaje de 3.0 V; y el PWM al tener un
rango de trabajo de 8 bits (FF en hexadecimal) entrega una señal en términos de
voltaje de 5V cuando el ciclo útil es del 100%, pero al ser FF un valor hexadecimal
este se convierte a un valor decimal y se saca la relación para la obtención del valor
de referencia (3.0 V).
FFh=255d
5 V 255
3.0 V X
Una vez establecidas las relaciones se aplica una regla de tres para la obtención del
valor de X que representa el valor de referencia que debe alcanzar el PWM para
entregar los 3.0 V.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 105
Los resultados de la programación se muestran en las figura E.1 y E.2.
Figura E.1. Valor de la rampa al 22.6%. Figura E.2. Valor de la Rampa al 100%.
En la figura E.1 se puede observar que la rampa va aumentando hasta llegar a un
22.6% con respecto a su valor de referencia, y en la figura E.2 se puede observar
que la rampa ha alcanzado su valor de referencia (3.0 V).
E.2 Resultados de la programación del PWM y el ADC Como las características del extensión del PWM y ADC por default son diferentes
(PWM=12bits; ADC=16), se realizo un programa donde ambos se configuraron a 8
bits y se comprobó su correlación.
El programa CodeWarrior 10.4 permite observar la lectura de datos en tiempo real en
pantalla. Se puede observar, que el valor que entrega el PWM está en función del
ADC (este valor del ADC se pone mediante el potenciómetro que pertenece a la
tarjeta). Los resultados de algunas corridas se pueden ver en la tabla E.1.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 106
Tabla E.1. Lectura de valores del PWM y el ADC.
Lectura PWM
(Hexadecimal)
Lectura ADC
(Hexadecimal)
Lectura PWM
(decimal)
Lectura ADC
(decimal)
0xB7 0xB7B7 183 47031
0xD7 0xD7D7 215 55255
0xD4 0xD4D4 212 54484
En base a estos resultados se llegó a la conclusión de que los valores analógicos
concedían, por ejemplo si el PWM = 3.6 (183d) V el valor de ADC=3.6 (47031) V.
Esto es a pesar de que internamente el ADC tiene una resolución de 16 bits, y que al
ser configurado de 8 externamente entrega 2 valores iguales de 8 bits, por ejemplo
PWM= 0xB7 y el ADC = 0xB7B7.
En la figura E.3 se muestra la gráfica del valor analógico del PWM = 4.16V que
equivale al valor hexadecimal del PWM = 0xD4 y ADC = 0 xD4D4 tal y como se
mostro en la tabla E.1.
Figura E.3. Gráfica del PWM controlado mediante el ADC.
INGENIERÍA ELÉCTRICA
CONTROL DE LA VELOCIDAD DE UN MOTOR DE CORRIENTE CONTINUA POR MEDIO DE UN CONTROLADOR PID, BASÁNDOSE EN EL MICROCONTROLADOR FLEXIS JM128 107
E.3 Resultados de la programación de la rampa con el ADC y el PWM
Los dos programas anteriores se conjuntaron para formar un programa que integrara
la rampa con PWM y, ADC con PWM con el fin de que funcionaran de la siguiente
manera: Se inicia el programa rampa y ADC. Cuando se lleva la rampa a un “valor
de referencia” programada mediante una constante, se activa el programa ADC con
PWM. Hay que recalcar que mientras que el programa rampa-PWM esta actuando, el
ADC no realiza ninguna acción aunque se varíe el potenciómetro. Después de ello, el
ADC mediante el potenciómetro aumenta y disminuye el valor del PWM tal y como se
muestran en las figuras E.4 y E.5.
Figura E.4. PWM con valor menor al de referencia.
Figura E.5. PWM con valor mayor al de referencia.