En esta clase vamos a revisar la simulación del manipulador aéreo.
De igual manera que el otro robot que habíamos revisado voy a dejar los archivos en una carpeta donde
deben correr todos los programas en la misma carpeta para que no tengan ningún error y como habíamos
visto vamos a empezar con las funciones que habíamos revisado a lo largo del curso.
Tenemos acá nuestro tiempo de muestreo y también nuestro vector de tiempo.
Acá tenemos las condiciones iniciales en el centro geométrico del robot tenemos en x y z.
También tenemos la orientación y las posiciones angulares de cada uno de los eslabones.
Acá tenemos la distancia en metros donde se encuentra ubicado la base del manipulador.
Acá tenemos la altura de la base del manipulador.
Acá tenemos las longitudes del eslabón 1 y 2 y luego mediante el modelo geométrico vamos a hallar la
posición como en ACAM.
Esto lo vamos a renombrar lo vamos a llamar como Ekiza y esto como se ha debido a la nomenclatura que
habíamos revisado en el modelo entonces este sería la posición en donde se va a ubicar la base del brazo
robótico entonces vamos a obtener de la siguiente manera Y acá tenemos ya el modelo matemático que habíamos
obtenido es decir el modelo geométrico de este entonces aquí vamos a ingresar como ven diferentes velocidades.
En total son seis tipos de velocidades comparado con las cuatro que habíamos encontrado en el robot
tipo un ciclo.
A continuación vamos al bucle de simulación.
Acá podemos ver el bucle y de la misma manera vamos a utilizar la matriz jacobiano que habíamos encontrado.
Entonces vamos a declarar cada uno de sus elementos de la matriz y luego lo vamos a unir para formar
la matriz total que vemos acá.
Luego vamos a tener el vector de velocidades como pueden ver acá tenemos el vector de velocidades de
referencia o acciones de control y luego vamos a echar las velocidades en la punta del Creeper o en
el punto de control que habíamos obtenido.
Entonces tenemos aquí las velocidades en ese punto luego de igual manera vamos a utilizar el modelo
cinemático para realizar la simulación debido a que no poseemos un robot real en el cual podamos hacer
pruebas pero podemos realizar de una manera fácil y sencilla y de manera confiable en un computador
mediante el modelo que acabamos de obtener es una de las ventajas de realizar simulación que no es necesario
tener un robot físico para experimentar.
Entonces no hay pretexto para que ustedes aprendan robótica simplemente tienen que ir diseñando sus
algoritmos de control u otras cosas que quieran experimentar con estos modelos y luego si desean pueden
implementarlos en robots reales.
Entonces una vez aclarado esto vamos a ACAM tenemos aquí el ángulo cómo ven el ángulo de orientación
en el eje Z que lo vamos a obtener integrando como ven acá la velocidad angular tenemos el X punto el
punto y el Z punto.
Luego mediante integración numérica vamos a obtener las posiciones en ese punto central para los siguientes
instantes de muestreo.
A continuación vemos también la integración numérica aplicada a cada uno de los eslabones y luego vamos
a obtener cómo ven acá la posición donde se encuentra el brazo robótico listo una vez que tenemos esto.
En cambio acá vamos a hallar de igual manera utilizando la integral numérica como vemos acá hemos integrado
cada uno de estos elementos para obtener las posiciones en x y z de los siguientes instantes de muestreo.
Finalmente vamos a ver acá tenemos el movimiento estroboscópicas del robot donde podemos observar las
mismas características que habíamos revisado en el modelo del robot móvil de la misma manera tenemos
acá todas las configuraciones esto lo vamos a quitar y acá podemos ver que se vuelve a repetir tenemos
acá el dibujo del dron en este caso no tenemos parámetros del dron solamente tenemos un archivo es una
de las diferencias que hay entre los archivos anteriores que habíamos visto y como pueden observar Aqaba
a desplazarse en x y z y también va a tener una orientación en el eje z y adicionalmente hemos hecho
una escala del 1.2 de aquí es una escala y acá podemos observar las condiciones iniciales o puntos iniciales
para distinguir del movimiento del robot.
En cambio acá vemos que se repite el brazo robótico con las mismas características que habíamos visto
anteriormente.
Entonces como podemos observar todo esto acá se vuelve a repetir acá simplemente son figuras donde muestran
cada una de las acciones de control que hemos ingresado.
Entonces vamos a empezar dando velocidades y vamos a observar cuál es el resultado.
En primer lugar vamos a encerrar todas las velocidades vamos a mantener todo todas las condiciones iniciales
e igual en cero no hay ningún problema y vamos a dar una velocidad frontal a esta velocidad frontal
también está referida al eje X es decir la velocidad sobre el eje x.
Entonces vamos a ver ese resultado vamos a correr el programa Bueno aquí vamos a cambiar el directorio
y vamos a observar lo siguiente Cómo pueden ver aquí se desplaza sobre el eje X positivo como pueden
ver.
Bueno aquí ya se ocultó el dron debido a que no existe espacio suficiente para observar.
Entonces es muy importante ajustar el axis listo entonces vamos a ver si lo ponemos como negativo el
robot debería moverse sobre el eje negativo de las leches como podemos ver efectivamente realiza la
trayectoria esperada.
A continuación vamos a darle velocidad lateral entonces vamos a ver esa velocidad lateral.
Vamos a agregarle cero a la velocidad frontal y vamos a darle un valor de cero punto uno a la velocidad
lateral.
Vamos a correr el programa y podemos ver efectivamente el robot se mueve de manera lateral en este caso
creo que lo hemos agregado un seno.
Efectivamente está agregado a un seno.
Por eso se dirige hacia arriba y luego bajan debido al cambio de signo que tiene la función seno.
Listo ahora vamos a agregar.
Bueno vamos a encerrar esta parte de aquí vamos a encerrarlo y vamos a agregar una velocidad en el eje
z entonces esta velocidad que me permite esto me permite al robot como Ben que vuele entonces eso le
da una velocidad en el eje Z.
Como pueden ver acá y comienza a subir el dron si fuera en signo negativo simplemente ir hacia abajo.
Ahora vamos a intentar la rotación vamos a encerrar todo y vamos a mantener la rotación vamos a dar
un valor de 0.2 y vamos a observar cómo el robot comienza a girar.
Como pueden ver en sentido anti horario debido al signo y ha formado como ven ha dibujado una trayectoria
en forma de círculo como pueden ver allí.
El brazo robótico.
Luego vamos a probar cada uno de los eslabones.
Vamos a probar los eslabones vamos a poner aquí un 0.1 y vamos a observar qué sucede vamos a observar
qué sucede.
Como vemos acá el brazo sube pero en este caso hay que tener muy en cuenta las limitaciones que tiene
este brazo.
Ojo en eso Miren podemos observar aquí cómo el brazo ya ha chocado sobre la estructura del dron eso
hay que tener muy en cuenta una de las ventajas de este robot tenga redundancia yo puedo especificará
el brazo robótico que se mantenga en una inclinación digamos el primer eslabón y menos 45 que sería
hacia abajo y el otro permanezca en cero grados.
Entonces podría utilizar eso para mantener al brazo robótico debajo de las hélices para que no haya
ningún problema.
Es uno de los algoritmos que he desarrollado para evitar esta parte.
Bueno eso ya como ven es parte de la experimentación.
Sin embargo aquí en simulación como ven se puede hacer de todo podemos simular esto y ver qué pasa.
Es una de las ventajas de la simulación sabríamos qué va a ocurrir antes de implementarlo en un robot
real esto implementado de una manera directa en una parte real.
Como ven ya sufría daños el dron acá ya se dañaba completamente la hélice que está formando acá entonces
como ven hay que tomar muy en cuenta el análisis de la parte de simulación para luego realizar ya la
parte experimental.
Entonces como ven hay mucha ventaja en realizar simulación es muy importante primero realizar simulación
y luego implementarlo alguna vez tal vez si fueron estudiantes de electrónica o son estudiantes de electrónica
revisaron proteins por ejemplo es un programa donde nosotros podemos desarrollar nuestros circuitos
simular y luego poder implementarlos en la vida real entonces esto es similar nosotros realizamos la
simulación como ven acá del brazo y el dron y como podemos ver si ingresamos esas velocidades el dron
se dañaría entonces vamos acá y vamos a cambiar esa parte de acá entonces podríamos cambiar esta parte
por ejemplo acá podríamos aumentar la frecuencia y vamos a ver que tal vez ahí ya no Choc entonces como
vemos acá vamos a verlo un poquito más cerca vamos a cambiar esto y simplemente vamos a poner uno y
vamos a correr de nuevo para ver qué sucede y cómo pueden ver ahí llega a tocar como pueden ver aún
llega a tocar.
Entonces nosotros podríamos mandar una frecuencia mucho más más pequeña para que el brazo no toque o
como él les había mencionado.
Simplemente deberíamos considerar que el brazo robótico no debe tener esta configuración.
Eso les habían mencionado que se puede hacer con algoritmos de control listo entonces una vez aclarado
esto vamos a ir probando también el otro de una vez vamos a darle una frecuencia más grande vamos a
correr de nuevo y vamos a observar que quizás se mueven los dos brazos se puede ver la simulación de
los dos brazos para ver esto de mejor manera vamos a rotar el robot vamos a derrotarlo 180 grados entonces
vamos a cambiar aquí la orientación vamos a ponerle Pik vamos a correr el programa y como podemos observar
ahí vemos que este brazo este eslabón choca con la hélice entonces eso es un peligro.
Qué vamos a hacer.
Pues simplemente vamos a decir lo siguiente Vamos a rotar el ángulo vamos a iniciar loka donde estás
el ángulo extra aquí vamos a rotar esto menos cuartos vamos a mandarlo hacia abajo y vamos a correr
de nuevo y como pueden ver ahí ya no existe el peligro de que choque el brazo con la hélice.
Hemos cambiado la condición inicial del brazo y como pueden observar no existe ningún peligro de que
el brazo alcance a la hélice.
A continuación ya vamos a experimentar algo más vamos a realizar ya el desplazamiento y el vuelo del
dron.
Entonces para ello vamos a cambiar esta parte de acá que habíamos quitado.
Vamos a ponerlo en 7 vamos arriba y ya vamos a darle una velocidad NZ vamos a darle una velocidad en
Z de 0.1 y también vamos a dar velocidades en doble.
Vamos a dar una velocidad de 0.1 igual.
De igual manera vamos a ver qué sucede.
Vamos a ver qué sucede y cómo pueden observar ahí el robot está rotando y también está subiendo y moviendo
también cada una de sus articulaciones y como pueden observar ahí comienza a hacer una trayectoria podemos
ver ahí la trayectoria generada por el dron y como les habían mencionado gracias a los controladores
nosotros podríamos especificar la trayectoria que deseamos que el dron realice.
Entonces tenemos esta ventaja de realizar simulaciones antes de implementar un robot real.