Sie sind auf Seite 1von 11

ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 1

Algoritmo de Newton-Euler aplicado al


manipulador de 4 GDL y KUKA 6 GDL
Angel Rodrigo Guanga Huerta
Alex Javier Paucar Ati
Ingenieria Eletrónica en Control y Redes Industriales
Escuela Superior Politécnica de Chimborazo
Riobamba-Ecuador.
andromeda-angel@outlook.com
alexpaucar@hotmail.com

The key concept of both methods is to formulate the dynamic


Resumen equations in a recursive way, so that the calculation can be done
from one link of the manipulator to another.
Este trabajo se desarrollado con la finalidad de aplicar los Newton Euler reduces computational complexity, so that the
conocimientos adquiridos en la cátedra de ROBÓTICA number of operations required varies linearly according to the
INDUSTRIAL. number of degrees of freedom.
Este método nos permitió representar las ecuaciones de cada uno
de sus parámetros, tales como son sus fuerzas, velocidades,
aceleración, sistemas de coordenadas, centros de masas y Palabras clave: Newton-Euler, Velocidad, Aceleración, centro de
momentos con respecto a su propio sistema de coordenadas., lo que masas, Grados de Libertad.
nos permitió simplificar los cálculos, logrando a la par que el
algoritmo sea de fácil control en tiempo real. I. INTRODUCCIÓN
Una vez desarrollado el proyecto se concluyó que:
Este trabajo se ha desarrollado con la finalidad de aplicar los
conocimientos adquiridos en la cátedra de ROBÒTICA
El método de Newton-Euler permite obtener un conjunto
INDUSTRIAL.
de ecuaciones recursivas hacia delante de velocidad y aceleración
lineal y angular las cuales están referidas a cada sistema de
La dinámica del robot relaciona el movimiento del robot y las
referencia articular. fuerzas implicadas en el mismo. El modelo dinámico
Las ecuaciones recursivas hacia atrás calculan los pares y establece relaciones matemáticas entre las coordenadas
fuerzas necesarios para cada articulación desde la mano articulares (o las coordenadas del extremo del robot), sus
(incluyendo en ella efectos de fuerzas externas), hasta el sistema de derivadas (velocidad y aceleración), las fuerzas y pares
referencia de la base. aplicados en las articulaciones (o en el extremo) y los
El concepto clave de ambos métodos es formular las parámetros del robot (masas de los eslabones, inercias, etc).
ecuaciones dinámicas en una forma recursiva, de modo que el
cálculo pueda ser realizado desde un eslabón del manipulador a La formulación de Newton-Euler consiste en un conjunto de
otro. ecuaciones bien estructuradas, para representar fuerza y
Newton Euler reduce la complejidad computacional, de modo
que el número de operaciones requeridas varía linealmente según
torques en los actuadores, esto era muy complejo y llevaba
el número de grados de libertad. mucho tiempo, En 1980 los científicos Luh, Walker y Paul
formularon un nuevo método en el cual solo se centraban en el
sistema de coordenadas de la base reduciendo así la
Abstract- complicidad de los tiempos de cálculos computaciones. [1]
This work was developed with the purpose of applying the
knowledge acquired in the Industrial Robotics chair.
This method allowed us to represent the equations of each of II. DESARROLLO
its parameters, such as its forces, velocities, acceleration,
coordinate systems, mass centers and moments with respect to its
own coordinate system., Which allowed us to simplify the II.I Formulación de Newton-Euler
calculations , achieving at the same time that the algorithm is easy
to control in real time. El algoritmo computacional sigue las siguientes
Once the project was developed, it was concluded that: características:
1) Asignar a cada eslabón un sistema de referencia de
The Newton-Euler method allows obtaining a set of forward
recursive equations of linear and angular velocity and
acuerdo a las normas de D-H. [2]
acceleration, which are referred to each joint reference system. 2) Obtener las matrices de rotación y sus derivadas,
The recursive equations backwards calculate the pairs and siendo la propiedad de las ecuaciones de la rotación,
forces necessary for each joint from the hand (including in it dónde se cumple: [2]
effects of external forces), to the reference system of the base.
3) Establecer las condiciones iniciales:
 Velocidad angular =[0, 0, 0]𝑇
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 2

 Aceleración angular = [0, 0, 0]𝑇


𝑇 𝑑 𝑑 𝑑2
 Aceleración lineal [𝑔𝑥 , 𝑔𝑦, 𝑔𝑧 ] 𝑅20 ∙ ( 𝜔2 ) = 𝑅21 ∙ [𝑍10 ∙ ( 𝜔1 ) + 𝑍0 ∙ 2 𝑞2
𝑑𝑡 𝑑𝑡 𝑑𝑡
La velocidad angular, aceleración angular y la
aceleración lineal son cero. Ya que el robot está en su 𝑑
+ [𝑅10 ∙ 𝜔0 × 𝑍0 ∙ ( 𝑞2 )]]
posición inicial. Esto quiere decir que no está en 𝑑𝑡
movimiento. [2] 𝑑
𝑅20 ∙ ( 𝜔2 ) = 𝑅21 ∙ [𝑅10 ∙ 𝛼1 + 𝑍0 ∙ 𝛼2 + (𝑅10 ∙ 𝜔1 × 𝑍0 ∙ 𝜔2 )]
4) Obtener las velocidades angulares de los diferentes 𝑑𝑡
elementos. [2] 𝑑 𝜔1 ∙ 𝜔2 ∙ cos(𝜃2 ) + 𝛼1 ∙ sin(𝜃2 )
 El primer elemento. 𝑅30 ∙ ( 𝜔2 ) : = [𝛼1 ∙ cos(𝜃2 ) ∙ −(𝜔1 ∙ 𝜔2 ∙ sin(𝜃2 ))]
𝑑𝑡
𝑑 𝛼2
𝑅10 ∙ 𝜔1 : = 𝑅10 ∙ (𝜔0 𝑍0 ∙ 𝑞1 )  Remplazando el elemento 3:
𝑑𝑡
𝑅10 ∙ 𝜔1 : = 𝑅10 ∙ (𝑍00 𝜔0 + 𝑍0 𝑞1 ) 𝑑 𝑑 𝑑2
𝑅30 ∙ ( 𝜔3 ) = 𝑅32 ∙ [𝑅20 ∙ ( 𝜔2 ) + 𝑍0 ∙ 2 𝑞3
𝑅10 ∙ 𝜔1 : = 𝑅10 ∙ (𝑍00 𝜔1 ) 𝑑𝑡 𝑑𝑡 𝑑𝑡
cos(𝜃1 ) sin(𝜃1 ) 0 0 𝑑
+ [𝑅20 ∙ 𝜔2 × 𝑍0 ∙ ( 𝑞3 )]]
𝑅10 ∙ 𝜔1 : = ( 0 0 1) ∙ [0 ∙ 𝜔1 ] 𝑑𝑡
sin(𝜃1 ) − cos(𝜃1 ) 0 1 𝑑
𝑅30 ∙ ( 𝜔3 ) = 𝑅32
0 𝑑𝑡
𝑅10 ∙ 𝜔1 : = (𝜔1 ) 𝑑
∙ [𝑅20 ∙ ( 𝜔2 ) + 𝑍0 ∙ 𝛼3
0 𝑑𝑡
+ (𝑅20 ∙ 𝜔2 × 𝑍0 ∙ 𝜔3 )]
 Segundo elemento
 Remplazando para el cuarto elemento 4
