• No results found

Modelling and simulation of a switched power converter

N/A
N/A
Protected

Academic year: 2021

Share "Modelling and simulation of a switched power converter"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Modelling and simulation of a switched power converter

Krister Edstrom

(edstrom@isy.liu.se) Dept. of Electrical Engineering

Linkoping University S-581 83 Linkoping, Sweden

Jan-Erik Stromberg

(janerik@s3.kth.se) Dept. of Sensors, Signals and Systems Royal Institute of Technology

S-100 44 Stockholm, Sweden

Ulf Soderman

(ulfso@lin.foa.se) Defence Research Est. (FOA) Department of Laser Systems

P.O. Box 1165

S-581 11 Linkoping, Sweden

Jan Top

(j.l.top@ato.dlo.nl)

Agrotechnological Research Inst.

ATO-DLO, P.O. Box 17 NL-6700 AA Wageningen,

The Netherlands

Abstract

In our earlier work dealing with switched systems we have focused on the conceptual and formal side of the modelling process. In this paper we go one step further and illustrate the practical generation of simulation code from a switched bond graph.

The principles are illustrated by means of an in- dustrial switched power converter used to control the power of electric rotary machines.

We describe an implementation of the formal Mode Transition System (MTS) presented earlier.

The format proposed is referred to as Mode Tran- sition File (MTF) format. We present an algo- rithm to generate the mode transition le from a switched bond graph. Finally we illustrate how this le format can be converted to code for the well known DASSRT solver.

1 Introduction

The objective of this paper is to describe the pro- cess of generating numerical simulation code from a conceptual mode-switching model of a physical system. We illustrate the approach by means of an industrial power converter used to control the power of electric rotary machines. Some of the com- ponents in the power converter, the diodes and the thyristors, are very fast compared to the other com- ponents in the system. In other words, the change from state "conducting" to state "blocked" is sev- eral magnitudes faster than the normal change rate of the state variables of the system. Since these systems undergo abrupt changes between continu- ous modes of operation, we refer to them as mode- switching dynamic systems.

There are essentially two dierent approaches to the modelling and simulation of mode-switching systems. One is to employ purely continuous mod-

els and sti solvers. The design of such solvers is constantly being improved and hence the approach may become more and more powerful. Another ap- proach is to approximate the abrupt changes by in- stantaneous transitions and use solvers capable of handling discrete events. The resulting model is then referred to as a hybrid system in that it com- bines discrete transition conditions with continu- ous dierential equations. The latter approach is adopted and evaluated here.

Over the years, many papers have covered the problem of modelling and simulation according to the hybrid approach. A majority of these papers deals with mathematical and computational issues such as the mathematical representation, the inter- pretation, the analysis and the practical execution of hybrid systems 6, 4, 5, 1, 14, 2]. In our work, which started in 1990, we have adopted a slightly dierent view. Instead of emphasising the hard- core computational matters, we have emphasised the conceptual side 12, 11, 15, 13, 8] of the mod- elling process. As expected, such an approach raises much debate since simulation is usually seen as a computational issue. However, our claim is that a proper conceptual approach signicantly improves the model and the modelling process. In particu- lar, a conceptually clear model facilitates the com- munication between engineers and is more likely to survive during the entire product life cycle.

In this paper we go one step further, claiming that a conceptually clear model even improves the quality of the generated simulation code. We do so by showing how simulation code for the well known DASSL solver can be generated from switched bond graphs as presented earlier 12]. In order to make the approach independent of the specic solvers used, we also introduce a neutral mode transition

le (MTF) format. The MTF format is a concrete

(2)

implementation of the more abstract mode transi- tion system (MTS) presented earlier 10] as a com- putational model of switched bond graphs. The pa- per is completed by a few example runs.

2 The switched power con- verter

The switched power converter in gure 1 is used to control the power transferred from a voltage source to an inductive and resistive load our simplied model of the rotary machine. The converter can be divided into two subcircuits: a main-circuit in- cluding u , r m , l m , 

1

and 

2

and a turn-o circuit including 

3

, c

0

, l

0

and 

4

. The power transferred from the source to the load can be controlled by ma- nipulating the periodic control signals u

1

and u

2

.

+

- +

+ -

u



3



1



2



4

r m l m

l

0

c

0

u

2

u

1

load

Figure 1: The power converter circuit.

When the main circuit is transferring power, i.e. 

2

is conducting and 

1

is blocking, the current in the main circuit tends towards a steady-state de- termined by the magnitude of u , r m and l m . To turn-o the current at a certain level, the main cir- cuit has to be broken by the turn-o circuit.

Provided that c

0

is already pre-charged to some voltage u c

0

> 0 V, we initiate a harmonic oscilla- tion in the turn-o circuit by turning on thyristor



4

. The voltage over c

0

will then eventually drop below zero and as a consequence 

3

turns on. Pro- vided that the magnitude of the current through l

0

is larger than the magnitude of the load current, the current through thyristor 

2

will instantly drop to 0, hence making it turn o.

Since the turn-o circuit constitutes a harmonic oscillator, the current through l

0

will eventually pass through zero again, hence turning thyristor 

4

o. The remaining circuit now consists of a series connection of u , r m , l m ,  and c . The voltage

across c

0

will therefore continue to increase until diode 

1

conducts. The current through the load will continue to drop until thyristor 

2

is turned on once again. When 

2

is turned on, 

1

and 

3

will start blocking immediately, and the system has returned the initial mode.

Hence the average power transferred from the source to the load is determined solely by the timing of the control signals u

1

and u

2

. The most common way of manipulating u

1

and u

2

is to apply a peri- odic signal with a xed frequency, and to adjust the phase-angle between the two.

3 The switched bond graph model

A switched bond graph is a means to derive a hybrid model of a mode-switching system 12, 10]. The switched bond graph language is an extension of the classical bond graph language with one single element, namely the ideal primitive switch denoted

Sw

. A switched bond graph may be viewed as a compact representation of a set of classical bond graphs, each one representing a unique mode. In addition, a switched bond graph implicitly repre- sents the mode transitions and the conditions for switching between modes.

To derive a mode-specic bond graph for a partic- ular continuous mode, the switches in the switched bond graph are replaced by zero eort or zero ow sources, according to the states of the switches.

When the switch elimination is completed, it is typ- ically possible to simplify the graph according to classical bond graph simplication rules.

An interesting property of the switched bond graph language is that causality will change prop- erly upon mode-transitions. A consequence is that each mode-model derived from a switched bond graph corresponds exactly to the bond graph which could be derived directly from the system con- sidered in that particular mode. Another conse- quence is that switched bond graphs allow us to use causal analysis to identify e.g. 'fatal' or 'non- physical' modes 10]. A third consequence is that the computational model generated from a switched bond graph may not always be minimal (e.g. a state space form with if-conditions in the right hand side only). However, in automated modelling, minimal- ity of the simulation code is not a critical issue since this can be dealt with separately as a part of the compilation process. Conceptual clarity is, in our view, much more important in order to maintain model quality in an industrial context.

A switched bond graph model of the switched

power converter is depicted in gure 2. Here the

diodes and thyristors are modelled as ideal switches,

i.e., they can be in one out of two possible states,

namely zero eort (

E

) or zero ow (

F

) state. From

the gure it is quite clear how the mechanisms in the

ideal physical model (IPM) in gure 1 are mapped

onto ideal primitive bond graph elements. Any

(3)

Sw: m2

Se: u

1

0 1

0

1

0

1

Sw: m1

Sw: m3

Sw: m4 C: c0

I: lm

I: l0

R: r0 u1

u2

Figure 2: A switched bond graph model of the power converter.

method from the literature, to convert a domain specic IPM to a bond graph, can be almost imme- diately applied to switched bond graphs.

