Markov-Modellierung vernetzter Regelungssysteme basierend auf

Transcription

Markov-Modellierung vernetzter Regelungssysteme basierend auf
Markov-Modellierung vernetzter Regelungssysteme basierend auf
Petrinetz-Simulationen
Abouelabbas Ghanaim und Georg Frey
Lehrstuhl für Automatisierungstechnik
Universität des Saarlandes
66123 Saarbrücken
{abouelabbas.ghanaim|georg.frey}@aut.uni-saarland.de
Abstract: Beim Entwurf und der Analyse vernetzter Regelungssysteme (Networked Control
System, NCS) sind die, durch die Kommunikation entstehenden, Verzögerungen im Kreis zu
berücksichtigen. Man unterscheidet hier gemeinhin die Sensor-Regler-Verzögerung (sensor
controller time delay, τsc) und die Regler-Aktuator-Verzögerung (controller actuator time delay,
τca). Diese Zeiten sind i.A. nicht fest sondern unterliegen stochastischen Schwankungen. Eine
geeignete Methode zur Modellierung der Verzögerungen sind deshalb Markov-Modelle. Zur
Generierung dieser Modelle muss jedoch eine Vielzahl von Parametern bestimmt werden. Da
eine direkte Modellierung kaum möglich ist, verwendet man datenbasierte Ansätze. Die
benötigten Daten können am realen System gemessen, oder durch Simulation gewonnen werden.
Im vorliegenden Beitrag wird ein Ansatz beschrieben, in dem zunächst auf Basis farbiger
Petrinetze ein Modell des NCS aufgebaut wird. Dieses Modell kann einfach parametriert werden
und wird zur Datengewinnung simuliert. Die Daten dienen dann zur Erstellung eines kompakten
Markov-Modells, das seinerseits zu Reglerentwurf und -analyse eingesetzt werden kann.
Stichworte:
Simulation.
1
Vernetzte
Regelungssysteme,
Verzögerungen,
Markovmodelle,
Petrinetze,
Einleitung
Bild 1 zeigt die abstrakte Struktur eines vernetzten Regelungssystems mit den beiden
Verzögerungszeiten τsc und τca. τsc ist definiert als die Zeit, die vom Aufnehmen eines Wertes am
Sensor bis zu dessen Einlesen am Regler vergeht. Sie ist damit ein Maß für das Alter des
verarbeiteten Sensorwertes. τca wiederum ist die Zeit, die von der Berechnung eines neuen
Stellwertes im Regler bis zu dessen Aufschaltung am Aktuator vergeht. Sie ist also ein Maß für
das Alter eines Stellwertes. Zusätzlich zu diesen, durch die Kommunikation verursachten Zeiten
tritt noch eine Verzögerung im Regler selbst auf (Berechnungszeit, τc). Diese wird im Folgenden,
wie allgemein üblich τca zugeschlagen. Die Gesamtverzögerung vom Erfassen eines Messwertes
bis zum Aufschalten der neuen Stellgröße beträgt somit: τtc = τsc + τca. Diese Verzögerung
beeinträchtigt natürlich das Systemverhalten und ist eine potentielle Ursache für ein instabiles
Gesamtsystem [Fu-ChunYu2005, WonKunAmb2006]. Deshalb werden Methoden, wie die im
Folgenden beschriebene, zur Bestimmung der Verzögerung und ihrer Komponenten benötigt.
Zur Analyse komplexer Systeme bietet sich oft ein zweistufiger Modellierungsansatz an. Dabei
wird das System zunächst in einer komponentenbasierten Beschreibungssprache detailliert
modelliert. Dies erlaubt eine einfache Modellierung führt jedoch i.A. nicht zu analytischen, wohl
aber zu simulierbaren, Modellen. Deshalb wird in einem zweiten Schritt das Modell simuliert
und anhand der gewonnenen Daten wird ein phänomenologisches, analytisches Modell
identifiziert. Dieser Weg wird im vorliegenden Beitrag für die Modellierung von NCS
beschritten. Dabei kommen im ersten Schritt farbige Petrinetze (CPN) und im zweiten
Markovmodelle zum Einsatz.
Regler
+
τca
Aktuator
Strecke
-
Client
Seite
LAN
Server
Seiter
Sensor
τsc
Bild 1: Abstrakte Struktur eines vernetzten Regelungssystems (Networked Control System, NCS).
Bild 2:Technologische Struktur eines vernetzten Regelungssystems bei Verwendung zeitgesteuerter
(zyklischer) Komponenten.
Bild 2 zeigt die technologische Struktur der betrachteten Klasse vernetzter Regelungssysteme. Es
handelt sich dabei um eine im industriellen Einsatz typische Struktur aus
Speicherprogrammierbarer Steuerung (SPS) und Client-Server-Netzwerk zur Anbindung der
Sensorik und Aktuatorik.
Bild 3 verdeutlicht das Zeitverhalten der behandelten Systemklasse. Zunächst (oberste Zeitachse)
erfolgt auf dem Sensorknoten eine zeitgesteuerte Abtastung des Messwertes mit der Abtastzeit h.
Nach der Abtastung steht der Wert – leicht verzögert durch die interne Datenverarbeitung;  im
Bild – auf dem Sensorknoten zur Verfügung, wird allerdings nicht aktiv übermittelt. Vielmehr
wartet der Sensorknoten als Daten-Server auf eine Anfrage eines Clients im Netzwerk. Dieser
Client ist das Kommunikationsmodul der Steuerung, welches selbst wieder zyklisch arbeitet.
D.h. das Kommunikationsmodul sendet mit einer Zykluszeit d Anfragen an das Sensormodul.
Zwischen Versenden der Anfrage durch das Kommunikationsmodul und dem Empfang am
Sensormodul verstreicht eine i.A. nichtdeterministische Übertragungszeit ( im Bild). Nach
Empfang der Anfrage sendet das Sensormodul den dann intern vorliegenden Messwert zurück
zum Kommunikationsmodul. Auch diese Übertragung benötigt eine i.A. nichtdeterministische
Zeit (im Bild). Die im Kommunikationsmodul vorliegenden Daten werden über einen internen
Bus, in den Eingangsspeicher der Steuerung (SPS) geschrieben. Dort beeinflussen sie jedoch
nicht direkt den Programmablauf, denn die SPS arbeitet selbst wieder zyklisch. Erst nach
Abschluss des aktuellen Zyklus liest sie neue Daten ein. In diesem Moment steht der Messwert
für die Verarbeitung in einem Regelungsalgorithmus zur Verfügung. Dieser Zeitpunkt gilt somit
auch als Ende der Sensor-Regler-Verzögerung τsc.
Bild 3:Zeitlicher Ablauf der Kommunikation zwischen Regler und Strecke.
Ab jetzt beginnt die Regler-Aktuator-Verzögerung. Zunächst benötigt die SPS einen Zyklus zur
Berechnung des neuen Stellwerts (Zykluszeit c). Dier neue Wert wird nun an die
Kommunikationsklarte übermittelt und steht dort im nächsten Sendezyklus zum Versand bereit.
Bei der nächsten Übertragung zum Aktuatorknoten wird der Wert übertragen
(nichtdeterministische Übertragungszeit,  im Bild) und kann dann aufgeschaltet werden. Hier
endet die Regler-Aktuator-Verzögerung τca. Wichtig bei dem gesamten Prozess ist zu beachten,
dass der Nichtdeterminismus der Verzögerungszeiten nicht nur von den nichtdeterministischen
Übertragungszeiten im Netzwerk abhängt, sondern vor allem sehr stark durch die Überlagerung
der nicht synchronisierten Zyklen beeinflusst wird.
Bezeichnend für die betrachtete Struktur sind die zyklische Abarbeitung des Regelgesetzes in der
SPS, sowie die ebenfalls zyklische Kommunikation (Senden von Aktuatorwerten und Anfordern
von Sensorwerten). Diese zeitgesteuerten Verhaltenssmodi führen auch bei den
Verzögerungszeiten zu einer, durch stochastische Verzögerungen überlagerten Zyklizität. Um
dies zu zeigen wird im Nächsten Kapitel zunächst ein Simulationsmodell entworfen und
ausgeführt. Kapitel 3 zeigt im Anschluss, wie die gewonnenen Daten zur Identifikation eines
Markovmodells genutzt werden können. Im abschließenden vierten Kapitel finden sich eine
Zusammenfassung und ein Ausblick auf zukünftige Arbeiten.
2
Modellierung mit farbigen Petrinetzen
Farbige Petrinetze (CPN) erlauben die kompakte Modellierung und effiziente Simulation
komplexer ereignisdiskreter Systeme [JenKris2007]. Die Anwendung von CPN auf die
Modellierung und Simulation vernetzter Systeme wurde von [Zeitsev2004] vorgeschlagen. CPN
Modelle für NCS können basierend auf objektorientierten Ansätzen [MarsalEtAl2006] oder in
strukturerhaltender Form [GhanaimFrey2008, GhaBorFrey2009] erstellt werden. Der
letztgenannte Ansatz wird im Folgenden kurz beschrieben.
Für jede Komponente des NCS wird zunächst ein generisches CPN-Modell entworfen und
parametrierbar in einer Bibliothek abgelegt. Es handelt sich dabei im Einzelnen um Modelle für
SPS mit Kommunikationsmodul, Ethernet-Switch, Feld-I/O-Module sowie ein Modul zur
Beschreibung des zu regelnden Prozesses. Diese Module können anschließend instanziiert,
parametriert und strukturerhaltend zum Modell des Gesamtsystems verbunden werden. Bild 4
zeigt ein so gewonnenes Systemmodell.
Bild 4: CPN-Modell eines NCS mit SPS, Ethernet-Switch, zwei Feld-I/Os und Prozess.
Bild 5: CPN-Modell einer SPS mit Kommunikationsmodul.
Die Teilmodelle bilden die im System vorhandenen Verzögerungen detailliert ab, abstrahieren
jedoch von der technischen Funktion. Als Beispiel eines Teilmodells zeigt Bild 5 die SPS. Auf
der rechten Seite des Modells ist der Abarbeitungszyklus der SPS bestehend aus Eingänge lesen
(PLC R), Algorithmenabarbeitung (PLC E) und Ausgänge schreiben (PLC W) zu erkennen. Auf
der linken Seite findet sich der Kommunikationsteil.
Um die Antwortzeitverteilung in vernetzten Automatisierungssystemen zu finden wurden
Ansätze basierend auf der Simulation mit CPN [MarsalEtAl2006] sowie mittels Probabilistic
Model Checking und hybrider Simulation [GreiLiuFrey2008] vorgeschlagen. Diesen Ansätzen
ist gemein, dass die Antwort des Systems auf ein einzelnes Ereignis am Eingang betrachtet wird.
Es gibt also keine geschlossene Rückkopplungsschleife. Für vernetzte Regelungssysteme ist
gerade diese Rückkopplung wesentlich. Deshalb wird der Kreis im vorliegenden Ansatz
geschlossen betrachtet. Dies bedeutet, dass nicht die Antwortzeitverteilung auf Basis einer
großen Anzahl unabhängig auftretender Ereignisse gesucht wird, sondern eine Folge von
Verzögerungszeiten, die beim dauerhaften, zyklischen Betrieb des Systems auftritt.
Bild 6 zeigt Simulationsergebnisse für ein NCS bei zwei verschiedenen Sensorabtastzeiten
(Zyklus in dem neue Daten am Sensorboard aufgenommen werden; h in der obigen Darstellung).
Zwei Dinge fallen bei Betrachtung der Ergebnisse auf:
1) Konsekutive Verzögerungszeiten (sowohl bei τca. als auch bei τsc) sind nicht voneinander
unabhängig.
2) Es gibt auch einen Zusammenhang zwischen den beiden Zeiten, erkennbar insbesondere
bei Betrachtung der Summe.
Die Beschreibung dieser Zusammenhänge erfolgt im nächsten Kapitel zunächst mit getrennten
Markovmodellen für die beiden Verzögerungen (Punkt 1) und schließlich mit einem
kombinierten Modell (Punkt 2).
Delays for input sampling of 1ms
Tsc
Ttc
Tca
Time delay (ms)
40
30
20
10
0
0
5
10
15
20
25
30
35
40
45
50
Delays for input sampling of 40ms
Time delay (ms)
60
Tsc
Tca
Ttc
40
20
0
0
5
10
15
20
25
30
Sample No. (k)
35
40
45
50
Bild 6: Simulationsergebnisse für verschiedene Sensorabtastzyklen h (oben 1ms unten 40ms) die anderen
Zyklen sind in beiden Fällen gleich (d=17ms, c =10ms).
3
Markov-Modellierung
Markov-Modelle wurden bereits erfolgreich zur Modellierung von Kommunikationssystemen
genutzt (z.B. [ArauzKrish2003]). Eine Darstellung für Verzögerungen in vernetzten
Automatisierungssystemen wird dadurch erreicht, dass die Zustände einer diskreten Markovkette
Verzögerungen im nächsten Zyklus symbolisieren. Die auftretenden Verzögerungen selbst (und
damit die Zustände) können dabei in einfachen Fällen aus den ermittelten Daten direkt abgelesen
werden. Über die Maximum Likelihood (ML) Methode und den Baum-Welch-Algorithmus
werden dann die Übergangswahrscheinlichkeiten ermittelt. Bei komplexeren Datensätzen (viele
verschiedene Verzögerungen) ist es vorteilhaft ein Hidden-Markov-Modell (HMM) anzusetzen.
Ein HMM ist gegeben durch ein Quintupel λ = (S, A, O, B, π) mit

