13.07.2013 Aufrufe

Modellbasierter Entwurf von Steuerungen und Regelungen

Modellbasierter Entwurf von Steuerungen und Regelungen

Modellbasierter Entwurf von Steuerungen und Regelungen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

3. Fachwissenschaftliches Kolloquium<br />

„Angewandte Automatisierungstechnik<br />

in Lehre <strong>und</strong> Entwicklung“<br />

<strong>Modellbasierter</strong> <strong>Entwurf</strong><br />

<strong>von</strong> <strong>Steuerungen</strong> <strong>und</strong> <strong>Regelungen</strong><br />

Urban Brunner<br />

Hochschule Karlsruhe _ Technik <strong>und</strong> Wirtschaft<br />

an der Fachhochschule Düsseldorf vom 16.-17. Februar 2006


Gliederung<br />

Systematischer <strong>Entwurf</strong> <strong>von</strong> Prozesssteuerungen (Teil 1)<br />

Vorbemerkungen (preliminary remarks)<br />

<strong>Modellbasierter</strong> Reglerentwurf<br />

Heutige Forderungen an den Steuerungsentwurf<br />

Eine <strong>Entwurf</strong>smethodik für Prozesssteuerungen<br />

Beispiel: Kesselsteuerung<br />

Kritische Betrachtung des modellbasierten <strong>Entwurf</strong>s (Teil 2)<br />

Gr<strong>und</strong>problematik des modellbasierten <strong>Entwurf</strong>s<br />

Vergleichbare Problematik beim <strong>Entwurf</strong> <strong>von</strong> reduzierten<br />

Reglern<br />

Methode zum <strong>Entwurf</strong> robuster Regler für Prozesse hoher<br />

Ordnung<br />

Schlussbemerkungen<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 2 / 22


Vorbemerkung 1 (modeling means approximation)<br />

h(t)<br />

Ks<br />

„Insofern sich die Sätze der Mathematik auf die Wirklichkeit<br />

beziehen, sind sie nicht sicher, <strong>und</strong> insofern sie sicher sind,<br />

beziehen sie sich nicht auf die Wirklichkeit.“<br />

T T<br />

u a<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Schrittantwort<br />

(ein implizites) Prozessmodell<br />

Wendepunkt<br />

Wendetangente<br />

t<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Albert Einstein<br />

Reglerentwurf<br />

nach Ziegler-Nichols<br />

Folie: 3 / 22


Vorbemerkung 2 (modeling and analysis of hybrid systems)<br />

„Quantiziser“<br />

(triggers events)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Discrete event-driven<br />

subsystem (DES): x D<br />

„Injector“<br />

(switches structure)<br />

(Structure variable) continuous<br />

(linear) subsystem: x C<br />

• Basic model of a hybrid system:<br />

- concatenation of the discrete x D and the continuous state vector x C<br />

- e.g. linear dynamic equations subject to linear mixed-integer inequalities<br />

• Modeling as a pure DES by partitioning the continuous state space<br />

- nondeterministic automaton embedded in a Semi-Markov-Process (Lunze)<br />

- approximation series of nondeterministic Finite State Machines (Raisch)<br />

Folie: 4 / 22


<strong>Modellbasierter</strong> Steuerungsentwurf (Rapid Prototyping)<br />

Heutige Forderungen<br />

Kurze Entwicklungszeiten <strong>und</strong> Kostendruck<br />

Wiederverwendung <strong>von</strong> Software <strong>und</strong> Einsatz mächtiger Tools<br />

Automatische SPS-Codegenerierung<br />

Übersetzung / Abwicklung eines Modells der zu entwerfenden<br />

Steuerung bzw. des gesteuerten Prozesses (Statechart, SIPN, …)<br />

Verifikation (Einhalten der Spezifikation)<br />

Erreichbarkeitsanalyse, meist endliche Anzahl <strong>von</strong> diskreten<br />

Zuständen voraussetzend (model checker)<br />

Simulative Validierung (Überprüfung der Spezifikation)<br />

Konsistenz <strong>von</strong> Code <strong>und</strong> Simulationsverhalten<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Wahr ist, was ich ganz klar <strong>und</strong> deutlich erkenne.“<br />

René Descartes<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 5 / 22


Simulative validation with MATLAB/Simulink<br />

continuous<br />

subsystems<br />

Stateflow is based on Harel’s state charts (1987):<br />

- processes graphically specified by extended (finite) state machines<br />

- (concurrent) processes synchronized by sending/receiving events<br />

- hierarchical model structure by nesting states (sub-/superstates)<br />

→ top-down and/or bottom-up design<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

changes of<br />

structure or<br />

parameter values<br />

discrete<br />

event<br />

subsystems<br />

(state-) events<br />

Folie: 6 / 22


Model-based controller design for continuous processes<br />

Examples<br />

… successfully applied to different processes,<br />

basically due to the “inherent robustness” of continuous processes/models.<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Pole placement<br />

Model-Reference<br />

Adaptive Control<br />

Process<br />

(model of the un-<br />

controlled behavior)<br />

Poles<br />

Process model<br />

(possibly with unknown<br />

parameters)<br />

Speified/formal goal<br />

(model of the<br />

controlled behavior)<br />

Desired poles<br />

Reference-model<br />

(e.g. a specified<br />

transfer function)<br />

Model-based design<br />

method yields<br />

Feedback coefficients<br />

Adaption law<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Im<br />

a ω ∞<br />

-1 0 1<br />

ω 0<br />

G (jω)<br />

o<br />

Re<br />

Folie: 7 / 22


Methodik für den <strong>Entwurf</strong> <strong>von</strong> Prozesssteuerungen<br />

Fakt:<br />

Vorgehen:<br />

1. Modellbildung der ungesteuerten Anlage: Modell_1 („Handbetrieb“)<br />

2. Modellbildung der gesteuerten Anlage: Modell_2 („Automatikbetrieb“)<br />

3. Automatisierte Codegenerierung auf der Basis <strong>von</strong> Modell_2<br />

Bemerkungen:<br />

• Modell_2 entsteht gemäß Gr<strong>und</strong>idee aus Modell_1 durch „Sperren“ <strong>von</strong><br />

Zustandsübergängen, die zu „unerlaubten“ Zuständen führen.<br />

(„minimal restriktiv“)<br />

• Bei Spezifikationsänderungen muss nur der 2. Schritt wiederholt werden.<br />

Komponenten können wieder verwendet werden.<br />

• Für Testzwecke (<strong>und</strong> Validierung) wird meist ein Modell der gesamten<br />

(hybriden) Anlage (inklusive Modellierung des gestörten Verhaltens) benötigt.<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 8 / 22


Beispiel Kesselsteuerung (Litz, 1995)<br />

Umgangssprachliche Spezifikation:<br />

· Beim Unterschreiten <strong>von</strong> 3,0 [bar] soll ein Motor laufen.<br />

· Die Motoren sollen zwecks gleichmäßiger Abnutzung immer abwechselnd laufen.<br />

· Ist ein Motor gestört, soll bei Bedarf (PS_1=1) der jeweils andere laufen.<br />

· Beim Unterschreiten <strong>von</strong> 2,8 [bar], sollen beide Motoren gleichzeitig laufen.<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 9 / 22


Modellierung der ungesteuerten Anlage<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

continuous<br />

subsystem<br />

Discrete event<br />

subsystem<br />

Folie: 10 / 22


Stateflow-Chart Handbetrieb („diskreter Beobachter“)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 11 / 22


Stateflow-Chart Steuerung („Rückkopplung“)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 12 / 22


Gr<strong>und</strong>problematik des modellbasierten Steuerungsentwurfs<br />

Systematischer Steuerungsentwurf:<br />

1.) Partition / Approximation des kont. Zustandsraums:<br />

-> „diskreter Beobachter“ (Dieser Schritt ist nicht vollständig automatisierbar.)<br />

2.) Steuerungssynthese nach Ramadge & Wonham (1989): -> „Rückführungen“<br />

Problem: 1.) <strong>und</strong> 2.) sind gekoppelt, bzw. Voraussetzungen für R&W müssen erfüllt sein.<br />

Lösung:<br />

Iterativer / evolutionärer <strong>Entwurf</strong> mit inkrementeller Zielabsicherung<br />

(hier: objekt-basiert mit Simulink/Stateflow)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 13 / 22


Welches Modell ist das „richtige“/geeignete?<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Everything must be made<br />

as simple as possible, not simpler.“<br />

Albert Einstein<br />

Modellierungsgenauigkeit / Detaillierungsgrad so fein wie nötig, nicht feiner,<br />

aber auch keine unzulässigen Vereinfachungen.<br />

Geeignetes Modell durch iterative Approximation:<br />

Moor, Raisch, O’Young.: Supervisory control of hybrid systems via l-complete<br />

Approximations. Proc. of the fourth Workshop on Discrete Event Systems, 1989.<br />

Brunner: New method for the design of a reduced-order controller. INT. J.<br />

