Generation of Functional Mock-up Units from Causal Block Diagrams - - PowerPoint PPT Presentation

generation of functional mock up units from causal block
SMART_READER_LITE
LIVE PREVIEW

Generation of Functional Mock-up Units from Causal Block Diagrams - - PowerPoint PPT Presentation

Generation of Functional Mock-up Units from Causal Block Diagrams Bavo Vander Henst Bavo.VanderHenst@student.uantwerpen.be University of Antwerp Overview Functional Mockup Interface Starting point Flattening Optimization


slide-1
SLIDE 1

Generation of Functional Mock-up Units from Causal Block Diagrams

Bavo Vander Henst Bavo.VanderHenst@student.uantwerpen.be University of Antwerp

slide-2
SLIDE 2

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-3
SLIDE 3

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-4
SLIDE 4

FMI[1]

Functional Mockup Interface:

  • FMI for Model Exhange
  • FMI for Co-Simulation

[1] T. Blochwitz, M. Otter, M. Arnold, C. Bausch, C. Clauss, H. Elmqvist, et al., The functional mockup interface for tool independent exchange of simulation models, in: Modelica’2011 Conference, March, 2011, pp. 20–22.

slide-5
SLIDE 5

Model Exchange

slide-6
SLIDE 6

Co-Simulation

slide-7
SLIDE 7

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-8
SLIDE 8

Causal Block Diagram

Framework in Python

  • Base Block
  • CBD block
  • Linear Blocks
  • Delay Blocks
  • In and output blocks
slide-9
SLIDE 9

Causal Block Diagram

Simulator

  • Dependency graph
  • Sorted list of components
  • Strong components
slide-10
SLIDE 10

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-11
SLIDE 11

Flattening

slide-12
SLIDE 12

Flattening

slide-13
SLIDE 13

Flattening

slide-14
SLIDE 14

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-15
SLIDE 15

Optimization

Collapse Blocks

slide-16
SLIDE 16

Optimization

Constant folding Special Cases

  • 0 as input for adder
  • 0 as input for product
  • 1 as input for product
slide-17
SLIDE 17

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-18
SLIDE 18

Generate the Functional Mockup Unit

Functional mockup Unit:

  • XML-file
  • C-code
slide-19
SLIDE 19

Functional Mockup Unit

XML File

  • Model description
  • Model variables
  • (Solver details)
slide-20
SLIDE 20

Functional Mockup Unit

C-code

  • Based on SDK[2]
  • Subset of functions

[2] https://www.qtronic.de/en/fmusdk.html

slide-21
SLIDE 21

Functional Mockup Unit

C-code

  • variables array
  • setStartValues()
  • getReal()
  • ComputeVariables()
slide-22
SLIDE 22

Overview

Functional Mockup Interface Starting point Flattening Optimization Functional Mockup Unit Experiment

slide-23
SLIDE 23

Experiment

http://www.mathworks.nl/products/sl-design-optimization/examples.html;jsessionid =adb4c4c1b04e528081653e6d1a56?file=/products/demos/shipping/sldo/f14_estim.html

F14

slide-24
SLIDE 24

Experiment

Model of F14 Mean computation Time (s) Number of Blocks Python Not optimized 9.96355 140 Optimized 8.570786 116 FMU Not optimized 0.012619 140 Optimized 0.009318 116

slide-25
SLIDE 25

Questions?

slide-26
SLIDE 26

Conclusion