Project 2
Aim:
The task of this project is to quantify the improvement in fuel economy numbers for the hybrid vehicle (kmph), compared to the conventional vehicle, on the urban cycle (UDDS) and highway cycle (HWFET). Also, to analyze and understand the vehicle operating points in terms of engine and motor speed, torque, transmission speeds, pedal positions, gear, distance traveled, battery voltage, current, SoC, etc.
Solution:
MATLAB Code:
Here we are running the code to load the values and variables so that we can use these values in the Simulink model. This script defines the input values that are required for the calculation.
if else loop is used so that when we change the drive cycle selection values between (1-6) the data of that drive cycle will be loaded.
% Initializing Variable Parameters for Conventional vehicle simulation model
Simulink model:
THE SCOPES SHOWN BELOW ARE FOR UDDS DRIVE CYCLES ONLY.
This model consists of 3 main subsystems
- The ‘Driver’ block, is a basic PI controller that generates accelerator and brake pedal outputs to match the desired and actual vehicle speeds.
- The ‘Controller’ block is the brains of the vehicle, representing the electronic control units. Based on the driver inputs, it generates desired engine torque, desired transmission gear, and desired brake torque. These inputs are fed to the ‘Powertrain’.
- The ‘Powertrain’ block represents the drivetrain of the vehicle. It consists of an ‘Engine’ connected to the ‘Automatic Transmission’ through a ‘Torque Converter’. The output of the transmission is connected to the ’Differential’, which powers the ‘Wheels’, which provides the tractive force for vehicle acceleration. The longitudinal dynamics of the vehicle along with the road load is represented in the ‘Vehicle Dynamics’ block which finally gives the velocity, this velocity is given back to the driver block as feedback to check the difference between actual vs desired vehicle speed.

DRIVER BLOCK:

1-D Lookup Table:


The driver block works on a PI controller. PI controller takes the error and integrates it with a constant and gives the output. Here we have a drive cycle (desired) and velocity (actual) which is vehicle speed for calculating an error. For the drive cycle, we are providing time as input and the output of the PI controller is divided into 2 parts and saturated as a positive value for Acceleration and negative values for Brake negative
Besides this, a gain block with a -1 value is used to convert the negative sign of the brake into a positive value.

This graph compares the desired and actual velocities. In this case, it is overlapping which means the desired velocity is equal to the actual velocity.
CONTROLLER BLOCK

controller block takes acceleration and brake as input and provides Engine Torque, Gear, and Brake Torque as Output. This output is given to Bus Controller to combine all signals into 1 single signal and then by using Bus Selector we can separate all signals present in Bus Controller.
1] Engine Control Unit: First Subsystem of Controller Block
The ideal controller is given so that it does not exceed the ideal speed. The output of the Idle speed controller is then added to the throttle that is received from the driver and based on the maximum and minimum torque curve we calculate the engine torque required.

Idle Speed Controller: Subsystem of Engine Control Unit
The idle Speed Controller consists of a PI controller where it takes the error of engine ideal speed values (constant) and engine speed value and then calculates the throttle idle by saturating positive values from 0 to 100.


Here, in the question itself, the Ideal engine speed is given as 650 and we can confirm it in the scope block, the engine's ideal speed is coming out as 650 and is constant throughout the simulation time. Whereas the throttle is varying as we have selected the drive cycle to be UDDS, the stop-and-go movement is much more frequent in the UDDS cycle as compared to the HWFET cycle.
2] Transmission Control Unit: Second Subsystem of Controller Block

The transmission Control Unit works on State-flow Chart where the inputs given are Throttle and Velocity Speed, giving output as Gear.

In the Gear Logic system,
gear state consists of 4 gears which change upon UP and DOWN conditions. These conditions are computed from another state called the selection state, which calls the function which is present in the Simulink function block.




And


