DE4117790C2 - Vorrichtung zur Signalverarbeitung - Google Patents
Vorrichtung zur SignalverarbeitungInfo
- Publication number
- DE4117790C2 DE4117790C2 DE19914117790 DE4117790A DE4117790C2 DE 4117790 C2 DE4117790 C2 DE 4117790C2 DE 19914117790 DE19914117790 DE 19914117790 DE 4117790 A DE4117790 A DE 4117790A DE 4117790 C2 DE4117790 C2 DE 4117790C2
- Authority
- DE
- Germany
- Prior art keywords
- action
- values
- value
- signals
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 13
- 230000009471 action Effects 0.000 claims description 157
- 230000015654 memory Effects 0.000 claims description 49
- 238000000034 method Methods 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 30
- 239000013598 vector Substances 0.000 claims description 28
- 239000003607 modifier Substances 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 6
- 239000007788 liquid Substances 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000013461 design Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 4
- 230000014509 gene expression Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 239000000126 substance Substances 0.000 claims description 3
- 230000036961 partial effect Effects 0.000 claims description 2
- 238000010276 construction Methods 0.000 claims 1
- 239000012530 fluid Substances 0.000 claims 1
- 230000006399 behavior Effects 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000005259 measurement Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 6
- 235000015097 nutrients Nutrition 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 239000003344 environmental pollutant Substances 0.000 description 5
- 231100000719 pollutant Toxicity 0.000 description 5
- 230000035484 reaction time Effects 0.000 description 5
- 241000894006 Bacteria Species 0.000 description 4
- 238000007792 addition Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000001105 regulatory effect Effects 0.000 description 4
- 230000003542 behavioural effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000004069 differentiation Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003851 biochemical process Effects 0.000 description 1
- 230000002844 continuous effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003446 memory effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
- G05B13/0275—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using fuzzy logic only
Landscapes
- Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Description
Die Erfindung betrifft eine Vorrichtung, insbesondere Regelvorrichtung, zur
Signalverarbeitung von Eingangssignalen von einem Objekt oder Prozeß, die
Ausgangssignale an das Objekt oder den Prozeß ausgibt, wobei die Ausgangssignale von
den Eingangssignalen derart abhängig sind, daß in einem Merkmalextraktor
anwendungsspezifische numerische Merkmalwerte jeweils aus einem oder mehreren
Eingangssignalen gebildet werden, wobei aus den Merkmalwerten ein Adressenvektor
gebildet wird zur Adressierung von vorab in einem Speicher eingetragenen
Aktionswerten, die in einem Aktionumsetzer in die Ausgangssignale umgesetzt werden
und die Aktionswerte gemäß Wenn-Dann-Regeln derart aus den Merkmalwerten
bestimmt sind, daß logische Verknüpfungen von Wenn-Teilen, die den Merkmalwerten
zugeordnet sind, Dann-Teilen entsprechen, welche die Aktionswerte ergeben.
Eine derartige Vorrichtung ist aus der DE 39 27 581 A1 bekannt.
Bekannte digitale Vorrichtungen zur Signalverarbeitung sind in der Regel mittels
Hardware, speicherprogrammierbaren Steuerungen oder digitalen Rechenanlagen
aufgebaut. In einigen Anwendungsfällen ist der gewünschte Zusammenhang zwischen
den Eingangssignalen und den Ausgangssignalen in Form von Gleichungen zu
beschreiben. Doch für eine ganze Reihe von Anwendungen ist eine analytische
Beschreibung nicht möglich. In diesen Fällen wird gewöhnlich eine Programmierung des
Zusammenhangs in Form von Fallunterscheidungen und -verzweigungen erfolgen. Dabei
bereitet die Festlegung des Ein-/Ausgangsverhaltens der bekannten digitalen
Vorrichtungen zur Signalverarbeitung Schwierigkeiten, weil
- - alle möglichen relevanten Fälle explizit ausprogrammiert werden müssen, und zwar auch unter Berücksichtigung der Echtzeitaspekte, wobei besonders die sequentielle Abarbeitung von Verzweigungen nicht nur unübersichtlich und schwer wartbar ist, sondern auch recht hohe Laufzeiten verursacht und
- - dies nur geübten, erfahrenen Programmierern von Ablaufsteuerungen, speicherprogrammierbaren Steuerungen oder Prozessor-Software möglich ist, die aber i. allg. nicht die Fachexperten für das Objekt oder den Prozeß, dessen Signale verarbeitet werden, und damit für die von der betreffenden Vorrichtung auszuführenden Aufgabe sind.
Insbesondere sind schon kleine durch Systemergänzungen oder Systemumstellungen
erforderliche Änderungen meist sehr aufwendig, weil i. allg. große Programmteile
geändert werden müssen.
Die Verarbeitung von explizit gegebenem Expertenwissen stellt eine bekannte
Maßnahme dar, bei der die anwendungsspezifische Verhaltensbeschreibung auf einer
abstrakten, sprachlichen und dadurch leicht verständlichen Weise erfolgt, so daß ein
Fachexperte selbst das Verhalten beeinflussen kann. Das Wissen wird beispielsweise in
Form von WENN-DANN-Regeln dargestellt, wobei der WENN-Teil die Bedingungen
beschreibt, unter denen die im DANN-Teil angegebenen Aktionen ausgeführt werden
sollen. Die Bedingungen basieren i. allg. auf einer UND-Verknüpfung sprachlich
beschriebener Zustände wie z. B. "groß", "mittel", "klein" von Eingangsgrößen oder
daraus abgeleiteter Größen. Diese Größen und deren Unterteilung in sprachlich
beschriebene Zustände sowie die Art und Weise, nach welchen Schemata aus den
Aktionen die Ausgabewerte bestimmt werden, werden durch einen Experten
anwendungsspezifisch festgelegt und bestimmen Teile des Aufbaus einer solchen
Vorrichtung. Derartig anwendungsabhängig betrachtete Eingangssignale und die daraus
abgeleiteten Größen werden gewöhnlich zusammenfassend als Merkmale bezeichnet.
Weiterhin werden alle, teilweise nur durch sprachliche Begriffe abgegrenzten Zustände
der einzelnen Merkmale gewöhnlich als Instanzen bezeichnet.
Die im DANN-Teil einer Regel angegebenen Konklusionen beschreiben, wie das(die)
Ausgangssignal(e) des Systems verändert werden soll(en). Die Art und Weise, nach der
dies geschieht, wird ebenfalls anwendungsspezifisch von einem Experten festgelegt.
Dazu können ein oder auch mehrere Schemata benutzt werden, um einen im DANN-Teil
einer Regel spezifizierten Zahlenwert in einen Ausgabewert umzusetzen. Weil auch diese
Schemata anwendungsspezifisch sind und die nachfolgenden Beschreibungen von ihrer
genauen Ausführung unabhängig sind, sollen sie zusammenfassend als Aktion(en)
bezeichnet werden.
Eine derartige Vorrichtung ist aus der msr 33(1990) 2, S. 58-61 zur Steuerung eines
Roboters bekannt. Die Reaktionszeit einer nach einer derartigen Methode
programmierten Vorrichtung ist normalerweise wegen der erforderlichen
Ablaufverzweigungen von den jeweils vorliegenden Eingangsdaten abhängig. Es ist
deshalb schwierig, das Laufzeitverhalten, beispielsweise dessen mittlere oder worst case-
Laufzeit, im voraus zu bestimmen und die Einhaltung von Zeitschranken zu garantieren,
was insbesondere dann, wenn sehr kurze Reaktionszeiten gefordert sind oder
sicherheitstechnische Belange betroffen sind, unbefriedigend ist. Außerdem ist die
mittlere und worst case-Reaktionszeit eines Systems i. allg. von der Anzahl der Regeln
abhängig, die das gewünschte Verhalten spezifizieren, und kann mit zunehmender
Regelzahl für Echtzeitanwendungen zu groß werden.
Sehr kurze Reaktionszeiten erzielt die Vorrichtung nach DE 39 27 581 A1, bei der das
verhaltenbestimmende Wissen gemäß einer Ungenauigkeitsbeurteilung durch Regeln in
einer Wissensbasis unscharf spezifiziert wird. Dieses verhaltenbestimmende Wissen wird
vor der eigentlichen Auswertung in eine angemessene Form umgewandelt und in eine
Vorrichtung übertragen, die aus einem Speicher mit unmittelbarer Adressierung durch
einen Adressenvektor besteht, der aus den Merkmalwerten gebildet wird, und so eine
schnelle Auswertung des Wissens gestattet. Dazu werden in einem Merkmalextraktor
bestehend aus Sensoren (Winkelsensor), Berechnungseinheiten (Differentialkreis) und
A/D-Umsetzer digitalisierte Merkmale (Beobachtungsdaten) gewonnen, die einem
Aktionbestimmer (Speicher) als Adresse zugeführt werden, in den das
verhaltenbestimmende Wissen vorab als Inhalt eines Speichers abgelegt wurde. Dieser
liefert digitale Steuerdaten, die in einem Aktionsumsetzer (D/A-Umsetzer mit Aktoren
wie Antriebskreis und Antriebseinheit) zum Prozeß zurückgeführt werden und auf diesen
einwirken. Da die zu verknüpfenden, digitalisierten Merkmalwerte (Beobachtungsdaten)
als Vektorkomponenten eines Adressenvektors auf die Adreßleitungen des Speichers
geführt werden, ist diese Anordnung aber mit dem Nachteil behaftet, daß mit
zunehmender Anzahl und/oder mit zunehmender Auflösung der Merkmale der Speicher
schnell unpraktikabel groß wird, weil sich die Größe des Speichers aus der Zweier-
Potenz der Summe der Anzahl Adreßbits ergibt, die die jeweiligen digitalisierten
Merkmale aufweisen. Solche Systeme können also schon bei vergleichsweise wenigen
Merkmalen relativ teuer werden. Die Ursache dafür ist, daß die Merkmalwerte direkt
Adreßteile darstellen müssen, um die durch die Eins-zu-Eins-Kausalität gegebene
Abbildung der Ungenauigkeitsbeurteilung und Reziprok-Ungenauigkeitsbeurteilung
wiedergeben zu können.
Ziel der vorliegenden Erfindung ist es deshalb, eine auch von Nicht-
Programmierexperten auf einer abstrakten Ebene in ihrem Verhalten zu spezifizierende,
kostengünstige, digitale Echtzeitvorrichtung mit reduziertem Speicherbedarf zu schaffen,
die auch bei zeitkritischen Anwendungen harte Echtzeitbedingungen erfüllt und deren
Laufzeitverhalten einfach zu optimieren und/oder durch Lerntechniken zu spezifizieren
ist.
Die Lösung besteht darin, daß die Merkmalwerte einem Klassifikator zugeführt werden,
der den Wertebereich der Merkmalwerte derart in aneinandergrenzende Intervalle
klassifiziert, deren Intervallgrenzen im Klassifikator abgebildet sind, daß die Anzahl der
Intervalle geringer ist als die Anzahl der verschiedenen möglichen Merkmalwerte, wobei
den Intervallen jeweils eine eindeutige Instanznummer zugeordnet ist, und daß aus diesen
Instanznummern zu bestimmen Zeitpunkten in einem Indexbildner der Adressenvektor
gebildet wird.
Durch diese Lösung wird das strukturierte Wissen einerseits in der jeweiligen
Intervallaufteilung, die im Speicher der Klassifikatoren zweckentsprechend, auch
nichtlinear und/oder beliebig unstetig gehalten wird, und andererseits in den
Eintragungen der Aktionswerte im Speicher repräsentiert und ist jederzeit unverzüglich
umsetzbar. Durch eine Änderung der Speicherinhalte in den Klassifikatoren und im
Aktionswertespeicher ist eine Modifikation jederzeit möglich.
Zur Programmierung der Vorrichtung wird die Verarbeitung der verhaltenbestimmenden
Information, des Wissens, in zwei Phasen eingeteilt, nämlich
- 1. Erfassen der Wissens offline in Form von WENN-DANN-Ausdrücken, wobei das Verhalten der Vorrichtung unabhängig von der praktischen Ausgestaltung der Vorrichtung beschrieben wird, und eine Transformation dieser ersten Darstellung in eine dem Speicher der Vorrichtung angepaßte Tabellenform.
- 2. Nutzung dieser Tabellenform online unter Echtzeitbedingungen in der Vorrichtung, z. B. in einem Regelkreis.
Das erfindungsgemäße Verfahren soll anhand der folgenden Figuren und beispielhaft
anhand verschiedener Anwendungen von wissensbasierten Regelungen beschrieben
werden. Dabei erfolgt die Beschreibung insbesondere unter dem Aspekt einer software-
technischen Realisierung auf einer konventionellen, digitalen Rechenanlage, weil diese
Darstellung am übersichtlichsten ist. Die Umsetzung der Struktur mittels einfacher
Ablaufsteuerungen oder speicherprogrammierbarer Steuerungen ist für einen Fachmann
leicht möglich, weil nur einfache Baugruppen bekannter Art zusammenzufügen sind.
Dazu zeigen
Fig. 1 ein Blockschaltbild der Vorrichtung zu Signalverarbeitung mit einer
Regelstrecke als Prozeß,
Fig. 2 das Blockschaltbild eines beispielhaften Aktionumsetzers,
Fig. 3 die Umsetzung einer beispielhaften Regelbasis von einer dem Menschen
angepaßten Darstellung in eine der Regelvorrichtung angepaßte Darstellung, mit
Fig. 3a Rohform des verhaltensbeschreibenden Regeln,
Fig. 3b eine beispielhafte Einteilung der verwendeten Merkmale,
Fig. 3c eine Zwischendarstellung,
Fig. 3d das Ergebnis der Transformation der Regeln nach Fig. 3a,
Fig. 3e die schematische Darstellung des Merkmalraums für die Regeln nach Fig. 3a,
Fig. 4 das Blockschaltbild einer Regelvorrichtung mit einem Modifikator,
Fig. 5 das Blockschaltbild einer Regelvorrichtung mit einer Lehrvorrichtung,
Fig. 6 das Blockschaltbild einer beispielhaften wissensbasierten Regelung eines
Bioreaktors,
Fig. 7 das Blockschaltbild eines beispielhaften Aktionumsetzers für die wissens
basierte Regelung eines Bioreaktors,
Fig. 8 ein beispielhaftes Regelergebnis der manuellen Regelung eines simulierten
Bioreaktors unter idealen Betriebsbedingungen,
Fig. 9 ein beispielhaftes Regelergebnis einer wissensbasierten Regelung eines
simulierten Bioreaktors unter idealen Betriebsbedingungen,
Fig. 10 ein beispielhaftes Regelergebnis einer wissensbasierten Regelung eines
simulierten Bioreaktors unter realistischen Betriebsbedingungen,
Fig. 11 das Blockschaltbild einer beispielhaften wissensbasierten Regelung eines
Drehstrom-Motors,
Fig. 12 ein beispielhaftes Regelergebnis einer selbstmodifizierenden, wissens
basierten Regelung eines realen Drehstrom-Motors vor der Selbstmodifikation,
Fig. 13 ein beispielhaftes Regelergebnis einer selbstmodifizierenden, wissens
basierten Regelung eines realen Drehstrom-Motors nach einer kurzen Selbstmodifikation.
Fig. 1 zeigt ein Blockschaltbild einer Vorrichtung 1 zur Signalverarbeitung im Verbund
mit einem zu regelnden Objekt 2. Dabei werden aus dem Objekt 2, das ist i. allg. eine
technische Umgebung, die z. B. ein physikalischer oder verfahrentechnischer Prozeß ist,
Meßdaten gewonnen, die ggf. in Verbindung mit weiteren Daten, z. B. Solldaten oder
Stelldaten von einer Leitwarte, die Eingangsdaten 5 für das Echtzeitsystem 1 sind. Die
Darstellung erfolgt anhand einer Regelvorrichtung, die Teil eines Echtzeitsystems ist. Es
verarbeitet beispielsweise quasikontinuierliche Eingangsdaten 5 und gibt von diesen
unmittelbar oder von deren zeitlichem Verlauf abhängige Ausgangssignale 6, 7 aus. Dabei
sind in ihrer Wirkung zwei Ausgangssignaltypen zu unterscheiden, nämlich
Rückkoppelsignale 7, die zu dem Objekt 2 zurückgeführt werden und auf diese einwirken
(closed loop-Betrieb), und Informationssignale 6, die zu anderen Stellen weitergeleitet
werden (open loop-Betrieb) und nicht (direkt) auf das Objekt 2 zurückwirken.
Informationssignale dienen zum Beispiel der Anzeige von (vor-)verarbeiteten Signalen,
von aufbereiteten Meßsignalen intelligenter Sensoren oder Diagnose-Zwecken. Im
Gegensatz dazu wirken die rückgeführten Ausgangssignale 7 gewöhnlich im Sinne einer
Regelung auf das Objekt 2 zurück und haben dadurch wiederum Auswirkungen auf die
Eingangssignale 5.
Gewöhnlich wird die vorliegende Regelvorrichtung mit periodischer Abtastung analoger
Eingangssignale zur Gewinnung der Eingangsdaten betrieben, so daß der Ist-Zustand des
Objektes 2 über die Eingangssignale 5 zu äquidistanten Zeitpunkten in der
Regelvorrichtung einen neuen Stellzustand erzeugen. Diese Betriebsweise liegt nachfol
gender Beschreibung zugrunde, ohne die Allgemeingültigkeit einzuschränken, denn die
Übernahme der jeweiligen Ist-Zustände läßt sich auch bedarfsabhängig, also interrupt-
gesteuert vornehmen, so daß entsprechend dann jeweils ein neuer Stellzustand von der
Regelvorrichtung abgegeben wird.
Die Regelvorrichtung besteht aus einer dreistufigen Anordnung von einem
Merkmalextraktor 10, einem Aktionbestimmer 20 und einen Aktionumsetzer 30. Dem
Merkmalextraktor 10 stehen bei jeder Abtastung die Werte von Eingangssignalen 5 und
ggf. rückgekoppelte Ausgangssignalen 37 des Aktionumsetzers 30 zur Verfügung. Der
Merkmalextraktor 10 bestimmt aus den jeweiligen Werten dieser Eingangssignale nach
jeweils einem festen Schema die Merkmalwerte 15 und leitet diese zum Aktionbestimmer
20 weiter. Die Art und Weise wie die Merkmalwerte 15 bestimmt werden, wurde zuvor in
einer ersten Phase durch den Fachexperten festgelegt. Beispielsweise bestehen
Merkmalwerte aus vorgegebenen Pegeln, Signalverlauftrends, bestimmten Differenzen
von Signalen oder von Zeiten oder sie sind mittels Differenzbildung oder Differenzierung
der Eingangssignale zu bestimmen.
Die derart gebildeten Merkmalwerte 15 haben einen kontinuierlichen oder quasikontinuier
lichen Wertebereich, der aus praktischen Gründen nach oben und nach unten begrenzt ist,
wie beispielsweise der Öffnungswinkel eines Ventils. Derartige Merkmale werden im
folgenden als kontinuierliche Merkmale bezeichnet. Andererseits gibt es auch Merkmale,
die jeweils nur einen von mehreren möglichen, diskreten Zuständen annehmen,
beispielsweise die Stellungen eines Ein- oder Ausschalters. Diese Merkmale werden im
folgenden diskrete Merkmale genannt.
Vorzugsweise besteht der Merkmalextraktor 10 aus je einer Einheit für jeden
Merkmalwert 15. Das sind z. B. Subtrahierer zur Differenzbildung oder Differenzierung
und Zähler, um Zeitdauern zu ermitteln, die jedesmal inkrementiert werden, wenn für eine
neue Abtastung Ausgangssignale zu berechnen sind.
Soweit sich das Objekt 2 immer nur in einem einzigen, durch diese Merkmale beschriebe
nen Zustand befindet, sind die Merkmalwerte 15 immer eindeutig zugeordnet infolge der
gewählten Art des Merkmalextraktors 10.
Während der Aufbau des Merkmalextraktors 10 und des Aktionumsetzers 30 direkt von
der in ihnen umgesetzten Beschreibung des Verhaltens der Regelvorrichtung abhängig ist,
ist der Aufbau des Aktionbestimmers 20 universell; er ist aber zweckmäßig auf verschie
dene Merkmalgruppierungen anpaßbar. Der Aktionbestimmer 20 ermittelt aufgrund der
anliegenden Gesamtheit der Merkmalwerte 15 zu jeder Abtastung Aktionwerte 25 und
leitet diese an den Aktionumsetzer 30 weiter. Ein Aktionbestimmer 20 besteht prinzipiell
aus je einem Klassifikator 40 für jeden Merkmalwert 15. Dieser ordnet dem anliegenden
Merkmalwert 15 eine Instanznummer 45 zu, die bei kontinuierlichen Merkmalen von der
jeweiligen Höhe des Merkmalwertes abhängig ist. Dazu ist der Wertebereich des
Merkmalwertes 15 in aneinandergrenzende Bereiche eingeteilt, die im folgenden Instanzen
genannt werden. Jeder Instanz ist für jedes Merkmal eine eindeutige Instanznummer 45
zugeordnet.
Der Klassifikator 40 besteht vorzugsweise aus einem Speicher, an dessen Adreßleitungen
ein Merkmalwert 15 angelegt ist. Er enthält für jeden möglichen Wert des Zahlenbereiches
des Merkmalwertes 15 die zugeordnete Instanznummer 45 als Eintrag, der von den
Datenleitungen des Speichers abgegriffen und an den Indexbildner 50 weitergeleitet wird.
Das setzt voraus, daß die Merkmalwerte, z. B. aufgrund einer Analog-Digital-Umsetzung,
in quasikontinuierlicher Zahlendarstellung vorliegen. Die Eindeutigkeit der
Klassifizierung wird durch ein vollständiges Laden des Speichers sichergestellt.
Der Klassifikator 40 besteht in einer anderen Ausführung aus einem Fensterkomparator
mit mehreren Schaltschwellen, dessen Ausgangssignale vorzugsweise codiert an den
Indexbildner 50 geleitet werden.
In einer weiteren Ausführung des Klassifikators besteht dieser aus einem
Unterprogramm, in dem ein fortgesetzter Vergleich des Merkmalwertes 15 mit den
Grenzen der verschiedenen vorgegebenen Wertebereiche erfolgt, bis die Instanz gefunden
ist, zu der der anliegende Merkmalwert 15 gehört. Durch Inkrementieren einer
Zählvariablen bei jedem Vergleich wird ohne weiteren Aufwand eine eindeutige
Instanznummer 45 in dem Zähler gebildet.
Vorzuziehen ist bei hohen Geschwindigkeitsanforderungen die dem erstgenannten
Verfahren entsprechende Vorgehensweise zur Klassifizierung der Merkmalwerte. Dazu
wird der Merkmalwert als Index für ein Array benutzt, dessen Einträge mit den zugehöri
gen Instanznummern 45 geladen sind.
Der Indexbildner 50 bestimmt mittels einer gewichteten Addition der Instanznummern 45
einen Adressenvektor 55, der eindeutig der Kombination der anliegenden
Instanznummern entspricht. Dazu erfolgt die Multiplikation des Merkmalwertes 45 mit
einer dem Merkmal zugeordneten Konstanten, die vorzugsweise ladbar ist und entspre
chend der Art und der Reihenfolge der Merkmalklassifikationen festzulegen ist. Ein
Summierer addiert die so entstandenen gewichteten Merkmalwerte und leitet die Summe
als Adressenvektor 55 an den Speicher 60 weiter.
Vorteilhaft wählt man die den Instanznummern 45 zugeordneten Gewichte jeweils als die
nächst größere Zweierpotenz, sofern ein Gewicht nicht schon einer Zweierpotenz
entspricht. So läßt sich eine sehr hohe Geschwindigkeit erzielen, indem im Indexbildner
50 der Adressenvektor 55 dadurch gebildet wird, daß die Dualzahlen der
Instanznummern 45 derart verkettet werden, daß sie einzelne Bits einer Dualzahl darstel
len, die den Adressenvektor 55 darstellt. Da dazu keinerlei mathematische Operationen,
sondern lediglich eine entsprechende Verdrahtung bzw. Bit-Operationen erforderlich sind,
ergibt sich eine sehr hohe Geschwindigkeit und eine sehr einfache Realisierung in
Hardware. Allerdings wird dabei der Speicher nicht vollständig ausgenutzt
werden, wenn eine Ergänzung des Bereiches auf eine höhere Zweierpotenz erforderlich
ist.
Es sind noch weitere Varianten des Aktionbestimmers 20 denkbar. Beispielsweise beste
hen die Einträge der Klassifikatoren 40 aus gewichteten Instanznummern 45. Der
Indexbildner 50 besteht dann nur noch aus einem Summierer, der diese gewichteten
Instanznummern addiert; ein Multiplizierer entfällt dabei. In einer weiteren Ausführung
werden die Instanznummern direkt als Indizes für ein mehrdimensionales Array
verwendet, das für jedes Merkmal eine zugeordnete Dimension besitzt. Ein Indexbildner
entfällt dabei.
Bei diskreten Merkmalen wird für jeden möglichen Zustand des Merkmals wie für die
Instanzen der kontinuierlichen Merkmale verfahren.
Der Speicher 60 besteht beispielsweise aus einem Speicher, an dessen
Adreßleitungen den Adressenvektor 55 geleitet wird und der für jeden Adressenvektor
zugeordnete Aktionwerte 25 enthält. Die Datenleitungen dieses Speichers leiten dann die
Aktionwerte 25 zum Aktionumsetzer 30 weiter.
Der Aktionumsetzer 30 benutzt jeweils die Aktionwerte 25 als Eingangsgrößen, die
bestimmen, welche Werte die Ausgangssignale 6, 7, 37 annehmen. Es gibt mehrere
Varianten der Aktionumsetzer 30. Die Aktionumsetzer 30 führen jeweils eine feste oder
wahlweise eine von mehreren Operationen, im folgenden Aktionarten genannt, aus und
bilden damit den Wert jeweils eines Ausgangssignals. Existiert nur ein Aktionwert 25,
dann wird dieser im Aktionumsetzer 30 nach einem, festen, der Aktionart entsprechenden
Schema in ein Ausgangssignal 6, 7, 37 umgesetzt. Dieses Schema kann zur Laufzeit
dynamisch abhängig von der jeweils vorliegenden Situation variiert werden, indem ein
weiterer Aktionwert 25′, der dem ersten Aktionwert 25 zugeordnet ist, als weiterer
Parameter benutzt wird, der eine von mehreren zur Auswahl stehenden Aktionarten
selektiert.
Fig. 2 zeigt dazu eine beispielhafte Anordnung eines Aktionumsetzers, der abhängig von
dem weiteren Aktionwert 25′ das Ergebnis einer von mehreren Aktionarten mittels eines
Multiplexers 340 auswählt, auf dessen Selektoreingang der weitere Aktionwert 25′ und
auf dessen Signaleingänge die Ergebnissignale der verschiedenen Aktionarten geschaltet
sind, und über ein Register 350 zu einem Ausgangssignal 36 weiterleitet, das hier
stellvertretend für ein Ausgangssignal 6, 7, 37 steht.
Es sind in Fig. 2 beispielhaft folgende Aktionarten vorgesehen, wovon jeweils eine
abhängig von dem weiteren Aktionwert 25′ selektiert wird, indem deren Ergebnissignal
über das Register 350 zum Ausgangssignal 36 weitergeleitet wird:
- a) unveränderte Weiterleitung eines Aktionwertes 25 zum Ausgangssignal 36,
- b) Addition des Aktionwertes 25 jeweils zum alten Wert des Ausgangssignals 36 in einem ersten Summierer 310 und Weiterleitung des Summensignals 315 zum Ausgangssignal 36,
- c) Multiplikation des Wertes eines kontinuierlichen Signals 305, das ein Eingangssignal 5 oder ein aus den Eingangssignalen 5 abgeleitetes Signals ist, mit dem Aktionwert 25 in einem Multiplizierer 320 und Weiterleitung des Produktsignals 325 zum Ausgangssignal 36,
- d) Multiplikation des Wertes eines kontinuierlichen Signals 305, das ein Eingangssignal 5 oder ein aus den Eingangssignalen 5 abgeleiteten Signals ist, mit dem Aktionwert 25 in einem Multiplizierer 320 und Weiterleitung des Produktsignals 325 zu einem zweiten Summierer, dessen Summensignal 335 zum Ausgangssignal 36 weitergeleitet wird,
- e) Halten des vorhergehenden Wertes des Ausgangssignals 36 durch Rückführung des Ausgangssignals auf einen Eingang des Multiplexers 340.
Die Aktionarten b), c) und d) erlauben eine Speicherplatz sparende, verkürzte Darstellung,
weil der Wertebereich der entsprechenden Aktionwerte kleiner sein kann als der
Wertebereich des zugehörigen Ausgangssignals. Letzterer ist i. allg. größer als der Effekt,
den man durch die Ausführung einer einzigen Aktion erzielen möchte. Trotzdem kann
durch mehrfaches Addieren oder durch die Multiplikation mit einer Größe, die einen
größeren Wertebereich umfaßt, der gesamte Wertebereich des Ausgangssignals überstri
chen werden.
Die Aktionarten c) und d) erbringen durch die Multiplikation des stufigen Aktionwertes 25
mit einem kontinuierlichen Signal eine kontinuierliche Wirkung des Ausgangssignals 36,
die ansonsten durch feiner gestufte Regeln und damit einer deutlich vergrößerten
Regelzahl erreicht werden könnte. Somit läßt sich mit einem relativ geringen Aufwand
und etwa qualitativen Regeln eine hochwertige Regelqualität erreichen.
Wenn es zweckmäßig ist, daß nicht zu jeder Abtastung der Wert jedes Ausgangssignals
36 geändert wird, wird entweder für jedes Ausgangssignal 36 ein Wertebereich des
entsprechenden Aktionwertes 25 vorgesehen, der einen Wert umfaßt, der keine
Veränderung des Ausgangssignals bewirkt, oder es werden dynamisch auswählbare
Aktionarten vorgesehen, von denen eine einen Einfluß auf das Ausgangssignal unter
drückt, wie das beispielhaft in Fig. 2 bei der Aktionart e) durch die Rückführung des
Ausgangssignals 36 auf einen Eingang des Multiplexers 340 gezeigt ist.
In einer weiteren Ausführung des Aktionumsetzers 30 werden die Ausgangssignale 6, 7,
36, 37 durch eine entsprechende Anweisungssequenz, die die Aktionwerte 25 als
Parameter benutzt, bestimmt.
Natürlich ist es möglich und vielfach auch sinnvoll, mehrere verschiedene, unabhängige
Aktionen für eine Abtastung durch den Aktionumsetzer 30 vorzunehmen, um mehrere
unabhängige Ausgangssignale 36, 37 zu bilden. Dabei werden entsprechend umfangrei
chere Einträge im Speicher 60 ausgewählt und entsprechend an die verschiedenen
Teile des Aktionumsetzers 30 geleitet.
Ein Teil der Ausgangssignale 36 sind solche, die keinen direkten Einfluß auf die
Merkmalwerte 15 haben, da sie entweder als Rückkoppelsignale 7 über das Objekt oder
Prozeß 2 indirekt zurückgeführt oder als Informationssignale 6 von der Regelvorrichtung
weggeleitet werden. Dagegen werden die Ausgangssignale 37 direkt als zustandsrückfüh
rende Signale auf den Merkmalextraktor 10 zurückgeführt. I.allg. handelt es sich dabei
um eine Rückführung, die innere Zustände der Regelvorrichtung darstellen und davon
abhängige Reaktionen auslösen.
Vor dem oben beschriebenen Hintergrund bezieht sich die nachfolgende Beschreibung
ausschließlich auf die Regelvorrichtung 1. Die Art und Weise, wie diese auf die
Eingangsdaten 5 reagiert, läßt sich vorteilhaft im Gegensatz zur bekannten ablauf- oder
prozedural-orientierten Beschreibung durch eine Ansammlung von abstrakten, linguisti
schen Aussagen, in diesem Fall Regeln, der Form
WENN (Bedingung) DANN (Aktion),
beschreiben. Das ermöglicht es auch Fachexperten, deren Wissen durch die neuartige
Vorrichtung ausgewertet werden soll, die Verhaltensbeschreibung vorzunehmen oder zu
ändern, ohne daß sie Spezialisten für die Programmierung sein müssen. Dazu wird das
Wissen, als Synonym für die verhaltensbeschreibende Information, offline auf mehreren
Abstraktionsstufen auf einer Rechenanlage erfaßt. Dabei sind zwei Wissensarten zu unter
scheiden:
konzeptionelles Wissen und
operatives Wissen.
operatives Wissen.
Das konzeptionelle Wissen, das relativ leicht angegeben werden kann, umfaßt im Prinzip
- - die Merkmale, die der Fachexperte zur Beurteilung der Umgebung als relevant erachtet,
- - die Art und Weise wie diese Merkmale bestimmt werden,
- - und eine Beschreibung, nach welchem/n Schema/ta der Fachexperte reagiert, d. h.
- - welche Ausgangssignale benötigt werden und
- - nach welchen Aktionarten diese aus den Aktionwerten gebildet werden.
Das operative Wissen beschreibt basierend auf dem so definierten konzeptionellen Wissen
in Form von Regeln das Verhalten des Fachexperten, also dessen Strategien wie er in
bestimmten Situationen reagiert.
Die Beschreibung des Wissens erfolgt besonders einfach mittels linguistischer, qualita
tiver Ausdrücke, bei denen kontinuierliche Merkmale mit Begriffen wie z. B. groß, mittel,
klein, stark zunehmend usw. belegt werden. Dadurch werden die Wertebereiche der
entsprechenden Merkmale klassifiziert, wodurch der Wertebereich lückenlos in aneinan
dergrenzende Intervalle eingeteilt wird. Jedes dieser Intervalle entspricht einer Instanz,
weil sich zu jedem Zeitpunkt der Wert des Merkmals in nur einem Intervall befinden kann.
Bei diskreten Merkmalen sind die einzelnen Zustände die Instanzen, die das Merkmal
annehmen kann.
Das so erarbeitete konzeptionelle Wissen wird in den Aufbau und die Ladung der
verschiedenen Baugruppen der Regelvorrichtung umgesetzt. Insbesondere der
Merkmalextraktor 10 und der Aktionumsetzer sind direkt durch das erarbeitete konzeptio
nelle Wissen bestimmt. Zu laden sind dann die Intervallgrenzen bei kontinuierlichen
Merkmalen oder die zu den Signalwerten gehörigen Instanznummern und ggf. die
Gewichte der Merkmale. Weiterhin sind die zugehörigen Aktionwerte in den
Speicher 60 zu laden.
Das Echtzeitsystem arbeitet dadurch zur Laufzeit fest vorgegeben und wertet das operative
Wissen in einer durch das konzeptionelle
Wissen vorgegebenen Form aus.
Das erarbeitete operative Wissen wird offline von der anschaulichen, dem Menschen
angepaßten Regel-Darstellung in eine Darstellung, die der
Auswertung durch das Echtzeitsystem angepaßt ist, transformiert und in dem
Speicher 60 abgelegt. Dazu wird folgende Wissenstruktur benutzt:
Operatives Wissen: Regeln
Konzeptionelles Wissen:
Bedingungsteil | |
Aktionteil | |
Merkmale | Aktionen |
Instanzen | Aktionsarten |
ggf. Bereichsgrenzen | ggf. Wertebereiche |
Das heißt, die Regeln bestehen jeweils aus einem Bedingungsteil und einem Aktionteil. Der
Bedingungsteil jeder Regel beschreibt die Situationen, in denen der Aktionteil der Regel
ausgeführt werden soll. Dazu werden logische Verknüpfungen, vorzugsweise
UND-Verknüpfungen, von Instanzen der Merkmale angegeben. Jedem Merkmal ist die Menge
der Instanzen zugeordnet, die der Fachexperte zur Beschreibung des Wissens benutzt. Bei
kontinuierlichen Merkmalen werden zusätzlich die Bereichsgrenzen der einzelnen
Intervalle spezifiziert.
Bei der Transformation der Wissensdarstellungen wird sichergestellt, daß zu jeder
Situation auch die richtigen Aktionwerte bestimmt werden. Da Suchprogramme i. allg. zu
zeitaufwendig sind und eine von den gerade zu verarbeitenden Daten abhängige Laufzeit
haben, wird eine speicherangepaßte Darstellung des Wissens in der Wissensbasis
des Echtzeitsystems gewählt. Das erlaubt erfindungsgemäß eine deterministische
Berechnung zur Bestimmung der online anzuwendenden Aktionwerte, so daß kurze, im
Prinzip konstante Reaktionszeiten zu erreichen sind.
Wie die Transformation des operativen Wissens von der dem Menschen angepaßten Form
in die dem Echtzeitsystem angepaßte Form erfolgt und wie beispielsweise die bei der
Auswertung von Regelbasen auftretenden Probleme der Konflikte und Lücken gelöst
werden können, wird mit Hilfe von Fig. 3 beschrieben. Dazu zeigt Fig. 3a eine einfache,
beispielhafte Regelbasis, die aus 5 Regeln besteht.
Diese Regelbasis stützt sich der Übersichtlichkeit halber nur auf die zwei Merkmale a und
b. Beide haben einen Wertebereich von 0 bis 10, der, wie in Fig. 3b gezeigt wird, in 4
bzw. 3 Instanzen unterteilt ist. Es soll nur eine Aktion geben. Dabei wird hier die
einfachste Aktionart, nämlich die direkte Zuweisung des Aktionwertes zum
Ausgangssignal c, angewendet.
Nachdem die Merkmale und deren Instanzen festgelegt sind, werden die Instanzen für
jedes Merkmal wie in Fig. 3b sinnvollerweise von 0 beginnend fortlaufend durchnume
riert. Mit Hilfe dieser Instanznummern lassen sich für jede Regel, wie Fig. 3c zeigt, die
Situationen angeben, in denen sie angewendet werden können. Die Gesamtheit aller
Kombinationen, die durch die Instanzen aller Merkmale ausdrückbar sind, bildet einen
Merkmalraum der Dimensionalität, die der Anzahl der Merkmale entspricht. Im vorliegen
den Fall ergibt sich ein zweidimensionaler Raum, der sich wie in Fig. 3e als Matrix dar
stellen läßt. Die Instanznummern der Merkmale dienen als Koordinaten der entsprechen
den Achsen.
Jedes Feld in diesem Raum wird bei dieser Darstellung durch die Kombination je einer
Instanznummer aller Merkmale festgelegt. Da bei Echtzeitsystemen jedes Merkmal einen
eindeutigen Wert oder Zustand hat, ist damit auch eindeutig das zugehörige Feld im
Merkmalraum spezifiziert, so daß dort die Aktion eindeutig eingetragen werden kann, die
in der jeweiligen Situation ausgeführt werden soll.
Diese eindeutige Darstellung der Aktionen läßt sich eindeutig auf die Einträge in einem
Speicher abbilden, indem die Instanznummern gewichtet werden. Die Gewichtung wird
am sinnvollsten derart vorgenommen, daß die Instanznummern der verschiedenen
Merkmale wie in nachfolgender Beziehung angegeben gewichtet werden:
Gm1 = 1;
Gmi = Gmi-1 * Ni-1
mit: Gmi: Gewicht der i-ten Instanznummer
Ni: Anzahl der Instanzen des i-ten Merkmals
Gmi = Gmi-1 * Ni-1
mit: Gmi: Gewicht der i-ten Instanznummer
Ni: Anzahl der Instanzen des i-ten Merkmals
Durch gewichtete Addition der Instanznummern ergibt sich daraus ein eindeutiger
Adressenvektor S*, der als Adresse für diese Einträge benutzt wird. Nichts anderes
wird in höheren Programmiersprachen bei der Abbildung mehrdimensionaler Arrays auf
den Speicher gemacht.
Im vorliegenden Beispiel hat Merkmal b das Gewicht von 1, Merkmal a das Gewicht von
3. Dadurch ergibt sich Fig. 3d. Man sieht hier die Zuordnung der Regeln zu den zugehö
rigen Situationen bzw. zu den Adressenvektoren S*. In den Speicher braucht nur
der umrandete Teil abgelegt werden, der die Aktionen enthält, weil in der Position sowie
in der Adresse/Adressenvektor S* die jeweilige Situation enthalten ist, in der eine
Aktion ausgeführt werden soll.
Fig. 3d verdeutlicht auch ferner das Problem der Konflikte, denn in dem Adressenvektor mit
der Situationsnummern S*=4 könnten die Aktionen mehrerer Regeln, nämlich von Regel
3 und 4 angewendet werden, weil sich deren Gültigkeitsbereiche überschneiden. Deshalb
muß mit Konfliktlösungsstrategien eine Aktion von den möglichen ausgewählt werden.
Dabei ist darauf zu achten, daß die angewendete Strategie für denjenigen, der das Wissen
eingibt bzw. modifiziert, nachvollziehbar ist, wodurch das Verhalten des Echtzeitsystems
überschaubar ist.
Es ist vorgesehen, daß diese Konfliktlösung offline bei der Transformation des Wissens
vorzugsweise nach einer festen Vorschrift erfolgt. Dazu wird, wie auch in Fig. 3d
zugrunde gelegt, bei Konflikten jeweils die Regel ausgewählt, die als erstes in der
Regelbasis steht. Es liegt somit eine Priorisierung der Regeln durch ihre Reihenfolge vor.
Durch einfaches Umordnen der Regeln in der Regelbasis wird so das Ergebnis der
Konfliktlösung geändert.
Regel 5 in Fig. 3a stellt den Sonderfall einer Regel dar. Sie verdeutlicht ferner zum einen
eine Regel mit einer Aktion, die nichts bewirken soll, und zum anderen eine einfache
Möglichkeit, Lücken im Merkmalraum abzudecken, die dadurch entstehen, daß für eine
oder mehrere Situationen keine Regel eine Aktion spezifiziert, wie das im vorliegenden
Beispiel für die Adressenvektoren S*=0, 2, 11 der Fall ist. Es wird nämlich eine
Regel, deren Aktion vorzugsweise keine Auswirkungen hat, an der Stelle in der
Regelbasis eingefügt, die die niedrigste Priorität hat.
Zusammenfassend läßt sich die Wissenserfassung wie folgt darstellen:
- - Erfassen des Wissens mit
- - Erfassen des konzeptionellen Wissens mit
- - Erfasssen der verwendeten Merkmale mit
- - Erfassen der verwendeten Instanzen für jedes Merkmal
- - Festlegen der Grenzen zwischen den Instanzen bzw. der Zustände eines Merkmals
- - Numerieren der Instanzen
- - Gewichten der Merkmale
- - Erfassen der erforderlichen Ausgangssignale mit
- - Festlegung der Aktionen und
- - Festlegung der Aktionsarten
- - Erfassen des operativen Wissens in Form von Regeln mit
- - Priorisierung der Regeln
- - ggf. spezielle Regel(n) zur Beseitigung von Lücken
- - Erfasssen der verwendeten Merkmale mit
- - Erfassen des konzeptionellen Wissens mit
Das konzeptionelle Wissen wird in eine entsprechende Speicherdarstellung zum Einbringen in
die Regelvorrichtung umgesetzt, indem
- - der Merkmalextraktor entsprechend den verwendeten Merkmalen ausgestaltet und entsprechend mit den Instanzgrenzen, -nummern und Gewichten geladen wird,
- - der Aktionumsetzer entsprechend den verwendeten Aktionen und Aktionarten ausge staltet wird und
- - im Aktionbestimmer ein Speicher hinreichender Größe zur Verfügung gestellt und mit dem transformierten Wissen geladen wird.
Es sind mehrere Erweiterungen der Regelvorrichtung vorgesehen. Bei einer wird das
Wissen auf mehrere interagierende Teilregelsysteme aufgeteilt, wodurch es für den
Fachexperten übersichtlicher ist. Für jede Teilvorrichtung sind dann die anderen
Teilvorrichtungen zusammen mit dem externen Objekt 2 ein zu betrachtendes Hilfsobjekt,
für dessen Beeinflussung die Regeln zu erstellen sind, die dadurch relativ einfach gehalten
sind.
Während das konzeptionelle Wissen relativ leicht festgelegt und in den Aufbau der
Regelvorrichtung umgesetzt werden kann, ist eine Spezifizierung und Verfeinerung des
operativen Wissens bis zu einer zufriedenstellenden Prozeßführung recht aufwendig
und/oder langwierig. Es ist deshalb bei einer weiteren Erweiterung eine Lehrvorrichtung
250, 500 an die Regelvorrichtung angeschlossen, mit deren Hilfe das operative Wissen,
oder genauer die verhaltensbeschreibende Information, d. h. die Einträge im
Speicher, halbautomatisch oder automatisch modifiziert werden.
Halbautomatische Verfahren sind dann anwendbar, wenn Vorgaben für die in bestimmten
vorliegenden Situationen zu erzielenden Ausgangssignale zu machen sind. Das ist z. B. der
Fall, wenn ein Fachexperte einen Prozeß manuell regelt, für den eine auf dem erfindungs
gemäßen Verfahren beruhende wissensbasierte Regelung aufgebaut werden soll. Dazu
wird die Regelvorrichtung in zwei Phasen betrieben, einer Lern- und einer Arbeitsphase.
In der Lernphase ist gemäß Fig. 4 der Aktionbestimmer 220 mit einem Modifizierer 250
verbunden, dessen Eingang mit dem zu lernenden Referenzsignal 245 gespeist ist. Dieses
wird beispielsweise von einem Fachexperten oder von einem Simulator oder aus einem
vorbekannten Regler geliefert.
Der Modifizierer 250 führt eine zum entsprechenden Aktionumsetzer 30 inverse Operation
aus, d. h. er bestimmt aufgrund des Referenzsignals 245 den jeweiligen Eintrag in dem
Speicher 60, der in der durch den Adressenvektor 25, 225 ausgedrückten
Situation angewendet werden muß, und trägt diesen Eintrag über die Kopplung 255 in
dem Speicher 60 ein, damit in der Arbeitsphase in der entsprechenden Situation
ein dem Referenzsignal entsprechendes Ausgangssignal abgegeben wird. Dies gilt
entsprechend für mehrere Ausgangssignale.
Weil im Verlauf der Lernphase i. allg. Situationen mehrfach durchlaufen werden, werden
vorteilhaft die Einträge, die in solchen mehrfach durchlaufenen Situationen schon ermit
telt wurden, berücksichtigt. Ein Verfahren, dies zu tun, ist die Mittelung mit dem in einer
solchen Situation schon in dem Speicher vorliegenden Aktionwert 225. Bei einer
einfachen (arithmetischen) Mittelwertbildung hat der aus dem Referenzsignal 245 neu
berechnete Eintrag das gleiche Gewicht wie alle vorhergehenden Einträge zusammen.
Noch vorteilhafter ist es, alle jemals für eine Situation ermittelten Einträge gleich zu
gewichten. Dazu wird jedem Aktionwert, der das Ausgangssignal bestimmt, ein weiterer
Aktionwert zugeordnet gespeichert, der vorzugsweise mit 0 initialisiert wird. Beide
Aktionwerte werden zum Modifizierer geführt, der den vorhandenen ersten Aktionwert
mit dem weiteren Aktionwert gewichtet, dazu den neu ermittelten Aktionwert addiert und
die so entstandene Summe durch den weiteren Aktionwert plus 1 dividiert. Das Ergebnis
dieser Operation wird als neuer erster Aktionwert und der weitere Aktionwert um 1 erhöht
im Speicher abgelegt. Auf diese Weise wird erreicht, daß abgesehen von
Rundungsfehlern alle jemals ermittelten Aktionwerte dynamisch zur Laufzeit gleich
gewichtet werden und den endgültigen Aktionwert für die jeweilige Situation bilden.
Eine andere Art der Lehrvorrichtung besteht in einer Implementierung einer Lernstrategie
in einer zweiten Echtzeitvorrichtung 500, die mit der Regelvorrichtung gekoppelt ist, wie
Fig. 5 zeigt. Diese Lehrvorrichtung ist entsprechend der Regelvorrichtung aufgebaut und
ihr Verhalten ist nach dem gleichen Verfahren festgelegt. Sie gibt allerdings keine
Ausgangssignale an die Umgebung ab, sondern interagiert mit dem Aktionbestimmer der
untergeordneten Regelvorrichtung 400 und modifiziert die in dessen Speicher
abgelegte Einträge entsprechend ihres jeweiligen Aktionwertes 525.
Weil die Lehrvorrichtung 500 der Regelvorrichtung 400 funktional übergeordnet ist, wird
erstere der Klarheit wegen Hypersystem, und die Regelvorrichtung 400 Basissystem
genannt werden. Beide Vorrichtungen 400 und 500 verfügen über einen
Merkmalextraktor 410, 510, die Merkmalwerte 415, 515 bestimmt und an die
Aktionbestimmer 420, 520 weiterleitet. I. allg. ist es sinnvoll, Merkmalwerte, die beide
Vorrichtungen 400, 500 benötigen, nur einmal zu extrahieren und gemeinsam zu benutzen
(nicht eingezeichnet). Beide Aktionbestimmer 420, 520 erzeugen auf die oben beschrie
bene Art Aktionwerte 425, 525, die jeweils zu Aktionumsetzern 430, 530 geleitet werden.
Während der Aktionumsetzer 430 die Ausgangssignale 6, 7 erzeugt, ist der
Aktionumsetzer 530 über einen Datenaustausch 540 mit dem Aktionbestimmer 420 des
Basissystems 400 verbunden. Über den Datenaustausch 540 werden die
Adressenvektoren zum Aktionumsetzer 530 des Hyperystems übertragen, und eine feste
Anzahl aufeinander folgend angewendeter Situationsnummern werden dort gespeichert.
Der Aktionumsetzer 530 greift ferner über den Datenaustausch adressierend auf den
Speicher des Basissystems zu, um dort Einträge zu lesen oder zu schreiben.
Die Aktionwerte 525 dienen dabei als Offset, um den der Aktionumsetzer 530 einen
Eintrag aus dem Speicher des Aktionbestimmers 420 verschiebt. Vorzugsweise
wird nicht der Eintrag modifiziert, auf den der aktuelle Adressenvektor des
Basissystems 400, sondern auf den ein Adressenvektor der weiter, meistens um eine
konstante Zeitspanne, zurückliegt, zeigt. Diese Zeitspanne ist an dem Zeitverhalten des
Prozesses, der geregelt wird, orientiert. Insofern ist im Hypersystem Wissen über den zu
regelnden Prozeß, durch das in bestimmten Situationen Veränderungen am im
Basissystem abgelegten Wissen erfolgen, so daß sich bei geeigneter Gestaltung des
Wissens im Hypersystem eine gezielte Beeinflussung des Basissystems ergibt. Dies wird vorteilhaft
zur Adaption des Verhaltens der Regelvorrichtung an die Charakteristik der zu regelnden
Strecke ausgenutzt.
Prinzipiell ist es möglich, das Wissen, das in dem Basissystem und im Hypersystem
eingebracht ist, auch in einer einzigen Vorrichtung umzusetzen, zumal i. allg. teilweise
gleiche Merkmale sowohl vom Basis- als auch vom Hypersystem benutzt werden. Aus
praktischen Gründen ist jedoch eine getrennte Umsetzung vorzuziehen, weil dadurch
das Wissen übersichtlicher wird und leichter umzusetzen ist. Es wird außerdem ein
größerer Speicher erforderlich, weil er die Aktionwerte beider Systeme zur
Verfügung stellen muß. Der Speicher wird i. allg. größer als die beiden
Speicher bei der getrennten Verwendung von Basis- und Hypersystem, weil
meistens nicht alle Merkmale von beiden Systemen gemeinsam benutzt und gleich in
Instanzen eingeteilt werden.
Da die Regelvorrichtung aus simplen, universellen Baugruppen aufgebaut ist, ist eine
Realisierung sowohl in Hardware als auch in Software von jedem Fachmann einfach zu
bewerkstelligen.
Eine äußere Betrachtung des Objektes oder Prozesses 2 reicht aus, um Aussagen, z. B. für
Diagnosezwecke, aus dem Prozeßgeschehen zu gewinnen oder die Regelung vorzuneh
men; eine detaillierte Kenntnis der inneren Vorgänge ist entbehrlich. Dies ermöglicht
insbesondere auch eine effektive Regelung solcher Prozesse, für die ein geeignetes
mathematisches Modell, das die Grundlage aller konventionellen Regelungsverfahren ist,
nicht oder nur mit zu großen Aufwand oder Einschränkungen zu finden ist.
Darüberhinaus zeigt die Regelvorrichtung ein Regelverhalten, das sehr robust gegenüber
Schwankungen oder Drifts des geregelten Prozesses ist.
Als weitere Anwendungsbeispiele, für die die Vorrichtung vorteilhaft eingesetzt wird,
seien hier Mehrgrößenregelungen, die Implementierung höherer Regelstrategien, d. h.
übergeordnete Regler, und die Meßwertaufbereitung genannt, was im folgenden an
zwei grundlegend verschiedenen Beispielen, der wissensbasierten Regelung eines simu
lierten Bioreaktors und der eines realen Drehstrom-Motors, demonstriert wird. Dabei ist
die Wahl auf einen Bioreaktor gefallen, weil Bioreaktoren besonders in der
Umwelttechnik an Bedeutung gewinnen, aber deren Regelung noch vorwiegend im
Forschungsstadium ist, und weil sie komplexe, stark nichtlineare Prozesse sind, für die
mit konventionellen Methoden nur mit großem Aufwand spezialisierte analytische Regler
entworfen werden können. Hierbei ist der Geschwindigkeitsaspekt ohne Bedeutung,
denn die Sensorik läßt nur Abtastraten im Minuten-Bereich zu. Interessant ist vielmehr,
daß sich dadurch von Abtastung zu Abtastung signifikante Reaktionen bzw. Änderungen
des Prozeßzustandes ergeben können, die zusammen mit einer Vielzahl möglicher
Störungen hohe Anforderungen an ein regelndes System stellen.
Bei der Regelung von Drehstrom-Motoren ist die Situation nahezu entgegengesetzt. So
existieren schon Regelungen für Drehstrom-Motoren mit guten Ergebnissen. Weil diese
modellbasiert arbeiten, fallen aufwendige Berechnungen, wie z. B.
Koordinatentransformationen, an. Desweiteren stellt der Drehstrom-Motor ebenfalls einen
nichtlinearen Prozeß dar, der bei der angewendeten Abtastrate von 5 kHz im Gegensatz zu
einem Bioreaktor nur sehr geringfügige Reaktionen von Abtastung zu Abtastung zeigt. An
diesem Beispiel soll vorwiegend die Geschwindigkeit des vorgestellten Verfahrens und
die Selbstlernfähigkeit gezeigt werden. Das Ziel dabei ist die Ausnutzung der
Selbstmodifikation, so daß sich die Regelung nach einer einfachen Parametrisierung auf
einen anderen Motor ohne menschliches Zutun selbst einstellt. Für diese Untersuchungen
ist ein Drehstrom-Motor besonders geeignet, weil er eine schnelle, mechanisch wie elek
trisch robuste Strecke ist, die mit geringem apparativen Aufwand betrieben werden kann.
Die Wissensansammlung und -validierung erfolgt i. allg. zyklisch am Prozeß selbst oder,
wenn dies wie im Beispiel des Drehstrom-Motors nicht möglich ist, vorweg bis zu einer
ausreichenden Güte an einer Simulation, um z. B. den Zeitmaßstab an die sensorischen
und motorischen Fähigkeiten des Menschen anzupassen. Unter Echtzeitbedingungen wird
dann das Wissen beispielsweise wie beim Drehstrom-Motor durch Hypersysteme
angepaßt.
Ein Bioreaktor ist, wie in Fig. 6 schematisch dargestellt, ein Behälter 970, in dem sich
Bakterien in einer Nährlösung befinden. Seine Aufgabe besteht in diesem Fall darin, in
der Nährlösung enthaltene Substanzen durch biochemische Prozesse in andere
Substanzen zu überführen, um beispielsweise die Schadstoffkonzentration in
Flüssigkeiten zu reduzieren. Dazu verfügt er über einen Zufluß, bei dem über ein Zufluß-Stell
glied 975 die Durchflußmenge der Nährlösung durch den Bioreaktor 970 eingestellt
wird, und einen Abfluß 982, durch den die zugeführte Flüssigkeit mit einer geänderten
Konzentration des Schadstoffes abfließt. Aus dieser abfließenden Flüssigkeit 983 wird
von einem Konzentrationsmeßgerät 980 wiederholt eine Probe entnommen und
beispielsweise einem Flüssigkeitschromatographen zugeführt, der das
Konzentrationsmeßsignal 985 an die Regelvorrichtung 960 leitet. Dieser bestimmt
aufgrund des Konzentrationsmeßsignals 985 und des vorgegebenen
Sollkonzentrationssignals 990 die Zufluß-Stellgröße 976 und leitet diese zum Zufluß-Stell
glied 975. Damit sich im Bioreaktor 970 eine möglichst homogene Verteilung von
Bakterien und Nährlösung einstellt, wird die Flüssigkeit durch ein Rührwerk 972
umgerührt.
Die zu regelnde Größe (Regelgröße, Meßwert) ist also die Schadstoffkonzentration in der
abfließenden Flüssigkeit 983. Das Sollkonzentrationssignal 990 und das
Konzentrationsmeßsignal 985 beziehen sich beide auf diese Schadstoffkonzentration.
Deren Differenz entspricht der Regeldifferenz. Als Zufluß-Stellgröße 976, die durch die
Regelvorrichtung 960 beeinflußt werden kann, dient die Zuflußmenge der Nährlösung
(konstante Eingangskonzentration vorausgesetzt).
Normalerweise hält die Regelung bei Bioreaktoren die Regelgröße auf einem konstanten
Wert (Festwertregelung), wobei die Regelung Schwankungen des Wachstumsverhaltens
der Bakterien und andere Störungen ausgleicht. Im vorliegenden Beispiel eines simulier
ten Bioreaktors ist darüber hinaus das Führungsverhalten untersucht worden, um die
Leistungsfähigkeit der Regelvorrichtung zu zeigen. D.h. die (nicht realistische) Aufgabe
des Reglers besteht darin, simulativ die Zuflußmenge so zu variieren, daß die
Schadstoffkonzentration im Ausgang möglichst schnell dem (nicht vorhersehbaren)
Sollkonzentrationssignal 990 folgt.
Die Regelvorrichtung 960 besteht, wie Fig. 6 weiter zeigt, beispielsweise aus einem
Aktionumsetzer 966, der von einer Einheit 964, die wie oben beschrieben aus dem
Sollkonzentrationssignal 990 und dem Konzentrationsmeßsignal 985 Merkmale extrahiert
und Aktionwerte bestimmt und zum Aktionumsetzer 966 leitet. Die Aktionwerte bestehen
in diesem Beispiel aus den drei Einzelsignalen 805, 806, 807. Weiterhin sind das
Sollkonzentrationssignal 990 und das Konzentrationsmeßsignal 985 mit einem
Zwischenwertbestimmer 962 verbunden, der daraus die Zwischensignale 802 und 803
bestimmt und zum Aktionumsetzer 966 leitet. Das Zwischensignal 802 entsteht in diesem
Fall durch Differenzbildung von Sollkonzentrationssignal und Konzentrationsmeßsignal,
Zwischensignal 803 durch Differenzbildung von aktuellem Konzentrationsmeßsignal und
dem um eine Abtastung zurückliegenden Konzentrationsmeßsignal. Die Zahlenwerte
beider Zwischensignale 802, 803 werden durch Multiplikation mit einer Konstanten in
den Zahlenbereich des Zufluß-Stellgrößensignals 976 umnormiert.
Die nachfolgende Tabelle zeigt, welche Merkmale bei einer beispielhaften Realisierung der
Regelvorrichtung 960 für die Regelung eines Bioreaktors 970 in der Einheit 964 extrahiert
werden und wie sie in Instanzen unterteilt und wie diese numeriert sind. Weiterhin zeigt
die Tabelle die den Merkmalen zugeordneten Kurzbezeichnungen, die bei der beispielhaf
ten Regelbasis benutzt werden, und die Grenzwerte der Intervalle der Instanzen der
einzelnen Merkmale. Die Namen sind frei gewählt.
Außerdem zeigt diese Tabelle analog die abstrakte Beschreibung der Aktionen, die der
Aktionumsetzer 966 ausführt, mit dem Wertebereich, den jedes Einzelsignal annehmen
kann. Auch hier sind die Namen und Kurzbezeichner frei wählbar.
Fig. 7 zeigt das Blockschaltbild eines entsprechenden Aktionumsetzers. Dieser ist vergli
chen mit Aktionumsetzern anderer Regelvorrichtungen relativ komplex. Er besteht aus
einem ersten Multiplizierer 810, der das Zwischensignal 802 mit dem Einzelsignal 805
des Aktionwertes, das sich auf die Regelabweichung bezieht, multipliziert und einem
weiteren Multiplizierer 816, der das Zwischensignal 803 mit dem Einzelsignal 806 des
Aktionwertes, das sich auf die Istwertänderung bezieht, multipliziert. Beide
Multiplikationsergebnisse 811, 815 werden einem Summierer 820 zugeführt, der das
Multiplikationsergebnis 811 und das ausgegebene Stellgrößensignal 976 addiert und von
dieser Summe das Multiplikationsergebnisse 812 subtrahiert.
Das Summensignal 821 wird sowohl einem Mittelwertbildner 830 als auch einem Selektor
840 zugeführt. Der weitere Eingang des Mittelwertbildners 830 ist mit dem
Stellgrößensignal 976 verbunden. Der durch den Mittelwertbildner 830 gebildete
Mittelwert wird als Mittelwertsignal 831 ebenfalls auf einen Eingang des Selektors 840
geleitet. An dessen Selektoreingang ist der dritte Einzelwert 807 des Aktionwertes
geführt. Der Einzelwert 807 kann nur die beiden Zahlenwerte 0 oder 1 annehmen. Dabei
ist dem Eingang des Selektors 840, der durch eine 1 ausgewählt wird, das
Mittelwertsignal 831 zugeordnet und dem anderen Eingang das Summensignal 821. Der
Selektorausgang 841 wird über ein Register 850 dem Stellgrößensignal 976 zugeführt.
Die nachfolgende Tabelle zeigt eine beispielhafte Regelbasis für die Regelvorrichtung des
Bioreaktors, die sich auf oben genannte Merkmale etc. bezieht. Sie benutzt die angegebe
nen Kurzbezeichnungen. Ein X bedeutet dabei, daß das jeweilige Merkmal keinen Einfluß
auf die Ausführung der Regel hat.
Die Fig. 8, 9, 10 zeigen jeweils das Führungsverhalten an der Simulation eines konti
nuierlich betriebenen Bioreaktors, der nach einem Modell von Monod mit einer Abtastzeit
von 8,1 Minuten, die eine Meßtotzeit von 2 Minuten beinhaltet, arbeitet.
Das unter idealen Bedingungen erzielte Führungsverhalten der Regelvorrichtung 960 zeigt
Fig. 9. Auffallend ist das gegenüber der menschlichen Regelung, dessen
Führungsverhalten beispielhaft in Fig. 8 gezeigt ist, verbesserte Regelverhalten, wie
schnelleres Einregeln, geringere Schwankungen der Ausgangskonzentration. Dies ist
darauf zurückzuführen, daß die wissensbasierte Regelung keinen
Verhaltensschwankungen unterworfen ist wie der Mensch, beispielsweise nachlassende
Konzentration oder der Einfluß von Streß. Die Regelvorrichtung 960 kann also immer mit
konstanter Leistung regeln.
An einem realen Bioreaktor treten natürlich Störungen auf. Das sind zum einen
Meßwertrauschen, Schwankungen der Meßtotzeit und Meßwertaussetzer. Zum anderen
können die Bakterien durch teilweise nicht erfaßbare Umwelt- und Nährstoffeinflüsse ihr
Verhalten verändern, was sich in zeitvariantem Wachstumsverhalten ausdrücken läßt. Fig.
10 zeigt das Ergebnis, das unter diesen Bedingungen erreicht wurde. An der Veränderung
des Stellgrößensignals 976 ist die Robustheit des wissensbasierten Reglers gegenüber
Wachstumschwankungen des Bioreaktors zu erkennen. Um die Auswirkungen von
Meßwertaussetzern, die in Fig. 10 beispielsweise nach ca. 1 und 4,5 Stunden auftreten,
auf die Regelung zu unterdrücken, wurde eine zweite neuartige Teilvorrichtung der
Regelvorrichtung vorgeschaltet, die Meßwertaussetzer durch Extraktion von Merkmalen
erkennt, darauf abgestimmte Aktionen bestimmt, die in einem Aktionumsetzer in ein
Signal umsetzt, das als modifiziertes Konzentrationsmeßsignal zur Regelvorrichtung
geführt ist. Der Vergleich zu Reglern, die ohne diese vorgeschaltete Teilvorrichtung arbei
ten, zeigt den Nutzen Aufbereitung des Meßwertes.
Bei dem zweiten untersuchten Beispiel, der Drehzahlregelung eines Drehstrom-Motors
900, wird die Drehzahl als zu regelnde Größe eine Drehspannung variabler Frequenz und
Amplitude (Stellgrößen) entsprechend den Erfordernissen beeinflußt. Dazu besteht, wie
Fig. 11 zeigt, die Regelvorrichtung 910, aus vier Teilvorrichtungen, nämlich ein
Basissystem 912 für den Stellwert Amplitude 921 und ein übergeordnetes Hypersystem
913, ein Basissystem 915 für den Stellwert Frequenz 922 und ein übergeordnetes
Hypersystem 916. Die Speicher der Basissysteme 913, 915, über die die eigentliche
Regelung erfolgt, werden durch Selbstmodifikation anhand des Verhaltens des
angeschlossenen Drehstrom-Motors 900 unter Vorgabe der Hypersysteme über je einen
Datenaustausch 914, 917 verändert.
Die vier Teilvorrichtungen leiten aus dem Solldrehzahlsignal 950, aus dem Drehzahlsignal
935, das von einer Drehzahlerfassung 930, die beispielsweise ein Impulsgeber ist,
erzeugt wird, und aus dem Stromsignal 945, das von einer Stromerfassung 940 gebildet
ist, Merkmale ab, bestimmen daraufhin Aktionwerte und setzen diese entweder in die
Stellgrößen Amplitude 921 und Frequenz 922 oder in oben beschriebener Weise in
Modifikationen von Einträgen der Speicher unterlagerter Basissysteme 912, 915
um. Die Stellgrößen Amplitude 921 und Frequenz 922 werden einem
Drehspannungserzeuger 920 zugeführt, der beispielsweise ein Pulswechselrichter mit
nachgeschalteten Leistungsschaltern ist. Er erzeugt eine Drehspannung 325, die an den
Drehstrom-Motor 900 geführt ist.
Ursprünglich enthalten die Speicher der Basissysteme 912, 915 durch wenige,
grobe Regeln vorgegebene Aktionwerte, die zum einen den Drehstrom-Motor 900 bei
sehr großen Regelabweichungen mit konstantem Schlupf in Richtung des
Solldrehzahlsignals führen und zum anderen Überlast verhindern sollen. Letztere
Aktionwerte sind mit einem zugeordneten Hilfseintrag versehen, der in einem bestimmten
Zustand Änderungen des jeweiligen Aktionwertes seitens des zugehörigen Hypersystems
verhindert. Alle anderen Aktionwerte können dynamisch zur Laufzeit verändert werden.
Für praktische Untersuchungen wurden alle vier Teilvorrichtungen 912, 913, 915, 916
auf einem Mikroprozessor-System (80386, 20 MHz) implementiert. Obwohl neben
administrativen Aufgaben zu jeder Abtastung alle Merkmalwerte neu berechnet, vier
Teilvorrichtungen ausgewertet und deren Aktionwerte umgesetzt werden, wurde eine
Abtastrate von 5 kHz erreicht.
Die Fig. 12 und 13 verdeutlichen exemplarisch Ergebnisse, die an der wissensbasier
ten Regelung eines 380 W-Drehstrom-Motors gewonnen wurden. Dazu zeigt Fig. 12 das
durch manuelle Eingabe in den Basissystemen implementierte Grundwissen, von dem
ausgehend die Hypersysteme die Amplituden- und Frequenz-Basissysteme modifizierten.
Das Resultat nach einer Trainingszeit von zwei Minuten, in denen zu jeder Sekunde ein
anderer zufälliger Sollwert vorgegeben wurde, ist Fig. 13 zu sehen. Es zeigt deutlich, wie
der Einsatz des Hypersystems sowohl die bleibende Regelabweichung beseitigt als auch die
Schwingneigung (ohne menschliches Zutun) reduziert. Der Effekt zeigt sich auch bei
anderen Drehzahlbereichen und Sollwertsprüngen.
Es ist leicht einzusehen, daß die an diesem Beispiel gezeigte Anordnung aus Basis- und
Hypersystem bei geeigneter Gestaltung des Wissens sowohl zur Adaption als auch zumin
dest für einige Klassen von Prozessen als selbsteinstellende Regelung einzusetzen ist. Für
eine selbsteinstellende Regelung ist für eine ganze Klasse von Prozessen nur einmalig ein
größerer Aufwand für die Erstellung des in den Hypersystemen abgelegten Wissens, ggf.
auch einfaches Grundwissen für die Basissysteme erforderlich. Für die jeweiligen
Prozesse einer Klasse sind dann keine oder nur einfache Anpassungen, z. B. bei einem
Drehstrom-Motor die Berücksichtigung der Polpaarzahl oder des Nennstroms, nötig und
leicht durchführbar, weil sie im konzeptionellen Wissen realisiert werden. Das operative
Wissen braucht hingegen nicht geändert zu werden.
Bei obigen Ausführungen wurde nicht näher auf die entsprechende Erfassung von
Eingangssignalen und die Umsetzung von Ausgangssignalen in für das Objekt oder den
Prozeß 2 geeignete Signale eingegangen, weil dies für die Vielzahl der möglichen Objekte
oder Prozesse 2 nicht erschöpfend möglich ist, aber von einem Fachmann jeweils leicht
vorzunehmen ist.
Weiterhin ist offensichtlich, daß die beschriebene Vorrichtung nicht nur für Regelungen
eingesetzt werden kann, sondern auch für andere Signalverarbeitungsaufgaben, wie es
am Beispiel der Regelung des Bioreaktors in einer gestörten Umgebung anhand der
Aufbereitung der Meßwerte zur Beseitigung von Meßwertaussetzern erläutert wurde. Auf
die Vielzahl weiterer Anwendungsgebiete kann aus Platzgründen nicht eingegangen werden. Es
bereitet aber einem Fachmann keine Schwierigkeiten zu erkennen, wo die beschriebene
Vorrichtung eingesetzbar ist.
Claims (26)
1. Vorrichtung, insbesondere Regelvorrichtung, zur Signalverarbeitung von
Eingangssignalen (5) von einem Objekt oder Prozeß (2), die Ausgangssignale (6, 7) an
das Objekt oder den Prozeß (2) ausgibt, wobei die Ausgangssignale (6, 7) von den
Eingangssignalen (5) derart abhängig sind, daß in einem Merkmalextraktor (10)
anwendungsspezifische numerische Merkmalwerte (15) jeweils aus einem oder mehreren
Eingangssignalen (5) gebildet werden, wobei aus den Merkmalwerten (15) ein
Adressenvektor gebildet wird zur Adressierung von vorab in einem Speicher (60)
eingetragenen Aktionswerten (25), die in einem Aktionumsetzer (30) in die
Ausgangssignale (6, 7) umgesetzt werden, und die Aktionswerte gemäß Wenn-Dann-
Regeln derart aus den Merkmalwerten (15) bestimmt sind, daß logische Verknüpfungen
von Wenn-Teilen, die den Merkmalwerten (15) zugeordnet sind, Dann-Teilen
entsprechen, welche die Aktionswerte ergeben,
dadurch gekennzeichnet, daß
die Merkmalwerte (15) einem Klassifikator (40) zugeführt werden, der den Wertebereich
der Merkmalwerte (15) derart in aneinandergrenzende Intervalle klassifiziert, deren
Intervallgrenzen im Klassifikator (40) abgebildet sind, daß die Anzahl der Intervalle
geringer ist als die Anzahl der verschiedenen möglichen Merkmalwerte (15), wobei den
Intervallen jeweils eine eindeutige Instanznummer (45) zugeordnet ist, und daß aus
diesen Instanznummern (45) zu bestimmten Zeitpunkten in einem Indexbildner (50) der
Adressenvektor gebildet wird.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß als ein weiteres
Eingangssignal (37) des Merkmalextraktors (10) ein Ausgangssignal des
Aktionsumsetzers (30) zurückgekoppelt ist.
3. Vorrichtung nach einem der Ansprüche 1 bis 2, dadurch gekennzeichnet, daß solchen
Merkmalwerten (15), die nur einzelne diskrete Zustände ohne inhärente
Ordnungsrelation annehmen, für jeden möglichen Zustand eine eindeutige
Instanznummer (45) zugeordnet ist, die als ein Teilvektor zur Bildung des
Adressenvektors (55) hinzugenommen wird.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die den
Merkmalwerten (15) zugeordneten Instanznummern (45) jeweils aufeinander folgende
Ganzzahlen sind und der Indexbildner (50) die in den Klassifikatoren (40) gebildeten
Instanznummern (45) gewichtet aufsummiert und deren Summe der Adressenvektor (55)
ist.
5. Vorrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die
Bestimmung der dem Merkmalwert (15) zugeordnete Instanznummer (15) im
Klassifikator (40) durch einen wiederholten Vergleich des jeweiligen Merkmalwertes
(15) mit den Grenzen der Intervalle oder dadurch erfolgt, daß der Klassifikator (40) eine
Klassifikationstabelle enthält, für die der quantisierte oder diskrete Merkmalwert (15) als
Index benutzt wird und die dem jeweiligen Wert zugeordnete Instanznummer (45) als
Eintrag enthält.
6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Klassifikationstabelle
gewichtete Instanznummern (45) enthält und der Indexbildner (50) eine einfache
Addition aller Werte der zugeführten Instanznummern (45) vornimmt.
7. Vorrichtung nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet, daß die
Instanznummern (45) mit Gewichten multipliziert werden, die Zweier-Potenzen
entsprechen und daß deren Addition durch ein Verketten von Bit-Signalen zu einer
Dualzahl erfolgt, die dann der Adressenvektor (55) ist.
8. Vorrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß durch
einen Adressenvektor (55) je nach Ausführung der Vorrichtung jeweils ein oder mehrere
Aktionswerte (25) im Speicher (60) selektiert werden, die entweder separat im
Aktionumsetzer (30) verarbeitet werden oder als Parameter einer Anweisungssequenz
ein oder mehrere Ausgangssignale (6, 7) bestimmen.
9. Vorrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß der
Aktionumsetzer (30) den jeweiligen Aktionwert (25)
- - unverändert als eines der Ausgangssignale (6, 7) durchreicht und/oder
- - zu einem bisherigen Ausgangssignal (6, 7) addiert und die gebildete Summe danach ausgibt und/oder
- - mit einem der Eingangssignale (5) oder einer daraus abgeleiteten Größe multipliziert und das Produkt ausgibt und/oder
- - mit einem der Eingangssignale (5) oder einer daraus abgeleiteten Größe multipliziert, das Produkt zu einem bisherigen Ausgangssignal (6, 7) addiert und die Summe ausgibt.
10. Vorrichtung nach Anspruch 9, dadurch gekennzeichnet, daß ein Teilaktionwert (25)
als Selektor für eines der verschiedenen erzeugten Signale dient und diese dadurch als
das selektierte Ausgangssignal (6, 7) ausgibt.
11. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß die Aktionwerte (25) in einem zur Laufzeit modifizierbaren Speicher (60) abgelegt
sind.
12. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, daß sie in einer zweiten,
lernenden Betriebsarten betreibbar ist, wobei ein Modifizierer (250) Aktionwerte aus
einem externen Referenzsignal (245) bestimmt und in den Speicher (60) einträgt, wozu
der Modifizierer (250) eine zu der Operation des jeweiligen Aktionumsetzers (30)
inverse Operation ausführt.
13. Vorrichtung nach Anspruch 12, dadurch gekennzeichnet, daß der Modifizierer (250)
einen neu ermittelten Aktionwert (25) mit einem jeweils vorherigen Aktionwert oder
mehreren in Folge mittelt.
14. Vorrichtung nach Anspruch 13, dadurch gekennzeichnet, daß für jeden der
modifizierbaren Aktionwerte (25) des Speichers (60) ein Hilfseintrag existiert, der jeweils
angibt, wie oft der zugeordnete Eintrag modifiziert wurde, und eine dynamisch
gewichtete Mittelwertbildung des jeweiligen Aktionwertes (25) derart vorgenommen
wird, daß der alte Aktionwert (25) mit dem zugeordneten Hilfseintrag gewichtet wird.
15. Vorrichtung, die eine Vorrichtung nach einem der vorhergehenden Ansprüche als Basisvorrichtung enthält, dadurch gekennzeichnet,
daß eine Lehrvorrichtung (500) mit gleichartigem Aufbau wie die Basisvorrichtung (400)
in dem Speicher der Basisvorrichtung (400) abhängig von den Eingangssignalen (5)
modifiziert.
16. Vorrichtung nach Anspruch 15, dadurch gekennzeichnet, daß die Lehrvorrichtung
(500) Adressenvektoren (55) der Basisvorrichtung in einem Historienspeicher ablegt und
einen solchen Aktionwert (25) der Basisvorrichtung (400) modifiziert, der durch einen
eine vorzugsweise konstante Zeitspanne zurückliegenden Adressenvektor ausgewählt
wird.
17. Vorrichtung nach einem der Ansprüche 15 oder 16, dadurch gekennzeichnet, daß die
Basisvorrichtung (400) in einer zweiten Phase ohne das Lehrsystem (500) betrieben
wird.
18. Vorrichtung nach einem der Ansprüche 11 bis 17, dadurch gekennzeichnet, daß
jedem Aktionwert (25) ein Hilfseintrag zugeordnet ist, der anzeigt, ob der zugeordnete
Aktionwert (25) durch einen Modifizierer (250) oder durch eine Lehrvorrichtung (500)
veränderbar ist oder nicht.
19. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß die Festlegung der Aktionwerte (25) durch Ausdrücke in WENN-DANN-Form
erfolgt, wobei im WENN-Teil logische Verknüpfungen der Instanzen, in die die
Merkmalwerte (15) unterteilt sind, angegeben werden, für die der im DANN-Teil
angegebene Eintrag anzuwenden ist und daß eine Umwandlung der genannten
Ausdrücke durch ein Eintragen der DANN-Teile an den Stellen des Speichers (60)
erfolgt, die durch den WENN-Teil bestimmt sind, wobei in den Fällen, in denen mehrere
verschiedene Einträge an die gleiche Stelle eingetragen werden könnten, eine bestimmte
Auswahl vorgesehen ist.
20. Vorrichtung nach Anspruch 18, dadurch gekennzeichnet, daß der Eintrag ausgewählt
wird, der die wenigsten Irrelevanzanzeiger im WENN-Teil enthält und/oder daß nach
einer Reihenfolgenpriorität ausgewählt wird.
21. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß ein Merkmalwert (15)
- - durch direktes Weiterleiten eines numerischen oder diskreten Eingangssignals (5) oder eines numerischen oder diskreten Rückkoppelsignals (37) und/oder
- - durch Differenzieren eines numerischen Eingangssignals (5) oder eines numerischen Rückkoppelsignals (37) und/oder
- - durch Differenzbildung zweier numerischer Signale (5, 37) und/oder
- - durch Vergleich der Zustände zweier diskreter Signale (5/37) und/oder
- -durch Zählen des Auftretens eines Zustandes eines diskreten Eingangssignals (5) oder eines diskreten Rückkoppelsignals (37) und/oder
- - durch Zählen des Auftretens eines bestimmten Signalzustandes oder -wechsels eines numerischen Eingangssignals (5) oder eines numerischen Rückkoppelsignals (37) und/oder
- - durch den Stand eines Zählers, der durch bestimmte Ereignisse zurückgesetzt und bei jeder Abtastung hochgezählt wird,
bestimmt ist.
22. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß mindestens ein Ausgangssignal (7, 976) über ein Zufluß-Stellglied (975) die Menge
einer in einem Behälter (970) einfließenden Flüssigkeit variiert, die in diesem Behälter
durch chemische, biologische oder physikalische Vorgänge zumindest teilweise in eine
andere Form überführt wird, wobei aus der abfließenden Flüssigkeit entnommene
Meßwertsignale (985) auf den Eingang der Vorrichtung geführt sind, die daraus
beispielsweise eine Abweichung vom Sollsignal (990) und eine Änderung der
Meßwertsignale (985) als Merkmalwerte an den Aktionbestimmer weiterleitet, dessen
ausgegebene Aktionwerte auf das Ausgangssignal (7, 976) einwirken.
23. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß mindestens ein Ausgangssignal (7, 921, 922) über ein Stellglied (920) auf die
Leistung, Drehzahl, Drehrichtung und/oder Drehmoment eines Antriebssystems (900)
einwirkt, von dem durch eine Meßwerterfassung (930, 940) Meßsignale erfaßt und zur
Vorrichtung (1, 910) geleitet sind, die Rückschlüsse auf die Leistung, Drehzahl,
Drehrichtung, Drehmoment und/oder Belastung des Antriebsystems (900) ermöglichen,
und daß die Vorrichtung (1, 910) daraus Merkmale extrahiert, die einen Vergleich der
jeweiligen betreffenden Größen mit einer oder mehreren Sollgrößen (950) und/oder einer
zulässigen Belastung vornehmen, von denen abhängig auf das Ausgangssignal (7, 921,
922) Einfluß genommen wird.
24. Vorrichtung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß die Vorrichtung (1, 910) aus mindestens zwei Teilsystemen (912, 915) besteht, die
jeweils mindestens eine Stellgröße (921, 922) bestimmen und zum Ausgang der
Vorrichtung (910) leiten.
25. Vorrichtung nach einem der Ansprüche 20 oder 22, dadurch gekennzeichnet, daß die
Stellgrößen (921, 922) die Amplitude und Frequenz einer Wechselspannung bestimmen.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19914117790 DE4117790C2 (de) | 1991-06-02 | 1991-06-02 | Vorrichtung zur Signalverarbeitung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19914117790 DE4117790C2 (de) | 1991-06-02 | 1991-06-02 | Vorrichtung zur Signalverarbeitung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4117790A1 DE4117790A1 (de) | 1992-12-03 |
DE4117790C2 true DE4117790C2 (de) | 1994-11-10 |
Family
ID=6432834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19914117790 Expired - Fee Related DE4117790C2 (de) | 1991-06-02 | 1991-06-02 | Vorrichtung zur Signalverarbeitung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4117790C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10318169B4 (de) * | 2003-04-17 | 2009-07-09 | Sew-Eurodrive Gmbh & Co. Kg | Dezentrale Einheit, Anlage und Verfahren zum Betrieb |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0256602A (ja) * | 1988-08-23 | 1990-02-26 | Maikomu Kk | ファジー推論装置 |
-
1991
- 1991-06-02 DE DE19914117790 patent/DE4117790C2/de not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10318169B4 (de) * | 2003-04-17 | 2009-07-09 | Sew-Eurodrive Gmbh & Co. Kg | Dezentrale Einheit, Anlage und Verfahren zum Betrieb |
Also Published As
Publication number | Publication date |
---|---|
DE4117790A1 (de) | 1992-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10362369B3 (de) | Integrierte Modell-Vorhersagesteuerung und -optimierung innerhalb eines Prozesssteuerungssystems | |
DE102004026979B4 (de) | Vielfacheingabe- /Vielfachausgabe-Steuer-/Regelblöcke mit nichtlinearen Vorhersagefähigkeiten | |
DE102007036247B4 (de) | Prozesssteuerungs- und optimierungstechnik unter Verwendung immunologischer Konzepte | |
DE10012258B4 (de) | Selbst-Abstimmung in einer verteilten Prozeß-Regelumgebung | |
DE69823049T2 (de) | Modellfreie adaptive prozesssteuerung | |
DE60111238T2 (de) | System und verfahren zur adaptiven model-basierten prädiktiven, auf ein scharfse nicht-lineares prozessmodel basierte steuerung | |
DE102018003266B4 (de) | Controller und maschinelle lernvorrichtung | |
DE10341573A1 (de) | Integrierte modellbasierte prädikative Steuerung und Optimierung innerhalb eines Prozesssteuerungssystems | |
DE112011101738T5 (de) | Mehrstufiges Prozessmodellierungsverfahren | |
DE10341574A1 (de) | Konfiguration und Betrachtungsanzeige für einen integrierten prädiktiven Modellsteuerungs- und Optimierungsfunktionsblock | |
DE3811086A1 (de) | Pid-reglersystem | |
DE10341762B4 (de) | Handhabung der Realisierbarkeit von Beschränkungen und Grenzen in einem Optimierer für Prozesssteuerungssysteme | |
DE69911986T2 (de) | Einrichtung und verfahren zum ausgleichen und verteilen von steueralgorithmenlasten | |
DE10392599T5 (de) | Verfahren zur Steuerung eines Zielsystems | |
WO2020187591A1 (de) | Verfahren und vorrichtung zum ansteuern eines roboters | |
DE102004025876B4 (de) | Vorrichtung und Verfahren zur Stapeleigenschaftsschätzung | |
DE69118981T2 (de) | Einrichtung zur "Fuzzy"-Folgerung | |
DE4117790C2 (de) | Vorrichtung zur Signalverarbeitung | |
DE68928609T2 (de) | Fuzzy-Gerät | |
AT522639B1 (de) | Vorrichtung und Verfahren zum Visualisieren oder Beurteilen eines Prozesszustandes | |
EP0689688B1 (de) | Fuzzy-standard-automatisierungssystem für industrielle anlagen | |
DE4439505A1 (de) | Verfahren zum Entwurf eines Fuzzy-Reglers | |
EP3650964B1 (de) | Verfahren zum steuern oder regeln eines technischen systems | |
DE19643884A1 (de) | Verfahren und Anordnung zur Optimierung der Prozeßführung von Produktionsvorgängen | |
DE3418501A1 (de) | Vorrichtung zur praediktiven zeitdiskreten ein-aus-regelung zeitkontinuierlicher prozesse mit binaer wirkenden stellelementen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: BROCKMANN, WERNER, DR.-ING., 33098 PADERBORN, DE |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: BROCKMANN, WERNER, DR.-ING., 23562 LUEBECK, DE |
|
8339 | Ceased/non-payment of the annual fee |