Rudolf Lauber ProzeBautomatisierung I Aufbau und Programmierung von ProzeBrechensystemen Springer-Verlag Berlin Heidelberg New York 1976 '--~---' Dr.-Ing. RUDOLF LAUBER Professor an der Universitiit Stuttgart Direktor des Instituts fOr Regelungstechnik und ProzeBautomatisierung Mit 125 Abbildungen ISBN-13: 978-3-540-07502-8 e-ISBN-13: 978-3-642-96302-5 001: 10.1007/978-3-642-96302-5 Library of Congress Cataloging in Publication Data Lauber, Rudolf. ProzeBautomatisierung (Hochschultext) Bibliography: p. Includes index. CONTENTS: 1. Aufbau und Programmierung von ProzeBrechensystemen. 1. Process control - - Data processing. I. Title. TSl56.8.L38 658.5'3'02854 76-1970 Das Werk ist urheberrechtlich geschiitzt. Die dadurch begriindeten Rechte, insbesondere die der Obersetzung, des Nachdruckes, der Entnahme von Abbildungen, der Funksendung, der Wiedergabe auf photomechanischem oder ahnlichem Wege und der Speicherung in Datenverarbeitungsanlagen bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Bei Vervielfaltigungen fUr gewerbliche Zwecke ist gemaB § 54 UrhG eine Vergiitung an den Verlag zu zahlen, deren H6he mit dem Verlag zu vereinbaren ist. © by Springer-Verlag, Berlin I Heidelberg 1976. Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Buche berechtigt auch ohne besondere Kennzeichnung nicht zur Annahme, daB solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten waren und daher von jedermann benutzt werden dOrften. Vorwort ProzeBdatenverarbeitung, ProzeBinformatik, ProzeBautomatisierung - dies sind Be griffe, die aus verschiedenem Blickwinkel ein neues Fachgebiet der Ingenieurwissen schaften umschreiben. Es befaBt sich sowohl mit der Gerate- und Programmierungs technick des ProzeBrechners als auch mit den Verfahren seines Einsatzes bei der Au tomatisierung technischer Prozesse. In diesem Buch wird der ProzeBrechner unter dem Blickwinkel des anwendenden Ingenieurs als Automatisierungs-Hilfsmittel gesehen. Da her wurde bewuBt der Titel "ProzeBautomatisierung" gewahlt. Mit dem Siegeszug des ProzeBrechners, der gegenwartig durch den Ubergang zu de zentralen Strukturen mit Mikroprozessoren in ganz neue Anwendungsbereiche vorst6Bt, hat die Erarbeitung einer methodischen Lehre des neuen Fachgebiets nicht Schritt ge halten. In Ermangelung einer solchen Lehre sind die bisherigen "ProzeBrechner-Ex perten" als Autodidakten anzusehen, die sich ihr "Know-How" teils durch das Studium weitgehend produktabhangiger Ver6ffentlichungen (in F achzeitschriften und F achbii chern), teils durch eigene Erfahrungen erworben haben. Dieses Buch will hier einen Wandel schaffen. Es versteht sich als Lehrbuch mit dem Ziel, ein solides Fundament an Grundwissen und gesicherten Methoden zu vermit teln. Der gesamte Stoff wird in zwei Banden dargeboten werden. Band I behandelt den Aufbau und die Wirkungsweise des ProzeBrechensystems. Ein spater folgender Band II wird den Verfahren beim Einsatz von ProzeBrechnern zur Uberwachung, Steuerung, Rege lung, Optimierung und Sicherung technischer Prozesse gewidmet sein. Die Einteilung, Auswahl und Darstellung des Stoffes wurde maBgeblich durch die Tat sache bestimmt, daB sich das Buch an die Automatisierungs-Ingenieure (und nicht et wa an Gerateentwickler oder Systemprogrammierer) wendet. Daher werden Kenntnisse der Gerate- und Programmierungstechnik nur in dem Umfang vermittelt, wie sie fUr IV Vorwort eine sinnvolle Anwendung des ProzeBrechners erforderlich erscheinen. Manche Ver einfachung oder verklirzende Darstellung erklart sich aus diesem Gesichtspunkt her- aus. Der hier vorgelegte B and I des Werkes gliedert sich in drei Teile, die jeweils vier Ka pitel umfassen. In Teil A "Einflihrung in die ProzeBautomatisierung" werden die verwendeten Begriffe erlautert und die Strukturen und Funktionseinheiten von ProzeBrechensystemen ein flihrend behandelt. AuBerdem wird in sehr knapper Form das Vorgehen beim Entwurf von ProzeBautomatisierungssystemen betrachtet (eine ausflihrliche Darstellung dieses Themas ist dem Band II vorbehalten) . Der Teil B "Geratetechnischer Aufbau von ProzeBrechensystemen" bringt eine Ver tiefung der in Teil A gelegten Grundlagen. Neben der Zentraleinheit wird hier vor al lem auf die Strukturen von ProzeBperipheriesystemen und auf die Funktionseinheiten zur Ein- und Ausgabe von ProzeBsignalen eingegangen. Auch den - flir den Anwender besonders wichtigen - MaBnahmen gegen Storbeeinflussungen der ProzeBsignale ist ein eigenes Kapitel gewidmet. Der Teil C "Programmierung von ProzeBrechensystemen" stellt den - nach Meinung des Verfassers erstmalig unternommenen - Versuch dar, die grundsatzlichen Metho den der Echtzeit-Programmierung in systematischer und verstandlicher Form aufzu zeigen und damit "lehrbar" zu machen. Dabei wird die Wirkungsweise von Echtzeit Betriebssystemen nicht nur in allgemeinen, abstrakten Worten geschildert. Vielmehr wird an Hand eines stark vereinfachten Anwendungsbeispiels ein "Mini-Betriebssy stem" entwickelt und schrittweise erweitert. Der Verfasser glaubt, daB eine solche exemplarische und trotzdem systematische Beschreibung bisher in der Literatur fehlt und daB auf Grund dieser nachvollziehbaren Darstellung mancher "erfahrene" ProzeB ner-Anwender, dem das Wort "Betriebssystem" als Schlagwort gelaufig liber die Lippen geht, noch lernen kann, was ein solches Organisationsprogramm eigentlich ist. Ein weiterer Schwerpunkt des Teils C ist das Kapitelliber Echtzeitprogrammierspra chen. Hier wird insbesondere die Anwendung der ProzeBrechnersprache PEARL an Hand eines konkreten Beispiels deutlich gemacht. Zusammen mit dem Anhang, in dem die Grundzlige dieser neuen und zukunftsweisenden Sprache in kurzer (und gelegent lich stark vereinfachter) Form erlautert sind, wird hier praktisch ein einflihrender Kursus in den Gebrauch dieser Sprache geboten. Als Grundlage des Werkes wurde das Manuskript einer zweisemestrigen Vorlesungs reihe "ProzeBautomatisierung I und II" verwendet, die der Verfasser seit 1970 an der v Vorwort Universitiit Stuttgart hiilt. Der Band I gibt in erweiterter Form den Stoff des ersten Teils dieser Vorlesung wieder. Bei den Horern dieser Vorlesung wird die Teilnahme an einer Vorlesung mit Seminar "Datenverarbeitung I" vorausgesetzt. Die gleiche Voraussetzung - niimlich das Vorhandensein von Grundkenntnissen der Datenverar beitung und der elektronischen Rechenanlagen - wird auch an die Leser dieses Buches gestellt . Ftir zahlreiche wertvolle Anregungen und insbesondere fUr die Ausarbeitung einer ersten Version des "Mini-Betriebssystems" bin ich Herrn Dr .-Ing. B. Eichenauer zu groBem Dank verpflichtet. Ohne seine intensive Mitarbeit ware der Teil C des Bu ches wohl nicht in dieser Weise gelungen. Mein Dank gilt auch Herrn Prof. Dr .-Ing. W. Kaiser fUr die Durchsicht des Abschnitts 6.4 tiber ProzeBperipheriesysteme mit Datentibertragung. AuBerdem danke ich allen meinen Mitarbeitern, vor allem den Herren Dipl.-Ing. H. Stocker, Dipl.-Ing. O. Neff, Dipl.-Ing. A. Ghassemi, Dipl. Ing. W. Koch und Dipl. -Ing. W. Schweizer, die mich bei der Abfassung einzelner Ab schnitte und bei der Durchrechnung der Beispiele untersti.itzt haben. Auch dem Verlag danke ich fUr die bewiesene Geduld und die gute Ausftihrung des Buches. Stuttgart, im Oktober 1975 R. Lauber Inhalt Teil A: Einfiihrung in die ProzeBautomatisierung . • • • • • • • . . • • . • • • • • • • • • 1 1. Von der Steuerungs- und Regelungstechnik zur ProzeBautomatisierung • • • • • 1 1.1 Die ProzeBautomatisierung als Weiterfiihrung und Verallgemeinerung der herkommlichen Steuerungs- und Regelungstechnik • • • • • . • . • • • • • 1 1.2 Grundtypen technischer Prozesse ••••••... 4 1. 3 Stufen des Einsatzes von ProzeBrechnern ••.. 7 1.4 Die Verkntipfung von Teilprozessen bei der ProzeBautomatisierung. • • .• 13 2. Struktureller Aufbau von ProzeBautomatisierungssystemen • • . • . • • • • • • .• 20 2.1 Dezentrale Struktur der Automatisierungssysteme bei der Einzelgeratetechnik • • . • • . . • • . . . • • • • . • • • . . . • . • • • . • • . • • •. 20 2.2 ProzeBautomatisierungssysteme mit zentraler Informations- verarbeitung • • . • • . • . • • . • • • . • • • . . . • • • . • • . . • . .•.• 21 2.3 ProzeBautomatisierungssysteme mit dezentraler Informations- verarbeitung • • • . • . • • . • • • . • • • . • • • • • • • • . . . • • • • . . . • • . . .• 28 3. Die Bestandteile eines ProzeBautomatisierungssystems • • • . . • . • . . . . • •• 34 3.1 tibersicht tiber die Teilsysteme eines ProzeBautomatisierungssystems •• 34 3.2 Das ProzeBrechner-Geratesystem (Einrechnersystem) • • • . . • • • • . •• 35 3.3 Verbindungsglieder zwischen dem ProzeB und dem ProzeBrechensystem. 43 3.4 Das ProzeBrechner-Programmsystem. • • • . . • • • • . . . • • • • . . • • • .• 45 4. Entwurf von ProzeBautomatisierungssystemen • • • • • • . . . • • . • • • • • . • .• 50 4.1 Der "Lebenslauf" eines ProzeBautomatisierungssystems. • • • • . . • • . •• 50 4.2 Tatigkeiten und Ergebnisse der Entstehungsphasen. • . . • • • • 52 4.3 Beschreibungsebenen . • • . • • . • . • . . . . • • . • . . . . • • • • . 57 Teil B: Geratetechnischer Aufbau von ProzeBrechensystemen • • • . . • • • • • • •• 61 5. Die ProzeBrechner-Zentraleinheit .•••••. 61 5.1 Informationsdarstellung ••.•.••.••• 61 Inhalt VII 5.2 Funktionseinheiten der Zentraleinheit • • • • • • • • • • • • • • • • • • • • • • •• 65 5.3 Arbeitsweise der Zentraleinheit • • • • • • • • • • • • • • • • • • • • • • • • • • •• 72 5.4 Programm unterbrechung. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 81 5.5 Arbeitsweise des E/A -Werks. • • • • • • • • • • • • • . • • • . . • • • • • • . • •• 87 5.6 Kennwerte von ProzeBrechner-Zentraleinheiten • • • • • • • • • • • • • • • •• 93 6. ProzeBperipheriesysteme • . • • • • • • • • • • • • • • • • • • • • • • . • • • • • • • • •• 96 6.1 Informations-Anpassung • • • • • • • • • • • • • • • • • • • • • • • • • • • . • • • •• 96 6.2 ProzeBperipherie-Strukturen. • • • • • • • • • • • • • • • • . • . • • • • • • • • •. 99 6.3 ProzeBperipheriesysteme mit zentraler Struktur. • • • • • • • • • • • • • • •• 105 6.4 ProzeBperipheriesysteme mit dezentraler Struktur und Sammelleitung (Bus) •••••••••••••••••••••••.•••••••••••••••••••••• 114 6.5 ProzeBperipheriesysteme mit Datentibertragung ••••••••••••••••• 120 7. Funktionseinheiten zur Ein- und Ausgabe von ProzeBsignalen • • • • • • • • • •• 128 7.1 Arten von Funktionseinheiten zur ProzeBsignal-Ein/A usgabe. • • • • • • •• 128 7.2 Digitaleingabe. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 129 7.3 Digitalausgabe •••••••••••••••••••••••••••••••••••••••• 132 7.4 Analogeingabe •••••••••••••••••••••••••••••••••••••••• 133 7.5 Analogausgabe. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 138 7.6 Impulseingabe und Zeitgeber • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 140 7.7 Impulsausgabe. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • . • • • • • • •• 142 8. Storsichere Signaltibertragung zwischen ProzeB und ProzeBeinheit •••••••• 143 8. 1 Arten der Signaldarstellung • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 143 8.2 Entstehung von Storbeeinflussungen. • • • • • . • • • • • • • • • • • • • • • • • •• 145 8.3 MaBnahmen gegen Storbeeinflussungen. • • • • • • • • • • • • • • • • • • • • • •• 150 8.4 MaBnahmen zur nachtraglichen Beseitigung von MeBwertverfalschungen • 155 Teil C: Programmierung von ProzeBrechensystemen • • • • • • • . • • • • • • • • • •• 157 9. Grundbegriffe der Echtzeit-Programmierung • • • • • • • • • • • • • • • • • • • • •• 157 9.1 Problemstellung •• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • . • • • •• 157 9.2 Echtzeit-Programmierungsverfahren • • • • • • • • • • • • • • • • • • • • • • •• 160 9.3 Rechenprozesse (Tasks) • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 167 10. Echtzeit-Betriebssysteme. • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 173 10.1 Begriffsbestimmung • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• 173 10.2 Organisationsaufgaben eines Echtzeit-Betriebssystems. • • • • • • • • • •• 175 10.3 Beispiel fUr die L6sung der Organisationsaufgaben (" Mini-Betriebssystem" ) •••••..•••••••••••••.•••••••.•• 176 10.4 Erweiterung des exemplarischen Mini-Betriebssystems ••••••••••• 183 VIII Inhalt 10.5 Gliederung von ProzeBrechner-Betriebssystemen in anwendungs bezogene Programmbausteine ..•..•................•.•. 191 10.6 Beschreibung von ProzeBrechner-Betriebssystemen durch ein Schichtenmodell •...................•.•........•.... 196 11. Echtzeit-Pro . . . . . . .•.•..••••• 200 ~----~--~--------~------~ 11 . 1 Grundbegriffe .•.....•......• .• 200 11. 2 Hohere Programmiersprachen fUr ProzeBrechner .207 11.3 Die Verfahren-orientierte ProzeBrechner-Programmier- sprache PEARL . . . . . . . . . . • . . . . . • . .... . . .•. 213 11.4 Beispiel fUr die Anwendung von PEARL ........... . •...• 216 12. ProzeBprogrammiersysteme ...•.. . ... 232 12.1 Problemstellung . . . . . . . ...... . . . 232 12.2 Verfahren-orientierte ProzeBprogrammiersysteme .233 12.3 Anwendungsspezifische ProzeBprogrammiersysteme . .234 12.4 Programmiersysteme mit Entwurfs-und Entwicklungsunter- sttitzung . . . . . . . . . . • . . • . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Anhang: Grundztige der ProzeBrechner-Programmiersprache PEARL ..••... 244 A1. Aufbau eines PEARL-Programms ... . · 244 A2. Syntax des Systemteils ...... . · 245 A3. Datenelemente ..... . ••....••.•. .247 A4. Operatoren und Ausdrticke . · 249 A5. Anweisungen ....... . · 250 A6. Anweisungsgruppen .. . .252 A7. Anweisungen zur Vereinbarung und zur Steuerung von Tasks .255 Sachverzeichnis .........•.............................••. 260 TElL A: Einfuhrung in die ProzeBauto matisierung 1. Von der Steuerungs- und Regelungstechnik zur ProzeBautomatisierung 1.1 Die ProzeBautomatisierungals WeiterfOhrung und Verallgemeinerung der herk6mmlichen Steuerungs- und Regelungstechnik Die technische Entwicklung ist durch das Bestreben gekennzeichnet, technische Vor gange moglichst effektiv durchzufiihren. 1m Zuge dieser Entwicklung wurden immer mehr selbsttatig arbeitende Einrichtungen zur MeBwerterfassung, Steuerung und Re gelung eingesetzt. Dies fiihrte zur Entstehung der weitgehend selbstandigen Fachge biete der MeBtechnik, Steuerungstechnik und Regelungstechnik. Heute ist nun zu beobachten, wie diese Fachgebiete wieder zusammenwachsen und zu Teilgebieten der ProzeBautomatisierung werden. Dieses neue Fachgebiet laBt sich be ztiglich der betrachteten Vorgiinge, beztiglich der verwendeten Informationsverarbei tungsgerate und beziiglich der behandelten Aufgaben als Weiterfiihrung und Verallge meinerung der herkommlichen Steuerungs- und Regelungstechnik auffassen [1J • Von Einzelvorgangen zu technischen Prozessen In der Steuerungs- und Regelungstechnik gibt es den Begriff der "Strecke". Nach DIN 19226 ist dies derjenige Teil des Wirkungsweges, welcher den aufgabengemaB zu beeinflussenden Bereich einer Anlage darstellt. In dies em Sinne wird etwa in ei ner Kraftwerksanlage der Drehstromgenerator als Regelstrecke aufgefaBt, dessen Spannung zu regeln ist. Ebenso stellt in einem Gebaude jeder Raum eine eigene Re gelstrecke dar, deren Temperatur und Luftfeuchtigkeit zu regeln sind. Bei der ProzeBautomatisierung werden nun nicht mehr nur Teile von Wirkungswegen einer technischen Anlage einzeln betrachtet. Vielmehr wird versucht, auch ihr Zu- 2 1. Von der Steuerungs- und Regelungstechnik zur ProzeBautomatisierung sammenwirken mit in die Betrachtung einzubeziehen und die Gesamtheit aller Vor gange so zu analysieren, zu organisieren und zu steuern, daB eine optimale Nutzung der Produktions-, Stoff- und menschlichen Hilfsquellen ermoglicht wird [2J • Daher spricht man nicht mehr von "Strecken", sondern von "Technischen Prozessen". Ein technischer ProzeB ist definiert als Vorgang, der nach DIN 66203 durch Umformung oder Transport von Materie, Energie oder Information charakterisiert ist und bei dem sich durch geeignetes Einwirken auf EinfluBgroBen bestimmte ErgebnisgroBen erzielen lassen (B ild 1.1.) • St6reinfiusse (nicht steuerbare Eingangsgr6flen) Einfiuflgr6flen Technischer Prozen (s teuer bare Ergebnisse (Materie, Energie oder Information Eingangsgroflen) wird umgeformt oder transportiert) Bild 1.1. Definition des Begriffes "Technischer ProzeB". Der Begriff des technischen Prozesses tritt damit als Verallgemeinerung an die Stelle des Begriffs der Strecke. Bei den oben erwahnten Beispielen stellt die Gesamtheit aller Vorgange in einem Kraftwerk oder in einem Gebaude jeweils einen technischen ProzeB dar. Von der Einzelgeratetechnik zur ProzeBrechentechnik Die herkommliche Steuerungs- und Regelungstechnik ist dadurch gekennzeichnet, daB E j n z e I g era t e zur Informationsverarbeitung fUr E in z e I auf gab e n eingesetzt werden. So dienen z.B . RegIer zur Konstanthaltung oder Sollwertnachfiihrung einzel ner RegelgroBen. Steuerungen fiir Einzelablaufe - wie etwa die Steuerung der Phasen rot-gelb-griin bei Signalampeln im StraBenverkehr - sind fest verdrahtete Einzelge rate. Bei dem zuletzt genannten Beispiel der Verkehrsampelsteuerung laBt sich sehr an schaulich eine nachteilige Eigenschaft der Einzelgeratetechnik erkennen: Wenn in ei ner Stadt mehrere StraBenkreuzungen mit Verkehrsampeln ausgeriistet werden, so entsteht die Notwendigkeit, den VerkehrsfluB durch "Griine Wellen" in Gang zu halten, d.h., die Einzelsteuerungen an den StraBenkreuzungen miissen durch eine iibergeord-