0% encontró este documento útil (0 votos)
13 vistas62 páginas

Teoría de Robots Rígidos por Cables

El documento presenta las bases teóricas de los robots rígidos actuados por cables, centrándose en la relación entre las longitudes de los cables y las coordenadas articulares. Se discuten modelos geométricos, la importancia de medir la fuerza ejercida por los cables, y se propone un enfoque para el control preciso del robot. Además, se analizan las condiciones necesarias para que una estructura articulada se comporte de forma rígida.

Cargado por

juan.aguaron1799
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
13 vistas62 páginas

Teoría de Robots Rígidos por Cables

El documento presenta las bases teóricas de los robots rígidos actuados por cables, centrándose en la relación entre las longitudes de los cables y las coordenadas articulares. Se discuten modelos geométricos, la importancia de medir la fuerza ejercida por los cables, y se propone un enfoque para el control preciso del robot. Además, se analizan las condiciones necesarias para que una estructura articulada se comporte de forma rígida.

Cargado por

juan.aguaron1799
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Juan Aguarón de Blas

Bases teóricas de los robots rı́gidos


actuados por cables

Extracto del Trabajo de Fin de Máster


Diseño, construcción y control de un robot
hiperredundante rı́gido modular

Universidad Politécnica de Madrid


Centro de Automática y Robótica

Tutor: Antonio Barrientos Cruz

Madrid, Febrero 2018


Índice general
Resumen III

1. Bases teóricas de los robots rı́gidos actuados por cables 1


1.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Modelos geométricos . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Fuerza ejercida por el cable: interés de su medida . . . . . . . 6
1.4. Estabilidad y cables . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5. Conceptos sobre actuación con cables . . . . . . . . . . . . . . 15
1.6. Identificación del modelo de actuación del robot . . . . . . . . 29
1.7. Control: en busca de un robot preciso . . . . . . . . . . . . . . 39

A. Diagramas de flujo 51

iii
1. Bases teóricas de los robots
rı́gidos actuados por cables

1.1. Introducción

En este capı́tulo se abordarán los fundamentos teóricos de los robots rı́gidos


accionados mediante cables, que son el objeto de este trabajo. Si bien en
la mayorı́a de robots convencionales el tema de interés se encuentra en
la cinemática, esto es, las relaciones entre las coordenadas articulares y
espaciales del manipulador; en este tipo de robots también es necesario ex-
plicar cuál es la relación entre las longitudes de los cables y las coordenadas
articulares. Es decir, el sistema de actuación.
A lo largo de las siguientes páginas se explicarán distintos conceptos que
respalden las decisiones tomadas en la fase de diseño mecánico del proto-
tipo final, siempre desde una perspectiva genérica que pueda aplicarse a
cualquier tipo de robot rı́gido actuado mediante cables.
Primero se presentarán unos modelos geométricos que se usarán en las
explicaciones de este capı́tulo. Aunque no guarden relación aparente con los
prototipos reales, los conceptos relevantes son completamente extrapolables
de unos a otros. A continuación, se hablará brevemente de la segunda
variable de interés al controlar la longitud de un cable: la fuerza que ejerce.
También se proporcionarán un par de técnicas orientadas a su medida.
La siguiente sección versará sobre la interesante cuestión del número de
actuadores: mientras que en un robot clásico es necesario un único actuador
por cada grado de libertad, en los robots accionados mediante cables esta
proporción es más desfavorable. Se tratará de explicar por qué sucede
esto, y se presentará una metodologı́a general para comprobar si se puede

1
1. Bases teóricas de los robots rı́gidos actuados por cables

lograr que un manipulador concreto se comporte de forma rı́gida mediante


un conjunto de cables determinado. Después, se dedicarán unas cuantas
páginas a estudiar cómo se entrelazan los conceptos de las dos anteriores
secciones de cara a lograr que el robot adopte las configuraciones articulares
deseadas.
A continuación se se presentarán diversas propuestas para obtener un
modelo preciso de actuación, de modo totalmente genérico e independiente
de las caracterı́sticas cinemáticas o mecánicas del robot. Finalmente, las
últimas páginas del capı́tulo se dedicarán al tema del control preciso del
robot: se planterá un regulador LQR en pequeña señal con el fin de alcanzar
la configuración articular deseada.

1.2. Modelos geométricos

A lo largo de las próximas páginas se van a explicar dos modelos geométri-


cos relativamente sencillos que serán empleados durante todo el capı́tulo:
son dos módulos de uno y dos grados de libertad. El primero se actúa
mediante dos cables, y el segundo por medio de tres. En cualquier caso, son
las versiones bi y tridimensional, respectivamente, del mismo concepto.
En esta sección asumiremos que son necesarios dos cables para controlar
un grado de libertad, o tres para el modelo en tres dimensiones. En una
sección posterior se justificará esta necesidad.

1.2.1. Módulo de un grado de libertad actuado mediante


dos cables

En la Figura 1.1 se representa el módulo objeto de estudio, siendo las varia-


bles de interés el ángulo θ y las longitudes de cable l A y l B . Asumiendo que
en θ = 0 los cables son paralelos a la columna central (es decir, que forman
un ángulo recto con la base), y que siempre pasan por los puntos PA , PB , se
tendrán las siguientes ecuaciones tomando como origen de coordenadas el
extremo inferior izquierdo del módulo, PA :

2
1.2. Modelos geométricos

c d

a θ lB

h
lA
b

PA PB
R

Figura 1.1.: Esquema del módulo plano con ángulos y distancias caracterı́sticos

a = R sin θ
d = R cos θ (1.1)
 
( PA , A) = ( R, h) − R(cos θ, sin θ ) = R(1 − cos θ ), h − R sin θ

obteniéndose ası́ las siguientes relaciones entre longitud de cable y ángulo


girado:
(
l A (θ ) = || R(1 − cos θ ), h − R sin θ ||2
(1.2)
l B (θ ) = || R(1 − cos θ ), h + R sin θ ||2

En la Figura 1.2 se ha representado la curva l A (θ ), que presenta un compor-


tamiento bastante lineal en torno a θ = 0.

1.2.2. Módulo de dos grados de libertad actuado mediante


tres cables

La extrapolación del módulo anterior a tres dimensiones implica la existen-


cia de un grado de libertad adicional en la articulación, que se traduce en

3
1. Bases teóricas de los robots rı́gidos actuados por cables

Figura 1.2.: Curva l A (θ )

una junta universal o cardán (Figura 1.3).


Los puntos A0 , B0 y C0 son aquéllos por los que los cables pasan en la base
del módulo (equivalentes a PA , PB en el modelo plano de la Sección 1.2.1).
Equivalentemente, se definen los tres puntos A1 , B1 , C1 correspondientes a
los anclajes de los cables en la plataforma superior. Siendo α el giro en el eje
x, y β en el y, se pueden calcular las posiciones de los puntos superiores
empleando matrices de transformación homogéneas.
Ası́, las longitudes de los cables en función de los ángulos girados por la
articulación se hallarán computando las distancias entre el punto de paso
inferior y el de anclaje:

l A (α, β) =||( A0 , A1 )||2


l B (α, β) =||( B0 , B1 )||2 (1.3)
lC (α, β) =||( B0 , C1 )||2

4
1.2. Modelos geométricos

Figura 1.3.: Módulo de dos grados de libertad actuado mediante tres cables basado en
junta universal.

En el Anexo ?? se muestra un código Matlab que permite obtener de forma


analı́tica estas expresiones.

1.2.3. Guiado de los cables a través del robot

Se han obtenido las ecuaciones que relacionan los ángulos girados por
las articulaciones con las longitudes de cable que los hacen posibles. Sin
embargo, eso sólo resuelve el problema de un único módulo: por lo general,
interesará tener varios módulos concatenados para tener un manipulador
con más de uno o dos grados de libertad. Eso conduce a la cuestión de
cómo influye la configuración articular del robot en la longitud de los cables
que actúan en una articulación determinada. En la Figura 1.4 se muestran
dos posibilidades.
En la primera, los cables bajarı́an por el exterior del robot, y en la segunda
pasarı́an lo más cerca posible de su columna central, con el fin de simplificar
los cálculos. En el primer caso, tendrı́amos que l A,3 = f (θ1 , θ2 , θ3 ) = f (θ̄ ),
mientras que en el segundo apenas influirı́a el valor del resto de articu-

5
1. Bases teóricas de los robots rı́gidos actuados por cables

q3 q3

lA,3 q2 lA,3
q2
lB,3 lB,3
q1 q1

Figura 1.4.: Dos alternativas para el guiado de cable

laciones al discurrir los cables por una lı́nea de longitud cuasi constante:
l A,3 ' f (θ3 )
La primera opción es constructivamente más sencilla y hace sufrir menos
a los cables (puesto que encuentran giros menos bruscos), pero el control
resulta más complicado ya que para pasar de una configuración articular
a otra hay que variar las longitudes de todos los cables, como se verá
en la Sección 1.5.8. En la segunda ocurre al revés: los cables tendrán que
deformarse más, pero el modelo resultará más sencillo.
A lo largo del capı́tulo se empleará la primera opción, principalmente por
ofrecer mayor claridad en los diagramas. En cualquier caso, las técnicas de
análisis expuestas son perfectamente aplicables al segundo caso.

1.3. Fuerza ejercida por el cable: interés de su


medida

En la sección anterior se han calculado longitudes de cables en distintas


módulos, pero en todos ellos se ha asumido que el cable describı́a una lı́nea
recta entre dos puntos, siendo su longitud el único factor relevante. Sin
embargo, existe otra variable a tener en cuenta: la fuerza con la que se tira

6
1.4. Estabilidad y cables

de él.
Un cable siempre debe tener cierta tensión, o en caso contrario estará laxo y
no aportará rigidez a la estructura (ya que sólo puede funcionar a tracción,
y nunca a compresión). Esto lleva a plantear la una nueva cuestión: la de
qué fuerza de tracción es la adecuada. La respuesta natural parece ser que
aquella que haga que el ángulo θ (o α, β en el caso tridimensional) sea el
deseado.
Sin embargo, existen infinitas parejas de longitudes (l A,i , l B,i ) que dan lugar
a la misma θi : esto es ası́ debido a que la fuerza ejercida por los cables es
otra variable, adicional al ángulo (algo que se desarrollará en más detalle
en la Sección 1.5.5).
En cualquier caso, esta cuestión se abordará de forma exhaustiva en la
Sección 1.5. Por ahora, baste decir que la fuerza ejercida por los cables
juega un papel importante en el control del robot, y que por ello resulta
interesante medirla.

1.3.1. Tipos de medida de fuerza

A lo largo del capı́tulo se considerarán dos métodos de medida de fuerza:


continuos o discretos. Esta separación es necesaria debido a que resulta
más económico y sencillo de implementar un sensor discreto de fuerza que
uno continuo. Ası́, en el primer caso la salida del captador será un valor
digital (alto o bajo) según el valor de la fuerza supere o no cierto umbral;
mientras que en el segundo se dispondrá de una medida continua de la
fuerza dentro de un rango. En la Sección ?? se presentan algunos diseños
que implementan estos conceptos.

1.4. Estabilidad y cables

En la primera sección se presentaron los módulos básicos de articulaciones


actuadas con cables, y se propuso la hipótesis de que eran necesarios dos
cables para actuar un grado de libertad, o tres en el caso de una articulación

7
1. Bases teóricas de los robots rı́gidos actuados por cables

θposibles { θposibles θposibles θposible

{
{
θmin θmax θmin θ(lA) θmax θmin θ(lB) θ(lA) θmax θmin θ(lA) θmax
θ(lB)

a) b) c) d)

Figura 1.5.: Etapas de la acotación del ángulo de giro de un módulo plano.

esférica. A continuación se justificarán estas suposiciones, y se desarrollará


un marco teórico que permita evaluar bajo qué condiciones una estructura
articulada cualquiera soportada por cables se comporta de forma rı́gida.

1.4.1. Demostración de la necesidad de dos cables para


controlar un grado de libertad

En la Sección 1.2.1 se presentaron las ecuaciones que definen las longitudes


de los cables (l A , l B ) en función del ángulo θ. Siendo estas expresiones
biyectivas, existirán las funciones recı́procas θ (l ):
(
l A (θ ) = || R(1 − cos θ ), h + R sin θ ||2 → θ (l A )
(1.4)
l B (θ ) = || R(1 − cos θ ), h − R sin θ ||2 → θ (l B )

Además, se considera que el ángulo θ está limitado a un intervalo θ ∈


[θmin , θmax ]. Resulta evidente que, en ausencia de cables, la articulación
podrı́a girar libremente dentro de su rango de movimiento. Es decir, que el
intervalo de ángulos posibles serı́a θ posibles = [θmin , θmax ], como se esquema-
tiza en la Figura 1.5, a.

8
1.4. Estabilidad y cables

Pero, si se acota l A a un valor determinado, el ángulo quedará limitado


mediante la restricción impuesta por l A (Figura 1.5, b):

θ posibles = [θmin , θ (l A )] (1.5)

Y si a continuación se bloqueara l B a un valor geométricamente factible, se


tendrı́a el siguiente intervalo dentro del cual la articulación podrı́a girar
libremente (Figura 1.5, c):

θ posibles = [θ (l B ), θ (l A )] (1.6)

Variando (l A , l B ) serı́a posible modificar el rango θ posibles . Y, si θ (l A ) = θ (l B ),


sólo hay un θ posible: la articulación queda fijada y el módulo se considera
rı́gido (Figura 1.5, d).
En resumen: puesto que, por definición, el intervalo tiene dos extremos,
para acotarlo serán necesarios dos cables.

1.4.2. Demostración de la necesidad de tres cables para


controlar una junta universal

En la sección 1.2.2 se presentaron las ecuaciones del módulo basado en una


articulación de tipo cardán de dos grados de libertad actuada mediante tres
cables. En ésta se seguirá un procedimiento similar al del apartado anterior
para justificar la necesidad de los tres cables para asegurar la rigidez de la
estructura (esto es, que sus dos ángulos están puntualmente acotados).
Para simplificar la explicación, se han ubicado los anclajes de los tres ca-
bles del modo que se ve en la Figura 1.3. De este modo, se logra que
la longitud l A no dependa de β (puesto que A1 está contenido en el eje
de rotación de β). Ası́, de acuerdo con la Figura, se tendrı́an las longitu-
des l A (α), l B (α, β) y lC (α, β). Se asumirá que existen las funciones inversas
α ( l A , l B , lC ) y β ( l B , lC ).
De nuevo, se parte de la base de que los ángulos de giro α, β restringidos a

9
1. Bases teóricas de los robots rı́gidos actuados por cables

un cierto intervalo:
α ∈ [αmin , αmax ] (1.7)
β ∈ [ β min , β max ] (1.8)

Ahora, si se fija l A a un valor arbitrario, se estará restringiendo el movimiento


de α, con lo que se tendrá la siguiente situación (en concordancia con los
sentidos de giro marcados por la Figura 1.3):

α posibles = [α(l A ), αmax ], β posibles = [ β min , β max ] (1.9)

Si a continuación se fija l B (nuevamente, a un valor que esté permitido por la


geometrı́a propia del módulo), los intervalos pasarán a ser los siguientes:

α posibles = [α(l A ), α(l B )], β posibles = [ β(l B ), β min ] (1.10)

Y si, finalmente, se bloquea lC , se habrá llegado a una situación en la que los


intervalos están únicamente definidos por las longitudes de los tres cables
(la función mı́n se debe a que prevalecerá la restricción más fuerte entre l B
y lC ):

h i
α posibles = α(l A ), min[α(l B ), α(lC )] , β posibles = [ β(l B ), β(lC )] (1.11)

Es decir, que hasta que no se incorpora un tercer cable no se tiene control


completo del rango de posibles (α, β). Si se hace que ese rango sea un único
punto del espacio [α, β], la configuración quedará fijada y la estructura se
comportará de forma rı́gida, esto es, sin que sus articulaciones puedan
rotar.

1.4.3. Un módulo de dos grados de libertad actuado


mediante tres cables no basado en cardán

En la sección anterior se ha demostrado que el módulo basado en articu-


lación esférica puede llegar a hacerse estable por medio de tres cables. Sin

10
1.4. Estabilidad y cables

embargo, desde el punto de vista del diseño mecánico una articulación de


tipo rótula es más compleja que una junta de un grado de libertad. Ası́ que
en los próximos párrafos se propondrá un módulo alternativo de desarrollo
propio que, en conjunto, también tiene dos grados de libertad y tres cables
de actuación, pero sus juntas están trasladadas entre sı́.
El módulo es el representado en la Figura 1.7. Para conocer las longitudes
de los cables, serı́a preciso calcular las siguientes distancias, expresadas
de forma genérica en función de ángulos qi en vez de (α, β) de cara a
generalizarlo para un conjunto de módulos:

l A (q1 , q2 ) = || A − A0 ||2 (q1 , q2 ) (1.12)


0
l B (q1 , q2 ) = || B − B ||2 (q1 , q2 ) (1.13)
lC (q1 , q2 ) = ||C − C 0 ||2 (q1 , q2 ) (1.14)

En el Anexo ?? se encuentra una función escrita en Matlab para obtener


esas distancias.
Pero la obtención de las ecuaciones que rigen las longitudes de los cables
no garantiza que el módulo se comporte de forma rı́gida, puesto que no
cumple con las restricciones de los modelos analizados anteriormente. Por
tanto, se hace necesario algún método que permita verificar la rigidez de un
módulo concreto.

1.4.4. El problema de estabilidad y un algoritmo para


resolverlo

El problema que se presenta consiste en determinar si un módulo o un


conjunto de módulos de articulaciones rotacionales1 actuado por cables es
estable en una configuración determinada definida por las longitudes de
esos cables, entendiendo estable como que todas las articulaciones están

1 Cuyos grados de libertad recaigan en los parámetros θ de Denavit-Hartenberg, es


decir, que sean puramente rotacionales y no de revolución

11
1. Bases teóricas de los robots rı́gidos actuados por cables

fijadas, sin posibilidad de movimiento (es decir, que el módulo se comporte


de forma rı́gida).

Se parte de la base de que se dispone de las ecuaciones que relacionan los


ángulos de giro de las articulaciones con las longitudes de los cables. De
forma genérica, para un módulo de dos grados de libertad y tres cables se
tendrı́an las siguientes expresiones:

l A = f A ( q1 , q2 ), l B = f B ( q1 , q2 ), lC = f C ( q1 , q2 ) (1.15)

El algoritmo que se propone para estudiar la estabilidad de una estructura


para un punto articular cualquiera es el siguiente:

Se elige un punto (q1 , q2 )


Se calcula (l A , l B , lC ) en función de (q1 , q2 ) mediante las ecuaciones
propias del módulo
Se muestrea (aleatoriamente o no) en un entorno reducido alrededor
de (q1 , q2 ). Para cada una de estas nuevas configuraciones articulares
(q10 , q20 ) se calculan sus correspondientes (l 0A , l B0 , lC0 )
Se compara la terna original de longitudes con cada una de las nuevas.
Basta con que una de las longitudes li0 sea mayor que su homóloga
original para que esa configuración no sea alcanzable desde (q1 , q2 ),
ya que para ello el cable deberı́a elongarse, lo que no se contempla

Si la proporción entre puntos alcanzables y muestreados es cercana a cero,


se puede considerar que el módulo, para esos (q1 , q2 ) concretos, es estable.
En principio, para garantizar la rigidez no deberı́a poderse alcanzar ningún
punto en el entorno de la configuración estudiada, pero puesto que no se co-
noce el comportamiento de las funciones li (q̄) podrı́a infiltrarse algún punto
que no sea alcanzable, pero que compute como si lo fuera. En cualquier
caso, la probabilidad de que esto ocurra disminuye conforme se reduce el
entorno de muestreo.

Si se recorre todo el espacio articular de la estructura y se aplica el procedi-


miento descrito a cada (q1 , q2 ) es posible determinar si el módulo es estable
en todo el rango articular, si sólo lo es en un subespacio determinado, o si
no resulta rı́gido en ninguna configuración.

12
1.4. Estabilidad y cables

Figura 1.6.: Diagrama de estabilidad de junta universal. Los puntos en blanco son comple-
tamente estables. A la derecha, el diagrama binario de estabilidad correspon-
diente.

En el Anexo ?? se muestra una implementación del algoritmo en código


Matlab.

1.4.5. Verificación del algoritmo con el módulo tipo cardán

Para comprobar que el criterio de estabilidad es adecuado, se evaluará el


módulo basado en rótula esférica ya que se ha demostrado previamente que
es estable. Como recordatorio, se trata del representado en la Figura 1.3.
En la Figura 1.6, izquierda se representa el diagrama de estabilidad de la
articulación universal. Los puntos blancos indican que esa configuración
articular es completamente estable, y conforme se van oscureciendo dismi-
nuyen las garantı́as de que el módulo se pueda comportar de forma rı́gida
en esa configuración concreta. Dicho de otro modo, cuanto más oscuro se
encuentra representado un punto, mayor será el número de “direcciones”
en las que pueda variarse su configuración articular.
Ası́, vemos que para un rango articular muy amplio este módulo es estable,
existiendo unos lı́mites claramente definidos que separan el subespacio

13
1. Bases teóricas de los robots rı́gidos actuados por cables

Figura 1.7.: Módulo de dos grados de libertad no basado en cardán y actuado mediante
tres cables.

estable de aquél en el que la rigidez no está garantizada. Por eso, en la


Figura 1.6, derecha se muestra el diagrama binario de estabilidad, que no es
otra cosa que el diagrama anterior tras aplicar un umbral próximo a 1: en
los puntos en blanco la estructura será estable; y en los negros, no. Se trata
de un diagrama necesario para el posterior control del módulo, pues deberá
tenerse en cuenta que la configuración articular no traspase la frontera que
separa la zona estable de la inestable.

1.4.6. Estabilidad de un módulo de dos grados de libertad


trasladados actuado mediante tres cables

En la sección 1.4.3 se presentó un módulo de dos grados de libertad actuado


mediante tres cables no basado en junta universal.
El conjunto es el representado en la Figura 1.7. Se basa en tres cables: l A
permite actuar q1 en un sentido, teniendo para el contrario l B y lC . Además,

14
1.5. Conceptos sobre actuación con cables

Figura 1.8.: Diagrama de estabilidad del módulo alternativo. Los puntos en blanco son
completamente estables. A la derecha, el diagrama binario de estabilidad
correspondiente.

con estos últimos cables es posible variar q2 . Es decir, que si se recogen


l B , lC simultáneamente se produce una variación de q1 (siempre que l A lo
permita); y si se tira de uno ellos mientras el otro se libera (manteniendo l A
constante), se alterará q2 .
Por muy prometedor que este módulo pueda parecer, es preciso verificar
que sea estable. Para ello se emplea el algoritmo expuesto unos párrafos
atrás, con el que se llega a un diagrama como el de la Figura 1.8.
En él se aprecia que el módulo no sólo es estable dentro de una región, sino
que ésta (como se observa en el diagrama binario de estabilidad) es incluso
mayor que en la estructura basada en la junta de tipo cardán.

1.5. Conceptos sobre actuación con cables

En las secciones anteriores se han desarrollado algunos conceptos de ı́ndole


teórica con el fin de presentar las estructuras geométricos que se emplearán
a lo largo del trabajo. En este apartado se dará un paso más, y se sentarán

15
1. Bases teóricas de los robots rı́gidos actuados por cables

las bases necesarias para modelar y controlar un robot compuesto por varios
módulos como los ya expuestos.
Gran parte de las explicaciones se harán en base al módulo de un grado
de libertad (como el de la Figura 1.1) actuado mediante dos cables, aunque
son completamente extrapolables al caso tridimensional (dos grados de
libertad, tres cables). La razón detrás de esta decisión es gráfica: cuantas
menos variables haya en juego, más sencillo resulta representarlas.

1.5.1. Definición de la curva S y de los subespacios J, N

En el caso del módulo plano, las longitudes (l A , l B ) para un θ concreto se


calcularon con las siguientes expresiones:
(
l A (θ ) = || R(1 − cos θ ), h − R sin θ ||2
(1.16)
l B (θ ) = || R(1 − cos θ ), h − R sin θ ||2

Sin embargo, a priori los cables podrı́an adoptar cualquier valor compren-
dido entre sus máximos y sus mı́nimos, a pesar de no proporcionar una
solución puntual en θ. Al conjunto de todas las posibles longitudes de cable
se le llamará C, y en él estarán contenidos los puntos (l A , l B ) que cumplan
las restricciones:
(
lA ∈ [l A,min , l A,max ]
(1.17)
lB ∈ [l B,min , l B,max ]

No obstante, únicamente resultan de interés aquellos puntos de C que


proporcionan una solución puntual en θ. En la Figura 1.9, izquierda se han
representado los puntos l¯ (longitudes de cable) contenidos en C que quedan
definidos por las ecuaciones del módulo para un rango articular concreto.
Esta curva2 , a la que se denominará S o curva de soluciones, estará por
tanto contenida en C.
2 Resultaque la curva S es una variedad de tipo 1 (plano) o 2 (3D):
[Link] Estarı́a bien la justificación aquı́, del mismo modo que cada
una de las regiones T, W es una variedad de tipo 2 ó 3. Añadir a referencias

16
1.5. Conceptos sobre actuación con cables

Figura 1.9.: Titulo

En la Figura 1.9, derecha se muestra la misma gráfica pero en 3D. El eje


adicional, el Z, representa el ángulo girado por la articulación en cada uno
de los puntos l¯ = (l A , l B ) contenidos en S. La proyección de los puntos de
la curva S(l A , l B , θ ) sobre el plano θ = 0 equivaldrı́a a la primera gráfica.
La curva S es una variedad de dimensión uno en el caso actual, pero en
el módulo actuado mediante tres cables su dimensión serı́a dos: se tendrı́a
entonces una superficie, como se muestra en la Figura 1.10.
En cualquier caso, la curva S separa el espacio de las longitudes de cable C
en 2 subespacios: uno al cual no es posible llegar porque los cables no lo
permiten (bajo la hipótesis de sólido rı́gido), y otro que no proporciona una
solución puntual para θ (es decir, que el grado de libertad tendrá juego). De
este modo, el espacio C estarı́a compuesto por los siguientes elementos:
Curva o superficie de soluciones, S: la formada por los puntos de
C que aseguran un θ puntual. Se obtiene a partir de las ecuaciones
geométricas del módulo
Subespacio restringido, N: donde las longitudes de cable son demasia-
do pequeñas, y no ofrecen una solución realizable. Corresponderá al
lado de S en el que se encuentre el punto l¯ = (l A,min , l B,min , lC,min ).
Subespacio de juego, J: las longitudes de cable son demasiado grandes,
y no proporcionan una solución única en θ, sino un rango.

17
1. Bases teóricas de los robots rı́gidos actuados por cables

Figura 1.10.: Superficies S de los dos módulos tridimensionales estudiados. Tan sólo se
representan aquellos puntos para los que la configuración es estable.

1.5.2. Presentación del concepto de cable elástico. Curva


V

Todos los razonamientos geométricos realizados hasta el momento se han


hecho asumiendo que un cable no es elástico (es decir, asumiendo que bajo
tracción se comporta como un sólido rı́gido) cuando eso no es cierto: en
el mundo real, para el módulo de la sección anterior serı́a posible fijar la
articulación a un θ concreto, y reducir levemente las longitudes de los cables.
Es decir, que (l A , l B ) pasen a ser (c · l A , c · l B ); de forma proporcional para
que la articulación siga en θ, y no pase a ser θ + ∆θ 3 .
Con esto lo que se hace no es sino tirar con más fuerza de los cables (o,
equivalentemente, aumentar su tensión), un concepto muy interesante que
es necesario explorar. Puesto que estos nuevos puntos no están contenidos en
la curva S, será preciso reestructurar el espacio C para tenerlos en cuenta.
Lo que se propone es definir un subespacio nuevo en C mediante la división
de N en dos de menor tamaño: uno que seguirá siendo considerado no
alcanzable, denominándolo N, y otro nuevo que se llamará T. Esta región
3 Esto no es cierto, pero con el fin de simplificar la explicación se tomará como si fuera
verdad.

18
1.5. Conceptos sobre actuación con cables

S
emi
pl
anosc
ara
cte
rísc
osyc
urv
asdes
oluc
ione
syt
ens
iónmá
xima T
ray
ect
ori
asaá
ngul
ocons
tant
eent
reSyV

S
J S
V
V

T
N

Figura 1.11.: Partición de C en tres regiones: J, T, V.

T se puede considerar “operativa” en tanto que cualquier conjunto de


longitudes que se halle dentro de ese subespacio representa una posible
solución puntual de θ. Es decir, no existirá juego en la articulación y será
mecánicamente alcanzable.
Idealmente se limitarı́a este nuevo subespacio T mediante dos curvas: por
un lado S; y por otro, una que marque el lı́mite elástico de los cables. Sin
embargo, tanto por comodidad como por mantener un cierto margen de
seguridad en los cables, se fijará para cada punto de la curva S, (l A , l B ), un
homólogo ( β · l A , β · l B ) que definirá V: la curva (o superficie) lı́mite inferior
o de tensión máxima. Con un β arbitrario se obtendrı́an unas particiones
como las mostradas en la Figura 1.11, izquierda.
De este modo se formarı́a la región o subespacio T (de Tensión) entre la
curva de soluciones S y la de tensión máxima, V. Para cada punto l¯ ∈ T,
cuanto más se acerque a V, mayor será la tensión a la que estarán sometidos
los cables. O lo que es lo mismo: mayores serán las fuerza con las que se
tira de ellos.
Evidentemente, sólo se garantizará un θ igual al calculado en S si las longi-
tudes se hallan sobre la curva de ángulo constante correspondiente, como
se puede observar en la Figura 1.11, derecha: cada lı́nea negra representa el
conjunto de puntos posibles l¯ contenidos en T que dan como resultado el

19
1. Bases teóricas de los robots rı́gidos actuados por cables

fA
lA

g
lB
fB
Figura 1.12.: Módulo plano sometido a un par de perturbación

mismo ángulo θ.

1.5.3. Unificación de medidas de fuerza en una única


variable

En la sección anterior se ha supuesto que, para mantener θ constante a


través de la región T, era preciso contraer los cables de forma proporcional
(de forma que (l A , l B ) pasaran a ser (c · l A , c · l B )). Esto no es necesariamente
cierto, puesto que podrı́a darse una situación como la de la Figura 1.12,
en la que se tiene en cuenta la gravedad (algo de lo que es difı́cil escapar
en el mundo real). Modelando mediante la masa m la dinámica del robot
durante un movimiento o el efecto combinado de las masas de los módulos
superiores, es evidente que se produce un par de perturbación τ que afecta
a la articulación.
En este caso, la suposición de que las longitudes han de elongarse o retraerse
proporcionalmente es claramente falso. Debido al par τ, para mantener
θ constante al retraer l B un cierto valor, la retracción de l A deberá ser
proporcionalmente mayor. Dicho de otro modo, la fuerza ejercida por el
cable superior deberá ser mayor que la del inferior. Al prescindir de esta
conjetura, será preciso redefinir las curvas S y V. Puesto que se mide la
fuerza ejercida por cada uno de los cables, se presentará un criterio basado

20
1.5. Conceptos sobre actuación con cables

en ellas.
Anteriormente se ha hablado de un único valor de fuerza f , a pesar de
que cada uno de los cables estará sometido, por lo general, a una tensión
diferente. La explicación a esta aparente inconsistencia radica en las curvas
de ángulo constante mostradas en la Figura 1.11, derecha: cada una de
estas lı́neas, independientemente del tipo de módulo (ya sea uno plano de
un grado de libertad, o uno tridimensional con dos articulaciones), es una
variedad de dimensión uno que se puede recorrer aumentando la fuerza
con la que se tira del cable. En el caso de la estructura plana, si bien hay dos
fuerzas a priori independientes, la restricción impuesta por el ángulo θ hace
que queden relacionadas de forma que se trate, en última instancia, de una
única variable.
Puesto que la región de interés es la comprendida entre las curvas S y V,
donde la fuerza ejercida por los cables será siempre mayor que cero, se ha
optado por identificar la variable de fuerza de interés como la menor del
conjunto: f = mı́n( f i ). Ası́, si alguna de las fuerzas medidas es cero, se
considerará que f = 0 ⇒ l¯ ∈ J. En cualquier caso, f será propia del módulo,
y no del manipulador en conjunto: un ensamblaje de p módulos dará lugar
a un número p de variables f .
De este modo, la curva S representará una frontera o cota de T en tanto
que cualquier punto l¯ ∈ T tendrá un valor de fuerza f más próximo a cero
cuanto más cerca de S se encuentre.
Puesto que la curva V fue descrita anteriormente en base a un criterio de
elongación máxima de los cables, ahora será preciso modificar su definición
de modo que se base en las fuerzas ejercidas por cada cable. Si la superficie
S representa una cota mı́nima de T, V lo hace por arriba. De este modo,
tiene sentido definir V como la curva o superficie compuesta por los puntos
l¯ en los que una de las medidas de fuerza f i es igual a f max , siendo el
resto superiores a cero. Dicho de otro modo, un punto l¯ ∈ T 4 cruzará V
(adentrándose en N) en el momento en el que la fuerza ejercida por uno de
sus cables supere el umbral arbitrario f max . En resumen:

4 Técnicay formalmente se podrı́a pasar de J a N sin atravesar T, pero profundizar en


ello complica innecesariamente la explicación. Ası́ pues, no se considerará esa situación
(que, de todas formas, carece de utilidad práctica).

21
1. Bases teóricas de los robots rı́gidos actuados por cables

S
J
U
V
W
N T

Figura 1.13.: Partición final de C

S se define geométricamente a partir de las ecuaciones del módulo.


Además, si se retraen los cables desde un punto l¯ ∈ S aumentará la
fuerza que estos ejercen, pasando inmediatamente f a ser superior a
cero. Cumple pues la función de lı́mite o cota de T.
V se cruza en el momento en el que al menos una de las medidas de
fuerza supera un cierto valor, poniendo de relieve que su función es
preventiva.

1.5.4. Curva de tensión mı́nima U

Realmente el módulo plano objeto de este estudio no se diferencia tanto de


una articulación animal, como puede ser un codo humano: ambos tienen un
grado de libertad, y son actuados mediante dos “cables”: en el primero serán
sirgas; y en el segundo, el bı́ceps y el trı́ceps braquial. Por ello no resulta
sorprendente que en ambos casos resulte más difı́cil actuar externamente
la articulación cuanto más tensionados se encuentren los cables (ya sean
artificiales o naturales). Ası́, será habitualmente deseable en una junta o
articulación actuadas por cables dotar a éstos de cierta tensión con el fin de
robustecerlas frente a perturbaciones.

22
1.5. Conceptos sobre actuación con cables

Dentro del marco teórico presentado hasta el momento, esto serı́a equiva-
lente a decir que, cuanto más cerca se halle el punto l¯ de la curva V (es
decir, a mayor tensión de cable), mayor será la oposición que presentará la
articulación a que un par externo varı́e el valor de la misma.

De cara al control, resulta evidente el interés que tiene hacer el módulo


más robusto frente a perturbaciones. Ya que la curva S se obtiene de forma
analı́tica a partir de un conjunto de ecuaciones que asumen que un cable
bajo tracción se comporta como un sólido rı́gido, la fuerza ejercida por
las sirgas en esos puntos l¯ será nula sobre el papel, y muy reducida en la
práctica.

Con esto en mente, se propone definir una nueva curva en C, la curva de


tensión mı́nima U, que garantice una mayor robustez del módulo. Estará
contenida en la región T, dividiéndola en dos nuevas: una que seguiremos
denominando T situada entre V y U; y otra a la que llamaremos W entre U
y S (Figura 1.13).

Formalmente, U se define de manera muy similar a V: ya que lo que


interesa es que los cables ejerzan una fuerza mı́nima, se considerará que
U está compuesta por aquellos puntos l¯ para los que su variable de fuerza
unificada sea igual a cierta constante situada entre cero y f max :

l¯ ∈ U si f |l¯ = f min = f U (1.18)

Tras la introducción de esta última curva, la distribución final del subespacio


de las posibles longitudes de cable C quedarı́a de este modo:

3 curvas caracterı́sticas (S, U, V)


2 grandes regiones donde no hay solución q, ya sea por tener juego o
por resultar inalcanzable (J, N)
2 regiones más pequeñas que se encuentran entre las dos anteriores,
para las que existe una solución puntual q (T, W)

23
1. Bases teóricas de los robots rı́gidos actuados por cables

τpert
q
l Ecuaciones para
las regiones (T,W)
f

Figura 1.14.: Diagrama de entradas y salidas de un módulo genérico

1.5.5. Necesidad de la medida de fuerzas

Podrı́a existir cierta confusión ante el método seguido hasta ahora, que
supone que es preciso medir para cada cable tanto su longitud li como
la fuerza que ejerce, f i . Especialmente porque, a simple vista, parecen
conceptos equivalentes: tirar con más fuerza de un cable equivale a reducir
su longitud, y viceversa. Esto sucede si se confunden variables de actuación
(longitudes de los cables l)¯ y variables controladas (fuerza ejercida por los
cables f , valores articulares q̄).

Ante la tentadora idea de conocer la tensión de los cables –o, equivalente-


mente, la fuerza ejercida por ellos- a partir de sus longitudes, o directamente
prescindir de esa información, sólo cabe presentar un ejemplo disuasorio:
es cuanto menos arriesgado pretender estimar la velocidad de un coche
midiendo únicamente cuánto se pisa el acelerador.

En cualquier caso, se tendrı́a un sistema que, dentro de las regiones T, W;


puede esquematizarse como en la Figura 1.14. Para el módulo tridimensional
habrı́a tres variables a controlar: dos ángulos (q1 , q2 ), y la fuerza ejercida
por los cables ( f ). Como ya se explicó en una sección anterior, es posible
alcanzar la misma configuración articular con distintos valores de f , lo que
la convierte en otra variable más. Por consiguiente, para conocer el estado
del sistema en su totalidad será preciso medir o estimar las tres variables.

24
1.5. Conceptos sobre actuación con cables

f J W T f
N
fmax V
T
fmin U
W
S
A B Avance J
S U V
Figura 1.15.: Trayectoria entre dos puntos en C. Niveles de f

1.5.6. Ubicación de l¯ en C en función del valor de f

Como se ha visto, es posible definir las distintas regiones en que se encuentra


dividido el espacio C a partir de la medida de las fuerzas ejercidas por cada
cable, unificadas dentro de la variable f . En esta sección servirá de ejemplo
para ver cómo se puede emplear esta información para discernir en qué
subespacio en concreto se encuentra un punto l¯ determinado.

En la Figura 1.15, izquierda se presenta el mapa del espacio C con dos puntos
A, B correspondientes a dos conjuntos de longitudes: uno de partida (l¯A )
y otro de llegada (l¯B ). Haciendo que las longitudes de los cables describan
una trayectoria a través del espacio C entre A y B como la representada por
medio de la lı́nea roja, se encontrarı́a una situación como la esquematizada
en la Figura 1.15, centro desde el punto de vista de f .

En esta situación, se partirı́a desde la región J con un valor de f nulo, que


se mantendrı́a en cero hasta cruzar la curva S. A partir de ahı́, f crecerı́a de
forma monótona atravesando las regiones W y T hasta superar la curva V
de tensión máxima. A partir de ahı́ no estarı́a garantizada la llegada a B:
quizá los accionadores no tengan suficiente potencia, y puede que los cables
sufran deformación plástica o, eventualmente, rotura.

En cualquier caso, para todo punto l¯ se tendrán los niveles de f mostrados


en la Figura 1.15, derecha.

25
1. Bases teóricas de los robots rı́gidos actuados por cables

lB f
P fv
J
T,W
N P
qmin qmax q
lA
Figura 1.16.: T

1.5.7. Biyección entre l¯ y (q̄, f¯)

En base a las definiciones de U y V presentadas en las secciones 1.5.3 y


1.5.4 se han trazado los lı́mites de las regiones T y W. Sin embargo, para
delimitarlas de forma completa y rigurosa es preciso añadir dos regiones
más al mapa del subespacio C: los subespacios P.
Estas nuevas regiones tienen en cuenta los casos en los que una configu-
ración articular es alcanzable matemáticamente, pero no mecánicamente.
Dicho de otro modo, tienen su origen en el rango articular de la junta en
cuestión (que estará definido entre qmin y qmax ). Ası́, para un módulo de un
grado de libertad quedarı́a un esquema de C como el que se muestra en la
Figura 1.16, izquierda; en el que las regiones T y W estarı́an constreñidas
por J, N y P. Por tanto, el conjunto de las regiones “controlables” en C (T, W)
será una variedad de tipo m (en este caso, m = 2 por haber dos cables).
Esto tiene una consecuencia inmediata de gran interés: entre las regiones
T, W y el subespacio controlable en (q, f ) en el que está asegurada la solu-
ción puntual (Figura 1.5.4, derecha) se puede establecer una correspondencia
punto a punto. Es decir, existirá una función biyectiva que relacione las con-
figuraciones alcanzables (q) a una determinada fuerza ( f ) con un conjunto
¯
de longitudes concreto (l).
En el caso de un módulo de dos grados de libertad actuado mediante tres

26
1.5. Conceptos sobre actuación con cables

qi
qi-1
q3

lA,i q2

lB,i
q1

Figura 1.17.: Manipulador plano compuesto por varios módulos.

cables se tendrı́a la misma situación: existirá una función biyectiva que


relacione cada punto contenido en las regiones T y W (que en este caso
supondrı́an una variedad de tipo 3) con el subespacio controlable. Para un
módulo genérico,

(q̄, f ) = h(l¯) (1.19)


l¯ = h−1 (q̄, f ) (1.20)

1.5.8. Complejidad de l¯ en función del número de módulos.


Defensa de un enfoque empı́rico en detrimento de
uno analı́tico

Hasta ahora se ha centrado el análisis teórico en módulos individuales,


tanto de uno como de dos grados de libertad. Pero un robot modular, por
definición, estará compuesto por varias de estas estructuras. En la Figura
1.17 se ha representado de manera esquemática un manipulador plano de n
grados de libertad, para el que interesa calcular las longitudes de los cables
que accionan la articulación qi .
De forma genérica, las expresiones que proporcionan estas medidas (l A,i , l B,i )
tendrán una parte relativa al módulo i en el que los cables actúan, y otra

27
1. Bases teóricas de los robots rı́gidos actuados por cables

que tenga en cuenta el camino descrito por el cable a lo largo del robot
desde la base hasta el módulo i − 1. Es decir, unas ecuaciones del tipo:

(
l A,i (q1 , . . . , qi , f i ) = || R(1 − cos qi ), h − R sin qi ||2 + k A (q1 , . . . , qi−1 )
l B,i (q1 , . . . , qi , f i ) = || R(1 − cos qi ), h + R sin qi ||2 + k B (q1 , . . . , qi−1 )
(1.21)
Siendo k A , k B expresiones que describen la longitud de los cables antes del
módulo i.
Con robots planos sencillos como el del dibujo es posible obtener las ex-
presiones analı́ticas para las longitudes de los cables, pero al pasar a mani-
puladores tridimensionales y a modelos cada vez más no lineales (debido
a factores y requerimientos mecánicos, principalmente) las expresiones se
complican, especialmente los términos k que acumulan las distancias en las
articulaciones anteriores.
Si bien es posible llegar a calcular y definir estas funciones, a medida que
aumenta i (esto es, cuantos más grados de libertad haya entre el módulo a
estudiar y la base) también aumenta la complejidad analı́tica, al acumularse
numerosas expresiones de carácter no lineal. Este problema, que podrı́a
resolverse con un buen modelo matemático, es de carácter secundario a
partir de un i elevado, cuando las imprecisiones fı́sicas del robot tales
como flexibilidad de los cables, deformación elástica del robot o pequeñas
desviaciones entre los puntos de anclaje de los cables teóricos y los reales,
se empiezan a acumular y hacen que las longitudes de cable calculadas
difieran notablemente de las reales.
Esto no serı́a un problema tan grave de no ser las regiones T, W tan pequeñas
en relación a J y N, puesto que es posible que las longitudes l¯ calculadas
para alcanzar una cierta configuración articular den lugar a una solución
que no se encuentre sobre T o W, sino en uno de los subespacios “a evitar”;
ya sea J, donde el grado de libertad tendrá juego, o N, que podrı́a dar lugar
a una solución mecánicamente inalcanzable. Dicho de otro modo, la curva S
calculada será distinta de la real, algo que se acentuará conforme aumente
el número de módulos del robot. Por tanto, en esos casos no bastará con
modelar matemáticamente el robot: será preciso identificar el modelo del

28
1.6. Identificación del modelo de actuación del robot

lB
p1 p0
p0+∆
p2
p3

V U S
lA p0 p1 p2

Figura 1.18.: Visualización del algoritmo de búsqueda de curvas caracterı́sticas

sistema real. Sobre eso trata la siguiente sección.

1.6. Identificación del modelo de actuación del


robot

En las secciones anteriores se explicó cómo modelar algunos módulos


mecánicos, ası́ como de la relación entre sus coordenadas articulares y la
longitud de los cables que los actúan. Sin embargo, se llegó a la conclusión
de que a partir de cierto número de grados de libertad un modelado analı́tico
podrı́a carecer de utilidad práctica. Si bien existen otras formas de corregir
estas fallas, en esta sección se utilizará este argumento como “excusa” para
presentar un método que permita identificar de forma experimental el
modelo de actuación de cualquier robot rı́gido accionado por cables.
En última instancia, la meta consiste en obtener un conjunto de expresiones
del tipo l¯ = h(q̄, f¯) que proporcionen las longitudes de cable requeridas para
alcanzar una determinada configuración articular ejerciendo unas fuerzas
concretas.

1.6.1. Identificación con medida de ángulo y fuerza f

Como punto de partida, se supone un robot de n grados de libertad accio-


nado por m cables como los estudiados con anterioridad, y cuyas variables

29
1. Bases teóricas de los robots rı́gidos actuados por cables

relevantes son conocidas en todo momento: longitudes de cable l, ¯ fuerza


ejercida por ellos f (por ejemplo, mediante un sistema como el de la Sección
??), y configuración articular q̄. Además, se habrán fijado las variables f U y
f V a unos valores concretos (para definir en consecuencia la ubicación de
las curvas U, y V dentro del espacio C ⊂ <m ).
La cuestión radica en cómo obtener las curvas S, U y V. Se propone un
método para ello que se ilustra mediante la Figura 1.18 para el caso de un
módulo de dos cables y un grado de libertad. Los pasos a seguir son los
siguientes:
1. Elongar ambos cables de modo que l A = l A,max , l B = l B,max , haciendo
ası́ l¯ = p0 .
2. Reducir uno de los dos cables (por ejemplo, l A ) hasta que f 6= 0. El
valor de l¯ en ese punto, p1 , determinará θ de forma inequı́voca. Por
consiguiente, p1 estará ubicado sobre la curva S.
3. Se reduce5 l¯ hasta que f = f U = f min . Esta condición marcará el punto
p2 , que estará situado sobre la curva U.
4. Nuevamente, reduciendo l¯ en módulo, se llegarı́a a f = f V = f max .
Por lo tanto, el punto l¯ = p3 se hallará en V.
5. A continuación, se lleva l¯ hasta el punto contenido en J anterior, p0 ,
reduciendo levemente el valor de l B de modo que el nuevo l¯ sea p0 + ∆.
6. Se repiten los pasos 2 a 5 hasta que l B = l B,min .
En el Anexo A, Figura A.1 se muestra el procedimiento descrito mediante un
diagrama de flujo. Después de éste, en la Figura A.2, aparece la extrapolación
del mismo método a un módulo tridimensional de dos grados de libertad
accionados mediante tres cables, independientemente de su construcción
mecánica.
Si se han almacenado todos los puntos, se habrán obtenido unas curvas
discretas que relacionan unas longitudes de cable l¯ con unos ángulos θ
para distintas fuerzas ( f = {0, f min , f max }). Mediante alguna técnica de
interpolación que será discutida más adelante se podrı́an obtener las curvas
reales S, U y V; y por consiguiente construir la función l¯ = h(q̄, f ) a partir

5 Por
ejemplo, recogiendo cada cable en la misma proporción; de todos modos no es un
aspecto crı́tico del método ya que el nuevo punto tendrá por lo general un valor θ diferente,
que seguirá aportando información igualmente válida.

30
1.6. Identificación del modelo de actuación del robot

lB lB

V U S V U
lA lA
Figura 1.19.: Izquierda: curvas empı́ricas S, U, V. Derecha: curvas U, V.

de los puntos muestreados (Figura 1.19, izquierda).


No obstante, debido a lo impreciso que resulta medir f 6= 0, además de la
poca robustez frente a perturbaciones que presentan los puntos contenidos
sobre la curva S, resulta más sencillo obtener únicamente las curvas U, V (y
definir en consecuencia la región T) puesto que su compañera S será de poca
utilidad en un robot real. Además, teniendo datos de θ para dos valores de
fuerza distintos sigue siendo posible interpolar en f , de modo que se podrá
llegar al mismo θ con diferentes valores de tensión comprendidos entre 0 y
f max .
También serı́a posible, después de hallar las curvas U, V, encontrar nuevos
¯ f , θ ) comprendidos entre ellas con el fin aumentar la cantidad de
puntos (l,
información sobre la región T.

1.6.2. Obtención de las curvas para un conjunto de varios


módulos

Hasta ahora se ha explicado cómo obtener las curvas para un único módulo.
Pero, por lo general, interesará identificar el sistema correspondiente a un
conjunto de módulos concatenados. En este caso, el procedimiento será muy
similar al explicado en el apartado anterior.
Como se vio en la sección 1.5.8, las longitudes relativas al módulo i (l¯i )

31
1. Bases teóricas de los robots rı́gidos actuados por cables

q2

lA,2
f2
q1
lB,2

lA,1 lB,1 f1

Figura 1.20.: Conjunto de dos módulos planos

dependen de la configuración articular de los módulos comprendidos entre


la base y el que se estudia6 . Por lo tanto será preciso tener esto en cuenta a
la hora de identificar la relación entre longitudes de cable, fuerza y ángulo
de cierto módulo i con i > 1.
Antes de presentar formalmente un algoritmo genérico se propone un
ejemplo ilustrativo con dos módulos de un grado de libertad ensamblados
en serie, como el que se representa en la Figura 1.20. En este caso se tendrán
las siguientes variables:
Dos ángulos: q1 , q2
Cuatro longitudes de cable: l A,1 , l B,1 , l A,2 , l B,2
Dos fuerzas: f 1 , f 2
Puesto que las longitudes del módulo 2 dependerán de la configuración
del módulo 1, pero no a ası́ a la inversa, será preciso asegurar un ángulo q1
puntual que defina la longitud de los cables l A,2 , l B,2 en el primer módulo.
Se comenzarı́a fijando las cuatro longitudes a su valor máximo. A continua-
ción, serı́a preciso retraer los cables l A,1 , l A,2 de modo que q1 quede fijo y f 1
tenga un valor no nulo. A partir de ahı́, con el primer módulo asegurado, se
harı́a lo propio con el segundo: habrı́a que reducir l A,2 y l B,2 hasta llegar a
un punto (q2 , f 2 ) de interés. En ese momento, se habrá obtenido un conjunto
de datos (l, ¯ q̄, f¯). Resultarı́a conveniente aprovechar que q1 está fijado para
6 Pero
no ası́ de las fuerzas f 1 . . . f i−1 ejercidas por los cables de dichos módulos, siempre
y cuando sean mayores que cero

32
1.6. Identificación del modelo de actuación del robot

continuar obteniendo datos en relación al segundo módulo, que es lo que


se propone con carácter general. No dejarı́a de ser una versión secuencial
del algoritmo para un módulo, ilustrado mediante la Figura 1.18.
Conforme aumenta el número de grados de libertad del manipulador
cada vez es preciso tener en cuenta el estado de más módulos, lo que
complica considerablemente el algoritmo a implementar. Para gestionar la
identificación de un número arbitrario de módulos se ha desarrollado una
versión recursiva del presentado con anterioridad. Su diagrama de flujo se
muestra en el Anexo A, Figura A.3.
Es importante señalar que, por la naturaleza del algoritmo, la complejidad
crece de forma exponencial con el número de grados de libertad (O(k2n ),
siendo k un parámetro proporcional a la densidad del muestreo). Además,
la función se llama a sı́ misma dos veces por cada ejecución de la misma.
Para simplificar esto último, se propone en el Anexo A, Figura A.4 una
ligera modificación que reduce el número de llamadas a la propia función a
costa de un requerimiento adicional, el de conocer la matriz de derivadas
(esto es, la jacobiana) de los ángulos q̄i respecto de las longitudes l¯i . Esto
serı́a resoluble mediante alguna técnica de optimización online, por ejemplo.
De este modo se reducirı́a la complejidad del algoritmo a O(kn ). En cuanto
al caso tridimensional, se propone un algoritmo equivalente en el Anexo A,
Figura A.5.
Debido a que este tipo de muestreo exhaustivo resulta inabarcable para un
número de articulaciones suficientemente elevado, será preciso combinarlo
con otros métodos si se desea obtener el modelo de actuación del manipula-
dor. Pero es importante remarcar que todo este proceso de muestreo está
diseñado para no necesitar supervisión.

1.6.3. Obtención del modelo inverso de actuación

Puesto que lo que se persigue es controlar la configuración articular q̄


del robot, es preciso conocer cuáles son las longitudes de los cables que
proporcionan los ángulos deseados. Además, se ha visto que la fuerza
ejercida por los cables es otra variable controlable que está ı́ntimamente
relacionada con las anteriores. Como se ha aventurado anteriormente, lo

33
1. Bases teóricas de los robots rı́gidos actuados por cables

q
l
f Interpolador

Figura 1.21.: Vista de bloque de la función l¯ = h(q̄, f¯)

que se busca es una expresión o función que permita obtener cada una de
las longitudes como una función de las fuerzas a aplicar y de los valores
articulares. En este apartado se sugerirá un método para construir esta
función inversa del modelo de actuación por cables.
El punto de partida es un conjunto preferiblemente extenso de datos del tipo
(q̄, f¯, l¯) que se habrán obtenido mediante algún método como los descritos
anteriormente, por ejemplo.

Propuesta de usar una red neuronal

Existen diversas formas de reconstruir una función a partir de una serie de


puntos definidos por ella. Por ejemplo, mediante un interpolador estándar
multivariable7 . También es posible emplear una red neuronal construida
especı́ficamente para aproximar funciones. Sin pérdida de generalidad, se
propone emplear una red neuronal por resultar mucho más flexible a efectos
explicativos. En cualquier caso, se terminarı́a con una caja negra como la
mostrada en la Figura 1.21.
Esta red se entrenarı́a con los datos experimentales obtenidos siguiendo los
pasos de la sección anterior. A partir de ese momento se dispondrı́a en la
práctica de una función l¯ = h(q̄, f¯). Si ésta ha sido pobremente entrenada, las
predicciones que realice serán poco acertadas. Sin embargo, como primera
aproximación al sistema no lineal será perfectamente válida ya que la
información que proporcione situará al manipulador en las inmediaciones
de las curvas S, U y V.
En una segunda fase, la red se emplearı́a para generar nuevos datos que

7 [Link]

34
1.6. Identificación del modelo de actuación del robot

pasarı́an a engrosar el conjunto de entrenamiento obtenido previamente


mediante muestreo. De este modo, por medio de entrenamientos sucesivos
que tengan en cuenta cada vez más puntos se podrá mejorar la precisión de
la red neuronal. En el Anexo A, Figura A.6 se muestra un diagrama de flujo
esquemático del proceso.
En caso de que el punto (q¯r , f¯r ) alcanzado al llevar al robot a cierta longitud
l pred haga que algún módulo caiga en la región J sólo habrá que recoger
los cables implicados hasta cruzar la curva U y asegurar la pertenencia a la
región T. En cambio, si las longitudes predichas por la red proporcionan
una configuración en la zona prohibida N, en el momento en el que uno
de los cables alcance su fuerza lı́mite ( f j = f v ) será suficiente con detener la
retracción de ese cable.
Tras seguir todo este proceso se tendrá una red neuronal entrenada que
representará la función l¯ = h(q̄, f¯). Como se ha visto, no habrá sido ne-
cesario ningún tipo de modelado matemático previo: el planteamiento es
totalmente independiente de la configuración, estructura o diseño del robot.
En definitiva, el método expuesto es un procedimiento genérico útil para
identificar el modelo de actuación para cualquier robot actuado con cables
que encaje en la descripción presentada a comienzos del capı́tulo.

1.6.4. Identificación con medida discreta de f

Si bien lo ideal es medir la fuerza ejercida por cada uno de los cables
que accionan el robot mediante un captador que proporcione información
continua, el sensor implicado (Figura ??) representa un desarrollo electro-
mecánico lo suficientemente complejo como para que resulte interesante
explorar otras alternativas más simples, como la descrita en la sección ??.
Si se ajusta cada interruptor para que conmute a partir de un valor de
fuerza f k = f u = f min , resulta inmediato aplicar el método presentado en la
sección anterior (si bien simplificado) para obtener las curvas U para cada
¯ q̄) para unas f con
articulación. Ası́, serı́a posible obtener datos del tipo (l,
valor igual o superior a f u . También serı́a conveniente añadir un segundo
interruptor por cable que permita discernir cuándo la fuerza es superior a
f v = f max para evitar la región N. En el Anexo A, Figura A.7 se muestra

35
1. Bases teóricas de los robots rı́gidos actuados por cables

Pulsador v
No pulsado Pulsado
No pulsado J X
Pulsador u
Pulsado T N
Cuadro 1.1.: Determinación de la ubicación de l¯ en C por medio de dos sensores de fuerza
discretos

el diagrama de flujo correspondiente al algoritmo de muestreo a aplicar


para identificar un módulo de dos grados de libertad accionado por tres
cables, todos ellos con medida discreta de fuerzas. La versión recursiva para
la obtención de puntos de varios módulos del mismo tipo concatenados se
encuentra en en el Anexo A, Figura A.8.
En cualquier caso, los resultados se suministrarı́an nuevamente a una red
neuronal con el fin de que suponga una buena aproximación a la función
l¯ = h(q̄). En la segunda fase de entrenamiento (bucle interno del diagrama
de flujo del Anexo A, Figura A.6) se procederı́a de igual manera que en la
anterior sección, rectificando únicamente los puntos l¯ contenidos en J (si
hay un único FdC), o tanto los que caigan en J como los situados sobre N
(si se miden dos umbrales de tensión). En este último caso se tendrı́a una
“tabla de verdad” como la mostrada en el Cuadro 1.1.

1.6.5. Sobre la necesidad de obtener l¯(q̄) para cada punto


q̄ al seguir una trayectoria definida entre q¯0 y q¯f

Ahora que se cuenta con un procedimiento para obtener las longitudes de


cable que conllevan una configuración articular determinada y quizá unas
fuerzas concretas, sólo resta plantear un método para generar trayectorias
definidas entre dos coordenadas articulares.
Si se desea llevar al robot desde la configuración articular q¯0 hasta q¯f no es
conveniente calcular l¯0 = h(q¯0 ), l¯f = h(q¯f ) e interpolar linealmente entre
l¯0 y l¯f ya que, por lo general, la función h(q̄) será fuertemente no lineal.
Por ejemplo, para la articulación plana de dos cables y un grado de libertad

36
1.6. Identificación del modelo de actuación del robot

lB lB
S S

V
lA lA

Figura 1.22.: Trayectorias a través de regiones localmente convexas y cóncavas, respectiva-


mente

estudiada se tienen unas curvas como las de la Figura 1.22, izquierda8 ; en


las que S, U y V son convexas, por lo que una interpolación lineal entre
l¯0 y l¯f discurrirá por la región J, provocando que la solución puntual de
la articulación no sólo no esté garantizada, sino que pueda llegar a causar
daños al robot.
Debido a la concatenación de varios módulos que se dará en un manipula-
dor, es necesario prever que habrá zonas en las que las superficies S, U, V
definidas en el espacio C ∈ <n , con n elevado, puedan ser cóncavas. A efec-
tos ilustrativos, para el caso del módulo plano serı́a una situación similar a
la de la Figura 1.22, derecha. En este caso, los puntos generados mediante
la interpolación lineal entre l¯0 y l¯f atravesarı́an la región N, poniendo ası́ en
riesgo la integridad mecánica del robot (ya que es la zona donde no está
asegurada la deformación elástica de los cables, y en cualquier caso puede
que la fuerza ejercida por el sistema de actuación sea insuficiente).
Únicamente para pequeños desplazamientos en C es sensato realizar inter-
polación lineal entre dos puntos l¯1 y l¯2 . Ası́, la trayectoria estará contenida
en W o en T (entre las curvas S y V) siempre que la distancia ||l¯2 - l¯1 ||2 sea
menor o igual que cierto el , siendo éste un valor experimental.
En cualquier caso, esto serı́a equivalente a decir que la idoneidad de la
8A modo de recordatorio, en la Figura 1.10 se mostraron las curvas S correspondientes
a sendos módulos de dos grados de libertad cada uno.

37
1. Bases teóricas de los robots rı́gidos actuados por cables

lB
W
l0 lk

lf lk+1
V U S T
lA
Figura 1.23.: Izquierda: trayectoria entre dos configuraciones articulares definidas por l0 y
l f . Derecha: detalle donde se aprecia la interpolación lineal.

interpolación lineal de longitudes entre dos configuraciones articulares q¯0 y


q¯f depende de que se cumpla ||q¯f − q¯0 ||∞ ≤ eq . Es decir, que el incremento
máximo del valor de una articulación sea menor que un cierto ángulo eq ,
también experimental.
Ası́, será necesario “trocear” las trayectorias para garantizar el correcto
funcionamiento del robot. Para una interpolación lineal en coordenadas
articulares entre q¯0 y q¯f será preciso obtener nsegmentos tramos:

& '
máx |q¯f − q¯0 |
nsegmentos = (1.22)
eq

Ası́, se obtendrán (nsegmentos − 1) puntos entre q¯0 y q¯f . Para cada una de
estas configuraciones articulares intermedias qk será preciso hallar mediante
el modelo inverso de actuación la longitud de cable correspondiente, lk . En
caso de tener sensores de fuerza continuos lo idóneo serı́a mover el robot a
lo largo de la curva U por suponer la frontera entre T y W: lk = h(qk , f u ).
En caso contrario, bastarı́a con evaluar en el punto de interés: lk = h(qk ).
Siguiendo este método se tendrı́a una serie de puntos sobre o en las inme-
diaciones de la curva U, como se observa en la Figura 1.23, izquierda. En
este momento sı́ serı́a adecuado realizar la interpolación lineal entre dichas
longitudes, pues quedarı́a garantizada la pertenencia del recorrido a las

38
1.7. Control: en busca de un robot preciso

lB

l0
ld

U lA
Figura 1.24.: Error de predicción: el punto alcanzado no es el deseado.

regiones T o W (cayendo del lado de T si el segmento de U entre q̄i ) y qi¯+1


es convexo, o del de W si es cóncavo). En la Figura 1.23, derecha se muestra
un detalle de la trayectoria seguida por el robot en el espacio C entre dos
puntos intermedios de una trayectoria concreta.

1.7. Control: en busca de un robot preciso

Un robot real, como tal, no se comportará como un sólido rı́gido ideal: es de


prever que se produzcan ligeras variaciones en las longitudes de los cables
debido al peso de la posible herramienta o efector final, o que la estructura
presente leves deformaciones por distintos motivos. Esto supondrá una
desviación más o menos acusada del modelo de actuación (implementado
por medio de la red neuronal) respecto al sistema real.
Ası́, es de esperar que al calcular el vector de longitudes necesario para
llevar al robot a cierta configuración articular deseada q¯d se obtenga un l¯0
(l¯0 = h(q¯d )) que se corresponda con otra configuración, q0 . Si la función h(q̄)
supone una buena aproximación al modelo real, la diferencia entre q¯0 y qd
deberı́a ser pequeña.
Esto quizá no sea grave si q¯d es un punto intermedio en una trayectoria, pero
puede ser crı́tico si se trata del final de ésta y se requiere cierta precisión
en la pose del robot. Ası́, será necesaria alguna técnica de regulación para

39
1. Bases teóricas de los robots rı́gidos actuados por cables

hacer que q¯0 pase a ser q¯d .


A lo largo de los siguientes apartados se planteará una técnica de control
empleando un módulo de dos grados de libertad actuados mediante tres
cables como base de las explicaciones, que se irán ampliando progresiva-
mente. se asumirá que no se tiene capacidad de medida continua de fuerzas
en aras de una mayor claridad, aunque en la sección 1.7.3 se presenta un
desarrollo semejante para el caso contrario, levemente más complejo.

1.7.1. Planteamiento y desarrollo de un regulador

Obtención de q̄(l¯) y posterior linealización

Para dicho módulo tridimensional se tiene un modelo (representado como


h) que relaciona las coordenadas articulares con las longitudes de cable que
las originan. Esta función es vectorial, y es posible dividirla en m funciones
escalares (con m = 3 en este caso):

   
lA h A ( q1 , q2 )
l¯ =  l B  = h((q1 , q2 ) =  h B (q1 , q2 )  (1.23)
lC h C ( q1 , q2 )

Pero lo que interesa controlar son los ángulos q̄, por lo que el modelo de
actuación inverso no será válido para esta tarea: ahora, se necesita conocer
cómo varı́a la configuración articular (la variable a controlar) en función
de las longitudes de cable (las variables de actuación). Esto es, hace falta
el modelo en sı́ del robot, una función q̄ = g(l¯) equivalente a la recı́proca
de h (como se explicó en la Sección 1.5.7). Puesto que durante la fase de
obtención del modelo inverso de actuación, l¯ = h(q̄), se obtuvo un conjunto
de puntos (l,¯ q̄) que se emplearon para entrenar una red neuronal, lo que
se propone ahora es emplear estos mismos datos para acabar con otra red
neuronal recı́proca de la original. De esta forma se obtendrı́a un método
que, visto como una caja negra, se representa en la Figura 1.25.
Puesto que existen valores de l¯ que no proporcionan un q̄ válido, y se ha
prescindido en este caso de la medida de fuerzas, la función g(l¯) sólo será

40
1.7. Control: en busca de un robot preciso

q
l
Red de control f

Figura 1.25.: Vista de bloque de la función l¯ = h(q̄, f¯)

de utilidad en las inmediaciones de la curva U, que en cualquier caso es


la zona donde se encontrarán los puntos a afinar. Dicho de otro modo,
sólo se obtendrán resultados útiles de la segunda red si se le suministran
valores ubicados en la región en la que está garantizada la biyectividad.
Expandiendo la función vectorial se tendrı́a lo siguiente:

   
q1 g1 ( l A , l B , l C )
q̄ = = , (1.24)
q2 g2 ( l A , l B , l C )

Cada una de estas funciones gi es no lineal en sus parámetros de entrada.


Desarrollando en series de Taylor hasta el primer término para la primera,
g1 , en torno a una longitud l¯0 :

∂g1 ∂g1 ∂g1


q1 = g1 (l0,A , l0,B , l0,C ) + · (l A − l0,A ) + · (l B − l0,B ) + · (lC − l0,C )
∂l A l¯0 ∂l B l¯0 ∂lC l¯0
(1.25)

Harán falta dos redes: una que nos resuelva la función l¯(q̄), y otra para q̄(l¯).
La primera es para aproximar y obtener las longitudes, y la segunda se usa
para hallar las derivadas en el control.

Se propone hallar las derivadas parciales mediante incrementos en l, em-


pleando la red neuronal recién entrenada, g(l¯):

41
1. Bases teóricas de los robots rı́gidos actuados por cables

g1 (l0,A + ∆l, l0,B , l0,C ) − g1 (l0,A − ∆l, l0,B , l0,C )


q1 = g1 (l0,A , l0,B , l0,C ) + (l A − l0,A )
2∆l
(1.26)
g (l , l + ∆l, l0,C ) − g1 (l0,A , l0,B − ∆l, l0,C )
+ 1 0,A 0,B (l B − l0,B )
2∆l
(1.27)
g (l , l , l + ∆l ) − g1 (l0,A , l0,B , l0,C − ∆l )
+ 1 0,A 0,B 0,C (lC − l0,C ),
2∆l
(1.28)

En cualquier caso, esta expresión se puede escribir de forma más compacta


como:

q1 = g1 (l¯0 ) + k1,A (l A − l0,A ) + k1,B (l B − l0,B ) + k1,C (lC − l0,C ) (1.29)

Repitiendo el mismo proceso, es posible escribir las ecuaciones linealizadas


de la siguiente forma, más compacta:

 
        l A − l0,A
q1 g1 ( l A , l B , l C ) q k k k
q̄(l A , l B , lC ) = = = 0,1 + 1,A 1,B 1,C ·  l B − l0,B 
q2 g2 ( l A , l B , l C ) q0,2 k2,A k2,B k2,C
lC − l0,C
(1.30)
O, reescribiéndolo en diferencias,
 
    l A − l0,A
q1 − q0,1 k1,A k1,B k1,C
= ·  l B − l0,B  (1.31)
q2 − q0,2 k2,A k2,B k2,C
lC − l0,C

Propuesta de dinámica del sistema

Sin embargo, las ecuaciones vectoriales obtenidas no son las de un sistema


dinámico, por lo que no se podrán aplicar directamente las técnicas de

42
1.7. Control: en busca de un robot preciso

x = x =
lu-l0
B + ∫ dt Cl Dg

Figura 1.26.: Diagrama de espacio de estados correspondiente a un módulo de dos grados


de libertad actuado mediante tres cables.

control estándar. Por ello, es preciso dotarlas de una dinámica ad hoc. Lo


más sencillo consiste en modelar un polo en cada uno de los cables, que en
cualquier caso existe en la realidad9 . Ası́, se distinguirá entre l¯u (comando
de longitud) y l¯ (valor actual simulado de la longitud). Se establecerá una
relación entre ambas equivalente a un primer orden. En pequeña señal, para
el primer cable, se tendrı́a:

l A − l0,A 1
(s) = (1.32)
lu,A − l0,A 1 + τs

Y, en consecuencia, las siguientes ecuaciones (nótese el operador derivada


sobre las variables incrementales):

(l A − l0,A ) + τ (l A −˙ l0,A ) = (lu,A − l0,A ) (1.33)


(l B − l0,B ) + τ (l B −˙ l0,B ) = (lu,B − l0,B ) (1.34)
(lC − l0,C ) + τ (lC −˙ l0,C ) = (lu,C − l0,C ) (1.35)

Integrando estas ecuaciones dinámicas con las obtenidas en el apartado


anterior se puede llegar a un modelo (en pequeña señal o diferencias) como
el de la Figura 1.26 cuyas matrices serán:
9 Ya que cualquier cambio en el valor de una variable necesita cierto tiempo para tener
lugar.

43
1. Bases teóricas de los robots rı́gidos actuados por cables

   
−1/τ 0 0 1/τ 0 0
A= 0 −1/τ 0 , B =  0 1/τ 0  (1.36)
0 0 −1/τ 0 0 1/τ
(1.37)
     
1 0 k1,A k1,B k1,C k1,A k1,B k1,C
C = Cl · Dg = · = , (1.38)
0 1 k2,A k2,B k2,C k2,A k2,B k2,C

 
q1 − q0,1
con entrada en pequeña señal l¯u − l¯0 y salida .
q2 − q0,2

Control por realimentación del estado

Una vez obtenido un modelo en espacio de estados del sistema, se plantea un


controlador LQR genérico que dé más importancia a las variables reguladas
que a la actuación. Por ejemplo,

 
1 0 0  
1000 0
R = 0 1 0 , Q= (1.39)
0 1000
0 0 1

La matriz de realimentación K se podrı́a obtener mediante el siguiente


comando de Matlab:
[K, ∼, ∼] = LQR(A,B,Q,R);
La implementación y puesta en marcha de este controlador implicarı́a la
creación de un servosistema Referencia a Ogata, capı́tulo 8 que llevarı́a al
robot a la configuración deseada. En la Figura 1.27 se ha representado
cómo quedarı́a el sistema tras añadir la matriz de realimentación K y la de
transformación T.
En el momento en el que se lo quiera llevar a otra configuración articular, el
regulador se desactivarı́a.

44
1.7. Control: en busca de un robot preciso

qref-q0 x =
uref x = q-q0=
T lu-l0
+- -K + B + ∫ C
xref

Figura 1.27.: Diagrama de bloques del regulador implementado.

1.7.2. Integración del proceso de regulación

A modo de aclaración se ofrece en esta sección una recopilación de los pasos


a seguir antes, durante y después de la aplicación del método de control
propuesto. Las condiciones de partida son las siguientes:

El robot se encuentra en q¯p


Se desea llevarlo a q¯d
Tanto q¯p como q¯d se suponen en T o en W.
Se supone que q¯p se encuentra cerca de q¯d , por lo que no será necesario
interpolar.

Y los pasos a seguir, éstos:

1. Obtener mediante la función h el vector de longitudes que lleve al


robot a q¯d : l¯0 = h(q¯d )
2. La configuración alcanzada será diferente a la prevista. Tras medir los
ángulos, se verifica que al llevar las longitudes a l¯0 = (l0,A , l0,B , l0,C ) se
ha llegado a q¯0
3. Para el punto (q¯0 , l¯0 ) se construyen las matrices A, B, C. A continuación,
se calcula K.
4. Se activa el regulador en pequeña señal, que suministrará los incre-
mentos de cable necesarios para alcanzar q¯d .
5. Cuando se desee ir a un nuevo punto en coordenadas articulares, el
regulador se desactiva y se comienza de nuevo.

45
1. Bases teóricas de los robots rı́gidos actuados por cables

1.7.3. Planteamiento del sistema con realimentación de


fuerza f

En los apartados anteriores se ha supuesto que no se podı́a medir la fuerza


ejercida por los cables. Ahora se considerará que sı́ se tiene esta capacidad.
El análisis se plantea para el mismo módulo: dos grados de libertad actuados
mediante tres cables, cuyas variables de interés se conforman v̄:

 
q1
v̄ = q2 
 (1.40)
f

El proceso a seguir es virtualmente el mismo, pues la función vectorial g(l¯)


se puede dividir en tres escalares:

   
q1 g1 ( l A , l B , l C )
v̄ = q2  =  g2 (l A , l B , lC )  (1.41)
f g f ( l A , l B , lC )

La linealización de las funciones también pasarı́a por aplicar el desarrollo


en series de Taylor, obteniéndose una matriz de derivadas con una fila más
correspondiente a f . Expresándolo en diferencias,

     
q1 − q0,1 k1,A k1,B k1,C l A − l0,A
v̄ − v¯0 = q2 − q0,2  =  k2,A k2,B k2,C  ·  l B − l0,B  (1.42)
f − f0 k f ,A k f ,B k f ,C lC − l0,C

Nuevamente esta matriz de ganancias o derivadas se corresponderı́a con


la matriz C del sistema “simulado”. En cuanto a A y B, serı́an idénticas a
las de la situación sin realimentación de fuerza. De cara al control, la única
diferencia que quizá se pueda plantear es en la elección de la matriz Q:
habitualmente interesará ponderar menos el valor correspondiente a f .

46
1.7. Control: en busca de un robot preciso

1.7.4. Ejemplo del sistema regulado con dos módulos

Finalmente, se concluye el capı́tulo con una expansión del método seguido


en la sección anterior a dos módulos, cada uno de ellos de dos grados de
libertad y accionado mediante tres cables, es decir, un manipulador serie de
cuatro grados de libertad. Desde aquı́ resultarı́a inmediato generalizar el
método a cualquier conjunto formado por p módulos.
Las condiciones de partida son las siguientes:
Los ángulos q̄ se numeran empezando desde el más cercano a la base
del robot.
El primer módulo (ángulos q1 , q2 ) es actuado por las longitudes
(l A , l B , lC ). El segundo (q3 , q4 ), por (l D , lE , l F ).
Las longitudes relativas al segundo módulo no tienen influencia sobre
el primero. Como se ha visto, al contrario esto no es ası́.
Por tanto, la función a linealizar serı́a la siguiente:
   
q1 g1 ( l A , l B , l C )
 q2   g2 ( l A , l B , l C ) 
q̄ =  = 
 q 3   g3 ( l A , l B , l C , l D , l E , l F )  (1.43)
q4 g4 ( l A , l B , l C , l D , l E , l F )

Al realizar el desarrollo en series de Taylor hasta el primer término, como el


caso anterior, será necesario calcular más derivadas cuanto más se aleje el
grado de libertad en cuestión de la base. Por tanto, la matriz de ganancias o
derivadas tendrá un aspecto “triangular inferior”:

 
    l A − l 0,A
q1 − q0,1 k1,A k1,B k1,C 0 0 0  l B − l0,B 
 
q2 − q0,2  k2,A k2,B k2,C 0 0 0  
 l C − l 0,C

q3 − q0,3  = k3,A
   ·   (1.44)
k3,B k3,C k3,D k3,E k3,F   l D − l0,D 

q4 − q0,4 k4,A k4,B k4,C k4,D k4,E k4,F  lE − l0,E 
l F − l0,F

La matriz de derivadas se corresponde, como en el caso anterior, con la


matriz C del sistema. En cuanto a las matrices A y B, se obtendrı́an de

47
1. Bases teóricas de los robots rı́gidos actuados por cables

forma análoga: tan sólo serı́a necesario ampliar la dimensión de las matrices
diagonales que las generan.

48
Apéndices

49
Apéndice A.

Diagramas de flujo

Identificación de módulo
plano con f continua

lB,tope = lB,máx

lB = lB,tope

lA = lA,máx

Se reduce lA

No
f>fu?

Se almacena v actual
(θ, lA, lB, f)

Se reduce l

No
f>fv?

Se almacena v actual
(θ, lA, lB, f)

No
lB,tope > lB,min? Fin

lB,tope = lB,tope - ∆l

Figura A.1.: Diagrama de flujo para la obtención de puntos de un módulo plano con
medida de fuerza continua

51
Apéndice A. Diagramas de flujo

Identificación de módulo
3D con f continua

lC,tope = lC,máx

lC = lC,tope

lB,tope = lB,máx

lB = lB,tope

lA = lA,máx

Se reduce lA

No
f>fu?

Se almacena v actual
(q1, q2, lA, lB, lC, f)

Se reduce l

No
f>fv?

Se almacena v actual
(q1, q2, lA, lB, lC, f)


lB,tope = lB,tope - ∆l lB,tope > lB,min?
No


lC,tope = lC,tope - ∆l lC,tope > lC,min?
No

Fin

Figura A.2.: Diagrama de flujo para la obtención de puntos de un módulo de dos grados
de libertad accionado mediante tres cables, con medida de fuerza continua

52
Identificación lenta
2D con f continua

lB,i,tope = lB,i,máx

lB,i = lB,i,tope

lA,i = lA,i,máx

Se reduce lA,i

No
fi>fu?

No
i<p?

Se almacena v actual
Identificación lenta (q, l, f)
2D con f continua

Se reduce li

No
fi>fv?

No
i<p?

Identificación lenta Se almacena v actual


2D con f continua (q, l, f)


lB,i,tope = lB,i,tope - ∆l lB,i,tope>lB,i,min?
No

Fin

Figura A.3.: Diagrama de flujo recursivo para la obtención de puntos de un manipulador


plano con medida de fuerza continua

53
Apéndice A. Diagramas de flujo

Identificación rápida
2D con f continua

lB,i,tope = lB,i,máx

lB,i = lB,i,tope

lA,i = lA,i,máx

Se reduce lA,i

No
fi>fu?

No
i<p?

nDatosPrev = nDatos
Se almacena v actual
(q, l, f)
Identificación rápida
2D con f continua

nDatosPost = nDatos nDatos++

Se reduce li con qi cte.

No
fi>fv?

No
i<p?

Se almacena v actual
Para todo dato entre nDatosPrev y (q, l, f)
nDatosPost se hace una copia pero con
los valores de fi, li actuales del módulo nDatos++


lB,i,tope = lB,i,tope - ∆l lB,i,tope>lB,i,min?
No

Fin

Figura A.4.: Diagrama de flujo recursivo para la obtención de puntos de un manipulador


plano con medida de fuerza continua; versión optimizada

54
Identificación rápida
3D con f continua

lC,i,tope = lC,i,máx

lC,i = lC,i,tope
lB,i,tope = lB,i,máx

lB,i = lB,i,tope

lA,i = lA,i,máx

Se reduce lA,i

No
fi>fu?

No
i<p?

nDatosPrev = nDatos
Se almacena v actual
(q, l, f)
Identificación rápida
3D con f continua

nDatosPost = nDatos nDatos++

Se reduce l con q cte.

No
fi>fv?

No
i<p?

Se almacena v actual
Para todo dato entre nDatosPrev y (q, l, f)
nDatosPost se hace una copia pero con
los valores de fi, li actuales del módulo nDatos++


lB,i,tope = lB,i,tope - ∆l lB,i,tope>lB,i,min?
No

lC,i,tope = lC,i,tope - ∆l lC,i,tope>lC,i,min?
No

Fin

Figura A.5.: Diagrama de flujo recursivo para la obtención de puntos de un manipulador


compuesto por módulos de dos grados de libertad con medida de fuerza
continua; versión optimizada

55
Apéndice A. Diagramas de flujo

Obtención del modelo


inverso de actuación

Obtención de puntos
mediante muestreo recursivo

Entrenamiento de
la Red Neuronal

Fin
Sí ¿Suficiente
precisión?
No

¿Suficientes Sí
puntos?
No

Elegir aleatoriamente
un punto (qd, fd)

Suministrar (qd, fd) a


la red para obtener lpred

Llevar las longitudes de cable


del manipulador a lpred

Medir los ángulos y


fuerzas obtenidos: (qr, fr)

Añadir el nuevo dato (qr, fr, lpred)


al conjunto existente

Figura A.6.: Diagrama de flujo que muestra, a alto nivel, el proceso a seguir para generar
nuevos puntos por medio de una red neuronal

56
Identificación de módulo
3D con f discreta

lC,tope = lC,máx

lC = lC,tope

lB,tope = lB,máx

lB = lB,tope

lA = lA,máx

Se reduce lA

No
f>fu?

Se almacena v actual
(q1, q2, lA, lB, lC)


lB,tope = lB,tope - ∆l lB,tope > lB,min?
No


lC,tope = lC,tope - ∆l lC,tope > lC,min?
No

lA = lA,máx
lB = lB,máx
lC = lC,máx

Fin

Figura A.7.: Diagrama de flujo para la obtención de puntos de un módulo de dos grados
de libertad accionado mediante tres cables, con medida de fuerza discreta

57
Apéndice A. Diagramas de flujo

Identificación rápida
3D con f continua

lC,i,tope = lC,i,máx

lC,i = lC,i,tope
lB,i,tope = lB,i,máx

lB,i = lB,i,tope

lA,i = lA,i,máx

Se reduce lA,i

No
fi>fu?

No
i<p?

Se almacena v actual
Identificación rápida (q, l, f)
3D con f continua


lB,i,tope = lB,i,tope - ∆l lB,i,tope>lB,i,min?
No

lC,i,tope = lC,i,tope - ∆l lC,i,tope>lC,i,min?
No

lA = lA,máx
lB = lB,máx
lC = lC,máx

Fin

Figura A.8.: Diagrama de flujo recursivo para la obtención de puntos de un manipulador


compuesto por módulos de dos grados de libertad con medida de fuerza
discreta

58

También podría gustarte