In [9]:
from IPython.display import Image,Latex
Por medio de un par de cables se quiere sostener un bloque de peso $W = 200\; kgf$. Determine la tensión en cada cuerda si las coordenadas de posición de los puntos A, B, C son A(0, -20 cm, 40 cm), B(-40 cm, 50 cm, 0cm) y C(45 cm, 40 cm, 0cm), respectivamente. Suponga que no hay fricción entre la rampa y el contrapeso.
In [10]:
Image(filename='FIGURES/Rampa.png',width=250)
Si llamamos $\vec{T_{B}}$ y $\vec{T_{C}}$ la tensión en el cable AB y AC (incógnitas) respectivamente, $\vec{W}$ el peso del elemento y $\vec{N}$ el vector normal al plano de la rampa, y hacemos equilibro sobre el bloque, se tiene:
$$ \begin{align} &\sum \; F_{X} = T_{BX} + T_{CX} = 0\\ &\sum \; F_{Y} = - W + T_{BY} + T_{CY} + N_{Y} = 0\\ &\sum \; F_{Z} = T_{BZ} + T_{CZ} + N_{Z} = 0 \end{align}$$Por otro lado, los vectores de tensión pueden ser escritos como:
$\vec{T} = T \; \hat{n} $ , donde $\hat{n}$ es un vector director unitario.
De esta forma para la tensión en el cable AB:
$\vec{T_B} = T_B \; \hat{n_B} = T_B \;\frac{\vec{R_{AB}}}{MR_{AB}} $
In [ ]:
from numpy import array, sqrt, cross, dot, arctan, cos, sin
from scipy.linalg import inv
In [ ]:
R_AB = [-40., 70., -40.]
MR_AB = sqrt(dot (R_AB,R_AB))
nB = R_AB / MR_AB
print 'Magnitud =', MR_AB, ',', 'nB =', nB.round(2)
y para el cable AC:
$\vec{T_C} = T_C \; \hat{n_C} = T_C \;\frac{\vec{R_{AC}}}{MR_{AC}} $
In [ ]:
R_AC = [45., 60., -40.]
MR_AC = sqrt(dot (R_AC,R_AC))
nC = R_AC / MR_AC
print 'Magnitud =', MR_AC, ',', 'nC =', nC.round(2)
In [ ]:
Por analogía, la fuerza normal prodría N podría ser escrita como:
$\vec{N} = N \; \hat{n_p} $,
donde las componentes de $\hat{n_p} $ son determinadas por la inclinación de la rampa. De esta forma.
In [ ]:
Np = [0.0, cos(arctan(40./80.)),sin(arctan(40./80.))]
Lo que queda ahora es resolver el sistema de ecuaciones de equilibrio. Para ello lo escribimos de la forma:
$$AX = B$$
In [ ]:
A = array([[nB[0], nC[0], Np[0]],
[nB[1],nC[1], Np[1]],
[nB[2], nC[2], Np[2]]])
B = [0.0, 200., 0]
print 'A=', A.round(2)
print
print 'B=', B
In [ ]:
Resolviendo el sistema
In [ ]:
X = dot(inv(A),B)
print '[TB, TC, N]=', X.round(2)
Nota. Problema tomado de Mecánica Vectorial para Ingenieros. Estatica. Sexta Edición. Beer Ferninand; Johnston, Russell.
In [ ]:
from IPython.core.display import HTML
def css_styling():
styles = open('./custom_barba.css', 'r').read()
return HTML(styles)
css_styling()