Sunteți pe pagina 1din 11

Simulation of Brake Temperature in Response to Applied Pattern of Braking through Matlab

Neville Lawless

School of Mechanical and Manufacturing engineering Dublin City UNIVERSITY Glasnevin, Dublin 9, Ireland

Contents
CONTENTS 1 INTRODUCTION 1.1 2 3 Model requirements: II 1 1 2 3 3 4 4 5 7 9

BACKGROUND TO SOFTWARE EXPLANATION OF STRUCTURE OF PROGRAMME 3.1 3.2 3.3 User inputs and error checks Calculations Graphical outputs from matlab and Simulink

4 5 6

DERIVATION AND STRUCTURE OF SIMULINK MODEL SAMPLE OUTPUTS REFERENCES

Neville Lawless

Page II

Introduction

A braking system, whose performance is predictable and repeatable, to a high level of confidence, is imperative to the successful manufacture of any vehicles. During the design of such vehicles, it is necessary to understand the limits at which the braking systems can operate safely. Depending on the use, the operating temperature, or desirable range of temperature for the brake can vary drastically. In the case of commercial production vehicles it is well known that cooler temperatures provide the greatest braking power, but in the case of a formula 1 car, the ceramic brake discs perform at their peak when in a certain high temperature zone. Along with this, the material properties of the brakes can hold hugely different characteristics at different operating temperatures. Phase transitions, thermal stressing, cracking and warping of the disc can occur which can lead to brake fade or failure. The mechanism by which a brake works is the conversion of kinetic energy to frictional energy and thus heat. This is achieved by the use of a calliper and brake pad which locks against the moving brake disc attached to the vehicles wheel. As the cars momentum is converted into the frictional force to slow the vehicle to a halt the temperature in the brake disc rises and is dissipated to the environment and to the callipers surrounding mountings. The aim of this works is to develop a simulation model that provides the user with an estimate of the temperature of a brake disk during a test. This is done using the numerical programming environment Matlab and toolbox for modelling dynamic systems called Simulink.

1.1

Model requirements:

The model is intended to mimic the testing conditions which are employed when testing real brake discs. These are: Repeated application of the brakes given braking times and the interval between applications. The braking effort required must be calculated from the Initial and final speeds of the vehicle. Assume deceleration is constant throughout the period of application of the brakes. The mass of the vehicle is known. The location of the centre of gravity in the horizontal and vertical directions is known. Both sides of the vehicle share braking effort equally.

Neville Lawless

Page 1

Background to software

To determine an approximate estimation of the average temperature in the brake discs, it is first needed to know the rate at which power is applied to the brakes during a single stop. This step is done using matlab code which requires the input of variables from the user. These being:

Ambient air temperature Initial velocity of the vehicle and Final velocity of the Vehicle. Length of time which brakes are applied. Time between multiple stops. Number of stops Mass of the vehicle. Proportion of Weight distributed to the front of the vehicle. Vehicle wheelbase. Vertical centre of gravity. Brake disc and brake pad dimensions. Brake disc material type.

These user inputs are all taken by means of a General user interface (GUI) prompt. Error checks are performed to ensure that no oversights were made when inputting the data; however, error checking has no limitations, so it is foreseen that the user is competent enough to be using such engineering software.

Having calculated the power requirements, the estimation of temperature in the disk is carried out using Simulink. Simulink has a graphical interface which is used to model dynamic systems using blocks diagrams. The blocks are connected in a way so as to represent a state variable equation, and using specified time steps, can provide outputs from an equation for time ranges rather than instantaneous values. To model the brake disk it was assumed that it was a lumped system having an average temperature at all points in the disc, so in essence it is one solid flat circular plate with thickness t with various material properties. Section 4 will give a detailed guide to the Simulink code.

Neville Lawless

Page 2

Explanation of structure of programme

Below is a walkthrough of the matlab m file which contains all the data required to simulate the heat transfer process in Simulink.

3.1

User inputs and error checks

The following pseudo code is intended to give an indication as to how the error checks for all the user inputs were carried out using the GUI.

-> De fine a de fault answe r for variable s to be e nte re d. -> Ope n GUI box and re que st use r for inputs -> If the input is not a suitable variable Re turn an e rror box Re -e nte r data -> e lse De fine variable as se t input. -> re turn

This formula is used throughout the code to define the required variables. Below is an example of the actual code used to take the input for the ambient air temperature input. Text in red explains the code beneath:

A default answer is defined to give an example input to the user. READ takes a string from the input dialogue and stores it as an array.
defaultans={'293'}; READ=inputdlg({'Please enter ambient air temperature (kelvin):'}, ... '',1,defaultans);

A while loop is used to make a comparison against valid values. In this case, that the value cannot be smaller than zero. The function str2num(READ{1}) converts the string in the first array placeholder to a number rather than char acters.
while(str2num(READ{1})<=0) f2=warndlg('Air temperature must be greater than zero kelvin', ... 'velocity error'); uiwait(f2); READ=inputdlg({'Please enter ambient air temperature (kelvin):' }, ... '',1,defaultans); End

