Oft ist es sinnvoll, dass Anlagen als Mehrzweckanlagen gebaut werden. Auf einer Merkzweckanlage können mehrere Produkte produziert werden, ohne dass die Anlage umgebaut werden muss. Beispiele dafür sind flexible Fertigungszellen oder Batchanlagen in der Pharmaproduktion. Selbst wenn die Anlage mechanisch oder verfahrenstechnisch gleich bleibt, muss die Steuersoftware für jedes Produkt angepasst werden. Diese Anpassung der Software sollte dabei am besten durch einen Produktionstechniker, d.h. nicht von einem Steuerungsspezialisten durchgeführt werden. Der Benutzer der Anlage soll also die Möglichkeit bekommen, steuerungstechnisch auf einfache Art und Weise festzulegen, wie etwas auf der Anlage produziert werden soll. Solche Steuerung werden Rezeptursteuerungen genannt. Diese soll beliebig flexibel sein und trotzdem aber die Sicherheit der Anlage gewährleisten. Zudem sollen auch zusätzliche Funktionen von der Datenerfassung bis zur Produktionsplanung und Logistik integrierbar sein. Da in die Erstellung einer Rezeptur viel Produktions-Know-How eingeht, soll es auch möglich sein, dass Produktionsrezepte von einem Produktionsstandort auf einen anderen übertragen werden können.
Will man allen diesen Anforderungen genügen, so ist eine modulare Strukturierung der Steuerungssoftware nötig. Zunächst wird darum das übliche Strukturierungsmodell vorgestellt. Anhand eines detaillierten Beispiels wird die Funktionalität eines Modul gezeigt. Im letzten Teil wird kurz auf die Übertragbarkeit von Rezepten eingegangen.
Das Ziel dieses Kapitels ist es, dass
- Sie mit eigenen Worten eine Rezeptursteuerung erklären können
- Sie eine Rezeptsteuerung erstellen können
- Sie das Prinzip der Erzeugung der Schaltbedingungen in einer Grundfunktion erklären können
Steuerungsaufgaben werden in der Regel hierarchisch geordnet. Dies heisst, dass Steuerungsaufgaben in einzelnen Steuereinheiten gelöst werden, die von übergeordneten Steuerungen koordiniert werden. Dieses Prinzip kann über mehrere Hierarchiestufen realisiert sein (siehe Abbildung 1‑1). Es ist nicht sinnvoll, Funktionspläne quer durch verschiedene Hierarchiestufen zu zeichnen. Diese werden nämlich oft sehr kompliziert und die Fehlerwahrscheinlichkeit bei der Erstellung sehr gross. Es empfiehlt sich darum, eine Steuerung aus sehr einfachen und überschaubaren Einzelsteuerungen einer Hierarchie aufzubauen. Eine Aufteilung in Einzelsteuerungen kann auf verschiedene Arten gemacht werden. Wichtig dabei ist, dass die Aufteilung so gemacht wird, dass die Verknüpfungen zwischen den Einzelsteuerungen so einfach wie möglich sind.
Die unterste Ebene bilden die Einzelgerätesteuerungen. Sie sind
das Interface zum Prozess. Diese Steuerungen enthalten z.B. eine Motorensteuerung,
d.h. die eigentliche Steuerlogik aber auch die Darstellung auf der Bedienung
und weitere Funktionen, die mit einem solchen Objekt verbunden sind. In dieser
Ebene können verschiedene Geräte, d.h. Aktoren gesteuert werden. Die Ebene
enthält aber auch die Steuerlogik, die mit Sensoren direkt verknüpft ist. Dies
beinhaltet die Anzeige, Bildung von Grenzwerten und ev. auch Behandlung von
Sensorausfällen. Diese Ebene kann auch ganze Regler mit mehreren Sensoren und
Aktoren enthalten.
Die nächst höhere Ebene ist die Ebene der Grundfunktionen. Grundfunktionen sind Steuerungen, welche bereits praktische, intelligente Funktionen in einer Anlage ausführen. Sie sind in der Regel mit einem einzigen Vorgang in einer Anlage oder einer Maschine verbunden. Anstelle dass man mühsam durch eine manuelle Steuerung einzelner Geräte einen Vorgang von Hand fährt, werden diese Schritte wie mit einem Word-Makro zu einem Befehl, zusammengefasst. Dieser Befehl, genannt Fahrweise, kann zur Auslösung des ganzen Vorgangs gebraucht werden. Eine Grundfunktion hat oft mehrere Fahrweisen, um einen Vorgang in verschiedenen Fahrweisen durchführen zu können. Beispiele von Grundfunktionen sind 'Werkzeug holen', 'Behälter befüllen' oder 'Ofen beschicken'. Die Grundfunktionen ist die wichtigste Steuereinheit einer modular aufgebauten Anlage. Sie sind die wieder verwendbaren Einheiten der Steuerungen, in denen sehr viel Know-How steckt und sind unabhängig vom Produkt, das auf der Anlage produziert wird.
Grundfunktionen werden in Teilanlagensteuerungen oder Zellen zusammengefasst. Dies ist in der Regel die Steuerung einer Anordnung zusammengehörender Maschinen und Handhabungseinheiten oder einer Prozesseinheit. Da für unterschiedliche Produkte auch unterschiedliche Teilanlagensteuerungen nötig sind, werden diese in Mehrzweckanlagen als Rezeptursteuerungen realisiert.
Die Anlagensteuerung umfasst bei Mehrzweckanlagen oft die Produktionsplanung und damit verbunden, das Handling der Rezepte der Teilanlagen. Sie bestimmt also, welches Rezept auf welcher Anlage zur gegebenen Zeit abgearbeitet wird.
Die Strukturierung in Grundfunktionen wurde in verschiedenen Produktionsbereichen normiert. Im Bereich der Verfahrenstechnik wurde in der Norm NAMUR NE33 das Grundfunktionen- resp. Grundoperationenkonzept vorgestellt. Heute ist in der ISA SP88.1 ein Modell nach Abbildung 1‑1 normiert.
In Abbildung 1‑2 sind die Grundoperationen eines Reaktors mit den dazu benötigten Geräten gezeichnet. Die Steuerlogik die zu diesen Grundoperationen gehört wird als Grundfunktion bezeichnet. Alle Aufgaben zur Kontrolle der Temperatur im Rührbehälter werden durch die Grundfunktion 'Temperieren gelöst. Der Transfer von Flüssigkeiten in den Behälter wird durch eine Empfangsfunktion 'Zuführen', das Senden durch die Funktion 'Abführen' gesteuert.
Entsprechende Standardisierungen für den Maschinenbau wurden von OSACA vorgeschlagen.
Abbildung 1‑2: Beispiel für Gliederung
Damit ein Benutzer ein Rezept erstellen kann, muss er eine detaillierte Beschreibung der Grundfunktionen zur Hand haben. Zudem wird, wie in der Einleitung erwähnt, angestrebt, dass Rezepte von einer Anlage auf eine andere übertragen werden können. Dazu ist es aber nötig, dass die Schnittstellen und die Funktionen ähnlicher Grundfunktionen möglichst gleich sind. Es ist also sinnvoll, dass man nicht für jede Variante der Grundfunktionen ‚Temperatur regeln’ eine eigene Beschreibung erstellt, sondern dass man für alle Grundfunktionen, welche eine Temperaturregelung beinhalten, d.h. für die Klasse der Temperatur regelnden Grundfunktionen eine gemeinsame Beschreibung erstellt. Dadurch wird der Funktionalität standardisiert und eine Übertragung von Rezepten wird möglich. Die Aufgaben einer Grundfunktion sollen als Fahrweisen bezeichnet werden. So sind z.B. für die Temperaturregelung eines Reaktors sind folgende Fahrweisen wichtig:
- Manteltemperaturregelung
- Reaktortemperaturregelung
- Reaktortemperaturregelung mit DT-Beschränkung
- Rampengesteuerte Reaktortemperaturregelung
Für jede dieser Fahrweisen muss beschrieben werden, wie sie genau funktioniert und auch wie die Fortschaltbedingung erzeugt wird. Die Fortschaltbedingung gibt an, unter welchen Bedingungen die Grundfunktionen ihre Aufgabe erledigt hat. Diese Information ist zur Steuerung des Ablaufs nötig. Die Fahrweisen benötigen Parameter, wie z.B. Temperatursollwert oder Grenzwerte. Deren Bedeutung muss für den Benutzer klar festgelegt werden. Da Produktionsanlagen oft auch ein Risiko darstellen, müssen die Sicherheitsfunktionen für den Anwender transparent sein.
Die Beschreibung einer Klasse von Grundfunktionen kann folgende Kapitel enthalten:
1. Allgemein
1.1 Allgemeiner Beschrieb
1.2 Abkürzungen und Begriffserklärungen
1.3 Geschichte der Klasse
2. Parameter
2.1 Beschreibung der Fahrweisen
2.2 Beschreibung der anderen Parameter
2.3 Parameter und deren Wertebereiche in Funktion der Fahrweisen
3. Sicherheitsfunktionen
3.1 Beschreibung der Sicherheitsfunktionen
3.2 Sicherheitsmatrix
3.3 Sicherheitseingriffe in Abhängigkeit der Fahrweisen
4. Bedienungen
4.1 Beschreibung der Terminal/Schaltwartenbedienung
4.2 Beschreibung der Vorortbedienungen
4.2 Handeingriffe der Fahrweisen
4.3 Dispositionen der Vorortbedienungen
5. Instrumentierung der Klasse
Stark vereinfachtes Beispiel für Kapitel 2 und 3 der Grundfunktionen ‚Temperatur regeln’
2.1 Beschreibung der Fahrweisen
Funktionsparameter |
Prozessparameter |
||
Fahrweise A |
Verbale Beschreibung |
aktive Ausgänge |
Fortschaltbedingung FSB |
0: AUS |
GF nicht aktiv |
nur von Hand |
EIN |
1: Manteltemperatur-regelung |
Der Temperaturregler regelt die Manteltemperatur Tx.2 auf den Sollwert (Par 3) |
Temperaturregelventile TV x.5.1 - 4 |
EIN wenn Temperatur im Gut-Fenster für 5min |
2: Reaktortemperatur-regelung |
Der Temperaturregler regelt die Reaktortemperatur Tx.1 auf den Sollwert (Par 3) über eine Kaskadenregelung mit dem Manteltemperaturregler |
Temperaturregelventile TV x.5.1 - 4 |
EIN wenn Temperatur im Gut-Fenster für 5min |
3: Reaktortemperatur-regelung mit Temperaturdifferenzbegrenzung |
Der Temperaturregler regelt die Reaktortemperatur Tx.1 auf den Sollwert (Par 3) über eine Kaskadenregelung mit dem Manteltemperaturregler. Dabei ist der Sollwert des Manteltemperaturreglers begrenzt auf den Bereich [Tx.1 - DT ... Tx.2 + DT] beschränkt. (DT: Par 4) |
Temperaturregelventile TV x.5.1 - 4 |
EIN wenn Temperatur im Gut-Fenster für 5min |
4: Rampengesteuerte Reaktortemperaturregelung |
Der Temperaturregler regelt die Reaktortemperatur Tx.1 auf den Sollwert (Par 3) über eine Kaskadenregelung mit dem Manteltemperaturregler, Dabei ist die Veränderung des Sollwerts über die Rampengeschwindigkeit (Par 5) beschränkt |
Temperaturregelventile TV x.5.1 - 4 |
EIN wenn Endsollwert erreicht und Temperatur im Gut-Fenster für 5min |
2.2 Beschreibung der Parameter
Nr. |
Name |
Einheit |
Beschreibung |
1 |
Hand erlaubt |
Bool |
bestimmt, ob Modulparameter durch Handeingriff verändert werden können |
2 |
Fahrweise A |
Enum |
Fahrweise der Grundfunktion |
3 |
Solltemperatur |
°C |
Solltemperatur für die Temperaturregelung |
4 |
Delta T |
°C |
Temperaturdifferenz für Temperaturbegrenzung |
5 |
Rampengeschwindigkeit |
°C/min |
Maximale Änderungsrate des Sollwertes |
6 |
T-Grenzwert oben |
°C |
Oberer Grenzwert zur Überwachung der Temperaturregelung |
7 |
T-Grenzwert unten |
°C |
Unterer Grenzwert zur Überwachung der Temperaturregelung |
2.3 Parametrisierung der Fahrweisen
Funktionsparameter |
Prozessparameter und Wertebereiche |
||||||||||||||
Fahrweise A |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
1: Manteltemperatur-regelung |
X |
X |
X |
|
|
X |
X |
|
|
|
|
|
|
|
|
2: Reaktortemperatur-regelung |
X |
X |
X |
|
|
X |
X |
|
|
|
|
|
|
|
|
3: Reaktortemperatur-regelung mit Temperaturdifferenzbegrenzung |
X |
X |
X |
X |
|
X |
X |
|
|
|
|
|
|
|
|
4: Rampengesteuerte Reaktortemperaturregelung |
X |
X |
X |
|
X |
X |
X |
|
|
|
|
|
|
|
|
3. Sicherheitsfunktionen
3.1 Beschreibung der Sicherheitsfunktionen: Verbale Beschreibung der Sicherheiten
Beispiel:
Bezeichnung |
Beschreibung |
TSL |
- Parametrisierbarer Softwareschalter (Par 6) - wird als Störung 1 bearbeitet, muss nicht quittiert werden. Er schliesst das Kühlventil |
TSH |
- Parametrisierbarer Softwareschalter (Par 7) - wird als Störung 1 bearbeitet, muss nicht quittiert werden. Er schliesst das Heizventil |
TSHH |
- Uebertemperatursicherung, Hardwareschalter - löst Schnellstop aus - muss quittiert werden. - Schnellkühlen wird eingeleitet |
3.2 Sicherheitsmatrix
In der Sicherheitsmatrix werden Störung den Störungsstufen zugeordnet und deren Eingriffe auf die Geräte tabellarisch zusammengestellt. Im Weiteren enthält die Matrix die Zustandsinformationen der Grundfunktionen
3.3 Sicherheitseingriffe in Abhängigkeit der Fahrweisen
Die Wirkung von Sicherheitsfunktionen kann von der Fahrweise abhängig sein. Der Zusammenhang wird in diesem Abschnitt in einer Tabelle dokumentiert.
|
Fahrweise A |
|||||
Sicherheiten |
0 |
1 |
2 |
3 |
4 |
5 |
TSL |
|
X |
X |
X |
X |
|
TSH |
|
X |
X |
X |
X |
|
TSHH |
|
X |
X |
X |
X |
|
Nach einer Strukturierung der Anlage und der Festlegung der Grundfunktionen als Produkte unabhängige Steuereinheiten, sind wir nun in der Lage ein Rezept festzulegen. Die Erstellung eines Produkts besteht in der Regel aus einer Sequenz von Produktionsschritten. In jeden Schritt müssen dazu für die benötigten Grundfunktionen die Parameter vorgegeben werden können. Nun liegt es auf der Hand und es ist heute weltweit üblich, dass die Abfolge der Schritte in der Ablaufsprache festgelegt wird. In Erweiterung der IEC61131-3 müssen dazu für jeden Schritt auch Grundfunktionsparameter abgespeichert werden. Ein Ablaufdiagramm mit schrittabhängigen Grundfunktionsparametern wird als Rezept bezeichnet. Es ist einfach vorstellbar, dass damit auch das Kochen einer Speise dargestellt werden kann, also ein Kochrezept.
Durch die Ablaufsprache mit schrittabhängigen Grundfunktionsparametern wird dem Anlagenfahrer ein Mittel zur Verfügung gestellt, um die Teilanlagensteuerung selber konfigurieren zu können. Nun gehören aber zu einem Ablaufdiagramm nicht nur Schritte mit Aktionen, sondern auch Schaltbedingungen, die so genannten Fortschaltbedingungen. Die Berechnung der Fortschaltbedingung ist nicht immer ganz einfach und kann nicht dem Benutzer überlassen werden. Damit aber die Benutzerkonfigurierbarkeit erhalten bleibt, empfiehlt es sich, für jede Grundfunktion eine generelle Fortschaltbedingung zu formulieren. Diese ist meist abhängig von der Fahrweise. Im Abschnitt 2.1 der Beschreibung einer Grundfunktion muss darum für jede Fahrweise angegeben werden, wie die Fortschaltbedingung erzeugt wird.
Rezeptmodell:
Oft ist es wünschenswert, die Erstellung eines Produkts in einem Anlagen-unabhängigen Rezept zu beschreiben. Dies ist vor allem dann nützlich, wenn das Produkt auf verschiedenen Anlagen und eventuell auch mit Rohstoffen unterschiedlicher Herkunft produziert werden soll. Aus diesem Grund sieht die Batch Norm ISA SP88.01 verschiedene Typen von Rezepten vor. Diese sind in der folgenden Abbildung 1‑3 dargestellt.
Das „General Recipe“ beschreibt Anlagen unabhängig, wie ein Produkt erstellt wird. Das „Site Recipe“ wird aus dem „General Recipe“ erstellt und berücksichtigt die am Standort zur Verfügung stehenden Materialien, die Sprache und kann auch lokale Produktspezialitäten berücksichtigen (z.B. 220V-Netzteil ). Das „Master Recipe“ ist das auf die Anlage spezifisch zugeschnittene Rezept. Hier wird berücksichtigt, wie die Anlage gebaut ist und welche Grundoperationen zur Verfügung stehen.
Für eine spezifische Produktion wird daraus ein „Control Recipe“ erzeugt. Dabei können spezifische Produkteoptionen berücksichtigt werden. Verschiedene Forschungsarbeiten wurden in letzter Zeit durchgeführt, um die Schritte vom „General Recipe“ zum „Control Recipe“ mit Computern zu unterstützen. Um dies zu Vereinfachen wird von der SP88.01 eine hierarchische Rezeptstruktur vorgeschlagen.
Abbildung 1‑3: Rezeptstruktur
Die
hierarchische Rezeptstruktur ist in der Abbildung
1‑4 dargestellt. Von unten gesehen bedeutet dies: die in kleinste
Schritte aufgeteilte Produktionsvorschrift wird etwas verallgemeinert, indem
Schritte zu Phasen zusammengefasst werden. Eine Verallgemeinerung entsteht
dadurch, dass eine Phase nicht mehr so spezifisch von einer Anlage abhängig
ist. So kann z.B. das Positionieren eines Bauteils viele kleine Steuerschritte
benötigen, die für jede Anlage spezifisch sind. Enthält das Rezept aber
lediglich die Phase ‚Positionieren’, so kann bei der Erstellung des Master
Recipe die Phase ‚Positionieren’ anlagenspezifisch in Teilschritte aufgeteilt
werden. Nach dem gleichen Prinzip können Phasen zu Operationen zusammengefasst
werden usw.
Abbildung 1‑4: Rezepthierarchie |