
## Ejemplo 3.2

El mecanismo de transferencia de cinta transportadora que se muestra en la  figura empuja cajas con una masa de 80 kg desde una cinta transportadora a otra. El eslabón motor gira a una velocidad constante de $\omega_2=40~rpm$ en sentido antihorario. Para realizar un análisis cinemático y dinámico completo del mecanismo, utilizaremos todos los métodos de análisis estudiados en la asignatura. Realizaremos el análisis en una posición dada por $\theta_2 =350^{\circ }$. Calcular las fuerzas de reacción y el par motor necesario para llevar dicho movimiento.


<img src="./figs/ejemplo3_02_media/image_0.png" alt="ejemplo302a" width="520px">

```matlab
clear, clc
```
### Apartado 1: Cálculo de velocidades

Para el problema de velocidades identificamos primero una subcadena de 4 barras, y planteamos la ecuación de velocidades relativas entre los puntos A y B:

 $ {\vec{v} }_B ={\vec{v} }_A +{\vec{v} }_{A/B} $ 

vemos qué términos nos hacen falta y operamos.


\- Para ${\vec{v} }_B$:

 $ {\vec{v} }_B ={\vec{\omega} }_4 \times {\vec{r} }_{O4B} $ 
```matlab
% definir la incógnita w4k, el vector w4, rO4B y finalmente experesar vB
syms w4k real
w4=[0 0 w4k];
rO4B=[1.174 2.761 0];
vB=cross(w4,rO4B);
```

\- Para ${\vec{v} }_A$:

 $ {\vec{v} }_A ={\vec{\omega} }_2 \times {\vec{r} }_{O2A} $ 
```matlab
% definir el vector w2, rO2A y finalmente experesar vA
w2=[0 0 40*2*pi/60];
rO2A=[cosd(350) sind(350) 0];
vA=cross(w2,rO2A);
```

\- Para ${\vec{v} }_{B/A}$:

 $ {\vec{v} }_{B/A} ={\vec{\omega} }_3 \times {\vec{r} }_{AB} $ 
```matlab
% definir la incógnita w3k, el vector w3, rAB y finalmente experesar vB_A
syms w3k real
w3=[0 0 w3k];
rAB=[3.889 0.934 0];
vB_A=cross(w3,rAB);
```

Ahora sí resolvemos la ecuación:

```matlab
sol_v1 = solve(vB==vA+vB_A,w3k, w4k);
w3k = subs(sol_v1.w3k);
w4k = subs(sol_v1.w4k);
```

Ahora pasamos a analizar la barra 5 y planteamos la ecuación de velocidades relativas entre los puntos C y D:

 $ {\vec{v} }_D ={\vec{v} }_C +{\vec{v} }_{D/C} $ 

vemos qué términos nos hacen falta y operamos.


\- Para ${\vec{v} }_D$:

 $ {\vec{v} }_D =v_D \hat{i} $ 
```matlab
% definir la incógnita vDi, el vector vD
syms vDi real
vD=[vDi 0 0];
```

\- Para ${\vec{v} }_C$:

 $ {\vec{v} }_C ={\vec{\omega} }_4 \times {\vec{r} }_{O4C} $ 
```matlab
% El vector w4 ya es conocido, y rO4C lo obtenmos de GeoGebra: 
rO4C=[0.831 5.942 0];
vC=cross(w4,rO4C);
```

\- Para ${\vec{v} }_{D/C}$:

 $ {\vec{v} }_{D/C} ={\vec{\omega} }_5 \times {\vec{r} }_{CD} $ 
```matlab
% definir la incógnita w5k, el vector w5, rCD y finalmente experesar vD_C
syms w5k real
w5=[0 0 w5k];
rCD=[-6.431 -0.942 0];
vD_C=cross(w5,rCD);
```

Ahora sí resolvemos la ecuación:

```matlab
sol_v2 = solve(vD==vC+vD_C,w5k, vDi);
w5k = subs(sol_v2.w5k);
vDi = subs(sol_v2.vDi);
```
### Apartado 2: Cálculo de aceleraciones
#### Aceleraciones de los puntos A,B, C y D