CONTROL, Vol. 52(5), 1990, S. 1065-1082<br />

…<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 14 / 22


<strong>Entwurf</strong> Regler reduzierter Ordnung<br />

Gr<strong>und</strong>problem: Kopplung <strong>von</strong> Modell <strong>und</strong> <strong>Entwurf</strong><br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

gekoppelte Riccati- <strong>und</strong><br />

Lyapunovgleichungen *)<br />

*) iterative Lösung der gekoppelten Gleichungen<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 15 / 22


Vorbemerkung: „closed-loop“ Reduktionsmethode (Brunner, 1985)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Modellreduktion<br />

(Moore‘s Methode)<br />

Approximationsparameter k<br />

Modellreduktion<br />

(Moore‘s Methode)<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 16 / 22


Grobanalyse <strong>und</strong> Gr<strong>und</strong>idee der Methode<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Prozessreduktion Reglerreduktion<br />

Resultierender Regelkreis sollte eine gewisse Robustheit aufweisen.<br />

(hier Phasenreserve > 60° spezifiziert)<br />

Gesucht math. Regelziel, so dass bei der Approximation die Robustheit<br />

erhalten bleibt.<br />

Anstelle eines geeigneten Modells wird ein geeignetes math. Regelziel<br />

(iterativ) bestimmt.<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 17 / 22


<strong>Entwurf</strong>smethode (Brunner, 1988)<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

x x ap<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 18 / 22


Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

f i+1 = µµµµ f i , wobei µµµµ > 1<br />

f i+1 = µµµµ f i , wobei µµµµ > 1<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 19 / 22


Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 20 / 22


Schlussbemerkungen<br />

Schritte eines systematischen Steuerungsentwurfs:<br />

I. <strong>Modellbasierter</strong> Steuerungsentwurf:<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

1. kont. Modellierung der ungesteuerten Anlage<br />

2. diskrete Modellierung der ungesteuerten Anlage<br />

3. (diskrete) Modellierung der gesteuerten Anlage<br />

4. → Steuerungsalgorithmus<br />

II. Validierung durch hybride Simulation<br />

(Vertrauenswürdigkeit)<br />

III. Zielcodegenerierung<br />

(Simulation <strong>und</strong> Implementierung sind konsistent.)<br />

IV. Test (evtl. Hardware-in-the-loop Simulation)<br />

„Es mag zwar paradox klingen, doch alle exakte Wissenschaft wird<br />

vom Gedanken der Annäherung beherrscht.“ Bertrand Russel<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 21 / 22


Literaturangaben<br />

Brunner, U.: New method for the design of a reduced-order controller. INT. J. CONTROL,<br />

Vol. 52(5), 1990, S. 1065-1082.<br />

Harel, D.: Statecharts: A Visual Formalism for Complex Systems. Science of Computer<br />

Programming, Vol. 8, 1987, S. 231-274.<br />

Hoffmann, J., Brunner, U: Matlab <strong>und</strong> Tools für die Simulation dynamischer Systeme.<br />

Addison Wesley Verlag, München, 2002.<br />

Hyland,D.C., and Bernstein, D.S.: The optimal Projection Equations for Model Reduction<br />

and the Relationships among the Methods of Wilson, Skelton, and Moore. IEEE<br />

Trans. on Automatic Control, Vol. 30, No. 12, S. 1201-1211.<br />

Jörns, C., Litz, L. <strong>und</strong> Bergold, S.: Automatische Erzeugung <strong>von</strong> SPS-Programmen auf<br />

der Basis <strong>von</strong> Petri-Netzen.. atp 3/95, S. 10-14.<br />

Moor, T., Raisch, J., O’Young, S.: Supervisory control of hybrid systems via l-complete<br />

Approximations. Proc. of the fourth Workshop on Discrete Event Systems, 1989.<br />

Ramadge, P.J. <strong>und</strong> Wonham, W.M.: The Control of Discrete Event Systems. Proc. of the<br />

IEEE, Vol. 77(1), 1989, S. 81-98.<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 22 / 22


Prozessautomatisierung<br />

Verfahrenstechnische Anlagen<br />

kontinuierliche Teilsysteme<br />

Ereignis-getriebene diskrete Teilsysteme<br />

(asynchrone) Zustandsereignisse<br />

Sicherheit<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

[un-] typisches Zustandsereignis<br />

Experiment <strong>von</strong> Graf Otto <strong>von</strong> Guericke<br />

(Magdeburg, 1657)<br />

→ gemischt diskret-kontinuierliche (hybride) Systeme<br />

