Escolar Documentos
Profissional Documentos
Cultura Documentos
TESIS
QUE PARA OBTENER EL GRADO DE:
MAESTRO EN CIENCIAS
CON ESPECIALIDAD EN
INGENIERA MECNICA
PRESENTA
RESUMEN
ABSTRACT
This research work shows different methods for the formulation of models to
describe the closed-loop mechanisms, and how can these methods
provide aneasier way for a computational implementation. With the
intention that the models founded allow a simple implementation of control
schemes.It also raises that by using balancing techniques with a focus on
mechanical design based on control, it could be posible to eliminate or
reduce the effects of some terms of the mathematical model, further
helping to facilitate the control algorithm.
This work starts from the viewpoint of control and ends in a mechanical
approach. That is, it starts from studies in the area of computer and control
and shows the models that can facilitate the approach of mechanical
systems, then it proposes techniques that could reduce these models and
thus facilitate the implementation of control algorithms.
NDICE
NDICE GENERAL i
ndice de Tablas y Figuras v
Simbologa xiii
Objetivo xxxiii
Justificacin xxxv
II ANLISIS CINEMTICO 21
2.1. Grados de Libertad 23
2.2. Sistema de Coordenadas 27
2.3. Restricciones cinemticas 31
2.4. Uniones en sistema multicuerpo 33
2.5. Cinemtica Directa 43
2.5.1 Anlisis de Posicin 43
2.5.1.1 Restricciones de Unin 43
2.5.1.2 Restricciones de Conduccin 53
2.5.1.3 Restricciones Holnomas 59
2.5.2 Anlisis de Velocidad 61
2.5.3 Anlisis de Aceleracin 67
2.5.4 Cinemtica de los CM 73
2.6. Coeficientes de Velocidad y Aceleracin 79
i
NDICE
ii
NDICE
CONCLUSIONES xxxvii
Trabajo a futuro xxxix
REFERENCIAS.
ANEXOS
BIBLIOGRAFA
iii
NDICE
iv
TABLAS Y FIGURAS CAPTULO 2
CAPTULO 2
TABLAS
FIGURAS
v
TABLAS Y FIGURAS CAPTULO 2
vi
TABLAS Y FIGURAS CAPTULO 3
CAPTULO 3
FIGURAS
vii
TABLAS Y FIGURAS CAPTULO 3
viii
TABLAS Y FIGURAS CAPTULO 4
CAPTULO 4
TABLAS
FIGURAS
ix
TABLAS Y FIGURAS CAPTULO 4
x
TABLAS Y FIGURAS CAPTULO 5
CAPTULO 5
FIGURAS
xi
TABLAS Y FIGURAS CAPTULO 5
xii
SIMBOLOGA CAPTULO 2
SIMBOLOGA: CAPTULO 2
C Se refiere al Eslabn 3
EF Se refiere al Eslabn 5
F Se refiere al Eslabn 6
xiv
SIMBOLOGA CAPTULO 2
r Longitud manivela
l Longitud biela
ngulo manivela
ngulo biela
p Superficie de restriccin
q Variable(s) generalizada(s)
f Ecuacin de la posicin
g Ecuacin de la velocidad
Q Matriz Jacobiana
xv
SIMBOLOGA CAPTULO 2
R ACX R ACXP Coordenada de Velocidad x del punto C, desde el punto de
referencia A
R ACY R ACYP Coordenada de Velocidad y del punto C, desde el punto de
referencia A
R ACX R ADXP Coordenada de Velocidad x del punto D, desde el punto de
referencia A
R ACY R ADYP Coordenada de Velocidad y del punto D, desde el punto de
referencia A
R AD1 X R AD1 XP Coordenada de Velocidad x del punto D1, desde el punto de
referencia A
R AD1Y R AD1YP Coordenada de Velocidad y del punto D1, desde el punto de
referencia A
R AEX R AEXP Coordenada de Velocidad x del punto E, desde el punto de
referencia A
R AEY R AEYP Coordenada de Velocidad y del punto E, desde el punto de
referencia A
REFX REFXP Coordenada de Velocidad x del punto F, desde el punto de
referencia E
REFY REFYP Coordenada de Velocidad y del punto F, desde el punto de
referencia E
RBFX RBFXP Coordenada de Velocidad x del punto F, desde el punto de
referencia B
L AC L ACP Derivada con respecto del tiempo de la distancia L AC
RBB1 X RBB1 XPP Coordenada de Aceleracin x del punto B1, desde el punto de
referencia B
RBB1Y RBB1YPP Coordenada de Aceleracin y del punto B1, desde el punto de
referencia B
R BCX R BCXPP Coordenada de Aceleracin x del punto C, desde el punto de
referencia B
R BCY R BCYPP Coordenada de Aceleracin y del punto C, desde el punto de
referencia B
xvi
SIMBOLOGA CAPTULO 2
R ACX R ACXPP Coordenada de Aceleracin x del punto C, desde el punto de
referencia A
R ACY R ACYPP Coordenada de Aceleracin y del punto C, desde el punto de
referencia A
R ACX R ADXPP Coordenada de Aceleracin x del punto D, desde el punto de
referencia A
R ACY R ADYPP Coordenada de Aceleracin y del punto D, desde el punto de
referencia A
R AD1X R AD1 XPP Coordenada de Aceleracin x del punto D1, desde el punto de
referencia A
R AD1Y R AD1YPP Coordenada de Aceleracin y del punto D1, desde el punto de
referencia A
R AEX R AEXPP Coordenada de Aceleracin x del punto E, desde el punto de
referencia A
R AEY R AEYPP Coordenada de Aceleracin y del punto E, desde el punto de
referencia A
REFX REFXPP Coordenada de Aceleracin x del punto F, desde el punto de
referencia E
R EFY R EFYPP Coordenada de Aceleracin y del punto F, desde el punto de
referencia E
RBFX RBFXPP Coordenada de Aceleracin x del punto F, desde el punto de
referencia B
L AC L ACPP Segunda Derivada con respecto del tiempo de la distancia L AC
R BB1CM Posicin del CM del elemento BB1, desde el punto de
referencia B
R DD1CM Velocidad del CM del elemento DD1, desde el punto de
referencia B
R EFCM Velocidad del CM del elemento EF, desde el punto de
referencia B
R FCM Velocidad del CM del elemento F, desde el punto de referencia
B
RCCM Velocidad del CM del elemento C, desde el punto de
referencia B
R BB1CM Aceleracin del CM del elemento BB1, desde el punto de
referencia B
R DD1CM Aceleracin del CM del elemento DD1, desde el punto de
referencia B
R EFCM Aceleracin del CM del elemento EF, desde el punto de
referencia B
R FCM Aceleracin del CM del elemento F, desde el punto de
referencia B
RCCM Aceleracin del CM del elemento C, desde el punto de
referencia B
xviii
SIMBOLOGA CAPTULO 2
K Coeficiente de Velocidad de
K Coeficiente de Velocidad de
L Coeficiente de Aceleracin de
L Coeficiente de Aceleracin de
xix
SIMBOLOGA CAPTULO 2
xx
SIMBOLOGA CAPTULO 3
SIMBOLOGA: CAPTULO 3
T Energa Cintica
m Masa
v Velocidad lineal
I Inercia
w Velocidad angular
TBB1 Energa Cintica del centro de masa del elemento BB1
xxi
SIMBOLOGA CAPTULO 3
xxii
SIMBOLOGA CAPTULO 3
U Energa Potencial
g Aceleracin de la gravedad
L Funcin Lagrangiana.
Q Matriz Jacobiana
Multiplicadores de Lagrange
Q Fuerzas de restriccin
Inercia generalizada
q Coordenadas generalizadas
M Matriz Masa
xxiii
SIMBOLOGA CAPTULO 3
NG Matriz de gravedad
MTC Matriz de masa, cuyos componentes tienen que ver con la energa
cintica del elemento C
W Trabajo Virtual
s Desplazamiento Virtual
F Fuerza aplicada
xxiv
SIMBOLOGA CAPTULO 3
RBB1CM Aceleracin del CM del elemento BB1, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCCM Aceleracin del CM del elemento C, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RDD1CM Aceleracin del CM del elemento DD1, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
xxv
SIMBOLOGA CAPTULO 3
REFCM Aceleracin del CM del elemento EF, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
R FCM Aceleracin del CM del elemento F, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
xxvi
SIMBOLOGA CAPTULO 3
xxvii
SIMBOLOGA CAPTULO 3
xxviii
SIMBOLOGA CAPTULO 4
SIMBOLOGA: CAPTULO 4
x Posicin de la corredera
ngulo de la manivela con respecto a la horizontal
x Velocidad de la corredera
xxix
SIMBOLOGA CAPTULO 4
x Aceleracin de la corredera
xxx
SIMBOLOGA CAPTULO 5
SIMBOLOGA: CAPTULO 5
F Fuerza
M Momento
m masa
R Radio de crculo
, w Velocidad angular
xxxi
SIMBOLOGA CAPTULO 5
R AFX Aceleracin horizontal del eslabn F, obtenida al derivar dos veces la
posicin del eslabn F, me
xxxii
OBJETIVO
xxxiii
OBJETIVO
xxxiv
JUSTIFICACIN
xxxv
JUSTIFICACIN
xxxvi
INTRODUCCIN CAPTULO 1
El estado del arte es el recorrido que valioso saber que se ha hecho antes
se realiza -a travs de una y que existe ahora para hacerla ms
investigacin de carcter eficiente.
bibliogrfico- con el objeto de conocer
y sistematizar la produccin cientfica Tuvieron que pasar muchos siglos en
en determinada rea del la historia del hombre, para que
conocimiento. finalmente en el siglo XX, surgieran
las computadoras que son tan
Cuando leemos acerca de un comunes de conseguir y usar en
inventor, cientfico o alguien nuestros das, desde el
importante en la historia, no es fcil descubrimiento de la energa elctrica
entender su trabajo sin antes estudiar y magntica, adems plantear la ley
las razones que lo llevaron a que rige estos fenmenos, el camino
desarrollarlo, es decir; qu que se sigui para el desarrollo de la
conocimientos existan y qu haca electrnica, y toda la evolucin del
falta cuando se hizo manifiesto. mundo digital.
1
INTRODUCCIN CAPTULO 1
2
EVOLUCIN DE LA MECNICA CAPTULO 1
3
EVOLUCIN DE LA MECNICA CAPTULO 1
En el siglo XVI, Galileo Galilei estudi el movimiento del plano inclinado, realiz
importantes observaciones acerca del movimiento del pndulo.
Muchas veces la dinmica de las mquinas eran bien entendidas antes que
existiera un profundo entendimiento terico de la dinmica, ese fue el caso del
pndulo de Galileo, que fue descrito antes que Newton y Euler nacieran.
Las tres leyes enunciadas por Newton, revolucionaron el mundo cientfico. Sin
embargo fue hasta 1760, cuando el suizo Leonard Euler pblico su obra Theoria
motus corporum solidorum sea rigidorum, cuando se empez a entender la
dinmica de los cuerpos rgidos. Euler hizo grandes aportaciones a las
matemticas, su nombre aparece en casi todas las ramas de las matemticas.
4
EVOLUCIN DE LA MECNICA CAPTULO 1
Borgins en 1818 y Haton aos mas tarde, publicaron tratados que abarcan los ms
importantes mecanismos de una manera descriptiva, el primero clasificndolos en
6 grandes familias, receptores, comunicadores, modificadores, de soporte,
reguladores y operadores. Mientras que Haton describi ms de 250 mecanismos.
5
EVOLUCIN DE LA MECNICA CAPTULO 1
6
BREVE HISTORIA DEL CONTROL AUTOMTICO CAPTULO 1
Esta idea pudo haber sido concebida por griegos o rabes del antiguo mundo,
plasmada en sus mquinas, p. ej. En los relojes de agua, lmparas de aceite,
dispensadores de vino, niveladores de agua, etc.
7
BREVE HISTORIA DEL CONTROL AUTOMTICO CAPTULO 1
Nicholas Minorsky en 1922, quien naci en Rusia, y emigr a los Estados Unidos,
realizando estudios importantes en la conduccin de barcos recomend, aunque
no en los mismos trminos que lo conocemos ahora, una combinacin de una
accin proporcional, derivativa e integral en los sistemas retroalimentados. Y a
finales de la dcada de 1930, ya existan controladores de tipo proporcional,
derivativo e integral, PID.
En las tres primeras dcadas del siglo XX, hubo importantes anlisis en los
circuitos electrnicos y diseo de filtros.
Una de las grandes ventajas del criterio de Nyquist es que no se requiere la forma
analtica de la respuesta frecuencial del sistema en lazo abierto. Un arreglo de
puntos muestra, pueden ser graficados sin la necesidad del modelo matemtico,
otra ventaja consiste en que a diferencia del criterio de Routh-Hurwitz una
valoracin de la respuesta transitoria puede ser hecha directamente desde las
grficas de Nyquist en trminos de los mrgenes de la ganancia y la fase.
8
BREVE HISTORIA DEL CONTROL AUTOMTICO CAPTULO 1
Los cientficos rusos continuaron las lneas de estos grandes genios, pero no se
dieron a conocer al mundo, hasta despus de la segunda guerra mundial.
9
BREVE HISTORIA DEL CONTROL AUTOMTICO CAPTULO 1
10
MECATRNICA CAPTULO 1
En los aos 60s del siglo XX, la mecatrnica dio un gran paso, con la ayuda del
desarrollo del microprocesador, y sus primeros frutos se dieron a conocer en las
mquinas de control numrico.
11
MECATRNICA CAPTULO 1
13
MECATRNICA CAPTULO 1
14
MECATRNICA EN LOS MECANISMOS CAPTULO 1
En los ltimos 10 aos se han presentado varios trabajos acerca de ellos, ya sea
acerca de su diseo u optimizacin o como bases para probar modelos de control,
ya que los mecanismos proporcionan caractersticas atractivas en sus modelos
dinmicos para ser controladas.
Los servomotores son una parte muy importante en el desarrollo de estos trabajos,
pues es bsicamente el actuador a controlar en el mecanismo, ya que muchos de
estos presentan un solo grado de libertad.
En 1996, J.S. Park estudi la eficiencia de los servomotores en los casos en que
una mquina tenga que moverse entre dos puntos repetitivamente ya sea en
forma de rotacin o traslacin. En su estudio propone un perfil de movimiento con
una mxima eficiencia de energa. A pesar de que ya existan perfiles que
trabajaban bien en la industria, como son el perfil trapezoidal, exponencial,
polinomial, sinusoidal, cosenoidal, entre otros, estos no tenan una eficiente
conversin de energa, ya que mucha de la energa de entrada se desperdiciaba
en forma de calor, por lo que el sistema requera grandes cantidades de energa
de entrada. [12]
15
MECATRNICA EN LOS MECANISMOS CAPTULO 1
16
MECATRNICA EN LOS MECANISMOS CAPTULO 1
17
MECATRNICA EN LOS MECANISMOS CAPTULO 1
18
MECATRNICA EN LOS MECANISMOS CAPTULO 1
19
MECATRNICA EN LOS MECANISMOS CAPTULO 1
Las simulaciones muestran los resultados obtenidos, siendo estos muy superiores
en la reduccin de fluctuaciones y el porcentaje de sobretiro, as como tambin en
la estructura del controlador de la seal de salida, lo que facilita la implementacin
en hardware.
20
INTRODUCCIN CAPTULO 2
ANLISIS CINEMTICO
21
INTRODUCCIN CAPTULO 2
22
GRADOS DE LIBERTAD CAPTULO 2
Eslabn
Un eslabn es un cuerpo rgido que posee al menos dos nodos que son los puntos
de unin con otros eslabones.
La junta es una conexin entre dos o ms eslabones (en sus nodos), los cuales
permiten un movimiento relativo.
Reuleux, defini el trmino de par inferior para describir las juntas con contacto
superficial, como un perno rodeado por un agujero. Y el trmino par superior para
describir juntas con un punto o lnea de contacto. [3]
Pares Inferiores
Nombre Letra DOF Contiene
Revoluta (R) 1 R
Prismatico (P) 1 P
Helicoidal (H) 1 RP
Cilindrico (C) 2 RP
Esferico (S) 3 RRR
Planar (F) 3 RPP
23
GRADOS DE LIBERTAD CAPTULO 2
Ecuacin de Gruebler:
M 3L 2 J 3G 2.1
M Grados de libertad
L Nmero de Eslabones
J Nmero de Juntas
G Nmero de eslabones sujetos al marco de referencia
M 3( L 1) 2 J 2.2
El valor J, debe reflejar todos los pares cinemticos en el mecanismo, es decir
tanto los completos, con un grado de libertad, como los intermedios, con dos
grados de libertad. Por tanto con la modificacin de Kutzbach, la ecuacin de
Gruebler es:
M 3( L 1) 2 J1 2 J 2 2.3
M Grados de libertad
L Nmero de Eslabones
J 1 Nmero de Juntas completas
J 2 Nmero de Juntas intermedias
24
GRADOS DE LIBERTAD CAPTULO 2
NOTA:
Eslabn 1
Eslabn 2 BB1 BB
Este eslabn, manivela, est unido al eslabn fijo, eslabn 1, por medio de un par
giratorio B, por la que se introduce el movimiento giratorio proveniente de un
motor elctrico.
25
GRADOS DE LIBERTAD CAPTULO 2
Eslabn 3 C
Eslabn 4 DD1
Eslabn 5 EF
Eslabn 6 F
El eslabn de salida, est conectado al eslabn fijo por medio de un par prismtico
que le obliga a realizar un movimiento rectilneo.
26
SISTEMA DE COORDENADAS CAPTULO 2
Las coordenadas dependientes, son en nmero mayor que los grados de libertad,
y permiten describir fcilmente el sistema. Al no ser independientes se encuentran
inter-relacionadas a travs de las ecuaciones de restriccin.
a) Coordenadas Relativas
b) Coordenadas de punto de referencia o cartesianas.
c) Coordenadas Naturales o cartesianas completas
d) Coordenadas Mixtas
27
SISTEMAS DE COORDENADAS CAPTULO 2
a) Coordenadas Relativas
Ventajas
Dificultades
28
SISTEMAS DE COORDENADAS CAPTULO 2
Ventajas
Desventajas
29
SISTEMAS DE COORDENADAS CAPTULO 2
c) Coordenadas naturales
1. Cada elemento debe tener al menos dos puntos de referencia (base) para
definir su movimiento.
2. Debe existir un punto base en cada par de revolucin, el cual es compartido
por dos elementos
3. Un par prismtico une dos cuerpos, y los dos puntos bsico de uno de estos
determina la direccin del movimiento relativo, aunque uno de los dos puntos
bsicos del otro cuerpo pueda estar localizado en el segmento determinado
por los dos puntos bsicos del primero
4. Adems de los dos puntos base requeridos, otro punto puede ser
seleccionado.
30
RESTRICCIONES CINEMTICAS CAPTULO 2
Al utilizar coordenadas dependientes, que son en nmero mayor que los grados
de libertad del sistema, estas se encuentran inter-relacionadas a travs de las
ecuaciones de restriccin.
a) Restricciones de conduccin.
b) Restricciones de Unin.
a) Restricciones de conduccin
b) Restricciones de Unin
Son el resultado de las restricciones impuestas por las uniones mecnicas como
son las uniones de revolucin prismtica, cilndrica y esfrica. Estas restricciones
describen la conectividad entre los componentes del sistema multicuerpo y por
tanto definen la estructura topolgica del sistema. [5]
31
RESTRICCIONES CINEMTICAS CAPTULO 2
32
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
a) Restriccin de Base
b) Restriccin de Revoluta
c) Restriccin prismtica.
Restriccin de Base
Un cuerpo que tiene cero grados de libertad es llamado elemento fijo; implicando
que no tiene movimiento de rotacin ni traslacin.
R xi c1 0
R yi c 2 0 ( 2.5)
i c3 0
33
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
Restriccin de Revoluta
Cuando dos cuerpos son conectados por una unin de revolucin, slo se permite
un movimiento relativo de rotacin entre ellos.
Los cuerpos i y j, coinciden en el punto P, por lo cual la definicin del punto P, del
cuerpo i, debe de coincidir con la definicin del punto P, del cuerpo j.
rpi rp j (2.6)
R i Ai up i R j A j up j 0 (2.7)
Donde
Restriccin de prismtica
Esta restriccin, tambin llamada unin de traslacin, y slo permite una traslacin
relativa entre dos cuerpos a lo largo de un eje de unin.
La ecuacin de restriccin que elimina la rotacin relativa entre los cuerpos es:
i j c 0 (2.8)
34
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
Donde c 0i 0j constante
rp ij R i Ai u ip R j A j u pj
(2.9)
h i Ai (u ip u Qi )
h rp
i T ij
0 (2.10)
Por tanto las ecuaciones que definen una restriccin prismtica pueden escribirse
como: [2]
i j c 0
i T ij
h rp 0
(2.11)
35
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
COORDENADAS NATURALES
Se define como una restriccin de distancia L12 , entre dos puntos, 1 y 2. Tambin
definido como la ecuacin de la recta. [7]
x2 x1 2 y2 y1 2 L122 0 (2.12)
36
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
x2 x1 2 y 2 y1 2 L12 2 0
x3 x1 2 y3 y1 2 L132 0 (2.13)
x3 x2 2 y3 y 2 2 L232 0
x2 x1 2 y 2 y1 2 L12 2 0
x3 x1 L13 x2 x1 0 (2.14)
L12
y3 y1 L13 y 2 y1 0
L12
37
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
La tcnica que se emplea para determinar las restricciones consiste en elegir tres
puntos bsicos no alineados, entre los cuales se establecen las ecuaciones de
restriccin de distancia. El resto de puntos bsicos se expresarn como
combinacin lineal de los vectores que definen esa base.
Estas ecuaciones aseguran el comportamiento rgido del tringulo formado por los
puntos 1, 2 y 3.
x2 x1 2 y 2 y1 2 L12 2 0
x3 x1 2 y3 y1 2 L132 0 (2.15)
x3 x2 2 y3 y 2 2 L232 0
Si, tomamos como origen del slido al punto 2, entonces la base estar formada
por los vectores r2-1 y r2-3. Las ecuaciones 2.15 indican que el vector r2-4 puede
expresarse como una combinacin lineal de los vectores base. Siendo y
constantes. [7]
x4 x2 x1 x2 x3 x2 0
(2.16)
y 4 y 2 y1 y 2 y3 y 2 0
38
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
Restriccin de revoluta
Restriccin de prismtica
La primera restriccin, es una ecuacin del producto vectorial nulo entre los
vectores r1-2 y r1-3, que asegura que el punto 3 se encuentre siempre alineado
con los puntos 1 y 2.
La segunda restriccin, tiene como fin impedir que se produzca un giro relativo
entre los dos elementos. Siendo c una constante que depende del ngulo que
forma el vector r1-2 con r3-4. [7]
x2 x1 y3 y1 y2 y1 x3 x1 0 (2.17)
x2 x1 x4 x3 y2 y1 y4 y3 c 0
39
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
Por tanto slo se necesita una ecuacin de restriccin que limite al punto 3 estar
alineado con los puntos 1 y 2.
x2 x1 y3 y1 y2 y1 x3 x1 0 (2.18)
Siendo entonces la diferencia que este tipo de restriccin permite el giro relativo
entre los dos elementos. [7]
40
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
COORDENADAS MIXTAS
a) Restriccin de ngulo
b) Restriccin de distancia.
Restriccin de ngulo
La ecuacin que liga el ngulo con las tres coordenadas que describen los tres
puntos bsicos, puede ser representada como un producto escalar conocido como
la ecuacin del coseno, o como un producto vectorial conocido como la ecuacin
del seno.
x1 x2 x3 x2 y1 y2 y3 y2 L12L23cos 0 (2.19)
x1 x2 y3 y2 y1 y2 x3 x2 L12L23sen 0
El uso de alguna de stas dos ecuaciones, no es indiferente; puesto que al
acercarse su valor a 0, en el caso de la ecuacin del coseno y 90 en el caso de la
ecuacin seno, estas se vuelven invlidas. Por lo cual su correcta implementacin
requiere una conmutacin dependiendo del ngulo. [7]
41
UNIONES, EN SISTEMAS MULTI-CUERPO CAPTULO 2
Restriccin de distancia
x3 x1 s
x2 x1 0 (2.20)
L12
y3 y1 s
y 2 y1 0
L12
Las cuales, tampoco pueden utilizarse indistintamente, por lo que tienen que
conmutar, mientras que el elemento que une a los puntos 1 y 2, se encuentre a
menos de 45 o 45 grados de la horizontal, se ocupar la formulacin en x, en caso
contrario se opta por la formulacin en y.
x3 x1 2 y3 y1 2 s 2 0 (2.21)
42
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
COORDENADAS NATURALES
43
CINEMTICA DIRECTA, ANLISIS DE POSICIN CAPTULO 2
Relacin de distancia
y B1 yC LCB1 y B1 y B 0 (2.24)
LBB1
y B1 LBB1 cos 0
Fig. 2.17 Restriccin Slido BB1
xC LBB1 LCB1 sin 0 (2.26)
Las ecuaciones (2.22) y (2.23), son dos opciones por las cuales podemos modelar
el punto B1.
Las ecuaciones (2.24), (2.25) plantean como integrar el punto B1, si se ocupa la
Relacin de Longitud- ngulo
44
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
xD xC yD y A xD x A yD yC 0 (2.28)
Relacin de distancia
45
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
yD yE LDD1 LED1 y A yE 0 (2.30)
LAD1 LED1
xD xE LDD1 LED1 xA xE 0
LAD1 LED1
xA p 0 (2.31)
yA h 0 (2.32)
Las ecuaciones (2.28) y (2.29), son dos opciones por las cuales podemos modelar
el punto E.
xE xF 2 yE yF 2 LEF 2 0 (2.33)
yF m 0 (2.34)
46
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Ecuaciones
f1 x B1 x B y B1 y B1 LBB1 0 f 2 xE xF y E y F LEF 0
2 2 2 2 2 2
f 3 x D x A y D y A L AD 0
2 2 2
Relacin de distancia
LCB1
f 4 x B1 xC x B1 x B 0
LBB1
L
f 5 y B1 yC CB1 y B1 y B 0
LBB1
L LED1 L LED1
f 6 x D x E DD1 x A x E 0 f 7 y D y E DD1 y A y E 0
L AD1 LED1 L AD1 LED1
L
f 8 x E x D1 AD1 x A x D1 0
LED1
L AD1
f 9 y E y D1 y A y D1 0
LED1
Tres puntos co-lineales
f10 x D xC y D y A x D x A y D yC 0
Ecuaciones de diseo
f11 y F m 0
Ecuaciones Auxiliares
xA p 0
yA h 0
x B1 LBB1 sin 0
y B1 LBB1 cos 0
xC LBB1 LCB1 sin 0
yC LBB1 LCB1 cos 0
Incgnitas:
xD , yD , xD1 , yD1 , xE , yE , xF , yF
47
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Esta metodologa es muy intuitiva, por lo que ofrece una gran ventaja en su
implementacin en software.
48
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Como se menciono antes, este tipo de coordenadas se basa en describir los pares
de un eslabn respecto a un punto fijo, que generalmente es el CM; Sin embargo,
el punto fijo puede ser tambin, un par.
Lazo I
49
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
En donde
RBA ( P, H )
Dividimos en coordenadas x y
Lazo II
En donde
RBA ( P, H )
Dividimos en coordenadas x y
50
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
LBC sin( ) P
ArcTan (2.37)
BC
L cos( ) H
L cos( ) H
L AC BC (2.38)
cos( )
L sin( ) P
L AC BC (2.39)
sin( )
L AE cos( ) H m
ArcCos (2.40)
LEF
Tenemos 4 ecuaciones, que son la base, para describir la posicin de cada uno de
los elementos.
Se define
51
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
52
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Como hemos visto, existen restricciones de unin, las cuales fueron utilizadas
para obtener la posicin en coordenadas naturales y coordenadas de punto de
referencia del presente trabajo. A continuacin se presenta el anlisis utilizando
restricciones de conduccin.
p y0 (2..45)
53
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Es la misma idea que plante el trabajo de Chun-Yi su, Tin-Pui Leung y Qi-Jie
Zhou, Force/Motion of Constrained Robots Using Sliding Mode. Solamente que
en ese caso el efector final deba permanecer sobre un crculo. [5]
Una vez planteada la idea de superficie de restriccin y como esta puede ser
expresada en trminos de las variables generalizadas. Se aplica a nuestro
mecanismo.
Superficie de Restriccin 1
LBC sin( ) P
sin( ) (2..47)
hip
LBC cos( ) H
cos( ) (2..48)
hip
La hipotenusa (hip) evidentemente seala la lnea que une a los puntos A y C, que
es tambin la superficie de restriccin. p hipotenusa . Al igual que el ejemplo
anterior se busca poner la superficie de restriccin en trminos de las variables
generalizadas p (q) .
LBC sin( ) P
hip
sin( )
LBC cos( ) H
hip
cos( )
55
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Superficie de Restriccin 2
p ym (2..50)
56
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
57
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
58
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
Entonces, el objetivo consiste en demostrar que las ecuaciones obtenidas con las
Restricciones de unin por el mtodo de lazos, describe el mismo problema que
las ecuaciones obtenidas con las Restricciones de conduccin.
Restricciones de Unin
Restricciones de Conduccin
Se puede observar que la Ec. (2.43), puede ser definida como una ecuacin
auxiliar donde RBFX ( , )
59
CINEMTICA DIRECTA ANLISIS DE POSICIN CAPTULO 2
La ecuacin (2.44) y (2.52), son las mismas, por lo que solo hay que demostrar
que las Ec. (2.41) y (2.42), se reducen a la Ec. (2.49)
La Ec. (2.41) la multiplicamos por cos( ) , mientras que la Ec. (2.42) por sin( ) y las
sumamos.
60
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
df1 df df df
g1 ; g2 2 ; g3 3 ; g4 4
dt dt dt dt
Ecuaciones de posicin
Ecuaciones de velocidad
g1 : LAC cos( ) sin( ) L AC LBC cos( ) 0 (2.53)
g 2 : L AC sin( ) cos( ) L AC LBC sin( ) 0 (2.54)
g 3 : L AE cos( ) LEF cos( ) RBFX 0 (2.55)
g 4 : L AE sin( ) LEF sin( ) 0 (2.56)
Q : Matriz Jacobiana
61
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
Donde:
L AC cos( ) sin( ) 0 0
L sin( ) cos( ) 0 0
Q AC
L
BC cos( )
L
L sin( )
q AC ; t BC
0
R BFX 0
q inv ( Q ) t (2.58)
Matriz Jacobiana
f1 f1 f1 f1
L AC RBFX
f 2 f 2 f 2 f 2
L AC RBFX
Q (2.59)
f f 3 f 3 f 3
3
L AC RBFX
f 4 f 4 f 4 f 4
L AC RBFX
62
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
f1 f1 f1 f1 f1
L AC RBFX
f 2 f 2 f 2 f 2 f 2
L AC RBFX
Q
f 3
(2.60)
f f 3 f 3 f 3
3
L AC RBFX
f 4 f 4 f 4 f 4 f 4
L AC RBFX
Donde:
f1 f
LBC cos( ) ; 2 LBC sin( )
f 3 f
0; 4 0
La matriz 4x4, sirve para la solucin de velocidad del mecanismo, mientras que la
matriz 4x5, ser til cuando definamos la dinmica.
df1 df
g1 ; g2 2
dt dt
63
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
Ecuaciones de Posicin
Ecuaciones de Velocidad
Donde:
L cos( )
q t BC
;
0
q inv ( Q ) t (2.58)
64
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
Matriz Jacobiana
f1 f1
Q (2.64)
f 2 f 2
f1 f1 f1
Q (2.65)
f 2 f 2 f 2
Donde:
f1
LBC cos( ) ;
f 2
0
La matriz 2x2, sirve para la solucin de velocidad del mecanismo, mientras que la
matriz 2x3, ser til cuando definamos la dinmica.
RBB1Y LBB1 sin( )
RBCX LBC cos( )
65
CINEMTICA DIRECTA ANLISIS DE VELOCIDAD CAPTULO 2
RBCY LBC sin( )
R ACX L AC sin( ) L AC cos( )
R ACY LAC cos( ) L AC sin( )
R ADX L AD cos( )
R ADY L AD sin( )
R AD1 X L AD1 cos( )
R AD1Y L AD1 sin( )
R AEX L AE cos( )
R AEY L AE sin( )
REFX LEF cos( )
REFY LEF sin( )
RBFX LAE cos( ) LEF cos( )
LBC cos( ) sin( ) LBC sin( ) P cos( )
L AC
sin 2 ( )
66
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
dg1 dg dg dg
h1 ; h2 2 ; h3 3 ; h4 4
dt dt dt dt
Ecuaciones de Velocidad
Ecuaciones de Aceleracin
h1 L AC cos( ) sin( ) L AC ( L AC cos( ) L AC sin( ) ) (cos( ) ) L AC
(2.67)
2
LBC cos( ) LBC sin( ) 0
h2 L AC sin( ) cos( ) L AC ( L AC sin( ) L AC cos( ) ) (sin( ) ) L AC
2
(2.68)
LBC sin( ) LBC cos( ) 0
h3 LAE cos( ) LEF cos( ) RBFX ( LAE sin( ) ) ( LEF sin( ) ) 0 (2.69)
h4 LAE sin( ) LEF sin( ) ( LAE cos( ) ) ( LEF cos( ) ) 0 (2.70)
67
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
q inv ( Q )( Q q t ) (2.72)
Donde
L AC cos( ) sin( ) 0 0
L sin( ) cos( ) 0 0
Q AC
L L
q AC ; q AC
R BFX R BFX
L AC cos( ) L AC sin( ) cos( ) 0 0
L sin( ) L AC cos( ) sin( ) 0 0
Q AC
L AE sin( ) 0 L EF sin( ) 0
L AE cos( ) 0 L EF cos( ) 0
2
LBC cos( ) LBC sin( )
2
t BC
L sin( ) L BC cos( )
0
0
68
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
dg1 dg
h1 ; h2 2
dt dt
Ecuaciones de Velocidad
g1 : [( LBC cos( ) H cos( ) P sin( )) ( LBC cos( )) ] 0 (2.62)
g 2 : LAE sin( ) LEF sin( ) 0 (2.63)
Ecuaciones de Aceleracin
h1 [( LBC cos( ) H cos( ) P sin( )) ( LBC sin( )( ) H sin( )
(2.73)
P cos( ) ) ( LBC cos( ) LBC sin( )( ) )] 0
h2 LAE sin( ) LEF sin( ) ( LAE cos( ) ) ( LEF cos( ) ) 0 (2.74)
q inv ( Q )( Q q t ) (2.72)
Donde
LBC cos( ) H cos( ) P sin( ) 0
Q q ; q
LAE sin( ) LEF sin( )
L sin( )( ) H sin( ) P cos( ) 0
Q BC
L AE cos( ) LEF cos( )
L
t BC cos( ) L BC sin( )( )
0
69
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
2
RBB1 X LBB1 cos( ) LBB1 sin( )
2
RBB1Y LBB1 sin( ) LBB1 cos( )
2
RBCX LBC cos( ) LBC sin( )
2
RBCY LBC sin( ) LBC cos( )
2
R ACX L AC sin( ) L AC cos( ) L AC cos( ) L AC cos( ) L AC sin( )
2
R ACY L AC cos( ) L AC sin( ) L AC sin( ) L AC sin( ) L AC cos( )
2
R ADX L AD cos( ) L AD sin( )
2
R ADY L AD sin( ) L AD cos( )
2
R AD1 X L AD1 cos( ) L AD1 sin( )
2
R AD1Y L AD1 sin( ) L AD1 cos( )
2
R AEX L AE cos( ) L AE sin( )
2
R AEY L AE sin( ) L AE cos( )
2
REFX LEF cos( ) LEF sin( )
2
REFY LEF sin( ) LEF cos( )
70
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
2 2
RBFX L AE cos( ) L AE sin( ) LEF cos( ) LEF sin( )
2
L AC {[( LBC sin( ) ) sin( ) LBC sin( ) cos( ) LBC cos( ) cos( ) ( LBC cos( ) H ) sin( )
2
( LBC cos( ) H ) cos( ) LBC sin( ) sin( ) ][cos 2 ( )] [( LBC sin( ) ) cos( )
( LBC cos( ) H ) sin( ) ][2 cos( )( sin( ) )]} / cos 4 ( )
2
L AC {[( LBC cos( ) ) cos( ) LBC cos( ) sin( ) LBC sin( ) sin( ) ( LBC sin( ) P) cos( )
2
( LBC sin( ) P) sin( ) LBC cos( ) cos( ) ][sin 2 ( )] [( LBC cos( ) ) sin( )
( LBC sin( ) P) cos( ) ][2 sin( ) cos( ) ]} / sin 4 ( )
71
CINEMTICA DIRECTA ANLISIS DE ACELERACIN CAPTULO 2
72
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
Para obtener la cinemtica de los centros de masa, slo es necesario hacer una
transformacin y derivar la ecuacin resultante con respecto al tiempo.
NOTA: El centro de masa CM, es definido por las variables (u, v). Sin embargo, es
muy importante referenciar estas con respecto a un par cinemtico.
cos( ) sin( )
sin( ) cos( )
73
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
sin( ) cos( ) u
R BB1CMX
2
(2.76)
R cos( ) sin( ) v 2
BB1CMY
cos( ) sin( )
sin( ) cos( )
74
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
sin( ) cos( ) u
R
DD1CMX
4
(2.79)
R cos( ) sin( ) v 4
DD1CMY
cos( ) sin( )
sin( ) cos( )
75
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
R L AE sin( ) AE 5 5
EFCMY
76
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
R FCMX
R AEX
R EFX
(2.85)
R R
FCMY R AEY EFY
R FCMX
R AEX
R EFX
(2.86)
R R R
FCMY AEY EFY
cos( ) sin( )
sin( ) cos( )
77
CINEMTICA DIRECTA: CINEMTICA CM CAPTULO 2
sin( ) cos( ) u
RCCMX
R ACX
3
(2.88)
R R cos( ) sin( ) v3
CCMY ACY
R R cos( ) sin( ) v3 3
CCMY ACY
78
COEFICIENTES DE VELOCIDAD Y ACELERACIN CAPTULO 2
COEFICIENTES DE VELOCIDAD
Definimos:
L AC R BFX
K ; KL AC ; K ; KR BFX
Dividimos las ecuaciones de velocidad entre y sustituimos los coeficientes de
Velocidad K, para definirlos.
L
K BC cos( ) (2.90)
L AC
L AE sin( ) K
K (2.93)
LEF sin( )
79
COEFICIENTES DE VELOCIDAD Y ACELERACIN CAPTULO 2
Q q t 0
t
Kq inv ( Q )
(2.95)
Ecuaciones de Velocidad
Definimos:
K ; K ;
Dividimos las ecuaciones de velocidad entre y sustituimos los coeficientes de
Velocidad K, para definirlos.
LBC cos( )
K (2.96)
LBC cos( ) H cos( ) P sin( )
L AE sin( ) K
K (2.97)
LEF sin( )
t
Kq inv ( Q )
(2.95)
80
COEFICIENTES DE VELOCIDAD Y ACELERACIN CAPTULO 2
COEFICIENTES DE ACELERACIN
MODO I
Se define entonces:
L L
L BC sin( )( ) AC K (2.98)
L AC L AC
( L AC cos( )) L ( L AC cos( ) L AC sin( ) ) K ( cos( ) ) KL AC ( LBC sin( ))
LLAC
sin( )
( L sin( )) L ( L AC sin( ) L AC cos( ) ) K (sin( ) ) KL AC ( LBC cos( ))
LL AC AC
cos( )
( L sin( )) L ( L AE cos( ) ) K ( LEF cos( ) ) K
L AE (2.101)
LEF sin( )
Ec. (2.102)
LRBFX ( L AE cos( )) L ( LEF cos( )) L ( L AE sin( ) ) K ( LEF sin( ) ) K
81
COEFICIENTES DE VELOCIDAD Y ACELERACIN CAPTULO 2
dK
L (2.103)
dt
dK
L (2.104)
dt
L {[ LBC sin( )( )][ LBC cos( ) H cos( ) P sin( )]
[ LBC cos( )][ LBC sin( )( ) H sin( ) P cos( ) ]}
/[ LBC cos( ) H cos( ) P sin( )]2
[( LAE sin( )) L ( LAE cos( ) ) K ][ LEF sin( )] [ LAE sin( ) K ][ LEF cos( ) ]
L
[ LEF sin( )]2
MODO II
dK dKL AC dK dKRBFX
L ; LLAC ; L ; LRBFX
d d d d
Se define entonces:
L L cos( ) KL AC
L BC sin( )( K 1) ( BC 2
)
LAC LAC
LLAC {[(KLAC sin( ) K ) ( LAC cos( ) K 2 ) ( LAC sin( ) L ) ( LBC cos( ))][cos( )]
[( LAC sin( ) K ) ( LBC sin( ))][sin( ) cos( )]} / cos 2 ( )
LLAC {[( KLAC cos( ) K ) ( LAC sin( ) K 2 ) ( LAC cos( ) L ) ( LBC sin( ))][sin( )]
[( LAC cos( ) K ) ( LBC cos( ))][cos( ) K ]} / sin 2 ( )
[( LAE cos( ) K 2 ) ( LAE sin( ) L )][ LEF sin( )] [ LAE sin( ) K ][ LEF cos( ) K ]
L
[ LEF sin( )]2
82
INTRODUCCIN CAPTULO 3
ANLISIS DINMICO
83
INTRODUCCIN CAPTULO 3
84
ENERGA CINTICA CAPTULO 3
1 2 1 2
T mv I
2 2
Donde:
m = masa
v = Magnitud de la velocidad del centro de masa
I = Momento de inercia respecto a un eje imaginario que pasa por el centro de
masa y es perpendicular al plano de movimiento
=Velocidad angular
85
ENERGA CINTICA CAPTULO 3
( )
( )
( )
( )
( )
86
ENERGA CINTICA CAPTULO 3
[
]
( ( ) )
[
]
87
ENERGA CINTICA CAPTULO 3
[( ) (( ) ( ) )
( )
]
[( ) (( ) ( ) )
( )
]
88
ENERGA POTENCIAL CAPITULO 3
Es por definicin, el trabajo mgh que se realiza contra el campo gravitatorio para
elevar la masa una distancia h por encima de un plano de referencia arbitrario en
el que Vg se toma como cero. [2]
Vg mgh
Donde:
m = Masa
g = Aceleracin de la gravedad
h = Altura medida desde un plano de referencia arbitrario
89
ENERGA POTENCIAL CAPTULO 3
( ( ) )
( ( ) )
90
ECUACIN DE LAGRANGE CAPTULO 3
Mtodo Clsico
( ) (3.34)
Donde:
Funcin de lagrangiano
91
ECUACIN DE LAGRANGE CAPTULO 3
( )
Donde:
Funcin de lagrangiano.
Multiplicadores de Lagrange.
92
FORMULACIN DE COORDENADAS CAPTULO 3
En esta formulacin, se toman los m grados de libertad del sistema y se restan las
c restricciones , y se trabaja con las coordenadas restantes.
93
FORMULACIN DE COORDENADAS CAPTULO 3
Las ecuaciones que obtenemos utilizando este mtodo, son DAE ecuaciones
diferenciales Algebraicas.
94
FUERZAS DE RESTRICCIN CAPTULO 3
Estas fuerzas, surgen como una necesidad para formular las ecuaciones
dinmicas usando el mtodo de Lagrange-Euler con coordenadas dependientes,
sin embargo, tambin representan las fuerzas de reaccin en los pares
cinemticos [6].
95
FUERZAS DE RESTRICCIN CAPTULO 3
96
PARMETROS REDUCIDOS EKSERGIAN CAPTULO 3
Donde:
Inercia generalizada
Coordenada generalizada, (En este caso es la coordenada Independiente)
Energa Potencial
Fuerzas no conservativas
[
]
( ( ) )
97
PARMETROS REDUCIDOS EKSERGIAN CAPTULO 3
L AC RBFX
K
; KL AC
; K
; KRBFX
[ ]
[ ]
{ [
] }
[ ]
{ [ ( ) ] }
{
[
]
[ ( ) ]
}
98
PARMETROS REDUCIDOS EKSERGIAN CAPTULO 3
Ec. (3.46)
{ [ ] [ ] [ )
] [ ]
[ ] [
]
[ ]
(3.44)
(3.45)
99
PARMETROS REDUCIDOS EKSERGIAN CAPTULO 3
(3.36)
100
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
( )
(3.35)
Ecuaciones de Posicin
(2.52)
Ecuaciones de Velocidad
[( ) ]
(2.63)
Matriz Jacobiana
[ ]
[ ]
[ ] [ ] (3.49)
101
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
Energa Cintica
Donde:
( )
[( )
(( ) ( ) )
( )
]
[( )
(( ) ( ) )
( )
]
102
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
Para tener una buena organizacin de los trminos que contiene la ecuacin
dinmica, se presenta cada una de sus componentes por separado.
( )
{[ ] [ ] [ ]
{[ ] [ ]
[ ] { [ ( )]}
{ [ ] [ ] [
] { ] [ ] ( )
103
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
( ) =
,* ( )+ * ( )+ [ ]
* ( )+ -
, * ( )+ * ( )+-
, * ( )+ * ( )+
* ( )+ * ( )+-
, * ( )+ [ ( )]-
, * ( )+ * ( )+
* ( )+- {[ ] [ ]
104
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
( ) =
,* ( )+ * ( )+ [ ]
* ( )+ -
, * ( )+
[ ( )]-
, * ( )+
* ( )+ * ( )+
* ( )+-
,* ( )+
[ ( )]-
, * ( )+ * ( )+
* ( )+-
, ( ) [ ] [ ]-
105
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
( )
{[ ] ]
[ ] {[ ]
* ( )+ { ]
[ ] {[ ]
{ [ ] {[ ]
( )
{[ ] {[ ] ( )
d TC T
C VgC (3.55)
dt
106
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
d TC T
C VgC (3.56)
dt
V g
d T T
dt
d T T V g T 1
dt Q
2
V g
d T T
dt
107
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
M 11 m DD1 (u 4 v 4 ) m EF L AE
2 2
2
m F
2
L AE cos 2 ( ) I DD1 M TC11
M 12 m EF L AE sin( )u 5 m EF L AE cos( )v 5 m F L AE L EF cos( ) cos( )
M 13 M TC13
M 31 M TC 31
M 32 0
M 33 m BB1 (u 2 v 2 ) I BB1 M TC 33
2 2
N C11 m F L AE cos( ) sin( ) N CTC11 N CTC11A
2
N C12 {m EF L AE sin( )v 5 m EF L AE cos( )u 5 m F L AE L EF cos( ) sin( )}
N C13 N CTC13
N C 21 {m EF L AE cos( )u 5 m EF L AE sin( )v 5 }
{m L cos( ) sin( ) } {m
F L AE L EF cos( ) sin( ) }
2
N C 22 F EF
NC 23 0
NC 31 NCTC31 NCTC31A
NC 32 0
N C 33 N CTC33
108
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
( L BC cos( ) H ) 2 ( L cos( ) H )v 3
M TC11 m C
2m BC
C
cos( )
m C (u 3 2 v 3 2 )
cos 4 ( )
( L BC cos( ) H ) sin( )u 3
2 m C I
cos 2 ( ) C
( L BC cos( ) H )( L BC sin( )) sin( ) L sin( )u 3
M TC13 m C m BC
C
cos( )
cos 3 ( )
( L BC cos( ) H )( L BC sin( )) sin( ) L sin( )u 3
M TC 31 m C m BC
cos 3 ( ) C cos( )
L 2 sin 2 ( )
M TC 33 mC BC 2
cos ( )
109
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
110
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
L BC sin( ) P
N gTC11 m C m cos( )u m (sin( )v )
2
C 3 C 3
sin ( )
N g11
M 11 M 12 M 13 N C11 N C12 N C13
M M 21 M 22 M 23 ; N C N C 21
N C 22 N C 23 ; N G N g 21 g
M 31 M 32 M 33 N C 31 N C 33 N g 31
N C 32
111
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
112
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPITULO 3
dK dK
K ; K ; L dt ; L dt
K L
K K L L
1 ; 0
K
K
K L
K L
M 11 M 12 M 13 K M 11 M 12 M 13 L
M M 22 M 23 K M 21 M 22 M 23 L
21
M 31 M 32 M 33 1 M 31 M 32 M 33 0
(3.60)
N C11 N C12 N C13 K N g11
1
N C 21 N C 23 K N g 21 g Q
T
N C 22
N C 31 N C 32 N C 33 1 N g 31 2
MK ( ML N C K ) N G Q
T
(3.61)
113
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
Se define:
Q K Q K L
; ;
M Q N C Q N G Q (3.62)
T
114
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
Q q t q q c (3.63)
Q q Q
M T
n Re striccione s
0 c
(3.64)
Q m CoordenadasGeneralizadas
Donde el trmino Q, contiene todas las fuerzas externas, adems de los trminos
de la inercia dependientes de la velocidad y aquellos obtenidos del potencial.
L sin( )( ) H sin( ) P cos( ) 0 L BC sin( )( )
Q BC
L AE cos( ) L EF cos( ) 0
Q q q q c (3.65)
115
MTODO DE LOS MULTIPLICADORES DE LAGRANGE CAPTULO 3
M q N c q N G Q (3.66)
T
M 11 M 12 M 13 N C11 N C12 N C13 N g11
M 1
M 23 N C 21 N C 23 N g 21 g Q
T
21 M 22 N C 22
M 31 M 32
M 33 N C 31 N C 32
N C 33 N g 31 2
Se obtiene
M q Q N c q N G Q (3.67)
T
N C11 N C12 N C13 N g11
Q N C 21 N C 22 N C 23 N g 21 g
N C 31 N C 32 N C 33 N g 31
q M 1Q M 1 Q
T
(3.68)
Q M 1 Q Q M 1Q c
T
(3.69)
116
TRABAJO VIRTUAL CAPTULO 3
Se plantea de una forma muy breve, los conceptos del principio del Trabajo
Virtual, puesto que es junto con el principio de Hamilton, los medios para plantear
la ecuacin dinmica del mecanismo planteado.
Ms que por su importancia prctica, este principio tiene tanta relevancia debido a
que es la base que lleva a anunciar la mecnica analtica. [3]
Una restriccin adicional que se impone a las fuerzas de vnculo es que puedan
ser tan grandes en magnitud como fuera necesario para imponer la ligadura, lo
que es una idealizacin de los vnculos reales, pues estos sufren transformaciones
como son el estirarse, doblarse, etc.
Desplazamiento virtual
Trabajo virtual
117
TRABAJO VIRTUAL CAPITULO 3
El principio postula que la suma de los trabajos virtuales de todas las fuerzas del
vnculo de un sistema es nula, para cualquier conjunto de desplazamientos
virtuales, compatibles con los vnculos, de las partculas del sistema.
W Fs (3.70)
W Trabajo virtual
F Fuerza aplicada o de vnculo
s Desplazamiento virtual
En el caso de considerarse solo las fuerzas aplicadas que sean compatibles con
los vnculos:
W i Firi j M j A j (3.71)
W Trabajo virtual
F Fuerza aplicada
ri Desplazamiento lineal virtual
Ai Desplazamiento angular virtual
Se define
ri dri
q CoordenadaGeneralizada
q dq
118
FUERZAS EXTERNAS CAPTULO 3
Hasta este momento, slo la fuerza de gravedad ha sido tomada en cuenta en los
clculos; Ahora se agrega una fuerza de corte Fcorte, ejercida en el ltimo eslabn
del mecanismo y un par ejercido en el par cinemtico del elemento 2 BB1, que lo
conecta al eslabn fijo.
W A Fcorter T (3.72)
Donde:
119
FUERZAS EXTERNAS CAPTULO 3
r dr d d
L AE cos( ) L EF cos( )
d d d
r dr
L AE cos( ) K L EF cos( ) K
d
Por tanto
r L AE cos( ) K L EF cos( ) K
Y se sustituye en (3.72)
W A
{Fcorte L AE cos( ) K L EF cos( ) K T } (3.74)
W A qQ A (3.75)
r
L AE cos( )
r
LEF cos( )
120
FUERZAS EXTERNAS CAPTULO 3
Por tanto:
r LAE cos( )
r LEF cos( )
r r r (3.76)
Fcorte ( L AE cos( ))
W Fcorte ( L EF cos( )) (3.78)
T
W qQ A (3.79)
L W
t2
0 A
W C dt (3.80)
t1
d L L
t2
0 Q Q
A C
(3.80)
dt q
t1
q
dependientes.
121
FUERZAS EXTERNAS CAPTULO 3
1 d(q) 2 dV
(q) q q QA (3.81)
2 dq dq
Q A Fcorte L AE cos( ) K L EF cos( ) K T (3.82)
Multiplicadores de Lagrange
M Q N C Q N G Q Q A
T
(3.83)
Q q Q
M T
0 c
(3.66)
Q
Q NC q NG Q A (3.84)
Fcorte ( L AE cos( ))
Q Fcorte ( LEF cos( )) (3.79)
A
122
CLCULO DE REACCIONES CAPTULO 3
Por tanto, se utilizar un mtodo vectorial para encontrar las reacciones; ya que la
determinacin de las reacciones en los pares es esencialmente un problema
esttico y tomando en cuenta que ya se han establecido las fuerzas de inercia en
un anlisis dinmico previo, esta clase de problemas es referida como cineto-
esttico.
123
CLCULO DE REACCIONES CAPTULO 3
Elemento 2, BB1
Donde:
124
CLCULO DE REACCIONES CAPTULO 3
M RCMBB1B f1BB1 RCMBB1C f CBB1 I BB1 T (3.86)
Donde:
RBB1CM Aceleracin del CM del elemento BB1, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCMBB1B Posicin medida desde el CM del elemento BB1 al Par B, utilizando
el sistema de coordenadas ( X 2 , Y2 )
RCMBB1C Posicin medida desde el CM del elemento BB1 al Par C, utilizando
el sistema de coordenadas ( X 2 , Y2 )
RBCMBB1 (u 2 , v 2 )
RBC (0, LBC )
125
CLCULO DE REACCIONES CAPTULO 3
cos( ) sin( )
R CMBB1B
R CMBB1B (UCM 2, VCM 2) (3.87)
sin( ) cos( )
Fx f 1BB1 X f CBB1X m BB1 ( R BB1CMX ) (3.88)
Fy f 1BB1Y f CBB1Y WBB1 m BB1 ( RBB1CMY ) (3.89) (3.90)
M R CMBB1 X f1BB1Y ( RCMBB1Y )( f1BB1X ) ( RCMBB1CX )( f CBB1Y ) RCMBB1CY f CBB1X I BB1 T
Elemento 3, C
126
CLCULO DE REACCIONES CAPTULO 3
Donde:
RCCM Aceleracin del CM del elemento C, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCMCC Posicin medida desde el CM del elemento C al par C, utilizando el
sistema de coordenadas ( X 3 , Y3 ) .
RCMCNC Posicin medida desde el CM del elemento C al punto de aplicacin
de la fuerza normal al elemento C, ejercida por el elemento DD1
utilizando el sistema de coordenadas ( X 3 , Y3 ) .
RCCMC (u 3 , v3 )
RCNC (uCNCX , uCNCY )
127
CLCULO DE REACCIONES CAPITULO 3
Se tiene, adems
F x f CBB1X f DD1CX mC ( RCCMX ) (3.95)
F y f CBB1Y f DD1CY WC mC ( RCCMY ) (3.96) (3.97)
M ( RCMCCX )( f CBB1Y ) ( RCMCCY )( f CBB1X ) ( RCMCNCX )( f DD1CY ) ( RCMCNCY )( f DD1CX ) I C
Elemento 4, DD1
128
CLCULO DE REACCIONES CAPITULO 3
Donde:
RDD1CM Aceleracin del CM del elemento DD1, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCMDD1 A Posicin medida desde el CM del elemento DD1 al par A, utilizando
el sistema de coordenadas ( X 4 , Y4 ) .
RCMDD1E Posicin medida desde el CM del elemento DD1 al par E, utilizando
el sistema de coordenadas ( X 4 , Y4 )
RCMDD1NC Posicin medida desde el CM del elemento DD1 al punto de
aplicacin de la fuerza normal al elemento DD1, ejercida por el
elemento C utilizando el sistema de coordenadas ( X 4 , Y4 ) .
RACMDD1 (u 4 , v4 )
RAE (0,( LAE v4 ))
RANC (uCNCX , LAC uCNCY )
129
CLCULO DE REACCIONES CAPITULO 3
cos( ) sin( )
RCMDD1 A
RCMDD1 A(UCM 4,VCM 4) (3.100)
sin( ) cos( )
cos( ) sin( )
RCMDD1E
RCMDD1E (UCM 4,VCM 4) (3.101)
sin( ) cos( )
cos( ) sin( )
RCMDD1NC
RCMDD1NC (UCM 4,VCM 4) (3.102)
sin( ) cos( )
Se tiene, adems
Fx f 1DD1 X f EFDD1 X f DD1CX mDD1 ( RDD1CMX ) (3.104)
Fy f 1DD1Y f EFDD1Y f DD1CY WDD1 mDD1 ( RDD1CMY ) (3.105)
130
CLCULO DE REACCIONES CAPITULO 3
Elemento 5, EF
F f DD1EF f FEF WEF mEF ( REFCM ) (3.107)
M RCMEFE f DD1EF RCMEFF f FEF I EF (3.108)
Donde:
REFCM Aceleracin del CM del elemento EF, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCMEFE Posicin medida desde el CM del elemento EF al par E, utilizando el
sistema de coordenadas ( X 5 , Y5 ) .
RCMEFF Posicin medida desde el CM del elemento EF al par F, utilizando el
sistema de coordenadas ( X 5 , Y5 )
131
CLCULO DE REACCIONES CAPITULO 3
RECMEF (u5 , v5 )
REF (0, LEF )
cos( ) sin( )
RCMEFE
RCMEFE (UCM 5,VCM 5) (3.109)
sin( ) cos( )
cos( ) sin( )
RCMEFF
RCMEFF (UCM 5,VCM 5) (3.110)
sin( ) cos( )
Se tiene, adems
132
CLCULO DE REACCIONES CAPITULO 3
Fx f EFDD 1 X f FEFX mEF ( REFCMX ) (3.112)
F y f EFDD1Y f FEFY WEF mEF ( REFCMY ) (3.113)
Elemento 6, F
F f EFF f1F WFF f corte mF ( RFCM ) (3.115)
M RCMFF f EFF RCMFNF f1F RCMFfcorte f corte 0 (3.116)
133
CLCULO DE REACCIONES CAPITULO 3
Donde:
R FCM Aceleracin del CM del elemento F, que se refiere a la segunda
derivada con respecto al tiempo, de la posicin del CM, desde el
sistema inercial.
RCMFF Posicin medida desde el CM del elemento F al par F, utilizando el
sistema de coordenadas ( X 6 , Y6 ) .
RCMFNF Posicin medida desde el CM del elemento F al punto de aplicacin
de la fuerza normal al elemento F, utilizando el sistema de
coordenadas ( X 6 , Y6 )
RCMFfcorte Posicin medida desde el CM del elemento F al punto de aplicacin
de la fuerza de corte, utilizando el sistema de coordenadas ( X 6 , Y6 )
RFCMF (u6 , v6 )
RFfcorte (u7 , v7 )
134
CLCULO DE REACCIONES CAPITULO 3
Se tiene, adems
Fx f FEFX f1FX f corte mF ( RFCMX ) (3.121)
Fy f FEFY f1FY WF mF ( RFCMY ) (3.122)
135
CLCULO DE REACCIONES CAPITULO 3
F x f1BB1X f CBB1X mBB1 ( RBB1CMX ) (3.88)
F y f1BB1Y f CBB1Y WBB1 mBB1 ( RBB1CMY ) (3.89) (3.90)
M RCMBB1X f1BB1Y ( RCMBB1Y )( f1BB1X ) ( RCMBB1CX )( f CBB1Y ) RCMBB1CY f CBB1X I BB1 T
f1BB1 X f1BB1Y f CBB1 X f CBB1Y
Incgnitas: , , ,
F x f CBB1X f DD1CX mC ( RCCMX ) (3.95)
F y f CBB1Y f DD1CY WC mC ( RCCMY ) (3.96) (3.97)
M ( RCMCCX )( f CBB1Y ) ( RCMCCY )( f CBB1X ) ( RCMCNCX )( f DD1CY ) ( RCMCNCY )( f DD1CX ) I C
f f f f u
Incgnitas: CBB1 X , CBB1Y , DD1CX , DD1CY , CNCY
u 0
Dato: CNCX
f f f f f f u
Incgnitas: 1DD1 X , 1DD1Y , EFDD1 X , EFDD1Y , DD1CX , DD1CY , CNCY
u 0
Dato: CNCX
136
CLCULO DE REACCIONES CAPITULO 3
F x f EFDD1X f FEFX mEF ( REFCMX ) (3.112)
F y f EFDD1Y f FEFY WEF mEF ( REFCMY ) (3.113)
F x f FEFX f1FX f corte mF ( RFCMX ) (3.121)
F y f FEFY f1FY WF mF ( RFCMY ) (3.122)
f u
Incgnitas:, 1FY , CMFNFX ,
f 0 (3.124)
Dato: 1FX
137
CLCULO DE REACCIONES CAPITULO 3
138
INTRODUCCIN CAPTULO 4
SNTESIS CINEMTICA
139
INTRODUCCIN CAPTULO 4
140
MQUINA HERRAMIENTA: CEPILLO CAPTULO 4
Cepillo de codo
Cepillo de mesa
Cepillo de fosa
Cepillo universal
Cepillo vertical
141
MQUINA HERRAMIENTA: CEPILLO CAPTULO 4
142
MQUINA HERRAMIENTA: CEPILLO CAPTULO 4
En los cepillos, las velocidades de corte pueden llegar a 120m/min (400 pies/min)
y las capacidades a 110 kW (150hP). Las velocidades recomendadas son de 3 a 6
m/min (10 a 20 pies/min) para las fundiciones de hierro y aceros inoxidables, y
hasta 90 m/min (300 pies/min) para aleaciones de aluminio y magnesio. Los
avances suelen estar entre 0.5 y 3 mm/pasada (0.02 a 0.125 pulg/pasada). Los
materiales ms comunes de herramienta son los aceros para alta velocidad M2 y
M3 y los carburos C-2 y C-6 [1]
143
MQUINA HERRAMIENTA: CEPILLO CAPTULO 4
VC (Ti )
N
L(TT )
Una relacin de velocidades 1:1.5 significa que el retroceso es 1.5 veces mas
rpido que el tiempo de corte, o que el corte toma 1.5 veces ms de tiempo que el
regreso. Esta relacin puede tambin escribirse como 2:3, pues al dividir 3/2, nos
da la relacin de 1.5.
Usando la nomenclatura 2:3, entendemos que el cepillo esta tomando 3/5 partes
del tiempo de carrera para corte y 2/5 partes del tiempo para el regreso [4]
Ti 3
0.6
TT 5
Sin embargo, los manuales de operacin del cepillo de codo, utilizan como
factores de conversin: 7 para sistema ingls y 583 para sistema mtrico.
144
MQUINA HERRAMIENTA: CEPILLO CAPTULO 4
Desbastado Acabado
Material
pies/min m/min pies/min m/min
Hierro fundido 60 18 100 30
Acero 0,10 a 0,20 C 80 24 120 36
Acero 0,20 a 0,40 C 60 18 100 30
Acero de matrices 40 12 40 12
Bronce Duro 60 18 100 30
Latn 150 45 Velocidad Mxima
Alumnio 150 45 Velocidad Mxima
En caso de maquinar plsticos, se debe tomar en cuenta:
146
ESPECIFICACIONES DE DISEO CAPTULO 4
Longitud de la mesa 7
Ancho de la mesa 5
Altura de la mesa 7
0.125 [6]
147
ESPECIFICACIONES DE DISEO CAPTULO 4
148
SNTESIS CINEMTICA CAPTULO 4
Watt, patent en 1769 la mquina de vapor de ciclo completo, a partir del diseo
de la mquina de vapor atmosfrica de Newcome, fue el verdadero precursor de la
sntesis de mecanismos (Strandh, 1982). Al disear la mquina se enfrent al
problema de lograr que el mbolo o pistn se moviera verticalmente en lnea recta
sin romperse, pese a estar conectado a un balancn cuyo extremo se mova en
lnea curva. Watt dise un sistema en el cual dos palancas articuladas guiaban al
vstago, formando un paralelogramo que se mova al funcionar la mquina,
resolviendo as el problema del movimiento rectilneo de un punto del eslabn
acoplador del cuadriltero articulado.
150
CLASIFICACIN DE LA SNTESIS CINEMTICA CAPTULO 4
Sntesis dimensional
151
CLASIFICACIN DE LA SNTESIS CINEMTICA CAPTULO 4
Es aquella en la que un punto del acoplador debe generar una trayectoria que
tenga una forma prescrita. Un arco circular, elptico o una recta [8]
Sntesis de Chebyshev
Sntesis cinemticas
152
CLASIFICACIN DE LA SNTESIS DE MECANISMOS CAPTULO 4
Segn sea el mbito del movimiento del mecanismo al que se aplica la sntesis en
el plano o en el espacio
Sntesis exactas
Este tipo de sntesis supone la existencia de, al menos, una solucin que haga
posible el cumplimiento de todas las exigencias de diseo.
Sntesis aproximadas
Cuando, a diferencia del caso anterior, no se dispone de una solucin que cumpla
todas las exigencias de diseo, se trata de aproximar en lo posible los resultados a
los objetivos propuestos.
Sntesis ptima
Optimizacin dinmica
Reciben este nombre las sntesis en las que se engloban objetivos dinmicos
como minimizacin de fuerzas de inercia, de fuerzas de restriccin, pares motores,
etc. [9]
153
CLASIFICACIN DE LA SNTESIS DE MECANISMOS CAPTULO 4
154
CONDICIONES DE DISEO EN LA SNTESIS CINEMTICA CAPTULO 4
xj
1
x0 xn1 1 xn1 x0 cos 2 j 1 j=1,2,, n
2 2 2n
155
CONDICIONES DE DISEO EN LA SNTESIS CINEMTICA CAPTULO 4
Estos investigadores afirman que el ngulo de transmisin debe ser mayor que
30 para lograr un movimiento de buena calidad e incluso mayor, cuando se
manejan velocidades elevadas.
156
CONDICIONES DE DISEO EN LA SNTESIS CINEMTICA CAPTULO 4
Ley de Grashof
rshort rlong ra rb
157
CONDICIONES DE DISEO EN LA SNTESIS CINEMTICA CAPTULO 4
158
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
El estudio presenta una sntesis del tipo: Sntesis de guiado de cuerpo rgido.
Fig. 4.3 Mecanismo Manivela Biela Fig. 4.4 Inversin del mecanismo
Corredera Manivela Biela Corredera
159
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
160
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
161
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Fig. 4.6 Aceleracin corredera R/L 0.2 Fig. 4.7 Aceleracin corredera R/L 0.3
Manivela-Biela-Corredera
Carrera 8 plg 203.2mm
Manivela 4 plg 101.6mm
Biela 12 plg 304.8mm
R/L 0.3
m h
Manivela 4 plg
Biela 12 plg
72.5424
163
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
164
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Posicin
1 cos 2 ( )
Siendo , la ecuacin 4.3 y 4.5 se pueden combinar para formar:
( R / L) cos( )
(4.6)
1 R / L 2 sin 2 ( )
1/ 2
165
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
x R
1 sin( ) (4.8)
L L
2 ( R / L) sin( )( R / L) 2 1
(4.10)
1 (R / L) 2
sin 2 ( )
3/ 2
90
90
Para algunas relaciones de longitud (R/L), existen tablas que permiten visualizar el
comportamiento del mecanismo manivela-biela-corredera. [12]
166
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
167
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
168
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Inversin
Inversin #1
#2 Inversin #3 Inversin #4
Inversin #1
169
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Inversin #1:
Inversin #2:
Inversin #3:
Inversin #4:
170
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Q
tiempo _ de _ carrera _ de _ avance
4.13
tiempo _ de _ carrera _ de _ retorno
Tiempo de la carrera de avance=
2
Tiempo de la carrera de retorno=
2
Por tanto: Q (4.14)
171
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Q 1.5
180 2
Q (4.15)
180 2
90
1.5
90
Al despejar
22.5
Entonces, el mecanismo planteado tiene que recorrer 8 plg (203.2 mm) de avance,
en el mismo lapso de tiempo que el eslabn BC recorre 2 180 225 de su
trayectoria.
172
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Es necesario plantear que los cambios de direccin del efector final, tambin
indiquen el cambio de velocidad entre el avance y el retroceso. Para tal fin, se
plantea que el eslabn AD, tenga la posicin de 90 y 270 desde un sistema de
coordenadas local como se muestra; adems de proponer a la variable p=0
(distancia horizontal entre los pares A y B)
La trayectoria generada por el movimiento del elemento BC, siempre debe estar
inscrita en la trayectoria AD, pues en caso contrario no es posible construir el
mecanismo.
173
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Para obtener las ecuaciones necesarias para definir las dimensiones, se comienza
trazando dos lneas que parten del punto B y forman un ngulo con la
horizontal.
Se dibuja la trayectoria del eslabn BC. Y se traza una lnea horizontal en las
intersecciones con las lneas dibujadas anteriormente. Adems se traza una lnea
vertical que parte del punto B, hasta la lnea horizontal.
174
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
h
sin( ) (4.16)
LBC
Y que para el radio LBC , existe solamente una h que cumple con las condiciones
establecidas; esto es con la condicin del ngulo , y que los cambios de
direccin tambin indiquen el tipo de recorrido, de avance o retroceso.
En este caso, slo es necesario definir la longitud LBC , para conocer las
dimensiones mnimas requeridas para definir el mecanismo.
175
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
hmax L AD
1
1
sin( )
Partiendo del punto A, se dibuja una lnea vertical con altura h, y se define el punto
B. Se traza una horizontal en el punto B, y se generan dos lneas con ngulo .
Es importante notar que se defini la hmax , por tanto, si se tiene como parmetro la
longitud L AD , es posible elegir una h, mientras se cumpla la condicin: 0 h hmax .
176
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
177
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Simulacin1
178
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Simulacin2
179
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Simulacin3
180
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
Se elige la distancia entre centros, h 1" 25.4mm , para barrenar con broca de 1/2
.
181
SNTESIS CINEMTICA DEL MECANISMO DE WHITWORTH CAPTULO 4
182
INTRODUCCIN CAPTULO 5
184
DISEO MECATRNICO CAPTULO 5
Clase III: Sistemas cuya funcionalidad es similar a los sistemas mecnicos, pero
sus mecanismos internos son remplazados por electrnica. E.g. El reloj digital.
185
DISEO MECATRNICO CAPTULO 5
Los siguientes problemas pueden ocurrir cuando se disea en forma separada los
componentes, para despus interconectarlos.
Formas de integracin
186
DISEO MECATRNICO CAPTULO 5
187
DISEO MECATRNICO CAPTULO 5
188
DESIGN FOR CONTROL CAPTULO 5
189
DESIGN FOR CONTROL CAPTULO 5
190
BALANCEO EN LOS MECANISMOS CAPTULO 5
191
BALANCEO EN LOS MECANISMOS CAPTULO 5
Balanceo Completo
192
BALANCEO EN LOS MECANISMOS CAPTULO 5
Entre las tcnicas que se han empleado para lograr este objetivo estn las
siguientes:
193
BALANCEO EN LOS MECANISMOS CAPTULO 5
Este mtodo se basa en masas impulsadas por levas para mantener estacionario
el centro total de masa.
194
FUERZAS Y MOMENTOS DE INERCIA CAPTULO 5
Centro de Masa
Momento de Inercia
Otro problema que se presenta a menudo cuando las fuerzas estn distribuidas
sobre un rea, es el que consiste en calcular su momento en torno a un eje
especificado. Un anlisis matemtico de este tipo de problema siempre conduce a
(dis tan cia )
2
una integral. x diferencial de rea. Esta integral se conoce con el
nombre de momento de inercia del rea. Algunas autoridades en la materia
prefieren denominar a esta integral segundo momento del rea, afirmando que un
rea no puede poseer inercia.
195
FUERZAS Y MOMENTOS DE INERCIA CAPTULO 5
Principio de DAlembert
La suma vectorial de todas las fuerzas externas y las fuerzas de inercia que
actan sobre un cuerpo rgido es cero. La suma vectorial de todos los momentos
externos y todos los momentos de torsin de inercia que actan sobre un cuerpo
rgido tambin es cero por separado.
Fuerzas de Inercia
F mA G (5.1)
M I (5.2)
F mA 0
G (5.3)
M I 0
G (5.4)
196
FUERZAS Y MOMENTOS DE INERCIA CAPTULO 5
La ecuacin (5.3), afirma que la suma vectorial de todas las fuerzas externas que
actan sobre un cuerpo, ms la fuerza ficticia mAG , es cero. La fuerza ficticia
mAG , recibe el nombre de fuerza de inercia y tiene la misma lnea de accin que
AG pero en sentido opuesto.
Las ecuaciones (5.3) y (5.4) son muy tiles cuando se estudia la dinmica de la
maquinaria, porque permiten agregar fuerzas de inercia y momentos de torsin al
sistema extremo de fuerzas y resolver el problema resultante aplicando los
mtodos de la esttica. [6]
197
FUERZAS Y MOMENTOS DE INERCIA CAPTULO 5
198
FUERZA INERCIA EN UN ROTOR CAPTULO 5
199
FUERZA INERCIA EN UN ROTOR CAPTULO 5
200
FUERZAS Y MOMENTOS DE SACUDIMIENTO EN UN ROTOR CAPTULO 5
F m(Rw 2
) (5.7)
M a(mRw 2
) (5.8)
202
BALANCEO EN UN ROTOR CAPTULO 5
En la siguiente figura se presenta un rotor con 3 masas, cada masa con una
fuerza de inercia centrfuga. Para poder balancear el rotor, es necesario agregar
una masa de balanceo, de tal manera que la sumatoria de fuerzas sea igual a 0.
W 2 2
F mR 2
R WR 0
g g
Por tanto
(WR) 0 (5.9)
W1 R1 W2 R2 W3 R3 We Re 0
203
BALANCEO EN UN ROTOR CAPTULO 5
204
BALANCEO EN UN ROTOR CAPTULO 5
Aun cuando los vectores que sealan los momentos de inercia siguen la regla de
la mano derecha, se representaron en el mismo plano que las fuerzas de inercia.
Entonces, se toma como referencia ahora el plano B-B y se supone una masa en
el plano A-A. Siguiendo el mismo principio es posible encontrar el valor de ma . [7]
(M )
INERCIA B B WRb 0 (5.11)
206
FUERZAS Y MOMENTOS DE SACUDIMIENTO EN UN MECANISMO CAPTULO 5
En donde:
Entonces Ec.(5.16)
M S M 21 ( RG 2 m2 AG 2 RG3 m3 AG3 R G 4O 2 m4 AG 4 I 2 2 I 3 3 I 4 4
En donde:
208
BALANCEO EN UN MECANISMO CAPTULO 5
Para evitar un gran incremento en las reacciones de los cojinetes, puede que sea
deseable reducir el tamao de los contrapesos, aunque slo se tenga un balanceo
parcial de la fuerza. [11]
209
BALANCEO EN UN MECANISMO CAPTULO 5
210
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
NOTA:
90
90
Constante
211
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
mEBiela e 2 mFBiela f 2
I G 5 I EF (5.19)
Estas ecuaciones representan las 3 condiciones que deben cumplirse para realizar
la aproximacin de balanceo.
La suma de las masas concentradas mEBiela y mFBiela deben ser igual a la masa
total de la biela.
El centro de gravedad debe encontrarse en G5
Los momentos de inercia de las masas concentradas en G5 , deben ser igual al
momento I EF
fm EF fm EF
mEBiela (5.20)
e f L
em EF em EF
mFBiela (5.21)
e f L
212
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
NOTA: La mFTotal causar una fuerza en direccin del eje del pistn. Esta
fuerza es la que se debe determinar para balancear el mecanismo
213
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
Se definen las ecuaciones de posicin del pistn, para despus derivarlas 2 veces
y obtener la aceleracin necesaria para determinar la fuerza mFTotal
Donde: LEF L
2
L
cos 1 sin 1 AE
2
sin 2 (5.26)
LEF
s s 2 s 3 5s 4
(1 s) 1 ... Para s 2 1
2 8 16 128
Siendo
2
R
s sin AE
2
sin 2
REF
214
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
1 1
sin 2 cos 2
2 2
215
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
TA
R (5.30)
x
TA
F1 R (5.31)
x
F X max
FR mFTotal R AFX
L AE
FR mFTotal L AE 2 (cos cos 2 ) (5.32)
LEF
L AE
FS FR mFTotal L AE 2 (cos cos 2 ) (5.32)
LEF
216
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
La grfica de las reacciones est comparada con los grados que gira el
mecanismo teniendo una velocidad 100 constante.
Datos:
m AE 1kg
mEF 1kg
mF 0kg
LAE 1m
mBALANCEO 1kg
g=0
217
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
fm EF fm EF fm EF
mEBiela
e f L LEF
em EF em EF em EF
mFBiela
e f L LEF
Por tanto:
mEBiela 0.5kg
mFBiela 0.5kg
LBALANCEO 1m
218
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
90
90
Constante
Las ecuaciones (5.17) a (5.32) son las mismas excepto que el valor de a 0
La ecuacin (5.22) muestra el cambio de utilizar una rueda en lugar de una barra.
219
BALANCEO EN UN MECANISMO MANIVELA BIELA CORREDERA CAPTULO 5
Utilizando los mismos datos del ejemplo anterior, se obtienen las fuerzas de
sacudimiento generadas por las masas del mecanismo.
Datos
m AE 1kg
mEF 1kg
mF 0kg
LAE 1m
g=0
Ecuaciones
fm EF fm EF fm EF
mEBiela
e f L LEF
em EF em EF em EF
mFBiela
e f L LEF
Por tanto:
Fig. 5.22 Fuerzas de Sacudimiento MBC
mEBiela 0.5kg Simulacin Balanceado Manivela Rueda
mFBiela 0.5kg
LBALANCEO 0.5m
220
CONCLUSIONES
CONCLUSIONES
xxxvii
CONCLUSIONES
xxxviii
TRABAJO FUTURO
TRABAJO FUTURO
xxxix
TRABAJO FUTURO
Mecnica Computacional
Implementacin de control
xl
BIBLIOGRAFA CAPTULO 1
BIBLIOGRAFA: CAPTULO 1
BIBLIOGRAFA: CAPTULO 2
BIBLIOGRAFA: CAPTULO 3
BIBLIOGRAFA: CAPTULO 4
http://books.google.com.mx/books?id=dhX93Mxkxn4C&pg=PA11&lpg=PA11&dq=strokes+p
er+minute+shaper&source=bl&ots=eh1B81n5si&sig=yv1f1KIadBpoxCF1dE9vhklfrZA&hl=es&
sa=X&ei=NuBjT9uGNKWg2AXH1ei0CA&ved=0CB0Q6AEwAA#v=onepage&q=strokes%20per
%20minute%20shaper&f=false[
BIBLIOGRAFA: CAPTULO 5
ANEXO A
En este ANEXO se incluyen 2 archivos:
contador=0;
inc=10;
for t=0:inc:360
contador=contador+1;
Theta=t*pi/180;
%Magnitudes de Constantes
KA=LCB1/LBB1;
KB=(LDD1-LED1)/(LAD1-LED1);
KC=LED1/LAD1;
%Ecuaciones de restriccin
xB=0;
yB=0;
ANEXOS ANEXO A
%xB1=LBB1*sin(Theta);
%yB1=LBB1*cos(Theta);
eqn_f1A='xB1solB1=-LBB1*sin(Theta)';
eqn_f1='(xB1solB1-xB)^2+(yB1solB1-yB)^2=LBB1^2';
solB1=solve(eqn_f1A,eqn_f1,'xB1solB1,yB1solB1');
xB1_A=eval(solB1.xB1solB1(1));
xB1_B=eval(solB1.xB1solB1(2));
yB1_A=eval(solB1.yB1solB1(1));
yB1_B=eval(solB1.yB1solB1(2));
eqn_f4='(xB1-xCsolC)-KA*(xB1-xB)=0';
eqn_f5='(yB1-yCsolC)-KA*(yB1-yB)=0';
solC=solve(eqn_f4,eqn_f5,'xCsolC,yCsolC');
xC=eval(solC.xCsolC);
yC=eval(solC.yCsolC);
%eqn_f12='xAsol-p=0';
%eqn_f13='yAsol-h=0';
xA=p;
yA=h;
eqn_f3='(xDsolD-xA)^2+(yDsolD-yA)^2=LAD^2';
eqn_f10='((xDsolD-xC)*(yDsolD-yA))-((xDsolD-xA)*(yDsolD-yC))=0';
solD=solve(eqn_f3,eqn_f10,'xDsolD,yDsolD');
xD_A=eval(solD.xDsolD(1));
xD_B=eval(solD.xDsolD(2));
yD_A=eval(solD.yDsolD(1));
yD_B=eval(solD.yDsolD(2));
xD=xD_B;
yD=yD_B;
eqn_f6='(xD-xEsolE)-KB*(xA-xEsolE)=0';
eqn_f7='(yD-yEsolE)-KB*(yA-yEsolE)=0';
solE=solve(eqn_f6,eqn_f7,'xEsolE,yEsolE');
xE=eval(solE.xEsolE);
yE=eval(solE.yEsolE);
eqn_f8='(xE-xD1solD1)-KC*(xA-xD1solD1)=0';
eqn_f9='(yE-yD1solD1)-KC*(yA-yD1solD1)=0';
solD1=solve(eqn_f8,eqn_f9,'xD1solD1,yD1solD1');
xD1=eval(solD1.xD1solD1);
yD1=eval(solD1.yD1solD1);
ANEXOS ANEXO A
eqn_f2='(xE-xFsolF)^2+(yE-yFsolF)^2=LEF^2';
eqn_f11='yFsolF-m=0';
solF=solve(eqn_f2,eqn_f11,'xFsolF,yFsolF');
xF_A=eval(solF.xFsolF(1));
xF_B=eval(solF.xFsolF(2));
yF_A=eval(solF.yFsolF(1));
yF_B=eval(solF.yFsolF(2));
xF=-xF_B;
yF=yF_B;
%Graficos
%almacen(contador,1,:)=q(3:1:5);
pause(0.1);
end
close all;
%Magnitudes de Constantes
% KA=LCB1/LBB1;
% KB=(LDD1-LED1)/(LAD1-LED1);
% KC=LED1/LAD1;
%Ecuaciones
% f1A=xB1-LBB1*sin[Theta]=0;
% f1=(xB1-xB)^2+(yB1-yB)^2-LBB1^2=0;
% f2=(xE-xF)^2+(yE-yF)^2-LEF^2=0;
% f3=(xD-xA)^2+(yD-yA)^2-LAD^2=0;
% f4=(xB1-xC)-KA*(xB1-xB)=0;
% f5=(yB1-yC)-KA*(yB1-yB)=0;
% f6=(xD-xE)-KB*(xA-xE)=0;
% f7=(yD-yE)-KB*(yA-yE)=0;
% f8=(xE-xD1)-KC*(xA-xD1)=0;
% f9=(yE-yD1)-KC*(yA-yD1)=0;
% f10=((xD-xC)*(yD-yA))-((xD-xA)*(yD-yC))=0;
% f11=yF-m=0;
% f12=xA-p=0;
% f13=yA-h=0;
ANEXOS ANEXO B
ANEXO B
En este ANEXO se incluyen 2 archivos:
Cinematica_Matlab_4.m (MATLAB)
Cinematica Whitworth.wm2d (Working Model)
Cinemtica_Matlab_4.m
contador=0;
inc=10;
% Los siguientes vectores, se definen, puesto que van a guardar cada uno
de
% las variables deseadas para grficar.
ThetaData=(0:inc:360);
PhiData=(0:inc:360);
BetaData=(0:inc:360);
RBFxData=(0:inc:360);
LACData=(0:inc:360);
ANEXOS ANEXO B
PhiDataP=(0:inc:360);
BetaDataP=(0:inc:360);
RBFxDataP=(0:inc:360);
LACDataP=(0:inc:360);
PhiDataPP=(0:inc:360);
BetaDataPP=(0:inc:360);
RBFxDataPP=(0:inc:360);
LACDataPP=(0:inc:360);
for t=0:inc:360
contador=contador+1;
Theta=t*pi/180;
LBB1 = 10;
LCB1 = 2;
LAD = 15;
LAD1 = 20;
LDD1 = LAD + LAD1;
LED1 = 2;
LEF = 30;
LAE=LAD1-LED1;
LBC=LBB1-LCB1;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)+P)/((LBC*cos(Theta))-H));
if ((LBC*cos(Theta))-H)<0
Phi=pi+Phi;
end
ANEXOS ANEXO B
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
end
% Beta=-acos((LAE*cos(Phi)+(-H-m))/(LEF));
Beta=acos((LAE*cos(Phi)+(-H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)-H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)+P)/sin(Phi))));
end
if Phi*180/pi == 180
LACH=LAC;
LACH=LAC-H;
else
LACH=LAC;
end
ANEXOS ANEXO B
%Definimos el Jacobiano
J=[-LACH*cos(Phi),-sin(Phi),0,0;
-LACH*sin(Phi),cos(Phi),0,0;
LAE*cos(Phi),0,LEF*cos(Beta),-1;
LAE*sin(Phi),0,-LEF*sin(Beta),0];
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(P+LAE*sin(Phi)+LEF*sin(Beta));
%***********************************************************
%***************** VELOCIDAD **************************
%***********************************************************
Inversa=inv(J);
PHIT=[LBC*cos(Theta)*ThetaP;LBC*sin(Theta)*ThetaP;0;0];
%qp=[PhiP,BetaP]=inv(J)*PHIT;
qp=-inv(J)*PHIT;
PhiP=qp(1);
LACP=qp(2);
BetaP=qp(3);
RBFxP=qp(4);
ANEXOS ANEXO B
RBB1xP=-LBB1*cos(Theta)*ThetaP;
RBB1yP=-(LBB1)*sin(Theta)*ThetaP;
RBCxP=-(LBB1-LCB1)*cos(Theta)*ThetaP;
RBCyP=-(LBB1-LCB1)*sin(Theta)*ThetaP;
RACxP=-LACP*sin(Phi)-(LAC*cos(Phi)*PhiP);
RACyP=LACP*cos(Phi)-(LAC*sin(Phi)*PhiP);
RADxP=-LAD*cos(Phi)*PhiP;
RADyP=-LAD*sin(Phi)*PhiP;
RAD1xP=LAD1*cos(Phi)*PhiP;
RAD1yP=LAD1*sin(Phi)*PhiP;
RAExP=LAE*cos(Phi)*PhiP;
RAEyP=LAE*sin(Phi)*PhiP;
REFxP=LEF*cos(Beta)*BetaP;
REFyP=-LEF*sin(Beta)*BetaP;
% RBFxP=+LAE*cos(Phi)*PhiP+LEF*cos(Beta)*BetaP;
%***********************************************************
%***************** ACELERACION ************************
%***********************************************************
%Definimos la matriz JP
JP=[(LAC*sin(Phi)*PhiP)-LACP*cos(Phi),-cos(Phi)*PhiP,0,0;
-LAC*cos(Phi)*PhiP-LACP*sin(Phi),-sin(Phi)*PhiP,0,0;
-LAE*sin(Phi)*PhiP,0,-LEF*sin(Beta)*BetaP,0;
LAE*cos(Phi)*PhiP,0,-LEF*cos(Beta)*BetaP,0];
qpp=-inv(J)*(JP*[PhiP;LACP;BetaP;RBFxP]+PHITP);
%qpp=-inv(J)*(JP*[PhiP;BetaP]+PHITP);
PhiPP=qpp(1);
LACPP=qpp(2);
BetaPP=qpp(3);
RBFxPP=qpp(4);
ANEXOS ANEXO B
RBB1xPP=-(LBB1*cos(Theta)*ThetaPP)+(LBB1*sin(Theta)*ThetaP^2);
RBB1yPP=(-(LBB1)*sin(Theta)*ThetaPP)-(LBB1*cos(Theta)*ThetaP^2);
RBCxPP=(-(LBB1-LCB1)*cos(Theta)*ThetaPP)+(LBC*sin(Theta)*ThetaP^2);
RBCyPP=(-(LBB1-LCB1)*sin(Theta)*ThetaPP)-(LBC*cos(Theta)*ThetaP^2);
RACxPP=-(LACPP*sin(Phi))-(LACP*cos(Phi)*PhiP)-(LACP*cos(Phi)*PhiP)-
(LAC*cos(Phi)*PhiPP)+(LAC*sin(Phi)*PhiP^2);
RACyPP=(LACPP*cos(Phi))-(LACP*sin(Phi)*PhiP)-(LACP*sin(Phi)*PhiP)-
(LAC*sin(Phi)*PhiPP)-(LAC*cos(Phi)*PhiP^2);
RADxPP=-(LAD*cos(Phi)*PhiPP)+(LAD*sin(Phi)*PhiP^2);
RADyPP=(-LAD*sin(Phi)*PhiPP)-(LAD*cos(Phi)*PhiP^2);
RAD1xPP=(LAD1*cos(Phi)*PhiPP)-(LAD1*sin(Phi)*PhiP^2);
RAD1yPP=(LAD1*sin(Phi)*PhiPP)+(LAD1*cos(Phi)*PhiP^2);
RAExPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2);
RAEyPP=(LAE*sin(Phi)*PhiPP)+(LAE*cos(Phi)*PhiP^2);
REFxPP=(LEF*cos(Beta)*BetaPP)-(LEF*sin(Beta)*BetaP^2);
REFyPP=(-LEF*sin(Beta)*BetaPP)-(LEF*cos(Beta)*BetaP^2);
% RBFxPP=(LAE*cos(Phi)*PhiPP)-
(LAE*sin(Phi)*PhiP^2)+(LEF*cos(Beta)*BetaPP)-(LEF*sin(Beta)*BetaP^2);
%***********************************************************
%***************** IMPRESIONES ************************
%***********************************************************
fprintf('i= %g \n',contador);
fprintf('Theta(Deg)= %g \n',t);
fprintf('Phi= %g \n',Phi*180/pi);
fprintf('Beta= %g \n',Beta*180/pi);
% fprintf('LAC= %g \n',LAC);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('PhiP= %g \n',PhiP*180/pi);
% fprintf('BetaP= %g \n',BetaP*180/pi);
% fprintf('LACP= %g \n',LACP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('PhiPP= %g \n',PhiPP);
% fprintf('BetaPP= %g \n',BetaPP);
fprintf('\n\n');
%***********************************************************
%************ RECOPILACIN DE DATOS ********************
%***********************************************************
ThetaData(t+1)=(Theta)*180/pi;
PhiData(t+1)=(Phi)*180/pi;
BetaData(t+1)=(Beta)*180/pi;
RBFxData(t+1)=RBFx;
LACData(t+1)=LAC+PhiData(t+1);
PhiDataP(t+1)=(PhiP)*180/pi;
BetaDataP(t+1)=(BetaP)*180/pi;
RBFxDataP(t+1)=RBFxP;
ANEXOS ANEXO B
LACDataP(t+1)=LACP+PhiDataP(t+1);
PhiDataPP(t+1)=(PhiPP)*180/pi;
BetaDataPP(t+1)=(BetaPP)*180/pi;
RBFxDataPP(t+1)=RBFxPP;
LACDataPP(t+1)=LACPP+PhiDataPP(t+1);
%***********************************************************
%************ MECANISMO EN MOVIMIENTO ******************
%***********************************************************
pause(0.1);
end
close all;
ANEXOS ANEXO B
%***********************************************************
%************ GRAFICAS DE LAS VARIABLES ******************
%************ CON RESPECTO A THETA ******************
%***********************************************************
for i=0:inc:360
% plot(ThetaData(i+1),PhiData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACData(i+1),'b-o','LineWidth',0.5)
%
% plot(ThetaData(i+1),PhiDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataP(i+1),'b-o','LineWidth',0.5)
%
% plot(ThetaData(i+1),PhiDataPP(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataPP(i+1),'b-o','LineWidth',0.5)
plot(ThetaData(i+1),LACDataPP(i+1),'b-o','LineWidth',0.5)
hold on
end
ANEXOS ANEXO C
ANEXO C
En este ANEXO se incluyen 2 archivos:
Cinematica_Matlab_2.m (MATLAB)
Cinematica Whitworth.wm2d (Working Model)
Cinemtica_Matlab_2.m
contador=0;
inc=10;
% Los siguientes vectores, se definen, puesto que van a guardar cada uno
de
% las variables deseadas para grficar.
ThetaData=(0:inc:360);
PhiData=(0:inc:360);
BetaData=(0:inc:360);
RBFxData=(0:inc:360);
LACData=(0:inc:360);
PhiDataP=(0:inc:360);
BetaDataP=(0:inc:360);
RBFxDataP=(0:inc:360);
LACDataP=(0:inc:360);
ANEXOS ANEXO C
PhiDataPP=(0:inc:360);
BetaDataPP=(0:inc:360);
RBFxDataPP=(0:inc:360);
LACDataPP=(0:inc:360);
for t=0:inc:360
contador=contador+1;
Theta=t*pi/180;
LBB1 = 10;
LCB1 = 2;
LAD = 15;
LAD1 = 20;
LDD1 = LAD + LAD1;
LED1 = 2;
LEF = 30;
LAE=LAD1-LED1;
LBC=LBB1-LCB1;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
ANEXOS ANEXO C
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
%Definimos el Jacobiano
J=[-LBC*cos(Phi-Theta)-H*cos(Phi)+P*sin(Phi),0;
LAE*sin(Phi),-LEF*sin(Beta)];
ANEXOS ANEXO C
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%***************** VELOCIDAD **************************
%***********************************************************
PHIT=[LBC*cos(Phi-Theta)*ThetaP;0];
%qp=[PhiP,BetaP]=inv(J)*PHIT;
Inversa=inv(J);
qp=-inv(J)*PHIT;
PhiP=qp(1);
BetaP=qp(2);
% PhiP=((LBC*cos(Phi-Theta))*ThetaP)/((LBC*cos(Phi-Theta))+H*cos(Phi)-
P*sin(Phi));
% BetaP=(LAE*sin(Phi)*PhiP)/(LEF*sin(Beta));
ANEXOS ANEXO C
% Calculamos LACP, pero hay dos ecuaciones que tenemos que distinguir
LACP=((-
LBC*sin(Theta)*ThetaP)/cos(Phi))+(((LBC*cos(Theta)+H)*sin(Phi)*PhiP)/((co
s(Phi))^2));
else
LACP=((LBC*cos(Theta)*ThetaP)/sin(Phi))-(((LBC*sin(Theta)-
P)*cos(Phi)*PhiP)/((sin(Phi))^2));
end
RBB1xP=LBB1*cos(Theta)*ThetaP;
RBB1yP=-(LBB1)*sin(Theta)*ThetaP;
RBCxP=(LBB1-LCB1)*cos(Theta)*ThetaP;
RBCyP=-(LBB1-LCB1)*sin(Theta)*ThetaP;
RACxP=LACP*sin(Phi)+(LAC*cos(Phi)*PhiP);
RACyP=LACP*cos(Phi)-(LAC*sin(Phi)*PhiP);
RADxP=LAD*cos(Phi)*PhiP;
RADyP=-LAD*sin(Phi)*PhiP;
RAD1xP=-LAD1*cos(Phi)*PhiP;
RAD1yP=LAD1*sin(Phi)*PhiP;
RAExP=-LAE*cos(Phi)*PhiP;
RAEyP=LAE*sin(Phi)*PhiP;
REFxP=-LEF*cos(Beta)*BetaP;
REFyP=-LEF*sin(Beta)*BetaP;
RBFxP=LAE*cos(Phi)*PhiP-LEF*cos(Beta)*BetaP;
%***********************************************************
%***************** ACELERACION ************************
%***********************************************************
%Definimos la matriz JP
JP=[(LBC*sin(Phi-Theta)*(PhiP-
ThetaP))+(H*sin(Phi)*PhiP)+P*cos(Phi)*PhiP,0;
LAE*cos(Phi)*PhiP,-LEF*cos(Beta)*BetaP];
qpp=-inv(J)*(JP*[PhiP;BetaP]+PHITP);
PhiPP=qpp(1);
BetaPP=qpp(2);
ANEXOS ANEXO C
%Calculamos LACPP, pero hay dos ecuaciones que tenemos que distinguir
LACPPA1=((-LBC*cos(Theta)*(ThetaP^2))-
(LBC*sin(Theta)*ThetaPP))/cos(Phi);
LACPPA2=(LBC*sin(Theta)*sin(Phi)*ThetaP*PhiP)/((cos(Phi))^2);
LACPPA3=((LBC*sin(Theta)*ThetaP)*(sin(Phi)*PhiP))/((cos(Phi))^2);
LACPPA4=((LBC*cos(Theta)+H)*sin(Phi)*PhiPP)/((cos(Phi))^2);
LACPPA5=((LBC*cos(Theta)+H)*cos(Phi)*PhiP^2)/((cos(Phi))^2);
LACPPA6=(2*(LBC*cos(Theta)+H)*((sin(Phi))^2)*PhiP^2)/((cos(Phi))^3);
LACPP=LACPPA1-LACPPA2-LACPPA3+LACPPA4+LACPPA5+LACPPA6;
else
%LACP=((LBC*cos(Theta)*ThetaP)/sin(Phi))-(((LBC*sin(Theta)-
P)*cos(Phi)*PhiP)/((sin(Phi))^2));
LACPPB1=((LBC*cos(Theta)*ThetaPP)-
(LBC*sin(Theta)*ThetaP^2))/sin(Phi);
LACPPB2=(LBC*cos(Theta)*cos(Phi)*ThetaP*PhiP)/((sin(Phi))^2);
LACPPB3=(LBC*cos(Theta)*cos(Phi)*ThetaP*PhiP)/((sin(Phi))^2);
LACPPB4=((LBC*sin(Theta)-P)*cos(Phi)*PhiPP)/((sin(Phi))^2);
LACPPB5=((LBC*sin(Theta)-P)*sin(Phi)*PhiP^2)/((sin(Phi))^2);
LACPPB6=(2*(LBC*sin(Theta)-P)*((cos(Phi))^2)*PhiP^2)/((sin(Phi))^3);
LACPP=LACPPB1-LACPPB2-LACPPB3-LACPPB4+LACPPB5+LACPPB6;
end
RBB1xPP=(LBB1*cos(Theta)*ThetaPP)-(LBB1*sin(Theta)*ThetaP^2);
RBB1yPP=(-(LBB1)*sin(Theta)*ThetaPP)-(LBB1*cos(Theta)*ThetaP^2);
RBCxPP=((LBB1-LCB1)*cos(Theta)*ThetaPP)-(LBC*sin(Theta)*ThetaP^2);
RBCyPP=(-(LBB1-LCB1)*sin(Theta)*ThetaPP)-(LBC*cos(Theta)*ThetaP^2);
RACxPP=(LACPP*sin(Phi))+(LACP*cos(Phi)*PhiP)+(LACP*cos(Phi)*PhiP)+(LAC*co
s(Phi)*PhiPP)-(LAC*sin(Phi)*PhiP^2);
RACyPP=(LACPP*cos(Phi))-(LACP*sin(Phi)*PhiP)-(LACP*sin(Phi)*PhiP)-
(LAC*sin(Phi)*PhiPP)-(LAC*cos(Phi)*PhiP^2);
RADxPP=(LAD*cos(Phi)*PhiPP)-(LAD*sin(Phi)*PhiP^2);
RADyPP=(-LAD*sin(Phi)*PhiPP)-(LAD*cos(Phi)*PhiP^2);
RAD1xPP=(-LAD1*cos(Phi)*PhiPP)+(LAD1*sin(Phi)*PhiP^2);
RAD1yPP=(LAD1*sin(Phi)*PhiPP)+(LAD1*cos(Phi)*PhiP^2);
RAExPP=(-LAE*cos(Phi)*PhiPP)+(LAE*sin(Phi)*PhiP^2);
RAEyPP=(LAE*sin(Phi)*PhiPP)+(LAE*cos(Phi)*PhiP^2);
REFxPP=(-LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
REFyPP=(-LEF*sin(Beta)*BetaPP)-(LEF*cos(Beta)*BetaP^2);
ANEXOS ANEXO C
RBFxPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2)-
(LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
%***********************************************************
%***************** IMPRESIONES ************************
%***********************************************************
fprintf('i= %g \n',contador);
fprintf('Theta(Deg)= %g \n',t);
fprintf('Phi= %g \n',Phi*180/pi);
fprintf('Beta= %g \n',Beta*180/pi);
fprintf('LAC= %g \n',LAC);
fprintf('RBFx= %g \n',RBFx);
fprintf('ThetaP= %g \n',ThetaP);
fprintf('PhiP= %g \n',PhiP);
% fprintf('BetaP= %g \n',BetaP*180/pi);
% fprintf('RBFxP= %g \n',RBFxP);
fprintf('LACP= %g \n',LACP);
% fprintf('Beta= %g \n',Beta*180/pi);
% fprintf('LAC= %g \n',LAC);
fprintf('ThetaPP= %g \n',ThetaPP);
fprintf('PhiPP= %g \n',PhiPP);
fprintf('LACPP= %g \n',LACPP);
% fprintf('BetaP= %g \n',BetaP*180/pi);
% fprintf('LACP= %g \n',LACP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('PhiPP= %g \n',PhiPP);
% fprintf('BetaPP= %g \n',BetaPP);
fprintf('\n\n');
%***********************************************************
%************ RECOPILACIN DE DATOS ********************
%***********************************************************
ThetaData(t+1)=(Theta)*180/pi;
PhiData(t+1)=(Phi)*180/pi;
BetaData(t+1)=(Beta)*180/pi;
RBFxData(t+1)=RBFx;
LACData(t+1)=LAC+PhiData(t+1);
PhiDataP(t+1)=(PhiP)*180/pi;
BetaDataP(t+1)=(BetaP)*180/pi;
RBFxDataP(t+1)=RBFxP;
LACDataP(t+1)=LACP+PhiDataP(t+1);
PhiDataPP(t+1)=(PhiPP)*180/pi;
BetaDataPP(t+1)=(BetaPP)*180/pi;
RBFxDataPP(t+1)=RBFxPP;
LACDataPP(t+1)=LACPP+PhiDataPP(t+1);
ANEXOS ANEXO C
%***********************************************************
%************ MECANISMO EN MOVIMIENTO ******************
%***********************************************************
hold off
pause(0.1);
end
close all;
%***********************************************************
%************ GRAFICAS DE LAS VARIABLES ******************
%************ CON RESPECTO A THETA ******************
%***********************************************************
for i=0:inc:360
% fprintf('i= %g \n',i);
% fprintf('ThetaData(i)= %g \n',ThetaData(i+1));
% fprintf('PhiData(i)= %g \n',PhiData(i+1));
% fprintf('BetaData(i)= %g \n',BetaData(i+1));
% fprintf('\n \n');
% plot(ThetaData(i+1),PhiData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACData(i+1),'b-o','LineWidth',0.5)
plot(ThetaData(i+1),PhiDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),PhiDataPP(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataPP(i+1),'b-o','LineWidth',0.5)
hold on
end
ANEXOS ANEXO C
ANEXOS ANEXO D
ANEXO D
En este ANEXO se incluyen 2 archivos:
Cinematica_CG_4.m (MATLAB)
Cinematica CG.wm2d (Working Model)
Cinemtica_CG_4.m
contador=0;
inc=10;
% Los siguientes vectores, se definen, puesto que van a guardar cada uno
de
% las variables deseadas para grficar.
ThetaData=(0:inc:360);
PhiData=(0:inc:360);
BetaData=(0:inc:360);
RBFxData=(0:inc:360);
LACData=(0:inc:360);
ANEXOS ANEXO D
PhiDataP=(0:inc:360);
BetaDataP=(0:inc:360);
RBFxDataP=(0:inc:360);
LACDataP=(0:inc:360);
PhiDataPP=(0:inc:360);
BetaDataPP=(0:inc:360);
RBFxDataPP=(0:inc:360);
LACDataPP=(0:inc:360);
RBB1CMxData=(0:inc:360);
RBB1CMyData=(0:inc:360);
RBB1CMxDataP=(0:inc:360);
RBB1CMyDataP=(0:inc:360);
RBB1CMxDataPP=(0:inc:360);
RBB1CMyDataPP=(0:inc:360);
RDD1CMxData=(0:inc:360);
RDD1CMyData=(0:inc:360);
RDD1CMxDataP=(0:inc:360);
RDD1CMyDataP=(0:inc:360);
RDD1CMxDataPP=(0:inc:360);
RDD1CMyDataPP=(0:inc:360);
REFCMxData=(0:inc:360);
REFCMyData=(0:inc:360);
REFCMxDataP=(0:inc:360);
REFCMyDataP=(0:inc:360);
REFCMxDataPP=(0:inc:360);
REFCMyDataPP=(0:inc:360);
RFCMxData=(0:inc:360);
RFCMyData=(0:inc:360);
RFCMxDataP=(0:inc:360);
RFCMyDataP=(0:inc:360);
RFCMxDataPP=(0:inc:360);
RFCMyDataPP=(0:inc:360);
RCCMxData=(0:inc:360);
RCCMyData=(0:inc:360);
RCCMxDataP=(0:inc:360);
RCCMyDataP=(0:inc:360);
RCCMxDataPP=(0:inc:360);
RCCMyDataPP=(0:inc:360);
ANEXOS ANEXO D
for t=0:inc:360
contador=contador+1;
Theta=t*pi/180;
LBB1 = 10;
LCB1 = 2;
LAD = 15;
LAD1 = 20;
LDD1 = LAD + LAD1;
LED1 = 2;
LEF = 30;
LAE=LAD1-LED1;
LBC=LBB1-LCB1;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
ANEXOS ANEXO D
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
%Definimos el Jacobiano
J=[-LACH*cos(Phi),-sin(Phi),0,0;
-LACH*sin(Phi),cos(Phi),0,0;
LAE*cos(Phi),0,-LEF*cos(Beta),-1;
LAE*sin(Phi),0,-LEF*sin(Beta),0];
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%***************** VELOCIDAD **************************
%***********************************************************
Inversa=inv(J);
PHIT=[LBC*cos(Theta)*ThetaP;LBC*sin(Theta)*ThetaP;0;0];
%qp=[PhiP,BetaP]=inv(J)*PHIT;
qp=-inv(J)*PHIT;
PhiP=qp(1);
LACP=qp(2);
BetaP=qp(3);
RBFxP=qp(4);
RBB1xP=-LBB1*cos(Theta)*ThetaP;
RBB1yP=-(LBB1)*sin(Theta)*ThetaP;
RBCxP=-(LBB1-LCB1)*cos(Theta)*ThetaP;
RBCyP=-(LBB1-LCB1)*sin(Theta)*ThetaP;
RACxP=-LACP*sin(Phi)-(LAC*cos(Phi)*PhiP);
RACyP=LACP*cos(Phi)-(LAC*sin(Phi)*PhiP);
RADxP=-LAD*cos(Phi)*PhiP;
RADyP=-LAD*sin(Phi)*PhiP;
RAD1xP=LAD1*cos(Phi)*PhiP;
RAD1yP=LAD1*sin(Phi)*PhiP;
RAExP=LAE*cos(Phi)*PhiP;
RAEyP=LAE*sin(Phi)*PhiP;
REFxP=-LEF*cos(Beta)*BetaP;
REFyP=-LEF*sin(Beta)*BetaP;
% RBFxP=+LAE*cos(Phi)*PhiP-LEF*cos(Beta)*BetaP;
ANEXOS ANEXO D
%***********************************************************
%***************** ACELERACION ************************
%***********************************************************
%Definimos la matriz JP
JP=[(LACH*sin(Phi)*PhiP)-LACP*cos(Phi),-cos(Phi)*PhiP,0,0;
-LACH*cos(Phi)*PhiP-LACP*sin(Phi),-sin(Phi)*PhiP,0,0;
-LAE*sin(Phi)*PhiP,0,LEF*sin(Beta)*BetaP,0;
LAE*cos(Phi)*PhiP,0,-LEF*cos(Beta)*BetaP,0];
ANEXOS ANEXO D
qpp=-inv(J)*(JP*[PhiP;LACP;BetaP;RBFxP]+PHITP);
%qpp=-inv(J)*(JP*[PhiP;BetaP]+PHITP);
PhiPP=qpp(1);
LACPP=qpp(2);
BetaPP=qpp(3);
RBFxPP=qpp(4);
RBB1xPP=-(LBB1*cos(Theta)*ThetaPP)+(LBB1*sin(Theta)*ThetaP^2);
RBB1yPP=(-(LBB1)*sin(Theta)*ThetaPP)-(LBB1*cos(Theta)*ThetaP^2);
RBCxPP=(-(LBB1-LCB1)*cos(Theta)*ThetaPP)+(LBC*sin(Theta)*ThetaP^2);
RBCyPP=(-(LBB1-LCB1)*sin(Theta)*ThetaPP)-(LBC*cos(Theta)*ThetaP^2);
RACxPP=-(LACPP*sin(Phi))-(LACP*cos(Phi)*PhiP)-(LACP*cos(Phi)*PhiP)-
(LAC*cos(Phi)*PhiPP)+(LAC*sin(Phi)*PhiP^2);
RACyPP=(LACPP*cos(Phi))-(LACP*sin(Phi)*PhiP)-(LACP*sin(Phi)*PhiP)-
(LAC*sin(Phi)*PhiPP)-(LAC*cos(Phi)*PhiP^2);
RADxPP=-(LAD*cos(Phi)*PhiPP)+(LAD*sin(Phi)*PhiP^2);
RADyPP=(-LAD*sin(Phi)*PhiPP)-(LAD*cos(Phi)*PhiP^2);
RAD1xPP=(LAD1*cos(Phi)*PhiPP)-(LAD1*sin(Phi)*PhiP^2);
RAD1yPP=(LAD1*sin(Phi)*PhiPP)+(LAD1*cos(Phi)*PhiP^2);
RAExPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2);
RAEyPP=(LAE*sin(Phi)*PhiPP)+(LAE*cos(Phi)*PhiP^2);
REFxPP=(-LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
REFyPP=(-LEF*sin(Beta)*BetaPP)-(LEF*cos(Beta)*BetaP^2);
% RBFxPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2)-
(LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=(LBC/LACH)*cos(Phi-Theta);
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
KRBFx=(LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta);
InversaJ=inv(J);
KPHIT=[LBC*cos(Theta);LBC*sin(Theta);0;0];
Kq=-inv(J)*KPHIT;
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
LPhi=((-LBC/LACH)*sin(Phi-Theta)*(PhiP-ThetaP))-((LACP*KPhi)/LACH);
LLAC=((LACH*sin(Phi)*LPhi)+((LACP*sin(Phi)+LACH*cos(Phi)*PhiP)*KPhi)+(sin
(Phi)*PhiP*KLAC)+(-LBC*cos(Theta)*ThetaP))/cos(Phi);
else
LLAC=((-LACH*cos(Phi)*LPhi)+((-
LACP*cos(Phi)+LACH*sin(Phi)*PhiP)*KPhi)+(-cos(Phi)*PhiP*KLAC)+(-
LBC*sin(Theta)*ThetaP))/sin(Phi);
end
LBeta=((LAE*sin(Phi)*LPhi)+(LAE*cos(Phi)*PhiP*KPhi)+(-
LEF*cos(Beta)*BetaP*KBeta))/(LEF*sin(Beta));
LRBFx=(LAE*cos(Phi)*LPhi)+(-LEF*cos(Beta)*LBeta)+(-
LAE*sin(Phi)*PhiP*KPhi)+(LEF*sin(Beta)*BetaP*KBeta);
ANEXOS ANEXO D
KPHITP=[-LBC*sin(Theta)*ThetaP;LBC*cos(Theta)*ThetaP;0;0];
Lq=-inv(J)*((JP*Kq)+(KPHITP));
%***********************************************************
%************** OBTENCIN DE THETAPP Pos1*****************
%***********************************************************
% (((J*Lq)+KPHIT)*ThetaPP)+(((JP*Kq)+KPHITP)*ThetaP)=0;
% Sigue estando confuso.
% ThtINVEL1=((JP*Kq)+KPHITP)*ThetaP;
% ThtINVEL2=((J*Lq)+KPHIT );
%
% ThetaPPINV1=-ThtINVEL1((1))/ThtINVEL2((1));
% ThetaPPINV2=-ThtINVEL1((2))/ThtINVEL2((2));
% ThetaPPINV3=-ThtINVEL1((3))/ThtINVEL2((3));
% ThetaPPINV4=-ThtINVEL1((4))/ThtINVEL2((4));
% ThetaPPINV=[ThetaPPINV1;ThetaPPINV2;ThetaPPINV3;ThetaPPINV4];
%***********************************************************
%************** OBTENCIN DE THETAPP Pos2*****************
%***********************************************************
% ((J*Kq)+KPHIT)*ThetaPP+((JP*Kq)+(J*Lq)+KPHITP)*ThetaP=0;
% Sigue estando confuso.
% ThtINVEL1=((JP*Kq)+(J*Lq)+KPHITP)*ThetaP;
% ThtINVEL2=((J*Kq)+KPHIT);
%
% ThetaPPINV1=-ThtINVEL1((1))/ThtINVEL2((1));
% ThetaPPINV2=-ThtINVEL1((2))/ThtINVEL2((2));
% ThetaPPINV3=-ThtINVEL1((3))/ThtINVEL2((3));
% ThetaPPINV4=-ThtINVEL1((4))/ThtINVEL2((4));
%
% ThetaPPINV=[ThetaPPINV1;ThetaPPINV2;ThetaPPINV3;ThetaPPINV4];
%***********************************************************
%************ Definicin de QP y QPP ********************
%***********************************************************
% QP=[PhiP,LACP,BetaP,RBFxP];
% QPP=[PhiPP,LACPP,BetaPP,RBFxPP];
QP=Kq*ThetaP;
QPP=Kq*ThetaPP+Lq*ThetaP;
ANEXOS ANEXO D
%***********************************************************
%******** OBTENCIN DE THETAP MEDIANTE QP *************
%***********************************************************
% ThetaPINV=(Kq'/QP')';
ThtP1=QP((1))/Kq((1));
ThtP2=QP((2))/Kq((2));
ThtP3=QP((3))/Kq((3));
ThtP4=QP((4))/Kq((4));
ThtP=[ThtP1;ThtP2;ThtP3;ThtP4];
% ThetaPINV=(QP/Kq);
%***********************************************************
%******* OBTENCIN DE THETAP MEDIANTE QPP *************
%***********************************************************
% QPP=Kq*ThetaPP+Lq*ThetaP;
ThtPP1=(QPP((1))-Lq((1))*ThetaP)/Kq((1));
ThtPP2=(QPP((2))-Lq((2))*ThetaP)/Kq((2));
ThtPP3=(QPP((3))-Lq((3))*ThetaP)/Kq((3));
ThtPP4=(QPP((4))-Lq((4))*ThetaP)/Kq((4));
ThtPP=[ThtPP1;ThtPP2;ThtPP3;ThtPP4];
%***********************************************************
%***************** IMPRESIONES ************************
%***********************************************************
fprintf('i= %g \n',contador);
fprintf('Theta(Deg)= %g \n',t);
% fprintf('Phi= %g \n',Phi*180/pi);
% fprintf('Beta= %g \n',Beta*180/pi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('PhiP= %g \n',PhiP);
% fprintf('LACP= %g \n',LACP);
% fprintf('BetaP= %g \n',BetaP);
% fprintf('RBFxP= %g \n',RBFxP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('PhiPP= %g \n',PhiPP);
% fprintf('LACPP= %g \n',LACPP);
% fprintf('BetaPP= %g \n',BetaPP);
% fprintf('RBFxPP= %g \n',RBFxPP);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('ThtP= %g \n',ThtP);
% fprintf('ThtPP= %g \n',ThtPP);
% fprintf('RBB1CMx= %g \n',RBB1CMx);
ANEXOS ANEXO D
% fprintf('RBB1CMy= %g \n',RBB1CMy);
% fprintf('RDD1CMx= %g \n',RDD1CMx);
% fprintf('RDD1CMy= %g \n',RDD1CMy);
% fprintf('RCCMx= %g \n',RCCMx);
% fprintf('RCCMy= %g \n',RCCMy);
fprintf('REFCMxP= %g \n',REFCMxP);
fprintf('REFCMyP= %g \n',REFCMyP);
fprintf('\n\n');
%***********************************************************
%************ RECOPILACIN DE DATOS ********************
%***********************************************************
ThetaData(t+1)=(Theta)*180/pi;
PhiData(t+1)=(Phi)*180/pi;
BetaData(t+1)=(Beta)*180/pi;
RBFxData(t+1)=RBFx;
LACData(t+1)=LAC+PhiData(t+1);
PhiDataP(t+1)=(PhiP)*180/pi;
BetaDataP(t+1)=(BetaP)*180/pi;
RBFxDataP(t+1)=RBFxP;
LACDataP(t+1)=LACP+PhiDataP(t+1);
PhiDataPP(t+1)=(PhiPP)*180/pi;
BetaDataPP(t+1)=(BetaPP)*180/pi;
RBFxDataPP(t+1)=RBFxPP;
LACDataPP(t+1)=LACPP+PhiDataPP(t+1);
RBB1CMxData(t+1)=RBB1CMx;
RBB1CMyData(t+1)=RBB1CMy;
RBB1CMxDataP(t+1)=RBB1CMxP;
RBB1CMyDataP(t+1)=RBB1CMyP;
RBB1CMxDataPP(t+1)=RBB1CMxPP;
RBB1CMyDataPP(t+1)=RBB1CMyPP;
RDD1CMxData(t+1)=RDD1CMx;
RDD1CMyData(t+1)=RDD1CMy;
RDD1CMxDataP(t+1)=RDD1CMxP;
RDD1CMyDataP(t+1)=RDD1CMyP;
RDD1CMxDataPP(t+1)=RDD1CMxPP;
RDD1CMyDataPP(t+1)=RDD1CMyPP;
REFCMxData(t+1)=REFCMx;
REFCMyData(t+1)=REFCMy;
REFCMxDataP(t+1)=REFCMxP;
REFCMyDataP(t+1)=REFCMyP;
REFCMxDataPP(t+1)=REFCMxPP;
REFCMyDataPP(t+1)=REFCMyPP;
ANEXOS ANEXO D
RFCMxData(t+1)=RFCMx;
RFCMyData(t+1)=RFCMy;
RFCMxDataP(t+1)=RFCMxP;
RFCMyDataP(t+1)=RFCMyP;
RFCMxDataPP(t+1)=RFCMxPP;
RFCMyDataPP(t+1)=RFCMyPP;
RCCMxData(t+1)=RCCMx;
RCCMyData(t+1)=RCCMy;
RCCMxDataP(t+1)=RCCMxP;
RCCMyDataP(t+1)=RCCMyP;
RCCMxDataPP(t+1)=RCCMxPP;
RCCMyDataPP(t+1)=RCCMyPP;
%***********************************************************
%************ MECANISMO EN MOVIMIENTO ******************
%***********************************************************
pause(0.1);
end
close all;
ANEXOS ANEXO D
%***********************************************************
%************ GRAFICAS DE LAS VARIABLES ******************
%************ CON RESPECTO A THETA ******************
%***********************************************************
for i=0:inc:360
% plot(ThetaData(i+1),PhiData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACData(i+1),'b-o','LineWidth',0.5)
%
% plot(ThetaData(i+1),PhiDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataP(i+1),'b-o','LineWidth',0.5)
%
% plot(ThetaData(i+1),PhiDataPP(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyDataPP(i+1),'r-o','LineWidth',0.5)
plot(ThetaData(i+1),REFCMxData(i+1),'b-o','LineWidth',0.5)
plot(ThetaData(i+1),REFCMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMyDataPP(i+1),'r-o','LineWidth',0.5)
ANEXOS ANEXO D
% plot(ThetaData(i+1),RFCMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyDataPP(i+1),'r-o','LineWidth',0.5)
hold on
end
ANEXOS ANEXO D
ANEXOS ANEXO E
ANEXO E
En este ANEXO se incluyen 2 archivos:
Cinematica_CG_2.m (MATLAB)
Cinematica CG.wm2d (Working Model)
Cinemtica_CG_2.m
contador=0;
inc=10;
% Los siguientes vectores, se definen, puesto que van a guardar cada uno
de
% las variables deseadas para grficar.
ThetaData=(0:inc:360);
PhiData=(0:inc:360);
BetaData=(0:inc:360);
RBFxData=(0:inc:360);
LACData=(0:inc:360);
PhiDataP=(0:inc:360);
BetaDataP=(0:inc:360);
RBFxDataP=(0:inc:360);
LACDataP=(0:inc:360);
ANEXOS ANEXO E
PhiDataPP=(0:inc:360);
BetaDataPP=(0:inc:360);
RBFxDataPP=(0:inc:360);
LACDataPP=(0:inc:360);
RBB1CMxData=(0:inc:360);
RBB1CMyData=(0:inc:360);
RBB1CMxDataP=(0:inc:360);
RBB1CMyDataP=(0:inc:360);
RBB1CMxDataPP=(0:inc:360);
RBB1CMyDataPP=(0:inc:360);
RDD1CMxData=(0:inc:360);
RDD1CMyData=(0:inc:360);
RDD1CMxDataP=(0:inc:360);
RDD1CMyDataP=(0:inc:360);
RDD1CMxDataPP=(0:inc:360);
RDD1CMyDataPP=(0:inc:360);
REFCMxData=(0:inc:360);
REFCMyData=(0:inc:360);
REFCMxDataP=(0:inc:360);
REFCMyDataP=(0:inc:360);
REFCMxDataPP=(0:inc:360);
REFCMyDataPP=(0:inc:360);
RFCMxData=(0:inc:360);
RFCMyData=(0:inc:360);
RFCMxDataP=(0:inc:360);
RFCMyDataP=(0:inc:360);
RFCMxDataPP=(0:inc:360);
RFCMyDataPP=(0:inc:360);
RCCMxData=(0:inc:360);
RCCMyData=(0:inc:360);
RCCMxDataP=(0:inc:360);
RCCMyDataP=(0:inc:360);
RCCMxDataPP=(0:inc:360);
RCCMyDataPP=(0:inc:360);
ANEXOS ANEXO E
for t=0:inc:360
contador=contador+1;
Theta=t*pi/180;
LBB1 = 10;
LCB1 = 2;
LAD = 15;
LAD1 = 20;
LDD1 = LAD + LAD1;
LED1 = 2;
LEF = 30;
LAE=LAD1-LED1;
LBC=LBB1-LCB1;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
ANEXOS ANEXO E
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
%NOTA: Para calcular la componente y, es necesario restar H
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
%Definimos el Jacobiano
J=[-LBC*cos(Phi-Theta)-H*cos(Phi)+P*sin(Phi),0;
LAE*sin(Phi),-LEF*sin(Beta)];
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%***************** VELOCIDAD **************************
%***********************************************************
PHIT=[LBC*cos(Phi-Theta)*ThetaP;0];
%qp=[PhiP,BetaP]=inv(J)*PHIT;
Inversa=inv(J);
qp=-inv(J)*PHIT;
PhiP=qp(1);
BetaP=qp(2);
% Calculamos LACP, pero hay dos ecuaciones que tenemos que distinguir
LACP=((-
LBC*sin(Theta)*ThetaP)/cos(Phi))+(((LBC*cos(Theta)+H)*sin(Phi)*PhiP)/((co
s(Phi))^2));
else
LACP=((LBC*cos(Theta)*ThetaP)/sin(Phi))-(((LBC*sin(Theta)-
P)*cos(Phi)*PhiP)/((sin(Phi))^2));
end
RBB1xP=-LBB1*cos(Theta)*ThetaP;
RBB1yP=-(LBB1)*sin(Theta)*ThetaP;
RBCxP=-(LBB1-LCB1)*cos(Theta)*ThetaP;
RBCyP=-(LBB1-LCB1)*sin(Theta)*ThetaP;
RACxP=-LACP*sin(Phi)-(LAC*cos(Phi)*PhiP);
RACyP=LACP*cos(Phi)-(LAC*sin(Phi)*PhiP);
RADxP=-LAD*cos(Phi)*PhiP;
RADyP=-LAD*sin(Phi)*PhiP;
RAD1xP=LAD1*cos(Phi)*PhiP;
ANEXOS ANEXO E
RAD1yP=LAD1*sin(Phi)*PhiP;
RAExP=LAE*cos(Phi)*PhiP;
RAEyP=LAE*sin(Phi)*PhiP;
REFxP=-LEF*cos(Beta)*BetaP;
REFyP=-LEF*sin(Beta)*BetaP;
RBFxP=LAE*cos(Phi)*PhiP-LEF*cos(Beta)*BetaP;
%***********************************************************
%***************** ACELERACION ************************
%***********************************************************
PHITP=[(LBC*cos(Phi-Theta)*ThetaPP)-LBC*sin(Phi-Theta)*(PhiP-
ThetaP)*ThetaP;0];
ANEXOS ANEXO E
%Definimos la matriz JP
JP=[(LBC*sin(Phi-Theta)*(PhiP-
ThetaP))+(H*sin(Phi)*PhiP)+P*cos(Phi)*PhiP,0;
LAE*cos(Phi)*PhiP,-LEF*cos(Beta)*BetaP];
% JP=[(-(LBC*sin(Theta)+P)*cos(Phi)*PhiP)-
(LBC*cos(Theta)*ThetaP*sin(Phi))+((LBC*cos(Theta)+H)*sin(Phi)*PhiP)+(LBC*
sin(Theta)*ThetaP*cos(Phi)),0;
% (LAE*cos(Phi)*PhiP),-LEF*cos(Beta)*BetaP];
qpp=-inv(J)*(JP*[PhiP;BetaP]+PHITP);
PhiPP=qpp(1);
BetaPP=qpp(2);
%Calculamos LACPP, pero hay dos ecuaciones que tenemos que distinguir
LACPPA1=((-LBC*cos(Theta)*(ThetaP^2))-
(LBC*sin(Theta)*ThetaPP))/cos(Phi);
LACPPA2=(LBC*sin(Theta)*sin(Phi)*ThetaP*PhiP)/((cos(Phi))^2);
LACPPA3=((LBC*sin(Theta)*ThetaP)*(sin(Phi)*PhiP))/((cos(Phi))^2);
LACPPA4=((LBC*cos(Theta)+H)*sin(Phi)*PhiPP)/((cos(Phi))^2);
LACPPA5=((LBC*cos(Theta)+H)*cos(Phi)*PhiP^2)/((cos(Phi))^2);
LACPPA6=(2*(LBC*cos(Theta)+H)*((sin(Phi))^2)*PhiP^2)/((cos(Phi))^3);
LACPP=LACPPA1-LACPPA2-LACPPA3+LACPPA4+LACPPA5+LACPPA6;
else
LACPPB1=((LBC*cos(Theta)*ThetaPP)-
(LBC*sin(Theta)*ThetaP^2))/sin(Phi);
LACPPB2=(LBC*cos(Theta)*cos(Phi)*ThetaP*PhiP)/((sin(Phi))^2);
LACPPB3=(LBC*cos(Theta)*cos(Phi)*ThetaP*PhiP)/((sin(Phi))^2);
LACPPB4=((LBC*sin(Theta)-P)*cos(Phi)*PhiPP)/((sin(Phi))^2);
LACPPB5=((LBC*sin(Theta)-P)*sin(Phi)*PhiP^2)/((sin(Phi))^2);
LACPPB6=(2*(LBC*sin(Theta)-P)*((cos(Phi))^2)*PhiP^2)/((sin(Phi))^3);
LACPP=LACPPB1-LACPPB2-LACPPB3-LACPPB4+LACPPB5+LACPPB6;
end
ANEXOS ANEXO E
RBB1xPP=-(LBB1*cos(Theta)*ThetaPP)+(LBB1*sin(Theta)*ThetaP^2);
RBB1yPP=(-(LBB1)*sin(Theta)*ThetaPP)-(LBB1*cos(Theta)*ThetaP^2);
RBCxPP=(-(LBB1-LCB1)*cos(Theta)*ThetaPP)+(LBC*sin(Theta)*ThetaP^2);
RBCyPP=(-(LBB1-LCB1)*sin(Theta)*ThetaPP)-(LBC*cos(Theta)*ThetaP^2);
RACxPP=-(LACPP*sin(Phi))-(LACP*cos(Phi)*PhiP)-(LACP*cos(Phi)*PhiP)-
(LAC*cos(Phi)*PhiPP)+(LAC*sin(Phi)*PhiP^2);
RACyPP=(LACPP*cos(Phi))-(LACP*sin(Phi)*PhiP)-(LACP*sin(Phi)*PhiP)-
(LAC*sin(Phi)*PhiPP)-(LAC*cos(Phi)*PhiP^2);
RADxPP=-(LAD*cos(Phi)*PhiPP)+(LAD*sin(Phi)*PhiP^2);
RADyPP=(-LAD*sin(Phi)*PhiPP)-(LAD*cos(Phi)*PhiP^2);
RAD1xPP=(LAD1*cos(Phi)*PhiPP)-(LAD1*sin(Phi)*PhiP^2);
RAD1yPP=(LAD1*sin(Phi)*PhiPP)+(LAD1*cos(Phi)*PhiP^2);
RAExPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2);
RAEyPP=(LAE*sin(Phi)*PhiPP)+(LAE*cos(Phi)*PhiP^2);
REFxPP=(-LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
REFyPP=(-LEF*sin(Beta)*BetaPP)-(LEF*cos(Beta)*BetaP^2);
RBFxPP=(LAE*cos(Phi)*PhiPP)-(LAE*sin(Phi)*PhiP^2)-
(LEF*cos(Beta)*BetaPP)+(LEF*sin(Beta)*BetaP^2);
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
%NOTA: tuve que cambiar el signo de KPhi. Tenemos que revisar las
%ecuaciones
KPhi=(LBC*cos(Phi-Theta))/((LBC*cos(Phi-Theta))+(H*cos(Phi))-
(P*sin(Phi)));
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
InversaJ=inv(J);
KPHIT=[-LBC*cos(Phi-Theta);0];
Kq=-inv(J)*KPHIT;
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
%NOTA: tuve que cambiar el signo de LPhi. Tenemos que revisar las
%ecuaciones
LPhi=(((-LBC*sin(Phi-Theta)*(PhiP-ThetaP))*(LBC*cos(Phi-
Theta)+H*cos(Phi)-P*sin(Phi)))-((LBC*cos(Phi-Theta))*(-LBC*sin(Phi-
Theta)*(PhiP-ThetaP)-H*sin(Phi)*PhiP-P*cos(Phi)*PhiP)))/((LBC*cos(Phi-
Theta)+H*cos(Phi)-P*sin(Phi))^2);
LBeta=(((((LAE*sin(Phi))*LPhi)+(LAE*cos(Phi)*PhiP*KPhi))*(LEF*sin(Beta)))
-((LAE*sin(Phi)*KPhi)*(LEF*cos(Beta)*BetaP)))/((LEF*sin(Beta))^2);
KPHITP=[LBC*sin(Phi-Theta)*(PhiP-ThetaP);0];
Lq=-inv(J)*((JP*Kq)+(KPHITP));
ANEXOS ANEXO E
%***********************************************************
%************ Definicin de QP y QPP ********************
%***********************************************************
% QP=[PhiP,LACP,BetaP,RBFxP];
% QPP=[PhiPP,LACPP,BetaPP,RBFxPP];
QP=Kq*ThetaP;
QPP=Kq*ThetaPP+Lq*ThetaP;
%***********************************************************
%******** OBTENCIN DE THETAP MEDIANTE QP *************
%***********************************************************
% QP=Kq*ThetaP;
ThtP1=QP((1))/Kq((1));
ThtP2=QP((2))/Kq((2));
ThtP=[ThtP1;ThtP2];
% ThtP=(QP/Kq);
%***********************************************************
%******* OBTENCIN DE THETAP MEDIANTE QPP *************
%***********************************************************
% QPP=Kq*ThetaPP+Lq*ThetaP;
ThtPP1=(QPP((1))-Lq((1))*ThetaP)/Kq((1));
ThtPP2=(QPP((2))-Lq((2))*ThetaP)/Kq((2));
ThtPP=[ThtPP1;ThtPP2];
%***********************************************************
%***************** IMPRESIONES ************************
%***********************************************************
fprintf('i= %g \n',contador);
% fprintf('Theta(Deg)= %g \n',t);
% fprintf('Phi= %g \n',Phi*180/pi);
% fprintf('Beta= %g \n',Beta*180/pi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('PhiP= %g \n',PhiP);
% fprintf('LACP= %g \n',LACP);
% fprintf('BetaP= %g \n',BetaP);
% fprintf('RBFxP= %g \n',RBFxP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('PhiPP= %g \n',PhiPP);
% fprintf('LACPP= %g \n',LACPP);
% fprintf('BetaPP= %g \n',BetaPP);
% fprintf('RBFxPP= %g \n',RBFxPP);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('LPhi= %g \n',LPhi);
% fprintf('LBeta= %g \n',LBeta);
ANEXOS ANEXO E
% fprintf('ThtP= %g \n',ThtP);
% fprintf('ThtPP= %g \n',ThtPP);
fprintf('REFCMxP= %g \n',REFCMxP);
fprintf('REFCMyP= %g \n',REFCMyP);
fprintf('\n\n');
%***********************************************************
%************ RECOPILACIN DE DATOS ********************
%***********************************************************
ThetaData(t+1)=(Theta)*180/pi;
PhiData(t+1)=(Phi)*180/pi;
BetaData(t+1)=(Beta)*180/pi;
RBFxData(t+1)=RBFx;
LACData(t+1)=LAC+PhiData(t+1);
PhiDataP(t+1)=(PhiP)*180/pi;
BetaDataP(t+1)=(BetaP)*180/pi;
RBFxDataP(t+1)=RBFxP;
LACDataP(t+1)=LACP+PhiDataP(t+1);
PhiDataPP(t+1)=(PhiPP)*180/pi;
BetaDataPP(t+1)=(BetaPP)*180/pi;
RBFxDataPP(t+1)=RBFxPP;
LACDataPP(t+1)=LACPP+PhiDataPP(t+1);
RBB1CMxData(t+1)=RBB1CMx;
RBB1CMyData(t+1)=RBB1CMy;
RBB1CMxDataP(t+1)=RBB1CMxP;
RBB1CMyDataP(t+1)=RBB1CMyP;
RBB1CMxDataPP(t+1)=RBB1CMxPP;
RBB1CMyDataPP(t+1)=RBB1CMyPP;
RDD1CMxData(t+1)=RDD1CMx;
RDD1CMyData(t+1)=RDD1CMy;
RDD1CMxDataP(t+1)=RDD1CMxP;
RDD1CMyDataP(t+1)=RDD1CMyP;
RDD1CMxDataPP(t+1)=RDD1CMxPP;
RDD1CMyDataPP(t+1)=RDD1CMyPP;
REFCMxData(t+1)=REFCMx;
REFCMyData(t+1)=REFCMy;
REFCMxDataP(t+1)=REFCMxP;
REFCMyDataP(t+1)=REFCMyP;
REFCMxDataPP(t+1)=REFCMxPP;
REFCMyDataPP(t+1)=REFCMyPP;
ANEXOS ANEXO E
RFCMxData(t+1)=RFCMx;
RFCMyData(t+1)=RFCMy;
RFCMxDataP(t+1)=RFCMxP;
RFCMyDataP(t+1)=RFCMyP;
RFCMxDataPP(t+1)=RFCMxPP;
RFCMyDataPP(t+1)=RFCMyPP;
RCCMxData(t+1)=RCCMx;
RCCMyData(t+1)=RCCMy;
RCCMxDataP(t+1)=RCCMxP;
RCCMyDataP(t+1)=RCCMyP;
RCCMxDataPP(t+1)=RCCMxPP;
RCCMyDataPP(t+1)=RCCMyPP;
%***********************************************************
%************ MECANISMO EN MOVIMIENTO ******************
%***********************************************************
hold off
pause(0.1);
end
close all;
ANEXOS ANEXO E
%***********************************************************
%************ GRAFICAS DE LAS VARIABLES ******************
%************ CON RESPECTO A THETA ******************
%***********************************************************
for i=0:inc:360
% fprintf('i= %g \n',i);
% fprintf('ThetaData(i)= %g \n',ThetaData(i+1));
% fprintf('PhiData(i)= %g \n',PhiData(i+1));
% fprintf('BetaData(i)= %g \n',BetaData(i+1));
% fprintf('\n \n');
% plot(ThetaData(i+1),PhiData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxData(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACData(i+1),'b-o','LineWidth',0.5)
plot(ThetaData(i+1),PhiDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),PhiDataPP(i+1),'k-o','LineWidth',0.5)
% plot(ThetaData(i+1),BetaDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBFxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),LACDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RBB1CMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RDD1CMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),REFCMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyData(i+1),'r-o','LineWidth',0.5)
ANEXOS ANEXO E
% plot(ThetaData(i+1),RFCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RFCMyDataPP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxData(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyData(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxDataP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyDataP(i+1),'r-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMxDataPP(i+1),'b-o','LineWidth',0.5)
% plot(ThetaData(i+1),RCCMyDataPP(i+1),'r-o','LineWidth',0.5)
hold on
end
ANEXOS ANEXO E
ANEXOS ANEXO F
ANEXO F
En este ANEXO se incluyen 3 archivos:
Dim_Simulk.m (MATLAB)
Dim.mdl (MATLAB)
Dinamica_EK.wm2d (Working Model)
%***********************************************************
%****************** Dim_Simulk *******************
%***********************************************************
function qpp=Dim_Simulk(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Gravedad
g=9.80;
%Torque
% MTorque=100;
% FBCG=-50;
MTorque=0;
Fcorte=0;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=(LBC/LACH)*cos(Phi-Theta);
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
KRBFx=(LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta);
K=[KPhi;KLAC;KBeta;KRBFx;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
%Se divide entre ThetaP, Para que exista coherencia en este mtodo, ya
que
%las ecuaciones se obtuvieron, primero mediante el metodo de los
%multiplicadores
%Se obtienen nuevamente los coeficientes L, con respecto a ThetaP, como
se
%hizo ahora.
LPhi=((-LBC/LACH)*sin(Phi-Theta)*(KPhi-1))-((LBC*cos(Phi-
Theta)*KLAC)/LACH^2);
LLAC=((((KLAC*sin(Phi)*KPhi)+(LAC*cos(Phi)*KPhi^2)+(LAC*sin(Phi)*LPhi)-
(LBC*cos(Theta)))*cos(Phi))+(((LAC*sin(Phi)*KPhi)-
(LBC*sin(Theta)))*sin(Phi)*cos(Phi)))/((cos(Phi))^2);
else
LLAC=((((-KLAC*cos(Phi)*KPhi)+(LAC*sin(Phi)*KPhi^2)-
(LAC*cos(Phi)*LPhi)-(LBC*sin(Theta)))*sin(Phi))-(((-
LAC*cos(Phi)*KPhi)+(LBC*cos(Theta)))*cos(Phi)*KPhi))/((sin(Phi))^2);
end
LBeta=((((LAE*cos(Phi)*KPhi^2)+(LAE*sin(Phi)*LPhi))*(LEF*sin(Beta)))-
((LAE*sin(Phi)*KPhi)*(LEF*cos(Beta)*KBeta)))/((LEF*sin(Beta))^2);
LRBFx=(-LAE*sin(Phi)*KPhi^2)+(LAE*cos(Phi)*LPhi)+(LEF*sin(Beta)*KBeta^2)-
(LEF*cos(Beta)*LBeta);
L=[LPhi;LLAC;LBeta;LRBFx;0];
ANEXOS ANEXO F
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
% %***********************************************************
% %****************** ACELERACIN CM **********************
% %***********************************************************
%
% % Aceleracin del CM_ELmBB1 desde el sistema de coordenadas (X,Y)
% RBB1CMPP=Mtz_TBB1P*UV_ELmBB1*ThetaPP-Mtz_TBB1*UV_ELmBB1*ThetaP^2;
% RBB1CMxPP=RBB1CMPP((1));
% RBB1CMyPP=RBB1CMPP((2));
% % Aceleracin del CM_ELmDD1 desde el sistema de coordenadas (X,Y)
%
RDD1CMPP=Mtz_TDD1P*UV_ELmDD1*KPhi*ThetaPP+Mtz_TDD1P*UV_ELmDD1*LPhi*ThetaP
-Mtz_TDD1*UV_ELmDD1*KPhi^2*ThetaP^2;
% RDD1CMxPP=RDD1CMPP((1));
% RDD1CMyPP=RDD1CMPP((2));
% % Aceleracin del CM_ELmEF desde el sistema de coordenadas (X,Y)
%
REFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Ph
i)]*LPhi*ThetaP+[-
LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2+Mtz_TEFP*UV_ELmEF*KBeta*ThetaP
P+Mtz_TEFP*UV_ELmEF*LBeta*ThetaP-Mtz_TEF*UV_ELmEF*KBeta^2*ThetaP^2;
% REFCMxPP=REFCMPP((1));
% REFCMyPP=REFCMPP((2));
% % Aceleracin del CM_ELmF desde el sistema de coordenadas (X,Y)
%
RFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Phi
)]*LPhi*ThetaP+[-LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2-
[LEF*cos(Beta);LEF*sin(Beta)]*KBeta*ThetaPP-
[LEF*cos(Beta);LEF*sin(Beta)]*LBeta*ThetaP+[LEF*sin(Beta);-
LEF*cos(Beta)]*KBeta^2*ThetaP^2;
% RFCMxPP=RFCMPP((1));
% RFCMyPP=RFCMPP((2));
% % Aceleracin del CM_ELmC desde el sistema de coordenadas (X,Y)
% RCCMPP=[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[KPhi;KLAC]*ThetaPP+[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[LPhi;LLAC]*ThetaP+[LAC*sin(Phi)*KPhi -2*cos(Phi)*KPhi;-
LAC*cos(Phi)*KPhi -
2*sin(Phi)*KPhi]*[KPhi;KLAC]*ThetaP^2+Mtz_TDD1P*UV_ELmC*KPhi*ThetaPP+Mtz_
TDD1P*UV_ELmC*KPhi*LPhi*ThetaP-Mtz_TDD1*UV_ELmC*KPhi^2*ThetaP^2;
ANEXOS ANEXO F
% RCCMxPP=RCCMPP((1));
% RCCMyPP=RCCMPP((2));
%***********************************************************
%*************** Inercia General ******************
%***********************************************************
IG=(mBB1*(u2^2+v2^2))+IBB1+(mDD1*((u4^2+v4^2)*KPhi^2))+(IDD1*(KPhi^2))+(m
EF*((LAE^2*KPhi^2)+((u5^2+v5^2)*KBeta^2)+(2*LAE*sin(Phi-
Beta)*u5*KPhi*KBeta)-(2*LAE*cos(Phi-
Beta)*v5*KPhi*KBeta)))+(IEF*(KBeta^2))+(mF*(KRBFx^2))+(mC*(KLAC^2+((LAC^2
+u3^2+2*LAC*v3+v3^2)*KPhi^2)+(2*u3*KLAC*KPhi)))+(IC*(KPhi^2));
%***********************************************************
%******** Derivada Inercia General contra Theta ********
%***********************************************************
IGp=(mDD1*((u4^2+v4^2)*KPhi*LPhi))+(IDD1*(KPhi*LPhi))+(mEF*((LAE^2*KPhi*L
Phi)+((u5^2+v5^2)*KBeta*LBeta)+(LAE*cos(Phi-Beta)*(KPhi-
KBeta)*u5*KPhi*KBeta)+(LAE*sin(Phi-Beta)*u5*LPhi*KBeta)+(LAE*sin(Phi-
Beta)*u5*KPhi*LBeta)+(LAE*sin(Phi-Beta)*(KPhi-KBeta)*v5*KPhi*KBeta)-
(LAE*cos(Phi-Beta)*v5*LPhi*KBeta)-(LAE*cos(Phi-
Beta)*v5*KPhi*LBeta)))+(IEF*KBeta*LBeta)+(mF*(KRBFx*LRBFx))+(mC*((KLAC*LL
AC)+((LAC*KLAC+KLAC*v3)*KPhi^2)+((LAC^2+u3^2+2*LAC*v3+v3^2)*KPhi*LPhi)+(u
3*LLAC*KPhi)+(u3*KLAC*LPhi)))+(IC*(KPhi*LPhi));
%***********************************************************
%********* Derivada Potencial **********
%***********************************************************
Vp=(mBB1*((cos(Theta)*u2)-(sin(Theta)*v2)))+(mDD1*((cos(Phi)*KPhi*u4)-
(sin(Phi)*KPhi*v4)))+(mEF*((LAE*sin(Phi)*KPhi)+(cos(Beta)*KBeta*u5)-
(sin(Beta)*KBeta*v5)))+(mC*((KLAC*cos(Phi))-
(LAC*sin(Phi)*KPhi)+(cos(Phi)*KPhi*u3)-(sin(Phi)*KPhi*v3)));
%***********************************************************
%********* Dinmica **********
%***********************************************************
%PRUEBA
Dist=((LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta));
QExt=MTorque+(Fcorte*Dist);
ThetaPP=(1/IG)*(QExt-(IGp*ThetaP*ThetaP)-(Vp*g));
% ThetaPP=10;
ANEXOS ANEXO F
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',t);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
ANEXOS ANEXO F
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('IG= %g \n',IG);
% fprintf('IGp*ThetaP^2= %g \n',IGp*ThetaP*ThetaP);
% fprintf('Vp= %g \n',Vp);
% fprintf('RBB1CMPP= %g \n',RBB1CMPP);
% fprintf('RDD1CMPP= %g \n',RDD1CMPP);
% fprintf('REFCMPP= %g \n',REFCMPP);
% fprintf('RFCMP= %g \n',RFCMP);
% fprintf('RFCMPP= %g \n',RFCMPP);
% fprintf('RCCMP= %g \n',RCCMP);
% fprintf('RCCMPP= %g \n',RCCMPP);
% fprintf('\n');
qpp = ThetaPP;
% end
ANEXOS
Diagrama en simulink
ANEXO F
ANEXOS ANEXO F
ANEXOS ANEXO G
ANEXO G
En este ANEXO se incluyen 3 archivos:
Dinamica_Simulk_2var.m (MATLAB)
Dinamica_2var.mdl (MATLAB)
Dinamica_MLagrange.wm2d (Working Model)
%***********************************************************
%****************** Dinamica_Simulk *******************
%***********************************************************
% clear all
% close all
% clc
%
% inc=10;
% contador=0;
%
% for t=0:inc:360
% contador=contador+1;
% Theta=t*pi/180;
function qpp=Dinamica_Simulk_2var(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Masa e Inercia EF
mEF=3;
IEF=10;
% Masa e Inercia F
mF=4;
IF=10;
% Masa e Inercia C
mC=5;
IC=7;
% Gravedad
g=9.80;
%Torque
% MTorque=1000;
MTorque=0;
% FBCG=100;
FBCG=0;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
ANEXOS ANEXO G
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=((LBC*cos(Phi-Theta))/(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi)));
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
K=[KPhi;KBeta;1];
ANEXOS ANEXO G
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
LPhi=(((-LBC*sin(Phi-Theta)*((KPhi*ThetaP)-ThetaP))*(LBC*cos(Phi-
Theta)+H*cos(Phi)-P*sin(Phi)))-((LBC*cos(Phi-Theta))*(-LBC*sin(Phi-
Theta)*((KPhi*ThetaP)-ThetaP)-H*sin(Phi)*(KPhi*ThetaP)-
P*cos(Phi)*(KPhi*ThetaP))))/((LBC*cos(Phi-Theta)+H*cos(Phi)-
P*sin(Phi))^2);
LBeta=((LAE*sin(Phi)*LPhi)+(LAE*cos(Phi)*KPhi*ThetaP*KPhi)-
(LEF*cos(Beta)*KBeta*ThetaP*KBeta))/(LEF*sin(Beta));
L=[LPhi;LBeta;0];
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
%***********************************************************
%*************** MATRIZ MASA ******************
%***********************************************************
%Matriz de 3x3
MTC11=((mC*(LBC*cos(Theta)+H)^2)/(cos(Phi))^4)+((2*mC*(LBC*cos(Theta)+H)*
v3)/cos(Phi))+(mC*(u3^2+v3^2))+((2*mC*(LBC*cos(Theta)+H)*sin(Phi)*u3)/(co
s(Phi)^2))+IC;
MTC13=-((mC*(LBC*cos(Theta)+H)*(LBC*sin(Theta))*sin(Phi))/(cos(Phi))^3)-
((mC*(LBC*sin(Theta)*u3))/cos(Phi));
MTC31=(-(mC*(LBC*cos(Theta)+H)*LBC*sin(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/cos(Phi));
MTC33=((mC*LBC^2*(sin(Theta))^2)/(cos(Phi))^2);
NgTC11=((mC*cos(Phi)*u3)-(mC*sin(Phi)*v3));
NgTC31=-(mC*LBC*sin(Theta));
NcTC11=(((2*mC*(LBC*cos(Theta)+H)^2*sin(Phi))/(cos(Phi))^5)+((mC*(LBC*cos
(Theta)+H)*sin(Phi)*v3)/(cos(Phi))^2)-
((mC*(LBC*cos(Theta)+H)*u3)/cos(Phi))+((2*mC*(LBC*cos(Theta)+H)*u3)/(cos(
Phi))^3))*KPhi*ThetaP;
NcTC31=(((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^2)-
((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)+((mC*LBC*sin(Thet
a)*v3)/cos(Phi)))*KPhi*ThetaP;
NcTC13=(((-mC*(LBC*cos(Theta)+H)*LBC*cos(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*cos(Theta)*u3)/cos(Phi)))*ThetaP;
NcTC33=((mC*LBC^2*sin(Theta)*cos(Theta))/(cos(Phi))^2)*ThetaP;
NcTC11A=(((-2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)-
((2*mC*LBC*sin(Theta)*v3)/cos(Phi))-
((2*mC*LBC*sin(Theta)*sin(Phi)*u3)/(cos(Phi))^2))*ThetaP;
NcTC31A=((mC*LBC^2*(sin(Theta))^2*sin(Phi))/(cos(Phi))^3)*ThetaP;
else
MTC11=((mC*(LBC*sin(Theta)-P)^2)/(sin(Phi))^4)+((2*mC*(LBC*sin(Theta)-
P)*v3)/sin(Phi))+(mC*(u3^2+v3^2))-((2*mC*(LBC*sin(Theta)-
P)*cos(Phi)*u3)/(sin(Phi))^2)+IC;
MTC13=(-mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*(cos(Phi))/(sin(Phi)^3))+((mC*(LBC*cos(Theta)*u3))/si
n(Phi));
ANEXOS ANEXO G
MTC31=-((mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*cos(Phi))/(sin(Phi))^3)+((mC*LBC*cos(Theta)*u3)/sin(P
hi));
MTC33=((mC*LBC^2*(cos(Theta))^2)/(sin(Phi))^2);
NgTC11=-((mC*(LBC*sin(Theta)-P))/(sin(Phi))^2)+(mC*cos(Phi)*u3)-
(mC*sin(Phi)*v3);
NgTC31=(mC*LBC*cos(Theta)*cos(Phi))/sin(Phi);
NcTC11=(((-(2*mC*(LBC*sin(Theta)-P)^2*cos(Phi)))/(sin(Phi))^5)-
((mC*(LBC*sin(Theta)-P)*cos(Phi)*v3)/(sin(Phi))^2)-((mC*(LBC*sin(Theta)-
P)*u3)/sin(Phi))+((2*mC*(LBC*sin(Theta)-
P)*u3)/(sin(Phi))^3))*KPhi*ThetaP;
NcTC31=(((-2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^2)+((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)-
((mC*LBC*cos(Theta)*v3)/sin(Phi)))*KPhi*ThetaP;
NcTC13=(((mC*(LBC*sin(Theta)-P)*LBC*sin(Theta)*cos(Phi))/(sin(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/sin(Phi)))*ThetaP;
NcTC33=((-mC*LBC^2*sin(Theta)*cos(Theta))/(sin(Phi))^2)*ThetaP;
NcTC11A=(((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)+((2*mC*LBC*cos(Theta)*v3)/sin(Phi))-
((2*mC*LBC*cos(Theta)*cos(Phi)*u3)/(sin(Phi))^2))*ThetaP;
NcTC31A=((-2*mC*LBC^2*(cos(Theta))^2*cos(Phi))/(sin(Phi))^3)*ThetaP;
end
Masa11=((mDD1*(u4^2+v4^2))+(mEF*LAE^2)+(mF*LAE^2*(cos(Phi))^2)+(IDD1))+MT
C11;
Masa12=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Phi)*cos(Beta)));
Masa13=0+MTC13;
Masa21=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Beta)*cos(Phi)));
Masa22=((mEF*(u5^2+v5^2))+(mF*LEF^2*(cos(Beta))^2)+(IEF));
Masa23=0;
Masa31=0+MTC31;
Masa32=0;
Masa33=((mBB1*(u2^2+v2^2))+(IBB1))+MTC33;
M=[Masa11,Masa12,Masa13;Masa21,Masa22,Masa23;Masa31,Masa32,Masa33];
ANEXOS ANEXO G
%***********************************************************
%*************** MATRIZ NC ********************
%***********************************************************
%Matriz de 3x3
Nc11=-(mF*LAE^2*cos(Phi)*sin(Phi))*KPhi*ThetaP+NcTC11+NcTC11A;
Nc12=(-(mEF*LAE*sin(Phi-Beta)*v5)-(mEF*LAE*cos(Phi-
Beta)*u5)+(mF*LAE*LEF*cos(Phi)*sin(Beta)))*KBeta*ThetaP;
Nc13=0+NcTC13;
Nc21=((mEF*LAE*cos(Phi-Beta)*u5)+(mEF*LAE*sin(Phi-Beta)*v5))*KPhi*ThetaP;
Nc22=(-
(mF*LEF^2*cos(Beta)*sin(Beta)))*KBeta*ThetaP+(mF*LAE*LEF*cos(Beta)*sin(Ph
i)*KPhi*ThetaP);
Nc23=0;
Nc31=0+NcTC31+NcTC31A;
Nc32=0;
Nc33=NcTC33;
Nc=[Nc11,Nc12,Nc13;Nc21,Nc22,Nc23;Nc31,Nc32,Nc33];
%***********************************************************
%*************** MATRIZ NG ********************
%***********************************************************
%Matriz de 3x1
Ng11=((mDD1*(cos(Phi)*u4-sin(Phi)*v4))+(mEF*LAE*sin(Phi)))+NgTC11;
Ng21=(mEF*(cos(Beta)*u5-sin(Beta)*v5));
Ng31=(mBB1*(cos(Theta)*u2-sin(Theta)*v2))+NgTC31;
NG=[Ng11;Ng21;Ng31]*g;
%***********************************************************
%*************** MATRIZ JACOBIAN0 ******************
%***********************************************************
J11=-(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi));
J12=0;
J13=(LBC*cos(Phi-Theta));
J21=LAE*sin(Phi);
J22=-(LEF*sin(Beta));
J23=0;
J=[J11,J12,J13;J21,J22,J23];
ANEXOS ANEXO G
%***********************************************************
%************ MULTP LAGRANGE ********************
%***********************************************************
%***********************************************************
%************ Fuerzas Externas ********************
%***********************************************************
%PRUEBA
QEXT=[FBCG*(LAE*cos(Phi));-FBCG*(LEF*cos(Beta));MTorque];
%***********************************************************
%*************** ECUACION DINAMICA *******************
%***********************************************************
f=(M*K*ThetaPP+(M*L+Nc*K)*ThetaP+NG)+J'*LGRmult-QEXT;
% f=M*K*ThetaPP+(M*L+Nc*K)*ThetaP+Ng+J'*LGRmult;
S=solve(f((1)),f((2)),f((3)),ThetaPP,LGRmult1,LGRmult2);
S=[S.ThetaPP S.LGRmult1 S.LGRmult2];
ThetaPP=eval(S((1)));
LGRmult1=eval(S((2)));
LGRmult2=eval(S((3)));
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',Theta);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
ANEXOS ANEXO G
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('LGRmult1= %g \n',LGRmult1);
% fprintf('LGRmult2= %g \n',LGRmult2);
% fprintf('LGRmult3= %g \n',LGRmult3);
% fprintf('LGRmult4= %g \n',LGRmult4);
% fprintf('\n');
qpp = [ThetaPP;LGRmult1;LGRmult2];
% end
ANEXOS
Diagrama en simulink
ANEXO G
ANEXOS ANEXO G
ANEXOS ANEXO H
ANEXO H
En este ANEXO se incluyen 3 archivos:
Dinamica_Simulk_2var.m (MATLAB)
Dinamica_2var.mdl (MATLAB)
Dinamica_MLagrange.wm2d (Working Model)
%***********************************************************
%****************** Dinamica_Simulk *******************
%***********************************************************
% clear all
% close all
% clc
%
% inc=10;
% contador=0;
%
% for t=0:inc:360
% contador=contador+1;
% Theta=t*pi/180;
function qpp=Dinamica_Simulk_2var(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Masa e Inercia EF
mEF=3;
IEF=10;
% Masa e Inercia F
mF=4;
IF=10;
% Masa e Inercia C
mC=5;
IC=7;
% Gravedad
g=9.80;
%Torque
% MTorque=1000;
MTorque=0;
% FBCG=100;
FBCG=0;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
ANEXOS ANEXO H
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
ANEXOS ANEXO H
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=((LBC*cos(Phi-Theta))/(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi)));
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
K=[KPhi;KBeta;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
LPhi=(((-LBC*sin(Phi-Theta)*((KPhi*ThetaP)-ThetaP))*(LBC*cos(Phi-
Theta)+H*cos(Phi)-P*sin(Phi)))-((LBC*cos(Phi-Theta))*(-LBC*sin(Phi-
Theta)*((KPhi*ThetaP)-ThetaP)-H*sin(Phi)*(KPhi*ThetaP)-
P*cos(Phi)*(KPhi*ThetaP))))/((LBC*cos(Phi-Theta)+H*cos(Phi)-
P*sin(Phi))^2);
LBeta=((LAE*sin(Phi)*LPhi)+(LAE*cos(Phi)*KPhi*ThetaP*KPhi)-
(LEF*cos(Beta)*KBeta*ThetaP*KBeta))/(LEF*sin(Beta));
L=[LPhi;LBeta;0];
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
RCCMP=[-LBC*cos(Theta);(LBC*cos(Theta)*cos(Phi))/sin(Phi)]*ThetaP-
[0;((LBC*sin(Theta)-P)/(sin(Phi))^2)-(LBC*sin(Theta)-P)]*KPhi*ThetaP-
[0;LBC*sin(Theta)-P]*KPhi*ThetaP+Mtz_TDD1P*UV_ELmC*KPhi*ThetaP;
end
RCCMxP=RCCMP((1));
RCCMyP=RCCMP((2));
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
end
RCCMxPP=RCCMPP((1));
RCCMyPP=RCCMPP((2));
%***********************************************************
%*************** MATRIZ MASA ******************
%***********************************************************
%Matriz de 3x3
MTC11=((mC*(LBC*cos(Theta)+H)^2)/(cos(Phi))^4)+((2*mC*(LBC*cos(Theta)+H)*
v3)/cos(Phi))+(mC*(u3^2+v3^2))+((2*mC*(LBC*cos(Theta)+H)*sin(Phi)*u3)/(co
s(Phi)^2))+IC;
MTC13=-((mC*(LBC*cos(Theta)+H)*(LBC*sin(Theta))*sin(Phi))/(cos(Phi))^3)-
((mC*(LBC*sin(Theta)*u3))/cos(Phi));
MTC31=(-(mC*(LBC*cos(Theta)+H)*LBC*sin(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/cos(Phi));
MTC33=((mC*LBC^2*(sin(Theta))^2)/(cos(Phi))^2);
NgTC11=((mC*cos(Phi)*u3)-(mC*sin(Phi)*v3));
NgTC31=-(mC*LBC*sin(Theta));
NcTC11=(((2*mC*(LBC*cos(Theta)+H)^2*sin(Phi))/(cos(Phi))^5)+((mC*(LBC*cos
(Theta)+H)*sin(Phi)*v3)/(cos(Phi))^2)-
((mC*(LBC*cos(Theta)+H)*u3)/cos(Phi))+((2*mC*(LBC*cos(Theta)+H)*u3)/(cos(
Phi))^3))*KPhi*ThetaP;
NcTC31=(((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^2)-
((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)+((mC*LBC*sin(Thet
a)*v3)/cos(Phi)))*KPhi*ThetaP;
NcTC13=(((-mC*(LBC*cos(Theta)+H)*LBC*cos(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*cos(Theta)*u3)/cos(Phi)))*ThetaP;
NcTC33=((mC*LBC^2*sin(Theta)*cos(Theta))/(cos(Phi))^2)*ThetaP;
NcTC11A=(((-2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)-
((2*mC*LBC*sin(Theta)*v3)/cos(Phi))-
((2*mC*LBC*sin(Theta)*sin(Phi)*u3)/(cos(Phi))^2))*ThetaP;
NcTC31A=((mC*LBC^2*(sin(Theta))^2*sin(Phi))/(cos(Phi))^3)*ThetaP;
else
MTC11=((mC*(LBC*sin(Theta)-P)^2)/(sin(Phi))^4)+((2*mC*(LBC*sin(Theta)-
P)*v3)/sin(Phi))+(mC*(u3^2+v3^2))-((2*mC*(LBC*sin(Theta)-
P)*cos(Phi)*u3)/(sin(Phi))^2)+IC;
MTC13=(-mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*(cos(Phi))/(sin(Phi)^3))+((mC*(LBC*cos(Theta)*u3))/si
n(Phi));
ANEXOS ANEXO H
MTC31=-((mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*cos(Phi))/(sin(Phi))^3)+((mC*LBC*cos(Theta)*u3)/sin(P
hi));
MTC33=((mC*LBC^2*(cos(Theta))^2)/(sin(Phi))^2);
NgTC11=-((mC*(LBC*sin(Theta)-P))/(sin(Phi))^2)+(mC*cos(Phi)*u3)-
(mC*sin(Phi)*v3);
NgTC31=(mC*LBC*cos(Theta)*cos(Phi))/sin(Phi);
NcTC11=(((-(2*mC*(LBC*sin(Theta)-P)^2*cos(Phi)))/(sin(Phi))^5)-
((mC*(LBC*sin(Theta)-P)*cos(Phi)*v3)/(sin(Phi))^2)-((mC*(LBC*sin(Theta)-
P)*u3)/sin(Phi))+((2*mC*(LBC*sin(Theta)-
P)*u3)/(sin(Phi))^3))*KPhi*ThetaP;
NcTC31=(((-2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^2)+((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)-
((mC*LBC*cos(Theta)*v3)/sin(Phi)))*KPhi*ThetaP;
NcTC13=(((mC*(LBC*sin(Theta)-P)*LBC*sin(Theta)*cos(Phi))/(sin(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/sin(Phi)))*ThetaP;
NcTC33=((-mC*LBC^2*sin(Theta)*cos(Theta))/(sin(Phi))^2)*ThetaP;
NcTC11A=(((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)+((2*mC*LBC*cos(Theta)*v3)/sin(Phi))-
((2*mC*LBC*cos(Theta)*cos(Phi)*u3)/(sin(Phi))^2))*ThetaP;
NcTC31A=((-2*mC*LBC^2*(cos(Theta))^2*cos(Phi))/(sin(Phi))^3)*ThetaP;
end
Masa11=((mDD1*(u4^2+v4^2))+(mEF*LAE^2)+(mF*LAE^2*(cos(Phi))^2)+(IDD1))+MT
C11;
Masa12=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Phi)*cos(Beta)));
Masa13=0+MTC13;
Masa21=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Beta)*cos(Phi)));
Masa22=((mEF*(u5^2+v5^2))+(mF*LEF^2*(cos(Beta))^2)+(IEF));
Masa23=0;
Masa31=0+MTC31;
Masa32=0;
Masa33=((mBB1*(u2^2+v2^2))+(IBB1))+MTC33;
M=[Masa11,Masa12,Masa13;Masa21,Masa22,Masa23;Masa31,Masa32,Masa33];
ANEXOS ANEXO H
%***********************************************************
%*************** MATRIZ NC ********************
%***********************************************************
%Matriz de 3x3
Nc11=-(mF*LAE^2*cos(Phi)*sin(Phi))*KPhi*ThetaP+NcTC11+NcTC11A;
Nc12=(-(mEF*LAE*sin(Phi-Beta)*v5)-(mEF*LAE*cos(Phi-
Beta)*u5)+(mF*LAE*LEF*cos(Phi)*sin(Beta)))*KBeta*ThetaP;
Nc13=0+NcTC13;
Nc21=((mEF*LAE*cos(Phi-Beta)*u5)+(mEF*LAE*sin(Phi-Beta)*v5))*KPhi*ThetaP;
Nc22=(-
(mF*LEF^2*cos(Beta)*sin(Beta)))*KBeta*ThetaP+(mF*LAE*LEF*cos(Beta)*sin(Ph
i)*KPhi*ThetaP);
Nc23=0;
Nc31=0+NcTC31+NcTC31A;
Nc32=0;
Nc33=NcTC33;
Nc=[Nc11,Nc12,Nc13;Nc21,Nc22,Nc23;Nc31,Nc32,Nc33];
%***********************************************************
%*************** MATRIZ NG ********************
%***********************************************************
%Matriz de 3x1
Ng11=((mDD1*(cos(Phi)*u4-sin(Phi)*v4))+(mEF*LAE*sin(Phi)))+NgTC11;
Ng21=(mEF*(cos(Beta)*u5-sin(Beta)*v5));
Ng31=(mBB1*(cos(Theta)*u2-sin(Theta)*v2))+NgTC31;
NG=[Ng11;Ng21;Ng31]*g;
%***********************************************************
%*************** MATRIZ JACOBIAN0 ******************
%***********************************************************
J11=-(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi));
J12=0;
J13=(LBC*cos(Phi-Theta));
J21=LAE*sin(Phi);
J22=-(LEF*sin(Beta));
J23=0;
J=[J11,J12,J13;J21,J22,J23];
ANEXOS ANEXO H
%***********************************************************
%************ MULTP LAGRANGE ********************
%***********************************************************
%***********************************************************
%************ Fuerzas Externas ********************
%***********************************************************
%PRUEBA
QEXT=[FBCG*(LAE*cos(Phi));-FBCG*(LEF*cos(Beta));MTorque];
%***********************************************************
%*************** ECUACION DINAMICA *******************
%***********************************************************
f=(M*K*ThetaPP+(M*L+Nc*K)*ThetaP+NG)+J'*LGRmult-QEXT;
% f=M*K*ThetaPP+(M*L+Nc*K)*ThetaP+Ng+J'*LGRmult;
S=solve(f((1)),f((2)),f((3)),ThetaPP,LGRmult1,LGRmult2);
S=[S.ThetaPP S.LGRmult1 S.LGRmult2];
ThetaPP=eval(S((1)));
LGRmult1=eval(S((2)));
LGRmult2=eval(S((3)));
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',Theta);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
ANEXOS ANEXO H
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('LGRmult1= %g \n',LGRmult1);
% fprintf('LGRmult2= %g \n',LGRmult2);
% fprintf('LGRmult3= %g \n',LGRmult3);
% fprintf('LGRmult4= %g \n',LGRmult4);
% fprintf('\n');
qpp = [ThetaPP;LGRmult1;LGRmult2];
% end
ANEXOS
Diagrama en simulink
ANEXO H
ANEXOS ANEXO H
ANEXOS ANEXO I
ANEXO I
En este ANEXO se incluyen 3 archivos:
Dim_Simulk.m (MATLAB)
Dim.mdl (MATLAB)
Dinamica_EK.wm2d (Working Model)
%***********************************************************
%****************** Dim_Simulk *******************
%***********************************************************
function qpp=Dim_Simulk(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Gravedad
g=9.80;
%Torque
MTorque=100;
Fcorte=-50;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
ANEXOS ANEXO I
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=(LBC/LACH)*cos(Phi-Theta);
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
KRBFx=(LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta);
K=[KPhi;KLAC;KBeta;KRBFx;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
%Se divide entre ThetaP, Para que exista coherencia en este mtodo, ya
que
%las ecuaciones se obtuvieron, primero mediante el metodo de los
%multiplicadores
%Se obtienen nuevamente los coeficientes L, con respecto a ThetaP, como
se
%hizo ahora.
LPhi=((-LBC/LACH)*sin(Phi-Theta)*(KPhi-1))-((LBC*cos(Phi-
Theta)*KLAC)/LACH^2);
LLAC=((((KLAC*sin(Phi)*KPhi)+(LAC*cos(Phi)*KPhi^2)+(LAC*sin(Phi)*LPhi)-
(LBC*cos(Theta)))*cos(Phi))+(((LAC*sin(Phi)*KPhi)-
(LBC*sin(Theta)))*sin(Phi)*cos(Phi)))/((cos(Phi))^2);
else
LLAC=((((-KLAC*cos(Phi)*KPhi)+(LAC*sin(Phi)*KPhi^2)-
(LAC*cos(Phi)*LPhi)-(LBC*sin(Theta)))*sin(Phi))-(((-
LAC*cos(Phi)*KPhi)+(LBC*cos(Theta)))*cos(Phi)*KPhi))/((sin(Phi))^2);
end
ANEXOS ANEXO I
LBeta=((((LAE*cos(Phi)*KPhi^2)+(LAE*sin(Phi)*LPhi))*(LEF*sin(Beta)))-
((LAE*sin(Phi)*KPhi)*(LEF*cos(Beta)*KBeta)))/((LEF*sin(Beta))^2);
LRBFx=(-LAE*sin(Phi)*KPhi^2)+(LAE*cos(Phi)*LPhi)+(LEF*sin(Beta)*KBeta^2)-
(LEF*cos(Beta)*LBeta);
L=[LPhi;LLAC;LBeta;LRBFx;0];
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
% %***********************************************************
% %****************** ACELERACIN CM **********************
% %***********************************************************
%
% % Aceleracin del CM_ELmBB1 desde el sistema de coordenadas (X,Y)
% RBB1CMPP=Mtz_TBB1P*UV_ELmBB1*ThetaPP-Mtz_TBB1*UV_ELmBB1*ThetaP^2;
% RBB1CMxPP=RBB1CMPP((1));
% RBB1CMyPP=RBB1CMPP((2));
% % Aceleracin del CM_ELmDD1 desde el sistema de coordenadas (X,Y)
%
RDD1CMPP=Mtz_TDD1P*UV_ELmDD1*KPhi*ThetaPP+Mtz_TDD1P*UV_ELmDD1*LPhi*ThetaP
-Mtz_TDD1*UV_ELmDD1*KPhi^2*ThetaP^2;
% RDD1CMxPP=RDD1CMPP((1));
% RDD1CMyPP=RDD1CMPP((2));
% % Aceleracin del CM_ELmEF desde el sistema de coordenadas (X,Y)
%
REFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Ph
i)]*LPhi*ThetaP+[-
LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2+Mtz_TEFP*UV_ELmEF*KBeta*ThetaP
P+Mtz_TEFP*UV_ELmEF*LBeta*ThetaP-Mtz_TEF*UV_ELmEF*KBeta^2*ThetaP^2;
% REFCMxPP=REFCMPP((1));
% REFCMyPP=REFCMPP((2));
% % Aceleracin del CM_ELmF desde el sistema de coordenadas (X,Y)
%
RFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Phi
)]*LPhi*ThetaP+[-LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2-
[LEF*cos(Beta);LEF*sin(Beta)]*KBeta*ThetaPP-
[LEF*cos(Beta);LEF*sin(Beta)]*LBeta*ThetaP+[LEF*sin(Beta);-
LEF*cos(Beta)]*KBeta^2*ThetaP^2;
% RFCMxPP=RFCMPP((1));
ANEXOS ANEXO I
% RFCMyPP=RFCMPP((2));
% % Aceleracin del CM_ELmC desde el sistema de coordenadas (X,Y)
% RCCMPP=[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[KPhi;KLAC]*ThetaPP+[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[LPhi;LLAC]*ThetaP+[LAC*sin(Phi)*KPhi -2*cos(Phi)*KPhi;-
LAC*cos(Phi)*KPhi -
2*sin(Phi)*KPhi]*[KPhi;KLAC]*ThetaP^2+Mtz_TDD1P*UV_ELmC*KPhi*ThetaPP+Mtz_
TDD1P*UV_ELmC*KPhi*LPhi*ThetaP-Mtz_TDD1*UV_ELmC*KPhi^2*ThetaP^2;
% RCCMxPP=RCCMPP((1));
% RCCMyPP=RCCMPP((2));
%***********************************************************
%*************** Inercia General ******************
%***********************************************************
IG=(mBB1*(u2^2+v2^2))+IBB1+(mDD1*((u4^2+v4^2)*KPhi^2))+(IDD1*(KPhi^2))+(m
EF*((LAE^2*KPhi^2)+((u5^2+v5^2)*KBeta^2)+(2*LAE*sin(Phi-
Beta)*u5*KPhi*KBeta)-(2*LAE*cos(Phi-
Beta)*v5*KPhi*KBeta)))+(IEF*(KBeta^2))+(mF*(KRBFx^2))+(mC*(KLAC^2+((LAC^2
+u3^2+2*LAC*v3+v3^2)*KPhi^2)+(2*u3*KLAC*KPhi)))+(IC*(KPhi^2));
%***********************************************************
%******** Derivada Inercia General contra Theta ********
%***********************************************************
IGp=(mDD1*((u4^2+v4^2)*KPhi*LPhi))+(IDD1*(KPhi*LPhi))+(mEF*((LAE^2*KPhi*L
Phi)+((u5^2+v5^2)*KBeta*LBeta)+(LAE*cos(Phi-Beta)*(KPhi-
KBeta)*u5*KPhi*KBeta)+(LAE*sin(Phi-Beta)*u5*LPhi*KBeta)+(LAE*sin(Phi-
Beta)*u5*KPhi*LBeta)+(LAE*sin(Phi-Beta)*(KPhi-KBeta)*v5*KPhi*KBeta)-
(LAE*cos(Phi-Beta)*v5*LPhi*KBeta)-(LAE*cos(Phi-
Beta)*v5*KPhi*LBeta)))+(IEF*KBeta*LBeta)+(mF*(KRBFx*LRBFx))+(mC*((KLAC*LL
AC)+((LAC*KLAC+KLAC*v3)*KPhi^2)+((LAC^2+u3^2+2*LAC*v3+v3^2)*KPhi*LPhi)+(u
3*LLAC*KPhi)+(u3*KLAC*LPhi)))+(IC*(KPhi*LPhi));
%***********************************************************
%********* Derivada Potencial **********
%***********************************************************
Vp=(mBB1*((cos(Theta)*u2)-(sin(Theta)*v2)))+(mDD1*((cos(Phi)*KPhi*u4)-
(sin(Phi)*KPhi*v4)))+(mEF*((LAE*sin(Phi)*KPhi)+(cos(Beta)*KBeta*u5)-
(sin(Beta)*KBeta*v5)))+(mC*((KLAC*cos(Phi))-
(LAC*sin(Phi)*KPhi)+(cos(Phi)*KPhi*u3)-(sin(Phi)*KPhi*v3)));
%***********************************************************
%********* Dinmica **********
%***********************************************************
%PRUEBA
Dist=((LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta));
QExt=MTorque+(Fcorte*Dist);
ThetaPP=(1/IG)*(QExt-(IGp*ThetaP*ThetaP)-(Vp*g));
% ThetaPP=10;
ANEXOS ANEXO I
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',t);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
ANEXOS ANEXO I
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('IG= %g \n',IG);
% fprintf('IGp*ThetaP^2= %g \n',IGp*ThetaP*ThetaP);
% fprintf('Vp= %g \n',Vp);
% fprintf('RBB1CMPP= %g \n',RBB1CMPP);
% fprintf('RDD1CMPP= %g \n',RDD1CMPP);
% fprintf('REFCMPP= %g \n',REFCMPP);
% fprintf('RFCMP= %g \n',RFCMP);
% fprintf('RFCMPP= %g \n',RFCMPP);
% fprintf('RCCMP= %g \n',RCCMP);
% fprintf('RCCMPP= %g \n',RCCMPP);
% fprintf('\n');
qpp = ThetaPP;
% end
ANEXOS
Diagrama en simulink
ANEXO I
ANEXOS ANEXO I
ANEXOS ANEXO J
ANEXO J
En este ANEXO se incluyen 3 archivos:
Dinamica_Simulk_2var.m (MATLAB)
Dinamica_2var.mdl (MATLAB)
Dinamica_MLagrange.wm2d (Working Model)
%***********************************************************
%****************** Dinamica_Simulk *******************
%***********************************************************
% clear all
% close all
% clc
%
% inc=10;
% contador=0;
%
% for t=0:inc:360
% contador=contador+1;
% Theta=t*pi/180;
function qpp=Dinamica_Simulk_2var(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Gravedad
g=9.80;
%Torque
MTorque=100;
Fcorte=-50;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
ANEXOS ANEXO J
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=((LBC*cos(Phi-Theta))/(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi)));
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
K=[KPhi;KBeta;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
LPhi=(((-LBC*sin(Phi-Theta)*((KPhi*ThetaP)-ThetaP))*(LBC*cos(Phi-
Theta)+H*cos(Phi)-P*sin(Phi)))-((LBC*cos(Phi-Theta))*(-LBC*sin(Phi-
Theta)*((KPhi*ThetaP)-ThetaP)-H*sin(Phi)*(KPhi*ThetaP)-
P*cos(Phi)*(KPhi*ThetaP))))/((LBC*cos(Phi-Theta)+H*cos(Phi)-
P*sin(Phi))^2);
LBeta=((LAE*sin(Phi)*LPhi)+(LAE*cos(Phi)*KPhi*ThetaP*KPhi)-
(LEF*cos(Beta)*KBeta*ThetaP*KBeta))/(LEF*sin(Beta));
L=[LPhi;LBeta;0];
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
RCCMPP=[-
LBC*cos(Theta);(LBC*cos(Theta)*cos(Phi))/sin(Phi)]*ThetaPP+[LBC*sin(Theta
);-(LBC*sin(Theta)*cos(Phi))/sin(Phi)]*ThetaP^2-
[0;2*LBC*cos(Theta)/(sin(Phi))^2]*KPhi*ThetaP^2-[0;(LBC*sin(Theta)-
P)/(sin(Phi))^2]*KPhi*ThetaPP-[0;(LBC*sin(Theta)-
P)/(sin(Phi))^2]*LPhi*ThetaP+[0;(2*(LBC*sin(Theta)-
P)*cos(Phi))/(sin(Phi))^3]*KPhi^2*ThetaP^2+Mtz_TDD1P*UV_ELmC*KPhi*ThetaPP
+Mtz_TDD1P*UV_ELmC*LPhi*ThetaP-Mtz_TDD1*UV_ELmC*KPhi^2*ThetaP^2;
end
RCCMxPP=RCCMPP((1));
RCCMyPP=RCCMPP((2));
%***********************************************************
%*************** MATRIZ MASA ******************
%***********************************************************
%Matriz de 3x3
MTC11=((mC*(LBC*cos(Theta)+H)^2)/(cos(Phi))^4)+((2*mC*(LBC*cos(Theta)+H)*
v3)/cos(Phi))+(mC*(u3^2+v3^2))+((2*mC*(LBC*cos(Theta)+H)*sin(Phi)*u3)/(co
s(Phi)^2))+IC;
MTC13=-((mC*(LBC*cos(Theta)+H)*(LBC*sin(Theta))*sin(Phi))/(cos(Phi))^3)-
((mC*(LBC*sin(Theta)*u3))/cos(Phi));
MTC31=(-(mC*(LBC*cos(Theta)+H)*LBC*sin(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/cos(Phi));
MTC33=((mC*LBC^2*(sin(Theta))^2)/(cos(Phi))^2);
NgTC11=((mC*cos(Phi)*u3)-(mC*sin(Phi)*v3));
NgTC31=-(mC*LBC*sin(Theta));
NcTC11=(((2*mC*(LBC*cos(Theta)+H)^2*sin(Phi))/(cos(Phi))^5)+((mC*(LBC*cos
(Theta)+H)*sin(Phi)*v3)/(cos(Phi))^2)-
((mC*(LBC*cos(Theta)+H)*u3)/cos(Phi))+((2*mC*(LBC*cos(Theta)+H)*u3)/(cos(
Phi))^3))*KPhi*ThetaP;
NcTC31=(((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^2)-
((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)+((mC*LBC*sin(Thet
a)*v3)/cos(Phi)))*KPhi*ThetaP;
NcTC13=(((-mC*(LBC*cos(Theta)+H)*LBC*cos(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*cos(Theta)*u3)/cos(Phi)))*ThetaP;
NcTC33=((mC*LBC^2*sin(Theta)*cos(Theta))/(cos(Phi))^2)*ThetaP;
NcTC11A=(((-2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)-
((2*mC*LBC*sin(Theta)*v3)/cos(Phi))-
((2*mC*LBC*sin(Theta)*sin(Phi)*u3)/(cos(Phi))^2))*ThetaP;
NcTC31A=((mC*LBC^2*(sin(Theta))^2*sin(Phi))/(cos(Phi))^3)*ThetaP;
ANEXOS ANEXO J
else
MTC11=((mC*(LBC*sin(Theta)-P)^2)/(sin(Phi))^4)+((2*mC*(LBC*sin(Theta)-
P)*v3)/sin(Phi))+(mC*(u3^2+v3^2))-((2*mC*(LBC*sin(Theta)-
P)*cos(Phi)*u3)/(sin(Phi))^2)+IC;
MTC13=(-mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*(cos(Phi))/(sin(Phi)^3))+((mC*(LBC*cos(Theta)*u3))/si
n(Phi));
MTC31=-((mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*cos(Phi))/(sin(Phi))^3)+((mC*LBC*cos(Theta)*u3)/sin(P
hi));
MTC33=((mC*LBC^2*(cos(Theta))^2)/(sin(Phi))^2);
NgTC11=-((mC*(LBC*sin(Theta)-P))/(sin(Phi))^2)+(mC*cos(Phi)*u3)-
(mC*sin(Phi)*v3);
NgTC31=(mC*LBC*cos(Theta)*cos(Phi))/sin(Phi);
NcTC11=(((-(2*mC*(LBC*sin(Theta)-P)^2*cos(Phi)))/(sin(Phi))^5)-
((mC*(LBC*sin(Theta)-P)*cos(Phi)*v3)/(sin(Phi))^2)-((mC*(LBC*sin(Theta)-
P)*u3)/sin(Phi))+((2*mC*(LBC*sin(Theta)-
P)*u3)/(sin(Phi))^3))*KPhi*ThetaP;
NcTC31=(((-2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^2)+((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)-
((mC*LBC*cos(Theta)*v3)/sin(Phi)))*KPhi*ThetaP;
NcTC13=(((mC*(LBC*sin(Theta)-P)*LBC*sin(Theta)*cos(Phi))/(sin(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/sin(Phi)))*ThetaP;
NcTC33=((-mC*LBC^2*sin(Theta)*cos(Theta))/(sin(Phi))^2)*ThetaP;
NcTC11A=(((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)+((2*mC*LBC*cos(Theta)*v3)/sin(Phi))-
((2*mC*LBC*cos(Theta)*cos(Phi)*u3)/(sin(Phi))^2))*ThetaP;
NcTC31A=((-2*mC*LBC^2*(cos(Theta))^2*cos(Phi))/(sin(Phi))^3)*ThetaP;
end
Masa11=((mDD1*(u4^2+v4^2))+(mEF*LAE^2)+(mF*LAE^2*(cos(Phi))^2)+(IDD1))+MT
C11;
Masa12=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Phi)*cos(Beta)));
Masa13=0+MTC13;
Masa21=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Beta)*cos(Phi)));
Masa22=((mEF*(u5^2+v5^2))+(mF*LEF^2*(cos(Beta))^2)+(IEF));
Masa23=0;
ANEXOS ANEXO J
Masa31=0+MTC31;
Masa32=0;
Masa33=((mBB1*(u2^2+v2^2))+(IBB1))+MTC33;
M=[Masa11,Masa12,Masa13;Masa21,Masa22,Masa23;Masa31,Masa32,Masa33];
%***********************************************************
%*************** MATRIZ NC ********************
%***********************************************************
%Matriz de 3x3
Nc11=-(mF*LAE^2*cos(Phi)*sin(Phi))*KPhi*ThetaP+NcTC11+NcTC11A;
Nc12=(-(mEF*LAE*sin(Phi-Beta)*v5)-(mEF*LAE*cos(Phi-
Beta)*u5)+(mF*LAE*LEF*cos(Phi)*sin(Beta)))*KBeta*ThetaP;
Nc13=0+NcTC13;
Nc21=((mEF*LAE*cos(Phi-Beta)*u5)+(mEF*LAE*sin(Phi-Beta)*v5))*KPhi*ThetaP;
Nc22=(-
(mF*LEF^2*cos(Beta)*sin(Beta)))*KBeta*ThetaP+(mF*LAE*LEF*cos(Beta)*sin(Ph
i)*KPhi*ThetaP);
Nc23=0;
Nc31=0+NcTC31+NcTC31A;
Nc32=0;
Nc33=NcTC33;
Nc=[Nc11,Nc12,Nc13;Nc21,Nc22,Nc23;Nc31,Nc32,Nc33];
%***********************************************************
%*************** MATRIZ NG ********************
%***********************************************************
%Matriz de 3x1
Ng11=((mDD1*(cos(Phi)*u4-sin(Phi)*v4))+(mEF*LAE*sin(Phi)))+NgTC11;
Ng21=(mEF*(cos(Beta)*u5-sin(Beta)*v5));
Ng31=(mBB1*(cos(Theta)*u2-sin(Theta)*v2))+NgTC31;
NG=[Ng11;Ng21;Ng31]*g;
%***********************************************************
%*************** MATRIZ JACOBIAN0 ******************
%***********************************************************
J11=-(LBC*cos(Phi-Theta)+H*cos(Phi)-P*sin(Phi));
J12=0;
J13=(LBC*cos(Phi-Theta));
J21=LAE*sin(Phi);
J22=-(LEF*sin(Beta));
J23=0;
J=[J11,J12,J13;J21,J22,J23];
ANEXOS ANEXO J
%***********************************************************
%************ MULTP LAGRANGE ********************
%***********************************************************
%***********************************************************
%************ Fuerzas Externas ********************
%***********************************************************
%PRUEBA
QEXT=[Fcorte*(LAE*cos(Phi));-Fcorte*(LEF*cos(Beta));MTorque];
%***********************************************************
%*************** ECUACION DINAMICA *******************
%***********************************************************
f=(M*K*ThetaPP+(M*L+Nc*K)*ThetaP+NG)+J'*LGRmult-QEXT;
% f=M*K*ThetaPP+(M*L+Nc*K)*ThetaP+Ng+J'*LGRmult;
S=solve(f((1)),f((2)),f((3)),ThetaPP,LGRmult1,LGRmult2);
S=[S.ThetaPP S.LGRmult1 S.LGRmult2];
ThetaPP=eval(S((1)));
LGRmult1=eval(S((2)));
LGRmult2=eval(S((3)));
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',Theta);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
ANEXOS ANEXO J
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('LGRmult1= %g \n',LGRmult1);
% fprintf('LGRmult2= %g \n',LGRmult2);
% fprintf('LGRmult3= %g \n',LGRmult3);
% fprintf('LGRmult4= %g \n',LGRmult4);
% fprintf('\n');
qpp = [ThetaPP;LGRmult1;LGRmult2];
% end
ANEXOS
Diagrama en simulink
ANEXO J
ANEXOS ANEXO J
ANEXOS ANEXO K
ANEXO K
En este ANEXO se incluyen 3 archivos:
Dinamica_Simulk_2var.m (MATLAB)
Dinamica_2var.mdl (MATLAB)
Dinamica_MLagrange.wm2d (Working Model)
%***********************************************************
%****************** Dinamica_Simulk *******************
%***********************************************************
% clear all
% close all
% clc
%
% inc=10;
% contador=0;
%
% for t=0:inc:360
% contador=contador+1;
% Theta=t*pi/180;
function Solqpp=Dinamica_Simulk_2var(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Masa e Inercia EF
mEF=3;
IEF=10;
% Masa e Inercia F
mF=4;
IF=10;
% Masa e Inercia C
mC=5;
IC=7;
% Gravedad
g=9.80;
%Torque
MTorque=100;
% FBCG=100;
Fcorte=-50;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)-P)/((LBC*cos(Theta))+H));
if ((LBC*cos(Theta))+H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
ANEXOS ANEXO K
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)+H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)-P)/sin(Phi))));
end
LACH=LAC;
RBB1x=-(LBB1)*sin(Theta);
RBB1y=(LBB1)*cos(Theta);
RBCx=-(LBB1-LCB1)*sin(Theta);
RBCy=(LBB1-LCB1)*cos(Theta);
RACx=-LAC*sin(Phi);
RACy=LAC*cos(Phi);
RADx=-LAD*sin(Phi);
RADy=LAD*cos(Phi);
RAD1x=LAD1*sin(Phi);
RAD1y=-LAD1*cos(Phi);
RAEx=LAE*sin(Phi);
RAEy=-LAE*cos(Phi);
REFx=-LEF*sin(Beta);
REFy=LEF*cos(Beta);
RBFx=(-P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%***************** VELOCIDAD **************************
%***********************************************************
PhiP=((LBC*cos(Phi-Theta))*ThetaP)/((LBC*cos(Phi-Theta))+H*cos(Phi)-
P*sin(Phi));
BetaP=(LAE*sin(Phi)*PhiP)/(LEF*sin(Beta));
ANEXOS ANEXO K
% Calculamos LACP, pero hay dos ecuaciones que tenemos que distinguir
LACP=((-
LBC*sin(Theta)*ThetaP)/cos(Phi))+(((LBC*cos(Theta)+H)*sin(Phi)*PhiP)/((co
s(Phi))^2));
else
LACP=((LBC*cos(Theta)*ThetaP)/sin(Phi))-(((LBC*sin(Theta)-
P)*cos(Phi)*PhiP)/((sin(Phi))^2));
end
RBB1xP=-LBB1*cos(Theta)*ThetaP;
RBB1yP=-(LBB1)*sin(Theta)*ThetaP;
RBCxP=-(LBB1-LCB1)*cos(Theta)*ThetaP;
RBCyP=-(LBB1-LCB1)*sin(Theta)*ThetaP;
RACxP=-LACP*sin(Phi)-(LAC*cos(Phi)*PhiP);
RACyP=LACP*cos(Phi)-(LAC*sin(Phi)*PhiP);
RADxP=-LAD*cos(Phi)*PhiP;
RADyP=-LAD*sin(Phi)*PhiP;
RAD1xP=LAD1*cos(Phi)*PhiP;
RAD1yP=LAD1*sin(Phi)*PhiP;
RAExP=LAE*cos(Phi)*PhiP;
RAEyP=LAE*sin(Phi)*PhiP;
REFxP=-LEF*cos(Beta)*BetaP;
REFyP=-LEF*sin(Beta)*BetaP;
RBFxP=LAE*cos(Phi)*PhiP-LEF*cos(Beta)*BetaP;
%***********************************************************
%*************** MATRIZ MASA ******************
%***********************************************************
%Matriz de 3x3
MTC11=((mC*(LBC*cos(Theta)+H)^2)/(cos(Phi))^4)+((2*mC*(LBC*cos(Theta)+H)*
v3)/cos(Phi))+(mC*(u3^2+v3^2))+((2*mC*(LBC*cos(Theta)+H)*sin(Phi)*u3)/(co
s(Phi)^2))+IC;
MTC13=-((mC*(LBC*cos(Theta)+H)*(LBC*sin(Theta))*sin(Phi))/(cos(Phi))^3)-
((mC*(LBC*sin(Theta)*u3))/cos(Phi));
MTC31=(-(mC*(LBC*cos(Theta)+H)*LBC*sin(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/cos(Phi));
MTC33=((mC*LBC^2*(sin(Theta))^2)/(cos(Phi))^2);
NgTC11=((mC*cos(Phi)*u3)-(mC*sin(Phi)*v3));
NgTC31=-(mC*LBC*sin(Theta));
ANEXOS ANEXO K
NcTC11=(((2*mC*(LBC*cos(Theta)+H)^2*sin(Phi))/(cos(Phi))^5)+((mC*(LBC*cos
(Theta)+H)*sin(Phi)*v3)/(cos(Phi))^2)-
((mC*(LBC*cos(Theta)+H)*u3)/cos(Phi))+((2*mC*(LBC*cos(Theta)+H)*u3)/(cos(
Phi))^3))*PhiP;
NcTC31=(((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^2)-
((2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)+((mC*LBC*sin(Thet
a)*v3)/cos(Phi)))*PhiP;
NcTC13=(((-mC*(LBC*cos(Theta)+H)*LBC*cos(Theta)*sin(Phi))/(cos(Phi))^3)-
((mC*LBC*cos(Theta)*u3)/cos(Phi)))*ThetaP;
NcTC33=((mC*LBC^2*sin(Theta)*cos(Theta))/(cos(Phi))^2)*ThetaP;
NcTC11A=(((-2*mC*(LBC*cos(Theta)+H)*LBC*sin(Theta))/(cos(Phi))^4)-
((2*mC*LBC*sin(Theta)*v3)/cos(Phi))-
((2*mC*LBC*sin(Theta)*sin(Phi)*u3)/(cos(Phi))^2))*ThetaP;
NcTC31A=((mC*LBC^2*(sin(Theta))^2*sin(Phi))/(cos(Phi))^3)*ThetaP;
else
MTC11=((mC*(LBC*sin(Theta)-P)^2)/(sin(Phi))^4)+((2*mC*(LBC*sin(Theta)-
P)*v3)/sin(Phi))+(mC*(u3^2+v3^2))-((2*mC*(LBC*sin(Theta)-
P)*cos(Phi)*u3)/(sin(Phi))^2)+IC;
MTC13=(-mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*(cos(Phi))/(sin(Phi)^3))+((mC*(LBC*cos(Theta)*u3))/si
n(Phi));
MTC31=-((mC*(LBC*sin(Theta)-
P)*(LBC*cos(Theta))*cos(Phi))/(sin(Phi))^3)+((mC*LBC*cos(Theta)*u3)/sin(P
hi));
MTC33=((mC*LBC^2*(cos(Theta))^2)/(sin(Phi))^2);
NgTC11=-((mC*(LBC*sin(Theta)-P))/(sin(Phi))^2)+(mC*cos(Phi)*u3)-
(mC*sin(Phi)*v3);
NgTC31=(mC*LBC*cos(Theta)*cos(Phi))/sin(Phi);
NcTC11=(((-(2*mC*(LBC*sin(Theta)-P)^2*cos(Phi)))/(sin(Phi))^5)-
((mC*(LBC*sin(Theta)-P)*cos(Phi)*v3)/(sin(Phi))^2)-((mC*(LBC*sin(Theta)-
P)*u3)/sin(Phi))+((2*mC*(LBC*sin(Theta)-P)*u3)/(sin(Phi))^3))*PhiP;
NcTC31=(((-2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^2)+((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)-((mC*LBC*cos(Theta)*v3)/sin(Phi)))*PhiP;
NcTC13=(((mC*(LBC*sin(Theta)-P)*LBC*sin(Theta)*cos(Phi))/(sin(Phi))^3)-
((mC*LBC*sin(Theta)*u3)/sin(Phi)))*ThetaP;
NcTC33=((-mC*LBC^2*sin(Theta)*cos(Theta))/(sin(Phi))^2)*ThetaP;
NcTC11A=(((2*mC*(LBC*sin(Theta)-
P)*LBC*cos(Theta))/(sin(Phi))^4)+((2*mC*LBC*cos(Theta)*v3)/sin(Phi))-
((2*mC*LBC*cos(Theta)*cos(Phi)*u3)/(sin(Phi))^2))*ThetaP;
NcTC31A=((-2*mC*LBC^2*(cos(Theta))^2*cos(Phi))/(sin(Phi))^3)*ThetaP;
end
ANEXOS ANEXO K
Masa11=((mDD1*(u4^2+v4^2))+(mEF*LAE^2)+(mF*LAE^2*(cos(Phi))^2)+(IDD1))+MT
C11;
Masa12=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Phi)*cos(Beta)));
Masa13=0+MTC13;
Masa21=((mEF*LAE*sin(Phi-Beta)*u5)-(mEF*LAE*cos(Phi-Beta)*v5)-
(mF*LAE*LEF*cos(Beta)*cos(Phi)));
Masa22=((mEF*(u5^2+v5^2))+(mF*LEF^2*(cos(Beta))^2)+(IEF));
Masa23=0;
Masa31=0+MTC31;
Masa32=0;
Masa33=((mBB1*(u2^2+v2^2))+(IBB1))+MTC33;
M=[Masa11,Masa12,Masa13;Masa21,Masa22,Masa23;Masa31,Masa32,Masa33];
%***********************************************************
%*************** MATRIZ NC ********************
%***********************************************************
%Matriz de 3x3
Nc11=-(mF*LAE^2*cos(Phi)*sin(Phi))*PhiP+NcTC11+NcTC11A;
Nc12=(-(mEF*LAE*sin(Phi-Beta)*v5)-(mEF*LAE*cos(Phi-
Beta)*u5)+(mF*LAE*LEF*cos(Phi)*sin(Beta)))*BetaP;
Nc13=0+NcTC13;
Nc21=((mEF*LAE*cos(Phi-Beta)*u5)+(mEF*LAE*sin(Phi-Beta)*v5))*PhiP;
Nc22=(-
(mF*LEF^2*cos(Beta)*sin(Beta)))*BetaP+(mF*LAE*LEF*cos(Beta)*sin(Phi)*PhiP
);
Nc23=0;
Nc31=0+NcTC31+NcTC31A;
Nc32=0;
Nc33=NcTC33;
Nc=[Nc11,Nc12,Nc13;Nc21,Nc22,Nc23;Nc31,Nc32,Nc33];
%***********************************************************
%*************** MATRIZ NG ********************
%***********************************************************
%Matriz de 3x1
Ng11=((mDD1*(cos(Phi)*u4-sin(Phi)*v4))+(mEF*LAE*sin(Phi)))+NgTC11;
Ng21=(mEF*(cos(Beta)*u5-sin(Beta)*v5));
Ng31=(mBB1*(cos(Theta)*u2-sin(Theta)*v2))+NgTC31;
NG=[Ng11;Ng21;Ng31]*g;
ANEXOS ANEXO K
%***********************************************************
%*************** MATRIZ JACOBIAN0 ******************
%***********************************************************
J11=(-LBC*cos(Phi-Theta)-H*cos(Phi)+P*sin(Phi));
J12=0;
J13=(LBC*cos(Phi-Theta));
J21=LAE*sin(Phi);
J22=-(LEF*sin(Beta));
J23=0;
J=[J11,J12,J13;J21,J22,J23];
%***********************************************************
%********* MATRIZ Derivada JACOBIAN0 ***************
%***********************************************************
J11P=(LBC*sin(Phi-Theta)*(PhiP-
ThetaP))+(H*sin(Phi)*PhiP)+(P*cos(Phi)*PhiP);
J12P=0;
J13P=-(LBC*sin(Phi-Theta)*(PhiP-ThetaP));
J21P=(LAE*cos(Phi)*PhiP);
J22P=-(LEF*cos(Beta)*BetaP);
J23P=0;
JP=[J11P,J12P,J13P;J21P,J22P,J23P];
%***********************************************************
%************ MULTP LAGRANGE ********************
%***********************************************************
%***********************************************************
%************ Fuerzas Externas ********************
%***********************************************************
%PRUEBA
QEXT=[Fcorte*(LAE*cos(Phi));-Fcorte*(LEF*cos(Beta));MTorque];
%***********************************************************
%*************** ECUACION DINAMICA *******************
%***********************************************************
q=[Phi;Beta;Theta];
qp=[PhiP;BetaP;ThetaP];
qpp=[PhiPP;BetaPP;ThetaPP];
ANEXOS ANEXO K
f=M*qpp+J'*LGRmult-Q;
g=J*qpp-c;
S=solve(f((1)),f((2)),f((3)),g((1)),g((2)),PhiPP,BetaPP,ThetaPP,LGRmult1,
LGRmult2);
S=[S.PhiPP S.BetaPP S.ThetaPP S.LGRmult1 S.LGRmult2];
PhiPP=eval(S((1)));
BetaPP=eval(S((2)));
ThetaPP=eval(S((3)));
LGRmult1=eval(S((4)));
LGRmult2=eval(S((5)));
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',Theta);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('Phi= %g \n',Phi);
% fprintf('Beta= %g \n',Beta);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
ANEXOS ANEXO K
% fprintf('mC= %g \n',mC);
% fprintf('LGRmult1= %g \n',LGRmult1);
% fprintf('LGRmult2= %g \n',LGRmult2);
% fprintf('LGRmult3= %g \n',LGRmult3);
% fprintf('LGRmult4= %g \n',LGRmult4);
% fprintf('\n');
Solqpp = [ThetaPP;LGRmult1;LGRmult2;PhiPP;BetaPP];
% end
ANEXOS
Diagrama en simulink
ANEXO K
ANEXOS ANEXO K
ANEXOS ANEXO L
ANEXO L
En este ANEXO se incluyen 5 archivos:
Dim_Simulk.m (MATLAB)
Reacciones_DimEK.m (MATLAB)
Dim.mdl (MATLAB)
Dinamica_Reacciones_DimEK.wm2d (Working Model)
Reaction Force.wm2d (Working Model)
%***********************************************************
%****************** Dim_Simulk *******************
%***********************************************************
function qpp=Dim_Simulk(u)
%***********************************************************
%****************** DATOS *******************
%***********************************************************
syms ThetaPP;
% Gravedad
g=9.80;
%Torque
% MTorque=100;
% Fcorte=-50;
MTorque=100;
Fcorte=-50;
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
Phi=atan((LBC*sin(Theta)+P)/((LBC*cos(Theta))-H));
if ((LBC*cos(Theta))-H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(-H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)-H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)+P)/sin(Phi))));
end
LACH=LAC;
RBFx=(P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=(LBC/LACH)*cos(Phi-Theta);
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
KRBFx=(LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta);
K=[KPhi;KLAC;KBeta;KRBFx;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
%Se divide entre ThetaP, Para que exista coherencia en este mtodo, ya
que
%las ecuaciones se obtuvieron, primero mediante el metodo de los
%multiplicadores
%Se obtienen nuevamente los coeficientes L, con respecto a ThetaP, como
se
%hizo ahora.
LPhi=((-LBC/LACH)*sin(Phi-Theta)*(KPhi-1))-((LBC*cos(Phi-
Theta)*KLAC)/LACH^2);
LLAC=((((KLAC*sin(Phi)*KPhi)+(LAC*cos(Phi)*KPhi^2)+(LAC*sin(Phi)*LPhi)-
(LBC*cos(Theta)))*cos(Phi))+(((LAC*sin(Phi)*KPhi)-
(LBC*sin(Theta)))*sin(Phi)*cos(Phi)))/((cos(Phi))^2);
else
LLAC=((((-KLAC*cos(Phi)*KPhi)+(LAC*sin(Phi)*KPhi^2)-
(LAC*cos(Phi)*LPhi)-(LBC*sin(Theta)))*sin(Phi))-(((-
LAC*cos(Phi)*KPhi)+(LBC*cos(Theta)))*cos(Phi)*KPhi))/((sin(Phi))^2);
end
LBeta=((((LAE*cos(Phi)*KPhi^2)+(LAE*sin(Phi)*LPhi))*(LEF*sin(Beta)))-
((LAE*sin(Phi)*KPhi)*(LEF*cos(Beta)*KBeta)))/((LEF*sin(Beta))^2);
LRBFx=(-LAE*sin(Phi)*KPhi^2)+(LAE*cos(Phi)*LPhi)+(LEF*sin(Beta)*KBeta^2)-
(LEF*cos(Beta)*LBeta);
L=[LPhi;LLAC;LBeta;LRBFx;0];
ANEXOS ANEXO L
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
% %***********************************************************
% %****************** ACELERACIN CM **********************
% %***********************************************************
%
% % Aceleracin del CM_ELmBB1 desde el sistema de coordenadas (X,Y)
% RBB1CMPP=Mtz_TBB1P*UV_ELmBB1*ThetaPP-Mtz_TBB1*UV_ELmBB1*ThetaP^2;
% RBB1CMxPP=RBB1CMPP((1));
% RBB1CMyPP=RBB1CMPP((2));
% % Aceleracin del CM_ELmDD1 desde el sistema de coordenadas (X,Y)
%
RDD1CMPP=Mtz_TDD1P*UV_ELmDD1*KPhi*ThetaPP+Mtz_TDD1P*UV_ELmDD1*LPhi*ThetaP
-Mtz_TDD1*UV_ELmDD1*KPhi^2*ThetaP^2;
% RDD1CMxPP=RDD1CMPP((1));
% RDD1CMyPP=RDD1CMPP((2));
% % Aceleracin del CM_ELmEF desde el sistema de coordenadas (X,Y)
%
REFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Ph
i)]*LPhi*ThetaP+[-
LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2+Mtz_TEFP*UV_ELmEF*KBeta*ThetaP
P+Mtz_TEFP*UV_ELmEF*LBeta*ThetaP-Mtz_TEF*UV_ELmEF*KBeta^2*ThetaP^2;
% REFCMxPP=REFCMPP((1));
% REFCMyPP=REFCMPP((2));
% % Aceleracin del CM_ELmF desde el sistema de coordenadas (X,Y)
%
RFCMPP=[LAE*cos(Phi);LAE*sin(Phi)]*KPhi*ThetaPP+[LAE*cos(Phi);LAE*sin(Phi
)]*LPhi*ThetaP+[-LAE*sin(Phi);LAE*cos(Phi)]*KPhi^2*ThetaP^2-
[LEF*cos(Beta);LEF*sin(Beta)]*KBeta*ThetaPP-
[LEF*cos(Beta);LEF*sin(Beta)]*LBeta*ThetaP+[LEF*sin(Beta);-
LEF*cos(Beta)]*KBeta^2*ThetaP^2;
% RFCMxPP=RFCMPP((1));
% RFCMyPP=RFCMPP((2));
% % Aceleracin del CM_ELmC desde el sistema de coordenadas (X,Y)
% RCCMPP=[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[KPhi;KLAC]*ThetaPP+[-LAC*cos(Phi) -sin(Phi);-LAC*sin(Phi)
cos(Phi)]*[LPhi;LLAC]*ThetaP+[LAC*sin(Phi)*KPhi -2*cos(Phi)*KPhi;-
LAC*cos(Phi)*KPhi -
2*sin(Phi)*KPhi]*[KPhi;KLAC]*ThetaP^2+Mtz_TDD1P*UV_ELmC*KPhi*ThetaPP+Mtz_
TDD1P*UV_ELmC*KPhi*LPhi*ThetaP-Mtz_TDD1*UV_ELmC*KPhi^2*ThetaP^2;
ANEXOS ANEXO L
% RCCMxPP=RCCMPP((1));
% RCCMyPP=RCCMPP((2));
%***********************************************************
%*************** Inercia General ******************
%***********************************************************
IG=(mBB1*(u2^2+v2^2))+IBB1+(mDD1*((u4^2+v4^2)*KPhi^2))+(IDD1*(KPhi^2))+(m
EF*((LAE^2*KPhi^2)+((u5^2+v5^2)*KBeta^2)+(2*LAE*sin(Phi-
Beta)*u5*KPhi*KBeta)-(2*LAE*cos(Phi-
Beta)*v5*KPhi*KBeta)))+(IEF*(KBeta^2))+(mF*(KRBFx^2))+(mC*(KLAC^2+((LAC^2
+u3^2+2*LAC*v3+v3^2)*KPhi^2)+(2*u3*KLAC*KPhi)))+(IC*(KPhi^2));
%***********************************************************
%******** Derivada Inercia General contra Theta ********
%***********************************************************
IGp=(mDD1*((u4^2+v4^2)*KPhi*LPhi))+(IDD1*(KPhi*LPhi))+(mEF*((LAE^2*KPhi*L
Phi)+((u5^2+v5^2)*KBeta*LBeta)+(LAE*cos(Phi-Beta)*(KPhi-
KBeta)*u5*KPhi*KBeta)+(LAE*sin(Phi-Beta)*u5*LPhi*KBeta)+(LAE*sin(Phi-
Beta)*u5*KPhi*LBeta)+(LAE*sin(Phi-Beta)*(KPhi-KBeta)*v5*KPhi*KBeta)-
(LAE*cos(Phi-Beta)*v5*LPhi*KBeta)-(LAE*cos(Phi-
Beta)*v5*KPhi*LBeta)))+(IEF*KBeta*LBeta)+(mF*(KRBFx*LRBFx))+(mC*((KLAC*LL
AC)+((LAC*KLAC+KLAC*v3)*KPhi^2)+((LAC^2+u3^2+2*LAC*v3+v3^2)*KPhi*LPhi)+(u
3*LLAC*KPhi)+(u3*KLAC*LPhi)))+(IC*(KPhi*LPhi));
%***********************************************************
%********* Derivada Potencial **********
%***********************************************************
Vp=(mBB1*((cos(Theta)*u2)-(sin(Theta)*v2)))+(mDD1*((cos(Phi)*KPhi*u4)-
(sin(Phi)*KPhi*v4)))+(mEF*((LAE*sin(Phi)*KPhi)+(cos(Beta)*KBeta*u5)-
(sin(Beta)*KBeta*v5)))+(mC*((KLAC*cos(Phi))-
(LAC*sin(Phi)*KPhi)+(cos(Phi)*KPhi*u3)-(sin(Phi)*KPhi*v3)));
%***********************************************************
%********* Dinmica **********
%***********************************************************
%PRUEBA
Dist=((LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta));
QExt=MTorque+(Fcorte*Dist);
ThetaPP=(1/IG)*(QExt-(IGp*ThetaP*ThetaP)-(Vp*g));
% ThetaPP=10;
ANEXOS ANEXO L
%***********************************************************
%****************** ACELERACIN CM **********************
%***********************************************************
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
% fprintf('t= %g \n',t);
% fprintf('Theta= %g \n',t);
% fprintf('ThetaP= %g \n',ThetaP);
% fprintf('ThetaPP= %g \n',ThetaPP);
% fprintf('Phi= %g \n',Phi);
% fprintf('LAC= %g \n',LAC);
% fprintf('RBFx= %g \n',RBFx);
% fprintf('KPhi= %g \n',KPhi);
% fprintf('KBeta= %g \n',KBeta);
% fprintf('KLAC= %g \n',KLAC);
% fprintf('KRBFx= %g \n',KRBFx);
% fprintf('LPhi= %g \n',LPhi);
ANEXOS ANEXO L
% fprintf('LBeta= %g \n',LBeta);
% fprintf('LLAC= %g \n',LLAC);
% fprintf('LRBFx= %g \n',LRBFx);
% fprintf('u2= %g \n',u2);
% fprintf('v2= %g \n',v2);
% fprintf('u4= %g \n',u4);
% fprintf('v4= %g \n',v4);
% fprintf('u5= %g \n',u5);
% fprintf('v5= %g \n',v5);
% fprintf('u3= %g \n',u3);
% fprintf('v3= %g \n',v3);
% fprintf('u6= %g \n',u6);
% fprintf('v6= %g \n',v6);
% fprintf('IBB1= %g \n',IBB1);
% fprintf('IDD1= %g \n',IDD1);
% fprintf('IEF= %g \n',IEF);
% fprintf('IF= %g \n',IF);
% fprintf('IC= %g \n',IC);
% fprintf('mBB1= %g \n',mBB1);
% fprintf('mDD1= %g \n',mDD1);
% fprintf('mEF= %g \n',mEF);
% fprintf('mF= %g \n',mF);
% fprintf('mC= %g \n',mC);
% fprintf('IG= %g \n',IG);
% fprintf('IGp*ThetaP^2= %g \n',IGp*ThetaP*ThetaP);
% fprintf('Vp= %g \n',Vp);
% fprintf('RBB1CMPP= %g \n',RBB1CMPP);
% fprintf('RDD1CMPP= %g \n',RDD1CMPP);
% fprintf('REFCMPP= %g \n',REFCMPP);
% fprintf('RFCMP= %g \n',RFCMP);
% fprintf('RFCMPP= %g \n',RFCMPP);
% fprintf('RCCMP= %g \n',RCCMP);
% fprintf('RCCMPP= %g \n',RCCMPP);
% fprintf('\n');
qpp = [ThetaPP];
% end
ANEXOS ANEXO L
Reacciones_DimEK.m
%***********************************************************
%*********** Reacciones Dinamica EKSergian ***************
%***********************************************************
% clc
% clear all
% close all
function F=Reacciones_DimEK(u)
Theta=u(1);
ThetaP=u(2);
ThetaPP=u(3);
syms f1BB1x f1BB1y fCBB1x fCBB1y fDD1Cx fDD1Cy f1DD1x f1DD1y fEFDD1x
fEFDD1y fFEFx fFEFy f1Fy uCNCy RCMFfcortey RCMFNFx RCMFNFy uCNCx f1Fx
fDD1C;
% Gravedad
g=9.80;
%Torque
% MTorque=100;
% Fcorte=-50;
MTorque=100;
Fcorte=-50;
ANEXOS ANEXO L
%***********************************************************
%****************** POSICIN **************************
%***********************************************************
% Ecuaciones de Restriccin, determinacin de Phi, Beta.
% NOTA: Cuando P, esta de lado izquierdo, entonces Phi, tiene valores
% negativos. Es importante tomarlo en cuenta a la hora de la
implementacin
Phi=atan((LBC*sin(Theta)+P)/((LBC*cos(Theta))-H));
if ((LBC*cos(Theta))-H)<0
Phi=pi+Phi;
end
%Este factor, se agrega, en caso de que P>0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, cruzara los 360 antes que la
%barra motriz.
end
%Este factor, se agrega, en caso de que P<0, en cuyo caso, la barra que
%define el retroceso rapido del mecanismo, presenta angulos mayores a
300,
%por lo cual se definen en su lugar ngulos negativos.
Beta=-acos((LAE*cos(Phi)+(-H-m))/(LEF));
%Calculamos LAC, pero hay dos ecuaciones que tenemos que distinguir
LAC=abs(((LBC*cos(Theta)-H)/cos(Phi)));
else
LAC=abs((((LBC*sin(Theta)+P)/sin(Phi))));
end
ANEXOS ANEXO L
LACH=LAC;
RBFx=(P+LAE*sin(Phi)-LEF*sin(Beta));
%***********************************************************
%*********** Coeficientes de Velocidad ****************
%***********************************************************
%Se puede resolver por manipulacion de ecuaciones o de forma matricial
KPhi=(LBC/LACH)*cos(Phi-Theta);
KBeta=(LAE*sin(Phi)*KPhi)/(LEF*sin(Beta));
KRBFx=(LAE*cos(Phi)*KPhi)-(LEF*cos(Beta)*KBeta);
K=[KPhi;KLAC;KBeta;KRBFx;1];
%***********************************************************
%*********** Coeficientes de Aceleracin ****************
%***********************************************************
%Solucin mediante, manipulacin de ecuaciones.
%NOTA: Checar los coeficientes sustituyendo por K*ThetaP
%Se divide entre ThetaP, Para que exista coherencia en este mtodo, ya
que
%las ecuaciones se obtuvieron, primero mediante el metodo de los
%multiplicadores
%Se obtienen nuevamente los coeficientes L, con respecto a ThetaP, como
se
%hizo ahora.
LPhi=((-LBC/LACH)*sin(Phi-Theta)*(KPhi-1))-((LBC*cos(Phi-
Theta)*KLAC)/LACH^2);
LLAC=((((KLAC*sin(Phi)*KPhi)+(LAC*cos(Phi)*KPhi^2)+(LAC*sin(Phi)*LPhi)-
(LBC*cos(Theta)))*cos(Phi))+(((LAC*sin(Phi)*KPhi)-
(LBC*sin(Theta)))*sin(Phi)*cos(Phi)))/((cos(Phi))^2);
ANEXOS ANEXO L
else
LLAC=((((-KLAC*cos(Phi)*KPhi)+(LAC*sin(Phi)*KPhi^2)-
(LAC*cos(Phi)*LPhi)-(LBC*sin(Theta)))*sin(Phi))-(((-
LAC*cos(Phi)*KPhi)+(LBC*cos(Theta)))*cos(Phi)*KPhi))/((sin(Phi))^2);
end
LBeta=((((LAE*cos(Phi)*KPhi^2)+(LAE*sin(Phi)*LPhi))*(LEF*sin(Beta)))-
((LAE*sin(Phi)*KPhi)*(LEF*cos(Beta)*KBeta)))/((LEF*sin(Beta))^2);
LRBFx=(-LAE*sin(Phi)*KPhi^2)+(LAE*cos(Phi)*LPhi)+(LEF*sin(Beta)*KBeta^2)-
(LEF*cos(Beta)*LBeta);
L=[LPhi;LLAC;LBeta;LRBFx;0];
%***********************************************************
%****************** POSICIN CM ************************
%***********************************************************
%***********************************************************
%****************** VELOCIDAD CM ************************
%***********************************************************
%***********************************************************
%****************** REACCIONES **********************
%***********************************************************
%***********
%ESLABON BB1
%***********
RCMBB1B=Mtz_TBB1*[-u2;-v2];
RCMBB1Bx=RCMBB1B((1));
RCMBB1By=RCMBB1B((2));
if v2<0
LCMBB1C=LBC+v2;
else
LCMBB1C=LBC-v2;
end
RCMBB1C=Mtz_TBB1*[-u2;LCMBB1C];
RCMBB1Cx=RCMBB1C((1));
RCMBB1Cy=RCMBB1C((2));
ANEXOS ANEXO L
%***********
%ESLABON C
%***********
RCMCC=Mtz_TDD1*[-u3;-v3];
RCMCCx=RCMCC((1));
RCMCCy=RCMCC((2));
RCMCNC=Mtz_TDD1*[(uCNCx-u3);(uCNCy-v3)];
RCMCNCx=RCMCNC((1));
RCMCNCy=RCMCNC((2));
% Sumatoria de fuerzas
% fxC: fBB1Cx+fDD1Cx=(mC*RCCMxPP);
% fyC: fBB1Cy+fDD1Cy-(mC*g)=(mC*RCCMyPP);
% MC: ((RCMCCx)*(fBB1Cy))-((RCMCCy)*(fBB1Cx))+((RCMCNCx)*(fDD1Cy))-
((RCMCNCy)*(fDD1Cx))=IC*PhiPP
% fBB1C=-fCBB1;
% fxC: -fCBB1x+fDD1Cx=(mC*RCCMxPP);
% fyC: -fCBB1y+fDD1Cy-(mC*g)=(mC*RCCMyPP);
% MC: -((RCMCCx)*(fCBB1y))+((RCMCCy)*(fCBB1x))+((RCMCNCx)*(fDD1Cy))-
((RCMCNCy)*(fDD1Cx))=(IC*(KPhi*ThetaPP+LPhi*ThetaP^2))
%***********
%ESLABON DD1
%***********
RCMDD1A=Mtz_TDD1*[-u4;-v4];
RCMDD1Ax=RCMDD1A((1));
RCMDD1Ay=RCMDD1A((2));
ANEXOS ANEXO L
if v4<0
LCMDD1E=LAE+v4;
else
LCMDD1E=LAE-v4;
end
RCMDD1E=Mtz_TDD1*[-u4;-LCMDD1E];
RCMDD1Ex=RCMDD1E((1));
RCMDD1Ey=RCMDD1E((2));
RCMDD1NC=Mtz_TDD1*[uCNCx-u4;LAC+uCNCy-v4];
RCMDD1NCx=RCMDD1NC((1));
RCMDD1NCy=RCMDD1NC((2));
%Sumatoria de fuerzas
% fxDD1: f1DD1x+fEFDD1x+fCDD1x=(mDD1*RDD1CMxPP);
% fyDD1: f1DD1y+fEFDD1y+fCDD1y-(mDD1*g)=(mDD1*RDD1CMyPP);
% MDD1: ((RCMDD1Ax)*(f1DD1y))-
((RCMDD1Ay)*(f1DD1x))+((RCMDD1Ex)*(fEFDD1y))-
((RCMDD1Ey)*(fEFDD1x))+((RCMDD1NCx)*(fCDD1y))-
((RCMDD1NCy)*(fCDD1x))=IDD1*PhiPP
% fDD1C=-fCDD1
% fxDD1: f1DD1x+fEFDD1x-fDD1Cx=(mDD1*RDD1CMxPP);
% fyDD1: f1DD1y+fEFDD1y-fDD1Cy-(mDD1*g)=(mDD1*RDD1CMyPP);
% MDD1: ((RCMDD1Ax)*(f1DD1y))-
((RCMDD1Ay)*(f1DD1x))+((RCMDD1Ex)*(fEFDD1y))-((RCMDD1Ey)*(fEFDD1x))-
((RCMDD1NCx)*(fDD1Cy))+((RCMDD1NCy)*(fDD1Cx))=(IDD1*(KPhi*ThetaPP+LPhi*Th
etaP^2))
%***********
%ESLABON EF
%***********
RCMEFE=Mtz_TEF*[-u5;-v5];
RCMEFEx=RCMEFE((1));
RCMEFEy=RCMEFE((2));
ANEXOS ANEXO L
if v5<0
LCMEFF=LEF+v5;
else
LCMEFF=LEF-v5;
end
RCMEFF=Mtz_TEF*[-u5;LCMEFF];
RCMEFFx=RCMEFF((1));
RCMEFFy=RCMEFF((2));
% Sumatoria de Fuerzas
%fxEF: fDD1EFx+fFEFx=mEF*REFCMxPP;
%fyEF: fDD1EFy+fFEFy-(mEF*g)=mEF*REFCMyPP;
%MEF:((RCMEFEx)*(fDD1EFy))-((RCMEFEy)*(fDD1EFx))-
((RCMEFFx)*(fFEFy))+(RCMEFFy)*(fFEFx)=IEF*BetaPP
%BetaPP=KBeta*ThetaPP+LBeta*ThetaP^2
% fDD1EFx=-fEFDD1x;
% fDD1EFy=-fEFDD1y;
% fxEF: -fEFDD1x+fFEFx=mEF*REFCMxPP;
% fyEF: -fEFDD1y+fFEFy-(mEF*g)=mEF*REFCMyPP;
% MEF: -((RCMEFEx)*(fEFDD1y))+((RCMEFEy)*(fEFDD1x))+((RCMEFFx)*(fFEFy))-
(RCMEFFy)*(fFEFx)=(IEF*(KBeta*ThetaPP+LBeta*ThetaP^2))
%***********
%ESLABON F
%***********
RCMFFx=-u6;
RCMFFy=-v6;
RCMFfcortex=-u6+u7;
RCMFfcortey=-v6+v7;
ANEXOS ANEXO L
% Sumatoria de Fuerzas
% fEFFx+f1Fx-Fcorte=mF*RFCMxPP;
% fEFFy+f1Fy-(mF*g)=mF*RFCMyPP;
% ((RCMFFx)*(fEFFy))-((RCMFFy)*(fEFFx))+(RCMFNFx)(f1Fy)-(RCMFNFy)(f1Fx)=0
% fEFFx=-fFEFx;
% fEFFy=-fFEFy;
% f1Fx=0;
% fxF: -fFEFx+Fcorte=(mF*RFCMxPP);
% fyF: -fFEFy+f1Fy-(mF*g)=mF*RFCMyPP;
% MF-(RCMFFx)*(fFEFy)+(RCMFFy)*(fFEFx)+(RCMFNFx)(f1Fy)=0
%**********************
%ECUACIONES RETORNO RAPIDO
%**********************
% fxBB1: f1BB1x+fCBB1x=(mBB1*RBB1CMxPP);
% fyBB1: f1BB1y+fCBB1y-(mBB1*g)=(mBB1*RBB1CMyPP);
% MBB1: ((RCMBB1Bx)*(f1BB1y))-
((RCMBB1By)*(f1BB1x))+((RCMBB1Cx)*(fCBB1y))-
((RCMBB1Cy)*(fCBB1x))=(IBB1*ThetaPP)-MTorque;
% fxC: -fCBB1x+fDD1Cx=(mC*RCCMxPP);
% fyC: -fCBB1y+fDD1Cy-(mC*g)=(mC*RCCMyPP);
% MC: -((RCMCCx)*(fCBB1y))+((RCMCCy)*(fCBB1x))+((RCMCNCx)*(fDD1Cy))-
((RCMCNCy)*(fDD1Cx))=(IC*(KPhi*ThetaPP+LPhi*ThetaP^2))
% fxDD1: f1DD1x+fEFDD1x-fDD1Cx=(mDD1*RDD1CMxPP);
% fyDD1: f1DD1y+fEFDD1y-fDD1Cy-(mDD1*g)=(mDD1*RDD1CMyPP);
% MDD1: ((RCMDD1Ax)*(f1DD1y))-
((RCMDD1Ay)*(f1DD1x))+((RCMDD1Ex)*(fEFDD1y))-((RCMDD1Ey)*(fEFDD1x))-
((RCMDD1NCx)*(fDD1Cy))+((RCMDD1NCy)*(fDD1Cx))=(IDD1*(KPhi*ThetaPP+LPhi*Th
etaP^2))
% INCOGNITAS:
%
f1BB1x,f1BB1y,fCBB1x,fCBB1y,fDD1Cx,fDD1Cy,f1DD1x,f1DD1y,uCNCy,fEFDD1x,fEF
DD1y
% DATO: uCNCx
%*************************
%ECUACIONES BIELA CORREDERA
%*************************
% fxEF: -fEFDD1x+fFEFx=mEF*REFCMxPP;
% fyEF: -fEFDD1y+fFEFy-(mEF*g)=mEF*REFCMyPP;
% MEF: -((RCMEFEx)*(fEFDD1y))+((RCMEFEy)*(fEFDD1x))+((RCMEFFx)*(fFEFy))-
(RCMEFFy)*(fFEFx)=(IEF*(KBeta*ThetaPP+LBeta*ThetaP^2))
% fxF: -fFEFx+Fcorte=(mF*RFCMxPP);
% fyF: -fFEFy+f1Fy-(mF*g)=mF*RFCMyPP;
% MF-(RCMFFx)*(fFEFy)+(RCMFFy)*(fFEFx)+(RCMFNFx)(f1Fy)=0
ANEXOS ANEXO L
% INCOGNITAS:
% fEFDD1x,fEFDD1y,fFEFx,fFEFy,f1F,RCMFfcortey
% DATO: f1x
%**********************
%SOLUCIONES
%**********************
%DATOS
% --------------------------------------------
uCNCx=0;
f1Fx=0;
RCMDD1NC=Mtz_TDD1*[uCNCx-u4;LAC+uCNCy-v4];
RCMDD1NCx=RCMDD1NC((1));
RCMDD1NCy=RCMDD1NC((2));
% --------------------------------------------
f1=f1BB1x+fCBB1x-(mBB1*RBB1CMxPP);
f2=f1BB1y+fCBB1y-(mBB1*g)-(mBB1*RBB1CMyPP);
f3=((RCMBB1Bx)*(f1BB1y))-((RCMBB1By)*(f1BB1x))+((RCMBB1Cx)*(fCBB1y))-
((RCMBB1Cy)*(fCBB1x))-(IBB1*ThetaPP)+MTorque;
f4=-fCBB1x+fDD1Cx-(mC*RCCMxPP);
f5=-fCBB1y+fDD1Cy-(mC*g)-(mC*RCCMyPP);
f6=-((RCMCCx)*(fCBB1y))+((RCMCCy)*(fCBB1x))+((RCMCNCx)*(fDD1Cy))-
((RCMCNCy)*(fDD1Cx))-(IC*(KPhi*ThetaPP+LPhi*ThetaP^2));
f7=f1DD1x+fEFDD1x-fDD1Cx-(mDD1*RDD1CMxPP);
f8=f1DD1y+fEFDD1y-fDD1Cy-(mDD1*g)-(mDD1*RDD1CMyPP);
f9=((RCMDD1Ax)*(f1DD1y))-((RCMDD1Ay)*(f1DD1x))+((RCMDD1Ex)*(fEFDD1y))-
((RCMDD1Ey)*(fEFDD1x))-((RCMDD1NCx)*(fDD1Cy))+((RCMDD1NCy)*(fDD1Cx))-
(IDD1*(KPhi*ThetaPP+LPhi*ThetaP^2));
f10=-fEFDD1x+fFEFx-mEF*REFCMxPP;
f11=-fEFDD1y+fFEFy-(mEF*g)-mEF*REFCMyPP;
f12=-((RCMEFEx)*(fEFDD1y))+((RCMEFEy)*(fEFDD1x))+((RCMEFFx)*(fFEFy))-
(RCMEFFy)*(fFEFx)-(IEF*(KBeta*ThetaPP+LBeta*ThetaP^2));
f13=-fFEFx+f1Fx+Fcorte-(mF*RFCMxPP);
f14= -fFEFy+f1Fy-(mF*g)-mF*RFCMyPP;
f15= -(RCMFFx)*(fFEFy)+(RCMFFy)*(fFEFx)+(RCMFNFx)*(f1Fy)-
(RCMFfcortey)*(Fcorte)-(RCMFNFy)*(f1Fx);
%Incognitas
% f1BB1x,f1BB1y,fCBB1x,fCBB1y,fDD1Cx,fDD1Cy,f1DD1x,f1DD1y,uCNCy
% fEFDD1x,fEFDD1y,fFEFx,fFEFy,f1Fy,RCMFNFx
ANEXOS ANEXO L
S=solve(f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f1BB1x,f1BB1y,
fCBB1x,fCBB1y,fDD1Cx,fDD1Cy,f1DD1x,f1DD1y,uCNCy,fEFDD1x,fEFDD1y,fFEFx,fFE
Fy,f1Fy,RCMFNFx);
S=[S.f1BB1x S.f1BB1y S.fCBB1x S.fCBB1y S.fDD1Cx S.fDD1Cy S.f1DD1x
S.f1DD1y S.uCNCy S.fEFDD1x S.fEFDD1y S.fFEFx S.fFEFy S.f1Fy S.RCMFNFx];
f1BB1x=eval(S((1)));
f1BB1y=eval(S((2)));
fCBB1x=eval(S((3)));
fCBB1y=eval(S((4)));
fDD1Cx=eval(S((5)));
fDD1Cy=eval(S((6)));
f1DD1x=eval(S((7)));
f1DD1y=eval(S((8)));
uCNCy=eval(S((9)));
fEFDD1x=eval(S((10)));
fEFDD1y=eval(S((11)));
fFEFx=eval(S((12)));
fFEFy=eval(S((13)));
f1Fy=eval(S((14)));
RCMFNFx=eval(S((15)));
%**********************
%CONDICIONES DE PRUEBA
%**********************
% f1BB1x=0;
% f1BB1y=0;
f1DD1x=-f1DD1x;
f1DD1y=-f1DD1y;
fCBB1x=-fCBB1x;
fCBB1y=-fCBB1y;
% fDD1C=0;
% fEFDD1x=0;
% fEFDD1y=0;
% fFEFx=0;
% fFEFy=0;
%***********************************************************
%*************** IMPRESIONES *********************
%***********************************************************
fprintf('(*Theta en Grados*)\n');
fprintf('ThetaDeg= %g ;\n',Theta*180/pi);
fprintf('(*POSICIN, VELOCIDAD Y ACELERACIN*)\n');
fprintf('Theta= %g ;\n',Theta);
fprintf('ThetaP= %g ;\n',ThetaP);
fprintf('ThetaPP= %g ;\n',ThetaPP);
fprintf('(*MAGNITUD DE LOS ESLABONES*)\n');
fprintf('LBB1= %g ;\n',LBB1);
fprintf('LCB1= %g ;\n',LCB1);
fprintf('LAD= %g ;\n',LAD);
fprintf('LAD1= %g ;\n',LAD1);
fprintf('LDD1= %g ;\n',LDD1);
fprintf('LED1= %g ;\n',LED1);
ANEXOS ANEXO L
fprintf('LEF= %g ;\n',LEF);
fprintf('LAE= %g ;\n',LAE);
fprintf('LBC= %g ;\n',LBC);
fprintf('(*MAGNITUD VARIABLES DE DISEO*)\n');
fprintf('P= %g ;\n',P);
fprintf('H= %g ;\n',H);
fprintf('m= %g ;\n',m);
fprintf('(*DEFINICION CM BB1*)\n');
fprintf('u2= %g ;\n',u2);
fprintf('v2= %g ;\n',v2);
fprintf('(*DEFINICION CM DD1*)\n');
fprintf('u4= %g ;\n',u4);
fprintf('v4= %g ;\n',v4);
fprintf('(*DEFINICION CM C*)\n');
fprintf('u3= %g ;\n',u3);
fprintf('v3= %g ;\n',v3);
fprintf('(*DEFINICION CM EF*)\n');
fprintf('u5= %g ;\n',u5);
fprintf('v5= %g ;\n',v5);
fprintf('(*DEFINICION CM F*)\n');
fprintf('u6= %g ;\n',u6);
fprintf('v6= %g ;\n',v6);
fprintf('(*APLICACION DE LA FUERZA EN*)\n');
fprintf('u7= %g ;\n',u7);
fprintf('v7= %g ;\n',v7);
fprintf('(*MASA E INERCIA BB1*)\n');
fprintf('mBB1= %g ;\n',mBB1);
fprintf('IBB1= %g ;\n',IBB1);
fprintf('(*MASA E INERCIA DD1*)\n');
fprintf('mDD1= %g ;\n',mDD1);
fprintf('IDD1= %g ;\n',IDD1);
fprintf('(*MASA E INERCIA EF*)\n');
fprintf('mEF= %g ;\n',mEF);
fprintf('IEF= %g ;\n',IEF);
fprintf('(*MASA E INERCIA EF*)\n');
fprintf('mF= %g ;\n',mF);
fprintf('IF= %g ;\n',IF);
fprintf('(*MASA E INERCIA C*)\n');
fprintf('mC= %g ;\n',mC);
fprintf('IC= %g ;\n',IC);
fprintf('(*FUERZAS EXTERNAS*)\n');
fprintf('g= %g ;\n',g);
fprintf('MTorque= %g ;\n',MTorque);
fprintf('Fcorte= %g ;\n',Fcorte);
fprintf('(*COORDENADAS GENERALIZADAS*)\n');
fprintf('Phi= %g ;\n',Phi);
fprintf('LAC= %g ;\n',LAC);
fprintf('Beta= %g ;\n',Beta);
fprintf('RBFx= %g ;\n',RBFx);
fprintf('(*COEFICIENTES DE VELOCIDAD*)\n');
fprintf('KPhi= %g ;\n',KPhi);
fprintf('KLAC= %g ;\n',KLAC);
fprintf('KBeta= %g ;\n',KBeta);
fprintf('KRBFx= %g ;\n',KRBFx);
fprintf('(*COEFICIENTES DE ACELERACION*)\n');
ANEXOS ANEXO L
fprintf('LPhi= %g ;\n',LPhi);
fprintf('LLAC= %g ;\n',LLAC);
fprintf('LBeta= %g ;\n',LBeta);
fprintf('LRBFx= %g ;\n',LRBFx);
fprintf('(*ACELERACION CM BB1*)\n');
fprintf('RBB1CMxPP= %g ;\n',RBB1CMxPP);
fprintf('RBB1CMyPP= %g ;\n',RBB1CMyPP);
fprintf('(*ACELERACION CM DD1*)\n');
fprintf('RDD1CMxPP= %g ;\n',RDD1CMxPP);
fprintf('RDD1CMyPP= %g ;\n',RDD1CMyPP);
fprintf('(*ACELERACION CM EF*)\n');
fprintf('REFCMxPP= %g ;\n',REFCMxPP);
fprintf('REFCMyPP= %g ;\n',REFCMyPP);
fprintf('(*ACELERACION CM F*)\n');
fprintf('RFCMxPP= %g ;\n',RFCMxPP);
fprintf('RFCMyPP= %g ;\n',RFCMyPP);
fprintf('(*ACELERACION CM C*)\n');
fprintf('RCCMxPP= %g ;\n',RCCMxPP);
fprintf('RCCMyPP= %g ;\n',RCCMyPP);
fprintf('(*DISTANCIA BB1CM B y C*)\n');
fprintf('RCMBB1Bx= %g ;\n',RCMBB1Bx);
fprintf('RCMBB1By= %g ;\n',RCMBB1By);
fprintf('RCMBB1Cx= %g ;\n',RCMBB1Cx);
fprintf('RCMBB1Cy= %g ;\n',RCMBB1Cy);
fprintf('(*DISTANCIA CCM C*)\n');
fprintf('RCMCCx= %g ;\n',RCMCCx);
fprintf('RCMCCy= %g ;\n',RCMCCy);
fprintf('(*DISTANCIA DD1CM A,E*)\n');
fprintf('RCMDD1Ax= %g ;\n',RCMDD1Ax);
fprintf('RCMDD1Ay= %g ;\n',RCMDD1Ay);
fprintf('RCMDD1Ex= %g ;\n',RCMDD1Ex);
fprintf('RCMDD1Ey= %g ;\n',RCMDD1Ey);
fprintf('(*DISTANCIA EFCM E,F*)\n');
fprintf('RCMEFEx= %g ;\n',RCMEFEx);
fprintf('RCMEFEy= %g ;\n',RCMEFEy);
fprintf('RCMEFFx= %g ;\n',RCMEFFx);
fprintf('RCMEFFy= %g ;\n',RCMEFFy);
fprintf('(*DISTANCIA FCM F,Fcorte*)\n');
fprintf('RCMFFx= %g ;\n',RCMFFx);
fprintf('RCMFFy= %g ;\n',RCMFFy);
fprintf('RCMFfcortex= %g ;\n',RCMFfcortex);
fprintf('RCMFfcortey= %g ;\n',RCMFfcortey);
fprintf('(*RESULTADOS*)\n');
fprintf('f1BB1x= %g ;\n',f1BB1x);
fprintf('f1BB1y= %g ;\n',f1BB1y);
fprintf('fCBB1x= %g ;\n',-fCBB1x);
fprintf('fCBB1y= %g ;\n',-fCBB1y);
fprintf('f1DD1x= %g ;\n',-f1DD1x);
fprintf('f1DD1y= %g ;\n',-f1DD1y);
fprintf('fDD1Cx= %g ;\n',fDD1Cx);
fprintf('fDD1Cy= %g ;\n',fDD1Cy);
fprintf('fEFDD1x= %g ;\n',fEFDD1x);
fprintf('fEFDD1y= %g ;\n',fEFDD1y);
fprintf('fFEFx= %g ;\n',fFEFx);
fprintf('fFEFy= %g ;\n',fFEFy);
ANEXOS ANEXO L
fprintf('f1Fy= %g ;\n',f1Fy);
fprintf('uCNCy= %g ;\n',uCNCy);
fprintf('RCMFNFx= %g ;\n',RCMFNFx);
fprintf('\n \n');
fDD1C=(fDD1Cx^2+fDD1Cy^2)^0.5;
Diagrama en simulink
ANEXO L
ANEXOS ANEXO L