Para el problema de aceleraciones procedemos de la misma forma, primero entre los puntos A y B:

 $ {\vec{a} }_B ={\vec{a} }_A +{\vec{a} }_{A/B} $ 

que descomponiendo, nos da:

 $ {\vec{a} }_B^n +{\vec{a} }_B^t ={\vec{a} }_A +{\vec{a} }_{A/B}^n +{\vec{a} }_{A/B}^t $ 

vemos qué términos nos hacen falta y operamos.


\- Para ${\vec{a} }_B^n$:

 $ {\vec{a} }_B^n ={\vec{\omega} }_4 \times ({\vec{\omega} }_4 \times {\vec{r} }_{O4B} ) $ 
```matlab
% Expresar aBn
aBn=cross(w4,cross(w4,rO4B));
```

\- Para ${\vec{a} }_B^t$:

 $ {\vec{a} }_B^t ={\vec{\alpha} }_4 \times {\vec{r} }_{O4B} $ 
```matlab
% definir la incógnita af4k, el vector af4, experesar aBt
syms af4k real
af4=[0 0 af4k];
aBt=cross(af4,rO4B);
```

\- Para ${\vec{a} }_A$:

 $ {\vec{a} }_A ={\vec{a} }_A^n ={\vec{\omega} }_2 \times ({\vec{\omega} }_2 \times {\vec{r} }_{O2A} ) $ 
```matlab
% Expresar aA
aA=cross(w2,cross(w2,rO2A));
```

\- Para ${\vec{a} }_{B/A}^n$:

 $ {\vec{a} }_{B/A}^n ={\vec{\omega} }_3 \times ({\vec{\omega} }_3 \times {\vec{r} }_{AB} ) $ 
```matlab
% Expresar aB_An
aB_An=cross(w3,cross(w3,rAB));
```

\- Para ${\vec{a} }_{B/A}^t$:

 $ {\vec{a} }_{B/A}^t ={\vec{\alpha} }_3 \times {\vec{r} }_{AB} $ 
```matlab
% definir la incógnita af3k, el vector af3, experesar aB_At
syms af3k real
af3=[0 0 af3k];
aB_At=cross(af3,rAB);
```

Ahora sí resolvemos la ecuación:

```matlab
sol_ac1 = solve(aBn+aBt==aA+aB_An+aB_At,af3k, af4k);
% Display the solutions:
af3k = subs(sol_ac1.af3k);
af4k = subs(sol_ac1.af4k);
```

Ahora pasamos a analizar la barra 5 y planteamos la ecuación de aceleraciones relativas entre los puntos C y D:

 $ {\vec{a} }_D ={\vec{a} }_C +{\vec{a} }_{D/C} $ 

descomponiendo:

 $ {\vec{a} }_D ={\vec{a} }_C^n +{\vec{a} }_C^t +{\vec{a} }_{D/C}^n +{\vec{a} }_{D/C}^t $ 

vemos qué términos nos hacen falta y operamos.


\- Para ${\vec{a} }_D$:

 $ {\vec{a} }_D =a_D \hat{i} $ 
```matlab
syms aDi real
aD=[aDi 0 0];
```

\- Para ${\vec{a} }_C^n$:

 $ {\vec{a} }_C^n ={\vec{\omega} }_4 \times ({\vec{\omega} }_4 \times {\vec{r} }_{O4C} ) $ 
```matlab
aCn=cross(w4,cross(w4,rO4C));
```

\- Para ${\vec{a} }_C^t$:

 $ {\vec{a} }_C^t ={\vec{\alpha} }_4 \times {\vec{r} }_{O4C} $ 
```matlab
aCt=cross(af4,rO4C);
```

\- Para ${\vec{a} }_{D/C}^n$:

 $ {\vec{a} }_{D/C}^n ={\vec{\omega} }_5 \times ({\vec{\omega} }_5 \times {\vec{r} }_{CD} ) $ 
```matlab
aD_Cn=cross(w5,cross(w5,rCD));
```

\- Para ${\vec{a} }_{D/C}^t$:

 $ {\vec{a} }_{D/C}^t ={\vec{\alpha} }_5 \times {\vec{r} }_{CD} $ 
```matlab
syms af5k real
af5=[0 0 af5k];
aD_Ct=cross(af5,rCD);
```

Ahora sí resolvemos la ecuación:

```matlab
sol_ac2 = solve(aD==aCn+aCt+aD_Cn+aD_Ct,aDi, af5k);
aDi = subs(sol_ac2.aDi);
af5k = subs(sol_ac2.af5k);
```
#### Aceleraciones de los c.d.g.

\- Para ${\vec{a} }_{G2} ={\vec{a} }_{G2}^n$ necesitamos ${\vec{r} }_{O2G2}$:

```matlab
rO2G2=rO2A/2;
aG2=cross(w2,cross(w2,rO2G2));
```

\- Para ${\vec{a} }_{G3} ={\vec{a} }_A +{\vec{a} }_{G3/A}^n +{\vec{a} }_{G3/A}^t$ necesitamos ${\vec{r} }_{AG3}$:

```matlab
rAG3=rAB/2;
aG3=subs(aA+cross(w3,cross(w3,rAG3))+cross(af3,rAG3));
```

\- Para ${\vec{a} }_{G4} ={\vec{a} }_{G4}^n +{\vec{a} }_{G4}^t$ necesitamos ${\vec{r} }_{O4G4}$:

```matlab
rO4G4=[0.668 2.901 0];
aG4=subs(cross(w4,cross(w4,rO4G4))+cross(af4,rO4G4));
```

\- Para ${\vec{a} }_{G5} ={\vec{a} }_C^n +{\vec{a} }_C^t +{\vec{a} }_{G5/C}^n +{\vec{a} }_{G5/C}^t$ necesitamos ${\vec{r} }_{CG5}$:

```matlab
rCG5=rCD/2;
aG5=subs(aCn+aCt+cross(w5,cross(w5,rCG5))+cross(af5,rCG5));
```

\- Para ${\vec{a} }_{G6} ={\vec{a} }_D$ basta con evaluar ${\vec{a} }_D$:

```matlab
aG6=subs(aD);
```
#### Apartado 3: Dinámica aplicando el principio de D'Alembert

En este aparado calcluaremos las fuerzas de reacción y el par motor a partir del equilibrio estático de cada sólido que compone el mecanismo incluyendo las fuerzas y momentos de inercia según el principio de D'Alemembert. Masas (en kg) e inercias (en kgm2, referidas al centro de masas): $m_2=15.31$, $m_3=61.26$, $m_4=154.75$, $m_5=99.54$, $m_6=85$, $I_2=1.278$, $I_3=81.68$, $I_4=495.76$, $I_5=358.479$. Considerar que los centros de masas de los eslabones se ubican en: el punto medo del segmento $O_2A$, el punto medio del segmento $AB$, el baricentro del triángulo $O_4BC$, el punto medio del segmento $CD$ y el punto $D$. 


#### Sólido 2

Definimos las ecuaciones a partir del diagrama de sólido libre:

<img src="./figs/ejemplo3_02_media/image_1.png" alt="ejemplo302b" width="320px">

 $ \begin{array}{l} {\vec{F} }_{32} +{\vec{F} }_{12} -m_2 {\vec{a} }_{G2} =0\newline {\vec{p} }_2 \times {\vec{F} }_{32} +{\vec{q} }_2 \times {\vec{F} }_{12} +{\vec{M} }_0 -I_{G2} {\vec{\alpha} }_2 =0 \end{array} $ 
```matlab
% 1- definir m2, IG2, p2, q2
% 2 - declarar las incógnitas y definir los
% vectores correspondientes a las fuerzas y momentos
% 3 - definir las ecuaciones: eq1_2 para fuerzas y eq3 para momentos
m2=15.31; IG2=1.278;
p2=rO2G2; q2=-p2;
syms F12x F12y F32x F32y M0k real
F12=[F12x F12y 0];
F32=[F32x F32y 0];
M0=[0 0 M0k]; 
eq1_2=F32+F12-m2*aG2==0;
eq3=cross(p2,F32)+cross(q2,F12)+M0-[0 0 IG2*0]==0;
```
#### Sólido 3

Definimos las ecuaciones a partir del diagrama de sólido libre:

<img src="./figs/ejemplo3_02_media/image_2.png" alt="ejemplo302c" width="320px">

 $ \begin{array}{l} {\vec{F} }_{43} -{\vec{F} }_{32} -m_3 {\vec{a} }_{G3} =0\newline {\vec{p} }_3 \times {\vec{F} }_{43} -{\vec{q} }_3 \times {\vec{F} }_{32} -I_{G3} {\vec{\alpha} }_3 =0 \end{array} $ 
```matlab
% 1- definir m3, IG3, p3, q3
% 2 - declarar las incógnitas y definir los
% vectores correspondientes a las fuerzas y momentos
% 3 - definir las ecuaciones: eq4_5 para fuerzas y eq6 para momentos
m3=61.26; IG3=81.68; 
p3=rAG3; q3=-p3;
syms F43x F43y real
F43=[F43x F43y 0];
eq4_5=F43-F32-m3*aG3==0;
eq6=cross(p3,F43)+cross(q3,-F32)-[0 0 IG3*af3k]==0;
```
#### Sólido 4

Definimos las ecuaciones a partir del diagrama de sólido libre:

<img src="./figs/ejemplo3_02_media/image_3.png" alt="ejemplo30d" width="320px">

 $ \begin{array}{l} {\vec{F} }_{54} -{\vec{F} }_{43} +{\vec{F} }_{14} -m_4 {\vec{a} }_{G4} =0\newline {\vec{p} }_4 \times {\vec{F} }_{54} -{\vec{q} }_4 \times {\vec{F} }_{43} +{\vec{r} }_4 \times {\vec{F} }_{14} -I_{G4} {\vec{\alpha} }_4 =0 \end{array} $ 
```matlab
% 1- definir m4, IG4, p4, q4, r4
% 2 - declarar las incógnitas y definir los
% vectores correspondientes a las fuerzas y momentos:
% 3 - definir las ecuaciones: eq7_8 para fuerzas y eq9 para momentos
m4=154.75;IG4=495.76;
p4=[0.1692 3.1052 0]; q4=[0.5144 -0.0766 0];
r4=[-0.6598 -2.8373 0];
syms F54x F54y F14x F14y real
F54=[F54x F54y 0];
F14=[F14x F14y 0];
eq7_8=F54-F43+F14-m4*aG4==0;
eq9=cross(p4,F54)+cross(q4,-F43)+cross(r4,F14)-[0 0 IG4*af4k]==0;
```
#### Sólido 5

Definimos las ecuaciones a partir del diagrama de sólido libre:


<img src="./figs/ejemplo3_02_media/image_4.png" alt="ejemplo302e" width="320px">

 $ \begin{array}{l} {\vec{F} }_{65} -{\vec{F} }_{54} -m_5 {\vec{a} }_{G5} =0\newline {\vec{p} }_5 \times {\vec{F} }_{65} -{\vec{q} }_5 \times {\vec{F} }_{54} -I_{G5} {\vec{\alpha} }_5 =0 \end{array} $ 
```matlab
% 1- definir m5, IG5, p5, q5
% 2 - declarar las incógnitas y definir los
% vectores correspondientes a las fuerzas y momentos:
% 3 - definir las ecuaciones: eq10_11 para fuerzas y eq12 para momentos
m5=99.54; IG5=358.479;
p5=rCG5; q5=-p5;
syms F65x F65y real
F65=[F65x F65y 0]; 
eq10_11=F65-F54-m5*aG5==0;
eq12=cross(p5,F65)+cross(q5,-F54)-[0 0 IG5*af5k]==0;
```
#### Sólido 6

