m.sc.thesis mathematical modeling for marine crane operations
Post on 15-Feb-2022
3 Views
Preview:
TRANSCRIPT
NTNU
Norwegian University of Science and Technology
Department of Marine Technology M.Sc.THESIS
Address:
NTNU
Department of Marine Technology
N-7491 Trondheim
Location
Marinteknisk Senter
O. Nielsens vei 10
Tel. +47 73 595501
Fax +47 73 595697
Title:
Mathematical Modeling for Marine
Crane Operations
Student:
Christian Fagereng
Delivered:
Number of pages:
96
Availability:
Bond Graph
Multibody dynamics
Eilif Pedersen
Advisor: Keyword:
Description:
Mathematical models for marine vessel dynamics including environmental loads is frequently used in many
applications. Extending these models to include propulsion machinery, deck machinery, large cranes or
other equipment used for marine operations or in operation simulators it is important for efficient model
development to have a clear understanding of how the interfaces have to be designed to facilitate
connection of models. The bond graph representation or modeling methodology focuses on the model
structure and properties required for connecting sub-models into large hybrid model and therefore may
serve as a language for analysis of model structure in such a sense.
i
Assignment
The work description and scope of work for this master thesis has been the same as for the project
work in marine machinery carried out in the fall semester 2010, ref. (Fagereng, 2010). Thus the
assignment below is a direct quote of the assignment for the project work. The entire text can be
viewed in appendix.
Work description
Mathematical models for marine vessel dynamics including environmental loads is frequently used in many
applications. Extending these models to include propulsion machinery, deck machinery, large cranes or other
equipment used for marine operations or in operation simulators it is important for efficient model
development to have a clear understanding of how the interfaces have to be designed to facilitate connection of
models. The bond graph representation or modeling methodology focuses on the model structure and
properties required for connecting sub-models into large hybrid model and therefore may serve as a language
for analysis of model structure in such a sense.
This representation has been used in the Energy Efficient - All Electric Ship project and in a PhD-thesis where a
model library was developed. The work here is a continuation of these attempts and the objective is to increase
the number and further develop the models in this library.
Scope of work:
1. Review the modeling and models of Marine Vessel Dynamics. Implement a simplified bond graph template model for a surface vessel for crane operations.
2. Review the modeling and models of large marine cranes for marine operations including typical heave compensation systems, the hydraulic winches and the control of this equipment. Discuss the structure or modular design of these hybrid models and suggest a method or implementation of these model into a modular component model library.
3. Combine the crane model developed and the vessel dynamic model into a complete model of a barge with a large crane for marine operations. Suggest a specific operation and demonstrate the capabilities of the developed model as a software simulator. For demonstration purposes include a Joy-stick for manned operation and develop a simplified animation displaying the motions of the barge and crane.
The report shall be written in English and edited as a research report including literature survey, description of
mathematical models, description of control algorithms, simulations results, discussion and conclusion
including a proposal for further work. Source code in Matlab/Simulink or equivalent shall be provided on a CD
with code listing enclosed in appendix.
ii
iii
Abstract
As mathematical models for marine vessel dynamics are frequently used for several different
purposes there is a need for finding ways of facilitating connection of sub models to extend these
models to include various equipment of interest which affects the vessel dynamics. The bond graph
modeling language is a natural platform for this since it can be used to describe several different
disciplines or energy domains using the same basic system elements. Thus for example electrical
systems affecting mechanical systems can easily be modeled and connected.
However the basic bond graph modeling concept has to be extended for use in multi-dimensional
problems since standard procedures soon become difficult or impossible for larger systems. Using
rigid body dynamics such systems can easily be created and incorporated with vessel dynamic
equations. Rigid body bond graph can also be used to develop models of various other equipment.
But when connecting several such systems together rigidly, causality problems will arise. The solution
is to use the mathematical equivalent to a stiff spring in between the rigid bodies, thus the
connection will not be entirely rigid.
In this thesis the development of such multi-dimensional bond graph has been research. A model for
a simplified barge has been developed. It is clear that such models has great potential, but as with all
other mathematical models of marine vessel dynamics accurate simulation results rely on accurate
hydrodynamic coefficients which can be hard to derive.
Using the same procedure for multi-dimensional bond graph as for vessel modeling it is possible
derive a model representing a pendulum. Which with some modification such as actuators represent
a crane beam. Using three dimensional bond graph joints based on the concept of stiff springs to
connect several such models a crane model is developed. The model is tested and it is found that the
stiff springs in the connections may induce high vibrational natural frequencies which can affect
simulation time. For such problems damping in the joint may be adopted.
The barge model and the crane model are interfaced using bond graph joints and it is shown that the
movement of the crane indeed will induce forces on the barge as expected. This proves that 6DOF
systems (six degrees of freedom) for several different mechanical component can be interfaced and
facilitate the modeling of marine vessel dynamics and the connection of sub systems. Thus an
efficient way of modeling such systems has been achieved.
To demonstrate the simulation result of the models developed in the thesis animations have been
generated and is included in the attached CD.
iv
v
Acknowledgments
This master thesis is the result of the studies in the spring semester 2011 at the Norwegian University
of Science and Technology, Department of Marine Technology. The work represents the entire
student work load this semester.
I would like to thank associate professor Eilif Pedersen for formulating the thesis and for guidance
and support during this semester. I have found the task given challenging, hard and almost
impossible at times. Yet surprisingly comprehensible as theory, models and model code finally came
together and worked as intended. Thus proving that modeling really is an art best learned through
experience.
The master thesis has been a continuation of a project work in marine machinery fall 2010 which
accounted for ¼ of the work load last semester. The work description and scope of work has been
similar for the two projects. Last semester suggestion for a vessel model and a two dimensional
simplified crane was derived, the models where not functional as intended and the connection
between them only briefly discussed. This semester the research done has been more thorough, the
theory better understood and all models built up from the ground up to function in a three
dimensional environment using new background material. The facilitation of the connection of the
models has also been solved.
The original scope has been slightly narrowed down. Since modeling of hydraulic actuator where
discussed in the previous assignment this has been omitted and only the connection of such models
discussed. The demonstration of the complete model as a software simulator with joystick has also
been omitted. This has been done in consultation with Eilif Pedersen.
------------------------------------------------------------------------------------------
Christian Fagereng
Trondheim, June 29, 2011
vi
vii
Contents
Assignment ............................................................................................................................................... i
Abstract ................................................................................................................................................... iii
Acknowledgments .................................................................................................................................... v
Contents ................................................................................................................................................. vii
Table of figures ........................................................................................................................................ xi
Table of simulation plots ....................................................................................................................... xiii
Table of tables ........................................................................................................................................ xv
1. Introduction ..................................................................................................................................... 1
1.1 Problem and motivation .......................................................................................................... 1
1.2 Organization of thesis .............................................................................................................. 1
1.3 Literature ................................................................................................................................. 2
2. Mechanical Bond graph modeling ................................................................................................... 3
2.1 Bond graphs ............................................................................................................................. 3
2.2 Multibody dynamics ................................................................................................................ 3
2.2.1 A basic procedure ............................................................................................................ 4
2.2.2 Lagrange/Hamilton IC-field modeling ............................................................................. 6
3. Rigid Body and multidimensional dynamics .................................................................................. 11
3.1 Rigid body equations ............................................................................................................. 11
3.2 The concept of rigid body position and rotation ................................................................... 15
3.2.1 Rotational matrixes ....................................................................................................... 15
3.2.2 Euler Angles ................................................................................................................... 18
3.2.3 Implementation in vector bond graphs ......................................................................... 19
4 The crane model ............................................................................................................................ 21
4.1 Rigid body beam .................................................................................................................... 21
4.2 Connection of rigid body bond graph models ....................................................................... 23
4.2.1 Causality problem ................................................................................................................. 23
4.2.2 Joints .............................................................................................................................. 24
Spherical joints .......................................................................................................................... 24
Revolute joints ........................................................................................................................... 25
Prismatic joints .......................................................................................................................... 26
4.3 Constructing a multi rigid body bond graph model .............................................................. 27
4.3.1 Rigid body beam with revolute joint and rotation around y-axis ................................. 27
viii
4.3.2 Rigid body beam with spherical joint ............................................................................ 31
4.3.3 Two link planar arm ....................................................................................................... 34
4.4 The realistic crane beam ....................................................................................................... 37
4.4.1 Control and actuators .................................................................................................... 37
4.4.2 Energy dissipation ......................................................................................................... 40
4.4.3 Actuators and energy dissipation in the two link planar arm ....................................... 41
4.5 Discussion of high vibrational natural frequencies ............................................................... 42
4.5.1 Simulation time and model behavior ............................................................................ 42
4.5.2 Experimentation on damping in joint ............................................................................ 48
5 Vessel model ................................................................................................................................. 53
5.1 Motion equation ...................................................................................................................... 53
5.2 Added mass and inertia ......................................................................................................... 54
5.3 Hydrodynamic damping ........................................................................................................ 55
5.4 Restoring forces ..................................................................................................................... 55
5.5 Implementation in general rigid body bond graph model .................................................... 57
5.6 Simulation demonstration with rigid body vessel model ...................................................... 58
Comment on vessel model ........................................................................................................ 59
6 Barge with two link planar arm, a complete model ...................................................................... 63
7 Conclusion and further work ......................................................................................................... 67
7.1 conclusion .............................................................................................................................. 67
7.2 Crane model .......................................................................................................................... 67
7.3 Vessel model ......................................................................................................................... 67
7.4 The Crane Barge .................................................................................................................... 68
7.5 Further work .......................................................................................................................... 68
Bibliography ........................................................................................................................................... 69
Appendix A ............................................................................................................................................ 71
Contents of attached CD ................................................................................................................... 71
Appendix B ............................................................................................................................................ 73
20-sim code ....................................................................................................................................... 73
Lagrange/Hamilton IC-field ........................................................................................................... 73
Vector IC-field ................................................................................................................................ 74
Transformer element .................................................................................................................... 75
Appendix C............................................................................................................................................. 77
Added mass coefficients, DNV-RP-H103, April 2009 ..................................................................... 77
ix
Appendix D ............................................................................................................................................ 81
Project assignment fall 2010 ............................................................................................................. 81
x
xi
Table of figures
Figure 1: Mass-spring example ................................................................................................................ 4
Figure 2: Mass-spring 1-junctions ........................................................................................................... 6
Figure 3: Mass-spring bond graph ........................................................................................................... 6
Figure 4: Two link planar arm .................................................................................................................. 8
Figure 5: Two variable IC-field ............................................................................................................... 10
Figure 6: Two link planar arm bond graph ............................................................................................ 10
Figure 7: Rigid body in space ................................................................................................................. 11
Figure 8: Vector IC-field ......................................................................................................................... 15
Figure 9: Rigid Body position and roation ............................................................................................. 15
Figure 10: Euler angle XYZ transformation ............................................................................................ 19
Figure 11: Rigid Body bond graph ......................................................................................................... 20
Figure 12: Beam with local coordinate system ..................................................................................... 21
Figure 13: Crane beam bond graph ....................................................................................................... 22
Figure 14: Derivative causality .............................................................................................................. 23
Figure 15: Complete casaulity ............................................................................................................... 24
Figure 16: Spherical joint ....................................................................................................................... 24
Figure 17: Spherical joint bond graph ................................................................................................... 25
Figure 18: Revolute joint ....................................................................................................................... 25
Figure 19: Revolute Joint bond graph ................................................................................................... 26
Figure 20: Prismatic joint ....................................................................................................................... 26
Figure 21: Prismatic joint bond graph ................................................................................................... 27
Figure 22: Pendulum bond graph .......................................................................................................... 28
Figure 23: Pendulum animation ............................................................................................................ 30
Figure 24: Beam with spherical joint ..................................................................................................... 31
Figure 25: Animation of beam with spherical joint and force in two directions ................................... 33
Figure 26: Two link planar arm bond graph .......................................................................................... 34
Figure 27: Animation two link planar arm ............................................................................................. 36
Figure 28: Actuators on crane beam ..................................................................................................... 37
Figure 29: Joint actuator bond graph .................................................................................................... 38
Figure 30: Animation of joint actuator .................................................................................................. 38
Figure 31: Perpendicular actuator bond graph ..................................................................................... 39
Figure 32: Global actuator bond graph ................................................................................................. 39
Figure 33: Real actuator bond graph ..................................................................................................... 40
Figure 34: Energy dissipation in joint bond graph ................................................................................. 40
Figure 35: Energy dissipation in actuator bond graph .......................................................................... 41
Figure 36: Two link planar arm with actuator and energy dissipation.................................................. 41
Figure 37: Simulation time vs. beams connected ................................................................................. 43
Figure 38: Simulation time vs. spring constant ..................................................................................... 47
Figure 39: Time step vs. spring constant ............................................................................................... 47
Figure 40: Two link planar arm with damping in joints ......................................................................... 48
Figure 41: Simulation time vs. spring constant (damping in joint) ....................................................... 52
Figure 42: Vessel stability (Fossen, 1994).............................................................................................. 56
xii
Figure 43: Vessel bond graph ................................................................................................................ 57
Figure 44: Barge animation ................................................................................................................... 61
Figure 45: Complete crane barge bond graph....................................................................................... 63
Figure 46: Complete crane barge bond graph....................................................................................... 64
Figure 47: Barge animation under influece of crane ............................................................................. 65
xiii
Table of simulation plots
Simulation plot 1: : Pendulum, constrained end ................................................................................... 29
Simulation plot 2: Pendulum, unconstrained end ................................................................................ 29
Simulation plot 3: Beam with spherical joint, constrained end ............................................................ 31
Simulation plot 4: Beam with spherical joint, unconstrained end ........................................................ 32
Simulation plot 5: Beam with spherical joint and force in two directions, constained end ................. 32
Simulation plot 6: Beam with spherical joint and force in two directions, unconstained end ............. 33
Simulation plot 7: Two link planar arm, arm one, constrained end ...................................................... 35
Simulation plot 8: Two link planar arm, arm one, unconstrained end ................................................. 35
Simulation plot 9: Two link planar arm, arm two, constrained end...................................................... 36
Simulation plot 10: High vibrational natural frequencies ..................................................................... 42
Simulation plot 11: High vibrational natural frequencies zoomed in ................................................... 42
Simulation plot 12: Two link planar arm and spring constant .................................................... 44
Simulation plot 13: Two link planar arm and spring constant ................................................... 44
Simulation plot 14: Two link planar arm and spring constant ................................................... 45
Simulation plot 15: Two link planar arm and spring constant ................................................... 45
Simulation plot 16: Two link planar arm and spring constant ................................................... 46
Simulation plot 17: Two link planar arm and spring constant ................................................... 46
Simulation plot 18: Two link planar arm and spring constant and damping ............................. 49
Simulation plot 19: Two link planar arm and spring constant and damping ............................. 49
Simulation plot 20: Two link planar arm and spring constant and damping ............................. 50
Simulation plot 21: Two link planar arm and spring constant and damping ............................. 50
Simulation plot 22: Two link planar arm and spring constant and damping ............................. 51
Simulation plot 23: Two link planar arm and spring constant and damping ............................. 51
Simulation plot 24: Barge motion ......................................................................................................... 59
Simulation plot 25: Barge motion with torque and low hydrodynamic damping ................................ 60
Simulation plot 26: Barge motion with torque and high hydrodynamic damping ............................... 60
Simulation plot 27: Barge motion under influece of crane ................................................................... 64
Simulation plot 28: Barge motion under influece of crane and load .................................................... 65
xiv
xv
Table of tables
Table 1: Sumulation data for increasing number of beams .................................................................. 43
Table 2: Simulation data for increasing spring constant ....................................................................... 47
Table 3: Simulation data with damping in joint .................................................................................... 51
Table 4: Vessel notation ........................................................................................................................ 54
Table 5: Vessel data ............................................................................................................................... 58
xvi
1
1. Introduction
1.1 Problem and motivation The bond graph language is a powerful way of creating models over several different energy domains
alone or in a combination. With the implementation of modern computer software as 20-sim the
user has an efficient way of designing and analyzing the dynamic behavior of a bond graph system.
However for large systems, which include several different sub systems, it is clear that one has to
have some understanding on how to facilitate connection of models for efficient model
development. As with most large problems the most efficient way of solving them is dividing the
problem into several different sub problems. When it is time to solve the large overall problem all
sub problems has to be developed in such a way that they can easily be interfaced together. This is
especially true in mathematical models of marine vessel dynamics where a large number sub systems
as deck machinery, cranes and other equipment is to be considered in the overall model.
The focus in this thesis has been to research and develop efficient ways of modeling marine crane
operations using bond graphs. Such problems are complicated in that they have a large number of
degrees of freedom and a large number of rigidly connected parts; both difficult to handle efficiently
in mathematical problems. Often such systems may be modeled using equations and matrixes taken
into account all the degrees of freedom of an overall system, as in (Nielsen, 2007) where the result is
large matrix systems which do not facilitate implementation of other sub systems at a later stage. In
basic bond graph modeling only a few degrees of freedom may compromise the ease of model
development, however by combining rigid body dynamics and multi-dimensional power bonds a
relatively easy and graphical neat solution for a 6DOF system (six degrees of freedom) presents itself.
It turns out that also the rigid connection of several such models can be solved, thus opening up
possibilities for efficiently creating systems with a large number of sub systems attached and a large
overall number of degrees of freedom.
1.2 Organization of thesis To demonstrate such modeling procedures and in line with the assignment basic models for marine
vessels and cranes are developed in this report. First the classic ways of modeling multi-dimensional
systems are presented and the problems with such procedures discussed and demonstrated. Then
the theory behind rigid body dynamics and the implementation into easy graphical bond graphs will
be introduced and a step by step process of modeling marine crane vessel follows. Presentations of
simulations and animations results to confirm the feasibility of the models are done after each sub
model development. Also presented are discussions on simulation time and the rigid connection
between models. For some of the more complicated models interpreting the simulation results from
simulation plots are almost impossible, and the reader is referred to the animations attached on CD.
2
The thesis can be interpreted as a continuation or as an academic exercise following the multibody
chapters in both (Pedersen & Engja, 2008) and (Karnopp, Margolis, & Rosenberg, 2006) where rigid
body dynamics are presented and the connection of these briefly discussed but not demonstrated.
As one advantage of bond graph modeling using computers is the ability to produce mathematical
models with a minimum usage of code the models developed in this thesis tries to follow this
concept.
1.3 Literature Material for rigid body bond graphs has mainly been taken from (Pedersen & Engja, 2008) and
(Karnopp, Margolis, & Rosenberg, 2006). Additional inspiration and understanding of translation and
rotation of rigid bodies has been found in (Sciavicco & Siciliano, 1999). Material for vessel dynamics
has been found in (Fossen, 1994) with support from (Pedersen, Bond Graph Modelling of Marine
Vehicle Dynamics). Material on bond graph joints has been found in (Filippini, Delarmelina, Pagano,
Alianak, Junco, & Nigro, 2007) and in (Karnopp, Margolis, & Rosenberg, 2006). In addition inspiration
has been found in (Zied & Chung, 1992), (Gilberto & Padilla, 2010), (Nielsen, 2007) and (Berg, 2007).
3
2. Mechanical Bond graph modeling
2.1 Bond graphs In this thesis the tool for mathematical modeling of marine crane operation is the bond graph
language or method. The bond graph method can be defined as a unified conceptual and operational
framework for the study of a very wide variety of system types and thus provides a general paradigm
for modeling of dynamic systems based upon energy and power flow (Pedersen & Engja, 2008).
It is assumed that the reader has some basic knowledge of the bond graph concept, still it may be
useful to list the main advantages which makes this method so useful. As described in (Pedersen &
Engja, 2008):
The same symbolism is used to represent the power interaction in a large selection of
physical systems.
On a graphical form bond graphs display the energetic structure of complex systems with
several energy domains in a way which is close to what we may call the physics of the
system.
A physical based sign convention can be shown directly on the graph, which is important
when interpreting numerical results from simulations.
The method is equally applicable for linear and non-linear systems.
A unique feature of bond graphs is the display of causality on the graph. That is, it indicates
which variable for an element is the independent variable or input and which variable is
dependent or output variable.
The bond graph method gives an algorithmic procedure for converting the graph into
mathematical equations
It can be directly entered and processed by a computer.
It follows that bond graphs combined with computer implementation is a very powerful tool for
modeling and simulation of dynamic systems, especially for modeling of marine related topics where
so many different engineering subjects are combined to make up a complete system. It be electrical,
mechanical, hydraulic or even thermodynamic. In the next chapters the focus will be on researching
and developing the mechanical side of large marine systems. The building blocks for larger
mechanical 6DOF (six degrees of freedom) systems will be established as the modeling of such
systems can be quite challenging using basic modeling procedures. The goal is to show how bond
graphs can be used for modeling marine vessels coupled with different systems affecting the total
dynamics.
2.2 Multibody dynamics While there in general exists simple procedures to guide one through the modeling of systems in
several different energy domains, some subjects needs further investigation and development to
make them applicable to modeling of real world systems. Mechanical systems are one of them. The
mechanical system often involves a large number of different parts moving relative to one another
introducing several different efforts, flows, momentums and displacements.
4
This complicates the model, especially if the system operates in a 3D world where each velocity has a
x, y and z component. We know that even small problems can experience differential causality and
algebraic loops which can be solved fairly easy. However for large systems these methods are not
practical and it is often better to avoid the problems in the first place. All in all both complexity and
general bond graph modeling problems make the standard modeling approach to mechanical
systems practically impossible to employ.
In the following chapter the concept of rigid body dynamics will be introduced. This concept enables
the modeling of larger multidimensional mechanical systems with relative ease. First I will
demonstrate a standard procedure for modeling multidimensional mechanics presented both in
(Pedersen & Engja, 2008) and (Karnopp, Margolis, & Rosenberg, 2006). Then I will introduce the
Lagrange/Hamilton IC-field modeling concept which offers a potential easier way of achieving
mechanical models. Then I will introduce the general rigid body equations in 6DOF and show how
these equations actually can be represented in a modified IC-field.
2.2.1 A basic procedure For the general bond graph the aim is to create first order differential equations representing the
dynamics of the system. Though it is possible to derive bond graphs for simple mechanical systems
by inspection or using a basic system construction method, the modeling of more complex and
realistic systems without a more thorough procedure soon becomes difficult. Skipping the some
background equations and discussions a basic procedure for development of such mechanical bond
graph systems follows. To illustrate the procedure it will be presented with a standard mass-spring
example also presented in (Pedersen & Engja, 2008) and (Karnopp, Margolis, & Rosenberg, 2006).
The example concerns a mass in one end of a pendulum suspended from a spring.
Figure 1: Mass-spring example
5
Start by defining a set of generalized variables and their derivatives:
, -
, - .
is called the kinematic displacement vector or generalized coordinate vector. This is a vector
preferable containing as few coordinate variables as possible to describe the position of the inertia
elements.
Define potential energy variables, i.e. variables in the system that changes the potential energy. In
this case the spring.
, -
, -
Define the inertia variables i.e. variables defining the movement of the inertia element.
, - , -
, -
The next step is to establish the transformation relationship between the generalized variables. For
general and the relation is
( )
( )
( ) ,
and the ith relation is
∑
.
This gives the relation
( ) ( ) ,
( ) ( ) ,
and
, - .
A similar relation is established between , and . Now we define , which gives
( )
( ) ,
and the ith relation
∑
.
6
Which leads to
( ) ( ) ,
( ) ( ) ,
and
0
1 .
Now that all the variables are stated and the relationships between them have been established, the
bond graph can be drawn. Write down the 1-junctions corresponding to , and .
Figure 2: Mass-spring 1-junctions
We now write down the transformations using MTF- elements and 1-junctions. An R-element
representing friction and an Se- element representing gravity is also added.
Figure 3: Mass-spring bond graph
This concludes the short walkthrough of the standard procedure.
2.2.2 Lagrange/Hamilton IC-field modeling Though the procedure above works for solving multidimensional mechanical problems it offers no
solution to algebraic loops and differential causality problems which will appear if the problems
involve more than one rigidly connected inertia. It is left to the engineer to solve these in the
traditional way.
1
y_d_k
1
y_d_c
1
y_d
1
x_d
1
alpha_d_k
SeR
0
00 1
y_d_k1
1
y_d_c1
1
y_d1
1
x_d1
MTF
zero_
MTF
minus_L_sin_alpha
MTF
L_cos_alpha
MTF
one_
MTF
zero
MTF
one
I
IC
C
1
alpha_d_k1
7
An alternative is to use Lagrange formulation to generate the equations of motions for the coupled
displacements in the system and then implementing these into the bond graph using an IC-field.
Since the bond graph method actually is about generating equations of motions the
Lagrange/Hamilton IC-field procedure can be interpreted as writing down the motion equations for
the difficult part of the system, i.e. the part generating the causal problems, and then solving them
with bond graphs.
As for the general method presented the Lagrange/Hamilton is based on a set of generalized
coordinates defined in the system. The goal is to express the kinetic energy ( ) and the
potential energy ( ) of the system. These can be used to write the equation of motion using the
Lagrange equation
(
) (
)
Where is the generalized coordinate, is the derivative and N is the number of generalized
coordinates.
For implementation in bond graphs we define the generalized momentums as
When writing out the generalized momentums it will always take the following general form (matrix
notation)
( ) ( )
Solving for gives the expression for the rate of change of generalized displacement.
( )( )
The ( )term is zero unless we have time varying velocity sources. We can rewrite the Lagrange
equation with regard to the derivative of the momentum as
(
)
Then define
and we get
Which in matrix form is written
( )
8
Now observe that the rate of change of generalized momentum and displacement is the same
quantities which we search for when writing state equations from bond graphs, i.e. we have found
the state equations for the part of the system we wanted to avoid modeling with the standard
approach.
For implementation in bond graphs we define the IC element with 2N ports. One power-in port p{i}I
corresponding to the generalized displacement and one power-out port p{i}C corresponding to the
generalized momentum. Causality is preferred to be flow out in the I-port and flow in on the C-port.
The displacements rates are assigned in the IC-field to the flow. In the same way the momentum rate
are assigned to the effort.
As always theory and procedure are best illustrated with an example. The following example was
originally solved for the project thesis written fall 2010, (Fagereng, 2010).Consider the two-link
planar arm whit center of mass in the geometrical center of each arm. The two arms rigidly
connected results in differential causality when the standard modeling approach is used. We want to
describe the motion of the systems with as few variables as possible and it is convenient to use the
two angles between the ground and arm one, and between arm one and arm two.
Figure 4: Two link planar arm
First we derive the expression for the kinetic and potential energy of the system with respect to
and by inspection.
(
)
(
)
9
Where
,
,
,
.
We then differentiate the kinetic energy with respect to and .
[ ( ) ( ) ( ) ( ) ( ) ( ) ]
( ) ( )
( ) ( ) ( )
( )
Then differentiate both kinetic- and potential- energy with respect to and .
[ ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ]
[ ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )]
( )
( )
We can now generate the system matrixes.
0
1 [
, ( ) ( )-
, ( ) ( ) ( ) ( )-
( ) ( )
( ) ( )
( )
( )
] [
] 0 1
Which gives
[
] 0
1
and
[
]
[
]
10
The system Lagrange/Hamilton equations can then be programmed in an IC field with two sets of in-
and out- ports from two one-junctions representing each generalized coordinate. The IC-field code
can be viewed in appendix.
Figure 5: Two variable IC-field
In this case there are no external forces acting on the two arms. Though such forces can be written in
to the IC-field, as stated by the above equations, such forces are much easier added to the bond
graph at a later stage by simply adding them to the one-junctions. Example on such forces may be
the actuators moving the two arms. The potential energy may also be added on a later stage. It is the
I-field we want to get rid of, spring forces and resistance can simply be put on their respective one
junction as C- and R- elements.
For completing the bond graph and finding the displacements of the crane tip, the IC-field can be
used to generate the value of and . These values can then be sent to MTF-elements with power
connections to the two one-junctions. The MTF-elements calculate the transformation modulus for
the power with respect to and , giving the power in x- and y direction. The simple bond graph is
presented in fig. 6.
Figure 6: Two link planar arm bond graph
Though it may seem like an extensive procedure to carry out, the Lagrange/Hamilton equations can
easily be derived with the help of symbolic mathematical computer software like Maple. The real
challenge it to derive the correct expressions for kinetic and potential energy.
1
Theta2
1
Theta1
IC
IC
Se
actuator2
Se
actuator1
0 0
1
Theta2
1
Theta1
Se
gravity
11
1 Crane_tip_x1 Crane_tip_y
MTFMTFMTFMTF
IC
IC1
11
3. Rigid Body and multidimensional dynamics
This chapter is written on the basis of material presented (Pedersen & Engja, 2008), (Fossen, 1994)
and (Sciavicco & Siciliano, 1999).
3.1 Rigid body equations Consider an idealized body in space, i.e. a body with defined size where all non-linear effects such as
deformation is neglected. This is called a rigid body, and has a special and important role in
multidimensional dynamics and the bond graph modeling of such systems. The fact is that once a
mechanical problem becomes multidimensional, with velocities in more than two degrees of
freedom, the bond graph modeling of such systems becomes increasingly difficult in a way that
compromises the simplicity and ease of use that the bond graph method is known for.
A rigid body in space is free to move around and thus have one absolute velocity v and one absolute
angular velocity ω. These velocities are denoted on a local coordinate system with origin O´ and axis
x´, y´, and z´ attached to the rigid body and are , - and , - . Let another
coordinate system x, y, and z with origin O be a global coordinate system acting as a system of
reference or observation. The trick is to use this system to describe the motion of the rigid body.
Figure 7: Rigid body in space
Now we want to develop the equation of motion for this rigid body and we start with the simple
Newton law which states that net force F action on a body induces a change of linear momentum.
∑
where
.
12
Expressing v in with respect to the rotating frame i.e. putting the equations together
∑
|
where
|
indicates the rate of change of momentum relative to the moving frame.
Same procedure can be applied to expressing that the net torque τ acting on a body is the time rate
of change of the angular momentum L.
∑
where
.
I is the diagonal matrix of moment of inertias of the rigid body. Expressing ω with respect to the
rotating frame gives
∑
|
Using the right hand rule it is possible to write down the component equations for the net force and
torque.
Now these equations are only valid if the if the origin of the local frame is the same point as the
center of mass of the rigid body. However it is possible derive more general equations where the
local origin can be positioned anywhere on the rigid body. By redefining the linear- and angular-
momentum to include this we get
( ) ,
* + .
13
Where , - is the vector between the local origin and the center of mass and * + is
called the inertia tensor and is defined as
* + [
]
and
∫ ( ) ∫
∫ ( )
∫
∫ ( )
∫
Using the same Newton law as previous the equations for the system can be written in matrix form
as
( ) ,
which we recognize as an equation of motion. M is the mass matrix
[
]
and C(v) is called the Coriolis-centrifugal matrix
( )
[
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
]
Note that v in this case represents both the linear and rotational velocities,
, - , and τ is a vector representing the external forces and moments,
, - .
We now have the general motion equation for a rigid body in 6DOF. The question now is how we can
implement this in to bond graphs. It turns out that these equations can be derived from analyzing
kinetic energy of a body in space and thus be implemented in a vector IC-field.
The kinetic energy of a body in space can be expressed like
∭ ( ) ( )
14
where again , - and , - . The velocities are assumed to be the velocities
of the local or moving reference frame origin and thus
( ∫ )
∫ ( ) ( )
( )
* +
Now that we have the kinetic energy the motion equation can be written using quasi-Lagrange
equations
(
)
(
)
From the Lagrange/Hamilton IC-field we know that we can write the equations for the generalized
momentum using the Lagrange equation. Thus
Writing the motion equation in momentum form
and using the fact that the generalized momentums always takes the same general form we get the
equation for generalized momentum for a body in space.
( ) ( )
, -
which can be rewritten to get the rate of change of the generalized displacement
( )
We recognize that this equation can be written into the previously derived IC-field approach where
we in this case use the Coriolis-centrifugal matrix for the e` term.
( )
Note that the potential energy has been neglected for now. However elements creating potential
energy can easily be added to the IC-field bond graph at a later stage.
15
Figure 8: Vector IC-field
Using vector bond graphs the rigid body equations can be programmed in a IC field connected to only
one one-junction representing the motion in 6DOF, i.e. each bond is carrying six different efforts and
flows. The constitutive relation for the IC-field is
( )
3.2 The concept of rigid body position and rotation Until now we have only discussed rigid body equations and how to implement them in to a bond
graph system or IC-field. However the bond graph for a rigid body is still missing one key element.
This is the relation between the local coordinate frame for the rigid body and the global coordinate
frame from which all motion is observed. As for now the derived bond graph has little or no practical
meaning.
3.2.1 Rotational matrixes When deriving a complete description of the position of an object in space one generally needs the
concept of relative distance and orientation. For example if you were to give a description of the
book on your desk you might say that it lies at an angle to the left and down, and that it is lying
upside-down. Such a description is given with your position and orientation as a reference. A person
located on the other side of the room will give a different description. Hence position and orientation
of an object is only valid in relation to a reference. The same concept applies when describing
motion.
Figure 9: Rigid Body position and roation
The position and orientation of a rigid body in space can be described using two coordinate frames.
One attached to the body called the body-fixed or local coordinate system, and one reference system
called the earth-fixed coordinate system.
IC
RigidBody
1
16
The position of the local frame is given by the vector o’ between the two frame origins and with
respect to the earth-fixed system. The vector o’ can be expressed mathematically
Where x, y and z are the unit vectors of the global frame. In compact form the vector can be written
[
]
Let x’, y’ and z’ be the unit vector of the local coordinate frame of the body. Then the orientation of
the local frame in relation to the global frame can be denoted
This can conveniently be written in compact form as a rotation matrix that is valid anywhere in the
global system
, - [
] [
]
For now forget the rotation of the body fixed frame and only concentrate rotation of the earth fixed
system, i.e. rotation around global origin. Consider a rotation of the global frame around its own
origin. The rotation results in a new frame which origin coincides with the global. The rotation rules
apply here to. Consider a rotation α of the frame in positive direction (right hand rule) about the z
axis. The unit vectors of the new frame with respect to the reference frame are
[
] [
] [
]
Applying compact notation we get the rotation matrix as described earlier
( ) [
]
We get similar results for a rotation about y-axis and about x-axis.
( ) [
]
( ) [
]
17
These are called elementary rotations. The rotation matrix concept has some valuable properties.
The R matrix is orthogonal giving
where is the 3x3 identity matrix.
If we consider a case where the origin of a local frame coincides with the origin of the global frame,
then a point P in space can be described by the global frame as
[
]
The same point P can be described by the local frame as
[
]
This gives that
, -
Thus we get
,
Where both p and p’ is a representation of the same point in space. The rotation matrix can also be
used to describe the rotation of a vector about an arbitrary axis in space i.e. using the same relations
as just stated. This gives us some useful results.
Remembering the velocity vector from the rigid body chapter denoted
, -
Assuming this is the velocity of the local frame mowing in space the velocity in relation to the global
frame here denoted v´ is
Integrate with respect to time and we get the position of the local frame in relation to the global.
Remembering the rotational velocity vector from the rigid body chapter denoted
, -
Assuming this is the velocity of the local frame rotating in space the rotation velocity in relation to
the global frame here denoted ω´ is
Integrate with respect to time and we get the orientation of the local frame in relation to the global.
18
I.e given a rotation of a local frame about the global the rotation matrix describes the new position of
the local frame in relation to the global. Given a rotation of a local frame about its own origin and
the rotation matrix describes the new orientation of the local frame in relation to the global.
It turns out that given several rotations of a local frame the new orientation or position can be
described by multiplying several rotation matrixes together, one for each rotation. Consider a vector
p going through two rotations. Denote as the initial condition, is the vector after one rotation
and after two rotations. We denote the rotation matrixes as describing the first rotation and
describing the second rotation. Then
This means that by composing elementary rotations given earlier in this chapter we can completely
describe the position and orientation of a rigid body in space. In fact using only three elementary
rotations given that no successive rotations are made about parallel axis will be enough. The
sequence of orientation matrixes is however not to be taken arbitrary i.e.
3.2.2 Euler Angles When generating a set of rotation matrixes for describing position and orientation of a body in space
there are several sets of three successive rotations possible. In fact there are 12 of them,
ref.(Sciavicco & Siciliano, 1999). One of the most common ones and the one we are going to use here
is the XYZ convention.
First rotate the reference frame by the angle ψ about the z axis (yaw). The rotation is
described by the elementary rotation matrix .
Then rotate the reference frame by the angle θ about the new y axis (roll). The rotation is
described by the elementary rotation matrix .
Finally rotate the reference frame by the angle ϕ about the new x axis (pitch). The rotation is
described by the elementary rotation matrix .
Thus the complete ration
However this is not useful if we do not know the values of the Euler angles. The relation between the
body-fixed rotational velocities and the rate of change of the Euler angles gives the solution.
( )
( ) ( ) ( )
( ) ( ) ( )
19
Solving these equations with respect to the Euler angles we get
( ) ( )
( )
( )
( )
( )
and finally
( ) ( ) ( ) ( )
3.2.3 Implementation in vector bond graphs We have now derived the necessary equations needed to evaluate the position and orientation of
our rigid body bond graph system in 6DOF. In such a system, using vector bond graphs, we have the
flows equal to , - flowing in one direction and the efforts equal to
, - flowing in the other direction. Using our causality knowledge with the
orthogonal property of the rotation matrix we get that
[
]
( )
[
]
( )
[
]
( )
[
]
( )
[
]
( )
[
]
( )
[
]
( )
[
]
( )
Using these relations we can implement these transformations in MTF-elements. There are several
ways of doing this, but one weary easy-to-understand way is to use one MTF-element for each sub
transformation (i.e. , and ) connected in the correct successive order.
Figure 10: Euler angle XYZ transformation
11 MTF_Z MTF_Y MTF_X COLLECT
20
Here the collect element collects the rotational velocities and sends them to a box containing the
rate-of-change Euler angles. The solved rate-of-change Euler angles are then integrated to obtain the
angles and send to their respective transformation element.
Since the vector power bonds have six flows and efforts (translation and rotation) we extend the
matrixes in the MTF-elements to account for this. Thus the transformation modulus in the MTF_Z
element will look like
[ ( ) ( )
( ) ( )
( )
( )
( )
( )
]
and similar for the other transformation modulus.
We now have the relation between the local and global coordinates our system. Thus we can
describe motion and forces in our rigid body system by connecting the whole transformation
element to our IC-field model. Here all the transformations are collected in one sub-model called
MTF_to_global.
Figure 11: Rigid Body bond graph
Fig.11 represents the general rigid body bond graph for motion in six degrees of freedom. This model
can easily be extended a later stage to include different physical phenomena unique to the
respective system being modeled. Examples on this will be demonstrated in the next chapters.
1
Earth_Fixed
IC
Rigid_Body
MTF_to_global 1
Body_Fixed
21
4 The crane model
4.1 Rigid body beam The basic simple light load crane consists of two crane arms or beams connected together.
Neglecting deformation and bending each beam can be considered a rigid body. The goal is to build a
model where for each step in time the location of the crane tip is known. This implies knowing the
location of each end of the crane arms and the forces and momentums acting in these locations.
Consider the general rigid body bond graph model where the coordinate transformation enables us
to locate the position of the rigid body and the forces acting in the chosen center of gravity. Using
bond graph transformer elements it is possible to transform the forces acting in the center of gravity
out to the rigid end of the crane beam.
Figure 12: Beam with local coordinate system
A transformation matrix for the efforts and flows can be derived by inspection. Picture a beam where
one end is constrained in x- ,y- and z- direction but allowed to rotate around one global axis. Then a
translational velocity in the opposite end, perpendicular to the beam, will create a rotational velocity
proportional to the beam length. Also any initial rotational velocities will be the same throughout the
beam length. Defining the local coordinate system as in the figure, the transformation matrix for
effort and flow in the local origin to the beam end can be written
[
]
Where [ ] is the local coordinates of the point of interest. I.e. the end coordinate of the
beam in the figure would be [L/2, 0, 0] where L is the total length.
For example positive effort in the x- direction gives
, - , - , - , -
, - , -
, - , -
22
And positive effort in y- direction gives
, - , -
, - , -
, - , - (
) , - , - (
) , -
Using the general rigid body bond graph we want to translate the center fixed effort and flows to
each end of the crane beam.
Figure 13: Crane beam bond graph
Noticing the causality for the TF- element (effort flowing with power input to local 1-junction) the
constitutive relation is
Here the ports “input” and “input2” represents the connection to the next bond graph element. We
recognize the Se-element connected to the MTF-element as the gravity forces acting on the body.
1 IC
RB_equations
MTF_to_globalSe
global_g
TF Force_to_moment_transformation2
TF Force_to_moment_transformation
1
actuator_port2
actuator_port1
input2
input
23
4.2 Connection of rigid body bond graph models
4.2.1 Causality problem In the start of this thesis general procedures for development of mechanical bond graph where
discussed. It was found that such procedures where not sufficient when dealing with large
multidimensional systems. Increasing complexity of the mechanical system made the procedures
time consuming and the kinematic relationships increasingly complex. Such systems are also
constantly experiencing derivative causality problems which can be practical impossible to solve. The
Lagrange/Hamilton IC-field modeling procedure was introduced considerable simplifying the system
modeling and elimination causal problems. It proved possible to use the IC-field formulation for
general rigid body bond graph modeling.
The question is now how to connect different rigid body bond graph models. Just as for simpler
mechanical systems the connecting two rigid bodies together will result in derivative causality
problems.
In three dimensions, a rigid body has six degrees of freedom represented by six inertial elements.
When two bodies are connected rigidly, the tree linear and three angular velocities for the two bodies
cannot all be independent, meaning that not all the I-elements can have integral causality, ref
(Karnopp, Margolis, & Rosenberg, 2006).
In an IC-field all six inertia element are represented in one element, however the same principle
applies here. Try to connect two IC-fields together and derivative causality appear.
Figure 14: Derivative causality
One solution is to implement all rigid body equations in to one IC-field. However the size of the rigid
body matrixes and the vector power bonds are proportional to the total degrees of freedom in the
system, i.e. a two rigid body system will give 12x12 matrixes and 12 vector power bonds. A three
body system 18x18 matrixes and 18 vector power bonds and so on. Such a solution would make the
rigid body bond graph less intuitive to work with, complicate the connection of other elements and
complicate the process of getting the desired values. We want to make a model which to a certain
degree is graphical and intuitive, i.e. finding a solution for connecting different rigid body bond
graphs together with ease. Thus large mechanical systems models can be derived from a library of
rigid body bond graph models. Since we know that the source of derivative causality in such
elements is the rigid connection, the clue for developing models is to construct flexible connections.
IC
Rigid_Body1
IC
Rigid_Body
MTF_to_global1
MTF_to_global
1
Earth_Fixed1
1
Earth_Fixed
1
Body_Fixed1
1
Body_Fixed
24
Imagine two rigid bodies connected with an infinite small spring. Thus the gap between the two
rigid bodies is close to zero ( ) in equilibrium state. Whenever forces acting on the two bodies
tries to pull them apart, a proportional large spring force will resist separation provided a large
enough spring constant. Such imaginary springs can be modeled in every degree of freedom between
the two bodies, creating a connection which will dynamically behave close to a rigid connection.
Modeling in bond graphs using a 6 DOF C-element eliminates the derivative causality. Note that the
C-element automatically gives effort input on power bonds to both rigid body bond graphs.
Figure 15: Complete casaulity
4.2.2 Joints The models in the next part chapter are derived by inspiration from (Filippini, Delarmelina, Pagano,
Alianak, Junco, & Nigro, 2007).
Such spring connections are the basis for the modeling of joints. Joints are couplings allowing
freedom to move in some of the directions in a 6 DOF system, making it possible for two bodies to
move relative to one another. Such a joints can be found in the typical two link planar arm where
arm one needs to rotate around a point to the fixed ground and the other arm needs to rotate
around the first arm. There are three basic representations of joints; spherical, revolute and
prismatic. They all are modeled after the same principle; spring elements restricting movement in
some directions and coordinate transformation for translation of the effort and flow in the desired
direction. Using joint modeling theory it is possible to connect the rigid body bond graphs for the
vessel and crane beams to get a complete model.
Spherical joints
Figure 16: Spherical joint
The spherical joint allows for rotation around all three axes while translation is prohibited making the
attached body free to rotate around while connected to ground or another body.
0 C
IC
Rigid_Body1
IC
Rigid_Body
MTF_to_global1
MTF_to_global
1
Earth_Fixed1
1
Earth_Fixed
1
Body_Fixed1
1
Body_Fixed
25
Figure 17: Spherical joint bond graph
Shown in fig. 17 is the sub model called “splitterinn”. The sub model separates the angular and linear
effort and flows in the 6ODF input power bond and sends out two power bonds, the top one
representing the linear velocities and the bottom one the angular velocities. The linear velocities are
then constrained with an C-element with a sufficient high spring constant to resemble . The Se-
element attached to the angular velocities, which are unconstrained, is a zero- torque element
meaning the effort value is set to zero representing total freedom to rotate. The “splitterout” sub
model collects the angular and linear velocities to one power bond. In each end there is a coordinate
transformation sub model. This element is similar to the one used when transforming between
global and local coordinates but tuned to only account for the transformations needed in this
particular case. These are transformation of linear velocities and forces. However in practice the total
local-to-global transformation derived earlier will produce the same results, with some superfluous
transformations.
Revolute joints
Figure 18: Revolute joint
The revolute joint is similar to the spherical joint but only allows rotation in one angular direction,
meaning that the other two is constrained in addition to the translational degrees of freedom.
0
0
SplitterOut1SplitterIn11 1
Se
null_force
C kt2
global_MTF2global_MTF output2output1
26
Figure 19: Revolute Joint bond graph
Here this is done by splitting up the rational degrees of freedom and constraining two of them. The
unconstrained power bond has zero effort source imposing no torque.
Prismatic joints
Figure 20: Prismatic joint
A prismatic joint allows for translation in one direction while the other two translational freedoms as
well as all three rotational are constrained. Such joints can be used to model elongation of crane
beams. Thus an actuator imposing force in the unconstrained direction can be added instead of the
zero effort source for control of the extension.
0
0
0
Trans3 Trans1SplitterOut1SplitterIn1
Splitter1
q
QSensor3
q 11
Se
Null_force_y
C kt1
C
kRz1
C
kRx1
output2output
27
Figure 21: Prismatic joint bond graph
4.3 Constructing a multi rigid body bond graph model In the previous chapters the basis for rigid body models and the connection of these has been
developed. Here the connection between these models will be demonstrated and discussed using
different modeling cases. The end goal is a model basis for a marine crane operation. But such a
model procedure also opens up for forming models with a large number of rigid body components.
However it will be shown that such models also has disadvantages.
4.3.1 Rigid body beam with revolute joint and rotation around y-axis In this case the rigid body has been coupled with the revolute joint, se “One Arm Revolute Y” on
attached CD. The rigid body is programmed with the general rigid body equations with the center of
the local coordinate frame located in the center of mass, i.e. the product of the inertias is zero which
simplifies the matrixes in the dynamic equation
( ) .
In short all lines in the equation containing a term from the vector goes to zero as
, - , -. Thus the mass matrix simplifies to
[
]
with terms only on the diagonal. The same thing happen to the coriolis centrifugal matrix, all terms
related to goes to zero.
1
Se Se_0
C
CTz
C
CTx
Splitter1
C kR
0
0
SplitterOut1SplitterIn11 1global_MTF2 output2output1
28
( )
[
]
The rigid body representing a crane beam has a mass of 150 [kg] and an inertia of 120 , - and a
length of 3 [m]. The arm is constrained with spring elements in one end for translation in global x-, y-
and z- direction in addition to rotation around global x and z, leaving it free to rotate around global y.
Note that there are no energy dissipation in this model.
To get the model to simulate the right coordinates for the arm the initials conditions have to be
given. This means setting the q- sensor on the constrained side of the arm to -1.5 [m] in the x-
direction, which is the axis going along the length of the arm. Same applies for the q- sensor in the
unconstrained end of the arm, setting it to 1.5 [m] in the x direction giving the total length of the arm
(3 [m]). Connected to the 1- junction representing the local coordinate system and center of mass is
a coordinate transformer and a Se- element giving a gravity force in the global negative Z- direction.
Figure 22: Pendulum bond graph
0
0
0
1
Trans3Trans2
Trans1
TF
TF
SplitterOut1SplitterIn1
Splitter1
Sf
Sf_0
Se
Se_0
Se
gravity
q
q
q
Constrained
q
q
Unconstrained
11
1
C kt1
C
kRz1
C
kRy2
IC
RigidBody
MTF_to_global 1
29
Running a simulation for 10 second reviles the following results for the q- sensor in the constrained
end of the arm:
Simulation plot 1: : Pendulum, constrained end
The plot displays displacement in global coordinates where index c indicates constrained and x, y, z,
wx, wy, wz translation and rotation in- and around respective coordinate axis.
For rotation around global y one would expect forces in x and z in magnitude depending on the
stiffness of the spring elements constraining the arm. In this case the spring constants are set high
resulting in high natural vibrational frequencies. Note that the forces in x oscillate around the initial
condition -1.5 [m] as expected. The plot displays no rotation around x- and z- axis. Also the
oscillations around y is in phase with the small displacement in x and z.
The next plots show the same type of displacements, but now for the unconstrained end of the arm.
Simulation plot 2: Pendulum, unconstrained end
model
-1.5
-1.499
c_x
-0.4
0
0.4
c_y
0 c_z
-0.4
0
0.4
c_wx
1
3c_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
c_wz
model
-3
0
3uc_x
-0.4
0
0.4uc_y
-2
0uc_z
-0.4
0
0.4uc_wx
1
3uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4uc_wz
30
The plot shows the same result as the constrained end for rotation around the axis which is correct
as the angle would not change along the length of the arm. The displacement in the x and z direction
also seems ok, though it can be hard to determine this from a plot. A simple animation of the arm
based on the same values as the plot verifies the motions. The animation can be viewed on the
attached CD.
Figure 23: Pendulum animation
31
4.3.2 Rigid body beam with spherical joint
Figure 24: Beam with spherical joint
In this case the rigid body beam model is connected with the spherical joint. The beam data are the
same as in the last case. First we put on a gravity force in the global negative z-direction.
Simulation plot 3: Beam with spherical joint, constrained end
0
0
1
q
Unconstrained1
TF
TF
SplitterOut1SplitterIn1
Sf
Sf__0
Se
Se_0
IC
RigidBody1
1
1
MTF_to_global1
C kt
Se
gravity1
EulerTransf 3
EulerTransf 2 EulerTransf 1q
Constrained
1
model
-1.5
-1.499
c_x
-0.4
0
0.4
c_y
0 c_z
-0.4
0
0.4
c_wx
1
3c_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
c_wz
32
Simulation plot 4: Beam with spherical joint, unconstrained end
As expected the model behaves as in the revolute joint case. In the next trial a force of 50 [N] is put
in the global positive y direction.
Simulation plot 5: Beam with spherical joint and force in two directions, constained end
model
-3
0
3uc_x
-0.4
0
0.4uc_y
-2
0uc_z
-0.4
0
0.4uc_wx
1
3uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4uc_wz
model
-1.5
-1.499
c_x
0 c_y
0 c_z
-4
0c_wx
1
3c_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0c_wz
33
Simulation plot 6: Beam with spherical joint and force in two directions, unconstained end
Again the plot is difficult to interpret and the reader is referred to the animation on CD (One Arm
Spherical). The results and animation confirms the performance of the joint allowing for rotation
around the constrained end.
Figure 25: Animation of beam with spherical joint and force in two directions
Note that there are no energy dissipation elements in this model either resulting in continuous
oscillation around the global force vector made up of the gravity force and the applied force in the y
direction.
model
-3
0
3uc_x
-2
1
4uc_y
-2
0uc_z
-5
-2
1uc_wx
1
3uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0uc_wz
34
4.3.3 Two link planar arm Serving as the basis for a simple crane is the two link planar arm. This is the same type of arm which
was used in the Lagrange equation example for a 2D rigid body. Here the model is built up of the
6DOF rigid body elements. The two link planar arm is assembled using two revolute joints and two
rigid body beams. All elements are programmed to rotate around global y. Both beams share the
same data as the beams in the previous examples.
Figure 26: Two link planar arm bond graph
0
0
0
0
0
0
1
q
Unconstrained
Trans5
Trans4
Trans3Trans2
Trans1
TF
TF
TF
TF
SplitterOut2
SplitterOut1
SplitterIn2
SplitterIn1
Splitter2
Splitter1
Sf
Sf_0
Se
Se_1
Se
Se_0
IC
RigidBody1
IC
RigidBody
q
q
1
11
1
1
1
1
MTF_to_global1
MTF_to_global
C kt2
C kt1
C
kRz2
C
kRz1
C
kRy2
C
kRy1
Se
gravity1
Se
gravity
q
Constrained
1
35
Simulation plot 7: Two link planar arm, arm one, constrained end
The first plot shows the displacement values of the constrained end of beam one. As for the single
beam we have rotation about y and high frequency small displacement in the global x- and z-
direction.
Simulation plot 8: Two link planar arm, arm one, unconstrained end
model
-1.54
-1.5
-1.46
c_x
-0.4
0
0.4
c_y
-0.04
0
0.04
c_z
-0.4
0
0.4
c_wx
1
3c_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
c_wz
model
-3
0
3uc_x
-0.4
0
0.4uc_y
-3
-1
1uc_z
-0.4
0
0.4uc_wx
1
3uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4uc_wz
36
Simulation plot 9: Two link planar arm, arm two, constrained end
The two next two plots shows the ends of the beams which are constrained together. The plot shows
the same displacement in the global x- and z- direction which confirms the joint ability to create a
close to rigid coupling. For demonstration of the movement se animation on CD (Two link planar
arm).
Figure 27: Animation two link planar arm
model
-3
0
3c2_x
-0.4
0
0.4c2_y
-3
-1
1c2_z
-0.4
0
0.4c2_wx
1
3c2_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4c2_wz
37
4.4 The realistic crane beam Till now we have developed the rigid body crane beam and we have connected two of these to form
the two link planar arm. However such models are of no further use without some form of control.
They also lack realism since there is no form for damping in the models, thus they only portray free
undamped motion. In this chapter these issues will be discussed and some solutions presented.
4.4.1 Control and actuators Actuators are sources of force which can move around and manipulate and object such as a crane.
Typical actuators are electric motors and hydraulic cylinders as often the case with cranes. Here only
the connection of such actuators will be discussed and the actual actuator force will be represented
by effort sources for simplicity. However as always in the bond graph method the interfacing of more
realistic sources of effort such as hydraulics are easily done. The 20sim software also offers the
possibility for implementing joystick control, thus making is possible to control the actuator effort
live.
Consider the single beam arm. In the previous case presented the arm oscillated around the global
gravity force in the negative z-direction. There are several ways of controlling this motion. The first
one resembling a hydraulic actuator solution is to apply a counter force with center of attack
somewhere along the beam. The second one resembling an electric motor solution is to apply a
counter torque in the constrained end of the beam.
Figure 28: Actuators on crane beam
Applying a counter torque actually requires almost no modification to the bond graph model. One
can simply apply effort value in the joint Se-element which before represented zero torque. The
gravity force acts on the joint with the positive torque .
/
[Nm]. By applying the same negative torque in the Se-element the beam will hold still. By
applying a more negative torque the beam will rotate in the opposite direction. See animation
“Single beam torque ex” in CD. Note that the beam will continue accelerate due to the fact that the
torque arm of the gravity force is reduced during the arm elevation while the joint torque is constant.
38
Figure 29: Joint actuator bond graph
Figure 30: Animation of joint actuator
Linear actuator forces acting on the beam can be added in several different ways. In all cases there is
the possibility to use TF-elements to change the point of attach on the beam. Here only forces on the
local origin will be considered for simplicity.
0
0
0
SplitterOut1SplitterIn1
Splitter1
Se
Se_0
C kt1
C
kRz1
C
kRy2
39
Adding a Se- element in the local one junction representing a perpendicular force one the
crane beam. Such a solution will not be not physical correct since the force will always be in
the local z direction.
Using the existing Se (gravity)- element or add a new Se- element to the global one-junction
representing a force in the positive global z direction. This solution is closer to representing
the physical actuator since the torque arm in the global x direction will decrease as the beam
is elevated, thus the torque will decrease. This is more equivalent to what an actual hydraulic
actuator will experience.
A combination. Using an MTF- element connected to the local one-junction programmed
with the geometry of the actuator with respect to the angle of the beam. Such a solution
gives a realistic view on how the actuator forces affect the beam, but deriving the
geometrical relations can be time consuming.
Figure 31: Perpendicular actuator bond graph
Figure 32: Global actuator bond graph
Se
1
TF
IC
RigidBody
MTF_to_globalSe
gravity
1
1
TF
TF
IC
RigidBody
MTF_to_global
Se
Se
gravity
1
40
Figure 33: Real actuator bond graph
4.4.2 Energy dissipation In every mechanical system there is energy dissipation present. This can be friction in joints or
friction in actuator among other things. Such energy dissipation represented by R- elements and can
be added to the bond graph just as the Se- elements.
Figure 34: Energy dissipation in joint bond graph
MTF
1
TF
TF
IC
RigidBody
MTF_to_global
Se
Se
gravity
1
R
0
0
0
SplitterOut1SplitterIn1
Splitter1
Se
Se_0
C kt1
C
kRz1
C
kRy2
41
Figure 35: Energy dissipation in actuator bond graph
4.4.3 Actuators and energy dissipation in the two link planar arm In this example energy dissipation and actuator effort have been applied to the two link planar arm
to demonstrate the functionality. The model is tuned for elevation of both arms, however the values
for energy dissipation and actuator force are taken arbitrary and may not be realistic. The code in the
MTF-elements representing the geometric relation between the beams, actuators and ground are
taken from the 2D crane model (Pedersen, ICexampleW3, 2010) The animation “Two link planar arm
with actuators” is attached on CD.
Figure 36: Two link planar arm with actuator and energy dissipation
R1
1
TF
TF
IC
RigidBody
MTF_to_global
MTF
Se
Se
gravity
1
42
4.5 Discussion of high vibrational natural frequencies Though the spring c-element offers a solution to the derivative causality problem when connecting
rigid bodies, it is far from an optimal solution. The approach requires a high spring constant to
realistically model the interaction between the bodies, which in most cases should be as stiff as
possible. For example in the joints connecting two crane arms the connection is to be considered
close to rigid, or at least have a very high stiffness if the models is to be so realistic that it takes into
account the bearing stiffness in the connection. The problem is however that such high spring
constants in mathematical terms means creating high vibrational natural frequencies in the system.
4.5.1 Simulation time and model behavior One place this can be shown is in the constrained end of the single beam model which has been
discussed in short earlier.
Simulation plot 10: High vibrational natural frequencies
Simulation plot 11: High vibrational natural frequencies zoomed in
model
-1.5005
-1.5
-1.4995
-1.499
c_x
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.001
-0.0005
0
0.0005
c_z
model
-1.5008
-1.5006
-1.5004
-1.5002
-1.5
-1.4998
-1.4996
-1.4994
-1.4992 c_x
0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
time {s}
-0.0008
-0.0006
-0.0004
-0.0002
0
0.0002
0.0004
0.0006
0.0008 c_z
43
Zooming in on the displacement of in the global x- and z- direction these high frequencies is clearly
shown. Though in itself not a problem, such high frequencies pose a problem for the effectiveness of
the coupling between the rigid bodies. To calculate these frequencies high time step in the
simulation is needed, meaning longer simulation times. As more rigid bodies as connected the
simulation time increases.
Number of arms
Simulation time
Model calculations
Output points
Avarage step per second
1 0,555 14260 5732 25693
2 5,207 88835 12155 17060
3 7,395 86541 11710 11702
4 11,73 105421 11960 8987
5 14,899 109280 11859 7334
Table 1: Sumulation data for increasing number of beams
Figure 37: Simulation time vs. beams connected
The table shows the difference between simulations when attaching an increasing number of arms
after one another. The simulation was done under the same computer conditions, i.e. the same
processor power was available. All spring constants where the same values. The data shows a linear
relation between the simulation time and number of rigid bodies connected. However in this
simulation the beam displacements where not evaluated. The fact is for each rigid body the beam
motion has to be evaluated and the spring constants tuned for realistic behavior. For some cases this
will revile the need for modifying spring constants to compensate for the higher forces which may
arise when connecting more rigid bodies. In such cases the simulation curve may very well be
exponential. This can be tested in a simple experiment with the two link planar arm. First we set both
the spring constants constraining beam one to ground and the constants constraining the beams
together to a relatively low value ( ). We plot the displacement in x- and z- direction for the
constrained end and the rotational displacement on both sides of the two ends constrained together.
0
2
4
6
8
10
12
14
16
1 2 3 4 5
Sumulation Time [s]
Number of beams connected
44
Simulation plot 12: Two link planar arm and spring constant
We observe large displacements where beam one is constrained to ground (c_x and c_z), which is
unwanted considering a rigid connection. The rotational displacements are experiencing inconsistent
behavior. The animation “10^4” shows the poor model behavior. The model is acting like the joints
are springs and not a rigid coupling, which is not surprising considering the low spring constants. The
next plot shows the spring constants increased with for each time.
Simulation plot 13: Two link planar arm and spring constant
model
-1.8
-1.6
-1.4
-1.2
-1
c_x
-0.4
-0.2
0
0.2
0.4c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.56
-1.52
-1.48
-1.44
-1.4
c_x
-0.05
0
0.05 c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-10
-5
0
5 c2_wy
45
Simulation plot 14: Two link planar arm and spring constant
Simulation plot 15: Two link planar arm and spring constant
model
-1.52
-1.51
-1.5
-1.49
-1.48c_x
-0.02
-0.01
0
0.01
0.02c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.5005
-1.5
-1.4995
-1.499
c_x
-0.002
-0.001
0
0.001
0.002c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
46
Simulation plot 16: Two link planar arm and spring constant
Simulation plot 17: Two link planar arm and spring constant
The plot shows that for high spring constants the vibrational frequencies for the displacement in x-
and z- direction get higher. There is also a buildup of amplitude which may cause problems for longer
simulations. At the same time the rational displacements become more consistent. This can also be
seen in the animation if the highest spring constant where the model behaves nicely. An unexpected
result for the two highest spring constants are that the high frequencies for the linear displacement
seem to disappear, only a small hint of the in the beginning of the simulation remains. This is
consistent with the simulation time suddenly dropping at for higher values of , which until
displays the expected exponential curve.
model
-1.50002
-1.50001
-1.5
-1.49999
-1.49998c_x
-1.2e-005
-8e-006
-4e-006
0
4e-006c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.5
-1.5
-1.5
-1.5
-1.5c_x
-1e-006
-5e-007
0c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
47
Spring konstant
Simulation time
Model calculations
Output points
Avarage step per second
10^4 4,119 35432 4597 8602
10^5 6,786 88835 12155 13090
10^6 19,609 263186 35281 13421
10^7 49,125 486600 89801 9905
10^8 42,931 437490 71503 10190
10^9 29,593 294697 52582 9958
Table 2: Simulation data for increasing spring constant
Figure 38: Simulation time vs. spring constant
Figure 39: Time step vs. spring constant
0
10
20
30
40
50
60
10^4 10^5 10^6 10^7 10^8 10^9
Sumulation Time [s]
Spring constant
0
2000
4000
6000
8000
10000
12000
14000
16000
10^4 10^5 10^6 10^7 10^8 10^9
Avarege step per second
Spring constants
48
Inspecting the data for the model calculations and the number of output points they display the
same type of curve as the simulation time. Inspecting the data for the average time step per second
it drops between and which is consistent with more data being processed at
. However it does not go up for where there are a lot less calculations being done,
but this could maybe be a consequence of computer power being allocated to other tasks at that
time. Finding an answer for why it is easier to do time simulations of the system with wary high
values for is more difficult. We know that the amplitude of the natural frequency of a vibrating
system decreases with a higher value, i.e. as amplitude goes to zero. However what is
to be considered infinite here is unknown. The numerical integration method (default: Backward
differentiation formula) is off course also one possible answer. However it is clear that forming a
definite conclusion on the basis of so few tests cannot be done. It is stressed that simulation data are
dependent on the computer used and may be different for other computers. The general trend
should however be the same.
4.5.2 Experimentation on damping in joint In both (Karnopp, Margolis, & Rosenberg, 2006) and (Zied & Chung, 1992) it is suggested to use
damping elements in joints. Such a solution makes sense since the damping parameter should reduce
high frequencies and thus shorten the simulation time. The following simulations is dine with the
same setup as previous and with as the start spring constant which reviled poor results
without damping. Here a damping- element is added in each joint to the rotational power bonds. The
damping parameter value is set to in all simulations.
Figure 40: Two link planar arm with damping in joints
0
0
0
0
0
0
1
q
Unconstrained
Trans5
Trans4
Trans3Trans2
Trans1
TF
TF
TF
TF
SplitterOut2
SplitterOut1
SplitterIn2
SplitterIn1
Splitter2
Splitter1
Sf
Sf_0
Se
Se_1
Se
Se_0
IC
RigidBody1
IC
RigidBody
R
R
q
q
1
1
1
1
1
1
1
1
1
MTF_to_global1
MTF_to_global
C
kt2
C
kt1
C
kRz2
C
kRz1
C
kRy2
C
kRy1
Se
gravity1
Se
gravity
q
Constrained
1
49
Simulation plot 18: Two link planar arm and spring constant and damping
Simulation plot 19: Two link planar arm and spring constant and damping
model
-1.58
-1.54
-1.5
-1.46
-1.42
c_x
-0.2
-0.1
0
0.1
0.2c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.52
-1.51
-1.5
-1.49
-1.48c_x
-0.01
-0.005
0c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
50
Simulation plot 20: Two link planar arm and spring constant and damping
Simulation plot 21: Two link planar arm and spring constant and damping
model
-1.5015
-1.5005
-1.4995
-1.4985
-1.4975
c_x
-0.0015
-0.001
-0.0005
0 c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.5002
-1.5001
-1.5
-1.4999
-1.4998c_x
-0.0001
-5e-005
0c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
51
Simulation plot 22: Two link planar arm and spring constant and damping
Simulation plot 23: Two link planar arm and spring constant and damping
Spring konstant
Simulation time
Model calculations
Output points
Avarage step per second
10^4 1,374 9009 1386 6556
10^5 1,616 18083 3242 11189
10^6 10,722 79212 9064 7387
10^7 21,879 172949 17732 7904
10^8 13,472 169166 17490 12556
10^9 20,728 154792 21066 7467
Table 3: Simulation data with damping in joint
model
-1.50002
-1.50001
-1.5
-1.49999
-1.49998c_x
-1.2e-005
-8e-006
-4e-006
0
4e-006c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
model
-1.5
-1.5
-1.5
-1.5
-1.5c_x
-1.5e-006
-1e-006
-5e-007
0 c_z
0
1
2
3 uc_wy
0 1 2 3 4 5 6 7 8 9 10
time {s}
-1
0
1
2
3 c2_wy
52
Figure 41: Simulation time vs. spring constant (damping in joint)
It is clear that damping greatly reduces simulation time. Also the models experiences steady results
already at . Studying the graphs and the animation on the CD we see that acceptable results
are achieved somewhere between and .
The results above shows a general trend, however there can be many error sources to the data
presented; such as available data power at time of simulation and the numerical integration
procedure used. Still it is clear that simulation time can be an issue when connecting several rigid
body models. Introducing a damping element in the joints will help reduce the simulation time.
However there will always be a need for tuning of both and for each individual case and for each
individual joint in the particular case to achieve acceptable results in a shortest amount of time.
0
5
10
15
20
25
10^4 10^5 10^6 10^7 10^8 10^9
Sumulation Time [s]
Spring constants
53
5 Vessel model
The following chapter is written on the basis of material presented in (Fossen, 1994) and (Pedersen,
Bond Graph Modelling of Marine Vehicle Dynamics).
5.1 Motion equation A general rigid body bond graph model has already been developed in this paper. This chapter will
focus on extending that model to include the marine vehicle- or vessel- specific characteristics of
such a bond graph model. Such specific characteristic may include radiation-induced forces (added
mass, hydrodynamic damping and restoring forces), environmental forces (ocean currents, wind and
waves) and propulsion forces (propeller/thruster forces and control surface/rudder forces). The
general motion equation can be extended to include all of the characteristics above.
, - , ( ) ( )- ( ) ( )
Where
is the rigid body forces and moments
is the hydrodynamic added mass forces and moments.
( ) is the rigid body coriolis and centripetal forces and moments
( ) is the hydrodynamic coriolis and centripetal forces and moments
( ) is the combined expression for the hydrodynamic forces and moments which can be
denoted further to include radiation-induced potential damping, linear skin friction damping,
wave drift damping and vortex shedding damping. ( ) ( ) ( ) ( )
( ) respective
( ) is the restoring forces and moments
is the propulsion forces and moments
is the environmental forces and moments
However in this chapter the goal is to develop a simplified model, i.e. a model which will only give an
idea of the possibilities of such a model. Therefore the main focus will be the extension of the 6DOF
rigid body bond graph to include simplified radiation- induced forces. Environmental- and propulsion
forces will in short be discussed, but merely on a superficial level.
Note that the hydrodynamic coefficients in this chapter use the SNAME notation. Also the general
notation for marine vehicle motion is worth listing.
54
DOF Forces and moments
Linear and angular vel.
Euler angles
1 motion i x direction (surge) X u x
2 motion i y direction (sway) Y v y
3 motion i z direction (heave) Z w z
4 rotation about x-axis (roll) K p φ
5 rotation about y-axis (pitch) M q θ
6 rotation about x-axis (yaw) N r ψ
Table 4: Vessel notation
5.2 Added mass and inertia The added mass phenomena should according to (Fossen, 1994) be interpreted ass pressure-induced
forces and moments due to a forced harmonic motion of the body which are proportional to the
acceleration of the body. The result is that the body feels “heavier” then it really is when trying to
move it while it is partly or fully submerged in water, thus the name added- or virtual- mass.
The expression for the added mass can be derived using the expression for fluid kinetic energy
where , - , i.e the linear and angular velocities of the body. is the added
mass matrix and is defined as
[
]
[
]
The hydrodynamic coriolis and centripetal term can be written as
( ) [ ( )
( ) ( )]
where S means that that the matrix is skew-symmetrical, , - and , - .
Implementing this into the rigid body IC-model is done by super positioning the added mass and
inertia terms with the rigid body terms.
55
Giving the constitutive relation in the IC-field
( )
5.3 Hydrodynamic damping As mentioned the hydrodynamic damping forces consist of a number of different physical
phenomena and it is logical to assume that the damping matrix would be a matrix like the
other terms in the motion equation. However giving expressions for most of the terms is difficult.
Thus for most applications only values for the diagonal are used. Hens the damping coefficients can
be denoted
( ) { }
The damping matrix is understood as power dissipation, hens in bond graph terms it should be
implemented in a classic R-element with the constitutive relation
( )
The flow input in this element is the angular- and rotational- velocities of the rigid body or vessel
meaning it is to be connected to the 1-juction representing the body fixed coordinate system.
5.4 Restoring forces The restoring forces and momentum for a surface vessel is related to the metacentric stability and
buoyancy and can be interpreted as spring forces in a classic mass-damper-spring-system, i.e. forces
acting on the body which resist deviation from static equilibrium. There are off course restoring
forces associated with directional stability and maneuvering and so on, but here we will only consider
the stability forces in heave, pitch and yaw keeping the vessel floating and in an upright position.
The restoring force coefficient matrix in heave, pitch and yaw can be given as
( )
[
]
where
∬
56
( ) ∬
( ) ∬
ρ = water desity [kg/ ]
= z-coordinate center of gravity [m]
= z-coordinate center of buoyancy [m]
= displaced volume of water [ ]
= water plane area [ ]
= transverse metacentric height [m]
= longitudinal metacentric height [m]
Figure 42: Vessel stability (Fossen, 1994)
The K and M restoring forces are actually a function of the sine function to the respective angle but
this can be neglected due to the normal assumption of small angles in conventional initial stability
theory.
The restoring forces are implemented in to bond graphs as a C-element following the constitutive
relation
( )
57
5.5 Implementation in general rigid body bond graph model In the actual modeling for this thesis I have chosen to simplify the hydrodynamic added mass matrix
and the coriolis and centripetal matrix. This because in practice deriving the values of added mass
and inertia coefficients can be an extensive process. The terms are vehicle specific, i.e. they are a
function of the vessels characteristics where hull form may be one of the most important
parameters. The most accurate results are derived using model test and scaling. But even here some
non-linear coupling terms may be ignored because they are difficult to measure. Theoretically
determined coefficients are also possible, and can produce sufficient accurate results. Simple static
results for the diagonal non-coupled terms can be derived from added mass tables modeling the
vehicle as simple geometric shape.
For this reason the vessel model developed I have chosen a simplification where the added mass
matrix only has diagonal terms and the terms in the coriolis matrix are simplified to only one
parameter for each slot in the matrix. This can be justified by the fact that the off diagonal terms in the
added mass matrix tend to be much smaller than the diagonal, thus less impact on the model behavior.
The simplifications are actually valid assuming small velocities and that the vehicle has tree planes of
symmetry and is according to (Fossen, 1994) a good approximation for many applications.
{ }
( )
[
]
Connecting the hydrodynamic extensions to the 1-junction representing the body fixed coordinate
system in the general rigid body bond graph system gives the almost finished vessel model. To fully
complete the model an effort source or Se-element is connected to the 1-junction for the earth fixed
coordinate system representing gravity. Also there is an effort source connected to the local 1-junction,
this can be used to simulate local forces one the vessel, however only for test purposes. There is also
added a port for attaching equipment. This is for attaching the crane at a later stage.
Figure 43: Vessel bond graph
1 IC
RigidBody_ship1
C Restoring_forces1
q MTF_to_global1
Se
Local_force1
RHydrodynamic_damping_forces1
Se
Global_force_g1
1
equipment_port
58
5.6 Simulation demonstration with rigid body vessel model As with the crane model the center of origin for the local frame is defined in the local mass center,
thus the rigid body mass and coriolis centrifugal matrix simplifies to
[
]
( )
[
]
For simplification we want to avoid as many off diagonal terms as possible and use the
approximation that the vessel has three planes of symmetry and is moving at low speed. This can be
justified by the vessel modeled as a square barge and operating as a crane vessel, thus moving with
low speed. The hydrodynamic equations will then be as presented earlier. The following barge data is
derived from decisions on main dimensions and calculation of simplified parameters for these. The
data is only for demonstration and may not be realistic for any barge in existence, but all parameters
are tuned in relation to each other.
Barge data
L 7 [m]
B 5 [m]
H 3 [m]
T 2,2 [m]
Δ 80000 [kg]
Vd 78 [m^3]
Awd 35 [m^2]
GMt 0,55 [m]
GMl 1,45 [m]
Ixx 226667 [kg*m^2]
Iyy 386667 [kg*m^2]
Izz 493333 [kg*m^2]
Xud 30390 [kg]
Yvd 27371 [kg]
Zwd 56409 [kg]
Kpd 29434 [kg*m^2]
Mqd 96644 [kg*m^2]
Nrd 18868 [kg*m^2]
Table 5: Vessel data
59
The barge data is programmed into the vessel parameters and a simulation is run. Note that the
damping parameters are unknown and thus chosen arbitrary.
Simulation plot 24: Barge motion
The plot shows the simulation with the initial heave value equal to zero and the barge eventually
coming to rest at equilibrium state between gravity- and restoring- force.
Comment on vessel model
The implementation of vessel characteristics into rigid body bond graph models has proven to be a
continuous challenge throughout the work in this thesis. Though the simplified motion equation is
relatively straight forward some unexpected result may appear. This is mostly to do with the off
diagonal coupled forces in the coriolis centrifugal matrix in relation to the restoring forces. Restoring
forces are in the real world the forces which keep a vessel floating with the right side up, but in the
modeling world they are in fact spring forces. They are the forces constraining the model in a specific
place under the influence of external forces. Inspecting the restoring force matrix note that there are
no coefficients in surge, sway and yaw, consistent with the matrix proposed by (Fossen, 1994). This is
logical since a vessel should be free to float around at the surface, thus should not be constrained in
any other way than the resistance created by water. However in the simplified equations there are
off diagonal coupled terms in the coriolis centrifugal matrix which will cause forces in surge, sway
and yaw if the model experiences angular forces. For example a bending moment around local x-axis
will induce a translational force in sway. The physical interpretation of this is difficult to explain, most
people would agree that torque induced on a vessel for example a heavy deck load on the port side
would not produce energy and cause the vessel to sway to port. Some of the phenomena may be
corrected by not assuming a diagonal inertia tensor, however I find it most convenient to increase
the hydrodynamic damping value for the degrees of freedom it concerns. Since the damping value is
unknown but probably large, this seems as a ok solution. It is clear that in mathematical modeling of
physical phenomena some modifications outside the derived equations may be needed to produce
real results.
model
-0.4
0
0.4
surge
-0.4
0
0.4
sway
-4
-2
0
heave
-0.4
0
0.4
roll
-0.4
0
0.4
pitch
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
yaw
60
The next two plots shows the model behavior with an Nm torque around local x- axis for
two cases, one with high damping values and one with excessive low damping values. Example
movies can be viewed on CD (“Barge high damping” and “Barge low damping”).
Simulation plot 25: Barge motion with torque and low hydrodynamic damping
Simulation plot 26: Barge motion with torque and high hydrodynamic damping
model
-0.4
0
0.4
surge
-30
-10
10
sway
-2
0heave
0
0.04 roll
-0.4
0
0.4
pitch
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
yaw
model
-0.4
0
0.4
surge
-0.4
-0.2
0
sway
-2
0heave
0
0.04 roll
-0.4
0
0.4
pitch
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.4
0
0.4
yaw
61
Figure 44: Barge animation
62
63
6 Barge with two link planar arm, a complete model
We have developed a vessel model and a two link planar arm with passive control. Now the two
models are to be connected to get a complete model of and barge with a crane. The connection is
done with relatively ease since the crane model already has a revolute joint in the constrained end.
Note the TF- element between the vessel model and the crane sub model. This element denotes the
position of the crane one the barge deck, i.e. it transfers the right forces and moments to the barge
dependent on the position. The element is similar to the ones used in the crane beam models for
transfer of forces and moments from the center of gravity to the arm tip.
Figure 45: Complete crane barge bond graph
The two link planar arm with passive control is the same one as presented earlier with only one small
modification. Since rapid motions of the barge will cause rapid change of position of the two crane
arms in the existing model, a global spring and damper has been added to arm one. The goal is to
modify the model behavior such that it is possible to get a sense of the crane reaction if it where
controlled by hydraulic actuators with internal inertia and resistance of hydraulic fluid. Thus the
spring holds the crane arm in place during motions of the barge and the damping element is added
to eliminate the oscillating motion created by the spring element.
TF
Crane
1 IC
RigidBody_ship
C Restoring_forces
q MTF_to_global1
Se
Local_force
RHydrodynamic_damping_forces
Se
Global_force_g
1
64
Figure 46: Complete crane barge bond graph
Simulation plot 27: Barge motion under influece of crane
The plot shows the motion of the barge after being dropped from initial condition to equilibrium
condition. The plot shows the crane having an effect on the barge crating a pitching motion which
also induces small motion in other direction due to the off diagonal matrix effects discussed earlier.
The motion of the crane arm is best demonstrated in the animation “Barge crane demonstration”.
C
1
TF
TF
Se
Se_g1
Se
IC
RigidBody
R1
MTF_to_global
MTF
1
model
0
0.02
0.04
surge
-0.4
0
0.4sway
-2
0heave
-0.01
0 roll
0.005pitch
0 1 2 3 4 5 6 7 8 9 10
time {s}
0
0.01yaw
65
Figure 47: Barge animation under influece of crane
By applying extra force from the global gravity Se-element we can get a sense of the reaction if a
heavy load where attached to the crane (se animation “Barge crane with heavy load”). Here the
actuators have to be tuned for the extra load. If we however tune the actuator force low, the crane
will extend far and the load will create a strong torque and pitching motion (se animation “Barge
crane heavy lift heavy pitching”). In this case the animation shows the crane dipping in to the vessel
which cannot happen in real life, still it demonstrates the capabilities of the model to simulate load
lift and vessel reaction.
Simulation plot 28: Barge motion under influece of crane and load
model
0.05surge
-0.2
0sway
-2
0heave
0
0.04
0.08roll
-0.05
0.05 pitch
0 1 2 3 4 5 6 7 8 9 10
time {s}
-0.01
0.01
0.03yaw
66
67
7 Conclusion and further work
7.1 conclusion In this report the development of bond graph models for use in larger 6DOF mechanical systems has
been research with the aim of utilizing such models for mathematical modeling of vessel dynamics.
As often with model development the complexity and ways-of-doing-it for establishing the desired
result is diverse. Therefore the focus in this report has been to present tools for the development of
highly graphical and easy to understand sub models which can be integrated into larger systems. This
has been done with the use of the rigid body bond graph models presented in (Pedersen & Engja,
2008) and with the bond graph joint theory presented in (Filippini, Delarmelina, Pagano, Alianak,
Junco, & Nigro, 2007). The rigid body bond graph with the joint bond graph serves as the foundation
for larger systems in which the possibilities are large. However the accuracy of the background
material and the simplifications made must always be considered when evaluating all types of
models. For rigid body bond graph models there are simplifications in the rigid body equations. For
example a crane beam may be quite flexible under heavy load, which may cause dynamic behavior
far from the one possible to predict with rigid body assumptions.
7.2 Crane model Perhaps one of the most beneficial uses for a mathematical vessel models is studying ship dynamics
under the influence forces caused by “rigidly” connected equipment such as cranes, winches and
other. In this thesis it is shown how the rigid body bond graph concept can be used to model a crane
beam and be connected to other beams. The functionality of such a crane with two beams has been
demonstrated and the control of these discussed. It is clear that such connections of rigid bodies with
joints can be done in almost an infinite number of times. However simulation time which is
dependent on the computing power and the tuning of the constraining parameters may be a
problem, especially if the model is to be used in a simulator controlled live where information needs
to be instant.
7.3 Vessel model It is shown that using the mathematical models presented in (Fossen, 1994) can indeed produce a
vessel bond graph using IC-field for rigid body equations, R-elements for hydrodynamic resistance
and C-elements for the restoring forces. The model implemented in this thesis was a simplification
and the practical use of such a simple model limited. However it is not hard to imagine modifications
of such a model to a more realistic level. This may be taking onto account more off diagonal terms in
matrixes and adding environmental forces to the model. The 20Sim software actually offers solutions
for crating sinusoidal signals, thus it should be possible to model wave force patterns. However the
biggest problem for all mathematical vessel models is deriving the hydrodynamic coefficients. In
many cases most of them are unknown or approximations which in itself compromises the accuracy
of the model.
68
7.4 The Crane Barge The model of the crane and barge was fused together to demonstrate the abilities of such models. It
was shown that the moment of the crane indeed induced forces and torque on the vessel as in real
life. Further extensions as utilizing the prismatic joint on one of the crane beams and a revolute joint
to allow the crane to swivel to the side where omitted due to time issues. However both response of
the vessel due to the crane and the use of joints were demonstrated, thus these extensions may not
have added much value to the findings in this thesis.
7.5 Further work This thesis has focused on the development of rigid body bond graph models for vessel dynamics and
crane operations. The primary building blocks for such models have been developed and the
feasibility for modeling larger more accurate real life systems and the integration of other models
demonstrated. Such models can be used both for finding dynamic response and force in an operation
or maybe be used as a real simulator with live input. However for such applications the level of
accuracy in the model has to be raised, models of actuators developed and models of other
necessary equipment connected such for example actuators and propulsion. Models of
environmental forces may also be desired.
69
Bibliography
Berg, T. E. (2007). Marine Operations: Submarines, AUVs - UUvs and ROVs. Trondheim, Norway:
Department of Marine Technology, Norwegian University of Science and Technology.
Fagereng, C. (2010). Project work in marine machinery, Mathematical modeling for marine crane
operations. Trondheim, Norway: Department of Marine Technology, Norwegian Univerity of
Science and Technology .
Filippini, G., Delarmelina, D., Pagano, J., Alianak, J. P., Junco, S., & Nigro, N. (2007). Dynamics of
Multibody Syetems with Bond Graphs. Córdoba, Argentina: Facultad de Ciencias, Ingeniería y
Agrimensura, Univeridad Nacional de Rosario.
Fossen, T. I. (1994). Guidance and Control of Ocean Vehicles . Chichester West Sussex: Jhon Wiley &
Sons Ltd.
Gilberto, G. A., & Padilla, A. G. (2010). Steady State of a Planar Robot: A Bond Graph Approach. SCS.
Karnopp, D. C., Margolis, D. L., & Rosenberg, R. C. (2006). System dynamics, Modeling and Simulation
of Mechatronic Syatems. John Wiley & Sons, Inc.
Nielsen, F. G. (2007). Lecture notes in Marine Operations . Trondheim, Norway: Department of
Marine Hydrodynamics, Faculty of Marine Technology, Norwegian Univerity of Science and
Technology.
Pedersen, E. (2010). ICexampleW3. Trondheim, Norway.
Pedersen, E. (u.d.). Bond Graph Modelling of Marine Vehicle Dynamics. Trondheim, Norway:
Department of Marine Technology, Norwegian University of Science and Technology.
Pedersen, E., & Engja, H. (2008). Mathematical Modelling and Simulation of Physical Systsems.
Trondheim: Department of Marine Technology, Norwegian University of Science and
Technology.
Sciavicco, L., & Siciliano, B. (1999). Modelling and Control of Robot Manipualtors, Second Edition.
Springer.
Zied, A., & Chung, C.-H. (1992). Bond Graph Modeling of MUltibody Systems: a Library of Three-
dimensional Joints. The Franklin Institute.
70
71
Appendix A
Contents of attached CD
Animations
Actuator animations
Barge animations
Beam animations
Spring constant animations
Demonstration models
Actuator demonstrations
Barge
Barge with two link planar arm
One arm revolute y
One arm spherical
Simulation time models
Two link planar arm
Model component library
Example vessel with one crane arm
Prismatic joint
Revolute joint y
Rigid body arm
Spherical joint
Vessel model
72
73
Appendix B
20-sim code
Lagrange/Hamilton IC-field parameters
real global m, l;
real global c1;
real global c2;
real global c3;
real global c4;
real global J;
variables
real p[2], q[2], f[2], M[2,2];
real p_th1, q_th1, p_th2, q_th2;
real th1, th2, th1d, th2d;
equations
"Relating the angular velocities to the efforts"
p_th1 = int(pI1.e);
q_th1 = int(pC1.f);
p_th2 = int(pI2.e);
q_th2 = int(pC2.f);
p = [p_th1;p_th2];
q = [q_th1;q_th2];
"Flows / Setting upp M matrix"
th1=q_th1;
th2=q_th2;
M=[ (0.33)*l^2*(4*m-3*m*(cos(th1))^2+6*(cos(th1))^2), (0.33)*l^2*(-3*sin(th1)*sin(th2)+3*cos(th1)*cos(th2)); -l^2*sin(th1)*sin(th2)+l^2*cos(th1)*cos(th2), (0.083)*m*l+(0.5)-(0.5)*(cos(th2))^2+(0.5)*l^2*(cos(th2))^2];
f = inverse(M)*p;
"Programming the efforts"
74
th1d=f[1];
th2d=f[2];
pC1.e=(-0.5*l*(-2*l*th1d^2*m*sin(th1)*cos(th1)+2*l*th1d*cos(th1)*sin(th2)*th2d+4*l*th1d^2*cos(th1)*sin(th1)+2*l*th1d*sin(th1)*cos(th2)*th2d+3*m*g_n*cos(th1)));
pC2.e=(-l^2*sin(th1)*cos(th2)*th1d*th2d+0.5*sin(th2)*th2d^2*cos(th2)-l^2*cos(th1)*sin(th2)*th1d*th2d-0.5*l^2*cos(th2)*th2d^2*sin(th2)-0.5*m*g_n*cos(th2));
"Assigning efforts and flows"
pI1.f=f[1];
pI2.f=f[2];
"signals"
state1=th1;
state2=th2;
Vector IC-field parameters
real global m=150;
real I=120;
variables
real M[6,6], Minv[6,6], C[6,6];
real u, v, w, p, q, r;
initialequations
"Setting opp the Mrb (Rigit body inertia matrix)"
M=[ m, 0, 0, 0, 0, 0;
0, m, 0, 0, 0, 0;
0, 0, m, 0, 0, 0;
0, 0, 0, I, 0, 0;
0, 0, 0, 0, I, 0;
0, 0, 0, 0, 0, I];
"Inverting"
Minv=inverse(M);
Equations
75
pI.f = Minv*int(pI.e);
"Setting up the restoring forces "
u=pI.f[1];
v=pI.f[2];
w=pI.f[3];
p=pI.f[4]; //wx
q=pI.f[5]; //wy
r=pI.f[6]; //wz
C=[ 0 , 0 , 0 , 0 , m*w , m*v ;
0 , 0 , 0 ,-m*w , 0 , m*u ;
0 , 0 , 0 , m*v ,-m*u , 0 ;
0 ,-m*w , m*v , 0 ,-I*r ,-I*q ;
m*w, 0 ,-m*u ,-I*r , 0 , I*p ;
m*v , m*u , 0 , I*q ,-I*p , 0 ];
pC.e =C*(pI.f);
Transformer element parameters
real m[6,6];
real Zg=-1.5;//Half lenght of arm/beam.
real Xg=0;
real Yg=0;
initialequations
m = [ 1.0 , 0.0 , 0.0 , 0.0 , Zg , -Yg ;
0.0 , 1.0 , 0.0 , -Zg , 0.0 , Xg ;
0.0 , 0.0 , 1.0 , Yg , -Xg , 0.0 ;
0.0 , 0.0 , 0.0 , 1.0 , 0.0 , 0.0 ;
0.0 , 0.0 , 0.0 , 0.0 , 1.0 , 0.0 ;
0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 1.0 ];
76
equations
p2.e= transpose (m) * p1.e;
p1.f= (m) * p2.f;
77
Appendix C
Added mass coefficients, DNV-RP-H103, April 2009
78
79
Appendix D
Project assignment fall 2010
PROJECT WORK IN MARINE MACHINERY FALL 2010
FOR STUD.TECHN. CHRISTIAN FAGERENG MATHEMATICAL MODELLING FOR
MARINE CRANE OPERATIONS
Work description Mathematical models for marine vessel dynamics including environmental loads is frequently used in many
applications. Extending these models to include propulsion machinery, deck machinery, large cranes or other
equipment used for marine operations or in operation simulators it is important for efficient model
development to have a clear understanding of how the interfaces have to be designed to facilitate connection of
models.The bond graph representation or modelling methodology focuses on the model structure and
properties required for connecting sub-models into large hybrid model and therefore may serve as a language
for analysis of model structure in such a sense.
This representation has been used in the Energy Efficient - All Electric Ship project and in a PhD-thesis where a
model library was developed. The work here is a continuation of these attempts and the objective is to increase
the number and further develop the models in this library.
Scope of work: 4. Review the modelling and models of Marine Vessel Dynamics. Implement a simplified bond graph
template model for a surface vessel for crane operations.
5. Review the modelling and models of large marine cranes for marine operations including typical heave compensation systems, the hydraulic winches and the control of this equipment. Discuss the structure or modular design of these hybrid models and suggest a method or implementation of these model into a modular component model library.
6. Combine the crane model developed and the vessel dynamic model into a complete model of a barge with a large crane for marine operations. Suggest a specific operation and demonstrate the capabilities of the developed model as a software simulator. For demonstration purposes include a Joy-stick for manned operation and develop a simplified animation displaying the motions of the barge and crane.
The report shall be written in English and edited as a research report including literature survey, description of
mathematical models, description of control algorithms, simulations results, discussion and conclusion
including a proposal for further work. Source code in Matlab/Simulink or equivalent shall be provided on a CD
with code listing enclosed in appendix.
80
It is supposed that Department of Marine Technology, NTNU, can use the results freely in its research work by
referring to the students work.
The thesis should be submitted in three copies within _____
Trondheim September 21, 2010
Eilif Pedersen
Associate Professor
top related