Week-11 Challenge: Braking
- For a defined driving cycle, calculate the energy required for braking.
- Why electric motor can’t develop braking torque at high speed similar to starting? How electric and mechanical brakes are coordinated?
- Make a MATLAB program which plots contour of given motor speed, torque and efficiency values. Attach the code as a .m file attach a screenshot of all the plots.
Solution 1.:- For a defined driving cycle, calculate the energy required for braking.
Driving Cycle: A driving cycle are a set of vehicle speed points versus time, it is used to calculate the fuel consumption of a vehicle, which is later on is compared with different vehicles. Main use of driving cycle are as follows:
• To assess the performance of a vehicle (fuel economy, emission tests)
• To analyze battery state and energy consumption in Electric Vehicles
• To simulate vehicle model prior to the actual development
Braking: Road vehicles involves the conversion of kinetic energy into thermal energy (heat). When stepping on the brakes, the driver commands a stopping force several times as powerful as the force that puts the car in motion and dissipates the associated kinetic energy as heat,
The process of braking follows the law of conservation of energy i.e. Energy cannot be created or destroyed it can only be converted into another form.

E(kinectic) = 1/2*m*v^2...
where.
m = mass of the vehicle in Kg
v- velocity of the vehicle in m/s
Matlab Code for calculating Energy required for Braking
clear all
close all
clc
%Read the Drive Cycle data from given .xls file
DC-xlsread('VelocityandTime.xlsx');
T-DC(:,1); % Time in seconds S-DC(2); %Speed in Kmph
%other data
m = 1000;%mass in Kg
V=S./3.6;%Speed in m/s
% To create an Array to store values for Deceleration & B Z=length(T):
deceleration-zeros(1.Z); acceleration-zeros(1.Z):
BE-zeros(1,Z);
AE-zeros(1.Z);
for i=1:(length(T)-1)
if V(i)>V(i+1)
BE(I)-0.5*(V(i)-V(i+1))^2: % Braking Energy in Joules
speed_decrease(i)=V(i+1)-V(i): deceleration(i)-speed_decrease(i):
speed_decrease(i)-V(i-1)-V(i);
deceleration(i)-speed_decrease(i); %since Time Delta is 1s Acc/dec-V/T.m/2, where T-1
end
if V(i)<V(i+1)
AE(i)=0.5*m*(V(i)-V(i-1))^2; % Accelerating Energy in Joules
speed_increase(i)-V(i+1)-V(i);
acceleration(i)-speed_increase(i);
end
end
% Total Braking Energy in KJ
B_E-(sum(BE)/1000);
% Total Acceleration Energy in KJ
A_E-(sum(AE)/1000);
%Plotting Curves
figure(1)
subplot(2,1,1)
plot(T.S.color b)
xlabel(Time(s)')
ylabel('Speed(Kmph)')
title(Drive Cycle)
plot(1,5,color,D)
xlabel(Time(s))
Jobs
Search
Workshops
ylabel(Speed(Kmph)'")
title('Drive Cycle)
subplot(2,1,2)
plot(T,deceleration.colorir)
hold on
plot(T,acceleration.color.g')
xlabel('Time(s))
ylabel(Acc/Dec(m/s^2)')
title(Acceleration-Deceleration)
figure(2)
plot(T,BE)
hold on
plot(T.AE)
xlabel(Time(s))
ylabel('Energy())
title('Energy consumed during Braking & required for acelerating throughout Drive Cycle)
legend('Braking Energy Accelerating Energy')
fprintf(Total Energy consumed during Braking is %f KJB_E)
disp("")
fprintf(Total Energy consumed during Acceleration is %f KJA_E)
For Driving cycle an Excel sheet is imported.
- An excel sheet name Vexityand Time:xls is been imported into matlab workspace and the Time and Velocity values are inserted into
Arrary
-- All the values like mass, velocity are been defined first in the code, Velocity value is converted into m/s.
-- A for loop for the length of time value is been created.The variable name length has been defined.
-- Acceleration and Deceleration values are been calculated inside a for loop.
-- Total energy is calculated.
-- All the required input has been mentioned for plotting graphs.
We can observe after the simulation is completed the two values Total energy required in braking 0.066975 KJ whereas, Total Energy consumed during Acceleration is 95.342400 KJ.
--We can also observe the driving cycle is same as the excel file which was imported.
-- We can also observe the Energy consumed during braking as well as while accelerating red color is for Acceleration.
Here for both in case of AC or DC there is no torque at maximum speed, gradually the torque decreases at high speed as the speed tends to be maximum speed. This situation does not occur at the beginning of acceleration because most of the torque is used to increase the kinetic energy of the load (and motor). But when the speed is already high and no extra load is applied it is not possible to increase the torque as well as to develop braking torque. The braking operation happens in the motion which is been distributed as per proportion in the Brake Energy and the regenerative braking.
Q2. Why electric motor can't develop braking torque at high speed similar to starting? How electric and mechanical brakes coordinated?
There are two types of braking:
(i)Mechanical Braking: Mechanical brakes all act by generating frictional forces as two surfaces rub against each other. The stopping power or capacity of a brake depends largely on the surface area of frictional surfaces as well as on the actuation force applied. Mechanical brakes are assemblies consisting of mechanical elements for the slowing or stopping of shafts in equipment drives. They use levers or linkages to transmit force from one point to another. Braking slows or stops the movement of the coupled shafts. There are several types of mechanical brakes.
1) Band brakes: These are the simplest brake configuration, have a metal band lined with heat and wear resistant friction material.
2) Drum brakes: These are commonly used on automobile rear wheels, work when shoes press against a spinning surface called a drum.
3) Disc brakes: These are constructed of brake pads, a calliper, and a rotor. During operation, the brake pads are squeezed against the rotor.
Q3. Make a MATLAB program which plots contour of given motor speed, torque and efficiency values. Attach the code as a .m file attach a screenshot of all the plots
MATLAB Code:
clear all
close all
clc
% Speed Array
omega= linspace(0, 300, 100);
% Torque Array
T = linspace(0, 2000, 100);
% Meshgrid
[X,Y] = meshgrid(T, omega);
% Loss Coefficients
cu = 0.17;
fe = 0.006;
win = 0.000015;
% Losses
cu_loss = cu* (Y.^2); % Copper Losses
fe_loss fe* (X.^2); % Iron Losses
cood lock 18:
win_loss = win*(X.^3); % Windage Losses
% Iron coefficient
% Windage coefficient
% Copper coefficient
% Iron coefficient
fe = 0.006; win = 0.000015;
% Windage coefficient
% Losses
cu_loss cu* (Y.^2);
% Copper Losses
fe_loss fe* (X.^2);
% Iron Losses
win_loss win* (X. ^3);
% Windage Losses
cond loss = 18;
% Conduction Losses:
% Output Power
P_out= (X. *Y);
% Input Power
P_in= P_out + (cu_loss) + (fe_loss) + (win_loss) + (cond_loss);
% Efficiency
n = ((P_out)./(P_in));
% Efficiency values for contour
W=linspace(0.75, 0.95, 10);
% Contour Plot
contour (X, Y, n,W)
xlabel('Angular Speed, rad/s')
ylabel('Torque, Nm')
title('Speed, Torque and Efficiency characteristics of Motor')
In this MATLAB script, we create arrays for the speed and the torque of the motor using the 'linspace' command. For the speed, consider a range of values from 0 to 2000 radians per second whereas for the torque, consider a range of values from 0 to 300Nm. These arrays are then used to create 2D grid coordinates using the 'meshgrid' command. These coordinates will help in the creation of the contour plot. In order to find the efficiency of the motor, we need to consider the various losses that occur in the motor's operation. These are:
Copper losses
Iron losses
Windage losses
Conduction losses
These various losses are dependent on the speed and the torque of the motor. They each also have a characteristic constant of proportionality which are all assumed for the following calculations and represented as 'K. In each calculation, the speed and the torque are represented respectively as: w and T.
Copper losses = KCu-w2
Iron losses-KFe-T2
Windage losses-kw-T3
The values of coefficients are taken as general values. Conduction losses are assumed to be 18 Joules.