7
Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, Valencia ISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC) DISE ˜ NO E IMPLEMENTACI ´ ON DE UN CONTROLADOR PREDICTIVO PARA MOTORES BLDC Diego P´ erez Losada [email protected] Joaqu´ ın L´ opez Fern´ andez, Mar´ ıa Santos Fern´ andez [email protected], [email protected] Resumen En este art´ ıculo se presenta el dise˜ no e implemen- taci´ on de un controlador predictivo basado en mo- delo (MPC) para el control en velocidad de moto- res brushless de corriente continua (BLDC). Los motores BLDC presentan algunas caracter´ ısti- cas que dificultan su utilizaci´ on como tracci´ on el´ ectrica de robots m´ oviles en lugar de los habitua- les con escobillas. Es necesario disponer de etapas de potencia y control m´ as sofisticadas que, a˜ nadi- das al mayor coste de fabricaci´ on, incrementan notablemente el coste de las soluciones basadas en motores BLDC. Con este trabajo se predende aprovechar una de las caracter´ ısticas de los motores BLDC con el fin de evitar el uso de un encoder para medir la veloci- dad de rotaci´ on, lo cual representa un notable aho- rro en los motores de media potencia utilizados en rob´ otica m´ ovil. La soluci´ on obtenida se ha aplica- do en el dise˜ no y fabricaci´ on de dos robots m´ oviles para aplicaciones diferentes, BellBot y WatchBot. Palabras clave: Control predictivo, MPC, motor brushless, PID, m´ odulo CAN. 1. INTRODUCCI ´ ON En el ´ ambito de la rob´ otica, el control de motores es un campo de mejora continua, donde las solu- ciones ya implantadas y probadas evolucionan en paralelo con la tecnolog´ ıa utilizada, tanto en los propios motores como en los dispositivos de con- trol. La introducci´ on en el mercado de nuevas so- luciones t´ ecnicas de motores y la mejora de las ya existentes conllevan el replanteamiento de la solu- ci´ on tecnol´ ogica m´ as adecuada para la creaci´ on de nuevos robots o plataformas m´ oviles. Uno de los par´ ametros m´ as importantes, como me- dida comparativa de la soluci´ on obtenida, es la densidad de potencia del conjunto, es decir, la re- laci´ on entre la potencia necesaria par cumplir con las especificaciones funcionales y el volumen del conjunto utilizado. En este aspecto, los motores de corriente cont´ ınua sin escobillas (BLDC) presen- tan importantes ventajas respecto a los conven- cionales de corriente continua (DC) debido a su reducido volumen y sus elevadas prestaciones en velocidad, lo que permite utilizar mayores relacio- nes de reducci´ on, a˜ nadido al bajo mantenimiento que necesitan. El mayor inconveniente que presentan es su coste, puesto que est´ a por encima de los motores equi- valentes de corriente continua con escobillas. Una forma de paliar esta desventaja es evitar la instala- ci´ on de un encoder en el eje del motor para medir su velocidad de rotaci´ on, puesto que el coste del encoder puede suponer entre un 15 y un 25 % del coste de un motor de media potencia. Los motores BLDC disponen de sensores de efecto Hall instala- dos en el est´ ator para conocer la posici´ on del rotor en cada instante, pero su uso para determinar la velocidad de rotaci´ on instant´ anea presenta algu- nos inconvenientes si se pretende aplicar un con- trolador PID de elevada frecuencia como los que se vienen utilizando con los motores DC, debido a la baja resoluci´ on de la velocidad medida. Otros autores han enfocado el control de motores BLDC desde otro punto de vista, como es el de utilizar la medida de la fuerza contraelectromotiz (BEMF) [6] [8] sobre las tres fases para determinar con mayor exactitud la posici´ on del rotor [3]. En este art´ ıculo se parte de un motor que ya contine sensores Hall para la detecci´ on de la posici´ on del rotor, siendo la soluci´ on comercial habitual para motores de mediana potencia. En lo referente a la estrategia de control utilizada, existen abundantes soluciones basadas en regula- dores PID, con implementaciones y optimizacio- nes de todo tipo [2], en la mayor´ ıa de los casos aplicadas a motores DC [4] pero tambi´ en con so- luciones orientadas a BLDC [15]. En lo referen- te a la utilizaci´ on conjunta de control predictivo y reguladores PID, existen estudios previos como los presentados en [7] o en [13], donde se realiza un an´ alisis sobre la viabilidad de aplicar control predictivo generalizado (GPC) para el control de motores sin escobillas. A diferencia de esta ´ ulti- ma aproximaci´ on, en este art´ ıculo se presenta un controlador que hace uso de un modelo MPC con- juntamente con un regulador PID, de modo que

