Project 1
Aim: Use attached file to claculate and plot the following
- Tabulate fuel economy no. for UDDS & HWFET cycle.
- Plot time trace for engine, transmission input & output and wheel speed in one plot
- Plot engine torque, power, fuel rate & consumption using subplot
- Plot accelerator, brake pedal , gear command , vehicle desired and actual speed with distance using subplot.
- Plot engine operating points with engine fuel map.
- Generate for both UDDS & HWFET with describing vehicle behaviour through drive cycle.
CODE & STEPS
- First we Run "Project1_InitFile.m" it is matlab script which run and define variables for simulink model that is used and provide data base for both UDDS and HWFET in this case scenerio for Simulink operator.
- We open Vehicle model file in simulink and build the blocks or subsystem that are lacking like, engine and vehicle dynamics in this case
- We run simulink model and modify the processing matlab file to use output from simulink using workspace command and plot desired results.
INITIAL FILE
%% Vehicle Parameters M = 1500; % Vehicle weight [kg] Cr = 0.015; % Rolling resistance coefficient Rw = 0.35; % Rolling radius [m] Cd = 0.33; % Drag coefficient Af = 2; % Frontal area [m2] rhoa = 1.225; % Air density [kg/m3] Vwind = 0; % Wind velocity [kmph] g = 9.81; % Gravitational acceleration [m/s2] theta = 0; % Slope [deg] myu_road_tire = 1; % Coefficient of friction between tire - road interface %% Powertrain Parameters FDR = 3.73; % Final Drive Ratio / Diff Ratio DiffEff = 0.99; % Differential efficiency (assumed independent of operating conditions) NumGear = 4; % Number of gears in transmission TransGear = [1:NumGear]; % Transmission Gears TransRatio = [3.06, 1.62, 1, 0.7]; % Corresponding Transmission ratios TransEff = 0.90; % Transmission efficiency (assumed independent of operating conditions) TC_SR = [0, .5, .6, .7, .8, .87, .92, .94, .96, .97, 1]; % Torque Converter Speed Ratio (Matlab default) -> TurbSpd/PumpSpd TC_TR = [2.232, 1.5462, 1.4058, 1.2746, 1.1528, 1.0732, 1.0192, 1, 1, 1, 1]; % Torque Converter Torque Ratio (Matlab default) -> TurbTrq/PumpTrq TC_Cf = 1e-4 * [.72558, .66322, .63463, .59042, .51331, .4144, .29287, .22444, .12186, .04386, 0]; % Torque Converter Capacity Factor (Matlab default) -> PumpTrq/PumpSpd^2 [Nm/rpm^2] load Vehicle_Data/Engine_data_1_9L_Saturn_95kW load Vehicle_Data/Trans_Shift_map %% Driver Parameters Kp = 10; % P gain for driver PI model Ki = 1; % I gain for driver PI model Drive_Cycle_Select = 2; % Drive cycle selection % Drive cycle values in m/s if Drive_Cycle_Select == 1 load DriveCycles/UDDS; elseif Drive_Cycle_Select == 2 load DriveCycles/HWFET; elseif Drive_Cycle_Select == 3 load DriveCycles/FTP; elseif Drive_Cycle_Select == 4 load DriveCycles/US06; elseif Drive_Cycle_Select == 5 load DriveCycles/NEDC; elseif Drive_Cycle_Select == 6 load DriveCycles/WLTP; end time_end = cyc_time(end); vel_end = cyc_vel(end);
SIMULINK MODEL

DRIVER MODEL:- It generates desired engine torque, transmission and brake torque. These are then fed to powertrain block
CONTROLLER:- IT controlls gear system of vehicle as in ascending and decending order with respect to time, speed and distance. Data is fed to powertrain.
Powetrain & its components.
ENGINE:- Generates power after consuming fuel and provide energy source in torque.
TRANSMISSION:- Using gears for tansmission of energy.
DIFFERENTIAL 
WHEELS

VEHICLE DYNAMICS

