1 / 43

Modelling Hybrid systems

Modelling Hybrid systems. Hybrid Systems. Hybrid (combined) Modeling Framework Use more than one formalism Different formalisms to specify different levels of abstraction Top-down design step-wise refinement Ex: FSM + Difference equation Design and Implement the following waveform generator

vern
Télécharger la présentation

Modelling Hybrid systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Modelling Hybrid systems

  2. Hybrid Systems • Hybrid (combined) Modeling Framework • Use more than one formalism • Different formalisms to specify different levels of abstraction • Top-down design • step-wise refinement • Ex: FSM + Difference equationDesign and Implement the following waveform generator • ObservationPeriodic, say-tooth waveformTc : Charging timeTd : Discharging time • Top-Level Spec in FSMM=<X, Y, S, , >S = { Ch, Dis}X = { charge, discharge}Y= { 0_to_V, V_to_0} V Tc Td

  3. Example: hierarchical control • Ex. Hierarchical control Operator Planning/scheduling Event-based control Discrete Event Controller Supervisory control Discrete state Command PID controller analog/digital Time-based control actuation Sensor Plant

  4. Motivation • Opto-electrical interfaces: transmitter and receiver • Conversion of electrical current into optical impulses, and viceversa.

  5. Motivation • Continuous systems analysis: • Different mathematical formalisms • Simulation: solutions to particular problems under certain experimental conditions of interest • Classical methods for continuous systems simulation • Based on numerical approximation • Require time discretization => of time • Inefficient in terms of execution times • Complex composition; difficulties in integration, multiresolution models • Benefits of DEVS for continuous system M&S • Discrete event models specification: continuous time base • Execution time reduction • Complex system definition using hierarchical modular models • Easier integration with discrete-event models

  6. GDEVS • Generalization of DEVS formalism • Polynomial of any degree to represent piecewise input-output trajectories • Introduction of a new event concept: coefficient-events • Advantages of GDEVS • Greater accuracy for continuous systems modeling • Unified approach to model hybrid systems • Piecewise linear trajectory specification w<t0;tn>  A a trajectory on a continuous time base finite set of instants t0, t1,…,tn associated with constant pairs (ai; bi) such that t  <ti; tj>, w(t) = ai t + bi, and w<t0; tn> = w<t0;t1>*w<t1;t2>*…*w<tn-1;tn>

  7. Discontinuities Event at t+d f1(x,u) f2(x,u) t-2h t-h t t+d t+h

  8. Overview of Hybrid OO modelling. • The occurrence of events should be notified to the simulation runtime. • Time events: calendar of events is known beforehand. f1(x,u) f2(x,u) t-2h t-h t t+d t+h • Stateevents: triggeredbystate of simulation

  9. Quantized DEVS • Continuous signal represented by crossing of an equal spaced set of boundaries, separated by a quantum size • Check for boundary crossing for every change in the model • Outputs generated only when a crossing occurs • Substantial reduction of the message updates frequency Signal Quantization

  10. DEVS Quantized models • Crossings of an equal spaced set of boundaries: quantum • Quantizer: checks for boundary crossings. • The sender computes a value, and generates outputs. • The number of messages involved is reduced. • The quantizer consumes CPU time. • The receiver will have some error, depending on q.

  11. Theoretical results on quantization #messages(D) = #messages(1)/D Error = c D 0 1 Quantum size, D Dtol = tolerance / c Tolerance to error

  12. Q-DEVS with hysteresis • strong stability, convergence and error bound properties. • If signal changes direction: use n*Q size (proof: n=2 provides best results) • If signal keeps current direction: use Q size

  13. QDEVS based models Uniform quantizer with hysteresis Uniform quantizer • Hysteresis assures legitimate DEVS models’ simulation • Avoids infinite iterations on finite time interval

  14. Multiple Model Controller

  15. Adaptive Control results q=0.02 q=0.2

  16. Higher-order Approximations

  17. Complete model • Multiple model controller allowed to operate as designed, and switch among plant identifying models • Controller was able to find it and use its parameters • Error existed only at the period coinciding w/each jump in plant parameters • Only at time 355 did a false model switch occur (due to two models having almost zero error )

  18. SF R Bond Graphs • Suitable for multiple domains: electrical, mechanical, hydraulic, etc. • Physical processes: vertices in a directed graph. Edges: represent ideal exchange of energy between components. • Interactions: 0-junction (connectors), 1-junction (interactions between serial components). • Causality: given a pair of elements connected through a bond, causality determine which component causes flow, which effort.

  19. Bond Graphs Formalism • Exchange of energy and information between elements of a system can be represented in a graphical form • Energy is the fundamental feature that is exchanged between elements of a system during interaction • Constrained interactions in Bond Graphs are represented by junctions • constraint equalizes the flow in the elements 1-junction • constraint equalizes the effort in the elements 0-junction

  20. A library for Bond Graph development on DEVS • Model library: modular approach to build systems; code reuse • Bond Graph library built to model and simulate continuous systems on different domains • Library designed using GDEVS formalism concepts • BG components developed as atomic GDEVS models of degree one • Multicomponent systems can be built as coupled DEVS components • Models implemented using the CD++ tool

  21. GDEVS Capacitor model • Equations: Flow arrives at component: dext. - Calculates effort: integrate input flow data (generate Capacitor’s load). - Value computed according to the elapsed time since last transition. - Output function transmits the previously computed value yout. - Internal transition: computes next state using a polynomial approximation. External transition . . . // time since last transition elapsedTime=msg.time().asMsecs()- time; // calculates load value c = c+a1/2*pow(elapsedTime,2)+a0*elapsedTime; . . . yout->updElementAtPos(1, c); yout->updElementAtPos(2, a1/2*dt + a0); holdIn( active, Time::Zero ); Internal transition // approximates load using order 1 polynomial. if ( a1 != 0 ) { // next state calculated using coefficients c = c + a1/2 * pow(dt,2) + a0*dt; a0 = a1*dt + a0; // coefficient values to send when dt elapsed yout->updElementAtPos(1,c); yout->updElementAtPos(2,a1/2*dt+a0); holdIn(active, Time(dt)); } else { passivate(); // slope is null }

  22. BG library class hierarchy

  23. Model execution examples • Electrical Circuit Simulation Bond Graph model construction of the electrical circuit Electrical circuit Bond Graph representation

  24. Electrical circuit simulation GDEVS Bond Graph model representation

  25. Bond-Graph model simulation in CD++ • Resistance (R1)=1 • Inductors: L1 = 48; L2 = 48. • Capacitance: C = 65. • Conductance: R2 = 0.001 • EffortSource: emits pulses; period = 2500 ms; duration = 2 ms. Pulse amplitude= 220 V Circuit current

  26. Model execution – Comparing Quantizers • Uniform quantizer vs. HQ (Quantizer with hysteresis) Test cases - Evaluation functions

  27. Modelica • object-oriented language for modeling physical systems • designed to support library development and model exchange • Modelica supports different formalisms such as: • ODEs • finite state automata • Petri nets • discrete events • bond graphs

  28. Creating Models in Modelica/CD++ Model circuit Modelica.Electrical.Analog.Sources.SineVoltage V(V=15,freqHz=60); Modelica.Electrical.Analog.Basic.Resistor R1(R=10); Modelica.Electrical.Analog.Basic.Ground Gnd; equation connect(V.p, R1.p); connect(R1.n, V.n); connect(R1.n, Gnd.p); end circuit1;

  29. M/CD++ Execution Example: Modelica model model circuit Modelica.Electrical.Analog.Sources. PulseVoltage V(V=10,width=50, period=2.5); Modelica.Electrical.Analog.Basic.Resistor R1(R=0.001); Modelica.Electrical.Analog.Basic.Inductor I1(L=500); Modelica.Electrical.Analog.Basic.Inductor I2(L=2000); Modelica.Electrical.Analog.Basic.Capacitor C(C=10); Modelica.Electrical.Analog.Basic.Resistor R2(R=1000); Modelica.Electrical.Analog.Basic.Ground Gnd; equation connect(V.p, R1.p); connect(R1.n, I1.p); connect(R1.n, I2.p); connect(I2.n, C.p); connect(I2.n, R2.p); connect(C.n, I1.n); connect(R2.n, C.n); connect(I1.n, V.n); connect(V.n, Gnd.p); end circuit;

  30. M/CD++ Execution Example: The results

  31. M/CD++ Execution Example: The results

  32. Modelica/DEVSLib Model • Transmitter model • The received electrical current (continuous) is translated into optical impulses (discrete). • The driver model can include any modulation and polarization circuit. No actions performed in this case, to simplify the model. • The laser translates the electrical signal into events using the crossUP model included in DEVSLib.

  33. Modelica/DEVSLib Model Detail of the crossUP model when (u > Value-Threshold) and x > 0 and time > 0 then e.Type := EType; e.Value := u; e.Port := 1; sendEvent(outport.queue, e); outport.event := pre(outport.event) + 1; end when;

  34. Cell-DEVS quantization

  35. Quantized Cell-DEVS • Every cell includes a quantizer. • The value produced by the local computing function is quantized. • The quantized value is compared with the quantum threshold. • If the threshold bound was reached, an output is provided. The output is delayed using transport or inertial delays. • If the threshold was not reached, the change is not sent to other models.

  36. Experimental results (a) Heat diffusion: two-dimensional model (10x10 cells). One "hot" cell. (b) Heat model with 87% of active cells. (c) Three-dimensional extension of the previous model. (d) Three-dimensional modification of the Life game (e) Four dimensional extension of the previous model. (f) Dynamic heat seeker: a three dimensional model consisting of two adjacent planes.

  37. Number of messages involved

  38. Error behavior

  39. Cell-DEVS w/Dynamic Quantization • Reduce error (improving precision) in each cell. • Rationale: active cell can appear as quiescent (Q size covering activity area). Q dynamically adjusted -> smaller error. • Dynamic increase Q in cells with steep update functions: execution improved at a low cost. • Strategy 1: reduce Q if cell's update does not cross threshold (increase precision). • Strategy 2: reduce Q if threshold is crossed (2nd chance in case of oscillations; higher precision).

  40. Test cases: a heart tissue model • Heart muscle excitable; responds to external stimuli by contracting muscular cells. • Equations defined by Hodgkin and Huxley

  41. A Watershed model

  42. Flow Injection Analysis Model

  43. Approximating the Corsica fire model

More Related