看了一篇柱塞幫浦離散化動力學建模的文章,感覺還挺有意思,於是嘗試做一下
二、matlab下的動力學方程總結
斜盤式軸向柱塞幫浦是一類常見的柱塞幫浦,本文以pcy-25型斜盤式軸向柱塞幫浦為研究物件,研究幫浦內機械振動的傳遞問題。由於該幫浦傳動軸與缸體之間為過盈配合,且柱塞滑靴元件位於缸體的柱塞腔內,因此,將傳動軸、缸體和柱塞滑靴元件視為乙個剛性體,該旋轉體即為轉子系統。
1.轉子系統是機械振動產生的主振源。轉子系統轉動時,傳動軸、缸體 和柱 塞滑靴元件的自激振
動,以及這些零部件與相接觸部件之間的相互作用,都是機械振動的激勵源。
2.幫浦殼是機械振動最終受體。該幫浦採用高強螺栓將前殼體與鐘形罩緊固連線,如認為幫浦的安裝為
完全固支,幫浦殼則是最終振動受體,但是三個殼體受到的振動會相互疊加作用。
3.後殼體振動最為複雜且劇烈。由安裝方式可以看出,整幫浦振動結構為懸臂梁結構,其主振型為垂
直於軸向的上下左右擺動,此外,其他兩個殼體承受的振動也會疊加作用到後殼體上。
4.該振 動 垂 直 於 幫浦 軸 由 內 向 外 傳 遞。幫浦 工 作時,旋轉元件圍繞幫浦軸高速轉動,在離心力及主振型作用下,振動將沿著幫浦軸的方向由內而外傳遞。
5.振動路徑貢獻度取決於接觸零部件之間的徑向等效剛度和阻尼。
各引數數值
該模型的振動傳遞路徑拉格朗日微分方程如下:
其中,激振力 f =f0*sin(πn/60)*t,n為軸向柱塞幫浦轉速,這裡設定的n=1460r/min,當幫浦的轉速不同時,激振力頻率也會不同。由於軸向柱塞幫浦激振力和軸承的剛度與阻尼是時變的,因此,該模型屬於非線性時變方程組,因此,在理論上不存在解析解,只能得到數值解。
求解這個動力學方程使用的是變步長求解器ode45。主要的核心點就是這個6元的二階微分方程的方程建立,讓計算機能夠讀懂你的方程。在這個過程中需要使用到換元,來代替中間的一階項。
function dx=
test_fun
(t,x)
mtotal=
6.8;
mvp =
0.25
;mf =
8.1;
mm =
8.6;
mb =
8.5;
msp =
2.1;
kfe1 =
2.5*10^
8;kfe2 =3*
10^8;
kb1 =
5.11*10
^8+1.3*(
10^7)
*sin
(438
*pi*t)
;kb2 =
6.04*10
^8+1.55*(
10^7)
*sin
(1216
*pi*t)
;k1=
5.2*10^
8;k2=6.3*10
^8;kvp=
4.71*10
^8;kvm=10^
9;f0=250;n=
1460
;cvp=
1100
;csb=
370;
cb1=
(1900
+100
*sin
(438
*pi*t));
cb2=
(2500
+500
*sin
(1216
*pi*t));
dx=zeros(12
,1);
dx(1)
=x(7
);dx(
2)=x
(8);
dx(3)
=x(9
);dx(
4)=x
(10);
dx(5)
=x(11
);dx(
6)=x
(12);
dx(7)
=(-cb1*(dx
(1)-
dx(3)
)-cb2*(dx
(1)-
dx(4)
)-cvp*(dx
(1)-
dx(2)
)-csb*(dx
(1)-
dx(6)
)-kfe1*x(
1)-kb1*(x
(1)-
x(3)
)-kb2*(x
(1)-
x(4)
)+f0*
sin((2
*pi*n/60)
*t))
/mtotal;dx(
8)=(cvp*(dx
(1)-
dx(2)
)-kvp*(x
(2)-
x(4)
))/mvp;dx(
9)=(cb1*(dx
(1)-
dx(3)
)-kfe2*x(
3)+kb1*(x
(1)-
x(3)
)-k1*(x
(3)-
x(4)
))/mf;dx(
10)=(cb2*(dx
(1)-
dx(4)
)+kb2*(x
(1)-
x(4)
)+kvp*(x
(2)-
x(4)
)+k1*(x
(3)-
x(4)
)-k2*(x
(4)-
x(5)
))/mm;dx(
11)=(k2*(x
(4)-
x(5)
)-kvm*(x
(5)-
x(6)
))/mb;dx(
12)=(csb*(dx
(1)-
dx(6)
)+kvm*(x
(5)-
x(6)
))/msp;
end
由於文章中並沒有初始值設定,所以我隨意設定的初始值,計算時長t=2s,初始值自由設定,前六個是6個位移初始值,後六個是六個位移初始值的微分,也就是速度。
[t,x]
=ode45
(@test_fun,[0
4],[
0000
0011
1111]);
總之由於不知道文章的給定初始值,計算出來的影象趨勢大體相同,但細節處並不一致 利用Matlab求解Laplace方程
問題描述 求解泊松方程 u 1 求解區域為單位圓盤,邊界條件為在圓盤邊界上u 0 下面求它的數值解,編寫程式如下 1 問題定義 g circleg 單位圓 b circleb1 邊界上為零條件 c 1 a 0 f 1 2 產生初始的三角形網格 p,e,t initmesh g 3 迭代直至得到誤差允...
matlab求解平面方程的原理
已知三點p1,p2,p3,求其平面方程 syms x y z p1,p2,p3的座標由自己定義。p1 x1,y1,z1 p2 x2,y2,z2 p3 x3,y3,z3 那麼求解下面矩陣q行列式就是了 q ones 4,1 x,y,z p1 p2 p3 detb det q 最後令 q 0 這裡的求解...
MATLAB 求解方程(組)
eg.解方程x 2 x 2 0 1.roots p 函式 此 matlab 函式 以列向量的形式返回 p 表示的多項式的根。輸入 p 是乙個包含 n 1 多項式係數的向量,以 xn 係數開頭。0係數表示方程中不存在的中間冪。p 1 1,2 x roots p 2.solve函式 利用solve函式求...