Está en la página 1de 9

MODELADO CINEMÁTICO APLICADO AL SISTEMA DE NAVEGACIÓN DE UN

ROBOT MÓVIL TIPO SKID STEER

Daniel E. Castiblanco Jiménez, Francy Carolina Barreto Ballesteros


dcmidscrum9@gmail.com
Ingeniería Mecatrónica, Universidad de San Buenaventura (Sede Bogotá)
2006

RESUMEN del que son relevantes tareas como lo son la


percepción, planificación y control.
En este artículo se ilustra el método propuesto A la hora de planear una trayectoria para un
por el ingeniero Aníbal Ollero Baturone vehiculo robótico se debe tener en cuenta
Catedrático de ingeniería de sistemas y aspectos geométricos, cinemáticos y
automática de la Escuela Superior de dinámicos de este, que determinen el
Ingenieros (Universidad de Sevilla), en su comportamiento y desempeño del mismo con
libro Robótica Manipuladores Y Robots su entorno.
Móviles [1] para obtener un modelo
cinemático de un robot móvil, en este caso un Hasta ahora en la Universidad de San
vehiculo robótico tipo skid steer de Buenaventura sede Bogotá los trabajos
direccionamiento diferencial. realizados en el área de robótica móvil han
sido tratados de manera muy empírica por esto
El artículo presenta inicialmente algunos carecen de un análisis donde se deberían
aspectos necesarios para la comprensión y tomar aspectos como los mencionados
simplificación del análisis, mas adelante se anteriormente.
plantea un modelo cinemático generalizado y
el jacobiano del vehiculo robótico y con estos El propósito fundamental de este trabajo es
finalmente se obtiene el modelo cinemático mostrar como se puede realizar un análisis
especifico del vehiculo en mención, el modelo geométrico de un robot móvil tipo skid steer
es simulado con ayuda de herramientas de direccionamiento diferencial con el que se
computacionales como matlab y emulado pueda generar un modelo cinemático que
sobre un prototipo construido donde se represente de manera aceptable el
verifica el comportamiento y se contrasta con comportamiento del vehiculo para una
el comportamiento que de forma intuitiva se posterior aplicación al sistema de navegación
pueda generar. del mismo.

1. INTRODUCCIÓN 2. ASPECTOS GENERALES DEL


ANÁLISIS
Actualmente los vehículos robóticos o robot
móviles son muy utilizados en varios campos La plataforma mecánica centro de estudio en
investigativos como industrializados, este trabajo es un Robot móvil de
desempeñado tareas de supervisión, configuración motriz tipo skid steer de
exploración, distribución y transporte, entre direccionamiento diferencial (figura 1.); el
otros, facilitando la automatización a gran análisis parte inicialmente del modelo
escala, para esto es necesario incrementar la geométrico que es la relación que existe entre
autonomía de estos dispositivos dotándolos los valores de las variables asociadas a la
con un sistema de navegación eficiente, dentro situación (posición y orientación) de un
sistema de referencia, solidario al robot, este
definido de acuerdo a la tarea que se pretende 3. MODELO CINEMÁTICO DEL ROBOT
realice el robot; En robots móviles el sistema
de referencia se asocia al punto de guía Para el desarrollo de este análisis se tendrán en
esperado. cuenta los siguientes aspectos:

 El robot se mueve sobre una superficie


plana.
 Los ejes que guías del robot son
perpendiculares a la superficie del
suelo.
 Se supondrá que las ruedas se mueven
con rodadura pura; es decir, el
deslizamiento es despreciable en el
periodo de control.
 El robot no tiene partes flexibles.
 Durante un periodo de tiempo