diseño e implementación de un controlador predictivo para motores

  • Upload
    lykhanh

  • View
    224

  • Download
    0

Embed Size (px)

Citation preview

Page 1: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

DISENO E IMPLEMENTACION DE UN CONTROLADORPREDICTIVO PARA MOTORES BLDC

Diego Perez [email protected]

Joaquın Lopez Fernandez, Marıa Santos [email protected], [email protected]

Resumen

En este artıculo se presenta el diseno e implemen-tacion de un controlador predictivo basado en mo-delo (MPC) para el control en velocidad de moto-res brushless de corriente continua (BLDC).

Los motores BLDC presentan algunas caracterısti-cas que dificultan su utilizacion como traccionelectrica de robots moviles en lugar de los habitua-les con escobillas. Es necesario disponer de etapasde potencia y control mas sofisticadas que, anadi-das al mayor coste de fabricacion, incrementannotablemente el coste de las soluciones basadas enmotores BLDC.

Con este trabajo se predende aprovechar una delas caracterısticas de los motores BLDC con el finde evitar el uso de un encoder para medir la veloci-dad de rotacion, lo cual representa un notable aho-rro en los motores de media potencia utilizados enrobotica movil. La solucion obtenida se ha aplica-do en el diseno y fabricacion de dos robots movilespara aplicaciones diferentes, BellBot y WatchBot.

Palabras clave: Control predictivo, MPC, motorbrushless, PID, modulo CAN.

1. INTRODUCCION

En el ambito de la robotica, el control de motoreses un campo de mejora continua, donde las solu-ciones ya implantadas y probadas evolucionan enparalelo con la tecnologıa utilizada, tanto en lospropios motores como en los dispositivos de con-trol. La introduccion en el mercado de nuevas so-luciones tecnicas de motores y la mejora de las yaexistentes conllevan el replanteamiento de la solu-cion tecnologica mas adecuada para la creacion denuevos robots o plataformas moviles.

Uno de los parametros mas importantes, como me-dida comparativa de la solucion obtenida, es ladensidad de potencia del conjunto, es decir, la re-lacion entre la potencia necesaria par cumplir conlas especificaciones funcionales y el volumen delconjunto utilizado. En este aspecto, los motores decorriente contınua sin escobillas (BLDC) presen-

tan importantes ventajas respecto a los conven-cionales de corriente continua (DC) debido a sureducido volumen y sus elevadas prestaciones envelocidad, lo que permite utilizar mayores relacio-nes de reduccion, anadido al bajo mantenimientoque necesitan.

El mayor inconveniente que presentan es su coste,puesto que esta por encima de los motores equi-valentes de corriente continua con escobillas. Unaforma de paliar esta desventaja es evitar la instala-cion de un encoder en el eje del motor para medirsu velocidad de rotacion, puesto que el coste delencoder puede suponer entre un 15 y un 25 % delcoste de un motor de media potencia. Los motoresBLDC disponen de sensores de efecto Hall instala-dos en el estator para conocer la posicion del rotoren cada instante, pero su uso para determinar lavelocidad de rotacion instantanea presenta algu-nos inconvenientes si se pretende aplicar un con-trolador PID de elevada frecuencia como los quese vienen utilizando con los motores DC, debido ala baja resolucion de la velocidad medida.

Otros autores han enfocado el control de motoresBLDC desde otro punto de vista, como es el deutilizar la medida de la fuerza contraelectromotiz(BEMF) [6] [8] sobre las tres fases para determinarcon mayor exactitud la posicion del rotor [3]. Eneste artıculo se parte de un motor que ya continesensores Hall para la deteccion de la posicion delrotor, siendo la solucion comercial habitual paramotores de mediana potencia.