S = {s1, …,sn}, Menge der Zustände

A = {ai j} = P(s(k+1) = sj | s(k) = si), Zustandsübergangsmatrix wobei ai j die
Wahrscheinlichkeit eines Wechsels vom Zustand si, in den Zustand …,sj im nächsten
Schritt angibt

O = {o1, …,om}, Menge der Beobachtungen

B = {bi j} = P(o(k+1) = oj | s(k) = si), Beobachtungsmatrix wobei bij die
Wahrscheinlichkeit angibt, im Zustand si die Beobachtung oj zu machen

π(0) = { πi} = P(s(0) = si) Anfangswahrscheinlichkeitswerteilung.
Die hier vorgeschlagene Modellierung basiert auf der Analyse der durch die CPN-Simulation
generierten Verzögerungszeit-Sequenzen. Die Werte werden diskretisiert, gezählt und
Symbolmengen zugewiesen. Falls sehr wenige verschiedene Verzögerungen auftreten (Anzahl
der Symbole N ≤ 3) kann ein direktes Markovmodell generiert werden. Im allgemeinen Fall,
wenn eine große Anzahl verschiedener Verzögerungen auftritt, wird ein Hidden Markov Model
(HMM) zur Modellierung genutzt. Die Anzahl der verborgenen Zustände kann dabei aus der
Verteilung der Verzögerungszeiten abgeleitet werden. Für Untermengen von Verzögerungen, die
auf vergleichbare innere Systemzustände schließen lassen wird jeweils ein Zustand generiert,.
Die Anzahl der zugehörigen verborgenen Zustände ergibt sich aus der Anzahl der Elemente der
Untermenge.
Die Idee wird im Folgenden anhand der Ergebnisse der CPN-Simulation aus dem obigen Modell
für die Sensorabfragezeit von 1 ms demonstriert. Bild 7 zeigt die auftretenden Verzögerungen
und ihre jeweilige Häufigkeit.
Sensor to controller delay (Tsc) distribution
Density
0.2
0.15
0.1
0.05
0
2
4
6
8
10
12
14
Controller to actuator delay (Tca) distribution
Density
0.4
0.3
0.2
0.1
0
0
5
10
15
20
25
Time delay (ms)
30
35
40
Bild 7: Verteilung der Verzögerungszeiten τsc, und τca bei einer Sensorabfragerate von 1 ms.
Für τsc erkennt man zwei unterschiedliche Regionen in diesem Diagramm: einen Bereich kleiner
Verzögerungen mit hoher Auftrittshäufigkeit {4, 5, 6, 7, 8, 9} sowie einen Bereich großer
Verzögerungen mit niedriger Auftrittshäufigkeit {10, 11}. Deshalb wird ein Ansatz mit einem
HMM mit zwei Zuständen und 8 Beobachtungen für λsc gewählt. Die Berechnung über MLSchätzung und den Baum-Welch-Algorihmus (Matlab Statistik Toolbox) ergibt:
0
0.83 0.17 
0.17 0.16 0.17 0.17 0.17 0.17 0
A sc  
B sc  

0 ,
0
0
0
0
0
0.5 0.5 ,
 1
 0
S = {s1, s2}; O = {4, 5, 6, 7, 8, 9, 10, 11}
Für λca erhält man entsprechend ein Modell mit 2 Zuständen und 6 Beobachtungen:
0
0
0 
0.14 0.86
0.14 0.57 0.29
A ca  
B ca  

0
0
0.29 0.57 0.14
0.86 14  ,
 0
S = {s1, s2}; O = {13, 14, 15, 27, 29, 31}
Interessant ist nun die Verknüpfung der beiden Modelle zu einem Gesamtmodell, das in der Lage
ist die Korrelation zwischen den beiden Verzögerungen abzubilden.
Die Anzahl der Zustände des kombinierten Modells ergibt sich aus der Summe der
Einzelzustandszahl der Teilmodelle. Transitionen führen immer vom einen zum anderen
Teilmodell. Dies bildet die Tatsache ab, dass Abwechselnd eine Sensor-Regler-Verzögerung und
eine Regler-Aktuator-Verzögerung geschätzt wird, vgl. Bild 8.
λsc
λca
Bild 8: Zustandsdiagramm des kombinierten HMM λcom für τsc und τca.
Die Parameter ergeben sich über ML and Baum-Welch zu:
ACom
0
0.58 0.42
 0
 0
