Kinematic Analysis of Mechanism by Using Bond-Graph Language
Kinematic Analysis of Mechanism by Using Bond-Graph Language
Kinematic Analysis of Mechanism by Using Bond-Graph Language
This last approach reduces the number of equations to a The concept of degrees of freedom may be defined as
number equal to the number of inertances plus the number of entries that need to be provided in order
compliances plus break variables, but it is not enough to give rise to a predictable exit. Each type of entry
for real time. required will need some kind of starter or actuator,
either in the form of a solenoid engine or hydraulic
The use of Lagrange multipliers or the introduction of cylinder. Thus, a flat rod will consist of three degrees of
break variables implies the necessity of new variables freedom.
and the appearance of constraint equations, increasing
considerably the number of involved variables and the This is why a representation of a flat rod using a Bond-
number of equations to be solved. These procedures are Graph will consist of three Inertial type ports (Ix, Iy and
very useful to obtain the system equations in a IJ).
systematic way, but they have to be improved or
modified for their use in real time simulation.
2. SIMULATION OF MECHANISMS
l1
Y 2
1
quadrilateral. Finally, we will apply the results obtained Z1 C
A Z2
to a wheel loader. X
xC2 ??
For the different examples presented the joints are Figura 3. Double pendulum
assumed ideal.
As can be seen in the figure 4, there are only two
3. DOUBLE PENDULUM degrees of freedom, those corresponding to each rod,
(3x2) less the restrictions due to each joint (2x2).
A double pendulum comprises two rods joined together,
one of them being joined by a joint at a fixed point in The Compliances situated in the extreme of the model
space. (KptoC_x and KptoC_y) are used to see the trajectory of
the point C.
Since the variables corresponding to the ports There are therefore 2 ports with integral causality and 4
associated with the angular inertia of each rod, that is, with differential causality, which means that the system
the angular displacements, appear as parameters within of equations corresponding to the double pendulum is
the different transformer elements, these ports must be formed by 2 differential equations and 4 algebraic ones
the ones that correspond to the degrees of freedom, and in the following way:
thus, have integral causality.
1 1
VI1_x( t ) L1 sin( XI1_J( t ) ) VI1_J( t ) (1) VI2_x( t ) L1 sin( XI1_J( t ) ) VI1_J( t ) L2 sin( XI2_J( t ) ) VI2_J( t ) (3)
2 2
1 1
VI1_y( t ) L1 cos( XI1_J( t ) ) VI1_J( t ) (2) VI2_y( t ) L1 cos( XI1_J( t ) ) VI1_J( t ) L2 cos( XI2_J( t ) ) VI2_J( t ) (4)
2 2
§ m2 § d VI2_x( t ) ·1 m1 § d VI1_x( t ) · · L1 sin( XI1_J( t ) )§ § g 1 § d VI1_y( t ) · · m1 § § d VI2_y( t ) ·g · m2 · L1 cos( XI1_J( t ) )
d ¨¨ ¨¨ ¸¸ ¨¨ ¸¸ ¸¸ ¨¨ ¨¨ ¨¨ ¸¸ ¸¸ ¨¨ ¨¨ ¸¸ ¸¸ ¸¸
VI1_J( t ) © © dt ¹ 2 © dt ¹¹ © © 2 2 © dt ¹¹ © © dt ¹ ¹ ¹
dt J1
(5)
1 d g 1 d
m2 L2 sin( XI2_J ( t ) ) §¨¨ VI2_x( t ) ·¸¸§¨¨ §¨¨ VI2_y( t ) ·¸¸ ·¸¸ m2 L2 cos( XI2_J ( t ) )
d 2 © dt ¹ © 2 2 © dt ¹¹
dt
VI2_J( t )
J2
(6)
As can be seen, the equations (5)-(6) obtained depend on However, if the angular variation experienced by each
the external forces, which means that since they are not rod at a particular instant is introduced, that is, if
balanced, they will originate a movement and thus a movement is applied to as many elements as there are
dynamic simulation will be had. degrees of freedom initially existing, there will only be
inertial ports with differential causality, as can be seen
in following figure.
Figura 5. Double pendulum Z1 and Z2 using a Bond-Graph.
Once the differential algebraic equations have been movements of the different stiff bodies, as is the case
obtained for the model (similar to eqs. (1)-(6)), it can be here.
seen that the position of the different elements no longer
depends on the external forces but only on the Thus, it may be stated that when dealing with a dynamic
movements imposed and the geometric relationships simulation where there are as many degrees of freedom
existing between the two rods. initially as impositions of movement, it is possible to
eliminate the inertial ports from the model along with
Reducing (Romero et al. 2005) the system of equations the external forces.
(1)-(6) to a differential one, we get:
Despite, if the same number of equations is to be
d 1
dt
XI1_x ( t ) L1 sin( XI1_J ( t ) ) w1( t )
2 (7) formulated, they must be substituted by zero value
compliance-type ports, obtaining a model similar to that
d
dt
XI1_J ( t ) w1( t ) (8) shown in figure 6. We need add to the model a zero
d 1
value port instead of null effort source because we need
dt
XI1_y ( t ) L1 cos( XI1_J ( t ) ) w1( t )
2 (9) variables into the model (angle produced by the the two
d 1
rods) and we cannot delete all the ports.
XI2_x ( t ) L2 sin( XI2_J ( t ) ) w2( t )L1 sin( XI1_J ( t ) ) w1( t ) (10)
dt 2
d The difference between the original model and this one,
XI2_J ( t ) w2( t ) (11)
dt is that although both systems generate the same final
d 1 equations, the former starts from differential algebraic
XI2_y ( t ) L2 cos( XI2_J ( t ) ) w2( t )L1 cos( XI1_J ( t ) ) w1( t ) (12)
dt 2 equations that have to be reduced to a system of
As previously stated, kinematic simulation does not take differential equations, whereas since the latter has all
account of the forces necessary to originate the the integral causality ports, the differential equations are
obtained directly.
Since the position of all the elements of the mechanism equations (eqs. (7)-(12)) to 2 differential equations (eqs
can be obtained by simply knowing the angles of each (8)-(11)).
of the rods, the ports corresponding to the horizontal
and vertical displacements can also be eliminated, Thus, the rod to be used in mechanisms having as many
thereby passing from an initial 6 differential algebraic impositions of velocity as initial degrees of freedom,
will contain only one zero value spring-type port.
do the same using the flat rod equivalent obtained in the
section above.
B l2
l1
Y
1
Z1 C
A 3
X
The introduction of this movement causes all the In the previous equation´s system Y1 and Y2 dependent
inertial-type ports to have differential causality, and variables are the flow and effort associated with the
makes it necessary to impose random causality on one intermediate graph (*) (Romero et al. 2005).
of the intermediate graphs (*), and therefore, make up a
set of differential algebraic equations (DAE): Working with the above system, we can form one made
1 up of only differential equations (ODE), which makes it
Y1 L1 cos( XI1_J( t ) ) w1( t )
2 (13) easier and quicker (sometimes) to solve:
m2 g d 1
Y2 XI1_x ( t ) L1 sin( XI1_J( t ) ) w1( t )
2 (14) dt 2 (21)
d 1 d
XI1_x ( t ) L1 sin( XI1_J( t ) ) w1( t ) XI1_J( t ) w1( t )
dt 2 (15) dt (22)
d d 1
XI1_J( t ) w1( t ) XI1_y ( t ) L1 cos( XI1_J ( t ) ) w1( t )
dt (16) dt 2 (23)
d 1 1 3
XI1_y ( t ) L1 cos( XI1_J( t ) ) w1( t ) L1 w1( t ) sin ( XI1_J ( t ) XI2_J ( t ) ) L1 w1( t ) sin ( XI1_J ( t ) XI2_J ( t ) )
dt 2 d 4 4
(17) dt
XI2_x ( t )
cos ( XI2_J ( t ) )
d sin( XI2_J( t ) ) Y1
XI2_x ( t ) L1 sin( XI1_J( t ) ) w1( t ) d L1 cos( XI1_J( t ) ) w1( t )
dt cos( XI2_J( t ) ) (18) XI2_J( t )
dt L2 cos( XI2_J( t ) ) (25)
d 2 Y1
XI2_J( t ) d 1
dt L2 cos( XI2_J( t ) ) (19) XI2_y ( t ) L1 cos( XI1_J( t ) ) w1( t )
dt 2 (26)
d
XI2_y ( t ) L1 cos( XI1_J( t ) ) w1( t )Y1
dt (20) If we look closely at the initially formed DAE system
(13)-(20), we can see how the term corresponding to the
weight of the second rod appears, while in the ODE
system obtained (21)-(26) on reducing it, it does not For this reason, since no external force influences the
appear. This shows that although the external force is movement of the mechanism, it is possible to substitute
included in the differential algebraic equations, it is the initial rods by those obtained in point 3, where only
really not necessary and in no way affects the final the ports corresponding to the angular displacement of
solution, whether it appears or not. the rods appear.
As with the initial model, causality needs to be imposed This same approach will be used for the following
randomly on one of the intermediate graphs (*). To the mechanism.
contrary, all the ports that appear have integral causality
and therefore the system of equations is formed by 1 5. ARTICULATED QUADRILATERAL
algebraic equation and 2 differential equations instead
of the previous 8 differential algebraic equations. An articulated quadrilateral is a mechanism where three
1 rods are integrated by means of two joints, the
Y7 L1 cos( XI1_J ( t ) ) w1( t )
2 (27) remaining points being joined at fixed points in space.
d l2
XI1_J( t ) w1( t )
dt (28) 2
d 2 Y7 C
XI2_J( t )
dt L2 cos( XI2_J( t ) ) (29) B
l3
3
l1
1
Once the above equations have been operated with one Y Z1
other, it can be seen that the two differential equations
thus formed (30),(31) correspond to those obtained on A D
X
reducing the DAE system to ODE (22),(25), and therefore
it can be concluded that both Bond-Graph models d
1 L1 w1( t ) cos( XI1_J ( t )XI3_J( t )XI2_J ( t ) )L1 w1( t ) cos( XI1_J( t )XI3_J ( t )XI2_J( t ) )2 L1 w1( t ) cos( XI1_J( t )XI3_J ( t )XI2_J( t ) )
Y0
4 sin( XI3_J ( t )XI2_J( t ) ) (32)
( m3 gm2 g ) ( sin( 2 XI2_J( t )XI3_J( t ) )sin( 2 XI2_J( t )XI3_J( t ) ) )
Y1
4 cos( 2 XI2_J( t )XI3_J( t ) )4 cos( XI3_J( t ) ) (33)
1 L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )
Y2
4 sin( XI3_J( t )XI2_J( t ) ) (34)
3 m3 g m2 g 1 ( m3 gm2 g ) sin( XI3_J( t )XI2_J( t ) )
Y3
4 4 4 sin( XI3_J( t )XI2_J( t ) ) (35)
d 1
XI1_x ( t ) L1 sin( XI1_J( t ) ) w1( t )
dt 2 (36)
d
XI1_J( t ) w1( t )
dt (37)
d 1
XI1_y ( t ) L1 cos( XI1_J ( t ) ) w1( t )
dt 2 (38)
d 2 sin( XI3_J( t ) ) Y2
XI2_x ( t ) L1 sin( XI1_J( t ) ) w1( t )Y0
dt cos( XI3_J( t ) ) (39)
d 2 Y0 4 sin( XI3_J( t ) ) Y2
XI2_J( t )
dt L2 sin( XI2_J( t ) ) cos( XI3_J( t ) ) L2 sin( XI2_J( t ) ) (40)
d cos( XI2_J( t ) ) Y0 2 sin( XI3_J( t ) ) cos( XI2_J( t ) ) Y2
XI2_y ( t ) L1 cos( XI1_J( t ) ) w1( t )
dt sin( XI2_J( t ) ) cos( XI3_J( t ) ) sin( XI2_J( t ) ) (41)
d sin( XI3_J( t ) ) Y2
XI3_x ( t )
dt cos( XI3_J ( t ) ) (42)
d 2 Y2
XI3_J( t )
dt L3 cos( XI3_J( t ) ) (43)
d 2 cos( XI2_J( t ) ) Y0 § 4 sin( XI3_J( t ) ) cos( XI2_J( t ) ) ·
XI3_y ( t ) L1 cos( XI1_J( t ) ) w1( t ) ¨¨ 1 ¸ Y2
dt sin( XI2_J( t ) ) © cos( XI3_J( t ) ) sin( XI2_J( t ) ) ¸¹
(44)
As can be seen, the system of equations formed (32)-(44) tedious, which makes a real time simulation
is much more complex than for the previous model (13)- unapproachable.
(20), without having introduced anything other than one
rod and one restriction. As was to be expected, as the On operating the different equations (32)-(44) with one
number of rods and restrictions increases, the system of another in order to get a system of differential
equations formed is ever more complicated and equations, we obtain:
d 1
XI1_x ( t ) L1 sin( XI1_J( t ) ) w1( t )
dt 2 (45)
d
XI1_J( t ) w1( t )
dt (46)
d 1
XI1_y ( t ) L1 cos( XI1_J( t ) ) w1( t )
dt 2 (47)
d 1 ( cos( XI1_J( t )XI3_J( t )XI2_J( t ) )cos( XI1_J( t )XI3_J( t )XI2_J( t ) )2 cos( XI1_J( t )XI3_J( t )XI2_J( t ) ) ) w1( t ) L1
XI2_x ( t )
dt 4 sin( XI3_J( t )XI2_J( t ) ) (48)
d L1 sin( XI1_J( t )XI3_J( t ) ) w1( t )
XI2_J( t )
dt L2 sin( XI3_J( t )XI2_J( t ) ) (49)
d 1 ( sin( XI1_J ( t )XI3_J ( t )XI2_J ( t ) )2 sin( XI1_J ( t )XI3_J ( t )XI2_J ( t ) ) sin( XI1_J ( t )XI3_J ( t )XI2_J ( t ) ) ) w1( t ) L1
XI2_y ( t )
dt 4 sin( XI3_J ( t )XI2_J ( t ) ) (50)
d 1 L1 w1( t ) cos( XI1_J( t )XI3_J( t )XI2_J( t ) )L1 w1( t ) cos( XI1_J( t )XI3_J( t )XI2_J( t ) )
XI3_x ( t )
dt 4 sin( XI3_J( t )XI2_J( t ) ) (51)
d L1 sin( XI1_J( t )XI2_J( t ) ) w1( t )
XI3_J( t )
dt L3 sin( XI3_J( t )XI2_J( t ) ) (52)
d 1 L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )
XI3_y ( t )
dt 4 sin( XI3_J( t )XI2_J( t ) )
(53)
If we apply the previously obtained rod equivalent, the As with the traditional case, causality must be
model formed will only comprise spring ports with introduced on two of the intermediate graphs(*), which
integral causality that will generate differential will generate algebraic equations.
equations.
The system of equations thus formed, will comprise two algebraic equations and three differential equations:
1 L1 w1( t ) cos( XI1_J( t )XI3_J( t )XI2_J( t ) )L1 w1( t ) cos( XI1_J( t )XI3_J( t )XI2_J( t ) )2 L1 w1( t ) cos( XI1_J( t )XI3_J( t )XI2_J( t ) )
Y3
4 sin( XI3_J( t )XI2_J( t ) ) (54)
1 L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )L1 w1( t ) sin( XI1_J( t )XI3_J( t )XI2_J( t ) )
Y5
4 sin( XI3_J( t )XI2_J( t ) ) (55)
d
XI1_J( t ) w1( t )
dt (56)
d 4 Y3 sin( XI3_J( t )XI2_J( t ) )4 Y3 sin( XI3_J( t )XI2_J( t ) )8 Y5 cos( XI3_J( t )XI2_J( t ) )8 Y5 cos( XI3_J( t )XI2_J( t ) )
XI2_J( t )
dt 2 L2 cos( XI3_J( t ) )L2 cos( 2 XI2_J( t )XI3_J( t ) )L2 cos( 2 XI2_J( t )XI3_J( t ) ) (57)
d 2 Y5
XI3_J ( t )
dt L3 cos( XI3_J( t ) )
(58)
Operating the above equations with one another, we’ve:
d
XI1_J( t ) w1( t )
dt (59)
d L1 sin( XI1_J( t )XI3_J( t ) ) w1( t )
XI2_J( t )
dt L2 sin( XI3_J( t )XI2_J( t ) ) (60)
d L1 sin( XI1_J( t )XI2_J( t ) ) w1( t )
XI3_J( t )
dt L3 sin( XI3_J( t )XI2_J( t ) ) (61)
As we have seen, in these previous mechanisms, ones
with as many velocity sources as initial degrees of
freedom, the angular variation of each rod (59)-(61) may
be obtained more quickly and effectively simply by
using the rod in question, since the complexity and
number of equations resulting from the model is
reduced.
Figure 14. Wheel loader mechanism.
8. BIBLIOGRAPHY
Figure 20. Path drawn by the end of the bucket Félez, J. et al. 2000. “Deriving simulation models from
bond graphs with algebraic loops. The extension to
This figure shows how the end descends from its initial multibond graph systems”. Journal of the Franklin
position (A) to a point located lower down (B), it is then Institute. Vol. 337 , pp.579-600.
tilted (F), partly to place the bucket horizontally, and Félez, J. et al. 1990. “Bondyn: A Bond Graph based
partly to hold the material loaded. It is then raised in simulation program”. Trans. ASME. J. Dyn. Syst.
order to unload the bucket (H) and after tilting, it is Measurement and Control. Vol.112 , pp.717-727.
moved to a point located lower down, (J). Once the
material has been unloaded, the bucket returns to a Gawthrop, P.J. and Smith, L.S. 1992. “Causal
position near to its original one after its tilting (M) and augmentation of Bond Graphs with algebraic loops”.
its descent (N). J. of the Franklin Institute. Vol. 329, No.2, pp.291-
303.