En lo referente a la estrategia de control utilizada,existen abundantes soluciones basadas en regula-dores PID, con implementaciones y optimizacio-nes de todo tipo [2], en la mayorıa de los casosaplicadas a motores DC [4] pero tambien con so-luciones orientadas a BLDC [15]. En lo referen-te a la utilizacion conjunta de control predictivoy reguladores PID, existen estudios previos comolos presentados en [7] o en [13], donde se realizaun analisis sobre la viabilidad de aplicar controlpredictivo generalizado (GPC) para el control demotores sin escobillas. A diferencia de esta ulti-ma aproximacion, en este artıculo se presenta uncontrolador que hace uso de un modelo MPC con-juntamente con un regulador PID, de modo que

Page 2: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

se puede actuar sobre el motor con informacionparcial sobre la velocidad de rotacion.

La organizacion del artıculo es la siguiente: a con-tinuacion se realiza una descripcion detallada delproblema abordado y en la siguiente seccion se ha-ce un breve analisis teorico del MPC. En la seccion4 se analiza la obtencion del modelo del sistemay en la seccion 5 se presenta la implementacionrealizada. Por ultimo se realiza un analisis sobrelos resultados en la seccion 6 para finalizar con lasconclusiones obtenidas.

2. DESCRIPCION

En este trabajo se pretende disenar e implementarun controlador PID predictivo basado en mode-lo (MPC) para el control de motores de corrientecontinua sin escobillas (BLDC).

Los motores de corriente continua que se utilizanhabitualmente, como solucion a la traccion electri-ca en robots y plataformas moviles, estan siendosustituidos por nuevos motores sin escobillas quepresentan notables ventajas, como su reducido pe-so, su elevada velocidad y su menor mantenimien-to. Los motores DC se instalan con encoders paramedir la velocidad de rotacion del eje del motor,o en algunos casos del eje de salida de la reducto-ra. En el caso de los motores sin escobillas, existela posibilidad de disponer de informacion senso-rial prescindiendo de un encoder, que encarece demanera notable el conjunto motor-reductora.

Los motores BLDC disponen de un determinadonumero de polos que depende de las caracterısti-cas electricas y de diseno, pero que en todo casotienen una relacion directa con la potencia y lavelocidad. Los motores pequenos de elevadas re-voluciones suelen disponer de un solo par de po-los, pero al incrementar la potencia de salida tam-bien se incrementan los pares de polos. Para lasituacion que se aborda en este artıculo se dis-pone de un motor con tres pares de polos. Parahacer girar el rotor es necesario ir conmutando laactuacion sobre los diferentes polos situados en elestator para provocar la rotacion del eje, siendonecesario conocer la posicion del mismo en cadainstante. Para ello, se dispone de tres sensores deefecto Hall que permiten conocer la posicion delrotor con una precision π/n donde n representa elnumero de pares de polos.

La utilizacion de los sensores Hall para medir lavelocidad de rotacion del eje plantea algunos pro-blemas, como son la imprecision en la medida y labaja resolucion. En este artıculo se aborda el pro-blema de la resolucion alcanzada cuando se traba-ja con controladores a una frecuencia de 100Hz,que se corresponde con un periodo de muestreo

T = 10ms. La velocidad mınima detectada a estafrecuencia es la indicada en la ecuacion (1) quepara tres pares de polos implica una deteccion develocidad mınima superior a los 100rad/s.

ωmin =π

nT(1)

Para evitar esta situacion, se pretende utilizar con-trol predictivo basado en modelo para mitigar elproblema de la falta de informacion a baja velo-cidad, evitando tener que aumentar el periodo decontrol para reducir la velocidad mınima detec-tada. Esta aproximacion al problema supone queno es necesario disponer de informacion sensorialen cada ciclo para actuar sobre el dispositivo depotencia que alimenta al motor, utilizando la pre-diccion sobre la velocidad del sistema en funcionde las actuaciones anteriores.

3. CONTROL PREDICTIVOBASADO EN MODELO

