» Optimus PFC » Control de velocidad

04 de Mayo de 2004

Control de velocidad

Para variar la velocidad de los motores y por tanto de la base de robot móvil autónomo, hemos empleado una técnica conocida como "Modulación en Anchura de Pulsos" (o PWM, del inglés "Pulse Width Modulation"). Con esta técnica conseguimos que la velocidad del motor varíe en función de la duración del ciclo de trabajo de una señal que se envía al "motor driver".

Desafortunadamente, un determinado ciclo de trabajo de la señal PWM no se corresponde con una determinada velocidad, pues el rendimiento del motor para una determinada señal PWM depende de otros factores (peso de la carga, pendiente del terreno,...). De hecho, dos motores iguales no trabajan a la misma velocidad para la misma señal PWM debido a diferencias en la construcción de los mismos. Por tanto, no podemos garantizar una determinada velocidad a partir únicamente de la señal PWM.

Para solventar este problema se ha implementado un algoritmo de control PI en lazo cerrado que a partir de la velocidad de las ruedas (medida en los encoders) varía el ciclo de trabajo de la señal PWM para intentar aproximar la velocidad medida en instantes sucesivos a la velocidad deseada. En la figura 01 se puede apreciar el esquema del lazo de control PI empleado.

El esquema anterior se puede programar mediante el siguiente algoritmo que se ejecuta de forma periódica:

e3 = bias_deseado + vel_real_izquierda - vel_real_derecha

error_integral = Ki * integra(e3)

e1 = vel_deseada - (bias_deseado / 2) - vel_real_izquierda -
     error_integral
e2 = vel_deseada + (bias_deseado / 2) - vel_real_derecha +
     error_integral

varia_potencia_motor_derecho(e1*Kp)
varia_potencia_motor_izquierdo(e2*Kp)

donde integra() se consigue simplemente con un acumulador y la periodicidad se consigue configurando el planificador para que llame a este algoritmo (función do_speed_ctrl()) de forma periódica (100ms).

Uno de los pasos más importantes en el uso de estos algoritmos de control se centra en buscar los valores apropiados para la constante de proporcionalidad, Kp, y la de integración, Ki. El resultado, una vez que el sistema está en funcionamiento, se puede apreciar en la figura 02. Obsérvese que a bajas velocidades el control de velocidad no es todo lo eficiente que se desea. A estas velocidades, si la mecánica no es buena (como es el caso) se presentan grandes problemas a la hora del control.

Fig. 01: Controlador PI de velocidad   (eps)  (xfig)

Controlador PI de velocidad

Fig. 01: Ejemplo del control de velocidad   (eps

Ejemplo del control de velocidad
© 2004 optimus.meleeisland.net