AFTER this we run processing file
FINAL CODE
Processing file
%% Renaming variables
Time = out.tout;
Acc_Pdl = out.Acc_Pdl; % Accelerator pedal [%]
Brk_Pdl = out.Brk_Pdl; % Brake pedal [%]
Gear_Cmd = out.Gear_Cmd; % Transmission gear
Trans_In_Spd = out.Trans_In_Spd*30/pi; % Transmission input speed [rpm]
Trans_Out_Spd = out.Trans_Out_Spd*30/pi;% Transmission output speed [rpm]
Eng_Trq = out.Eng_Trq; % Engine brake torque [Nm]
Eng_Spd = out.Eng_Spd*30/pi; % Engine speed [rpm]
Eng_Fuel_Consump = out.Eng_Fuel_Consumption; % Engine fuel consumption [g]
Veh_Dist = out.Veh_Dist/1000; % Distance traveled by vehicle [km]
Veh_Spd = out.Veh_Spd*18/5; % Vehicle speed [kmph]
Eng_Fuel_rate=out.Eng_Fuel_Rate; % Engine Fuel Rate
Wheel_speed= out.Wheel_speed % Wheel speed[kmph]
Veh_desired_spd= out.vehicle_desired_speed % vehicle desired speed
%% Data Analysis
Eng_Pwr = Eng_Spd.*pi/30.*Eng_Trq/1000; % Engine brake power [kW]
rho_petrol = 0.7197; % Density of petrol [kg/L]
kmpl = Veh_Dist(end)/(Eng_Fuel_Consump(end)/1000/rho_petrol); % Fuel economy [kmpl]
% Plotting vehicle characterstics time trace, transmission input& output
% with wheel speed in one plot
figure(1)
hold on
grid on
plot(Time,Eng_Spd,'linewidth',1,'color','green');
plot(Time,Trans_In_Spd,'linewidth',1,'color','black');
plot(Time,Trans_Out_Spd,'linewidth',1,'color','red');
plot(Time,Wheel_speed,'linewidth',1,'color','blue');
xlabel('Time[s]')
ylabel('Speed[rpm]')
xlim([0,Time(end)]);
ylim([0,6000]);
legend('Transmission input& output, Wheel speed, Engine Speed')
% plotting vehicle torque, engine power,%% Fuel consumption vs fuel rate
figure(2)
subplot(2,2,1)
plot(Time, Eng_Fuel_Consump, 'linewidth', 1, 'Color', 'black');
xlabel('Time[s]')
ylabel('Fuel Consumption')
legend('Engine fuel consumption')
grid on
subplot(2,2,2)
plot(Time, Eng_Fuel_rate, 'linewidth', 1, 'Color', 'red');
xlabel('Time[s]')
ylabel('Fuel_Rate')
legend('Fuel Rate')
grid on
subplot(2,2,3)
plot(Time, Eng_Trq, 'linewidth', 1, 'Color', 'blue');
xlabel('Time[s]')
ylabel('Engine Torque [NM]')
legend('Engine Torque')
grid on
subplot(2,2,4)
plot(Time, Eng_Pwr, 'linewidth', 1, 'Color', 'green');
xlabel('Time[s]')
ylabel('Engine Power [KW]')
legend('Engine Power')
grid on
%plotting fuel economy vs furel consumption
figure(3)
plot(Eng_Fuel_Consump, Eng_Fuel_rate, 'linewidth', 1, 'Color', 'red');
xlabel('Fuel consumption')
ylabel('Fuel rate')
legend(' Fuel economy vs Fuel consumption')
% plotting vehicle accelerator pedal , brake pedal & gear respect to time
figure(4)
subplot(3,1,1)
hold on
grid on
plot(Time,Acc_Pdl, 'linewidth', 1, 'Color', 'red');
plot(Time,Brk_Pdl, 'linewidth', 1, 'Color', 'black');
xlabel('Time[s]')
ylabel('Pedal')
xlim([0, Time(end)]);
legend('Accel','Brake');
subplot(3,1,2)
hold on
grid on
plot(Time,Veh_desired_spd, 'linewidth', 1, 'Color', 'red');
plot(Time,Veh_Spd, 'linewidth', 1, 'Color', 'black');
xlabel('Time[s]')
ylabel('Speed')
xlim([0, Time(end)]);
legend('Desired Speed','Actual Speed');
subplot(3,1,3)
hold on
grid on
plot(Time,Gear_Cmd, 'linewidth', 1, 'Color', 'black');
xlabel('Time[s]')
ylabel('Gear')
xlim([0, Time(end)]);
legend('Gear wrt Time');
%% Plotting engine operating points on engine fuel map
figure('Name','Engine Operating Points');
hold on
grid on
title('Engine Operating Points','fontsize',12);
p1=plot(Eng_map_spd*30/pi,Eng_max_trq,'linewidth',2,'color','r');
p2=line([Eng_map_spd(end)*30/pi Eng_map_spd(end)*30/pi],[0 Eng_max_trq(end)]);
set(p2,'linewidth',1,'linestyle','--','color','k');
p3=line([Eng_map_spd(1)*30/pi Eng_map_spd(1)*30/pi],[0 Eng_max_trq(1)]);
set(p3,'linewidth',1,'linestyle','--','color','k');
[c,h] = contour(Eng_map_spd'*30/pi,Eng_map_trq,Eng_fuel_map');
clabel(c,h);
xlabel('Engine Speed [rpm]');
ylabel('Engine Torque [Nm]');
title('Engine Fuel Consumption Map [g/s]');
p4 = plot(Eng_Spd,Eng_Trq,'.','color','k');
legend([p1 p4],{'Max Curve','Operating Points'});
axis([Eng_map_spd(1)*30/pi Eng_map_spd(end)*30/pi 0 Eng_map_trq(end)]);
UDDS RESULTS OF PLOT
TRANSMISSION INPUT& OUTPUT, WHEEL SPEED & ENGINE SPEED.
ENGINE FUEL CONSUMPTION, FUEL RATE, ENGINE POWER& TORQUE
FUEL ECONOMY VS FUEL CONSUMPTION
PLOTTING GEAR COMMAND VEHICLE DESIRED WITH ACTUAL SPEED
ENGINE FUEL MAP

SUMMARY FOR UDDS
AS plots shows the actual speed is significantly less than desired speed as UDDS is drive cycle for city traffic as it also shows significantly fluctuations in torque and power as it is stop and go case and braking is needed more frequently. Due to this te fuel rate usage is fluctuated as shown due to braking and fuel consumption is higher with gear usage restricted mostlt to 1 & 2 .
HWFET OUTPUT PLOTS.
TRANSMISSION INPUT& OUTPUT, WHEEL SPEED & ENGINE SPEED.

ENGINE FUEL CONSUMPTION, FUEL RATE, ENGINE POWER& TORQUE

FUEL ECONOMY VS FUEL CONSUMPTION

PLOTTING GEAR COMMAND VEHICLE DESIRED WITH ACTUAL SPEED

ENGINE FUEL MAP

SUMMARY FOR HWFET
HWFET is a highway drive cycle as plot shows less fuel consumption than UDDS and gear usage mostly restricted to 4-5 which is for higher speed. Engine torque and power is varingly constant than UDDS as braking is needed is in this case. Here actual speed constantly higher.