The conditions for switching between the two diode modes are f < 0 (

E;!F

) and e > 0 (

F;!

E

), or reversed if the direction of the diode is oppo- site to the positive current direction. For a thyris- tor the rst condition is the same as for a diode, but the second condition involves an additional re- lation over the gate voltage u and the gate turn-on threshold k : e > 0

^

u > k . As for the other el- ements in the bond graph, they are all assumed to be characterised by linear relations with the follow- ing parameter values: r m = 1 l m = 10 mHl

0

= 0 : 2 mHc

0

= 1 mFu = 100 V .

See 10] for further details regarding the charac- terisation of the switched bond graph.

4 The mode transition le

In earlier work 10, 8, 9] we have presented a formal but abstract representation of the computational model underlying a switched bond graph. The rep- resentation is referred to as Mode Transition Sys- tems (MTS).

The purpose of the abstract notation used, is to allow a precise understanding of the behaviour rep- resented by a switched bond graph. At the same time, the notation is neutral in the sense that we do not have to refer to the semantics of a specic programming language in order to interpret the rep- resentation. In that sense an MTS plays very much the same role for a switched bond graph, as a dif- ferential algebraic equation (DAE) system does for

classical bond graphs.

In order to represent an MTS in a computer, we have to make the representation more concrete at the expense of making it less neutral. Still, we can maintain neutrality with respect to the specic nu- merical solver used. By maintaining this clear dis- tinction between the meaning of a bond graph on the one hand (the MTS) and its execution on the other (the solver-specic code), we make it simpler to generate code for a wide variety of numerical solvers.

The concrete implementation of the MTS is pre- sented here in terms of a neutral le format, referred to as the Mode Transition File (MTF) format. In order to produce code for a specic solver, we sim- ply need to write a parser which takes the MTF as input and generates the solver specic code accord- ing to its specic syntax. Compare this two-pass approach to that used in any high-level language compiler.

The structure of the MTF is particularly de- signed to allow for future optimisation of the code size. The general idea is to allow for reuse of code- segments within an MTF. One of the keys to this option is the use of labels.

Since the MTF is a concrete mapping of the underlying MTS, the information contained in an MTF is essentially the same as that of an MTS.

More precisely, an MTF is a text le which consists of six main blocks:

1. An identier declaration block 2. A mode-model declaration block 3. A transition condition declaration block 4. A transition initialisation declaration block 5. A mode (switch state) denition block 6. A mode-transition denition block

The identier declaration block is further parti- tioned into the following three parts:

 Parameters

: denition of all model variables which are time-invariant

 Variables

: denition of all time-varying model variables, except for those which are in- puts to the system

 Inputs

: denition of those variables which constitute the external input to the system (e.g. control signals or disturbances)

The mode-model declaration block starts with the keyword

ModeDynamics

and is further decom- posed into sub-blocks labelled

md<num>:

where

<num>

is an integer number



1. Each mode-model

label is followed by a sequence of causally ordered

dierential and algebraic expressions, dening the

behaviour of that particular mode. The expres-

sions are restricted to the identiers declared in the

(4)

identier block and to a specic pre-dened set of unary and binary operators. Expressions are de- limited by line-wraps, mode-models are delimited by new mode-model labels and the entire mode- model block is terminated by the keyword

EndOf

ModeDynamics

.

The transition condition block starts with the keyword

TransitionConditions

and is further decomposed into individual transition conditions.

Transition conditions start with condition labels

trc<num>:

in the same way as mode-models do.

Each condition label is followed by exactly one Boolean expression over relations over the identi-

ers in the identier declaration block. The transi- tion condition block is terminated by the keyword

EndOf TransitionConditions

.

The transition condition block is followed by a corresponding initialisation block introduced by the keyword

TransitionInitialisations

. Tran- sition initialisations start with initialisation labels

tri<num>:

in analogy with transition conditions.

Each such label is then followed by a sequence of expressions over the identiers in the identier declaration block. Expressions are delimited by line-wraps, initialisations by new labels and the entire block is terminated by the keyword

EndOf

TransitionInitialisations

.

The two transition related blocks are followed by the mode denition block introduced by the keyword

