0% found this document useful (0 votes)
9 views28 pages

Bond Graph Modeling of Mechanisms

This chapter discusses bond graph modeling of mechanisms, simple load hoisting systems, and robotic manipulators. It provides two examples of modeling mechanisms - a slider-crank mechanism and a 4-bar mechanism - using bond graphs created from the relations between input speeds and velocity components of the rigid links. The chapter concludes with computing the driving torques for mechanisms and robotic manipulators, which are significant for actuation and control.

Uploaded by

Hemant
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views28 pages

Bond Graph Modeling of Mechanisms

This chapter discusses bond graph modeling of mechanisms, simple load hoisting systems, and robotic manipulators. It provides two examples of modeling mechanisms - a slider-crank mechanism and a 4-bar mechanism - using bond graphs created from the relations between input speeds and velocity components of the rigid links. The chapter concludes with computing the driving torques for mechanisms and robotic manipulators, which are significant for actuation and control.

Uploaded by

Hemant
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd

Chapter 8

Mechanisms and Mechanical Handling Systems


8.1 Introduction

This chapter deals with bond graph modeling of mechanisms, simple load hoisting
systems and robotic manipulators. The models of mechanisms are created using the
relations between the input speeds and velocity components of centre of masses of
the rigid links and their angular velocities. If the links are taken to be rigid, this
approach is very convenient as the library LINKPAC [63] may be directly used.
However, elaborate system morphic bond graphs may also be created. Such models
turn out to be rather uneconomical as more number of bonds are needed to represent
the constraints. One advantage of elaborate models may be that joint flexibilities may
be incorporated.

This chapter ends with computation of driving torques for mechanisms as well as
robotic manipulators. These driving torque expressions are of considerable
significance in actuation and control of such systems. The models, however, may as
well be used for open ended simulations with or without control strategies.

8.2 Modeling of mechanisms

We shall illustrate the methodology of using bond graphs to simulate the dynamic
behavior of mechanisms with the aid of two examples:

(a) Slider-crank Mechanism and


(b) 4 - bar mechanism.

8.2.1 Slider-crank mechanism

The schematic diagram of a typical slider-crank mechanism is shown in Fig. 8.1(a).


The input crank is driven by a constant velocity source. The slider is moving against
a spring. The bond graph of the system is shown in Fig. 8.1(b).

The angular motion of the crank is represented by the 1 --junction, with the I
element for the rotary inertia of the crank about its axis. The motion of the connecting
rod (link-2) is resolved into motion of its centre of mass in the two principal x and y
directions and its rotation about the centre of mass. The linear velocities in the x and
y directions are represented by the junctions 1x and 1y with I elements for the
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 232
mass of link-2. The rotational motion is modeled by the 1 -junction with rotary
inertia of link-2.

Fig. 8.1(a) Fig. 8.1(b)

The 1s -junction represents the slider motion with the I element for the slider mass
and a C element for the spring. The motions of link-2 and the slider are determined
by the modulated transformers from crank rotation. The moduli of the transformers
may be obtained from kinematics or by using the mechanism analysis package
LINKPAC. The flow activated C element on the crank rotation junction records the
crank velocity and position. Crank position  is required for the transformer moduli.
A brief description on the nature and use of LINKPAC is given at the end of this
section.

It is seen that all the I elements in the bond graph have differential causalities. This
makes our modeling difficult though not impossible. However, the situation can be
vastly improved by adding what may be called as pads which are nothing but
lumped flexibilities at appropriate points in the graph so that the differential
causalities may be avoided. The resulting graph is shown in Fig. 8.1(c). These pads
appear in the form of (1-C-R) bond structure at the intermediate 0-junction as shown
in the figure.
233 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

Fig. 8.1(c)

Their dynamic effects can be reduced by choosing high values of the C and R
elements. By doing so we are in a way making a flexible system more rigid. The
effects are usually in the form of a high frequency vibration in the system at the onset
of simulation. These frequencies, however, decay soon due to the heavy damping
from the R elements.

8.2.2 Four bar mechanism

The schematic diagram in Fig.


8.2(a) may be taken as a
representative of a typical 4-bar
mechanism. The mechanism is
driven by a flexible drive shaft
at constant speed. There is an
elastic load at the output link-4.
Figure 8.2(b) shows the bond
graph of the system that can be
obtained in a similar manner as
Fig. 8.2 (a)
in the previous example.
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 234

Fig. 8.2 (b)

The input crank rotation appears at the 12 -junction in the graph. The velocity
source SF drives the crank through the elastic shaft represented by the 1-C-R
structure. Joint resistance is modeled by the R element of coefficient b21.

Here too linear motion of the coupler centre of mass is resolved into principal
directions x3 and y3 and is determined from crank rotation through transformers.
Junction 13 with the I element models the rotational motion of the coupler. The
resistance at the joint between the crank and the coupler is modeled by the R element
of coefficient b32 at the 0-junction connecting the junctions 12 and 13 .
Link-4 receives the rotational motion from crank rotation through link-3. This is
represented by the TF connecting 12 -junction to the 14 -junction. Further, the
235 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

joint resistance between link-3 and link-4 is modeled by a R element at the 0-junction
joining the angular motion of link-3 and link-4. Moduli of the transformers can be
obtained from kinematic analysis of the mechanism or by using the LINKPAC
subroutines.

From the bond graph in Fig. 8.2(b) it is seen that all inertia elements, except I 1 are
with differential causalities indicating that links connected to the crank have
dependent motions. These differential causalities can be eliminated by using pads as
before. The resulting bond graph is as shown in Fig. 8.2(c).

