november 21, 2005 center for hybrid and embedded software systems example to illustrate how changes...

1
November 21, 2005 Center for Hybrid and Embedded Software Systems Example To illustrate how changes in DB can be used to efficiently update a block diagram, consider the circuit shown to the left. Following standard bond graph modeling techniques, we obtain the corresponding bond graph: Converting this bond graph to a block diagram results in: Junction 1 a switching off results in a change in determining bonds: And thus a change in the block diagram: Yet the changes are not always this drastic; consider junction 1 b switching off. Since the determining bond remains the same, the change is local to the switching junction: Introduction Why Hybrid Bond Graphs? A large class of present day complex systems and processes combine continuous plants and discrete controllers, and are typically described as hybrid systems. A convenient approach to modeling such systems is the hybrid bond graph language, a generic lumped parameter, energy-based modeling language that provides a common topological framework for modeling a number of different physical system domains, such as electrical, fluid, mechanical, and thermal systems. The hybrid bond graph (HBG) paradigm, extends classic bond graph (BG) modeling by incorporating mechanisms that allow for discrete changes in system configuration, and, therefore, the dynamic behavior of the system. Christopher Beers, Vanderbilt University Efficient Simulation Model for Hybrid Bond Graphs Simulation Results: The above simulation was run for 10 seconds, switching though all possible modes. The figure shows the efforts and flows for each junction, as well as the junction states. Approach Bond graph to block diagram conversion: HBG provide a topological framework that supports run-time model reconfiguration, however, there is no associated computational model. Our approach: use causal structure implied by BG to derive block diagrams for simulation Determining Bond Determining bonds (DB) express causality at a junction. Only changes in DBs result in changes in the junction’s algebraic relations, and have the possibility of propagating. 1 b Switches Off: 1 a Switches Off: Implementation MATLAB/Simulink The notion of determining bonds can be used to implement an efficient simulation. A causality update function is triggered by a change in discrete state, which propagates new DBs. Junctions are implemented as S-functions that enforce DB’s algebraic constraints. New DB New DB New DB Old DB Related Work & Conclusions •Algebraic constraints may be directly implemented in Simulink, yet this approach does not scale well. •Edstrom worked on causality reassignment after junction switches occur, but his focus was on derivative causality and not efficiency. •Umarikar and Umanand took a similar approach with the notion of switched power junctions. •Ptolemy’s notion of a director would have made integration of the continuous and discrete models of computation more natural. •HYBRSIM, developed by P. Mosterman, can simulate hybrid bond graphs with runtime causality changes, but does so in an interpreted fashion. Same DB Same algebraic relations New DB New algebraic relations • Junctions represent algebraic constraints between elements, determined by causality assignments. • In HBGs, junctions can switch and thus the algebraic relations can change at runtime. • This implies the block diagram can change at runtime. • Need a way to track and propagate these changes.

Upload: laurence-pope

Post on 03-Jan-2016

216 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: November 21, 2005 Center for Hybrid and Embedded Software Systems Example To illustrate how changes in DB can be used to efficiently update a block diagram,

November 21, 2005 Center for Hybrid and Embedded Software Systems

ExampleTo illustrate how changes in DBcan be used to efficiently updatea block diagram, consider the circuit shown to the left.Following standard bond graph modeling techniques, we obtain the corresponding bond graph:

Converting this bond graph to a block diagram results in:

Junction 1a switching off results in a change in determining bonds:

And thus a change in the block diagram:

Yet the changes are not always this drastic; consider junction 1b switching off. Since the determining bond remains the same, the change is local to the switching junction:

Introduction

Why Hybrid Bond Graphs?

A large class of present day complex systems and processes combine continuous plants and discrete controllers, and are typically described as hybrid systems. A convenient approach to modeling such systems is the hybrid bond graph language, a generic lumped parameter, energy-based modeling language that provides a common topological framework for modeling a number of different physical system domains, such as electrical, fluid, mechanical, and thermal systems. The hybrid bond graph (HBG) paradigm, extends classic bond graph (BG) modeling by incorporating mechanisms that allow for discrete changes in system configuration, and, therefore, the dynamic behavior of the system.

Christopher Beers, Vanderbilt University

Efficient Simulation Model for Hybrid Bond Graphs

Simulation Results:

The above simulation was run for 10 seconds, switching though all possible modes.

The figure shows the efforts and flows for each junction, as well as the junction states.

Approach

Bond graph to block diagram conversion:

HBG provide a topological framework that supports run-time model reconfiguration, however, there is no associated computational model.Our approach: use causal structure implied by BG to derive block diagrams for simulation

Determining Bond

Determining bonds (DB) express causality at a junction. Only changes in DBs result in changes in the junction’s algebraic relations, and have the possibility of propagating. 1b Switches Off: 1a Switches Off:

Implementation

MATLAB/Simulink

The notion of determining bonds can be used to implement an efficient simulation. A causality update function is triggered by a change in discrete state, which propagates new DBs. Junctions are implemented as S-functions that enforce DB’s algebraic constraints.

New DB New DBNew DBOld DB

Related Work & Conclusions•Algebraic constraints may be directly implemented in Simulink, yet this approach does not scale well.•Edstrom worked on causality reassignment after junction switches occur, but his focus was on derivative causality and not efficiency.•Umarikar and Umanand took a similar approach with the notion of switched power junctions.•Ptolemy’s notion of a director would have made integration of the continuous and discrete models of computation more natural.•HYBRSIM, developed by P. Mosterman, can simulate hybrid bond graphs with runtime causality changes, but does so in an interpreted fashion.

Same DB

Same algebraic relations

New DB

New algebraic relations

• Junctions represent algebraic constraints between elements, determined by causality assignments.• In HBGs, junctions can switch and thus the algebraic relations can change at runtime.• This implies the blockdiagram can change at runtime.• Need a way to trackand propagate thesechanges.