𝑑
𝑅20 ∙ 𝜔2 : = 𝑅21 ∙ (𝑅10 ∙ 𝜔1 + 𝑍0 ∙ 𝑞 )
𝑑𝑡 2 𝑑 𝑑 𝑑2
𝜔1 ∙ sin(𝜃2 ) 𝑅40 ∙ ( 𝜔4 ) = 𝑅43 ∙ [𝑅30 ∙ ( 𝜔3 ) + 𝑍0 ∙ 2 𝑞4
𝑑𝑡 𝑑𝑡 𝑑𝑡
𝑅20 ∙ 𝜔2 : = ( 𝜔1 cos(𝜃2 ) )
𝑑
𝜔2 + [𝑅30 ∙ 𝜔3 × 𝑍0 ∙ ( 𝑞4 )]]
𝑑𝑡
 El tercer elemento 𝑑
𝑑 𝑅40 ∙ ( 𝜔4 ) = 𝑅43
𝑅30 ∙ 𝜔3 : = 𝑅32 ∙ (𝑅20 ∙ 𝜔2 + 𝑍0 ∙ 𝑞3 ) 𝑑𝑡
𝑑𝑡 𝑑
∙ [𝑅30 ∙ ( 𝜔3 ) + 𝑍0 ∙ 𝛼4
𝑑𝑡
+ (𝑅30 ∙ 𝜔3 × 𝑍0 ∙ 𝜔4 )]
𝜔1 ∙ cos(𝜃3 ) ∙ sin(𝜃2 ) + 𝜔1 ∙ cos(𝜃2 ) ∙ sin(𝜃3 )
−(𝛼2 + 𝛼3 + 𝛼4 )
𝑅30 ∙ 𝜔3 : = [−(𝜔1 ∙ sin(𝜃3 ) ∙ sin(𝜃2 ) + 𝜔1 ∙ cos(𝜃2 ) ∙ cos(𝜃3 ))] 𝑑
𝑅40 ∙ ( 𝜔4 ) : = [ 𝛼2 ∙ 𝑐234 ∙ −(−𝜔3 ∙ 𝑆2−3−4 ) + (𝜔2 + 𝜔4 ) ∙ 𝑆234 ]
𝜔2 + 𝑤3 𝑑𝑡
𝜔1 ∙ 𝜔3 ∙ 𝑐2−3−4 + 𝜔1 ∙ (𝜔2 + 𝜔4 ) ∙ 𝑐234 + 𝛼1 ∙ 𝑆234

 El cuarto elemento
6) Obtener la aceleración lineal del sistema i según:
𝑑
𝑅40 ∙ 𝜔4 : = 𝑅43 ∙ (𝑅40 ∙ 𝜔3 + 𝑍0 ∙ 𝑞 ) Se desarrolla la aceleración lineal para cada uno de los
𝑑𝑡 4 elementos en el manipulador: [2]
 Remplazando para el elemento 1:
5) Obtener la aceleración angular 𝑑 𝑑
 Remplazando para el elemento 1 𝑅10 ∙ ( 𝑣1 ) : = [𝑅10 ∙ ( 𝜔1 )] × (𝑅10 ∙ 𝑝1 ) + (𝑅10 ∙ 𝜔1 )
𝑑𝑡 𝑑𝑡
𝑑
𝑑 𝑑2 𝑑 × [(𝑅10 ∙ 𝜔1 ) × (𝑅10 ∙ 𝑝1 )] + 𝑅10 ∙ ( 𝑣0 )
𝑅10 ∙ ( 𝜔1 ) = 𝑅10 ∙ [𝜔0 + 𝑍0 ∙ 2 𝑞1 + [𝜔0 × 𝑍0 ∙ ( 𝑞1 )]] 𝑑𝑡
𝑑𝑡 𝑑𝑡 𝑑𝑡 0 𝐿1 0 0 𝐿1
𝑑
𝑑 𝑅10 ∙ ( 𝑣1 ) : = (∝1 ) × (−𝐻 ) + (𝜔1 ) × [𝜔1 × −𝐻 ]
𝑅10 ∙ ( 𝜔1 ) = 𝑅10 ∙ [𝑅00 ∙ 𝜔0 + 𝑍0 ∙ 𝛼1 + (𝑅00 ∙ 𝜔0 × 𝑍0 ∙ 𝜔1 )] 𝑑𝑡
𝑑𝑡 0 0 0 0 0
Anulando términos no existentes, la expresión de reduce: 𝑔 ∙ 𝑠1
𝑑 + (𝑔 ∙ 𝑐1 )
𝑅10 ∙ ( 𝜔1 ) : = 𝑅10 ∙ (𝑧0 ∙ 𝛼1 )
𝑑𝑡 0
Remplazando las expresiones conocidas, tenemos:
𝑑 −𝐿1 ∙ (𝜔1 )2
𝑑 cos(𝜃1 ) sin(𝜃1 ) 0 𝑅10 ∙ ( 𝑣1 ) : = [ −𝑔 ]
𝑅10 ∙ ( 𝜔1 ) : = ( 0 0 1) ∙ (𝑍0 ∙ 𝛼1 ) 𝑑𝑡
𝑑𝑡 −𝐿1 ∙ 𝛼1
sin(𝜃1 ) cos(𝜃1 ) 0
Finalmente:  Remplazando para el elemento 2:
𝑑 0
𝑅10 ∙ ( 𝜔1 ) ; = (𝛼1 )
𝑑𝑡
0

 Remplazando para el elemento 2


ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 3

𝑑 𝑑 𝑅10 ∙ 𝐹1 : = 𝑚1 ∙ 𝑅10 ∙ 𝑎1
𝑅20 ∙ ( 𝑣2 ) : = [𝑅20 ∙ ( 𝜔2 )] × (𝑅20 ∙ 𝑝2 ) + (𝑅20 ∙ 𝜔2 )
𝑑𝑡 𝑑𝑡 𝑅20 ∙ 𝐹2 : = 𝑚2 ∙ 𝑅20 ∙ 𝑎2
× [(𝑅20 ∙ 𝜔2 ) × (𝑅10 ∙ 𝑝2 )] + 𝑅21 𝑅30 ∙ 𝐹3 : = 𝑚3 ∙ 𝑅30 ∙ 𝑎3
𝑑 𝑅40 ∙ 𝐹4 : = 𝑚4 ∙ 𝑅40 ∙ 𝑎4
∙ [𝑅10 ∙ ( 𝑣1 )]
𝑑𝑡
𝑑 9) Obtener el momento total ejercido sobre el centro de
𝑅20 ∙ ( 𝑣2 ) :
𝑑𝑡 masa del elemento. [2]
−𝐿2 ∙ (𝜔2 )2 ∙ −𝐿1 ∙ (𝜔1 )2 ∙ 𝑐2 −𝐿2 ∙ (𝜔1 )2 ∙ 𝑐(2)2 − 𝑔 ∙ 𝑠2
= [ 𝐿2 ∙ 𝛼2 + −𝐿1 ∙ (𝜔1 )2 ∙ 𝑠2 + 𝑐2 ∙ [−𝑔 + −𝐿2 ∙ (𝜔1 )2 ∙ 𝑠2 ]] 𝑑
𝑅10 ∙ 𝑁1 : = (𝑅10 ∙ 𝐼1 ∙ 𝑅01 ) ∙ [𝑅10 ∙ ( 𝜔1 )] + (𝑅10 ∙ 𝜔1 )
−(𝐿1 ∙ 𝛼1 ) − 𝐿2 ∙ 𝛼1 ∙ 𝑐2 + −2 ∙ 𝐿2 ∙ 𝜔1 ∙ 𝑠2 𝑑𝑡
× [(𝑅10 ∙ 𝐼1 ∙ 𝑅01 ) ∙ (𝑅10 ∙ 𝜔1 )]
𝑑
 Reemplazando para el elemento 3: 𝑅20 ∙ 𝑁2 : = (𝑅20 ∙ 𝐼2 ∙ 𝑅02 ) ∙ [𝑅20 ∙ ( 𝜔2 )] + (𝑅20 ∙ 𝜔2 )
𝑑𝑡
𝑑 𝑑 × [(𝑅20 ∙ 𝐼2 ∙ 𝑅02 ) ∙ (𝑅20 ∙ 𝜔2 )]
𝑅30 ∙ ( 𝑣3 ) : = [𝑅30 ∙ ( 𝜔3 )] × (𝑅30 ∙ 𝑝3 ) + (𝑅30 ∙ 𝜔3 ) 𝑑
𝑑𝑡 𝑑𝑡 𝑅30 ∙ 𝑁3 : = (𝑅30 ∙ 𝐼3 ∙ 𝑅03 ) ∙ [𝑅30 ∙ ( 𝜔3 )] + (𝑅30 ∙ 𝜔3 )
× [(𝑅30 ∙ 𝜔3 ) × (𝑅30 ∙ 𝑝3 )] + 𝑅32 𝑑𝑡
𝑑 × [(𝑅30 ∙ 𝐼3 ∙ 𝑅03 ) ∙ (𝑅30 ∙ 𝜔3 )]
∙ [𝑅20 ∙ ( 𝑣2 )] 𝑑
𝑑𝑡 𝑅40 ∙ 𝑁4 : = (𝑅40 ∙ 𝐼4 ∙ 𝑅04 ) ∙ [𝑅40 ∙ ( 𝜔4 )] + (𝑅40 ∙ 𝜔4 )
𝑑𝑡
 Remplazando para elemento 4: × [(𝑅40 ∙ 𝐼4 ∙ 𝑅04 ) ∙ (𝑅40 ∙ 𝜔4 )]
10) Obtener la fuerza ejercida sobre el elemento i, por si
𝑑 𝑑 mismo y los elementos encima de él: [2]
𝑅40 ∙ ( 𝑣4 ) : = [𝑅40 ∙ ( 𝜔4 )] × (𝑅40 ∙ 𝑝4 ) + (𝑅40 ∙ 𝜔4 ) 𝑅10 ∙ 𝑓1 : = 𝑅12 ∙ (𝑅20 ∙ 𝑓2 ) + 𝑅10 ∙ 𝐹1
𝑑𝑡 𝑑𝑡
× [(𝑅40 ∙ 𝜔4 ) × (𝑅40 ∙ 𝑝4 )] + 𝑅43 𝑅20 ∙ 𝑓2 : = 𝑅23 ∙ (𝑅30 ∙ 𝑓3 ) + 𝑅20 ∙ 𝐹2
𝑑 𝑅30 ∙ 𝑓3 : = 𝑅34 ∙ (𝑅40 ∙ 𝑓4 ) + 𝑅30 ∙ 𝐹3
∙ [𝑅30 ∙ ( 𝑣3 )] 𝑅40 ∙ 𝑓4 : = 𝑅45 ∙ (𝑅50 ∙ 𝑓5 ) + 𝑅40 ∙ 𝐹4
𝑑𝑡
−(𝛼2 + 𝛼3 + 𝛼4 )
𝑑 11) Obtener el momento ejercido sobre el elemento i por
𝑅40 ∙ ( 𝑣4 ) : = [ 2 234
𝛼 ∙ 𝑐 ∙ −( −𝜔 3 ∙ 𝑆2−3−4 ) + (𝜔2 + 𝜔4 ) ∙ 𝑆234 ]
𝑑𝑡 el elemento i-1: [2]
𝜔1 ∙ 𝜔3 ∙ 𝑐2−3−4 + 𝜔1 ∙ (𝜔2 + 𝜔4 ) ∙ 𝑐234 + 𝛼1 ∙ 𝑆234
𝑅10 ∙ 𝑛1 : = 𝑅12 ∙ [𝑅20 ∙ 𝑛2 + (𝑅20 ∙ 𝑝1 ) × (𝑅20 ∙ 𝑓2 )]
0
+ (𝑅10 ∙ 𝑝1 + 𝑅10 ∙ 𝑠1 ) × (𝑅10 ∙ 𝐹1 ) + 𝑅10
×(0)
∙ 𝑁1
𝐿4
𝑅20 ∙ 𝑛2 : = 𝑅23 ∙ [𝑅30 ∙ 𝑛3 + (𝑅30 ∙ 𝑝2 ) × (𝑅30 ∙ 𝑓3 )]
A partir de este punto la formulación de las ecuaciones se
aplica y resulta engorrosa su formulación + (𝑅20 ∙ 𝑝2 + 𝑅20 ∙ 𝑠2 ) × (𝑅20 ∙ 𝐹2 ) + 𝑅20
7) Obtener la aceleración lineal del centro de masa del ∙ 𝑁2
elemento i. [2] 𝑅30 ∙ 𝑛3 : = 𝑅34 ∙ [𝑅40 ∙ 𝑛4 + (𝑅40 ∙ 𝑝3 ) × (𝑅40 ∙ 𝑓4 )]
+ (𝑅30 ∙ 𝑝3 + 𝑅30 ∙ 𝑠3 ) × (𝑅30 ∙ 𝐹3 ) + 𝑅30
𝑑 ∙ 𝑁3
𝑅10 ∙ 𝑎1 : = [𝑅10 ∙ ( 𝜔1 )] × (𝑅10 ∙ 𝑠1 ) + (𝑅10 ∙ 𝜔1 ) 𝑅40 ∙ 𝑛4 : = 𝑅45 ∙ [𝑅50 ∙ 𝑛5 + (𝑅50 ∙ 𝑝4 ) × (𝑅50 ∙ 𝑓5 )]
𝑑𝑡
𝑑 + (𝑅40 ∙ 𝑝4 + 𝑅40 ∙ 𝑠4 ) × (𝑅40 ∙ 𝐹4 ) + 𝑅40
× [(𝑅10 ∙ 𝜔1 ) × (𝑅10 ∙ 𝑠1 )] + 𝑅10 ∙ ( 𝑣1 ) ∙ 𝑁4
𝑑𝑡
𝑑 12) Obtener la fuerza o par sobre la articulación i: [2]
𝑅20 ∙ 𝑎2 : = [𝑅20 ∙ ( 𝜔2 )] × (𝑅20 ∙ 𝑠2 ) + (𝑅20 ∙ 𝜔2 )
𝑑𝑡 𝑑
× [(𝑅20 ∙ 𝜔2 ) × (𝑅10 ∙ 𝑠2 )] + 𝑅21 𝜏1 : = (𝑅10 ∙ 𝑛1 )𝑇 ∙ (𝑅10 ∙ 𝑧0 ) + 𝑏1 ∙ 𝑞
𝑑 𝑑𝑡 1
∙ [𝑅10 ∙ ( 𝑣2 )] 𝑑
𝑑𝑡 𝜏2 : = (𝑅20 ∙ 𝑛2 )𝑇 ∙ (𝑅21 ∙ 𝑧0 ) + 𝑏2 ∙ 𝑞2
𝑑 𝑑𝑡
𝑅30 ∙ 𝑎3 : = [𝑅30 ∙ ( 𝜔3 )] × (𝑅30 ∙ 𝑠3 ) + (𝑅30 ∙ 𝜔3 ) 𝑇
𝑑
𝑑𝑡 𝜏3 ≔ (𝑅30 ∙ 𝑛3 ) ∙ (𝑅32 ∙ 𝑧0 ) + 𝑏3 ∙ 𝑞3
× [(𝑅30 ∙ 𝜔3 ) × (𝑅30 ∙ 𝑠3 )] + 𝑅32 𝑑𝑡
𝑑
𝑑 𝑇
𝜏4 ≔ (𝑅40 ∙ 𝑛4 ) ∙ (𝑅43 ∙ 𝑧0 ) + 𝑏4 ∙ 𝑞4
∙ [𝑅20 ∙ ( 𝑣3 )] 𝑑𝑡
𝑑𝑡
𝑑
𝑅40 ∙ 𝑎4 : = [𝑅40 ∙ ( 𝜔4 )] × (𝑅40 ∙ 𝑠4 ) + (𝑅40 ∙ 𝜔4 )
𝑑𝑡 III. KUKA 6 GDL
× [(𝑅40 ∙ 𝜔4 ) × (𝑅40 ∙ 𝑠4 )] + 𝑅43
𝑑
∙ [𝑅30 ∙ ( 𝑣4 )]
𝑑𝑡

