Contents
Présentation
%le script calcule le rendement d'un cycle basé sur le moteur à 5 Temps : %les cylindres 1 et 3 (HP_1 et HP_3) réalisent les combustions %la détente est prolongée dans le "gros" cylindre" nommé BP_2. %les calculs sont faits de façon analytique et discrète, ce qui permet de %tracer les différentes courbes. cible=imread('moteur.jpg'); image(cible) axis off

Contact
auteur : remy.cann@ac-rennes.fr lycée Vauban BREST
Constantes générales
clc
clear
P1=10^5;
R=1; %richesse
r=287;
cv=716.7;
PCI=44*10^6;
PCO=14.5;
T1=298;
Géométrie moteur
Vu_1=150; Vu_2=450; epsilon_1=7; epsilon_2=17.7; vm_1=Vu_1/(epsilon_1-1); vm_2=Vu_2/(epsilon_2-1); r_1=2.65; r_2=4.15; l_1=13; l_2=13; A_1=6; A_2=8.3; S_1=pi*A_1^2/4; S_2=pi*A_2^2/4; alfa=0:1:719;
Cinématique
course_1=r_1*(1-cos(pi*alfa/180))+l_1*(1-(1-(r_1/l_1)^2*sin(pi*alfa/180).^2).^0.5); course_2=r_2*(1-cos(pi*(alfa+180)/180))+l_2*(1-(1-(r_2/l_2)^2*sin(pi*(alfa+180)/180).^2).^0.5); volume_1=vm_1+S_1*course_1; volume_2=vm_2+S_2*course_2;
Masses et énergie
m_gaz_1=P1*(vm_1+Vu_1)/r/T1/1000000 m_gaz_2=P1*(vm_2)/r/T1/1000000 m_carb=P1*Vu_1/r/T1*R/PCO/1000000 Q1=m_carb*PCI
m_gaz_1 = 2.0462e-004 m_gaz_2 = 3.1506e-005 m_carb = 1.2096e-005 Q1 = 532.2036
Calcul analytique des éléments des cylindre HP_1 et 3
P2=P1*epsilon_1^1.4 T2_1=T1*epsilon_1^0.4 T3_1=Q1/m_gaz_1/cv+T2_1 P3_1=P2*T3_1/T2_1 P4_1=P3_1*epsilon_1^-1.4 T4_1=T3_1*epsilon_1^-0.4 eta_1=1-epsilon_1^-0.4 W_1=-Q1*eta_1 Q2=-Q1-W_1
P2 = 1.5245e+006 T2_1 = 649.0161 T3_1 = 4.2781e+003 P3_1 = 1.0049e+007 P4_1 = 6.5917e+005 T4_1 = 1.9643e+003 eta_1 = 0.5408 W_1 = -287.8388 Q2 = -244.3647
Calcul analytique des éléments de la détente prolongée
V5=Vu_1+vm_1+vm_2 V6=Vu_2+vm_1+vm_2 epsilon_det=V6/V5 T5=-Q2/(m_gaz_1+m_gaz_2)/cv+T1 P5=P1*T5/T1 P6=P5*epsilon_det^-1.4 T6=T5*epsilon_det^(-0.4) W_det_prol=0.000001*P5*V5/0.4*(epsilon_det^-0.4-1) W_echap=0.000001*P1*(V6-V5)
V5 = 201.9461 V6 = 501.9461 epsilon_det = 2.4855 T5 = 1.7420e+003 P5 = 5.8456e+005 P6 = 1.6340e+005 T6 = 1.2103e+003 W_det_prol = -90.0853 W_echap = 30.0000
Bilan analytique
eta_BdR=1-epsilon_1^-0.4 eta_cycle_analytique=abs((W_1+W_det_prol+W_echap)/Q1)
eta_BdR = 0.5408 eta_cycle_analytique = 0.6537
Calcul discret des courbes cylindre HP_1 et BP_2
%pressions V_det_prol=volume_2(541:720)+volume_1(541:720); pcomp_1=10^-5*P1*((vm_1+Vu_1)./volume_1(181:360)).^1.4; pdet_1=10^-5*P3_1*(vm_1./volume_1(361:540)).^1.4; pdet_prol=10^-5*P5*(V5./V_det_prol).^1.4; %travaux for i =2:180 dWcomp(i)=-0.1*(pcomp_1(i)+pcomp_1(i-1))/2*(volume_1(i+180)-volume_1(i+180-1)); dWdet_1(i)=-0.1*(pdet_1(i)+pdet_1(i-1))/2*(volume_1(i)-volume_1(i-1)); dWdetprol1(i)=-0.1*(pdet_prol(i)+pdet_prol(i-1))/2*(volume_1(i+180)-volume_1(i+180-1)); dWdetprol(i)=-0.1*(pdet_prol(i)+pdet_prol(i-1))/2*(volume_2(i+180)-volume_2(i+180-1)); dWadm(i)=-0.000001*P1*(volume_1(i)-volume_1(i-1)); dWechap(i)=-0.000001*P1*(volume_2(i)-volume_2(i-1)); end Wcomp=cumsum(dWcomp); Wdet_1=cumsum(dWdet_1); Wdetprol=cumsum(dWdetprol); Wdetprol1=cumsum(dWdetprol1); Wadm=cumsum(dWadm); Wechap=cumsum(dWechap); Wcycle_1=cumsum([dWadm dWcomp, dWdet_1, dWdetprol1]); Wcycle_3=cumsum([ dWdet_1 dWdetprol1 dWadm dWcomp ]); Wcycle_2=cumsum([dWechap dWdetprol dWechap dWdetprol ]); %bilan etacycle_discret=-(2*Wcycle_1(end)+Wcycle_2(end))/(2*Q1)
etacycle_discret = 0.6543
Graphes
%pression cyl 1 figure plot(alfa,[ones(1,180) pcomp_1 pdet_1 pdet_prol],'--k','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) %pression cyl 3 hold on plot(alfa,[pdet_1 pdet_prol ones(1,180) pcomp_1 ],'-.r','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) %pression cyl 2 hold on plot(alfa,[ones(1,180) pdet_prol ones(1,180) pdet_prol ],'b','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) grid on legend('cylindre 1','cylindre 3', 'cylindre 2') set(gca,'XTick',0:60:720,'color','y') title 'pression = f(alpha)' %p=f(v) figure plot(volume_1,[ones(1,180) pcomp_1 pdet_1 pdet_prol],'--k','linewidth',1.5) hold on plot(volume_1,[pdet_1 pdet_prol ones(1,180) pcomp_1 ],'-.r','linewidth',1.5) hold on plot(volume_2,[ ones(1,180) pdet_prol ones(1,180) pdet_prol ],'b','linewidth',1.5) legend('cylindre 1','cylindre 3', 'cylindre 2') grid on title 'pression = f(volume)' set(gca,'color','y') %logp-logv figure loglog(volume_1,[ones(1,180) pcomp_1 pdet_1 pdet_prol],'--k','linewidth',1.5) hold on loglog(volume_1,[pdet_1 pdet_prol ones(1,180) pcomp_1 ],'-.r','linewidth',1.5) hold on loglog(volume_2,[ ones(1,180) pdet_prol ones(1,180) pdet_prol ],'b','linewidth',1.5) legend('cylindre 1','cylindre 3', 'cylindre 2') grid on title 'pression = f(alpha) en log-log' set(gca,'color','y') %travail figure %cylindre 1 plot(alfa,Wcycle_1,'--k','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) hold on plot(alfa,Wcycle_3,'-.r','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) hold on plot(alfa,Wcycle_2,'b','linewidth',1.5)%,[pdet_prol(:,1) pdet_prol],'LineWidth',2) grid on legend('cylindre 1','cylindre 3', 'cylindre 2') title 'travail = f(alpha)' set(gca,'XTick',0:60:720,'color','y') figure bar([eta_BdR,eta_cycle_analytique],0.5,'r') grid on title 'rendements comparés (1 = BdR, 2 = 5T)' set(gca,'XTick',0:60:720,'color','y')