Neville Lawless

Page 3

The isempty() function checks if there is a value inputted into the dialogue box. If there isnt the default answer is used and the code progresses.
if isempty(str2num(READ{1})) READ=defaultans; end

The input is then sdeclared as its final variable for the code. In this case Air_temp. air_temp=str2num(READ{1});

Following this, the code for each variable or set of appropriate variables which need to be compared against each other is very similar. The only noticeable differences are the occasionally if elseif loop to determine some other comparison. The final user input is to determine which material the disc should be modelled from. It was felt that limiting the choice of three different materials should suffice. This prevents any mistakes when determining properties such as specific heat etc., if it is required by the user then they can modify the code as seen fit to suit their required model.

3.2

Calculations

This section takes all the user defined variables and performs the necessary calculations to determine the power over the duration that the brakes are applied. The code is fully annotated so no further explanation is deemed necessary here.

3.3

Graphical outputs from matlab and Simulink

This section runs the Simulink simulation model and plots the graphs of power and temperature versus time. The sim command runs the model:
sim simulink_model allocates a number to the diagram, figure(3); Plots the temperature versus time in red (r) using the signals taken from the simout blocks in Simulink plot(TIME.signals.values,TEMP.signals.values,'r')

Neville Lawless

Page 4

sets a title for the graph


title('Disk mean temperature') sets a the axis labels. ylabel('Temperature (Degrees cent)') sets the limit on how far to plot the graph xlim([0 900]);

Derivation and structure of Simulink model

The Simulink model has been used to model the heat transfer rate using the state variable equation:

()

()

(1)

Where; () Where: = rate of heat transfer (ks-1 ) ( ) = rate of heat addition (watts) ( ) = rate of heat loss (watts) C = specific heat capacity (Joules per kelvin) = Disk temperature (kelvin) = Air temperature (kelvin) R = Thermal resistance of the brake (watts-.k1 ) The state variable equation above (1) gives the output rate of heat transfer. However, we are required to determine the heat in the brake. Simulink provides us the use of an integrator block which can take the input , and integrate to give us the temperature . This is our starting point. (2)

Neville Lawless

Page 5

The output is needed to be multiplied by 1/C. This is done using a gain block and setting the constant value as 1/C. () ( ) term. A summation block having Leading into this is our one positive and one negative inputs is then connected to the grain block. Our power out equation () requires a constant input of air

temperature which is available from the matlab code and which is our required value. A feedback loop is used to take this output value. These are then summed using a summation block and multiplied by a gain block with constant value of 1/R. ( ) term is needed. This is the value which is calculated in the Finally the matlab code. However, the power values calculated are for only one braking period. It is required that the braking period is repeated for a number of cycles. This is addressed by using a repeating sequence block. This block takes values of time and corresponding outputs in a matrix form. E.g.; In this case it takes time=0 and applies the max power, at time =6 the power has dropped to its minimum, then zero power is applied till time = 84, then the sequence repeats. At this point it was found that there was no initial temperature set in the integrator. This causes an error so the block was set to use an external set point. This was brought in from the initial air temperature.

Figure 1: Simulink block diagram of condcution equation state variable

Neville Lawless

Page 6

Sample outputs

Figure 2: Power applied over ten increments during 1 brake application.

Figure 3: Power applied over repeated brake applications.

Neville Lawless

Page 7

Figure 4: Temperature values over the braking cycles

As is expected, figure 2 shows that the application of power over the course of the braking period decreases linearly. This is due to the constant deceleration with which was assumed when producing the code. This is obviously not the case in real life, but is adequate for this simulation. Figure 3 gives a good representation of the repetition of braking cycles and the power input needed for each. As the spikes occur at regular intervals it appears that the model is valid for the input variables used. Finally the temperature of the brake disk over the course of the whole simulation is displayed in figure 4. The simulation assumes that the car has already reached its maximum velocity at time = 0 and so the temperature profile is seen to rise from around 0-50oC, which is around the ambient air temperature. This is as expected. Given real world conditions it would be found that at each brake application the temperature profile would spike but then would fall off exponentially. In the case of this model, only heat conduction was considered and so the temperature gradients fall decrease inversely proportional to the thermal resistance. In actual experimental conditions, the effects of radiation and convection would contribute a lot more due to the rate of cooling mainly due to the velocity increasing the heat transfer coefficient of the car, causing further cooling. Neville Lawless Page 8

Although the effects of cooling are not very apparent at lower temperatures, at higher temperatures this is seen to be a lot more pronounced, which further confirms a successful working model.

References

*1+ Young, P., (2001), Thermal systems, MM401 Lecture Notes, Dublin City University, Dublin. *2+ Close.C.M, Frederick.D.K, Newell.J.C, Modelling and Analysis of Dynamic Systems .3rd Ed.Library of Congress. New York. 2002

[3] http://www.thermoanalytics.com/applications/mom/mom-02-2005/index.html

Neville Lawless

Page 9

S-ar putea să vă placă și