El control predictivo basado en modelo (MPC)representa un conjunto de diferentes metodos decontrol que comparten una estrategia y aproxima-cion al problema similares. Con el MPC se obtie-nen controladores lineales que comparte una se-rie de caracterısticas en comun, independientes delmetodo explıcito de control utilizado [1].

Todo MPC dispone de un modelo del sistema quese quiere controlar, una funcion de optimizacion ofuncion objetivo que se pretende minimizar y unaestrategia de control con horizonte deslizante. Lamayor parte de los metodos utilizados difiere prin-cipalmente en el tipo de modelo y en menor me-dida en las funciones de optimizacion. El controldeslizante implica que en cada instante la predic-cion se va desplazando hacia el futuro.

3.1. Modelo del sistema

Es necesario disponer de un modelo preciso querepresente la respuesta dinamica del sistema, demodo que en cada instante t se estiman las salidasfuturas para un tenerminado horizonte de controlde longitud N . La ecuacion (2) representa la salidapredicha en el instante t para el instante t + k .

y(t + k|t) (2)

En los metodos de control predictivo, las senalesde control en los futuros intervalos del horizon-te de control se calculan utilizando un critero deoptimizacion. Este criterio debe permitir que larespuesta sea lo mas proxima posible a la trayec-toria de referencia prevista y representada comor(t + k). La senal de control u(t|t) es la que se

Page 3: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

envıa al sistema, mientras que las senales futurassuelen descartarse en cada intervalo.

Para representar el modelo del sistema se pue-de hacer uso de distintos tipos de representacion,aunque en este caso nos centraremos en la utiliza-cion de una funcion de transferencia como la mos-trada en la ecuacion (3), donde A(z−1) y B(z−1)representan sendos polinomios de grados −na y−nb respectivamente.

A(z−1)y(t) = B(z−1)u(t) (3)

A(z−1) = 1 + a1z−1 + a2z

−2 + · · · + anaz−na (4)

B(z−1) = b0 + b1z−1 + b2z

−2 + · · · + bnbz−nb (5)

Con la expresion de la ecuacion (3) se pueden ob-tener las predicciones futuras basandose en la fun-cion de transferencia (6).

y(t + k|t) =B(z−1)A(z−1)

u(t + k|k) (6)

Al modelo de prediccion del sistema es necesarioanadirle el termino que representa las perturba-ciones. En la ecuacion (7) se representan las per-turbaciones n(t) en cada instante, siendo e(t) unruido de media cero.

n(t) =C(z−1)1 − z−1

e(t) (7)

3.2. Funcion objetivo

Para la obtencion de la mejor respuesta posible, elcontrol predictivo se apoya en un criterio de mi-nimizacion de una funcion objetivo formada pordos terminos (8). El primer termino representa ladesviacion de la salida respecto a la trayectoriade referencia, mientras que el segundo sumandorepresenta el esfuerzo de control. En este trabajono se considera el segundo termino, puesto que loque se busca es minimizar la desviacion sin teneren cuenta el esfuerzo de control. N1 y N2 repre-sentan el instante inicial y final entre los cuales sepretende seguir la trayectoria de referencia w(t),que en este caso se considera de la longitud del ho-rizonte de control, desde el instante inicial hastael final.

J(N1, N2, Nu) =

=N2∑

j=N1

δ(j)[y(t + j|t) − w(t + j)]2+

+Nu∑j=1

λ(j)[∆u(t + j − 1)]2

(8)

Por otra parte, la trayectoria de referencia se ob-tiene anadiendo las restricciones de aceleracion y

deceleracion a la consigna r(t), la cual se consi-dera una constante invariable en el intervalo deprediccion. Esto implica que minimizar el valor dela funcion objetivo sera lo mismo que minimizarel error entre la consigna y la salida predicha encada instante del intervalo de prediccion teniendoen cuenta las restricciones.

4. OBTENCION DEL MODELO

La solucion planteada en este trabajo se basa en laprediccion de la velocidad de un motor sin dispo-ner de informacion sensorial basandose en el mo-delo del sistema, siendo necesario un modelo pre-ciso que permita realizar predicciones de maneraadecuada. Se realiza un procedimiento de identifi-cacion experimental para la obtencion del modelodinamico del conjunto formado por el motor y laetapa de potencia.

