Vous êtes sur la page 1sur 6

BOND GRAPH MODELING AND SIMULATION OF A FULL CAR MODEL WITH ACTIVE SUSPENSIONN

Hadi Adibi-asl1, Geoff Rideout2 Graduate Student1, Assistant Professor2 Faculty of Engineering, Memorial University, St. Johns, NL, Canada hadibiasl@mun.ca , grideout@engr.mun.ca ABSTRACT Active suspension systems have been the subject of significant study over the last two decades. Currently, many active suspension systems can be found on commercially-available automobiles. This paper shows the benefits of the bond graph modeling method to simulate the ability of an active suspension system to improve ride and handling. The active versus passive suspension system is evaluated based on a linearized full car model with seven degrees of freedom. The results show a significant reduction in bounce and pitch acceleration as well as some improvement in roll acceleration of the body for both deterministic and random road profiles. Simulations are performed using commercial software that allows hybrid bond graph and block diagram models. Model construction, simulation, control design and evaluation can therefore be done easily in one software environment. KEY WORDS Bond graph, full car model, active suspension, optimal control graphs make implementing these algorithms easy because bond graphs are based on power flow between system elements [8, 9]. The proposed model in this paper is an active suspension system based on a full car model with seven degrees of freedom (DOF). The main goal of this modeling exercise is to illustrate the application of the bond graph method to complicated models, and to show the convenience of bond graph software for combining plant and controller models. The optimal control method, which is used to tune the active suspension system, is implemented in the bond graph model using optimal control gains numerically calculated in MATLAB. The linear quadratic regulator (LQR) controller for quarter car bond graph models has been evaluated by Khemiche et al., 2004 [1]. In a 1994 paper by Elbeneiry and Karnopp [2], the stochastic Linear Quadratic Gaussian (LQG) regulator is implemented as an optimal controller for a bond graph quarter car model. In both cases [1, 2] the active suspension system has reduced the sprung mass acceleration and improved the ride quality. Most researchers have evaluated active suspension systems based on quarter- and half car model. Those models are considerably simpler than full car models; however, a full car model with seven degrees of freedom (DOF) is more realistic, and the effects of roll and pitch motion can be included. Margolis and Taehyun [3] considered a full car bond graph model as an efficient model for design and evaluation of active vehicle safety systems. In certain cases, researchers have considered a full car model as four quarter car models or two half car models, then coupled the models, and finally extended the results of the quarter (or half) car model to the full car model [4]. Modeling and simulation of an active suspension system, based on a full car model, has also been carried out with ADAMS [5, 6, and 7] multibody software. However, ADAMS is more difficult to learn and use than the bond graph software used in this paper, and block diagrams for customized control systems are not as easily incorporated into ADAMS models.

1. Introduction
The bond graph method has been attracted considerable attention in modeling and simulation of dynamic systems [11]. Arguably the biggest advantage of this method is its ability to model systems with elements from different energy domains. Also, sub models of varying complexity can be built for different automotive subsystems or components, and then easily combined. Visual inspection of a bond graph can reveal the presence of algebraic loops and dependent states which create implicit or differentialalgebraic equations. Moreover, combining bond graphs with block diagrams, iconic diagrams, and interfacing with MATLAB makes the bond graph method a powerful tool for modeling, simulation and control of dynamic systems. In the proper modeling literature there are many model reduction methods that can simplify a model systematically. Some are based on power flow, and bond

670-046

2. Model development
2.1. Bond graph model The proposed model is a linear full car model with seven degrees-of-freedom (DOF); the schematic model is shown in Fig. 1. The main body (sprung mass) has three DOF (bounce, pitch, and roll), and each suspension system has one DOF (vertical motion of the unsprung mass mu). Also, the model is asymmetric in its response due to the road profile as well as the location of the center of mass.

mass motion in each corner). Therefore, six signals related to the three sprung mass DOF, and eight signals from the unsprung mass DOF come to the controller box (sub-model) as inputs. Then, the controller, which is implemented based on the optimal control method (see Section 2.2), generates four actuator forces as the controllers outputs. Each of the outputs is an applied force parallel to the suspension damper and spring at each corner.
Bounce_Acc d/dt

I
Ms

1 0 TF
d/dt a

Front-Right corner p1

Bounce_Displacement

I
JTH

TF
Tf/2

Front-Left corner

Pitch_Acc

Pitch_Angle

0 1 TF
a Rear-Right corner

p2

TF
Tf/2

p3

Figure 1: Schematic full car model [5]