Modes

. The block is further decomposed into separate modes by mode-labels

mode<num>:

. Each mode-label is followed by a pair consisting of a mode-model label and a switch-state string.

A switch-state string is a string composed of the state-labels of the individual switches. Therefore this string typically consists of a sequence of

F

:s and

E

:s corresponding to the eort and the ow states of the switches. Modes are delimited by new mode-labels and the entire block is terminated by the keyword

EndOf Modes

.

Note that two dierent modes, i.e. switch state congurations, may very well correspond to one and the same continuous mode-model. This is the rea- son for making a distinction between mode-models on the one hand, and modes on the other, since it facilitates optimisation of the size of the MTF by reuse of mode-models.

The MTF is nally concluded by a transi- tion declaration block introduced by the keyword

Transitions

. The transition block is the block which denes the structure of the overall transition system. It consists of a sequence of transition dec- larations, which are delimited by means of square brackets (

]

). Each individual transition consists of a pair of mode-labels, delimited by

]

, a transition condition label and a transition initialisation la- bel. These three elements are delimited by commas.

One of these elements, namely the transition ini- tialisation, is optional, and may therefore be substi- tuted by the special keyword

nil

(no initialisation).

The mode transition block is terminated by the key- word

EndOf Transitions

. The entire MTF is -

nally terminated by

EndOf ModeTransitionFile

.

4.1 Generating the MTF

In an ongoing research eort, we are currently im- plementing experimental code generators for the proposed MTF format. When providing the switched bond graph in gure 2, the code gener- ator, currently under construction, generates the MTF example presented below. The code-partition presented shows the information relevant for mode

FEFE

. Also, the identiers appearing in the code, have the following meaning with respect to the vari- ables in gure 2: r m =

R1

, l m =

I1

, l

0

=

I2

, c

0

=

C1

, u =

Se1

, u

1

=

u1

, u

2

=

u2

, u c

0

=

x1

, i l m =

x2

, i l

0

=

x3

Given these identiers, the following code is produced by the code generator:

ModeTransitionFile Parameters

R1 = 1.0 C1 = 0.001 I1 = 0.01 I2 = 2.0e-4 Se1 = 100.0 EndOf Parameters Variables

x1, x3, x2 EndOf Variables Inputs

u1, u2 EndOf Inputs ModeDynamics

...

md6:der(x1) = - 1/(I2)*x3 der(x2) = Se1 - R1/(I1)*x2 der(x3) = 1/(C1)*x1

...

EndOf ModeDynamics TransitionConditions

...

trc5: 1/(I2)*x3 < 0 ...

trc9: Se1 > 0

trc10: 1/(I1)*x2 < 0 trc11: 1/(C1)*x1 > 0

...

EndOf TransitionConditions Modes

...

mode6: md6, FEFE ...

EndOf Modes Transitions

...

(5)

 mode6, mode14], trc9, nil]

 mode6, mode2], trc10, nil]

 mode6, mode8], trc11, nil]

 mode6, mode5], trc5, nil]

...

EndOf Transitions EndOf ModeTransitionFile

The complete algorithm generating the MTF is a two-pass algorithm. In the rst pass the modes are extracted, and in the second, the transitions are derived.

The algorithm for nding the modes is straight- forward: for all combinations of switch states, re- place the switches by proper sources, and then derive the mode-equations using established algo- rithms 7, 16].

In order to extract the transitions, we rst have to make an important decision: Do we allow for one single or any number of switches to toggle at one single mode-transition? As usual, the choice depends on the purpose of the model and the ques- tions to be answered by the simulation. The choice is also a matter of computational complexity. So far we have employed so called interleaved composi- tion, 9], of the transitions, which means that we as- sume only one single switch can toggle at one single mode-transition. The consequence of making this assumption is that we have to deal with so called transient modes. The analysis required to resolve this problem was described in 10]. Due to space restrictions we will not further discuss the practi- cal implementation of the transient mode-analysis.

Another consequence of the decision made, is that the resulting MTF will become smaller than if more than one switch were allowed to toggle (parallel composition).