suficientemente pequeño durante el
que se mantiene la consigna de
dirección constante, el robot se moverá
de un punto al siguiente a lo largo de
un arco circunferencial.
Figura 1: Arriba-Prtotipo Virtual Robot tipo skid  El robot se comporta como un sólido
steer direccionamiento diferencial; Abajo-modelo rígido.
real Construido.  No se tomara en cuenta el efecto que
produce el aplastamiento de los
La cinemática en robos móviles hace neumáticos. sobre la dirección y la
referencia al análisis del movimiento sin tener velocidad.
en cuenta las fuerzas que lo producen, ni las
que se generan, a partir de esto el estudio 3.1 Restricciones Cinemáticas
inicial se centra en el problema geométrico
Siendo p = [ p1 .... p r ] un vector con las
T
involucrado en el posicionamiento estático, las
variaciones en el tiempo de las posiciones y variables necesarias para determinar
orientaciones, estos determinados completamente la posición y orientación de
específicamente por las velocidades, para todas las partes de un sistema físico (En este
nuestro caso en las ruedas, planteando así caso el Robot) y teniendo en cuenta que las
nuestro sistema (MIMO) con entradas de variables pueden no ser independientes, es
velocidades sobre las ruedas derechas e posible formular ciertas restricciones de tipo:
izquierdas y salidas posición y
orientación(figura 2.). G k ( p, p ' , t ) = 0 k=1,…s; (1)

Es decir, se deben satisfacer s restricciones o


ecuaciones de las variables p, sus derivadas p’
y probablemente el tiempo t; A su ves estas
Figura 2: Esquema generalizado del sistema.
restricciones pueden ser holónomas o no se pueden utilizar cuatro coordenadas para
holónomas 1. especificar la posición y orientación de la
rueda (coordenadas(x, y del punto de contacto;
Considerando el movimiento de la rueda de el ángulo θ entre la vertical y un radio de
radio r en una dimensión como se puede referencia2 y el ángulo de orientación Φ de la
apreciar en la figura 3a; La variable del rueda); La condición de rodadura sin
actuador es el giro θ y la variable en el espacio deslizamiento introduce dos restricciones, ya
cartesiano x que indica la distancia recorrida, que el espacio que el punto de contacto recorre
las dos variables responden a la condición de sobre el borde de la rueda es igual al que
rodadura x' = cθ ' recorre en el plano. Por ende, proyectando la
(2) velocidad del punto de contacto en el plano,
que depende de las velocidades, pero puede Paralela y perpendicularmente a la rueda es:
deducirse de la restricción holónoma por
derivación − x' senφ + y ' cos φ = θ ' c
x − cθ = constaante (4) y (5)
(3) x' cos φ + y ' senφ = 0

Estas dos restricciones no son integrables (no


se satisface el teorema de Frobenius), por esto
no se pueden obtener relaciones funcionales
entre la variables (x, y, θ, Φ) a partir de las
anteriores ecuaciones.
Ahora si damos unos valores iniciales (x0, y0,
θ0, Φ0) y hacemos rotar la rueda sin deslizar y
girándola alrededor del eje vertical, es posible
Figura 3: Restricciones no holónomas.
llegar a cualquier otra configuración (xf, yf, θf,
a) Movimiento de una rueda en una sola dirección;
b) Movimiento de rueda en el plano. Φf) lo que ahora nos permite obtener una
relación funcional entre estos valores,
Dada la situación no existen restricciones teniendo en cuenta que las direcciones de
holónomas, solo se necesita una única movimiento deben satisfacer las ecuaciones
coordenada (x o θ) y existe un grado de anteriores y por lo tanto el camino no puede
libertad. ser cualquiera.

Pero si se analiza el movimiento de la rueda Considerando un sistema de referencia {G} y


como en el caso que muestra la figura 3b, otro {L} con centro en el punto de guiado del
aparecen restricciones no holónomas, vehiculo y eje Y^L en la dirección del eje
considerando el movimiento de la rueda de longitudinal del vehiculo (figura 4).
forma que el diámetro en el punto de contacto
con el suelo siempre este en posición vertical,

1
Las holónomas son en este caso aquellas en las que
no intervienen las velocidades es decir de la forma
G k ( p, t ) = 0; k=1,…s; y por otro lado las no
holónomas dependen de las velocidades y no son
integrables, es decir que no se deduzca por derivación
2
total respecto al tiempo de una holónoma [2], [3]. El radio de referencia indica cuanto ha girado el disco
o la rueda
La longitud ∆s del arco recorrido por el robot
en ∆t estaría dada por:

∆s = R ∆φ (8)

Siendo R el radio de giro o radio de la


circunferencia que describe el punto de
guiado.
La curvatura es determinada como la inversa
del radio de giro así:

1 ∆φ
γ = = (9)
Figura 4: Cambio del sistema de referencia en la R ∆s
navegación del robot.
Las ecuaciones de movimiento en el sistema
{L} de la figura 5 en el estado inicial son:

L
(∆x) = −( R − R cos(∆φ ))
(10) y (11)
L
(∆y ) = Rsen(∆φ )

Si la orientación inicial del vehiculo respecto


al sistema {G} es de Φ, el movimiento en el
sistema {G} se determina rotando Φ así:

∆x = R cos(φ )[cos(∆φ ) − 1] − Rsen(∆φ )sen(φ )


Figura 5: Circulo Osculador. ∆y = R[cos(∆φ ) − 1]sen(φ ) + Rsen(∆φ ) cos(φ )

Suponiendo que el vehiculo se desplaza en un (12) y (13)


intervalo de control según un arco de
circunferencia, tal como se muestra en la Suponiendo que el intervalo de control es
figura 5. (Suposición valida para intervalos de suficientemente pequeño, también lo será el
control muy pequeños), entonces la velocidad cambio de orientación ∆Φ de lo cual se
lineal estaría dada por: obtiene que:
∆s
v= (6)
∆t cos(∆φ ) ≅ 1
(14) y (15)
sen(∆φ ) ≅ 0
y la velocidad angular por:
Reemplazando en las ecuaciones (12) y (13)
∆φ respectivamente se obtiene:
w= (7)
∆t
∆x = − R∆φsen(φ )
Siendo ∆s y ∆Φ respectivamente el espacio (16) y (17)
∆y = R∆φ cos(φ )
recorrido por el punto de guiado del vehiculo
ó
y su cambio de orientación durante el
intervalo de control ∆t.
∆x = − ∆ssen(φ )  x' − sen(φ ) 0
(18) y (19)  y ' =  cos(φ ) 0  v 
∆y = ∆s cos(φ ) (26)
     w
φ '  0 1   
Dividiendo ambas ecuaciones por ∆t cuando
∆t →0, se obtiene:
Siendo q ' = [vw] el vector de variables de
T

x' = −vsen(φ ) entrada.


y φ ' = w (20), (21) y (22) De las dos primeras ecuaciones de (26) se
y ' = v cos(φ )
puede obtener la siguiente restricción
independiente de v:
4. MODELO JACOBIANO DEL ROBOT.
x' cos(φ ) = y ' sen(φ ) = 0 (27)
Siendo p el vector que representa un punto en
el espacio de n coordenadas generalizadas y q
el vector de m variables de actuación, siendo Restricción no holónoma del movimiento,
n>. Si p’ y q’ son las derivadas temporales según esta el robot debe moverse en cada
correspondientes. En lo que sigue, por instante según la dirección de su eje
omisión, se considera que las variables se longitudinal de simetría.
expresan en el sistema de referencia global
x'
{G}, el modelo directo seria: tgφ = (28)
y'
p ' = j ( p )q ' (23)
Teniendo en cuenta la ecuación (5), la
Donde J (p) es el jacobiano y se puede escribir posición(x, y) y la orientación Φ del robot no
de la forma: son independientes.
Aplicando la seudoinversa así:
m
p ' = f ( p ) + ∑ g ( p ) i q 'i (24) En (23)
i =1
[ J ( p )]T p ' = J ( p )q ' [ J ( p )]T
Siendo f y g funciones vectoriales analíticas. (29)
Si p = [xyφ ] es el vector con las coordenadas
T
Despejando q’
globales del punto de guía del robot y la
q ' = {[ J ( p )]T J ( p )}−1[ J ( p )]T p '
orientación, las ecuaciones (20), (21) y (22)
pueden expresarse de la forma: (30)
Con f (p)=0 y m=2 Entonces el modelo obtenido será:

− sen(φ ) 0  x '


 v  − sen(φ ) cos(φ ) 0  
p ' =  cos(φ )  v + 0 w (25)  w =  0 y'
1  
   0
φ '
 0  1 
(31)
Siendo v y w la velocidad lineal y angular del
robot respectivamente. De la primera ecuación se puede determinar:
Las ecuaciones (25) pueden expresarse de la
forma: v = − x' sen(φ ) + y ' cos(φ ) (32)
Que concuerda con la ecuación (4). v − (b / 2 )w
wi =
c
(34) y (35)
4. MODELO DE LA UNIDAD v + (b / 2 )w
ROBÓTICA MÓVIL (TIPO SKID STEER wd =
DE DIRECCIONAMIENTO c
DIFERENCIAL) Sustituyendo (32) y (33) en (25) se puede
expresar el sistema en función de las variables
Para este análisis tendremos en cuenta que las de control como:
variables de control serán las velocidades de
las ruedas laterales como muestra la figura 6.  x' − (csen(φ ) / 2 − (csen(φ ) / 2
 y ' =  (c cos(φ )) / 2  w +  (c cos(φ )) / 2  w
    i   d
φ '  − c / b   c/b 
 x' − (csen(φ ) / 2 − (csen(φ ) / 2
 y ' =  (c cos(φ )) / 2 (c cos(φ )) / 2   wi 
    w 
φ '  − c / b c/b   d 
(36) y (37)
Sustituyendo por los valores conocidos de la
plataforma experimental así:

m
c Radio Ruedas 0.05
b Entre Ruedas 0.285
Figura 6: Guiado diferencial del Robot.
Tabla 1: Datos reales del prototipo construido.
Si wi y wd, son las velocidades de giro de las
ruedas izquierda y derecha respectivamente, y
si el radio de la rueda es c, las velocidades Del sistema de ecuaciones (37) obtenemos el
modelo jacobiano del robot:
lineales correspondientes son vi = wi c v y
v d = wd c para nuestro caso el modelo estaría  x' − (0.05sen(φ)) / 2 − (0.05sen(φ)) / 2
dado por:  y' =  (0.05cos(φ)) / 2 (0.05cos(φ)) / 2  wi 
   w 
v d + vi (wd + wi )c φ'  − 0.175 0.175  d 
v= = (38)
2 2
(32) y (33)
v − vi (wd − wi )c
w= d = 4.1 Estimación De La Posición Y La
b b Orientación
Siendo b la distancia que separa las ruedas, Para este cálculo es necesario realizar la
dado lo anterior se podría determinar las integración del sistema de ecuaciones (38) que
velocidades de giro que hay que aplicar a las representa el modelo jacobiano, conociendo la
ruedas izquierdas y derechas así:
posición y orientación inicial p0 = [x0 y 0φ 0 ] ,
T

la integración seria de la forma:


 t − 0.05sen(φ )  Figura 7: Simulación con Wizq= 1 Rad./seg. y
∫ ( wd + wi )dτ  Wder=1rad/seg.
2
 x   x0   0 t 
 y  =  y  +  0.05 cos(φ ) ( w + w )dτ  En la figura 7 se puede apreciar el efecto de
   0  ∫ 2
d i  aplicar la misma velocidad a las ruedas
φ  φ 0   0 
 t
 derechas e izquierdas, el móvil se desplaza en
 ∫ 0.175( wd + wi )dτ  línea recta con la orientación dada
 0  inicialmente.
(39)
La estimación de la posición es una
aproximación valida solo para periodos de
tiempo suficientemente pequeños3.

En las simulaciones posteriores se pretende


evaluar el comportamiento del modelo con
diferentes combinaciones en las entradas del
sistema.
Los parámetros generalizados de la simulación
son:

Posición inicial en el eje x Xo=0


