Está en la página 1de 16

Parcial I robtica

Pablo Alonso Enzo Pacilio

Introduccin
En nuestro trabajo hicimos que 3 robots que parten de cualquier posicin inicial sigan una
trayectoria manteniendo una formacin predefinida en la cual uno de los robots es el lder y
los otros lo siguen sin colisionar.

Robots
Los robots utilizados fueron uno del tipo (3,0) y dos del tipo (2,0). A continuacin
presentamos la informacin de los mismos.

Robot (3,0)
Robots que solo tiene ruedas castor o swedish. Tambin llamados omnidireccionales
porque pueden moverse en cualquier direccin sin reorientarse.
A continuacin sigue una representacin grfica del robot (3,0) utilizado junto con sus
matrices para cumplir las restricciones de deslizamiento:

En el modelo de postura cinemtica = RT ()( s ) el punto P y los ejes Xm e Ym se


pueden elegir arbitrariamente y la matriz siempre puede ser elegida como una matriz
identidad de 3x3. Por lo tanto el modelo se reduce a:

(1)
Cmo no vamos a controlar el ngulo de la postura del robot entonces el modelo se reduce
a:

Robot (2,0)
Estos robots no tienen ruedas steering y tienen una o ms ruedas fixed que comparten el
mismo eje.
A continuacin sigue una representacin grfica del robot (3,0) utilizado junto con sus
matrices para cumplir las restricciones de deslizamiento:

El punto P puede ser elegido arbitrariamente dentro del eje de las ruedas fixed mientras que
el eje Xm debe estar alineado con el mismo. La matriz se selecciona cmo:
Entonces el modelo de postura cinemtico se reduce a:

(2)

Con 1 siendo la componente de velocidad segn Ym y 2 la velocidad angular.

Nuevamente no vamos a controlar el ngulo de la postura del robot por lo que le modelo se
reduce a

En este caso la matriz RT ()( s ) no es invertible lo cual es un problema para hallar las
acciones de control. Para eso lo que se hace es mover el punto P una pequea distancia A
perpendicular al eje de las ruedas as obteniendo el siguiente modelo:

(3)

Control
El sistema realimentado de control utilizado para todos los robots sigue el siguiente
diagrama:
Control de formacin
Para la realizacin de este control se bas en el control por potenciales con la excepcin de
que el mismo se modific de tal manera de hacer ms sencilla su implementacin y a su vez
con el agregado de que mantengan una determinada formacin.

Para simplificar la explicacin e ir avanzando en la implementacin de dicho control, se


proceder a explicar utilizando el caso prctico como ejemplo.

Para el control de formacin es necesario definir un lder y sus seguidores, y tambin la


manera en que estos se comunican, por lo que se utilizar grafos para describir estos
vnculos entre robots a su vez de darles un nombre (definicin de nodos) a cada uno. Por
lo que se definen los siguientes vectores:

Siendo Vp los distintos nodos del grafo y P los distintos vnculos entre los nodos. Luego
utilizando estos vectores se procede a definir las siguientes matrices de Adyacencia y
Laplaciana:

Por otra parte definimos el potencial atractivo (de manera genrica) de la siguiente manera:

Sabiendo que el gradiente de este es la accin de control se obtiene lo siguiente:


De aqu que queda demostrado la necesidad de definir las matrices de las que se habla
previamente.

En la implementacin de este control se deseaban dos tipos de formacion: en triangulo y en


tres en linea. Para ello es necesario definir las posiciones relativas de los robots
seguidores respecto el lder, para ello se procede a definir una matriz de posiciones
relativas que llamaremos Q; las mismas para los distintos casos son las siguientes:

La primer matriz corresponde a la formacion en triangulo y la segunda a la formacin tres


en lnea.

Realizando un anlisis similar al del potencial atractivo pero ahora utilizando las matrices Q
de formacin se define su potencial de accin respecto a estas posiciones relativas y se
llega a la siguiente conclusin para la accin de control:

Siendo Lp la matriz laplaciana, Xi el vector de las distintas posiciones de los robots, Ad la


matriz de adyacencia y Qi el vector que corresponde a cada robot las posiciones relativas
de la formacin.

Dado que la formacin cuenta con un lder, que debe seguir una trayectoria asignada, y dos
seguidores, que deben seguir al lder segn la formacin, se debe aplicar los siguientes
cambios a las acciones de control U para que cada uno cumpla con los distintos roles
asignados.
Control de colisin
El motivo de este control es para la prevencin de colisiones en el transitorio de llegar a la
formacin, dado que el potencial de formacin ya contempla y evita las colisiones de sus
miembros, por lo que se procede a implementar el siguiente potencial de repulsin:

Siendo D(q) la distancia euclidiana del origen (el robot al cual se le va a implementar la
accin de repulsin) al punto q que se busca no colisionar; y Q* el radio en el cual el
potencial comienza a tener efecto para que los robots se repelen.

De la misma manera que en el control de formacin, el gradiente de este potencial de


repulsin ser la accin de control a aplicar en los robots. Cabe destacar que dado que se
tratan de gradientes y gracias a la linealidad del mismo, la accin de control final ser la
suma de las distintas acciones de control.

Por ltimo y para simplificar cuentas se sabe que:

Siendo cada uno de los gradientes repulsivos, la accin de repulsin del robot 1 sobre el
robot 2, por lo que es coherente querer que la accin de control del robot 2 sobre el robot 1
sea la opuesta.

Implementacin en simulink
El diagrama hecho en simulink fue el siguiente:
En el mismo, el bloque llamado elDios sera el controlador donde se implementa la
realimentacin negativa de una trayectoria de referencia (definida dentro del bloque) con las
posiciones y ngulos de postura de cada robot. Con el resultado de esa realimentacin se
realizan las acciones de control de seguimiento, formacin y colisin para cada robot.

En el diagrama lo que llamamos Robot(2,1) en realidad es otro robot (2,0) ya que no


logramos implementar uno que fuera del tipo (2,1).

Implementacin de los robots

Robot(3,0)
La implementacin de este robot es simplemente una funcin que implementa la ecuacin
(1) tomando como parmetros de entrada la accin de control para su posicin (x,y) junto
con su ngulo de postura sobre el cual no se toman acciones de control. La salida de
este bloque es la velocidad en X e Y del robot las cuales se integran para as obtener su
posicin y pasarsela al controlador
Robot (2,0)
El robot (2,0) requiere una implementacin un poco ms compleja debido a lo mencionado
anteriormente de que se debe cambiar el punto P de lugar para que la matriz RT ()( s )
sea invertible:

El bloque R20 es una simple funcin para implementar la ecuacin (2) siguiendo la misma
idea del robot (3,0). A la salida de ese bloque se la integra para obtener la posicin del robot
la cual por un lado se usa para la visualizacin en grficos del mismo y por otro lado para
realizar el cambio de punto P una distancia A en el bloque err20:

Implementacin del controlador

Control de formacin
Para el control de formacin se llevan a cabo los siguientes pasos dentro del controlador
elDios:
Efectivamente se pueden apreciar las diferencias en cuanto al control del robot lder y de los
robots seguidores. Donde al lder se le asigna un recorrido, y a los seguidores nicamente
intenten mantener la formacin.
Otra cosa a tomar en cuenta y que no se mencion en la parte terica es que para llegar al
consenso tanto en el eje de abscisas como el de ordenadas, del plano de movimiento, a las
matrices de adyacencia y laplaciana se les aplic un producto de Kronecker, el cual ayuda a
replicar estas matrices a lo largo de la diagonal de la identidad as haciendo posible hallar
los valores de control tanto para el eje X como Y.

Control de colisin
Para llevar a cabo los potenciales repulsivos de cada robot, se plante llevar a cabo la
siguiente rutina (script) utilizando los parmetros que recibe elDios, de parte de los robots,
que se presenta a continuacin:

En el mismo no aparecen cada uno de estos potenciales, pero los mismos son calculados
de forma anloga salvando el hecho de que se utilizan los parmetros correspondientes a
los robots que no se quiere que colisionen.
Visualizacin de la simulacin
Para visualizar que tan bien estn funcionando nuestros controles y corroborar el
funcionamiento de los robots se arm una rutina en matlab en la cual se visualiza
grficamente en forma de animacin el recorrido deseado por los robots al mismo tiempo
que el recorrido que van realizando los mismos.

A continuacin se muestra el cdigo de la rutina seguido de algunas capturas de la


animacin para una trayectoria de espiral.
La lnea punteada roja es el recorrido deseado mientras que el tringulo negro representa al
lder de la formacin siendo la lnea negra el recorrido que este hizo. Se puede apreciar
como al principio luego de un transitorio el robot lder se engancha con la trayectoria que se
le pasa teniendo un error despreciable. Tambin se puede ver como la formacin se
mantiene en todo momento.

También podría gustarte