Práctica 2 Estructuras (2017)

Pràctica Español
Universidad Instituto Químico de Sarriá (IQS)
Grado Ingeniería en Tecnologías Industriales - 3º curso
Asignatura Teoría de Estructuras
Año del apunte 2017
Páginas 27
Fecha de subida 25/09/2017
Descargas 0
Subido por

Vista previa del texto

STATICALLY INDETERMINATE BEAMS Consider the three-span continuous A572 grade 50 steel beam shown in figure. The load F is centred between supports B and C. Steel mechanical properties: E = 200 GPa, Yield point 345 MPa, Tensile strength 450 MPa.
Create a Matlab® code to parametrically determine: 1) Rotations at nodes B and C Para calcular los valores del ángulo en los apoyos B y C, se utilizará el método de desplazamientos. Dicho método nos permite obtener a partir de tablas los valores de los FEM (fixed end moments). Para proceder, es necesario dividir la biga en tres tramos distintos.
Primer tramo: 𝐹𝐸𝑀𝑎𝑏 = 𝐹𝐸𝑀𝑏𝑎 = 𝜔 · 𝑙12 12 −𝜔 · 𝑙12 12 Segundo tramo: 𝐹𝐸𝑀𝑏𝑐 = 𝐹𝐸𝑀𝑐𝑏 = 𝐹 · 𝑙2 8 −𝐹 · 𝑙2 8 Tercer tramo: 𝐹𝐸𝑀𝑐𝑑 = 0 𝐹𝐸𝑀𝑑𝑐 = 0 A continuación, se plantean las ecuaciones del momento en cada tramo, en función su nodo near y far según nos indica la fórmula del método de desplazamientos. En ninguno de los casos existe un desplazamiento debido a que el soporte ceda, con lo cual no habrá término ψ.
𝐸·𝐼 · (2 · 𝜃𝐴 + 𝜃𝐵 ) + 𝐹𝐸𝑀𝑎𝑏; 𝜃𝐴 = 0 𝑙1 𝐸·𝐼 𝑀𝑏𝑎 = 2 · · (2 · 𝜃𝐵 ) + 𝐹𝐸𝑀𝑏𝑎 𝑙1 𝐸·𝐼 𝑀𝑏𝑐 = 2 · · (2 · 𝜃𝐵 + 𝜃𝐶 ) + 𝐹𝐸𝑀𝑏𝑐 𝑙2 𝐸·𝐼 𝑀𝑐𝑏 = 2 · · (2 · 𝜃𝐶 + 𝜃𝐵 ) + 𝐹𝐸𝑀𝑐𝑏 𝑙2 𝐸·𝐼 𝑀𝑐𝑑 = 2 · · (2 · 𝜃𝐶 + 𝜃𝐷 ); 𝜃𝐷 = 0 3 𝐸·𝐼 𝑀𝑑𝑐 = 2 · · (𝜃𝐶 ); 𝜃𝐷 = 0 3 𝑀𝑎𝑏 = 2 · Se dispone de un sistema de seis ecuaciones con ocho incógnitas, para poder resolverlo será necesario añadir dos ecuaciones más. El sumatorio de momentos en los apoyos B y C debe ser cero.
𝑀𝑏𝑎 + 𝑀𝑏𝑐 = 0 𝑀𝑐𝑏 + 𝑀𝑐𝑑 = 0 Aislando se puede obtener el ángulo de B y el de C directamente. Para desarrollar este paso se ha utilizado Máxima. En primer lugar, se ha resuelto un sistema algebraico con las dos ecuaciones en forma paramétrica: ((4*E*I*x)/(L1))-((q*(L1)^2)/12)+((4*E*I*x)/(L2))+((2*E*I*y)/(L2))+((F*L2)/8)=0 ((4*E*I*y)/(L2))+((2*E*I*x)/(L2))-((F*L2)/8)+((4*E*I*y)/(L3))=0 Se obtiene el siguiente resultado: Dónde x corresponde al valor de 𝜃𝐵 e y al de 𝜃𝐶 Para comprobar que los valores obtenidos son correctos, se comprueban los resultados con los datos disponibles de: E=200 GPa, I=210·106 mm4, q=22 kN/m, F=135 kN, 𝑙1 = 𝑙2 = 6 m, 𝑙3 =4,5 m.
((4*200*210*10^6*x)/(6*10^3))-((22*10^3*(6*10^3)^2)/12)+((4*200*210*10^6*x)/(6*10^3))+((2*200*210*10^6*y)/(6*10^3))+((135* 6*10^3)/8)=0 ((4*200*210*10^6*y)/(6*10^3))+((2*200*210*10^6*x)/(6*10^3))((135*6*10^3)/8)+((4*200*210*10^6*y)/(4.5*10^3))=0 Se introducen en máximas las ecuaciones sustituyendo los valores, de tal manera que se obtiene: Los valores de ángulo son de -0,0011 radianes para el apoyo B, y 0.0018 radianes para el apoyo C. Coinciden en ambos casos y son los esperados.
Finalmente, se implementa la función en Matlab: function [oc ob]=giros(E,I,l1,l2,l3,q,F) ob=-((9*F*l1*l2^2-4*q*l1^3*l2)*l3+6*F*l1*l2^34*q*l1^3*l2^2)/((192*E*I*l2+144*E*I*l1)*l3+192*E*I*l2^2+192*E*I*l2*l 1); oc=(((6*F*l2^3+9*F*l1*l2^22*q*l1^3*l2)*l3)/((192*E*I*l2+144*E*I*l1)*l3+192*E*I*l2^2+192*E*I*l1 *l2)); end function [oc1 ob1]=girosaux(E,I,l1,l2,l3,q,F) ob1=-4960666651/4616888864000; oc1=73375/41222222; end 2) Member end moments and shears Para calcular los member end moments únicamente es necesario sustituir en las ecuaciones escritas anteriormente los valores de los ángulos calculados.
𝐸·𝐼 · (2 · 𝜃𝐴 + 𝜃𝐵 ) + 𝐹𝐸𝑀𝑎𝑏; 𝜃𝐴 = 0 𝑙1 𝐸·𝐼 𝑀𝑏𝑎 = 2 · · (2 · 𝜃𝐵 ) + 𝐹𝐸𝑀𝑏𝑎 𝑙1 𝐸·𝐼 𝑀𝑏𝑐 = 2 · · (2 · 𝜃𝐵 + 𝜃𝐶 ) + 𝐹𝐸𝑀𝑏𝑐 𝑙2 𝐸·𝐼 𝑀𝑐𝑏 = 2 · · (2 · 𝜃𝐶 + 𝜃𝐵 ) + 𝐹𝐸𝑀𝑐𝑏 𝑙2 𝐸·𝐼 𝑀𝑐𝑑 = 2 · · (2 · 𝜃𝐶 + 𝜃𝐷 ); 𝜃𝐷 = 0 3 𝐸·𝐼 𝑀𝑑𝑐 = 2 · · (𝜃𝐶 ); 𝜃𝐷 = 0 3 𝑀𝑎𝑏 = 2 · Para calcular los shears es necesario mantener las divisiones de la viga en los tres tramos.
Primer tramo: ∑𝑀(𝐴) = 0; 𝑀𝑎𝑏 + 𝑀𝑏𝑎 − 𝑇𝑏𝑎 · 𝑙1 − 𝑞 · 𝑙12 =0 2 𝑙2 (𝑀𝑎𝑏 + 𝑀𝑏𝑎 − 𝑞 · 21 ) 𝑇𝑏𝑎 = 𝑙1 ∑𝑀(𝐵) = 0; 𝑀𝑎𝑏 + 𝑀𝑏𝑎 + 𝑇𝑎𝑏 · 𝑙1 + 𝑞 · 𝑙12 =0 2 𝑙2 (𝑀𝑎𝑏 + 𝑀𝑏𝑎 + 𝑞 · 21 ) 𝑇𝑏𝑎 = − 𝑙1 Segundo tramo: ∑𝑀(𝐵) = 0; 𝑀𝑏𝑐 + 𝑀𝑐𝑏 − 𝑇𝑐𝑏 · 𝑙2 − 𝐹 · 𝑙2 =0 2 𝑙 (𝑀𝑏𝑐 + 𝑀𝑐𝑏 − 𝐹 · 22 ) 𝑇𝑐𝑏 = 𝑙2 ∑𝑀(𝐶) = 0; 𝑀𝑏𝑐 + 𝑀𝑐𝑏 + 𝑇𝑏𝑐 · 𝑙2 + −𝐹 · 𝑙 (𝑀𝑏𝑐 + 𝑀𝑐𝑏 − 𝐹 · 22 ) 𝑇𝑏𝑐 = − 𝑙2 Tercer tramo: 𝑙2 =0 2 ∑𝑀(𝐶) = 0; 𝑀𝑐𝑑 + 𝑀𝑑𝑐 − 𝑇𝑑𝑐 · 𝑙3 = 0 𝑇𝑑𝑐 = (𝑀𝑐𝑑 + 𝑀𝑑𝑐) 𝑙3 ∑𝑀(𝐷) = 0; 𝑀𝑐𝑑 + 𝑀𝑑𝑐 − 𝑇𝑐𝑑 · 𝑙3 = 0 𝑇𝑑𝑐 = −(𝑀𝑐𝑑 + 𝑀𝑑𝑐) 𝑙3 En Matlab: function [Mab Mba Mbc Mcb Mcd Mdc Tab Tba Tbc Tcb Tcd Tdc]=memberendmoments(oc,ob,E,I,l1,l2,l3,q,F) Mab=(2*E*I/l1*ob+q*l1^2/12); %N*mm Mba=(4*E*I/l1*ob-q*l1^2/12); Mbc=(2*E*I*(2*ob+oc)/l2+F*l2/8); Mcb=(2*E*I*(2*oc+ob)/l2-F*l2/8); Mcd=(4*E*I*oc/l3); Mdc=(2*E*I*oc/l3); Tab=-(Mab+Mba+q*l1^2/2)/l1; %N Tba=(Mab+Mba-q*l1^2/2)/l1; Tbc=-(Mbc+Mcb+F*l2/2)/l2; Tcb=(Mbc+Mcb-F*l2/2)/l2; Tcd=-(Mcd+Mdc)/l3; Tdc=(Mcd+Mdc)/l3; end 3) Support reactions Para realizar el cálculo de las reacciones simplemente es necesario realizar un sumatorio de fuerzas vertical para cada tramo.
𝑅𝑎 + 𝑇𝑎𝑏 = 0; 𝑅𝑎 = −𝑇𝑎𝑏 𝑅𝑏 + 𝑇𝑏𝑎 + 𝑇𝑏𝑐 = 0; 𝑅𝑏 = −(𝑇𝑏𝑎 + 𝑇𝑏𝑐) 𝑅𝑐 + 𝑇𝑐𝑏 + 𝑇𝑑𝑐 = 0; 𝑅𝑐 = −(𝑇𝑐𝑏 + 𝑇𝑑𝑐) 𝑅𝑑 + 𝑇𝑑𝑐 = 0; 𝑅𝑐 = −𝑇𝑑𝑐 En Matlab: function [Ra Rb Rc Rd]=reactions(Tab,Tba,Tbc,Tcb,Tcd,Tdc) Ra=-Tab; Rb=-(Tba+Tbc); Rc=-(Tcb+Tcd); Rd=-Tdc; End 4) Plot the shear (N) and bending moment (Nmm) diagrams Para poder representar los diagramas de shear y bending es necesario calcular previamente las ecuaciones de tensión y momento para cada tramo. Pasaremos a tener cuatro tramos.
Tramo 1 0<x<l1 𝑇1 (𝑥) = 𝑅𝑎 − 𝑞 · 𝑥 𝑀1 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · Tramo 2 𝑥2 − 𝑀𝑎𝑏 2 l1<x<( l1+l2/2) 𝑇2 (𝑥) = 𝑅𝑎 − 𝑞 · 𝑙1 · 𝑥 + 𝑅𝑏 𝑙1 𝑀2 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) 2 Tramo 3 (l1+l2/2)<x<(l1+l2) 𝑇3 (𝑥) = 𝑅𝑎 − 𝑞 · 𝑙1 · 𝑥 + 𝑅𝑏 − 𝐹 𝑙1 𝑙2 𝑀3 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) − 𝐹 · (𝑥 − (𝑙1 + )) 2 2 Tramo 4 (l1+l2)<x<(l1+l2+l3) 𝑇4 (𝑥) = 𝑅𝑎 − 𝑞 · 𝑙1 · 𝑥 + 𝑅𝑏 − 𝐹 + 𝑅𝑐 𝑙1 𝑙2 𝑀4 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) − 𝐹 · (𝑥 − (𝑙1 + )) + 𝑅𝑐 2 2 · (𝑥 − (𝑙1 − 𝑙2 )) En Matlab: function [T M]=shearBending(Mab,Ra,Rb,Rc,q,F,l1,l2,l3,x) length(x); for i=1:100:length(x) i; %tramo 1 if x(i)<=l1; T(i)=Ra-q.*x(i); M(i)=Ra.*x(i)-q.*x(i)^2/2-Mab; %Tramo 2 elseif x(i)>l1 && x(i)<=(l1+l2/2); T(i)=Ra-q*l1+Rb; M(i)=Ra.*x(i)-q*l1.*(x(i)-l1/2)-Mab+Rb.*(x(i)-l1); %Tramo3 elseif x(i)>(l1+l2/2) && x(i)<=(l1+l2); T(i)=Ra-q*l1+Rb-F; M(i)=Ra.*x(i)-q*l1.*(x(i)-l1/2)-Mab+Rb.*(x(i)-l1)-F.*(x(i)(l1+l2/2)); %Tramo 4 else T(i)=Ra-q*l1+Rb-F+Rc; M(i)=Ra.*x(i)-q*l1.*(x(i)-l1/2)-Mab+Rb.*(x(i)-l1)-F.*(x(i)(l1+l2/2))+Rc.*(x(i)-(l1+l2)); end end end Se obtienen los diagramas: Gráfico 1. Shear Stress.
Gráfico 2. Bending moment.
5) Select an IPN European standard beam profile Para desarrollar este apartado es necesario conocer el momento máximo, el cual se observa que ocurre en el punto x= l1+l2/2. Se rescribe una pequeña función para facilitar el cálculo de este.
function MMax=bendingMaximum(Mab,Ra,Rb,q,l1,l2) xMax=l1+l2/2; MMax=Ra*xMax-q*l1*(xMax-l1/2)-Mab+Rb*(xMax-l1); end Para calcular la inercia máxima que puede soportar la biga, se debe aplicar un bucle iterativo que vaya revisando para cada inercia de la tabla de datos IPN si cumple el coeficiente de seguridad, hasta que se encuentre el primer valor que lo cumpla. Se tomará como referencia la tensión de fluencia en lugar de la de rotura.
𝜎= 𝑀𝑧 ·𝑦 𝐼𝑧 Mediante Navier: La tensión máxima corresponde a la tensión de fluencia.
En Matlab: function [Designation I]=selectIPN(l1,l2,l3,q,F,E,Sy,MMax) load('IPN.mat'); Wy=IPN{2,4}; Wy=Wy*10^3; I=IPN{2,3}; I=I*10^4; x=l1+l2/2; Designation=IPN{2,1}; for i=2:22 Sy_var=MMax/Wy; if Sy<Sy_var I=IPN{i,3}*10^4; Wy=IPN{i,4}; Wy=Wy*10^3; Designation=IPN{i,1}; end end end La función devuelve el nombre de la biga y su inercia correspondiente. Para nuestros datos, el perfil seleccionado es el IPN 220.
6) Equation of the elastic beam Para el cálculo de la ecuación de la elástica, se parten de los cuatro tamos especificados en el apartado 4 y de las ecuaciones de momentos calculados en cada uno de ellos. También de las ecuaciones del método directo de integración para obtener las expresiones del giro y la deformada. Dichas expresiones se aplicarán todos los tramos.
𝑑𝜃 𝑀 = 𝑑𝑥 𝐸𝐼 𝑑2 𝑦 𝑀 = 𝑑𝑥 2 𝐸𝐼 Tramo 1 0<x<l1 𝑀1 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑥2 − 𝑀𝑎𝑏 2 𝐸𝐼 · 𝜃𝐼 = ∫ 𝑅𝑎 · 𝑥 − 𝑞 · 𝜃𝐼 = 𝑥2 𝑅𝑎 · 𝑥 2 𝑥3 − 𝑀𝑎𝑏 𝑑𝑥 = − 𝑞 · − 𝑀𝑎𝑏 · 𝑥 + 𝐶1 2 2 6 𝑅𝑎 · 𝑥 2 𝑥3 ( 2 − 𝑞 · 6 − 𝑀𝑎𝑏 · 𝑥 + 𝐶1 ) 𝐸·𝐼 𝐸𝐼 · 𝑦𝐼 = ∫ 𝑅𝑎 · 𝑥 2 𝑥3 𝑅𝑎 · 𝑥 3 𝑥 4 𝑀𝑎𝑏 · 𝑥 2 − 𝑞 · − 𝑀𝑎𝑏 · 𝑥 + 𝐶1 𝑑𝑥 = −𝑞· − + 𝐶1 · 𝑥 2 6 6 24 2 + 𝐶2 𝑅𝑎 · 𝑥 3 𝑥 4 𝑀𝑎𝑏 · 𝑥 2 ( −𝑞· − + 𝐶1 · 𝑥 + 𝐶2) 6 24 2 𝑦𝐼 = 𝐸·𝐼 Las condiciones de contorno para este tramo son que el ángulo y la deflexión son 0 en el empotramiento, es decir: 𝜃𝐼 (𝑥 = 0) = 0 𝑦𝐼 (𝑥 = 0) = 0 Por lo tanto, si sustituimos en las ecuaciones se obtiene que ambas constantes son 0.
𝐶1 = 0; 𝐶2 = 0 Tramo 2 l1<x<( l1+l2/2) 𝑙1 𝑀2 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) 2 Dónde: 𝐴 = (𝑅𝑎 − 𝑞 · 𝑙1 + 𝑅𝑏) · 𝑥 𝐵 = (𝑞 · 𝑙12 − 𝑀𝑎𝑏 − 𝑅𝑏 · 𝑙1 ) 2 𝐴 · 𝑥2 𝐸𝐼 · 𝜃𝐼𝐼 = ∫ 𝐴 · 𝑥 + 𝐵 𝑑𝑥 = + 𝐵 · 𝑥 + 𝐶3 2 𝐴 · 𝑥2 + 𝐵 · 𝑥 + 𝐶3 ) 2 𝜃𝐼𝐼 = 𝐸·𝐼 ( 𝐸𝐼 · 𝑦𝐼𝐼 = ∫ 𝐴 · 𝑥2 𝐴 · 𝑥3 𝐵 · 𝑥2 + 𝐵 · 𝑥 + 𝐶3 𝑑𝑥 = + + 𝐶3 · 𝑥 + 𝐶4 2 6 2 𝑦𝐼𝐼 = 𝐴 · 𝑥3 𝐵 · 𝑥2 ( 6 + 2 + 𝐶3 · 𝑥 + 𝐶4) 𝐸·𝐼 Las condiciones de contorno para este tramo son: 𝜃𝐼 (𝑥 = 𝑙1 ) = 𝜃𝐼𝐼 (𝑥 = 𝑙1 ) 𝑦𝐼𝐼 (𝑥 = 𝑙1 ) = 0 Sustituyendo en las ecuaciones obtenemos el valor de ambas constantes C3 y C4: 𝑅𝑎 · 𝑙1 2 𝑙1 3 𝐴 · 𝑙1 2 −𝑞· − 𝑀𝑎𝑏 · 𝑙1 = + 𝐵 · 𝑙1 + 𝐶3 2 6 2 𝑅𝑎·𝑙 2 𝑙 3 𝐴·𝑙 2 𝑙 3 𝑙 2 𝐶3 = 2 1 − 𝑞 · 16 − 𝑀𝑎𝑏 · 𝑙1 − 21 − 𝐵 · 𝑙1 = −𝑞 · 16 + 12 · (𝑅𝑎 − 𝐴) − 𝑙1 · (𝑀𝑎𝑏 + 𝐵) 𝐴 · 𝑙1 3 𝐵 · 𝑙1 2 + + 𝐶3 · 𝑙1 + 𝐶4 = 0 6 2 𝐴 · 𝑙1 3 𝐵 · 𝑙1 2 𝐶4 = − ( + + 𝐶3 · 𝑙1 ) 6 2 Tramo 3 (l1+l2/2)<x<(l1+l2) 𝑙1 𝑙2 𝑀3 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) − 𝐹 · (𝑥 − (𝑙1 + )) 2 2 Dónde: 𝐶 = (𝑅𝑎 − 𝑞 · 𝑙1 + 𝑅𝑏 − 𝐹) · 𝑥 𝐷 = (𝑞 · 𝐸𝐼 · 𝜃𝐼𝐼𝐼 𝑙12 𝑙2 − 𝑀𝑎𝑏 − 𝑅𝑏 · 𝑙1 + 𝐹 · 𝑙1 + 𝐹 · ) 2 2 𝐶 · 𝑥2 = ∫ 𝐶 · 𝑥 + 𝐷 𝑑𝑥 = + 𝐷 · 𝑥 + 𝐶5 2 𝐶 · 𝑥2 2 + 𝐷 · 𝑥 + 𝐶5 ) = 𝐸·𝐼 ( 𝜃𝐼𝐼𝐼 𝐸𝐼 · 𝑦𝐼𝐼𝐼 = ∫ 𝑦𝐼𝐼𝐼 = 𝐶 · 𝑥2 𝐶 · 𝑥3 𝐷 · 𝑥2 + 𝐷 · 𝑥 + 𝐶5 𝑑𝑥 = + + 𝐶4 · 𝑥 + 𝐶5 2 6 2 𝐶 · 𝑥3 𝐷 · 𝑥2 ( 6 + 2 + 𝐶4 · 𝑥 + 𝐶5) 𝐸·𝐼 Las condiciones de contorno para este tramo son: 𝜃𝐼𝐼 (𝑥 = 𝑙1 + 𝑙2 𝑙2 ) = 𝜃𝐼𝐼𝐼 (𝑥 = 𝑙1 + ) 2 2 𝑦𝐼𝐼𝐼 (𝑥 = 𝑙1 + 𝑙2 ) = 0 Sustituyendo en las ecuaciones obtenemos el valor de ambas constantes C5 y C6: 𝑙 2 𝑙 2 𝐴 · (𝑙1 + 22 ) 𝐶 · (𝑙1 + 22 ) 𝑙2 𝑙2 + 𝐵 · (𝑙1 + ) + 𝐶3 = + 𝐷 · (𝑙1 + ) + 𝐶5 2 2 2 2 𝑙2 2 (𝑙1 + ) 2 . (𝐴 − 𝐶) + (𝑙 + 𝑙2 ) · (𝐵 − 𝐷) + 𝐶3 𝐶5 = 1 2 2 𝐶 · (𝑙1 + 𝑙2 )3 𝐷 · (𝑙1 + 𝑙2 )2 + + 𝐶5 · (𝑙1 + 𝑙2 ) + 𝐶6 = 0 6 2 𝐶 · (𝑙1 + 𝑙2 )3 𝐷 · (𝑙1 + 𝑙2 )2 𝐶6 = − ( + + 𝐶5 · (𝑙1 + 𝑙2 )) 6 2 Tramo 4 (l1+l2)<x<(l1+l2+l3) 𝑙1 𝑙2 𝑀4 (𝑥) = 𝑅𝑎 · 𝑥 − 𝑞 · 𝑙1 (𝑥 − ) − 𝑀𝑎𝑏 + 𝑅𝑏 · (𝑥 − 𝑙1 ) − 𝐹 · (𝑥 − (𝑙1 + )) + 𝑅𝑐 2 2 · (𝑥 − (𝑙1 − 𝑙2 )) Dónde: 𝐺 = (𝑅𝑎 − 𝑞 · 𝑙1 + 𝑅𝑏 − 𝐹 + 𝑅𝑐) · 𝑥 𝑙12 𝑙2 𝐻 = (𝑞 · − 𝑀𝑎𝑏 − 𝑅𝑏 · 𝑙1 + 𝐹 · 𝑙1 + 𝐹 · − 𝑅𝑐 · 𝑙1 − 𝑅𝑐 · 𝑙2 ) 2 2 𝐿 = 𝑙1 + 𝑙2 + 𝑙3 𝐸𝐼 · 𝜃𝐼𝑉 ( 𝜃𝐼𝑉 = 𝐺 · 𝑥2 = ∫ 𝐺 · 𝑥 + 𝐻 𝑑𝑥 = + 𝐻 · 𝑥 + 𝐶7 2 𝐺 · 𝑥2 2 + 𝐻 · 𝑥 + 𝐶7 ) 𝐸·𝐼 𝐸𝐼 · 𝑦𝐼𝑉 = ∫ 𝐺 · 𝑥2 𝐺 · 𝑥3 𝐻 · 𝑥2 + 𝐻 · 𝑥 + 𝐶7 = + + 𝐶7 · 𝑥 + 𝐶8 2 6 2 𝐺 · 𝑥3 𝐻 · 𝑥2 + + 𝐶7 · 𝑥 + 𝐶8) 6 2 = 𝐸·𝐼 ( 𝑦𝐼𝑉 Las condiciones de contorno para este tramo son: 𝜃𝐼𝐼𝐼 (𝑥 = 𝑙1 + 𝑙2 ) = 𝜃𝐼𝑉 (𝑥 = 𝑙1 + 𝑙2 ) 𝑦𝐼𝑉 (𝑥 = 𝐿) = 0 Sustituyendo en las ecuaciones obtenemos el valor de ambas constantes C5 y C6: 𝐶 · (𝑙1 + 𝑙2 )2 𝐺 · 𝑥2 + 𝐷 · (𝑙1 + 𝑙2 ) + 𝐶5 = + 𝐻 · 𝑥 + 𝐶7 2 2 2 (𝑙1 + 𝑙2 ) 𝐶7 = . (𝐶 − 𝐺) + (𝑙1 + 𝑙2 ) · (𝐷 − 𝐻) + 𝐶5 2 𝐺 · 𝐿3 𝐻 · 𝐿2 + + 𝐶7 · 𝐿 + 𝐶8 = 0 6 2 𝐺 · 𝐿3 𝐻 · 𝐿2 𝐶8 = − ( + + 𝐶7 · 𝐿) 6 2 7) Plot the displacement and slope curves Se implementan en Matlab todas las ecuaciones descritas en el apartado anterior para cada tramo: function SlopeDeflection(l1,l2,l3,q,F,E,I) L=l1+l2+l3; [oc ob]=giros(E,I,l1,l2,l3,q,F); [Mab Mba Mbc Mcb Mcd Mdc Tab Tba Tbc Tcb Tcd Tdc]=memberendmoments(oc,ob,E,I,l1,l2,l3,q,F); [Ra Rb Rc Rd]=reactions(Tab,Tba,Tbc,Tcb,Tcd,Tdc); A=Ra-q*l1+Rb; B=q*l1^2/2-Mab-Rb*l1; C=Ra-q*l1+Rb-F; D=q*l1^2/2-Mab-Rb*l1+F*(l1+l2/2); G=Ra-q*l1+Rb-F+Rc; H=q*l1^2/2-Mab-Rb*l1+F*(l1+l2/2)-Rc*(l1+l2); C3=-q*l1^3/6+l1^2/2*(Ra-A)-l1*(Mab+B); C4=-(l1^3/6*A+l1^2/2*B+C3*l1); C5=(l1+l2/2)^2/2*(A-C)+(l1+l2/2)*(B-D)+C3; C6=-((l1+l2)^3/6*C+(l1+l2)^2/2*D+C5*(l1+l2)); C7=(l1+l2)^2/2*(C-G)+(l1+l2)*(D-H)+C5; C8=-((l1+l2+l3)^3/6*G+(l1+l2+l3)^2/2*H+C7*(l1+l2+l3)); o1=[];o2=[];o3=[];o4=[]; y1=[];y2=[];y3=[];y4=[]; for x=0:100:l1 o1=[o1,(-q*x^3/6+Ra*x^2/2-Mab*x)/(E*I)]; y1=[y1,(-q*x^4/24+Ra*x^3/6-Mab*x^2/2)/(E*I)]; end for x=l1:100:(l1+l2/2) o2=[o2,(x^2/2*A+x*B+C3)/(E*I)]; y2=[y2,(x^3/6*A+x^2/2*B+C3*x+C4)/(E*I)]; end for x=(l1+l2/2):100:(l1+l2) o3=[o3,(x^2/2*C+x*D+C5)/(E*I)]; y3=[y3,(x^3/6*C+x^2/2*D+x*C5+C6)/(E*I)]; end for x=(l1+l2):100:(L) o4=[o4,(x^2/2*G+x*H+C7)/(E*I)]; y4=[y4,(x^3/6*G+x^2/2*H+x*C7+C8)/(E*I)]; end x1=0:100:l1; x2=l1:100:(l1+l2/2); x3=(l1+l2/2):100:(l1+l2); x4=(l1+l2):100:(L); subplot(2,1,1); plot(x1,o1,x2,o2,x3,o3,x4,o4) title('Gráfica de giros') xlabel('L en mm') ylabel('Giros en rad') subplot(2,1,2) plot(x1,y1,x2,y2,x3,y3,x4,y4) title('Gráfica de deflexiones') xlabel('L en mm') ylabel('Deflexiones en mm') end Finalmente, las gráficas del giro y de la deformada obtenidas son las siguientes: TRUSS ANALYSIS En esta parte de la práctica se pide analizar la siguiente celosía por el método de rigidez.
Se pide calcular: o o o o Desplazamiento en cada nodo.
Fuerzas internas de cada barra.
La configuración óptima de la celosía para poder obtener el mínimo desplazamiento.
La carga máxima que se puede aplicar al nodo B.
Los datos que se facilitan son los siguientes: Área de la sección → A= 350 mm2 Módulo de Young → E= 200 GPa Para poder realizar todos los apartados requeridos es necesario dividir la celosía de la siguiente manera: Siendo: La conexión entre barras.
La descomposición en x e y de cada nodo.
El primer paso es montar la matriz de rigidez. Para ello se monta la matriz de rigidez de cada barra y, luego, se suman todas para hacer la matriz de rigidez principal.
Para cada barra se calculará λx y λy: De esta manera se podrá montar la siguiente submatriz: Barras 1, 2, 3 y 4: 𝜆𝑥 = 𝑙1 − 0 =1 𝑙1 𝜆𝑦 = 0−0 =0 𝑙1 1 𝑙1 𝑘 = 𝐴𝐸 · 0 −1 𝑙1 [0 −1 𝑙1 0 1 𝑙1 0 0 0 0 0 0 0 0 0] Barras 5, 12: 𝜆𝑥 = 3𝑙1 − 4𝑙1 = 𝑙1 𝐿 = 𝑙2 𝐿 √𝑙1 2 + 𝑙2 2 𝜆𝑦 = 𝑙2 − 0 √𝑙1 2 + 𝑙2 2 𝑙1 2 𝐿3 −𝑙1 𝑙2 3 𝑘 = 𝐴𝐸 · 𝐿 2 −𝑙1 𝐿3 𝑙1 𝑙2 [ 𝐿3 −𝑙1 𝑙2 𝐿3 𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 −𝑙1 2 𝐿3 −𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 1 𝑙1 −𝑙1 𝑙2 𝐿3 𝑙1 𝑙2 𝐿3 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 𝑙1 2 𝐿3 ] Barras 6, 7: 𝜆𝑥 = 𝑙1 − 2𝑙1 = −1 𝑙1 𝜆𝑦 = 𝑙2 − 𝑙2 =0 𝑙1 1 𝑙1 𝑘 = 𝐴𝐸 · 0 −1 𝑙1 [0 −1 𝑙1 0 1 𝑙1 0 0 0 0 0 0 0 0 0] Barras 8 y 10: 𝜆𝑥 = 𝑙1 − 0 = 𝑙1 𝐿 = 𝑙2 𝐿 √𝑙1 2 + 𝑙2 2 𝜆𝑦 = 𝑙2 − 0 √𝑙1 2 + 𝑙2 2 𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 𝑘 = 𝐴𝐸 · −𝑙1 2 𝐿3 −𝑙1 𝑙2 [ 𝐿3 𝑙1 𝑙2 𝐿3 𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 −𝑙1 2 𝐿3 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 1 𝑙1 𝑙1 𝑙2 𝐿3 Barras 9, 11 y 13: 𝜆𝑥 = 𝑙1 − 𝑙1 =0 𝑙2 𝜆𝑦 = 𝑙2 − 0 =1 𝑙1 0 0 0 0 1 −1 0 0 𝑙2 𝑙2 𝑘 = 𝐴𝐸 · 0 0 0 0 −1 1 0 0 [ 𝑙2 𝑙2 ] −𝑙1 𝑙2 𝐿3 −𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 𝑙1 2 𝐿3 ] La matriz de rigidez es la siguiente: 1 1 2 3 𝐿3 2 4 5 6 7 8 9 10 11 12 13 14 X −1 𝑙1 0 0 0 0 0 X X 0 0 0 0 X 0 0 0 0 0 0 X X 0 0 0 0 X 2 𝑙1 0 0 0 0 0 X X 0 0 0 0 0 0 0 0 X X 0 0 0 0 0 0 −1 𝑙1 0 X X −𝑙1 𝑙2 𝐿3 0 0 0 0 X X −𝑙2 2 𝐿3 0 𝑙1 𝑙2 𝐿3 2 𝑙1 0 0 X X 0 0 0 0 0 1 𝑙2 0 X X 0 0 0 0 0 X X 0 0 0 0 0 X X −𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 3 3 𝐿 + 2𝑙1 𝑙1 · 𝐿3 0 0 0 0 0 −1 𝑙1 0 0 0 0 0 0 0 2 𝑙1 0 0 4 + 𝑙1 𝑙1 · 𝐿3 𝑙1 𝑙2 𝐿3 −1 𝑙1 0 5 0 X −1 𝑙1 6 0 X 0 0 7 0 X 0 0 8 0 X 0 0 0 0 9 0 X 0 0 0 0 10 0 X 0 0 0 0 11 0 X 0 0 12 0 X 0 0 13 0 X 0 0 0 14 0 X 0 0 0 X 0 0 X 0 −1 𝑙2 2 3 15 16 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 X −1 𝑙2 0 −1 𝑙1 0 2𝐿3 + 2𝑙1 𝑙1 · 𝐿3 0 −1 𝑙1 2 𝐿3 + 2𝑙2 𝑙2 · 𝐿3 0 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 −1 𝑙1 0 0 −1 𝑙2 𝑙1 𝑙2 𝐿3 −𝑙2 2 𝐿3 −𝑙1 𝑙2 𝐿3 0 0 X X −𝑙2 2 𝐿3 0 −1 𝑙2 X X 0 0 X X −1 𝑙2 𝑙1 𝑙2 𝐿3 0 0 X X 0 0 0 0 X X 0 0 −1 𝑙1 −𝑙2 2 𝐿3 0 0 X X 0 0 0 0 −𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 2 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 −1 𝑙1 0 𝐿3 + 2𝑙2 𝑙2 · 𝐿3 0 3 1 𝑙2 0 0 15 16 −𝑙1 2 𝐿3 −𝑙1 𝑙2 𝐿3 −𝑙1 𝑙2 𝐿3 −𝑙2 2 𝐿3 0 −1 𝑙2 𝑙1 𝑙2 𝐿3 −𝑙1 2 𝐿3 𝑙1 𝑙2 𝐿3 −𝑙2 2 𝐿3 −1 𝑙1 0 0 𝐿3 + 2𝑙1 𝑙1 · 𝐿3 0 Las columnas 2, 9 y 10 no se rellenan porque se sabe que el desplazamiento es 0. Además, se debe multiplicar esta matriz K por A·E.
0 3 0 𝐿3 + 2𝑙2 𝑙2 · 𝐿3 3 A continuación, se rellenan las matrices de desplazamiento (D) y de cargas (Q): Q= 0 Q2 0 -Fb 0 -Fc 0 -Fd Q9 Q10 0 0 0 0 0 0 D= D1 0 D3 D4 D5 D6 D7 D8 0 0 D11 D12 D13 D14 D15 D16 Se ha realizado este mismo procedimiento en MatLab, el código es el siguiente: function K=matrizRigidez(A,E,nodos,barras,elementos) K=zeros(length(nodos)*2); for i=1:1:length(barras) k=zeros(length(nodos)*2); xn=nodos(barras(i,1),1); xf=nodos(barras(i,2),1); yn=nodos(barras(i,1),2); yf=nodos(barras(i,2),2); L=sqrt(((xf-xn)^2)+((yf-yn)^2)); lx=(xf-xn)/L; ly=(yf-yn)/L; p1=elementos(barras(i,1),1); p2=elementos(barras(i,1),2); p3=elementos(barras(i,2),1); p4=elementos(barras(i,2),2); k(p1,p1)=(A*E/L)*lx^2; k(p1,p2)=(A*E/L)*lx*ly; k(p1,p3)=(A*E/L)*-lx^2; k(p1,p4)=(A*E/L)*-lx*ly; k(p2,p1)=(A*E/L)*lx*ly; k(p2,p2)=(A*E/L)*ly^2; k(p2,p3)=(A*E/L)*-lx*ly; k(p2,p4)=(A*E/L)*-ly^2; k(p3,p1)=(A*E/L)*-lx^2; k(p3,p2)=(A*E/L)*-lx*ly; k(p3,p3)=(A*E/L)*lx^2; k(p3,p4)=(A*E/L)*lx*ly; k(p4,p1)=(A*E/L)*-lx*ly; k(p4,p2)=(A*E/L)*-ly^2; k(p4,p3)=(A*E/L)*lx*ly; k(p4,p4)=(A*E/L)*ly^2; K=K+k; end K=K+k; end end La función anterior corresponde a la realización de la matriz de rigidez de nuestra celosía.
Mediante un contador que va de 1 hasta 13 se realizan todas las submatrices (k) y, al final, se suman todas para formar la matriz de rigidez (K).
function D=resolDesp(nodos,K,apoyos,Fb,Fc,Fd) [m n]=size(K); a=length(apoyos); k=K(1:m-a,1:n-a); Q=zeros(m-a,1); Q(2,1)=-Fb; Q(4,1)=-Fc; Q(6,1)=-Fd; d=k\Q; %Queremos toda la matriz de deformaciones %Columna 1=despl en x && Columna 2=despl en y D=zeros(length(nodos),2); D(1,1)=d(1); D(2,1)=d(2); D(2,2)=d(3); D(3,1)=d(4); D(3,2)=d(5); D(4,1)=d(6); D(4,2)=d(7); D(6,1)=d(8); D(6,2)=d(9); D(7,1)=d(10); D(7,2)=d(11); D(8,1)=d(12); D(8,2)=d(13); end La función anterior corresponde a la resolución de los desplazamientos de cada nodo. Consiste en una matriz con dos columnas: la primera para los desplazamientos en la dirección de las x y la segunda para los desplazamientos en la dirección de las y. Estos desplazamientos se calculan con la siguiente fórmula: function q=cargasInternas(D,barras,nodos,A,E) q=zeros(length(barras),1); for i=1:1:length(barras) xn=nodos(barras(i,1),1); xf=nodos(barras(i,2),1); yn=nodos(barras(i,1),2); yf=nodos(barras(i,2),2); L=sqrt(((xf-xn)^2)+((yf-yn)^2)); lx=(xf-xn)/L; ly=(yf-yn)/L; DNx=D(barras(i,1),1); DNy=D(barras(i,1),2); DFx=D(barras(i,2),1); DFy=D(barras(i,2),2); lambda=[-lx -ly lx ly]; d=[DNx;DNy;DFx;DFy]; q(i)=(A*E/L)*lambda*d; end end La función anterior consiste en la resolución de las cargas internas. Esta matriz se resuelve con la siguiente fórmula: La celosía se deforma tal que así: En esta práctica también se pedía modificar las conectividades de las barras para minimizar la media de desplazamientos.
La media de desplazamientos para la configuración original de la celosía es de: dx= 1.8546 mm dy= 4.5898 mm Si se modifica la barra 11: dx= 3.3065 mm dy= 10.3146 mm Si se modifica la barra 13: dx= 1.6665 mm dy= 4.5898 mm Si se modifica la barra 11 y la barra 13: dx= 3. 549 mm dy= 10.3146 mm Se observa que modificando solamente la barra 13 es cuando se obtiene la menor media de desplazamientos, por tanto, esa será la configuración óptima de la celosía.
Por último, se pide calcular la carga máxima que se le puede aplicar al nodo B teniendo en cuenta el criterio de carga crítica de Euler para una sección circular y uniforme.
Para ello se debe tener en cuenta las siguientes fórmulas: Si se tiene en cuenta que la segunda viga es la que mejor explica los apoyos de la celosía procedemos a hallar la inercia de las barras. Como el enunciado indica, las barras son todas iguales y de sección circular.
Área círculo →𝐴 = 𝜋 · 𝑅 2 = 350 𝑚𝑚2 Hallamos R: 350 𝜋 𝑅=√ = 10.55 𝑚𝑚 Calculamos la inercia: Inercia círculo →𝐼 = 𝜋·𝑅4 4 = 9729.7 𝑚𝑚4 El cálculo en MatLab es el siguiente: function Pcr=Pandeo(A,E,l2) R=sqrt(A/pi); I=(pi*(R^4))/4; Pcr=((pi^2)*E*I)/(l2^2); end Pero se pide hallar la carga máxima, por tanto, se realiza una fórmula llamada error donde calcula la diferencia entre la carga crítica y la carga interna de la barra 9.
function e=error(Pcr,q) e=Pcr-q(9); end Por último, se utiliza la función propia de MatLab “@fzero” para forzar que la función error se aproxime lo máximo posible a 0 y nos devuelva la carga en B. Esta carga en el nodo B será la máxima que podrá soportar.
...

Comprar Previsualizar