Para obtener el modelo, el controlador dispone deun modo de funcionamiento en bucle cerrado comocontrolador proporcional con ganacia Kp. En laFigura 1 se muestra un esquema del controladordonde se representa la ganacia aplicada Kp. Elconversor de unidades de actuacion, que se tomacomo unitario, se incluye dentro de la ganancia.La entrada del sistema r(t) representa la consignade velocidad, mientras que u(t) es la salida delciclo anterior mas el error e(t) del ciclo actual.y(t) representa la velocidad medida del motor.

Figura 1: Esquema del modo de identificacion.

Con un periodo de muestreo T = 10ms, el con-trolador obtiene los valores de la senal de excita-cion aplicada r(t) que debe ser una senal pseudo-aleatoria binaria (PRBS), de la entrada a la plantaproporcional u(t) y la salida del sistema en cadaintervalo y(t), durante un periodo de 15s. Los va-lores de la ganacia Kp y la senal PRBS son previa-mente seleccionados para garantizar que el sistemacumple con las condiciones de excitacion persis-tente descritas en [14].

El metodo de identificacion utilizado es el ARI-MA, que permite modelar de manera independien-te la parte determinista y estocastica del sistema,aunque no se puede utilizar la regresion lineal parala estimacion de parametros, siendo necesario rea-lizar una regresion pseudolineal. Con este metodode identificacion y analisis se obtiene un modeloparametrico discreto de tercer orden. La resolu-cion de la ecuacion (9) se realiza minimizando el

Page 4: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

error predicho en cada instante de manera itera-tiva, aplicando el criterio de mınimos cuadradosextendido al no tratarse de una regresion lineal,tal como se ha indicado anteriormente.

y(t) =B(z−1)A(z−1)

u(t − k) +D(z−1)A(z−1)

e(t) (9)

La resolucion de la ecuacion da como resultadouna funcion de transferencia en lazo cerrado Gcl.Segun el esquema de obtencion del modelo repre-sentado en la Figura 1, la funcion de transferenciaen lazo cerrado se obtiene mediante la ecuacion(10) de donde se puede extraer la funcion de trans-ferencia en lazo abierto tal y como se indica en laecuacion (11).

Gcl(z−1) =Y (z−1)PRBS

=KpG(z−1)

1 + KpG(z−1)(10)

G(z−1) =Y (z−1)U(z−1)

=Gcl(z−1)

Kp(1 − Gcl(z−1))(11)

G(z−1) representa la funcion de transferencia delconjunto formado por el motor BLDC y la etapade potencia.

5. IMPLEMENTACION

El controlador predictivo basado en un PID se haimplementado en un modulo embebido con comu-nicaciones CAN, de modo que puede ser integra-do en cualquier robot o plataforma movil. En estecaso se ha integrado dentro de la arquitectura decontrol perteneciente al entorno de desarrollo RI-DE [10], mediante la herramienta RoboCAN [5].El algoritmo de control PID predictivo se ha im-plementado como un agente de ejecucion distri-buida en un modulo esclavo. Estos modulos estanbasados en un microcontrolador PIC de la seriedsPIC30, con paralelizacion de procesado en comafija.

La estructura del controlador se muestra en el es-quema de la Figura 2, donde se puede ver un con-trol PID sobre el error entre la velocidad de refe-rencia y la salida del conjunto formado por la eta-pa de potencia y el motor (Motor en la Figura).Para una velocidad de referencia r(t) se obtiene el

Figura 2: Esquema del conjunto regulador-planta.

error en cada instante como e(t) = r(t)−y(t), que

se corresponde con la senal de entrada al regula-dor PID. En la ecuacion (12) se muestra la salidadel regulador p(t) como funcion de los errores.

p(t) = kpe(t) + ki

t∑n=0

e(n)+

+ kd[e(t) − e(t − 1)]

(12)

La expresion esta formada por tres sumandos, elprimero de ellos se corresponde con la regulacionproporcional, el segundo con la integral y el tercerocon la diferencial. Cada una de las ganancias esconfigurable, permitiendo adaptar el controladorpara actuar sobre motores diferentes o adaptar surespuesta en situaciones cambiantes.