Fig. 8.2(c)

8.2.3 How to obtain the moduli of the transformers?

(Use of LINKPAC)

To obtain the moduli of the transformers in the bond graph of a mechanism we have
to take the ratio of the velocities at the points of interest between which we place the
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 236
transformers. Now the question arises regarding how to get the velocities. One way
could be by analyzing the mechanism using vector algebra and resolving the vectors
into components in directions of our interest. For complex mechanisms with a large
number of links and joints it might get a bit tedious. One may also use one of the
many software packages available to analyze and simulate linkage systems.

LINKPAC [63] is a software library used for analysis of planar mechanisms.


Basically, it uses vector methods in a very general form so that it can be used in any
situation. Many plane mechanisms can be shown to be assembled from one or more
of three basic combinations of rigid members: the two link dyad, the oscillating
slider, and the rotating guide. Kinematic analysis of these basic modules are available
as subroutines. For example the position analysis of a 2-link dyad may be obtained
from the subroutines PDYAD, the velocity analysis from the subroutine VDYAD and
the acceleration analysis from the subroutine ADYAD. Similarly, we have the POSC,
VOSC, AOSC, PGUIDE, AGUIDE etc. for the other two cases. These apart, there are
basic routines for rigid body kinematic analysis like POS (giving the position of a
point in a rigid body given the position of any other point), VEL (giving the velocity
of a point in a rigid member given the position and velocity of any other point on it)
and similarly ACC (for acceleration analysis). Certain diagnostic checks are also
performed on the mobility of the mechanism. A given planar mechanism once
assembled from the basic modules can be analyzed using the subroutines of the
corresponding modules.

SPAPAC, for spatial mechanisms, also has a multitude of subroutines for position
velocity and acceleration analysis. Here too similar principles can be applied to
assemble and analyze the positions, velocities and accelerations of various points at
different locations on the mechanism.

Details on the use of the software libraries and also their codes are given in
“Kinematics and Mechanisms Design” by C. H. Suh and C. W. Radcliffe [63].

8.3 Modeling of mechanical handling systems

Example 1 - Load snatching in E.O.T crane: An idealized E.O.T crane is shown in


Fig. 8.3. The idealized girder (Kg, Rg) supports its own and trolley mass mg. The
hoisting drum on the trolley winds a rope (Kr, Rr) to lift a load (ml) from the ground.
The dynamics of load snatching is to be simulated.

The bond graph for the above system is shown in Fig. 8.4. Junction 1g represents the
velocity of the girder to which is attached the elements C2 and R3 for the stiffness and
damping of the girder. Hoisting velocity given to the rope by the drum is
represented by SF18. The flow from SF18 and 1g are added in a 0-junction to give the
resultant velocity at the girder end of the rope on bond 8. Flow activated element C7
237 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

gives the velocity and amount of rope winding. The junction 1l represents the
velocity of the load to which is attached the I element for the load. Flow activated
element C15 gives the displacement of the load from the ground. Flows in bond 14
and 10 are added in a 0-junction to give the relative flow to elements C12 and R13
representing the rope. The effort from SE17 is equal to sum of the forces in the rope
spring and damper (rope tension) till the sum is equal to mlg and beyond this the
effort is constant at mlg. Rope tension is available from the effort activated element
I21. The power directions are given to conform to positive upward displacement of
the girder and the rope.

Fig. 8.3 Fig. 8.4

Inputs:

To simulate hoisting at constant velocity 0.0667 m/s.


MECHANISMS AND MECHANICAL HANDLING SYSTEMS 238
LD = M16 * 9.81

SE17 = – p
 21 * ( 1–SWI ( p
 21,LD) ) – LD * SWI ( p
 21,LD).

where SWI (A,B) is a function such that

SWI (A,B) = 0 for A < B.

SWI (A,B) = 1 for A ≥ B.

Hoisting at constant acceleration 0.0667 m/s2 from 0 to a velocity of 0.0667 m/s.

SE17 = same as above.

V = T * 0.0667 . {T is time}

SF18 = V * ( 1– SWI ( V, 0.0667 ) ) + 0.0667 * SWI ( V, 0.0667 ).

Example 2 - E.O.T crane: An idealized EOT crane is shown in Fig. 8.5. The girder is
supported on carriages assumed to be rigid. Flexibility of the carriage is taken care of
by Ks and Rs. The dynamics of the girder due to carriage wheels moving over rail
joints is simulated.

The bond graph of the system is shown in Fig. 8.6. The girder beam has been
reticulated into two beam elements for simplicity. 1g-junctions represent the
transverse velocities of the nodes and 1 θ-junctions represent rotation of the nodes.
These junctions are attached to the beam C - fields. The stiffness matrix for C - field
has been given in Chapter - 7. Bond 56 attaches the load mass and rope spring
subsystem to the mid-span 1g-junction. The junctions 1c and 1r represent the vertical
and rotational motion of the carriage respectively.

The flows in bond 13 and 15 give the velocities at A and B due to carriage rotation.
These flows are added to the flows from 1c at junction 0a and 0b to get the resultant
velocities on bonds 10 and 5. Flows from SF6 and SF1, representing excitation due to
rail discontinuity, are added to flows on bonds 10 and 5 at 0-junctions to get the
relative velocities in wheel springs on bonds 9 and 4 to which wheel spring C
elements are attached.

