Baixe o app para aproveitar ainda mais
Prévia do material em texto
3.4 - Quarta Análise Esta análise foi realizada considerando, também, um eixo maciço, com diâmedro de 40 mm um comprimento de 250 mm, apoioado em dois mancais. Entretanto, foi adicionado duas massas desbalanceadoras (m1 e m2), no qual, suas características e posição serão abordadas ao longo do código. Para melhor compreensão o modelo para análise é apresentado na Figura 5 a seguir. Figura 5. Modelagem do sistema com duas massas de desbalanceamento Importando as bibliotecas: Agora, vamos definir as coordenadas generalizadas do sistema. Neste caso, usaremos três coordenadas generalizadas. Definindo as algumas variáveis: from sympy import symbols import sympy.physics.mechanics as me q1,q2,q0=me.dynamicsymbols('q1 q2 q0') q1d,q2d=me.dynamicsymbols('q1 q2',1) u1,u2=me.dynamicsymbols('u1 u2') quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 1 of 11 31/05/2021 16:51 Listando as coordenadas generalizadas: Velocidades generalizadas: Equações diferenciais cinemáticas: Referenciando os sistemas: Orientando o A: Orientando o B: Definindo os pontos que serão usados no código. Ponto O: Cento de massa: Ponto um: g,r,omega,L,k,c,M,m1, m2= symbols('g r omega L k c M m1 m2') q_lista=[q1,q2] u_lista=[u1,u2] kde=[q1d-u1,q2d-u2] N=me.ReferenceFrame('N') A=me.ReferenceFrame('A') B=me.ReferenceFrame('B') A.orient(N,'Axis',[q0,N.y]) A.set_ang_vel(N,omega*N.y) B.orient(A,'Axis',[q2,A.x]) B.set_ang_vel(A,u2*B.x) O=me.Point('O') O.set_vel(N,0) CM=me.Point('CM') RCM=q1*N.z CM.set_pos(O,RCM) CM.set_vel(N,RCM.dt(N)) quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 2 of 11 31/05/2021 16:51 Ponto dois: Neste caso, foi adicionado um ponto 'P3' e 'P4'. Onde está localizada a massa de desbalanceamento. Velocidade no ponto P1: Velocidade no ponto P2: Ponto P1 em relação ao ponto fixo O Ponto P2 em relação ao ponto fixo O P1=me.Point('P1') RP1=-L/2*B.y-r*B.z P1.set_pos(O,RP1+RCM) P1.set_vel(N,(RP1+RCM).dt(N)) P2=me.Point('P2') RP2=L/2*B.y-r*B.z P2.set_pos(O,RP2+RCM) P2.set_vel(N,(RP2+RCM).dt(N)) P3=me.Point('P3') RP3=-L/5*B.y+r*B.z P3.set_pos(O,RP3+RCM) CM.set_vel(N,(RP3+RCM).dt(N)) P4=me.Point('P3') RP4=L/3*B.y+r*B.z P4.set_pos(O,RP4+RCM) CM.set_vel(N,(RP4+RCM).dt(N)) P1.vel(N) (− − ωr cos (q2 (t)))b̂x + r u2 (t)b̂y − b̂z + q1 (t)n̂z Lω sin (q2 (t)) 2 L u2 (t) 2 d dt P2.vel(N) ( − ωr cos (q2 (t)))b̂x + r u2 (t)b̂y + b̂z + q1 (t)n̂z Lω sin (q2 (t)) 2 L u2 (t) 2 d dt P1.pos_from(O).dot(N.z) − − r cos (q0 (t)) cos (q2 (t)) + q1 (t) L sin (q2 (t)) cos (q0 (t)) 2 quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 3 of 11 31/05/2021 16:51 Matris de B de rotação ao referencial N Matris de A de rotação ao referencial N Momento de inercia do cilindo: Definindo o eixo como corpo rígido A massa desbalanceadora foi considerada como uma partícula. Desta forma, usaremos o seguinte comando para identificá-la. Lista do corpos presente no sistema P2.pos_from(O).dot(N.z) − r cos (q0 (t)) cos (q2 (t)) + q1 (t) L sin (q2 (t)) cos (q0 (t)) 2 B.dcm(N) ⎡⎢⎣ cos (q0 (t)) 0 − sin (q0 (t)) sin (q0 (t)) sin (q2 (t)) cos (q2 (t)) sin (q2 (t)) cos (q0 (t)) sin (q0 (t)) cos (q2 (t)) − sin (q2 (t)) cos (q0 (t)) cos (q2 (t)) ⎤⎥⎦ A.dcm(N) ⎡⎢⎣ cos (q0 (t)) 0 − sin (q0 (t)) 0 1 0 sin (q0 (t)) 0 cos (q0 (t)) ⎤⎥⎦ Ix = M*(3*r**2+L**2)/12 Iy = M*r**2/12 Iz = Ix I = me.inertia(B,Ix,Iy,Iz) I b̂x ⊗ b̂x + b̂y ⊗ b̂y + b̂z ⊗ b̂z M (L2 + 3r2) 12 Mr2 12 M (L2 + 3r2) 12 eixo=me.RigidBody('eixo',CM,B,M,(I,CM)) Ppart_d1=me.Particle('Ppart_d',P3,m1) Ppart_d2=me.Particle('Ppart_d',P4,m2) quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 4 of 11 31/05/2021 16:51 Defindo as forças que estão agindo no corpo Lista de forças em relação aos seus respectivos pontos [(CM, - M*g*N.z), (P1, - k*(-L*sin(q2(t))*cos(q0(t))/2 - r*cos(q0(t))*cos(q2(t)) + q1(t))*N.z), (P2, - k*(L*sin(q2(t))*cos(q0(t))/2 - r*cos(q0(t))*cos(q2(t)) + q1(t))*N.z), (P1, - c*(-L*u2(t)*cos(q0(t))*cos(q2(t))/2 + r*u2(t)*sin(q2(t))*cos(q0(t)) - (-L* omega*sin(q2(t))/2 - omega*r*cos(q2(t)))*sin(q0(t)) + Derivative(q1(t), t))*N. z), (P2, - c*(L*u2(t)*cos(q0(t))*cos(q2(t))/2 + r*u2(t)*sin(q2(t))*cos(q0(t)) - (L*om ega*sin(q2(t))/2 - omega*r*cos(q2(t)))*sin(q0(t)) + Derivative(q1(t), t))*N. z), (P3, - g*m1*N.z), (P3, - g*m2*N.z)] Apliando o método de Kane Obitenção da equanção de movimento C=[eixo,Ppart_d1,Ppart_d2] FCM=-M*g*N.z Fe1= -k*(P1.pos_from(O).dot(N.z))*N.z # Força Elástica no Mancal 1 Fe2= -k*(P2.pos_from(O).dot(N.z))*N.z # Força Elástica no Mancal 2 Fa1= -c*(P1.vel(N).dot(N.z))*N.z #Força de amortecimento no Mancal 1 Fa2= -c*(P2.vel(N).dot(N.z))*N.z #Força de amortecimento no Mancal 2 Fp_desb1=-m1*g*N.z #Força peso da massa 1 de desbalanceamento Fp_desb2=-m2*g*N.z #Força peso da massa 2 de desbalanceamento FR=[(CM,FCM),(P1,Fe1),(P2,Fe2),(P1,Fa1),(P2,Fa2),(P3,Fp_desb1),(P4,Fp_desb2)] FR KM= me.KanesMethod(N,q_ind=q_lista,u_ind=u_lista,kd_eqs=kde) (Fr,Frstar)=KM.kanes_equations(C,FR) Eq_Mov = Fr + Frstar Eq_Mov quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 5 of 11 31/05/2021 16:51 Definindo o número de pontos do grafico, tempo inicial e final Definindo as condições para a geração do gráfico, onde: ⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣ −Mg − M (− − ω ( + ωr cos (q2 (t))) sin (q2 (t))) sin (q2 (t)) cos (q0 (t) + M ( − 2ωr u2 (t) sin (q2 (t))) sin (q0 (t)) − c (− + − c ( + r u2 (t) sin (q2 (t)) cos (q0 (t)) − ( − k (− − r cos (q0 (t)) cos (q2 (t)) + q1 (t)) − m1 ( − ω (− + ωr cos (q2 (t))) sin (q2 (t))) sin (q2 (t)) cos (q0 (t)) − + m1 (− − 2ωr u2 (t) sin (q2 (t))) sin (q0 (t)) − m2 (− − m2 (−ω ( + ωr cos (q2 (t))) cos (q2 (t)) − r u22 (t)) cos (q0 (t)) cos (q2 (t)) + − (M ( − r sin (q2 (t)) cos (q0 (t))) + m1 (− − r sin − − + − + − − + Mgr sin (q2 (t)) cos + Mr (− − ω ( − cr (− + r u2 (t) sin (q2 (t)) cos (q0 (t)) − (− − cr ( + r u2 (t) sin (q2 (t)) cos (q0 (t)) − ( − ωr cos (q2 (t (q2 (t)) cos (q0 (t)) − kr (− − r cos (q0 (t)) cos (q2 (t)) + q1 (t)) sin (q2 (t) (q0 (t)) + m1r ( − ω (− + ωr cos (q2 (t))) sin (q2 (t) − (M ( − r sin (q2 (t)) cos (q0 (t))) + m1 (− − r sin − (M ( + r2) + + m1 ( L u22 (t) 3 Lω sin (q2 (t)) 3 2Lω u2 (t) cos (q2 (t)) 3 L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 L L sin (q2 (t)) cos (q0 (t)) 2 L u22 (t) 5 Lω sin (q2 (t)) 5 2Lω u2 (t) cos (q2 (t)) 5 L u22 3 Lω sin (q2 (t)) 3 L cos (q0 (t)) cos (q2 (t)) 3 L cos (q0 (t)) cos (q2 (t)) 5 LMg cos (q0 (t)) cos (q2 (t)) 3 LM(−ω( +ωr cos (q2 (t))) cos (q2 (t))−r u22 (t))Lω sin (q2 (t))3 3 Lc(− L u2 (t) cos (q0 ( 2 Lc( +r u2 (t) sin (q2 (t)) cos (q0 (t))−( −ωr cos (q2 (t))) sin (q0 (tL u2 (t) cos (q0 (t)) cos (q2 (t))2 Lω sin (q2 (t))2 2 Lk(− −r cos (q0 (t)) cos (q2 (t))+q1 (t)) cos (q0 (t)) cos (q2 (t))L sin (q2 (t)) cos (q0 (t))2 2 Lk( −r cos (L sin (q2 (t)) cos (q0 (t)) 2 Lm2(−ω( +ωr cos (q2 (t))) cos (q2 (t))−r u22 (t))Lω sin (q2 (t))3 3 L u22 (t) 3 Lω sin (q2 (t)) 3 L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 Lω L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 Lω sin (q2 (t)) 2 L sin (q2 (t)) cos (q0 (t)) 2 L u22 (t) 5 Lω sin (q2 (t)) 5 L cos (q0 (t)) cos (q2 (t)) 3 L cos (q0 (t)) cos (q2 (t)) 5 L2 9 M(L2+3r2) 12 from numpy import linspace num=300 t0=0 tf=50 tn=linspace(t0,tf,num) quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 6 of 11 31/05/2021 16:51 M é a massa do eixo; g é a aceleração da gravidade; r é o raio do eixo; k é constante elástica da mola (N/m); c é o coeficiente de amortecimento; Omega (ω) é a velocidade angular do eixo; m1 é massa 1 de desbalanceamento; m2 é massa 2 de desbalanceamento. Importando a bibliotéca pydy.system Atribuindo o sistema Integrando o sistema Importando a biblioteca matplotlib para poder fazer o gráfico Plotandoo gráfico de q1 em relação ao tempo constantes={M:2.5,g:9.8,L:0.250,r:0.02,k:1000,c:0.05,omega:100, m1:0.25, m2:0.30 import numpy as np cond_in={q1:0,q2:np.pi/2,u1:0,u2:1} import pydy.system as dy sistema= dy.System(KM,constants=constantes, initial_conditions=cond_in, times= Q=sistema.integrate() import matplotlib.pyplot as plt plt.figure(figsize=(10,8)) plt.plot(tn,Q[:,0]) plt.xlabel('t[s]') plt.ylabel('q1[m]') plt.grid(True) plt.title('Variação do Centro de Massa em relação ao tempo') plt.show() quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 7 of 11 31/05/2021 16:51 Plotando o gráfico de q2 em relação ao tempo plt.figure(figsize=(10,8)) plt.plot(tn,Q[:,1]) plt.xlabel('t[s]') plt.ylabel('q2[m]') plt.grid() plt.title('Variação do Centro de Massa em relação ao tempo') plt.show() quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 8 of 11 31/05/2021 16:51 Plotando o gráfico de u1 em relação ao tempo plt.figure(figsize=(10,8)) plt.plot(tn,Q[:,2]) plt.xlabel('t[s]') plt.ylabel('u1[m]') plt.grid() plt.title('Variação do Centro de Massa em relação ao tempo') plt.show() quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 9 of 11 31/05/2021 16:51 Plotando o gráfico de u2 em relação ao tempo plt.figure(figsize=(10,8)) plt.plot(tn,Q[:,3]) plt.xlabel('t[s]') plt.ylabel('u2[m]') plt.grid() plt.title('Variação do Centro de Massa em relação ao tempo') plt.show() quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 10 of 11 31/05/2021 16:51 quarta analise-Copy1 file:///C:/Users/Vanusa/AppData/Local/Temp/quarta analise-Copy1-1.html 11 of 11 31/05/2021 16:51
Compartilhar