8) Obtener la fuerza total ejercida sobre el elemento i.


[2]
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 4

1. Encontrar la matriz de D-H


4. Masas de cada elemento
2. Encontrar la matriz de D-H
𝑚𝑎𝑠𝑎1 = 30 𝑘𝑔
𝑚𝑎𝑠𝑎2 = 15 𝑘𝑔
𝑚𝑎𝑠𝑎3 = 35 𝑘𝑔
𝑚𝑎𝑠𝑎4 = 75 𝑘𝑔
𝑚𝑎𝑠𝑎5 = 18 𝑘𝑔
𝑚𝑎𝑠𝑎6 = 8 𝑘𝑔

5. Elemento de viscosidad de los elementos

𝑏1 =
𝑏2 = 0,5
𝑏3 = 0,5
𝑏4 = 0,5
Figura 1: KUKA 𝑏5 = 0,5
𝑏6 = 0,5

6. Encontrar la matriz de inercia


0 0 0
𝐼1 = [0 0.25 0 ]
0 0 0.25
0 0 0
𝐼2 = [0 0.25 0 ]
0 0 0.25
0 0 0
𝐼3 = [0 0.25 0 ]
0 0 0.25
0 0 0
𝐼4 = [0 0.25 0 ]
0 0 0.25
0 0 0
Figura 2: KUKA 𝐼5 = [0 0.25 0 ]
0 0 0.25
0 0 0
𝐼6 = [0 0.25 0 ]
θ d a ∝ 0 0 0.25
q1 l1 + l2 0 𝜋
2 7. Encontrar los vectores P y S
𝜋 0 l3 0
q2 +
2 Coordenadas del sistema 𝑖.𝑃𝑖+1
q3 0 0 𝜋
2 𝑖
= [𝑧 𝑦 𝑥] = [𝑎, 𝑑sin(𝛼), 𝑑cos(𝛼)]
𝜋 .𝑃𝑖+1
q4 l4 + l5 0 − 𝑃1 = [0, 0.46, 0]
2
𝑃2 = [0.50, 0, 0]
q5 0 0 𝜋 𝑃3 = [0, 0, 0]
2 𝑃4 = [0, − 0.46, 0]
𝑃5 = [0, 0, 0]
q6 l6 + l7 0 0 𝑃6 = [0, 0, 0.42]

Coordenadas del sistema 𝑖.𝑆𝑖+1


3. Encontrar el factor= −0.5 𝑖
.𝑆𝑖+1 = [𝑓𝑎𝑐𝑡𝑜𝑟𝑖 𝑎, 𝑓𝑎𝑐𝑡𝑜𝑟𝑖 𝑑sin(𝛼), 𝑓𝑎𝑐𝑡𝑜𝑟𝑖 𝑑cos(𝛼)]
𝑓𝑎𝑐𝑡𝑜𝑟1 = −0.5
𝑓𝑎𝑐𝑡𝑜𝑟2 = −0.5 𝑆1 = [0, −0.23, 0]
𝑓𝑎𝑐𝑡𝑜𝑟3 = −0.5 𝑆2 = [−0.25, 0, 0]
𝑓𝑎𝑐𝑡𝑜𝑟4 = −0.5 𝑆3 = [0, 0, 0]
𝑓𝑎𝑐𝑡𝑜𝑟5 = −0.5 𝑆4 = [0, 0.31, 0]
𝑓𝑎𝑐𝑡𝑜𝑟6 = −0.5 𝑆5 = [0, 0, 0]
𝑆6 = [0, 0, 0.42]
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 5

8. Matrices de rotación 𝑐(𝑞5 ) 𝑠(𝑞5 ) 0


