Generating System Equations from Bond Graphs
Generating System Equations from Bond Graphs
A system or a part of it, changes from one configuration to another because there
have been, or there are causes which act on it, and the system or a part of it absorbs a
part of these causes. The amounts of absorbed causes may be good measures of the
states of the system and the way these absorbed causes are changing with time
contains the description of its dynamics. The system variables in which the equations
are derived are thus the absorbed causes in storage elements with integral causalities.
The spring or capacitor element (with integral causality) receives flow and thus
displacement or total charge is the variable associated with this element as
t
Q
f dt .
Q is the general symbol which is used for displacement as well as charge. An inertia
or inductance with integral causality receives effort as cause. Thus the system
variable associated with this element is a generalized momentum as given by
t
p
e dt .
The system equations may be generated by answering the following two questions:
GENERATION OF SYSTEM EQUATIONS 60
1. What do the elements (all) give to the system (expressed in terms of system
variables and sources)?
2. What does the system give to storage elements with integral causality?
These two questions can be answered by looking into the causal structure of the
bond graph. Power direction, however, decides the signs of various state variables
and internal variables entering the equations.
Let us consider a system shown in Fig. 3.1(a). The bond graph for the system is given
in Fig. 3.1(b).
The storage elements are I2 and C6 and both have integral causality. Thus the system
variables are p2 and Q6.
p2 = ∫ e2 dt and Q6 = ∫ e2 dt
Now f7 is not a system variable. Let us see from where the information f7 comes. The
information f7 comes from the 1-junction, where it is brought by bond 4. Bond 4
receives this information from the 0-junction, where the flow information is brought
by bonds 3 and 5. Thus the whole derivation for e7 may be as follows:
61 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
e7 = R7 f7 = R7 f4 = R7 (– f3 + f5),
p
or e7 R7 ( f 2 V (t )) R7 2 V (t )
m2
No further analysis is needed as the equation has come in terms of system variables
and external sources.
(2) What does the system give to the storage elements with integral causality?
e2 p 2 ,
or p 2 e3 e1 ,
or p 2 e3 F t e4 F t e6 e7 F t ,
or p 2 K 6Q6 R7 p2 / m2 V t F t .
The above equation has been obtained by substituting e6 from 1(b) and e7 from 1(c).
This equation need not be reduced further as it is completely expressed in terms of
system variables and external sources.
f 6 f 4 f 3 f 5 f 2 V (t ) Q 6 ,
or ( p / m ) V (t ).
Q6 2 2
The above equation may be left in this form as it is already expressed in terms of
system variables and external sources.
p 2 ( R7 / m2 ) p 2 K 6 Q6 R7V (t ) F (t ).
(1 / m ) p V (t ).
Q6 2 2
d
This is of the form X A X B U ,
dt
Where {X} is the state vector, {U} is the input vector, [A] is the system matrix and [B]
is the input matrix.
The storage elements are I1, C2, C6 and I7, and all these have integral causality. Thus
the state variables are p1, Q2, Q6 and p7.
p1
(a) I1 gives the flow f1 .
m1
(b) C2 gives the effort e 2 K 1 Q 2 .
p7
(d) I7 gives the flow f7
m2
p
(e) R3 gives the effort e3 Rf3 Rf1 1 .
m2
b b b p
(f) On bond 5, TF gives the flow f5 f 4 f1 1 .
a a a m1
b b b
g) On bond 4, TF gives the effort e 4 e5 e6 K 2 Q6 .
a a a
(2) What does the system give to storage elements with integral causality?
p1 b p 1
R / m1 K1
a
K2 0 1
Q2 Q2 0 F (t ).
1 / m1 0 0 0
0
Q6 b / am1 0 0 1 / m2 Q 6
p
p7
0
7 0 0 K2 0
(3.2)
An electrical circuit and its bond graph are shown in Fig. 3.3.
Fig. 3.3
p2
(a) I2 gives the flow f2 .
L2
1
(b) C4 gives the effort e4 Q4 .
C
p5
(c) I5 gives the flow f5 .
L1
(d) R3 gives the effort e3 R2 f 3 R2 f 2 R2 ( p2 / L2 ).
(2) What does the system give to the storage elements with integral causality?
p
or p 2 ( e6 e1 ) R2 2 ,
L2
p p
E (t ) R2 2 .
p
or p 2 R1 5 2 L
L1 L2 2
(b) To C4, system gives flow
f or Q
1
f4 Q 4 5 4 p5 .
L1
(c) To I5, the system gives effort
1 1
e5 p 5 e8 e4 e7 Q4 (e6 e1 ) Q4 ,
C C
p p 1
or p 5 R1 5 2 E (t ) Q4 ,
L1 L2 C
R1 R2
p2
L L
0 R1 / L1
p2 1
2 2
Q4 0 0 1 / L1 Q4 0 E (t ).
p
R1 / L2 1/ C R1 / L1
p5
1
5
(3.3)
Differential causalities occur in systems having such storage elements of which the
outputs (consequences) are determined by output of some other storage elements or
sources. This, however, does not mean that the parameters of these storage elements
do not appear in the equations. In such cases these parameters get associated with
parameters of other storage elements which have achieved integral causality.
In the following we discuss some systems which have storage elements with
differential causality.
Example 1:
GENERATION OF SYSTEM EQUATIONS 66
The bond graph for the system of Fig. 3.4(a) is drawn in Fig. 3.4(b). The element I6
has differential causality as the flow (and thus momentum) of mass m2 is determined
by flow of mass m1.
Example 2:
Element C4 in Fig. 3.5(b) has differential causality as the effort (thus charge) on the
capacitor is determined by the source.
Example 3:
The inertance in the above bond graph has got differential causality as the flow on
the junction is determined by the source.
Now we shall analyze a system with differential causality. The system is shown in
Fig. 3.7(a). The bond graph for this system is shown in Fig. 3.7(b).
The system variables for this system are p1, Q4 and Q8 only (why?).
p1
f1 , e4 K1Q4 , e8 K 3Q8 ,
m1
d
F2 (t ) K1 f 4
1 d K
f 5 e 5 / K 2 e 7 e 4 / K 2 dt F2 (t ) 1 f 5 ,
K2 K 2 dt K2
1 d
or f5 F2 (t ).
K1 K 2 dt
1 e3 e8 F1 (t ) F2 (t ) F1 (t ) K 3Q8. .
p
1 d
Q 4 f 5 F2 (t ).
K 2 K1 dt
p
Q 8 1 .
m1
The above equations may be written in matrix form as follows.
GENERATION OF SYSTEM EQUATIONS 68
p1 0 0 K 3 p1 1 1
F (t )
Q
4 0 0 0 Q4 0 0 1
0 0 F2 (t )
Q8 1 / m1 0 Q8 0
0 0
1 F (t )
0 1 .
K1 K 2 2
F (t )
0 0
(3.4)
The third term on right hand side does not appear when a system does not have
differential causality. In general the equations of motion for systems with differential
causality may be written as
d
X A X B U E d U . (3.5)
dt dt
In some cases of course all entries of [E] matrix may be zero. Say, in the system
shown in Fig. 3.7(a), if K1 spring were not there all entries in [E] would be zero. In fact
nonzero [E] matrix is generated in a bond graph with differentially causalled
elements when in a junction the strong bond is a differentially causalled element.
Perhaps a better starting point to discuss the idea of activation would be to consider
those elements which are inherently activated, the way they are defined. A source of
effort, SE, keeps imparting information of effort to the system without taking
cognizance of the flow information of the bond. Thus one may say that source of
69 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
effort, SE, is inherently effort activated. Similarly a source of flow, SF, keeps
imparting flow to the system without taking cognizance of effort information and the
bond may be said to be inherently flow activated.
The summary of the above discussion is that activation of a signal, either effort or
flow, on a bond means that only cognizance of that signal is taken in the dynamics of
the system. Two inherently activated situations are,
(a) the bond attached to a source of effort, SE, is effort activated, and
(b) the bond attached to a source of flow, SF, is flow activated.
This notation is too elaborate. A concise notation may be used to represent this idea
as shown in Fig. 3.8(c). A full arrow is added somewhere within the bond signifying
that the bond is an information bond and not a power bond and the letter e written
near it indicates that it is an effort activated bond. In this representation all the
aspects of an augmented bond are retained.
In the same way say, the bond of Fig. 3.8(a) is to be flow activated. One may use an
elaborate scheme to represent it as shown in Fig. 3.9(a). However, a concise
representation would be as shown in Fig.3.9 (b).
GENERATION OF SYSTEM EQUATIONS 70
Fig.3.9(a) Fig.3.9(b)
The full arrow is only a reminder that the bond is an information bond (or an
activated bond). The letter f written near it indicates that the bond is flow activated.
In this book only the concise notations have been used to represent activation or
activated bonds.
There is another context where activated bonds are sometimes used in the literature.
In nonlinear systems representation one may vary the moduli of two port elements
as functions of state variables, flow or effort and/or time as shown in Fig.3.10 (a) and
Fig.3.10 (b).
The full arrows indicate the signals that modulate the two port elements (TF, GY). In
this book we will not use this notation. Modulation of two ports will be represented
simply by writing the moduli as functions of state variables, flows or efforts or time
or all. This will keep our notations concise as shown in Fig. 3.11(a) and Fig.3.11 (b).
Power associated with those activated bonds which impart the information of
modulations of two ports as shown in Fig. 3.10 is zero. These bonds are indeed,
purely information bonds, something like modulating amplifications of amplifiers.
Such activated bonds have not been used in this book to represent modulating
signals.
71 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
The power associated with a general activated bond needs some discussions.
Consider an effort activated bond as shown in Fig.3.12 (a).
The effort causalled end of this bond imparts effort information to the J1-junction and
acts like a source of effort. It may thus impart any amount of power as demanded by
the system to accommodate this information. As the flow signal is not activated, it is
forbidden to play any role in the dynamics of the system. Thus the power imparted
by this bond at the J2-junction is zero. Such an activated bond does not conserve
power. It may create (or absorb) power. The question then is from where does this
power come? In fact an effort activated bond may be considered to be an effort to
effort (say, voltage) amplifier with unit gain as shown in Fig. 3.12(b). All such
amplifiers have a power supply system (may be called a tank). The output power is
derived from that tank. The input impedance being very high (infinite in ideal case)
the input power is small (zero in ideal case).
Similarly a flow activated bond as shown in Fig. 3.12(c), the effort causalled end is
power less whereas the flow causalled (or unstroked) end impart any power
demanded by the system at that port.
Let us consider the spring-mass system shown in Fig 3.13(a). The velocity pickup
observes the velocity of the block of mass m which is amplified by a power amplifier
and drives a force actuator which imparts force proportional to the velocity to the
block. The net amplifier gain is being μ. This device can be modeled in two ways.
One using a modulated source of effort as shown in Fig.3.13 (b). Alternatively using
activated bonds as shown in Fig.3.13(c).
The velocity to force (flow to effort) amplifier is modeled with the help of a gyrator
element with its ports suitably activated.
GENERATION OF SYSTEM EQUATIONS 72
Fig.3.13 (a)
p1 R p
f1 , e3 KQ3, e2 p1 and e5 f 4 1 .
m m m
(2) What does the system give to elements with integral causality?
e1 p 1 e 2 e3 e5 ,
R
or p 1 p1 KQ3 p1.
m m
1
and Q 3 p1 .
m
Above equations may be written in matrix form as follows.
73 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
1
p 1 m R K p1
1 . (3.6)
Q3 0 Q3
m
Let us consider another system as shown in Fig. 3.14(a). A DC motor is driving a
fluctuating resistive load through a shaft of torsional stiffnesses K t1 and K t2 and
with two disks. The speed, picked up by a tachometer is fed back to control the speed
of the motor by adjusting the armature current (increasing voltage alternatively). The
bond graph for the system is drawn as shown in Fig. 3.14(b).
Fig. 3.14(a)
Fig. 3.14(b)
Inertia or compliant elements with activated bonds may be used as observers for
recording displacement, velocity or effort. Suppose an 1-junction denoting common
flow does not have a C element attached with it. The flow or the displacement at the
1-junction is therefore not a system state. However, to generate the information of
flow, one can attach an additional C element to this junction, which will record the
flow and its integral (displacement). The value of the stiffness should be given as
zero, alternatively, the bond connected to the C element may be flow activated.
Similarly to measure effort at a 0-junction, which is not a state, an I element may be
GENERATION OF SYSTEM EQUATIONS 74
attached. Since the value of the inertia for this I element cannot be given an infinite
value, the only alternative is to effort activate the connecting bond. All these
additional elements are termed as observers and the additional states thus created are
called observer states. These states do not appear on the right hand side of any state
equation, and hence do not change the dynamics of the system in anyway. They are
added only for the purpose of observation.
3.7 Fields
So far the external elements like C, I and R were connected to a single bond like –C, –I
and –R. The single port C, I and R elements may also be generalized. To start with, let
us consider the multiport generalization of element C. Whenever the efforts in a set
of bonds are determined by displacements in the bonds of the same set as
n
ei K ij Q j , i 1,...., n
j i
Fx '
K x' x' K y ' y ' X '
,
K y' y'
or
F
y'
K y'x' Y '
(3.7)
Dynamics of the mass point can be represented by the bond graph shown in Fig. 3.16.
Bond 3 and bond 4 represent the velocities in the X’ and Y’ directions respectively.
There are direct and cross stiffnesses in the matrix of the two-port C - field.
If the system also had dampers as shown in Fig. 3.17, the dynamics of the mass point
m could be represented by the bond graph shown in Fig. 3.18. The damping may now
be depicted by the R field as shown in the figure. Fields could have been avoided by
selection of multiple coordinates for springs and dampers and connecting them with
four transformers for each.
The field elements represent the spring and damping with cross-couplings. Such a
2×2 field may be rotated to bring it to a diagonal form (not always however!), which
correspond to the principal directions. Journal bearings are modeled using 2×2 C and
R fields. Transistors are modeled using 3×3 or 2×2 R fields.
GENERATION OF SYSTEM EQUATIONS 76
Fig. 3.17 Fig. 3.18
We consider another system as shown in Fig. 3.19. Here the coordinate x1 is not
inertial as it is the displacement of mass m1 measured from m2. The effective masses in
these coordinates may be obtained from the expression of kinetic energy ( T ) and
deriving generalised momentum ( p ) associated with x1 and x2 coordinates.
1 1
T m1 ( x 1 x 2 ) 2 m 2 x 2 2 .
2 2
T
p x1 m1 ( x1 x 2 ).
x1
T
p x 2 m1 ( x1 x 2 ) m2 x 2 .
x 2
Fig. 3.19
These relations may be written in matrix form as
p x1 m1 m1 x 1
(3.8).
p x 2 m1 m1 m 2
x 2
Consider the bond graph shown in Fig. 3.18. The state variables are p1, p2, Q3 and Q4.
The constitutive relations are
p1 p2
f1 , f2 , e3 K x ' x ' Q3 K x ' y ' Q4 ,
m m
e 4 K y ' x ' Q3 K y ' y ' Q4 ,
1 1
e5 ( R x ' x ' p1 R x ' y ' p 2 ) and e6 ( R y ' x ' p1 R y ' y ' p 2 ).
m m
p 1 (e3 e5 ),
p1 ; Q
Q p2 .
3 4
m m
Or in matrix from
Now it may be observed from the state equations that in the first equation the term f6,
which is nothing but the contribution of R6 element, is appearing. Similarly, in the
second equation terms f2 and f8, the contributions of elements R2 and R8 respectively
are appearing. f6 also appears in eqn. (3.12). Hence, state equations cannot be written
independently. Such a situation is termed as algebraic loop in bond graph
terminology. The above mentioned algebraic loop is of third order. To resolve such a
situation the equations need to be expressed in terms of state variables. For doing
this, following three methods can be used.
Expanded Method
Optimized Method
Matrix Method
Expanded Method:
e2 SE1 K 3 Q3 R6 f 6 . (3.13)
f 6 e2 / R2 e8 / R8 p 7 / m7 . (3.14)
e8 R6 f 6 K 9 Q9 . (3.15)
79 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
f 6 SE1 K 3Q3 R6 f 6 / R2 e8 / R8 p 7 / m7 ,
or 1 R6 / R2 f 6 SE1 K 3Q3 / R2 e8 / R8 p7 / m7 ,
or ID1 f 6 SE1 K 3Q3 / R2 e8 / R8 p 7 / m7 ,
or
f 6 SE1 K 3Q3 / R2 / ID1 e8 / R8 / ID1 p7 / m7 / ID1 , (3.16)
where ID1 1 R6 / R2 .
(3.20)
Note: All the ID (identity) terms created in this method are dimensionless.
GENERATION OF SYSTEM EQUATIONS 80
Optimized Method: The state equations can further be simplified by creating some
more IDs as defined below.
(3.23)
Matrix Method: Equations (3.13) through (3.15) can be written in matrix form as
follows.
1 R6 0 e2 SE1 K 3 Q3
1 / R2 1 1 / R8 f 6 p 7 / m7
1
0 R6 e8 K 9 Q9
e2 ID 1
or R f 6 ID 2 , (3.24)
e ID
8 3
1 R6 0
R / R 1 1 / R8 ,
where =
2
0 R6 1
From equations (3.10) through (3.12) state equations can be obtained as follows.
81 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS
Q3 X 1 / R 2 ,
(3.25)
p 7 X 2 R6 , (3.26)
X 3 / R ,
Q (3.27)
4 8
where X R ID .
1
Only the case of [R] fields is discussed here. Other fields are complex, because of the
need of partial inversion of field matrices to arrive at the state equations. Three types
of causal patterns are possible in a [R] field, as shown in Fig. 3.22.
Fig. 3.22
The first type of causal pattern shows all the bonds causalled with resistive
causality. For such a case, the equations may be written as
When the field is in conductive causality the equations for output variables
may be written as
1
f 1 R11 R12 R13 R14 e1
f R R22 R23 R24 e
2 21 2
.
f 3 R31 R32 R32 R34 e3
f4 R41 R42 R43 R44
e4 (3.29)
GENERATION OF SYSTEM EQUATIONS 82
When the field is mixed causalled, the process of writing the equations is
different. Let [RO] be a unit matrix and [RI] be a matrix containing the
elements of the [R] field, i.e.,
It may be noted that in case of complete resistive causality, [RO] = [I], [RI] = [R] and
hence [R] equiv = [R]. In the other extreme case of complete conductive causality, [RO] =
–[R], [R] = –[I] and hence [R] equiv = [R] –1. These two cases satisfy the equations derived
earlier for first two types of causality patterns.