0% found this document useful (0 votes)
14 views6 pages

Code Matlab

This document contains MATLAB code for analyzing the mechanical dynamics of a piston engine. It defines key parameters, calculates variables at different angles, and generates plots of pressure vs volume, angle, force and moment over angle. The code contains detailed calculations and generates several graphs to analyze the engine cycle.

Uploaded by

An Nguyen Duy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views6 pages

Code Matlab

This document contains MATLAB code for analyzing the mechanical dynamics of a piston engine. It defines key parameters, calculates variables at different angles, and generates plots of pressure vs volume, angle, force and moment over angle. The code contains detailed calculations and generates several graphs to analyze the engine cycle.

Uploaded by

An Nguyen Duy
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

CODE MATLAB

S = 0.9; % hanh trinh piston


B = 0.9; % duong kinh piston
D = 0.925; % duong kinh xi lanh
R = S/2; % ban kinh truc khuyu
lamda = 1/3.5; % thong so ket cau
Sp =(pi*(D^2))/4; % dien tich thiet dien mat cat vuong goc truc xi lanh
vd = 0.61; % the tich cong tac
vc = 0.034; % the tich buong chay
va = (vd + vc); % dung tich xy lanh
n1 = 1.365; % chi so nen da bien trung binh
n2 = 1.212; % chi so gian no da bien trung binh
% phía trên tính theo đơn vị (dm)
w = (2*pi*4500)/60;
vz = 0.033;
vb = va;
pa = 0.086; %MN/m2
pc = 4.9; %MN/m2
pz = 9; %MN/m2
pb = 0.33339; %MN/m2
pr = 0.11; %MN/m2
po = 0.1013; %MN/m2

%% Thong so tinh toan dong hoc va dong luc hoc


mnp = 21.625; %don vi g/cm2
mtt = 28.83;
mk = 21.625;
mA = 0.3* mtt;
mB = 0.7* mtt;
mj = mA + mnp;
mr = mB + mk;

%goc mo som xupap nap: 6


%goc dong muon xupap nap: 34
%goc mo som xupap thai: 44
%goc dong muon xupap thai: 4
%goc phun som : 30

%QUA TRINH NAP (doan rr'')


ahc1=[0 4 7];
phc1=[pr (pr+pa)./2 pa];
a1=linspace(0,7,8);
x1=R.*(1-cosd(a1)+(lamda/4).*(1-cosd(2*a1)));
v1=(x1.*Sp)+vc;
p1=interp1(ahc1,phc1,a1,'pchip');
j1=(R/10)*(w^2).*(cosd(a1)+lamda.*cosd(2.*a1));

