Logo Studenta

Tesis2014LuisManuelAlvarezTapia

¡Este material tiene más páginas!

Vista previa del material en texto

See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/282330773
Modelo matemático en Simulink y control de velocidad del MRC WEKA SR-30102
utilizando la FPGA Spartan 3AN
Thesis · July 2014
CITATIONS
0
READS
6,543
1 author:
Luis Manuel Alvarez Tapia
Universidad Tecnológica de la Habana, José Antonio Echeverría
6 PUBLICATIONS   54 CITATIONS   
SEE PROFILE
All content following this page was uploaded by Luis Manuel Alvarez Tapia on 01 October 2015.
The user has requested enhancement of the downloaded file.
https://www.researchgate.net/publication/282330773_Modelo_matematico_en_Simulink_y_control_de_velocidad_del_MRC_WEKA_SR-30102_utilizando_la_FPGA_Spartan_3AN?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_2&_esc=publicationCoverPdf
https://www.researchgate.net/publication/282330773_Modelo_matematico_en_Simulink_y_control_de_velocidad_del_MRC_WEKA_SR-30102_utilizando_la_FPGA_Spartan_3AN?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_3&_esc=publicationCoverPdf
https://www.researchgate.net/?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_1&_esc=publicationCoverPdf
https://www.researchgate.net/profile/Luis-Alvarez-Tapia?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_4&_esc=publicationCoverPdf
https://www.researchgate.net/profile/Luis-Alvarez-Tapia?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_5&_esc=publicationCoverPdf
https://www.researchgate.net/institution/Universidad_Tecnologica_de_la_Habana_Jose_Antonio_Echeverria?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_6&_esc=publicationCoverPdf
https://www.researchgate.net/profile/Luis-Alvarez-Tapia?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_7&_esc=publicationCoverPdf
https://www.researchgate.net/profile/Luis-Alvarez-Tapia?enrichId=rgreq-14fdd9bf135a863fd286b4d6d3698ad1-XXX&enrichSource=Y292ZXJQYWdlOzI4MjMzMDc3MztBUzoyNzk3NjI0ODk2MjY2NDBAMTQ0MzcxMTk4MzgxNQ%3D%3D&el=1_x_10&_esc=publicationCoverPdf
 
 
 
 
Facultad de Ingeniería Eléctrica 
 
 
 
Trabajo de Diploma para optar por el título de Ingeniero Electricista. 
“Modelo matemático en Simulink y control de velocidad del MRC WEKA 
SR-30102 utilizando la FPGA Spartan 3AN” 
 
Autor: Luis Manuel Alvarez Tapia. 
Tutores: Msc. Javier Quintana Santos. 
 Dr. Mario Morera Hernández. 
