DE10133670A1 - Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem - Google Patents

Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem

Info

Publication number
DE10133670A1
DE10133670A1 DE2001133670 DE10133670A DE10133670A1 DE 10133670 A1 DE10133670 A1 DE 10133670A1 DE 2001133670 DE2001133670 DE 2001133670 DE 10133670 A DE10133670 A DE 10133670A DE 10133670 A1 DE10133670 A1 DE 10133670A1
Authority
DE
Germany
Prior art keywords
block
equation
node
model
parity
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.)
Withdrawn
Application number
DE2001133670
Other languages
English (en)
Inventor
Bernard Baeker
Tim Harr
Harald Jochen Renninger
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Daimler AG
Original Assignee
DaimlerChrysler AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by DaimlerChrysler AG filed Critical DaimlerChrysler AG
Priority to DE2001133670 priority Critical patent/DE10133670A1/de
Publication of DE10133670A1 publication Critical patent/DE10133670A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0243Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
    • G05B23/0254Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model based on a quantitative model, e.g. mathematical relationships between inputs and outputs; functions: observer, Kalman filter, residual calculation, Neural Networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem. Die Wissensbasis umfaßt Paritätsgleichungen, in denen ausschließlich meßbare Größen auftreten. Diese werden erfindungsgemäß aus einem Modell desjenigen technischen Systems erzeugt, das durch das Diagnosesystem untersucht wird. Das Modell umfaßt Blockschaltbilder für Teilsysteme und Funktionsbeschreibungen für Komponente des technischen Systems. Bei der automatischen Erzeugung wird ein gerichteter Graph für die elementaren Blöcke des Modells erzeugt, und durch schrittweises Umformen werden die Paritätsgleichungen erzeugt. Das Verfahren kann auch zur Schätzung von Parametern eines Modells des technischen Systems verwendet werden.

