Vous êtes sur la page 1sur 21

ELEMENTOS DE CONTROL DE UN ROBOT

I) INTRODUCCIN AL CONTROL DE ROBOTS


Es una interconexin entre diversos componentes que trabajan en conjunto para realizar una
funcin dada.
Es un grupo de componentes que responden a una seal.
La respuesta es el desempeo de una funcin , la cual en la mayora de los casos es una variable
fsica.
La seal que provoca el desempeo de la funcin es la seal de actuacin .
Una forma de implementar un control reactivo puede ser usando controladores clsicos:
Control de lazo abierto
Control de lazo cerrado
a)

Control de lazo abierto

La seal de actuacin consiste tan solo de una seal de entrada que representa el comando al
sistema.
El estado no se realimenta en el sistema.
No suelen usar sensores. Deben estar extraordinariamente calibrados.
Se debe disponer de un modelo muy bueno del sistema
Otros nombres:
Feedforward : El controlador determina las metas y submetas a priori.
Ejemplos:
- Ejecucin a ciegas de un plan
- Misil balstico, solo se calcula la velocidad al principio.
b)

Control de Lazo Cerrado

La seal de actuacin consiste de la diferencia entre la seal de entrada y la seal de


realimentacin que es la salida o variable controlada o error.
Compara continuamente el estado deseado y el actual del robot.
El estado deseado puede ser interno (batera) o externo (distancia a una pared).
En un lazo cerrado se cierra el lazo entre la entrada y la salida.
Error: Diferencia entre el estado deseado y el actual.
La meta es minimizar ese error.
El error puede ser binario o tener una magnitud y/o direccin.
Un sistema de lazo cerrado oscila alrededor de la solucin.
El estado del sistema x(t+1) depende del estado anterior x(t) y de la accin del controlador u :
x(t+1) = F(x(t), u)
En un robot mvil, el estado suele ser su posicin x = (x, y, q ) y las acciones pueden ser
velocidades, lineales y angulares que se comandan: u = [v, w] , con lo que se tiene:

Generalmente se suele expresar de forma diferencial.


En un robot mvil ms realista el estado es la posicin y las velocidades x = (x , y , q , v , w ) y
las acciones son las aceleraciones u = [a, a ]

El objetivo del controlador es llevar x a un estado x meta


La entrada bsica del controlador es el error: e = x x meta
c) Teora de control
Ciencia que estudia el comportamiento de los sistemas de control.
Existen 3 controladores bsicos ( i entrada, o salida, K constante):
1. Control proporcional (P).
2. Control derivativo (D).
3. Control integral (I).
Teora Matemtica compleja.

d) Controlador realimentado bsico


If e < - then u := on
If e > then u := off
e evita que el controlador salte alrededor de x meta tan rpido como pueda cuando x meta ~ x .

Ejemplo: termostato de una habitacin


Realmente el termostato es ms complejo, porque la variable sobre la que se acta
(temperatura de la caldera) no es la misma que se mide (temperatura de la habitacin)
Problema: Nunca llega a x meta , oscila alrededor
Ventaja: Es muy sencillo, elige entre acciones constantes segn el signo del error.
e) Controlador P
i entrada, o salida, K constante:
o=Kp*i
Controlador realimentado
Idea: Responder en proporcin al error:
e = o o meta
La funcin bsica de control debe cumplir con:
e=0x=0
La funcin de control se calcula conociendo la dinmica del sistema: como funciona
Caso de un robot mvil: Cunto (ganancia Kp ) hay que aumentar en el ngulo de giro para
evitar chocar con una pared?
Determinar la ganancia correcta es generalmente experimental (ensayo y error).
En entornos bien definidos puede calcularse matemticamente.
Incluso en esos casos las limitaciones fsicas (roce, potencia del motor, etc.) obligan a la
experimentacin.
El valor de la ganancia proporcional al error se denomina ganancia proporcional .
Si un sistema no puede corregir su ganancia puede oscilar.
Ejemplo: Potencimetro
Convierte una seal de posicin (rotacional) en una seal elctrica.

Ganancia en Controladores P

f) controladores D
i entrada, o salida, K constante:
o = K d di/dt
Intuicin: Cuando el sistema est cerca estado deseado se debe controlar de distinto que cuando
est lejos.
La salida es proporcional a la derivada entrada. En trminos de cantidad de movimiento:
m = masavelocidad .
La velocidad y la cantidad de movimiento son directamente proporcionales.
Cuando el sistema se acerca al estado deseado, se resta una cantidad proporcional a la
velocidad: ( gananciavelocidad )
A este trmino se le llama derivativo D porque la velocidad es la derivada de la posicin.
El derivativo ofrece resistencia a cambios bruscos, corrige en direccin contraria

Tarda ms en alcanzar el estado meta pero oscila menos.


Problema: Estimar el derivativo de un sensor es muy vulnerable al ruido en la lectura
Ejemplo: El tacmetro
Convierte una seal de rotacin mecnica en una seal elctrica. Se usa en sistemas de control
de posicin y velocidad.

g) Controladores I
i entrada, o salida, K constante:
o = Kf i(t)dt
Agregar el trmino integral o I.
Intuicin: El sistema observa errores y los integra en el tiempo y cuando alcanzan un umbral
corrige.
Ejemplo: El Integrador
Efecta la operacin matemtica de la integracin a la seal de entrada.

Otros controladores:
- PD: o = Kp i + Kd di/dt .
- PID: o = Kp i + Kd di/dt + Kf i(t)dt .
II) ACTUADORES CONTROLADOS
Esquema General de Planificacin y Control de Movimiento.

- Actuadores : proporcionan la energa necesaria para producir el movimiento .


- Elementos de Transmisin de Energa : transmiten el movimiento desde el actuador hasta el
elemento que se quiere mover.
- Sensores Internos : proporcionan los valores reales de las variables a controlar.
- Funcin: convierten la seal elctrica procedente del controlador (salida de un conversor A/D)
en movimiento. Suele incluir amplificacin de potencia de la seal de control.
Hay diversas formas de control de actuadores robticos a partir de tcnicas y mtodos de
modelizacin, usando la formulacin de Laplace aplicada a sistemas lineales. Es posible controlar
los actuadores hidrulicos y neumticos, sin embargo, la absoluta preponderancia de los Motores
Elctricos de Corriente Continua (DC) har que se centre particularmente en ellos. Ms
restringidamente, se estudiar el control de un motor, que se supone acta sobre una articulacin

aislada. Esto es slo una aproximacin, dado que cuando el robot se mueve, la inercia que ve cada
articulacin depende de la posicin, y por tanto, no se puede considerar que la funcin de
transferencia admitida para motor ms carga sea constante, lo que excluira en principio las
tcnicas bsicas de control de sistemas lineales. No obstante, la inmensa mayora de los robots
comerciales hoy en uso admiten esta aproximacin, que sigue dando resultados, al menos,
tolerables usada con las debidas precauciones. Se incidir en ello al hablar de diseo de
controladores.

III) TCNICAS DE CONTROL CLSICO SOBRE MOTORES DE CORRIENTE CONTINUA.

Un motor de CC puede ser modelizado mediante una funcin de transferencia de segundo orden,
que en muchos casos (uno de los polos suele ser dominante) es incluso aproximable mediante una
de primer orden. Esto simplificar el anlisis inicial, y permitir tomar en cuenta un aspecto ms:
el amplificador de potencia que alimenta al motor, y que tambin se describi en el tema anterior.
Un amplificador ideal debera ser absolutamente lineal, es decir, tener como funcin de
transferencia una constante A ; pero en la prctica el modelo correcto resulta ser:

Para ejercer control realimentado deberemos medir posicin y/o velocidad. Si disponemos de un
sensor analgico de velocidad (un tacmetro) la posicin se puede obtener por integracin con el
circuito apropiado. Si, por contra, tenemos un sensor digital de posicin (un codificador ptico) la
velocidad se obtiene por derivacin numrica. Suponiendo el motor aproximado por la funcin de
transferencia de primer orden:

El lazo de realimentacin tpico para el control del motor sera como el del siguiente esquema de
control:

En este esquema, K g es la constante del tacmetro que relaciona la velocidad angular medida con
la seal que ste genera. La K p es la constante de realimentacin de posicin que el usuario
deber fijar. El bloque 1/ s situado a la salida del motor representa en cierto sentido al codificador
ptico, y da cuenta del hecho de que la funcin de transferencia del motor relaciona tensin V con
velocidad angular, w = q , mientras que lo que se lee usando el codificador es la posicin
angular q . La entrada al bucle ms interno es el error en la velocidad en cada momento, y puede
ser visto como un comando de velocidad deseada.
Se analizar este esquema segn los diferentes casos que pueden darse:
Si no hay realimentacin de velocidad (no hay tacmetro) podemos considerar que K g = 0 , y en
ese caso la funcin de transferencia en lazo abierto sera:

siendo el bloque de realimentacin H = K p , y por tanto la ecuacin caracterstica para trazar el


lugar de las races es:

siendo K = AK m K p la constante que vara para generar los polos en lazo cerrado segn sus
distintos valores.

Los polos en lazo abierto estn en s = 0 , s = - 1 / t m y s = - 1 / t a . Por ser la constante de tiempo


del amplificador, t a , de tipo elctrico, menor que la constante t m relacionada con aspectos

mecnicos, se cumple que 1 / t a > 1 / t m con lo que el polo del amplificador est ms lejos
del origen. El lugar de las races tendr tres ramas, que comenzarn en cada polo y acabarn en el
infinito, pues no hay ceros. Se puede comprobar que hay tres asntotas, que forman con el eje real
ngulos de 0 , p /3, y - p /3, y que cortan a este eje en el punto s = -( t a + t m )/( 3 t a t m ).

El lugar de las races, con K g = 0 se puede apreciar en la siguiente figura:

Para unos valores dados de t a y t m , deberamos escoger la K (modificable cambiando la


ganancia A del amplificador, y la constante de realimentacin K p ) de modo que los polos sean
reales, es decir, de modo que el sistema en lazo cerrado sea sobreamortiguado. Lo idneo sera
tener los polos muy cerca (o incluso sobre) el punto de ruptura (sistema crticamente
amortiguado), pues de este modo se llegara al estado estacionario lo ms rpidamente posible,
pero sin oscilar. Hay, en cualquier caso, un valor de K que no debe excederse, pues el sistema se
volvera inestable (las ramas del lugar de las races entran en el semiplano derecho).

La eleccin de la K (va A o K p ) plantea un problema importante: depende de la K m , la cual no es


realmente constante sino que depende del momento de inercia de la carga que mueve el motor,
y por tanto, del ngulo que se encuentre ste (no es lo mismo mover un brazo robot contrado que
extendido). Una solucin sera buscar una K p o A diferentes para cada posicin angular.

Veamos ahora el caso en que se aplica realimentacin en velocidad, y por tanto, K g no es nula. El
diagrama de bloques de la figura principal se puede transformar segn se muestra en el siguiente
esquema, que representa a un Motor de Corriente Continua con Realimentacin en Velocidad.

En este caso, la ecuacin caracterstica que servir para determinar el lugar de las races queda:

GH tiene un cero en s = - K p/ K g , y los mismos polos que el caso anterior. En este caso hay dos
asntotas, que forman con el eje real ngulos de p /2 y lo cortan en el punto: s = 1/2(K p/ K g
1/ t m 1/ t a )

Los puntos de ruptura resultan de la resolucin de una ecuacin de tercer grado, y de los tres, slo
uno es real y pertenece al Lugar de las Races. En este caso, hay dos posibles lugares de las races
segn cules sean los valores de las constantes que intervienen en el sistema. Un caso se da
cuando el cero est ms cerca del origen que el primer polo, y el otro cuando est entre los dos
polos. En el siguiente esquema se muestra al Lugar de las Races con K g 0:

A la vista de los lugares de las races, una ventaja obvia es que ya no hay inestabilidad,
independientemente del valor de las constantes K p , K g u otras. Adems, si se elige la segunda
posibilidad (buscando los valores de K p y K g de modo que K p/ K g > 1/ t m ) puede hacer que los
polos en 0 y - 1/ t m sean dominantes frente al del amplificador, que aparte de estar ms lejos
queda parcialmente compensado por la proximidad del cero. De este modo el sistema total,
incluyendo al amplificador, se puede aproximar como un sistema de segundo orden.

Otra forma tambin usada habitualmente de aproximar el motor realimentado en velocidad como
un sistema de segundo orden es la que se aplica cuando se considera que el amplificador tiene una
respuesta mucho ms rpida que el motor, su polo, 1/ t a , est tan a la izquierda que puede ser
despreciado, con lo que su funcin de transferencia queda reducida simplemente a la
constante A . En ese caso, la funcin de transferencia del lazo ms interno (ya cerrado) quedara
representada de la siguiente forma:

La Funcin de transferencia total resultara:

Donde se observa que este sistema puede escribirse en la forma del sistema standard de segundo
orden, en el que:

Podemos variar K p y K g , y variar con ello z , dando al sistema el carcter sobreamortiguado que
deseamos, pues el amortiguamiento es directamente proporcional a K g e inversamente
proporcional a la raz de K p .

Para finalizar, veamos el caso ms general no simplificado de control de un motor de Corriente


Continua, en el que no se considera que los torques gravitacionales ni de las fuerzas externas sean
nulos. Aqu ya no se puede simplificar el motor considerndolo un sistema de primer orden, sino
que debe ser tomado como un sistema con dos entradas. Teniendo el siguiente diagrama de
bloques no simplificado:

Si se introduce este diagrama dentro del diagrama de bloques principal del control realimentado
tenemos el siguiente diagrama de bloques:

Del diagrama de bloques se ve que

Siendo:

Adems:

De donde se obtiene la ecuacin de q (s):

Para estudiar este sistema, que tiene dos entradas, aplicaremos el principio de superposicin, que
sabemos se cumple en todo sistema lineal. La forma de hacerlo es suponer sucesivamente nulas
cada una de las entradas, y obtener en cada caso la salida ante la otra entrada.

Supongamos primero que T f + T gr es nula, y apliquemos a la entrada q d un escaln unitario de


valor q d 0 . Entonces, reemplazando en q (s), se tiene:

Para obtener su valor final, se aplica el teorema del mismo nombre:

Esto significa que si queremos alcanzar un cierto valor final, el comando de control que en realidad
hay que enviar es el valor deseado, dividido entre K p.

Ahora, supongamos que q d es nula (lo cual no resta generalidad, pues el origen de ngulos puede
fijarse arbitrariamente), pero que hay unos ciertos torques externos, cuya transformada de
Laplace denotaremos como T L ( s ) = T f ( s ) + T gr ( s ) , y se introduce al sistema una entrada
escaln ( T L ( s ) = T L 0 /s , una carga asida de repente). En este caso, la ecuacin q(s) sirve de nuevo
para calcular el valor final de la posicin angular:

Hay, pues, error de posicin (la posicin deba haber sido 0, segn se pedia). A este error se le
suele llamar histresis. Se reduce aumentando la K p (dado que el resto son constantes que no
controlamos, excepto quiz la A del amplificador). No obstante, aumentar K p tiene el problema

de hacer el sistema subamortiguado (recordar el lugar de las races). Hay que evitar esto usando
un valor alto para K g .

Una forma alternativa, y ampliamente usada, de conseguir el comportamiento deseado es


anteponer un controlador PID al motor. Un posible esquema de Control PID para un motor de
corriente continua se muestra en la siguiente figura.

Posibles respuestas del motor ante entrada escaln para varios tipos de control derivados de PID
pueden verse en los siguientes grficos:

En la grfica:

(a) control proporcional : se observa como se puede eliminar la sobreoscilacin


disminuyendo K p , pero a costa de aumentar el error de posicin.

(b) control PD : sigue habiendo error de posicin, pero, a igualdad de dicho error (es decir,
para la misma K p ) el sistema oscila menos.

(c) control PI : el integrador libre del controlador anula el error de posicin, pero no evita la
sobreoscilacin.

(d) controlador PID : es la mejor alternativa, con los parmetros apropiadamente ajustados
(respuesta en lnea continua) para la cual se alcanza la posicin deseada sin sobreoscilacin, y
en el mnimo tiempo posible. Aun cuando existen mtodos apropiados para el diseo de
controladores PID, obtener esta combinacin no es sencillo, y en realidad, no existe un nico.

IV) CONTROL DE UNA ARTICULACIN

Supongamos que las estrategias de control descritas deben aplicarse a una articulacin concreta
de un brazo robot. En este caso, la seal de referencia, q d , que indica en qu posicin debe
colocarse el motor es siempre digital, pues viene del ordenador de control (en concreto, del
programa generador de trayectorias). Las seales de los sensores, sin embargo, pueden ser
analgicas o digitales. Lo normal es que el ordenador de control compute lo ms rpido posible las
seales de referencia para las articulaciones, y las enve en secuencia a cada una de ellas. En cada
articulacin hay un pequeo microprocesador o microcontrolador que ejecuta el algoritmo de
control (el PID, u otro, que se la haya programado, normalmente en firmware); en ocasiones un
mismo microcontrolador se ocupa de dos o ms articulaciones.
Los datos de posicin y velocidad presente se pueden obtener de varios modos. Estos son los
posibles casos:

a) Posicin digital y velocidad analgica con sensores diferentes: se usan un codificador ptico
para medir la posicin y un tacmetro para medir la velocidad.

Como la seal de control es en ocasiones proporcional al error en la velocidad (usando, por


ejemplo, un PD) se podra evitar el uso del conversor A/D del tacmetro, segn se muestra en la
parte inferior del esquema anterior. Esto reduce el coste, porque el restador analgico, hecho con
un operacional, es ms barato que el conversor A/D.

b) Posicin digital y velocidad digital: Aqu slo se usara un codificador ptico que generara una
seal digital para la posicin, y la velocidad se obtendra numricamente a partir de sta. Es la
solucin ms comnmente aceptada hoy, pues los tacmetros son caros y pesados (a veces, tanto
como el propio motor). El circuito digital apropiado procesa las seales del encoder y la velocidad
se obtiene midiendo a intervalos regulares de tiempo como:

Si, como suele ser habitual, D T es constante, no hace falta dividir. No obstante, esto presenta un
grave problema: la velocidad as obtenida est cuantizada, por ser diferencia de valores enteros (el
nmero de pulsos en instantes de medicin consecutivos), y debe ser almacenada en un registro
de longitud finita. Esto hace que presente oscilaciones, especialmente para valores pequeos de la
velocidad (cuando el motor est se est parando). Este fenmeno, llamado "digital
jitter"(oscilacin digital) se aprecia en el siguiente esquema, lo cual se puede definir como una
oscilacin digital provocada por la cuantizacin:

Como ilustracin, imaginemos que a la mxima velocidad tenemos 100 cuentas por periodo de
muestreo; deberemos usar un registro de 7 bits. Pero en las fases de aceleracin y deceleracin
(baja velocidad) hay un cambio muy pequeo en el nmero de cuentas entre dos periodos
consecutivos. De hecho, si el periodo de muestreo es pequeo, podemos incluso estar leyendo la
misma posicin cuantizada del encoder (el ngulo recorrido en el tiempo D T es menor que la
precisin). As, la seal de velocidad sera una sucesin de ceros y unos. Esto puede incluso
provocar inestabilidad en el sistema de control. Hay varias soluciones, pero ninguna realmente
apropiada: usar encoders de ms resolucin (es caro), reducir la constante de realimentacin, K g ,
para hacer el sistema ms amortiguado y evitar que las oscilaciones le afecten demasiado

(enlentece la respuesta), obtener la velocidad con una aproximacin de segundo orden o superior
(conlleva ms clculo), usar un periodo de control), o usar varios valores diferentes de K g segn la
velocidad medida. Esto es lo ms factible; el valor de K g debera ser grande en aceleraciones y
deceleraciones, y ms pequeo el resto del tiempo.

c) Otros casos:

- Uso de un sensor analgico de velocidad y medida de la posicin por integracin analgica: se


usara un tacmetro y un integrador hecho con un operacional a la salida. Presenta dos problemas:
la integracin no es ideal; y la deriva trmica hace que el offset del operacional vare con el
tiempo. Se pierde precisin y repetibilidad. Adems, no es completamente lineal, y requiere
conversores A/D, puesto que hoy da todo el control es digital.

- Uso de un sensor de posicin analgico y medida de la velocidad por derivacin: Se usara, por
ejemplo, un potencimetro y un derivador analgico a la salida. Tiene el problema de la poca
precisin del potencimetro, y de que la derivacin no es ideal, y adems amplifica mucho el
ruido, especialmente de alta frecuencia.

Nota final : Se recuerda que se est controlando la posicin de los motores, no la del efector final.
Esto significa que se est fiando de la rigidez del sistema mecnico y de la fiabilidad de las
transmisiones mecnicas (engranajes, correas o cadenas). Esto suele ser razonable si se tiene en
cuenta que los sensores (normalmente, encoders) se suelen poner acoplados al eje del motor
antes de desmultiplicar el movimiento, de modo que una vuelta (N cuentas) es slo una fraccin
pequea de vuelta en el efector final.

V) CONTROL ADAPTATIVO
Hemos supuesto en todo momento que la carga que el brazo mova, y sus inercias, eran
constantes. Esto no es cierto. De hecho, el conjunto de parmetros de control ( K p , K g, o
bien K p , K I , Kd ) diseados para movimientos alrededor de cierta posicin pueden no ser vlidos
para otra. Lo que se suele hacer es tomar parmetros muy "conservadores", en el sentido de que
el punto de funcionamiento (los polos del sistema) est muy lejos de la inestabilidad; pero esto
provoca un fuerte amortiguamiento, y el sistema es lento.
Para evitarlo, se tratara de que los parmetros del controlador dependieran de la posicin
presente, de la carga (a travs del error de posicin), y de la seal de control. El esquema de
Control Adaptativo sera el mostrado en la siguiente figura:

El mdulo de adaptacin que se muestra tendra dos partes: un medidor de cun bien (o mal)
est actuando el controlador, definiendo un ndice de eficiencia, y otro mdulo que genere
cambios en los parmetros del controlador, los cuales dependeran de la posicin, del error en la
posicin y de la seal de control, de tal modo que se consiguiera minimizar el ndice de eficiencia.
Este mdulo puede ser una red neuronal, un sistema basado en reglas que use lgica difusa, u otro
similar.
Bibliografa:
http://www.industriaynegocios.cl/Academicos/AlexanderBorger/Docts%20Docencia/Seminario
%20de%20Aut/trabajos/Trabajos%202005/Robotica/7.7.%20%20ELEMENTOS%20DE%20CONTROL%20DE%20UN%20ROBOT.htm

Vous aimerez peut-être aussi