The girder ends will be able to rotate freely as in a simply supported beam. Free
rotation means no moment and this is taken care of by attaching elements SE48 and
SE64 of zero value. One may not use these elements at all. A few effort activated C
elements have been used to find out displacement and velocities at desired points. A
flow activated I element has been used to record rope tension.
239 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

Fig. 8.5

Inputs:

Step down joint:

RA = ( R – H ) / R. { R = wheel radius , H = step height }


TH = ARCCOS(RA).
T2 = R* TH/V. { V= carriage speed }
SF1 = –V* SIN(V* (T)/R) * ( 1- SW1( T,T2)).
T12 = 2a/V. {2a = carriage wheel base}
T22 = T12 + R * TH /V.
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 240
SF6 = –V * SIN ( V * ( T-T12 ) / R ) * SWI ( T, T12 ) * ( 1- SWI ( T , T22) ).

Fig. 8.6

8.4 Modeling and computation of driving efforts for online control

Most robotic manipulators are open kinematic chains which form coupled
mechanical systems. For any robotic manipulators the task is usually specified in
terms of the path traveled by the end-effector in cartesian coordinates. To drive a
robot rapidly along a predefined trajectory requires a repetitive computation of the
input generalized efforts from an appropriate manipulator dynamic model. Since a
manipulator is a highly nonlinear system, this becomes a difficult control problem.
The execution time for computing the generalized efforts determines the feasibility of
implementing the control scheme in real time.
241 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

Several approaches have been proposed to formulate the dynamics of robot and to
compute the applied generalized efforts. However, with the inherent dynamic
coupling of the robotic systems, none of these approaches have resulted in a
particularly simple closed form of the equations for computer implementation. To
achieve real time control with microcomputers that have limited computational
power requires further improvement of computational efficiency. No iterative or
recursive procedure other than evaluation of a closed form expression can offer
desired computational efficiency. Computational parallelism then becomes the
natural and the best choice since parallelism can offer increased speed of
computation without the improvement of operation speed for individual hardware
components. Control and robotics engineers have time and again emphasized on the
need for complete closed form dynamic robot models for control system design.

The difficulties can be eliminated by formulating explicit equations of motion for the
robotic device, provided a suitable method is used to generate equations. Therefore,
what is needed is a method that leads directly to the simplest possible computational
algorithm.

This chapter presents a procedure for modeling and computing driving efforts for
the desired state of motion to be used as feed forward for robotic manipulators using
bond graph representation. The bond graph model of the system is developed in
such a way that all the inertial elements of the links are directly connected with input
degrees of freedom (d.o.f) of the robot. In the bond graph representation for rigid
mechanisms and robots, geometric constraints among rigid bodies that are linked
together results in algebraic relations among the state variables termed as differential
causality. The method for avoiding the differential causality by imposing artificial
compliances has been described by Karnopp and Margolis. In the previous attempts,
the differentially causalled bond graphs are directly analyzed for motion or
computed torque. The presence of differential causality makes the derivation and
reduction process fairly complicated owing to the complexity of junction structures
depicting rigid body kinematics. This chapter indicates that if artificial compliances
are introduced to remove the differential causality the derivation becomes much
simpler. The rigid model driving effort can be derived by making the artificial
compliance impedances tending to infinity. When the impedances of the artificial
compliances tend towards infinity, the efforts associated with them tend towards
finite value. These limiting values of compliance efforts are termed as generalized
internal efforts. During the process of elimination of these internal efforts with the
above limiting conditions, higher derivatives of the state vectors appear. But
acceleration analysis considering the state of motion of the frame of reference is not
required at all. Such derivatives can be generated manually or by a suitably designed
software.
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 242
Software like SYMBOLS takes the system bond graph and generates system
equations in symbolic form in terms of the state variables and sources. In the present
scheme the elimination process for the generalized internal efforts can be done
manually to get the final closed form effort equations.

The effort equations finally derived using bond graph for a five d.o.f revolute robot
are in single scalar closed form for each of the joints and can be used for online
computations. The closed form equations are always much faster and more efficient
than any iterative or recursive form of equations. As an example, the 5 d.o.f robot
effort expressions by N-E formulation need 702 multiplications and 607 additions
while the present effort expressions need only 512 multiplications and 282 additions.
The closed form expressions also provide a greater insight for control system design.
However, the principal advantage is that the expressions can be broken into smaller
modules and their systematic organization can lead to a solution with maximum
degree of computational parallelism. This procedure is illustrated with the example
of a four—bar mechanism.

8.4.1 Notation

The meaning of the sub and superscript (d, i, j, k, p, w) used o denote vector quantities
are explained in this section. A comma is used as a separation if more than one sub
or superscript occurs. Uppercase characters denote matrices, boldface characters
denote vectors and lowercase characters are scalars. Variables like linear velocity,
angular velocities etc. appear many times within the same system. An unambiguous
notation is introduced for these variables. All these variables are described in
coordinate bases using column matrics.

Vector quantities in mechanics, having both a magnitude and a direction are


represented symbolically by an identifier. In three dimensional space the location of a
point p in body i can be indicated by a position vector as

X ip , j , k (8.1a)

where the subscript ip denotes the point p in body i, j indicates the position of the
observer and k represents the frame of reference in which point p is described.

The notation of velocity follows from the notation of displacement. Like a


displacement a velocity also is a relative quantity. In (8.1b) the vector notation of the
velocity of a point p is shown. The subscripts used are same as was the case for
displacements, the first subscript, i, indicates the body or link on which the point p is
situated. The second subscript, j, indicates the position of the observer. The third
subscript, k, indicates the frame of reference in which the velocity is described.
243 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