Roll_Acc d/dt

TF
b

The bond graph model, as shown in Fig. 2, consists of four parts: sprung (sprung mass),Suspension&Tire (unsprung), Controller, and Road Profile. Moreover, both active and passive models are evaluated simultaneously, to compare the results directly. The model was implemented in the 20-sim bond graph software environment [12] Two types of road profiles are used: a single bump, and a random profile. The road profile is delayed for rear wheels by 0.01 seconds, and to show the significant effect of a roll motion, the road irregularities of the right hand side are two times higher than the left hand side.
Controller sprung

Roll_Angle

TF
Tr/2

Rear-Left corner

TF I
JPH b

TF
Tr/2

Figure 3: Extended model of the sprung mass

Active Vehicle

Suspension&Tire

The I elements Ms, JTH and JPH represent the sprung mass, pitch inertia, and roll inertia respectively. The TF elements multiply angular velocities by moment arms to generate relative velocity components defining the suspension velocities. The transformer (TF) moduli are the geometric parameters shown in Fig. 1. Each 1junction in Fig. 3 represents a force or moment summation (Newtons Law), and the 0-junctions represent velocity constraint equations.

States from suspension & tire

Road Profile
s13 s12 MSe
S1 K

s11 s10 s9 s8 s6 p3 s7

U1

MSe U2

sprung

Passive Vehicle

Suspension&Tire

s2 S5 K K

Figure 2: Bond graph sub models

S6

s3

s4
K