While calculating the Threshold value we give Throttle and Gear as input to the lookup table and get the gear position values as an output of this block.
3] Brake Control Unit: Third Subsystem of Controller Block

The product of brake and max friction depended on the tire-to-road interface and the weight of the vehicle is calculated for brake torque.

This is the final output of what engine torque is required, the gear selected, and the brake torque. As we can see, the engine torque is fluctuating a lot which means the vehicle is not moving at a constant speed, we can also confirm it by looking at the gear selection graph here which shows fluctuation, the gear shifts are noticeable moving from 1st gear to the highest which is 4th gear. The brake torque is also fluctuating accordingly.
Electric Motor Control Unit




The Electric motor throttle which is required to accelerate the vehicle matches the one which is provided as we can see in the graph.
Brake Control Unit

Chart


Power Train Block

The power train block consists of the engine, transmission, differential, wheel, and vehicle dynamic which are calculated on the basis of torque requirement, Gear ratio, and Break torque.
Engine Subsystem

This block is designed to calculate the fuel consumption in the engine at a specific fuel rate on the basis of the torque required. The torque required is checked whether the torque is between the max or min torque curve and then pass it to the fuel consumption map. Based on the speed and torque fuel consumption is calculated and provide the fuel consumption in grams/sec. we are using the To Work-space block to send the values to the MATLAB workspace so that we can use those values for plotting. A saturation block is used to filter the values between the given limit which is 5 to 0. The integrator is used to convert fuel rate into fuel consumption.







Motor

This block takes Engine Speed as an input and provides Motor Speed and Motor torque as outputs.




Fuel consumption can be noticed in the 2D lookup table from which we get power output.

CRANKHUB

It takes electric motor torque and engine torque as inputs and provides crank torque as an output.

TRANSMISSION

This block takes Engine torque and Gear selector and provides torque output on the basis of gear selector by the driver the gear ratio is filtered from the look-up table.
Scope output:

torque converter


Integrator limit block:

Saturation limits

The torque converter is used to connect the engine to the transmission. It also converts the output torque into transmission torque which is multiplied by the gear ratio and given to the switch which on the basis of eff(positive) and loss(negative) provides the output transmission torque.
We are using a torque converter as a fluid coupling device because this system consists of an automatic transmission.

the figure shows the output pump and turbine torque analysis.

the figure shows the output pump and turbine speed analysis.



DIFFERENTIAL

Here we are providing transmission output torque to the differential ratio which gets multiplied and gives the positive and negative values (eff and loss) and passes to the switch which according to the condition gives the output as axle torque. We are using the To Work-space block to send the values to the MATLAB workspace so that we can use those values for plotting.
WHEEL

The wheel receives axle torque and subtracts break torque from it and we will get net wheel torque which is divided by the rolling radius to give tractive force. We are assuming here that we have no traction loss for simple calculation.
VEHICLE DYNAMICS

This block is used to calculate the acceleration of the vehicle which is integrated to find velocity followed by distance. Where the input is given as tractive force subtracted by the sum of drag resistance, grading resistance, and rolling resistance.



This shows various forces acting in the graph.


