Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E....

50
Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    217
  • download

    1

Transcript of Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E....

Page 1: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Object-oriented Modeling of Mechatronics Systems in Modelica

Using Wrapped Bond Graphs

François E. Cellier and Dirk Zimmer

ETH Zürich

Page 2: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Outline

• Motivation• Graphical Modeling• Modeling Software Requirements• Bond Graphs• Electronic Circuits• Multi-bond Graphs• 3D Mechanics

Page 3: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Motivation

• In today‘s engineering practice, mathematical models of physical processes are frequently produced that are composed of thousands of equations. These models are difficult to create and even more difficult to maintain.

• A typical example of systems leading to highly complex models are mechanical multi-body systems.

• Tools are needed that enable us to keep the complexity of individual component models within limits.

• Model wrapping presents itself as a tool suitable for such purpose.

Page 4: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Graphical Modeling

• Graphical modeling is generally more suitable for the creation of models of complex systems than equation-based modeling.

• This is true because graphical models are naturally two-dimensional. Errors in hierarchically structured and topologically interconnected graphical models are usually discovered more easily and rapidly than errors in corresponding equation-based models.

• Evidently, the graphical models must be replaced by equation-based models at the lowest-possible level in the modeling hierarchy.

Page 5: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: 3D Mechanics

Page 6: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: 3D Mechanics II

Page 7: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: 3D Mechanics III

Page 8: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: 3D Mechanics IV

Page 9: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Software Requirements

• The semantic distance from the lowest graphical layer to the equation layer should be kept as small as possible. In this way, as much as possible can be modeled graphically.

• Mechanical multi-body component models are too complex to be used conveniently as building blocks of the lower-most graphical modeling layer.

• To this end, multi-bond graphs are considerably more suitable, as we shall demonstrate.

Page 10: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Bond Graphs: Example

Page 11: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Bond Graphs: Example II

S eU 0

0

I L

1

RR 1

0

CC

RR 2

i1

i1 i1

iL uL uCiC

u0

i0

u1

u2

i2

v2v1

Page 12: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Bond Graphs: Example II

S eU 0

0

I L

1

RR 1

0

CC

RR 2

i1

i1 i1

iL uL uCiC

u0

i0

u1

u2

i2

v2v1

Page 13: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Causal Bond Graphs

S eU 0

0

I L

1

RR 1

0

CC

RR 2

i1

i1 i1

iL uL uCiC

u0

i0

u1

u2

i2

v2v1

u0 = f(t)i0 = i1 + iL

uL = u0

diL/dt = uL / Lv1 = u0

u1 = v1 – v2

v2 = uC

iC = i1 – i2duC/dt = iC / C

u2 = uC

i2 = u2 / R2

i1 = u1 / R1

Page 14: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Advantages of Bond Graphs

• Bond graphs represent a generally usable approach to modeling physical systems of arbitrary types. They offer a suitable balance between general usability and domain orientation.

• The concepts of energy and power flows define a suitable semantic framework for bond graphs of all physical systems.

• The semantic meaning of each bond graph component model is sufficiently simple to afford easy maintainability of the equation layer below.

Page 15: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

The BondLib Library of Dymola

• Bond graphs can be drawn graphically on the computer.

• The resulting model can be simulated immediately.

• The library affords application specific solutions, such as a sub-library for electrical circuits.

Page 16: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multiple Modeling Interfaces in BondLib

Page 17: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib

The Bipolar Junction Transistor

Diagram window

Icon window

Page 18: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib II

Page 19: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib III

Page 20: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib IV

Page 21: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib V

Page 22: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib VI

Page 23: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib VII

Inverter Circuit

Page 24: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib VIII

Initial number of equations

Final number of equations

Simulation Time

Page 25: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Electronic Circuit Modeling in BondLib IX

Page 26: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Bond Graphs For Mechanical Systems

