Post on 27-Nov-2014
Bond graph modeling for rigid body dynamics
Anand Vaz Professor, Mechanical Engineering
Dr. B. R. Ambedkar National Institute of Technology G. T. Road Bye Pass, Jalandhar 144011, India
anandvaz@ieee.org The basic skeletal system of the human hand or its prosthesis can be considered to be made up of rigid skeletal links. Modeling its dynamics requires an understanding of rigid body mechanics. Since we are applying the method of bond graphs to understand the dynamics of the system, it would be appropriate to start from first principles. We shall move from the derivation of system equations to the development of their bond graph representations, a reverse process. Each rigid link can then be treated as a bond graph module and assembled into a single bond graph to suit the configuration of the mechanical system. It will then be easier to derive system equations for the whole mechanism in the usual algorithmic manner which is characteristic of bond graphs. Dynamics of rigid multi body systems is a well developed area and we would not like to repeat it again. However, while pursuing our objective of developing the basic bond graph module structures some repetition is inevitable and we apologize for it. It is preferable to have a smooth and logical development even if it is at the cost of some repetition. The Newton-Euler formulation for rigid dynamics is found in several references, for e.g., [1]. Bond graph representations have been described in [2] - [6].
0X
0Y
BX
BY
0
B
P
Pr0
Br0
PB r
rigid body
Inertial frame 0
Frame B fixed on rigid body
Consider the rigid body shown in Fig. 1. Frame 0 is the inertial fixed frame with its origin at 0.
Fig. 1. Fixing frames Frame B is fixed on the rigid body and has its origin located at point B. P is any general point on the rigid body. We shall represent the position vector of a point U, seen from the point V and expressed in the frame W using the notation
WV U
W WV U V U
WV U
xr y
z
⎧ ⎫⎪ ⎪
= ⎨ ⎬⎪ ⎪⎩ ⎭
(1)
The orientation of frame B with respect to fame 0 is given by the orthonormal rotation matrix of dimension 3×3. Hence,
0B R
0 0 0 0T TB B B BR R R R I= = (2)
The position of point P is given as
0 0 00 0
0 00
P B B PB
B B B P
r r r
r R r
= +
= + (3)
In order to obtain its velocity, we differentiate its position with respect to time t. We shall use the
notation d x xdt
= for differentiation with respect to time t.
Differentiating (3) with respect to time t, the velocity of point P on the rigid body is 0 0 0 0
0 0B B
P B B B P B B Pr r R r R r= + + (4) The second term on the RHS of (4) can be written as
0 0 0 0
0 0 0 0 0 0 00 0
0 00
where, and,
B T BB B P B B B B P
T BB B P B B B B B P B P
B P B
R r R R R r
r R R R r
r
ω ω
ω
=
⎡ ⎤ ⎡ ⎤= × = × =⎣ ⎦ ⎣ ⎦⎡ ⎤= − ×⎣ ⎦
r (5)
00 Bω⎡ ×⎣ ⎤⎦ is a skew symmetric matrix. This can be verified by differentiating (2) with respect to t.
Since P is fixed on the rigid body, 0BB Pr = . Hence (4) can now be written as,
0 0 0 00 0 0P B B Pr r r Bω⎡ ⎤= − ×⎣ ⎦ (6)
We shall differentiate between scalar and vector bond as shown in Fig. 2.
Scalar bond Vector bond
ef
Power e f= ⋅
e
f
Power T Te f f e= =
Fig. 2. Convention for scalar and vector bonds
The kinematic relationship of (6) can be expressed in the form of a Bond graph as shown in Fig. 3.
Br00
1
0PB r01
Pr00
1
MTFBω
00
1
[ ]×− PB r0
Fig. 3. Bond graph for the velocity relations of (6)
From Newton’s II Law the equation for translation of the particle at P with mass m is given by
{ }0 00 P P
d m r Fdt
= (7)
The forces on all particles forming the rigid body can be summed up to obtain the equations of motion for translation of the rigid body.
{ }0 00 P P
d m r Fdt
=∑ ∑ (8)
Instead of using the summation symbol, the limiting sum can be written as an Integral
{ }00
Over the Over theentire entire rigid body rigid body
0P P
d r dm Fdt
=∫∫∫ ∫∫∫ (9)
We shall however continue with the summation symbol, as we understand the mechanism of conversion to
the integral. The position of the center of mass C (CM) is defined by
{ }0 0 00 0 0
00P C Cm r m r m r M r⎛ ⎞
= = =⎜ ⎟⎝ ⎠
∑ ∑ ∑ C (10)
This implies that
{ } { }0 0 0
0 0
00
P C C
C C
m r m r r
m r m r
= +
= +
∑ ∑
∑ ∑ 0
P
P
(11)
Hence, 0 0C Pm r =∑ (12)
m M⎛ ⎞=⎜ ⎟
⎝ ⎠∑ is the mass of the entire rigid body. Thus the effect of translation of all points on the rigid
body can be assigned to its center of mass C. Differentiating (10) with respect to time t, the momentum related to translation is obtained as
{ }0 0 00 0 0
00P C Cm r m r m r M r⎛ ⎞
= = =⎜ ⎟⎝ ⎠
∑ ∑ ∑ C (13)
From (8) and (13), the translation of the body can be expressed in terms of the motion of its CM as
{ }00 C
d 0PM r
dt= F∑ (14)
00
1Cr
[ ]I: M
01eS : F
0eS : nF
The Bond graph representation for (14) is shown in Fig. 4.
Fig. 4. Sub Bond graph for the Newton's law applied to the rigid body
We proceed to derive the equations for torque about point B, due to forces on the body. Taking moments about point B,
{ }0 0 00
0B P P B P
dr m r rdt
× = ×∑ ∑ PF (15)
The LHS can be written as,
{ } { }
{ } { }
0 0 0 0 00 0
0 0 00
B P P B P B B P
0B P B B P B P
d dr m r r m r m rdt dt
d dr m r r m rdt dt
× = × +
= × + ×
∑ ∑
∑ ∑ (16)
The first term on the RHS of (16) becomes a zero vector in the following cases [1], (1) If point B is fixed with respect to the inertial frame. (2) If point B is the CM. (3) If point B accelerates towards or away from the CM. For rigid links, it is convenient to consider the case (2), when point B coincides with the CM C, Consider the second term on the RHS of (16).
{ } { }0 0 0 0 0 0B P B P B P B P B P B P
d dr m r r m r r m rdt dt
× = × + ×∑ ∑ ∑ (17)
Since the second term on the RHS of (17) vanishes,
{ } {0 0 0 0 }B P B P B P B Pd r m r r m rdt dt
× = ×∑ ∑ d (18)
From (15) and (18),
{ }0 0 0 0B P B P B P
d r m r r Fdt
× = ×∑ ∑ P (19)
The LHS of (19) can be expressed as
{ } { }0 0 0 0 0
0
0 0 00
B P B P B P B P B
B P B P B
d dr m r m r rdt dt
d m r rdt
ω
ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤× = − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎧ ⎫⎡ ⎤⎡ ⎤ ⎡ ⎤= − × ×⎨ ⎬⎢ ⎥⎣ ⎦ ⎣ ⎦⎣ ⎦⎩ ⎭
∑ ∑
∑ (20)
The term 0 0B P B Pm r r⎡ ⎤⎡ ⎤ ⎡ ⎤− × ×⎢ ⎣ ⎦ ⎣ ⎦⎣ ⎦
∑ ⎥ is the inertia tensor of the body about the point B, expressed in the
inertial frame 0, and is represented by the 3×3 matrix 0B I⎡ ⎤⎣ ⎦ .
If
0 0
0 , then 0
0B P B P
x z yr y r z x
z y
−⎧ ⎫ ⎡ ⎤⎪ ⎪
x
⎢ ⎥⎡ ⎤= × =⎨ ⎬ ⎣ ⎦ −⎢ ⎥⎪ ⎪ ⎢ ⎥−⎩ ⎭ ⎣ ⎦
(21)
and one can work out the terms of the inertia tensor by multiplying the matrices.
( )( )
( )
2 2
0 0 2 2 0
2 2
B P B P B
m y z mxy mxz
m r r mxy m x z m yz I
mxz m yz m x y
⎡ ⎤+ − −⎢ ⎥⎢ ⎥⎡ ⎤ ⎡ ⎤ ⎡− × × = − + − =⎣ ⎦ ⎣ ⎦ ⎣⎢ ⎥⎢ ⎥− − +⎣ ⎦
∑ ∑ ∑∑ ∑ ∑ ∑
∑ ∑ ∑
⎤⎦ (22)
Now, (20) can be written as
{ } { }
{ }
0 0 0 0
0 00
B P B P B P B P
B B
d dr m r r m rdt dt
d Idt
ω
⎡ ⎤ ⎡ ⎤× = ×⎣ ⎦ ⎣ ⎦
⎡ ⎤= ⎣ ⎦
∑ ∑ (23)
The term { }0 00B BI ω⎡ ⎤⎣ ⎦ in (20) is called the moment of momentum or angular momentum about B expressed
in frame 0. It is a vector. From (19) and (23), the equation for rotation of the rigid body, due to forces acting on it, can be written as
{ }0 0 0 0 00B B B P P B
d I r Fdt
ω τ⎡ ⎤ = × =⎣ ⎦ ∑ (24)
It clearly represents the cause-effect relationship between torque acting on the rigid body and its angular momentum. The total torque about the point B acting on the rigid body causes a change in the angular momentum of the rigid body about point B. The effect is the rotation of the body with angular velocity 00 Bω , and is decided by the properties of the rigid body. This can be represented by a sub bond graph as shown in Fig. 5.
00
1Bω
MTF
MTF
0 :IC I⎡ ⎤⎣ ⎦
0 T
C nr⎡ ⎤×⎣ ⎦
01
T
C r⎡ ⎤×⎣ ⎦
01 e:Sτ
01eS : F
0eS : nF
Fig. 5. Sub Bond graph for (24)
The relations developed in (14), for translation, and (24), for rotation, are shown in a single bond graph in Fig. 6. In fact both the equations can be derived from the bond graph of Fig. 6.
00
1Bω 0
01
Cr
MTF
MTF 00nF
01
0F
0 :IC I⎡ ⎤⎣ ⎦ [ ]I: M
0 T
C nr⎡ ⎤×⎣ ⎦
01
T
C r⎡ ⎤×⎣ ⎦
01 e:Sτ
01eS : F
0eS : nF
Fig. 6. Bond graph for (14) and (24). It represents dynamics of the rigid body, both translation and rotation.
It may be noted that the Bond graph is integrally causalled. Since the terms of the inertia tensor are expressed in the frame 0 they change due to rotation of frame B. We know that the components of the inertia tensor are constant for the rigid body if expressed in the moving frame B itself.
0B I⎡ ⎤⎣ ⎦
We shall need a small result before we proceed further. We know that a vector 0K which is expressed in the frame 0 can be expressed in another frame B using the rotation operator 0 . B
TR
0 0 0 0 , and B B TBK R K K R K= = B (25)
How can we express the cross product matrix 0K⎡ ⎤×⎣ ⎦ which is expressed in the frame 0 to obtain BK⎡ ⎤×⎣ ⎦ expressed in frame B? Let 0 0 0 0 0 0 0 and , B B
B BH K L H R H L R⎡ ⎤= × = =⎣ ⎦ L (26) Expressing in frame B, 0 0 0B
B R H K R L⎡ ⎤= ×⎣ ⎦B
B (27) Premultiplying (27) by , 0 T
B R
0 0 0
0 0 0
B T BB B
TB B
B B
B
H R K R L
R K R L
K L
⎡ ⎤= ×⎣ ⎦⎡ ⎤⎡ ⎤= ×⎣ ⎦⎣ ⎦⎡ ⎤= ×⎣ ⎦
(28)
Hence 0 0 0 0 0 0 and B T
B B BB T
BK R K R K R K R⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤× = × × = ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (29) We can now apply the result of (29) to (22)
0 0 0
0 0 0 0
0 0
0 0
0 0
B B P B P
B T BB B P B B B P B
B B TB B P B P B
B B TB B P B P B
B TB B B
I m r r
m R r R R r R
m R r r R
R m r r R
R I R
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤= − × ×⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤= − × ×⎣ ⎦ ⎣ ⎦
⎡ ⎤⎡ ⎤ ⎡ ⎤= − × ×⎢ ⎥⎣ ⎦ ⎣ ⎦⎣ ⎦⎡ ⎤= ⎣ ⎦
T
∑
∑
∑
∑
(30)
We can apply the result in (30) to (24) as
{ } { }{ }{ }
0 0 0 0 00 0
00
0 0
B TB B B B B
B BB B B
B P P
d dI R I Rdt dt
d R Idt
r F
Bω ω
ω
⎡ ⎤ ⎡ ⎤=⎣ ⎦ ⎣ ⎦
⎡ ⎤= ⎣ ⎦
⎡ ⎤= ×⎣ ⎦∑
(31)
{ } { } { }{ } { }
{ } { }
0 0 0 00 0 0
0 0 0 00
0 0 00 0
B B B BB B B B B B B B
T B B B B0
0
B B B B B B B B
B B B BB B B B B B B
d dI R I R Idt dt
dR R R I R Idt
dR I R Idt
ω ω ω
ω ω
ω ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= +⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= +⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ω
(32)
This shows that the rate of change of angular momentum of the rigid body about B, observed and expressed in the frame 0, can be written in terms of the rate of change of angular momentum observed and expressed in frame B. is used to express the terms on the RHS in the frame 0. 0
B RTo express in the frame B, pre multiplying by , (32) becomes, 0 T
B R
{ } { } { }
{ } { }
0 0 0 0 0 0 0 00 0 0
0 0 0
T T B B T0
B BB B B B B B B B B B B B
B B B B BB B B B B
d dR I R R I R R Idt dt
dI Idt
ω ω ω
ω ω ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × +⎣ ⎦ ⎣ ⎦ ⎣ ⎦
ω (33)
It can also be seen from (31) that moment of the forces about B, can be expressed in different frames as
0 0 0
0 0
0 0
0
0
B B P P
B T 0
0
B B P B P
B TB B P B P
B BB B P P
BB B
r F
R r R F
R r R F
R r F
R
τ
τ
⎡ ⎤= ×⎣ ⎦
⎡ ⎤= ×⎣ ⎦
⎡ ⎤= ×⎣ ⎦
⎧ ⎫⎡ ⎤= ×⎨ ⎬⎣ ⎦⎩ ⎭=
∑
∑
∑
∑
(34)
This is shown by the sub Bond graph of Fig. 7.
MTF
0 TB R
0Bτ
BBτ
Fig. 7. Sub Bond graph for (34)
From (33) and (34),
{ } { }0 0 0B B B B B BB B B B B B
d I Idt
ω ω ω⎡ ⎤ ⎡ ⎤ ⎡ ⎤+ × =⎣ ⎦ ⎣ ⎦ ⎣ ⎦ τ (35)
This is the Euler’s equation of rotation for the rigid body. It can be rearranged as
{ } { }
{ }0 0 0
0 0
B B B B B BB B B B B B
B B B BB B B B
d I Idt
I
ω ω ω τ
ω ω τ
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= − × +⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤⎡ ⎤= × +⎣ ⎦⎣ ⎦
(36)
The Bond graph representation for (36) is shown in Fig. 8. It is also called as Euler junction structure.
BBτ
01B
Bω:IB
B I⎡ ⎤⎣ ⎦
MGY
{ }0B BB BI ω⎡ ⎤⎡ ⎤ ×⎣ ⎦⎣ ⎦
e f
Fig. 8. Sub Bond graph for (36)
Example: A Two-link revolute manipulator We shall apply these developments to an example of the two-link planar manipulator shown in Fig. 9. This is however a general approach, not specific to a 2 DOF manipulator only.
1
0OF
3
0OF
0X
0Y
1Y
1X2Y
2X
1C
2C
link 1
link 2
01τ
02τ
1O
2O
3O
Fig. 9. A Two-link revolute manipulator
The free body diagram (FBD) of the link 1 is shown in Fig. 10.
1
0OF
0X
0Y
1Y
1X
1C link 1
2
0OF
01τ
02τ
1O
2O
Fig. 10. Free body diagram for link 1
Applying the basic equations of motion from (14) and (24) to link 1,
Translation: { }1 1
0 0 01 0 C O
d2OM r F F
dt= + (37)
and,
Rotation: { }1 1 1 1 1 2 2
0 0 0 0 0 0 0 00 1 1 2C C O O C O O
d I r F r Fdt
ω τ τ⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × + × + +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (38)
Based on (37) and (38), the sub bond graph for link 1 is shown in Fig. 11. Note the differential causality on the element [ ]1I: M . It occurs due to the imposition of kinematic constraints which result in the dependence of the momentum of mass 1M on the angular momentum of link 1 about its CM.
00 1
1ω
00 1
1Cr
MTF
MTF 02
0OF
01
0OF
1
01 :IC I⎡ ⎤⎣ ⎦ [ ]1I: M
1 2
0 T
C Or⎡ ⎤×⎣ ⎦
1 1
0 T
C Or⎡ ⎤×⎣ ⎦
00 1
1Or1
00 0 f:SOr =
01 e:Sτ
02τ−
differential causality
Fig. 11. Sub Bond graph for dynamics of link 1
We try to eliminate
1
0OF from (37) and (38), since it is internal to the mechanism,
{ } { }
{ }
{ }
1 1 1 1 2 1 2 2
1 1 1 1 2 1 1 2
1 1 1 1 2 2
0 0 0 0 0 0 0 0 00 1 1 0 1 2
0 0 0 0 0 01 0 1 2
0 0 0 0 0 01 0 1 2
C C O C O C O O
C O C C O C O O
O C C O O O
d dI r M r F r Fdt dt
dr M r r r Fdt
dr M r r Fdt
ω τ
0
τ
τ τ
τ τ
⎧ ⎫⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × − + × + +⎨ ⎬⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎩ ⎭
⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × + × − × + +⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤= − × + × + +⎣ ⎦ ⎣ ⎦
(39)
Since
{ } { }{ }
{ }1 1 1 1 1 1
1 1 1 1
0 0 0 01 0 1 0
0 0 01 0
O C C O C C
O C O C
d dr M r r M rdt dt
d M r rdt 1ω
⎡ ⎤ ⎡ ⎤× = ×⎣ ⎦ ⎣ ⎦
⎡ ⎤⎡ ⎤⎡ ⎤= − × ×⎣ ⎦⎣ ⎦⎣ ⎦
(40)
and
1 1 1 1 1 1
0 0 0 01O C O C O CI I M r r⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤= − ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ×⎦⎣ ⎦ (41)
Using (40) and (41) in (39),
{ }1 1 2 2
0 0 0 0 0 00 1 1 2O O O O
d I r Fdt
ω τ τ⎡ ⎤ ⎡ ⎤= × + +⎣ ⎦ ⎣ ⎦ (42)
The simplified sub bond graph for link 1 is as shown in Fig. 12.
00 1
1ω
MTF 02
0OF
1
01 :IO I⎡ ⎤⎣ ⎦
1 2
0 T
O Or⎡ ⎤×⎣ ⎦
01 e:Sτ
02τ−
Fig. 12. Simplified sub bond graph for link 1.
Consider the free body diagram of link 2. Note the negative signs on
2
0OF and 0
2τ . These show the equal and opposite nature of force and torque on link 2 due to link 1.
3
0OF
2Y
2X
2C
link 2
02τ−
2
0OF−
3O
2O
Fig. 13. Free body diagram of the link 2.
Applying (14) and (24) to the FBD of Fig. 13, the equations of motion for the link 2 are
{ }2 3
0 0 02 0 C O
d2OM r F F
dt= − and (43)
{ }2 2 2 2 2 3 3
0 0 0 0 0 0 00 2 2C C O O C O O
d I r F r Fdt
ω τ⎡ ⎤⎡ ⎤ ⎡ ⎤= − × + × −⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (44)
The resulting sub bond graph representing the dynamics of link 2 is shown in Fig. 14. Once again there is a differential causality on the element [ ]2I: M .
00 2
1ω
00 2
1Cr
MTF
MTF 03
0OF
02
0OF−
2
02 :IC I⎡ ⎤⎣ ⎦ [ ]2I: M
2 3
0 T
C Or⎡ ⎤×⎣ ⎦
2 2
0 T
C Or⎡ ⎤×⎣ ⎦
00 2
1Or
02τ−
3
0eS : OF
Fig. 14. Sub Bond graph for dynamics of link 2
Substituting for
2
0OF from (43) into (42),
{ } { }
{ }
1 1 2 3 2
1 2 3 1 2 2
0 0 0 0 0 0 00 1 2 0 1 2
0 0 0 0 0 02 0 1 2
O O O O C
O O O O O C
d dI r F M rdt dt
dr F r M rdt
ω τ τ
τ τ
⎧ ⎫⎡ ⎤ ⎡ ⎤= × − + +⎨ ⎬⎣ ⎦ ⎣ ⎦ ⎩ ⎭
⎡ ⎤ ⎡ ⎤= × − × + +⎣ ⎦ ⎣ ⎦
(45)
Again, substituting for 2
0OF from (43) into (44),
{ } { }
{ }
{ }
2 2 2 2 3 2 3 3
2 2 2 2 2 2 3 3
2 2 2 2 3 3
0 0 0 0 0 0 0 00 2 2 0 2
0 0 0 0 02 0 2
0 0 0 0 02 0 2
C C O C O C O O
C O C C O C O O
C O C O O O
d dI r M r F r Fdt dt
dr M r r r Fdtdr M r r Fdt
ω τ
0τ
τ
⎧ ⎫ ⎡ ⎤⎡ ⎤ ⎡ ⎤= × − + × −⎨ ⎬⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎩ ⎭
⎡ ⎤⎡ ⎤⎡ ⎤ ⎡ ⎤= × + − × + × −⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤⎡ ⎤= × + × −⎣ ⎦ ⎣ ⎦
(46)
The Bond graph for the two link manipulator is as shown in Fig. 15.
00 2
1ω
00 2
1Cr
MTF
MTF 03
0OF
02
0OF−
2
02 :IC I⎡ ⎤⎣ ⎦ [ ]2I: M
2 3
0 T
C Or⎡ ⎤×⎣ ⎦
2 2
0 T
C Or⎡ ⎤×⎣ ⎦
00 2
1Or
02τ−
3
0eS : OF
00 1
1ω
00 1
1Cr
MTF
MTF 02
0OF
01
0OF
1
01 :IC I⎡ ⎤⎣ ⎦ [ ]1I: M
1 2
0 T
C Or⎡ ⎤×⎣ ⎦
1 1
0 T
C Or⎡ ⎤×⎣ ⎦
00 1
1Or1
00 0 f:SOr =
01 e:Sτ
02τ−
02
0τ−
02 e:Sτ−
Fig. 15. Bond graph for the 2 link manipulator
The earlier simplifications to the sub bond graph of link 1 Fig. 12 can be retained and are shown in the Fig. 16.
00 2
1ω
00 2
1Cr
MTF
MTF 03
0OF
02
0OF−
2
02 :IC I⎡ ⎤⎣ ⎦ [ ]2I: M
2 3
0 T
C Or⎡ ⎤×⎣ ⎦
2 2
0 T
C Or⎡ ⎤×⎣ ⎦
00 2
1Or
02τ−
3
0eS : OF
02τ−
02
0τ−
02 e:Sτ−
00 1
1ω
MTF 02
0OF
1
01 :IO I⎡ ⎤⎣ ⎦
1 2
0 T
O Or⎡ ⎤×⎣ ⎦
01 e:Sτ
Fig. 16. Simplified Bond graph for the 2 link manipulator
expanding the LHS of (45),
{ } { } { }1 1 1 2 3 1 2 2
0 0 1 1 0 1 1 0 0 0 0 0 00 1 1 0 1 1 0 1 2 0 1 2O O O O O O O C
d dR I R I r F r M rdt dt
ω ω ω⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤× + = × − × +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ τ τ+ (47)
The second term on the RHS of (47) can be written as,
{ } { }{ }{ }{ }
{ } { }
1 2 2 1 2 2 2 2
1 2 2 2 1 2
1 2 2 2 1 2
1 2 2 2 2 2
0 0 0 0 02 0 2 0
0 0 0 0 02 0 2 0 1
0 0 0 0 02 0 2 2 0 1
0 0 0 02 0 2
O O C O O O C O
O O O C O O
O O O C O O
O O O C O C
d dr M r r M r rdt dt
dr M r rdt
d dr M r M rdt dt
M r r r
ω ω
ω ω
ω
⎡ ⎤ ⎡ ⎤× = × +⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × − × − ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎧ ⎫⎡ ⎤ ⎡ ⎤ ⎡ ⎤= − × × + ×⎨ ⎬⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎩ ⎭
⎡ ⎤⎡ ⎤= − × × +⎣ ⎦ ⎣ ⎦{ }{ }
1 2 1 2
1 2 2 2 2 2 1 2 1 2
1 2 2 2 2 2
0 0 0 0 00 2 0 1 0 1
0 0 0 0 0 0 0 0 02 0 2 0 2 0 1 0 1
0 0 0 0 0 0 0 02 0 2 0 2 0 2 0 1 0 1
O O O O
O O O C O C O O O O
O O O C O C
r r
M r r r r r
M r r r
ω ω ω
ω ω ω ω
ω ω ω ω ω
⎡ ⎤⎡ ⎤ ⎡ ⎤× + × + ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤= − × − × + × − × + ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡= − × − × × + × − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦{ }{ }{ } { }
1 2 1 2
1 2 2 2 1 2 2 2
1 2 1 2 1 2 1 2
1 2
0 0 00 1
0 0 0 0 0 0 02 0 2 0 2 2 0 2
0 0 0 0 0 0 02 0 1 0 1 2 0 1
0 1 1 1 01 2 0 2 0 2 1
O O O O
O O O C O O O C
O O O O O O O O
O O
r r
r M r M r r
r M r r M r
R r M R
ω
ω ω ω
ω ω ω
ω ω
⎡ ⎤⎤ + ×⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤= × × × − × ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤+ × × × − × ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦{ }
{ }{ }
2 2
1 2 2 2
1 2 1 2
1 2 1 2
0 22
0 1 1 0 0 22 1 1 2 0 2
0 1 1 1 11 2 0 1 0 1
0 1 1 11 2 0 1
TO C
TO O O C
O O O O
O O O O
R r
M R r r R R
R r M r
R r M r
ω
ω ω
ω
⎡ ⎤ ⎡ ⎤− × ×⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤+ × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤− × ×⎣ ⎦ ⎣ ⎦ (48)
(47) can now be written as
{ } { }{ }
{ }
1 1 1 2 3
1 2 2 2
1 2 2 2
1 2 1 2
0 0 1 1 0 1 1 0 0 0 00 1 1 0 1 1 0 1 1 2
0 1 1 1 0 0 21 2 0 2 0 2 1 2
0 1 1 0 0 22 1 1 2 0 2
0 1 1 1 11 2 0 1 0 1
01
O O O O O
TO O O C
TO O O C
O O O O
dR I R I r Fdt
R r M R R r
M R r r R R
R r M r
R
ω ω ω τ τ
ω ω
ω
ω ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤× + = × + +⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤+ × ×⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
+ { }1 2 1 2
1 1 12 0 1O O O Or M r ω⎡ ⎤ ⎡ ⎤× ×⎣ ⎦ ⎣ ⎦
(49)
Premultiplying by 01 and rearranging, TR
{ }
{ }
1 1 2 1 2 1 2 2 2
1 2 3 1
1 2 2 2
1 2
1 1 1 1 1 1 0 0 22 0 1 2 1 2
1 1 1 1 1 1 11 2 0 1 0 1
1 1 1 0 0 22 0 2 0 2 1 2
1 1 12 0 1 0
TO O O O O O O O C
O O O O
TO O O C
O O
I M r r M r r R R
r F I
r M R R r
r M
ω ω0 2
τ τ ω ω
ω ω
ω ω
⎡ ⎤ ⎡⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣
⎡ ⎤ ⎡ ⎤⎡ ⎤= × + + − ×⎣ ⎦⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤− × ×⎣ ⎦⎣ ⎦
⎤⎦
{ }1 2
11 O Or⎡ ⎤×⎣ ⎦
(50)
Expanding the LHS of (46)
{ }{ } { } { }
{ }2 2
2 2 2 2 3 3
0 2 2 0 2 2 2 0 2 22 0 2 2 0 2 0 2 2 0 2
0 0 0 02 0 2
C C
C O C O O O
d dR I R I R Idt dt
dr M r r Fdt
2
0
Cω ω ω ω
τ
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤= × +⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤⎡ ⎤= × + × −⎣ ⎦ ⎣ ⎦
(51)
The first term on the RHS of (51) is
{ } { }{ }{ }{ }
{ } { }
2 2 2 2 2 2 2 2
2 2 2 2 1 2
2 2 2 2 1 2
2 2 2 2 2 2
0 0 0 0 02 0 2 0
0 0 0 0 02 0 2 0 1
0 0 0 0 02 0 2 2 0 1
0 0 0 02 0 2
C O C O C O C O
O C O C O O
O C O C O O
O C O C O C
d dr M r r M r rdt dt
dr M r rdtd dr M r M rdt dt
M r r r
ω ω
ω ω
ω
⎡ ⎤ ⎡ ⎤× = − × +⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= − × − × − ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎧ ⎫⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × × + ×⎨ ⎬⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎩ ⎭
⎡ ⎤⎡ ⎤= × × +⎣ ⎦ ⎣ ⎦{ }{ }
1 2 1 2
2 2 2 2 2 2 1 2 1 2
2 2 2 2 2 2
0 0 0 0 00 2 0 1 0 1
0 0 0 0 0 0 0 0 02 0 2 0 2 0 1 0 1
0 0 0 0 0 0 0 02 0 2 0 2 0 2 0 1 0 1
O O O O
O C O C O C O O O O
O C O C O C
r r
M r r r r r
M r r r
ω ω ω
ω ω ω ω
ω ω ω ω ω
⎡ ⎤⎡ ⎤ ⎡ ⎤× + × + ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤= × − × + × − × + ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤= × − × × + × − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣⎣ ⎦ ⎣ ⎦{ }{ }{ } { }
1 2 1 2
2 2 2 2 2 2 2 2
2 2 1 2 2 2 1 2
0 0 00 1
0 0 0 0 0 0 02 0 2 0 2 2 0 2
0 0 0 0 0 0 02 0 1 0 1 2 0 1
O O O O
O C O C O C O C
O C O O O C O O
r r
r M r M r r
r M r r M r
ω
ω ω ω
ω ω ω
⎡ ⎤+ ×⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤= − × × × + × ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤⎡ ⎤ ⎡ ⎤− × × × + × ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦ ⎣ ⎦
(52)
{ } { }
{ }
2 2 2 2 2 2 2
2 2 2 2
2 2 1 2
2 2
0 0 0 2 0 0 2 0 0 2 02 0 2 2 2 2 0 2 2 2 0 2 2
0 2 0 0 2 0 02 2 2 2 2 0 2
0 2 0 0 1 0 0 1 0 02 2 2 1 0 1 1 1 0 1 1
0 22
T TC O C O C O C
T TO C O C
T T TO C O O
O C
dr M r R r R M R R R Rdt
M R r R R r R
R r R M R R R R r
R r
ω ω
ω
ω ω
⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤× = − × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤+ × ×⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤+ ×⎣ ⎦
0T r
{ }{ }
{ }{ }
1 2
2 2 2 2
2 2 2 2
2 2 1 2
2 2 1 2
0 0 1 0 02 2 1 1 0 1
0 2 2 2 22 2 0 2 0 2
0 2 2 22 2 0 2
0 2 0 0 1 1 12 2 1 2 0 1 0 1
0 2 0 0 1 12 2 1 2 0 1
T TO O
O C O C
O C O C
TO C O O
TO C O O
R M R r R
R r M r
R M r r
R r R R M r
R r R R M r
ω
ω ω
ω
ω ω
ω
⎡ ⎤×⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤= − × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤⎡ ⎤ ⎡ ⎤+ × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤+ × ×⎣ ⎦ ⎣ ⎦
(53)
(51) can therefore be rearranged as
{ } { }{ }
{ }
2 2 2 3 3
2 2 2 2
2 2 2 2
2 2 1 2
2 2
0 2 2 2 0 2 2 0 0 02 0 2 0 2 2 0 2 2
0 2 2 2 22 2 0 2 0 2
0 2 2 22 2 0 2
0 2 0 0 1 1 12 2 1 2 0 1 0 1
0 22
C C O O O
O C O C
O C O C
TO C O O
O C
dR I R I r Fdt
R r M r
R M r r
R r R R M r
R r
ω ω ω τ
ω ω
ω
ω ω
⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤× + = × −⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤⎡ ⎤ ⎡ ⎤+ × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
+ × { }1 2
0 0 1 12 1 2 0 1
TO OR R M r ω⎡ ⎤ ⎡ ⎤×⎣ ⎦ ⎣ ⎦
(54)
Premultiplying (54) by and rearranging, 02
TR
{ }{ }
{ }
2 2 1 2 2 2 2 2 2
2 3 3 2
2 2 2 2
2 2
2 0 0 1 1 2 2 2 22 1 2 0 1 2 0 2
2 2 2 2 2 22 0 2 0 2
2 2 2 22 0 2 0 2
2 0 0 1 12 1 2 0 1 0 1
TO C O O C O C O C
O O O C
O C O C
TO C
r R R M r I M r r
r F I
r M r
r R R M
ω ω
τ ω ω
ω ω
ω ω
⎡ ⎤⎡ ⎤⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × + − × ×⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤⎡ ⎤= × − − ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡ ⎤− × × ×⎣ ⎦ ⎣ ⎦⎣ ⎦
⎡ ⎤ ⎡ ⎤ ⎡− × × ×⎣ ⎦⎣ ⎦ { }1 2
1O Or⎤⎣ ⎦
(55)
The dynamics of the system is represented by (50) and (55). These have to be integrated for 10 1ω and 2
0 2ω . The following relations are also required. 0 0 0 0 0 0
1 0 1 1 2 0 2 2; and R R Rω ω⎡ ⎤ ⎡ ⎤= × = ×⎣ ⎦ ⎣ ⎦ R , or (56)
0 1 0 0 0 01 0 1 1 2 0 2 2; and
TT T TR R Rω⎡ ⎤ ⎡ ⎤= × = ×⎣ ⎦ ⎣ ⎦T TRω (57)
It is easier to derive equations if the Bond graph is integrally causalled. The differential causality occurring in the previous Bond graphs for the two link manipulator is removed using stiffness and damping elements as shown in Fig. 17. Two sets of such elements have been used. One is at the interface between the fixed frame and first link, and the second is at the interconnection between the first and second links.
f
00 2
1ω 0
0 21
Cr
MTF
MTF 03
0OF
02
0OF−
[ ]2I: M
2 3
0 T
C Or⎡ ⎤×⎣ ⎦
2 2
0 T
C Or⎡ ⎤×⎣ ⎦0
2τ−
3
0eS : OF
00 1
1ω 0
0 11
Cr
MTF
MTF 02
0OF
01
0OF
[ ]1I: M
1 2
0 T
C Or⎡ ⎤×⎣ ⎦
1 1
0 T
C Or⎡ ⎤×⎣ ⎦
00 1
1Or1
00 0 f:SOr =
01 e:Sτ
02τ−
02
0τ−
02 e:Sτ−
00 2
1Or ′
0 1
[ ]12C: K
[ ]12R: R
00 1
1Or ′
0 1
[ ]01C: K
[ ]01R: R
00 2
1Or ′′
20 2
1ω
2
22 :IC I⎡ ⎤⎣ ⎦
MGY
{ }2
2 22 0 2C I ω⎡ ⎤⎡ ⎤ ×⎣ ⎦⎣ ⎦
e f
MTF
02 R
10 1
1ω
1
11 :IC I⎡ ⎤⎣ ⎦
MGY
{ }1
1 11 0 1C I ω⎡ ⎤⎡ ⎤ ×⎣ ⎦⎣ ⎦
e
MTF
01 R
Fig. 17. Integrally causalled Bond graph for the 2 link manipulator.
The equations derived from the Bond graph are as follows.
{ } { } {1
01 0 01 01 01 01 12 12 12 12C
d }M r K q R q K q R qdt
= + − + (58)
{ } {2 3
0 02 0 12 12 12 12C O
d }M r F K q R qdt
= + + (59)
{ } { } { }{ }{ }
1 1
1 1
1 2
1 1 1 1 1 0 0 00 1 0 1 0 1 1 1 2
0 01 01 01 01 01
0 01 12 12 12 12
TC C
TC O
TC O
d I I Rdt
R r K q R q
R r K q R q
ω ω ω τ⎡ ⎤ ⎡ ⎤⎡ ⎤= − × + +⎣ ⎦⎣ ⎦ ⎣ ⎦
⎡ ⎤+ × +⎣ ⎦⎡ ⎤− × +⎣ ⎦
τ
(60)
{ } { }{ }
{ }{ }
2 2
2 3 3
2 2
2 2 2 2 20 2 0 2 0 2
0 0 0 02
0 02 12 12
C C
TC O O
TC O
d I Idt
R r F
R r K q R q
ω ω ω
τ
⎡ ⎤ ⎡ ⎤⎡ ⎤= − ×⎣ ⎦⎣ ⎦ ⎣ ⎦
⎡ ⎤+ × −⎣ ⎦
⎡ ⎤+ × +⎣ ⎦
2
12 12
(61)
{ }1 1 1
0 0 001 0 0 1
T
C C Oq r r ω⎡ ⎤= − + ×⎣ ⎦ (62)
{ } { }1 1 1 2 2 2
0 0 0 0 0 012 0 0 1 0 0 2
T
C C O C C Oq r r r rT
ω ω⎡ ⎤ ⎡ ⎤= + × − + ×⎣ ⎦ ⎣ ⎦ (63)
(58) through (63) are the system equations. In the extreme case when the stiffness elements become rigid,
01 0q = and 12 0q = , and the terms 01 01K q and 12 12K q become constant vectors, representing constant forces. The equivalence of these to Lagrange multiplier forces is well explained in [5]. These can be eliminated by solving the above equations. From the Bond graph, it is clear that they are reaction forces acting between connected bodies and are internal to the system. It can also be seen from (62) and (63) that the kinematic relations get reestablished to the situation without stiffness and damping elements. The use of such stiffness and damping elements is quite common in resolving the difficulties caused by differential causality. Since it is easier to express the angular velocities in their respective link frames,
1 20 1 1 2
1 2
0 00 , and 0ω ωθ θ
⎧ ⎫ ⎧ ⎫⎪ ⎪= ⎪ ⎪=⎨ ⎬ ⎨ ⎬⎪ ⎪ ⎪⎩ ⎭ ⎩ ⎭
⎪
1
⎤⎥⎥⎥⎦
(64)
To obtain relationships between the angular velocities from rotation matrices, we can proceed from (65) 0 0 1
2 1 2R R R=where,
(66) 1 1 2 2
0 11 1 1 2 2 2
cos sin 0 cos sin 0sin cos 0 and sin cos 0
0 0 1 0 0R R
θ θ θ θθ θ θ θ
− −⎡ ⎤ ⎡⎢ ⎥ ⎢= =⎢ ⎥ ⎢⎢ ⎥ ⎢⎣ ⎦ ⎣
Differentiating (65) with respect to time,
0 0 1 0 12 1 2 1 2
0 0 0 1 0 1 1 11 1 1 2 1 2 2 2
0 0 0 1 10 1 1 1 1 2 2
T
R R R R R
R R R R R R R R
R R Rω ω
= +T⎡ ⎤ ⎡⎡ ⎤= +⎣ ⎦ ⎤⎣ ⎦ ⎣
⎡ ⎤ ⎡ ⎤= × + ×⎣ ⎦ ⎣ ⎦
⎦ (67)
Since 0 0 02 2 0 2
TR R ω⎡= ×⎣ ⎤⎦ , we post multiply (67) by to obtain 02
TR
0 0 02 2 0 2
0 0 1 1 00 1 1 1 2 2 2
0 0 1 00 1 1 1 2 1
0 00 1 1 2
T
T
T
R R
R R
R R
ω
ω ω
ω ω
ω ω
⎡ ⎤= ×⎣ ⎦⎡ ⎤ ⎡ ⎤= × + ×⎣ ⎦ ⎣ ⎦⎡ ⎤ ⎡ ⎤= × + ×⎣ ⎦ ⎣ ⎦⎡ ⎤ ⎡ ⎤= × + ×⎣ ⎦ ⎣ ⎦
R (68)
This implies that
0 0 00 2 0 1 1 2
0 0 10 1 1 1 20 1 0 21 0 1 2 1 2
R
R R
ω ω ω
ω ω
ω ω
= +
= +
= +
(69)
REFERENCES [1] I. H. Shames, Engineering Mechanics, Prentice Hall, 1996. [2] D. C. Karnopp, D. L. Margolis, and R. C. Rosenberg, System Dynamics: Modeling and Simulation of
Mechatronic Systems, third edition, Wiley-Interscience, 2000. [3] A. Mukherjee, R. Karmakar, Modeling and Simulation of Engineering Systems Through Bondgraphs,
Narosa Publishing House, New Delhi, 2000. [4] A. A. Zeid, J. L. Overholt, “Singularly Perturbed Formulation: Explicit Modeling of Multibody
Systems,” J. Franklin Institute, vol. 332B, No. 1, pp. 21-45, 1995. [5] D. Karnopp, “Understanding Multibody Dynamics Using Bond Graph representations,” J. Franklin
Institute, vol. 334B, No. 4, pp. 641-642, 1997. [6] J. Jang and C. Han, “Proposition of a Modeling Method for Constrained Mechanical Systems Based on
the Vector Bond Graph,” J. Franklin Institute, vol. 335B, No. 3, pp. 451-469, 1998.