OTTO Cycle
Otto Cycle
An Otto cycle is an idealized thermodynamic cycle that describes the functioning of a typical spark ignition piston engine. It is the thermodynamic cycle most commonly found in automobile engines.
Processes
- Process 0–1 a mass of air is drawn into piston/cylinder arrangement at constant pressure.
- Process 1–2 is an adiabatic (isentropic) compression of the charge as the piston moves from bottom dead centre (BDC) to top dead centre (TDC).
- Process 2–3 is a constant-volume heat transfer to the working gas from an external source while the piston is at top dead centre. This process is intended to represent the ignition of the fuel-air mixture and the subsequent rapid burning.
- Process 3–4 is an adiabatic (isentropic) expansion (power stroke).
- Process 4–1 completes the cycle by a constant-volume process in which heat is rejected from the air while the piston is at bottom dead centre.
Engine Parameters and Kinematics
- Bore Diameter (`b`) =0.3m
- Stroke length (`s`) = 0.25m
- Connecting Rod length (`cr`)= 0.2m
- Clearance Volume (`r_c`) = 5
Swept Volume (`v_s`) = `pi/4*b^2*s` `m^3`
Clearance Voume (`v_c`) = `v_s/(r_c-1)` `m^3`
`V=(1+ 0.5*(r_c-1)*(R +1- cos(theta)-(R^2 - sin^2(theta))^(1/2)))*v_c`
State Points
At Point 0:
`P0= 101325` Pa
`v0= v_c`
At Point 1:
`P1 = 101325` Pa
`T1=500` K
`v1= v_c+ v_s`
At Point 2:
`P2= P1*r_c^gamma`............(`gamma = 1.4`)
`T2= P2*v2*(T1)/(P1*v1)`
At Point 3:
`v3=v2`
`P3= P2*(T3)/(T2)`
At Point 4:
`P4= P3*((v3)/(v4))^gamma`
`v4=v1
CODE
- Engine Kinematics
function [V]= engine_kinematics(b,s,cr,r_c,start_crank,end_crank)
a= s/2;
R= cr/a;
v_s= pi/4*b^2*s;
v_c= v_s/(r_c-1);
theta= linspace(start_crank,end_crank,150);
term1 = 0.5*(r_c-1);
term2 = R +1- cosd(theta);
term3 = (R^2 - sind(theta).^2).^0.5;
V=(1+ term1*(term2-term3)).*v_c;
end
- Otto Cycle
clear all
clc
close all
%Inputs
gamma= 1.4;
T3=3000;
%Static Variables
P1= 101325;
P0=P1;
T1= 500;
%Engine Geometric Parameters
b= 0.3;
s= .25;
cr= .2;
r_c= 5;
%Calculating swept volume and clearnace volume
v_s= pi/4*b^2*s;
v_c= v_s/(r_c-1);
v1= v_c+ v_s;
v2= v_c;
v0= v2;
% At Point 2
P2= P1*r_c^gamma;
T2= P2*v2*T1/(P1*v1);
c= P1*v1^gamma;
V_compression= engine_kinematics(b,s,cr,r_c,180,0);
P_compression= c./V_compression.^gamma;
% At point 3
v3=v2;
P3= P2*T3/T2;
%At point 4
v4=v1;
P4= P3*(v3/v4)^gamma;
c= P3*v3^gamma;
V_expansion= engine_kinematics(b,s,cr,r_c,0,180);
P_expansion= c./V_expansion.^gamma;
figure(1)
title('P-V plot')
hold on
plot (v0,P0,'marker','.','markersize',8,'color','k')
plot (v1,P1,'marker','.','markersize',8,'color','k')
plot (v2,P2,'marker','.','markersize',8,'color','k')
plot (v3,P3,'marker','.','markersize',8,'color','k')
plot (v4,P4,'marker','.','markersize',8,'color','k')
plot (V_compression,P_compression,'color','b')
plot (V_expansion,P_expansion,'color','b')
plot ([v0 v1],[ P0 P1],'color', 'g')
plot ([ v2 v3], [P2 P3 ], 'color','r')
plot ([v4 v1], [P4 P1], 'color' , 'r')
text(v0,P0,'0', "HorizontalAlignment","right","VerticalAlignment","middle","FontSize",10)
text(v1,P1,'1', "HorizontalAlignment","left","VerticalAlignment","middle","FontSize",10)
text(v2,P2,'2',"HorizontalAlignment","right","VerticalAlignment","middle","FontSize",10)
text(v3,P3,'3',"HorizontalAlignment","right","VerticalAlignment","middle","FontSize",10)
text(v4,P4,'4',"HorizontalAlignment","left","VerticalAlignment","middle","FontSize",10)
hold off
xlabel('VOLUME')
ylabel('PRESSURE')
efficiency = 1-(1/(r_c^(gamma-1)))
PLOT
OUTPUT