Upload
vuthien
View
215
Download
0
Embed Size (px)
Citation preview
1Fo
lien
, 13.
12.2
007
12:0
0©
ES
1
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
PEARL Workshop 200706.12.2007
Echtzeit- und Regelungstechnische Aspekte bei der automatischen Transformation von Matlab/Simulink in SPS-basierten Steuerungscode
M. Sc. Gülden Bayrak, Dipl.-Ing. Andreas Wannagat, Prof. Dr.-Ing. Vogel-Heuser
2Fo
lien
, 13.
12.2
007
12:0
0©
ES
2
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
3Fo
lien
, 13.
12.2
007
12:0
0©
ES
3
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
4Fo
lien
, 13.
12.2
007
12:0
0©
ES
4
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation: Matlab/Simulink - Typische Anwendungsgebiete
Automobiltechnik
Spritzgusstechnik
Windenergieanlagen
Medizintechnik
Luft- und Raumfahrt
Anwendungsgebiete:Messtechnik, Steuerungs- und
Regelungstechnik, Bildverarbeitung, Signalverarbeitung undKommunikation
5Fo
lien
, 13.
12.2
007
12:0
0©
ES
5
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation: Matlab/Simulink - Automatisierungstechnik
Automobiltechnik
Spritzgusstechnik
Windenergieanlagen
Medizintechnik
Luft- und Raumfahrt
AbfüllanlagenAutomatisierungstechnik
IEC 61131-3
6Fo
lien
, 13.
12.2
007
12:0
0©
ES
6
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation
6
Standard-LösungVorgehensweise ohne Codegenerierung
• Unterschiedliche Werkzeuge je nach Projektphase und Personengruppe• In der Entwicklung regelungstechnischer Modelle werden spezialisierte
Werkzeuge wie Matlab/Simulink eingesetzt• Manueller Übergang zwischen den Projektphasen
– Mehraufwand – Gefahr von Übertragungsfehlern
Phasen einer Reglerentwicklung
t
Ana
lyse
Ges
taltu
ng d
esM
odel
ls
Para
met
rieru
ng
Reg
lerd
esig
n
Sim
ulat
ion
manuelleImplementierung Te
st
7Fo
lien
, 13.
12.2
007
12:0
0©
ES
7
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation
7
Standard-LösungVorgehensweise ohne Codegenerierung
• Unterschiedliche Werkzeuge je nach Projektphase und Personengruppe• In der Entwicklung regelungstechnischer Modelle werden spezialisierte
Werkzeuge wie Matlab/Simulink eingesetzt• Manueller Übergang zwischen den Projektphasen
– Mehraufwand – Gefahr von Übertragungsfehlern
Phasen einer Reglerentwicklung
t
Ana
lyse
Ges
taltu
ng d
esM
odel
ls
Para
met
rieru
ng
Reg
lerd
esig
n
Sim
ulat
ion
manuelleImplementierung Te
st
8Fo
lien
, 13.
12.2
007
12:0
0©
ES
8
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation
8
Codegenerierung
• Unterschiedliche Werkzeuge je nach Projektphase und Personengruppe• In der Entwicklung regelungstechnischer Modelle werden spezialisierte
Werkzeuge wie Matlab/Simulink eingesetzt• Manueller Übergang zwischen den Projektphasen
– Mehraufwand – Gefahr von Übertragungsfehlern
Phasen einer Reglerentwicklung
t
Ana
lyse
Ges
taltu
ng d
esM
odel
ls
Para
met
rieru
ng
Reg
lerd
esig
n
Sim
ulat
ion
manuelleImplementierung Te
st
9Fo
lien
, 13.
12.2
007
12:0
0©
ES
9
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Motivation
9
Codegenerierung
• Generierung von Steuerungscode– die gewohnte Entwicklungsumgebung mit ihren Vorteilen bleibt erhalten – der manuelle fehleranfällige Transfer in die Zielsprache fällt weg
Phasen einer Reglerentwicklung
t
Ana
lyse
Ges
taltu
ng d
esM
odel
ls
Para
met
rieru
ng
Reg
lerd
esig
n
Sim
ulat
ion
&Im
plem
.
manuelleImplementierungTe
st
Zeitgewinn
10Fo
lien
, 13.
12.2
007
12:0
0©
ES
10
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
11Fo
lien
, 13.
12.2
007
12:0
0©
ES
11
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Stand der Technik
Vorteil NachteildSpace • Modellierung in Matlab/Simulink • C-Code nur für Mikrokontroller
• Zusätzliche Kosten (RTW)• Rückverfolgung schwierig
Bachmann • Modellierung in Matlab/Simulink • C- Code nur für ihre eigene M1-Steuerung
• Zusätzliche Kosten (RTW)• Rückverfolgung schwierig
HybridTech • Modellierung in Matlab/Simulink• Übersetzung in die DIN EN IEC
61131-3 Strukturierter Text
• Übersetzung nur in die Sprache des strukturierten Texts
• Rückverfolgung schwierig
12Fo
lien
, 13.
12.2
007
12:0
0©
ES
12
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Uni Kassel: Codegenerator
Vorteil NachteildSpace • Modellierung in Matlab/Simulink • C-Code nur für Mikrokontroller
• Zusätzliche Kosten (RTW)• Rückverfolgung schwierig
Bachmann • Modellierung in Matlab/Simulink • C-Code nur für ihre eigene M1-Steuerung
• Zusätzliche Kosten (RTW)• Rückverfolgung schwierig
HybridTech • Modellierung in Matlab/Simulink• Übersetzung in die DIN EN IEC
61131-3 Strukturierter Text
• Übersetzung nur in die Sprache des strukturierten Textes
• Rückverfolgung schwierig
Code-generator
• Modellierung in Matlab/Simulink• Übersetzung in die grafische
Programmiersprache (FBD/CFC)Vergleichbarkeit der ModelleVereinfachung der Rückver-folgung bzw. der Fehlersuche
13Fo
lien
, 13.
12.2
007
12:0
0©
ES
13
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
14Fo
lien
, 13.
12.2
007
12:0
0©
ES
14
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
15Fo
lien
, 13.
12.2
007
12:0
0©
ES
15
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Schnittstellen: Simulink
15
Speicherformat von Simulink
16Fo
lien
, 13.
12.2
007
12:0
0©
ES
16
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Schnittstellen: MDL- Datei
17Fo
lien
, 13.
12.2
007
12:0
0©
ES
17
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
18Fo
lien
, 13.
12.2
007
12:0
0©
ES
18
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
CFC
18
19Fo
lien
, 13.
12.2
007
12:0
0©
ES
19
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
20Fo
lien
, 13.
12.2
007
12:0
0©
ES
20
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Zusammenhang der Modelle
20
Blockdiagramm
-BlockType-Name-Parameter
Block
Connection
CFC_Funktionsblock
Abarbeitungsnummer
1*
1
1
1*
*
* -TypeElement
Connection
*
*
21Fo
lien
, 13.
12.2
007
12:0
0©
ES
21
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Transformation
Values
Zuordnungstabelle
… …
Simulink BibliothekBlockType ParameterTransferFcnSaturationPID
numeratormin, maxP, I, D
numeratormin,maxKp, Tn, Tv
FB_CTRL_TRANSFB_CTRL_LIMITER FB_CTRL_PID
ParameterControllerTypeTwinCAT Controller Bibliothek
FB_CTRL_TRANSFB_CTRL_LIMITERFB_CTRL_PID
TransferFcnSaturationPID
ControllerTypeBlockType
… … … …
Values
22Fo
lien
, 13.
12.2
007
12:0
0©
ES
22
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
SIMULIN
KTW
INCA
T CFC
Simulink-Blöcke Parameterübergabe/ Umformungen
Baustein aus der CLC Bibliothek
Simulink-Blöcke Parameterübergabe/ Umformungen
Baustein aus der CLC Bibliothek
TransferFcn(string[]
NumDemStr, string nd)
Strukturähnliche Abbildung1. Möglichkeit: direkte Abbildung auf die Bausteine der CLC Bibliothek
23Fo
lien
, 13.
12.2
007
12:0
0©
ES
23
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Strukturähnliche Abbildung2. Möglichkeit: Anpassung der Struktur
SIMULIN
KTW
INCA
T CFC
Simulink-Blöcke Parameterübergabe/ Umformungen
InstanzSimulink-Blöcke Parameterübergabe/ Umformungen
Instanz
TransferFcn(string[]
NumDemStr, string nd)
24Fo
lien
, 13.
12.2
007
12:0
0©
ES
24
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Strukturähnliche Abbildung2. Möglichkeit: Anpassung der Struktur
24
Instanz des Controllerbausteines FB_CTRL_TRANSFER
Parameterwerte werde im Funktionsbaustein initialisiert
Simulink-Blöcke Parameterübergabe/ Umformungen
InstanzSimulink-Blöcke Parameterübergabe/ Umformungen
Instanz
TransferFcn(string[]
NumDemStr, string nd)
25Fo
lien
, 13.
12.2
007
12:0
0©
ES
25
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
26Fo
lien
, 13.
12.2
007
12:0
0©
ES
26
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Evaluationl: Pitchregler
• Die Blattwinkelregelung hat als Eingangsgrößen:– die Drehzahl am Generator,– die Windgeschwindigkeit,– die Blattwinkel der drei Rotorblätter und – die Gondelbeschleunigung in Richtung der Rotorachse.
• Ausgangsgrößen:– Blattwinkel aller drei Rotorblätter
• Anzahl der Blöcke: 51• Anzahl der Verbindungen: 62• Anzahl der Subsysteme: 3
27Fo
lien
, 13.
12.2
007
12:0
0©
ES
27
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
ModultestI WITH DRIFTKOMPENSATION
27Zeit t in sec
28Fo
lien
, 13.
12.2
007
12:0
0©
ES
28
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Zeitvergleich zwischen manueller Übersetzung (ohne Berücksichtigung der SPS-Eigenschaften) und Simulink
-6
-5
-4
-3
-2
-1
0
1
2
3
0
0,02
0,04
0,06
0,08 0,1
0,12
0,14
0,16
0,18 0,2
0,22
0,24
0,26
0,28 0,3
0,32
0,34
0,36
0,38
Simulink
TwinCAT Datenfluss
29Fo
lien
, 13.
12.2
007
12:0
0©
ES
29
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
IntegrationstestMit Rückkopplung
29
Zeit t in sec
-6
-5
-4
-3
-2
-1
0
1
2
3
0
0,02
0,04
0,06
0,08 0,1
0,12
0,14
0,16
0,18 0,2
0,22
0,24
0,26
0,28 0,3
0,32
0,34
0,36
0,38
Simulink
Codegenerator
30Fo
lien
, 13.
12.2
007
12:0
0©
ES
30
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Inhalt
• Motivation• Stand der Technik• Codegenerator
– Schnittstellen– Prinzip der Codegenerierung
• Evaluation• Zusammenfassung und Ausblick
31Fo
lien
, 13.
12.2
007
12:0
0©
ES
31
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Zusammenfassung
• Strukturähnliche Übersetzung• Übersetzung in Sekunden
– Übersetzung des Beispielmodells (Blattwinkelregelung) ≈ 1 Sekunde• Keine zusätzlichen Kosten (durch die Anschaffung von RTW)• Korrekte Funktionsweise wurde evaluiert (Blattwinkelregler)• Berücksichtigung der SPS Eigenschaften
– Zeitverhalten nahezu identisch wie in Simulink
32Fo
lien
, 13.
12.2
007
12:0
0©
ES
32
M. Sc. Gülden BayrakEmbedded SystemsUniversität Kasselwww.es.eecs.uni-kassel.de
Ausblick
• Realisierung der Rücktransformation, um die verschiedenen Modelle auch nach Änderungen synchronisieren zu können
• Transformation des Zustandsdiagramms (aus Simulink) in die Ablaufsprache der IEC 61131-3
• Online-Verbindung zwischen Simulink und der Steuerungssoftware, um die Fehlersuche im Sinne eines „Debuggings“ zu ermöglichen