• Mechanical systems are three-dimensional. Every mechanical body that can move freely has six degrees of freedom. For this reason, the dAlembert principle must be formulated six times for each mechanical body.

• Mechanical bond graphs have a tendency of quickly becoming very large.

• Holonomic constraints cannot be formulated directly in the bond graph.

Page 27: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: A Planar Pendulum

Holonomic Constraint

Page 28: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Causality Conflict

Example: A Planar Pendulum II

dvx

dtm = -F sin(φ)

dvy

dtm = -F cos(φ) + mg

x = ℓ sin(φ)

vx = ℓ cos(φ) φ.

y = ℓ cos(φ)

vy = -ℓ sin(φ) φ.

1

I:m

vx

vx

F sin(φ)

Fx

1

I:m

Se:mg

vy

vy

vy

F cos(φ)

Fy

mg

0F sin(φ)

ℓ cos(φ) φ. 0

F cos(φ)

ℓ sin(φ) φ.

vx

0

φ = asin( x / ℓ )

Dqx

TF

φ

Page 29: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

We shouldn’t have to derive the equations first in order to be able to derive the bond graph from them.

The resulting bond graph didn’t preserve the topological properties of the system in any recognizable form.

Mechanical Bond Graphs

It has been possible to describe the motion of the planar pendulum by a bond graph enhanced by activated bonds for the description of the holonomic constraint. Unfortunately, the bond graph doesn’t tell us much that we didn’t know already.

Page 30: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

• Multi-bond graphs are a vectorial extension of the regular bond graphs.

• A multi-bond contains a freely selectable number of regular bonds of identical or similar domains.

• All bond graph component models are adjusted in a suitable fashion.

Multi-bond Graphs

} f3v

t

fy

vy

fx

vx Composition of a multi-bond for planar mechanics

Page 31: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

The MultiBondLib Library

• A Dymola library for modeling systems by means of multi-bond graphs has been developed.

• The library has been designed with an interface that looks as much as possible like that of the original BondLib library.

• Just like the original library, also the new multi-bond graph library contains sub-libraries supporting modelers in modeling systems from particular application domains, especially from mechanics.

Page 32: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Example: A Planar Pendulum III

Multi-bond graph of a planar pendulum

Page 33: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-bond Graphs: 2nd Example

Model of a crane crab

yprismatic joint

revolutejoint

mass 1

mass 2

rod

x

Prismatic Joint

Revolute Joint

Rod

Mass 2

Mass 1

Page 34: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-bond Graphs: 2nd Example II

Page 35: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-bond Graphs: 2nd Example II

Wall Prismatic Joint Mass 1 Revolute Joint Rod Mass 2

Page 36: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-bond Graphs: 2nd Example III

Wrapper models

Mechanical connectors

Page 37: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Model Wrapping

On the upper mechanical layer, an intuitive and simple to use interface is being offered.

The lower multi-bond graph layer offers a graphical interpretation that makes it possible to decompose even complex mechanical component models graphically into much simpler subcomponent models.

• Model wrapping offers the best properties of two worlds:

Page 38: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

3D Mechanics: Example

Multi-bond graph model of an uncontrolled bicycle

Page 39: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

3D Mechanics: Example II

Multi-body diagram of an uncontrolled bicycle

Page 40: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-bond Graphs for 3D Mechanics:

• Multi-bond graphs offer too low an interface to be used for modeling multi-body systems of 3D mechanics directly.

• The basic multi-bond graph component models are not at the right modeling level to carry meaningful multi-body system semantics.

• Consequently, multi-bond graphs of even fairly simple multi-body systems become quickly unreadable and therefore also poorly maintainable.

Page 41: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multi-body Diagrams for 3D Mechanics:

• Multi-body diagrams are easily interpretable, as their component models carry semantics that can be mapped one-to-one to those of the underlying physical system to be modeled.

• The standard Dymola library offers a multi-body library that is user-friendly and therefore widely used. However, the component models of that library have been implemented using matrix-vector equations directly. These models are therefore difficult to understand and maintain.

