Challenge

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.

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.