Definimos las ecuaciones a partir del diagrama de sólido libre:

<img src="./figs/ejemplo3_02_media/image_5.png" alt="ejemplo302f" width="220px">

 $ {\vec{F} }_{16} -{\vec{F} }_{65} +{\vec{F} }_R -m_6 {\vec{a} }_{G6} =0 $ 
```matlab
% 1- definir m6, FR
% 2 - declarar las incógnitas y definir los
% vectores correspondientes a las fuerzas
% 3 - definir las ecuaciones: eq13_14 para fuerzas
m6=85;
syms F16y  real
F16=[0 F16y 0];
FR=[314.2 0 0];
eq13_14=F16-F65+FR-m6*aG6==0;
```
#### Resolución:

Para resolver el sistema compuesto por las 14 ecuaciones debemos utilizar la función *solve*, como en los apartados anteriores, teniendo en cuenta que debemos agrupar las ecuaciones en un vector. Las 14 incóginatas se introducen separadas por coma, al igual que en los apartados anteriores.

```matlab
% Resolver el sistema completo:
solf=solve([eq1_2,eq3,eq4_5,eq6,eq7_8,eq9,eq10_11,eq12,eq13_14],...
    F12x, F12y, F32x, F32y, F43x, F43y, F54x, F54y,...
    F14x, F14y, F65x, F65y, F16y, M0k);
% Evaluar los resultados:
F12x=double(solf.F12x);
F12y=double(solf.F12y);
F32x=double(solf.F32x);
F32y=double(solf.F32y);
F43x=double(solf.F43x);
F43y=double(solf.F43y);
F14x=double(solf.F14x);
F14y=double(solf.F14y);
F54x=double(solf.F54x);
F54y=double(solf.F54y);
F65x=double(solf.F65x);
F65y=double(solf.F65y);
F16y=double(solf.F16y);
M0k=double(solf.M0k);
```

Finalmente, mostramos los resultados:

```matlab
% Print results:
fprintf('F12x=%5.0f F12y=%5.0f\n', F12x,F12y)
```

```matlabTextOutput
F12x=-32317 F12y=-7403
```

```matlab
fprintf('F32x=%5.0f F32y=%5.0f\n', F32x,F32y)
```

```matlabTextOutput
F32x=32184 F32y= 7426
```

```matlab
fprintf('F43x=%5.0f F43y=%5.0f\n', F43x,F43y)
```

```matlabTextOutput
F43x=30877 F43y= 7802
```

```matlab
fprintf('F54x=%5.0f F54y=%5.0f\n', F54x,F54y)
```

```matlabTextOutput
F54x=10153 F54y=  942
```

```matlab
fprintf('F14x=%5.0f F14y=%5.0f\n', F14x,F14y)
```

```matlabTextOutput
F14x=16637 F14y= 7574
```

```matlab

fprintf('F65x=%5.0f F65y=%5.0f\n', F65x,F65y)
```

```matlabTextOutput
F65x= 4829 F65y= 1172
```

```matlab
fprintf('F16y=%5.0f\n', F16y)
```

```matlabTextOutput
F16y= 1172
```

```matlab
fprintf('T2k=%5.0f\n', M0k)
```

```matlabTextOutput
T2k=-12902
```

El siguiente [modelo de GeoGebra](https://www.geogebra.org/m/r8b9vhae) muestra un procedimiento de resolución alternativo, que conlleva a las mismas soluciones:

---

<iframe scrolling="no" title="Ejemplo 3.2" src="https://www.geogebra.org/material/iframe/id/sbc7tbpz/width/700/height/640/border/888888/sfsb/true/smb/false/stb/false/stbh/false/ai/false/asb/false/sri/true/rc/true/ld/false/sdz/true/ctl/false" width="800px" height="600px" style="border:0px;"> </iframe>
