ADAS Feature - Anti-Lock Braking System for EVs
AIM:
To design simulink model for Anti-Lock Braking System for electric vehicles using Proportional-Integral-Derivative(PID) controller and Permanent Magnet Direct Current(PMDC) motor as an Actuator while considering hard braking to stop the vehicle with speed 100 Km/Hr.
Introduction:
The aim of this project is to design and control a novel, compact and redundant, electrical brake system, which can be apllied for individual wheel brake action. To design and control the brake system, various mathematical calculations are performed. Its become complicated if whole vehicle is considered as a plant. Hence to make model simpler quarter-vehicle model i.e. only one wheel and its peripheral parts is considered. By using mathematical calculations, a simulink model is developed with using PID as controller and Electric motor as actuator as system is being designed for Electric Vehicles.
Braking System considered in this project is Electro-Mechanical Braking System. In this system, driver presses brake pedal a stroke simulator measures the desired amount of brake action and converts this into a signal that is fed to ECU. Subsequently, the ECU sends, based on the car motion sensors, appropriate brake signals to each individual wheel. This signal triggers the electric PMDC motor, which is in turn creates braking torqure. This braking torque got converted to axial force to actuate the brake pads to squeezed against rotor.
Antolock Braking System is used in automobiles to prevent slip and locking of the wheel after brakes applied. It is an automotive safety system. PID controller is used to cnotrol necessary torque to maintain optimum slip ratio. Slip ratio denotes in terms of vehicle speed and wheel rotation. Primary objecitve of ABS is to prevent wheel lock, reducing stopping distance and enhancing steerability. There are two ways of control strategies being used in ABS controllers; 1] Acceleration-control based 2] Slip-control based. In this project second strategy is used. Theoretically, Slip based control is ideal method, as it avoids noticable vibration while braking. ABS modulates the braking torque independent of pedal force, to bring the wheel back to slip level that is necessary for optimal braking performance. The ABS has a feedback control system that modulates the braking activities in response to wheel decceleration and wheel angular velocity to prevent controlled wheel from locking. The system shuts down when vehicle stops.
Stepwise Procedure:
1. Requirement Analysis:
Requirement Anaylysis is the first step in developing the ADAS feature. In this phase, feature requirements are studied. All functions and constraints the feature need to followed are listed. This lists enables developer to check if development is proceeding in right way and all functions a feature need to follow are being implemented. All these functions are listed in document, known as Requirement Document. As per function list in requiremnt document, simulink model is developed.
2. Modelling:
After studying all the requiremnts of the feature, next step is design a simulink model which will satisfy these requirements. Firstly a skeleton model is designed which consists of general overview of whole feature. It consists of blocks for controller, actuation system and plant. It looks like below image;
To develop actuator system and plant system, few mathematical calculations are performed which are as below;
i] Actuator System - (Permanent Magnet DC motor):
Equivalent model for a DC motor is as below;
Terminology used;
ea(t) = applied voltage
em(t) = Rotor displacement
Ra = Amature resistance
Kt = Torque Constant
ia(t) = Armature Current
Kb = Back-emf constant
La = Amature Inductance
Φ = Magnetic flux in air gap
eb(t) = Back emf
Wm(t) = Rotor Angular Velocity
TL(t) = Load Torque
J = Rotor Inertia
Tm(t) = Motor Torque
Bm = Viscous-Friction Coefficient
For linear analysis, the torque developed by the motor is proportional to tha air-gap flux and the armature current.
since, Φ is constant,
eq. 3 and 4 can be rewritten as;
by using all above equations, a model is designed for a DC motor. It looks as below;
ii] Plant System - ABS_plant_system:
For developing subsystem for ABS module, a quarter wheel model is considered;
Terminology used;
m = mass of vehicle (quarter vehicle) in kg
Rw = radius of wheel in m
g = acceleration due to gravity in m/s
Jw = moment of inertia of wheel in kg-m2
FN = Normal reaction force from road to wheel in N
µ = Coefficient of friction
Tb = Braking Torque in N-m
Ca = Aerodynamic resistance force in N
Af = Vehicle Frontal Area in m2
rho = Air Density in Kg/m2
Vi = Initia velocity of vehicle in m/s
Cr = Rolling resistance
w(omega) = angular velocity of wheel in rad/s
wdot = angular acceleration of wheel in rad/s2
lamda = slip ratio
ax = acceleration or decceleration due to vehicle motion
Vx = vehicle velocity in m/s
following are the equations obtained from euillibrium;
where Fa and Fr can be given by following equations;
coefficient of friction is a function of vehicle velocity and slip ratio. The relation is given by equation as below;
using above equations, a simulink model subsytem is designed as below;
3. SLDD Creation:
Whatever the signals used while designing a model are described in Simulink Data Dictionary. A new SLDD named ABS_dd.sldd is created and linked with the model. Signal Properties of all signal used are described in SLDD. Signal properties includes signal data type, minimum and maximum values, unit, storage class, header file & defination file names and dimensions. Firstly, alias types are described for all type of data types and then signals and calibration values are specified.
4. Signal Resolving for Input and Output:
Once signal being specified in SLDD, next job is to name the important signals in the model. All input and output signals are given their names specified in SLDD. If signals are originating from a block, then these signals should be marked as simulink signal object. As these signal goes from each subsystem and then blocks, it is marked as a propagated signal in its further process.
5. Model Update:
After resolving all input and output signals, the model is updated using update otion in modelling tab. No Errors are found in model design. It means there wouldnt be any error while run of the model and code generation. It is also done using shortcut key ctrl+D.
6. Configuration Parameter Update:
Once it is sure that model don't have any error, model setting can be set appropriataly. Model Setting option is available under Modelling Tab. All Configuration parameter are set and its images are saved in ppt. Same ppt is attached to this project.
7. Model Advisor Check:
Model Advisor Check option is available in Modelling Tab. As scope of project is small, Advisor check is carried out for few of parameters only. Warnings got after running the check are resolved and final report is generated and saved. Same report is also attached with the project. It is not necessary to resolve all the errors, so important errors are resolved which may hamper the code generation process.
8. Code Generation:
Last Part of model design is code generation. Once all necessary changes been done as per model advisor, code generation can be started. ctrl+B is shortcut key to start code genration. After sucessful completion of code genration process, c-code is generated for model created in simulink.
Main Matlab File:
% Anti-Lock Braking System - Main Program
%% Parameters involved in calculation
m = 493; % mass of vehicle per wheel in kg
g = 9.81; % acceleration due to gravity in m/s2
Rw = 0.33; % radius of the wheel in m
Jw = 1.13; % moment of inertia of wheel in kg/m2
%% Friction coefficients calculation
data = xlsread('ABS.xlsx');
slip = data(:,1);
mu = data(:,2);
%% Aerodynamic Decceleration Force & Rolling Force Calculation
Ca = 0.29; % aerodynamic resistance
Af = 2; % vehicle frontal area in m2
rho = 1.2; % Air Density in kg/m2
Vi = 27.8; % initial velocity in m/s (100 Km/Hr)
Cr = 0.008; % rolling resistance
%% PMDC specification
Ra = 1; % armature resistance in ohm
La = 0.005; % armature inductance in Henry
Kb = 0.1; % back-emf constant
Kt = 10; % torque constant
J = 2; % rotor inertia in kg/m2
Bm = 0.5; % viscous-friction coefficient
sim_time = 25; % simulalation time
sim('abs_dbw.slx')
Theory behind using desired slip ratio as 0.2 :
If the wheel velocity is zero (ω=0), the wheel slip will equal to 1 (λ=1). It means that the wheel is locked. However, if v = ωr, the wheel slip will equal to zero (λ=0). It is usually called free rolling. The longitudinal coefficient (μ) of friction between tyre and road is a nonlinear function of the wheel slip (λ). When the vehicle is under perfectly braking maneuver, for a small applied braking torque, the wheel velocity starts to decrease and the wheel slip starts to increase from zero. When the vehicle is under perfectly braking maneuver, for a small applied braking torque, the wheel velocity starts to decrease and the wheel slip starts to increase from zero. But for a hard braking torque, the wheel slip may go straightly to a large number, which causes the μ to pass its peak point and reach somewhere in the decreasing part of the μ-slip curve, where with the rise of slip, frictional force decreases and consequently wheel velocity decreases constantly. If the brake torque is not reduced quickly at this point, the reduction of the road friction force will lead to a rapid increase of the wheel slip and eventually to a wheel lockup. Ideally ABS tries to maintain wheel slip at the peak of μ-slip curve, so that maximum friction force and consequently minimum vehicle stopping distance can be achieved. However maintaining wheel slip at the peak of μ-slip curve is always very difficult, as peak of the μ-slip curve does change with the varying surface and varying vehicle velocity.
Results:
Final Model For Results
Comparing results of Braking Performance with and without ABS Module:
1. Vehicle Velocity v/s Wheel Velocity:
Above figures clearly shows, with no ABS, vehicle wheel velocity follows an extreme up-down pattern and suddenly came to stop revolving even before vehicle actually stops. This condition is known as wheel-lock. With introduction of ABS module, wheel keeps on responding till vehicle completely stops which can be seen in figure at right.
2. Stopping Distance:
Stopping distance is an another parameter to judge braking performance of the vehicle. Without ABS module, as vehicle wheel got locked up during hard braking, stopping distance increases which may lead to an accident. This can be proved easily using stopping distance curve against time. Without ABS system, vehicle come to rest from 100 Km/Hr within 230.4 m, whereas in case if vehicle is installed with ABS system it stops within 59.46 m.
3. Stopping Time:
Time taken by vehicle to come to rest from 100 Km/Hr is third parameter to be tested.
With ABS installed, vehicle comes to rest within 3.88 sec as compared to 8.037 sec without ABS module.
Attachments:
All above results are obtained with Matlab 2020a.
Main Matlab Script: main_file_abs.m
Simulink Model File: abs_dbw.slx
Model Advisor Report: model_advisor_report.pdf
Simulink Data Dictionary: abs_dd.sldd
Below is Google Drive link for all above mentioned files;
https://drive.google.com/drive/folders/1qLC3sDgUuIdDQTFRxSvimtDSVMDIrcRx?usp=sharing
All Automatically Generated Files including C file : abs_dbw_rsim_rtw