Description

  • Die Erfindung betrifft ein Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem. Die Wissensbasis umfaßt Paritätsgleichungen. Diese werden erfindungsgemäß aus einem Modell desjenigen technischen Systems erzeugt, das durch das Diagnosesystem untersucht wird. Das Modell umfaßt Blockschaltbilder für Teilsysteme und Funktionsbeschreibungen für Komponente des technischen Systems.
  • Ein Diagnosesystem bestimmt idealerweise den Typ, die Größe und den Ort eines Fehlers am technischen System und den Zeitpunkt seiner Erkennung. Der Fachmann kennt die Begriffe Fehler, Fehlererkennung, Fehlerdiagnose und Fehlerbehandlung aus VDI/VDE 3342, 3542, DIN 25424 und DIN 40042.
  • Aus Rolf Isermann, Modellgestützte Überwachung und Fehlerdiagnose technischer Systeme, Teil 1, atp 5/96, S. 9-20, sowie aus DE 197 17 716 C2 sind Verfahren bekannt, um Fehler dadurch zu finden, daß an ein reales technisches System sowie an ein mathematisches Modell des technischen Systems Werte für Eingangsgrößen angelegt werden und die gemessenen realen Werte der Ausgangsgröße mit den Werten verglichen werden, die das Modell an seinen Ausgangsgrößen vorhersagt. Von der Differenz wird durch logische Schlußfolgerungen auf Fehler geschlossen, wofür verschiedene automatisch ablaufende Verfahren bekannt sind.
  • Bekanntlich ist die Aufstellung, Validierung und bei Bedarf Anpassung eines mathematischen Modells für ein technisches System mit hohem Zeit- und Personalaufwand verbunden. Daher werden Verfahren gewünscht, um die Wissensbasis eines Diagnosesystems für ein technisches System so weit wie möglich aus Modellen zu erzeugen, die für den Entwurf, die Entwicklung und/oder die Simulation des technischen Systems und seiner Subsysteme und Komponenten ohnehin aufgestellt und validiert werden. Dieser Weg ist wesentlich kostengünstiger als der, eigens für ein Diagnosesystem ein neues Modell aufzustellen.
  • Oft stellen die Entwickler eines technischen Systems Blockschaltbilder des technischen Systems, seiner Subsysteme und Komponenten auf. Diese Blockschaltbilder bestehen aus Blöcken mit Eingängen, Ausgängen und Verbindungen zwischen den Blöcken. Blockschaltbilder lassen sich nicht direkt für eine Diagnose verwenden, insbesondere weil Blockschaltbilder Zyklen sowie vielen Informationen, die nicht für eine Diagnose benötigt werden, enthalten können. Die erste Eigenschaft führt dazu, daß ein Diagnoseverfahren nicht terminiert, die zweite dazu, daß die Diagnose sehr lange dauert.
  • Gewünscht wird daher ein Verfahren, um aus Blockschaltbildern als dem Modell des technischen Systems eine Wissensbasis für ein Diagnosesystem zu erzeugen. Anders ausgedrückt: Die Blockschaltbilder sind in eine Form zu bringen, in der ein Diagnosesystem sie verarbeiten kann.
  • Aus Rolf Isermann, Modellgestützte Überwachung und Fehlerdiagnose technischer Systeme, Teil 1, atp 5/96, S. 9-20, sowie aus Janos Gertler, Fault Detection and Diagnosis in Engineering Systems, Marcel Dekker Publ., 1998, sind Modelle mit Paritätsgleichungen sowie Verfahren zur Fehlererkennung, Fehlerdiagnose und zur Parameterschätzung mit Paritätsgleichungen bekannt. Die Voraussetzungen, Vorzüge, Grenzen und Ausgestaltungen verschiedener Verfahren werden vorgestellt und diskutiert. Jedoch wird nicht offenbart, wie die Paritätsgleichungen aufgestellt werden. Insbesondere wird nicht offenbart, wie sich Blockschaltbilder zur Erzeugung von Paritätsgleichungen verwenden lassen.
  • Aus M. Tagina, J. P. Cassar, G. Dauphin-Tanguy, M. Staroswiecki, Bond Graph Models for Direct Generation of Formal Fault Detection Systems, J. of Systems Analysis, Modelling and Simulation, Vol. 23, 1996, pp. 1-17, sind zwei Verfahren bekannt, um Paritätsgleichungen automatisch aus einem Modell des technischen Systems zu erzeugen. Jedoch hat das Modell bei M. Tagina et al. die Form eines Bond-Graphen und nicht die von Blockschaltbildern. In einem Bond-Graphen wird jede Größe entweder als Flußgröße (flow) oder als Potentialgröße (effort) aufgefaßt. Physikalische Gesetze wie die Kirchhoff'sche Regel werden durch junctions ausgedrückt, und zwar wird eine Regel für Flußgrößen durch eine 1-junction und eine für Potentiale durch 0-junction ausgedrückt. Die algebraische Summe der Flußgrößen und Potentiale in einer junction ist gleich 0. Jede Komponente des modellierten Systems repräsentiert eine Verbindung zwischen Flußgröße und Potential.
  • Jedoch werden in der Praxis Blockschaltbilder häufig, Bond- Graphen aber nur selten verwendet. Dies hat insbesondere folgende Gründe:
    • - Bond-Graphen sind oft wenig anschaulich und intuitiv.
    • - Durch Bond-Graphen lassen sich nur Fluß- oder Potentialgrößen modellieren und zwischen ihnen nur die Zusammenhänge, die sich durch 1-junctions zwischen Flußgrößen oder 0-junctions zwischen Potentialgrößen ausdrücken lassen.
    • - Man kann in Bond-Graphen Kennfelder, Sprungfunktionen und nichtlineare Differentialgleichungen nicht oder nur äußerst umständlich integrieren. Diese kommen in der Praxis aber häufiger vor.
  • Darüber hinaus beziehen sich die in Tagina et al. gezeigten Beispiele nur auf den linearen Fall. Zwar werden die Verfahren nicht auf den linearen Fall eingeschränkt, jedoch wird ein Vorgehen für den nichtlinearen Fall nicht beschrieben.
  • Kein Ansatz ist bekannt, um die Verfahren von Tagina et al. auf ein Modell mit Blockschaltbildern anzuwenden. Ein Ansatz wäre, zuerst aus einem Modell mit Blockschaltbildern Bond-Graphen zu erzeugen und aus den Blockschaltbildern dann mit einem Verfahren nach Tagina et al. Paritätsgleichungen. Zwar ist aus Karnopp, Margiolis, Rosenberg: System Dynamics - A Unified Approach, Wiley & Sons, 1990, ein Verfahren bekannt, wie man aus einem Bond-Graphen automatisch Blockschaltbilder erzeugen kann. Jedoch ist es prinzipiell nicht möglich, umgekehrt aus Blockschaltbildern einen Bond-Graphen zu erzeugen. Ein Grund dafür ist, daß Bond-Graphen mehr Informationen enthalten, insbesondere über die physikalische Topologie und den Energiefluß.
  • Aus M. C. Zhou, C. H. Wang, X. Y. Zhao, Automating Mason's Rule and Its Application to Analysis of Stochastic Petri Nets, IEEE Transact. On Control Systems Technology, Vol. 3 No. 2, 1995, pp. 238-244 ist die Mason's Rule bekannt. Die Mason's Rule ist ein Vorgehen, um aus Blockdiagramm Systemgleichungen der Form

    x' = A x + B u und y = C x + D u

    automatisch zu generieren. Diese lassen sich automatisch so umformen, daß durch die Umformung Paritätsgleichungen entstehen. Jedoch vermag die Mason's Rule nur lineare Systemgleichungen zu liefern und läßt sich daher nur für linear modellierte technische Systeme anwenden. Außerdem wird nur offenbart, wie die Mason's Rule für ein einziges Blockschaltbild, also ohne Blockschaltbilder für Blöcke, angewendet wird.
  • Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zu schaffen, das automatisch aus einem Modell eines technischen Systems, das Blockschaltbilder mit linearen und nichtlinearen Blöcken umfaßt, eine Wissensbasis für ein Diagnosesystem erzeugt. Hierbei ist mindestens ein Block eines Blockschaltbildes seinerseits durch ein Blockschaltbild beschreiben und mindestens ein Block durch eine nichtlineare Funktion beschrieben. Weiterhin ist eine Einrichtung zur Durchführung des Verfahrens zu schaffen.
  • Die Aufgabe wird durch ein Verfahren nach Anspruch 1 sowie durch eine Vorrichtung nach Anspruch 26 sowie einem Computerprogrammprodukt nach Anspruch 27 oder Anspruch 28 gelöst.
  • Eine Idee des Verfahrens ist es, ein Modell des technischen Systems zu verwenden, das Blockschaltbilder mit Blöcken umfaßt. Durch das Verfahren werden aus dem Modell Paritätsgleichungen erzeugt. Das Modell ist ein hierarchisches, d. h. das mindestens ein Block seinerseits durch ein Blockschaltbild beschrieben ist. Weiterhin umfaßt mindestens ein Blockschaltbild elementare Blöcke. Jeder elementare Block mit mindestens einer Eingangsgröße ist durch eine Funktion beschrieben, wobei mindestens ein elementarer Block durch eine nichtlineare Funktion beschrieben ist. Durch das Verfahren werden Gleichungen zwischen Größen des Modells erzeugt. Hierfür werden Funktionen von Blöcken sowie die Verbindungen zwischen Blöcken, die durch Blockschaltbilder beschrieben werden, verwendet. Mindestens eine dieser Gleichungen wird durch Umformschritte zu einer Paritätsgleichung umgeformt. Die dergestalt erzeugten Paritätsgleichungen werden als Teil der Wissensbasis verwendet.
  • Weil das erfindungsgemäße Verfahren eine Wissensbasis aus einer Art von Modellen erzeugt, die vielfach in der industriellen Praxis verwendet werden, kann das Verfahren häufig eingesetzt werden, ohne daß ein bereits vorhandenes Modell des technischen Systems erweitert oder verändert werden muß. Außerdem erfordert die Erzeugung der Wissensbasis keinen manuellen Eingriff, sondern läuft automatisch ab. Daher lassen sich Modelle unmittelbar wiederverwenden, die ohnehin bereits für einen anderen Zweck aufgestellt wurden, beispielsweise für den Systementwurf, den Reglerentwurf oder eine Simulation.
  • Typischerweise wird ein Modell für das technische System im Verlaufe des Produktentstehungsprozesses mehrfach abgeändert und erweitert. Gerade für diese Situation ist es von Vorteil, daß das Modell ohne Anpassung wiederverwendet werden kann, um erfindungsgemäß die Wissensbasis des Diagnosesystems zu erzeugen. Durch das Verfahren wird zeitnah eine zum Modell kompatible Wissensbasis erzeugt. Müßte man hingegen das Modell zuvor anpassen, um es für die Wissensbasis des Diagnosesystems zu nutzen, so ist dieser Anpassungsaufwand bei jeder Änderung des Modells durchzuführen. Die Gefahr ist groß, daß bei der Anpassung Fehler begangen werden oder daß - z. B. aus Zeitgründen oder durch einen Irrtum - ein veraltetes Modell für die Wissensbasis des Diagnosesystems verwendet wird.
  • Das Verfahren läßt sich auch auf Modelle mit hierarchischen Blockschaltbildern anwenden, also mit Blockschaltbildern, in denen einzelne oder alle Blöcke ihrerseits durch Blockschaltbilder beschrieben werden. Weit verbreitete kommerzielle Werkzeuge, vorzugsweise für die Simulation, ermöglichen es, derartige Modelle zu erzeugen. Um komplexe technische Systeme zu modellieren, erzeugt man bevorzugt hierarchische Blockschaltbilder - ein einziges Blockschaltbild wäre viel zu unübersichtlich und nicht handhabbar. Außerdem können mehrere Bearbeiter dann ein technisches System mit Blockschaltbildern modellieren, wenn das Modell hierarchische Blockschaltbilder umfaßt, weil dann einzelne Bearbeiter bestimmte Blockschaltbilder unabhängig von anderen Bearbeitern erzeugen und verändern können.
  • Für die industrielle Praxis ist es oft vorteilhaft, einzelne Komponenten des technischen Systems und damit einzelne Blöcke dieses Modells mit Hilfe von Kennfeldern zu beschreiben. Die Beschreibung mittels Kennfeldern ist oft der einzige übrigbleibende Weg, wenn eine analytische Beschreibung z. B. durch Differentialgleichungen nicht bekannt ist und überhaupt nicht oder nur mit unverhältnismäßig großem Aufwand aufgestellt werden kann. Oft sind außerdem Kennfelder bereits aus Versuchen z. B. mit realen Komponenten vorhanden, und dann ist es vorteilhaft, diese Kennfelder direkt wiederverwenden zu können. Im Gegensatz zum Stand der Technik vermag das erfindungsgemäße Verfahren, bei der Erzeugung von Paritätsgleichungen Blöcke mit Kennfeldern sowie nichtlinear beschriebene Blöcke zu verarbeiten.
  • Immer dann, wenn die Wissensbasis bei einem Einsatz des Diagnosesystems angewertet wird, werden Paritätsgleichungen ausgewertet. In diesen Paritätsgleichungen treten die Funktionen von Blöcken des Modells sowie Größen, die während der Diagnose ermittelbar sind, auf. Insbesondere wird das Modell selbst beim Einsatz des Diagnosesystems nicht verwendet, sondern ausschließlich zur Erzeugung der Wissensbasis. Darüber hinaus ist nicht erforderlich, Funktionen von Blöcken zur Laufzeit des Diagnosesystems umzuformen. Damit spart das Verfahren Verarbeitungszeit und Rechenkapazität ein. Dieser Aspekt ist gerade für eine vollautomatische Diagnose an Bord eines Fahrzeugs von besonderem Vorteil.
  • Das Verfahren generiert systematisch und schnell Paritätsgleichungen. Ausgestaltungen stellen sicher, daß alle möglichen Paritätsgleichungen erzeugt werden, die sich überhaupt aus dem Modell des technischen Systems gewinnen lassen.
  • Die Wissensbasis des Diagnosesystems kann ohne Veränderung sowohl für eine reine Überwachung und Fehlererkennung als auch für eine Fehlersuche verwendet werden. Damit eröffnen sich vielfältige Anwendungen ohne Aufwand für Anpassungen.
  • Vorzugsweise überwacht oder diagnostiziert das Diagnosesystem das technische System vollautomatisch. Bei der Überwachung wird festgestellt, ob ein Fehler vorliegt, bei der Diagnose wird ein Fehler isoliert. Das Diagnosesystem verwendet hierfür Meßwerte mindestens eines Sensors (Anspruch 2).
  • Das technische System ist bevorzugt eine mobile Vorrichtung, insbesondere ein Verkehrs- oder Transportmittel. Das Diagnosesystem und der Sensor befinden sich an Bord der mobilen Vorrichtung (Anspruch 3). Oder aber nur der Sensor befindet sich an Bord der mobilen Vorrichtung, das Diagnosesystem aber außerhalb der mobilen Vorrichtung, beispielsweise in einer Fertigungsanlage oder Werkstätte. An Bord der mobilen Vorrichtung befindet sich weiterhin ein Datenspeicher, in dem ein vom Sensor erfaßter Meßwert abgespeichert wird. Während einer Diagnose wird dieser Meßwert aus dem Datenspeicher ausgelesen (Anspruch 4).
  • Bevorzugt tritt in jeder Paritätsgleichung eine zur Laufzeit des Diagnosesystems ermittelbare Ausgangsgröße eines elementaren Blocks auf, also eine Größe des technischen Systems, deren Werte im laufenden Betrieb des technischen Systems oder während einer Suche nach Fehlern am technischen System ermittelt werden (Anspruch 5). Vorzugsweise sind alle Größen, die in Paritätsgleichungen auftreten, zur Laufzeit ermittelbar. Ansonsten sind die Werte nicht ermittelbarer Größen aus ermittelten Werten, z. B. Meßwerten, zu bestimmen.
  • Während der Ausführung des erfindungsgemäßen Verfahrens werden Gleichungen erzeugt, nämlich einerseits Gleichungen zwischen Größen des Modells, andererseits aus diesen Gleichungen durch Umformschritte weitere Gleichungen. Diese Umformschritte werden bevorzugt unter Verwendung eines symbolischen Gleichungslösers durchgeführt (Anspruch 6). Beispiele für derartige Gleichungslöser sind "Mathematica"
    (http:/ / www.wolfram.com/products/mathematica/ und
    http:/ / hallogram.com/mathematica/mathematica, beide abgefragt am 30. 5. 2001) und "Maple 6" (http:/ / www.maplesoft.com/products/Maple6/maple6info.html, abgefragt am 30. 5. 2001).
  • Bevorzugt tritt in mindestens einer dieser Gleichungen mindestens ein Platzhalter für die Funktion eines Blocks auf (Anspruch 7). Der Platzhalter und die Funktion werden abgespeichert. Diese Ausgestaltung ist insbesondere dann von Vorteil, wenn verschiedene Blöcke die gleiche Funktion haben. Speicherplatz wird eingespart, wenn diese Funktion nur einmal abgespeichert zu werden braucht.
  • Vorzugsweise werden in einer Bibliothek Typen von Blöcken abgespeichert. Diese Bibliothek umfaßt insbesondere die Funktionen der Block-Typen. Eine Funktion eines Blocks umfaßt einen Verweis auf einen Block-Typ in der Bibliothek. Diese Bibliothek läßt sich für verschiedene technische Systeme und damit für verschiedene Modelle wiederverwenden (Anspruch 9).
  • In der industriellen Praxis ist es oft vorteilhaft oder der einzig verbleibende Weg, einen Block durch ein Kennfeld und nicht durch eine analytische Funktion zu beschreiben. Auch eine solche Funktion wird durch einen Platzhalter in einer Paritätsgleichung beschrieben, und das Kennfeld und der Platzhalter werden abgespeichert (Anspruch 8).
  • In manchen Paritätsgleichungen treten Stammfunktionen und damit Integrale über der Zeit von Größen des Modells des technischen Systems auf. Um eine solche Paritätsgleichung zur Laufzeit des Diagnosesystems auszuwerten, muß numerisch integriert werden, was zeitaufwendig ist und einen Anfangswert erfordert. Um numerische Integration zu vermeiden, wird bei der Erzeugung der Wissensbasis eine Paritätsgleichung, in der ein Integral über der Zeit auftritt, differenziert. Dadurch wird das Integral beseitigt (Anspruch 10).
  • Für die Diagnose des technischen Systems ist es von Vorteil, wenn die Wissensbasis für jede Ausgangsgröße AG eine Paritätsgleichung umfaßt, in der diese Ausgangsgröße nicht auftritt. Dadurch lassen sich insbesondere Fehler, die AG beeinflussen, von anderen Fehlern unterscheiden. Um eine erste Paritätsgleichung ohne AG zu erzeugen, wird eine zweite Paritätsgleichung, in der AG auftritt, nach AG aufgelöst. In einer dritten Paritätsgleichung, in der AG ebenfalls auftritt, wird jedes Auftreten von AG durch die nach AG umgeformte zweite Paritätsgleichung ersetzt. Dadurch entsteht eine Paritätsgleichung ohne AG (Anspruch 11).
  • Die Weiterbildung der Erfindung nach Anspruch 12 sieht vor, daß jeder elementarer Block eines Blockschaltbildes höchstens eine Ausgangsgröße hat. Hat ein elementarer Block genau eine Ausgangsgröße und mindestens einer Eingangsgröße, so ist für ihn eine Funktion festgelegt, die die Ausgangsgröße des Blocks als Funktion der Eingangsgröße beschreibt. Diese Funktion ist Funktion kein Zustandsautomat.
  • Folgende Verfahrensschritte werden durchgeführt, um Paritätsgleichungen zu erzeugen, die als Teil der Wissensbasis verwendet werden:
    • - Ein gerichteter Graph wird erzeugt. Die Knoten dieses Graphen sind die elementaren Blöcke der Blockschaltbilder des Modells, die Kanten die Verbindungen zwischen den elementaren Blöcken (Schritt a). Vorzugsweise wird im gerichteten Graphen dann und nur dann eine Kante von einem ersten Block zu einem zweiten Block erzeugt, wenn die Ausgangsgröße des ersten Blocks eine Eingangsgröße des zweiten Blocks ist.
    • - Eine bestimmte Menge von Knoten des gerichteten Graphen wird als Startknoten ausgewählt. Hierbei hat jeder Startknoten eine Ausgangsgröße und mindestens eine Eingangsgröße (Schritt b).
    • - Für jeden Startknoten werden die folgenden Schritte d) bis f) durchgeführt.
    • - Eine initiale Gleichung wird erzeugt. Diese initiale Gleichung stellt die Ausgangsgröße des Startknotens als Funktion seiner Eingangsgrößen dar (Schritt d).
    • - Aus der initialen Gleichung wird eine finale Gleichung erzeugt, wobei Umformschritte ausgeführt werden. In der finalen Gleichung treten ausschließlich Ausgangsgrößen von solchen Knoten auf, die ein Abbruchkriterium erfüllen (Schritt e).
    • - Eine Paritätsgleichung wird dadurch erzeugt, daß die finale Gleichung dergestalt umgeformt wird, daß eine Seite der Gleichung gleich Null ist (Schritt f).
  • Als Startknoten werden nur Knoten ausgewählt, die mindestens eine Eingangsgröße haben. Bevorzugt werden Startknoten mit mehreren Eingangsgrößen ausgewählt, z. B. Summierer (Anspruch 13). Diese Ausgestaltung verringert die Anzahl der erforderlichen Umformschritte.
  • Vorzugsweise hat die in Schritt d) erzeugte initiale Gleichung die Form O = F(O_1, . . ., O_r), wobei O die Ausgangsgröße und O_1, . . ., O_r die Eingangsgrößen des Startknotens sind. Weiterhin hat bevorzugt jede durch einen Umformschritt in Schritt e) erzeugte Gleichung die Form O = F(O_1, . . ., O_r), wobei O die Ausgangsgröße eines Knotens des gerichteten Graphen ist.
  • Gemäß Anspruch 14 erfüllt ein Knoten mindestens dann das Abbruchkriterium, wenn der Wert seiner Ausgangsgröße während einer Diagnose ermittelbar ist. Vorzugsweise erfüllt er außerdem dann das Abbruchkriterium, wenn seine Ausgangsgröße bereits in einem vorhergehenden Umformschritt des Schrittes e) ersetzt wurde.
  • Gemäß Anspruch 15 wird Ausgangsgröße des Knotens entweder durch einen Umformschritt des Typs (1) oder des Typs (2) ersetzt.
    • - Ein Umformschritt des Typs (1) besteht daraus, daß die durch den vorangegangenen Umformschritt erzeugte Gleichung nach der Ausgangsgröße des Knotens aufgelöst und die aufgelöste Gleichung in die Funktion des Nachfolgers des Knotens eingesetzt wird.
    • - Ein Umformschritt des Typs (2) besteht daraus, daß in der durch den vorangegangenen Umformschritt erzeugten Gleichung die Ausgangsgröße des Knotens durch die Funktion des Knotens ersetzt wird.
  • Vorzugsweise wird ein Umformschritt des Typs (1) wie folgt ausgeführt: Die durch den vorigen Umformschritt erzeugte Gleichung O(1) = F(1)(O_1(1), . . ., O_r(1)) wird durch die Gleichung
    O(2) = F(2)(O_1(2), . . ., O_j(2), F(1)(O_1(1), . . ., O_r(1)),
    O_l(2), . . ., O_s(2) ersetzt, wobei O(2) die Ausgangsgröße und
    O_1(2), . . ., O_j(2), O(1), O_l(2), . . ., O_s(2) die Eingangsgrößen des Nachfolgers sind und
    O(2) = F(2)(O_1(2), . . ., O_j(2), O(1),(O_l(2), . . ., O_s(2)) die Funktion des Nachfolgers ist.
  • Ein Umformschritt des Typs (2) wird vorzugsweise wie folgt ausgeführt: Die durch den vorigen Umformschritt erzeugte Gleichung
    (O(1) = F(1)(O_1(1), . . ., O_j(1), O_k(2), O_l(1), . . ., O_r(1) wird durch die Gleichung
    (O(1) = F(1)(O_1(1), . . ., O_j(1), F(2), O_1(2), . . ., O_r(2), O_l(1), . . ., O_r(1)
    ersetzt, wobei O_k(2) die Ausgangsgröße und
    O_1(2), . . ., O_r(2) die Eingangsgrößen des Knotens sind und
    O_k(2) = F(2)(O_1(2), . . ., O_r(2) die Funktion des Knotens ist.
  • Vorzugsweise wird in einer initialen Gleichung und bei Umformschritten ein als Summierer wirkender Block durch die Funktion O = V_1.O_1 + . . . + V_n.O_n beschrieben. Hierbei sind O die Ausgangsgröße, O_1, . . ., O_n die Eingangsgrößen des Summierers und V_1, . . ., V_n die n Vorzeichen sind, mit denen der Summierer seine n Eingangsgrößen versieht.
  • Der gerichtete Graph, der in Schritt a) erzeugt wird, wird vorzugsweise unter Verwendung einer Adjazenz-Matrix abgespeichert (Anspruch 16). Eine Adjazenz-Matrix ist eine quadratische Matrix,
    • - die genauso viele Spalten und Zeilen wie der Graph Knoten hat
    • - und deren Elemente in der Zeile i und der Spalte j gleich 1 ist, wenn eine Kante vom Knoten i zum Knoten j verläuft, und ansonsten gleich 0 ist.
  • Abweichend von diesem bekannten Schema einer Adjazenz-Matrix wird der Graph bevorzugt dergestalt abgespeichert, daß das Element in der Zeile i und der Spalte i dann
    • - gleich einer ersten Codierung ist, wenn der Block i keinen Vorgänger besitzt,
    • - gleich einer zweiten Codierung ist, wenn der Block i keinen Nachfolger besitzt,
    • - und ansonsten gleich 0 ist.
  • Vorzugsweise wird der gerichtete Graph, der in Schritt a) erzeugt wird, unter Verwendung einer Adjazenz-Matrix abgespeichert (Anspruch 16). Bei der Speicherung einer Matrix als sparse matrix werden nur die Indizes und Werte derjenigen Matrixelemente abgespeichert werden, die ungleich Null sind. Dies spart Speicherplatz ein (Anspruch 19).
  • Der gerichtete Graph, der in Schritt a) erzeugt wird, wird bevorzugt dadurch erzeugt, daß eine Gesamt-Adjazenz-Matrix generiert wird (Anspruch 17). Dies geschieht durch die folgenden Verfahrensschritte:
    • - Für jeden Block in jedem Blockschaltbild des Modells wird eine eindeutige Kennung erzeugt. "Eindeutig" bedeutet, daß diese Kennung für keinen anderen Block irgendeines Blockschaltbildes verwendet wird (Schritt A).
    • - Ein Modell-Hierarchie-Baum wird erzeugt. Die Blätter dieses Baums sind die elementaren Blöcke der Blockschaltbilder des Modells. Der Baum hat also genauso viele Blätter wie das Modell elementare Blöcke. Die anderen Knoten, also die Knoten mit Vorgänger, sind Blöcke, die ihrerseits durch Blockschaltbilder beschrieben sind. In dem Baum ist ein erster Knoten dann Nachfolger eines zweiten Knotens, wenn der zweite Knoten ein Block ist, der durch ein Blockschaltbild beschrieben ist, in dem der erste Knoten vorkommt (Schritt B).
    • - Für jedes Blockschaltbild des Modells wird eine Teil- Adjazenz-Matrix erzeugt. Außerdem wird eine Tabelle für das Blockschaltbild erzeugt. Diese Tabelle verbindet die Zeilennummern der Teil-Adjazenz-Matrix mit den Kennungen der Blöcke im Blockschaltbild (Schritt C).
    • - Eine Gesamt-Adjazenz-Matrix wird erzeugt, indem für jeden Knoten des Modell-Hierarchie-Baums, der mindestens einen Vorgänger hat, die Teil-Adjazenz-Matrix für den Knoten in die Teil-Adjazenz-Matrix des Vorgängers eingesetzt wird (Schritt D).
    • - Noch fehlende Einträge in der Gesamt-Adjazenz-Matrix werden durch Analyse des Blockschaltbildes erzeugt. Solche fehlenden Einträge resultieren insbesondere aus bislang nicht berücksichtigten Verbindungen zwischen elementaren Blöcken (Schritt E).
  • Vorzugsweise beginne die Erzeugung der Gesamt-Adjazenz-Matrix in den Blättern des Modell-Hierarchie-Baums. Die Erzeugung endet, wenn die Wurzel des Modell-Hierarchie-Baums erreicht ist (Anspruch 18).
  • Mit Hilfe des Verfahrens läßt sich feststellen, welche Fehler des technischen Systems durch das Diagnosesystem erkennbar und welche isolierbar sind. Ein Fehler ist erkennbar, wenn bei Auftreten dieses Fehlers mindestens eine Paritätsgleichung ungleich Null wird. Ein Fehler ist isolierbar, wenn dieser Fehler durch Auswertung aller erzeugten Paritätsgleichungen von allen anderen am technischen System möglichen Fehler unterschieden wird (Anspruch 20).
  • Die Ausgestaltung nach Anspruch 21 offenbart einen Weg, wie festgestellt werden kann, ob ein Fehler gemäß Anspruch 20 erkennbar und/oder isolierbar ist. Ein möglicher Fehler am technischen System wird in das Modell des technischen Systems aufgenommen, d. h. das Modell wird so abgeändert, daß es das technische System mit diesem Fehler beschreibt. In das dergestalt abgeänderte Modell und in die Paritätsgleichungen werden dieselben Werte für Eingangsgrößen eingesetzt. Die Werte für Ausgangsgrößen, die das Modell vorhersagt, werden in die Paritätsgleichungen eingesetzt.
  • Die Ausgestaltung nach Anspruch 20 oder Anspruch 21 läßt sich verwenden, um die Plazierung von Sensoren in dem technischen System zu bestimmen. Unter "Sensorplazierung" wird die Aufgabe verstanden, während des Entwurfs des technischen Systems Sensoren im technischen System so vorzusehen, daß zureichend viele Fehler mit möglichst wenigen Sensoren erkannt und/oder isoliert werden können. Gemäß des Verwendungsanspruchs 23 wird probeweise festgelegt, welche Blöcke je eine Ausgangsgröße haben, deren Wert während der Diagnose durch einen der Sensoren ermittelt werden kann. Die Wissensbasis wird durch ein Verfahren nach Anspruch 20 oder Anspruch 21 erzeugt, und ermittelt wird, welche Fehler erkennbar und welche isolierbar sind.
  • Eine Ausgestaltung des Verfahren läßt sich anwenden, wenn das Modell des technischen Systems unbekannte Parameter aufweist. Gemäß dem erfinderischen Verfahren werden Parametergleichungen erzeugt. Für die Ausgangsgrößen, die in den Paritätsgleichungen auftreten, werden Meßwerte bestimmt und in die Paritätsgleichungen eingesetzt. Durch eine Ausgleichsrechnung werden Näherungswerte für die unbekannten Parameter ermittelt (Anspruch 22). Die Meßwerte werden beispielsweise durch Messungen am realen technischen System gewonnen. Vorzugsweise wird die Ausgleichsrechnung dergestalt durchgeführt, daß die Näherungswerte die Summe der Quadrate der Paritätsgleichungen minimieren.
  • Das Verfahren nach Anspruch 22 läßt sich für die Schätzung von Parametern des Modells des technischen Systems (Anspruch 24) oder für den Entwurf eines Reglers für das technische System. (Anspruch 25).
  • Im folgenden wird ein Ausführungsbeispiel des erfindungsgemäßen Verfahrens anhand der beiliegenden Zeichnungen näher beschrieben. Dabei zeigen
  • Fig. 1 den Aufbau eines Diagnosesystems mit einer Wissensbasis;
  • Fig. 2 den prinzipiellen Ablauf einer Ausgestaltung des Verfahrens;
  • Fig. 3 ein idealisiertes Modell eines Ankerstromkreises eines Gleichstrommotors;
  • Fig. 4 ein idealisiertes Modell der Momentenbilanz in einem Gleichstrommotor;
  • Fig. 5 ein Blockschaltbild für einen Gleichstrommotor;
  • Fig. 6 die obere Hierarchieebene bei einer Aufteilung des Modells von Fig. 5 auf zwei Hierarchieebenen;
  • Fig. 7 das Blockschaltbild für die Elektrik in der unteren Hierarchieebene bei einer Aufteilung des Modells von Fig. 5 auf zwei Hierarchieebenen;
  • Fig. 8 das Blockschaltbild für die Mechanik in der unteren Hierarchieebene bei einer Aufteilung des Modells von Fig. 5 auf zwei Hierarchieebenen;
  • Fig. 9 ein Ausschnitt aus einer Beschreibung der Syntax eines Modells mit Blockschaltbildern;
  • Fig. 10 das Modell von Fig. 6 mit Kennungen für die Blöcke;
  • Fig. 11 das Modell von Fig. 7 mit Kennungen für die Blöcke;
  • Fig. 12 das Modell von Fig. 8 mit Kennungen für die Blöcke;
  • Fig. 13 einen Modell-Hierarchie-Baum für das Modell der Fig. 10 bis Fig. 12;
  • Fig. 14. Ein Beispiel für eine hierarchieübergreifende Verbindung
  • Fig. 15 einen gerichteter Graph für das Modell von Fig. 10 bis Fig. 12;
  • Fig. 16 eine Veranschaulichung für eine Breitensuche im gerichteten Graphen der Fig. 15.
  • Fig. 1 zeigt das zu diagnostizierende technische System mit der Sensorik sowie das Diagnosesystem, das eine erfindungsgemäß erzeugte Wissensbasis, eine Meßwert-Aufbereitung sowie eine Inferenzkomponente, die durch Auswertung der aufbereiteten Meßwerte und der Wissensbasis Fehler lokalisiert.
  • Ein bevorzugtes Anwendungsgebiet ist die vollautomatische Überwachung und Diagnose von Teilsystemen von Fahrzeugen, z. B. von mechatronischen Aktoren eines Kraftfahrzeuges. Das Diagnosesystem einschließlich der Wissensbasis ist an Bord des zu diagnostizierenden Fahrzeugs installiert. Sensoren erfassen variable Größen des Fahrzeugs, und das Diagnosesystem bereitet die Meßwerte auf, wertet sie aus und stellt fest, ob ein Fehler am Fahrzeug aufgetreten ist. Idealerweise wird ein einziger Fehler identifiziert, mindestens aber wird der aufgetretene Fehler so weit lokalisiert, daß eine Menge von möglichen Fehlern bestimmt wird. Vorzugsweise generiert das Diagnosesystem eine Meldung an eine Überwachungseinrichtung an Bord des Fahrzeugs. Diese nimmt als Reaktion auf die erkannten Fehler automatisch Änderungen am Fahrzeug vor und/oder informiert den Fahrer des Fahrzeugs.
  • Eine alternative Ausführungsform (Anspruch 4) schlägt vor, daß an Bord des Fahrzeugs lediglich die Sensorik und ein Datenspeicher vorhanden sind. In den Datenspeicher werden die automatisch erfaßten Meßwerte abgespeichert. Das Diagnosesystem befindet sich außerhalb des Fahrzeugs, z. B. in einer Werkstatt. Dort werden die abgespeicherten Meßwerte aufbereitet und ausgewertet und dort die Fehler identifiziert.
  • Paritätsgleichungen, auch parity equations oder analytical redundancy relations, sind z. B. aus Janos Gertler, Fault Detection and Diagnosis in Engineering Systems, Marcel Dekker Publ., 1998, als ein Mittel, um ein technisches System zu beschreiben, bekannt. Eine Paritätsgleichung hat die Form f (Meßgrößen, Eingangsgrößen, Komponentenfunktionen) = 0. Beispielsweise sind die Meßgrößen zeitveränderliche Größen, die an Bord eines Fahrzeugs durch Sensoren gemessen werden, Eingangsgrößen sind bekannte oder berechnete Stelleingriffe von Steuergeräten, und die Komponentenfunktionen sind Verstärkungsfaktoren oder Kennfelder für Komponenten. Oft ist eine Paritätsgleichung eine Differentialgleichung, die Ableitungen von Größen nach der Zeit enthält. Die Werte aller in einer Paritätsgleichung auftretenden Größen sind bekannt. Die Gleichung f = 0 gilt dann, wenn das Modell des technischen Systems mit zureichender Genauigkeit zutrifft. f # 0 bedeutet, daß das Modell nicht zutrifft. In der Regel wird das Modell für das fehlerfreie technische System aufgestellt. In diesem Falle gilt f # 0 insbesondere deshalb und das Modell trifft insbesondere deshalb nicht zu, weil ein Fehler an einer Komponente, z. B. fehlerhafte Funktion einer Komponente, Ausfall einer Verbindung oder Parameterdrift durch Verschleiß von Komponenten, aufgetreten ist. Eine Paritätsgleichung f # 0 wird oft als Residuum bezeichnet.
  • Fig. 2 zeigt den prinzipiellen Ablauf einer Ausgestaltung des Verfahrens. Die einzelnen Verfahrensschritte werden im folgenden erläutert.
  • Die erfindungsgemäße Erzeugung von Paritätsgleichungen wird am Beispiel eines Gleichstrommotors erläutert. Dieser Motor wird in Rolf Isermann, Modellgestützte Überwachung und Fehlerdiagnose technischer Systeme, Teil 2, atp 6/96, S. 48-57, vorgestellt.
  • Fig. 3 zeigt idealisiert den Ankerstromkreises des Gleichstrommotors, dabei bedeuten:
    UA: die Ankerspannung
    Urot: die Rotationsspannung
    RA: den Ankerwiderstand
    LA: die Ankerinduktivität
    IA: die Stromstärke
  • Fig. 4 zeigt idealisiert die Momentenbilanz des Gleichstrommotors, dabei bedeuten:
    MR: das Reibungsmoment
    ML: das Lastmoment
    Mel: das elektrische Moment
    J: das Trägheitsmoment
    ω: die Winkelgeschwindigkeit
  • Das elektrische und das mechanische Modell des Gleichstrommotors läßt sich durch zwei gekoppelte Differentialgleichungen beschreiben:
    LA I'A(t) + RA IA(t) + ψ ω(t) - UA(t) = 0
    J ω'(t) - ψ IA(t) + Mrl ω(t) + Mr0 sign[ω(t)] + ML(t) = 0, wobei
    Magnetische Flußverkettung zwischen dem Anker und dem Erregerfeld,
    Mr0 trockene Reibung
    Mr1 viskose Reibung.
  • Das elektrische und das mechanische Modell lassen sich gemeinsam durch das in Fig. 5 gezeigte Blockschaltbild darstellen. Die Blöcke haben Eingangsgrößen und Ausgangsgrößen. Die beiden schwarzen Trapeze stehen für Eingangsgrößen des Systems, an denen beliebige Signalverläufe eingespeist werden können. Die beiden schwarzen Fünfecke stehen für Sensoren. Die beiden Blöcke mit der Beschriftung 1/s sind Integratoren. Die Kreise stehen für Summierer, deren Eingangsgrößen mit +1 oder -1 multipliziert werden, was durch ein + bzw. - dargestellt ist. Die übrigen Blöcke sind Verstärker, der jeweilige Verstärkungsfaktor ist in den Block eingetragen. Für die Durchführung einer Simulation sind für die Konstanten des Systems Zahlenwerte zu vergeben.
  • Das Beispiel der Fig. 5 ist ein Blockschaltbild mit einer einzigen Hierarchieebene. Beim erfindungsgemäße Verfahren werden Paritätsgleichungen aus Modellen mit einer oder mehreren Hierarchie-Ebenen erzeugt. Fig. 6, Fig. 7 und Fig. 8 zeigen das Modell der Fig. 5 auf zwei Hierarchieebenen verteilt. Das "Innenleben" des Blocks mit der Bezeichnung Elektrik in Fig. 6 wird durch ein Blockschaltbild beschrieben, das in Fig. 7 gezeigt wird, das "Innenleben" des Blocks mit der Bezeichnung Mechanik in Fig. 6 durch das Blockschaltbild der Fig. 8.
  • Vorzugsweise sind die Eingangsgrößen des Systems Stellgrößen oder eingespeiste Signalverläufe, deren Werte bekannt sind. Die Ausgangsgrößen werden vorzugsweise durch Sensoren gemessen, sind also ebenfalls bekannt. Möglich ist, daß weitere Größen des Modells gemessen werden. Im Beispiel der Fig. 5 sind die Eingangsgrößen UA und ML bekannt, da die Spannung eingespeist wird. Die Eingangsgröße ML wird dabei abweichend vom Modell nach Rolf Isermann nicht als Störgröße, sondern ebenfalls als bekannte Größe aufgefaßt. Die Ausgangsgröße ω sowie die Größe IA werden durch Sensoren gemessen.
  • Der erste Schritt des Verfahrens besteht daraus, ein vorhandenes Modell mit Blockschaltbildern und funktionalen Beschreibungen der Blöcke automatisch zu erfassen. Vorzugsweise werden hierfür folgende Schritte ausgeführt:
    • - Das Modell wird in eine Datenverarbeitungsanlage eingelesen.
    • - Jeder Funktionsblock des Modells wird mit einer eindeutigen Kennung versehen.
    • - Ein Hierarchiebaum für das Modell wird generiert.
    • - Für jeden Block S des Modells, der aus mehreren Funktionsblöcken zusammengesetzt ist, wird eine erweiterte Adjazenz-Matrix aufgestellt. Diese Matrix zeigt, wie die Funktionsblöcke im Block S zusammenhängen.
    • - Eine Gesamt-Adjazenz-Matrix wird erzeugt, die die Zusammenhänge der elementaren Blöcke des Modells zeigt. Bei der Erzeugung wird ein Bottom-up-Einsetzungsverfahren durchgeführt.
    • - Die Gesamt-Adjazenz-Matrix wird überarbeitet
    • - Die funktionalen Beschreibungen der Blöcke werden automatisch erfaßt.
    • - Die überarbeitete Gesamt-Adjazenz-Matrix und die funktionalen Beschreibungen werden abgespeichert.
  • Das Modell wird vorzugsweise auf eine der folgenden beiden Wege in die Datenverarbeitungsanlage eingelesen:
    • - erster Weg: Eine Menge von Dateien wird eingelesen, die eine Beschreibung des Modells in lesbarer Form, z. B. in ASCII, enthalten.
    • - zweiter Weg: Das Modell, das z. B. in einem Binärformat oder in ASCII abgespeichert ist, wird in ein Simulationswerkzeug eingelesen.
  • Beim ersten Weg ist es erforderlich, daß das Modell in einer bestimmten Syntax vorliegt. Vorzugsweise wird eine derartige Syntax durch eine Menge von Produktionsregeln in einer Backus- Naur-Form oder einem gerichteten Graphen beschrieben. Fig. 9 zeigt die Syntax für ein Modell mit Blockschaltbildern, das mit dem Simulationswerkzeug MATLAB/SIMULINK aufgestellt wurde. MATLAB/SIMULINK ist aus J. Hoffmann, MATLAB und SIMULINK: Beispielorientierte Einführung in die Simulation dynamischer Systeme, Addison-Wesley - Longman, Bonn, 1998 bekannt.
  • Die Grammatik, die ein Parser verwendet, um ein Modell auf syntaktische Korrektheit zu prüfen, wird vorzugsweise als Graph dargestellt. Ein Rechteck steht für ein Nichtterminalzeichen der Sprache, ein Kreis für ein Terminalzeichen. Eine Abfolge von Zeichen der Grammatik wird durch eine Reihenschaltung von Rechtecken und/oder Kreisen, Alternativen dargestellt, Alternativen durch eine Parallelschaltung. Eine Rückschleife im Graphen für die Syntax zeigt an, daß eine Abfolge von Zeichen keinmal, einmal oder mehrmals auftreten darf.
  • Beim zweiten Weg wird das Modell in das Simulationswerkzeug eingelesen. Mit einer Abfolge von Programmbefehlen, die für das Simulationswerkzeug spezifisch sind, lassen sich die Blockschaltbilder des Modells und die Funktionen der elementaren Blöcke auslesen. Im Falle von MatrixX heißt diese Befehlssprache "System Build Access". Sie erlaubt es, Blöcke in Blockschaltbildern zu erzeugen, zu modifizieren, abzufragen und zu löschen.
  • Als nächstes wird der Modellhierarchiebaum erzeugt. Dieser Baum zeigt die hierarchische Struktur des Gesamtmodells. Hierzu wird zunächst jeder Block in jedem Blockschaltbild des Modells mit einer global eindeutigen Kennung versehen. Fig. 10 bis Fig. 12 zeigen das Modell aus Fig. 6 bis Fig. 8 mit Kennungen für die Blöcke.
  • Als nächstes wird derjenige Block gesucht, der für das technische System als ganzes steht. Er wird die Wurzel des Modell-Hierarchie-Baums. Dieser Block ist ein zusammengesetzter Block, sein innerer Aufbau wird durch ein Blockschaltbild beschrieben. Seine Nachfolger werden die Blöcke, die im Blockschaltbild des Blocks für das technische System als ganzes auftreten. Die Blätter des Baumes sind die elementaren Blöcke. Vorzugsweise wird jedem Block eine Kennung für die Niveaustufe zugeordnet. Die Wurzel hat die Niveaustufe 0, die Nachfolger der Wurzel die Niveaustufe 1 und so fort.
  • Fig. 13 zeigt den Modell-Hierarchie-Baum, der drei Niveaustufen hat.
  • Es ist möglich, daß das Modell auf oberster Ebene, also in der Niveaustufe 0, mehrere Blöcke hat. In diesem Fall bekommt der Modell-Hierarchie-Baum mehrere Wurzeln.
  • Der nächste Schritt besteht daraus, aus den Blockschaltbildern und den Funktionen der elementaren Blöcke einen gerichteten Graphen, der die Zusammenhänge zwischen den elementaren Blöcken zeigt, sowie Funktionsbeschreibungen für bestimmte Blöcke zu erzeugen. Die Knoten des Graphs sind die elementaren Blöcke, pro elementaren Block hat der gerichtete Graph einen Knoten. In diesem Graphen verläuft eine Kante von Block A zu Block B, wenn in einem Blockschaltbild die Ausgangsgröße von Block A eine Eingangsgröße von Block B ist.
  • Vorzugsweise wird ein gerichteter Graph durch eine Adjazenz- Matrix dargestellt und abgespeichert. Die Datenstruktur der Adjazenz-Matrix ist beispielsweise aus P. Läuchli, Algorithmische Graphentheorie, Birkhäuser-Verlag, Basel, 1991, bekannt. Die Knoten des Graphen werden bei 1 beginnend durchnumeriert. Die Adjazenz-Matrix für einen gerichteten Graphen ist quadratisch und hat genauso viele Zeilen und Spalten wie der darzustellende Graph Knoten hat. Das Element in der Zeile i und der Spalte j ist gleich 1, wenn eine Kante von Knoten i zu Knoten j verläuft, ansonsten gleich 0.
  • Der gerichtete Graph für die Zusammenhänge zwischen den elementaren Blöcken wird durch eine Gesamt-Adjazenz-Matrix und eine zugeordnete Tabelle dargestellt. Diese Gesamt-Adjazenz- Matrix wird erzeugt, indem zunächst für jedes Blockschaltbild eine Teil-Adjazenz-Matrix sowie eine zugeordnete Tabelle erzeugt werden und anschließend die Teil-Adjazenz-Matrix für ein Blockschaltbild in die Teil-Adjazenz-Matrix für ein übergeordnetes Blockschaltbild eingesetzt werden (Bottom-up- Vorgehen). Hierfür wird der Modell-Hierarchie-Baum verwendet. Die Erzeugung der Gesamt-Adjazenz-Matrix ist beendet, wenn die Wurzel des Modell-Hierarchie-Baums erreicht wird. Die Tabelle, die einer Adjazenz-Matrix zugeordnet ist, verknüpft die Zeilen und Spalten der Adjazenz-Matrix mit Kennungen für Blöcke.
  • Die Generierung wird im folgenden am Beispiel der Blockschaltbilder in Fig. 10 bis Fig. 12 und des gerichteten Graphen in Fig. 15 beschrieben. Die bekannte Datenstruktur der Adjazenz-Matrix wird erweitert, indem eine erste Codierung für Blöcke, die mit einer Ausgangsgröße verbunden sind, und eine zweite Codierung für Blöcke, die mit einer Eingangsgröße verbunden sind, verwendet wird. Vorzugsweise wird ein Block, der mit einer Ausgangsgröße verbunden ist, in der Diagonalen der Adjazenz-Matrix mit -2 und ein Block, der mit einer Eingangsgröße verbunden ist, mit -1 codiert.
  • Die Teil-Adjazenz-Matrix A für den in Fig. 11 gezeigten Block "Elektrik" mit der Kennung 101 sieht wie folgt aus:


  • Die erste Zeile und die erste Spalte geben die Nummer der Zeile bzw. Spalte an.
  • Die der Matrix A zugeordnete Tabelle sieht wie folgt aus:


  • Die Teil-Adjazenz-Matrix B für den in Fig. 12 gezeigten Block "Mechanik" mit der Kennung 100 sieht wie folgt aus:


  • Die der Matrix B zugeordnete Tabelle sieht wie folgt aus:


  • Die Teil-Adjazenz-Matrix C für den in Fig. 10 gezeigten Block "Gesamtsystem" mit der Kennung 200 sieht wie folgt aus:


  • Die der Matrix C zugeordnete Tabelle sieht wie folgt aus:


  • Formal wird die Teil-Adjazenz-Matrix B für den Block 100 in die Teil-Adjazenz-Matrix C für den Block 200 eingesetzt, indem das Element C[3,3] in der Teil-Adjazenz-Matrix C durch die Teil- Adjazenz-Matrix für den Block 100 ersetzt wird. Denn Block 100 ist der Block in der Zeile 3 und der Spalte 3 der Teil- Adjazenz-Matrix für den Block 200, was aus der zugeordneten Tabelle hervorgeht. Das entsprechende gilt für den Block 101.
  • Im folgenden wird die Gesamt-Adjazenz-Matrix D für den gerichteten Graphen gezeigt. Das Quadrat mit den Ecken D[1,1], D[1,7], D[7,1] und D[7,7] stammt von der Teil-Adjazenz- Matrix B, das Quadrat mit den Ecken D[8,8], D[8,13], D[13,8] und D[13,13] stammt von der Teil-Adjazenz-Matrix A.


  • Die zugeordnete Tabelle ist diese:


  • Die Einsetzung wird deshalb vorzugsweise bottom-up durchgeführt, damit in der Gesamt-Adjazenz-Matrix nur elementare Blöcke auftreten.
  • Diese Gesamt-Adjazenz-Matrix D wird in einem nachfolgenden Verfahrensschritt überarbeitet, um fehlende Verbindungen zu schließen. Hierbei werden alle mit -1 und -2 codierten Verbindungen überprüft. Bei Bedarf werden die Blockschaltbilder und die Kennzeichnungen der Verbindungen untersucht. Die gegenüber der Matrix D überprüften oder veränderten Elemente der Matrix E sind durch dicke Umrahmungen gekennzeichnet.
  • Im obigen Beispiel werden im einzelnen folgende Überprüfungen durchgeführt:
    • - E[4,4] = -2: In der Teil-Adjazenz-Matrix A für den Block 100 ist Block 8 in der Zeile 4 mit der Kennung -2 markiert, d. h. A[4,4] = -2. In der Teil-Adjazenz-Matrix C für den Block 200 ist Block 100 eine Ausgangsgröße, denn C[3,3] = -2. Die Blöcke 100 und 200 haben genau eine Ausgangsgröße. Also ist der Block 8 eine Ausgangsgröße des Gesamtsystems, d. h. E[4,4] = D[4,4] = -2.
    • - Der Block 3, der im Blockschaltbild von 101 auftritt, ist zwar in der Teil-Adjazenz-Matrix A für den Block 101 als Ausgangsgröße gekennzeichnet, denn A[4,4] = -2. Jedoch ist Block 3 keine Ausgangsgröße des Gesamtsystems, weil in der Teil-Adjazenz-Matrix C für den Block 200 der Block 101 nicht als Ausgangsgröße gekennzeichnet ist: C[4,4] = 0. Daher ist E[11, 11] = 0. Vielmehr geht aus der Teil-Adjazenz-Matrix C hervor, daß eine Verbindung von Block 101 zu Block 100 existiert, denn C[4,3] = 1. Der Block 100 hat zwei Eingangsgrößen, nämlich die Blöcke 4 und 40. Es ist nämlich A[1,1] = -1 und A[6,6] = -1. Aus den Kennzeichnungen der Verbindungen geht hervor, daß es eine Verbindung von Block 3 zu Block 4 gibt und diese Verbindung dafür verantwortlich ist, daß Block 4 eine Eingangsgröße des Blocks 100 ist. Daher ist E[11,6] = 1 und E[6,6] = 0.
    • - Außerdem existiert eine Verbindung von Block 100 zu Block 101, denn C[3,4] = 1. Aus den Kennzeichnungen der Verbindungen geht hervor, daß diese Verbindung durch die Verbindung zwischen Block 8 und Block 11 hervorgerufen wird. Daher ist E[4,13] = 1.
    • - Entsprechend wird abgeleitet: Block 40 ist keine Eingangsgröße des Gesamtsystems, daher ist E[1,1] = 0. Eine Verbindung von Block 12 zu Block 40 existiert, daher E[14,1] = 1.
    • - Genauso: Block 1 ist keine Eingangsgröße des Gesamtsystems, daher ist E[8,8] = 0. Eine Verbindung von Block 13 zu Block 1 existiert, daher E[15,8] = 1.
    • - Die Blöcke 12 und 13 sind Eingangsgrößen des Gesamtsystems, daher E[14,14] = -1 und E[15,15] = -1.
  • Das Ergebnis ist folgende Gesamt-Adjazenz-Matrix E:


  • Die noch leeren Felder werden mit Nullen ausgefüllt.
  • Ein weitere Prüfung untersucht mögliche hierarchieübergreifende Verbindungen zwischen zwei Blöcken. In Beispiel von Fig. 10 bis Fig. 12 kommt eine solche Verbindung nicht vor. Fig. 14 zeigt ein Beispiel. Der Blockpfeil von Block L22 zu Block L11 zeigt eine hierarchieübergreifende Verbindung.
  • Vorzugsweise werden die Adjazenz-Matrizen jeweils als sparse matrix abgespeichert, um Speicherplatz zu sparen. Bei n die Anzahl der Knoten des gerichteten Graphen und damit der Zeilen und Spalten der Adjazenz-Matrix. Wenn diese Matrix in einer matrixförmigen Datenstruktur abgelegt wird, erfordert dies den Speicherplatz für n.n Zahlwerte. Bei einer sparse matrix werden nur die Indizes und Zahlenwerte von Elementen der Matrix abgespeichert, die ungleich Null sind.
  • Außerdem wird für jeden Summierer eine Tabelle mit den Eingängen und deren Vorzeichen, also mit der Funktion des Summierers, erzeugt. Für Knoten 1 in Fig. 15 sieht diese Tabelle wie folgt aus:


  • Für jeden anderen elementaren Block wird ein Platzhalter für die Funktion erzeugt, der vorzugsweise die Kennung des Blocks umfaßt. Beispielsweise wird für den Block mit der Kennung 11 der Platzhalter F11 erzeugt.
  • Darüber hinaus wird - vorzugsweise während der Generierung der Teil-Adjazenz-Matrizen für die Blockschaltbilder - eine Tabelle mit drei spalten erzeugt. In der ersten Spalte sind Kennungen für elementare Blöcke abgelegt, in der zweiten Spalte Kennungen für Typen von Blöcken und in der dritten Spalte Verstärkungsfaktoren. Die Kennungen für Typen von Blöcken verweisen auf Einträge in einer Bibliothek von Block-Typen, die einmal aufgestellt wird und für viele technische Systeme gültig ist. Kommerziell verfügbare Simulationswerkzeuge wie MATLAB/SIMULINK oder MATRIXX stellen dem Benutzer umfangreiche Bibliotheken zur Verfügung. Im Falle von MATLAB/SIMULINK ist z. B. ein Summierer mit 22 codiert, ein Verstärker (gain) mit 20, ein Integrator mit 40, ein Differenzierer mit 50, eine Konstante mit 3, ein Generator für amplituden-begrenztes weißes Rauschen mit 5, eine Signum-Funktion mit 14 und eine Kennlinie mit 9. Die dritte Spalte der Tabelle wird nur für Blöcke vom Typ Verstärker ausgefüllt.
  • Im folgenden wird die dreispaltige Tabelle für das Beispiel der Blockschaltbilder aus Fig. 10, Fig. 11 und Fig. 12 gezeigt.


  • In dem gerichteten Graphen, der die elementaren Blöcke des technischen Systems und die Zusammenhänge zwischen diesen Blöcken beschreibt, werden als nächstes Startknoten ausgewählt. Verschiedene Verfahren sind möglich, um diese Startknoten auszuwählen. Möglich ist es, alle Knoten ohne Vorgänger oder ohne Nachfolger auszuwählen. Vorzugsweise werden aber statt dessen alle Knoten mit mehreren Vorgängern ausgewählt. Im Falle des Graphen aus Fig. 15 sind dies die Knoten mit den Kennungen 1, 4 und 40. Ist ein Nachfolger B eines Startknotens A ebenfalls ein Startknoten, z. B. ein Knoten mit mehreren Eingängen, und befindet sich auf dem Pfad zwischen Knoten A und Knoten B kein Knoten, der ein Abbruchkriterium erfüllt, so wird entweder A oder B aus der Menge der Startknoten gestrichen.
  • Diese Bedingung trifft auf die Knoten 4 und 40 des Graphs aus Fig. 15 zu.
  • Im nächsten Schritt werden die Paritätsgleichungen erzeugt. Vorzugsweise werden hierfür aus initialen Gleichungen für die Startknoten durch Umformungen finale Gleichungen erzeugt und diese zu Paritätsgleichungen umgeformt. Vorzugsweise wird hierbei eine Breitensuche (breadth first search) durchgeführt, die z. B. aus P. Läuchli, Algorithmische Graphentheorie, Birkhäuser-Verlag, Basel, 1991 bekannt ist. Hierbei wird ausgehend von jeweils einem Startknoten der Graph in der Breite durchsucht, d. h. daß erst alle Knoten, die k Kanten vom Startknoten entfernt sind, "besucht" werden, bevor die Knoten mit einer Entfernung von k + 1 Kanten "besucht" werden.
  • Die Erzeugung der finalen Gleichungen wird vorzugsweise in zwei Schritten durchgeführt: Als erstes werden für jeden Startknoten durch zwei Breitensuchen zwei Tabellen erzeugt, und zwar eine für die vorwärtsgerichtete Umformung und eine für die rückwärtsgerichtete Umformung. Hierbei wird der gerichtete Graph jeweils ausgehend von den Startknoten sowohl vorwärts als auch rückwärts per Breitensuche im gerichteten Graphen durchsucht. Die erzeugten Tabellen steuern die Umformung der initialen Gleichung zur finalen Gleichung.
  • Beim erfindungsgemäßen Verfahren wird ausgehend von einem Startknoten der gerichtete Graph sowohl vorwärts als auch rückwärts durchsucht. Die vorwärtsgerichtete Breitensuche bricht dann in einem Knoten ab, wenn eine der folgenden vier Bedingungen erfüllt ist:
    • - Die Ausgangsgröße des Knotens ist bekannt
    • - Der Knoten hat keinen Nachfolger.
    • - Der Knoten wurde bereits einmal besucht. Mit der letzten Bedingung wird vermieden, daß das Verfahren in eine Endlosschleife gerät und deshalb nicht terminiert.
    • - Der Knoten hat mehrere Eingangsgrößen.
  • Die rückwärtsgerichtete Breitensuche bricht dann in einem Knoten ab, wenn eine der folgenden vier Bedingungen erfüllt ist:
    • - Die Ausgangsgröße des Knotens ist bekannt
    • - Der Knoten hat keinen Vorgänger.
    • - Der Knoten wurde bereits einmal besucht.
    • - Der Knoten hat mehrere Eingangsgrößen.
  • Fig. 16 veranschaulicht das Vorgehen bei der Breitensuche an einem Beispiel. Ein ausgewählter Startknoten ist der Block mit der Kennung 1, der mit S markiert ist. In der ersten Stufe werden zunächst vorwärts und danach rückwärts alle Knoten "besucht", die vom Startknoten eine Kante entfernt sind und die in Fig. 16 mit einer 1 markiert sind. Bei der Vorwärtssuche ist dies der Knoten mit der Kennung 9, bei der Rückwärtssuche die Knoten mit den Kennungen 2, 11 und 13. Die Ausgangsgröße des Knotens 13 ist bekannt, daher bricht die Breitensuche im Knoten 13 ab. Als nächstes werden alle Knoten mit einer Entfernung von zwei Kanten vom Startknoten "besucht", das sind im Beispiel der Fig. 16 die Vorgänger der Knoten 2 und 11 sowie die Nachfolger des Knotens 9. Die Knoten 7 und 8 als Vorgänger der Knoten 2 und 11 sind daher mit einer 2 markiert. Die Breitensuche bricht in den Knoten 7 und 8 ab, da die Ausgangsgrößen dieser Knoten bekannt sind. Der Knoten 7 ist zugleich Nachfolger des Knotens 9.
  • Die Breitensuche, die im Startknoten 1 beginnt, liefert folgende beiden Tabellen, die jeweils Kennungen von Knoten zeigen: Ergebnis der vorwärtsgerichteten Breitensuche

    Ergebnis der Rückwärtssuche

  • Die Tabelle wird am Beispiel der 3. Zeile erläutert. Der Knoten 1 hat als direkten Vorgänger den Knoten 13. Die Kante von 13 nach 1 hat als Vorzeichen ein +. Die Ausgangsgröße des Knotens 13 ist bekannt.
  • Auch für die anderen Startknoten werden derartige Tabellen erzeugt.
  • Im nächsten Schritt werden die Paritätsgleichungen erzeugt. Pro Startknoten wird zunächst eine initiale Gleichung erzeugt und diese schrittweise zu einer finalen Gleichung umgeformt, wobei die Umformung durch die beiden zuvor erzeugten Tabellen gesteuert wird.
  • Hierbei wird vorzugsweise pro Zeile der Tabelle, die durch vorwärtsgerichtete Breitensuche erzeugt wurde, folgender Schritt bei der vorwärtsgerichteten Umformung ausgeführt: Die zuvor erzeugte Gleichung wird nach der Ausgangsgröße des in der Tabelle, linke Spalte, bezeichneten Knotens aufgelöst. Sie wird in die Funktion eingesetzt, die die Ausgangsgröße des in der Tabelle, rechten Spalte, bezeichneten Knotens in Abhängigkeit von dessen Eingangsgrößen beschreibt. Unter diesen Eingangsgrößen ist die Ausgangsgröße des in der Tabelle, linke Spalte, bezeichneten Knotens. Durch die Einsetzung entsteht eine neue Gleichung aus der zuvor erzeugten Gleichung.
  • Pro Zeile der Tabelle, die durch rückwärtsgerichtete Breitensuche erzeugt wurde, wird folgender Schritt bei der rückwärtsgerichteten Umformung ausgeführt: In der zuvor erzeugten Gleichung wird die Ausgangsgröße des in der Tabelle, rechten Spalte, bezeichneten Knotens durch die Funktion dieses Knotens ersetzt. Diese Funktion beschreibt die Ausgangsgröße des in der Tabelle, rechten Spalte, bezeichneten Knotens als Funktion seiner Eingangsgrößen.
  • Ein vorwärtsgerichteter Umformschritt wird auch als Umformschritt des Typs - bezeichnet, ein rückwärtsgerichteter Umformschritt als einer des Typs -.
  • Die Umformschritte werden am Beispiel des Startknotens mit der Kennung 1 aus Fig. 15 erläutert. Knoten 1 ist ein Startknoten ist, da Knoten 1 mehrere Eingangsgrößen hat.
  • Initiale Gleichung: O1 = +O13 - O2 - O11
  • Vorwärtsgerichtete Umformschritte:
    Knoten 9 ist Nachfolger von Knoten 1.
    O1 = +O13 - O2 - O11 einsetzen in O9 = F9(O1)
    → O9 = F9(+O13 - O2 - O11)
  • Knoten 7 ist Nachfolger von Knoten 9.
    O9 = F9(+O13 - O2 - O11) einsetzen in O7 = F7(O9)
    → O7 = F7(F9(+O13 - O2 - O11))
  • Abbruch der vorwärtsgerichteten Umformung, da O7 bekannt.
  • Erläuterung: Der Zeile 1 wird die Information entnommen, daß Knoten 9 direkter Vorgänger von Knoten 1 ist. Der Zeile 2 wird die Information entnommen, daß Knoten 7 direkter Vorgänger von Knoten 9 ist und die Ausgangsgröße O7 von Knoten 7 bekannt ist. Daher braucht die linke Seite nicht weiter umgeformt zu werden.
  • Rückwärtsgerichtete Umformschritte:
    Knoten 2 erfüllt Abbruchkriterium nicht.
    O2 = F2(O7) einsetzen in O7 = F7(F9(+O13 - O2 - O11))
    O7 = F7 (F9(+O13 - F2(O7) - O11))
  • Knoten 11 erfüllt Abbruchkriterium nicht.
    O11 = F11(O8) einsetzen in O7 = F7(F9(+O13 - O2 - O11))
    O7 = F7(F9(+O13 - F2(O7) - F11(O8)))
  • Abbruch der rückwärtsgerichteten Umformung, da alle in ihr vorkommenden Größen bekannt sind. Damit ist die finale Gleichung erzeugt.
  • Aus ihr wird die Paritätsgleichung
    F7 (F9(+O13 - F2(O7) - F11(O8))) - O7 = 0 erzeugt.
  • Ein weiterer Startknoten ist Knoten 4, da Knoten 4 mehrere Eingangsgrößen hat. Die Ableitung einer Paritätsgleichung verläuft wie folgt:
    Initiale Gleichung: O4 = +O40 + O3 - O6
  • Vorwärtsgerichtete Umformung:
    Knoten 10 ist Nachfolger von Knoten 4.
    O4 = +O40 + O3 - O6 einsetzen in O10 = F10(O4)
    → O10 = F10(+O40 + O3 - O6)
  • Knoten 8 ist Nachfolger von Knoten 10
    O10 = F10(+O40 + O3 - O6) einsetzen in O8 = F8(O10)
    → O8 = F8(F10(+O40 + O3 - O6))
  • Abbruch der vorwärtsgerichteten Umformung, da O8 bekannt.
  • Rückwärtsgerichtete Umformung:
    Knoten 40 erfüllt Abbruchkriterium nicht.
    O40 = +O5 + O12 einsetzen in O8 = F8(F10(+O40 + O3 - O6))
    → O8 = F8(F10(+O5 + O12 + O3 - O6))
  • Knoten 3 erfüllt Abbruchkriterium nicht.
    O3 = F3(O7) einsetzen in O8 = F8(F10(+O5 + O12 + O3 - O6))
    → O8 = F8(F10(+O12 + O5 + F3(O7) - O6))
  • Knoten 6 erfüllt Abbruchkriterium nicht.
    O6 = F6(O8) einsetzen in O8 = F8(F10(+O12 + O5 + F3(O7) - O6))
    → O8 = F8 (F10(+O12 + O5 + F3(O7) - F6(O8)))
  • Knoten 5 erfüllt Abbruchkriterium nicht.
    O5 = F5(O50) einsetzen in
    O8 = F8(F10(+O12 + O5 + F3(O7) - F6(O8)))
    → O8 = F8(F10(+O12 + F5(O50) + F3(O7) - F6(O8)))
  • Knoten 50 erfüllt Abbruchkriterium nicht.
    O50 = F50(O8) einsetzen in
    O8 = F8(F10(+O12 + F5(O50) + F3(O7) - F6(O8)))
    → O8 = F8(F10(+O12 + F5(F50(O8)) + F3(O7) - F6(O8)))
  • Abbruch der rückwärtsgerichteten Umformung, da alle in ihr vorkommenden Größen bekannt sind. Damit ist die finale Gleichung erzeugt.
  • Aus ihr wird die Paritätsgleichung
    F8(F10(+O12 + F5(F50(O8)) + F3(O7) - F6(O8))) - O8 = 0 erzeugt.
  • Der Knoten 40 ist kein Startknoten, obwohl er mehrere Eingangsgrößen hat, weil zwischen Knoten 4 und Knoten 40 gar keine Knoten liegen. Warum es sinnvoll ist, daß Knoten 40 kein Startknoten ist, wird im folgenden erläutert. Würde man auch für Knoten 40 eine Paritätsgleichung erzeugen, so würden folgende Schritte durchgeführt:
    Initiale Gleichung: O40 = +O12 + O5
  • Vorwärtsgerichtete Umformung:
    Knoten 4 ist Nachfolger von Knoten 40.
    O40 = +O12 + O5 einsetzen in O4 = +O40 + O3 - O6
    → O4 = +O12 + O5 + O3 - O6
  • Die Fortführung der Umformungen würde genau Gl. 1 liefern.
  • Insgesamt wurden folgende beiden Paritätsgleichungen erzeugt:
    Gl. 1: F7(F9(+O13 - F2(O7) - F11(O8))) - O7 = 0
    Gl. 2: F8(F10(+O12 + F5(F50(O8)) + F3(O7) - F6(O8))) - O8 = 0
  • Als nächstes wird versucht, diese Gleichungen zu vereinfachen und zu entkoppeln. Unter der Bezeichnung "symbolische Gleichungslöser" sind Softwarewerkzeuge bekannt, die derartige Umformungen von Gleichungen automatisch vornehmen. Ein derartiges Softwarewerkzeug namens Maple wird z. B. in W. Ellis: Maple V in der mathematischen Anwendung, Internat. Thomson Publ., Bonn, 1997 vorgestellt.
  • Im Beispiel der drei gerade abgeleiteten Paritätsgleichungen sieht eine Darstellung der Paritätsgleichungen einschließlich der funktionalen Beschreibungen der Blöcke in einer Syntax für einen symbolischen Gleichungslöser wie MAPLE beispielsweise wie folgt aus:
    F2: = ports→Block2.Amp.ports;
    F3: = ports→Block3.Amp.ports;
    F5: = ports→Block50.Amp.ports;
    F6: = ports→Block6.Amp.ports;
    F7: = ports→int(ports,t);
    F8: = ports→int(ports,t);
    F9: = ports→Block9.Amp.ports;
    F10: = ports→Block10.Amp.ports;
    F11: = ports→Block11.Amp.ports;
    F50: = Block5.Tab;
    O7: = map(Block7.Output,t);
    O8: = map(Block8.Output,t);
    O12: = map(Block12.Output,t);
    O13: = map(Block13.Output,t);
    O40: = map(Block40.Output,t);
    Parity1: = F7(F9(+O13 - F2(O7) - F11(O8))) - O7;
    Parity2: = F8(F10(+O12 + F5(F50(O8)) + F3(O7) - F6(O8))) - O8;
    System: = [Parity1,Parity2];
  • Ports ist ein symbolischer Name für die Eingangsgröße des jeweiligen Funktionsblocks. Block9.Amp ist der Verstärkungsfaktor des Blocks 9. Die Funktionsvorschrift für den Block 9 ist, daß die Eingangsgröße mit dem Verstärkungsfaktor des Blocks 9 multipliziert wird. In einer separaten Datenstruktur ist für Block9.Amp ein Wert hinterlegt. Die Funktionsvorschrift int(ports,t) legt fest, daß die Eingangsgröße über der Zeit integriert wird. Block5.Tab ist eine Tabelle, nämlich ein Kennfeld, das die Funktion sign (Vorzeichenfunktion) beschreibt. 07: = map(Block7.Output,t) ordnet der aktuellen Ausgangsgröße des Blocks 7 im Zeitbereich das Symbol = 7 zu.
  • Ein symbolischer Gleichungslöser vermag Unbekannte aus einem Gleichungssystem dadurch zu entfernen, daß nach einer Unbekannten aufgelöst wird und eine so entstandene Gleichung in alle anderen Gleichungen eingesetzt wird, in der diese Unbekannte auftritt.
  • Im vorliegenden Beispiel treten in den Paritätsgleichungen keine Unbekannte auf.
  • Um nicht zur Laufzeit des Diagnosesystems numerisch integrieren zu müssen, werden vorteilhafterweise in allen Paritätsgleichungen Integrale über der Zeit durch Differentation nach der Zeit eliminiert. Dafür treten zusätzliche Ableitungen auf, die zur Laufzeit des Diagnosesystems zu bestimmen sind. Auch dies vermag ein symbolischer Gleichungslöser automatisch auszuführen.
  • Im obigen Beispiel wurden folgende Paritätsgleichungen erzeugt:
    Gl. 1: F7 (F9 (+O13 - F2(O7) - F11 (O8))) - O7 = 0
    Gl. 2: F8(F10(+O12 + F5(F50(O8)) + F3(O7) - F6(O8))) - O8 = 0
  • Durch Einsetzen der Funktionen folgt hieraus:
    Gl. 1:
    ∫1/J.[ML(t) + Mr0 sign ω(t) + ψ IA(t) - Mr1 ω(t)] dt - ω(t) = 0
  • Gl. 2:
    ∫1/LA.[UA(t) - RA IA(t) - ψ ω(t)] dt - IA(t) = 0
  • Durch Differentation wird hieraus erzeugt:
    Gl. 3:
    1/J.[ML(t) + Mr0 sign ω(t) + ψ IA(t) - Mr1 ω(t)] - ω'(t) = 0
  • Gl. 4:
    1/LA.[UA(t) - RA IA(t) - ψ ω(t)] - IA'(t) = 0
  • Als nächstes werden aus den bislang gewonnen Paritätsgleichungen weitere generiert. Ziel ist hierbei, daß die Wissensbasis pro bekannter Größe des Modells eine Paritätsgleichung umfaßt, in der diese bekannte Größe nicht auftritt. Aus den bereits erzeugten Paritätsgleichungen werden hierfür durch Umformen und Einsetzen neue erzeugt.
  • Im Beispiel der Fig. 5 und Fig. 15 sind die bekannten Größen O7 = IA(t), O8 = ω(t), O12 = ML(t) und O13 = UA(t). Bislang wurden die Paritätsgleichungen Gl. 3 und Gl. 4 erzeugt. In Gl. 3 tritt O13 = UA(t) nicht auf, in Gl. 4 O12 = ML(t) nicht auf. Um eine Gleichung Gl. 5 zu erzeugen, in der O7 nicht auftritt, wird z. B. Gl. 3 nach O7 = IA(t) aufgelöst und differenziert. Das Ergebnis wird in Gl. 4 eingesetzt, was Gl. 5 liefert. Entsprechend wird eine Gleichung Gl. 6 erzeugt, in der O8 = ω(t) nicht auftritt, indem Gl. 4 nach ω(t) aufgelöst wird, differenziert wird und das Ergebnis in Gl. 3 eingesetzt wird.
  • Um die erfindungsgemäß erzeugten Paritätsgleichungen in der Wissensbasis eines Diagnosesystems verwenden zu können, wird aus ihnen vorzugsweise ein Quellprogramm in einer Programmiersprache erzeugt, die zur Laufzeit ausgeführt werden kann. Falls das Diagnosesystem vollautomatisch ein Fahrzeug diagnostiziert und an Bord des Fahrzeugs oder in einer Werkstatt installiert ist, ist diese Programmiersprache zweckmäßigerweise ANSI-C. Beispielweise mit Hilfe eines symbolischen Gleichungslösers läßt sich aus symbolischen Gleichungen ein ausführbares Programm in ANSI-C automatisch generieren. Hierfür ist es erforderlich, für zeitliche Ableitungen eigene Variable zu verwenden.
  • Aus der oben erwähnten Gl. 3:
    1/J.[ML(t) + Mr0 sign ω(t) + ψ IA(t) - Mr1 ω(t)] - ω'(t) = 0
    wird beispielsweise die folgende C-Funktion generiert:


  • Für die zeitliche Ableitung ω'(t) wird eine eigene Variable omegadot verwendet.
  • Eine Ausführungsform der Erfindung schlägt vor, anschließend eine Matrix zu erzeugen, die die Zusammenhänge zwischen Parititätsgleichungen und den bekannten Größen darstellt. Jede Zeile der Matrix steht für eine Paritätsgleichung, jede Spalte für eine bekannte Größe. In die Matrix wird in der Zeile i und der Spalte j eine 1 eingetragen, wenn in der Paritätsgleichung Nr. i die bekannte Größe Nr. j auftritt, ansonsten eine 0.
  • Im Falle der gerade erzeugten Gleichungen sieht diese Matrix wie folgt aus:
    Die durch das erfindungsgemäße Verfahren erzeugte Wissensbasis ist ein Teil eines Diagnosesystems, das dasjenige technische System diagnostiziert, welches durch das Modell mit Blockschaltbildern beschrieben ist, aus dem die Paritätsgleichungen erzeugt werden. Die anderen Bestandteile des Diagnosesystems hängen nicht vom Modell ab, die meisten Bestandteile lassen sich für verschiedene technische Systeme wiederverwenden.
  • Ein weiterer Bestandteil des Diagnosesystems ist die Sensorik, die die aktuellen Werte der gemessenen Größen mit Hilfe von Meßwertaufnehmer liefert. Ein bevorzugtes Anwendungsgebiet ist die vollautomatische Diagnose von Teilsystemen von Fahrzeugen, z. B. von mechatronischen Aktoren. In diesen Anwendungen werden alle Meßwerte vollautomatisch durch Sensoren erfaßt. Das Verfahren läßt sich auch für die Erzeugung einer Wissensbasis für ein Diagnosesystem anwenden, das Werte von Größen des technischen Systems vom Benutzer erfragt. In diesem Fall umfaßt das Diagnosesystem zusätzlich ein Bestandteil, das Werte von einem Benutzer erfragt.
  • Die Sensoren und evtl. der Benutzer liefern Roh-Meßwerte. Die Meßwertaufbereitung führt eine Glättung von Meßwerten durch, die von Sensoren geliefert werden, und führt die erforderlichen numerischen Differentationen durch, wenn in einer Paritätsgleichung Ableitungen nach der Zeit auftreten.
  • Vorzugsweise wird eine variable Größe, von der eine zeitliche Ableitung in einer Paritätsgleichung auftritt, dadurch numerisch differenziert, daß die variable Größe durch eine einfacher zu handhabende Funktion approximiert wird und die zeitliche Ableitung der approximierenden Funktion anstelle der variablen Größe benutzt wird. Eine Ausführungsform wird am Beispiel der Winkelgeschwindigkeit ω(t) in Fig. 5 erläutert. In einer Paritätsgleichung kommt, so das Beispiel, die zweite Ableitung ω"(t) vor. Benötigt wird eine Schätzung ω"(t0) für einen Zeitpunkt t0. Die variable Größe ω(t) wird durch ein Polynom P lokal in t0 approximiert. Bei der Auslegung des Diagnosesystems werden die beiden Parameter Anzahl der für die Schätzung verwendeten Roh-Meßwerte und Grad des Polynoms einmal festgelegt, sie bleiben im laufenden Betrieb des Diagnosesystems unverändert. Die beiden Parameter werden vorzugsweise so festgelegt, daß die Paritätsgleichung für das fehlerfreie technische System gleich Null oder wenigstens möglichst nahe Null ist, wenn die nullte, erste und zweite Ableitung [ω(t0), ω'(t0), ω"(t0)] der variablen Größe ω durch die nullte, erste bzw. zweite Ableitung des numerisch bestimmten Polynoms [p(t0), p'(t0), p"(t0)] ersetzt wird.
  • Während einer Diagnose sind als nächstes die aufbereiteten Meßwerte auszuwerten. Hierfür werden als erstes diejenigen Paritätsgleichungen identifiziert, die ungleich Null sind. Eine Paritätsgleichung ungleich Null wird oft als Residuum bezeichnet. Da im fehlerfreien Fall alle Paritätsgleichungen gleich Null sind, liefern die Residuen Hinweise auf die fehlerhaften Komponenten. In der Regel ist bei der Identifizierung der Residuen insbesondere zu berücksichtigen, daß Sensorwerte durch Rauschen überlagert sein können, daß Sensoren ungenau arbeiten, daß Meßwerte quantisiert werden, daß die numerische Differentation z. B. durch Approximation zu Rechenfehlern führt und daß das Modell nicht exakt das ungestörte technische System beschreibt, weil bei der Modellierung Vereinfachungen durchgeführt wurden.
  • Eine Vorgehensweise, um diesen Problemen zu begegnen, ist die, daß das Diagnosesystem für mehrere Zeitpunkte die Paritätsgleichungen und dann für jede Paritätsgleichung den Mittelwert über diese Zeitpunkte bestimmt. Der Mittelwert wird mit einer vorgegebenen Schranke verglichen. Ist der Mittelwert einer Paritätsgleichung betragsgrößer als die Schranke, so stellt die Paritätsgleichung ein Residuum dar.
  • Bei einer alternativen Ausführungsform werden die Paritätsgleichungen als Zufallsvariablen aufgefaßt. Mit Hilfe der Meßwerte wird für jede Paritätsgleichung ein statistischer Test durchgeführt, wobei vorzugsweise die Nullhypothese ist, daß die Zufallsvariable für die Paritätsgleichung normalverteilt ist und der Erwartungswert gleich Null ist. Im Fehlerfall ist die Nullhypothese verletzt, oft deshalb, weil die Paritätsgleichung eine deterministische Größe wird.
  • Eine dritte Ausführungsform schlägt die Anwendung von Fuzzy- Logik vor. Für jede Paritätsgleichung werden linguistische Variable wie "kleiner Null", "nahe Null" und "größer Null" definiert.
  • Die gerade vorgestellten Ausführungsformen setzen voraus, daß sich alle in den Paritätsgleichungen auftretenden Größen messen lassen. Falls dies nicht der Fall ist, werden vorzugsweise unbekannte Größen aus bekannten Größen näherungsweise bestimmt. Der Fachmann kennt z. B. unter dem Stichwort "unknown input observer" Verfahren, um die Werte unbekannter Eingangsgrößen aus denen bekannter Eingangsgrößen zu schätzen. Ein derartiges Verfahren wird in P. M. Frank, J. Wuennenberg: "Robust Fault Diagnosis Using Unknown Input Observer Schemes". In: Patton, Frank, Clarke: "Fault Diagnosis in Dynamic Systems". Prentice Hall, 1989, pp. 46-98 vorgestellt.
  • Falls mindestens ein Residuum identifiziert wurde, steht fest, daß am technischen System ein Fehler aufgetreten ist. Nachdem die Residuen identifiziert worden sind, wird ein logischer Schluß von den Residuen auf die Fehler an Komponenten durchgeführt. Eine Ausführungsform der Erfindung schlägt vor, die Spalten der oben beschriebenen Matrix für die Zusammenhänge zwischen Parititätsgleichungen und den bekannten Größen mit den Residuen zu vergleichen. Falls n Paritätsgleichungen erzeugt worden sind, wird ein Vektor mit n Elementen erzeugt. Für i = 1, . . ., n ist das Element Nr. i dieses Vektors gleich 1, wenn die Paritätsgleichung Nr. i ungleich 0 ist, ansonsten gleich 0. Dieser Vektor wird mit den Spalten der Matrix für den Zusammenhang verglichen. Stimmt der Vektor mit der Spalte Nr. j überein, so beeinflußt der vorliegende Fehler die gemessene Größe Nr. j.
  • Andere Vorgehensweisen, um von Residuen auf Fehler zu schließen, sind z. B. aus Andreas Heinzelmann, Produktintegrierte Diagnose komplexer mobiler Systeme, VDI- Fortschritts-Berichte, Reihe 12, Nr. 391, VDI-Verlag, 1999 bekannt.
  • Das erfindungsgemäße Verfahren kann auch zur Parameterschätzung, insbesondere während des Entwurfs eines Reglers für das durch ein Modell mit Blockschaltbildern beschriebene technische System, verwendet werden. Hierfür werden viele Sensoren im technischen System plaziert, die variable Größen messen, die von unbekannten Parametern beeinflußt werden. Mit dem erfindungsgemäßen Verfahren werden Paritätsgleichungen erzeugt. Vorzugsweise umfassen die Startknoten diejenigen Knoten des gerichteten Graphen, deren Ausgangsgrößen bekannt sind. Das erfindungsgemäße Verfahren liefert dann in der Regel mehr Paritätsgleichungen als das Modell unbekannte Parameter hat. In die Paritätsgleichungen werden die Werte der beim fehlerfreien technischen System gemessenen Ausgangsgrößen eingesetzt. Alle Paritätsgleichungen sind gleich 0. Durch das Einsetzen der Werte entsteht ein überbestimmtes Gleichungssystem mit den unbekannten Parametern des Modells als einzige Unbekannte. Durch eine Ausgleichsrechnung, z. B. nach der Methode der kleinsten Quadratsumme, werden Schätzwerte für die Parameter ermittelt.

Claims (29)

1. Verfahren zur automatischen Erzeugung einer Wissensbasis eines Diagnosesystem für ein technisches System, aus einem Modell des technisches Systems, dadurch gekennzeichnet, daß
das Modell Blockschaltbilder mit Blöcken umfaßt,
mindestens ein Block seinerseits durch ein Blockschaltbild beschrieben ist,
mindestens ein Blockschaltbild elementare Blöcke umfaßt,
jeder elementare Block mit mindestens einer Eingangsgröße durch eine Funktion beschrieben ist,
mindestens ein elementarer Block durch eine nichtlineare Funktion beschrieben ist,
unter Verwendung von Funktionen von Blöcken sowie von durch Blockschaltbildern beschriebene Verbindungen zwischen Blöcken Gleichungen zwischen Größen des Modells erzeugt werden,
mindestens eine Gleichung durch Umformschritte zu einer Paritätsgleichung umgeformt wird
und die dergestalt erzeugten Paritätsgleichungen als Teil der Wissensbasis verwendet werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß das Diagnosesystem das technische System vollautomatisch unter Verwendung mindestens eines Sensors überwacht und/oder diagnostiziert.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß
das technische System eine mobile Vorrichtung, insbesondere ein Verkehrs- oder Transportmittel, ist
und das Diagnosesystem und der Sensor sich an Bord der mobilen Vorrichtung befinden.
4. Verfahren nach Anspruch 1 oder Anspruch 2, dadurch gekennzeichnet, daß
das technische System eine mobile Vorrichtung, insbesondere ein Verkehrs- oder Transportmittel, ist,
sich der Sensor an Bord der mobilen Vorrichtung und das Diagnosesystem außerhalb der mobilen Vorrichtung befinden,
sich an Bord der mobilen Vorrichtung ein Datenspeicher befindet, in dem ein vom Sensor erfaßter Meßwert abgespeichert wird,
und während einer Diagnose der Meßwert aus dem Datenspeicher ausgelesen wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß in jeder Paritätsgleichung eine Ausgangsgröße eines elementaren Blocks auftritt, deren Werte im laufenden Betrieb des technischen Systems oder während einer Suche nach Fehlern am technischen System ermittelt werden.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß mindestens ein Umformschritt unter Verwendung eines symbolischen Gleichungslösers durchgeführt wird.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß
in mindestens einer Gleichung mindestens ein Platzhalter für die Funktion eines Blocks auftritt
und der Platzhalter und die Funktion des Blocks abgespeichert werden.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß die Funktion des Blocks durch ein Kennfeld beschrieben ist.
9. Verfahren nach Anspruch 7 oder Anspruch 8, dadurch gekennzeichnet, daß eine Bibliothek mit Typen von Blöcken abgespeichert wird und die Funktion einen Verweis auf einen dieser Block-Typen umfaßt.
10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß
in mindestens einer erzeugten Paritätsgleichung ein Integral über der Zeit auftritt
und die Paritätsgleichung nach der Zeit differenziert wird.
11. Verfahren nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß
für eine Ausgangsgröße mindestens eines elementaren Blocks, die während einer Diagnose ermittelt werden kann,
eine erste Paritätsgleichung, in der die Ausgangsgröße nicht auftritt, erzeugt wird, indem
eine zweite Paritätsgleichung nach der Ausgangsgröße aufgelöst wird
und in einer dritten Paritätsgleichung die Ausgangsgröße durch die so umgeformte zweite Paritätsgleichung ersetzt wird.
12. Verfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, daß
ein elementarer Block höchstens eine Ausgangsgröße hat,
für einen elementaren Block mit einer Ausgangsgröße und mindestens einer Eingangsgröße eine Funktion festgelegt ist, die die Ausgangsgröße des Blocks als Funktion der Eingangsgröße beschreibt, wobei diese Funktion kein Zustandsautomat ist,
für einen elementaren Block mit einer Ausgangsgröße und ohne Eingangsgröße eine Funktion festgelegt ist, die den zeitlichen Verlauf der Ausgangsgröße festlegt,
und daß folgende Schritte ausgeführt werden:
a) Erzeugen eines gerichteten Graphen, dessen Knoten die elementaren Blöcke der Blockschaltbilder und dessen Kanten die Verbindungen zwischen den elementaren Blöcken sind,
b) Auswählen einer bestimmten Menge von Knoten des gerichteten Graphen als Startknoten, wobei jeder Startknoten eine Ausgangsgröße und mindestens eine Eingangsgröße hat,
c) Für jeden Startknoten Durchführen der Schritte d) bis f) mit
d) Erzeugen einer initialen Gleichung aus der Funktion des Startknotens,
e) Erzeugen einer finalen Gleichung aus der initialen Gleichung durch Ausführen von Umformschritten, wobei in der finalen Gleichung ausschließlich Ausgangsgrößen von solchen Knoten vorkommen, die ein Abbruchkriterium erfüllen, und
f) Erzeugen einer Paritätsgleichung durch Umformen der finalen Gleichung dergestalt, daß eine Seite der Gleichung gleich Null ist.
13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, daß als Startknoten diejenigen Knoten gewählt werden, die mehrere Eingangsgrößen haben.
14. Verfahren nach Anspruch 12 oder Anspruch 13, dadurch gekennzeichnet, daß ein Knoten mindestens dann das Abbruchkriterium erfüllt, wenn der Wert seiner Ausgangsgröße während einer Diagnose ermittelbar ist.
15. Verfahren nach einem der Ansprüche 12 bis 14, dadurch gekennzeichnet, daß
bei einem Umformschritt die Ausgangsgröße eines Knotens dadurch ersetzt wird, daß
entweder die durch den vorangegangenen Umformschritt erzeugte Gleichung nach der Ausgangsgröße des Knotens aufgelöst und die aufgelöste Gleichung in die Funktion des Nachfolgers des Knotens eingesetzt wird
oder in der durch den vorangegangenen Umformschritt erzeugten Gleichung die Ausgangsgröße des Knotens durch die Funktion des Knotens ersetzt wird.
16. Verfahren nach einem der Ansprüche 12 bis 15, dadurch gekennzeichnet, daß der gerichtete Graph unter Verwendung einer Adjazenz-Matrix abgespeichert wird.
17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß eine Gesamt-Adjazenz-Matrix für den Graphen durch folgende Verfahrensschritte erzeugt wird:
A) Erzeugen einer eindeutigen Kennung für jeden Block in einem Blockschaltbild des Modells
B) Erzeugen eines Modell-Hierarchie-Baums, dessen Blätter elementare Blöcke und dessen anderen Knoten Blöcke sind, die durch Blockschaltbilder beschrieben sind, und in dem ein erster Knoten Nachfolger eines zweiten Knotens ist, wenn der zweite Knoten ein Block ist, der durch ein Blockschaltbild beschrieben ist, in dem der erste Knoten vorkommt,
C) Für jedes Blockschaltbild Erzeugen einer Teil-Adjazenz- Matrix und einer Tabelle für das Blockschaltbild, wobei die Tabelle die Zeilennummern der Teil-Adjazenz-Matrix mit den Kennungen der Blöcke im Blockschaltbild verbindet.
D) Erzeugen einer Gesamt-Adjazenz-Matrix, indem für jeden Knoten des Modell-Hierarchie-Baums, der mindestens einen Vorgänger hat, die Teil-Adjazenz-Matrix für den Knoten in die Teil-Adjazenz-Matrix des Vorgängers eingesetzt wird,
E) Erzeugen von noch fehlenden Einträgen in der Gesamt- Adjazenz-Matrix für Verbindungen zwischen elementaren Blöcken durch Analyse des Blockschaltbildes.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß
die Erzeugung der Gesamt-Adjazenz-Matrix bei den Blättern des Modell-Hierarchie-Baums beginnt
und dann endet, wenn die Wurzel des Modell-Hierarchie-Baums erreicht ist.
19. Verfahren nach einem der Ansprüche 16 bis 18 dadurch gekennzeichnet, daß mindestens eine Adjazenz-Matrix als sparse matrix abgespeichert wird.
20. Verfahren nach einem der Ansprüche 1 bis 19, dadurch gekennzeichnet, daß
ermittelt wird, welche Fehler erkennbar und/oder welche isolierbar sind, wobei
ein Fehler dann erkennbar ist, wenn bei Auftreten dieses Fehlers mindestens eine Paritätsgleichung ungleich Null wird
und ein Fehler dann isolierbar ist, wenn dieser Fehler durch Auswertung aller erzeugten Paritätsgleichungen von allen anderen am technischen System möglichen Fehler unterschieden wird.
21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, daß
mindestens ein möglicher Fehler am technischen System in das Modell des technischen Systems aufgenommen wird,
in das Modell und in die Paritätsgleichungen dieselben Werte für Eingangsgrößen eingesetzt werden
und die Werte für Ausgangsgrößen, die das Modell vorhersagt, in die Paritätsgleichungen eingesetzt werden.
22. Verfahren nach einem der Ansprüche 1 bis 19, dadurch gekennzeichnet, daß
das Modell unbekannte Parameter aufweist,
Paritätsgleichungen mit mindestens einem unbekannten Parameter erzeugt werden,
Meßwerte bestimmt und in die Paritätsgleichungen eingesetzt werden
und durch eine Ausgleichsrechnung Näherungswerte für die unbekannten Parameter ermittelt werden.
23. Verwendung des Verfahren nach Anspruch 20 oder Anspruch 21 für die Plazierung von Sensoren in dem technischen System, deren Meßwerte von dem Diagnosesystem ausgewertet werden, wobei festgelegt wird, welche Blöcke je eine Ausgangsgröße haben, deren Wert während der Diagnose durch einen der Sensoren ermittelt werden kann.
24. Verwendung des Verfahren nach Anspruch 22 für die Schätzung von Parametern des Modells des technischen Systems.
25. Verwendung des Verfahren nach Anspruch 22 für den Entwurf eines Reglers für das technische System.
26. Vorrichtung zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 22 mit Mitteln
zum Einlesen eines Modells, das Blockschaltbilder umfaßt,
zur Erzeugung eines gerichteten Graphen
und zur Erzeugung von Paritätsgleichungen.
27. Computerprogramm-Produkt, das direkt in den internen Speicher eines Computers geladen werden kann und Softwareabschnitte umfaßt, mit denen ein Verfahren nach einem der Ansprüche 1 bis 22 ausgeführt werden kann, wenn das Produkt auf einem Computer läuft.
28. Computerprogramm-Produkt, das auf einem von einem Computer lesbaren Medium gespeichert ist und das von einem Computer lesbare Programm-Mittel aufweist, die den Computer veranlassen, ein Verfahren nach einem der Ansprüche 1 bis 22 auszuführen.
DE2001133670 2001-07-11 2001-07-11 Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem Withdrawn DE10133670A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2001133670 DE10133670A1 (de) 2001-07-11 2001-07-11 Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2001133670 DE10133670A1 (de) 2001-07-11 2001-07-11 Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem

Publications (1)

Publication Number Publication Date
DE10133670A1 true DE10133670A1 (de) 2003-01-30

Family

ID=7691388

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001133670 Withdrawn DE10133670A1 (de) 2001-07-11 2001-07-11 Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem

Country Status (1)

Country Link
DE (1) DE10133670A1 (de)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10307344A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur dezentralen On-Board-Diagnose für Kraftfahrzeuge
DE10307365A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur Fehlerdiagnose bei Fahrzeugen
DE10307343A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur zentralen On-Board-Diagnose für Kraftfahrzeuge
DE10307342A1 (de) * 2003-02-21 2004-09-16 Volkswagen Ag Vorrichtung und Verfahren zur modellbasierten On-Board-Diagnose
WO2007065571A1 (de) * 2005-12-09 2007-06-14 Abb Technology Ag System und verfahren zur automatischen prüfung von planungsergebnissen
US9617948B2 (en) 2012-03-16 2017-04-11 Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr Method for optimizing an internal combustion engine
EP2500557A3 (de) * 2011-03-15 2018-05-02 Delphi Technologies, Inc. Verfahren und Vorrichtung zur Erkennung von Gassensorfehlern
CN110176808A (zh) * 2019-06-10 2019-08-27 国网福建省电力有限公司泉州供电公司 基于事件驱动和有向图搜索的调控远方操作故障诊断方法
CN113060614A (zh) * 2021-03-16 2021-07-02 重庆市特种设备检测研究院 电梯驱动主机故障诊断方法、装置及可读存储介质
DE102020003569B3 (de) 2020-06-07 2021-08-12 Hochschule für Technik, Wirtschaft und Kultur Leipzig Verfahren und Einrichtung zur Ermittlung des Zustands einer technischen Anlage oder eines technischen Betriebsmittels

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10307344B4 (de) * 2003-02-21 2005-09-29 Volkswagen Ag Vorrichtung und Verfahren zur dezentralen On-Board-Diagnose für Kraftfahrzeuge
DE10307344A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur dezentralen On-Board-Diagnose für Kraftfahrzeuge
DE10307343A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur zentralen On-Board-Diagnose für Kraftfahrzeuge
DE10307342A1 (de) * 2003-02-21 2004-09-16 Volkswagen Ag Vorrichtung und Verfahren zur modellbasierten On-Board-Diagnose
DE10307342B4 (de) * 2003-02-21 2005-08-11 Volkswagen Ag Vorrichtung und Verfahren zur modellbasierten On-Board-Diagnose
DE10307365B4 (de) * 2003-02-21 2005-08-11 Volkswagen Ag Vorrichtung und Verfahren zur Fehlerdiagnose bei Fahrzeugen
DE10307365A1 (de) * 2003-02-21 2004-09-09 Volkswagen Ag Vorrichtung und Verfahren zur Fehlerdiagnose bei Fahrzeugen
DE10307343B4 (de) * 2003-02-21 2005-10-06 Volkswagen Ag On-Board-Diagnosevorrichtung und On-Board-Diagnoseverfahren für Kraftfahrzeuge
WO2007065571A1 (de) * 2005-12-09 2007-06-14 Abb Technology Ag System und verfahren zur automatischen prüfung von planungsergebnissen
EP2500557A3 (de) * 2011-03-15 2018-05-02 Delphi Technologies, Inc. Verfahren und Vorrichtung zur Erkennung von Gassensorfehlern
US9617948B2 (en) 2012-03-16 2017-04-11 Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr Method for optimizing an internal combustion engine
CN110176808A (zh) * 2019-06-10 2019-08-27 国网福建省电力有限公司泉州供电公司 基于事件驱动和有向图搜索的调控远方操作故障诊断方法
CN110176808B (zh) * 2019-06-10 2022-05-17 国网福建省电力有限公司泉州供电公司 基于事件驱动和有向图搜索的调控远方操作故障诊断方法
DE102020003569B3 (de) 2020-06-07 2021-08-12 Hochschule für Technik, Wirtschaft und Kultur Leipzig Verfahren und Einrichtung zur Ermittlung des Zustands einer technischen Anlage oder eines technischen Betriebsmittels
CN113060614A (zh) * 2021-03-16 2021-07-02 重庆市特种设备检测研究院 电梯驱动主机故障诊断方法、装置及可读存储介质