Leaving out the details having to do with tran- sient modes, the resulting transition composition algorithm can be summarised as follows: For all modes and all switches, change the switch state corresponding to the mode by toggling one switch.

Add to the set of transitions the transition between the original mode, the new mode and the condition for toggling the switch to the new mode. Finally add the initialisation rule (if any) to that transi- tion.

5 Simulation code generation

Once the MTF has been generated, it can almost immediately be converted to code specic for a cer- tain numerical solver. Consider for instance the well known solver DASSRT, a version of DASSL 3] with a built-in root nder. Converting the MTF to the Fortran code required by DASSRT is now a mat- ter of simple string manipulations. This converter, and many other converters that may be needed in the future, can be automatically generated by any compiler-compiler, once the syntax of the solver is

VDA

0 0.02 0.04 0.06 0.08 0.1 0.12 0.14

-100 -50 0 50 100 150 200 250

Currentthroughload

VoltageoverC0

CurrentthroughI

0

Figure 3: Result from a simulation of the bond graph of the power converter.

given in terms of a Backus-Naur Form (BNF) or equivalent.

Using the experimental DASSRT code generator constructed so far, we obtain the simulation result depicted in gure 3. In this particular experiment the initial values were u c

0

(0) = 100 V, i l m (0) = 90 A and i l

0

(0) = 0 A. We see that the average load current i l m is approximately 100 A and that the turn-o circuit is active only a small part of the time.

To study the details of the cyclic mode-changes, we focus on a small part of the simulation data. In

gure 4 the rst peak of the load-current is plot- ted. Here the changes between the dierent modes are clearly visualised, with the load-current rescaled and rebiased.

The plot begins in mode (a), i.e. switch state

FEFF

in which the current through the load is slowly increasing. Then thyristor 

4

is turned on externally. In mode (b) (

FEFE

) the voltage u c

0

over the turn-o capacitor starts to decrease. When u c

0

passes below 0, a new mode (c) (

FFEE

) is en- tered since diode 

3

starts to conduct and thyristor



2

turns o. Mode (d) (

FFEF

) is entered when the current through the turn-o thyristor 

4

crosses the zero again. Finally mode (e) (

FFEF

) is entered when voltage u c

0

reaches the same value as u and diode 

3

blocks. The cycle restarts when thyristor



2

is once again turned on externally.

6 Conclusions

We have shown that simulation code for hybrid sys- tems can be extracted from a switched bond graph.

The result is a Mode Transition File (MTF), the

operational version of a Mode Transition System

(MTS). The latter formally represents the compu-

(6)

t

V/A (a) (b) (c) (d) (e) (a)

0.018 0.019 0.02 0.021 0.022 0.023 0.024 0.025

−100

−50 0 50 100 150 200 250

Currentthroughload

VoltageoverC

0

CurrentthroughI

0

Figure 4: A closeup of the simulation result, show- ing the dierent mode transitions. The load current is rescaled and rebiased.

tational model underlying a switched bond graph.

The format of the MTF is independent of the spe- cic solver used, and serves as a neutral exchange

le. Moreover, by separating the modes and mode transitions from their internal specications, we al- low for optimisation of the code size.

We have implemented the proposed approach and tested it for a number of practical cases. Some sim- ulation results have been presented using a non- trivial example from the electrical domain.

In the ongoing research of hybrid systems we plan to develop a formal (BNF) syntax of the MTF. This will allow others to generate translators for specic solvers. Moreover, we aim to work more on the issue of transient modes and mode consistency checking.

We assert that the introduction of the conceptual switching element in bond graphs alleviates these inherently complex and important problems.

References

1] M. Andersson. Object-Oriented Modeling and Simulation of Hybrid Systems. PhD thesis, Lund Institute of Technology, 1995.

2] M.S. Branicky. Studies in Hybrid Systems:

Modeling, Analysis, and Control. PhD thesis, MIT, 1995.

3] K.E. Brenan, S.L. Campbell, and L.R. Petzold.