Posición inicial en el eje y Yo=0
Orientación inicial ángulo Φo=0 Figura 8: Simulación con Wizq= 1 Rad./seg. y
Wder=1.5 Rad./seg.
Tiempo de la simulación variable entre 30 y
50 segundos con el fin de apreciar mejor el El la figura 8 se puede apreciar el resultado de
comportamiento. aplicar en las ruedas derechas una velocidad
poco mayor que en las izquierdas, el móvil se
desplaza continuamente hacia la izquierda
formando un arco.

3
Si se estima la posición en largos periodos de tiempo
se presenta una acumulación de error debido a
deslizamientos y otros efectos provocados por
comportamientos dinámicos, relacionados Figura 9: Simulación con Wizq= 1.5 Rad./seg. y
fundamentalmente con la interacción del robot con el Wder=1 Rad./seg.
terreno que en el modelo presentado se desprecian.
En la figura 9 se presenta el caso opuesto al En el caso mostrado en la figura 11 el móvil
anterior, el móvil se desplaza a la derecha se desplaza hacia la derecha hasta el momento
formando un arco. en que la velocidad en las ruedas derechas
sobrepasa a sus opuestas, a partir de este
momento el móvil comienza a desplazarse
hacia la izquierda, después de un periodo de
tiempo cuando este valor se incrementa
mucho mas este produce que el móvil
comience a girar en torno a una circunferencia
mas y mas pequeña.

5. Conclusiones

 El modelado de vehículos robóticos


móviles demanda de alta complejidad
matemática a la hora de hallar las
herramientas con las que se pueda
representar el modelo de un sistema.
Figura 10: Simulación con Wizq= -1 Rad./seg. y
Wder=1 Rad./seg.  Por más sencillo que parezca un
sistema robótico móvil de forma
En la figura 10 se presenta el caso cuando a intuitiva, lograr un modelado eficiente
las ruedas se les aplica la misma velocidad de dicho sistema puede ser una tarea
pero en sentido contrario, así podemos notar la difícil.
característica principal del direccionamiento
diferencial, el móvil no se desplaza, sin  Es necesario manejar muchas de las
embargo su ángulo de orientación si se herramientas computacionales pues
incrementa lo que determina que el robot se estas ayudan en el análisis de los
encuentra girando sobre su eje vertical. sistemas, su comportamiento,
desempeño, interacción con otros
sistemas y otros comportamientos que
peden analizarse con una simulación.

 Para este vehiculo robótico especifico


se logro obtener el modelo cinemático
y aplicando el jacobiano a este se logro
realizar una simulación que
representaba muy bien al modelo, sin
embargo estas ecuaciones halladas no
fueron las optimas a la hora de aplicar
teoría del control por que al hacerlo
pude notar que el sistema era no
controlable, para sobrellevar esto es
necesario manipular el modelo para
Figura 11: Simulación con Wizq= 1 Rad./seg. y llevarlo a otra forma conocida como
Wder → Rampa valor inicial=0 y pendiente= 0.1. un sistema de control en cadena con
variables holónomas, información
encontrada a nivel de transactions de
documentos de investigación a nivel de
maestría y doctorado, donde las
herramientas matemáticas usadas son
de muy alta complejidad respecto de la
formación que tengo como estudiante
de pregrado, aun así sigo investigando
en el tema, pues como se menciono al
inicio de este documento en la
Universidad de San Buenaventura muy
pocas personas han desarrollado
investigación es temas como este.

Bibliografía

[1] ROBÓTICA Manipuladores y Robots


Móviles, Aníbal Ollero Baturone,
Catedrático de ingeniería de sistemas y
automática de la Escuela Superior de
Ingenieros (Universidad de Sevilla).

[2] ”Control of Nonholonomic System”.


Ting-Yung Wen, J. (1997) The Control
Handbook, CRC Press, IEEE Press.

[3] Feedback Linearization and


Discontinuous Control of Second-Order
Nonholonomic Chained Systems, National
University of Singapore, S. S. Gey, Z.
Suny, T. H. Leey and Mark W. Spongz.

También podría gustarte