Una de las principales caracterısticas de la imple-mentacion del controlador, es que actua como unregulador PID normal a medias y elevadas velo-cidades y como un PID predictivo a bajas veloci-dades. Cada vez que se recibe informacion de lossensores de efecto Hall se determina la velocidadde rotacion del motor. Para evitar oscilaciones de-bidas a la elevada velocidad mınima detectada, talcomo se ha descrito en la ecuacion (1), se utilizauna media movil ponderada para determinar lavelocidad de rotacion instantanea. Si la velocidaddetectada no es nula, se calculan las salidas pre-dichas para todo el horizonte de control de modoque se minimice el error respecto a la trayectoriade referencia.

A diferencia de otras implementaciones MPC, enesta no se descartan las predicciones en intervalosfuturos. Si en el siguiente ciclo se sigue sin disponerde informacion sensorial para determinar la velo-cidad, se utiliza la estimacion del error que corres-ponda. Como se ha mencionado anteriormente, elhorizonte de prediccion se corresponde con el decontrol, que puede ser modificado para ajustar lasprestaciones del controlador a diferentes motores yconfiguraciones. En las dos implementaciones rea-lizadas, se ha utilizado un horizonte de controlNu = 10.

e(t + k) = r(t + k) − y(t + k − 1|t) (13)

En la ecuacion (13) se representa el error predichoen un intervalo en funcion de la senal de referenciay de la prediccion de la salida para el ciclo ante-rior. Este proceso se repite durante todo el hori-zonte de control o hasta que se pueda determinarla velocidad real del motor mediante la informa-cion obtenida con los sensores de efecto Hall.

Para velocidades que no sean bajas siempre sedispondra de informacion en cada ciclo de mues-treo, con lo que el funcionamiento del controladorsera equivalente a utilizar un PID comun, puestoque en ningun momento se utilizara la prediccion

Page 5: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

de la salida de un ciclo anterior para determinarla salida en un instante dado.

5.1. Parametrizacion del modelo

Tal como se ha descrito en la seccion 4, para obte-ner el modelo del sistema se dispone de un modode funcionamiento con un controlador proporcio-nal, siguiendo el esquema de la Figura 1. La senalde entrada utilizada puede ser pseudo-aleatoria bi-naria o similar, debido a que no siempre sera po-sible permitir que el robot se desplaze librementepara obtener el modelo del conjunto motor-etapade potencia. Con los datos adquiridos durante elperiodo de adquisicion se realiza, con las salidasdel sistema bloqueadas, un procesado para iden-tificar la planta del sistema. Una vez obtenidoel modelo dinamico del conjunto motor-etapa depotencia, se almacena en la memoria permanen-te del microcontrolador la parametrizacion corres-pondiente al modelo obtenido para utilizarla pos-teriormente.

5.2. Modulos hardware

En la Figura 3 se muestran dos controladores im-plementados en dos especificaciones diferentes delsistema de integracion hardware RoboCAN [12].En la parte superior se muestra la placa desarro-llada sobre la version v2, mientras que en la parteinferior se muestra el hardware creado con la espe-cificacion electrica de la version v3. Tanto los mi-

Figura 3: Modulos PID predictivo.

crocontroladores como el software ejecutado sonexactamente iguales, la diferencia entre estas dosversiones radica en la especificacion de conexiona-do electrico de los modulos de control mediante unbus PCI-E.

Cada modulo dispone de un microcontrolador ds-

PIC30F4012 y un circuito de adaptacion para con-vertir las senales de los sensores de efecto Hall ados senales de cuadratura. Esto permite aprove-char el periferico disponible en el microcontrola-dor para medir los pulsos de un encoder, a pe-sar de no disponer de un encoder propiamente di-cho instalado en el eje del motor. Ambos modulos,ademas del controlador PID predictivo implemen-tado como un agente, dispone de varios compo-nentes software entre los que se encuentran el en-coder, el motor y los sensores bumper que puedanser instalados en el robot, tal como se describe en[12].

