⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 neiranjidp.m

📁 内燃机转子仿真
💻 M
字号:
%PIM methold 

close all;
clear;
close all;
format long;
we=[0.2369269 0.4786287 0.5688889 0.4786287 0.2369269];
xi=[-0.9061798 -0.538469 0 0.538469 0.9061798];
zhuansu=1200;
f0=zeros(16,1);
if9=[0 20 200 220 40 60 160 180 80 100 120 140];


T=0.4;                                
d=60.0/zhuansu/360*3.0;               
TD=rem(T,d);
TT=T-TD;
nn=TT/d;                            

CT1=1;                                    
CTD1=rem(CT1,d);
CTT1=CT1-CTD1;
Cnn1=CTT1/d;                    

CT2=5.5;                                     
CTD2=rem(CT2,d);
CTT2=CT2-CTD2;
Cnn2=CTT2/d;                     

CT3=6.5;                                         
CTD3=rem(CT3,d);
CTT3=CT3-CTD3;
Cnn3=CTT3/d;                     

n=16;
f=zeros(n,1);
o1=zeros(n,1);
xyz=zeros(n,nn);
xyz1=zeros(n,nn);

countx2=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]';
x=countx2;


guanliang=[19.627 7.059 3.049 12.566  9.61  12.566 12.566 9.61 12.566 42.11 49.09 177.6 14007.5 11.759585 308.155203 310.113323];
gangdu=[0.651 39.86 32.75 32.75 32.75 32.75 32.75 32.75 325 0.316 205 9.7768 11.75483 3.11507 11.10479]*1.0e6;
bgd=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];
adamp=[0 0 0 5.1 5.1 5.1 5.1 5.1 5.1 0 0 0 0 0 0 0 ];
rdamp=[4700 0 0 3078  3078 3078 3078 3078 0 0 0 0 0 0 0 ];

dm=zeros(n,n);
dc=zeros(n,n);
for i=1:n
   dm(i,i)=guanliang(i);
end
for i=2:n-1
   dc(i,i)=rdamp(i-1)+rdamp(i);
end
dc(1,1)=rdamp(1);
dc(n,n)=rdamp(n-1);
for i=1:n-1;
   dc(i,i+1)=-rdamp(i);
   dc(i+1,i)=-rdamp(i);
end
for i=1:n
   dc(i,i)=dc(i,i)+adamp(i);
end


M=dm;
C=dc;



w=zhuansu*2*pi/60;


mj=73.07;

lamd=0.2544;
stroke=0.29;  
R=stroke/2; 
D=0.28;    

load PA6.dat
alph=PA6(:,1);
  
pressure1=PA6(:,2);


alph=alph*pi/180;



 for i=1:nn
     
 if i>240
         ii=rem(i,240)+1;
  else
       ii=i;
   end 
   
   beta(i)=asin(lamd*sin(alph(ii)));
   
   Mg81(i)=(pi*(D^2)*R*pressure1(ii)/4)*sin(alph(ii)+beta(i))/cos(beta(ii));
 
  Mg82(i)=mj*(R^2)*(w^2)*(0.25*lamd*sin(alph(ii))-0.5*sin(2*alph(ii))-0.75*lamd*sin(3*alph(ii))-0.25*(lamd)^2*sin(4*alph(ii)));
  
   Mg8(i)=Mg81(i)+Mg82(i); 
 end
%######
%xx=0:0.2:nn;
%yy=spline(1:nn,Mg8(:),xx);



 %********************击振力***************




  t(1,1)=0;
  F1=zeros(32,1);
  N=20;
  N1=20;
  a=pi/6;
  h=d;
  dt=h/2^N;
  w=zhuansu;
  kn=0;
 vk=zeros(32,1);
 xyz(:,1)=vk(1:n,1);
xyz1(:,1)=vk(1:n,1);

   for i=1:nn 
       
       
t(:,i)=(i-1)*h;

    oo=w*t(:,i);
   
    if oo<=2*kn*pi+0.5*pi-a&oo>=2*kn*pi

        ff(:,i)=1;
    elseif oo<=2*kn*pi+0.5*pi+a&oo>2*kn*pi+0.5*pi-a

        ff(:,i)=0.5*(1+cos((0.5*(oo-0.5*pi+a)/a)*pi));
    elseif oo<=2*kn*pi+3*pi/2-a&oo>2*kn*pi+0.5*pi+a

        ff(:,i)=0;
    elseif oo<=2*kn*pi+3*pi/2+a&oo>2*kn*pi+3*pi/2-a

        ff(:,i)=0.5*(1-cos((0.5*(oo-3*pi/2+a)/a)*pi));
    
    elseif 2*kn*pi+3*pi/2+a<oo<=2*pi+2*kn*pi
         ff(:,i)=1;
    end
   
    kt=gangdu-bgd*ff(:,i);
    for ii=2:n-1
   K(ii,ii)=kt(ii-1)+kt(ii);
    end