Vip , j , k (8.1b)

As velocities are always described relative to a reference base, one frame is chosen
which is considered to be fixed in space: the inertial reference frame. This frame is
always denoted by the number 0. The velocities described with respect to inertial
frame are called absolute velocities, other velocities are relative velocities.

Angular velocities are the time derivatives of angular displacements. The adopted
notation is given in (8.1c).

Wi , j , k (8.1c)

where W is the angular velocity of body or link i, as observed from frame j, in


coordinate of frame k.

8.4.2 Modeling of a Robot

Fig. 8.7 Schematic diagram of 5 d.o.f robot.


Modeling has an increasing importance in the development of complex or large
mechanical systems. The first step in control engineering design entails the dynamic
modeling of the physical system. It is essential because modeling is the only way to
study their behavior in advance. For serially connected open loop kinematic chain
like a robotic manipulator which has highly nonlinear dynamic characteristic, the
problem of exact kinematic modeling remains a challenging problem. This section
presents the dynamic modeling of a five d.o.f revolute robot. The bond graph model
of a revolute robot can be represented in various forms according to its kinematic
and dynamic parameters considered by the user. Here the bond graph model of the
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 244
system has been developed in such a way that transformers connect the system
inertias directly with input degrees of freedom of the robot.

Figure 8.7 shows the schematic diagram of a 5 d.o.f robot. The links are assumed to
be rigid and connected by revolute joints with link-0 (not considered as a part of the
robot) attached to a supporting base where the inertial or world coordinate is
established. A coordinate system has been assigned to each of the joints of the robot.
The links and joints are numbered outwardly from the base. The link between joint
and i+1 and is termed as link i. The Y-axis of each link is always considered along its
longitudinal axis. The joint Z-axes of links-2, 3 and 5 coincide with Z0-axis of the
world coordinate frame (X0, Y0, Z0) in the home condition. The home condition has
been used to define the different coordinate frames. The robot as such can start from
any arbitrary position within its workspace provided the state of the robot has been
initialized accordingly. Also, the link principal ax fined as Xpi, Ypi, Zpi (i = 1,5) initially
coincides with the world coordinate frames.

The bond graph model of the system is shown in Fig. 8.8. The 1 i -junctions indicate
the relative velocity of joints i. A 0-junction represents a summation of velocities. The
C elements connected to the 0-junctions are artificial compliances (pads) used to
remove the differential causality. Clusters 1, 3 and 5 represent the linear motions of
the centre of masses of the links 2, 3 and 4, and 5 with the payload respectively.
245 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

Fig. 8.8 Bond graph model of the 5 d.o.f robot.

The rotational inertias are defined about the body fixed principal coordinate systems.
These are constant if represented in principal coordinate systems of the links. The
torque-angular momentum relation of the above links are represented by Eulerian
junction structures (three gyrator rings). The rotational inertias are added to the 1-
junctions of the GY-rings representing the absolute angular velocities of the links in
principal coordinates. Clusters 2, 4 and 6 represent the rotational motions of links 2, 3
and 4, and 5 respectively. Inertias of link 3 and 4 have been combined for rotational
motion and rotation of link-4 relative to link-3 has not been included for
simplification. Transformers with position dependent moduli are used to connect
system inertias directly to the input degrees of freedom of the robot. The R elements
and the effort sources SE at 1 -junctions indicate the joint resistances and the
external torques applied at the joints. Sources of efforts in clusters 1, 3 and 5 indicate
external gravity forces on the links. In Fig. 8.8 each links dynamic parameters are
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 246
separated by dotted lines termed as cluster. The system has been modeled in such a
way that each cluster is connected only with the input degrees through TFs and there
is no interaction among the clusters themselves. This gives a candid picture of the
interconnection between the input angles and the torques on different links and
helps in the derivation of the input effort for each of the joints clusterwise. For more
details the reader may see Ghosh [17] and Ghosh and Mukherjee [18].

8.4.3 Determination of transformer moduli for 5 d.o.f Robot

In the previous section and in Fig. 8.8 TFs are used for modeling the robotic system.
In this section the method for evaluation of moduli of the TFs is discussed. The
moduli of the TFs can be obtained from the kinematic analysis of mechanisms. The
modulus of a typical TF is expressed as the ratio of the velocity of the desired point
to that of the input link. For the robotic manipulator described earlier all the linear
velocities are referred to the world coordinate or inertial reference frame and all
angular velocities to the link principal coordinate frame.

Using notation (8.1c) angular velocity is represented as

Wi j, k   R  Wi j , k 1 , (8.2)
k –1k

where [R] is 3×3 rotation matrix which transforms any vector with reference to
coordinate (Xk-1,Yk-1Zk-1) to the coordinate system (Xk,YkZk).Whenever there is a change
in the frame of reference, a rotation matrix [R] will come into play.

Angular velocity vectors can only be added together when they are expressed with
respect to a common frame of reference.

Thus
Wi ,0, pi  Wi ,i 1, pi  Wi 1,o, pi . (8.3)

Wi 1,0, pi   R  Wi 1, 0, pi 1 . (8.4)


pi –1 pi

The rotation matrix [R] can be broken up as a combination of several rotation matrics
in a particular order.

 R   R    R  R . (8.5)
01 pi –1 pi p1– p 2 0 p1