Similar Documents

Publication Publication Date Title
EP0966703B1 (de) Verfahren zur rechnergestützten fehleranalyse von sensoren und/oder aktoren in einem technischen system
EP3451202B1 (de) Verfahren zum erzeugen eines auf einem testgerät ausführbaren modells eines technischen systems und testgerät
EP3398092A1 (de) Verfahren zum konfigurieren einer co-simulation für ein gesamtsystem
EP2897011A1 (de) Verfahren und Simulationsanordnung zur Simulation einer automatisierten Industrieanlage
WO2021058223A1 (de) Verfahren zur effizienten, simulativen applikation automatisierter fahrfunktionen
DE19537694A1 (de) Verfahren zur Überwachung einer Maschine oder Anlage
DE102019209540A1 (de) Verfahren und Vorrichtung zur optimalen Aufteilung von Testfällen auf unterschiedliche Testplattformen
DE10133670A1 (de) Verfahren zur automatischen Erzeugung einer Wissensbasis für ein Diagnosesystem
DE102014101321A1 (de) Testeinrichtung zum Test eines virtuellen Steuergeräts
EP3622451A1 (de) Produktreifebestimmung eines technischen systems und insbesondere eines autonom fahrenden fahrzeugs
DE102020210789A1 (de) Analyse eines neuronalen Netzes für ein Fahrzeug
WO2003029978A2 (de) Verfahren und system zur bearbeitung von fehlerhypothesen
DE112013006981T5 (de) Steuersystem Prüfmittel
DE102007047421A1 (de) Verfahren zum Beschreiben eines Verhaltens einer technischen Einrichtung
EP3979009A1 (de) Erzeugen eines vereinfachten modells für xil-systeme
EP3933593A1 (de) Verfahren und computerprogramm zum testen eines technischen systems
DE102020102996A1 (de) Verfahren für einen integrierten Entwurf zur Modellierung, Simulation und Test einer Echtzeit-Architektur innerhalb einer modellbasierten System- und Softwareentwicklung
DE102020206321A1 (de) Verfahren und Vorrichtung zum Prüfen eines technischen Systems
EP2194457B1 (de) Vorrichtung zum Erzeugen eines markierten Referenzdatenstroms
WO2014122208A1 (de) Verfahren zum prüfen oder identifizieren einer modellstruktur
WO1999038024A1 (de) Verfahren zur computergestützten optimierung von prüfspezifikationen und minimierung von prüfsoftware
WO1999017238A1 (de) Reduktionsverfahren für simulationen zur wissensdatenerzeugung
DE102022120754A1 (de) Verfahren und System zum Ausführen eines virtuellen Tests
DE10131438B4 (de) Verfahren zur Entwicklung einer technischen Komponente
DE102005023145B4 (de) Verfahren zum Simulieren und Untersuchen einer elektrischen Schaltung und Speichermedium

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee