journal.gif (7158 bytes)

 

Control de Fuerza y Posición de Robots
Industriales con Restricciones Empleando
Controladores de Dos Grados de Libertad


Anterior artículoContenidoSiguiente artículo

Francisco Triveño
Rafael Alarcón

 

Resumen: Los controladores de dos grados de libertad son aplicados para controlar la fuerza y la posición del elemento final de un robot industrial SCARA. Las restricciones son definidas considerando el modelo cinemático y dinámico de De Luca y Manes para control híbrido. Los controladores propuestos son proyectados compensando las no linealidades del robot y usando el algoritmo LQR. Una tarea práctica es simulada observando el desempeño de las estrategias.

INTRODUCCIÓN


En las dos últimas décadas el problema de modelar y controlar robots manipuladores ha recibido una gran atención [Whitney 77, Mason 81, Hogan 85, Whitney 87, McClamrock 88, Luca 94]. Un robot manipulador es un sistema bastante complejo que se constituye de elementos cuyo comportamiento es altamente no lineal. Desde el punto de vista de control, las aplicaciones de los manipuladores industriales pueden ser clasificadas de dos formas: aquellas tareas en las que el manipulador debe realizar movimientos a posiciones específicas y aquellas tareas donde además del control de posición es necesario el control de fuerza debido a la interacción del manipulador con su entorno. Estos dos tipos de tareas distinguen el control de posición y el control híbrido de fuerza y posición respectivamente.

El control de posición considera la planificación de tareas, generación de trayectorias, la medición a través de sensores y la realimentación de posición. Por otra parte el control de fuerza requiere de elementos adicionales como los modelos de entornos (medios), sensores de fuerza y la realimentación de fuerza y posición [Vukobratovic 94, Vukobratovic 95]. Ha sido realizada una investigación muy amplia sobre el control de manipuladores principalmente cuando estos interactúan con diferentes entornos. Existen diferentes tareas que envuelven un movimiento restricto para el manipulador como pulimento, corte y algunas tareas de ensamblaje. Diferentes algoritmos de fuerza han sido propuestos por diferentes autores. Whitney [Whitney 87] presenta un resumen de las primeras investigaciones realizadas. Algunas contribuciones importantes son el control explícito de fuerza [Whitney 77], el control híbrido [Mason 81, Raibert 81], el control de impedancia [Hogan 85], el control de rigidez [Salisburry 80] y el control paralelo propuesto por [Chiavernini 93]. Debido a la dificultad presentada por la interacción de los manipuladores con su entorno y a las tareas de alta precisión que deben realizar, son necesarias estrategias de control avanzadas. Una estrategia que permite cubrir estas dificultades es el control de dos grados de libertad (2DOF) (De Two Degree Of Freedom) [Wolovich 95].

Los controladores de dos grados de libertad (2DOF), son considerados como un método avanzado de control por sus características, fueron aplicados con buenos resultados en el control de posición  [Fernando 98, Bisso 99, Francisco 2000]. En este trabajo, los controladores de dos grados de libertad, son empleados para el control de posición y fuerza.

En principio es presentado el modelo para el manipulador interactuando con el entorno, posteriormente es realizado el análisis y proyecto del controlador 2DOF. La descripción de un robot tipo SCARA también es presentada. Finalmente son realizadas simulaciones y presentadas las conclusiones. 

MODELO MANIPULADOR-ENTORNO

La descripción de la interacción entre el robot y el entorno, se realiza utilizando dos sistemas de coordenadas: el primero considera las articulaciones del robot y el segundo es  compuesto de variables que describen las direcciones en las cuales es admitido el movimiento del efectuador final desde el punto de vista del entorno. Este modelo permite proyectar leyes de control para fuerza y posición considerando velocidades admisibles y fuerzas de contacto explícitas cuando el contacto entre el robot y el entorno es definido.

Modelo Cinemático

Consideremos un robot con n grados de libertad, compuesto por una cadena cinemática abierta de cuerpos rígidos y parametrizados por el vector q Î Ân de variables de articulación, que pueden ser articulaciones de revolución o de traslación.

Sea r=(p,o) un vector de dimensión 6, donde p es el vector que describe la posición del elemento final en el espacio cartesiano Â3 y o=(j,J,g) corresponde a la orientación determinada por los ángulos de Euler. Con estas consideraciones, la cinemática del elemento final expresada en función de las variables de articulación es:

donde Q(q) es un vector de funciones no lineales que describe la relación entre las variables de articulación y el espacio cartesiano y Ja(q) es una matriz de dimensión 6´n conocida como Jacobiano Analítico.

El vector de velocidades v=( ,w) compuesto por la velocidad lineal  y la velocidad angular w, está relacionada con  a través de la expresión:

 

donde G0=(j,J,g) es una matriz de dimensión (3´3), que expresa la relación de (do/dt) con la velocidad angular w. Definiendo:

 J(q) = G ( Q ( q ) Ja ( q ) ),

el vector de velocidades  generalizadas puede ser escrito ahora como función de la velocidad de articulaciones  de la forma:

donde J(q) es el jacobiano básico del manipulador, conocido como Jacobiano Geométrico, que es no singular en la región de operación. Existen configuraciones en el espacio de trabajo del manipulador que producen un Jacobiano Singular. En estas singularidades, el manipulador pierde uno o más grados de libertad. Como consecuencia, el rango del Jacobiano disminuye y es imposible obtener su inversa. En este trabajo es considerado el Jacobiano de rango completo que puede ser obtenido planificando el movimiento del manipulador fuera de las configuraciones singulares.

En los casos donde existe contacto, las coordenadas de articulación no son suficientes o no son adecuadas para determinar la tarea a ser ejecutada. La tarea de contacto es mejor descrita en un sistema de coordenadas que considere el entorno donde la tarea será ejecutada [Luca 94]. Por este motivo, las variables sk Î Âk y sd Î Âd son escogidas como parámetros para el entorno. El primer parámetro está asociado a las direcciones en las cuales el movimiento del elemento final está restricto y el segundo considera las restricciones dinámicas del elemento final. Entonces son establecidas las k direcciones donde el movimiento del elemento final es posible, las d direcciones correspondientes a las restricciones dinámicas de movimiento; las 6-k-d direcciones donde el movimiento es completamente restricto y por lo tanto cualquier acción del elemento final puede causar una fuerza de reacción del entorno.

Considerando las anteriores definiciones, la posición y velocidad del elemento final vistas del entorno son dadas por:

donde G(s) es un vector de funciones no lineal que relaciona s con r. Del análisis anterior es observado que las ecuaciones (1) y (4) describen la misma posición en el espacio, considerando el lado del manipulador y el lado del entorno, por esta razón la siguiente ecuación de acoplamiento debe ser cumplida:

Substituyendo (4) en (2) y usando (4), puede ser obtenido el vector de velocidades generalizadas como función de s y  de la forma:

donde T(s)=G(G(s))(¶G(s)/(s)) tiene el mismo propósito que el Jacobiano del manipulador y es considerado de rango completo en la región de operación. Dado que la velocidad u es única, en las coordenadas del entorno (6) o de las coordenadas del robot (3), la siguiente igualdad es obtenida:

En contactos puramente cinemáticos, las fuerzas de reacción no realizan ningún trabajo en las direcciones admisibles de movimiento,

donde fr son las fuerzas de reacción y mr son los momentos de reacción del elemento final. La fuerzas generalizadas de reacción pueden ser escritas de la forma:

donde las líneas de la matriz Yr forman una base para las direcciones donde las fuerzas de reacción son posibles y lr Î Â6-k-d es el vector de multiplicadores de Lagrange para las mismas fuerzas. Substituyendo (6) y (9) en (8) se obtiene la siguiente igualdad:

en donde la matriz Yr(s) puede ser seleccionada. De la misma forma se puede mostrar que las fuerzas admisibles de contacto (F=Fr+Fa) no realizan trabajo a lo largo de las restricciones cinemáticas, de forma que:

La fuerza Fa=Ya(s)la es ocasionada por la reacción dinámica del entorno. La matriz Ya(s) es escogida para satisfacer la siguiente condición

TkT Ya=0.

Modelo Dinámico

Utilizando consideraciones de energía junto con la formulación de Lagrange, el siguiente modelo dinámico es obtenido para el sistema Robot-Entorno [Luca 94]:

donde M(q) es la matriz de inercia del robot, que es cuadrada de orden n y definida positiva; u(t) corresponde al vector de torques / fuerzas en cada uno de los ejes; Me(sd) es la matriz de inercia del entorno, cuadrada de orden d y positiva definida, y:

Donde c(q, ) representa los torques centrífugos y de Coriolis; g(q) es el vector de torques gravitacionales; De y Ke son las matrices de amortiguamiento y de rigidez del entorno. La ecuación (12) describe la dinámica del robot y la ecuación (13) describe la dinámica del entorno en d direcciones dinámicas. El entorno es asumido como un sistema lineal de segundo orden. El modelo es completado por las ecuaciones (7) y (11).

Si bien el modelo definido es apropiado para simulación y análisis, la síntesis de control es más adecuada a través de la representación en ecuaciones de estado. Por esto derivando la ecuación (7) con respecto al tiempo:

Resolviendo las ecuaciones (12) y (13) para  y , y reemplazando estos resultados en (16), el modelo obtenido es:

con A = TdMe-1TdT, R=JM-1JT y z=[za  zr  zs]T.

Es importante observar que la fuerza y la condición de contacto no aparecen explícitamente. Por este motivo un controlador utilizando la dinámica inversa podría ser fácilmente obtenido, donde el objetivo es controlar las fuerzas en las direcciones dinámica (la) y estática (lr)  y el movimiento en las direcciones cinemáticas ( ).

La estructura del controlador 2DOF utilizado es ilustrada en la figura 1.  

CONTROLADOR 2DOF

 

                     Figura 1: Controlador de Dos Grados de Libertad

El sistema a ser controlado es representado por una función de transferencia racional y estrictamente propia:

donde los polinomios a(s) y c(s) son asumidos como coprimos.

El controlador 2DOF tiene dos entradas, la salida a ser controlada y la entrada de referencia, y una salida (la variable de control). Puede ser representado por:

 

Una ventaja de la estructura 2DOF al contrario de estructuras clásicas como PID y PD, es que permite considerar en forma independiente objetivos de malla (estabilidad, robustez, atenuación del ruido) y objetivos de salida [Wolovich 95, Fernando 98].

Los polos de malla cerrada son dados por las raíces de la siguiente ecuación característica:

Una localización arbitraria de polos y estabilidad de malla cerrada pueden ser alcanzados determinando polinomios h(s) y q(s) de orden (n-1).

El comportamiento entrada salida puede ser obtenido a través del cancelamiento de n-1 polos de malla cerrada con las raíces del polinomio q(s)=a (s) de orden n-1. La función de transferencia correspondiente es:

La selección de los polinomios  y con grados n y n-1 respectivamente puede ser realizada a través de la minimización del índice cuadrático LQR como:

Los polos óptimos de malla cerrada pueden ser obtenidos a través de las siguientes factorizaciones espectrales:

                                                          (25)

Donde las n raíces de D(s)+=0 y +=0 pertenecen a la región estable del plano complejo. Los factores de ponderación r>0 y s>0 permiten escoger diferentes polos de malla cerrada y por lo tanto modificar la ganancia en frecuencia y la respuesta de salida.

El seguimiento de referencia y la eliminación de la perturbaciones pueden ser obtenidas utilizando el principio del modelo interno. En forma particular para el error e(t)=y(t)-r(t), debido a una referencia, es definido por la siguiente función de transferencia:

Con la referencia dada por r(s)=mr(s)/pr(s) el error nulo en régimen permanente es obtenido si:

La ecuación (27) representa el clásico principio del  modelo interno, y la ecuación (28), impone algunas restricciones para la selección de q(s), que son tomadas en cuenta en el proyecto.

El procedimiento detallado corresponde al algoritmo para error nulo y robusto en régimen permanente a través del índice LQR propuesto por [Wolovich 95].

 

EJEMPLO SIMULADO

Descripción del Robot SCARA

El robot SCARA a ser empleado en las simulaciones ilustrado en la figura 2, fue construido en el instituto de robótica de la Universidad Técnica de Zurich ETH, en Suiza.

Figura 2: Robot Industrial SCARA

Este robot tiene cuatro grados de libertad. La primera, segunda y última articulación son de rotación y la tercera de traslación. Los actuadores en cada una de las articulaciones son motores de corriente alterna, la transmisión en las dos primeras articulaciones es realizada a través de harmonic drives [Gruener 2001], con una reducción de 100/1, cuya salida está conectada directamente a cada uno de los brazos del robot. En las dos últimas articulaciones la reducción es realizada a través de poleas y cadenas, que mueven un sistema ball-screw-spline. Los dos últimos motores trabajan de forma acoplada provocando movimientos simultáneos en estas dos articulaciones.

Las mediciones de posición y velocidad son realizadas a través de sensores de posición (encoders) y de sensores de velocidad (tacómetros). Un sensor de fuerza es acoplado entre la muñeca y el elemento final para la medición de la fuerza y momentos en los ejes x,y,z del sistema de referencia. Los parámetros correspondientes a cada una de las articulaciones del robot son presentadas en la tabla 1.

 

qi

M(Kg)

l(m)

I(Kg m2)

lc(m)

q1

11.4

0.25

0.23

0.118

q2

19.5

0.25

0.16

0.116

q3

2

-

0.1

-

q4

1.5

0

0.1

0

Tabla 1: Parámetros del Robot SCARA

Definición de la Tarea

Considerando el sistema de coordenadas en la base del robot y su correspondiente espacio de trabajo, una tarea de corte es definida para mover el elemento final sobre el eje x de la posición 0.15 m a 0.45 m, siguiendo una trayectoria especificada por un polinomio de quinto orden y manteniendo las dos últimas articulaciones fijas en 0.4 m y 0.0 rad respectivamente; por otro lado una fuerza variable de 0 N a 2 N es aplicada sobre el eje -z, la fuerza también varía de acuerdo a un polinomio de quinto orden.

Por las características constructivas del robot SCARA, la variable de restricciones cinemáticas sk puede ser definida en los ejes x y y como:

derivando la ecuación (29) respecto al tiempo se obtiene:

La fuerza de reacción es parametrizada en la forma Fr=Yrlr, donde la matriz Yr debe satisfacer la condición de ortogonalidad, TTYr= 0. Entonces es obtenido:

con Yr =[1 0]T Þ Fr= Yr lr= [lr 0]T.

Resultados de Simulación

Considerado inicialmente el caso nominal. Las funciones auxiliares de transferencia pr y los factores de ponderación r  y s utilizados para determinar los polinomios h(s), k(s) y q(s) para los controladores de fuerza y posición son presentados en la tabla 2; estos factores fueron obtenidos de forma que sean cumplidas, las condiciones de malla y las condiciones de salida.

 

Control

Pr

r

s

Fuerza

1/s2

104

0

Posición

1/s

104

1011

Tabla 2: Factores de ponderación

Las figuras (3), (4), (5) y (6) ilustran los errores de posición y fuerza respectivamente así como las ganancias de malla y la funciones de sensibilidad para los controladores. Se puede observar que los errores son del orden de 10-4 y 10-2 y que el error en régimen permanente es nulo. Por otro lado a través del análisis de ganancia de malla y de la función de sensibilidad definidas como:

 
se puede verificar los siguientes valores de margen de ganancia GM, margen de fase FM y margen de estabilidad =1/max|s(jw)| [wolovich,95]: malla de posición GM = 10 db, FM=32o y =1 db; para la malla de fuerza GM=15 db, FM = 31o y =0.01 db estos valores proporcionan al proyecto buenas propiedades de robustez a variaciones paramétricas y perturbaciones externas, lo que es de extremo interés para futuras aplicaciones prácticas.

   
Figura 3:
Error de Posición

 

  Figura 4: Error de Fuerza

   
Figura 5:
Ganancia de Malla

   

  Figura 6: Función de sensibilidad

CONCLUSIÓN

Fueron proyectados controladores de dos grados de libertad considerando restricciones cinemáticas. Los controladores fueron proyectados eliminando las no linealidades del robot y usando el índice LQR. Una tarea de corte fue simulada considerando el espacio de trabajo del robot y fue observado el desempeño de los controladores propuestos, cuyos resultados de simulación fueron satisfactorios. En la actualidad, está siendo realizada la implementación práctica.

REFERENCIAS BIBLIOGRÁFICAS

Bisso, C. J. V. ,Controle de Posição de Robôs Manipuladores Rígidos e com Transmisões Flexiveis,Dissertação de Mestrado, Universidade Federal de Santa Catarina ,Brasil, (1999).

Chiavernini and L. Sciavicco, The parallel approach to force/position control of robotic manipulators, IEEE, Transactions on Robotics and Automation, 361-373, (1993).

Fernando T. P. V. and Holohan A., Independient Joint Control using two degree of freedom control structures, Procceding of IEEE Internacional Conference on Control Applications, 552-556,Italy  (1998).

Javier. T. Vargas, E. R. de Pieri e E. Castelan, Controle de Posição de um Robô tipo SCARA Usando Controladores de Dois Graus de Liberdade,  Congreso Brasileiro de Automática, 699-704, Brasil, (2000).

Hogan N., Impedance Control: Na Aproach to manipulation part I, II, III, Journal of Dynamics Systems Measurements and Control,1-24, (1985).

Hüppi R. and Gruener, Software Documentation for SCARA Robot, Swiss Federal Institute of Technology, Swiss, (2001).

Luca A and Manes C., Modeling of Robots in Contact with Dynamic Enviroment, IEEE Transactions on Robotics and Automation, 542-548, (1994).

Mason M. T. , Compliance and Control for Computer Controlled Manipulators, IEEE Transactions on Systems Man and Cybernetics, 418-432, (1981).

McClamrock N. and Wang D., Feedback Stabilization and Tracking of Contrained Robots, IEEE Transactions on Automatic Control , 419-426, (1988).

Raibert M. and Craig J.., Hybrid Position-Force Control of Manipulators, Journal of Dynamics Systems Measurement and Control ,126-133, (1981).

Salisburry J. K., Active Stiffness Control of a Manipulator in Cartesian Coordinates, Procceding of IEEE Internacional Conference on Decision and Control, 95-100, (1980).

Vukobratovic M and Rodic A., Control of Manipulation Robots Interactino with Dyanamic Enviroment: Implementation and Experiments, IEEE Transactions on Industrial Electronics , 358-366, (1995).

Vukobratovic M and Tuneski A, Contact Control Concepts in Manipulation Robotics na Overview, IEEE Transactions on Industrial Electronics , 12-24, (1994).

Weihmann L. ,Descrição, Instalação,Programação e Funcionamento de um Robô SCARA, Dissertação de Mestrado,Universidade Federal de Santa Catarina ,Brasil, (1999).

Whitney D. E. , Force Feedback Control of Manipulator Fine Motions, Journal of Dynamics Systems Measurement and Control ,212-222, (1977).

Whitney D. E. , Historical Perspective and State of the Art in Robot Force Control, Int. Journal of Robotics Research, 3-14, (1987).

Wolovich W. A., Automatic Control Systems: Basic Analysis and Design, Sauders  College Publishing, (1995).


Hacia Arriba