From equation (8.3), the angular velocity of each link in its principal coordinate as
observed from the world coordinate frame can be obtained as follows.
247 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

For link 2,
W2 , 0, p 2  W2 ,1, p 2  W1 , 0, p 2   R  W2, 1, p1   R  W1, 0, 0
p1 p 2 0 p 2

The angular velocity of link-2 as observed from link-1 with respect to frame of
reference X1, Y1, Z1 can be defined as, W2,1,1 = W2,1,p1, since both the frame of references
are on the same rigid body and W2,1,1 = {0 0 w2}T and W1,0,0 = {0 w1 0}T. Therefore W2,0,p2
can be found out as

 C2 S 2 0  0   C 2 S2 0 C1 0  S1   0 
      
W2 , 0, p 2   S 2 C 2 0  0    S 2 C2 0  0 1 0  w1 
 0 0 1 w2   0 0 1   S1 0 C1   0 
 w1S 2 
 
 w1C 2 ,
 w 
 2 
(8.6)

where S i  sin  i  and Ci  cos i  .

In Fig. 8.8, the values of TF 54 55 and TF 52 53 connected between 1 1 -junction and
x, y directions of the GY-ring for link-2 are S2 and C2. In z direction w =  is 2 2

available directly from 1 2 -junction.

For link 3,
W3 ,0, p 3  W3 , 2, p3  W2 ,0, p 3   R  W3, 2, p 2   R  W2, 0, p 2
p 2  p3 p 2  p3
.
Therefore,

 C3 S 3 0  0   C3 S 3 0  w1S 2   w1S 23 
       
W3 ,0, p 3   S 3 C3 0  0    S 3 C3 0 w1C 2    w1C 23  ,
 0 0 1 w3   0 0 1  w2  w2  w3 
(8.7)


where Cij  cos  i   j  and 
S ij  sin  i   j . 
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 248
From eqn. (8.7), the values of the TF 50 51 and TF 48 49 connected between 1 1 -
junction and x, y directions of GY-ring for link-3 in the bond graph are S23 and C23
respectively.

For link 4,
W4 ,0, p 4  W4 ,3, p 4  W3 ,0, p 4   R  W4, 3, p3   R  W3, 0, p3 .
p 3 p 4 p 3 p 4

Substituting the value of W3,0,p3 from eqn. (8.7) and since


W4 ,3, p 3   0 w4 0  , T

C 4 0  S 4   0  C 4 0  S 4   w1S 23 
     
W4 ,0, p 4  0 1 0  w4    0 1 0   w1C 23 
 S 4 0 C 4   0   S 4 0 C 4  w2  w3 
 w1S 23C 4   w2  w3  S 4 
 
 w1C 23  w4 .
 w S S   w  w C 
 1 23 4 2 3 4
(8.8)

For link 5,
W5 ,0, p 5  W5 , 4, p 5  W4 ,0, p5   R  W5, 4, p 4   R  W4 , 0 , p 4 .
p 4 p 5 p 4 p 5

Substituting the value of W4,0,p4 from Eqn. (8.8) and since

W5 , 4, p4   0 0 w5  T

w1  S 23C4C5  C 23 S 5  –  w2  w3  S 4C5  w4 S 5 


 
W5,0, p5  w1  C23C5 – S 23C4 S 5    w2  w3  S 4 S5  w4C5 
w S S   w2  w3  C4  w5 
 1 23 4
(8.9)

From eqns. (8.6) through (8.9) the values of the TFs which connect different gyrator
rings for the links with input degrees can be obtained.
249 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

The linear velocity of the centre of mass of each link represented by the position
vector LiG,i,i is referred to the inertial coordinate system and should be evaluated as
follows.

Vi ,0,0  Vi ,i 1,0  Vi 1,0,0 (8.10)

Vi ,i 1,0  Wi ,0,0  Li ,i ,0 (8.11)

Wi ,0,0   R  Wi ,0,i (8.12)


i 0

In eqn. (8.11) xis the vector product and

 0  wz wy   
  
W  L   wz 0  wx   L 
 w
 y wx 0  
 

For link-1 through link-5, Y-axes are along the longitudinal axis of the links.

Therefore,

Li , i , i   0 li 0 T and
Li ,i , 0   R  Li ,i , i . (8.13)
i 0

[R] is a combination of several rotation matrices in a particular order as i  0


follows.

 R   R  R              R
i 0 10 21 i i 1

The velocity of the centre of the mass of link-2 can be found out from eqns. (8.10)
through (8.12) as follows.

For Link 2, V2G ,0,0  V2G ,1,0  V1, 0,0 , V2G ,1,0  W2,0,0  L2G , 2,0 ,
W 2, 0, 0   R W 2, 0 , p 2
.
p 20

Substituting the value of W2,0,p2 from eqn. (8.6)


MECHANISMS AND MECHANICAL HANDLING SYSTEMS 250
 C1 0 S1  C 2  S2 0  w1S 2 
   
W2 , 0, 0  0 1 0  S2 C2 0 w1C 2    w2 S1 w1 w2 C1  T
 S1 0 C1   0 0 1  
 w2 

.

From eqn. (8.13)

L 2G , 2, 0   R  L2G , 2, 2
2 0
Therefore,
 C1 0 S1  C2  S2 0  0   12G C1S 2 
     
L2G , 2, 0  0 1 0   S2 C2 0 12G    12G C2  .
 S1 0 C1   0 0 1   
 0 
1 SS 
 2G 1 2 