• The multi-bond graph library of Dymola offers a sub-library for 3D mechanics that re-implements the standard multi-body library. Yet, each of its component models has been internally realized as a multi-bond graph.

Page 42: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

3D Mechanics: Example IV

State variables:• FrontRevolute.phi• RearWheel.phi[1]• RearWheel.phi[2]• RearWheel.phi[3]• RearWheel.phi_d[1]• RearWheel.phi_d[2]• RearWheel.phi_d[3]• RearWheel.xA• RearWheel.xB• Steering.phi

2 systems of 3 and15 linear equations, resp.1 non-linear equation

Simulation20 sec, 2500 output points 213 integration steps 0.7s CPU-time

Plot window: Lean Angle

0 10 20

-0.2

-0.1

0.0

0.1

0.2

0.3

[rad

]

RearWheel.phi[2]

Page 43: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

3D Mechanics: Example III

State variables:• FrontRevolute.phi• RearWheel.phi[1]• RearWheel.phi[2]• RearWheel.phi[3]• RearWheel.phi_d[1]• RearWheel.phi_d[2]• RearWheel.phi_d[3]• RearWheel.xA• RearWheel.xB• Steering.phi

2 systems of 3 and15 linear equations, resp.1 non-linear equation

Simulation20 sec, 2500 output points 213 integration steps 0.7s CPU-time

Animation Window:

Page 44: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Animation

• Dymola offers means for animating models of mechanical systems.

• This is another reason, why multi-body diagrams are important. It is not meaningful to try to animate a multi-bond graph. Multi-bonds don’t carry suitable semantics for connecting them with an animation model.

• In contrast, the basic building blocks of an animation model are exactly identical to the multi-body component models. Therefore, animation models can be easily associated with multi-body component models, and this is the approach that Dymola took.

• Animation models have also been associated with the component models of the multi-body sub-library of the multi-bond graph library.

Page 45: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Simulation Run-time Efficiency

The run-time efficiency of the generated simulation code of a multi-body system model depends strongly on the selection of suitable state variables.

Page 46: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Simulation Run-time Efficiency II

• The run-time efficiency of the generated simulation code using the standard multi-body and the 3D mechanics sub-library of the multi-bond graph library is essentially the same.

• For simple models, the generated equations are identical.

• In more complex cases, the equations may differ slightly, because the connectors of the two libraries are not identical. Whereas the standard multi-body library carries for rotational dynamics only angles and torques in its connector, the multi-bond graph library carries angles, angular velocities and torques.

• This occasionally leads to slightly different constraint equations that will reflect upon the final set of generated simulation equations.

Page 47: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Multiple Interfaces in MultiBondLib

Page 48: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Conclusions

• Dymola offers a consequent and clean implementation of the principles of object-oriented modeling of physical systems. Dymola supports graphical encapsulation of models, topological interconnection of component models, and hierarchical decomposition of models.

• Model wrapping is essentially nothing new. It provides simply a systematic interpretation of the object-oriented modeling paradigm.

• Whereas object-oriented modeling provides no guidance as to how models should be encapsulated, the model wrapping paradigm, through the wrapper models, provides clean and consistent connectors at each layer of the model hierarchy.

Page 49: Object-oriented Modeling of Mechatronics Systems in Modelica Using Wrapped Bond Graphs François E. Cellier and Dirk Zimmer ETH Zürich.

Conclusions II

• Bond graphs (regular bond graphs, multi-bond graphs, thermo-bond graphs) offer the lowest graphical modeling framework that still carries physical meaning.

• The semantic distance from the bond graph down to the equation layer below is sufficiently small, so that the bond graph libraries are easily maintainable.

• The bond graph models can then be wrapped to carry the semantics of the component models up to a suitable level that specialists of the application domain are familiar with.

• All of the wrapping is done graphically, i.e., there is no equation modeling beyond the level of the basic bond graph component models.