6. ANALISIS Y RESULTADOS

En este apartado se realiza un analisis de los re-sultados obtenidos con la implementacion del con-trolador predictivo basado en modelo. Se han di-senado una serie de pruebas con la finalidad decuantificar la calidad de la solucion obtenida.

La prueba para analizar la viabilidad de la so-lucion propuesta se ha realizado con un motorBLDC en carga que dispone de un encoder ins-talado en el eje. Se ha utilizado este motor pararealizar pruebas comparativas con senales de refe-rencia conocidas, utilizando el controlador predic-tivo con las senales de los sensores de efecto Hall yrepitiendo la prueba con un controlador PID queutiliza un encoder de 500 pulsos por vuelta. En la

Figura 4: Respuesta del controlador.

Figura 4 se muestra la respuesta de ambos contro-ladores ante una entrada senoidal. Tanto la medi-da de la entrada como la respuesta en ambos casos(PID y PID predictivo) se ha realizado desde elservidor de comunicaciones CAN, por lo que apa-rece reflejado el retardo de transmision y recepciondel modulo, ademas del retardo de actuacion.

Este retardo permite apreciar con mayor claridadla respuesta de ambos controladores, al estar lareferencia y la salida desplazadas en el tiempo.La amplitud de la senal utilizada es de 300rad/s,

Page 6: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

Figura 5: Navegacion con PID predictivo.

lo cual representa una velocidad del motor de2868rpm. La zona en la que el controlador di-senado actua como predictivo se situa por debajode los 100rad/s y se puede observar que la desvia-cion respecto al controlador que utiliza el encoderes muy reducida.

En la Figura 4 tambien se puede observar que larespuesta del controlador con modelo, en la zo-na que no actua como predictivo, es mas precisaque la que no tiene modelo, utilizando las mis-mas ganancias en ambos controladores PID. Estoes debido a la inclusion de la respuesta de la eta-pa de potencia en el proceso de parametrizaciondel modelo ARIMA, quedando contemplados losretardos de propagacion en el modelo MPC, a di-ferencia de la implementacion sin modelo, en lacual solo se dispone de de un factor de conversionentre unidades.

Como muestra de las prestaciones del controladorpredictivo, se incluye un grafico que representa laactuacion del regulador durante la navegacion deun robot movil. En la Figura 5 se muestra un grafi-co con dos senales representadas, la primera deellas se corresponde con la velocidad comandadaal motor, mientras que la otra se corresponde conla respuesta del conjunto formado por el contro-lador predictivo, la etapa de potencia y el motorBLDC.

En los instantes que la senal de referencia varıanotablemente se puede apreciar que el controladorpredictivo aplica restricciones en la aceleracion delmotor, evitando movimientos bruscos. Estas res-tricciones se configuran dinamicamente y se uti-lizan para determinar la trayectoria de referenciaen conjunto con la consigna de velocidad.

Figura 6: Robots con PID predictivo.

El controlador ha sido utilizado en el diseno e im-plementacion de dos robot moviles que se mues-

Page 7: diseño e implementación de un controlador predictivo para motores

Actas de las XXXV Jornadas de Automática, 3-5 de septiembre de 2014, ValenciaISBN-13: 978-84-697-0589-6 © 2014 Comité Español de Automática de la IFAC (CEA-IFAC)

tran en la Figura 6, siendo el de la izquierda unrobot de configuracion sıncrona y el de la derecha,diferencial. El robot de la izquierda, BellBot [11],ha sido creado para operar en entornos hotelerose interactuar con las personas, de ahı que dispon-ga de una parte superior humanoide con cabezay brazos, ademas de un diseno que resulte masatractivo para las personas. El robot de la dere-cha esta disenado para realizar tareas de vigilan-cia en interiores de edificios y ha sido desarrolladocomo parte complementaria de la arquitectura RI-DE [9], aprovechando la inclusion de la herramien-ta de integracion hardware y control distribuidoRoboCAN.

7. CONCLUSIONES