%QUA TRINH NEN (doan ac')


a3=linspace(180,340,161); % góc phun nhiên liệu sớm 20 độ
x3=R.*(1-cosd(a3)+(lamda/4).*(1-cosd(2*a3)));
v3=(x3.*Sp)+vc;
p3= pa.*(va./v3).^n1;
j3=(R/10)*((w)^2).*(cosd(a3)+lamda.*cosd(2.*a3));
%QUA TRINH NAP (doan r''a)
a2=linspace(7,180,174);
x2=R.*(1-cosd(a2)+(lamda/4).*(1-cosd(2*a2)));
v2=(x2.*Sp)+vc;
p2=linspace(pa,min(p3),174); % Nhằm cho đường p2 và p3 giao nhau tại 180 độ
j2=(R/10)*(w^2).*(cosd(a2)+lamda.*cosd(2.*a2));

%QUA TRINH CHAY VA GIAN NO (doan c'z")


%%%VE DOAN (c'c")
%%%%xac dinh diem c'
vc1 = min (v3);
pc1 = max (p3);
%%%%xac dinh toan do diem c"
pcz1 = pz - pc;
pc2 = pcz1/3 + pc;
vc2 = vc;
ahc4=[340 353 360];
phc4=[pc1 (pc1+pc2)./2 pc2];
a4=linspace(340,360, 21);
x4=R.*(1-cosd(a4)+(lamda/4).*(1-cosd(2*a4)));
v4=(x4.*Sp)+vc;
p4=interp1(ahc4,phc4,a4,'pchip');
j4=(R/10)*((w)^2).*(cosd(a4)+lamda.*cosd(2.*a4));

%%%VE DOAN AP SUAT CUC DAI


a22=linspace(380,500, 121);
xz2=R.*(1-cosd(a22)+(lamda/4).*(1-cosd(2*a22)));
vz2=(xz2.*Sp)+vc;
pz2=pz.*(vz./vz2).^n2;
pz22=max(pz2);
ahc5=[360 370 380];
phc5=[pc2 pz pz22];

a55=linspace(360,380,21);
x55=R.*(1-cosd(a55)+(lamda/4).*(1-cosd(2*a55)));
v55=(x55.*Sp)+vc;
p55=interp1(ahc5,phc5,a55,'pchip');
j55=(R/10)*((w)^2).*(cosd(a55)+lamda.*cosd(2.*a55));

%QUA TRINH CHAY VA GIAN NO


a7=linspace(381,478,99); % góc mở sớm xuppap thải 62 độ
x7=R.*(1-cosd(a7)+(lamda/4).*(1-cosd(2*a7)));
v7=(x7.*Sp)+vc;
p7=pz.*(vz./v7).^n2;
j7=(R/10)*((w)^2).*(cosd(a7)+lamda.*cosd(2.*a7));

%QUA TRINH CHAY VA GIAN NO (doan b'->b")


%%%xac dinh diem b'
a8=linspace(478,540,63);
x8=R.*(1-cosd(a8)+(lamda/4).*(1-cosd(2.*a8)));
v8=(x8.*Sp)+vc;
pB1=pz.*( vz./v7).^n2;
pb1=min(pB1);
vb1=max(v7);
%%%xac dinh diem b"
pb2=((pb+pa)/2);
vb2=va;
%%%
ab3=509;
xb3=R.*(1-cosd(ab3)+(lamda/4).*(1-cosd(2*ab3)));
vb3=(xb3.*Sp)+vc;
pb3=pz.*(vz./vb3).^n2;
ahc2=[478 ab3 540];
phc2=[pb1 pb3 pb2];
p8=interp1(ahc2,phc2,a8,'pchip');
j8=(R/10)*((w)^2).*(cosd(a8)+lamda.*cosd(2.*a8));

%QUA TRINH THAI 1 (b''->r')


a9=linspace(540,580, 41); % góc mở sớm xuppap nạp 14 độ
x9=R.*(1-cosd(a9)+(lamda/4).*(1-cosd(2.*a9)));
v9=(x9.*Sp)+vc;
ahc3=[540 560 580];
phc3=[pb2 (pb2+pr)./2 pr];
p9=interp1(ahc3,phc3,a9,'spline');
j9=(R/10)*((w)^2).*(cosd(a9)+lamda.*cosd(2.*a9));

%QUA TRINH THAI 2 (r'->r)


a10=linspace(580,720,141);
x10=R.*(1-cosd(a10)+(lamda/4).*(1-cosd(2.*a10)));
v10=(x10.*Sp)+vc;
p10=linspace(pr,pr,141);
j10=(R/10)*((w)^2).*(cosd(a10)+lamda.*cosd(2.*a10));

%CAC LENH VE VA CHINH SUA DO THI


a =[a1 a2 a3 a4 a55 a7 a8 a9 a10];
x =[x1 x2 x3 x4 x55 x7 x8 x9 x10];
v =[v1 v2 v3 v4 v55 v7 v8 v9 v10];
p =[p1 p2 p3 p4 p55 p7 p8 p9 p10];
j =[j1 j2 j3 j4 j55 j7 j8 j9 j10];

figure %DO THI P-V


plot(v,p,'r','linewidth',1.5);
hold on;
title('DO THI P-V');
xlabel('The tich(lit)');
ylabel('ap suat P(MN/m2)');
grid on
figure %DO THI P-a
plot(a,p,'b','linewidth',1.5)
grid on
title('DO THI P-phi');
xlabel('Goc quay truc khuyu(do)');
ylabel('ap suat p(MN/m2)');
figure %DO THI Pkt Pj P1
pkt=(p-0.1013);
plot(a,pkt,'b','linewidth',1.5)
hold on
grid on
pj=-mj*R*(w.^2)*(10.^(-6))*(cosd(a)+lamda*(cosd(2*a)));
plot(a,pj,'g','linewidth',1.5)
hold on
grid on
p1=pkt+pj;
plot(a,p1,'r','linewidth',1.5)
title('DO THI Pkt Pj P1');
xlabel('Goc quay truc khuyu(do)');
ylabel('Pkt(MN/m2) Pj(MN/m2) P1(MN/m2)');
legend('Pkt','Pj','P1');
b =linspace(0,720,729);
figure %DO THI CHUYEN VI CUA PISTON
Xp=R.*(1-cosd(b)+(lamda/4).*(1-cosd(2.*b)));
X1=R.*(1-cosd(b));
X2=R.*((lamda/4).*(1-cosd(2.*b)));
plot(X1,'linewidth',1.5)
grid on
hold on
title('DO THI CHUYEN VI CUA PISTON');
xlabel('Goc quay truc khuyu(do)');
ylabel('Chuyen vi cua piston(dm)');
figure %DO THI VAN TOC PISTON
VT=(R/10)*(w).*(sind(b)+lamda/2.*sind(2.*b));
VT1=(R/10)*(w).*sind(b);
VT2=(R/10)*(w).*(lamda/2.*sind(2.*b));
plot(VT1,'linewidth',1.5)
grid on
hold on
title('DO THI VAN TOC PISTON');
xlabel('Goc quay truc khuyu(do)');
ylabel('Van toc v(m/s)');

figure %DO THI GIA TOC PISTON


J=(R/10)*((w)^2).*(cosd(b))+(R/10)*((w)^2).*(lamda.*cosd(2.*b));
J1=(R/10)*((w)^2).*(cosd(b));
J2=(R/10)*((w)^2).*(lamda.*cosd(2.*b));
plot(J1,'linewidth',1.5)
grid on
hold on
title('DO THI GIA TOC PISTON');
xlabel('Goc quay truc khuyu(do)');
ylabel('Gia toc j(m/s2) ');
legend('J1','J2','J')

figure %DO THI T


T=p1.*sind(a+asind(lamda.*sind(a)))./cosd(asind(lamda.*sind(a)));
plot(T,'b','linewidth',1.5)
grid on
title('DO THI T');
xlabel('Goc quay truc khuyu(do)');
ylabel('T(MN/m2)');
Z=p1.*cosd(a+asind(lamda.*sind(a)))./cosd(asind(lamda.*sind(a)));
figure %DO THI Z
plot(a,Z,'b','linewidth',1.5);
grid on
title('DO THI Z');
xlabel('Goc quay truc khuyu(do)');
ylabel('Z(MN/m2)');
N=p1.*tand(asind(lamda.*(sind(a))));
figure %DO THI LUC NGANG N
plot(a,N,'b','linewidth',1.5)
grid on
title('DO THI LUC NGANG N');
xlabel('Goc quay truc khuyu(do)');
ylabel('N(MN/m2)');

% DO THI PHU TAI %


figure(9);
plot(T,Z,'r','linewidth',1.3)
ax=gca;
ax.XAxisLocation='origin';ax.YAxisLocation= 'origin';
axis ij
title('DO THI PHU TAI');
xlabel('T(MN)');
ylabel('Z(MN)');
grid on

figure % luc ly tam


Plytam=-20.181*(R/10)*(omega^2)*10^(-6);
% hop luc tac dung len chot khuyu
Qch = ((T.^2+(Z-Plytam).^2)).^(1/2); %MN
% DO THI LUC TAC DUNG LEN CHOT KHUYU (Q) %
plot(a,Qch,'linewidth',1.3);
grid on
title('DO THI LUC TAC DUNG LEN KHUYU Q');
xlabel('goc quay (do)');
ylabel('Qch (MN.m)');
axis([0 720 0 10]);
wwritecell('TinhToanQch.xlsx',[a(:),T(:),Z(:),Qch(:)]);
T1=P1.*sind(a+asind(lamda*sind(a)))./cosd(asind(lamda*sind(a)));
T2=P1.*sind(a+asind(lamda*sind(a+540)))./cosd(asind(lamda*sind(a+540)));
T3=P1.*sind(a+asind(lamda*sind(a+180)))./cosd(asind(lamda*sind(a+180)));
T4=P1.*sind(a+asind(lamda*sind(a+360)))./cosd(asind(lamda*sind(a+360)));
T21=T1+T2;
T31=T1+T2+T3;
T41=T1+T2+T3+T4;

figure % Monment M %
M1 =(R/10)*T1;
M2 =(R/10)*T21;
M3 =(R/10)*T31;
M4 =(R/10)*T41;
hold on
plot(a,M1,'linewidth',1.3);
plot(a,M2,'linewidth',1.3);
plot(a,M3,'linewidth',1.3);
plot(a,M4,'linewidth',1.3);
title('DO THI MOMENT M');
xlabel('GOC QUAY TRUC KHUYU (DO)');
ylabel('MOMENT M (MN.m)') ;
legend('M1','M2','M3','M4');
grid on
axis([0 720-0.3 0.6])
% Do thi mai mon chot khuyu %
figure (12)
r=100;
x=linspace(-r,r,1000);
y=(r^2-x.^2).^(1/2);hold on
grid on
plot(x,y,'linewidth',1.3)
plot(x,-y,'linewidth',1.3);
phyy=linspace(0,360,25);
phy=phyy(1,25:-1:1);
Q1=[35.32328652 35.49950014 35.80586815 35.5589065 29.63785289
22.45196198 19.68423019 18.95610077 19.16998327 19.84114454
20.68952244 20.92018563 20.52380004 19.44776329 17.71489744
16.13175953 14.91254575 14.1946465 14.47882611 20.72543174
28.33601659 31.69149998 33.36473641 34.63989385 35.32328652];
Q2=100-Q1;
Q=Q2(1,25:-1:1);
Qx=Q.*sind(phy+180);
Qy=Q.*cosd(phy+180);
plot(Qx,Qy,'linewidth',1.3);
grid on
title('DO THI MAI MON CHOTKHUYU');
xlabel('Qx (MN/m2)');
ylabel('Qy (MN/m2)');
ax = gca;
ax.XAxisLocation = 'origin';
ay = gca;
ay.YAxisLocation = 'origin';
% DUONG DAC TINH NGOAI %
figure (13)
Nemax=130;
MeN=Nemax/omega;
GeN=158;
n=linspace(1000,3000,10000);
Ne=Nemax*(0.5.*n/3000 +1.5.*(n/3000).^2-(n/3000).^3);
Me=MeN*(0.5+1.5*(n/3000)-(n/3000).^2);
ge=GeN*(1.55-1.55.*n/3000+(n/3000).^2);hold on;
plot(n,ge,'g','linewidth',1.3);
plot(n,Ne, 'y','linewidth',1.3);
[Ax,h1,h2,] = plotyy(n,Me,n,Ne);
xlabel('n(vong/phut)');
ylabel(Ax(1),'Me(N.m)')
ylabel(Ax(2),'Ne(MN)')
title('DO THI DUONG DAC TINH NGOAI');grid on;
legend('ge','Me','Ne');

You might also like