Therefore,
 w2 S1   12G C1S 2   0 - w2 C1w1 
     
V2G ,1, 0   w1    12G C 2    w2 C1 0  w2 S1 
w C   1 S S    w w2 S1 0 
 2 1   2G 1 2   1
 12G C1S 2   w112G S1S 2  w2 12G C1C 2 
   
 12G C 2     w2 12G S 2 .
 1 S S  w 1 C S  w 1 S C 
 2G 1 2   1 2G 1 2 2 2G 1 2 

 0 0 w1   0 
  
Similarly V1,0,0  W1,0,0  L1,1,0  0 0 0  11    0 0 0  T .
 w1 0 0  
0

 w112G S1S 2  w2 12G C1C 2 


 
Therefore, V 2 G , 0, 0   w2 12G S 2 .
w 1 C S  w 1 S C 
 1 2G 1 2 2 2G 1 2 
(8.14)

From the above eqn. (8.14) the values of TF 58 59 and TF 56 57 connected with 1 1 -
junction are (12G S1 S2) and (12G C1 S2) and the values of TF 84 85, TF 82 83 and TF 80 81
251 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

connected with 1 2 -junction are (–l2G C1 C2), (–l2G S2) and (l2G S1 C2) in x, y and z
directions.

For link 3, V3G ,0,0  V3G , 2,0  V2,0,0 , V3G ,0,0  W3,0,0  L3G ,3,0 ,
W3,0,0   R W3,0, p 3
. (8.15)
p3 0

Substituting the value of W3,0,p3 from Eqn. (8.7)

 C1 0 S1  C 2  S2 0 C3  S 3 0  w1S 23 
    
W3,0, 0   0 1 0   S2 C2 0  S 3 C3 0  w1C 23 
 S1 0 C1   0 0 1   0 0 1 w2  w3 
  w2  w3  S1 
 
  w1 .
 w  w  C 
 2 3 1

 13G S 23C1 
 
L3G ,3,0   R  L3G ,3,3   13G C 23  .
p 3 0 1 S S 
 3G 23 1 

Therefore,
  w2  w3  S1   13G C1S 23 
  
V3G ,2, 0   w1   13G C 23 
 w  w  C   1 S S 
 2 3 1   3G 1 23 
 w113G S1S 23   w2  w3  13G C1C 23 
 
   w2  w3  13G S 23  .
w 1 C S   w  w  1 S C 
 1 3G 1 23 2 3 3G 1 23 

Eqn. (8.14) corresponds to the velocity of the centre of mass of link-2. In eqn. (8.15),
V2, 0, 0 represents the velocity of the tip of link-2 with length l2 from joint 2. So in eqn.
(8.14) l2G can be replaced by l2 in order to obtain V2, 0, 0.
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 252
Therefore,

V3G ,0,0  V3G , 2,0  V2,0,0

 w1 12 S 2  13G S 23  S1  w2 12 C 2  13G C 23  C1  w313G C1C 23 


 
  w2 12 S 2  13G S 23   w313G S 23 
 w 1 S  1 S  C  w 1 C  1 C  S  w 1 S C 
 1 2 2 3G 23 1 2 2 2 3G 23 1 3 3G 1 23 
(8.16)

From eqn. (8.16), the values of the TF 62 63 and TF 60 61 connected to 1 1 -junction
are (l2 S2 + l3G S23) S1 and (l2 S2 +l3G S23) C1 and value of TF 92 93, TF 88 89 and TF 86 87
connected to 1 2 -junction are – (12 C2 + 13G C23)C1, – (l2 S2 + l3G S23) and (l2 C2 + l3G C23) S1
respectively.

Similarly for link-4, V4G,0,0 can be found out as

w1 12 S 2  13  14G  S 23  S1  w2 12 C 2  13  14G  C 23  C1 


 
  w3 13  14G  C1C 23 
 
  w 1 S  1  1  S   w 1  1  S 
 2 2 2 3 4G 23 3 3 4G 23 
V4G,0,0  
 
w1 12 S 2  13  14G  S 23  C1  w2 12 C 2  13  14G  C 23  S1 
  w3 13  14G  S1C 23 

 
(8.17)

In a similar manner the velocity of link-5 can also be derived and the values of the
TFs can be obtained from the corresponding velocity vectors as mentioned above.

8.4.4 Derivation of effort equation

In this section the method of derivation of the effort equations is described with the
example of a four-bar mechanism and the same procedure is applied to the robotic
manipulator. Consider the four-bar mechanism shown in Fig. 8.9(a). The mechanism
has one degree of freedom which corresponds to the rotation of link-2. The freebody
diagram is shown in Fig. 8.9(b). Figure 8.9(c) shows the corresponding bond graph in
253 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

which the artificial compliances C5, C6 and C7 are added such that all the inertial
elements of link-3 are integrally causalled and are connected to the input degree of
freedom through the TFs. This results in a situation where the derivation of the
system equations becomes straightforward and does not require the computation of
the derivatives of the TF moduli. The freebody diagram clearly indicates that four
connecting forces are to be determined for the derivation of the input torque,
model, only three pads are to be
whereas, in the case of the bond graph
considered which are connected to the generalized degrees of
freedom.

Fig. 8.9(a) Fig. 8.9(b)

Fig. 8.9(c)

The equations of motion can be derived from the bond graph shown in Fig. 8.9(c)
using the standard procedure in the following form.

 (t )  A( s , r ) X (t )  B ( s , r ) U (t )
