Baixe o app para aproveitar ainda mais
Prévia do material em texto
3 - MODELAGEM MECÂNICA E CONDIÇÕES DE DESBALANCEAMENTO 3.1 - Primeira Análise Foi realizada considerando apenas um eixo maciço, sem massas de desbalanceamento. Apoioado em dois mancais. Como pode ser observado na Figura 3 a seguir, os mancais constituem um sistema de mola - amortecedor como indicados. Outro detalhe importante é que k=k1=k2 e c=c1=c2. Figura 3. Modelagem do Sistema Importando as bibliotecas: Agora, vamos definir as coordenadas generalizadas do sistema. Neste caso, usaremos três coordenadas generalizadas. from sympy import symbols import sympy.physics.mechanics as me primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 1 of 10 31/05/2021 16:15 Definindo as algumas variáveis: 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: q1,q2,q0=me.dynamicsymbols('q1 q2 q0') q1d,q2d=me.dynamicsymbols('q1 q2',1) u1,u2=me.dynamicsymbols('u1 u2') g,r,omega,L,k,c,M,m= symbols('g r omega L k c M m') 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) primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 2 of 10 31/05/2021 16:15 Ponto um: Ponto dois: 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 Matris de B de rotação ao referencial N CM=me.Point('CM') RCM=q1*N.z CM.set_pos(O,RCM) CM.set_vel(N,RCM.dt(N)) 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)) 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 P2.pos_from(O).dot(N.z) − r cos (q0 (t)) cos (q2 (t)) + q1 (t) L sin (q2 (t)) cos (q0 (t)) 2 primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 3 of 10 31/05/2021 16:15 Matris de A de rotação ao referencial N Momento de inercia do cilindo: Definindo o eixo como corpo rígido Lista do corpo rígido 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), 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)) ⎤⎥⎦ Iz=M*(3*r**2+L**2)/12 Ix=Iz Iy=M*r**2/12 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)) C1=[eixo] 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 FR=[(CM,FCM),(P1,Fe1),(P2,Fe2),(P1,Fa1),(P2,Fa2)] FR primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 4 of 10 31/05/2021 16:15 (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)] Apliando o método de Kane Obitenção da equanção de movimento Definindo o número de pontos do grafico, tempo inicial e final Definindo as condições para a geração do gráfico, onde: M é a massa do eixo; KM= me.KanesMethod(N,q_ind=q_lista,u_ind=u_lista,kd_eqs=kde) (Fr,Frstar)=KM.kanes_equations(C1,FR) Eq_Mov = Fr + Frstar Eq_Mov ⎡⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣ −Mg − M u1 (t) − c (− + r u2 (t) sin (q2 (t)) cos − c ( + r u2 (t) sin (q2 (t)) cos (q0 (t)) − ( − ωr cos (q2 (t)) − k ( − r cos (q − − − − cr (− + r u2 (t) sin (q2 (t)) cos (q0 (t)) − (− − cr ( + r u2 (t) sin (q2 (t)) cos (q0 (t)) − ( − kr (− − r cos (q0 (t)) cos (q2 (t)) + q1 (t)) sin (q2 (t)) cos (q0 (t)) − d dt L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 Lω sin (q2 (t)) 2 L sin (q2 (t)) cos (q0 (t)) 2 Lc(− +r u2 (t) sin (q2 (t)) cos (q0 (t))−(−L u2 (t) cos (q0 (t)) cos (q2 (t))2 Lω sin (q2 2 Lc( +r u2 (t) sin (q2 (t)) cos (q0 (t))−( −ωr cos (q2 (t))) sin (q0 (t))+u1 (t)) cosL 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 Mω2r2 sin L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 Lω sin L u2 (t) cos (q0 (t)) cos (q2 (t)) 2 Lω sin (q 2 L sin (q2 (t)) cos (q0 (t)) 2 from numpy import linspace num=200 t0=0 tf=50 tn=linspace(t0,tf,num) primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 5 of 10 31/05/2021 16:15 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. Vale ressaltar que as unidades utilizadas para a plotação dos gráficos foram no SI. Importando a biblioteca pydy.system C:\Users\Vanusa\anaconda3\envs\DinAp\lib\site-packages\sympy\printing\ccode.p y:12: SymPyDeprecationWarning: importing from sympy.printing.ccode has been deprecated since SymPy 1.7. Use Import from sympy.printing.c instead. See https://github.com/sympy/sympy/issues/20256 for more info. deprecated_since_version="1.7").warn() Atribuindo o sistema Integrando o sistema Importando a biblioteca matplotlib para poder fazer o gráfico Plotando o 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} 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() primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 6 of 10 31/05/2021 16:15 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() primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 7 of 10 31/05/2021 16:15 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() primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 8 of 10 31/05/2021 16:15 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() primeira análise (1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 9 of 10 31/05/2021 16:15 primeira análise(1) file:///C:/Users/Vanusa/AppData/Local/Temp/primeira análise (1).html 10 of 10 31/05/2021 16:15
Compartilhar