"Es.tan.vana.la.esperanza.de.que.se.llegará.sin.trabajo.y.sin.
molestia.a.la.posesión.del.saber.y.la.experiencia,.cuya.unión.
produce.la.sabiduría,.como.contar.con.una.cosecha.sin.haber.
sembrado.ningún.grano."
Benjamin Franklin
(1706-1790) Estadista y científico estadounidense
i
Agradecimientos
Mis más sinceros agradecimientos a todas las personas que de alguna forma han contribuido al
desarrollo del presente trabajo.
De forma muy especial a mis padres y abuelos, ambos fuentes de alegría, tanto en los buenos como
en los malos momentos. También a mi tía Niurka y mi prima Nory por su apoyo incondicional a
cada paso del trayecto.
Con mucho amor a mi novia por “cargar”conmigo durante todos los años de la carrera, sin dudar
ni un solo momento.
A mis tutores el Msc. Javier Quintana Santos, el Dr. Mario Morera y el Dr. Javier Muñoz Alvarez
por su apoyo y por brindarme sus conocimientos en todo momento. Gracias.
A mis amigos Yasser, César y Alberto (el “Lama”) por su apoyo y por los buenos momentos que
pasamos.
A mis compañeros de aula y todos los que de una forma u otra han estado a mi lado durante los
cinco años de la carrera.
Al profesor Ariel Santos Fuentefría y al administrador de red Noel por su amistad a través de la
carrera.
Al profesor Wolf-Rainer Novender y a Jurguen Wolff por su ayuda y los datos brindados para la
realización de esta tesis.
To my roommates (Lukas, Kartic, Hassan and Tommy) in the Studenten Wohnheim, for making
my stay in Germany a lot more pleasant.
ii
Dedicatoria.
A mis padres, fuentes de inspiración y a mis abuelos por consentirme.
A mi novia, que me da fuerzas para seguir adelante hacia nuevos horizontes.
A mi tía Niurka y mi prima Nory por su apoyo y cariño brindados con total desinterés.
iii
Hoja de Firmas.
Este trabajo de diploma ha sido revisado y aprobado por las instancias correspondientes y para
que así conste se firma la presente.
Tutor
Nombre: ______________________________________________________
Firma: _____________________
Fecha: _____________________
Organismo: ______________________________________________________
Oponente
Nombre: ______________________________________________________
Firma: _____________________
Fecha: _____________________
Organismo: ______________________________________________________
Jefe de Departamento
Nombre: ______________________________________________________
Firma: _____________________
Fecha: _____________________
Organismo: ______________________________________________________
iv
Declaración Jurada.
Declaro que soy el único autor de este trabajo de diploma y autorizo al Instituto Superior Poli-
técnico José Antonio Echeverría para que haga de este el uso que estime pertinente.
Nombre: ______________________________________________________
Firma: _____________________
Fecha: _____________________
v
Índice general
Introducción. 1
Resumen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Abstract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Problema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Hipótesis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Objetivos Generales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Objetivos Específicos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1. Fundamentos básicos y modelado en Simulink de un MRC. 4
1.1. Estructura y principio de funcionamiento de los MRC. . . . . . . . . . . . . . . . . . 5
1.2. Estado del arte de las técnicas de simulación de los MRC. . . . . . . . . . . . . . . . 8
1.3. Diagrama en bloques del accionamiento del MRC modelado en MATLAB Simulink. 9
1.3.1. Motor de Reluctancia Conmutada bifásico irregular WEKA SR-30102. . . . . 10
1.3.2. Convertidor electrónico de potencia y control. . . . . . . . . . . . . . . . . . . 13
1.3.3. Encoder y activación de las fases. . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3.4. Controlador de Velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.4. Conclusiones Parciales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2. Control de Velocidad de un MRC utilizando una FPGA. 21
2.1. Introducción a las FPGA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2. Tarjeta de desarrollo Spartan-3AN de Xilinx. . . . . . . . . . . . . . . . . . . . . . . 24
2.2.1. Recursos utilizados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3. Herramientas de diseño. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.1. Microcontrolador PicoBlaze . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.2. Herramienta de diseño System Generator . . . . . . . . . . . . . . . . . . . . 28
2.4. Esquema de control implementado en la FPGA. . . . . . . . . . . . . . . . . . .. . . 29
2.4.1. Módulo PWM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4.2. Módulo de los conversores AD y DA. . . . . . . . . . . . . . . . . . . . . . . . 32
2.4.3. Módulo del microcontrolador empotrado Picoblaze. . . . . . . . . . . . . . . . 36
2.4.4. Módulo para el cálculo de la velocidad. . . . . . . . . . . . . . . . . . . . . . 39
2.5. Conclusiones Parciales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
vi
3. Resultados. 43
3.1. MRC y su accionamiento modelado en MATLAB Simulink. . . . . . . . . . . . . . . 43
3.1.1. Control a lazo abierto de la velocidad. . . . . . . . . . . . . . . . . . . . . . . 43
3.1.2. Lazo cerrado de la velocidad con control por histéresis de la corriente. . . . . 45
3.1.3. Control a lazo cerrado de la velocidad con modulación de ancho de pulso. . . 48
3.1.4. Validación del modelo realizado en Simulink. . . . . . . . . . . . . . . . . . . 49
3.2. Control del MRC utilizando la FPGA Spartan 3AN de Xilinx. . . . . . . . . . . . . . 51
3.2.1. Módulo para la generación del PWM. . . . . . . . . . . . . . . . . . . . . . . 51
3.2.2. Etapa de captura de las señales analógicas y su verificación. . . . . . . . . . . 52
3.2.3. Módulo Control de los periféricos. . . . . . . . . . . . . . . . . . . . . . . . . 54
3.2.4. Módulo Control a lazo abierto de la velocidad. . . . . . . . . . . . . . . . . . 55
Conclusiones Generales. 57
Referencias Bibliográficas. 60
Bibliografía. 61
Anexos. 63
A. Curvas de momento electromagnético y flujo para diferentes posiciones del rotor. 63
B. Mallas de momento electromagnético, flujo, inductancia y CFI. 64
C. Cálculo de la característica magnética del MRC. 67
D. Convertidor Electrónico de Potencia. 70
E. Sensor de posición y asignación de las fases. 71
F. Código del microcontrolador PicoBlaze. 73
vii
Índice de figuras
1.1. Estructura electromagnética de los MRC con número de polos diferentes. . . . . . . 5
1.2. Composición de un accionamiento con MRC bifásico . . . . . . . . . . . . . . . . . . 6
1.3. Diagrama en bloques del accionamiento del MRC. . . . . . . . . . . . . . . . . . . . 10
1.4. Motor de Reluctancia Conmutada bifásico irregular WEKA SR-30102. . . . . . . . . 10
1.5. Modelo de la ecuación eléctrica del MRC. . . . . . . . . . . . . . . . . . . . . . . . . 12
1.6. Modelo de la ecuación mecánica del MRC. . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7. Convertidor electrónico de potencia y control. . . . . . . . . . . . . . . . . . . . . . . 14
1.8. Convertidor electrónico de potencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9. Control por histéresis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.10. Control por histéresis (Lazo Cerrado). . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.11. Control PWM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.12. Control PWM (Lazo Cerrado). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.13. Control con pulso único. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.14. Control con PWM a lazo abierto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.15. Capturas del sensor de posición evidenciando la existencia de un tiempo muerto. . . 19
1.16. Lógica de activación de las fases. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.17. Controlador de Velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.18. Regulador PID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1. Estructura de un PLA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2. Estructura de un PAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3. Estructura de un CPLD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4. Recursos utilizados de la tarjeta de desarrollo Spartan-3AN. . . . . . . . . . . . . . . 26
2.5. Esquema extendido del funcionamiento de PicoBlaze. . . . . . . . . . . . . . . . . . . 27
2.6. Divisor de frecuencia para la generación del PWM. . . . . . . . . . . . . . . . . . . . 30
2.7. Generación del PWM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8. Asignación de las señales encargadas de controlar lo semiconductores de la etapa de
potencia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.9. Representación esquemática del circuito de captura de la señal analógica y conversión
digital. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.10. Representación de la relación existente entre la FPGA y la interfaz de control de los
preamplificadores de ganancias programables. . . . . . . . . . . . . . . . . . . . . . . 33
viii
2.11. Requisitos de tiempo a cumplir por las señales que relacionan la FPGA con la interfaz
de control SPI de los preamplificadores de ganancias programables. Todos los tiempos
están en nanosegundos (ns). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.12. Representación de la relación existente entre la FPGA y la interfaz de control de los
ADC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.13. Requisitos de tiempo a cumplir por las señales que relacionan la FPGA con la interfaz
de control SPI de los ADC. Todos los tiempos están en (ns). . . . . . . . . . . . . . . 34
2.14. Divisor de frecuencia para la comunicación con los amplificadores de ganancia pro-
gramable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.15. Asignación del estado actual de la máquina de estado. . . . . . . . . . . . . . . . . . 35
2.16. Máquina de estado utilizada para el control de los conversores. . . . . . . . . . . . . 36
2.17. Señales de comunicación del LCD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.18. Direcciones de memoria de la pantalla del LCD. . . . . . . . . . . . . . . . . . . . . . 37
2.19. Conjunto de caracteres predefinidos en la memoria del LCD. . . . . . . . . . . . . . . 38
2.20. Creación de caracteres personalizados. . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.21. Conjuntos de comandos implementados en el LCD. . . . . . . . . . . . . . . . . . . . 39
2.22. Frecuencia de la señal del sensor de posición y su relación con la velocidad. . . . . . 40
2.23. Esquema para el cálculo de la velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.24. Regulador Proporcional implementado en System Generator. . . . . . . . . . . . . . 41
2.25. Regulador Proporcional Integrador implementado en System Generator. . . . . . . . 42
3.1. Señales de tensión (V), corriente (A) y velocidad (rpm) del MRC para un ciclo útil
del 10%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2. Señales de tensión (V), corriente (A) y velocidad (rpm) del MRC para un ciclo útil
del 13%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.3. Ampliación de las señales de tensión (V), corriente (A) y velocidad (rpm) del MRC
para un ciclo útil del 13%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.4. Comportamiento de la señal de corriente ante la variación de la señal de tensión de
fase del motor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5. Señales de tensión y corriente en condiciones nominales del MRC. . . . . . . . . . . . 45
3.6. Señales de concatenaciones de flujo y momento electromagnético en condiciones no-
minales del MRC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.7. Señales de velocidad y ciclo útil para condiciones nominales del MRC. . . . . . . . . 46
3.8. Señales de velocidad y ciclo útil para una velocidad de 9 000 rpm en el eje del motor. 46
3.9. Señales de velocidad y ciclo útil parauna velocidad de 6 000 rpm en el eje del motor. 47
3.10. Comportamiento de la velocidad para diferentes referencias de velocidad con control
a lazo cerrado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.11. Comportamiento de la corriente para diferentes cargas con control a lazo cerrado. . . 49
3.12. Comportamiento de la velocidad para diferentes cargas con control a lazo cerrado. . 49
3.13. Corriente de fase del MRC simulada. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
ix
3.14. Corriente de fase del MRC experimental. . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.15. Generación de PWM con la señal del sensor de posición. . . . . . . . . . . . . . . . . 51
3.16. Generación de PWM con modulación monopolar y bipolar. . . . . . . . . . . . . . . 52
3.17. Comportamiento a lazo abierto de las señales de tensión y de corriente. . . . . . . . 52
3.18. Señales del ADC y DAC para diferentes frecuencias. . . . . . . . . . . . . . . . . . . 53
3.19. Interruptores utilizados para la interacción entre el usuario y la tarjeta de desarrollo. 54
3.20. Botón rotatorio utilizados para la interacción entre el usuario y la tarjeta de desarrollo. 55
3.21. Comportamiento a lazo abierto de las señales de tensión y de corriente. . . . . . . . 55
3.22. Comportamiento a lazo abierto de las señales de tensión y de corriente con un ciclo
útil del 20%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.23. Comportamiento a lazo abierto de las señales de tensión y de corriente con un ciclo
útil del 50%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
A.1. Momento Electromagnético vs Posición . . . . . . . . . . . . . . . . . . . . . . . . . 63
A.2. Flujo vs Posición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
B.1. Corriente vs Posición vs Momento Electromagnético . . . . . . . . . . . . . . . . . . 64
B.2. Corriente vs Posición vs Flujo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
B.3. Corriente vs Posición vs Inductancia Dinámica . . . . . . . . . . . . . . . . . . . . . 65
B.4. Corriente vs Posición vs CFI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
x
Índice de cuadros
1.1. Combinaciones posibles del sensor de posición. . . . . . . . . . . . . . . . . . . . . . 18
1.2. Mediciones de las señales de posición. Tiempos en ms . . . . . . . . . . . . . . . . . 19
2.1. Ajuste de las ganancias de los preamplificadores. . . . . . . . . . . . . . . . . . . . . 33
3.1. Resultados de la implementación del lazo de control utilizando un regulador PI. . . . 47
3.2. Relación de los resultados obtenidos. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.3. Diferencias entre las señales de entrada y salida. . . . . . . . . . . . . . . . . . . . . 53
3.4. Menu inicial al encender la tarjeta de desarrollo Spartan-3AN. . . . . . . . . . . . . 54
3.5. Pantalla que muestra los parámetros frecuencia y ciclo útil. . . . . . . . . . . . . . . 54
3.6. Pantalla que muestra los parámetros velocidad y corriente. . . . . . . . . . . . . . . . 55
xi
Introducción.
Los accionamientos eléctricos de motores de reluctancia conmutada han ido ganando espacio en
el mercado mundial. Diversas variantes de accionamientos de motores de reluctancia conmutada se
fabrican en la actualidad, que son empleadas en diversos mecanismos industriales, de transporte,
doméstico, médicos y hospitalarios, entre otros. Se han realizado numerosas investigaciones que
comparan a los accionamientos eléctricos de motores de reluctancia conmutada con los de inducción,
quedando los primeros como alternativa con evidentes ventajas en la mayoría de los casos. Entre estas
ventajas se citan con más frecuencia la de mayor robustez, confiabilidad, capacidad de sobrecarga,
tolerancia a fallos y mayor eficiencia energética. Se plantea además que los procesos de producción
son menos costosos y más simples, en el caso de los accionamientos de motores de reluctancia.
En el laboratorio de Accionamientos Eléctricos de Motores de Reluctancia Conmutada del Centro
de Investigaciones y Pruebas Electroenergéticas (CIPEL), se cuenta con el equipamiento apropiado
para el estudio experimental de dichos accionamientos en general, y específicamente en el caso del
accionamiento del motor de reluctancia conmutada WEKA SR-30102 de fabricación alemana.
En los últimos años se ha impuesto la digitalización de casi todas las ramas de la ciencia y la
técnica, y han aparecido en el mercado una vasta gama de dispositivos capaces de realizar el proce-
samiento digital de las señales. Entre los dispositivos de más renombre valdría la pena mencionar a
los Procesadores Digitales de Señales (más conocidos por DSP, por sus siglas en inglés), los Micro-
controladores, los Microprocesadores y las Matrices de Puertas Programables por el usuario (más
conocidas por FPGA, según siglas en inglés). Cada uno de estos dispositivos posee la capacidad
de realizar el procesamiento digital de señales en sentido general y de implementar en tiempo real
algoritmos de gran complejidad, así como sus propias ventajas y desventajas en función de dar solu-
ción a estas tareas. Cada uno de estos dispositivos posee también características intrínsecas que son
independientes de la aplicación a desarrollar, por lo que elegir el más apropiado suele ser una ardua
tarea para el diseñador. Entre las características más importantes pueden citarse: la velocidad de
procesamiento, la capacidad de almacenamiento de datos, la capacidad de tomar decisiones o de
discernir en tiempo real, la capacidad de ejecutar con eficacia algoritmos matemáticos complejos, el
aprovechamiento del dispositivo o la rapidez de desarrollo de los prototipos.
1
Resumen.
En el presente trabajo se crea un modelo matemático para el motor de reluctancia conmutada
WEKA SR-30102 bifásico irregular de fabricación alemana utilizando la herramienta de diseño
Simulink. Este modelo permite la simulación, previa al desarrollo, de nuevas estrategias de control
para los convertidores electrónicos de potencia de estos motores, tales como: reguladores fuzzy, redes
neuronales, entre otros. Mediante la comparación de los resultados obtenidos en la simulación y de
modo experimental fue posible validar la precisión del modelo obtenido.
Sobre la premisa de obtener un control de velocidad para el motor, se calcula el valor de la
velocidad a partir de la señal discreta de un sensor de posición óptico acoplado al eje. Posteriormente
se sintetizaron dos reguladores (proporcional y proporcional integral) y se comparan los resultados
obtenidos. Finalmente se programa un kit de desarrollo con la FPGA Spartan 3AN de Xilinx con
el propósito de implementar experimentalmente y evaluar los resultados obtenidos.
Abstract.
In the present work, a mathematical model of the switched reluctance motor WEKA SR-30102
is created using the development suite Simulink. This model permits the simulation, prior to the
development, of new control strategies, such as: fuzzy regulators and neural networks, among others.
By comparing the results obtained of the simulation and the experimental setup, is possible to
validate the accuracy of the created model.
To implement a speed controller for the motor, the value of the speed is calculated using the
discrete signals provided by the rotor position sensor that is fixed in the shaft of the motor. After
that, two regulators are synthesized (proportional and proportional-integral) and their results are
compared. Finally the FPGA Spartan 3AN development kit is programmed with the objective of
implement and assess the obtained results.
2
Problema.
Teniendo en cuenta que se dispone del MRC WEKA SR-30102 que se encuentra en el laboratorio
de accionamiento eléctrico del CIPEL, el cual no dispone de un convertidor que posea una estrategia
de control de la velocidad. Existe la necesidad de crear un modelo que garantice mediante la simu-
lación la comprobaciónde la estrategia propuesta para su control y su posterior implementación
basada en la utilización de una FPGA.
Hipótesis.
Si se crea un modelo matemático, desarrollado en la herramienta de diseño Simulink, para el MRC
WEKA SR-30102 es posible implementar diferentes estrategias de control a nivel de simulación, que
posteriormente se pueden implementar en una FPGA de forma experimental y validar los resultados.
Objetivos Generales.
Crear un modelo matemático en Simulink para el motor de reluctancia conmutada WEKA SR-
30102 e implementar en la FPGA Spartan 3AN una estrategia de control para dicho motor.
Objetivos Específicos.
Estudiar el modelo matemático del motor de reluctancia conmutada. El modelo lineal y no
lineal así como sus características.
Ajustar las curvas del flujo y torque proporcionadas por el fabricante para el caso particular
del motor de reluctancia conmutada WEKA SR-30102.
Calcular utilizando los datos proporcionadas por el diseñador las curvas de inductancia y fem
rotacional necesarias para la implementación del modelo matemático en Simulink.
Implementar un convertidor electrónico de potencia medio puente asimétrico para el control
del motor de reluctancia conmutada en Simulink.
Implementar diferentes estrategias (modulación de ancho de pulso, banda de histéresis de
corriente y por pulso único) para controlar el motor de reluctancia conmutada en Simulink.
Implementar una estrategia de control basada en modulación del ancho de pulso.
Cálculo de la velocidad utilizando la señal del sensor de posición.
Implementar una interfaz de comunicación entre el usuario y la FPGA que visualice y permita
la modificación de los parámetros del convertidor.
Implementar un control a lazo cerrado de la velocidad utilizando la señal del sensor de posición.
3
Capítulo 1.
Fundamentos básicos y modelado en Simulink de
un MRC.
La aparición de los Motores de Reluctancia Conmutada (en lo adelante MRC) se registra en la
historia entre 1830 y 1850. Su origen tiene como antecedentes los trabajos de William Sturgeon, quién
intentó convertir la atracción que ejerce un electroimán sobre un elemento ferromagnético móvil,
en movimiento continuo u oscilatorio. El antecesor directo del moderno MRC que estuvo basado en
este principio, recibió el nombre de Máquina Electromagnética y fue patentado por W. H. Taylor
en 1838. El diseño consistía en siete piezas de hierro blando, montadas de forma equidistante en la
superficie de una rueda de madera que giraba libremente, soportada por un marco fijo. En este marco
fueron adheridos cuatro electroimanes conectados a baterías mediante un arreglo de conmutadores
mecánicos. El conmutador acoplado al eje del motor garantizaba la activación secuencial y continua
de los electroimanes, priorizando siempre al que estuviese a la menor distancia de alguna de las
piezas de hierro en la rueda de madera. [1]
El motor de Taylor y otras invenciones posteriores no arrojaron resultados alentadores en sus
aplicaciones debido, en lo fundamental, a considerables oscilaciones en el momento electromagnético
y a la baja confiabilidad de los conmutadores mecánicos. Un ejemplo de la aplicación temprana de
estos motores se tiene en el mismo año 1838, cuando Robert Davidson lo empleó en una locomotora
eléctrica del ferrocarril de Edimburgo a Glasgow. Las dificultades que se presentaron entonces, en
conjunto con la aparición y rápido desarrollo del motor de corriente directa, propiciaron que el MRC
cayese en el olvido; debieron transcurrir alrededor de 140 años para que la comunidad científica se
interesase nuevamente en él. Con el advenimiento de semiconductores de potencia apropiados se pudo
reemplazar al antiguo conmutador mecánico por un convertidor electrónico. Los avances logrados en
todas las ramas de la electrónica, el desarrollo de modernos medios de cómputo y la teoría de control,
así como las mejoras en los materiales ferromagnéticos y en el diseño de los motores eléctricos, han
colocado nuevamente a los MRC en el mercado mundial de los accionamientos eléctricos de velocidad
variable. [1]
La denominación de MRC fue utilizada por primera vez por Nasar en 1969 y las primeras patentes
sobre este tema fueron registradas, por Bedford & Hoft, en 1971 y 1972. A finales de los años 70
del siglo XX comienza la nueva era de este tipo de motores debido al desarrollo alcanzado en la
electrónica de regulación y control, a las mejoras de los materiales ferromagnéticos, y al desarrollo
4
de los dispositivos semiconductores de potencia que solucionaron el problema de la conmutación de
las fases. [1]
1.1. Estructura y principio de funcionamiento de los MRC.
Los MRC están compuestos por un estator con polos salientes fabricado en acero laminado, y un
rotor con polos salientes también, hecho del mismo material. En aplicaciones de alta eficiencia con
MRC dichas laminaciones suelen ser más delgadas que las utilizadas en las máquinas asincrónicas
que se diseñan con el mismo propósito, y se fabrican de acero al silicio con el objetivo de reducir las
pérdidas por corrientes parásitas. Esto es debido a que en los MRC las frecuencias de conmutación
son mayores que en motores asincrónicos de similar potencia y velocidad.[3]
La mayoría de las configuraciones tiene una cantidad de polos en el estator (en lo adelante NS)
diferente a la del rotor (en lo adelante NR) con el objetivo de evitar que en cualquier posición,
los polos del rotor estén completamente alineados con los polos del estator. Las más habituales se
muestran en la Figura 1.1, (NS = 4 , NR = 2) para los accionamientos bifásicos, (NS = 6 , NR = 4)
y (NS = 12 , NR = 8) para los accionamientos trifásicos, (NS = 8 , NR = 6) y (NS = 16 , NR = 12)
para los de cuatro fases y (NS = 10 , NR = 8) para los de cinco fases. [2][3]
Figura 1.1.: Estructura electromagnética de los MRC con número de polos diferentes.
Los MRC con mayor NS y NR presentan menos oscilaciones en el momento electromagnético.
Seleccionando una combinación en la que haya dos polos más en el estator que en el rotor, se asegura
un alto momento electromagnético promedio y bajas frecuencias de conmutación en el convertidor
que suministra la energía eléctrica a la máquina. Es posible también una relación de dos polos más
en el rotor que en el estator, lo cual puede contribuir a minimizar el menor ángulo de avance y el
rizado en el momento electromagnético; en este tipo de diseño el ancho en los polos del rotor es
reducido, provocando el decrecimiento de la razón de la inductancia de fase en posición alineada y
en posición desalineada, lo que es una desventaja en estas máquinas. Un número impar de polos en
el rotor es evitado, ya que esto crea un desbalance en las fuerzas que actúan en la estructura. Se
debe notar también la posibilidad de una configuración en la que aparezcan dos dientes por polos
en el estator; esto permite un incremento en la relación momento electromagnético intensidad de
corriente, pero produce también un incremento en las pérdidas de núcleo. Esta configuración es
mejor para aplicaciones de baja velocidad. [4]
Los enrollados del estator del MRC son enrollados concentrados, que son más baratos que los
enrollados distribuidos [4]. Los enrollados en polos diametralmente opuestos son conectados en serie
5
para conformar la fase del estator. Si existen más de un par de polos por fase, estos se conectan en
paralelo. Se tiene, por ejemplo, que una máquina con NS = 6 y NR = 4 es una máquina de tres
fases. La máquina con y NS = 12 y NR = 8 es también una máquina de tres fases, pero con cuatro
polos por fase del estator. La máquina con NS = 16 y NR = 12 es de cuatro fases con cuatro polos
por fase del estator.
Si NS = NR, entonces el motor es de una sola fase, y en la posición alineada solo puede ser
arrancada por medio de algún dispositivo externo. Si NS 6= NR y es múltiplo de NR, entonces existe
en el MRC la misma dificultad que para el caso anterior. Si NS 6= NR y una no es múltiplo de la
otra, entonces el motor pude arrancar desde cualquier posición delrotor.
En el MRC se aplica una secuencia de pulsos de corriente a cada fase del estator por medio
de un convertidor de potencia apropiado. La operación del MRC es sencilla: el par de polos de
la fase del estator es conmutado cuando un par de polos opuestos del rotor se está acercando a
alinearse con estos. La excitación se retira antes de que los polos del rotor y del estator queden
totalmente alineados. El principio físico en el cual se basa el funcionamiento del MRC es tal, que
cuando es energizado un par de polos del estator, el correspondiente par de polos del rotor es atraído
para minimizar la reluctancia de la trayectoria que recorre el campo electromagnético. Energizando
las restantes fases del estator en sucesión, es posible desarrollar momento constante en cualquier
dirección de rotación. [4]
En la Figura 1.2 se muestra la composición de un accionamiento con MRC bifásico.
Figura 1.2.: Composición de un accionamiento con MRC bifásico
6
Ventajas y desventajas.
Las características del MRC han sido discutidas ampliamente en la literatura. En la presente
sección se hace un resumen de las ventajas y desventaja.[5]
Ventajas
Construcción simple y robusta Desde el punto de vista mecánico el MRC es muy sencillo.
El rotor no cuenta con imanes permanentes ni conductores. Los devanados del estator
son también sencillos, pueden ser bobinas pre-enrolladas que se insertan en los polos del
estator.
Sin devanados en el rotor Un aspecto importante en los MRC es la presencia de un rotor
sencillo sin conductores. Esto representa que las pérdidas en el rotor, y por tanto el
calentamiento en el mismo, sean menores que en los motores de corriente directa e in-
ducción.
Baja inercia En aplicaciones donde la velocidad de referencia varíe mucho, es muy importante
que la inercia sea pequeña, para que el momento electromagnético de aceleración se
reduzca. El MRC generalmente presenta una menor inercia al compararse con otras
máquinas eléctricas.
Tolerante a fallas Debido al bajo acoplamiento magnético entre las fases el MRC es clasificado
como tolerante a fallas. Un motor trifásico puede producir momento electromagnético por
una fase independientemente del estado de las otras dos, que pueden estar inactivas o
fallidas.
Alta eficiencia El MRC en general presenta una eficiencia superior a los motores de corriente
directa e inducción de las mismas características.
Desventajas
Pérdidas por batimiento de aire Debido a la configuración de polos salientes las pérdidas
por batimiento de aire serán altas a altas velocidades. En un MRC a 50 000 rpm dichas
pérdidas son aproximadamente la mitad de las pérdidas totales. A la velocidad típica de
las máquinas eléctricas (3 000 rpm) estas pérdidas no influyen significativamente en las
pérdidas totales.
Estructura de polos salientes dobles El MRC tiene polos salientes tanto en el rotor como en
el estator. Esto en conjunción con la excitación de onda cuadrada, ya sea de tensión o
de corriente, tiende a generar un alto contenido de ruido y vibraciones junto con un alto
nivel de rizado en el momento electromagnético.
Muchos conductores Al utilizarse la topología de inversor medio puente asimétrico el número
de conductores entre el motor y el inversor será dos veces el número de fases.
7
Conmutación sincronizada con la posición del rotor El MRC para funcionar de forma efi-
ciente necesita la información de la posición del rotor. Dicha información se obtiene ge-
neralmente mediante el uso de sensores de posición (encoder, resolver, opto-interruptores,
etc.) o mediante el uso de técnicas para la estimación de la posición.
Dificultad para arrancar Si la posición inicial no se conoce es complicado arrancar el motor.
Existen dos métodos para lograr esto. El primero de ellos utiliza un esquema de con-
mutación a lazo abierto con una frecuencia aplicada en rampa, que el motor tiene que
seguir. La segunda variante hace uso de pequeñas señales de excitación en las fases y la
medición de los gradientes de corriente y de tensión para calcular la inductancia de fase.
Si se conocen estas para todas las fases es posible estimar la posición inicial del rotor.
Requiere un inversor El MRC requiere para su correcto funcionamiento un inversor. Dicha
característica hace difícil la comparación, desde el punto de vista económico, con los
motores universales e inducción para aplicaciones que no requieran la variación de la
velocidad.
1.2. Estado del arte de las técnicas de simulación de los MRC.
La simulación constituye, hoy en día, una etapa necesaria en los trabajos de diseño o estudio
del comportamiento de disímiles sistemas o procesos ingenieriles. Aunque los resultados obtenidos
por la vía de la simulación no se consideran ni suficientes, ni determinantes, éstos se acercan cada
vez más al comportamiento de las instalaciones reales. El desarrollo constante de simuladores cada
vez más versátiles, y de potentes microcomputadoras digitales, permiten la realización de grandes
volúmenes de cálculo en muy poco tiempo, lo cual propicia que el análisis matemático sobre muchos
sistemas sea más eficiente. [4]
Para el desarrollo de los modelos y la simulación del lazo de control de la velocidad se seleccionó
el Simulink del MATLAB, ya que este software presenta importantes ventajas sobre otros. Entre
las ventajas se encuentran:
El usuario necesita un tiempo menor para la programación, ya que proceso de elaboración de
los modelos se realiza auxiliándose de bloques prediseñados, o personalizados, lo que simplifica
enormemente el proceso.
Permite la solución de sistemas de gran complejidad a partir de varios métodos de cálculo
numérico, y el ajuste de parámetros del método seleccionado tales como el paso de iteración,
el error y los niveles de tolerancia.
Contiene numerosas bibliotecas para la simulación de sistemas novedosos que son actualmente
muy utilizados por la ciencia tales como sistemas fuzzy, redes neuronales, neuro-fuzzy y
procesadores digitales de señales (DSP según sus siglas en inglés).
Posibilita la creación de sistemas flexibles que pueden ser ampliados con comodidad y rapidez.
8
En la bibliografía consultada [3][4][6][7] se hace referencia a dos vías fundamentales para el mo-
delado de los MRC y sus accionamientos. Estas son:
Modelado a partir de un modelo lineal del motor.
Modelado a partir de un modelo no lineal del motor.
El modelado, cuando se considera que la máquina es un sistema lineal, es de los dos procedimientos
el más sencillo, pues los modelos se desarrollan a partir de ecuaciones analíticas, y que se imple-
mentan con relativa facilidad. Este procedimiento presenta como desventaja la no consideración de
las alinealidades en el motor, lo cual aleja de la realidad los resultados que se obtienen.
Cuando se consideran las alinealidades en el modelo del motor es posible obtener resultados más
precisos, pero el procedimiento para la simulación se dificulta y se vuelve más lento.
Algunos autores en [8][9][10] proponen aproximaciones polinomiales o trigonométricas de las cur-
vas de magnetización, de las inductancias dinámicas de fase y de la razón de cambio del flujo con
respecto a la posición del rotor. En ambos casos el momento electromagnético es calculado por
métodos analíticos lo que implica un gran volumen de operaciones matemáticas, tiempos mayores
para las corridas y disminución en la precisión de los resultados de las derivadas parciales.
Otra metodología para la simulación es la utilización de tablas de look up (en lo adelante LUT)
de dos dimensiones para la aproximación de las relaciones existentes entre las variables de com-
portamiento del motor tal y como sugieren los autores [11][12][13][14]. Dicha metodología aportará
resultados más precisos en la medida en que los datos de la máquina sean exactos y abundantes, e
implicará menor cantidad de cálculos y mayor rapidez en la ejecución.
Tomando en cuenta lo planteado anteriormente se decidió tener en cuenta las alinealidades del
MRC con el objetivo de obtener resultados más exactos. Esto se logróa partir de la utilización de
LUT de dos dimensiones cuyos modelos están contenidos en la biblioteca Simulink. Los datos de las
curvas de magnetización proporcionadas por el fabricante (ver anexos A.1 y A.2 en 2D y en B.1 y
B.2 en 3D) fueron utilizados para la obtención de las curvas de inductancia dinámica por fase y de
las derivadas de flujo con respecto al ángulo del rotor que se pueden observar en los anexos B.3 y
B.4
1.3. Diagrama en bloques del accionamiento del MRC modelado en
MATLAB Simulink.
En el presente epígrafe se explica, de manera detallada, el modelo matemático del accionamiento
del MRC SR-30102 en forma de diagrama de bloques tal y como se muestra en la figura 1.3
Tomando en cuenta lo planteado anteriormente se modelaron los diferentes aspectos del motor
y su control. Para facilitar la comprensión del modelo, este se dividió, en bloques individuales que
concatenados de manera adecuada, simulan el comportamiento del accionamiento de los MRC. Estos
bloques son:
9
Figura 1.3.: Diagrama en bloques del accionamiento del MRC.
1.3.1. Motor de Reluctancia Conmutada bifásico irregular WEKA SR-30102.
El bloque creado para la simulación del MRC bifásico irregular de fabricación alemana WEKA
SR-30102 con carga mecánica, se muestra en la figura 1.4. El objetivo de este bloque es la simulación,
lo más acertada posible, de los parámetros del MRC.
Figura 1.4.: Motor de Reluctancia Conmutada bifásico irregular WEKA SR-30102.
Para la implementación de este modelo fueron utilizadas las expresiones mecánicas y eléctricas
que modelan el comportamiento del MRC.
10
Ecuación Eléctrica.
La ecuación 1.1 se corresponde con la tensión de fase del MRC en el sistema de referencia del
estator:
USj = RSiSj +
dλSj
dt (1.1)
Asumiendo que no existe acoplamiento mutuo entre las fases del estator, 1.1 puede ser desarrollada
para la fase SA tal como se muestra en la ecuación 1.2:
USA = RSiSA +
∂λSA
∂iSA
diSA
dt +
∂λSA
∂ΘR
dΘR
dt (1.2)
Despejando diSAdt de la ecuación 1.2 se tiene:
diSA
dt =
USA −RSiSA − ∂λSA∂ΘR
dΘR
dt
∂λSA
∂iSA
(1.3)
Integrando 1.3 se tiene:
iSA =
∫ USA −RSiSA − ∂λSA∂ΘR dΘRdt
∂λSA
∂iSA
dt (1.4)
Donde:
USA es la tensión de fase.
RS es la resistencia de fase.
iSA es la corriente que circula por la fase.
∂λSA
∂iSA
es la inductancia dinámica.
∂λSA
∂ΘR
es la fem rotacional.
dΘR
dt es la velocidad del motor.
El bloque del MRC está compuesto por cuatro LUT que contienen la información necesaria para
realizar los cálculos. El fabricante del motor suministró las tablas de flujo vs posición vs corriente
y de momento electromagnético vs posición vs corriente. Tomando estas tablas como base se creó
un segmento de código en MATLAB (ver anexo D) para calcular los restantes parámetros, dígase
inductancia de fase y fem rotacional, mediante el uso de las siguientes expresiones respectivamente:
L = ∂λSA
∂iSA
(1.5)
CFI = ∂λSA
∂ΘR
(1.6)
En la figura 1.5 se muestra la ecuación mecánica del MRC que fue creada tomando en cuenta lo
planteado anteriormente.
11
Figura 1.5.: Modelo de la ecuación eléctrica del MRC.
Ecuación Mecánica.
Para modelar las variables mecánicas del MRC se utilizó la ecuación dinámica de los acciona-
mientoa eléctricos, tal y como se muestra en la ecuación 1.7:
TEM − TL = J
dω
dt +Bω (1.7)
Despejando dωdt de la ecuación 1.7 se tiene:
dω
dt =
1
J
(TEM − TL −Bω) (1.8)
Integrando 1.8 se tiene:
ω =
∫ 1
J
(TEM − TL −Bω) dt (1.9)
Donde:
ω es la velocidad del MRC en rad/s.
J = JM + JC es la inercia total del sistema, compuesta por JM que es la inercia del motor y
JC que es la inercia de la carga expresado todo en kgm2 y referidas al eje del motor.
TEM es el momento electromagnético generado por el MRC en Nm.
TL es el momento electromagnético de la carga en Nm.
B es el coeficiente de fricción viscosa en Nm/rad/s.
12
Normalmente el término Bω, que representa la fricción viscosa, puede ser despreciado, debido a
que a bajas velocidades no tiene una influencia significativa con respecto al momento electromag-
nético generado por el motor. En el caso particular del MRC a modelar, este término no puede ser
despreciado ya que la velocidad nominal del motor es de 12 500 rpm pudiendo alcanzar velocidades
superiores. Esto implica que el aporte de Bω no es despreciable y tiene que ser incluido en los
cálculos para obtener una aproximación acertada del modelo físico que se desea.
En la figura 1.6 se muestra la ecuación mecánica del MRC que fue creada tomando en cuenta lo
planteado anteriormente.
Figura 1.6.: Modelo de la ecuación mecánica del MRC.
1.3.2. Convertidor electrónico de potencia y control.
En la figura 1.7 se muestra el bloque correspondiente al convertidor electrónico de potencia
encargado de energizar las fases del motor en función de la posición del rotor e implementar la
técnica de control para el accionamiento del motor. Se implementaron cuatro métodos para realizar
el control, dos a lazo abierto y dos a lazo cerrado. Dígase, control por histéresis de la corriente y
control por modulación de ancho de pulso (en lo adelante PWM), ambos a lazo cerrado. Mientras
que a lazo abierto se utilizaron las variantes de control por pulso único y control por PWM. Las
señales de control implementadas se encuentran multiplexadas, permitiendo al usuario seleccionar
la que desee utilizar a través de las opciones del bloque principal.
El bloque del convertidor electrónico de potencia (figura 1.8) se implementó haciendo uso de
un segmento de código del MATLAB para lograr mayor velocidad de ejecución del modelo (ver
anexo E). Este bloque es una representación del convertidor 2q, una variante muy utilizada para
este tipo de motores.
Como se mencionó anteriormente se implementaron controles diferentes que explicaran a conti-
nuación.
13
Figura 1.7.: Convertidor electrónico de potencia y control.
Figura 1.8.: Convertidor electrónico de potencia.
Control por histéresis de la corriente a lazo cerrado.
Es la regulación más simple y económica, interesante en numerosas aplicaciones en las que puede
admitirse una oscilación continua entre dos límites, siempre y cuando se trate de procesos de evolu-
ción lenta. Como ejemplos podemos citar la regulación de nivel, de presión o de temperatura, todos
ellos problemas relativamente sencillos de lógica digital que no tratamos en este tema. Numerosos
reguladores incorporan esta función básica, que además ofrece una gran rapidez de respuesta y en
14
ocasiones se recurre a este tipo de control cuando el error es grande, y se pasa de forma automática
a otro tipo de regulación cuando el error se aproxima a cero.
Gracias a la existencia de una banda de histéresis, el número de conmutaciones se reduce no-
tablemente. Sin histéresis, el accionador se activaría y desactivaría con demasiada frecuencia. La
histéresis es como una oposición a experimentar cualquier cambio y generalmente será un efecto
perjudicial, por ejemplo, al descender una temperatura después de haber alcanzado un máximo,
el sensor pudiera mantener el mismo nivel de señal hasta que la temperatura real descienda más
de 8 grados, por ejemplo. Sin embargo, este efecto no es perjudicial en el tipo de regulador que
tratamos: Su respuesta es de tipo todo-nada, de forma que se conecta cuando la variable regulada
ha descendido hasta un valor −∆I por debajo de la señal de referencia y solo se desconecta cuando
llega a ∆I por encima de la señal de referencia. Así se establece un margen de variación en el que
mantiene su estado el actuador. El funcionamiento, expresado matemáticamente, queda descrito en
la ecuaciones 1.10 y 1.11
ISA ≥ IREF +∆I → UPWM = 0 (1.10)
ISA ≤ IREF −∆I → UPWM = 1 (1.11)
Este comportamiento se puede apreciar gráficamente en la figura 1.9.
Figura 1.9.: Control por histéresis
Tomando en cuenta lo planteado anteriormente se modeló el bloque en Simulink tal y como se
muestra en la figura 1.10.
Control de la velocidad por modulación de ancho de pulso a lazo cerrado.
La modulación por ancho de pulso (PWM) de una señal o fuente de energíaes una técnica en la
que se modifica el ciclo útil de una señal periódica, ya sea para transmitir información a través de
un canal de comunicaciones o para controlar la cantidad de energía que se envía a una carga. La
15
Figura 1.10.: Control por histéresis (Lazo Cerrado).
construcción típica de un circuito de PWM se lleva a cabo mediante un comparador con dos entradas
y una salida. Una de las entradas se conecta a un oscilador de onda dientes de sierra, mientras que
la otra queda disponible para la señal moduladora. En la salida la frecuencia es generalmente igual
a la de la señal dientes de sierra, y el ciclo útil está en función de la portadora. El funcionamiento,
expresado matemáticamente, queda descrito en la ecuaciones 1.12 y 1.13
UREF ≤ UPORT → UPWM = 0 (1.12)
UREF ≥ UPORT → UPWM = 1 (1.13)
Este comportamiento se puede apreciar gráficamente en la figura 1.11
Tomando en cuenta lo planteado anteriormente se modeló el bloque en Simulink tal y como se
muestra en la figura 1.12.
Control Pulso Único.
En la figura 1.13 se implementa un control a lazo abierto en el que se mantiene la señal de
energizar la fase del motor durante todo el periodo de conducción.
Control de la velocidad por modulación de ancho de pulso a lazo abierto.
Los sistemas a lazo abierto son aquellos en los que solo actúa el proceso sobre la señal de entrada
y da como resultado una señal de salida independiente a la señal de entrada, pero basada en
la primera. Esto significa que no hay retroalimentación hacia el controlador para que éste pueda
ajustar la acción de control. Es decir, la señal de salida no se convierte en señal de entrada para el
controlador. Ejemplo: el llenado de un tanque usando una manguera de jardín. Mientras que la llave
siga abierta, el agua fluirá. La altura del agua en el tanque no puede hacer que la llave se cierre.
Estos sistemas se caracterizan por:
Ser sencillos y de fácil concepto.
16
Figura 1.11.: Control PWM.
Figura 1.12.: Control PWM (Lazo Cerrado).
Nada asegura su estabilidad ante una perturbación.
La salida no se compara con la entrada.
Ser afectado por las perturbaciones. Éstas pueden ser tangibles o intangibles.
La precisión depende de la previa calibración del sistema.
En esta técnica de control la señal de referencia que varía el ancho de los pulsos tal y como se
muestra en la figura 1.14.
1.3.3. Encoder y activación de las fases.
El MRC WEKA SR-30102, como se explicó anteriormente, cuenta con un sensor óptico acoplado
mecánicamente al eje. Este sensor tiene una resolución de 2 bit, por lo que es capaz de dar, teórica-
17
Figura 1.13.: Control con pulso único.
Figura 1.14.: Control con PWM a lazo abierto.
mente, cuatro combinaciones lógicas, dígase 00, 01, 10 y 11. En la práctica esto no es posible debido
a la interpretación física que tienen estas combinaciones. Lo planteado anteriormente se resume en
la tabla 1.1.
Tabla 1.1.: Combinaciones posibles del sensor de posición.
Bit 0 Bit 1 Significado
0 0 Tiempo muerto *
0 1 Conducción Fase A
1 0 Conducción Fase B
1 1 Físicamente imposible **
* ninguna fase en conducción.
** de ocurrir implica que el disco ranurado se encuentra averiado.
El tiempo muerto mencionado anteriormente se produce debido a que al ubicarse los sensores en
el estator existe un instante de tiempo en el que ninguno de los sensores es cortado por el disco
ranurado (figura 1.15).
Este tiempo el simétrico a ambos lados del disco. Tomando esto en consideración se midieron las
duraciones para cada uno de los estados y los resultados se muestran en la tabla 1.2.
En la figura 1.16 se observa el bloque utilizado para la representación en Simulink del sensor de
posición acoplado al eje del motor para suministrar la información de posición en formato de 2 bit.
Este bloque posee como entradas las señales de referencia (Ref) y posición del rotor (Cita). Con
esta información el bloque se selecciona la fase que será energizada. Para el desarrollo de parte del
modelo se programó un segmento de código de MATLAB (ver anexo E), con el objetivo de aumentar
la velocidad de simulación.
18
Figura 1.15.: Capturas del sensor de posición evidenciando la existencia de un tiempo muerto.
Tabla 1.2.: Mediciones de las señales de posición. Tiempos en ms
TON Sensor 0 TOFF Sensor 0 TON Sensor 1 TOFF Sensor 1 TM 0 TM 1
3,16 4,18 3,16 4,18 0,484 0,484
1.3.4. Controlador de Velocidad.
Un regulador PID es un mecanismo de control por realimentación que calcula la desviación o
error entre un valor medido y el valor que se quiere obtener, para aplicar una acción correctora
que ajuste el proceso. El algoritmo de cálculo del control PID se da en tres parámetros distintos:
el proporcional, el integral, y el derivativo. El valor proporcional determina la reacción del error
actual. El integral genera una corrección proporcional a la integral del error, esto nos asegura que
aplicando un esfuerzo de control suficiente, el error de seguimiento se reduce a cero. El derivativo
determina la reacción del tiempo en el que el error se produce. La suma de estas tres acciones
es usada para ajustar al proceso vía un elemento de control como la posición de una válvula de
control o la energía suministrada a un calentador, por ejemplo. Ajustando estas tres variables en el
algoritmo de control del PID, el controlador puede proveer un control diseñado para lo que requiera
el proceso a realizar.
La respuesta del controlador puede ser descrita en términos de respuesta del control ante un error,
el grado el cual el controlador llega a la señal de referencia, y el grado de oscilación del sistema.
Nótese que el uso del PID para control no garantiza control óptimo del sistema o la estabilidad
del mismo. Algunas aplicaciones pueden solo requerir de uno o dos modos de los que provee este
sistema de control. Un controlador PID puede ser llamado también PI, PD, P o I en la ausencia de las
acciones de control respectivas. Los controladores PI son particularmente comunes, ya que la acción
derivativa es muy sensible al ruido, y la ausencia del proceso integral puede evitar que se alcance al
valor deseado debido a la acción de control. Este comportamiento se expresa matemáticamente tal
19
Figura 1.16.: Lógica de activación de las fases.
y como se muestra en la ecuación 1.14.
y(t) = KP e(t) +KI
∫ t
0
e(τ) dτ +KD
de(t)
dt (1.14)
Debido a la característica no lineal del sistema a modelar los parámetros KP , KI y KD no se
pudieron calcular utilizando el método tradicional de síntesis de reguladores. Estos parámetros se
obtuvieron de manera experimental a través del método de prueba y error.
En la figura 1.17 se aprecia el bloque desarrollado para regular la velocidad del motor que fue
modelado tomando en cuenta lo planteado anteriormente.
Figura 1.17.: Controlador de Velocidad.
Figura 1.18.: Regulador PID.
1.4. Conclusiones Parciales.
Se creó un modelo matemático del MRC WEKA SR-30102 utilizando la herramienta Simu-
link del Matlab. Siendo posible el estudio y desarrollo de diferentes estrategias de control,
parámetros de carga y diferentes puntos de operación de la velocidad del MRC.
20
Capítulo 2.
Control de Velocidad de un MRC utilizando una
FPGA.
2.1. Introducción a las FPGA.
Las FPGA son miembros de un grupo de dispositivos llamados dispositivos programables por
campo (FPD según sus siglas en inglés). Una FPGA se puede definir como un circuito integrado que
contiene una matriz de celdas lógicas que pueden ser programadas por el usuario para actuar como un
circuito digital a la medida. Por ejemplo, se puede implementar en una FPGA funciones digitales de
decenas de compuertas lógicas como multiplexores, decodifcadores, sumadores, máquinas de estado,
memorias, microprocesadores, funciones de procesamiento digital tales como filtros y transformadas
o incluso, sistemas completos en un solo circuito integrado, conocidos en inglés como System On
Chip (SOC). Las FPGA tienen un costo de desarrollo de producto relativamente bajo, un ciclo de
diseño corto, y pueden ser reprogramadas muchasveces, incluso para corregir pequeños fallos de
diseño en los productos finales.
Antes de la invención de los FPD los diseñadores tenían que usar dispositivos discretos espe-
cializados que contenían algunas decenas de compuertas lógicas, de forma que para conseguir un
circuito de mediana complejidad eran necesarias algunas decenas de circuitos integrados. La indus-
tria de las FPGA tiene su fundamento en las tecnologías de memoria de solo lectura programable
y en los arreglos lógicos programables, conocidos en inglés como Programmable Read-Only Memory
(PROM) y Programmable Logic Array (PLA), respectivamente.
El primer dispositivo programable por el usuario que podía implementar circuitos lógicos fue la
PROM, en la cual, las líneas de direcciones sirven como entradas del circuito lógico y las líneas
de datos como salidas. Sin embargo, las funciones lógicas raras veces requieren un gran número
de compuertas AND, con lo que las PROM son ineficientes para implementar circuitos lógicos.
El primer dispositivo desarrollado específicamente para implementar funciones lógicas fue el PLA,
que se muestra en la figura 2.1. Este dispositivo consistía en dos niveles de compuertas lógicas: el
primero de compuertas AND seguidas de compuertas OR. El primer nivel de compuertas servía
para implementar los términos producto mientras que en el segundo nivel (compuertas OR) se
implementaban las salidas.
También existió una variante de los PLA en la que el grupo de las compuertas OR no era pro-
21
Figura 2.1.: Estructura de un PLA.
gramable, sino que estaba fija y además su salida estaba conectada a un flip flop para implementar
lógica secuencial. A este grupo se le llamó lógica de arreglo programable, conocido en inglés como
Programmable Array Logic (PAL) (figura 2.2).
Figura 2.2.: Estructura de un PAL.
Los dispositivos lógicos programables complejos, conocidos en inglés como Complex Programmable
Logic Devices (CPLD) pueden verse como una continuación de la arquitectura de los PLA. Los
CPLD incluyen bloques lógicos, localizados en los bordes del dispositivo y una matriz de conexiones
localizada en la parte central, como se muestra en la figura 2.3. Cada bloque lógico tiene una
estructura similar al PLA, por ello, el CPLD puede verse como un conjunto de PLA en un dispositivo
con interconexiones programables. Ross Freeman y Bernard Vonderschmitt, inventaron en 1985 la
primera FPGA viable (XC2064) y fundaron la compañía Xilinx. La XC2064 tenía compuertas e
interconexiones entre compuertas programables, lo que dio comienzo a una nueva era de dispositivos
y también de negocio.
Xilinx es la mayor corporación que investiga y desarrolla los dispositivos conocidos como FPGA
fue fundada en 1984 por dos ingenieros en semiconductores, Ross Freeman y Bernard Vondersch-
mitt, que trabajaban para la Corporación Zilog. Mientras trabajaban para Zilog, Freeman quiso
22
Figura 2.3.: Estructura de un CPLD.
crear dispositivos que actuaran como una cinta en blanco, permitiendo a los usuarios programar la
tecnología ellos mismos. En ese momento, el concepto cambiaba los paradigmas, requería muchos
transistores y estos se consideraban muy preciados. Las personas pensaban que la idea de Ross
estaba fuera del alcance.
Los grandes productores de semiconductores obtenían enormes ganancias con la producción masi-
va de circuitos genéricos. Diseñar y producir docenas de circuitos diferentes para mercados específicos
ofrecía pobres ganancias y requería una mayor complejidad a la hora de fabricar los dispositivos.
Lo que se conoció como FPGA permitiría producir circuitos en grandes cantidades para ajustarse
a la medida de segmentos individuales de mercado.
Ross falló al tratar de convencer a Zilog para invertir en la creación de la FPGA, dejó la compañía
y se unió a su colega de 60 años Bernard Vonderschmitt para invertir en el diseño de la primera
FPGA comercialmente viable. La compañía se incorporó en 1984 y comenzó a vender su primer
producto en 1985.
A fines de 1987 el capital de riesgo de la compañía había crecido a más de 18 millones de dólares
y generaba ingresos anuales de aproximadamente 14 millones.
Debido a la incesante y creciente demanda de dispositivos lógicos programables los ingresos y
ganancias de Xilinx continuaron en ascenso. De 1988 a 1990 los ingresos de la compañía crecieron
en 30, 50 y 100 millones de dólares respectivamente. Durante este periodo se trasladó a una planta
de 13 400 m2 en San José, California, con el objetivo de satisfacer las demandas de compañías como
HP, Apple Inc., IBM y Sun Microsystems que compraban grandes cantidades de dispositivos de
Xilinx. [17]
Los competidores de Xilinx emergieron en el mercado de las FPGA a mediados de los 90. A pesar
de la competencia, las ventas de Xilinx crecieron de 135 millones en 1991 a 178 millones en 1992 y
posteriormente a 250 millones en 1993. [17]
La compañía alcanzó 550 millones de dólares en ingresos en 1995, una década después de haber
vendido su primer producto. A través de los años Xilinx ha expandido sus operaciones hacia la
India, Asia y Europa y sus ventas ascendieron de 560 millones de dólares en 1996 hasta 2 billones
23
a finales del 2010.[17]
Moshe Gavrielov, un veterano de la industria ASIC (circuitos integrados de aplicación específica,
del inglés application-specific integrated circuits), que fue elegido como presidente a principios del
2008, introdujo las plataformas de diseño para proveer soluciones que combinaban las FPGA con
software, núcleos IP (propiedad intelectual según sus siglas en inglés), tarjetas y kit para abordar
las aplicaciones específicas. Estas plataformas de diseño son una alternativa a los ASIC que resultan
bastante costosos.
Las líneas de productos de Xilinx incluyen las series Spartan, Virtex, Kintex y Artix, cada una
incluye configuraciones y modelos optimizados para diferentes aplicaciones.
2.2. Tarjeta de desarrollo Spartan-3AN de Xilinx.
En el presente trabajo se emplea una tarjeta de desarrollo con una FPGA de la familia Spartan-
3A, específicamente la Spartan-3AN de Xilinx. Esta familia presenta una gama de diseños que va
desde 50 000 a 3,4 millones de compuertas de sistema. Incluye los dispositivos Spartan-3A y los
de mayor densidad Spartan-3A DSP. Además, incluye el dispositivo no volátil Spartan-3AN, éste
introduce la tecnología Flash que provee una evolución en seguridad y funcionalidad. Debido a su
bajo costo se hace ideal para diversas aplicaciones, que incluyen acceso a ancho de banda, redes,
televisión digital, etc [15].
La arquitectura interna de la FPGA Spartan-3A es compatible con la de la Spartan-3AN. Ésta
consiste en seis elementos programables fundamentales, ellos son:
CLB: Son bloques lógicos configurables que contienen tablas de look up que implementan funciones
lógicas y almacenamiento de datos, utilizando biestables tipo flip flop o latch.
IOB: Son bloques de entrada y salida que controlan el flujo de datos entre los pines de entrada
y salida (E/S) y la lógica interna del dispositivo. Soportan flujos de datos bidireccionales
y operación en los tres estados lógicos : nivel alto (’1’), bajo (’0’) y alta impedancia (’Z’).
Además se encarga de la configuración de los protocolos de comunicación, tales como: LVDS,
LVTTL, LVCMOS entre otros.
BRAM: Son bloques de memoria tipo RAM que proveen almacenamiento de datos con un formato
de 18 kbit.
Bloques multiplicadores: Son los encargados de realizar las operaciones de multiplicación con pa-
labras digitales de entrada de hasta 18 bit.
DCM: Son sintetizadores digitales utilizados para la distribución de retardos, multiplicación, divi-
sión y desfasaje de las señales de reloj.
24
2.2.1. Recursos utilizados.
La tarjeta de desarrollo Spartan-3A/3AN presenta varias versiones. Este trabajo utiliza la revisión
D, donde sus principales prestaciones se pueden encontrar en [15]. La FPGA Spartan-3A/3AN opera
con dos niveles de tensión: 1,2 V y 3,3 V. La tarjeta de desarrollo presenta un regulador de tensión
cuádruple desarrollado por la NationalSemiconductor para alimentar la FPGA y los elementos
que conforman la tarjeta. A continuación se presentan los recursos utilizados en este trabajo (ver
figura 2.4):
1. FPGA Spartan-3AN
2. Oscilador de 50 MHz.
3. Cuatro interruptores o slide buttons.
4. Un botón rotatorio o rotary button.
5. Dos puerto de seis pines cada uno (J20 y J18).
6. Un conversor analógico digital de dos canales con protocolo de comunicación SPI modelo
LTC1407A-1 del fabricante Linear Tech.
7. Un amplificador de ganancia programable de dos canales con protocolo de comunicación SPI
modelo LTC6912-1 del fabricante Linear Tech.
8. Un conversor digital analógico de cuatro canales con protocolo de comunicación SPI modelo
LTC2624 del fabricante Linear Tech.
9. Una pantalla de cristal líquido (LCD según sus siglas en inglés) de dos líneas de 16 caracteres.
2.3. Herramientas de diseño.
Para el desarrollo del control del presente trabajo se utilizaron, fundamentalmente, dos herra-
mientas de diseño:
El microcontrolador embebido de 8 bit PicoBlaze.
El entorno de desarrollo de System Generator que funciona sobre la herramienta de simulación
Simulink de MATLAB.
2.3.1. Microcontrolador PicoBlaze
El microcontrolador PicoBlaze está diseñado y optimizado específicamente para las FPGA de
las familias Virtex, Kintex y Artix de la serie 7, así como también para las familias anteriores. Su
arquitectura compacta consume menos recursos del dispositivo que cualquier otro microcontrolador
25
Figura 2.4.: Recursos utilizados de la tarjeta de desarrollo Spartan-3AN.
de 8 bit dentro de una FPGA. Además, está previsto como una descripción HDL a nivel de celda
(conocido como soft core), o sea, un código fuente libre en VHDL para las FPGA de Xilinx [16].
También existe una variante que funciona en las series superiores de Xilinx, a partir de la Spartan-6,
pero en principio la funcionalidad es la misma [17].
El núcleo del microcontrolador PicoBlaze es embebido dentro de la FPGA y no requiere recursos
externos. Es extremadamente flexible y su funcionalidad básica es fácilmente extendida y reforzada
por su comunicación a través de sus puertos de entrada y salida. Ocupa aproximadamente 96 slices
de una FPGA que representa el 12,5% de una XC3S50, FPGA de menores prestaciones de la familia,
y solo un 0,3% de los recursos de una XC3S5000.
Como no está concebido como un procesador de altas prestaciones, es compacto y flexible de
manera puede ser usado para el procesamiento de datos de poca complejidad, particularmente en
aplicaciones de rutina que no sean críticas en el tiempo y operaciones de entrada/salida. También
puede ser fácilmente integrado en un sistema más complejo. [18].
El microcontrolador PicoBlaze provee abundantes conexiones de entrada/salida a un costo mucho
más bajo que otros microcontroladores. De la misma manera, el conjunto de periféricos de PicoBlaze
puede ser personalizado para cumplir los rasgos específicos, funciones y requerimientos de costo de
la aplicación objeto. Debido a que el microcontrolador PicoBlaze está entregado como un código
fuente VHDL sintetizable, el núcleo puede ser migrado a futuras arquitecturas de FPGA, eliminando
efectivamente el problema de quedar obsoleto. Está soportado por una serie de herramientas de
desarrollo que incluyen un compilador en ensamblador, un ambiente gráfico de desarrollo integrado
(IDE según sus siglas en inglés), un simulador gráfico del conjunto de instrucciones, un código fuente
en VHDL y modelos de simulación [17].
En implementaciones típicas, el bloque de RAM almacena hasta 1 024 instrucciones de programa,
26
las cuales son automáticamente cargadas durante la configuración de la FPGA. Incluso con esta
eficiencia, en cuanto a recursos, PicoBlaze es capaz de procesar de 44 a 100 millones de instrucciones
por segundo (MIPS) en dependencia de la familia de la tarjeta FPGA y su velocidad [16].
PicoBlaze fue originalmente llamado KCPSM (constant (K) coded programmable state machine).
Ken Chapman, diseñador de sistemas de Xilinx, ideó e implementó este microcontrolador.
A continuación se muestran las principales características de este microcontrolador:
Unidad lógica aritmética (ALU según sus siglas en inglés) de 8 bit con las banderas de acarreo
y cero.
16 registros de propósito general de 8 bit.
Memoria de datos de 64 bytes.
Ancho de las instrucciones de 18 bit.
Soporta programas hasta con 1 024 instrucciones que se cargan automáticamente durante la
configuración de la FPGA.
Pila de 31 niveles para CALL/RETURN.
256 puertos de entrada y 256 puertos de salida.
Dos ciclos de reloj por instrucción, soporta hasta 200 MHz (100 MIPS) como frecuencia de
reloj.
Rápida respuesta al manejo de interrupciones, 5 ciclos de reloj en el peor de los casos. Opti-
mizado para dispositivos Xilinx Spartan-3, Virtex-II, and Virtex-II Pro.
El esquema interno se muestra en la figura 2.5.
Figura 2.5.: Esquema extendido del funcionamiento de PicoBlaze.
27
El microcontrolador PicoBlaze se programa utilizando el lenguaje de programación ensamblador.
Este cuenta con un conjunto de 55 instrucciones que se pueden combinar para obtener la aplica-
ción deseada. La compañía Xilinx proporciona además del código fuente del microcontrolador, un
compilador llamado KCPSM3 que funciona sobre MS-DOS.
Existe una interfaz visual más amigable al usuario llamada pBlazIDE, desarrollada por Media-
tronix que actúa como compilador y depurador de errores. El inconveniente que presentado esta
variante es que las instrucciones y la sintaxis no son exactamente iguales a las proporcionadas por
el fabricante. En el presente trabajo se hizo uso de la primera variante. Finalmente el programa
compilado se adiciona como código VHDL en la herramienta de diseño ISE Xilinx para formar parte
del diseño jerárquico.
2.3.2. Herramienta de diseño System Generator
System Generator es una herramienta de procesamiento digital de señales (DSP según sus siglas
en inglés) que ofrece una vía alternativa para el diseño en las FPGA. Trabaja sobre la plataforma de
diseño Simulink perteneciente a MATLAB. La herramienta provee un menor nivel de abstracción en
el diseño de hardware que los lenguajes de programación utilizados con el mismo objetivo. Permite
el vínculo de diferentes plataformas de trabajo y lenguajes de programación de más bajo nivel,
permitiendo la implementación de diseños muy eficientes para FPGA. Posee librerías de módulos
de propiedad intelectual (IP según sus siglas en inglés), que son utilizados para la implementación
de sistemas digitales.
Esta herramienta no suprime el lenguaje de descripción de hardware (HDL según sus siglas en
inglés) pero hace posible centrar la atención de un diseño solo en las partes críticas. Establecien-
do una analogía con el anterior planteamiento se presentan los microprocesadores y Procesadores
Digitales de Señales (DSP según sus siglas en inglés), los cuales se programan en un lenguaje de
alto nivel como C/C++ y se utiliza solo código ensamblador para optimizar partes del diseño que
requieran cumplir requisitos específicos acorde a los requerimientos de su aplicación.
El término Simulink Blockset representa un conjunto de bloques que pueden ser conectados en el
editor de Simulink, para crear modelos funcionales de un sistema dinámico. Para modelar sistemas
que serán compilados en una FPGA, System Generator Blockset es utilizado con el mismo fin que
Simulink Blockset. Los bloques proveen abstracción de funciones matemáticas, lógicas, de memoria
y DSP, que pueden ser utilizados para construir sistemas sofisticados de procesamiento de señales
[15]. Xilinx Blockset es una familia de librerías que contiene bloques básicos de System Generator.
Algunos bloques son de bajo nivel y proveen acceso a dispositivos de hardware específicos. Otros
son de alto nivel y se utilizan para implementar el procesamiento de señales y algoritmos avanzados
de comunicación. A continuación se hace un resumen de las principales librerías que se encuentran
en System Generator :
Índice: Muestra el conjuntode bloques perteneciente a System Generator.
Elementos Generales: Bloques comunes para la lógica digital y los ajustes de simulación.
28
Comunicación Bloques modulares comúnmente utilizados en los sistemas de comunicación digital.
Lógica de Control: Bloques para la implementación de sistemas embebidos y máquinas de estado.
Tipos de Datos: Bloques que permiten la conversión entre los diferentes tipos de datos.
DSP: Bloques básicos para el procesamiento digital de señales.
Matemática: Bloques que implementan funciones matemáticas.
Memorias: Bloques que implementan y permiten el acceso a memorias físicas o virtuales.
Herramientas: Bloques de utilidades como System Generator y Resource Estimator.
2.4. Esquema de control implementado en la FPGA.
Para facilitar el análisis del esquema de control implementado se dividió este último en módulos
que serán explicados a continuación.
2.4.1. Módulo PWM.
El módulo PWM es el encargado de la generación de las señales de control que controlan el
funcionamiento del MRC. Para esto es necesario el uso del reloj de la FPGA, que en este caso
es de una frecuencia de 50 MHz. La frecuencia del PWM que quiere utilizar es de 8 kHz con
una resolución de 100 pasos. Para su mejor compresión se dividieron en tres secciones que serán
detalladas a continuación.
Divisor de frecuencia.
Como la frecuencia del reloj interno de la FPGA es mucho mayor que la del PWM, se hace
necesario el uso de un divisor de frecuencia. En la ecuación 2.1 se puede observar el método para
calcular el número de pulsos del reloj de 50 MHz para generar una PWM con una frecuencia de
8 kHz y una resolución de 100 pasos.
Nopulsos =
fCLK
fPWMRSTEP
= 50 MHz8 kHz · 100 ≈ 62 (2.1)
Donde:
fCLK es la frecuencia del reloj interno de la FPGA.
fPWM es la frecuencia con la cual se quiere generar el PWM.
RSTEP es la resolución del PWM a generar.
En 2.1 se puede observar que son necesarios 62 pulsos del reloj de 50 MHz para lograr el PWM
deseado. Como la FPGA utiliza el sistema de numeración iniciado en cero el número a utilizar para
los cálculos es 61. En la figura 2.6 se observa el diagrama de flujo del programa creado para la
generación del PWM.
29
Figura 2.6.: Divisor de frecuencia para la generación del PWM.
Generación del PWM.
Para la generación del PWM se usó como base de tiempo la señal creada anteriormente. El ciclo
útil es fijado de forma externa y se compara con un contador que incrementa con cada ciclo de la
señal de reloj del PWM, cuyo valor máximo es la resolución seleccionada. Si el valor del ciclo útil es
mayor que el del contador, la señal a la salida del PWM es el valor lógico ’1’, en caso contrario será
el valor lógico ’0’. En la figura 2.7 se muestra el diagrama de flujo que implementa lo mencionado
anteriormente.
Figura 2.7.: Generación del PWM.
Asignación de las señales del PWM a las fases.
El último paso es la utilización de las señales del PWM generado anteriormente para la correcta
manipulación de los semiconductores de potencia. En la presenta implementación la generación
del PWM para cada fase ocurre cuando la señal del sensor de posición indica que le corresponde
30
conducir. Se tomó la precaución de que el contador del PWM empiece a contar cuando la señal del
sensor de posición lo indica. En una implementación anterior el PWM se generaba constantemente
y se asignaba a los semiconductores de potencia de acuerdo a la señal del sensor. Esto traía como
inconveniente que podía ocurrir que el sensor de posición se encontrase activado para una fase en
específico y el PWM estuviese en estado lógico ’0’, siendo en este caso necesario esperar hasta el
próximo ciclo del PWM para la activación de la fase. Causando así la se pierda tiempo de conducción
en la fase y por tanto una pérdida del momento electromagnético generado.
En la figura 2.8 se muestra el diagrama de flujo del procedimiento mencionado anteriormente.
Figura 2.8.: Asignación de las señales encargadas de controlar lo semiconductores de la etapa de potencia.
31
2.4.2. Módulo de los conversores AD y DA.
El circuito está compuesto por un conversor analógico digital (ADC según sus siglas en inglés) del
fabricante Linear Tech modelo LTC1407A-1 de dos canales y un preamplificador de dos canales de
ganancias programables modelo LTC6912-1. Ambos elementos, que conforman la etapa de captura
de señal analógica y conversión a palabra digital, son programados y controlados por la FPGA. En
la figura 2.9 se muestra una representación esquemática de los elementos incluidos en la tarjeta de
desarrollo que conforman esta etapa, junto a los terminales asociados a la FPGA. El protocolo de
comunicación de estos circuitos integrados es SPI (Interfaz de Periféricos Serie según sus siglas en
inglés) [15].
Figura 2.9.: Representación esquemática del circuito de captura de la señal analógica y conversión digi-
tal.
El circuito de captura de señales analógicas y conversión digital convierte, valga la redundancia,
las señales analógicas de tensión presentes en los terminales de entrada VinA y VinB, en una palabra
digital de 14 bit en complemento a dos. La ecuación 2.2 describe matemáticamente la relación
existente entre la tensión Vin y la palabra digital de 14 bit.
D[13 : 0] = GAINVin − 1,651,25 8 192 (2.2)
La ganancia GAIN se ajusta en dependencia del rango de tensiones a aplicar en los canales VinA
y VinB del conector J22. Este valor se le carga a la interfaz de control SPI de los preamplificadores a
través de la FPGA, en forma de una palabra digital de 8 bit. La tabla 2.1 resume las configuraciones
de ajuste de tensión de estos preamplificadores. La tensión de referencia para los preamplificadores y
32
los ADC es de 1,65 V y se obtiene por medio de un divisor de tensión. El máximo rango de variación
de la tensión a la entrada de un ADC es de ±1,25 V, a partir de una tensión de 1,65 V como punto
medio. Esto hace que 1,25 V aparezca en el denominador de la ecuación 2.2, para normalizar la
diferencia entre la tensión de entrada por VinA y VinB y la tensión de referencia de los conversores.
Debido a que la salida de un conversor análogo digital se representa como un número digital de
14 bit en complemento a dos, los valores representables van de −213 a 213 − 1.
Tabla 2.1.: Ajuste de las ganancias de los preamplificadores.
Ganancia A3 A2 A1 A0 Min(V) Max(V)
0 0 0 0 0 - -
-1 0 0 0 1 0,4000 2,9000
-2 0 0 1 0 1,0250 2,2750
-5 0 0 1 1 0,4000 1,9000
-10 0 1 0 0 1,5250 1,7750
-20 0 1 0 1 1,5875 1,7125
-50 0 1 1 0 1,6250 1,6750
-100 0 1 1 1 1,6375 1,6625
El protocolo de comunicación SPI media entre la interfaz de control de los preamplificadores y
la FPGA. Una palabra de 8 bit es utilizada para programar ambas ganancias, usando dos campos
de 4 bit para cada una, donde el bit más significativo (B3) es enviado primero a través del canal
SPI-MOSI. La figura 2.10 ofrece una representación de los canales que relacionan la FPGA con la
interfaz de control de los preamplificadores.
Figura 2.10.: Representación de la relación existente entre la FPGA y la interfaz de control de los
preamplificadores de ganancias programables.
Los pulsos o señales para el control de los preamplificadores deben cumplir ciertos requisitos de
temporización o sincronización, la figura 2.11 muestra los más significativos [15].
Cuando la señal AD-CONV pasa a estado lógico alto los conversores muestrean las señales analó-
gicas de sus entradas. El resultado de la conversión a palabra digital, de cada muestra, no se presenta
a la salida de los conversores hasta la próxima vez que AD-CONV vuelve a transitar de estado lógico
bajo a alto. Es decir, los conversores presentan un retardo de una muestra. La máxima frecuencia
de muestreo es de aproximadamente 1,5 MHz (con una frecuencia en el bus SPI de SPI-SCK =
50 MHz). En la figura 2.12 aparece representada la relación existente entre la FPGA y la interfaz
33
Figura 2.11.: Requisitos de tiempo a cumplir por las señales que relacionan la FPGA con la interfaz de
control SPI de los preamplificadores de ganancias

Continuar navegando