0
0
1   0


0.86 0.14
0
0   sc


0
0 
0.85 0.15
ca 
0 
Das kombinierte Modell kann in zwei separate Modelle λ`sc, λ`ca dekomponiert werden.
Interessante Anwendungsmöglichkeiten ergeben sich dabei aus der Tatsache, dass über λ`ca die
Verzögerung τca bei gegebenen τsc geschätzt werden kann. Im Gegensatz zu τca, das zum
Zeitpunkt der Reglerberechnung immer unbekannt ist, kann τsc bei geeigneter Instrumentierung
bestimmt werden. D.h. das Modell erlaubt bei gemessener Sensor-Regler-Verzögerung die
Schätzung der nächsten Regler-Aktuator-Verzögerung und deren Berücksichtigung in der
Berechnung des Stellwerts.
Für einfache direkte Markovmodelle könnte die Validierung über die Berechnung der stationären
Verteilung erfolgen. Im gegeben Fall von HMM scheidet dieses Vorgehen aus. Stattdessen
werden über die CPN-Simulation weitere Verzögerungsdaten generiert und mit den Ausgaben
der Markovmodelle verglichen. Bild 9 zeigt das Ergebnis sowohl für den Fall des einfachen
Modells für eine Verzögerung (τsc), als auch für das kombinierte Modell. In beiden Fällen ist
eine gute Übereinstimmung erkennbar.
Probability distribution of delays from CPN model
versus from HMM simulation
Density
0.2
CPN
HMM Simulation
0.1
0
0
0.16
0.14
5
10
Probability distribution of delays from CPN model
versus from composite Markov model simulation
15
CPN
HMM simulation
0.12
Density
0.1
0.08
0.06
0.04
0.02
0
0
5
10
15
20
Time delay (ms)
25
30
35
Bild 6: Validierung der Modelle (oben Einzelmodell für τsc, unten kombiniertes Modell).
4
Zusammenfassung und Ausblick
Der vorgeschlagene Beitrag beschreibt eine durchgängige Methode zur Gewinnung von MarkovModellen, die die Verzögerungen in NCS mit zyklischen Steuerungen im geschlossenen Kreis
beschreiben. Ausgangspunkt ist hierbei ein Modell des NCS in einer strukturerhaltenden
modularen Form. Die entwickelten Markovmodelle geben nicht nur die Abhängigkeit
konsekutiver Verzögerungen auf einem Kommunikationsweg (Sensor zu Regler bzw. Regler zu
Aktuator) sondern auch den Zusammenhang zwischen diesen beiden Verzögerungen wider.
Weiterführende Arbeiten befassen sich mit der Erweiterung der CPN-Simulationsmodelle sowie
der Einbindung der Markovmodelle in den Entwurf und die Analyse geschlossener NCSRegelkreise.
Literatur
[ArauzKrish2003]
Arauz, J., Krishnamurthy, P.: Markov Modelling of 802.11 Channels.
Proc. of EEE Vehicular Technology Conference, (2), 771 – 775. PA,
USA, 2003.
[Fu-ChunYu2005]
Fu-Chun, L ., Yu, Y.: Modelling and analysis of networked control
systems using hidden Markov models. Proc. of machine learning and
cybernetics international conference, (2), 928- 931. China, 2005.
[GhanaimFrey2008]
Ghanaim, A., Frey, G.: Component based Colored Petri Net model for
Ethernet based Networked Control Systems. Proc. of the 13th IEEE Int.
Conf. on Emerging Technologies and Factory Automation, 1100-1103.
Hamburg, Germany, 2008.
[GhaBorFrey2009]
Ghanaim, A., Borges, G. A., Frey, G.: Estimating Delays in Networked
Control Systems Using Colored Petri Nets and Markov Chain Models.
Proc. of the 14th IEEE Int. Conf. on Emerging Technologies and Factory
Automation, 1-6. Mallorca, Spain, 2009.
[GreiLiuFrey2008]
Greifeneder, J., Liu, L., Frey, G.: Methods for Analyzing Response
Times in Networked Automation Systems. 17th IFAC World Congress,
5113-5118. Seoul, 2008.
[JenKris2007]
Jensen, K., Kristensen, L.M., Wells L.: Coloured Petri nets and CPN
tools for modelling and validation of concurrent systems. International
Journal on Software Tools for Technology Transfer, (9), 213 – 254,
2007.
[MarsalEtAl2006]
Marsal, G., Denis, B., Faure, J. M., Frey, G.: Evaluation of Response
Time in Ethernet-based Automation Systems, 11th IEEE Int. Conf. on
Emerging Technologies and Factory Automation, 380-387. Prague, 2006.
[WonKunAmb2006]
Won-Jong, K., Kun, J. and Ambike: A. Real-time operating environment
for networked control systems. IEEE TASE, (3), pp.287-296. TX, USA,
2006.
[Zaitsev2004]
Zaitsev, D. A.: An Evaluation of Network Response Time using a
Coloured Petri Net Model of Switched LAN. Proc. of 5th Workshop and
Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools, 157167. Aarhus, Denmark, 2004.