S.E.P. S.E.I.T. D.G.I.T. CENTRO NACIONAL DE INVESTIGACIÓN Y DESARROLLO TECNOLÓGICO cenidet SISTEMA DE PROPULSIÓN DE UN VEHÍCULO HÍBRIDO ELÉCTRICO. TESISTA: ING. MANUEL ALEJANDRO CANSECO RAMÍREZ. DIRECTOR DE TESIS: Dra. PATRICIA CARATOZZOLO MARTELLITI CO-DIRECTOR: Dr. ABRAHAM CLAUDIO. CUERNAVACA, MORELOS NOVIEMBRE 2004. I RESUMEN. Debido a la contaminación en las grandes ciudades causada por las emisiones contaminantes que emanan de un vehículo, es necesario el desarrollo de vehículos que no contamine tanto. Por lo que se crearon vehículos híbridos que contienen dos sistemas de energía a bordo del vehículo, un motor de combustión interna y un paquete de baterías. Los vehículos híbridos eléctricos, HEV, ofrecen la mejor posibilidad al usar nuevas fuetes de energía en el transporte urbano, reduciendo el impacto en la contaminación atmosférica y también logrando una reducción en el uso de combustible fósil. El mayor desafió para el diseño de HEV es el manejo de diversas fuentes de energía el cual es altamente dependiente de la configuración del sistema de propulsión que se utiliza. Se realizan esfuerzos para mejorar el subsistema eléctrico del HEV como es el motor eléctrico, los convertidores de potencia, controladores eléctricos, manejadores de energía y baterías. En esta tesis se utiliza el sistema de propulsión de un HEV tipo serie, en este sistema el motor de combustión interna proporciona la potencia directamente al motor eléctrico o puede cargar las baterías. Al motor eléctrico se le aplica un control no lineal para regular la velocidad y el par según las necesidades del conductor. Entre los diferentes esquemas de control para el MI, el control vectorial es una de las soluciones más eficientes para el sistema de propulsión eléctrica ya que los controladores de un HEV necesitan una rápida respuesta transitoria del par. Es necesario el control del par del motor en todo momento lo cual implica trabajar en cualquier lugar de los cuatro cuadrantes del plano de par – velocidad (incluso la recuperación de energía en el frenado), la técnica de control vectorial ofrece un rango de velocidad de tres o cuatro veces la velocidad nominal, con la ventaja de que hay varios tipos de optimización del control vectorial que pueden ser aplicados al MI, estas optimizaciones tienen la capacidad de controlar el par mediante la optimización de corriente de estator, con esta optimización se minimizan las perdidas en condiciones de carga. ABSTRACT. Due to the contamination in the big cities caused by the emissions polluting that emanate of a vehicle, is necessary the development of vehicles that doesn't contaminate so much. For which hybrid vehicles that contain two systems of energy aboard the vehicle, an internal combustion engine and a package of batteries were created. Hybrid Electric Vehicles, HEV, are offering the best possibility for the use of new energy sources in urban transportation, reducing the overall impact on air pollution while obtaining minimum fuel consumption. The major challenges for the HEV design are managing multiple energy sources, which is highly dependent on the drive-train configuration and other significant components. Efforts are being made to improve the HEV electrical subsystems, such as electric motors, power converters, electronic controllers, energy management units, batteries. In this thesis the system of propulsion of a HEV series type is used, in this system the combustion internal motor provides the power directly to the electric motor or it can load the batteries. To the electric motor it is applied a non lineal control to regulate the speed and the torque according to the driver's necessities. Among the different control schemes for the IM, vector control seems one of the most efficient solutions for electrical traction because propulsion drive in an HEV needs fast transient response of torque at standstill. It is necessary to control the motor torque at every moment, which implies a working point in each of the four quadrants of the torque-speed plane (even energy recovering while braking). Vector control techniques may offer wide speed range up to three to four times of base speed, with the advantage that there are several efficiency optimizing schemes of vector controlled IM drives that are able to control the torque component current and field component current hence to minimize the total losses at any loading condition. III ÍNDICE. ÍNDICE.............................................................................I SIMBOLOGÍA.............................................................. IV ACRÓNIMOS............................................................... VI ÍNDICE DE FIGURAS….. ........................................ VII CAPÍTULO 1. INTRODUCCIÓN. ......................................................... 1 1.1 ESTADO DEL ARTE. ................................................................................................. 2 1.2 JUSTIFICACIÓN. ....................................................................................................... 4 1.3 ALCANCE. ................................................................................................................ 4 1.4 ORGANIZACIÓN DEL TRABAJO DE TESIS. ............................................................... 5 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN DEL VEHÍCULO HÍBRIDO ELÉCTRICO SERIE. .................................................... 6 2.1 INTRODUCCIÓN. ...................................................................................................... 6 2.2 MODELO DE UN SISTEMA DE PROPULSIÓN TIPO SERIE......................................... 6 2.3 MOTOR DE INDUCCIÓN JAULA DE ARDILLA. ........................................................... 8 2.3.1 MODELO MATEMÁTICO DEL MIJA......................................................... 9 2.3.2 IMPLEMENTACIÓN DEL MODELO DEL MIJA EN MATLAB/SIMULINK........................................................................................... 15 2.4 INVERSOR TRIFÁSICO. .......................................................................................... 17 2.4.2 MODULACIÓN SENOIDAL DEL ANCHO DE PULSO........................... 18 2.4.3 IMPLEMENTACIÓN DEL INVERSOR EN MATLAB/SIMULINK. ................................ 19 2.5 UNIÓN DEL MOTOR E INVERSOR........................................................................... 20 2.6 CARGADOR DE BATERÍAS. .................................................................................... 24 2.6.1 UNIDAD DE PROCESAMIENTO DE ENERGÍA...................................... 24 2.6.2 UNIDAD DE MANEJO DE LA BATERÍA................................................. 25 2.6.3 CARGADOR PARA LA INTERFASE DEL VEHÍCULO. ......................... 25 2.6.4 DISEÑO DEL CONVERTIDOR BUCK. ..................................................... 26 2.6.5 DISEÑO DEL CONVERTIDOR BOOST. .................................................. 28 2.6.6 BATERÍA...................................................................................................... 29 2.7 UNIÓN DEL CARGADOR DE BATERÍA Y LA BATERÍA.............................................. 31 2.7.1 CONVERTIDOR BUCK Y BATERÍA (PRUEBA DE CARGA). .............. 31 2.7.2 CONVERTIDOR BOOST Y BATERÍA (CASO DE DESCARGA). .......... 33 2.8 CONCLUSIONES..................................................................................................... 35 I CAPÍTULO 3. CONTROL DE VELOCIDAD DEL VEHICULO HÍBRIDO. ..................................................................... 36 3.1 INTRODUCCIÓN. .................................................................................................... 36 3.2 CONTROL VECTORIAL. .......................................................................................... 38 3.2.1 BLOQUE DEL MODELO DEL FLUJO. ..................................................... 40 3.3 IMPLEMENTACIÓN DEL CONTROL VECTORIAL EN MATLAB/SIMULINK.................. 41 3.3.1 IMPLEMENTACIÓN DEL SISTEMA DE PROPULSIÓN EN MATLAB/SIMULINK........................................................................................... 44 3.3 ESQUEMA DEL SISTEMA COMPLETO DE PROPULSIÓN DE UN VEHÍCULO HÍBRIDO. .................................................................................................................................... 48 3.3.1 CONDICIONES DE SIMULACIÓN. ......................................................................... 49 3.3.2 ESCENARIO 1. ..................................................................................................... 50 3.3.3 ESCENARIO 2. ..................................................................................................... 51 3.3.4 ESCENARIO 3. ..................................................................................................... 53 3.4 OPTIMIZACIÓN DEL CONTROL VECTORIAL. .......................................................... 55 3.5 CONCLUSIONES..................................................................................................... 61 CAPÍTULO 4. VALIDACIÓN DE LOS RESULTADOS OBTENIDOS EN MATLAB CON VIRTUAL TEST BED (VTB). ................................................................... 63 4.1 INTRODUCCIÓN. .................................................................................................... 63 4.2 SISTEMA DE PROPULSIÓN DEL VEHÍCULO EN VTB............................................... 64 4.3 COMPARACIÓN DEL VTB Y MATLAB/SIMULINK CON EL CONTROL VECTORIAL. ... 66 4.4 CONCLUSIONES..................................................................................................... 69 CAPÍTULO 5. CONCLUSIONES Y TRABAJOS FUTUROS........... 70 5.1 CONCLUSIONES..................................................................................................... 70 5.2 APORTACIÓN. ........................................................................................................ 72 5.3 PUBLICACIONES. ................................................................................................... 72 5.4 TRABAJOS FUTUROS............................................................................................. 73 ANEXO 1. FUNCIÓN S. ................................................................. 74 A.1. INTRODUCCIÓN. ................................................................................................... 74 A.2. IMPLEMENTACION DE LA FUNCIÓN S................................................................... 74 A.2.1. CONSTRUCCIÓN DE LA FUNCIÓN S EN ARCHIVO .M. ................... 74 A.2.2 DEFINICION DE LAS CARACTERISTICAS DE LA FUNCIÓN S. ....... 75 A.3. EJEMPLO. ............................................................................................................. 76 ANEXO 2. CODIGOS .M DE LAS FUNCIONES S PRESENTADAS EN LA TESIS.................................. 83 MOTOR DE INDUCCIÓN. ....................................................................................... 83 INVERSOR TRIFÁSICO. ......................................................................................... 85 MOTOR – INVERSOR.............................................................................................. 88 BUCK – BATERÍA.................................................................................................... 94 BOOST – BATERÍA.................................................................................................. 95 CONTROL VECTORIAL.......................................................................................... 99 OPTIMIZACIÓN DEL CONTROL VECTORIAL. ................................................ 104 BIBLIOGRAFÍA. ....................................................... 110 III SIMBOLOGÍA. abc: sistema de Variables originales. Act: Estado del interruptor, 0 o 1. App: Amper pico a pico. B : Coeficiente de fricción viscosa, (N⋅m⋅s/rad). C: Capacidad de la batería. C10: Capacidad de carga de la batería en régimen de corriente a 10hs. Cbk: Capacitor del filtro de salida del convertidor Buck. Cbt: Capacitor del filtro de salida del convertidor Boost. dq0 : Sistema de variables resultantes. EDC: Estado de carga de la batería. f: Representa cualquier sistema trifásico de variables eléctricas (Voltajes, corrientes, enlaces de flujo, etc.) desfasadas 120o eléctricos entre sí. g: Longitud uniforme del entrehierro. i : Vector de corrientes de estator y rotor. I(C10): Corriente de carga en el régimen C10. I: Corriente de la batería. iabcr : Vector de corrientes de fase del rotor. iabcs : Vector de corrientes de fase del estator. iar, ibr, icr : Corrientes en las fases a, b, c del rotor. ias, ibs, ics : Corrientes en las fases a, b, c del estator. Ico: Corriente de referencia en el lazo de control del convertidor Buck. id, iq: Corrientes en el MR qd (2Ø) del rotor. IL: Corriente en el inductor. imr: Corriente de rotor magnetizante. imrref: Corriente de referencia magnetizante. ims: Corriente magnetizante en el marco de referencia fija al rotor. iqr, idr: Corrientes de estator en el marco de referencia fijo al rotor. is: Corriente de estator. isDref, isDref: Corriente de referencia fija al ángulo del rotor. isxref: Corriente de referencia del flujo de estator. isyref: Corriente de referencia de estator. J : Coeficiente inercial del rotor y de la carga, (kg⋅m2). K : Matriz de transformación de variables 3φ a variables de 2φ. k: Ciclo de trabajo de los convertidores. K-1: Matriz de transformación inversa. Kd1, Kd2, Kq1, Kq2, Kq3, Kq4 : Ganancias de los controladores, constantes. Ke : Matriz de transformación para el MR giratorio síncrono. Kr : Matriz de transformación para el MR fijo al rotor. Ks : Matriz de transformación para el MR estacionario. L : Matriz de inductancias. l: Longitud axial del entrehierro. Lbk: Inductor del filtro de salida del convertidor Buck. Lbt: Inductor del filtro de salida del convertidor Boost. Lls , Llr : Inductancias de dispersión de los devanados de estator y rotor respectivamente. Lr : Matriz de inductancias propias de rotor. Ls : Matriz de inductancias propias de estator. Lsm , Lrm : Inductancias mutuas entre los devanados de estator y rotor respectivamente. Lsr : Matriz de inductancias mutuas estator-rotor. Lsr : Valor pico de las inductancias mutuas estator-rotor. Lss , Lrr : Autoinductancias o inductancias propias de los devanados de estator y rotor M : Inductancia mutua entre los devanados de estator y rotor. np : Número de pares de polos en el MI. Nr : Número de vueltas en los devanados de rotor. Ns : Número de vueltas en los devanados de estator. p: Operador de derivación, d/dt. Qin: Carga suministrada en el tiempo de interés Qin = I*t. R : Matriz diagonal de resistencias de estator y rotor. r: Radio a la mitad del entrehierro. Rbk: Resistencia de carga del convertidor Buck. Rbt: Resistencia de carga del convertidor Boost. Rr : Resistencia de los devanados de rotor. Rr : Resistencia de los devanados de rotor. Rs : Resistencia de los devanados de estator. Rs : Resistencia de los devanados de estator. Top: Par electromagnético optimizado. ud, uq : Voltajes de entrada al estator del modelo dq. ud, uq, id, iq, ψd, ψq : Voltajes, corrientes y flujos del modelo dq del motor de inducción. v: Vector de voltajes de estator y rotor. Var, Vbr, Vcr: Voltajes en las fases a, b, c del rotor. Vas, Vbs, Vcs: Voltajes en las fases a, b, c del estator. Vc: Tensión de la batería durante la carga. VC: Voltaje del capacitor. Vco: Voltaje de referencia en el lazo de control del convertidor Boost. vd, vq : Variables auxiliares en función de voltajes y corrientes de estator, flujos y velocidad del rotor. Vd: Tensión de descarga. Vfc: Tensión final de carga. Vg: Tensión de la batería para el comienzo de la gasificación. Vpp: Voltaje pico a pico. Vqs, Vds : Voltajes de estator en el marco de referencia fijo al rotor. Vs : Voltaje de alimentación. sl: Ángulo de deslizamiento. r: Vector de flujo de rotor. rref: Velocidad de referencia en el esquema de control vectorial. sl: Velocidad de deslizamiento. λ : Enlace de flujo, (sistemas lineales). λabcs : Vector de enlaces de flujo de estator. λabcr : Vector de enlaces de flujo de rotor. θ : Desplazamiento angular de las nuevas variables del MR arbitrario. δ : Desplazamiento angular eléctrico del nuevo MR. ξ : Variable auxiliar de integración. ζ : Variable auxiliar que representa la suma de θ + θc. ω : Velocidad angular del MR arbitrario. τ: Constante de tiempo generalizada. V θc : Desplazamiento angular del conjunto de variables originales. ωc : Velocidad angular del conjunto de variables originales. ηc: Rendimiento de carga. τe : Par electromagnético, (N⋅m). ωe : Velocidad angular del MR giratorio síncrono. τL : Par de carga, (N⋅m). θr : Desplazamiento angular eléctrico del rotor, (rad). ρr : Posición angular del flujo deseado del rotor. ωr : Velocidad angular del rotor, (rad/seg). τref : Par electromagnético de referencia. ωref : Velocidad angular de referencia. ∆T: Variación de temperatura tomando como referencia 25°C. ρ : Ángulo del flujo del rotor. Ψ d : Enlaces de flujo del rotor. λas , λbs , λcs : Enlaces de flujo en las fases a, b, c del estator. λar , λbr , λcr : Enlaces de flujo en las fases a, b, c del rotor. λr : Flujo total en el marco de referencia fijo al rotor. λqr , λdr : Flujos de estator en el marco de referencia fijo al rotor. µ0 : Permeabilidad en el entrehierro. σ : Variable auxiliar del modelo de la máquina de inducción 1 − ACRÓNIMOS. EDC EV FOC HEV MCI MI MIJA MR MSE PI PWM SPWM VTB Estado de Carga de la Batería. Vehículo Eléctrico. Control de Campo Orientado. Vehículo Híbrido Eléctrico. Motor de Combustión Interna. Máquina de Inducción. Máquina de Inducción de Jaula de Ardilla. Marco de Referencia. Máquina Sincronía sin Escobillas. Controlador Proporcional Integral. Modulación por Ancho de Pulso. Modulación Senoidal por Ancho de Pulso. Virtual Test Bed. M2 Ls Lr ÍNDICE DE FIGURAS. Pag. Figura 2.1.- Partes del sistema de propulsión de un vehículo híbrido eléctrico serie. Figura 2.2.- Diagrama esquemático del motor de inducción trifásico. Figura 2.3.- Diagrama eléctrico de los devanados de estator y rotor del motor de inducción trifásico. Figura 2.4 Implementación del MIJA mediante la función S de Matlab/Simulink. Figura 2.5. Corrientes bifásicas en el MR fijo al rotor, a) Corrientes de los devanados de rotor, b) corrientes de los devanados de estator. Figura 2.6. a) Velocidad del rotor, b) Par electromagnético generado. Figura 2.7. a) Voltajes de alimentación bifásicos, b) Gráficas de Par Vs Velocidad. Figura 2.8.- Inversor trifásico. 14 Figura 2.9.- Circuitos equivalentes para una carga resistiva conectada en estrella. Figura 2.10.- Modulación senoidal de ancho de pulso para un inversor trifásico. a) Voltaje de referencia y voltaje de la portadora, b),c),d) Son los voltajes b) de disparo de compuertas, e) Voltaje de línea. Figura 2.11.- Implementación del Inversor trifásico en Matlab/Simulink mediante la función S. Figura 2.12. a) Portadoras triangular y señal de referencia senoidal utilizadas para producir los pulsos de disparo, b) Voltajes y corrientes en cada fase del inversor trifásico con una carga RL aplicada. Figura 2.13.- Diagrama a bloques del motor – inversor. Figura 2.14.- Implementación en Matlab/Simulink mediante la función S del motor e inversor. Figura 2.15.- a) Voltajes de salida del inversor, b) Voltaje rms de cada línea. Figura 2.16.- Frecuencia fundamental del voltaje a la salida del inversor y sus componentes armónicos. Figura 2.17.- a) Par electromagnético generado, b) Velocidad del rotor. Figura 2.18.- a) Respuesta de la máquina con un par negativo (modo generador), b) Corriente a través del rectificar de puente completo. Figura 2.19.- Diagrama a bloques del cargador de batería. Figura 2.20.- Diagrama a bloques del convertidor Buck y el lazo de control en modo corriente. Figura 2.21.- Diagrama a bloques del convertidor Boost y el lazo de control en modo voltaje. Figura 2.22.- Prueba de Carga de Batería. Figura 2.23.- Implementación en Matlab/Simulink de la etapa de carga. Figura 2.24.- Corriente y Voltaje a la salida del convertidor Buck. Figura 2.25.- Estado de carga del paquete de baterías. Figura 2.26.- Prueba de descarga de la Batería. Figura 2.27.- Implementación en Matlab/Simulink del caso de descarga. Figura 2.28.- Voltaje a la salida del convertidor Boost. Figura 2.29.- Estado de carga de la batería (descarga). Figura 3.1.- Condiciones para una correcta orientación de campo. Figura 3.2.- Esquema del control vectorial directo. Figura 3.3.- Diagrama a bloques del controlador por campo orientado para el MI en el marco de referencia ‘dq’. Figura 3.4.- Implementación del sistema de propulsión en Matlab/Simulink. Figura 3.5.- Diagrama a bloques del sistema de propulsión implementado en 3 5 5 12 12 13 13 14 16 17 17 18 19 19 20 20 21 23 23 26 29 30 30 31 31 32 32 33 36 37 40 42 VII Matlab/Simulink mediante la función S. 43 Figura 3.6.- Pruebas de regulación y seguimiento con incremento positivo en el par y en la velocidad. 43 Figura 3.7.- Pruebas de regulación y seguimiento con decremento en el par y en la velocidad. 44 Figura 3.8.- Respuesta del sistema ante variaciones en el par de carga. 45 Figura 3.9.- Respuesta del sistema ante variaciones del par de carga. 45 Figura 3.10.- Sistema de propulsión completo en los distintos modos de funcionamiento.46 Figura 3.11.- Diagrama a bloques del primer escenario propuesto. 48 Figura 3.12.- Respuesta del primer escenario propuesto. 49 Figura 3.13.- Modo de frenado Regenerativo. 49 Figura 3.14.- Variación de la velocidad al aplicar el freno. 50 Figura 3.15.- Par de carga electromagnético de la máquina de inducción. 50 Figura 3.16.- Corriente a la salida del rectificador trifásico. 51 Figura 3.17.- Voltaje y corriente a la salida del convertidor Buck. 51 Figura 3.18.- Estado de carga de la batería. 52 Figura 3.19.-Esquema del sistema alimentándolo por medio de la batería. 52 Figura 3.20.- Respuesta del tercer escenario propuesto. 53 Figura 3.21.- Gráfica de par contra corriente magnetizante. 55 Figura 3.22.- Limitación del par debido al debilitamiento de campo. 56 Figura 3.23.- Curva para obtener máximo par. 57 Figura 3.24.- Diagrama a bloques del control vectorial optimizado. 58 Figura 3.25.- Variación de la velocidad para verificar el comportamiento del par. 59 Figura 3.26(a).- Respuesta del par optimizado. 59 Figura 3.26(b).- Respuesta del par optimizado. 60 Figura 4.1.- Vehículo híbrido armado en el simulador VTB. 63 Figura 4.2.- Diagrama esquemático del sistema de propulsión en VTB. 64 Figura 4.3.- Prueba de seguimiento en VTB. 65 Figura 4.4.- Prueba de seguimiento en Matlab/Simulink. 65 Figura 4.5.- Prueba de regulación en VTB. 66 Figura 4.6.- Prueba de regulación en Matlab/simulink. 66 Figura 4.7.- Comportamiento del escenario 1 en VTB. 67 Figura 4.8.- Comportamiento del escenario 1 en Matlab/Simulink. 67 Figura A1.- Diagrama del convertidor buck. 75 Figura A2.- Nombrando a la función S en Simulink. 80 Figura A3.- Forma final de la función S en simulink archivo back.mdl 80 Figura A4.- Corriente y Voltaje en la resistencia de carga del convertidor. 81 CAPÍTULO 1. INTRODUCCIÓN. Continuamente se están desarrollando nuevas tecnologías para hacer vehículos eléctricos que cumplan con la expectativa de los usuarios en cuanto a tiempo de duración de la batería y confiabilidad. Estas tecnologías se basan en el almacenamiento de la electricidad (vehículos puramente eléctricos) o en la generación de la misma a bordo del vehículo (vehículos híbridos). Actualmente los vehículos híbridos (HEVs) han aventajado a los puramente eléctricos (EVs) a pesar de no lograr “cero emisiones”. Esta superioridad se debe a la escasa energía específica que se obtiene de las baterías y la limitación de los EVs en cuanto a velocidad y autonomía. Los vehículos híbridos son la mejor opción en cuanto a ahorro de energía, en especial en las grandes ciudades, por sus bajas emisiones contaminantes y su elevada economía de combustible. Por lo que este trabajo está enfocado en los vehículos híbridos eléctricos. Los HEV (hybrid electric vehicle) son automóviles provistos de un motor de combustión interna (MCI) y un motor eléctrico. El motor eléctrico se usa en los momentos que el vehículo consume más combustible como en el arranque, de esta manera el vehículo híbrido no produce tantas emisiones contaminantes como un vehículo convencional. Al tener los HEVs baterías se busca tener un almacenamiento de energía en el frenado. La energía acumulada en las baterías se utilizará para alimentar el vehículo logrando una reducción en el consumo de combustible fósil. La introducción del transporte eléctrico está íntimamente relacionada con una serie de desarrollos, especialmente en el área de las baterías y de la electrónica de potencia. Los signos son positivos y se pueden esperar resultados aceptables en un plazo relativamente corto. Además, son necesarias medidas políticas para permitir y estimular la introducción de este tipo de vehículos híbridos en el país. 1 CAPÍTULO 1 INTRODUCCIÓN. 1.1 ESTADO DEL ARTE. La aplicación de accionadores eléctricos para su uso en el sistema de propulsión de vehículos comenzó a tomar fuerza a principios de los años 70´s y ha tenido un importante desarrollo desde entonces. En un principio, la máquina preferida para funcionar como “prime mover” del sistema propulsor, fue la máquina de DC. Sin embargo, a partir de los años 80, la disponibilidad de mejores y modernos semiconductores de potencia hizo que gradualmente se pasara a las máquinas de AC, tales como: el motor de inducción, el motor síncrono y el motor de reluctancia variable [Jahns, 2001]. Por otro lado, los avances en la tecnología de sistemas de propulsión han renovado el interés en los vehículos híbridos, sobre todo en el tema de propulsión eléctrica basada en energías alternas; de esta manera se busca reducir las emisiones contaminantes que emanan del vehículo [Bose, 85]. Actualmente se llevan a cabo numerosas investigaciones tendientes al mejoramiento y desarrollo de nuevos y más eficientes sistemas de propulsión para vehículos. El sistema de propulsión eléctrica es una de las partes fundamentales del diseño de un HEV y requiere conocimientos multidisciplinarios en: electrónica de potencia, motores, topologías de convertidores de potencia, dispositivos interruptores de potencia, microprocesadores, DSPs y finalmente, estrategias de control PWM (Modulación por Ancho de Pulso). El mejoramiento de un sistema de propulsión eléctrica debe lograrse optimizando dos aspectos: el topológico y el de control. En el aspecto topológico es importante reducir el número de dispositivos con el fin de disminuir costos en el vehículo. En el aspecto de control, los algoritmos deben ser diseñados e implementados para mejorar las características dinámicas y estáticas deseadas para la velocidad y el par. Otra mejora deseable tanto en lo que respecta al costo como a la confiabilidad, es la introducción de un control vectorial. Este control es uno de los más utilizados para el control de motores en la industria y se ha probado con éxito en los sistemas de propulsión de vehículos [Chan, 02]. Los principales requerimientos del accionador del motor se resumen a continuación: 1. Alta potencia instantánea y alta densidad de potencia. 2. Mayor par en bajas velocidades al inicio y en el ascenso de una pendiente, así como también una alta potencia en el arranque. 3. Un amplio intervalo de velocidad incluyendo una región de par y potencia constante. 4. Rápida respuesta de par. 5. Alta eficiencia en intervalos altos de velocidades y par. 6. Alta confiabilidad y robustez. 7. Alta eficiencia en el frenado regenerativo. 8. Costo razonable. La elección de un sistema de propulsión de un HEV depende principalmente de tres factores que son: CAPÍTULO 1. SISTEMA DE PROPULSIÓN DE UN HEV. 1. En el diseño del accionador donde se analizan los métodos de control y se utiliza el que satisfaga los requisitos dinámicos que sean necesarios; 2. Las restricciones del vehículo se refieren a la capacidad del vehículo (carga o transporte), velocidad, peso, etc.; 3. Las fuentes de energía, es necesario analizar la que se utilizará como fuente principal, pueden ser celdas de combustible o un motor de combustión interna y las fuentes secundarias que pueden ser baterías o supercapacitores. Los sistemas de propulsión eléctrica para vehículos terrestres generalmente caen en el intervalo de potencias entre 10 y 100 kW, dependiendo de la configuración. Hasta el momento no existe un consenso internacional sobre cuál es la máquina idónea para un sistema de tracción en un vehículo, por ejemplo la MI (máquina de inducción) es preferida en América y Europa, mientras los investigadores japoneses prefieren la MSE (máquina síncrona sin escobillas) [Chan, 02]. En lo que respecta al inversor el más utilizado, tanto si se trata de una máquina de inducción o una síncrona, es la topología de puente de seis conmutadores. Este convertidor es bidireccional para permitir el flujo de potencia desde la máquina hacia la fuente de energía (baterías) durante el frenado regenerativo. En general, las especificaciones que se requieren del motor de tracción son: alta densidad de potencia, masa y volumen pequeño, gran par, alta eficiencia, facilidad de control, hardware y software sencillos y bajo mantenimiento. En cuanto a la tecnología de los dispositivos, el semiconductor más usado en aplicaciones de propulsión eléctrica es el IGBT. Los valores nominales suelen ser 600 V, 400 – 600 A. Debido a las condiciones ambientales desfavorables asociadas a la operación de un vehículo, estos IGBTs suelen cumplir con especificaciones muy exigentes: > 500,000 ciclos térmicos con T de 40°C y 1000 ciclos térmicos extremos desde -40°C hasta +125°C. En el caso de los HEVs, el tamaño del accionador eléctrico está minimizado debido a lo que se denomina “hibridización débil”: la máquina eléctrica contribuye con un par y una potencia significativos, durante los eventos de mayor carga como son aceleración y desaceleración. Una de las partes más importantes en un HEV es el control supervisor el cual busca satisfacer un gran número de objetivos dentro de un HEV, se puede nombrar cuatro objetivos principales que son [Chan, 02]: 1. 2. 3. 4. Lograr economizar al máximo el combustible. Minimizar las emisiones contaminantes. Minimizar los costos del sistema. Un buen desempeño en el manejo de los accionadores. Como último dato, en cuanto a estado de arte de los vehículos híbridos cabe mencionar que están siendo utilizados en muchas ciudades y actualmente han entrando al comercio mexicano algunos vehículos como: la camioneta Eco Sport de Ford, el Honda Insight y el Toyota Prius ([Zubizarreta, 99]). 3 CAPÍTULO 1 INTRODUCCIÓN. 1.2 JUSTIFICACIÓN. Debido a la contaminación en las grandes ciudades causada por las emisiones contaminantes que emanan de un vehículo, es necesario el desarrollo de vehículos que no contamine tanto. Por lo que se crearon vehículos híbridos que contienen dos sistemas de energía a bordo del vehículo, un motor de combustión interna y un paquete de baterías. Los HEV al funcionar con la fuente secundaría (baterías), reducen las emisiones contaminantes y utilizan menos el combustible focil. Por estas ventajas es necesario investigar el comportamiento de estos vehículos y las partes que lo conforman. En este trabajo se busca analizar el sistema de propulsión creando una base en la investigación sobre el tema de vehículos. Los resultados que se obtengan ayudaran en la comprensión de recuperación de energía, optimización del sistema de propulsión y simulación del control vectorial. Con los resultados obtenidos se logrará reforzar la línea de investigación de generación de energías renovables iniciada en el Cenidet, con el fin de tener un soporte teórico con esta tesis referente al control y recuperación de energía en el frenado regenerativo. Este trabajo aborda el estudio del sistema de propulsión del vehículo, el modelado de las partes que lo componen, análisis e implementación del control vectorial y una optimización para tener un mayor par al arranque del vehículo. Se elaboran programas de simulación con herramientas que han sido poco utilizadas en Cenidet como es la función S de Matlab/Simulink. Con esta herramienta se simulan todas las partes que componen el modelo del sistema de propulsión y para verificar el comportamiento se utiliza un software nuevo llamado Virtual Test Bed (VTB) utilizado en la construcción de prototipos reales. 1.3 ALCANCE. El alcance de este trabajo consiste en: 1) El modelado y simulación de las partes que componen el sistema de propulsión eléctrico de un vehículo híbrido serie. 2) Análisis y optimización del control vectorial directo aplicado al motor de inducción, como parte del sistema de propulsión del vehículo híbrido. 3) Desarrollo de programas computacionales para analizar el comportamiento del sistema de propulsión en distintos escenarios de manejo. 4) Verificación de la recuperación de energía ante el frenado regenerativo. CAPÍTULO 1. SISTEMA DE PROPULSIÓN DE UN HEV. 5) Comparación de los resultados obtenidos en las simulaciones de Matlab/Simulink con Virtual Test Bed. 1.4 ORGANIZACIÓN DEL TRABAJO DE TESIS. En el trabajo de tesis se analiza el sistema de propulsión de un vehículo híbrido serie, y se presentan resultados obtenidos mediante paquetes computacionales para evaluar su desempeño en diferentes condiciones de operación. A continuación se muestra el contenido de la tesis por capítulos, y se explica brevemente el contenido de cada uno de ellos. En el capítulo 2 se presenta el análisis y modelado de las partes que componen el sistema de propulsión, se analiza el motor de inducción, el inversor trifásico, la unión motor inversor, análisis y diseño de los convertidores Buck y Boost y el cargador de baterías. En este capítulo 2 se presentan algunas simulaciones con la batería en los casos de carga y descarga. En el capítulo 3 se presenta el control vectorial aplicado a la máquina de inducción, se muestra el esquema que se utilizó para aplicar el control y también se realizan pruebas de regulación y seguimiento. Se muestran los escenarios donde se analiza el comportamiento del vehículo, se verifica la recuperación de energía ante el frenado regenerativo (escenario número 2) y, por último,se propone una optimización del control vectorial, la cual busca proporciona el máximo par al arranque y en momentos de inercia muy elevados del vehículo (como puede ser un rebase). En el capítulo 4, se presenta el sistema de propulsión implementado en VTB (Virtual Test Bed), este modelo se utiliza para cotejar los resultados obtenidos con el sistema realizado en Maltlab/Simulink. En el capítulo 5, se presentan las conclusiones, aportaciones y trabajos futuros propuestos. También, se presenta un anexo para aprender a utilizar la función S de Matlab/Simulink. Este anexo se puede ver como un pequeño curso para poder programar y entender las ventajas que proporciona el utilizar esta herramienta de programación. Al final de la Tesis se incluye una extensa lista de referencias bibliográficas. 5 CAPÍTULO 2 MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN DEL VEHÍCULO HÍBRIDO ELÉCTRICO SERIE. 2.1 INTRODUCCIÓN. Un vehículo híbrido es aquel que combina dos o más sistemas de generación basados en fuentes de energía diferentes. Uno de los sistemas es el motor de combustión interna de alta eficiencia, combinado con volantes de inercia, supercapacitores o baterías. El otro sistema es la batería eléctrica y los motores eléctricos de tracción instalados en las ruedas. En este capítulo se analizarán las partes que componen el sistema de propulsión eléctrica del vehículo, cada parte será modelada y simulada mediante la función S de Matlab/Simulink y se presentarán resultados. 2.2 MODELO DE UN SISTEMA DE PROPULSIÓN TIPO SERIE. Para entrar a este punto es necesario describir qué es un vehículo híbrido serie y cómo están formados. En los vehículos híbridos tipo serie el motor de combustión interna proporciona potencia a un generador que, según el modo de operación, puede cargar las baterías o suministrar la potencia directamente al sistema de propulsión y, por lo tanto, reducir la demanda a la batería (figura 2.1). 6 CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. En el HEV el sistema formado por el motor de combustión interna y el generador se usa normalmente como una unidad auxiliar de energía, (APU, Auxiliary Power Unit). Cuando se necesita mayor potencia por parte del motor eléctrico (en un rebase), se activa la APU para satisfacer el pico de corriente que se demanda, de esta forma, el pico de corriente no lo entrega el paquete de baterías. Dependiendo del intervalo de velocidades que se desee disponer, se dimensiona la potencia de la APU. En un principio se propusieron soluciones para un intervalo menor de velocidades, pero la tendencia hoy en día es la de usar un intervalo de mayor de velocidad. Esto implica sistemas de generación de mucha mayor potencia. Cuando un viaje es muy largo, el motor de combustión interna se activa, proporcionando la energía requerida a las baterías y así seguir cumpliendo con la demanda de energía del HEV. A altas velocidades, sólo parte de la energía proviene de las baterías, siendo éstas las que suministran la potencia necesaria para aceleraciones y rebases. A velocidad de crucero, la potencia generada en exceso se utiliza para recargar las baterías. Este sistema resulta eficiente si el 80% de los kilómetros recorridos son alimentados por la energía de las baterías que se han recargado mediante frenado regenerativo. En caso contrario es difícil la justificación de este tipo de propulsión híbrida ya que la energía eléctrica de las baterías proviene en realidad de la combustión del MCI [Chan, 02]. Las partes del sistema de propulsión del vehículo tipo serie se muestran en la figura 2.1. Figura 2.1.- Partes del sistema de propulsión de un vehículo híbrido eléctrico serie. Generador: Un generador síncrono de corriente alterna que produce la electricidad para cargar las baterías y, cuando se requiera, alimentar al motor eléctrico. Motor eléctrico: Un motor asíncrono de corriente alterna, compacto, de bajo peso y alta eficiencia. Inversor: El inversor cambia la corriente continua de la batería o del generador en corriente alterna para mover el motor eléctrico y cambia la corriente alterna del generador en corriente continua para cargar la batería. 7 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. Control: Debido a las variaciones en las configuraciones de los HEV, se utilizan diferentes estrategias de control, las cuales son necesarias para regular el flujo de energía a los diferentes componentes. Cargador de Baterías: Se encarga de acoplar el voltaje de la batería en la carga o descarga con el bus de DC. En este trabajo la carga de las baterías se realiza mediante un convertidor Buck y un convertidor Boost en la descarga. Baterías: Se utilizan las baterías diseñadas para vehículos eléctricos, requiriendo una alta densidad de energía, peso liviano y una larga vida útil. Una vez presentados los elementos que componen el sistema de propulsión serie, es importante mencionar que las partes que se encuentran dentro de un cuadro punteado en la figura 2.1 no se modelan en este trabajo; todo el conjunto se toma como una fuente de corriente directa, que subministrará la energía necesaria al vehículo. El orden en que se presentará el modelado de los componentes será: 1. Motor de inducción trifásico jaula de ardilla (MIJA), 2. Inversor trifásico, 3. Cargador de baterías, 4. Batería. 2.3 MOTOR DE INDUCCIÓN JAULA DE ARDILLA. Para la obtención de las ecuaciones del MIJA se toman las siguientes consideraciones: es una máquina de inducción trifásica, simétrica, de cuatro polos y conectada en estrella. Los devanados del estator son idénticos, están distribuidos en forma senoidal, desplazados 120° eléctricos entre sí, con un número equivalente de vueltas Ns, y resistencia Rs. Para este caso, se representan los devanados equivalentes a los del estator, con Nr vueltas y resistencia Rr [Krause, 95]. Se parte de la suposición de que la máquina de inducción es un circuito magnético lineal. Es decir, la permeabilidad del núcleo se considera infinita y, además, la saturación, las pérdidas en el hierro y el efecto de las ranuras son despreciadas. El esquema fundamental del motor de inducción que se está considerando se muestra en la figura 2.2. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. eje br as’ eje bs eje ar ar’ cs bs br ωr θr cr br’ eje as cr’ ar bs’ cs’ eje cs as eje cr Figura 2.2.- Diagrama esquemático del motor de inducción trifásico. En este esquema se observan los tres devanados de estator representados por los circuitos as – as’, bs – bs’ y cs – cs’. Los devanados de rotor se presentan por ar – ar’, br – br’ y cr – cr’. Cada uno de estos devanados produce un flujo magnético. Cada flujo magnético se representa por los ejes magnéticos as, bs, cs, ar, br y cr. El ángulo entre los ejes magnéticos de estator y rotor de la misma fase (por ejemplo as y ar) representa la posición angular del rotor r. La velocidad a la cual se mueve el rotor se representa por ω. Para obtener las ecuaciones del motor de inducción jaula de ardilla se hace uso de su diagrama eléctrico (figura 2.3). i cr i bs i cs + i br v cs Ns Rs Rs + v bs + v cr Rr + Nr Nr Ns Nr Ns i as Rs v as + Rr v br Rr + v ar i ar Figura 2.3.- Diagrama eléctrico de los devanados de estator y rotor del motor de inducción trifásico. La inclinación intencional del circuito eléctrico mostrado en la parte derecha de la figura 2.3, es con la finalidad de realzar el desfasamiento existente entre el estator y el rotor de la máquina de inducción. 2.3.1 MODELO MATEMÁTICO DEL MIJA. Utilizando la ley de voltajes de Kirchhoff en cada una de las mallas de la figura 2.3, se pueden obtener las ecuaciones del estator y del rotor (2.1) y (2.2) 9 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. d λas dt dλ Vbs = ibs Rs + bs dt d λcs Vcs = ics Rs + dt (2.1) d λar dt dλ Vbr = ibr Rr + br dt dλ Var = icr Rr + cr dt (2.2) Vas = ias Rs + Var = iar Rr + Las ecuaciones (2.1) y (2.2) se pueden escribir en forma matricial como (2.3) y (2.4) respectivamente Donde: abc s r p v R i Vabcs = Rs ⋅ iabcs + pλabcs (2.3) Vabcr = Rr ⋅ iabcr + pλabcr (2.4) representa las tres fases del motor de inducción jaula de ardilla, representa las variables y parámetros asociados al estator, representa las variables y parámetros asociados al rotor, representa el operador de derivación (d/dt), representa el voltaje de alimentación, representa la resistencia del devanado, representa la corriente de devanado, representa los enlaces de flujo. Las ecuaciones (2.3) y (2.4) se pueden rescribir en una sola mediante: v = R ⋅ i + dλ donde i = [i as i bs i cs i ar i br i cr ] es el vector de corrientes de estator y rotor, T Rs 0 0 R= 0 0 0 0 Rs 0 0 0 0 0 0 Rs 0 0 0 0 0 0 Rr 0 0 0 0 0 0 Rr 0 v = [vas vbs vcs var vbr 0 0 0 es la matriz de resistencias de estator y rotor, 0 0 Rr vcr ] es el vector de voltajes de estator y rotor. T Los enlaces de flujo λ para un sistema magnético lineal son: (2.5) CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. λ =Li (2.6) o de forma desarrollada: Ls λabcs = λabcs ( Lsr )T Lsr iabcs Lr iabcr (2.7) Las inductancias de los devanados expresadas en henrios (H) son: Lls + Lms −0.5 Lms −0.5 Lms Ls = −0.5 Lms Lls + Lms −0.5 Lms , −0.5 Lms −0.5 Lms Lls + Lms Llr + Lmr −0.5 Lmr −0.5 Lmr Lr = −0.5 Lmr Llr + Lmr −0.5 Lmr , −0.5 Lmr −0.5 Lmr Llr + Lmr cos θ r cos θ r + Lsr = [ Lrs ] = Lsr ⋅ cos θ r − 2π 3 cos θ r cos θ r + 2π 3 cos θ r − T 2π 3 2π 3 (2.8) (2.9) cos θ r − 2π 3 cos θ r + 2π 3 , (2.10) cos θ r donde: Lls Llr Lms Lmr Lsr Lls+Lms Llr+Lmr θr es la inductancia de dispersión de los devanados de estator, es la inductancia de dispersión de los devanados de rotor, es la inductancia de magnetización de los devanados de estator, es la inductancia de magnetización de los devanados de rotor, es la inductancia mutua entre los devanados de estator y rotor, es la inductancia propia de los devanados de estator, es la inductancia propia de los devanados de rotor, es la posición angular del rotor. Estas inductancias se definen de la siguiente manera: Lms = N s2 πµ0 rl ⋅ 2 g (2.11) Lmr = N r2 πµ0 rl ⋅ 2 g (2.12) N s N r N s2 πµ0 rl ⋅ ⋅ ⋅ 2 2 2 g (2.13) Lms = donde: Ns Nr es el número de vueltas del devanado de estator, es el número de vueltas del devanado de rotor, 11 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. µ0 r l g es la permeabilidad en el entrehierro, es el radio a la mitad del entrehierro, es la longitud axial del entrehierro, es la longitud uniforme del entrehierro. De la ecuación (2.6) se tiene que la derivada del enlace de flujo es: d λ dL di = i+L (2.14) dt dt dt Desarrollando el primer término del lado derecho de la ecuación (2.14) mediante la regla de la cadena se tiene que: dL dL dθ r = ⋅ (2.15) dt dθ r dt dθ r dt donde: es la velocidad angular del rotor, que está definida como: np dθ r = n pωr dt es la posición angular del rotor, es el número de pares de polos de los devanados de estator, ωr es la velocidad angular del rotor en rad/s. r (2.16) La ecuación del subsistema mecánico en términos del par electromagnético τ e y la velocidad del rotor ωr es ( [Krause, 95]): τe = j donde: j np r TL 2 dwr + TL n p dt (2.17) es la inercia del rotor y de la carga en kg m2, es el número de polos, es la velocidad angular del rotor en rad/s, es el par de carga en N.m. Con esto se tiene el modelo del motor trifásico, sin embargo, simular este modelo es complicado debido a la dependencia de la posición angular, ya que los coeficientes de las ecuaciones diferenciales son variantes en el tiempo. Debido a la dependencia de la posición angular es necesario aplicar una transformación, la cual eliminará el acoplo de las inductancias, y además, simplificará el modelo de la máquina de inducción, facilitando la simulación y permitiendo que este nuevo modelo pueda aprovecharse para la aplicación del control. Un cambio de variables que logra la transformación de las variables trifásicas de los elementos de un circuito estacionario al marco de referencia arbitrario de dos fases se puede expresar como en [Krause, 95]: f dq 0 = Κ f abc (2.18) CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. donde f : representa a cualquier sistema trifásico de variables eléctricas (voltajes, corrientes, pares, enlaces de flujo, etc.) desfasadas 120º eléctricos entre sí, abc : sistema de variables originales, dq0 : sistema de variables resultantes. La transformación inversa está definida de la forma: f abc = Κ −1 f dq 0 (2.19) Las matrices de transformación K y K-1 están definidas de la siguiente manera: Κ= cos ζ cos ζ − 2π 3 cos ζ + 2π 3 2 sen ζ 3 1 2 sen ζ − 2π 3 sen ζ + 2π 3 1 2 cos ζ [ Κ ] −1 = (2.20) 1 2 sen ζ 1 cos ζ − 2π 3 sen ζ − 2π 3 1 cos ζ + 2π 3 sen ζ + 2π 3 1 (2.21) Donde: ζ = θ + θc , θ= θc = t 0 ω (ξ ) dξ + θ (0) , t 0 ω c (ξ ) dξ + θ c (0) . Las variables en las integrales anteriores están definidas como: θc : desplazamiento angular del conjunto de variables originales, ωc : velocidad angular del conjunto de variables originales. − Si las variables originales pertenecen a un circuito eléctrico estacionario, ωc = 0. − Si pertenecen al circuito eléctrico del rotor, ωc = ωr. θ : desplazamiento angular de las variables nuevas del marco de referencia arbitrario, ω : velocidad angular del Marco de Referencia (MR) arbitrario, 13 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. ξ : variable auxiliar de integración. La transformación general se puede utilizar con circuitos eléctricos específicos, considerando los valores apropiados de velocidad angular. En el análisis anterior, se ha hecho referencia a un MR arbitrario, donde la velocidad angular ω puede tener cualquier valor; sin embargo, existen otros marcos de referencia comúnmente utilizados por su conveniencia para aplicarlos a ciertas configuraciones de circuitos reales. A continuación se muestra una tabla que presenta los MR más comunes [Krause, 95]. VELOCIDAD DEL MR ω (arbitraria) 0 ωr ωe Tabla 2.1.- Marcos de referencias utilizados en motores. INTERPRETACIÓN VARIABLES Variables de circuitos referidos al MR arbitrario Variables de circuitos referidos al MR estacionario Variables de circuitos referidos al MR fijo al rotor Variables de circuitos referidos al MR giratorio síncrono TRANSFORMACIÓN fdq0 ó fd, fq, f0 fdq0s ó fds, fqs, f0 fdq0r ó fdr, fqr, f0 fdq0e ó fde, fqe, f0 Κ Κs Κr Κe Una vez definida la transformación, se aplicará al motor de inducción. Este trabajo está ampliamente desarrollado en [Méndez, 01], por lo que se referencia su trabajo y sólo se presentan las ecuaciones del motor de inducción en un marco de referencia fijo al rotor. Está estructura se escoge para facilitar la aplicación del control vectorial que se analizará más adelante. Modelo de la máquina de inducción en un marco de referencia fijo al rotor. dω τ = µψ d iq − L dt j dψ d = −αψ d + α Mid dt iq 2 did 1 = iq n pω + α M + αβψ d − γ id + u dt ψd σ Ls d diq dt = −id n pω − α M id iq ψd 1 − n pωβψ d − γ iq + u σ Ls q (2.22) iq dp = n pω + α M dt ψd dθ =ω dt Las variables auxiliares , , , definidas como: y que se presentan en la ecuación (2.22) están CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Rr Lr (2.23) M σ Ls Lr (2.24) α= β= L2r Rs + M 2 Rr γ= σ Ls L2r µ= np M jLr M2 σ =1 Ls Lr (2.25) (2.26) (2.27) donde: τL j M np id , iq Ls Lr Rs Rr ψd ρ θ Par de carga, (N⋅m). Coeficiente inercial del rotor y de la carga, (kg⋅m2). Inductancia mutua entre los devanados de estator y rotor. Número de pares de polos en el MIJA. Corrientes en el MR dq (2φ) del rotor. Inductancia propia de los devanados de estator. Inductancia propia de los devanados de rotor. Resistencia de los devanados de estator. Resistencia de los devanados de rotor. Enlace de flujo en el rotor. Ángulo del flujo de rotor. Desplazamiento angular. 2.3.2 IMPLEMENTACIÓN DEL MODELO DEL MIJA EN MATLAB/SIMULINK. La ecuación 2.22 mostrada anteriormente se utiliza para simular el comportamiento del motor con la ayuda de la función S de Matlab/Simulink [Simulink, 02]. El esquema se muestra en la figura 2.4 y el código del programa se lista en el anexo 2. 15 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. Función S del motor de Inducción function [sys,x0,str,ts] = mi2dq_s(t,x,u,flag) M = (26.13/(2*pi*60)); Ls= 0.754/(2*pi*60)+(26.13/(2*pi*60)); Lr= 0.754/(2*pi*60)+(26.13/(2*pi*60)); Rs= 0.435; Rr= 0.816; J = 0.089; P = 4; Np= P/2; TL = 0; Figura 2.4 Implementación del MIJA mediante la función S de Matlab/Simulink. Una vez implementado el motor, los resultados que se obtuvieron fueron validados con las simulaciones de [Méndez, 01], [Krause, 95] y [Ong, 98]. A continuación se presentan algunas de las gráficas que describen el comportamiento del MIJA en lazo abierto, los resultados obtenidos en la simulación por medio de la función S, se muestran en las figuras 2.5 a 2.7. Figura 2.5. Corrientes bifásicas en el MR fijo al rotor, a) Corrientes de los devanados de rotor, b) corrientes de los devanados de estator. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 2.6. a) Velocidad del rotor, b) Par electromagnético generado. Figura 2.7. a) Voltajes de alimentación bifásicos, b) Gráficas de Par Vs. Velocidad. En las figuras anteriores se muestran las curvas de comportamiento típicas de un motor de inducción. Se puede observar que la velocidad se estabiliza al momento que el par lo hace, esto ocurre cuando el par llega a su valor nominal (figura 2.6). Estas gráficas tienen un comportamiento muy similar a las obtenidas por [Ong, 98]. Con esto se valida el modelo del motor de inducción y su implementación en función S. 2.4 INVERSOR TRIFÁSICO. Los convertidores de CD a CA se conocen como inversores. La función de un inversor es cambiar un voltaje de entrada de CD a un voltaje simétrico de salida en CA, con la magnitud y frecuencia desadas. Tanto el voltaje de salida como la frecuencia pueden ser fijos o variables ([Rashid, 93]). Los inversores trifásicos se utilizan normalmente en aplicaciones de alta potencia, en está tesis se utiliza para accionamiento de un motor de inducción. El inversor será controlado 17 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. con modulación senoidal de ancho de pulso (SPWM por sus siglas en inglés), ya que este tipo de modulación es el más aplicado en la industria; tres inversores monofásicos pueden conectarse en paralelo para formar la configuración de un inversor trifásico. Las señales de compuerta de los inversores monofásicos deben adelantarse o retrasarse 120° uno con respecto al otro, a fin de obtener voltajes trifásicos balanceados (fundamentales). La topología mostrada en la figura 2.8 ha sido utilizada por algunos investigadores para la unión motor – inversor en los vehículos híbridos eléctricos como en el caso de [Miller, 03]. Se puede obtener una salida trifásica a partir de una configuración de seis transistores y seis diodos, tal como la que se muestra en la figura 2.8. Figura 2.8.- Inversor trifásico. La modulación senoidal por ancho de pulso se describe a continuación. 2.4.2 MODULACIÓN SENOIDAL DEL ANCHO DE PULSO. Un método de modulación popular aplicado en la industria es conocido como técnica SPWM. Este método se describe en [Sen, 89]. La generación de las señales de excitación con modulación senoidal de ancho de pulso aparece en la figura 2.10. Se muestran tres ondas senoidales de referencia, cada una de ellas desplazada 120° eléctricos. Una onda portadora se compara con la señal de referencia correspondiente a una fase, a fin de generar las señales de excitación. Para generar el voltaje de salida, como aparece en la figura 2.10, se tiene la condición de que dos dispositivos de conmutación de una misma rama no pueden conducir simultáneamente. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 2.10.- Modulación senoidal de ancho de pulso para un inversor trifásico. a) Voltaje de referencia y voltaje de la portadora, b),c),d) Voltajes de disparo de compuertas, e) Voltaje de línea. A continuación se presenta la simulación del inversor trifásico con modulación SPWM. 2.4.3 IMPLEMENTACIÓN DEL INVERSOR EN MATLAB/SIMULINK. En la figura 2.11 se muestra la implementación del modelo del inversor en Simulink, también en el recuadro superior se observa parte del archivo .m implementado mediante la función S, el programa completo se muestra en el anexo 2. Función S del Inversor Trifásico function [sys,x0,str,ts] = inver_spwm(t,x,u,flag) Vs = 200; frecp = 5000; switch flag, case 0, [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,frec p,Vs); case 1, sys=mdlDerivatives(t,x,u,frecp,Vs); case 3, sys=mdlOutputs(t,x,u,frecp,Vs); Figura 2.11.- Implementación del Inversor trifásico en Matlab/Simulink mediante la función S. 19 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. La tabla 2.2, muestra el voltaje de alimentación del inversor así como frecuencia y carga. Tabla 2.2.- Parámetros utilizados en la simulación del Inversor Trifásico. INVERSOR TRIFASICO (SPWM). Voltaje de alimentación 5 volts Frecuencia de las señal portadora 580 hz Frecuencia de la señal senoidal 60 Hz Indice de modulación % 85 % Los resultados obtenidos se presentan en las siguientes gráficas. Figura 2.12. a) Portadoras triangular y señal de referencia senoidal utilizadas para producir los pulsos de disparo, b) Voltajes y corrientes en cada fase del inversor trifásico con una carga RL aplicada. Se observa que la implementación del bloque funciona perfectamente, ya que se tienen voltajes desfasados 120 eléctricos entre si (figura 2.12b). Las gráficas obtenidas con está simulación tienen un comportamiento muy similar a las presentadas por [Sen, 89] en la sección de inversores. 2.5 UNIÓN DEL MOTOR E INVERSOR. Para acoplar los modelos, hay que tomar en cuenta que se está utilizando el modelo del motor de dos fases (dq), y éste es alimentado con una fuente trifásica; al voltaje de salida del inversor es necesario aplicarle la matriz de transformación para que los modelos sean compatibles. El modelo del inversor junto con su control SPWM ha sido implementado mediante Matlab/Simulink en función S, al igual que el motor de inducción; de esta manera, se cuenta con dos bloques que son fácilmente acoplados. En figura 2.13 se observan las etapas que conforman la unión de los modelos. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 2.13.- Diagrama a bloques del motor – inversor. En la tabla 2.3, se presentan los valores de los parámetros con los que se realiza la simulación de este modelo. Tabla 2.3. Parámetros para la simulación del motor – inversor. Parámetros Valor MI de 3 hp. Resistencia de Estator Rs 0.435 ohms Resistencia de Rotor Rr 0.816 ohms Inductancia de Estator XLs 0.754 ohms Inductancia de Rotor XLr 0.754 ohms Inductancia Mutua XM 26.13 ohms Inercia del Rotor J 0.089 kg.m2 No. De pares de polos np 4 Par de Carga TL 0 INVERSOR TRIFASICO (SPWM). Voltaje de alimentación 220 volts Frecuencia de las señal portadora 5 Khz Frecuencia de la señal senoidal 60 Hz Indice de modulación % 85 % La figura 2.14 muestra la implementación del modelo del motor e inversor en Matlab/Simulink mediante la función S. El código de estos modelos se muestra en el anexo 2. Unión motor – inversor en función S function [sys,x0,str,ts] = MI3_CLC_INV(t,x,u,flag) J TL cfv = 0; P Np Lsm Lrm Lls Llr Lsr Rs Rr = 0.089; = 25; = 4; = P/2; = (26.13/(2*pi*60))*(2/3); = (26.13/(2*pi*60))*(2/3); = 0.754/(2*pi*60); = 0.754/(2*pi*60); = Lsm; = 0.435; = 0.816; Vs = 400; frecp = 2320/2; Figura 2.14.- Implementación en Matlab/Simulink mediante la función S del motor e inversor. 21 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. Se analizan los voltajes de fase, espectro en frecuencia del voltaje de salida en el modelo del inversor y, del motor de inducción se presentan graficas de par y velocidad. Los resultados obtenidos son los siguientes: Figura 2.15.- a) Voltajes de salida del inversor, b) Voltaje rms de cada línea. En la figura 2.15 a) se muestran los voltajes de fase a la salida del inversor, los voltajes estas desfasados 120 grados eléctricos entre si, estos voltajes son utilizados para alimentar el MIJA, por lo tanto es necesario verificar que la fundamental esté a 60 Hz y que no hay contenido armónico que afecte el desempeño del motor. Figura 2.16.- a) Espectro en frecuencia de voltaje en la fase A de salida del inversor, b) acercamiento a la fundamental. En la figura 2.16 a) se muestra el espectro en frecuencia de la fase A del voltaje de salida del inversor, con este análisis se observa que el contenido armónico se encuentra cerca de la frecuencia de la portadora y por tanto no afecta el desempeño del motor. En la figura 2.16 b) se observa que la frecuencia fundamental está a 60Hz y que no hay armónicos cerca de la frecuecia fundamental. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 2.17.- a) Par electromagnético generado, b) Velocidad del rotor. En la figura 2.17a se muestra la curva típica de par – velocidad de un motor de inducción, si se compara esta gráfica con la mostrada en la figura 2.6b, se advierte que tiene más ruido, esto es debido a la conmutación a alta frecuencia del inversor. La figura 2.17b, es la curva de la velocidad en el rotor, la velocidad se estabiliza en su valor nominal al momento que se estabiliza el par. Cuando se aplica un par negativo al MIJA, éste pasa de funcionar como motor a un modo generador (debido a las caracteristicas de construcción de la máquina de inducción), la corriente entregada en modo generador es rectificada al pasar por el inversor (los diodos en el inversor actuarán como un rectificador). La corriente rectificada se muestra en la figura 2.18b. Figura 2.18.- a) Respuesta de la máquina con un par negativo (modo generador), b) Corriente a través del rectificar de puente completo. Los resultados obtenidos de la unión motor – inversor son los esperados. El inversor entrega el voltaje necesario al motor de inducción y su correcto funcionamiento se observa en las curvas tipocas del motor obtenidas en esta sección. 23 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. 2.6 CARGADOR DE BATERÍAS. Con el fin de mantener el medio ambiente limpio, se están realizando investigaciones para disminuir la cantidad de emisiones contaminantes producidas por los vehículos de combustión interna. La mayoría de las emisiones de un vehículo se producen en el arranque, por lo tanto, se pretende utilizar una fuente de energía alterna que no produzca emisiones contaminantes [Khan, 99]. Los vehículos eléctricos no contaminan, pero uno de los principales problemas de estos vehículos es que las distancias que pueden cubrir, antes de que se termine la energía almacenada en las baterías, son limitadas y, por lo tanto, es necesario recargarlas. Debido al problema de los EV, una de las alternativas es utilizar vehículos que contengan los dos sistemas de propulsión a bordo: motor de combustión interna y baterías, de esta manera no se eliminan las emisiones, pero si se disminuyen considerablemente. El paquete de baterías está entre los componentes que tienen un efecto significativo en el desempeño de los vehículos eléctricos e híbridos. El término paquete de baterías se refiere a un componente que contiene un número de módulos de baterías individuales conectadas en conjunto. Un ejemplo utilizado en los vehículos es una conexión serie de 22 baterías de 12 voltios, lo cual resulta en un módulo de batería de 264 voltios. Los principales requerimientos del paquete de baterías de los vehículos eléctricos e híbridos son: alta densidad de potencia, alta densidad de energía, bajo costo, larga vida y alta eficiencia de carga. El desempeño de los módulos de baterías depende no solo del diseño de este, sino también de la manera en que son conectados y cargados. En este sentido, los cargadores de batería juegan un rol importante en la evolución de los vehículos eléctricos e híbridos [Khan, 99]. 2.6.1 UNIDAD DE PROCESAMIENTO DE ENERGÍA. La unidad de procesamiento de energía de un cargador de baterías consiste de un convertidor CA a CD y un circuito de control asociado a esto [Khan, 99]. Tradicionalmente, la sección de entrada de un convertidor CA a CD consistía de un rectificador de onda completa seguido por un capacitor. El circuito de control asociado con el convertidor CA a CD se usa para controlar la forma de onda de la corriente y, de esta manera, la calidad de la línea de corriente CA. El control también determina el desempeño dinámico de la unidad de procesamiento de energía. La unidad de procesamiento de energía se encarga de acoplar la corriente que entra a la batería, ya sea por el frenado regenerativo o por la fuente de CD que proviene del motor de combustión interna. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. 2.6.2 UNIDAD DE MANEJO DE LA BATERÍA. La unidad de manejo de batería controla el proceso de carga y consiste de un microprocesador y un sensor [Khan, 99]. La carga depende del EDC (Estado de Carga), voltajes y la temperatura del paquete de baterías. El microprocesador contiene el algoritmo de carga y el sensor entrega información acerca de las corrientes y voltajes, además de la temperatura del paquete de baterías. El microprocesador recibe información del sensor y manda la señal de control a la unidad de procesamiento de energía para recibir la corriente de carga requerida o bien para detener la carga. Las unidades de procesamiento de energía y de manejo de energía en conjunto, forman un cargador inteligente, el cual proporciona una eficiencia de carga aceptable, un desempeño óptimo e incrementa la vida de las baterías. 2.6.3 CARGADOR PARA LA INTERFASE DEL VEHÍCULO. El EDC de la batería se determina mediante la corriente del paquete durante la carga o descarga, la unidad de manejo de batería está localizada en el vehículo, de tal manera que éste puede medir la carga y descarga de corriente durante la propulsión y el frenado regenerativo. Una vez que se ha descrito cómo está formado el cargador de baterías; el cargador que se propone en esta tesis está formado por un convertidor Buck para acoplar la corriente producida del frenado regenerativo o de la fuente de CD, proveniente del motor de combustión interna al paquete de baterías. El cargador tiene un convertidor Boost, que acoplará el voltaje de la batería para poder alimentar el inversor trifásico que acciona el motor. El esquema completo del cargador se muestra en la figura 2.19. IN 1 IN 2 Convertidor Buck Paquete de Baterías Convertidor Boost OUT 1 Figura 2.19.- Diagrama a bloques del cargador de batería. Como se observa en la figura 2.19, por la entrada 1 (IN 1) el convertidor puede alimentarse mediante el motor de combustión interna, esto es, tomar la energía para cargar la batería directamente del bus de CD; por otro lado, la entrada 2, (IN 2) indica que se puede alimentar a través del frenado regenerativo. En el convertidor Buck se tiene un control en modo corriente, para verificar que ante variaciones de la fuente, siempre se tenga una corriente fija cargando la batería. Ya sea cargándola directamente del bus de CD o cuando se tiene un frenado regenerativo. En la salida, el convertidor Boost cuenta con un control en modo voltaje, de esta manera se acopla el voltaje 25 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. de las baterías al inversor trifásico, mientras el estado de carga del paquete de baterías lo permita. 2.6.4 DISEÑO DEL CONVERTIDOR BUCK. El convertidor Buck que se utilizará como parte del cargador de baterías se presenta en la figura 2.20. Como se puede ver, hay un lazo de control formado por un amplificador (A1) que proporciona la corriente de error y, un comparador (A2) con el cual se obtienen las señales de control para los interruptores. El lazo de control del convertidor Buck es en modo corriente para regular la corriente de carga de la batería. Figura 2.20.- Diagrama a bloques del convertidor Buck y el lazo de control en modo corriente. Las ecuaciones que representan el convertidor Buck son [Ang, 95]: • vcbk = − • iLbk Donde: vc iL Cbk Lbk Rbk Act vc i + L Rbk Cbk Cbk v Vs * Act =− c + Lbk Lbk (2.28) Voltaje del capacitor, Corriente en el inductor, valor del capacitor del filtro, valor del inductor del filtro, resistencia de carga. Estado del sw, puede ser 1 o 0. Una vez obtenido el modelo del convertidor, se explica como funciona el lazo de control presentado en la figura 2.20. La ganancia del control es la siguiente: CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Ico(t ) =a ( I (t ) − Iref ) (2.29) La ecuación 2.23 está relacionada con la figura 2.20, observando esta figura se explica fácilmente el comportamiento del lazo de control. Ico es la corriente de error amplificada (a la salida del amplificador A1); a es la constante de ganancia del amplificador A1; I(t) es la medición de la corriente en la carga (la cual se desea controlar) e Iref es la corriente de referencia. La señal Ico, se conecta en una de las terminales del comparador A2, el cual en su otra terminal tiene una señal triangular, al compararse la señal Ico y la señal triangular se obtiene la señal de control Act (salida del comparador A2), está señal de control envía un nivel bajo (0) o un nivel alto (1) a los interruptores S y S’ para su conmutación [Fossas, 96]. Es necesario diseñar el convertidor Buck para reducir el voltaje de alimentación de 400 Vdc que entrega el motor de combustión interna a un voltaje de salida de 100 Vdc, con una corriente de 20 A, que es el voltaje utilizado para cargar el paquete de baterías. La corriente requerida para la carga de las baterías es supuesta y, en el diseño, se supone que el convertidor entrege una corriente de carga de 20 A, ya que es la corriente de carga que se utilizara para cargar el paquete de baterías usado en el vehículo. Diseño del convertidor Buck ([Ang, 95]). La implementación del convertidor está pensada para un IGBT con capacidad para soportar 1.2kV entre terminales. El voltaje de alimentación es de 400 Vcd, se requiere un voltaje a la salida de 100 Vdc con un rizo de 5Vpp. La frecuencia de trabajo es de 25Khz, se requiere una corriente de 20 A, que tenga un rizo de corriente en el inductor que no sobrepase 0.2 App. Es necesario encontrar: • • • Ciclo de trabajo, κ, el valor de la inductancia, Lbk, el valor del capacitor, Cbk, Solución: Obtención del ciclo de trabajo: Vo = k *Vs k= Vo 100v = = 0.25 Vs 400v (2.30) Valor de la inductancia, Lbk, ∆I = Vs * k * (1 − k ) f * Lbk Vs * k * (1 − k ) 100v *0.6 * (1 − 0.6 ) = f * ∆I 25, 000* 0.2 A Lbk = 4.8mH Lbk = (2.31) Valor del capacitor, Cbk, 27 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. ∆Vc = ∆I 8* f * Cbk ∆I 0.2 A = 8* f * ∆Vc 8* 25, 000*5 Cbk = 200η F Cbk = (2.32) 2.6.5 DISEÑO DEL CONVERTIDOR BOOST. Ahora se presenta el convertidor Boost, el lazo de control de este convertidor es de la misma forma que el del convertidor Buck, sólo que ahora el lazo de control será en modo voltaje, en la figura 2.21 se muestra el diagrama del convertidor Boost y el lazo de control utilizado. Figura 2.21.- Diagrama a bloques del convertidor Boost y el lazo de control en modo voltaje. Las ecuaciones diferenciales que representan este modelo son: • iLbt = • vcbt v Vs − (1 − Act ) c Lbt Lbt vc i = (1 − Act ) L − Cbt Cbt Rbt (2.33) La nomenclatura es la misma que la del convertidor Buck. Ahora se realiza el diseño del convertidor Boost, que se utilizará para elevar el voltaje de la batería que alimentará el inversor; la batería entregará 260 Vdc y una corriente constante de 20 A. Diseño del convertidor Boost ([Ang, 95]). La implementación del convertidor está pensada para un IGBT con capacidad para soportar 1.2kV. El voltaje de alimentación es de 260 Vcd (voltaje entregado por el paquete de baterías), se requiere un voltaje a la salida de 400 Vdc con un rizo de 5Vpp. La frecuencia de trabajo es de CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. 25kHz, se requiere también que el rizo de corriente en el inductor no sobrepase 0.2 App. Es necesario encontrar: • • • Ciclo de trabajo, k, el valor de la inductancia, Lbt, el valor del capacitor, Cbt, Ciclo de trabajo, k, Vs 1− k Vs 260v 1− k = = 1− k = Vo 400v k = 0.35 Vo = Valor de la inductancia, Lbt, ∆I = (2.34) Vs * k f * Lbt 260v *0.35 Vs * k = f * ∆I 25, 000 Hz *0.2 A Lbt = 18.2mH Lbt = (2.35) Valor de la capacitancia, Cbt, ∆Vc = Io * k f * Cbt 20 A *0.35 Io * k = f * ∆Vc 25000*5v Cbt = 56 µ F Cbt = (2.36) 2.6.6 BATERÍA. Uno de los factores principales en el vehículo es la batería, ya que el ahorro de energía es lo que hace llamativo este tipo de automóviles, además de la reducción de emisiones contaminantes, el ahorro de combustible es posible gracias a las baterías y el frenado regenerativo. El modelo que se utilizó para la batería es generalmente utilizado en sistemas de generación fotovoltaicos y se emplea en esta tesis por dos motivos: por su simplicidad y porque su dinámica depende de la corriente y tiempo de carga. Una de las cosas que se buscaba en el modelo de la batería es que se pueda obtener de alguna manera su estado de carga (EDC), ya que este parámetro indica el comportamiento de la batería. 29 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. MODELO MATEMÁTICO NORMALIZADO DE LA BATERÍA Basándose en estudios y en experimentación sobre distintos tipos de baterías, [Copetti, 94] desarrolló un modelo de batería normalizado en función de la capacidad C10 (Capacidad de almacenamiento de la batería en 10 horas). Se seleccionó este modelo por su simplicidad y ajuste conveniente para aplicaciones industriales. A continuación se transcriben las fórmulas que componen el modelo [Carrasco, 2000]: CASO DE DESCARGA: Vd = [2.085 − 0.12(1 − EDC )] − EDC2 = EDC1 + C = C10 Qin C (2.37) 1.7 1 + 0.7 1 4 0.27 + + 0.02 (1 − 0.007 ∆T ) 1.3 C10 1 + I EDC1.5 0.9 I (1 + 0.005∆T ) I (C10 ) CASO DE CARGA: Vc = [ 2 + 0.16 EDC ] + EDC2 = EDC1 + ηc = 1 − e I 6 0.48 + + 0.036 (1 − 0.025∆T ) 1.2 0.86 C10 1 + I (1 − EDC ) Qin ηc C (2.38) 20.73 ( EDC ) I + 0.55 I(C ) 10 CASO DE SOBRECARGA: V fc = 2.45 + 2.011ln 1 + Vg = 2.24 + 1.97 ln 1 + τ= I C10 I C10 (1 − 0.002∆T ) (1 − 0.002∆T ) (2.39) 17.3 1 + 852 I C10 1.67 V = Vg + (V fc − Vg ) 1 − e − Qin − 0.95 C Iτ CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. donde: EDC C C10 ∆T I Vc Vd Vg Vfc ηc τ I(C10) Qin Estado de carga de la batería. Capacidad de la batería. Capacidad de carga de la batería en régimen de corriente a 10hs. Variación de temperatura tomando como referencia 25°C. Corriente de la batería. Tensión de la batería durante la carga. Tensión de descarga. Tensión de la batería para el comienzo de la gasificación. Tensión final de carga. Rendimiento de carga. Constante de tiempo generalizada. Corriente de carga en el régimen C10. carga suministrada en el tiempo de interés Qin = I*t. Basándose en este modelo matemático se pueden obtener la tensión de la batería y el estado de carga a partir de la corriente suministrada por el generador; datos de temperatura ambiente y estado de carga anterior, utilizando como parámetro principal la capacidad C10, que es un dato especificado por el fabricante. 2.7 UNIÓN DEL CARGADOR DE BATERÍA Y LA BATERÍA. Para verificar el comportamiento del cargador de baterías se realizaron diferentes pruebas, como son: Prueba de carga.- El convertidor Buck, se alimenta con una fuente y se observa el aumento en el estado de carga de la batería. Prueba de descarga.- Se supone un estado de carga alto en la batería, luego se le demanda una corriente y a través del convertidor Boost, la batería entrega un voltaje y una corriente al convertidor. 2.7.1 CONVERTIDOR BUCK Y BATERÍA (PRUEBA DE CARGA). La primera prueba que se presenta es la prueba de carga, esto con el fin de verificar que el convertidor puede acoplar el voltaje y corriente cuando se presenta el frenado regenerativo o cuando es necesario ocupar el motor de combustión interna para cargar la batería. FUENTE Frenado Regenerativo Motor de Combustión Interna Convertidor Buck Batería Figura 2.22.- Prueba de Carga de Batería. 31 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. La implementación de estos bloques en Matlab/Simulink se presenta en al figura 2.23, el código del programa en .m se muestra en el anexo 2. Función S del convertidor function [sys,x0,str,ts] = buck(t,x,u,flag) Vs = 20; %Voltaje de entrada R = 5; %Resistencia de carga L = 100e-3; %inductor C = 100e-6; %capacitor a = 0.1; % Nivel de la señal triangular Vref = 7; %Voltaje de referencia function [sys,x0,str,ts] = batery_a(t,x,u,flag) C10 = 180; %Capacidad de carga. CT = 1.67*C10; %Capacidad limite de la I10 = 18; switch flag, case 0 [sys,x0,str,ts] = mdlInitializeSizes; Función S de la Batería Figura 2.23.- Implementación en Matlab/Simulink de la etapa de carga. Figura 2.24.- Corriente y Voltaje a la salida del convertidor Buck. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. En la figura 2.24 se muestra la corriente utilizada para cargar el paquete de baterías, al aplicar el control en modo corriente, la corriente tiene un rizado menor al propuesto en el diseño, esto se debe al lazo de control que mejora el desempeño del convertidor, ya que con el lazo se varía la frecuencia de conmutación. Figura 2.25.- Estado de carga del paquete de baterías. Se observa en la figura 2.25 que, al aplicar la corriente y voltaje del Buck como fuente de alimentación a la batería, el estado de carga que está en porcentaje aumenta indicando que el paquete de baterías se está cargando. 2.7.2 CONVERTIDOR BOOST Y BATERÍA (CASO DE DESCARGA). Ahora se presenta el caso de descarga de la batería, suponiendo un EDC de 90% se demandará una corriente constante de 20 Amperes, de tal manera que el convertidor Boost se encargará de elevar el voltaje que entrega la batería hasta 400 volts DC, para alimentar el inversor. En la figura 2.26 se muestra el diagrama a bloque de esta etapa y la implementación en Matlab/Simulink se muestra en la figura 2.27. FUENTE Paquete de Baterías Convertidor Boost Inversor Figura 2.26.- Prueba de descarga de la Batería. En cuanto a la implementación en función S, este bloque se hizo en dos partes, el convertidor Boost y el paquete de baterías, con el fin de manejar las dos funciones como librerías de Matlab/Simulink, el código .m se muestra en el anexo 2. 33 CAPÍTULO 2. MODELADO DE LAS PARTES DEL SISTEMA DE PROPULSIÓN. Función S de la Batería function [sys,x0,str,ts] = batery_uno_a() C10 = 180; %Capacidad de carga. CT = 1.67*C10; %Capacidad limite. I10 = 18; switch flag, case 0 [sys,x0,str,ts] = mdlInitializeSizes; function [sys,x0,str,ts] = boost( Vs = 10; R = 33; L = 1.5e-3; C = 75e-6; a = 1; Vref = 15; Función S del convertidor Boost Figura 2.27.- Implementación en Matlab/Simulink del caso de descarga. En la figura 2.28 se muestra el voltaje a la salida del convertidor Boost, este voltaje se usa para alimentar el inversor trifásico. Figura 2.28.- Voltaje a la salida del convertidor Boost. Similar al Buck, el rizado disminuye al aplicar el lazo de control, el lazo de control se aplica al voltaje de salida para evitar variaciones en el voltaje. CAPÌTULO 2 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 2.29.- Estado de carga de la batería (descarga). Como se observa en la figura 2.29, el EDC de la batería disminuye y esto es por que se demanda una corriente a las baterías, esta corriente que se demanda puede ser la que se necesita para alimentar el motor de inducción. 2.8 CONCLUSIONES. En este capítulo se analizaron los modelos que conforman el sistema de propulsión del vehículo híbrido, la máquina de AC utilizada es el motor de inducción jaula de ardilla, el cual es accionado por un inversor trifásico. El primer paso que se realizó fue verificar el modelo del motor de inducción en lazo abierto, se obtuvieron curvas de par, velocidad, par – velocidad, corrientes de rotor, corrientes de estator y se verificó el comportamiento con las gráficas obtenidas por [Ong, 98] y [Méndez, 01], que son similares a las obtenidas en las figuras 2.5 a la 2.7. Se verificó el comportamiento del inversor trifásico implementado en función S, se obtuvieron los voltajes de las tres fases (figura 2.12), las formas de onda obtenidas son similares a las presentadas por [Sen, 89] en la sección de inversores. En la unión motor e inversor, se obtuvieron las curvas típicas del motor de inducción que es la de par y velocidad (figura 2.17) validando la unión de los dos modelos, se verificó que al aplicar un par negativo (figura 18a) a la máquina de inducción el inversor funciona como un rectificador (figura 18b). En el cargador de baterías se verificó el comportamiento de carga y descarga, poniendo condiciones iniciales a la batería o suponiendo un estado de carga inicial, los resultados son mostrados en las figuras 2.24 a 2.29. 35 CAPÍTULO 3. CONTROL DE VELOCIDAD DEL VEHICULO HÍBRIDO. 3.1 INTRODUCCIÓN. Los accionadores para motores de inducción de jaula de ardilla, han sido los caballos de batalla en la industria en aplicaciones donde son necesarias las variaciones de velocidad. Entre las aplicaciones donde se manejan estos tipos de controles de variación de velocidad de motores están: bombas para líquidos y aplicaciones eólicas, molinos de papel y textiles, propulsión de locomotoras, vehículos híbridos y eléctricos, máquinas eléctricas y robóticas, e incluso aplicaciones en el hogar. El control para máquinas de CA en general tiene mayor complejidad que el control de máquinas de CD, y el control en las máquinas de CA puede ser más complejo si se exigen ciertos comportamientos en el desempeño del control, esta complicación es debido a la no linealidad de la máquina de CA. El diseño de controladores de alto desempeño para el motor de inducción es complicado, debido a que no se puede medir el estado completo de la máquina, además de ser un sistema no lineal y con parámetros variantes en el tiempo [Mendez, 01]. Existen diferentes métodos de control para el motor de inducción, entre ellos se encuentran: 36 CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. 1. Control en régimen permanente Considerado como un método clásico, las variables de control básicas son la amplitud y la frecuencia de los voltajes y corrientes del estator. Su ventaja principal radica en que se pueden aplicar las técnicas de control lineal en el diseño del controlador; como desventaja se tiene que el desempeño dinámico es variable, dependiendo de qué tan cerca esté funcionando el motor del punto de operación supuesto. Algunas técnicas usadas son [Bose, 02]: a) Control Voltaje/Frecuencia constante, b) Control de la frecuencia de deslizamiento y corriente del estator. 2. Control no lineal Las aplicaciones de alto desempeño demandadas por la industria requieren técnicas de control no lineal para alcanzar el funcionamiento deseado. Algunos métodos utilizados son: 2.1. Control vectorial Es un método de control estándar para máquinas de CA. Su objetivo principal es hacer que el motor de inducción se comporte como uno de CD de excitación separada, con las variables de par y flujo magnético desacopladas. Algunas técnicas usadas son [Vas, 98]: a) Control por campo orientado, b) Control directo del par y del vector de flujo de estator. 2.2. Control no lineal moderno Estas técnicas utilizan el modelo no lineal del motor y se basan en la teoría de sistemas y tratan de demostrar formalmente características fundamentales del sistema de control. Algunos de los métodos utilizados son: a) Los basados en pasividad y moldeo de energía: utilizan la formulación Euler-Lagrange (E-L) para el modelo del MI y aprovechan las propiedades físicas del sistema como la conservación de energía y la pasividad [Espinosa, 93]. b) Los basados en la linealización por retroalimentación: consisten en transformar al sistema original no lineal en una relación lineal entre variables auxiliares de entrada y salida por medio de un lazo de retroalimentación no lineal interno y posteriormente se diseña un control lineal que asegure la estabilidad y el desempeño deseado del sistema lineal resultante [D’Attellis, 92]. c) Los basados en el método backstepping: consisten en dividir al sistema total en subsistemas de menor orden, se elige uno y se le diseña un control por retroalimentación 37 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. como si no existieran otras dinámicas y se obtiene un pseudocontrol; si no aparece la señal de control verdadera se repite el procedimiento hasta que aparezca [Isidori, 89]. d) Los basados en el control de sistemas de estructura variable: utilizan el control en modos deslizantes [Isidori, 89]. e) Entre otros métodos de control no lineal moderno se encuentran el robusto, redes neuronales, difuso, etc. [Hernandez et al, 97]. Esta tesis se enfocará al control vectorial, que se describe con detalle a continuación. 3.2 CONTROL VECTORIAL. El objetivo del control FOC o vectorial es estabilizar y mantener una explícita relación angular (orientación) entre el vector de corrientes de estator y el flujo del rotor (o campo), es decir, estabilizarlo dentro del entrehierro de la máquina de inducción. La relación angular puede calcularse mediante la regulación del deslizamiento de la máquina a un valor particular el cual causa que el vector del flujo del rotor llegue a alinearse con el componente del eje d (ver figura 3.1) del vector de corriente de estator. De esto se puede decir que el control FOC consiste en fijar la orientación (ángulo α en la figura 3.1) entre el vector de las corrientes de estator y el vector del flujo rotórico o campo de la máquina; de allí el nombre de CONTROL DE CAMPO ORIENTADO [Diana, 89]. Figura 3.1.- Condiciones para una correcta orientación de campo. En la figura 3.1, se puede observar que el vector de corriente de estator (is) tiene dos componentes ortogonales (ids, iqs); mientras que el vector de flujo del rotor (λr) tiene una sola componente (λdr), ésta se encuentra enteramente a lo largo del eje d, esto significa que el vector del flujo del rotor no tiene una componente ortogonal de flujo en dirección del eje q y λqr es cero. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. En este tipo de control es necesaria la adquisición de la posición del flujo del rotor (ρr), este ángulo puede ser escrito como: ρ r = θ r + θ sl (3.1) donde θr es la posición del rotor y θ sl es el ángulo de deslizamiento. En términos de la velocidad y el tiempo, el ángulo del flujo puede ser escrito como: ρr = (ωr + ωsl ) dt = ωs dt (3.2) Los esquemas de control vectorial son clasificados de acuerdo a la manera de obtener el ángulo del campo del rotor (ρr). Este ángulo se calcula usando voltajes y corrientes o con sensores Hall o devanados para medir el flujo, entonces este tipo de control es conocido como control vectorial directo, que es el control que se utilizará en esta tesis. En la figura 3.2 se muestra el esquema de la implementación del control vectorial directo orientado al flujo del rotor. En el control vectorial directo se sensa la velocidad (ωr) y se compara con la velocidad de referencia (ωrref), la señal de error entra al control PI de velocidad; la salida del PI de velocidad se usa como par de referencia ( ref) y esa señal se compara con el par ( e) de la máquina, el error del par entra al controlador PI (control del par electromagnético). La salida del PI del par es la señal isyref que es una de las señales utilizada para la transformación al marco de referencia fija al rotor. La corriente de referencia |imrref | se obtiene a la salida del bloque de generador de funciones (FG); el FG contiene un bloque de debilitamiento de campo que puede ser implementado en una tabla de valores. La entrada del bloque del generador monitorea la velocidad y después basándose en está velocidad el bloque FG proporciona un valor constante de | Imrref | que es inversamente proporcional a la velocidad del rotor. La corriente |imrref | se compara con la corriente imr y la señal de error entra al control PI de la corriente magnetizante, la salida de este PI es la corriente isxref que junto con la corriente isyref (obtenida a la salida del PI del Par) son las corrientes de referencia utilizada para la transformación al marco de referencia fija al rotor. 39 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. ωr ωrref ωr i mrre FG R ctificador e Corriente Magnetizante isxref f isDref im r PI velocidad i sCre PI e τ eref τe × PI 2→3 jρr f isBref isAref isQref isyref Modulador PWM Inversor ρr Par 3 is P2 m L 2 Lr y Modelo flujo VsA VsB VsC im r MI Figura 3.2.- Esquema del control vectorial directo. Las corrientes de referencia isxref e isyref se transforman a un marco de referencias de dos ejes fijas a la corriente del estator (marco de referencia estacionario) nombradas isDref e isQref por medio de la aplicación de la transformación ejρr donde ρr que es el ángulo de la corriente de rotor magnetizante. Para poder obtener el ángulo ρr se ocupa el bloque de modelo de flujo, las operaciones que realiza este bloque se describen a continuación. 3.2.1 BLOQUE DEL MODELO DEL FLUJO. Este bloque es el que se utiliza para obtener la magnitud de la corriente, y el ángulo de la fase de estator, estas señales son indispensables para que el control vectorial funcione correctamente. Para este cálculo es necesario medir dos de los voltajes de fase que alimentan a la máquina, tomadas de línea a neutro. En la figura 3.2 se observa que los voltajes de fase entran al bloque de Modelo de flujo, para poder calcular los voltajes de estator en el marco de referencia fijos al estator. Los voltajes de estator q y d en un marco de referencia fija al estator son obtenidos de los voltajes de fase como: Vqs = Vas (3.3) 1 Vds = (Vcs − Vbs ) 3 CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. Similarmente, las corrientes se obtienen de la misma manera, las ecuaciones de voltajes de estator son: Vqs = ( Rs + Ls p ) iqs + Lm piqr (3.4) Vds = ( Rs + Ls p ) ids + Lm pidr De donde se despejan las corrientes y se tiene que: iqr = 1 Lm 1 idr = Lm { (V qs { − Rs iqs ) dt − Ls iqs } (Vds − Rs ids ) dt − Lsids } (3.5) Las corrientes de rotor y estator, par, el flujo y el ángulo se calculan de la siguiente manera: 3P Lm ( iqs idr − ids iqr ) 22 λqr = Lr idr + Lmids Te = λdr = Lr iqr + Lmiqs λr = (3.6) (λ ) + (λ ) 2 qr ρ r = tan −1 2 dr λqr λdr Con estas simples fórmulas, se obtiene el ángulo y la magnitud del flujo rotorico que es la base para el control vectorial. 3.3 IMPLEMENTACIÓN DEL CONTROL VECTORIAL EN MATLAB/SIMULINK. El problema de control se puede describir de la siguiente manera: se desea que el MI siga a una referencia de velocidad (deseo del conductor de acelerar o frenar), teniendo acoplada una carga (rueda + inercia del vehículo) al eje del rotor. Para el planteamiento del problema se propone el caso de modelo del control ideal de la máquina de inducción trifásica: • • • • Todos los estados están disponibles para medición, Todos los parámetros del motor son conocidos y constantes, La velocidad de referencia ωref es una función suave y acotada conocida, Las resistencias de los devanados de estator Rs y rotor Rr se mantienen constantes y sin variaciones. rotor). El diseño del controlador se basa en el modelo ‘dq’ del MI (marco de referencia fijo al 41 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. Es necesario obtener una ley de control que facilite la programación de este control en Matlab/Simulink y poder utilizar la función S. Con base en el diagrama mostrado en la figura 3.2, [Mendez 2001] en su trabajo obtuvo una ley de control la cual se utiliza en este trabajo. Ley de control de campo orientado obtenido por [Méndez, 2001] es: ud = σ Ls vd − αβψ d − n pω iq − α M iq 2 ψd uq = σ Ls vq + β n pωψ d + n pω id + α M (3.7) iq id ψd Donde ud y uq son los voltajes de la ley de control que se utilizarán como las señales moduladoras del SPWM del inversor trifásico. Para poder desarrollar un algoritmo de control presentado en la ecuación 3.8 es necesario que las variables de estado: ω, ψd, id, iq, ρr estén disponibles para retroalimentarlas, por tanto se debe poder medir ω, isa, isb, ira, irb, y luego calcular ψd, id, iq, ρr en tiempo real. Teniendo la ley de control de campo orientado y el modelo que describe el motor de inducción en un marco de referencia fijo al rotor, se une el motor e inversor con el control vectorial en la función S de Matlab/Simulink. Para controlar libremente el par y la velocidad, es necesario que el flujo se establezca a un valor constante, mediante el control PI del flujo. Este control depende de vd y se elige de la siguiente manera ([Méndez, 2001]): vd = K d 1 (ψ dref −ψ d ) + K d 2 (ψ dref −ψ d ) dt (3.8) donde Kd1, Kd2 son ganancias del controlador. Como se observa en el esquema de control mostrado en la figura 3.2, se tienen dos controles PI en cascada, que se utilizan para controlar el par y la velocidad, estos PI anidados se pueden escribir como: vq = K q1 (τ ref − τ e ) + K q 2 (τ ref − τ e ) dt τ ref = K q 3 (ωref − ω ) + K q 4 (ωref − ω ) dt (3.9) τ e = J µψ d iq Como se observa en la ecuación 3.9 el par de referencia ( controlador PI al error de la velocidad. ref) resulta de aplicar el Donde Kq1, Kq2, Kq3, Kq4 son las ganancias de los controladores. La función de los controladores PI se debe principalmente a que primero se desea estabilizar el flujo ψd, para después poder controlar la velocidad y el par. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. A continuación se presenta el diagrama esquemático a bloques del controlador por campo orientado, con el modelo ‘dq’ del MI. Figura 3.3.- Diagrama a bloques del controlador por campo orientado para el MI en el marco de referencia ‘dq’. En las ecuaciones que determinan a los controladores PI, sus ganancias se sintonizaron con los siguientes valores: (ψ dref − ψ d ) : Kd1 = 10,000; Kd2 = 100,000; (τ dref − τ e ) : Kq1 = 70; Kq2 = 20; (ω ref − ω ) : Kq3 = 70; Kq4 = 20; Algunos algoritmos acerca de cómo sintonizar los PI en un control FOC se presentan en los trabajos de [Chang, 2000] y [Espinosa, 98]. 43 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. 3.3.1 IMPLEMENTACIÓN DEL SISTEMA DE PROPULSIÓN EN MATLAB/SIMULINK. En la figura 3.4 se muestra el sistema de propulsión completo implementado en Matlab/Simulink mediante la función S. 4>" 4= > 9 A4 <4"4 <6=9<9>"*34 9> ?8> @> A ' 4>" 4=*34 9A 6 <6=9<9>"*34A 9> A <8=>H = B ' ! < = = #0),C/#D D0 !!% )E$1/#D D0 ! #0),C/#D D0 !!% )E$1/#D D0 ! #0),C/#D D0 !!% =' =' = #0),C/#D D0 !!D#/C!% #0),C/#D D0 !!D#/C!% )E$1/#D D0 !% " = = & & & ( ( ( & & ' : ( ( ( ( ( ' ( ' ! : ! : F G ( F G ( & ( ! " ! ! G ( " ( ( ! )E$1/#D D0 !% = '% & & ( ( ( ( ( G ( ' " ! " ! ! " #$% & ' ( ) & ( (( *' + ) , ,- % & *' . ) , ,-% & *' . ) & ' ,/0% & . & 1-% "' (( #0% * 2*34 5 6*789"9 39 :*"9 ;* <6=9<9>"*34 9> ?8> @> A Figura 3.4.- Implementación del sistema de propulsión en Matlab/Simulink. Como se observa en la figura un solo bloque contiene el modelo del motor, inversor y control. Para poder distinguir como está formado todo el sistema de propulsión, en la figura 3.5 se presenta un diagrama a bloques del sistema completo implementado en Matlab/Simulink. La razón por la cual se implementó el motor, inversor, y control en un solo bloque, fue para disminuir el tiempo de simulación del programa, el archivo .m de esta implemtanción se muestra en el anexo 2. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. SEÑALES DE CONTROL AL INVERSOR FUENTE PRIMARIA MOTOR COMBUSTION INTERNA CONTROL VECTORIAL INVERSOR 3 CARGADOR BATERÍAS FUENTE SECUNDARIA VOLTAJE DE ALIMENTACIÓN MOTOR INDUCCIÓN FRENADO REGENERATIVO CARGA PAQUETE BATERÍAS Figura 3.5.- Diagrama a bloques del sistema de propulsión implementado en Matlab/Simulink mediante la función S. Al control Vectorial se le hicieron pruebas de seguimiento y de regulación, estas pruebas se muestran a continuación. La figura 3.6 muestra una prueba de seguimiento, los incrementos de par y velocidad se muestran en la tabla 3.1. Velocidad Par Tabla 3.1. Variación del par y de la velocidad de referencia. 80% 100% 324 rad/s 360 rad/s nominal 50% 25 Nm 37.5 Nm 120% 396 rad/s 100% 50 Nm Figura 3.6.- Pruebas de seguimiento con incremento positivo en el par y en la velocidad. 45 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. En la figura 3.6 se muestran las curvas de velocidad con los incrementos mostrados en la tabla 1. Se observa que al aplicar una variación del 50% en adelante el control no puede seguir la referencia, ya que la velocidad exigida y el par de carga sonbrepasan la capacidad del motor. Con esta prueba se puede concluir que la velocidad máxima que se puede exigir al motor con este control, es una velocidad de 325 Rad/s, con un par de 100Nm. Al aumentar el par la velocidad disminuye, por tanto no puede seguir la referencia, esto se debe a que el par de carga es muy grande y tiene un efecto de freno en el motor, se puede apreciar con el incremento del 100% en el par, este comportamiento se muestra en la figura 3.6. En la figura 3.7, se muestra otra prueba de regulación, donde se reduce el par y la velocidad de referencia tal como se muestra en la tabla 3.2. Velocidad Par Tabla 3.2. Variación del par y de la velocidad de referencia. -10% -50% 130 rad/s 90 rad/s 150% 190% 62.5 Nm 72.5 Nm -90% 10 rad/s 200% 100 Nm Figura 3.7.- Pruebas de seguimiento con decremento en el par y en la velocidad. En esta pruba se observa que al disminuir la velocidad del motor permite un mayor incremente en el par de carga, sin embargo cuando el par es del 200% la velocidad no puede seguir la referencia y tiene comportamiento no deseado hasta que se frena. Ahora se presenta la prueba de regulación, donde se mantiene constante la velocidad de referencia, y se varía el par como se muestra en la tabla 3.3, los resultados se presentan en las figuras 3.8 y 3.9. Nominal 25 Nm +50% 37.5 Nm Tabla 3.3.- Variación del par en la prueba de regulación. +100% +150% Nominal -50% 50 Nm 62.5 Nm 25 Nm 12.6 Nm -80% 6.25 Nm CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. Figura 3.8.- Respuesta del sistema ante variaciones en el par de carga. Como se observa en la figura 3.8, al aumentar el par, las perturbaciones en la velocidad son mínimas. Si se hace un acercamiento a la gráfica de velocidd mostrada en la figura anterior, se ve como estos cambios en el par de carga afectan al sistema. Esto se presenta en la figura 3.9. Figura 3.9.- Respuesta del sistema ante variaciones del par de carga. En las pruebas de regulación y seguimiento se verificó el comportamiento dinámico general del sistema, ahora se presenta el comportamiento particular del sistema en diferentes escenarios del vehículo híbrido. 47 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. 3.3 ESQUEMA DEL SISTEMA COMPLETO DE PROPULSIÓN DE UN VEHÍCULO HÍBRIDO. En la figura 3.10 se observa el sistema completo de propulsión indicando con distintos trazos las direcciones del flujo de energía en cada uno de los posibles escenarios que se van a contemplar en esta tesis, estos escenarios son: Modo batería, Modo Normal y Modo de frenado regenerativo. MODO NORMAL MIJ A SELECCIÓN DE MODO ENERGÍA DEL MCI CONTROL FOC INVERSOR 3φ φ MODO FRENADO REGENERATIVO MODO BATERÍA BOOST RUEDA BUCK PAQUETE DE BATERÍAS Figura 3.10.- Sistema de propulsión completo en los distintos modos de funcionamiento. 1) Modo normal: En este modo se opera el vehículo como un automóvil convencional, la energía principal proviene de la máquina de combustión interna (MCI), este modo se utiliza cuando el vehículo se mueve a velocidad crucero. Cuando la carga mecánica en las ruedas no exige toda la potencia que el MCI puede aportar, se utiliza el sobrante para cargar las baterías, se pretende que este modo de operación, sea el menos utilizado, para lograr una disminución en el consumo de combustible. 2) Frenado Regenerativo: Este modo se presenta cuando a la máquina de inducción se le aplica un par de carga negativo, esto hace que la máquina pase del modo motor a modo generador (el par de carga negativo se aplica en el frenado del vehículo). Cuando el motor está en modo generador el inversor trifásico funciona como un rectificador trifásico, la corriente rectificada alimentara al convertidor Buck, y la salida del convertidor se utiliza para cargar el paquete de baterías. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. 3) Modo Batería: Este modo entra en funcionamiento al encender el vehículo, o cuando el estado de carga de la batería (EDC) está en un nivel aceptable y permite al convertidor Boost, entregar la energía suficiente al motor de inducción a través del inversor. Como se observará en las simulaciones, cuando el convertidor Boost proporcione energía al inversor, el EDC empezará a decrecer, esto indica que la batería se está descargando. Mientras el vehículo funcione con las baterías, habrá un ahorro de combustible fósil, el cual es uno de los requisitos en estos vehículos, este modo de funcionamiento se ilustra en la figura 3.10, mediante las líneas punteadas. Una vez que se ha explicado brevemente los escenarios y mencionado como se comporta cada uno, se observan los resultados obtenidos durante la simulación. 3.3.1 CONDICIONES DE SIMULACIÓN. Los escenarios mencionados anteriormente, fueron escogidos para representar ciertas condiciones de interés en el comportamiento del Vehículo Híbrido. Las condiciones para que estos escenarios se presenten son fijadas con anterioridad, ya que para que se den en forma natural, es necesario contar con un control supervisorio. Modo Normal.- Aquí se verifica que al no utilizar toda la potencia del MCI, la potencia sobrante se utilice para cargar las baterías. Esta condición se logra al pasar de una velocidad crucero (no hay sobrante te potencia) de 90 Rad/seg., a una velocidad de 50 Rad/seg donde no se ocupa toda la potencia del MCI. Frenado Regenerativo.- En este escenario, se busca verificar que al tener un frenado, el estado de carga de la batería aumente. Al incio de la prueba se frena casi al instante del arranque del vehículo. Después del frenado del arranque, lavelocidad aumenta a 180 Rad/seg., para verificar que cuando no hay frenado el estado de carga de la batería permanece constante, al final de la prueba se aplica otro freno al vehículo, esperando tener un comportamiento similar que el ocurrido la primera vez. Modo Batería.- Aquí se busca mostrar como funciona el sistema de propulsión con las baterías. Primero se fija la velocidad de crucero de 180 Rad/seg., mientras pasa esto se observara como el estado de carga (EDC) disminuye. Para ver el comportamiento del paquete de baterías ante variaciones de velocidades la velocidad crucero incial de 180 Rad/seg pasa a una velocidad de 100 Rad/seg., con está variación se espera que el EDC siga disminuyendo. Para finalizar la prueba de este escenario se varía la velocidad de 100 Rad/seg a 250 Rad/seg y, se espera que el estado de carga se comporte igual a las variaciones anteriores, esto significa que el paquete baterías se está descargando por el uso. 49 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. 3.3.2 ESCENARIO 1. Modo de operación normal. MIJA TL > 0 CD máquina de combustión interna Control FOC Inversor 3φ Convertidor Buck Batería Figura 3.11.- Diagrama a bloques del primer escenario propuesto. En este escenario se pueden cargar las baterías si la potencia que entrega el motor de combustión interna (que se mantiene constante en su punto óptimo de operación), no es requerida al cien por ciento por la carga. La decisión con respecto a qué potencia se debe cargar la batería la toma un control inteligente, en esta prueba se propone una potencia mínima y se verifica que haya un aumento en el estado de carga de la batería entre el tiempo t = 3s y t = 6s, tal como se muestra en la figura 3.12. Figura 3.12.- Respuesta del primer escenario propuesto. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. En la figura 3.12, se muestra la velocidad del motor; cuando la velocidad del motor es menor a 60 rad/s, la potencia del motor se usa para cargar las baterías. Tambien se observa en que al tener una velocidad menor a la de 60 rad/s el estado de carga aumenta (gráfica central), también se muestra el voltaje constante que es entregado por el motor de combustión interna (gráfica inferior). 3.3.3 ESCENARIO 2. Frenado regenerativo. MIJA TL < 0 CD máquina de combustión interna Control FOC Rectificador 3φ Convertidor Buck Batería Figura 3.13.- Modo de frenado Regenerativo. Como se mencionó anteriormente, este escenario se presenta al aplicar un par de carga negativo acoplado al eje de la máquina, de esta manera se logra que la frecuencia y el par electromagnético sean negativos y la máquina pase de un modo motor a un modo generador. Las siguientes figuras muestran el comportamiento del sistema ante estas variaciones. Figura 3.14.- Variación de la velocidad al aplicar el freno. 51 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. El frenado se aplica en el tiempo t = 0.1s hasta t = 0.7s y nuevamente en el tiempo t = 0.9 hasta t = 1.2s, la velocidad decrece lentamente, y el par de carga de la máquina es negativo, Figura 3.15.- Par de carga electromagnético de la máquina de inducción. Al momento en que se tiene un par negativo, la máquina de inducción pasa a modo generador, y el inversor se comporta como un rectificador trifásico, la corriente rectificada se muestra en la figura siguiente, está corriente se utilizará para alimentar el convertidor Buck. Figura 3.16.- Corriente a la salida del rectificador trifásico. En figura 3.16 se tiene un pico de corriente muy alto en t = 0.2, esto debido a que aún la máquina no alcanza su estado estable; todo exceso de corriente se disipa como calor mediante el frenado normal del vehículo (frenado disipativo). CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. Figura 3.17.- Voltaje y corriente a la salida del convertidor Buck. Como se observa en la figura 3.17, cada vez que se frena el vehículo híbrido en el tiempo t = 0.1s hasta t = 0.7s y nuevamente en el tiempo t = 0.9 hasta t = 1.2s, el inversor entrega corriente al Buck, y éste acopla la corriente de tal manera que el paquete de baterías se carga. Figura 3.18.- Estado de carga de la batería. En la gráfica 3.18 se observa, que mientras se está frenando en t = 0.1s hasta t = 0.7s, la batería recupera energía, y cuando la máquina deja de frenar en t = 0.7s hasta 0.9s, el EDC se mantiene constante. 3.3.4 ESCENARIO 3. Modo batería. 53 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. En este escenario se verifica el estado de carga de la batería (EDC), además se muestra la velocidad del motor al ser alimentado con el paquete de batería. Figura 3.19.-Esquema del sistema alimentándolo por medio de la batería. Figura 3.20.- Respuesta del tercer escenario propuesto. En la figura 3.20, se observa que cuando el vehículo está funcionando en modo batería, independientemente del intervalo de velocidad, siempre se demanda corriente al paquete de baterías, por lo que el EDC siempre disminuye (gráfica inferior), mientras el EDC esté dentro de un intervalo razonable, el voltaje de convertidor Boost acoplará el voltaje de salida de la batería para poder alimentar el inversor. El intervalo en el cual el paquete de baterías puede utilizarse es indicado por un control inteligente o supervisor. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. 3.4 OPTIMIZACIÓN DEL CONTROL VECTORIAL. Cualquier accionador de motores eléctricos diseñado para propulsión de vehículos y aplicaciones de tracción debe satisfacer dos requerimientos principales: superior desempeño dinámico y alta eficiencia de energía. Un motor usado para aplicaciones de propulsión no debe ser sobredimensionado con la intención de obtener mayor par, ya que aumentan los tamaños, costos y potencia del motor. Por lo tanto es necesario hacer una optimización para utilizar el motor a toda su capacidad. En algunos trabajos como el de [Ta, 2001] han realizado optimizaciones para el motor de inducción con el fin de minimizar pérdidas; uno de los inconvenientes de este trabajo es que esta optimización solo es válida para altas velocidades, por lo tanto no es posible aplicarla en el sistema de propulsión de vehículos. [Zhang, 96] en su trabajo, busca optimizar haciendo variaciones en el motor de inducción, esta técnica no se utiliza debido a que los vehículos son construidos con motores convencionales. [Xu, 2001] en su trabajo propone un método en el que la corriente de excitación del motor es optimizada y ajustada dinámicamente tal que el motor pueda generar el mayor par posible. Este método puede ser implementado mediante programación y no es necesario cambiar las características del modelo del motor. El metodo de [Xu, 2001] funciona en bajas y altas velocidades logrando tener un mayor par en el arranque de la máquina, es por esto que en la tesis se analiza una optimización similar. Para realizar está optimización es necesario conocer el comportamiento del motor de inducción en estado estable y trazar las curvas de par contra corriente magnetizante, de está manera al variar el par, se observará la variación de la corriente. Para obtener estas gráficas en estado estable, se incrementa el voltaje de alimentación, y se observa el comportamiento en las variaciones del par, corrientes y velocidad del motor. El voltaje de alimentación máximo es de 220v, y los incrementos se muestran en la tabla 3.4. Tabla 3.4.- Variaciones en el voltaje para obtener las curvas de Par – Corriente Magnetizante. Voltaje Alimentación (Volts) Par Nm (Máximo) 88 110 132 154 176 198 220 10 15 23 31 39 50 63 Corriente Estator Máxima (Amp). 20 25 30 36 42 47 52 En la figura 3.21 se muestran los valores de voltaje de corriente que se debe suministrar para obtener las curvas de corriente máxima de estator, así como también el voltaje utilizado 55 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. para obtener las diferentes curvas de par contra corriente magnetizante presentadas en dicha figura. Figura 3.21.- Gráfica de par contra corriente magnetizante. De la figura 3.21 se observa que el comportamiento de las gráficas de par contra corriente magnetizante es similar en todos los casos. Con las curvas de par velocidad obtenidas se busca tener mayor información en cuanto a la corriente que se necesita para tener un máximo par. La técnica de optimización comúnmente utilizada en aplicaciones industriales es el debilitamiento de campo, la cual consiste en la saturación de flujo para que la velocidad no siga aumentando, pero como consecuencia de esto el par disminuye. Aunque la técnica de debilitamiento de campo es de las más utilizadas en la industria, no es posible aplicarla en sistemas de propulsión, debido a que al debilitar el par el vehículo perdería potencia en la tracción y esto provocaría escaso par en el arranque y en situaciones de se requiere mayor tracción. 6 >'! CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. Figura 3.22.- Limitación del par debido al debilitamiento de campo. Como la técnica de debilitamiento de campo decrementa el par, está tecnica no puede ser aplicada por que se perderia tracción en el vehículo. En la figura 3.22 se observa que con la técnica de debilitamiento de campo se impone un valor máximo de par (mostrado en la figura 3.22 con la línea punteada). Con esta técnica el par máximo que se obtendrá con un voltaje de alimentación máximo de 220v y una corriente máxima de estator de 52 Amp, es de 33 Nm. Este par es solo una parte de lo que la máquina podría entregar con otro tipo de optimización. El método de [Xu, 2001] consiste en obtener los máximos de cada curva de par contra corriente magnetizante, con el fin de obtener una ecuación que toque los puntos máximos de cada curva y proporcione el par máximo dependiendo de la corriente y el voltaje que se suministre al modelo de la máquina en estado estable. En la figura 3.23 se muestra una curva que toca los máximos de cada una de las curvas de par contra corriente magnetizante. Con estos puntos se obtiene una curva que tiene el nombre de corriente de excitación optimizada. 57 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 3.23.- Curva para obtener máximo par. En la figura 3.23 se muestra que utilizando la curva de optimización y al aplicar un voltaje de alimentación de 220v, se tiene un par de 62Nm, mayor al obtenido con la técnica de debilitamiento de campo, las limitaciones de la técnica propuesta por [Xu, 2001] están dadas por la fuente de alimentación, y por el par máximo del motor. La función cuadrática que se utiliza para representar la curva que toca los máximos de las curvas mostradas en la figura 3.23, está representada con el nombre de “curva de corriente de excitación optimizada” y, con la ecuación que la representa se tendrá un par máximo dependiendo del voltaje y la corriente de alimentación. La curva de optimización se obtiene utilizando el método de interpolación que proporciona Matlab en el menú de figuras, con solo indicar en Matlab los puntos máximos que se desea que toque la curva, el programa proporciona una ecuación matemática que representa la curva, esta curva toca los puntos indicados. La ecuación matemática del par en función de la corriente magnetizante obtenida con Matlab es la siguiente: Top = 0.0023iMs 2 + 3.2−15 iMs − 7.2−14 (3.11) donde: Top = Par optimizado. iMs = corriente magnetizante. La ecuación obtenida se utilizará para remplazar el bloque anterior de debilitamiento de campo que aparece en al figura 3.2 con la etiqueta de FG, y se sustituye por un bloque de CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. optimización, tal como lo muestra la figura 3.24, que es el diagrama del control vectorial optimizado. Figura 3.24.- Diagrama a bloques del control vectorial optimizado. Una vez que se implementa el bloque que compone el nuevo control vectorial, se realizan pruebas para observar el comportamiento en el arranque y a ciertas variaciones en la velocidad, con el fin de verificar que se obtendrá un mayor par con la optimización realizada. Para probar el nuevo control optimizado se hacen variaciones en la velocidad, y se observará cómo se comporta la curva par optimizado del motor en esta situación, y será comparada con la curva de par normal. 59 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. Figura 3.25.- Variación de la velocidad para verificar el comportamiento del par. Como se observa en la figura 3.25, se parte de la velocidad nominal y una vez que se estabiliza, se varia la velocidad para verificar que en está situación el par optimizado sea mayor que el par normal que presenta la máquina de inducción sin optimización. Para observar mejor el par producido con la optimización se hace un acercamiento en el arranque, que es el principal punto de interés, y se muestra en la figura 3.26 (a). Figura 3.26 (a).- Respuesta del par optimizado. CAPÌTULO 3 CONTROL DE VELOCIDAD DEL HEV. La línea continua, representa el par optimizado, como se puede observar es mayor al par normal. En la figura 3.26 (b) se presenta otro acercamiento de una de las variaciones de velocidad presentadas en la figura 25 y en esta parte el par también es mayor al normal producido por la máquina. Figura 3.26 (b).- Respuesta del par optimizado. Mediante las gráficas 3.26 (a) y 3.26 (b), se observa el desempeño del control vectorial optimizado, el cual da un mayor par al arranque y en los momentos donde se incrementa la velocidad. 3.5 CONCLUSIONES. En este capítulo se estudió e implementó el control vectorial directo, tema sobre el cual hay varios trabajos realizados en Cenidet, pero ninguno de ellos lo enfoca a la propulsión de un vehículo y a la optimización como en esta tesis. Los resultados de la implementación del control vectorial se muestran en las figuras 3.6 a la 3.9, donde se aplican pruebas de regulación y seguimiento al control vectorial. También se presenta la parte principal del trabajo de tesis, ya que se verifica el modelo del sistema de propulsión completo. Para probarlo se utilizan tres escenarios los cuales sirven para evaluar el comportamiento del vehículo en diversas condiciones. En el escenario 1, se observa en las gráficas que cuando no se utiliza toda la potencia del motor de combustión interna, esta energía extra se utiliza para cargar las baterías. En la figura 3.12 se puede ver como aumenta el estado de carga al usar parte de la potencia del motor de combustión. 61 CAPÌTULO 3 SISTEMA DE PROPULSIÓN DE UN HEV. El escenario 2 se utiliza para verificar la recuperación de energía en el frenado regenerativo, por medio del cual se observa que al tener un frenado (par de carga negativo) se pueda recuperar energía que se almacena en el paquete de baterías. Verificar la recuperación de energía durante el frenado regenerativo era uno de los objetivos principales de la tesis y se observa en los resultados mostrados en las figuras 3.14 a la 3.18, que la recuperación de energía es posible y se logra verificar en este trabajo. En el escenario 3, se observa que al estar el paquete de baterías cargado se puede alimentar el inversor de una forma correcta, el comportamiento se muestra en la figura 3.20, donde se ve como el estado de carga del paquete de baterías disminuye conforme el inversor le demanda corriente. También se realizó la optimización del control vectorial, con este método se tiene un mayor par al arranque y en cualquier instante de inercia donde se requiera mayor tracción instantánea, los resultados se observan 3.25 a la 3.26 (b). La implementación del sistema de propulsión con modelos detallados como los que se utilizan en esta tesis, aun no se encuentra en la literatura, y la optimización realizada en el control vectorial no había sido utilizada para la propulsión, lo cual es otra aportación de la tesis a la investigación. CAPÍTULO 4. VALIDACIÓN DE LOS RESULTADOS OBTENIDOS EN MATLAB CON VIRTUAL TEST BED (VTB). 4.1 INTRODUCCIÓN. Con el fin de cotejar los resultados de simulación del sistema completo presentado en el capítulo 3, fue necesario hacer una búsqueda entre los software comúnmente utilizados en el estudio del comportamiento de sistemas de propulsión y recuperación de energía para cotejar el comportamiento de los modelos implementados en Matlab/Simulink. Entre los programas computacionales con mayor interés para simulación de prototipos se encontraron el VTB 2003 versión 1.03.03 (Virtual Test Bed) y ADVISOR 2003, este trabajo se enfocará al VTB ya que ofrece mejores ventajas que ADVISOR, como son: facilidad de programación, el software es libre (gratuito), el tiempo de simulación es menor al de ADVISOR. El VTB es una herramienta que permite crear prototipos multidisciplinarios, y está enfocada a muchas áreas de la investigación como son sistemas eólicos, solares, eléctricos y mecánicos o alguna combinación de ellos como es el sistema de propulsión que se plantea en este trabajo ([John, 2000]). 63 CAPÍTULO 4 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. VTB maneja un lenguaje de alto nivel, por lo que se tiene un ambiente parecido al de Simulink, donde los modelos se interconectan con otros para ver su comportamiento. Este programa aun está en vías de desarrollo y no se cuenta con un tutorial de ayuda sólido como el de Matlab/Simulink, sin embargo una gran cantidad de prototipos han sido desarrollados en VTB. La facilidad de uso del VTB lo hace una herramienta muy competente, se han creado algunos prototipos dentro de los cuales está un vehículo híbrido, con una configuración serie parecida a la presentada en este trabajo, con la diferencia que ese prototipo utiliza una celda de combustible como fuente principal, el esquema se muestra en la figura 4.1 [Benlyazid, 98]. Figura 4.1.- Vehículo híbrido armado en el simulador VTB. En la figura anterior se muestra el esquemático de un vehículo realizado por la universidad de Carolina del Sur que son los creadores de este software; Los creadore del vehículo utilizan una configuración serie y tienen incluso un control supervisor que automatiza todo el sistema del vehículo. 4.2 SISTEMA DE PROPULSIÓN DEL VEHÍCULO EN VTB. A continuación se presenta el modelo del sistema de propulsión diseñado en esta tesis realizado en VTB, donde se implementa el control vectorial sobre el motor de inducción trifásico, tal como se muestra en la figura 4.2. CAPÌTULO 4 VALIDACIÓN DE RESULTADOS EN VTB. Figura 4.2.- Diagrama esquemático del sistema de propulsión en VTB. En la figura 4.2 se observan los diferentes subsistemas, los cuales se describen a continuación. Cargador de Batería.- Dentro de este subsistema se encuentra un convertidor Buck, el cual proporciona la corriente necesaria para cargar la batería, el convertidor se alimenta con la corriente recuperada en el frenado regenerativo. Modulador SPWM e Inversor.- Dado que este programa tiene un ambiente parecido al de Simulink, el control SPWM para el inversor esta dado por un bloque, el cual mostramos en el recuadro así como también el inversor el cual alimenta el motor de inducción, el inversor que se utiliza está compuesto por interruptores ideales. Implementación del Control Vectorial.- En este subsistema se muestran las ganancias del control vectorial, aquí están situados los controles PI así como también las constantes que dependen de la máquina. Motor de Inducción.- Este bloque contiene el modelo de un motor que permite variar sus parámetros para dimensionarlo de acuerdo a las necesidades que se tengan. El motor se dimensiona de tal forma que tenga las mismas características que el implementado en la función S. 65 CAPÍTULO 4 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. Este sistema de propulsión diseñado en VTB, tiene las mismas características que el simulado en Matlab/Simulink en cuanto a dimensión del motor, inversor, alimentación y la ganancia de los controladores de par, velocidad y flujo. 4.3 COMPARACIÓN DEL VTB Y MATLAB/SIMULINK CON EL CONTROL VECTORIAL. Para empezar a analizar los comportamientos en los dos software de simulación, se realizará una prueba de seguimiento. Figura 4.3.- Prueba de seguimiento en VTB. Figura 4.4.- Prueba de seguimiento en Matlab/Simulink. CAPÌTULO 4 VALIDACIÓN DE RESULTADOS EN VTB. Como se observa en las figuras 4.3 y 4.4, las dos siguen perfectamente la referencia, pero la figura 4.4 que pertenece a la simulación de Matlab/Simulink, tarda un poco en llegar al estado estable en comparación con lo obtenido en VTB, fuera de este detalle el comportamiento de las dos simulaciones es muy parecido. Ahora se presenta una prueba de regulación, en esta prueba se varía el par y permanece constante la velocidad, los resultados obtenidos son los siguientes: Figura 4.5.- Prueba de regulación en VTB. Figura 4.6.- Prueba de regulación en Matlab/simulink. Como se puede observar los dos modelos presentan un buen comportamiento en esta prueba de regulación, aunque en la gráfica de par (figura 4.6 inferior) de Matlab/Simulink tienen mayor ruido que la obtenida en VTB, esto se observa fácilmente al comparar las escalas. Por otro lado en la grafica de velocidad (figura 4.6 superior) el VTB muestra mayor ruido. Por último para validar el comportamiento del vehículo híbrido, se muestra el desempeño del sistema de propulsión en el escenario 1, con los dos softwares en las siguientes gráficas. 67 CAPÍTULO 4 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. Figura 4.7.- Comportamiento del escenario 1 en VTB. Figura 4.8.- Comportamiento del escenario 1 en Matlab/Simulink. Como se puede ver la única diferencia que se tiene es en el estado de carga, la batería en Matlab se carga con mayor rapidez en comparación con la del VTB. Esto se debe a que el modelo de VTB es más completo que el utilizado en el sistema implementado en Matlab/Simulink, debido a que el modelo de batería utilizado en Matlab/Simulink es solo de parámetros constantes, mientras que la batería presentada en VTB es un modelo completo que contiene todas las dinámicas de un modelo real. CAPÌTULO 4 VALIDACIÓN DE RESULTADOS EN VTB. 4.4 CONCLUSIONES. La implementación del sistema de propulsión con modelos detallados como los que se utilizan en esta tesis, aún no se encuentra en la literatura y la optimización realizada en el control vectorial no había sido utilizada para la propulsión, lo cual es otra aportación de la tesis a la investigación. Una vez que se tienen todos los resultados obtenidos en Matlab/Simulink mediante la función S, se cotejaron los resultados con el programa VTB, con esto se verifica el comportamiento del sistema de propulsión con un paquete computacional especializado en la construcción de prototipos reales. Los resultados se presentan en las figuras 4.7 y 4.8, que es el comportamiento del sistema de propulsión en los dos paquetes. Con lo cual se validan los resultados obtenidos y los modelos que se realizaron en Matlab/Simulink. 69 CAPÍTULO 5 CONCLUSIONES Y TRABAJOS FUTUROS. 5.1 CONCLUSIONES. Para poder presentar las conclusiones de esta tesis, se inicia por mencionar cada objetivo propuesto. Objetivo 1. • Consiste en el diseño, modelado y simulación de un sistema de propulsión eléctrica para su uso en un vehículo híbrido eléctrico (HEV). El trabajo propuesto incluye el diseño de un convertidor bidireccional, el modelo de una máquina de AC (a elegir entre motor de inducción (IM), ó motor síncrono sin escobillas (BSM)) que cumpla las especificaciones propias de los sistemas de propulsión y por último el diseño de la estrategia de control para la obtención de velocidad y par. Para lograr este objetivo se estudió el funcionamiento y comportamiento del motor de inducción, también fue necesario el estudio de la transformación del motor en los diferentes marcos de referencia para tener un modelo que facilite la implementación del control vectorial. Para accionar la máquina de inducción se estudió el funcionamiento del inversor trifásico con un control SPWM, estos dos modelos se unieron mediante un paquete computacional y los resultados fueron satisfactorios, se tienen curvas del modelo del motor con el mismo comportamiento que las obtenidas por algunos autores como [Ong, 98], [Méndez, 01], y [Krause, 95]. Se estudió la técnica de control vectorial analizada por [Vas, 98], y se implementó el control que propone en su libro. La implementación se muestra en el capítulo 3, los resultados fueron muy satisfactorios, se puede apreciar que es un control robusto. El control vectorial fue probado dentro del ámbito del vehículo, mediante la implementación de tres escenarios con los cuales se resalta el comportamiento de un vehículo híbrido, los resultados que se obtienen por cada escenario son los deseados en un vehículo. 70 CAPÌTULO 5 CONCLUSIONES Y TRABAJOS FUTUROS. Objetivo 2. • Optimización del control vectorial para tener un máximo para al arranque y en determinados momentos de inercia del vehículo. Para resolver este objetivo se estudiaron diversos métodos para optimizar un sistema de propulsión, y se utilizo el método de [Xu, 2001] en el que la optimización se logra utilizando métodos computacionales sin alterar el diseño físico del motor como proponen algunos autores. La optimización del Control Vectorial se muestra en el capítulo 3, se puede observar que se cumple el objetivo 2 mediante las figuras 3.26 (a) y 3.26 (b), en estas figuras se muestra que se tiene un mayor par al arranque y en un momento de inercia del vehículo. Un dato importante en la optimización es que al tener mayor par no se demanda más corriente al motor, solo se aprovecha al máximo la corriente de alimentación. La optimización solo afecta cuando hay un cambio en la velocidad del motor o en el arranque, la velocidad alcansa la referencia en un tiempo más corto pero se estabiliza hasta que el par se estabiliza. Objetivo 3. • Determinación de la capacidad de recuperación de energía durante el frenado regenerativo. Para resolver este objetivo fue necesaria la implementación de un cargador de baterías, con el fin de mostrar cómo aumenta el estado de carga de la batería al momento en que se presenta un frenado y de esta forma validar este objetivo 3. En el capítulo 2 se realizan pruebas de carga y descarga al cargador de baterías, pero es hasta el capítulo 3, en el escenario 2, donde se valida, al tener un frenado regenerativo se observa como el estado de carga de la batería aumenta, se muestran gráficas de la mayoría de las etapas que intervienen en este proceso. El sistema de propulsión tipo serie tiene sentido si se logra el frenado regenerativo, ya que sin la recarga de las baterías el vehiculo se comportaria como un vehículo de combustión interna. Con el objetivo 3 se valida la recuperación de energía al frenar y se justifica la configuración serie utilizada. Objetivo 4. • Construcción de un prototipo simulado en VTB del sistema de propulsión eléctrica para comparar los resultados obtenidos en Matlab/Simulink. Este objetivo se plantea para cotejar el comportamiento entre las gráficas que se obtienen con el modelo implementado en Matlab/Simulink y el modelo del sistema de propulsión implementado en VTB. 71 CAPÌTULO 5. SISTEMA DE PROPULSIÓN DE UN HEV. Se implementó un control vectorial en VTB con los modelos (motores, inversores, controladores PI, etc.) que los creadores de este software proporcionan, ajustando las ganancias y la capacidad del motor para tener una similitud en el comportamiento de los modelos en VTB y los modelos implementados en Matlab/Simulink. Una vez que se logró la construcción de este nuevo prototipo se comparan los resultados obtenidos en el escenario 1 de Matlab/Simulink con los obtenidos en VTB y se observa que el comportamiento de los dos sistemas es similar. 5.2 APORTACIÓN. En este trabajo de tesis se obtuvieron los modelos matemáticos, de los sistemas que forman el sistema de propulsión que son: a) Implementación del modelo del inversor trifásico en Matlab/Simulink acoplado al motor de inducción, controlado por modulación senoidal por ancho de pulso (SPWM, por sus siglas en inglés). b) Implementación del sistema de propulsión completo en función S que es una herramienta de Matlab/Simulink. c) Análisis y aplicación del Control Vectorial Directo al control del motor de inducción. d) Optimización del control vectorial para obtener máximo par al arranque del vehículo. e) Se cotejaron de resultados obtenidos mediante el paquete computacional Virtual Test Bed. Se proponen diferentes escenarios para validar el comportamiento del sistema de propulsión del vehículo híbrido, con el fin de obtener los resultados de la regeneración de energía y el comportamiento del control vectorial en el entorno del vehículo híbrido. Con los resultados obtenidos en esta tesis se pretende tener una base sólida para el desarrollo de futuros trabajos, con el fin de poder contribuir a las líneas de investigación de recuperación de energía, control de máquinas eléctricas y control no lineal que son algunas de las que se trabajan en el Cenidet. La implementación del sistema de propulsión con modelos completos como los utilizados en está tesis no se encuentran en la bibliografía del cenidet o de algún otro lugar, por lo que el trabajo de tesis realizado es un aporte a la investigación de sistemas de propulsión. 5.3 PUBLICACIONES. Con los resultados obtenidos en este trabajo de tesis, se escribió un artículo que fue aceptado en el congreso del AMCA 2004, el nombre del artículo es: “Modelado y Simulación del CAPÌTULO 5 CONCLUSIONES Y TRABAJOS FUTUROS. Sistema de Propulsión de un Vehículo Híbrido Serie”. El artículo se enfoca al comportamiento del vehículo en los diferentes escenarios propuestos en el capítulo 3 de esta tesis. 5.4 TRABAJOS FUTUROS. A continuación se listará una serie de posibles trabajos futuros que ayudaran a la línea de investigación de generación de energía y sistemas no lineales. Verificación experimental: • Construcción del inversor y con el motor de inducción que se cuenta en el laboratorio verificar la regeneración de energía. • Implementación de un control inteligente supervisorio al sistema de propulsión realizado en esta tesis. • Realizar un modelo cambiando la fuente primaria que es el motor de combustión interna por una celda de combustible. 73 Anexo 1. FUNCIÓN S. A.1. INTRODUCCIÓN. Una función S es un lenguaje de computadora utilizado como una herramienta en Matlab/Simulink, y puede ser escrita en Matlab, C, C++, Fortran. La función S usa una sintaxis especial para interactuar con los métodos de solución de ecuaciones utilizadas en Matlab/Simulink. Esta interacción es muy similar a la que utiliza cualquier bloque de Simulink, la forma en que la función S está estructura es muy general y se pueden dar solución a sistemas continuos, discretos, y sistemas híbridos mediante esta función. La principal utilidad de la función S es que con ella se pueden realizar modelos que interactuan con cualquier otro bloque de Simulink. A continuación se muestra como implementar una función S. A.2. IMPLEMENTACION DE LA FUNCIÓN S. Hay dos formas de implementar la función S, una es mediante el editor que hay en Simulink, pero esta forma es un poco limitada debido a que no se pueden utilizar condicionales o ciclos. La segunda es mediante el editor de Matlab, como un MEX file, o comúnmente conocido archivo .m. Cuando se utiliza el editor de Matlab, se tiene muchas ventajas ya que se pueden inicializar parámetros, utilizar ciclos, y todas las funciones que Matlab tiene, de esta manera nuestra función puede utilizarse para cualquier tipo de sistema. A.2.1. CONSTRUCCIÓN DE LA FUNCIÓN S EN ARCHIVO .M. Una función S en archivo .m consiste de una función inicial la cual se declara de la siguiente forma: [sys,x0,str,ts]=f(t,x,u,flag,p1,p2,...) 74 ANEXO 1 FUNCIÓN S. Donde f es el nombre de la función, t es el tiempo actual (tiempo de simulación en Simulink), x es el vector de estados correspondiente al bloque de la función S, u son las entradas al bloque, flag es usado para indicar la tarea que será desempeñada en una función especifica, y p1, p2,… son parámetros del bloque. Durante la simulación de algún sistema, Simulink llama repetidamente la función f, usando las flags o banderas para indicar la tarea que se está desempeñando en un momento especifico. Cada vez que la función S, desempeña una tarea devuelve resultados que pueden ser visualizados mediante un scope (graficador), o enviados al works pace (área de trabajo de Matlab). Las subfuciones principales que utiliza la función S, son listadas en la tabla A1, cada una de estas subfuciones tiene una bandera o flag gracias a esto, se ejecutan cada vez que se indica en el programa. Tabla A1.- subfunciones para la implementación de la función S. A.2.2 DEFINICION DE LAS CARACTERISTICAS DE LA FUNCIÓN S. Para que Simulink reconozca un archivo .m como una función S, es necesario especificar cierta información sobre la función. Esta información incluye el número de entradas, salidas, estados y otras características del bloque. Para dar esta información a Simulink, se llama a la función de inicialización que está dentro de la subfución mdlInitializeSizes, esta función aparece de la siguiente manera: sizes = simsizes; Esta función regresa una estructura de inicialización. Es necesario cargar en Simulink la estructura sizes con la información acerca de la función S. La tabla A2 lista los campos de la estructura sizes y describe la información contenida en cada campo. Tabla A2.- Estructura de la función 75 ANEXO 1 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. Tabla A2.- Estructura de la función zises. Después de inicializar la estructura sizes, es necesario llamar la función simsizes de nuevo, de la forma sys = simsizes(sizes); Esta función pasa la información contenida en la estructura sizes al sys, que es un vector que contiene la información que será utilizada en Simulink. Estas son las partes principales de la estructura, que forman a la función principal y después como inicializarla en un archivo .m para que Simulink la reconozca. A.3. EJEMPLO. Para mostrar un ejemplo de cómo se utiliza la función S, se utilizara un convertidor Buck como el utilizado en el cargador de baterías en la tesis y se muestra en la figura A1. Al cual se le asigna el nombre de archivo buck_a.m. Figura A1.- Diagrama del convertidor Buck. ANEXO 1 FUNCIÓN S. Las ecuaciones que representan este circuito son: vc iL + RC C v Vs * Act iL = − c + L L vc = − donde: vc iL C L R Act Voltaje del capacitor, Corriente en el inductor, valor del capacitor del filtro, valor del inductor del filtro, resistencia de carga. Estado del sw, puede ser 1 o 0. Una vez que se tiene el modelo, se puede comenzar con la construcción de la función S. Primero se escribe la función principal, donde se pone el nombre de la función y los parámetros que la componen. function [sys,x0,str,ts] = buck(t,x,u,flag) Después de la función principal, se declaran los parámetros constantes, tal como se muestra a continuación. R = 5; %Resistencia de carga L = 100e-3; %inductor del convertidor buck C = 100e-6; %capacitor del convertidor buck f =poder 10e3;estructurar %frecuencia de la onda para controlar el IGBTesdelelconvertidor Para la función S, secuadrada utiliza un condicional como switch, tal como se muestra a continuación. Y se utilizan las banderas o flags para ir de una función a otra. 77 ANEXO 1 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,R,L,C,f); %%%%%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,R,L,C,f); %%%%%%%%%%%%%%%%%% % Salidas % %%%%%%%%%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,R,L,C,f); %%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%% % Unexpected flags % %%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end Hasta ahora sólo se tiene el llamado de la función, por lo que es necesario declarar cada una de ellas. Hasta este punto todas las funciones S, tienen la misma estructura, ahora lo que cambia es el contenido de cada una de ellas, tal y como se muestra a continuación. ANEXO 1 FUNCIÓN S. %======================================================================== % mdlInitializeSizes % Tamaños del paso, condiciones iniciales, y tiempos de muestreo. %======================================================================== function [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,R,L,C,f) sizes = simsizes; sizes.NumContStates = 2; sizes.NumDiscStates = 0; sizes.NumOutputs = 5; sizes.NumInputs = 1; sizes.DirFeedthrough = 4; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0,0]'; str = []; ts = [0 0]; Aquí se mandan los datos necesarios a Simulink, para que reconozca este programa como una función S, se puede observar que se tienen cinco salidas y una entrada, el como visualizar esto se muestra en la función output. %======================================================================== % mdlDerivatives % Derivadas para los estados continuos. %======================================================================== function sys=mdlDerivatives(t,x,u,R,L,C,f) %generacion de la señal cuadrada. Vs = u(1); Uc = sign(sin(2*pi*f*t)); if Uc > 0 Act = Uc; else Act = 0; End sys(1) = -x(1)/(R*C)+x(2)/C; % Voltaje en el capacitor. sys(2) = -x(1)/L+(Vs*Act)/L; % Corriente en el inductor. 79 ANEXO 1 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. En esta función es donde se pone el conjunto de ecuaciones diferenciales, como se puede observar solo es necesario escribir las ecuaciones diferenciales tal como se obtienen en el modelo. Se define también el PWM, lo que se hace es tomar una señal senoidal volverla cuadrada para tener una señal con un ciclo de trabajo del 50%, luego las condiciones para la señal Act. El Act. es un indicador de cuando el switch debe estar abierto o cerrado. Otra cosa que es necesario señalar, es que la fuente de alimentación al convertidor es una entrada al bloque, y la definimos como u(1), que en el programa se iguala a Vs. Para terminar con la función S, es necesario declarar las salidas, y para esto se ocupa la función output, tal como se muestra a continuación. %======================================================================== % mdlOutputs % Return -the block outputs. %======================================================================== function sys=mdlOutputs(t,x,u,R,L,C,f) Vs = u(1); Uc = sign(sin(2*pi*f*t)); if Uc > 0 pos = Uc; else pos = 0; end Iload = x(1)/R; Vload = x(1); %corriente a travez de la carga. % voltaje en la carga. sys = [x(1),x(2),Iload,Vload,pos]'; El vector sys, lleva todas las salidas de interés, con esto falta implementar la función en Simulink, para esto hay que escribir el nombre de la función tal como lo muestra la figura A2. ANEXO 1 FUNCIÓN S. Figura A2.- Nombrando a la función S en Simulink. Se había mencionado que el voltaje estaba como entrada, la forma final de la función S, en Simulink es la siguiente: Figura A3.- Forma final de la función S en simulink archivo back.mdl Los resultados obtenidos en la función S, se muestran en la figura siguiente. Solo se muestra el voltaje y la corriente en la carga. 81 ANEXO 1 MODELADO DEL SISTEMA DE PROPULSIÓN DEL HEV. Figura A4.- Corriente y Voltaje en la resistencia de carga del convertidor. Con esto se finaliza el tutorial de la función S, en la ayuda de Matlab/Simulink hay otros ejemplos donde se muestra como ocupar otras subfunciones. Anexo 2. CODIGOS .M DE LAS FUNCIONES S PRESENTADAS EN LA TESIS. MOTOR DE INDUCCIÓN. Código .m del motor de inducción en el Marco de Referencia fija al Rotor (Modelo dq), implemtanción en Función S.. % Programa del Motor de Inducción tipo Jaula de Ardilla en el formato S-Function % Carga acoplada constante y sin Control % El modelo es transformado al marco de ref. fijo al rotor dq function [sys,x0,str,ts] = mi2dq_s(t,x,u,flag) M = (26.13/(2*pi*60)); % Inductancia mutua Ls = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del estator Lr = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del rotor Rs = 0.435; % Resistencia de la inductancia del estator Rr = 0.816; % Resistencia de la inductancia del rotor J = 0.089; % Inercia del rotor y de la carga P = 4; % Numero de polos Np = P/2; % Número de pares de polos TL = 0; % Par de carga switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(J,TL,Np,Ls,Lr,M,Rs,Rr); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,J,TL,Np,Ls,Lr,M,Rs,Rr); %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,J,TL,Np,Ls,Lr,M,Rs,Rr); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% % Unexpected flags % 83 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %============================================================= % mdlInitializeSizes % Tamaños, condiciones iniciales, y tiempos de muestreo para la función-S. %============================================================= function [sys,x0,str,ts]=mdlInitializeSizes(J,TL,Np,Ls,Lr,M,Rs,Rr) sizes = simsizes; sizes.NumContStates = 6; sizes.NumDiscStates = 0; sizes.NumOutputs = 12; sizes.NumInputs = 0; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0,0,0.01,0,0,0]'; str = []; ts = [0 0]; %============================================================= % mdlDerivatives % Derivadas para los estados continuos. %=============================================================function sys=mdlDerivatives(t,x,u,J,TL,Np,Ls,Lr,M,Rs,Rr) Vas = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t); Vbs = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t - 2*pi/3); Vcs = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t + 2*pi/3); Vabc = [Vas;Vbs;Vcs]; Ks = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; Vab = Ks*Vabc; KK = [cos(x(4)) sin(x(4)); -sin(x(4)) cos(x(4))]; Vdq = KK*[Vab(1);Vab(2)]; ud = Vdq(1); uq = Vdq(2); %parametros auxiliares alfa = Rr/Lr; sigma = 1-(M*M)/(Ls*Lr); beta = M/(sigma*Ls*Lr); gama = (Lr*Lr*Rs + M*M*Rr)/(sigma*Ls*Lr*Lr); miu = (Np*M)/(J*Lr); sys(1)=Np*x(2)*x(5)+alfa*M*((x(2)*x(2))/x(3))+alfa*beta*x(3)-gama*x(1)+(1/(sigma*Ls))*ud; sys(2)=-Np*x(1)*x(5)-alfa*M*((x(1)*x(2))/x(3))-Np*x(5)*beta*x(3)-gama*x(2)+(1/(sigma*Ls))*uq; sys(3)=-alfa*x(3)+alfa*M*x(1); %Fd sys(4)=Np*x(5)+alfa*M*(x(2)/x(3)); %p sys(5)=miu*x(3)*x(2)-TL/J; %w sys(6)=x(5); %teta %id %iq ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. %============================================================= % mdlOutputs % Bloques de salida. %============================================================= function sys=mdlOutputs(t,x,u,J,TL,Np,Ls,Lr,M,Rs,Rr) Te=(Np*M/Lr)*x(3)*x(2); %par Vas = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t); Vbs = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t - 2*pi/3); Vcs = 220*(sqrt(3)/sqrt(2))*cos (2*pi*50*t + 2*pi/3); Vabc = [Vas;Vbs;Vcs]; Ks = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; Vab = Ks*Vabc; KK = [cos(x(4)) sin(x(4)); -sin(x(4)) cos(x(4))]; Vdq = KK*[Vab(1);Vab(2)]; %Voltajes uq, ud ud = Vdq(1); uq = Vdq(2); %salidas sys=[x(1),x(2),x(3),x(4),x(5),x(6),Te,Vas,Vbs,Vcs,ud,uq]'; INVERSOR TRIFÁSICO. Codigo .m del inversor trifásico con Modulación Senoidal de Ancho de Pulso (SPWM), implementación en Función S. % inversor en funcion S %prueba dos, inversor trifasico de medio puente, SPWM, pag. 565 % libro de principios de maquinas electricas y electronica de potencia %autor SEN. function [sys,x0,str,ts] = inver_spwm(t,x,u,flag) Vs = 200; frecp = 5000; % Amplitud de la SPWM % Frecuencia de la portadora triangular switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,frecp,Vs); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,frecp,Vs); 85 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,frecp,Vs); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% % Unexpected flags % %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %============================================================= % mdlInitializeSizes % Tamaños del paso, condiciones iniciales, y tiempos de muestreo. %============================================================= function [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,frecp,Vs) sizes = simsizes; sizes.NumContStates = 3; sizes.NumDiscStates = 0; sizes.NumOutputs = 6; sizes.NumInputs = 0; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0 0 0]'; str = []; ts = [0 0]; %============================================================= % mdlDerivatives % Derivadas para los estados continuos. %============================================================= function sys=mdlDerivatives(t,x,u,frecp,Vs) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar la portadora triangular %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% R = 2; L = 5e-3; c=floor(frecp*4*t); % Resistencia de carga % Inductancia de carga % Contador if t>=0/(frecp*4) & t<1/(frecp*4) trian=t*frecp*40; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==1 ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. trian=-t*frecp*40+c*10+10; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==0 trian=t*frecp*40-c*10; end cc=floor((frecp*2)*t); if mod(cc+1,2)==0 trian=-trian; end % Otro contador %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar el voltaje de salida %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% f=60; w=2*pi*f; Va = 9*sin(w*t); % Voltaje en la fase A Vb = 9*sin(w*t-2*pi/3); Vc = 9*sin(w*t+2*pi/3); Vs=200; if Va>trian Vg1=Vs; elseif Va<=trian Vg1=0; end if Vb>trian Vg2=Vs; elseif Vb<=trian Vg2=0; end if Vc>trian Vg3=Vs; elseif Vc<=trian Vg3=0; end Vab = Vg1-Vg2; Vbc = Vg2-Vg3; Vca = Vg3-Vg1; sys(1) = (Vab-R*x(1))/L; sys(2) = (Vbc-R*x(2))/L; sys(3) = (Vca-R*x(3))/L; % Ecuacion diferencial para Ia % Ecuacion diferencial para Ib % Ecuacion diferencial para Ic %============================================================= % mdlOutputs % Return -the block outputs. %============================================================= function sys=mdlOutputs(t,x,u,trian,frecp,Vs) R = 2; L = 5e-3; % Resistencia de carga % Inductancia de carga %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar la portadora triangular %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% frecp = 8000; % Frecuencia de la portadora triangular c=floor(frecp*4*t); % Contador if t>=0/(frecp*4) & t<1/(frecp*4) 87 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. trian=t*frecp*40; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==1 trian=-t*frecp*40+c*10+10; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==0 trian=t*frecp*40-c*10; end cc=floor(frecp*2*t); if mod(cc+1,2)==0 trian=-trian; end % Otro contador %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar el voltaje de salida %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% f=60; w=2*pi*f; Va = 9*sin(w*t); % Voltaje en la fase A Vb = 9*sin(w*t-2*pi/3); Vc = 9*sin(w*t+2*pi/3); Vs=200; if Va>trian Vg1=Vs; elseif Va<=trian Vg1=0; end if Vb>trian Vg2=Vs; elseif Vb<=trian Vg2=0; end if Vc>trian Vg3=Vs; elseif Vc<=trian Vg3=0; end Vab = Vg1-Vg2; Vbc = Vg2-Vg3; Vca = Vg3-Vg1; sys = [x(1),x(2),x(3),Vab,Vbc,Vca]'; MOTOR – INVERSOR. Código .m de la unión motor – inversor implementado en Función S. % Programa del Motor de Inducción tipo Jaula de Ardilla en el formato S-Function % Carga acoplada constante % El control es de Campo Orientado y se calcula el ang. del flujo del rotor del modelo dq % El inversor es SPWM % El modelo es trifasico function [sys,x0,str,ts] = mi3dq_CO_Inv_sim3(t,x,u,flag) ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. M Ls Lr = (26.13/(2*pi*60)); % Inductancia mutua (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del estator (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del rotor (Bifasico) Lsm Lrm Lls Llr Lsr = (26.13/(2*pi*60))*(2/3); = (26.13/(2*pi*60))*(2/3); = 0.754/(2*pi*60); = 0.754/(2*pi*60); = Lsm; % Inductancia de magnetización del estator (Trifasico) % Inductancia de magnetización del rotor (Trifasico) % Inductancia de dispersión del estator (Trifasico) % Inductancia de dispersión del rotor (Trifasico) % Valor pico de las inductancias mutuas estator-rotor (Trifasico) Rs = 0.435; Trifasico) Rr = 0.816; Trifasico) % Resistencia de la inductancia del estator (Bifasico y % Resistencia de la inductancia del rotor (Bifasico y J = 0.089; cfv = 0; P = 4; Np = P/2; TL = 25; % Inercia del rotor y de la carga % Coeficiente de friccion viscosa % Numero de polos % Número de pares de polos % Par de carga Vs = 600; frecp = 1000; fi = 2*pi/3; % Amplitud de la SPWM % Frecuencia de la portadora triangular % Desfasamiento de 120º alfa = Rr/Lr; sigma = 1-(M*M)/(Ls*Lr); beta = M/(sigma*Ls*Lr); gama = (Lr*Lr*Rs + M*M*Rr)/(sigma*Ls*Lr*Lr); miu = (Np*M)/(J*Lr); switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frec p); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frecp); %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frecp); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% 89 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. % Unexpected flags % %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %============================================================= % mdlInitializeSizes % Tamaños, condiciones iniciales, y tiempos de muestreo para la función-S. %============================================================= function [sys,x0,str,ts]=mdlInitializeSizes(J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frec p) sizes = simsizes; sizes.NumContStates = 9; sizes.NumDiscStates = 0; sizes.NumOutputs = 11; sizes.NumInputs = 2; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09]'; str = []; ts = [0 0]; %=============================================================¨ % mdlDerivatives % Derivadas para los estados continuos. %============================================================= function sys=mdlDerivatives(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frecp) % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % ========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % ========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % phid = sqrt(phira^2 + phirb^2); rho = x(9); % id = (phira*isa + phirb*isb)/phid; % iq = (phira*isb - phirb*isa)/phid; abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; idq = abTdq*[isa;isb]; isd = idq(1); isq = idq(2); % ================================= % % Ley de Control de Campo Orientado % % ================================= % ud = sigma*Ls*(u(1) - alfa*beta*phid - Np*x(7)*isq - alfa*M*isq*isq/phid); uq = sigma*Ls*(u(2) + beta*Np*x(7)*phid + Np*x(7)*isd + alfa*M*isq*isd/phid); % =============================== % % Transformacion de 'udq' a 'uab' % % =============================== % abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; uaub = inv(abTdq)*[ud;uq]; ua = uaub(1); ub = uaub(2); % ================================ % % Transformacion de 'uab' a 'Vabc' % % ================================ % uabc = inv(Ks2)*[ua;ub;0]; Va = uabc(1); % Voltaje de ref. en la fase A Vb = uabc(2); % Voltaje de ref. en la fase B Vc = uabc(3); % Voltaje de ref. en la fase C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar la portadora triangular % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% c=floor((frecp*4)*t); % Contador if t>=0/(frecp*4) & t<1/(frecp*4) trian=t*(frecp*40); elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==1 trian=-t*(frecp*40)+c*10+10; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==0 trian=t*(frecp*40)-c*10; end cc=floor((frecp*2)*t); if mod(cc+1,2)==0 trian=-trian; end trian = trian*60; % Otro contador 91 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar el voltaje de alimentacion % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if Va>trian Vg1=Vs; elseif Va<=trian Vg1=0; end if Vb>trian Vg2=Vs; elseif Vb<=trian Vg2=0; end if Vc>trian Vg3=Vs; elseif Vc<=trian Vg3=0; end Vab = Vg1-Vg2; Vbc = Vg2-Vg3; Vca = Vg3-Vg1; Vabc = [Vab;Vbc;Vca;0;0;0]; % Vabc = [Va;Vb;Vc;0;0;0]; % =========================== % % Modelado del MIJA Trifasico % % =========================== % LS = [Lls+Lsm -0.5*Lsm -0.5*Lsm; -0.5*Lsm Lls+Lsm -0.5*Lsm; -0.5*Lsm -0.5*Lsm Lls+Lsm]; LR = [Llr+Lrm -0.5*Lrm -0.5*Lrm; -0.5*Lrm Llr+Lrm -0.5*Lrm; -0.5*Lrm -0.5*Lrm Llr+Lrm]; LSR = Lsr*[ cos(x(8)) cos(x(8)+fi) cos(x(8)-fi); cos(x(8)-fi) cos(x(8)) cos(x(8)+fi); cos(x(8)+fi) cos(x(8)-fi) cos(x(8)) ]; dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; LRS = LSR'; L = [LS,LSR;LRS,LR]; R = [Rs 0 0 0 0 0; 0 Rs 0 0 0 0; 0 0 Rs 0 0 0; 0 0 0 Rr 0 0; 0 0 0 0 Rr 0; 0 0 0 0 0 Rr ]; dL = -Lsr*[ 0 0 0 sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); 0 0 0 sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); 0 0 0 sin(x(8)+fi) sin(x(8)-fi) sin(x(8)); sin(x(8)) sin(x(8)-fi) sin(x(8)+fi) 0 0 0; sin(x(8)+fi) sin(x(8)) sin(x(8)-fi) 0 0 0; sin(x(8)-fi) sin(x(8)+fi) sin(x(8)) 0 0 0 ]; ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. B = R+dL*Np*x(7); sys(1:6) = inv(L)*(-B)*x(1:6)+inv(L)*Vabc; % Seis ecs. difs. para el subsistema electrico Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); % Ec. del Par electromagnetico sys(7) = (1/J)*(Te-cfv*x(7)-TL); % Ec. de la velocidad sys(8) = Np*x(7); % Ec. de la posicion sys(9) = Np*x(7) + alfa*M*isq/phid; % Rho %============================================================= % mdlOutputs % Bloques de salida. %============================================================= function sys=mdlOutputs(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,Vs,frecp) % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % =========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % =========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % phid = sqrt(phira^2 + phirb^2); % ============================ % % Ec. del Par Electromagnetico % % ============================ % dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); sys = [x(1),x(2),x(3),x(4),x(5),x(6),x(7),x(8),Te,phid,x(9)]'; 93 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. BUCK – BATERÍA. Código .m del convertidor Buck y la Batería, implementación en Función S. %Modelo de la bateria (Copetti), En este programa solo probaremos que el %modelo funcione en los estados de carga y descarga como se pretende. %modelo normalizado (c10) %En este modelo suponemos que no hay variacion de temperatura. %Este modelo lo utilizamos para alimentarlo con la corriente que entrega el %conbertidor buck function [sys,x0,str,ts] = batery_dos_b(t,x,u,flag) C10 = 180; %Capacidad de carga en un regimen de corriente de 10hrs. CT = 1.67*C10; %Capacidad limite de la bateria. I10 = 18; switch flag, case 0 [sys,x0,str,ts] = mdlInitializeSizes; % Inicializacion case 3 sys = mdlOutputs(t,x,u,C10,CT,I10); %Calculo de los parametros de salida y entrada case { 1, 2, 4, 9 } sys = []; otherwise error(['Unhandled flag = ',num2str(flag)]); % Error handling end; %========================================================================% mdlInitializeSizes % Tamaños del paso, condiciones iniciales, y tiempos de muestreo. %======================================================================== function [sys,x0,str,ts]=mdlInitializeSizes; sizes = simsizes; sizes.NumContStates = 0; sizes.NumDiscStates = 0; sizes.NumOutputs = 3; sizes.NumInputs = 1; sizes.DirFeedthrough = 3; sizes.NumSampleTimes = 1; % Load the sys vector with the sizes information. sys = simsizes(sizes); % x0 = []; % No continuous states % str = []; % No state ordering % ts = [-1 0]; % Inherited sample time % End of mdlInitializeSizes. %============================================================== % Function mdlOutputs performs the calculations. ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. %============================================================== function sys = mdlOutputs(t,x,u,C10,CT,I10) I = u(1); Vg = (2.24+(1.97*log(1+(I/C10)))); C = CT/(1+0.67*((I/I10)^0.9)); %Carga util A= 6/(1+I^0.6); Q= I*t; B=0.48/(1-(Q/CT)^1.2); Vc = (2+0.16*(Q/C))+(I/C10)*(A+B+0.036); tao = 17.3/(1+852*((I/C10)^1.67)); if (Vc > Vg) %Sobrecarga Vec = (2.45+2.011*log(1+(I/C10))); V = Vg+(Vec-Vg)*(1-exp(-(Q-0.95*C/(I*t))))+20; Vc =V; else Vc = (2+0.16*(Q/C))+(I/C10)*(A+B+0.036); end % %descarga if (u(1)== 0) Vd = (2.085-0.12*((I*t)/C)-(I/C10)*(4/(1+I^(1/3)))+(0.27/((1-(I*t)/CT)^1.5))+0.02)+20; else Vd = 0; end sys = [Vc,Vg,Vd]'; % End of mdlOutputs. BOOST – BATERÍA. Código .m del convertidor Boost y la Batería, implementación en Función S. Este código está dividido en dos partes: 1.- Batería 2.- Vonvertidor Boost. 1. Código de la Batería. %Modelo de la bateria (Copetti), En este programa solo probaremos que el %modelo funcione en los estados de carga y descarga como se pretende. %modelo normalizado (c10) %En este modelo suponemos que no hay variacion de temperatura. function [sys,x0,str,ts] = batery_uno_a(t,x,u,flag) 95 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. C10 = 180; %Capacidad de carga en un regimen de corriente de 10hrs. CT = 1.67*C10; %Capacidad limite de la bateria. I10 = 18; switch flag, case 0 [sys,x0,str,ts] = mdlInitializeSizes; % Inicializacion case 3 sys = mdlOutputs(t,x,u,C10,CT,I10); %Calculo de los parametros de salida y entrada case { 1, 2, 4, 9 } sys = []; otherwise error(['Unhandled flag = ',num2str(flag)]); % Error handling end; %============================================================= % mdlInitializeSizes % Tamaños del paso, condiciones iniciales, y tiempos de muestreo. %============================================================= function [sys,x0,str,ts]=mdlInitializeSizes; sizes = simsizes; sizes.NumContStates = 0; sizes.NumDiscStates = 0; sizes.NumOutputs = 3; sizes.NumInputs = 1; sizes.DirFeedthrough = 3; sizes.NumSampleTimes = 1; % Load the sys vector with the sizes information. sys = simsizes(sizes); % x0 = []; % No continuous states % str = []; % No state ordering % ts = [-1 0]; % Inherited sample time % End of mdlInitializeSizes. %============================================================= % Function mdlOutputs performs the calculations. %============================================================= function sys = mdlOutputs(t,x,u,C10,CT,I10) I = u(1); Vg = (2.24+(1.97*log(1+(I/C10)))); C = CT/(1+0.67*((I/I10)^0.9)); %Carga util A= 6/(1+I^0.6); Q= I*t; B=0.48/(1-(Q/CT)^1.2); Vc = (2+0.16*(Q/C))+(I/C10)*(A+B+0.036); ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. tao = 17.3/(1+852*((I/C10)^1.67)); if (Vc > Vg) %Sobrecarga Vec = (2.45+2.011*log(1+(I/C10))); V = Vg+(Vec-Vg)*(1-exp(-(Q-0.95*C/(I*t)))); Vc =V; else Vc = (2+0.16*(Q/C))+(I/C10)*(A+B+0.036); end % %descarga if (u(1)== 0) Vd = 2.085-0.12*((I*t)/C)-(I/C10)*(4/(1+I^(1/3)))+(0.27/((1-(I*t)/CT)^1.5))+0.02; else Vd = 0; end sys = [(20+Vc),Vg,(20+Vd)]'; % End of mdlOutputs. 2. Convertidor Boost. %Convertidor buck de entrada para cargar la bateria, % este modelo no contiene aun la bateria solo una resistencia de carga. function [sys,x0,str,ts] = boost_dos(t,x,u,flag) R = 200; %Resistencia de carga L = 10.1e-3; %inductor del convertidor buck C = 1e-6; %capacitor del convertidor buck a = 1; % Nivel de la señal triangular Vref = 40; %Voltaje de referencia T = 0.0001; % Periodo de la señal triangular switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,R,L,C,a,Vref,T,Vs); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,R,L,C,a,Vref,T,Vs); %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,R,L,C,a,Vref,T,Vs); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% 97 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% % Unexpected flags % %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %=============================================================% mdlInitializeSizes % Tamaños del paso, condiciones iniciales, y tiempos de muestreo. %============================================================= function [sys,x0,str,ts]=mdlInitializeSizes(t,x,u,R,L,C,a,Vref,T,Vs) sizes = simsizes; sizes.NumContStates = 2; sizes.NumDiscStates = 0; sizes.NumOutputs = 5; sizes.NumInputs = 1; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0,0]'; str = []; ts = [0 0]; %============================================================= % mdlDerivatives % Derivadas para los estados continuos. %============================================================= function sys=mdlDerivatives(t,x,u,R,L,C,a,Vref,T,Vs) global Vs Vs = u(1) ; %generacion de la señal cuadrada. % Uc = sign(sin(2*pi*f*t)); % if Uc > 0 % pos = Uc; % else % pos = 0; % end %Vco = (x(2)-Vref); Vco=(Vref-x(2)); Uc = rampa(T,t,a); if Uc > Vco pos = 1; else pos = 0; end sys(1) = (Vs/L) - (1-pos)*x(2)/L; % Corriente a travez del inductor. sys(2) = ((1-pos)*x(1)/C)-x(2)/(C*R); % Voltaje a travez del capacitor. %============================================================= % mdlOutputs % Return -the block outputs. %============================================================= function sys=mdlOutputs(t,x,u,R,L,C,a,Vref,T,Vs) ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. %generacion de la señal cuadrada. % Uc = sign(sin(2*pi*f*t)); % if Uc > 0 % pos = Uc; % else % pos = 0; % end Vco = (x(2)-Vref); Uc = rampa(T,t,a); if Uc > Vco pos = 1; else pos = 0; end Iload = x(2)/R; %corriente a travez de la carga. Vload = x(2); % voltaje en la carga. sys = [x(1),x(2),Iload,Vload,pos]'; CONTROL VECTORIAL. Código .m del Control Vectorial sin optimización, implementación en Función S. % Programa del Motor de Inducción tipo Jaula de Ardilla en el formato S-Function % Carga acoplada constante % El control es de Campo Orientado y se calcula el ang. del flujo del rotor del modelo dq % El inversor es SPWM % El modelo es trifasico % Motor de 3 Hp. function [sys,x0,str,ts] = miabc_LC_Inv_sim(t,x,u,flag) M Ls Lr = (26.13/(2*pi*60)); % Inductancia mutua (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del estator (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del rotor (Bifasico) Lsm Lrm Lls Llr Lsr = (26.13/(2*pi*60))*(2/3); = (26.13/(2*pi*60))*(2/3); = 0.754/(2*pi*60); = 0.754/(2*pi*60); = Lsm; Rs = 0.435; Trifasico) Rr = 0.816; Trifasico) J = 0.089; cfv = 0; P = 4; Np = P/2; %TL = 25; % Inductancia de magnetización del estator (Trifasico) % Inductancia de magnetización del rotor (Trifasico) % Inductancia de dispersión del estator (Trifasico) % Inductancia de dispersión del rotor (Trifasico) % Valor pico de las inductancias mutuas estator-rotor (Trifasico) % Resistencia de la inductancia del estator (Bifasico y % Resistencia de la inductancia del rotor (Bifasico y % Inercia del rotor y de la carga % Coeficiente de friccion viscosa % Numero de polos % Número de pares de polos % Par de carga 99 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. Vs = 400; frecp = 1000; fi = 2*pi/3; % Amplitud de la SPWM % Frecuencia de la portadora triangular % Desfasamiento de 120º alfa = Rr/Lr; sigma = 1-(M*M)/(Ls*Lr); beta = M/(sigma*Ls*Lr); gama = (Lr*Lr*Rs + M*M*Rr)/(sigma*Ls*Lr*Lr); miu = (Np*M)/(J*Lr); switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs); %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% % Unexpected flags % %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %========================================================================% mdlInitializeSizes % Tamaños, condiciones iniciales, y tiempos de muestreo para la función-S. %======================================================================== function [sys,x0,str,ts]=mdlInitializeSizes(J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs) sizes = simsizes; sizes.NumContStates = 9; sizes.NumDiscStates = 0; sizes.NumOutputs = 3; sizes.NumInputs = 3; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. sys = simsizes(sizes); x0 = [0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09]'; str = []; ts = [0 0]; global TL %========================================================================% mdlDerivatives % Derivadas para los estados continuos. %======================================================================== function sys=mdlDerivatives(t,x,u,J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs) % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % global TL TL = u(3); Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % ========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % ========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % phid = sqrt(phira^2 + phirb^2); rho = x(9); % id = (phira*isa + phirb*isb)/phid; % iq = (phira*isb - phirb*isa)/phid; abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; idq = abTdq*[isa;isb]; isd = idq(1); isq = idq(2); % ================================= % % Ley de Control de Campo Orientado % % ================================= % ud = sigma*Ls*(u(1) - alfa*beta*phid - Np*x(7)*isq - alfa*M*isq*isq/phid); uq = sigma*Ls*(u(2) + beta*Np*x(7)*phid + Np*x(7)*isd + alfa*M*isq*isd/phid); % =============================== % % Transformacion de 'udq' a 'uab' % 101 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. % =============================== % abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; uaub = inv(abTdq)*[ud;uq]; ua = uaub(1); ub = uaub(2); % ================================ % % Transformacion de 'uab' a 'Vabc' % % ================================ % uabc = inv(Ks2)*[ua;ub;0]; Va = uabc(1); % Voltaje de ref. en la fase A Vb = uabc(2); % Voltaje de ref. en la fase B Vc = uabc(3); % Voltaje de ref. en la fase C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar la portadora triangular % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% c=floor((frecp*4)*t); % Contador if t>=0/(frecp*4) & t<1/(frecp*4) trian=t*(frecp*40); elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==1 trian=-t*(frecp*40)+c*10+10; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==0 trian=t*(frecp*40)-c*10; end cc=floor((frecp*2)*t); if mod(cc+1,2)==0 trian=-trian; end trian = trian*60; % Otro contador %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar el voltaje de alimentacion % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if Va>trian Vg1=Vs; elseif Va<=trian Vg1=0; end if Vb>trian Vg2=Vs; elseif Vb<=trian Vg2=0; end if Vc>trian Vg3=Vs; elseif Vc<=trian Vg3=0; end Vab = Vg1-Vg2; Vbc = Vg2-Vg3; Vca = Vg3-Vg1; Vabc = [Vab;Vbc;Vca;0;0;0]; % Vabc = [Va;Vb;Vc;0;0;0]; ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. % =========================== % % Modelado del MIJA Trifasico % % =========================== % LS = [Lls+Lsm -0.5*Lsm -0.5*Lsm; -0.5*Lsm Lls+Lsm -0.5*Lsm; -0.5*Lsm -0.5*Lsm Lls+Lsm]; LR = [Llr+Lrm -0.5*Lrm -0.5*Lrm; -0.5*Lrm Llr+Lrm -0.5*Lrm; -0.5*Lrm -0.5*Lrm Llr+Lrm]; LSR = Lsr*[ cos(x(8)) cos(x(8)+fi) cos(x(8)-fi); cos(x(8)-fi) cos(x(8)) cos(x(8)+fi); cos(x(8)+fi) cos(x(8)-fi) cos(x(8)) ]; dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; LRS = LSR'; L = [LS,LSR;LRS,LR]; R = [Rs 0 0 0 0 0; 0 Rs 0 0 0 0; 0 0 Rs 0 0 0; 0 0 0 Rr 0 0; 0 0 0 0 Rr 0; 0 0 0 0 0 Rr ]; dL = -Lsr*[ 0 0 0 sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); 0 0 0 sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); 0 0 0 sin(x(8)+fi) sin(x(8)-fi) sin(x(8)); sin(x(8)) sin(x(8)-fi) sin(x(8)+fi) 0 0 0; sin(x(8)+fi) sin(x(8)) sin(x(8)-fi) 0 0 0; sin(x(8)-fi) sin(x(8)+fi) sin(x(8)) 0 0 0 ]; B = R+dL*Np*x(7); sys(1:6) = inv(L)*(-B)*x(1:6)+inv(L)*Vabc; % Seis ecs. difs. para el subsistema electrico Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); % Ec. del Par electromagnetico sys(7) = (1/J)*(Te-cfv*x(7)-TL); % Ec. de la velocidad sys(8) = Np*x(7); % Ec. de la posicion sys(9) = Np*x(7) + alfa*M*isq/phid; % Rho %========================================================================% mdlOutputs % Bloques de salida. %======================================================================== function sys=mdlOutputs(t,x,u,J,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs) global TL % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); 103 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % =========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % =========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % phid = sqrt(phira^2 + phirb^2); % ============================ % % Ec. del Par Electromagnetico % % ============================ % dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); sys = [x(7),Te,phid]'; OPTIMIZACIÓN DEL CONTROL VECTORIAL. Código .m programa de optimización del control Vectorial, implementación en Función S. % Programa del Motor de Inducción tipo Jaula de Ardilla en el formato S-Function % Carga acoplada constante, Implementación de la optimización propuesta por Xu. % El control es de Campo Orientado y se calcula el ang. del flujo del rotor del modelo dq % El inversor es SPWM % El modelo es trifasico % Motor de 3 Hp. function [sys,x0,str,ts] = miabc_LC_Inv_sim(t,x,u,flag) M Ls Lr = (26.13/(2*pi*60)); % Inductancia mutua (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del estator (Bifasico) = 0.754/(2*pi*60)+(26.13/(2*pi*60)); % Inductancia del rotor (Bifasico) Lsm Lrm Lls Llr Lsr = (26.13/(2*pi*60))*(2/3); = (26.13/(2*pi*60))*(2/3); = 0.754/(2*pi*60); = 0.754/(2*pi*60); = Lsm; % Inductancia de magnetización del estator (Trifasico) % Inductancia de magnetización del rotor (Trifasico) % Inductancia de dispersión del estator (Trifasico) % Inductancia de dispersión del rotor (Trifasico) % Valor pico de las inductancias mutuas estator-rotor (Trifasico) ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. Rs = 0.435; Trifasico) Rr = 0.816; Trifasico) % Resistencia de la inductancia del estator (Bifasico y % Resistencia de la inductancia del rotor (Bifasico y J = 0.089; cfv = 0; P = 4; Np = P/2; TL = 25; % Inercia del rotor y de la carga % Coeficiente de friccion viscosa % Numero de polos % Número de pares de polos % Par de carga Vs = 400; frecp = 1000; fi = 2*pi/3; % Amplitud de la SPWM % Frecuencia de la portadora triangular % Desfasamiento de 120º alfa = Rr/Lr; sigma = 1-(M*M)/(Ls*Lr); beta = M/(sigma*Ls*Lr); gama = (Lr*Lr*Rs + M*M*Rr)/(sigma*Ls*Lr*Lr); miu = (Np*M)/(J*Lr); switch flag, %%%%%%%%%%%%%%%%%% % Inicialización % %%%%%%%%%%%%%%%%%% case 0, [sys,x0,str,ts]=mdlInitializeSizes(J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,V s); %%%%%%%%%%%%%%% % Derivadas % %%%%%%%%%%%%%%% case 1, sys=mdlDerivatives(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs); %%%%%%%%%%% % Salidas % %%%%%%%%%%% case 3, sys=mdlOutputs(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs); %%%%%%%%%%%%%%%%%%% % Unhandled flags % %%%%%%%%%%%%%%%%%%% case { 2, 4, 9 }, sys = []; %%%%%%%%%%%%%%%%%%%% % Unexpected flags % %%%%%%%%%%%%%%%%%%%% otherwise error(['Unhandled flag = ',num2str(flag)]); end %========================================================================% mdlInitializeSizes % Tamaños, condiciones iniciales, y tiempos de muestreo para la función-S. %======================================================================== 105 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. function [sys,x0,str,ts]=mdlInitializeSizes(J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,V s) sizes = simsizes; sizes.NumContStates = 9; sizes.NumDiscStates = 0; sizes.NumOutputs = 5; sizes.NumInputs = 2; sizes.DirFeedthrough = 0; sizes.NumSampleTimes = 1; sys = simsizes(sizes); x0 = [0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09]'; str = []; ts = [0 0]; %========================================================================% mdlDerivatives % Derivadas para los estados continuos. %======================================================================== function sys=mdlDerivatives(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs) % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % ========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % ========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % %condicion de devilitamiento de campo. phid = (sqrt(phira^2 + phirb^2)); rho = x(9); % id = (phira*isa + phirb*isb)/phid; % iq = (phira*isb - phirb*isa)/phid; abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. idq = abTdq*[isa;isb]; isd = idq(1); isq = idq(2); % ================================= % % Ley de Control de Campo Orientado % % ================================= % ud = sigma*Ls*(u(1) - alfa*beta*phid - Np*x(7)*isq - alfa*M*isq*isq/phid); uq = sigma*Ls*(u(2) + beta*Np*x(7)*phid + Np*x(7)*isd + alfa*M*isq*isd/phid); % =============================== % % Transformacion de 'udq' a 'uab' % % =============================== % abTdq = [ cos(rho) sin(rho); -sin(rho) cos(rho)]; uaub = inv(abTdq)*[ud;uq]; ua = uaub(1); ub = uaub(2); % ================================ % % Transformacion de 'uab' a 'Vabc' % % ================================ % uabc = inv(Ks2)*[ua;ub;0]; Va = uabc(1); % Voltaje de ref. en la fase A Vb = uabc(2); % Voltaje de ref. en la fase B Vc = uabc(3); % Voltaje de ref. en la fase C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Rutina para formar la portadora triangular % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% c=floor((frecp*4)*t); % Contador if t>=0/(frecp*4) & t<1/(frecp*4) trian=t*(frecp*40); elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==1 trian=-t*(frecp*40)+c*10+10; elseif t>=c/(frecp*4) & t<(c+1)/(frecp*4) & mod(c,2)==0 trian=t*(frecp*40)-c*10; end cc=floor((frecp*2)*t); if mod(cc+1,2)==0 trian=-trian; end trian = trian*60; % Otro contador %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Rutina para formar el voltaje de alimentacion % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if Va>trian Vg1=Vs; elseif Va<=trian Vg1=0; end if Vb>trian Vg2=Vs; elseif Vb<=trian Vg2=0; end 107 ANEXO 2. SISTEMA DE PROPULSIÓN DE UN HEV. if Vc>trian Vg3=Vs; elseif Vc<=trian Vg3=0; end Vab = Vg1-Vg2; Vbc = Vg2-Vg3; Vca = Vg3-Vg1; Vabc = [Vab;Vbc;Vca;0;0;0]; %matriz para la alimetacion del sistema dq. Vabcdq = [Vab;Vbc;Vca]; Vab = Ks2*Vabcdq; Vdq = abdqTab*[Vab(1);Vab(2)]; Vud = Vdq(1); Vuq = Vdq(2); % Vabc = [Va;Vb;Vc;0;0;0]; %aplocaremos la matriz de transformacion para tener los voltajes de %alimentacion para el motor en dq. % =========================== % % Modelado del MIJA Trifasico % % =========================== % LS = [Lls+Lsm -0.5*Lsm -0.5*Lsm; -0.5*Lsm Lls+Lsm -0.5*Lsm; -0.5*Lsm -0.5*Lsm Lls+Lsm]; LR = [Llr+Lrm -0.5*Lrm -0.5*Lrm; -0.5*Lrm Llr+Lrm -0.5*Lrm; -0.5*Lrm -0.5*Lrm Llr+Lrm]; LSR = Lsr*[ cos(x(8)) cos(x(8)+fi) cos(x(8)-fi); cos(x(8)-fi) cos(x(8)) cos(x(8)+fi); cos(x(8)+fi) cos(x(8)-fi) cos(x(8)) ]; dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; LRS = LSR'; L = [LS,LSR;LRS,LR]; R = [Rs 0 0 0 0 0; 0 Rs 0 0 0 0; 0 0 Rs 0 0 0; 0 0 0 Rr 0 0; 0 0 0 0 Rr 0; 0 0 0 0 0 Rr ]; dL = -Lsr*[ 0 0 0 sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); 0 0 0 sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); 0 0 0 sin(x(8)+fi) sin(x(8)-fi) sin(x(8)); sin(x(8)) sin(x(8)-fi) sin(x(8)+fi) 0 0 0; sin(x(8)+fi) sin(x(8)) sin(x(8)-fi) 0 0 0; sin(x(8)-fi) sin(x(8)+fi) sin(x(8)) 0 0 0 ]; ANEXO 2 PROGRAMAS UTILIZADOS EN LA TESIS. B = R+dL*Np*x(7); sys(1:6) = inv(L)*(-B)*x(1:6)+inv(L)*Vabc; % Seis ecs. difs. para el subsistema electrico Top = (0.023*(isa^2))+(3.2e-15*isa)-(7.2e-14)+21; % Par optimizado Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); % Ec. del Par electromagnetico sys(7) = (1/J)*(Te-cfv*x(7)-TL); % Ec. de la velocidad sys(8) = Np*x(7); % Ec. de la posicion sys(9) = Np*x(7) + alfa*M*isq/phid; % Rho sys(10) = (1/J)*(Top); %ec velocidad con par optimizado %========================================================================% mdlOutputs % Bloques de salida. %======================================================================== function sys=mdlOutputs(t,x,u,J,TL,P,Np,Ls,Lr,M,Rs,Rr,Lsm,Lrm,Lls,Llr,Lsr,fi,cfv,alfa,sigma,beta,gama,miu,frecp,Vs) %global Vs % =========================================== % % Transformacion de corrientes 'abc' a 'abdq' % % =========================================== % Ks2 = (2/3)*[ 1 -1/2 -1/2; 0 sqrt(3)/2 -sqrt(3)/2; 1/2 1/2 1/2]; isab = Ks2*[x(1);x(2);x(3)]; isa = isab(1); isb = isab(2); irdq = Ks2*[x(4);x(5);x(6)]; ird = irdq(1); irq = irdq(2); % =========================================== % % Transformacion de corrientes 'abdq' a 'ab' % % =========================================== % delta=x(8); abdqTab=[ cos(delta) -sin(delta); sin(delta) cos(delta)]; irab = abdqTab*[ird;irq]; ira = irab(1); irb = irab(2); phira = M*isa + Lr*ira; phirb = M*isb + Lr*irb; % ================================================= % % Transformacion de flujos y corrientes 'ab' a 'dq' % % ================================================= % phid = (sqrt(phira^2 + phirb^2)); % ============================ % % Ec. del Par Electromagnetico % % ============================ % dLSR = -Lsr*[ sin(x(8)) sin(x(8)+fi) sin(x(8)-fi); sin(x(8)-fi) sin(x(8)) sin(x(8)+fi); sin(x(8)+fi) sin(x(8)-fi) sin(x(8)) ]; Te = (P/2) * (x(1:3)') * dLSR * (x(4:6)); Top = (0.023*(isa^2))+(3.2e-15*isa)-(7.2e-14)+(TL-4); % Par optimizado. sys = [x(7),Te,phid,isa,Top]'; 109 BIBLIOGRAÍA. BIBLIOGRAFÍA. [Ang, 95] Ang S. S, “Power – Switching Converters”; Univertity of Arkansas, 1995. [Benlyazid, 98] Benlyazid K; “Hybrid Electric Automobile”; University of Sout Carolina, VTB Annual Review, june 1998. [Bose, 87] Bose B. K; “Power Electronics And AC Company, 1987. [Bose, 02] Bose B. K; “Moder Power Electronics And AC Drivers”; The University of Tennessee, Knoxville; 2002, Cap. 8, Pags. 333 – 355. [Carrasco, 00] Carrasco, G.; Galimberti, P.; Barral, J.; "Desarrollo de componentes de sistemas fotovoltaicos para simulación bajo distintas condiciones climáticas"; Revista Averma, Vol. 4, Año 2000. [Chan, 2002] Chan C. C; “The state of the art of Electric and Hybrid Vehicles”; Proceedings of the IEEE, Vol. 90, No. 2, February 2002, University of Hong Kong. [Chang, 00] Chang G. W; Gerardo E; Ortega R; “Tuning Rules for the PI Gains of Field – Oriented Controllers of Induction Motors”; IEEE Transactions on Industrial electronics, Vol. 74, No. 3, June 2000. [Copetti, 94] Copetti J.B; Chenlo F; “Lead/acid batteries for photovoltaic applications. Test results and modelling”; CIEMA, Instituto de Energías Renovables (españa), 1994. [D’Attellis, 92] D’Attellis C. E; “Introducción a los Sistemas No Lineales de Control y sus Aplicaciones”; 1ª edición, Argentina, AADECA, 1992. [Diana,89] Diana G; “An Aid For Teaching Fiel Oriented Control Applied to Induction Machines”; University of Natal, 1989. [Dinapoli, 02] Dinapoli A; Crescimbini F; Guilii C. F; Solero L; “Control strategy for multiple input DC-DC power converters devoted to hybrid vehicle propulsion systems”; Industrial Electronics, 2002. ISIE 2002. Proceedings of the 2002 IEEE International Symposium on ,Vol. 3 , 2629 May 2002 . [Espinosa,93] Espinosa G; “Control No Lineal de Motores de Inducción”; Tesis Maestría, UNAM, México, D.F., Diciembre 1993, 113H. [Espinosa, 98] Espinosa G; Chang G. W; Ortega R; “On Field – Oriented Control of Induction Motors: Tuning of the PI Gains for Performance Enhancement”; Conference on Decision & Control, 1998. Drivers”; General Electric BIBLIOGRAFÌA. [Fossas, 96] Fossas E; Gerard O; “Study of Chaos in the Buck Converter”; IEEE Transactions on Circuits and Systems. Vol. 43, No. 1, January 1996. [Guerrero, 94] Guerrero R. G; “Modelado y Simulación de un Sistema Impulsor de Motores de Inducción Trifásico”; Tesis Maestría, Cenidet, Cuernavaca, Mor., Junio 1994. [Hernandez, 97] Hernandez J. A; Parra H; Alvarez G; Alarcon R. L; “ A neural Network Structure and Learning Algorithm for Control of Dynamic Systems”; The Second Joint México-US International Workshop on Neural Networks and Neurocontrol, Playa del Carmen, Q. R. 19 – 29 Agosto de 1997. [Isidori,89] Isidori A; “Nonlinear Control Systems”, Second Edition, New York, Springer-Verlag, 1989. [Jahns 01] Jahns T., Blasko V. , “Recent Advances in Power Electronics Technology for Industrial and Traction Machine Drives”, Proc. IEEE Vol 89, No. 6, pp 963 – 975, junio 2001. [Khan, 94] Khan I. A; “DC-to-DC converters for electric and hybrid vehicles”; Power Electronics in Transportation, 1994. Proceedings , 20-21 Oct. 1994, pag. 113-122. [Khan, 99] Khan I. A; “Battery Chargers For Electric and Hybrid Vehicles”; General Motors Corporation, 1999. [Kleimaier, 00] Kleimaier A; Schroder D; “Optimization strategy for design and control of a hybrid vehicle”; Advanced Motion Control, 2000. Proceedings. 6th International Workshop on , 30 March-1 April 2000 Pages:459 – 464. [Kosow, 72] Kosow I. L; “Máquinas elécricas y Transformadores”; Ed. Reverté, s.a., Versión español, 1972. [Krause, 95] Krause P. C; Wasynczuk S. D; Sudhoff; “Analysis of Electric Machinery”; reimpresión de la 1ª edición, New York, IEEE PRESS, 1995. [Krein, 93] Krein P. T; Disilvestro F; “Comparative Análisis of Scalar an Vector Control Methods for Induction Motors”; University of Illinois, 1993. [Ma, 92] Ma K., “A novel Uninterruptible DC –DC Converter for UPS aplications”; IEEE Transactions on Industry Applications, Vol. 28, No.4, July/August 1992. 111 BIBLIOGRAÍA. [Marino, 93] Marino R; Peresada S; Valigi P; “Adaptive Input – Output Linearizing of Inductions Motors”; IEEE Transaction on Automatic Control, Vol. 38, No. 2, Feb 1993. [Méndez, 01] Méndez B; “Controladores de Motores de Inducción: un análisis comparativo”; Tesis Maestría, Cenidet, Cuernavaca, Mor., Marzo 2001. [Miller, 03] Miller J. M; “Power Electronics in Hybrid Electric Vehicle”; PE, PHD, 2003. [Ong,98] Ong C. M; “Dynamic Simulation of Electric Machinery”; using MATLAB/SIMULINK, 1ª Edition, Indiana, Prentice Hall PTR, 1998. [Rashid, 93] Rashid M. H; “Electrónica de Potencia”; Segunda edición. Ed PHH, 1993. [Sen, 89] Sen P. C; “Principles of Electric Machines and Power Electronics”; Ed Wiley, 1989. [Simulink, 02] Simulink, Dynamic Systems Simulation for Matlab. “Writing S-functions”. Manual del usuario. The Math Works Inc., 2002. [Ta, 2001] Ta C. M; Hori, Y; ”Convergence improvement of efficiency-optimization control of induction motor drives”; Industry Applications, IEEE Transactions on , Vol. 37, Issue: 6, Nov.-Dec. 2001 Pages: 1746 – 1753 [Vas, 98] Vas P; “Sensorless Vector and Direct Torque Control;, University of Aberdeen, 1998. [Xu, 2001] Xu D; Zhu D; Wu B; “High performance induction motor drive with optimized excitation current control”; Industry Applications Conference, 2001. Thirty-Sixth IAS Annual Meeting. Conference Record of the 2001 IEEE , Vol. 3 , 30 Sept.-4 Oct. 2001. Pages:1673 - 1678 vol.3 [Zhang, 96] Zhang Z.; Profumo F.; Tenconi A.; “Improved design for electric vehicle induction motors using an optimisation procedure”; Electric Power Applications, IEE Proceedings- , Vol.143 , Issue: 6 , Nov. 1996. Pages: 410 – 416 [Zubizarreta, 99] Zubizarreta 0. A; Cuesta P; Martín J; “Electric And Hybrid Vehicles: An Overview of the Benefits”, Challenges, and Technologies; http://www.rqriley.com/ev-tech.html, Junio del 99.