La solucion propuesta se ha implementado fısica-mente en un modulo hardware embebido y se haintegrado dentro de un sistema de comunicacionesbasado en un bus de campo CAN. De este modo, elcontrolador predictivo propuesto ha sido utilizadoen el diseno y construccion de dos robots moviles,pertenecientes al departamento de Ingenierıa deSistemas y Automatica de la Universidad de Vi-go. El controlador predictivo implementado llevatiempo funcionando en ambos robots, mostrandounas caracterısticas adecuadas para la navegacionen entornos dinamicos.

Con la aplicacion de la solucion propuesta, quedaprobada la viabilidad de utilizar motores BLDC abajas revoluciones haciendo uso solo de los senso-res Hall para determinar su velocidad de rotacion.

Referencias

[1] C. B. Alba. Control Predictivo: metodologıa,tecnologıa y nuevas perspectivas. Universidadde Sevilla, Aguadulce, Almerıa, 2000.

[2] K. H. Ang, G. Chong, and Y. Li. Pid controlsystem analysis, design, and technology. Con-trol Systems Technology, IEEE Transactionson, 13(4):559–576, July 2005.

[3] L. Bo, C. Binggang, J. Hui, Z. H. Bing, andY. Hua. Position tracking controlling sys-tem of position sensorless bldcm by usingsmc. In Mechatronic and Embedded Sys-tems and Applications, Proceedings of the 2ndIEEE/ASME International Conference on,pages 1–5, Aug 2006.

[4] P. Dobra, D. Dumitrache, L. Tomesc, R. Du-ma, and M. Trusca. Low-cost embedded solu-tion for pid controllers of dc motors. In Con-trol and Automation, 2009. MED ’09. 17thMediterranean Conference on, pages 1178–1183, June 2009.

[5] J. Fernandez, M. Souto, D. Losada, R. Sanz,and E. Paz. Communication framework forsensor-actuator data in mobile robots. In In-dustrial Electronics, 2007. ISIE 2007. IEEEInternational Symposium on, pages 1502–1507, june 2007.

[6] Y. Huang, Y. Xin, and W. Zhang. An impro-ved bemf detection method for sensorless bldcmotors. In Industrial Technology, 2008. ICIT2008. IEEE International Conference on, pa-ges 1–4, April 2008.

[7] M. Katebi and M. Moradi. Predictive pidcontrollers. Control Theory and Applications,IEE Proceedings -, 148(6):478–487, Nov 2001.

[8] C. G. Kim, J. H. Lee, H. W. Kim, and M.-J.Youn. Study on maximum torque generationfor sensorless controlled brushless dc motorwith trapezoidal back emf. Electric PowerApplications, IEE Proceedings -, 152(2):277–291, March 2005.

[9] J. Lopez, D. Perez, E. Paz, and A. Santa-na. Watchbot: A building maintenance andsurveillance system based on autonomous ro-bots. Robotics and Autonomous Systems,2013.

[10] J. Lopez, D. Perez, and E. Zalama. A fra-mework for building mobile single and multi-robot applications. Robotics and AutonomousSystems, 59:151 – 162, March 2011.

[11] J. Lopez, D. Perez, E. Zalama, and J. Garcıa-Bermejo. Bellbot - a hotel assistant systemusing mobile robots. International Journal ofAdvanced Robotic Systems, 10, 2012.

[12] D. P. Losada. Arquitectura de control e nte-gracion robusta de dispositivos en roboticamovil. PhD thesis, Universidad de Vigo, 2012.

[13] K.-S. Low, K.-Y. Chiun, and K.-V. Ling. Eva-luating generalized predictive control for abrushless dc drive. Power Electronics, IEEETransactions on, 13(6):1191–1198, Nov 1998.

[14] E. Rubio, L. Hernandez, R. Aracil, R. Sal-taren, and R. Moreno. Modelado, identifi-cacion y control de actuadores lineales elec-troneuaticos. aplicacion en plataforma de dosgrados de libertad. Revista Iberoamericanade Automatica e Informatica Industrial RIAI,4:58–69, 10 2007.

[15] C. Xia, W. Cao, and P. Song. The speed-adjustment system of brushless dc motor ba-sed on grey pid. In Automation and Logistics,2008. ICAL 2008. IEEE International Con-ference on, pages 35–38, Sept 2008.