UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA DISEÑO DE UN REGULADOR DE VELOCIDAD DE MÁQUINAS DE CORRIENTE CONTINUA DE EXCITACIÓN INDEPENDIENTE Autor: Salas Díaz, Enrique. Director: Frías Marín, Pablo. Entidad Colaboradora: ICAI – Universidad Pontificia Comillas. RESUMEN DEL PROYECTO Introducción La máquina de corriente continua aparece por primera vez a principios de siglo XIX y se convierte en una de las más versátiles aplicadas al mundo industrial. La mayor ventaja que presenta es la capacidad para controlar su posición, su par y también, su velocidad. Es por esto que se trata de una buena elección a la hora de controlar o automatizar cualquier tipo de proceso. Su habilidad para poder variar la velocidad desde situación de vacío hasta situación de carga es considerada como uno de sus principales características. Aunque los avances en electrónica de potencia ha incrementado el uso de máquinas de corriente alterna en detrimento del uso del motor de corriente continua, la flexibilidad que ofrece, hace que siga empleándose en una amplia gama de aplicaciones industriales, como es el caso del metro de Madrid o los trenes de RENFE. Existen diferentes tipos de máquinas de corriente continua en función de las diferentes maneras en las que el estator puede ser excitado, pero el objetivo de este proyecto se centra en el diseño de un regulador de velocidad de un motor de corriente continua de excitación independiente. A lo largo de este documento se expondrán las diferentes formas existentes de regular la velocidad de dicha máquina y se especificará el control seleccionado. De esta forma, el sistema de control de velocidad de lazo cerrado en el que será la tensión inducida en el rotor la que se modificará mediante modulación de ancho de pulso (PWM) manteniendo fija la intensidad de excitación del estator. UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA Figura 1 Configuración típica de un motor DC de excitación independiente El control de velocidad variando la tensión del inducido y manteniendo constante la intensidad de excitación en su valor nominal, es la forma más común de regular la velocidad de un motor de corriente continua. Esto se debe a que, en este caso, la velocidad es directamente proporcional a la tensión de inducido y por tanto, ante pequeñas variaciones de tensión la velocidad varía en una proporción similar. Es por esto que se descartó el control de velocidad regulando la excitación del estator ya que, a pesar de ser la opción más económica, ante cambios bruscos en el valor de la intensidad de excitación la máquina podría embalarse. Simplificando el esquema anterior se tiene que: Figura 2 Esquema simplificado Y se obtiene que, efectivamente, la velocidad será proporcional a la tensión de inducido: ∗ ∗ ∗ ∗∗ UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA Descripción General del Control de Velocidad. El regulador de velocidad se basará en un sistema de control realimentado de forma que la estabilidad y la respuesta dinámica del mismo no se vean afectadas ante cualquier perturbación. Control Stage (Arduino) Wref PWM Signal Power Stage ωm Udc DC Motor Fitting-out Circuit ωm Fitting-out Circuit Idc Fitting-out Circuit Udc Measure Stage Figura 2 Diagrama de bloques del regulador de velocidad A continuación se detallarán brevemente el funcionamiento del control de velocidad seleccionado, el cual se dividirá en tres etapas diferentes. Estas etapas se corresponden con: la etapa de medida, la etapa de potencia y la etapa de control. Etapa de medida: Como puede verse en el esquema anterior, la etapa de medidas consta de tres magnitudes diferentes que deberán ser controladas, estas son: tensión de inducido, velocidad del motor e intensidad de excitación. • Medida de la tensión de inducido: el conocimiento de su valor será imprescindible, ya que se trata de la variable que se modificará para obtener la velocidad deseada. Se espera una alimentación de hasta 250V, por tanto, será necesario un divisor de tensión para adaptar dichos valores a los apropiados para las entradas analógicas del microprocesador. • Medida de la velocidad: la velocidad no se trata de una magnitud que pueda medirse directamente. Por tanto, se acoplará un tacómetro al eje del UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA motor que convertirá la energía de rotación del mismo en una señal de tensión continua de valor 15 V por cada 1000 rpm. Los valores esperados superan los 5 V, y es por esto que otro divisor de tensión será diseñado. • Medida de la intensidad de excitación: se tratará de una medida de control, ya que la constante de proporcionalidad de la que depende el control requiere que su valor se mantenga siempre en el nominal. Etapa de potencia: Se trata del nexo de unión entre el motor y las instrucciones enviadas por Arduino. Se empleará un driver de medio puente en H que activará la puerta de un transistor IGBT con el que se modulará el ancho de pulso de la señal PWM enviada por el microprocesador. Etapa de Control: En esta última etapa se implementará un control PI de forma que el valor medido de velocidad deberá cambiar de forma que sea igual al valor de velocidad deseado. Se ajustará la tensión del rotor de forma que el error existente entre ambos valores de velocidad se ajusten. Diseño del Hardware La construcción del sistema de control se realizó en una placa de Arduino Mega 2560. En ella se emplearon una serie de entradas analógicas para la lectura de las medidas de tensión, velocidad e intensidad (A0, A8, A10). Además, se empleó un pin digital con generador de señal PWM para enviar dicha señal al driver, y a contuniación al motor. Otras salidas digitales se han definido ya que eran necesarias para medir el período de trabajo de la señal PWM y activar la puerta del IGBT. Diseño del Software El diseño del software se corresponde con la implementación del código tanto de medida como del control PI. Este código será escrito empleando el software de Arduino y apoyándose en el uso de una librería PID para el desarrollo de la etapa de control. A lo largo del documento se detallan las diferentes etapas realizadas. Resultados y conclusiones La consecución de los objetivos se evaluará dependiendo del funcionamiento de cada uno de los tres módulos que se comentaron anteriormente. Etapa de medida: UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA • Medida de la tensión de inducido: debido a problemas con la activación de la salida superior del driver, la medida de tensión se realizó como la resta entre la tensión de alimentación y el valor medio obtenido de la señal del PWM. Como resultado, la medida de tensión resultó satisfactoria, aunque se podría haber conseguido una señal de PWM más “limpia”. Se propondrán mejoras a este problema. • Medida de la velocidad: se reconocía perfectamente la tensión de continua enviada por el tacómetro instalado en el motor. Único módulo que pudo probarse con el prototipo del motor. Se puede concluir que ante variaciones de tensión, la medida respondía adecuadamente. • Medida de la intensidad de excitación: finalmente hubo que conformarse con controlar su valor mediante un amperímetro ya que el transductor de efecto Hall daba errores de sensibilidad. Etapa de potencia: Cumplió a la perfección con su función, la de nexo de unión entre microprocesador y motor. El único inconveniente fue no poder activar la salida superior del driver de forma que la medida de tensión hubiera sido mejor. Aun así, puede concluirse que el objetivo de esta etapa fue sobradamente cumplido. Etapa de Control: Finalmente esta etapa sólo pudo probarse en etapa experimental alimentando con fuentes de tensión independientes, simulando la tensión de alimentación y la tensión enviada por el tacómetro. Es por esto que no pudo comprobarse como variaba la velocidad conforme se modificaba el “duty cycle” de la señal PWM. Lo que sí pudo constatarse fue la respuesta del control PI ante los cambios de valor de la referencia. En ese aspecto el control cumplió con su objetivo ya que en función del valor de la referencia se variaba el valor medio de la señal PWM para ajustarse a dicho valor. Otras conclusiones así como futuros desarrollos que son posibles tomando este proyecto como base han sido expuestas en este documento. UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA DESIGN OF A SPEED REGULATOR OFTHE INDEPENDENT EXCITATION DC MOTORS ABSTRACT Introduction The direct current machines were developed in XIX century. The most adaptable machine of the industrial world presents its ability to control the position, the motor torque and even, the speed, as its biggest benefit. That is why the DC motor has become in a good option to control and automatize industrial processes. The main feature of these machines is the capability to regulate the speed from no-load situation to full-load one. Despite being the most flexible motor and applying in a great variety of industrial processes, the development of power electronics has reduced the DC motor uses in favour of alternating current machines. However, this mechanism is still used in transporting world, for instance, in Madrid Metro and RENFE trains. This project focuses on the speed controller of an independent excitation DC motor, although other different ways to excite the DC machines exist. Along this report, different kind of speed regulators will be explained but finally, the chosen controller will be specified. In this way, the feedback control system basses on the induced voltage variation by PWM technique will be detailed. Figure 3 Typical of an independet excitación DC motor scheme. The induced voltage controller of the DC motor is the most common way of regulating the speed of the machine. This controller consists on modifying the induced voltage value to reach the desired speed. In addition, the nominal value of the excitation current has to be kept constant. Despite being the most common controller, it also presents less difficulties to control the motor speed than the excitation current controller because the speed variation is less aggressive and over-speeding situations UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA are decreased. That is way induced voltage controller has been chosen instead of the excitation current one. The simplification of the last scheme is shown below: Figure 2 DC motor scheme simplifications Finally, it is concluded that the motor speed depends on the induced voltage, as it is shown in the next expression: ∗ ∗ ∗ ∗∗ General Descipcion of the Speed Controller. The designed speed regulator consists of a closed loop system in order to avoid different stability and dynamic response issues. Wref Control Stage (Arduino) PWM Signal Power Stage ωm Udc DC Motor Fitting-out Circuit ωm Fitting-out Circuit Idc Fitting-out Circuit Udc Measure Stage Figure 3 Speed controller, Block Diagram UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA The three main blocks of the speed regulator will be analysed below, detailing their most important features. Measurement Layer: The measuring module includes the reading of three different magnitudes: induced voltage, DC motor speed and the excitation current of the stator. • Induced voltage measure: knowing its value is essential to develop the regulator. The speed controller is based on the variation of its value in order to reach the desired speed. The DC supply system reaches a voltage up to 250 V, therefore, resistor divider will be necessary to suit the measure for the Arduino microprocessor reading. • Speed measure: the speed cannot be directly measured. That is why the assembly of a tachometer is necessary to convert the rotational energy into a direct current voltage value. This value will be higher than 5 V which is the voltage limit of the Arduino analogical entrances. The tachometer relation is 15 V for each 1000 rpm. • Measuring of the excitation current: this measure is necessary to control that the DC motor is working its nominal nominal value. This measure must be controlled because the proportionality constant of the induced voltage controller depends on this value. Power Layer: This module acts like a connector between the microprocessor board and the DC motor. A half-bridge driver will be employed to activate the gate of an IGBT transistor. This device will modulate the duty cycle of the PWM signal which is sent by Arduino Mega 2560. Control Layer: The PI controller will be developed at this stage. The main objective of it is to reach the desired speed by modifying the induced voltage of the DC motor. The PI parameters adjust the duty cycle of the PWM to modify the mentioned voltage. Hardware The construction of the control system was done on an Arduino Mega 2560 board. Three analogic entrances were employed (A0, A8, A10) to do the Arduino reading of the three variables which were mentioned before. Moreover, digital pin with PWM output to send this signal to the driver, thereafter to the machine, was used. Complementary digital pins will select to measure the period of PWM signal and to active the IGBT gate. UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA Software The software design corresponds with the implementation of the measurement and control source codes. This code is completely programmed with Arduino software and implemented by phases, according to the control process divided in layers as described. Besides, PID Arduino library was used to the development of this stage. Results and conclusions The achievement of every objective has been examined according to the operation of the layers previously described. Measurement Layer: Induced voltage measure: different issues, which are explained along the document, with the higher driver output cause that the measure was made as the difference between DC voltage supply and the average voltage value of the PWM signal. As a result, it is possible to conclude that this module satisfactorily works. Measuring of the speed: the dc voltage signal sent by the tachometer was perfectly fitted. This is the only stage which could be tested with the DC motor prototype. Speed measure response was successfully tested in presence of voltage variations. Measuring of excitation current: finally this value could not be controlled by the Arduino Mega because the chosen Hall Effect transducer shew produced a sensibility error. Power Layer: Its linker function between Arduino Mega and the DC motor was carried out in a satisfactory way. The main issue was the no-activation of the higher driver output in order to control the voltage in a most logical way. In addition, this disadvantage makes the measurement layer less precise. Control Layer: This stage could only be tested in an experimental way. The DC voltage supply was simulated by an independent direct current voltage feeder. The the tachometer voltage was also simulated with the same process. That is why the speed did not vary in presence of induced voltage variation. The PI controller response when the reference was modified could be confirmed. That means that the duty cycle was adjusted to reach the desired induced voltage in an appropriate way. More conclusions and some interesting future developments are available in Chapter 7.