-
Die Überwachung sicherheitsrelevanter Eigenschaften von Anlagen, beispielsweise von Brennkraftmaschinen, wird heute durch eine Ebenenstruktur gewährleistet, die auf den sicherheitsrelevanten Funktionsumfang der Anlage im Steuergerät abgebildet ist. Ein Beispiel ist das EGAS(Elektronisches Gaspedal)-Überwachungskonzept entsprechend den Empfehlungen des EGAS-AK des VDA (Verein der Deutschen Automobilindustrie).
-
Schwierig ist ein derartiges rein ebenenbezogenes Konzept sowohl bei Software-Strukturen, deren Bereitstellung auf verschiedene Software-Lieferanten verteilt ist, als auch bei verteilten Hardware-Strukturen, beispielsweise bei parallelen oder redundanten Strukturen, in denen jeweils Teile der sicherheitsrelevanten Funktionen ausgeführt werden. Weiter sieht das EGAS-Überwachungskonzept eine unabhängige Hardware zur Überwachung von Prozessorfunktionen des funktionsausführenden Rechners vor. Danach muss, wenn unterschiedliche Funktionen von unterschiedlichen Steuergeräten ausgeführt werden, für jedes dieser Steuergeräte eine unabhängige Hardwareeinrichtung für die Überwachung vorgesehen werden, was einen erhöhten Aufwand darstellt.
-
Bisher konnte bei Softwarestrukturen die Synchronisation und die Problematik der Freigabe oder Umsetzung von Know-how, beispielsweise Schnittstellendefinitionen zur Definition der Überwachungsstruktur, nicht zufrieden stellend gelöst werden. Verteilte Hardware-Strukturen sind noch nicht verbreitet, werden aber im Zuge der so genannten AUTOSAR-Initiative (Automotive Open System Architecture) an Bedeutung gewinnen.
-
Die Gruppierung von Funktionen, beispielsweise Zündung oder Einspritzung, erfolgt derzeit in so genannten Aggregaten. So kann beispielsweise die gesamte Funktionalität, die mit der Erfassung und Diagnose des Fahrerwunsches über das Gaspedal befasst ist, in einer Gruppe namens DRRQ (driver request, Fahrer-Anforderung) organisatorisch zusammen gefasst werden. Diese Gruppe enthält auch die Diagnosen der Komponente Gaspedal. Da die Funktion der Fahrerwunscherfassung eine sicherheitsrelevante Funktion ist, gibt es bisher in einer Überwachungs-Funktionsgruppe ein Modul, das mit der Absicherung der Funktionen im Aggregat DRRQ befasst ist. Werden nun die Funktionen von DRRQ von einem anderen Hersteller als Produkt (black box) geliefert oder werden diese Funktionen in einem anderen Steuergerät (z. B. carbody controller) ausgeführt, ist die technische und organisatorische Synchronisation der Überwachung schwierig, wenn nicht gar unmöglich, weil etwa zeitliche Anforderungen, beispielsweise Echtzeitkriterien, vorliegen, die durch einen Datenaustausch zwischen Steuergeräten verletzt werden können.
-
In der
DE 198 41 260 A1 ist ein Verfahren zum Erkennen von Fehlerzuständen von Teilsystemen eines Kraftfahrzeugs beschrieben, wobei die Teilsysteme einer Vielzahl von lokalen Diagnosemodulen zugeordnet sind. Die lokalen Diagnosemodule kommunizieren mit einem zentralen Diagnosemodul. Das zentrale Diagnosemodul ist derart mit dem lokalen Diagnosemodul verknüpft, dass im zentralen Diagnosemodul Zwischenzustände der lokalen Diagnosemodule verfügbar sind, die zwischen einem Normalzustand und einem Fehlerzustand liegen. Die zentrale Handhabung von Fehlerzuständen erleichtert die Konfiguration des Diagnosesystems. Durch die Behandlung von Zwischenzuständen ist eine besonders feine Auflösung bei den Diagnosen möglich.
-
Aus der
WO 03/056427 A2 sind eine Verfahren und eine Vorrichtung zur Steuerung einer Funktionseinheit eines Kraftfahrzeugs bekannt, wobei bei dem Verfahren in einem Funktionsprogramm ein Funktionsablauf durchgeführt wird. Das Funktionsprogramm wird dabei von einem Sicherheitsprogramm überprüft, das widerum von einem Überwachungsmodul überwacht wird. Das Funktionsprogramm weist wie das Sicherheitsprogramm einen modularen Aufbau auf. Die Überwachung des Sicherheitsprogramms wird demnach in entsprechende Anzahl der Module in mehreren Stufen durchgeführt. Dabei liefern die einzelnen Sicherheitsmodule des Sicherheitsprogramms jeweils einen Teilbeitrag und alle Teilbeiträge werden zur Auswertung dem Überwachungsmodul zugeleitet.
-
Die Aufgabe der vorliegenden Erfindung besteht darin, einen neuen Weg zu finden, mit dem sich sicherheitsrelevante Strukturen über herstellerseitig bestehende oder produktspezifische Einschränkungen bei Softwareentwicklung und Hardwareplattformen hinweg synchronisieren lassen.
-
Diese Aufgabe wird durch die Erfindungen mit den Merkmalen der unabhängigen Ansprüche gelöst. Vorteilhafte Weiterbildungen der Erfindungen sind in den Unteransprüchen gekennzeichnet. Der Wortlaut sämtlicher Ansprüche wird hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht.
-
Erfindungsgemäß wird eine Steuereinrichtung für eine Brennkraftmaschine vorgeschlagen. Die Steuereinrichtung kann aus einer Mehrzahl von Mikroprozessoren, aus einer Mehrzahl von einzelnen Steuergeräten oder aus einem einzelnen Steuergerät gebildet sein. Im folgenden wird in der Regel kurz von ”Steuergerät” gesprochen.
-
Das Steuergerät weist eine Mehrzahl von Funktionsaggregaten auf. Jedes sicherheitsrelevante Funktionsaggregat enthält mindestens ein Funktionsmodul und mindestens ein Überwachungsmodul. Das Überwachungsmodul ist vom Funktionsmodul separiert und überwacht die Funktion des Funktionsmoduls. Ferner weist das Steuergerät eine übergeordnete Überwachungs-Funktionsgruppe auf. Das Überwachungsmodul hat einen Eintrittspunkt zur Kommunikation mit der übergeordneten Überwachungs-Funktionsgruppe.
-
Darüber hinaus ist eine verteilte Struktur zur Fehlerbearbeitung vorhanden, bei der bei Auftreten eines Fehlers in einem Funktionsmodul eine Fehlerbearbeitung im zugehörigen Überwachungsmodul ausgelöst wird.
-
Die Module können in Hardware oder Software ausgeführt sein, etwa als einzelne Mikrocontroller. Ein Eintrittspunkt kann beispielsweise eine Schnittstelle oder eine programmtechnische Klasse darstellen oder enthalten, die beispielsweise für eine Parameterübergabe oder eine Übergabe im Sinne eines Übertragungsweges geeignet ist.
-
Im Ergebnis werden nach der vorbeschriebenen Struktur eigensichere Strukturen definiert. Es wird ein Großteil der Überwachung durch Module in den Funktions-Aggregaten selbst realisiert. Diese Überwachungsmodule kommunizieren mit der übergeordneten Überwachungs-Funktionsgruppe.
-
Die Vorteile der erfindungsgemäßen Struktur bestehen darin, dass nun eine Funktion als Produkt immer mit den dazugehörigen Überwachungsstrukturen ausgestattet ist. Mithin kann ein Anbieter einer Funktion viel Know-how geheim halten, da er selbst die Überwachungsstrukturen definiert. Es wird sichergestellt, dass die Überwachungsfunktion (übergeordnete Überwachungs-Funktionsgruppe) und die entsprechenden Funktionen bzw. Funktionsaggregate (z. B. DRRQ) stets aufeinander abgestimmt sind.
-
Auch bei verteilter Hardware werden die sicherheitsrelevanten Funktionen und die zugehörige Überwachung konsistent auf derselben Hardware ausgeführt. Dadurch gibt es kurze Signalwege zwischen Funktion und Überwachung. Dies erlaubt ein schnelles Antwortverhalten, also kurze Latenz und hohe Übertragungssicherheit. Wenn darüber hinaus Zugriffe der Überwachung auf die Hardware, beispielsweise A/D-Wandler oder Zeitgeber, nötig sind, ist dies direkt möglich. Damit entstehen signifikante Vorteile im Echtzeitverhalten.
-
Es gelingt durch die Definition von eigensicheren Funktionen diese organisatorisch und technisch optimiert einzusetzen.
-
Mit anderen Worten, es lassen sich insbesondere Anpassungsverluste bei der Entwicklung und unsichtbare Interpretationslücken schon bei Schnittstellendefinitionen vermeiden, die bei herkömmlichen Ansätzen mit dem erforderlichen Know-how-Transfer verbunden sind.
-
Es ist weiters vorgesehen, eine Struktur von verteilten Fehlerreaktionen zu implementieren. Bisher wurde bei erkannten Fehlern im Motorsteuergerät die Fehlerreaktion für diese Einrichtung global ausgelöst, beispielsweise durch Abschalten von leistungsbestimmenden Endstufen mit der Folge eines abgeschalteten Motors oder Triebwerks. Vorteilhafterweise ist vorgesehen, beim Auftreten eines Fehlers in einem der verteilten Steuergeräte, beispielsweise im Pedalsteuergerät mit der Funktion DRRQ, die Fehlerinformation in der übergeordneten Überwachungs-Funktionsgruppe bzw. im Überwachungsmodul so auszuwerten, dass lediglich das jeweilige fehlerhafte Signal, beispielsweise der Pedalwert, auf einen sicheren Wert, z. B. Null, gesetzt wird und die Einrichtung ansonsten mit der verbleibenden Verfügbarkeit genutzt werden kann.
-
Weiterhin kann die Übertragung der sicherheitsrelevanten Signale, insbesondere bei verteilten Steuergeräten derart erfolgen, dass beispielsweise zunächst für den Übertragungsweg zwischen dem jeweiligen Überwachungsmodul und der übergeordneten Überwachungs-Funktionsgruppe ein Sender und ein Empfänger definiert werden. Weiter kann eine sichere Übertragung derart definiert werden, dass für die Sicherheit des Inhalts einer Nachricht, eines Zeitstempels oder Messwertes beispielsweise immer das sendende Steuergerät die Verantwortung trägt. Entsprechend kann definiert werden, dass das empfangende Steuergerät den Übertragungsweg grundsätzlich absichern bzw. plausibilisieren muss. Danach ist also beispielsweise das eigenständige Aggregat DRRQ, das einen Dateninhalt sendet, betreuend für dessen inhaltliche Richtigkeit zuständig bzw. verantwortlich, beispielsweise durch eine geeignete Kodierung oder eine Integritätsprüfung. Die übergeordnete Überwachungs-Funktionsgruppe ist zuständig für den Betrieb der Übertragungsstrecke, beispielsweise für das Bereitstellen einer internen oder externen Datenbusverbindung, für die Signalisierung, für die Einhaltung eines Übertragungsablaufes, eines Zeitverhaltens oder für ähnliche Funktionalitäten.
-
Durch die erfindungsgemäße Definition von eigensicheren Funktionen wird damit sowohl die Herstellung von sicheren Funktionen oder Software als Produkt im Sinne des Produkthaftungsgesetzes als auch die Unterstützung von verteilten Hardwarezellen mit sicheren Eigenschaften, auch im Sinne eines sicheren Produktes, möglich.
-
Die Definition der eigensicheren Funktionen ermöglicht zusätzlich, beispielsweise eine Funktion samt ihrer Überwachungsstrukturen nicht nur flexibel innerhalb eines Systems zu platzieren oder zu verschieben, sondern es ist auch möglich, diese bei vernetzten Systemen sogar über eine sog. Hardwaregrenze hinaus dynamisch relokalisierbar zu halten, d. h. beispielsweise kann eine Motorsteuerungsfunktionalität in die Getriebesteuerungsfunktionalität nach z. B. lastdynamischen Kriterien einer Netzwerktopologie mit verteilten Ressourcen bereichsübergreifend verlagert werden.
-
Mithin erlaubt die Erfindung eine abgestimmte und sichere Entwicklung für eine Anordnung mit sicherheitsrelevanten Funktionen. Die Reifezeit wird verkürzt, die Kosten verringert.
-
Ein Ausführungsbeispiel der vorliegenden Erfindung weist die wesentlichen relevanten Funktionsgruppen einer EGAS-Motorsteuerung und deren Überwachung auf der Basis der Definition der eigensicheren Funktionen auf.
-
Die Steuereinrichtung kann sehr flexibel aufgebaut sein. Insbesondere können mindestens zwei sicherheitsrelevante Funktionsaggregate vorgesehen sein, die auf jeweils eigenständigen Hardware-Komponenten gerechnet werden. D. h. ganze Aggregate oder auch nur einzelne Funktionen können inklusive ihres Überwachungsmoduls über Hardwaregrenzen hinweg verschoben werden. Auf diese Weise ergibt sich eine verteilte Steuereinrichtung.
-
Zur Lösung der Aufgabe dient auch ein Verfahren. Im Folgenden werden die einzelnen Verfahrensschritte näher beschrieben. Die Schritte müssen nicht notwendigerweise in der angegebenen Reihenfolge durchgeführt werden, und das Verfahren kann auch weitere, nicht genannte Schritte aufweisen.
-
Zunächst wird eine Mehrzahl von Funktionsaggregaten zur Steuerung der Anlage ausgebildet, wobei die Funktionsaggregate derart ausgebildet werden, dass jedes Funktionsaggregat ein Funktionsmodul und ein Überwachungsmodul enthält. Die Funktionsaggregate werden derart ausgebildet, dass das Überwachungsmodul vom Funktionsmodul separiert ist. Ferner wird eine übergeordnete Überwachungs-Funktionsgruppe ausgebildet. Im Überwachungsmodul wird ein Eintrittspunkt zur Kommunikation mit der übergeordneten Überwachungs-Funktionsgruppe vorgesehen. Das Überwachen von Fehlern des Funktionsmoduls erfolgt durch das Überwachungsmodul. Ein festgestellter Fehler wird durch das Überwachungsmodul mittels des Eintrittspunkts an das übergeordnete Überwachungsmodul gemeldet.
-
Darüber hinaus ist eine verteilte Struktur zur Fehlerbearbeitung vorhanden, bei der bei Auftreten eines Fehlers in einem Funktionsmodul eine Fehlerbearbetiung im zugehorigen Überwachungsmodul ausgelöst wird.
-
Weitere Einzelheiten und Merkmale der Erfindung ergeben sich aus der nachfolgenden Beschreibung von bevorzugten Ausführungsbeispielen in Verbindung mit den Unteransprüchen. Hierbei können die jeweiligen Merkmale für sich alleine oder zu mehreren in Kombination miteinander verwirklicht sein. Die Erfindung ist nicht auf die Ausführungsbeispiele beschränkt.
-
Die Ausführungsbeispiele sind in den Figuren schematisch dargestellt. Gleiche Bezugsziffern in den einzelnen Figuren bezeichnen dabei gleiche oder funktionsgleiche bzw. hinsichtlich ihrer Funktionen einander entsprechende Elemente. Im Einzelnen zeigt:
-
1 eine schematische Darstellung einer elektronischen Motorsteuerung;
-
2 einen Ausschnitt eines ersten Ebenen-Modells gemäß dem Stand der Technik;
-
3 ein zweites Ebenen Modell gemäß einer ersten Ausführungsform der vorliegenden Erfindung; und
-
4 ein Prinzipschema des Verfahrens zum Überwachen der Funktionssicherheit einer Anlage, insbesondere einer Brennkraftmaschine.
-
In 1 ist das Prinzipschema einer Motorsteuerung 100 dargestellt. Bei der Motorsteuerung 100 erfolgen der Signalfluss 102 von den verschiedenen Sensoren und Sollwertgebern (z. B. Fahrpedaleinstellung, Drosselklappenstellung, Luftmasse, Batteriespannung, Ansauglufttemperatur, Motortemperatur, Klopfintensität, Lambda-Sonden) und der Signalfluss 104 (z. B. Kurbelwellendrehzahl, Nockenwellenstellung, Getriebestufe, Geschwindigkeit) über die Input/Output-Ports 106 und 108 und weiter von den Ports über die Verbindungen 110 und 112 zum Mikrocontroller 114 und seinen Komponenten. Im OTP-Block (One-Time Programmable-Block) 116 ist das Programm gespeichert, welches der Mikrocontroller 114 ausführen soll. Der Datenfluss zwischen Mikrocontroller 114 und OTP-Block 116 erfolgt über die Verbindung 118. Über die Verbindung 120 erfolgt der Datentransfer zwischen dem Mikrocontroller 114 und dem CAN-Bus 122. Der CAN-Bus 122 ermöglicht es, alle Gerte über ein einziges Kabel miteinander zu vernetzen. Der Datentransfer zwischen dem Mikrocontroller 114 und einem Diagnosesystem 124 erfolgt über die Verbindung 126.
-
Der Mikrocontroller 114 mit seinen Komponenten realisiert seine Funktionen auf der Grundlage des im OTP-Block 116 gespeicherten Programms. Nach der Verarbeitung der Signale von den Sensoren und Sollwertgebern 102, 104 im Mikrocontroller 114 erfolgt der weitere Signalfluss vom Mikrocontroller 114 über die Verbindungen 128, 130, 132, 134 und über die Input/Output-Ports 136, 138, 140, 142 zu den verschieden Aktoren 144 (z. B. Zündspulen und Zündkerzen), 146 (z. B. Drosselklappensteller), 148 (z. B. Einspritzventile) und 150 (z. B. Hauptrelais, Motordrehzahlmesser, Kraftstoffpumpenrelais, Reizung Lambda-Sonde, Nockenwellensteuerung, Tankentlüftung, Saugrohrumschaltung, Sekundärluft, Abgasrückführung).
-
Auf Grund einer steigenden Anzahl ihrer zahlreichen Ein- und Ausgangsgrößen sind diese Regelungen in Kraftfahrzeugen sehr komplex, sodass zur Realisierung dieser Aufgaben moderne Regelungssysteme auf der Basis von Mikrocontrollern 114 eingesetzt werden.
-
Da in modernen Fahrzeugen immer zahlreichere unterschiedliche Sensoren zum Einsatz kommen, deren Messdaten zeitnah berücksichtigt werden müssen, ist die Anzahl der Input-/Output-Ports 106, 108, 136, 136, 140, 142 einer Motorsteuerung 100 ständig vergrößert worden. Daher werden zunehmend Mikrocontroller 114 mit sehr hoher Rechenleistung eingesetzt, wobei die Funktionalitäten der Steuergerätesoftware modifizierbar sind, damit sie in effektiver Weise an die spezifischen Bedürfnisse der verschiedenen Benutzer angepasst werden können.
-
In 2 ist ein Bereich des Steuergeräts als ein Ebenenmodell 10 nach Stand der Technik schematisch dargestellt.
-
Das Ebenenmodell 10 weist eine Schicht 20 – die Überwachungs-Funktionsgruppe – auf, die Überwachungsfunktionen ausführt. Auf der Überwachungsschicht 20 nach oben aufbauend, ist eine Funktionsschicht 40 vorgesehen, die weitere Module bzw. Aggregate umfasst und die beiden vorgenannten Schichten 20 und 40 über Eintrittspunkte, wie beispielsweise Eintrittspunkt 60, verbindet. Dabei kann der Eintrittspunkt 60 beispielsweise eine Schnittstelle oder eine Klasse einer Programmiersprache darstellen oder enthalten, die beispielsweise für eine Parameterübergabe oder eine Übergabe im Sinne eines Übertragungsweges geeignet ist. Eine Mehrzahl von Übertragungswegen kann als ein Kanalbündel oder eine Netzwerkverbindung ausgebildet sein, auf dem bzw. der Übertragungsprotokolle eingesetzt werden können.
-
Die Funktionsschicht 40 trägt als Einrichtung sicherheitsrelevante Funktionen, die in der erfindungsgemäßen Ausführungsform beispielhaft ein DRRQ-Aggregat 80 und eine Mehrzahl an weiteren Aggregaten sind, insbesondere ein erstes Aggregat (AGGR_2)151, sowie weitere Aggregate AGGR_x 152, AGGR_y 153 und AGGR_z 160.
-
In der Überwachungsschicht 20 sind eine Mehrzahl an (gestrichelt dargestellten) Modulen vorgesehen, beispielsweise ein Modul 180. Dabei trägt oder enthält die Schicht 20 die jeweiligen Überwachungsfunktionen des DRRQ-Aggregates 80 bzw. der sonstigen Aggregate 151, 152, 153 und 160.
-
3 zeigt die erfindungsgemäße Ausführungsform gemäß einem Ebenenmodell 200. Im Vergleich zu dem Ebenenmodell 10 gemäß 2 ist das DRRQ-Aggregat 220 und ein aus einer Mehrzahl an Aggregaten ausgewähltes Aggregat AGGR_2 240 gekapselt aufgebaut, so dass die Module für die sicherheitsrelevante Funktion und die Überwachungsfunktion blockartig verbunden wurden. Dabei weist das Aggregat 220 einen internen Trennungsbereich 320 auf, der innerhalb des Aggregats eine Unterteilung zwischen der sicherheitsrelevanten Funktion 340 und der Überwachungsfunktion 360 vornimmt. Mithin werden im DRRQ-Aggregat 220 als ein eigenständiges Modul oberhalb des Trennungsbereiches 320, der beispielsweise als Schnittstellenbereich ausgebildet ist, ein Funktionsmodul 340 für sicherheitsrelevante Funktionen und unterhalb ein Überwachungsmodul 360 mit Überwachungsfunktionen ausgebildet.
-
Das Aggregat DRRQ 220 und die Mehrzahl der sonstigen Aggregate weisen weiter die Besonderheit auf, dass sich in der Ebene der jeweiligen Überwachungsfunktion jeweils ein Eintrittspunkt befindet, wobei hier exemplarisch der Eintrittspunkt 520 herausgegriffen wurde, mit dem die jeweilige Überwachungsfunktion des DRRQ-Aggregates 220 oder des Aggregates AGGR_2 240 (über den Eintrittspunkt 540) der übergeordneten Überwachungs-Funktionsgruppe 600 zugeführt wird. Mithin erfolgt die Einkopplung der Überwachungsfunktionen 360 in die übergeordnete Überwachungs-Funktionsgruppe 600 an wenigen genau definierten Punkten 520, 540.
-
Auf einem beispielshalber durch zwischen dem Eintrittspunkt 520 und der übergeordneten Überwachungs-Funktionsgruppe 600 gebildeten Übertragungsweg 700, der auch bidirektional vorgesehen werden kann, können neben der Übertragung z. B. von Fehlerinformationen oder gesicherten Ausgangsgrößen auch Funktionsbefehle und Rückmeldungen zur Überwachung von Prozessorfunktionen übertragen werden. Vorteilhaft kann damit eine eigene Absicherungshardware eingespart werden, die die sicherheitsrelevante Funktion ausführt.
-
4 verdeutlicht das Verfahren. Im ersten Schritt 400 wird eine Mehrzahl von sicherheitsrelevanten Funktionsaggregaten zur Steuerung der Anlage ausgebildet. Im nächsten Schritt 402 werden die Funktionsaggregate derart ausgebildet, dass jedes Funktionsaggregat ein Funktionsmodul und ein Überwachungsmodul enthält. Im nächsten Schritt 404 werden die Funktionsaggregate derart ausgebildet, dass das Überwachungsmodul 360 vom Funktionsmodul 340 separiert ist. Im nächsten Schritt 406 wird eine übergeordnete Überwachungs-Funktionsgruppe 600 ausgebildet. Im darauf folgenden Schritt 408 wird im Überwachungsmodul 360 ein Eintrittspunkt zur Kommunikation mit der übergeordneten Überwachungs-Funktionsgruppe 600 vorgesehen. Das überwachen von Fehlern des Funktionsmoduls 340 erfolgt im nächsten Schritt 410 durch das Überwachungsmodul 360. Im nächsten Schritt 412 wird ein festgestellter Fehler durch das Überwachungsmodul 360 mittels des Eintrittspunkts an das übergeordnete Überwachungsmodul 600 gemeldet.