Numerical Solution of Initial-Value Problems in Dierential-Algebraic Equations. North- Holland, 2 edition, 1989.

4] Z. Chaochen, A.P. Ravn, and M.R. Hansen. An extended duration calculus for hybrid real-time systems. In Hybrid Systems, Lecture Notes

in Computer Science, No. 736, pages 36{59, Berlin, 1993.

5] H. Elmqvist, F.E. Cellier, and Martin Otter.

Object-oriented modeling of hybrid systems.

pages xxxi{xli. SCS, 1993.

6] R.L. Grossman, A. Nerode, A.P. Ravn, and H. Rischel, editors. Proc. of Workshop on The- ory of Hybrid Systems, LNCS 736, Lyngby, Oc- tober 1992. Springer Verlag.

7] D.C. Karnopp, D.L. Margolis, and R.C. Rosen- berg. System Dynamics, A Unied Approach.

Wiley Interscience, 1990.

8] U. Soderman. Conceptual modelling of mode switching physical systems. PhD thesis, Linkoping University, Linkoping, 1995. Dis- sertation no. 375.

9] U. Soderman and J.-E. Stromberg. Switched bond graphs: multiport switches, math- ematical characterization and systematic composition of computational models.

Technical Report R-95-07, Department of Computer and Information Science, Linkoping University, Sweden, 1995.

http://www.ida.liu.se/publications/cgi- bin/tr-fetch.pl?R-95-07+bib.

10] U. Soderman and J.-E. Stromberg. Towards systematic composition of computational mod- els. In Proc. Second Int. Conf. on Bond Graph Modeling (ICBGM'95), volume 27 of SCS Sim- ulation Series, pages 73{79, 1995.

11] U. Soderman, J.L. Top, and J.E. Stromberg.

The conceptual side of mode switching. In Proc. of the IEEE Int. Conf. on Systems, Man and Cybernetics (SMC'93), volume 1, pages 245{250, Le Touquet, 1993.

12] J.-E. Stromberg, J. Top, and U. Soderman.

Variable causality in bond graphs caused by discrete eects. In Proc. First Int. Conf. on Bond Graph Modeling (ICBGM'93), volume 25 of SCS Simulation Series, pages 115{119, 1993.

13] J.E. Stromberg. A mode switching modelling philosophy. PhD thesis, Linkoping University, Linkoping, 1994. Dissertation no. 353.

14] J.H. Taylor and D. Kebede. Modeling and simulation of hybrid systems in matlab. In IFAC'96 proceedings, pages 275{280. IFAC, 1996.

15] J.L. Top. Conceptual modelling of physical sys- tems. PhD thesis, University of Twente, En- schede, 1993.

16] J. van Dijk. On the Role of Bond Graph Causality in modelling mechatronic systems.

PhD thesis, University of Twente, 1994.

References

Related documents

The three functions defined on the Y-graph with the Laplace operator act- ing on them are defined on separate edges and their boundary values at the origin are independent, with

46 Konkreta exempel skulle kunna vara främjandeinsatser för affärsänglar/affärsängelnätverk, skapa arenor där aktörer från utbuds- och efterfrågesidan kan mötas eller

The purpose of Section 5 is to compare the performance of GPUGDA in com- parison to the performance of corresponding queries to Neo4j databases using Cypher, the query language

The results show that the material has to have a yield strength of at least 349MPa to ensure that the magnetic properties are not affected by the stresses acting on the rotor.

The choice of dc-link capacitor is partly based on the study the ripple current that the dc-link capacitor will experience. In order to determine the right size of capacitance,

In this paper a physically based initialization algorithm for a system modeled with switched bond graphs 6] is analyzed using singular perturbation theory.. All proofs have

The conceptual modelling language proposed for mode- switching physical systems is referred to as switched bond graphs.. One reason for the name is that the lan- guage heavily relies

In the corporate bond sample, the yield spread and difference in liquidity are different from zero and negative with a 95% confidence interval indicating that the bonds in