K(1,1)=kt(1);


K(n,n)=kt(n-1);
for ii=1:n-1;

  K(ii,ii+1)=-kt(ii);
   K(ii+1,ii)=-kt(ii);
end

   H=[-inv(M)*C/2 inv(M);0.25*C*inv(M)*C-K -0.5*C*inv(M)];
   [Hx Hn]=eig(H);
   I=eye(size(H));
   Ta=H*dt+(H*dt)^2*(I+(H*dt)/3+(H*dt)^2/12+(H*dt)^3/60)/2;
   for jj=1:N
    Ta=2*Ta+Ta*Ta;
  end
  T=I+Ta;
 
 
   for ii=1:12
      ik=i+if9(ii);
      if(ik>240)
         ik=rem(ik,240)+1;
      end
      Mg(ii)=Mg8(ik);
        
   end
   for ii=1:6
       f(ii+3)=Mg(ii*2-1)+Mg(ii*2);
   end
   f(1)=0;
   f(2)=0;
   f(3)=0;
   for jj=10:14
       f(jj)=0;
   end
 
      if i<=Cnn1
       f(15)=42975*i*d;
       f(16)=42975*i*d;
   elseif i<=Cnn2
       f(15)=42975;
       f(16)=42975;
   elseif i<=Cnn3
       f(15)=42975*(6.5-i*d);
       f(16)=42975*(6.5-i*d);
   else
      f(15)=0;
      f(16)=0;
  end

F0=[o1;f];



vf=0;
    for ii=1:5
        h1=h*(1-xi(ii))/2;
        dt1=h1/2^N1;
       Ta1=H*dt1+(H*dt1)^2*(I+(H*dt1)/3+(H*dt1)^2/12+(H*dt1)^3/60)/2;
       for j=1:N1
    Ta1=2*Ta1+Ta1*Ta1;
  end
  T1=I+Ta1;

  vf=vf+we(ii)*T1*(F0+xi(ii)*(F0-F1));

 
  %vf=vf+we(ii)*T1*F0*sin(w*(t(:,i)+0.5*h+0.5*h*xi(ii)));

  %vf=vf+we(ii)*T1*(F1+(F0-F1)*(0.5+0.5*x(ii)));
 
end
vk=T*vk+0.5*h*vf; 
  % if (i>1)%在 这里是表示在每一步计算的时候都把角度的值清零,但是还考虑到速度和加速度的影响 
     % countx2=x;
     %end
    
     x=vk(1:n,1);
     xyz1(1:n,i)=vk(1:n,1);
     
     zhuanzhix=x';
     
          for ll=1:(n-1)
         xiangduix(ll)=zhuanzhix(ll)-zhuanzhix(ll+1);
         xdnj(ll)=xiangduix(ll)*gangdu(ll);
     end
    
     
   
     xyz(2:n,i)=xdnj';
    
if oo>2*(kn+1)*pi
        kn=kn+1;
end
  
F1=F0;
end     
save('neiranji','xyz','t');
save('neiranji1','xyz1','t');
%%%%%%%%%%%%%%%%%%%%%%%% 15个轴段应力  %%%%%%%%%%%%%%%%%%%%%%%%%%%
wn12=pi*(0.21)^3/16;
wn23=pi*(0.21)^3/16;
wn34=pi*(0.23)^3/16;
wn45=pi*(0.23)^3/16;
wn56=pi*(0.23)^3/16;
wn67=pi*(0.23)^3/16;
wn78=pi*(0.23)^3/16;
wn89=pi*(0.23)^3/16;
wn910=pi*(0.23)^3/16;
wn1011=pi*(0.23)^3/16;%联轴器内外之间的连接轴
wn1112=pi*(0.23)^3/16;%离合器主从之间的连接轴
wn1213=pi*(0.314^4-0.18^4)/0.314/16;%一号传动轴
wn1314=pi*(0.314^4-0.18^4)/0.314/16;%2号传动轴
wn1415=pi*(0.25^4-0.15^4)/0.25/16;%电轴1
wn1516=pi*(0.38^4-0.064^4)/0.38/16;%两个电枢之间