Folie: 23 / 22


<strong>Entwurf</strong> nach Ramadge & Wonham<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

{Σ s ∪Σ u }<br />

Folie: 24 / 22


Komposition paralleler Prozesse (Milner, 1980)<br />

Gegeben zwei Prozesse G 1 <strong>und</strong> G 2<br />

mit den Symbolen (Ereignissen)<br />

Σ 1 , bzw. Σ 2<br />

Komposition <strong>von</strong> G 1 <strong>und</strong> G 2 :<br />

• gemeinsame“ Ereignisse {Σ 1 ∩Σ 2 }<br />

gleichzeitig in G 1 <strong>und</strong> G 2<br />

→ Synchronisation<br />

• restliche Ereignisse nebenläufig<br />

→ Interleaving<br />

Für Σ 1 = Σ 2 ist die resultierende<br />

Sprache L G : L G = L G1 ∩ L G2<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Beispiel:<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 25 / 22


Formulierung des Überwachungsproblems L S<br />

Die Sprache L S des gesuchten Überwachers muss die folgenden drei<br />

Bedingungen erfüllen:<br />

1. Der Überwacher muss jedes unsteuerbare Ereignis ∈{Σu }, das zu<br />

einem Zeitpunkt vom Prozess generiert werden kann, akzeptieren:<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

cl(L S ).Σ u * ∩ cl(LP )=cl(L S ) ∩ cl(L P )<br />

2. Das Verhalten des geschlossenen Kreises ist in L spe enthalten:<br />

L S ∩ L P ⊆ L spe<br />

3. Lebendigkeit des geschlossenen Kreises:<br />

cl(L S ) ∩ cl(L P )=cl( L S ∩ L P )<br />

→ L S kann formal bestimmt werden.<br />

Def. "Closure" einer Sprache L: cl(L) ist die Menge aller Präfixe <strong>von</strong> L.<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 26 / 22


Lösung des Überwachungsproblems L S<br />

Definition „steuerbare Untersprache“ <strong>von</strong> LP :<br />

Eine Sprache L heißt steuerbar bezüglich LP , falls<br />

cl(L ).Σu ∩ cl(LP ) ⊆ cl(L)<br />

Satz:<br />

Die Klasse K(LP ) der steuerbaren Untersprachen <strong>von</strong> LP ist bezüglich<br />

des Vereinigungsoperators geschlossen:<br />

⇒ Existenz eines größten Elements: sup K(LP )<br />

Notwendige <strong>und</strong> hinreichende Bedingung für eine nicht-leere Lösung:<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

∅⊂sup K(L spe ∩ L P )<br />

Lösung: L S = sup K(L spe ∩ L P )<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 27 / 22


Modelle diskreter Ereignis-getriebener Prozesse<br />

Gr<strong>und</strong>modell ist der „Endliche Automat“:<br />

- Darstellung <strong>von</strong> Parallelität als Nichtdeterminismus<br />

- keine Darstellung hierarchischer Strukturen<br />

- kombinatorische Zustandsexplosion<br />

Abhilfe durch Petri Netze als „Zwischenschritt“:<br />

- explizite (anschauliche) Darstellung <strong>von</strong> Parallelität<br />

- für die Simulation ist keine explizite Darstellung der<br />

Zustandsmenge erforderlich<br />

- in der Steuerungswelt als „Grafcet“, bzw. „Schrittkette“ bekannt<br />

Prozess<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Modellbildung<br />

Petri Netz<br />

Konstruktion<br />

Err.graph<br />

Simulation/<br />

Abwicklung<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

EA<br />

Res. Sequenzen<br />

Folie: 28 / 22


Steuerungstechnisch Interpretiertes PN (Litz, 1995)<br />

<strong>Modellbasierter</strong> <strong>Entwurf</strong><br />

1. Aufstellen des Steueralgorithmus<br />

in Form<br />

eines SIPN<br />

2. Umsetzung des SIPN<br />

in eine SPS-Sprache<br />

• Korrektheit = ?<br />

• „Optimalität“ = ??<br />

• kaum Wiederverwendung<br />

<strong>von</strong> SW möglich<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Folie: 29 / 22


Umsetzung in ein (sequentielles) SPS-Programm<br />

Urban Brunner 02/06<br />

Hochschule Karlsruhe<br />

Ablaufprogrammierung<br />

in AWL<br />

„Automatisierungstechnik in Lehre <strong>und</strong> Entwicklung“ 16./17.02.2006<br />

Aktionen je<br />

Schritt in AWL<br />

Folie: 30 / 22

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!