Post-Processing File
%% Postprocessing File
In this code, we will plot the values that are extracted from the Simulink model and compare it with {UDDS CYCLE VS HWFET CYCLE}
- Tabulate the fuel economy numbers (kmpl) for UDDS and HWFET cycles.
fuel economy numbers (kmpl) for the UDDS cycle = 16.8534 (Project-1)
fuel economy numbers (kmpl) for the UDDS cycle =
(Project-2)
fuel economy numbers (kmpl) for HWFET cycle = 21.2041 (Project-1)
fuel economy numbers (kmpl) for HWFET cycle =
(Project-2)
fuel economic number is high in the HWFET cycle since there is low pedaling which causes low energy loss hence less fuel consumption whereas as we see in the UDDS cycle there are more pedaling means more energy loss due to loss which causes more fuel consumption.
- Plot the time trace for the engine, transmission input, transmission output, and wheel speed on one plot.
In the below figure1 we can see there is more fluctuation in speed which means transmission speed is decreasing near zero with time which generates less energy. But if we compare this in figure 2, we can see that there is less fluctuation in speed which means transmission speed is minimal or almost equal to zero for a long period of time which generates more energy. we can see this in figure5 and 6.
Figure 1: Engine, transmission input, transmission output, and wheel speed for UDDS cycle.
Figure 2: Engine, transmission input, transmission output, and wheel speed for HWFET cycle.
3. Plot engine torque, engine power, fuel rate, and fuel consumption using subplots.
In Figures 3 and 4 we can see the engine torque, engine power, and fuel rate is directly proportional to each other, which means as engine power increases, the torque also increases, and the fuel rate is also increased. The main difference between figures 3 and 4 is fluctuation due to instant increase and decrease in power, torque, and fuel rate it is mainly due to the driving condition.
Figure 3: Engine torque, engine power, fuel rate, and fuel consumption for the UDDS cycle.
Figure 4: Engine torque, engine power, fuel rate, and fuel consumption for the HWFET cycle.
- Plot accelerator and brake pedal, gear command, vehicle desired and actual speed, and vehicle distance using subplots.
In figure5 we can see that if the gear is not constant for long period, we will receive less velocity whereas in figure6 the gear is stable for a long period which results in increasing velocity due to which there is less pedaling hence there is minimal power loss. By looking at graph5 and 6 we can identify that vehicle is making stop-and-go motions multiple times in a given distance due to zero velocity UDDS cycle whereas in the HWFET cycle there is no motion of stop and go, the vehicle’s velocity fluctuates because the input velocity is such that the vehicle never stops but it reduces speed after a certain period of time and increases its velocity again. This cycle continues as we see in the HWFET cycle.
Figure 5: Accelerator and brake pedal, gear command, vehicle desired and actual speed, vehicle distance for UDDS cycle.
Figure 6: Accelerator and brake pedal, gear command, vehicle desired and actual speed, vehicle distance for HWFET cycle.
- Plot the engine operating points on the engine fuel map.
From the below figures, we can see that in the UDDS cycle engine operating points are exceeding the max curve whereas in the HWFET cycle the engine operating points are low. In both the figures we can see that there is a much higher RPM available that is not used.
Figure 7: Engine operating points for the UDDS cycle.
Figure 8: Engine operating points for the HWFET cycle.
5. Plot motor speed, torque, and motor input power using subplots.
Here, we can see that as the motor speed increases, the motor torque is high, and as soon as the motor speed decreases the torque value gives a tiny negative value which indicates regenerative braking. As the torque approaches zero and crosses that point to negative values, the battery starts charging and we can observe it in the soc graph.

Figure 9: Motor speed, Torque, and Power for the UDDS cycle.
Figure 10: Motor speed, Torque, and Power for the HWFET cycle.
6. Plot pack voltage, current, and SoC using subplots.
In the UDDS drive cycle, we can see when the voltage is dropping current is increasing and when the current is increasing voltage is dropping because they are proportional to each other. SOC is dropping in the UDDS drive cycle because there are Stop-and-Go motions that lead to multiple on-off states of SOC, resulting in a minor charge state, whereas in the HWFET drive cycle SOC can be charged up easily due to the fact of fewer Stop-and-Go motions.
Figure 11: Voltage, current, and SOC for the UDDS cycle.
Figure 12: Voltage, current, and SOC for the HWFET cycle.
7. Plot the motor operating points on the motor input power map, with the motor max motoring and generating torque curves.
Figure 13: Engine operating points for the UDDS cycle.
Figure 14: Engine operating points for the HWFET cycle.
CONCLUSION:
Hence, we have studied how the Conventional Vehicle Model is designed and simulated by using MATLAB coding and Simulink. Also, I learned how to plot the graphs for different drive cycles.