xyz12=xyz(2,:);
yingli12=xyz12/wn12/1e6;
maxyl12=max(yingli12);
minyl12=min(yingli12);
feng12=maxyl12-minyl12;

xyz23=xyz(3,:);
yingli23=xyz23/wn23/1e6;
maxyl23=max(yingli23);
minyl23=min(yingli23);
feng23=maxyl23-minyl23;

xyz34=xyz(4,:);
yingli34=xyz34/wn34/1e6;
maxyl34=max(yingli34);
minyl34=min(yingli34);
feng34=maxyl34-minyl34;

xyz45=xyz(5,:);
yingli45=xyz45/wn45/1e6;
maxyl45=max(yingli45);
minyl45=min(yingli45);
feng45=maxyl45-minyl45;

xyz56=xyz(6,:);
yingli56=xyz56/wn56/1e6;
maxyl56=max(yingli56);
minyl56=min(yingli56);
feng56=maxyl56-minyl56;

xyz67=xyz(7,:);
yingli67=xyz67/wn67/1e6;
maxyl67=max(yingli67);
minyl67=min(yingli67);
feng67=maxyl67-minyl67;

xyz78=xyz(8,:);
yingli78=xyz78/wn78/1e6;
maxyl78=max(yingli78);
minyl78=min(yingli78);
feng78=maxyl78-minyl78;

xyz89=xyz(9,:);
yingli89=xyz89/wn89/1e6;
maxyl89=max(yingli89);
minyl89=min(yingli89);
feng89=maxyl89-minyl89;

xyz910=xyz(10,:);
yingli910=xyz910/wn910/1e6;
maxyl910=max(yingli910);
minyl910=min(yingli910);
feng910=maxyl910-minyl910;

xyz1011=xyz(11,:);
yingli1011=xyz1011/wn1011/1e6;
maxyl1011=max(yingli1011);

xyz1112=xyz(12,:);
yingli1112=xyz1112/wn1112/1e6;
maxyl1112=max(yingli1112);


xyz1213=xyz(13,:);
yingli1213=xyz1213/wn1213/1e6;
maxyl1213=max(yingli1213);
minyl1213=min(yingli1213);
feng1213=maxyl1213-minyl1213;

xyz1314=xyz(14,:);
yingli1314=xyz1314/wn1314/1e6;
maxyl1314=max(yingli1314);
minyl1314=min(yingli1314);
feng1314=maxyl1314-minyl1314;

xyz1415=xyz(15,:);
yingli1415=xyz1415/wn1415/1e6;
maxyl1415=max(yingli1415)
minyl1415=min(yingli1415);
feng1415=maxyl1415-minyl1415;;

xyz1516=xyz(16,:);
yingli1516=xyz1516/wn1516/1e6;
maxyl1516=max(yingli1516);
minyl1516=min(yingli1516);
feng1516=maxyl1516-minyl1516;

%%%%%%%%%%%%%%%%%%%%%%曲线%%%%%%%%%%%%%

i=1:nn;

figure(1)
plot(d*i,yingli12,'g');title('第34轴段变化曲线');


figure(2)
plot(d*i,yingli23,'g');title('第34轴段变化曲线');


figure(3)
plot(d*i,yingli34,'g');title('第34轴段变化曲线');
figure(4)
plot(d*i,yingli45,'r');title('第45轴段变化曲线');
figure(5)
plot(d*i,yingli56,'g');title('第56轴段变化曲线');
figure(6)
plot(d*i,yingli67,'r');title('第67轴段变化曲线');
figure(7)
plot(d*i,yingli78,'g');title('第78轴段变化曲线');
figure(8)
plot(d*i,yingli89,'r');title('第89轴段变化曲线');
figure(9)
plot(d*i,yingli910,'r');title('第910轴段变化曲线');
figure(10)
plot(d*i,yingli1011,'r');title('第1011轴段变化曲线');
figure(11)
plot(d*i,yingli1112,'r');title('第1112轴段变化曲线');

figure(12)
plot(d*i,yingli1213,'g');title('第1213轴段变化曲线');
figure(13)
plot(d*i,yingli1314,'r');title('第1314轴段变化曲线');
figure(14)
plot(d*i,yingli1415,'r');title('第1415轴段变化曲线');
figure(15)
plot(d*i,yingli1516,'g');title('第1516轴段变化曲线');





⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -