|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
本帖最后由 牛小贱 于 2014-4-21 21:51 编辑
各位高高手,本人初学齿轮系统动力学,建立了一个考虑齿轮时变刚度的扭振分析模型,我用四五阶龙格库塔法(ode45)求解时,发现运算的时间很长,不知是什么问题,望各位高手不吝赐教。程序如下:
扭振模型:
- function doty=GearTorqueVibratory(t,y)
- %转动惯量kg.m2
- doty=zeros(10,2);
- Jin=4.217823;
- J1=0.008952085;
- J2=0.190956155;
- J3=0.020671561;
- J4=0.766038806;
- J5=0.090060;
- J6=4.24048334;
- J7=0.6044254;
- J8=27.9071658;
- Jout=58.764562;
- %齿轮基圆半径m
- R1=(63.171e-3)/2;
- R2=(234.749e-3)/2;
- R3=(97.732e-3)/2;
- R4=(321.941e-3)/2;
- R5=(137.755e-3)/2;
- R6=(451.530e-3)/2;
- R7=(213.959e-3)/2;
- R8=(601.758e-3)/2;
- %轴扭转刚度Nm.rad
- k1=252851;
- k2=1936800;
- k3=6186712;
- k4=33459824;
- k5=10190124;
- Tin=819.4;%输入扭矩N.m
- Tout=91675;%输出轴扭矩N.m
- % 传动轴阻尼计算
- lanmda=0.01;
- c1=2*lanmda*sqrt(k1/(1/Jin+1/J1));
- c2=2*lanmda*sqrt(k2/(1/J2+1/J3));
- c3=2*lanmda*sqrt(k3/(1/J4+1/J5));
- c4=2*lanmda*sqrt(k4/(1/J6+1/J7));
- c5=2*lanmda*sqrt(k5/(1/J8+1/Jout));
- %扭振模型基本参数矩阵
- J=[Jin 0 0 0 0 0 0 0 0 0;
- 0 J1 0 0 0 0 0 0 0 0;
- 0 0 J2 0 0 0 0 0 0 0;
- 0 0 0 J3 0 0 0 0 0 0;
- 0 0 0 0 J4 0 0 0 0 0;
- 0 0 0 0 0 J5 0 0 0 0;
- 0 0 0 0 0 0 J6 0 0 0;
- 0 0 0 0 0 0 0 J7 0 0;
- 0 0 0 0 0 0 0 0 J8 0;
- 0 0 0 0 0 0 0 0 0 Jout];
- T=[Tin 0 0 0 0 0 0 0 0 Tout]';
- %齿轮时变啮合刚度N.B/m
- k12=GT1(t)/R1^2*1e6;
- k34=GT2(t)/R2^2*1e6;
- k56=GT3(t)/R3^2*1e6;
- k78=GT4(t)/R4^2*1e6;
- %齿轮副阻尼计算
- lanmdag=0.05;
- c12=2*lanmdag*sqrt(k12*R1^2*R2^2*J1*J2/(R1^2*J1+R2^2*J2));
- c34=2*lanmdag*sqrt(k34*R3^2*R4^2*J3*J4/(R3^2*J3+R4^2*J4));
- c56=2*lanmdag*sqrt(k56*R5^2*R6^2*J5*J6/(R5^2*J5+R6^2*J6));
- c78=2*lanmdag*sqrt(k78*R7^2*R8^2*J7*J8/(R7^2*J7+R8^2*J8));
- %刚度矩阵
- K=[k1 -k1 0 0 0 0 0 0 0 0;
- -k1 k1+R1^2*k12 -R1*R2*k12 0 0 0 0 0 0 0;
- 0 -R1*R2*k12 k2+R2^2*k12 -k2 0 0 0 0 0 0;
- 0 0 -k2 k2+R3^2*k34 -R3*R4*k34 0 0 0 0 0;
- 0 0 0 -R3*R4*k34 k3+R4^2*k34 -k3 0 0 0 0;
- 0 0 0 0 -k3 k3+R5^2*k56 -R5*R6*k56 0 0 0;
- 0 0 0 0 0 -R5*R6*k56 k4+R6^2*k56 -k4 0 0;
- 0 0 0 0 0 0 -k4 k4+R7^2*k78 -R7*R8*k78 0;
- 0 0 0 0 0 0 0 -R7*R8*k78 k5+R8^2*k78 -k5;
- 0 0 0 0 0 0 0 0 -k5 k5];
- %阻尼矩阵
- C=[c1 -c1 0 0 0 0 0 0 0 0;
- -c1 c1+R1^2*c12 -R1*R2*c12 0 0 0 0 0 0 0;
- 0 -R1*R2*c12 c2+R2^2*c12 -c2 0 0 0 0 0 0;
- 0 0 -c2 c2+R3^2*c34 -R3*R4*c34 0 0 0 0 0;
- 0 0 0 -R3*R4*c34 c3+R4^2*c34 -c3 0 0 0 0;
- 0 0 0 0 -c3 c3+R5^2*c56 -R5*R6*c56 0 0 0;
- 0 0 0 0 0 -R5*R6*c56 c4+R6^2*c56 -c4 0 0;
- 0 0 0 0 0 0 -c4 c4+R7^2*c78 -R7*R8*c78 0;
- 0 0 0 0 0 0 0 -R7*R8*c78 c5+R8^2*c78 -c5;
- 0 0 0 0 0 0 0 0 -c5 c5];
- %初始值
- %激励力
- P=[Tin 0 0 0 0 0 0 0 0 Tout]';
- invJ=inv(J);
- M=invJ*P
- N=invJ*C
- L=invJ*K
- doty=[y(2)
- M(1,1)-N(1,1)*y(2)-N(1,2)*y(4)-L(1,1)*y(1)-L(1,2)*y(3)
- y(4)
- M(2,1)-N(2,1)*y(2)-N(2,2)*y(4)-N(2,3)*y(6)-L(2,1)*y(1)-L(2,2)*y(3)-L(2,3)*y(5)
- y(6)
- M(3,1)-N(3,2)*y(4)-N(3,3)*y(6)-N(3,4)*y(8)-L(3,2)*y(3)-L(3,3)*y(5)-L(3,4)*y(7)
- y(8)
- M(4,1)-N(4,3)*y(6)-N(4,4)*y(8)-N(4,5)*y(10)-L(4,3)*y(5)-L(4,4)*y(7)-L(4,5)*y(9)
- y(10)
- M(5,1)-N(5,4)*y(8)-N(5,5)*y(10)-N(5,6)*y(12)-L(5,4)*y(7)-L(5,5)*y(9)-L(5,6)*y(11)
- y(12)
- M(6,1)-N(6,5)*y(10)-N(6,6)*y(12)-N(6,7)*y(14)-L(6,5)*y(9)-L(6,6)*y(11)-L(6,7)*y(13)
- y(14)
- M(7,1)-N(7,6)*y(12)-N(7,7)*y(14)-N(7,8)*y(16)-L(7,6)*y(11)-L(7,7)*y(13)-L(7,8)*y(15)
- y(16)
- M(8,1)-N(8,7)*y(14)-N(8,8)*y(16)-N(8,9)*y(18)-L(8,7)*y(13)-L(8,8)*y(15)-L(8,9)*y(17)
- y(18)
- M(9,1)-N(9,8)*y(16)-N(9,9)*y(18)-N(9,10)*y(20)-L(9,8)*y(15)-L(9,9)*y(17)-L(9,10)*y(19)
- y(20)
- M(10,1)-N(10,9)*y(18)-N(10,10)*y(20)-L(10,9)*y(17)-L(10,10)*y(19)]
- end
复制代码 齿轮副时变刚度见附件(GT1、GT2、GT3、GT4)
- clc;
- clear;
- t_span=linspace(0,3,100);
- Y0=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
- [t,y]=ode45('GearTorqueVibratory',t_span,Y0);
- plot(t,y)
复制代码
|
-
-
GT.rar
10.93 KB, 下载次数: 98
齿轮时变刚度
|