X (8.18)
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 254
Where X(t) is the system state vector consisting of various components of link
momenta (p), and displacements (q), and U(t) is the input source vector. The matrices
A(s,r) and B(s,r) depend on the system parameters (s) and TF moduli (r).

From the bond graph of the system shown in Fig. 8.9(c) the equations can be written
directly in the matrix form as follows.

 p
1   R 0 0 0  r1 
   
 p2   0 0 0 0 1
 p
 3   0 0 0 0 0
   0 0 0 0 0
 p
 4  

q5   r1 1 0 0 0
   r
q6  2 0 1 0 0

   r3 0 0 1 0
q
 7  
(8.19)

which can be expanded as follows.

p 1  F  t   K 5  q5  r1  K 6  q6  r2  K 7  q7  r3  R   p1 / I1 (8.20)

p 2  K 5  q5 (8.21)

p 3  K 6  q6  m3 g (8.22)

p 4  K 7  q7 (8.23)

q 5   p1 / I1  r1   p2 / I 2 (8.24)

q 6   p1 / I1  r2   p3 / I 3 (8.25)

q 7   p1 / I1  r3   p4 / I 4 (8.26)

The system eqns. (8.20 through 8.26) correspond to a flexible system (C element
added). The moduli ri are functions of the angular displacement of inertia J2. The
behavior of a rigid system should be a limiting case of this system with stiffnesses
255 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

tending to infinity. Such a limiting behavior may be approached by considering the


following limiting conditions,

As (K5, K6 and K7) → ∞ (q5, q6 and q7) → 0, and ( q


5, q
 6 and q
7 ) → 0
but (K5.q5, K6.q6 and K7.q7)  finite limit

Thus the limits of K5.q5, K6.q6 and K7.q7 correspond to the generalized internal efforts.
If these limiting values are incorporated in eqns. (8.20 through 8.26) and K5.q5, K6.q6
and K7.q7 are eliminated, this leads to the desired relation between the driving effort
F(t) and the state of motion expressed in terms of the variables associated only with
the integrally causalled elements.

Substituting q 5, q 6 and q  7  0 in eqns. (8.24 through 8.26) and since r =


f ( ), rearranging and differentiating w.r.t. (t) the following equations are obtained

p 2  p 1  I 2 / I1  r1  p1  I 2 / I1  r1 (8.27)

p 3  p 1  I 3 / I1  r2  p1  I 3 / I1  r2 (8.27)

p 4  p 1  I 4 / I1  r3  p1  I 4 / I1  r3 (8.27)

Substituting these values in the eqns. (8.21 through 8.23)

K 5  q5  p 1  I 2 / I 1  r1  p1  I 2 / I1  r1 (8.30)

K 6  q6  p 1  I 3 / I 1  r2  p1  I 3 / I1  r2  m3 g (8.31)

K 7  q7  p 1  I 4 / I1  r3  p1  I 4 / I1  r3 (8.32)

Substituting them back in eqn. (8.20) and rearranging the terms with rˆi  d / d ri  
.

 
F  t   J 2  w  w m3  r12  m3  r22  J 3  r32  R  w
(8.33)
 w 2  m3  r1  rˆ1  m3  r2  rˆ2  J 3  r3  rˆ3   m3  g  r2

This is the effort equation for driving the four-bar mechanism. The details of the
expression and TFs moduli are not shown here.
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 256
For the bond graph of the robot shown in Fig. 8.8, the C elements at 0-junctions
indicate the pads (compliances) and for a five revolute joint robot eighteen such pads
are necessary to make the graph integrally causalled. The system equations in
symbolic form generated from the above bond graph by the software SYMBOLS are
given below.

 1   K 33 * TF 42 * Q33  K 34 * TF 44 * Q34  K 35 * TF 46 * Q35


P
 K 37 * TF 48 * Q37  K 38 * TF 50 * Q38  K 40 * TF 52 * Q 40
 K 41 * TF 54 * Q 41  K 24 * TF 56 * Q 24  K 26 * TF 58 * Q 26
 K 27 * TF 60 * Q 27  K 30 * TF 64 * Q30  K 32 * TF 66 * Q 26
 K 29 * TF 62 * Q 29  R 69 / M 1 * P1  SE 68 ;

 2   K 33 * TF 72 * Q33  K 34 * TF 74 * Q34  K 35 * TF 76 * Q35


P
 K 36 * Q36  K 39 * Q39  K 24 * TF 80 * Q 24
 K 25 * TF 82 * Q 25  K 26 * TF 84 * Q 26  K 27 * TF 86 * Q 27
 K 28 * TF 88 * Q 28  K 30 * TF 90 * Q30  K 29 * TF 92 * Q 29
 K 31 * TF 94 * Q31  K 32 * TF 96 * Q32  R 71 / M 2 * P 2
 SE 70 ;

 3   K 33 * TF100 * Q33  K 34 * TF102 * Q34  K 35 * TF104 * Q35


P
 K 36 * Q36  K 27 * TF107 * Q 27  K 28 * TF109 * Q 28
 K 29 * TF111 * Q 29  K 30 * TF113 * Q30  K 31* TF115 * Q31
 K 32 * TF117 * Q32  R99 / M 3 * P3  SE 98 ;

 4   K 34 * TF121* Q34  K 35 * TF123 * Q35  K 30 * TF125 * Q30


P
 K 31 * TF127 * Q31  K 32 * TF129 * Q32  R120 / M 4 * P 4
 SE119 ;

 5   K 33 * Q33  K 30 * TF 134 * Q30  K 31 * TF 136 * Q31


P
 K 32 * TF 138 * Q32  R132 / M 5 * P5  SE131 ;

 6   K 40 * Q 40  GY 173 / M 7 * P 7  GY 175 / M 8 * P8 ;
P
 7   K 41 * Q 41  GY 171 / M 8 * P8  GY 173 / M 6 * P 6 ;
P
 8   K 39 * Q39  GY 171 / M 7 * P 7  GY 175 / M 6 * P 6 ;
P
 9   K 37 * Q37  GY 154 / M 10 * P10  GY 166 / M 11 * P11 ;
P
 10   K 38 * Q38  GY 162 / M 11 * P11  GY 154 / M 9 * P9 ;
P
 11   K 36 * Q36  GY 162 / M 10 * P10  GY 166 / M 9 * P9 ;
P
 12   K 34 * Q34  GY 155 / M 13 * P13  GY 157 / M 14 * P14 ;
P
 13   K 35 * Q35  GY 153 / M 14 * P14  GY 155 / M 12 * P12 ;
P
 14   K 33 * Q33  GY 153 / M 13 * P13  GY 157 / M 12 * P12 ;
P
257 MODELING AND SIMULATION OF ENGINEERING SYSTEMS THROUGH BOND GRAPHS

 15   K 24 * Q 24 ;
P

P16   K 25 * Q 25  SE140 ;
 17   K 26 * Q 26 ;
P
 18   K 27 * Q 27 ;
P
 19   K 28 * Q 28  SE141 ;
P
 20   K 29 * Q 29 ;
P
 21   K 30 * Q30 ;
P
 22   K 31 * Q31  SE142 ;
P

P 23   K 32 * Q32 ;
 24  TF 80 / M 2 * P 2  TF 56 / M 1 * P1  1 / M 15 * P15 ;
Q
 25  TF 82 / M 2 * P 2  1 / M 16 * P16 ;
Q
 26  TF 84 / M 2 * P 2  TF 58 / M 1 * P1  1 / M 17 * P17 ;
Q
 27  TF107 / M 3 * P3  TF 86 / M 2 * P 2  TF 60 / M 1 * P1  1 / M 18 * P18
Q
;
 28  TF 109 / M 3 * P3  TF 88 / M 2 * P 2  1 / M 19 * P19 ;
Q
 29  TF111 / M 3 * P3  TF 92 / M 2 * P 2  TF 62 / M 1 * P1  1 / M 20 * P 20
Q
;
 30  TF134 / M 5 * P5  TF125 / M 4 * P 4  TF113 / M 3 * P3
Q
 TF 90 / M 2 * P 2  TF 64 / M 1 * P1  1 / M 21* P 21 ;
 31  TF136 / M 5 * P5  TF127 / M 4 * P 4  TF115 / M 3 * P 3
Q
 TF 94 / M 2 * P 2  1 / M 22 * P 22 ;
 32  TF138 / M 5 * P5  TF 66 / M 1 * P1  TF 129 / M 4 * P 4
Q
 TF 117 / M 3 * P3  TF 96 / M 2 * P 2  1 / M 23 * P 23 ;

Q33  1 / M 14 * P14  TF 42 / M 1 * P1  TF 72 / M 2 * P 2
 TF100 / M 3 * P3  1 / M 5 * P5 ;

Q34  1 / M 12 * P12  TF 44 / M 1 * P1  TF 74 / M 2 * P 2
 TF102 / M 3 * P3  TF121 / M 4 * P 4 ;

Q35  1 / M 13 * P13  TF 46 / M 1* P1  TF 76 / M 2 * P 2
 TF104 / M 3 * P3  TF 123 / M 4 * P 4 ;
 36  1 / M 11 * P11  1 / M 3 * P3  1 / M 2 * P 2 ;
Q
 37  1 / M 9 * P9  TF 48 / M 1 * P1 ;
Q
 38  1 / M 10 * P10  TF 50 / M 1 * P1 ;
Q
 39  1 / M 8 * P8  1 / M 2 * P 2 ;
Q
 40  1 / M 6 * P 6  TF 52 / M 1 * P1 ;
Q
 41  1 / M 7 * P 7  TF 54 / M 1 * P1 ;
Q

Where P is momentum and Q is displacement. Q  24 through Q  41 are the



symbolically generated equations for the pads. Substituting Q 24 through Q  41
equal to zero, the efforts associated with the pads are derived in terms of the rigid
system parameters and these are substituted in P  1 through P  5 to get the final
MECHANISMS AND MECHANICAL HANDLING SYSTEMS 258
closed form driving effort expressions. These expressions are available in the work of
Ghosh [17]. The same bond graph upto cluster 4 represents a 3 d.o.f revolute robot
without tip load. It is seen from the graph that each cluster is separately connected to
different input degrees via TFs. The effort required to drive each cluster can be
calculated separately for each joint and finally added together for a particular joint to
give the total effort. The final equations for all the five joints are single mathematical
expressions which can be broken in smaller modules providing full advantage for
parallel computation and they can be implemented very easily for on line effort
computation. The effort expressions obtained by this method have an advantage of
lesser computer overhead as compared to the existing procedures. As an example the
5 d.o.f robot effort expressions by N-E formulation need 702 multiplications and 607
additions while the present procedure needs only 512 multiplications and 282
additions. However, the principal advantage is that the closed form expressions can
be further used for the purpose of seeking parallelism by systematic organization.

You might also like