𝑇 5
( 𝑖−1.𝑅𝑖 ) = 𝑖.𝑅𝑖−1 .𝑅4 =[ 0 0 1]
.
𝑠(𝑞5 ) −𝑐(𝑞5 ) 0
Articulación 6
𝑐𝑜𝑠(𝜃𝑖 ) −𝑐𝑜𝑠(𝛼)sin(𝜃𝑖 ) sin(𝛼)sin(𝜃𝑖 )
𝑖−1 sin(𝜃𝑖) 𝑐𝑜𝑠(𝛼)cos(𝜃𝑖) sin(𝛼)cos(𝜃𝑖)]
𝑅
_ 𝑖 = [ Directa
0 𝑐𝑜𝑠(𝛼) 𝑐𝑜𝑠(𝛼) 𝑐(𝑞6 ) −𝑠(𝑞6 ) 0
Articulación 1 5
.𝑅6 = [ 𝑠(𝑞6 ) 𝑐(𝑞6 ) 0]
0 0 1
Directa Inversa
𝑐𝑜𝑠(𝑞1 ) 0 sin(𝑞1 ) 𝑐(𝑞6 ) 𝑠(𝑞6 ) 0
0 5
.𝑅1 = [ sin(𝑞1 ) 0 −cos(𝑞1 )] .𝑅6 = [−𝑠(𝑞6 ) 𝑐(𝑞6 ) 0]
0 1 0 0 0 1
Inversa
𝑐(𝑞1 ) 𝑠(𝑞1 ) 0 9. Datos conocidos del robot
1
.𝑅0 =[ 0 0 1] Posición
𝑠(𝑞1 ) −𝑐(𝑞1 ) 0 2
Articulación 2 4
6
𝑞=
Directa 7
π π 4
𝑐(𝑞2 + ) −𝑠(𝑞2 + ) 0
2 2 (5 )
1
.𝑅2 =
π π Velocidad
𝑠(𝑞2 + ) 𝑐(𝑞2 + ) 0
2 2 3
[ 0 0 1] 4
Inversa · 7
π π 𝑞=
𝑐(𝑞2 + ) 𝑠(𝑞2 + ) 0 2
2 2 3
2
.𝑅1 =
π π
−𝑠(𝑞2 + ) 𝑐(𝑞2 + ) 0 ( 5)
2 2 Aceleración
[ 0 0 1] 6
Articulación 3
3
·· 4
Directa 𝑞=
𝑐(𝑞3 ) 0 𝑠(𝑞3 ) 3
2 3
.𝑅3 = [ 𝑠(𝑞3 ) 0 −𝑐(𝑞3 )] (2 )
0 1 0
Inversa
10. Calcular la velocidad angular
𝑐(𝑞3 ) 𝑠(𝑞3 ) 0 ∘ 𝑇
3 .𝜔𝜊 = [0 0 0]
.𝑅2 =[ 0 0 1] 𝑇
𝑍∘ = [0 0 1]
𝑠(𝑞3 ) −𝑐(𝑞3 ) 0 ·
1
Articulación 4 .𝜔1 = 𝑖.𝑅𝑖+1 ( ∘.𝜔∘ + 𝑅∘ 𝑞(𝑖))

Directa velocidad angular 1


𝑐(𝑞4 ) 0 −𝑠(𝑞4 ) 𝑐(𝑞1 ) 𝑠(𝑞1 ) 0 0 0
3
𝑅
. 4 = [ 𝑠(𝑞4 ) 0 𝑐(𝑞4 ) ] 𝜔1 = [ 0 0 1] [(0) + (0) · (3)]
0 −1 0 𝑠(𝑞1 ) −𝑐(𝑞1 ) 0 0 1
Inversa 𝑐(𝑞1 ) 𝑠(𝑞1 ) 0 0
𝑐(𝑞4 ) 𝑠(𝑞4 ) 0 𝜔1 = [ 0 0 1] [ 0]
4
.𝑅3 =[ 0 0 −1] 𝑠(𝑞1 ) −𝑐(𝑞1 ) 0 3
−𝑠(𝑞4 ) 𝑐(𝑞4 ) 0 0
𝜔1 = [3]
Articulacion5 0
Velocidad angular 2
Directa π π
𝑐(𝑞2 + ) 𝑠(𝑞2 + ) 0 0
𝑐(𝑞5 ) 0 𝑠(𝑞5 ) 2 2 0
4
.𝑅5 = [ 𝑠(𝑞5 ) 0 −𝑐(𝑞5 )] 𝜔2 = π π [(0) + (0) · (4)]
−𝑠(𝑞2 + ) 𝑐(𝑞2 + ) 0
0 1 0 2 2 0 1
Inversa [ 0 0 1]
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 6

π π alfa = [pi/2 0 pi/2 0];


𝑐(𝑞2 + ) 𝑠(𝑞2 + ) 0
2 2 0 % ---------------------------------------
𝜔2 = π π [0] ---------------------
−𝑠(𝑞2 + ) 𝑐(𝑞2 + ) 0
2 2 4 %factores de posicionamiento de los
[ 0 0 1] centros de gravedad
0 % ---------------------------------------
𝜔2 = [0] ---------------------
4
Velocidad angular 3
𝑐(𝑞3 ) 𝑠(𝑞3 ) 0 0 0 factor1 = -0.5; factor2 = -0.5; factor3 =
𝜔3 = [ 0 0 1] [(0) + (0) · (7)] -0.5;
𝑠(𝑞3 ) −𝑐(𝑞3 ) 0 0 1 factor4 = -0.5;
𝑐(𝑞3 ) 𝑠(𝑞3 ) 0 0
𝜔3 = [ 0 0 1] [ 0] % ---------------------------------------
𝑠(𝑞3 ) −𝑐(𝑞3 ) 0 7 ---------------------
0 % Masa de cada elemento (Kg)
𝜔3 = [7] % ---------------------------------------
0 ---------------------
Velocidad angular 4 m1 = 3.77;
𝑐(𝑞4 ) 𝑠(𝑞4 ) 0 0 0 m2 = 2.54;
𝜔4 = [ 0 0 −1] [(0) + (0) · (2)] m3 = 2.22;
−𝑠(𝑞4 ) 𝑐(𝑞4 ) 0 0 1 m4 = 1.88;
𝑐(𝑞4 ) 𝑠(𝑞4 ) 0 0 % ---------------------------------------
𝜔4 = [ 0 0 −1] [0] ---------------------
−𝑠(𝑞4 ) 𝑐(𝑞4 ) 0 2 % Coeficiente de rozamiento viscoso de
0 cada articulacion
𝜔4 = [−2] % ---------------------------------------
0 ---------------------
Velocidad angular 5 b1 = 0.05; b2 = 0.05; b3 = 0.05;
𝑐(𝑞5 ) 𝑠(𝑞5 ) 0 0 0 b4 = 0.05;
𝜔5 = [ 0 0 1 ] [(0) + (0) · (3)] % ---------------------------------------
𝑠(𝑞5 ) −𝑐(𝑞5 ) 0 0 1 ---------------------
𝑐(𝑞5 ) 𝑠(𝑞5 ) 0 0 % Matrices de Inercia (Kg-m^2)
𝜔5 = [ 0 0 1 ] [ 0] % ---------------------------------------
𝑠(𝑞5 ) −𝑐(𝑞5 ) 0 3 ---------------------
0 r10I_r01 = [0.11 0 0;0 0.00447 0;0 0
𝜔5 = [3] 0.11];
0 r20I_r02 = [0.1729 0 0;0 0.005214 0;0 0
Velocidad angular 6 0.1729];
𝑐(𝑞6 ) 𝑠(𝑞6 ) 0 0 0 r30I_r03 = zeros(3,3);
𝜔6 = [−𝑠(𝑞6 ) 𝑐(𝑞6 ) 0 ] [(0) + (0) · (5)] r40I_r04 = [0.5 0 0;0 0.00745 0;0 0 0.5];
0 0 1 0 1 r50I_r05 = zeros(3,3);
𝑐(𝑞6 ) 𝑠(𝑞6 ) 0 0 % ---------------------------------------
𝜔6 = [−𝑠(𝑞6 ) 𝑐(𝑞6 ) 0 ] [0] ---------------------
0 0 1 5 % Vectores ri0pi, ri0si.
0 % ---------------------------------------
𝜔6 = [0] ---------------------
3 r10p1 = ri0pi(a(1), d(1), alfa(1));
r20p2 = ri0pi(a(2), d(2), alfa(2));
IV. PROGRAMA EN MATLAB 4 GDL r30p3 = ri0pi(a(3), d(3), alfa(3));
r40p4 = ri0pi(a(4), d(4), alfa(4));
function tau = r50p5 = zeros(3,1);
newtoneuler4(q,qp,qpp,g,m5,Iexter)
% ---------------------------------------
--------------------- r10s1 = ri0si(a(1), d(1), alfa(1),
% Parámetros Denavit-Hartenberg del robot factor1);
% --------------------------------------- r20s2 = ri0si(a(2), d(2), alfa(2),
--------------------- factor2);
teta = q; r30s3 = ri0si(a(3), d(3), alfa(3),
d = [0.34 0 0 0,22]; factor3);
a = [0.750 1.000 0 0];
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 7

r40s4 = ri0si(a(4), d(4), alfa(4), % Aceleracion del centro de masa de cada


factor4); elemento
r50s5 = zeros(3,1); % ---------------------------------------
% --------------------------------------- ---------------------
--------------------- r10a1 = ri0ai(r10vp1, r10wp1, r10w1,
% Matrices de transformacion r10s1);
% --------------------------------------- r20a2 = ri0ai(r20vp2, r20wp2, r20w2,
--------------------- r20s2);
r01 = dh(teta(1), alfa(1)); r10 = r01'; r30a3 = ri0ai(r30vp3, r30wp3, r30w3,
r12 = dh(teta(2), alfa(2)); r21 = r12'; r30s3);
r23 = dh(teta(3), alfa(3)); r32 = r23'; r40a4 = ri0ai(r40vp4, r40wp4, r40w4,
r34 = dh(teta(4), alfa(4)); r43 = r34'; r40s4);
r45 = eye(3); r54 = r45'; r50a5 = ri0ai(r50vp5, r50wp5, r50w5,
% --------------------------------------- r50s5);
---------------------
% Velocidad angular de las articulaciones
% --------------------------------------- % ---------------------------------------
--------------------- ---------------------
r00w0 = zeros(3,1); % Fuerza en el centro de masa de cada
r10w1 = ri0wi(r10, r00w0, qp(1)); elemento
r20w2 = ri0wi(r21, r10w1, qp(2)); % ---------------------------------------
r30w3 = ri0wi(r32, r20w2, qp(3)); ---------------------
r40w4 = ri0wi(r43, r30w3, qp(4)); r50f5 = ri0fi(r50a5, m5);
r50w5 = ri0wi(r54, r40w4, 0); r40f4 = ri0fi(r40a4, m4);
% --------------------------------------- r30f3 = ri0fi(r30a3, m3);
--------------------- r20f2 = ri0fi(r20a2, m2);
% Aceleracion angular de las r10f1 = ri0fi(r10a1, m1);
articulaciones
% ---------------------------------------
---------------------
r00wp0 = zeros(3,1); %fuerzas_cm=[r10f1,r20f2,r30f3,r40f4,r50f
r10wp1 = ri0wpi(r10, r00wp0, r00w0, 5,r60f6];
qp(1), qpp(1)); % ---------------------------------------
r20wp2 = ri0wpi(r21, r10wp1, r10w1, ---------------------
qp(2), qpp(2)); % Par en el centro de masa de cada
r30wp3 = ri0wpi(r32, r20wp2, r20w2, elemento
qp(3), qpp(3)); % ---------------------------------------
r40wp4 = ri0wpi(r43, r30wp3, r30w3, ---------------------
qp(4), qpp(4)); r50n5 = ri0ni(r50wp5, r50w5, Iexter);
r50wp5 = ri0wpi(r54, r40wp4, r40w4, 0, r40n4 = ri0ni(r40wp4, r40w4, r40I_r04);
0); r30n3 = ri0ni(r30wp3, r30w3, r30I_r03);
% --------------------------------------- r20n2 = ri0ni(r20wp2, r20w2, r20I_r02);
--------------------- r10n1 = ri0ni(r10wp1, r10w1, r10I_r01);
% Aceleracion lineal articular
% --------------------------------------- % ---------------------------------------
--------------------- ---------------------
r00vp0 = [0; 0; g]; % Fuerzas articulares
r10vp1 = ri0vpi_r(r10, r00vp0, r10wp1, % ---------------------------------------
r10w1, r10p1); ---------------------
r20vp2 = ri0vpi_r(r21, r10vp1, r20wp2, r50f5a = r50f5;
r20w2, r20p2); r40f4a = ri0fia(r45, r50f5a, r40f4);
r30vp3 = ri0vpi_r(r32, r20vp2, r30wp3, r30f3a = ri0fia(r34, r40f4a, r30f3);
r30w3, r30p3); r20f2a = ri0fia(r23, r30f3a, r20f2);
r40vp4 = ri0vpi_r(r43, r30vp3, r40wp4, r10f1a = ri0fia(r12, r20f2a, r10f1);
r40w4, r40p4);
r50vp5 = ri0vpi_r(r54, r40vp4, r50wp5, % ---------------------------------------
r50w5, r50p5); ---------------------
% Pares articulares
% --------------------------------------- % ---------------------------------------
--------------------- ---------------------
r20p1 = r21*(r10p1);
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 8

