Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
www.elsevier.com/locate/mechmt
Abstract
The method proposed in the paper is an alternative methodology for obtaining transfer functions in
symbolic form for systems modelled by bond graphs. The method is based on the transformation of bond
graph into Coates graph and application of Grassmann algebra for evaluating the system determinants.
However, in the method it is not necessary to obtain the Coates graph for given bond graph ± the com-
ponents for evaluating matrices by Grassmann algebra can be read directly from the bond graph. Ó 2001
Elsevier Science Ltd. All rights reserved.
1. Introduction
When linearization is justi®ed then it is useful to derive the transfer function for frequency and
(or) time response analysis of the system. For low order systems, analytically derived transfer
functions are very useful for understanding the in¯uence and sensitivity of system parameters on
system performance [8].
Bond graphs are the best representation of the interactive dynamics of all types of energetic
systems [6]. Various approaches can be used to derive the transfer function in symbolic form for
the system modelled by bond graph.
One group of methods is related to transformation of the bond graph into the ¯ow graph and
to application of Mason [9] or Coates [4] formulas. Direct application of the Mason's loop rule to
the bond graphs was presented in [2]. Specially derived Mason rule for the bond graphs is pro-
posed in [7]. The method of direct conversion of the bond graph into the Coates graph is presented
in [10]. This transformation makes it possible to use the Coates formula for symbolic analysis of
bond graphs.
Deriving the state space matrices and then deriving transfer functions is the second group of
methods. In the paper [8] there is described the method which simplify such procedure. Simul-
taneous use of Grassmann algebra and of causal path rules is the another way for simpli®cation of
0094-114X/01/$ - see front matter Ó 2001 Elsevier Science Ltd. All rights reserved.
PII: S 0 0 9 4 - 1 1 4 X ( 0 1 ) 0 0 0 1 2 - X
690 C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707
Fig. 1. Schematic diagram of the proposed method: (a) basic level; (b) application of Grassmann algebra; (c) ®nal form
of the algorithm.
these calculations [11]. In this case the determinant expression is obtained by using Grassmann
algebra [5].
The method proposed in this paper is an alternative methodology for obtaining the transfer
function in symbolic form from bond graph by application of Grassmann algebra. The proposed
method is based on transformation of the bond graph into the Coates graph [10] and calculation
of the transfer function from Coates graph matrix (Fig. 1(a)). Application of Grassmann formula
can simplify calculation of Coates graph matrix determinants (Fig. 1(b)). The Coates graph or its
matrix can be generated directly from the bond graph but it is not necessarily useful in this
method. The components for evaluating matrices by Grassmann algebra can be read directly from
the bond graph (Fig. 1(c)). The method is useful for hand calculations as well as for computer
coding. The algorithm will be presented in three steps according to Fig. 1.
2.1. The Coates graph matrix related to the given bond graph
When the investigated bond graph does not satisfy conditions 2±5, it is possible to transform it
into the equivalent bond graph that satis®es the above requirements. Some examples of possible
transformations are presented in Fig. 2.
For 0-junction in general form (Fig. 3(a)) of the bond graph satisfying conditions 1±6 we can
write the equation
The expressions in brackets in (2) represent relations existing in the bond graph components (1
and 2-port elements) connected to the considered 0-junction. These expressions will be called
transmittances (t) of the bond graph components. Eq. (2) can be used for the construction of the
Coates graph (Fig. 3(b)) related to the bond graph from Fig. 3(a). For the node of obtained
Coates graph we have the following equation
A 0 B
A B or
A 1 B
0 1 0 TF 1
:1
S 1 S 0 TF 1
:f :f :1
S 0 S 1 TF 0
:e :e :1
1 TF 1 1 TF 0 TF 1
:m :1 : m or m
-1
0 TF 0 0 TF 1 TF 0
-1
:m :1 : m or m
0 TF 1 GY -1
1
or :1 : m or m
0 GY 1
:m 0 GY 0 TF 1
: m or m-1 :1
where
p
X
fia fib fii;x
hia ; . . . ; hib ;...; hii ;...;
fa fb x1
ei
fiw fiz
hiw ; . . . ; hiz :
4
ew ez
For 1-junction in general form presented in Fig. 4(a) we can write similar set of equations:
eq eqc eqd eqq;1 eqq;u eqk eql ;
5
eqc eqd eqq;1 eqq;u eqk eql
eq ec ed fq fq fk fl ;
ec ed fq fq fk fl
6
C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707 693
From equations above and from Fig. 5 we can also see that the bond graph which satis®es
conditions 1±5 can be drawn with all causal strokes away from 0-junctions and with all causal
strokes towards 1-junctions (Fig. 6). Such causality of the bond graph elements determines the
proper form of transmittances t of the bond graph components.
On the other hand gains hab of the Coates graph branches simply depend on transmittances t, as
we can see from Fig. 5. The sign of each gain hab related to 2-port element depends on the di-
rection of energy ¯ow indicated by half arrows.
Writing down Eqs. (3) or (7) for each node of the Coates graph we can obtain the matrix
equation for the Coates graph. For easier explanation let us numerate nodes of the Coates graph
in a special way (such method of numbering is not necessary in practice): from 1 to m: 0-junctions;
from m 1 to n: 1-junctions. Then we can write
T T
f1 fi fj fm em1 eq er en M e1 ei ej em fm1 fq fr fn ;
9
where
M fhab g; a; b 1; 2; . . . ; n
10
is the matrix of the Coates graph. From Fig. 5 it easy to see that the matrix M can be built directly
from the given bond graph and the translation of the bond graph into the Coates graph is not
necessary.
From algebra we know that the transfer functions for the system described by Eq. (9) may be
obtained in the following manner:
ei det Mji
; i; j 1; . . . ; m;
fj det M
fq det Mjq
; j 1; . . . ; m; q m 1; . . . ; n;
fj det M
11
ei det Mri
; i 1; . . . ; m; r m 1; . . . ; n;
er det M
fq det Mrq
; r; q m 1; . . . ; n;
er det M
where the matrix Mxy is obtained from the matrix M by replacing yth column with the column
0; . . . ; 1; . . . ; 0T which has only one non-zero element (equals 1) at xth position.
2.1.1. Example 1
Fig. 7(a) gives the example of simple system and its bond graph (Fig. 7(b)) where: m ± mass, k ±
spring constant, r ± ¯uid resistance, a ± piston area, v ± velocity, p ± pressure.
The bond graph from Fig. 7(b) does not satisfy condition 3 and we cannot obtain all causal
strokes towards junction number 1. Fig. 7(c) presents the bond graph after transformation (0-
junction was added), and Fig. 7(d) presents corresponding Coates graph. The matrix M of the
Coates graph is
2 3
h11 0 h13
M 4 0 h22 h23 5;
h31 h32 0
where
h11 r; h13 1; h31 1; h23 a; h32 a; h22 ms 1=ks:
696 C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707
Fig. 7. Example of the system and its graphs: (a) the system; (b) the bond graph; (c) the bond graph which can be
transformed into the Coates graph; (d) the Coates graph.
For example, the transfer function H f2 =f1 v=p can be found in the form H N =D, where
2 3 2 3
h11 0 h13 h11 1 h13
D det M det 4 0 h22 h23 5; N det M12 det 4 0 0 h23 5;
h12 1:
h31 h32 0 h31 0 0
where hij are matrix elements and Ri
i 1; . . . ; n are the row vectors of M. Next, let us take only
non-zero elements of each row vector Ri . The set of non-zero elements taken from Ri we will
denote as Qi
i 1; . . . ; n. Next, for each Qi let us build the set Si which consists of all second
subscripts (digits) of Qi elements:
n o
Q1 h1;a1 h1;aq h1;am
1 S1 a1 aq am
1
.. ..
. n o .
Qi hi;e1 hi;er hi;em
i Si e1 er em
i
13
.. ..
. n o .
Qn hn;x1 hn;xs hn;xm
n Sn x1 xs xm
n ;
where m
i is the number of elements in ith set Si . Next, let us construct the Cartesian product C
C S1 Si Sn
a1 aq am
1 e1 er em
i x1 xs xm
n
aq er xs q1;...;m
1 :
14
..
.
r1;...;m
i
..
.
s1;...;m
n
The set C consists of n-element vectors. Let us take from C only these vectors that do not contain
any two elements which are the same. Such subset of C we will call Grassmann expression G
related to the matrix M. According to Grassmann [3,5] the determinant D of the matrix M can be
obtain in the following manner
X h i
1 q r s h1;aq hi;er hn;xs ;
P a e x
D
15
aq er xs 2G
where
P aq er xs
is the number of transpositions in
aq er xs
for rearranging the digits into a natural order (changing the positions between two digits we make
one transposition).
To calculate the Grassmann expression G we formally apply Grassmann algebra outer product
[3,5]. In Grassmann algebra, outer product does not contain components with repeated elements.
Hence, the Grassmann expression G can be written in the form
G S1 ^ ^ Si ^ ^ Sn ;
16
where ``^'' is the Grassmann algebra outer product operator.
698 C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707
The great advantage of Grassmann method is that for evaluation of matrix determinant we use
only non-zero elements.
2.2.1. Example 2
For the system presented in Example 1 we will apply the Grassmann method for evaluating the
determinants.
For matrix M from Example 1 we have
Q1 fh11 h13 g; Q2 fh22 h23 g; Q3 fh31 h32 g;
In practice it is not necessary to build the Coates graph as well as the matrix M. We can obtain
the Grassmann expressions for the denominator directly from the bond graph. After numbering
of the bond graph junctions we can simply write the Grassmann expression for the denominator.
Each component of the Grassmann expression for denominator is related to one junction of the
given bond graph and it contains the numbers representing some junctions. The Grassmann
expression component for 1-junction (0-junction) contains the numbers representing junctions
C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707 699
which common values have the in¯uence at the sum of eort variables (¯ow variables) in the
junction related to the considered component. It can be ®nd by inspection of the given bond
graph.
The Grassmann expression GN for numerator can be obtain directly from the expression GD for
denominator. Matrix Mxy (in Eqs. (11)) is obtained from matrix M by replacing yth column by the
column which has only one non-zero element at xth position
hxy 1. However, from the fol-
lowing equation:
17
we can see that when we change all elements of ith row vector into zero except hxy 1 ± the
determinant will be unaltered. So, in order to obtain the expression GN for numerator we must
rearrange previously obtained expression GD for denominator ± the digit related to the output
node
y must be omitted in all components of GD and the component related to the input node
x could be replaced by this digit, assuming that hxy 1. Such procedure results from the form of
the xth row vector and the yth column vector in the matrix in the right part of the Eq. (17).
Then the outline description of the procedure is as follows:
1. Transform the bond graph into the form which can be directly converted into the Coates graph
(in other words, bond graph must satisfy conditions 1±6).
2. Determine transmittances t of bond graph components (according to causality presented in Fig.
6).
3. Numerate the junctions.
4. Determine transmittances of corresponding Coates graph branches (Fig. 5). Interpret each hij
transmittance as double-script notation of branch gain in Coates sense.
5. Obtain the Grassmann expressions for the denominator and for the numerator.
6. Determine the sign by examining even or odd number of transpositions of the Grassmann ex-
pressions components.
7. Decode to the original symbols and ®nd the over all symbolic transfer function.
2.3.1. Example 3
In this example we will consider the electromechanical system presented in Fig. 8(a), where: B ±
damping, J ± inertia, K ± spring constant, R ± resistance, L ± inductance, c ± motor torque
constant (motor back EMF factor), u ± voltage, n ± transmission ratio, w ± angular velocity. Let
us assume that we have to obtain the transfer function w1 =u:
The initial bond graph (Fig. 8(b)) must be transformed because it is not possible to arrange all
causal strokes towards junction in one of 1-junctions. The 0-junction must be added ± Fig. 8(c).
Transmittances of the bond graph components were obtained according to the causality presented
700 C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707
Fig. 8. Example of electromechanical system: (a) the system; (b) initial form of the bond graph; (c) ®nal form of the
bond graph.
in the scheme. Next, junctions of the bond graph from Fig. 8(c) have obtained numbers. Now, we
can write gains hij :
GD f1 2g ^ f1 2 3g ^ f2 3 4g ^ f3 4 5g ^ f4 6g ^ f5 6g
f1 2 3 4 6 51 2 3 5 4 61 2 4 3 6 51 3 2 4 6 51 3 2 5 4 62 1 3 4 6 5
2 1 3 5 4 62 1 4 3 6 5g;
C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707 701
D h11 h22 h33 h44 h56 h65 h11 h22 h33 h45 h54 h66 h11 h22 h34 h43 h56 h65 h11 h23 h32 h44 h56 h65
h11 h23 h32 h45 h54 h66 h12 h21 h33 h44 h56 h65 h12 h21 h33 h45 h54 h66 h12 h21 h34 h43 h56 h65 :
The Grassmann expression GN for the numerator of the transfer function w1 =u f2 =e1 we obtain
from GD
GN f2g ^ f1
2 3g ^ f
2 3 4g ^ f3 4 5g ^ f4 6g ^ f5 6g
f2g ^ f1 3g ^ f3 4g ^ f3 4 5g ^ f4 6g ^ f5 6g
f2 1 3 4 6 52 1 3 5 4 62 1 4 3 6 5g:
: (t1)
R,C,I : (t1) R,C,I
: (t) : (t2) : (t2)
: (t)
0 TF 0 TF 1
1 TF 1 TF 0
: (t3)
GY GY : (t3)
0 1
: (t1t2) : (t1t2)
R,C,I R,C,I
: (t2t)
: (t2t)
0 TF 1 1 0
TF
: (t3t) : (t3t)
GY : (t3t)
GY
0 1
: (t1) : (t1)
R,C,I R,C,I
: (t) : (t2) : (t) : (t2)
0 GY 1 TF 0 1 GY TF 1
0
: (t3) : (t )
GY GY 3
: (t1t2) 1 0
: (t1t2)
R,I,C R,I,C
: (t2t) : (t2t)
0 GY 0 1 1
GY
: (t3t) : (t3t)
TF TF
1 0
We must assume that h12 1 and then, the numerator will have a form (notice that number ``2'' is
underlined because we have to distinguish between h12 1 and h12 c)
N h21 h33 h44 h56 h65 h21 h33 h45 h54 h66 h21 h34 h43 h56 h65 :
The examples of transformation of bond graph into the form which can be directly converted
into the Coates graph (Fig. 5), consist in adding of ``0'' or ``1'' junctions. This procedure enlarges
the bond graph and makes the calculations more tedious. However, it is possible to reduce
junctions by application of well known transformer and gyrator equivalencies [6] ± Fig. 9 (in each
case transmittances t were de®ned according to the causality presented in the scheme). The only
problem is that in this case the common value (e or f) related to the reduced junction disappeared
and cannot be used as the output value.
Usually, in the bond graph modelling R, C, I elements are used as 1-port elements. However, in
many cases physical R; C; I elements are 2-ports elements for example the spring with not-®xed
end in the mechanical systems. In such case 2-port element is build by adding appropriate 3-port
junction and two bonds. Fig 10 presents such 2-ports elements, as well as bond graphs and
corresponding Coates graphs (with impedance and admittance description and with dierent
directions of energy ¯ow). Applying node reduction procedure for the Coates graph from Fig 10
we obtain the Coates graph for R; C; I 2-port ®elds ± Fig. 11.
So, if we do not need to obtain the transfer function with output signal which is the common
variable in reduced junction, we can apply R; C; I 2-port ®elds. In this way we reduce the number
of the components in corresponding Grassmann expression. Fig. 11 may be treated as the sup-
plement for Fig. 5.
ef ef ef ef
1 0 1 1 0 1 0 1 0 0
0 1
t t t t
-1 -1 -1 1 -1 -1 -1 1
1 1 1 -1 1 1 1 -1
t t -t t t t t
-t t t t t
-t t -t t
:u : (c) : (n2J3s)
Se 1 GY 1 C 1 I
: (1/Ks) 3
1 2
3.3. Example 4
Let us apply the simpli®cations discussed above for the bond graph from Fig. 8(b). The
transformed bond graph is presented in Fig. 12. Our goal is to obtain the same transfer function
like in Example 3. For the graph from Fig. 12 we have:
h11 R Ls; h12 c; h21 c; h22 B1 J1 s 1=Ks; h23 1=Ks; h32 1=Ks;
2 2
h33 B2 J2 s n B3 n J3 s 1=Ks;
P 1 2 3 0; P 1 3 2 1; P 2 1 3 1;
N h21 h33 :
The feedback control system consists of dynamic system to be controlled as well as sensors,
controllers and actuators. The controller, which is usually a special purpose analogue or digital
704 C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707
a) x1 b)
x1
ti1 hii =1
hi1
…
xi
hin
xn tin
xn xi
1
-1
x0
x0
computer, is normally described by certain signals and transfer functions. Pure signal ¯ows are
considered or, in other words, zero power information transfer is considered. The block diagrams
are used directly to describe the information processing by controller. For controlled systems,
then, it is advantageous to use composite representation in which the physical system (system to
be controlled) is represented using bond graphs and the controller is represented using block
diagrams or Mason graphs. Such combined representation is called the system graph.
The method presented here can be applied for system graphs because it is very easy to trans-
form the Mason graph into the Coates graph. It is illustrated in Fig. 13. For Mason graph from
Fig. 13 we have equation
xi x0 ti1 x1 tin xn
18
and after transformation
x0 xi ti1 x1 tin xn
19
or
x0 hii xi hi1 x1 hin xn ;
20
where hii 1; hi1 ti1 ; . . . ; hin tin :
Hence, to transform the Mason graph into the Coates graph we must add self-loop at each
node with the transmittance equals 1 at to take other transmittances with opposite sign.
4.1. Example 5
The position control system based on the electromechanical system from Fig. 8 is presented in
Fig. 14(a). The electromechanical system is equipped with: angular position sensor (transfer
function HM1 ); angular velocity sensor (transfer function HM2 ); controllers (transfer functions HC1 ,
HC2 ); power ampli®er (transfer function HA ).
The goal is to obtain transfer function x3 =x0 , where x3 ± angular position, x0 ± reference input.
In the bond graph however we have access to angular velocity (w) only ± not to angular position
x. We may avoid this problem introducing integrating element
1=s. Next, in order to simplify
calculations we will use the reduced bond graph from Fig. 12, and this is the reason that we will
introduce additional element ± with the gain n, changing w2 into w3 . For the next simpli®cation let
us reduce one summing element in the block diagram. The block diagram with above
C. Orlikowski / Mechanism and Machine Theory 36 (2001) 689±707 705
a) J1 B1 J2 B2 J3 B3
R L K
X0
HC1 HA u n
c
w1 x3=w3/s
w2 w3
HM2 HM1
HC2
:R :L : B1 : J1 : J2
: B3n2
I I I
R R : B2
b) R
R
X0 4 :c
1 HC1HA : J3n2
S 1 GY 1 C 1 I
1 :K 3
2
HM2 HC2
HC1
nHM1
s
transformations was then translated into the Mason graph presented in Fig. 14(b). For the system
graph presented in Fig. 14(b) we may obtain the transfer function w2 =x0 (input node: 4; output
node: 3):
h11 R Ls; h12 c; h21 c; h22 B1 J1 s 1=Ks; h23 1=Ks;
2 2
h32 1=Ks; h33 B2 J2 s n B3 n J3 s 1=Ks; h44 1; h14 HC1 HA ;
h42 HC2 HM2 =HC1 ; h43 nHM1 =s;
GD f1 2 4g ^ f1 2 3g ^ f2 3g ^ f2 3 4g
f1 2 3 4 1 3 2 4 2 1 3 4 4 1 2 3 4 1 3 2g;
P 1 2 3 4 0; P 1 3 2 4 1; P 2 1 3 4 1; P 4 1 2 3 3; P 4 1 3 2 2;
D h11 h22 h33 h44 h11 h23 h32 h44 h12 h21 h33 h44 h14 h21 h32 h43 h14 h21 h33 h42 ;
P 4 1 2 3 3;
5. Conclusion
In the modelling of modern engineering systems, the engineer must consider several physical
domains and devices for energy transduction. Modelling of the complex, multi-domain dynamic
systems plays a crucial role in the design of the control system because the control systems typ-
ically involve mixture of electrical, hydraulic, pneumatic, thermal and mechanical subsystems.
Currently the computer based controllers make it possible to improve the performance of every
type of engineering systems. However, it is not possible to design a control system without in-
formation about the dynamic response of the system to be controlled. The bond graph method
has proved to be the powerful and versatile tool that can help to understand multi-domain sys-
tems.
Recent years have seen a growing interest in the application of symbolic computation. A
symbolic computations give the results in an exact form, so there is no possibility to cumulative
error due to rounding o. Additionally, complete analytical solution provides greater insight into
the dependence of solution on parameters. One can get formulas involving the parameters which
one wants to vary. This is helpful in the design of control systems, as well as in the sensitivity
analysis. Symbolic techniques can be used to develop considerable insight into the properties of
systems, and they provide a powerful and useful tool which may be applied to many other aspects
of the design process.
In the paper the method of deriving the transfer function for any physical system modelled by
the bond graph is presented. The method based on Grassmann algebra can simplify calculations
in symbolic form by hand or by computer. So, the proposed method combines two important
domains modelling by bond graphs and symbolic analysis.
The Grassmann algebra was originated many years ago [3,5], then independently rediscovered
[12] and applied for analysis of electrical networks. The algebra of structural numbers and its
applications for topological analysis and electrical networks is a continuation of this method [1].
The structural numbers method was then adopted for analysis of mechanical systems and it is
applied in this area and developed yet (for example [13]). It seems that it would be interesting and
useful to adopt the method of structural numbers for analysis of systems modelled by bond
graphs.
References