TAII IV: Robótica Autónoma Práctica 3: Seguimiento con control PID


Enunciado de la práctica en formato pdf: pinchar aquí
Hoja de datos del BPW43
Hoja de datos del TSUS540

El objetivo de la práctica es incorporar al sistema GP_Bot elementos de teoría de control para realizar el seguimiento de un vehículo a través de una señal de infrarrojos.
 

Descripción del sistema

La realización de esta práctica requiere la utilización de dos receptores de infrarrojos (del tipo BPW43, por ejemplo), montados en el frontal del vehículo construido en la práctica 1 y separados por una cierta distancia. La salida de cada uno de los sensores habrá de conectarse a entradas analógicas del sistema GP_Bot a fin de que puedan ser procesadas a través del ADC del microcontrolador. Del mismo modo, el vehículo a seguir portará en su parte trasera un emisor de infrarrojos (del tipo TSUS540). Este esquema se muestra en la figura 1.

Figura 1. Posición de los elementos fotosensibles

El fundamento del sistema de seguimiento es muy sencillo: cuando el emisor IR se halla equidistante de ambos receptores y éstos están alineados en la misma dirección con el emisor, ambos reciben la misma cantidad de energía, figura 2a. En consecuencia, la diferencia entre las salidas de ambos receptores es nula. En el momento en el que se produce una variación en la orientación relativa entre el vehículo a seguir y el que porta los receptores, figura 2b, éstos dejan de recibir la misma cantidad de energía radiada por el emisor y, por tanto, la diferencia entre sus salidas deja de ser nula. De este modo, es posible utilizar la diferencia entre las salidas de los receptores IR para conocer los cambios de dirección del vehículo que porta el emisor, y en consecuencia actuar sobre el vehículo que porta los receptores a fin de seguir al anterior.


 (a)                                                                             (b)

Figura 2

Por otra parte, el promedio de las salidas de ambos receptores IR indica la cantidad media de energía que se recibe desde el vehículo que porta el emisor IR, con lo que esta medida se puede emplear como un indicador de la distancia entre ambos vehículos y, en consecuencia, usarse para controlar la velocidad del vehículo que porta los receptores para mantener una distancia constante entre ambos vehículos.

Emisor              Receptores                    Identificación de pines
Figura 3. Esquema eléctrico del emisor y de ambos receptores.

Hoja de datos del BPW43
Hoja de datos del TSUS540
 

Ejercicios

      1.- Construya el sistema de la Fig. 1 y adáptelo a su vehículo. Programe el sistema GP_Bot de modo que su vehículo siga a otro portando un emisor IR de acuerdo con lo descrito en el apartado anterior. En este primer ejercicio se realizará un control todo-nada, es decir, nuestro vehículo girará en uno u otro sentido cuando se detecte un cambio de dirección del vehículo portando el emisor IR. Dicho giro se realizará deteniendo completamente el movimiento de una de las ruedas del vehículo. Para evitar una acción de control continua, se fijarán dos umbrales en cada una de las posibles direcciones de giro. Del mismo modo, será necesario controlar la distancia al vehículo a seguir, realizando el mismo tipo de control todo-nada
      Programe el sistema GP_Bot para que sea posible controlar la potencia entregada a cada motor a través de una modulación PWM de la señal de control del motor. Para ello, lo más adecuado es hacer uso de uno de los timers del microprocesador y las diferentes interrupciones asociadas para temporizar exacta y automáticamente la modulación PWM y el control del vehículo.

      2.- Una vez que los motores estén controlados por PWM, se ha de programar el sistema GP_Bot para realizar las mismas funciones del ejercicio 1. Sin embargo, en este ejercicio el control todo-nada habrá de sustituirse por una modificación de la potencia entregada a cada motor modificando el ciclo activo de la modulación PWM. En concreto, partiendo de una modulación PWM para cada motor con el 50% del ciclo activo, el giro del vehículo se realizará aumentando y disminuyendo en una cantidad fija la parte activa del ciclo para cada motor. Del mismo modo, se aumentará o disminuirá por igual para cada motor la parte activa del ciclo en función de la distancia entre ambos vehículos.

      3.- Partiendo de la temporización para la modulación PWM de la potencia entregada a los motores realizada en el ejercicio 2, implemente un controlador PID digital para optimizar el seguimiento del vehículo con emisor IR. El controlador PID tomará como entrada la diferencia entre las salidas de los receptores IR del vehículo y proporcionará como salida un offset para modificar la potencia entregada a cada motor. Este offset se añadirá al ciclo activo PWM de uno de los motores, y se restará del otro, consiguiendo así una pequeña diferencia de velocidad entre ambas ruedas y, en consecuencia, haciendo que el vehículo gire. De este modo, el movimiento del vehículo será más suave que en el caso del control todo-nada, consiguiéndose una actuación más eficiente.

Soporte teórico.

Un controlador PID viene descrito por la ecuación:

donde Kp es la ganancia proporcional y Ti y Td son los tiempos integral y derivativo, respectivamente. La función de transferencia del controlador PID es, por tanto:

donde Ki y Kd son las ganancias integral y derivativa, respectivamente. Este tipo de controlador es ampliamente utilizado, y puede implementarse de múltiples maneras. En concreto, es posible realizar una implementación discreta de este tipo de control, para lo que es necesario realizar las aproximaciones siguientes:

De este modo, la ecuación original en el dominio del tiempo del controlador PID puede escribirse como:

Por tanto, definiendo las constantes:

el controlador PID queda definido simplemente como:

Así, la salida en cada instante puede calcularse a partir de la salida en el instante anterior y los tres últimos valores de la señal de entrada. Esta ecuación es la que es necesario implementar para realizar el control PID de nuestro vehículo, definiendo adecuadamente las diferentes constantes. Para la sintonización del controlador se usará la regla de Ziegler-Nichols (consultar documentación adjunta) y el modelo de la figura 4 para nuestro vehículo.

El modelo es muy simple, y a partir de la diferencia de orientación de ambos vehículos obtiene la entrada al controlador PID (en la figura se representa también el sistema que correspondería a los ejercicios 1 y 2, donde el control puede asumirse como una simple constante). El controlador PID genera la entrada a un bloque que modela el giro del vehículo. Esto puede hacerse asumiendo que el ángulo de giro es:

Es decir, el ángulo de giro del vehículo aumenta linealmente con el tiempo, con un factor que dependerá de las dimensiones del vehículo y las ruedas y la forma de modulación PWM que controle los motores. Esta asunción, sin embargo, introduce un polo doble en s=0 que haría el modelo inestable, lo que no corresponde con la realidad. Por tanto, asumiremos que el modelo del giro del vehículo tiene un solo polo. En cualquier caso, será necesario realizar un ajuste de los parámetros del controlador PID sobre el sistema real para optimizar su comportamiento y evitar las deficiencias de este modelo.