r30p2 = r32*(r20p2); % ---------------------------------------


r40p3 = r43*(r30p3); ---------------------
r50p4 = r54*(r40p4); teta = q;
d = [0.46 0 0 0.46 0 0.42];
a = [0 0.50 0 0 0 0];
r50n5a = r50n5; alfa = [pi/2 0 pi/2 -pi/2 pi/2 0];
r40n4a = ri0nia(r45, r50n5a, r50f5a,
r40n4, r40f4, r50p4, r40p4, r40s4); % ---------------------------------------
r30n3a = ri0nia(r34, r40n4a, r40f4a, ---------------------
r30n3, r30f3, r40p3, r30p3, r30s3); %factores de posicionamiento de los
r20n2a = ri0nia(r23, r30n3a, r30f3a, centros de gravedad
r20n2, r20f2, r30p2, r20p2, r20s2); % ---------------------------------------
r10n1a = ri0nia(r12, r20n2a, r20f2a, ---------------------
r10n1, r10f1, r20p1, r10p1, r10s1);
figure (1) factor1 = -0.5; factor2 = -0.5; factor3 =
plot(r10f1a,r10n1a) -0.5;
grid on; factor4 = -0.5; factor5 = -0.5; factor6 =
title('Grafica de Fuerza Y y Par -0.5;
Articular 1')
xlabel('Fuerza Articular N') % ---------------------------------------
ylabel('Par Articular Nm') ---------------------
figure (2) % Masa de cada elemento (Kg)
plot(r20f2a,r20n2a) % ---------------------------------------
grid on; ---------------------
title('Grafica de Fuerza Y y Par m1 = 30;
Articular 2') m2 = 15;
xlabel('Fuerza Articular N') m3 = 35;
ylabel('Par Articular Nm') m4 = 75;
figure (3) m5 = 18;
plot(r30f3a,r30n3a) m6 = 8;
grid on; % ---------------------------------------
title('Grafica de Fuerza Y y Par ---------------------
Articular 3') % Coeficiente de rozamiento viscoso de
xlabel('Fuerza Articular N') cada articulacion
ylabel('Par Articular Nm') % ---------------------------------------
---------------------
b1 = 0.05; b2 = 0.05; b3 = 0.05;
% --------------------------------------- b4 = 0.05; b5 = 0.05; b6 = 0.05;
--------------------- % ---------------------------------------
% Fuerzas y pares de accionamientos ---------------------
% --------------------------------------- % Matrices de Inercia (Kg-m^2)
--------------------- % ---------------------------------------
t_1 = t_r(r10, r10n1a, qp(1), b1); ---------------------
t_2 = t_r(r21, r20n2a, qp(2), b2); r10I_r01 = [0.11 0 0;0 0.00447 0;0 0
t_3 = t_r(r32, r30n3a, qp(3), b3); 0.11];
t_4 = t_r(r43, r40n4a, qp(4), b4); r20I_r02 = [0.1729 0 0;0 0.005214 0;0 0
0.1729];
tau = [t_1; t_2; t_3; t_4;0]; r30I_r03 = zeros(3,3);
r40I_r04 = [0.5 0 0;0 0.00745 0;0 0 0.5];
r50I_r05 = [0.2 0 0;0 0.0045 0;0 0 0.4];
r60I_r06 = zeros(3,3);

V. MATLAB KUKA 6 GDL % ---------------------------------------


---------------------
function tau = % Vectores ri0pi, ri0si.
newtoneuler6(q,qp,qpp,g,m7,Iexter) % ---------------------------------------
---------------------
% --------------------------------------- r10p1 = ri0pi(a(1), d(1), alfa(1));
--------------------- r20p2 = ri0pi(a(2), d(2), alfa(2));
% Parámetros Denavit-Hartenberg del robot r30p3 = ri0pi(a(3), d(3), alfa(3));
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 9

r40p4 = ri0pi(a(4), d(4), alfa(4)); r50wp5 = ri0wpi(r54, r40wp4, r40w4,


r50p5 = ri0pi(a(5), d(5), alfa(5)); qp(5), qpp(5));
r60p6 = ri0pi(a(6), d(6), alfa(6)); r60wp6 = ri0wpi(r65, r50wp5, r50w5,
r70p7 = zeros(3,1); qp(6), qpp(6));
r70wp7 = ri0wpi(r76, r60wp6, r60w6, 0,
r10s1 = ri0si(a(1), d(1), alfa(1), 0);
factor1); % ---------------------------------------
r20s2 = ri0si(a(2), d(2), alfa(2), ---------------------
factor2); % Aceleracion lineal articular
r30s3 = ri0si(a(3), d(3), alfa(3), % ---------------------------------------
factor3); ---------------------
r40s4 = ri0si(a(4), d(4), alfa(4), r00vp0 = [0; 0; g];
factor4); r10vp1 = ri0vpi_r(r10, r00vp0, r10wp1,
r50s5 = ri0si(a(5), d(5), alfa(5), r10w1, r10p1);
factor5); r20vp2 = ri0vpi_r(r21, r10vp1, r20wp2,
r60s6 = ri0si(a(6), d(6), alfa(6), r20w2, r20p2);
factor6); r30vp3 = ri0vpi_r(r32, r20vp2, r30wp3,
r70s7 = zeros(3,1); r30w3, r30p3);
r40vp4 = ri0vpi_r(r43, r30vp3, r40wp4,
% --------------------------------------- r40w4, r40p4);
--------------------- r50vp5 = ri0vpi_r(r54, r40vp4, r50wp5,
% Matrices de transformacion r50w5, r50p5);
% --------------------------------------- r60vp6 = ri0vpi_r(r65, r50vp5, r60wp6,
--------------------- r60w6, r60p6);
r01 = dh(teta(1), alfa(1)); r10 = r01'; r70vp7 = ri0vpi_r(r76, r60vp6, r70wp7,
r12 = dh(teta(2), alfa(2)); r21 = r12'; r70w7, r70p7);
r23 = dh(teta(3), alfa(3)); r32 = r23';
r34 = dh(teta(4), alfa(4)); r43 = r34'; % ---------------------------------------
r45 = dh(teta(5), alfa(5)); r54 = r45'; ---------------------
r56 = dh(teta(6), alfa(6)); r65 = r56'; % Aceleracion del centro de masa de cada
r67 = eye(3); r76 = r67'; elemento
% ---------------------------------------
% --------------------------------------- ---------------------
--------------------- r10a1 = ri0ai(r10vp1, r10wp1, r10w1,
% Velocidad angular de las articulaciones r10s1);
% --------------------------------------- r20a2 = ri0ai(r20vp2, r20wp2, r20w2,
--------------------- r20s2);
r00w0 = zeros(3,1); r30a3 = ri0ai(r30vp3, r30wp3, r30w3,
r10w1 = ri0wi(r10, r00w0, qp(1)); r30s3);
r20w2 = ri0wi(r21, r10w1, qp(2)); r40a4 = ri0ai(r40vp4, r40wp4, r40w4,
r30w3 = ri0wi(r32, r20w2, qp(3)); r40s4);
r40w4 = ri0wi(r43, r30w3, qp(4)); r50a5 = ri0ai(r50vp5, r50wp5, r50w5,
r50w5 = ri0wi(r54, r40w4, qp(5)); r50s5);
r60w6 = ri0wi(r65, r50w5, qp(6)); r60a6 = ri0ai(r60vp6, r60wp6, r60w6,
r70w7 = ri0wi(r76, r60w6, 0); r60s6);
% --------------------------------------- r70a7 = ri0ai(r70vp7, r70wp7, r70w7,
--------------------- r70s7);
% Aceleracion angular de las % ---------------------------------------
articulaciones ---------------------
% --------------------------------------- % Fuerza en el centro de masa de cada
--------------------- elemento
r00wp0 = zeros(3,1); % ---------------------------------------
r10wp1 = ri0wpi(r10, r00wp0, r00w0, ---------------------
qp(1), qpp(1)); r70f7 = ri0fi(r70a7, m7);
r20wp2 = ri0wpi(r21, r10wp1, r10w1, r60f6 = ri0fi(r60a6, m6);
qp(2), qpp(2)); r50f5 = ri0fi(r50a5, m5);
r30wp3 = ri0wpi(r32, r20wp2, r20w2, r40f4 = ri0fi(r40a4, m4);
qp(3), qpp(3)); r30f3 = ri0fi(r30a3, m3);
r40wp4 = ri0wpi(r43, r30wp3, r30w3, r20f2 = ri0fi(r20a2, m2);
qp(4), qpp(4)); r10f1 = ri0fi(r10a1, m1);
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 10

xlabel('Fuerza Articular N')


%fuerzas_cm=[r10f1,r20f2,r30f3,r40f4,r50f ylabel('Par Articular Nm')
5,r60f6]; figure (2)
% --------------------------------------- plot(r20f2a,r20n2a)
--------------------- grid on;
% Par en el centro de masa de cada title('Grafica de Fuerza Y y Par
elemento Articular 2')
% --------------------------------------- xlabel('Fuerza Articular N')
--------------------- ylabel('Par Articular Nm')
r70n7 = ri0ni(r70wp7, r70w7, Iexter); figure (3)
r60n6 = ri0ni(r60wp6, r60w6, r60I_r06); plot(r30f3a,r30n3a)
r50n5 = ri0ni(r50wp5, r50w5, r50I_r05); grid on;
r40n4 = ri0ni(r40wp4, r40w4, r40I_r04); title('Grafica de Fuerza Y y Par
r30n3 = ri0ni(r30wp3, r30w3, r30I_r03); Articular 3')
r20n2 = ri0ni(r20wp2, r20w2, r20I_r02); xlabel('Fuerza Articular N')
r10n1 = ri0ni(r10wp1, r10w1, r10I_r01); ylabel('Par Articular Nm')
% ---------------------------------------
---------------------
% Fuerzas articulares % ---------------------------------------
% --------------------------------------- ---------------------
--------------------- % Fuerzas y pares de accionamientos
r70f7a = r70f7; % ---------------------------------------
r60f6a = ri0fia(r67, r70f7a, r60f6); ---------------------
r50f5a = ri0fia(r56, r60f6a, r50f5); t_1 = t_r(r10, r10n1a, qp(1), b1);
r40f4a = ri0fia(r45, r50f5a, r40f4); t_2 = t_r(r21, r20n2a, qp(2), b2);
r30f3a = ri0fia(r34, r40f4a, r30f3); t_3 = t_r(r32, r30n3a, qp(3), b3);
r20f2a = ri0fia(r23, r30f3a, r20f2); t_4 = t_r(r43, r40n4a, qp(4), b4);
r10f1a = ri0fia(r12, r20f2a, r10f1); t_5 = t_r(r54, r50n5a, qp(5), b5);
t_6 = t_r(r65, r60n6a, qp(6), b6);
% --------------------------------------- tau = [t_1; t_2; t_3; t_4; t_5; t_6;0];
---------------------
% Pares articulares
% ---------------------------------------
--------------------- VI. CONCLUSIONES
r20p1 = r21*(r10p1);
r30p2 = r32*(r20p2); Una vez desarrollado el trabajo se puede concluir que:
r40p3 = r43*(r30p3);
r50p4 = r54*(r40p4);  El método de Newton-Euler permite obtener un
r60p5 = r65*(r50p5); conjunto de ecuaciones recursivas hacia delante de
r70p6 = r76*(r60p6); velocidad y aceleración lineal y angular las cuales
están referidas a cada sistema de referencia articular.
r70n7a = r70n7;
r60n6a = ri0nia(r67, r70n7a, r70f7a,  Las ecuaciones recursivas hacia atrás calculan los
r60n6, r60f6, r70p6, r60p6, r60s6); pares y fuerzas necesarios para cada articulación
r50n5a = ri0nia(r56, r60n6a, r60f6a, desde la mano (incluyendo en ella efectos de fuerzas
r50n5, r50f5, r60p5, r50p5, r50s5); externas), hasta el sistema de referencia de la base.
r40n4a = ri0nia(r45, r50n5a, r50f5a,  El concepto clave de ambos métodos es formular las
r40n4, r40f4, r50p4, r40p4, r40s4); ecuaciones dinámicas en una forma recursiva, de
r30n3a = ri0nia(r34, r40n4a, r40f4a, modo que el cálculo pueda ser realizado desde un
r30n3, r30f3, r40p3, r30p3, r30s3); eslabón del manipulador a otro.
r20n2a = ri0nia(r23, r30n3a, r30f3a,
r20n2, r20f2, r30p2, r20p2, r20s2);  Newton Euler reduce la complejidad computacional,
r10n1a = ri0nia(r12, r20n2a, r20f2a, de modo que el número de operaciones requeridas
r10n1, r10f1, r20p1, r10p1, r10s1); varía linealmente según el número de grados de
libertad.
figure (1)
plot(r10f1a,r10n1a)  El modelo dinámico de un robot tiene por objeto
grid on; conocer la relación entre el movimiento del robot y
title('Grafica de Fuerza Y y Par las fuerzas implicadas en el mismo.
Articular 1')
ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO ESPOCH, Angel Rodrigo Guanga Huerta, Seguidor de línea 11

VII. RECOMENDACIONES
Para un mejor desarrollo del Método se recomienda que:

Trabajar con el mayor número posible de grados de libertad,


puesto que mayor número de articulaciones mayor es el
cálculo de los parámetros y mayor es el entendimiento.

VIII. BIBLIOGRAFÌA:
https://sci-
hub.tw/https://ieeexplore.ieee.org/document/8095691/
Figura 5: Datos del KUKA
https://sci-
hub.tw/https://ieeexplore.ieee.org/document/8279891/

http://www.udesantiagovirtual.cl/moodle2/mod/book/tool/prin
t/index.php?id=24922

https://www.aero.upm.es/departamentos/fisica/PagWeb/asigna
turas/mecanica2/mec1/M1_Teo_04_EcGen-
Tabajo_handout.pdf

http://nbio.umh.es/files/2012/04/practica3.pdf

ANEXOS:

Figura 3: Medición 1

Figura 4: Medición 2

Das könnte Ihnen auch gefallen