Documentos de Académico
Documentos de Profesional
Documentos de Cultura
AUTOMATISMO
Ingeniería Electrónica (T74-3)
INDUSTRIAL
Hoy en la industria actual, la robótica está inserta en todos los ámbitos deseados por la humanidad. Estos
ámbitos son variados como; Medicina, Tecnología, Deportes, Minería, Industrial, entre otros.
Principalmente, se ha influenciado positivamente la industria con la masificación de la robótica, con efecto
tal, que aumenta la eficiencia y seguridad a los procesos productivos. Como primeros procesos automáticos,
nacen los robots manipulados, es decir, parte del proceso provenía de la intervención del operario, para
años más tarde, esto cambió y ahora un robot puede ser controlado fácilmente por otra máquina u
operadora lógica.
A nivel global, la robótica, entendida como una ciencia que estudia el diseño y construcción de máquinas
capaces de desempeñar tareas realizadas por personas o que requieren del uso de inteligencia, es una
realidad a nivel industrial. Es importante destacar que la robótica está presente en todo momento y que
aún está en su fase mínima, para el futuro se pronostica un gran porcentaje de tecnología automatizada,
tanto en las industrias como en los hogares de las personas.
Así mismo, existen diferentes tipos de robots que, a su vez, la forma en la que procesan los datos es distinta.
Para ser más exactos, depende a la aplicación a la cual se requiere. Actualmente los robots más avanzados
contienen inteligencia artificial, la cual, pueden incluso interactuar con un humano.
Objetivos secundarios
1.1 Diseñar e Implementar en ambiente virtual un robot 3 GDL en ambiente virtual “MATLAB”.
1.3 Analizar y comprender el lenguaje de programación mediante script en ambiente virtual “MATLAB”
para identificar la mecánica del robot mediante la herramienta interna llamada “ROBOTIC
TOOLBOX”.
1.5 Validar modelado y establecer la condición del Robot estimado mediante su grafica y
comportamiento a lazo abierto.
1.6 Establecer pruebas de modelamiento para el control par calculado y realizar análisis comparativo
de su grafica con las respuestas ya conocidas.
Dado que la cinemática directa es el problema estático geométrico de calcular la posición y la orientación
del efector terminal del manipulador; para enfrentar este problema es necesario utilizar como
herramientas las matrices de rotación y traslación, las que unidas entregan la matriz de transformación de
coordenadas homogéneas, conocida también como matriz de Denavit-Hartenberg.
Como se menciona antes, para obtener el modelado de la cinemática directa se deben seguir una
serie de pasos aplicado en el algoritmo de Denavit-Hartenberg, el cual se menciona a continuación.
5.1.1.1 Algoritmo de D-H para la obtención del modelado cinemático directo
1. Numerar los eslabones comenzando con 1(primer eslabón móvil de la cadena) y acabando con “n”
(ultimo eslabón móvil). Se numerará como eslabón 0 a la base fija del robot.
2. Numerar cada articulación comenzando por 1(la correspondiente al primer grado de libertad) y
acabando en “n”.
3. Localizar el eje de cada articulación. Si esta es rotativa, el será su propio eje de giro. Si es prismática,
será el eje a lo largo del cual se produce el desplazamiento.
5. Situar el origen del sistema de la base {𝑆0 } en cualquier punto del eje 𝑧0 . Los ejes 𝑥0 y 𝑦0 se situarán
de modo que formen un sistema dextrógiro con 𝑧0 .
6. Para 𝑖 = 1 ℎ𝑎𝑠𝑡𝑎 𝑖 = 𝑛 − 1, situar el sistema {𝑆𝑖 } (solidario al eslabón i) en la intersección del eje
𝑧𝑖 con la línea normal común a 𝑧𝑖−1 𝑦 𝑧𝑖 . Si ambos ejes se cortasen se situaría {𝑆𝑖 } en el punto de
corte. Si fuese paralelos {𝑆𝑖 } se situaría en la articulación 𝑖 + 1.
9. Situar el sistema {𝑆𝑛 } en el extremo del robot de modo que 𝑧0 coincida con la dirección de 𝑧𝑛−1 y
𝑥𝑛 sea normal a 𝑍𝑛−1 y 𝑧𝑛 .
10. Obtener 𝜃𝑖 como el Angulo que hay que girar en torno a 𝑧𝑖−1 para que 𝑥𝑖−1 y 𝑥𝑖 queden paralelos.
11. Obtener 𝑑𝑖 como la distancia, medida a lo largo de 𝑧𝑖−1 , que habría que desplazar {𝑆𝑖−1 } para que
𝑥𝑖 y 𝑥𝑖−1 quedasen alineados.
12. Obtener 𝑎𝑖 como la distancia medida a lo largo de 𝑥𝑖 (que ahora coincidiría con 𝑥𝑖−1 ) que habría
que desplazar el nuevo {𝑆𝑖−1 } para que su origen coincidiese con {𝑆𝑖 }.
13. Obtener 𝛼𝑖 como el ángulo que habría que girar entorno a 𝑥𝑖 (que ahora coincidiría con 𝑥𝑖−1), para
que el nuevo {𝑆𝑖−1 } coincidiese totalmente con {𝑆𝑖 }.
Se dice que los cuatro parámetros de D-H (𝜃𝑖 , 𝑑𝑖 , 𝑎𝑖 , 𝛼𝑖 ) dependen únicamente de las características
geométricas de cada eslabón y articulaciones que unen cada sistema de referencia en el robot y para
determinarlos se deben establecer las siguientes condiciones:
𝜃𝑖 : Angulo entorno a 𝒛𝒊−𝟏 de 𝒙𝒊−𝟏 a 𝒙𝒊 , usando la regla de la mano derecha. (Angulo variable
de articulaciones rotacionales entre los ejes mencionados).
𝑑𝑖 : Distancia a lo lago de 𝒛𝒊−𝟏 desde el origen del sistema de coordenadas {𝑺𝒊−𝟏 } hasta la
intersección de 𝒛𝒊−𝟏 con 𝒙𝒊 ( Se trata de un parámetro variable en articulaciones prismáticas).
𝑎𝑖 : Distancia a lo largo del 𝒙𝒊 desde la intersección de 𝒛𝒊−𝟏 con 𝒙𝒊 hasta el origen del sistema {𝑺𝒊 }
, o la distancia más corta entre 𝒛𝒊−𝟏 y 𝒛𝒊 .
1. Obtener las ecuaciones de la dinámica inversa de un robot de 3GDL del tipo RRP(Rotacional –
Rotacional – Prismático) en el espacio 3D mediante el algoritmo recursivo de Newton-Euler. En la
Figura N°2 se muestra el diseño del robot de 3GDL.
2. Realizar validación del modelado obtenido del punto anterior a lazo abierto y comprobar y/o
analizar el comportamiento con la herramienta virtual de aprendizaje “Matlab & Simulink”.
3. Realizar la simulación de control par calculado con el modelado anterior mediante la herramienta
virtual de aprendizaje “Matlab & Simulink”.
Entonces se comienza trazando el eje principal en el sistema de referencia {S0} y posteriormente, siguiendo
el análisis por el algoritmo dado. A continuación, en la Figura N°3 se muestra la posición de los ejes
respectivos.
Una vez trazado todos los ejes correspondientes según el algoritmo dado, se continúa para
construir la matriz de parámetros de D-H y posteriormente realizar una simulación de prueba para el robot
analizado. En la Tabla N°1 se muestran los valores asociados a la matriz D-H resultante.
Tabla 1: Matriz de parámetros de D-H
𝑖 𝜃𝑖 𝑑𝑖 𝑎𝑖 𝛼𝑖 𝜎𝑖
1 𝜋/2 L1 0 𝜋/2 0
2 -𝜋/2 0 0 −𝜋/2 0
3 0 L2 0 0 1
Ya obtenido los parámetros del algoritmo de D-H, se comienza a validar el modelo mediante la plataforma
de simulación virtual “Matlab & Simulink”, donde se debe reordenar los datos obtenidos para acomodarlos
en la programación existente.
Al presionar “ENTER” la simulación arrancará la extensión “Robotic Toolbox” con los valores
establecidos y emergiendo dos ventanas correspondientes al robot modelado. A continuación en la Figura
N°5 se muestra la simulación del Robot de 3 grados de libertad(RRP).
Con esto se valida el modelado analizado, es decir, se obtuvieron los parámetros para calcular la dinámica
inversa del Robot y se deduce que el robot replica el funcionamiento inicial dado.
𝑖 𝜃𝑖 𝑑𝑖 𝑎𝑖 𝛼𝑖
1 𝜃1 L1 0 𝜋/2
2 𝜃2 0 0 −𝜋/2
3 0 d3 0 0
A modo de respuesta, se obtienen los torques de cada articulación. Esto nos permite calcular y
separar las matrices de; inercia, Coriolis, Gravedad y Fuerza de roce con respecto a tau1, tau2,tau3. Pero,
primeramente, hay que sustituir las variables dependientes del tiempo, ya que, cuando se inició el script,
se definen de una forma particular donde hace un poco problemático a la hora de analizar la ecuación en
su máxima expresión. En la Figura N°9 se muestran las variables en el tiempo sin sustituir.
A continuación se detalla un script que nos permite sustituir estas variables por otras más sencillas de
analizar.
Figura 10: Script para la reducción de términos para tau1, tau2, tau3.
Ya realizada la sustitución de variables, se procede a conformar las matrices de; Inercia, Gravedad
y Coriolis. Mediante un Script se pueden tomar los coeficientes correspondientes en cada matriz conforme
a la variable asociada. A continuación, se muestra el script resultante:
*Nota: al momento de “rescatar” las variables deseadas sobre los torques, se producirá un error “Muxpad”.
Generalmente es porque la variable a “rescatar” no está contenida o no existe dentro de la ecuación del
torque.
Figura 13: Script de la dinámica inversa y para posteriormente ser utilizado en "Simulink".
Una vez realizado la implementación del modelado en “Simulink”, se analiza la respuesta transitoria del
robot y validar mediante sus graficas respectivas. Para esto se escogerán 3 pruebas de simulación, las cuales
tendrán las siguientes condiciones: 1 con torque de articulaciones y 2 sin torque.
Nombre Condiciones
Tau 1 10
Tau 2 0.01
Tau 3 0.01
Posición th1 0
Posición d3 1
Los valores de Tau1, Tau2, Tau3 son escogidos arbitrariamente, es necesario asignar un valor de
torque alto a una de las articulaciones porque el ambiente de simulación “Matlab” se tarda demasiado en
realizar la respuesta del sistema, por ende, las interpretaciones se harán con respecto a lo que se logra
visualizar.
En la Figura N°15 Se logra visualizar la respuesta en velocidad del robot RRP, como el torque es alto
en la primera articulación se produce un peak en la señal de la primera articulación, esto tiene sentido
debido a que la articulación se saca del reposo para establecer un movimiento, esta velocidad poco a poco
irá decayendo debido a que existe una fuerza que se opone al movimiento “Roce”, de la misma manera las
articulaciones restantes sufren un cambio de velocidad por el torque aplicado, pero se ven mas afectadas
aun por la fuerza centrífuga generada por el movimiento rotatorio de la primera articulación, se observa
que la velocidad de la tercera articulación se mantiene alta, debido al mismo efecto de la fuerza centrífuga
que hace que el pistón comience a estirarse, así mismo, se denota que de la misma manera la velocidad
decae a medida que pase el tiempo debido a que la velocidad de la primera articulación decae, pero la
velocidad no es capaz de llegar a cero, ya que al encontrar la posición de reposo el pistón seguirá cayendo
por la gravedad, a esto se le suma a que el largo de la última articulación no tiene un límite, mientras que
la velocidad de la segunda articulación tiende a oscilar pero es cercana al cero, esto es debido a que como
se configuró su posición inicial en π/2 coincide con el movimiento natural a la fuerza centrifuga por lo que
su posición varia de manera mínima por ende la velocidad que le afecta es baja.
Figura 15: Respuesta entorno a la velocidad del robot cuando se aplica un torque inicial.
Tabla 4: Configuración para las fuerzas de entrada y posiciones de las articulaciones sin torque(1).
Nombre Condiciones
Tau 1 0
Tau 2 0
Tau 3 0
Posición th1 0
Posición d3 1
Se debe considerar que al no aplicar un torque constante la gravedad afectará la estructura del
robot haciéndola caer hasta lograr una posición de reposo, de esta manera se observa en la figura ¿? Las
diferentes articulaciones y sus comportamientos en la variación de la posición, donde la primera
articulación no muestra cambio alguno, debido a que su posición inicial fue fijada en cero y también
considerando que a dicha articulación no verá su posición alterada por la gravedad debido a que el eje de
rotación se encuentra en paralelo a la fuerza de gravedad, eso quiere decir que la gravedad en este caso
afecta al eje del motor no así al estator (considerando como si se tratara de un motor), mientras que las
otras articulaciones si ven afectada su posición inicial por la gravedad buscando un estado de reposo; por
consiguiente la segunda articulación afecta su posición aumentando el valor de su ángulo con respecto a la
referencia, una vez alcanzada su posición de reposo el valor alcanzado corresponde a “π”; por último la
última articulación prismática ve afectada su posición debido a que igualmente es atraída por la gravedad
lo que hace un efecto en cadena ya que esta articulación es la que mueve a la articulación anterior, una vez
que la articulación 2 se acerque al valor de π, el pistón del prismático irá creciendo ya que la gravedad
aplicada es mayor a la fuerza de roce con la que cuenta, como se puede ver en la gráfica la articulación
prismática crece hasta el infinito debido a que no se le ha fijado un límite, en una prueba práctica la
articulación debería estirarse hasta lo largo que es el eslabón.
Figura 17: Respuesta del Robot RRP sin torque en torno a la posición.
Figura 19: Parámetros de posición y entrada del sistema del Robot RRP.
En las figura N°19 Se observa la posición inicial a la cual se configura el robot a lazo abierto, donde
la primera articulación tiene un ángulo de cero, la segunda de π/2 y el tercero con una distancia de 1; la
posición cero de la segunda articulación queda de manera vertical apuntando hacia arriba, por ende, para
realizar una simulación que concuerde con una prueba práctica el ángulo de la segunda articulación debería
aumentar.
Figura 21: Parámetros de posición y entrada del sistema del Robot RRP
conforme a la alineación de sus articulaciones.
Como se observa en las figuras N°20 y N°21, Se puede validar el resultado obtenido en Simulink
con el script de dinámica, debido a que es consecuente el resultado final de la posición de la segunda
articulación, como se había determinado que la posición crecería hasta alcanzar un valor cercano a π, se
procedió a mover la articulación en robot toolbox; para que dicha articulación llegue a una posición de
reposo su ángulo debe aumentar, de igual manera la gravedad afectará al pistón atrayéndolo hacia el suelo,
por lo que su largo crecerá denotando una diferencia con respecto a la gráfica entregada por el script, ya
que esta última crecía de manera lineal hasta el infinito ya que no considera un límite, mientras en el robot
toolbox si se cuenta con un límite, pero dejando de lado eso la respuesta del script es consistente con la
cinemática de Denavit Hartenberg.
Tabla 5: Configuración para las fuerzas de entrada y posiciones de las articulaciones sin torque (2).
Nombre Condiciones
Tau 1 0
Tau 2 0
Tau 3 0
Posición th1 2
Posición th2 -Pi/2
Posición d3 1
Velocidad th1 0
Velocidad th2 3
Velocidad d3 0
Para la última validación del robot a lazo abierto, se cambian las posiciones de las articulaciones y
además se agrega una velocidad inicial al segundo eslabón para ver cuál es la respuesta, los valores de
pueden visualizar en la tabla N°5.
Como se explicó con anterioridad al no haber una variación en el torque de la primera articulación
esta no varía su posición a lo largo del tiempo, así como tampoco afecta a las demás articulaciones, por
ende, queda en la posición fijada como condición inicial esto se puede visualizar en la tabla N°5, por el
contrario, la segunda articulación se fijó con una posición de -π/2 y una velocidad inicial de magnitud 3, el
comportamiento de esta articulación debe ser similar a la anterior, al verse afectada por la gravedad por
ende el valor de la posición debería tender a -π además la condición inicial en velocidad no debería tener
un efecto mayor en el movimiento natural de las articulaciones más que acelerar al comienzo la respuesta
del sistema levemente, esto se puede observar en la figuraN°22. Por último, la articulación prismática debe
tener la misma respuesta que se observaron al aplicar las condiciones iniciales anteriores, por ende, la
misma debería aumentar de manera lineal tal como se observa en la figura.
Figura 22: Respuesta del robot RRP con variación en su posición inicial y velocidad.
Figura 24: Parámetros del robot de prueba (3) entorno a la posición y fuerzas de entrada.
Se procede a variar la posición de la segunda y la tercera articulación para que de esta manera se
alinee con la fuerza de gravedad aplicada, como se observa la variación del ángulo de la segunda
articulación tiende a π, mientras que la distancia del tercer eslabón crece.
El controlar par calculado, es un controlador muy versátil que permite obtener una posición
bastante cercana a la referencia. El control se ha aplicado a robot RRP, a continuación, se muestra el
desarrollo de este proceso.
Se procede a crear el diagrama en bloques que controlen la planta inicial del Robot RRP, la cual se
encontraba a lazo abierto; cabe destacar que este control no toma en cuenta la fuerza de roce, la cual es
primordial ya que afectará a la velocidad y posición de las articulaciones por lo que es propicio tomarla en
cuenta.
Figura 28: Control par calculado para un Robot RRP en ambiente de simulación "Simulink".
Como se observa en este esquema aplicado al robot RRP, se ha agregado la fuerza de roce y además
la matriz de inercia tiene una realimentación de posición la cual es necesaria para el cálculo contenido en
su script. Las ganancias tienen una relación la cual viene dada por la siguiente expresión.
𝐾𝑝 = 𝐾𝑣 2
A continuación, se adjuntan los scripts equivalentes a cada bloque llamado “Interpreted Matlab
Function” que corresponden a las diferentes matrices de las fuerzas que afectan al robot.
Los valores utilizados para la primera validación se observan en la tabla N°6 Y su respuesta se observa
en la figura N°35.
Se puede observar que el controlador realiza un correcto control, donde se obtiene una señal
prácticamente idéntica a la de referencia al igual que en la prueba anterior al comienzo de la simulación el
valor que entrega el controlador no es igual, pero el tiempo de establecimiento es bastante rápido, así que
la diferencia es despreciable, de esta manera se puede validar que el robot es capaz de llegar a la posición
que el usuario pueda determinar para poder realizar una tarea.
En la figura N°36 Se observa la diferencia que existe al comienzo de la respuesta la cual dura menos de
1 segundo, para efectos prácticos el tiempo es casi despreciable, pero si se quisiera agregar un control más
fiel se podría optar por otro tipo de controlador o agregar un tiempo de retardo.
6.3.2.2 Referencia para que el extremo efector del robot forme un círculo en el plano X-Z
Se debe tener en cuenta que para realizar algún tipo de movimiento como el formar una figura
geométrica el cambio de posición de posición debe ser progresivo, por ende, la referencia que se ingrese al
robot debe ser una señal que sea capaz de cambiar su valor a través del tiempo.
Hay que considerar que las articulaciones que permiten un movimiento a través del espacio
tridimensional son las articulaciones rotacionales, ya que su posición varía modificando su ángulo debido a
Las articulaciones rotacionales deben trabajar de manera solidaria es por eso por lo que mientras, que
la segunda articulación varíe su ángulo para formar una línea recta, la primera articulación debe moverse
ligeramente en sentido horario o antihorario según convenga para obtener un movimiento que describa un
círculo.
En la tabla N°7 Se puede observar las referencias que fueron ingresadas a cada una de las
articulaciones, donde las magnitudes de las señales sinusoidales corresponden al ángulo máximo que
pueden alcanzar, la frecuencia es la rapidez con la que generará el movimiento y la fase permitirá que las
articulaciones trabajen de manera solidaria.
Tabla 7: Valores para las referencias del control par calculado para la creación de un circulo.
Para visualizar la respuesta que se obtiene con estas señales se debe utilizar el bloque X-Y Graph, el
cual se conectarán a la salida entre las posiciones de la articulación 1 y 2, de esta manera se puede visualizar
la respuesta de la figura N°37 la cual tiene una pequeña perturbación que se debe a los efectos del
controlador, pero se observa que la figura es correcta.
Se infiere que, cuando se aplica un torque demasiado grande a la última articulación, este tiende a atenuar
el movimiento de la segunda articulación. Principalmente se debe a la fuerza contrarrestada por parte de
la tercera articulación, entonces para que este efecto no ocurra, se debe realizar una proporcionalidad
entre las fuerzas de entrada (tau2, tau3). Ahora en caso contrario, si se aplica un torque mayor en la
segunda articulación, esta afectará directamente a la tercera articulación, creando en algunos casos un
movimiento oscilatorio.
También se puede deducir que, el control par calculado nos permite realizar un manejo más preciso de las
señales con las cuales se trabaja. De otra forma, una vez que el robot se posiciona en un punto, este debe
saber en qué posición quedó la última vez cuando realizó su último trabajo y es aquí donde el control par
calculado puede corregir ciertos factores de errores en el tiempo. Cada vez que realiza un trabajo, este es
comparado con una señal de referencia, la velocidad y la posición anteriores. Lo cual nos permite obtener
un control con lazo realimentado con una alta tasa de efectividad.