The extended bond graph model of the sprung mass, controller, and suspension-tire is shown in Fig. 3, Fig. 4, Fig. 5 and Fig. 6 respectively. The main strategy in simulating the model with bond graphs is to use0 (common effort), and 1 (common flow) junctions as summarized in Appendix B. As mentioned earlier, the whole model is partitioned to three sub- models: sprung mass (which contains the bounce, pitch, and roll motion), controller for active suspension, and suspension and tire (which contains the unsprung

States from body (sprung mass)

U3 MSe U4 MSe
Actuators Forces

p2 p1 p

Figure 4: Extended model of the Controller

output2 output4

output3

output7

p3 p7 Front p6 p2

States to controller

input

Road Profile

p5 Rear p1 input1

p p4 output5 output1 output States to controller output6

Figure 5: Sub models of Suspension and Tire


output3 output1
Suspension system

R p p 1 R p p2 1 1 0 1 0 1 0 C I 1 I C

Tyre_Def_F_R C 0 1 MSf C 1

The LQR method is used to optimize the performance index (J) of the model. As can be seen in the equation sets, the MATLAB command lqr is used to generate the feedback gain. The feedback gain (K) is obtained by solving the Riccati Equation. [10]. The matrix A is related to system parameters, and the matrix B is related to actuator forces. The matrices Q, and R, the weight matrices, are chosen based on the desired improvement in the system parameters. Different weighting factors can be used to emphasize either ride quality, suspension deflection or road holding when designing the active suspension. Minimizing sprung mass acceleration, suspension travel, and tire force variation are competing objectives, and the designer must choose to weight one more heavily at the expense of the others. The matrix X is delegated the system state vector which has, in this model, 14 elements. In other words, each degree of freedom can be shown with a second order system, thus the overall number of states in the model is 14.

Tire Stiffness

MSf K Roll_Effect Input

3. Results
The system parameters are listed in Table 1. The results are shown in power spectral density (PSD). The horizontal axis shows the logarithmic form of frequencies, and the vertical axis is the magnitude of the frequency response. The results have been evaluated for two types of road profile: single bump profile, and random road profile.
Table 1: System parameters [5] Parameters Sprung mass (Ms) Pitch moment of inertia (Ip) Roll moment of inertia (Ir) Unsprung mass (Mu) Suspension damping (b) Suspension stiffness (ks) Tire stiffness (kt) Distance from c.g to front wheel (a) Distance from c.g to rear wheel (b) Front track width (Tf) Rear track width (Tr) Values 1136 {kg} 2400 {kg m2} 400 {kg m2} 60 {kg} 3924 {N/m/s} 36294 {N/m} 182470 {N/m} 1.15 {m} 1.65 {m} 0.505 {m} 0.557 {m}

Sus_Def_F_L output2


Integrate1

Tyre_Def_F_L Output

Figure 6: Extended model of the suspension and tire

Inspection of the bond graph model shows that all inertia (I) and compliance (C) elements are in integral causality (see Appendix B). This indicates that an explicit set of ordinary differential equations can be written for the vehicle model. As described in [11], derivative causality (implicit equations due to dependent states), and algebraic loops can also be spotted with a quick visual inspection of the bond graph. 2.2. Optimal Control Method In this paper, the main purpose of the controller is generating the actuator forces, based on feedback gain, to improve the body acceleration (ride comfort).

X = AX + Bu

J =

(X
0

QX + u T Ru)dt

3.1. Single bump profile The single bump is shown in Fig. 7. The height of the bump is 20 (cm) on the right flank of the road and 40 (cm) on the left flank.

K = lqr(A, B, Q, R) u = KX X = [zs, z s, , , , , z u1 , z u1 , z u2 , z u2 , z u3 , z u3 , z u4 , z u4 ] T Q = diag ([ 10 ,1, 20 ,1,1,1, 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ]) R = diag ([ 1 e 8 ,1 e 8 ,1e 8 ,1 e 8 ])


The optimal control method, for Linear Quadratic Regulator (LQR) design is employed for this purpose.

0.3

Road_Profile (m)

value of around 20 (cm). Also, the left flank of road is two times higher than the right part.
Road_Profile (m)

0.2

0.2

0.1

0.1

0.1 0 1 2
Time {s}

-0.1 3 4 5 -0.2

Figure 7: Single bump as a road profile


FFT 4000

Time {s}

Active Passive

Figure 11: Random road profile


FFT 4000
Active Passive

3000

2000

3000

1000

2000

1000 1
Frequency [Hz]

10

100

0 1
Frequency [Hz]

Figure 8: Bounce acceleration (PSD)


80 70 60 50 40 30 20 10 0 -10 -20
1 Frequency [Hz] 10

10

100

FFT
Active Passive

Figure 12: Bounce acceleration (PSD)


FFT 1500
Active Passive

1000

500

100

Figure 9: Pitch acceleration (PSD)


1 FFT
Active Passive Frequency [Hz] 10

100

Figure 13: Pitch acceleration (PSD)

150

100

15000

FFT

Active Passive

50

10000

0 1
Frequency [Hz] 10

5000 100 0

Figure 10: Roll acceleration (PSD)

3.2. Random Profile The random road profile is shown in Fig. 11. The random road is distributed from zero (cm) height to maximum

Frequency [Hz] 10

100

Figure 14: Roll acceleration

As can be seen in the preceding plots, the sprung mass acceleration, especially the bounce acceleration, is reduced significantly compared to the passive model, with the most significant reduction at the sprung mass resonance frequency around 2 Hz. Moreover, the pitch acceleration of the sprung mass is reduced for low frequencies (especially at the sprung mass resonance frequency of 2 Hz), and the roll acceleration is slightly improved.

[3] D. Margolis, S. Taehyun, Bond graph model incorporating sensors, actuators, and vehicle dynamic for developing controllers for vehicle safety. Journal of the Franklin Institute, 338 (1), 2001, pp. 21-34. [4] A. Kruczek, A. Stribrsky, A full-car model for active suspension some practical aspects. Proceeding of the IEEE International conference on Mechatronics, Istanbul, Turkey, 2004, pp. 41-45. [5] Ch. Kim, P.I. Ro, An accurate full car model using model reducing techniques. Journal of Mechanical Design, 124, 2002, pp. 697-705. [6] A. Farazandeh, R. Kazemi, Fuzzy control for active suspension in ADAMS/Car full vehicle. Proceedings of the 25th Chinese control conference, Harbin, Heilongjiang, China, 2006. [7] Ch. Knobel, G. Janin, A. Woodruff, Development and verification of a series car Modelica / Dymola multibody model to investigate vehicle dynamics systems. The Modelica Association, Modelica Symposium, 2006, 167-173. [8] D.G. Rideout, J.L. Stein, and L.S. Louca, Extension and application of an algorithm for systematic identification of weak coupling and partitions in dynamic system models. Simulation Modelling Practice and Theory, Elsevier b.v, 47 (1), 2009, pp. 271-292. [9] L.S. Louca, An energy-based model reduction methodology for automated modeling, Ph.D. thesis, University of Michigan Ann Arbor, Michigan, U.S. [10] K. Ogata, Modern control engineering, Prentice Hall Inc., 2002. [11] D.C. Karnopp, D. Margolis, R.C. Rosenberg, Modeling and Simulation of Mechatronic Systems, John Wiley & Sons Inc, 2006. [12] 20-sim v.4.0, Controllab Products b.v., Enschede, Netherlands.

4. Conclusion
This paper has presented the bond graph method to simulate an active suspension system based on a full car model. Moreover, the property of combining different sub systems from different domains facilitates building the system. The control matrix elements are chosen to reduce the sprung mass acceleration (bounce, pitch, and roll) and consequently improve ride comfort of passengers as well as road holding (less variation in tire deflection). The use of one of many available software environments for modular bond graph model construction and block diagram controller implementation improves the efficiency with which such a modeling exercise can be executed. Only one software environment is required in addition to Matlab, which solves the Riccati equation numerically. The bond graph method gives a visual means of predicting the presence of explicit system equations and the absence of numerical computation problems. The model in this paper has explicit state equations due to the independence of the mass velocities and spring deflections. However, if complex hydraulic or electric actuator models were built and incorporated into the system, then algebraic loops or state dependencies might arise. The causal relationships at component connection points, and their effect on ease of equation formulation, can be instantly seen in bond graphs. Finally, a bond graph model is an ideal candidate for subsequent application of model reduction methods such as [9].

References
[1] M. Khemliche, I. Dif, S. Latreche, & B. Ould. Bouamama, Modeling and analysis of an active suspension (1/4) of vehicle with bond graph. International symposium on control, communication and signal processing, Hammimet, Tunisia, 2004, pp. 811814. [2] E.M. ElBeheiry, D.C. Karnopp, Optimal control of vehicle random vibration with constrained suspension deflection. Journal of sound and vibration, 189 (5), 1996, 547-564.

Appendix
A. Dynamic equations of full car model with 7 (DOF)

B. Bond graph elements


CONSTITUTIVE LAW (LINEAR) CAUSALITY CONSTRAINTS

Body (sprung mass) equations:


SYMBOL SOURCES

ms z s + bf (z s1 zu1) + bf (z s2 zu2 ) + br (z s3 zu3 ) + br (z s4 zu4 ) + k f (zs1 zu1 ) + k f (zs2 zu2 ) + kr (zs3 zu3 ) + kr (zs4 zu4 ) = u1 + u2 + u3 + u4

Flow Effort

Sf Se

f = f(t) e = e(t)

fixed flow out fixed effort out

I p +bf a(zs1 zu1) +bf a(zs2 zu2 ) brb(zs3 zu3 ) brb(zs4 zu4 ) + k f a(zs1 zu1) + k f a(zs2 zu2 ) krb(zs3 zu3 ) krb(zs4 zu4 ) = au + au2 bu bu4 1 3

ENERGETIC ELEMENTS

Inertia

I I

f =

1 e dt I df dt

preferred integral

I p +bf t f (zs1zu1) bf t f (zs2 zu2) +brtr (zs3 zu3) brtr (zs4 zu4) +kf t f (zs1 zu1) kf t f (zs2 zu2) +krtr (zs3 zu3) krtr (zs4 zu4) =t f u1 t f u2 +tru3 tru4

e= I e=

Capacitor

C C

1 f dt C de dt

preferred integral

Suspension(s) equations:

f =C e = Rf f =

Resistor

R R

none

m uf z u 1 b f ( z s 1 z u 1 ) k f ( z s 1 z u 1 ) + k tf z u 1 = u 1 + k tf z r 1

1 e R

m uf z u 2 b f ( z s 2 z u 2 ) k f ( z s 2 z u 2 ) + k tf z u 2 = u 2 + k tf z r 2

2-PORT ELEMENTS

Transformer
m ur z u 3 b r ( z s 3 z u 3 ) k r ( z s 3 z u 3 ) + k tr z u 3 = u 3 + k tr z r 3

TF n MTF n()

e2 = n e1 f1 = n f2 e2 = n() e1 f1 = n() f2

effort in-effort out or flow inflow out

m ur z u 4 b r ( z s 4 z u 4 ) k r ( z s 4 z u 4 ) + k tr z u 4 = u 4 + k tr z r 4

Modulated Transformer

z s1 = t f + a + z s zs2 = t f + a + zs z s 3 = t r b + z s z s 4 = t r b + z s

Gyrator

GY n MGY n()

e2 = n f1 e1 = n f2 e2 = n() f1 e1 = n() f2

flow in-effort flow in-flow out or effort inout or effort flow out out in-effort

Modulated Gyrator

CONSTRAINT NODES

1-junction

1
3

e 2 = e1 e 3 f1 = f2 f3 = f2 f2 = f1 f3 e 1 = e2 e 3 = e2

one flow input

0-junction

0
3

one effort input

Vous aimerez peut-être aussi