Der vorliegenden Erfindung liegt
die Aufgabe zugrunde, die Überwachung
von Komponenten eines dezentral verteilten Rechnersystems für eine sicherheitsrelevante
Anwendung unter Beibehaltung bestehender Sicherheitsanforderungen
mit einem möglichst
geringen Aufwand zu realisieren.
Zur Lösung dieser Aufgabe schlägt die vorliegende
Erfindung ausgehend von dem Verfahren der eingangs genannten Art
vor, dass die überwachte
Komponente den überwachenden
Komponenten übereinstimmende
Eingangssignale für
die Ermittlung der Ergebnisse zur Verfügung stellt und dass sich im
Rahmen der gegenseitigen Überwachungsfunktion überwachende
und überwachte
Komponenten abwechseln, so dass nach einer bestimmten Überwachungszeit
alle zu überwachenden
Komponenten des Rechnersystems mindestens einmal überwacht
worden sind.
Vorteile der
Erfindung
Erfindungsgemäß wird also vorgeschlagen,
dass in einem Rechnersystem mit mehreren dezentral verteilten Komponenten,
die jeweils eine bestimmungsgemäße Funktion
haben, die Überwachung
der Komponenten reihum durch die bereits vorhandenen Komponenten
selbst erfolgt. Auf den Einsatz zusätzlicher, redundanter Komponenten
kann somit verzichtet werden. Statt dessen wird in dem Rechnersystem
zunächst mindestens
eine der Komponenten als überwachte
Komponente definiert und von mindestens zwei überwachenden Komponenten überwacht.
Dazu beaufschlagt die überwachte
Komponente die überwachenden
Komponenten mit übereinstimmenden
Eingangssignalen. Die überwachenden
Komponenten ermitteln anhand dieser Eingangssignale Ergebnisse,
die dann überprüft werden.
Zur Ermittlung eines Fehlers der überwachten Komponenten wird
eine Mehrheitsauswahl aus den Ergebnissen getroffen. Danach wird
eine andere Komponente des Rechnersystems als überwachte Komponente definiert,
die den nun als überwachenden
Komponenten arbeitenden Komponenten ihrerseits übereinstimmende Eingangssignale
zur Verfügung
stellt. So wechseln sich während
des Betriebs des Rechnersystems überwachte
und überwachende
Komponenten reihum ab.
In mehreren Komponenten des Rechnersystems,
vorzugsweise in allen Komponenten des Rechnersystems, ist jeweils
eine gegenseitige Überwachungsfunktion
vorgesehen. Mit Hilfe der auf einer Komponente ablaufenden gegenseitigen Überwachungsfunktion
kann das ordnungsgemäße Arbeiten
der übrigen
Komponenten des Rechnersystems überprüft werden.
Vorzugsweise überwachen
jeweils mehrere Komponenten die ordnungsgemäße Funktion einer Komponente.
Im Anschluss daran werden nacheinander auch die übrigen Komponenten des Rechnersystems überwacht.
Im Rahmen der gegenseitigen Überwachung
wechseln sich also überwachende
und überwachte
Komponenten ab, so dass nach einer bestimmten Überwachungszeit alle zu überwachenden
Komponenten auch tatsächlich
mindestens einmal überwacht
worden sind.
Vorzugsweise überprüfen immer mehrere Komponenten
das ordnungsgemäße Arbeiten
einer Komponente des Rechnersystems. Wenn die überwachte und die überwachenden
Komponenten als Ergebnis einer bestimmten Berechnung alle das gleiche
Ergebnis liefern, ist ein ordnungsgemäßes Arbeiten der überwachten Komponente
sichergestellt. Relevanter wird die Detektion einer fehlerhaften
Komponente dann, wenn die überwachte
und/oder eine oder mehrere der überwachenden
Komponenten unterschiedliche Ergebnisse liefern. Dann müssen die
Ergebnisse der Komponenten derart verarbeitet werden, dass festgestellt
werden kann, welche Ergebnisse richtig und welche falsch sind bzw.
welche Komponenten fehlerfrei arbeiten und welche Komponenten einen
Fehler aufweisen. Zu diesem Zweck werden die von den überwachenden
Komponenten ermittelten Ergebnisse dahingehend überprüft, dass eine Mehrheitsauswahl
aus den Ergebnissen getroffen wird, um die fehlerhafte Komponente
zu detektieren. Um ein möglichst
zuverlässiges Überwachungsergebnis zu
erhalten, werden bei der Entscheidung über das Vorliegen eines Fehlers
einer Komponente sowohl das Ergebnis der internen Überwachungsfunktion
der Komponenten als auch die Ergebnisse der gegenseitigen Überwachungsfunktionen
berücksichtigt.
Es ist damit zu rechnen, dass in
Zukunft die Zahl der dezentral verteilten Rechnersysteme für sicherheitsrelevante
Anwendungen insbesondere in Kraftfahrzeugen deutlich zunehmen wird.
Aus diesem Grund kommt der vorliegenden Erfindung eine besonders
große
Bedeutung zu, da durch die Erfindung ohne Sicherheitseinbußen hohe
Sicherheitsanforderungen für
verteilte Rechnersysteme mit einem deutlich verringerten Aufwand
erfüllt
werden können.
Dadurch können
zum einen Kosten bei der Projektierung und Herstellung solcher Rechnersysteme
eingespart werden. Zum anderen können
aber auch – was
bei den hier betrachteten sicherheitsrelevanten Anwendungen noch
wichtiger ist – die Überwachungsabläufe zur Überwachung
eines fehlerfreien Betriebs der Komponenten des Rechnersystems wesentlich
einfacher und damit auch transparenter realisiert werden. Dadurch
kann die Projektierung und Realisierung der Überwachungsfunktionen von Komponenten
eines dezentral verteilten Rechnersystems vereinfacht werden und
die Fehleranfälligkeit
des Überwachungsverfahrens
aufgrund eines fehlerhaften Entwurfs oder einer fehlerhaften Realisierung
kann deutlich verringert werden.
Gemäß einer vorteilhaften Weiterbildung
der vorliegenden Erfindung wird vorgeschlagen, dass in den Komponenten
jeweils eine interne Überwachungsfunktion,
die Fehler in der Komponente erkennt, ausgeführt wird und sowohl das Ergebnis
der internen Überwachungsfunktion
als auch die Ergebnisse der gegenseitigen Überwachungsfunktionen bei einer
Entscheidung über
das Vorliegen eines Fehlers einer Komponente berücksichtigt werden. Bei dem
erfindungsgemäßen Verfahren
verfügen
mehrere der Komponenten des Rechnersystems, vorzugsweise alle Komponenten
des Rechnersystems, über
eine interne Überwachungsfunktion.
Das erfindungsgemäße Verfahren
wird insbesondere in Rechnersystemen eingesetzt, die über mehrere
gleichartige Komponenten verfügen.
Gleichartige Komponenten können
bspw. Radmodule einer elektronischen Bremsanlage oder einer elektronischen
Lenkung, Ventilmodule einer Motorsteuerung zur nockenwellenfreien
Betätigung
von Einlass- und Auslassventilen oder ähnliches sein.
Die interne Überwachungsfunktion erkennt
Fehler in der überwachten
Komponente, vorzugsweise in der Hardware eines Rechengeräts, insbesondere
eines Mikroprozessors, der überwachten
Komponente. Die interne Überwachungsfunktion
kann auf unterschiedliche Weise realisiert sein, bspw. mittels eines
Computerprogramms oder eines Programmmoduls, welches bestimmte Funktionen
der Komponente, vorzugsweise des Rechengeräts der Komponente, überprüft.
Gemäß einer bevorzugten Ausführungsform
der Erfindung wird vorgeschlagen, dass die interne Überwachungsfunktion
die Fehler in der überwachten
Komponente durch eine Überprüfung von
Grundoperationen eines Befehlssatzes eines Rechengeräts, insbesondere
eines Mikroprozessors, der Komponente erkennt. Grundoperationen,
die im Rahmen der internen Überwachungsfunktion überwacht
werden, sind bspw. Addition, Multiplikation, Shift-Funktion usw.
Gemäß einer weiteren bevorzugten
Ausführungsform
der vorliegenden Erfindung wird vorgeschlagen, dass die Komponenten
Eingangssignale von externen Einheiten, insbesondere von Sensoren,
empfangen und weiterverarbeiten und dass im Rahmen der internen Überwachungsfunktion
auch die externen Einheiten der überwachten
Komponente überwacht
werden. Als Grundlage zur Überwachung
der externen Einheiten dient bspw. eine Plausibilitätsprüfung oder
eine Gradientenüberwachung
der von den Sensoren empfangenen Signale.
Gemäß noch einer weiteren bevorzugten
Ausführungsform
der vorliegenden Erfindung wird vorgeschlagen, dass die von den überwachenden
Komponenten ermittelten Ergebnisse mittels Modellrechnungen überprüft werden.
Typische Beispiele für
eine Modellrechnung am Beispiel eines elektronischen Bremssystems
sind eine einfache Berechnung des Schlupfes aufgrund von Drehzahlsignalen,
eine Berechnung der Referenzgeschwindigkeit aus Drehzahlsignalen
oder eine Berechnung einer Bremskraftverteilung aus vorhandenen
Signalen.
Vorteilhafterweise werden den überwachenden
Komponenten von der überwachten
Komponente ausgewählte
Prozessdaten als Eingangssignale zur Berechnung der Ergebnisse zur
Verfügung
gestellt. Die Ermittlung der Ergebnisse in den Komponenten erfolgt
durch Berechnungen anhand von ausgewählten Prozessdaten, die jeweils
von einer Komponente den übrigen
Komponenten zur Verfügung
gestellt werden. Die ausgewählten
Prozessdaten werden vorzugsweise abwechselnd von der jeweils einen
Komponente den übrigen Komponenten
zur Verfügung
gestellt. Nach und nach stellen also alle Komponenten des Rechensystems
den übrigen
Komponenten Prozessdaten zur Verfügung, welche die Grundlage
für die
Modellrechnungen bilden. Die ausgewählten Prozessdaten werden von
der jeweils einen Komponente über
das Kommunikationssystem den übrigen
Komponenten zur Verfügung
gestellt.
Vorteilhafterweise werden die Eingangssignale
den überwachenden
Komponenten über
das Kommunikationssystem von der überwachten Komponente zur Verfügung gestellt.
Gemäß noch einer weiteren bevorzugten
Ausführungsform
der vorliegenden Erfindung wird vorgeschlagen, dass den überwachenden
Komponenten von der überwachten
Komponente im Rahmen einer Frage-Antwort-Kommunikation vorgebbare
Fragen als Eingangssignale zur Verfügung gestellt werden und dass zur
Berechnung der Ergebnisse Antworten auf die Fragen in den überwachenden
Komponenten ermittelt werden. Die Ermittlung der Ergebnisse in den
Komponenten erfolgt also durch Berechnung von Antworten auf eine vorgebbare
Frage im Rahmen einer Frage- Antwort-Kommunikation,
wobei die Frager. jeweils von einer Komponente den übrigen Komponenten
zur Verfügung
gestellt werden. Gemäß dieser
Ausführungsform
werden also keine Prozessdaten, sondern Fragen bereitgestellt. Zu
diesem Zweck ist in jeder Komponente ein Satz verschiedener Fragen
abgespeichert. Zu jeder Frage ist in den Komponenten zudem die richtige
Antwort abgespeichert. Im Rahmen der Frage-Antwort-Kommunikation sendet
eine Komponente zu einem vorgebbaren Zeitpunkt eine Frage an die übrigen Komponenten.
Die Frage ist von der überwachten
Komponente und von den übrigen überwachenden
Komponenten innerhalb eines vorgebbaren Zeitintervalls richtig zu
beantworten. Für
eine richtige Beantwortung einer Frage müssen verschiedene Teilantworten
gebildet werden, die sich z. B. aus einem korrekten Durchlauf von
sicherheitsrelevanten Programmteilen mit einem vorgebbaren Datensatz oder
aus einem fehlerfreien Ablauf der Programme für einen Funktionstest und einen
Befehlstest für
ein Rechengerät
einer Komponente ergeben. Die Teilantworten werden in jeder Komponente
zu einer Gesamtantwort zusammengefasst, die als Antwort auf die
Frage an die überwachende
Komponente zurückgegeben
wird.
Vorteilhafterweise werden die Fragen
abwechselnd von der jeweils einen Komponente den übrigen Komponenten
zur Verfügung
gestellt. Dadurch wird sichergestellt, dass jede Komponente des
Rechnersystems in regelmäßigen zeitlichen
Abständen überwacht
wird. Vorzugsweise werden die Fragen von der jeweils einen Komponente über das
Kommunikationssystem den übrigen
Komponenten zur Verfügung
gestellt. Ebenso werden die Antworten auf die Fragen von den Komponenten
vorzugsweise über
das Kommunikationssystem an die Komponente übermittelt, welche die Fragen
stellt.
Von besonderer Bedeutung ist die
Realisierung des erfindungsgemäßen Verfahrens
in der Form eines Computerprogramms, das auf einem Rechengerät, insbesondere
auf einem Mikroprozessor, ablauffähig und zur Ausführung des
erfindungsgemäßen Verfahrens
programmiert ist. In diesem Fall wird also die Erfindung durch ein
Computerprogramm realisiert, so dass dieses Computerprogramm in
gleicher Weise die Erfindung darstellt wie das Verfahren, zu dessen
Ausführung
das Computerprogramm geeignet ist. Besonders bevorzugt ist dabei,
wenn das Computerprogramm auf einem Speicherelement, insbesondere
auf einem Read-Only-Memory, einem Random-Access-Memory oder auf einem Flash-Memory abgespeichert
ist.
Als eine weitere Lösung der
Aufgabe der vorliegenden Erfindung wird ausgehend von dem Rechengerät für ein dezentral
verteiltes Rechnersystem der eingangs genannten Art vorgeschlagen,
dass das Rechengerät
der überwachten
Komponente diese veranlasst, den überwachenden Komponenten übereinstimmende
Eingangssignale für
die Ermittlung der Ergebnisse zur Verfügung zu stellen, und dass das
Rechengerät der
Komponente mit Rechengeräten
anderer Komponenten des Rechnersystems derart zusammenwirkt, dass sich
im Rahmen der gegenseitigen Überwachungsfunktion überwachende
und überwachte
Komponenten abwechseln, so dass nach einer bestimmten Überwachungszeit
alle zu überwachenden
Komponenten des Rechnersystems (1) mindestens einmal überwacht
worden sind.
Gemäß einer vorteilhaften Weiterbildung
der vorliegenden Erfindung wird vorgeschlagen, dass das Rechengerät Mittel
zur Ausführung
des erfindungsgemäßen Verfahrens
aufweist.
Als noch eine weitere Lösung der
Aufgabe der vorliegenden Erfindung wird ausgehend von dem dezentral
verteilten Rechnersystem der eingangs genannten Art vorgeschlagen,
dass die überwachte
Komponente den überwachenden
Komponenten übereinstimmende
Eingangssignale für
die Ermittlung der Ergebnisse zur Verfügung stellt und dass sich im
Rahmen der gegenseitigen Überwachungsfunktion überwachende und überwachte
Komponenten abwechseln, so dass nach einer bestimmten Überwachungszeit
alle zu überwachenden
Komponenten des Rechnersystems mindestens einmal Überwacht
worden sind.
Gemäß einer vorteilhaften Weiterbildung
der vorliegenden Erfindung wird vorgeschlagen, dass das Rechnersystem
Mittel zur Ausführung
des erfindungsgemäßen Verfahrens
aufweist.
Zeichnungen
Weitere Merkmale, Anwendungsmöglichkeiten
und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung
von Ausführungsbeispielen
der Erfindung, die in der Zeichnung dargestellt sind. Dabei bilden
alle beschriebenen oder dargestellten Merkmale für sich oder in beliebiger Kombination
den Gegenstand der Erfindung, unabhängig von ihrer Zusammenfassung
in den Patentansprüchen
oder deren Rückbeziehung
sowie unabhängig
von ihrer Formulierung bzw. Darstellung in der Beschreibung bzw.
in. der Zeichnung. Es zeigen:
1 ein
erfindungsgemäßes verteiltes
dezentrales Rechnersystem am Beispiel einer elektrischen Bremsanlage
gemäß einer
ersten bevorzugten Ausführungsform;
2 ein
erfindungsgemäßes dezentral
verteiltes Rechnersystem am Beispiel einer elektrischen Bremsanlage
gemäß einem
zweiten bevorzugten Ausführungsbeispiel;
3 eine
Komponente eines aus dem Stand der Technik bekannten dezentral verteilten
Rechnersystems am Beispiel eines Radmoduls einer elektrischen Bremsanlage;
4 eine
Komponente eines erfindungsgemäßen dezentral
verteilten Rechnersystems am Beispiel eines Radmoduls einer elektrischen
Bremsanlage; und
5 eine
Tabelle zur Verdeutlichung des Ablaufs der gegenseitigen Überwachung
mit ausgewählten Prozessdaten;
und
6 eine
Tabelle zur Verdeutlichung des Ablaufs der gegenseitigen Überwachung
mit einer Frage-Antwort-Kommunikation.
Beschreibung
der Ausführungsbeispiele
Die vorliegende Erfindung betrifft
ein Verfahren zur gegenseitigen Überwachung
der Komponenten eines dezentral verteilten Rechnersystems. Diese
gegenseitige Überwachung
ist insbesondere bei sicherheitsrelevanten Anwendungen von Bedeutung,
d. h. bei Systemen, in denen eine fehlerfreie Ausgabe von mindestens
einer Prozessgröße erforderlich
ist. Eine typische Anwendung ist in Kraftfahrzeugen für elektrische Bremsanlagen
(Brake-by-Wire) gegeben. Die nachfolgenden Ausführungen beziehen sich auf eine
elektrische Bremsanlage, bei der ein dezentral verteiltes Rechnersystem
eingesetzt wird. Die vorliegende Erfindung ist aber nicht auf solche
elektrische Bremsanlagen beschränkt.
Die Struktur eines erfindungsgemäßen elektrischen
Rechnersystems ist in 1 am
Beispiel einer elektrischen Bremsanlage dargestellt. Das Rechnersystem 1 umfasst
ein Pedalmodul (PM2), in dem über
Sensoren 3 der Wunsch eines Fahrers des Kraftfahrzeugs
sowohl bezüglich
einer Betriebsbremsung wie auch bezüglich einer Park- bzw. Feststellbremsung
erfasst wird. Aus dem erfassten Fahrerwunsch werden Führungsgrößen (Sollwerte)
für eine
Regelung der Bremskräfte
berechnet und über
ein Kommunikationssystem 4, das als ein sicheres redundantes
Bussystem ausgebildet ist, übertragen.
Das Pedalmodul 2 ist mit zwei oder drei unabhängigen Rechengeräten realisiert
und enthält
zudem eine redundante Komponente zur Signalerfassung.
Die Komponenten des in 1 dargestellten Rechnersystems 1 sind
als Radmodule RM_1 – RM_4 51 – 54 ausgebildet.
In den Radmodulen 51 – 54 werden
Stellsignale für
elektrische Aktoren 61 – 64 zur Regelung
der Bremskräfte
bzw. der Bremsmomente für
die einzelnen Räder
des Kraftfahrzeugs berechnet und an die Aktoren 61 – 64 ausgegeben.
Hierzu werden in den Radmodulen 51 – 54 die erforderlichen
Signalwerte von Sensoren 71 – 74, wie bspw. Zuspannkraft
oder Bremsmoment, Drehwinkel oder Position des elektrischen Bremsstellers 61 – 64 erfasst
und verarbeitet. In einem Verarbeitungsmodul VM8 werden übergeordnete Bremsfunktionalitäten wie
bspw. Antiblockiersystem (ABS) oder elektronisches Stabilitätsprogramm
(ESP) realisiert.
Im Unterschied zu dem in 1 dargestellten Rechnersystem,
wo die Sensoren 71 – 74 die
Sensorsignale lokal erfassen und direkt an die Radmodule 51 – 54 weiterleiten,
stehen bei dem Rechnersystem 1 aus 2 die erfassten Sensorsignale über das
Kommunikationssystem 4 global zur Verfügung. Ebenso sind die Aktoren 61 – 64 über das
Kommunikationssystem 4 global ansteuerbar. Die in 2 dargestellte Ausführungsform
des Rechnersystems 1 hat den Vorteil, dass im Falle eines
Defekts eines der Radmodule 51 – 54 dieses aus Sicherheitsgründen nicht
einfach abgeschaltet wird, sondern dass ein beliebig anderes intaktes
Radmodul die Funktion des defekten Radmoduls übernimmt und anhand von Sensorsignalen
des dem defekten Radmodul zugeordneten Sensors Ansteuersignale für die dem
defekten Radmodul zugeordneten Aktoren berechnet und zur Ansteuerung
des Aktors über
das Kommunikationssystem 4 an diesen weiterleitet.
In 3 ist
ein Radmodul (RM5) einer aus dem Stand der Technik bekannten elektrischen
Bremsanlage dargestellt. Das Radmodul 5 weist ein dezentrales
Rechengerät 9,
das insbesondere als ein Mikroprozessor ausgebildet ist, zur Ausführung der
bestimmungsgemäßen Funktion
des Radmoduls 5 auf. Die bestimmungsgemäße Funktion des Radmoduls 5 besteht – wie oben
bereits erläutert – im Wesentlichen
darin, Sensorsignale von einem Sensor 7 zu erfassen, zu
verarbeiten und ein Ansteuersignal zur Ansteuerung eines Aktors 6 zu
generieren und an diesen weiterzuleiten. Zur Überwachung des Rechengeräts 9 ist
bei dem aus dem Stand der Technik bekannten Radmodul 5 ein
zusätzliches Überwachungsmodul 10 erforderlich,
welches in einer Frage-Antwort-Kommunikation
und unter Einbeziehung eines jeweils zugeordneten Abschaltpfades
beim Auftreten eines Fehlers in einem der Radmodule 5 eine
sichere Abschaltung des fehlerbehafteten Radmoduls 5 ermöglicht.
Das Überwachungsmodul 10 umfasst
ein weiteres Rechengerät 11,
welches im Wesentlichen die gleiche Berechnung wie das Rechengerät 9 ausführt. Das
Rechengerät 11 kann
auch eine Einheit mit dem Rechengerät 9 bilden, wobei
die funktionale Aufteilung dieselbe bleibt, wie oben beschrieben.
Die im Rahmen der Ausführung
der bestimmungsgemäßen Funktion
des Radmoduls 5 berechneten Ergebnisse des Rechengeräts 9 und
des Rechengeräts 11 werden
in dem Rechengerät 11 miteinander
verglichen. Sobald eine Abweichung der Ergebnisse der Rechengeräte 9 und 11 vorliegt,
wird das Radmodul 5 aus Sicherheitsgründen abgeschaltet. Zusätzlich ist
ein weiterer Rechner 12 für eine Frage-Antwort-Kommunikation zur Überwachung der
Funktion des Rechengeräts 11 vorgesehen.
Der Rechner 12 stellt dem Rechengerät 11 ausgewählte Fragen,
die von einem Bereich 13 des Rechengeräts 11 beantwortet
werden. Das von dem Rechengerät 9 berechnete
Ansteuersignal für
die Aktoren 6 wird nur dann an diese weitergeleitet, wenn
das Rechengerät
innerhalb eines vorgebbaren Zeitintervalls die richtige Antwort
auf die von dem Rechner 12 gestellte Frage liefert. Dieses
zusätzliche Überwachungsmodul
kann bei der erfindungsgemäß vorgeschlagenen
gegenseitigen Überwachung
der Radmodule entfallen.
In 4 ist
ein Radmodul 5 eines Rechnersystems 1 gemäß der vorliegenden
Erfindung dargestellt. Bei dem Radmodul 5 des erfindungsgemäßen Rechnersystems 1 entfällt das
gesamte in 3 dargestellte Überwachungsmodul 10.
Es ist lediglich ein Rechengerät 9 vorgesehen,
um die bestimmungsgemäße Funktion
des Radmoduls 5 auszuführen.
Ein Bereich des Rechengeräts 9 dient
zur Ausführung
einer internen Überwachungsfunktion 14 und
ein weiterer Bereich dient zur Ausführung einer gegenseitigen Überwachungsfunktion 15.
Die interne Überwachungsfunktion
und die gegenseitige Überwachungsfunktion 15 werden nachfolgend
näher erläutert. Die
Sensoren 7 und die Aktoren 6 stehen entweder unmittelbar
oder mittelbar über
das Kommunikationssystem 4 mit dem Radmodul 5 in
Verbindung.
Jedes Rechengerät
9 eines Radmoduls
5 beinhaltet
eine interne Überwachungsfunktion
14,
die Fehler einer zugehörigen
Rechnerhardware
9 und der Sensorik
7 erkennt.
Die Überwachung
der Rechnerhardware
9 geschieht durch Anwendung von Computerprogrammen
zur Überprüfung von
Grundoperationen eines Rechnerbefehlssatzes des Rechengeräts
9,
wie bspw. Addition, Multiplikation, Shift-Funktion und andere. Als Grundlage der Überwachung
der Sensorik
7 dient bspw. eine Plausibilitätsüberprüfung oder
eine Gradientenüberwachung
der empfangenen Sensorsignale. Das Ergebnis der internen Überwachung
14 eines
Radmoduls RM_i wird in einer logischen Größe B_i abgebildet. Für diese
logische Größe B_i gilt:
Da die internen Überwachungsfunktionen 14 nicht
alle in den Radmodulen 5 auftretenden Fehler erkennen können, wird
eine weitere Überwachungsfunktion,
die gegenseitige Überwachungsfunktion 15,
eingeführt.
Im Folgenden werden zwei verschiedene Ausführungsformen der gegenseitigen Überwachung 15 näher beschrieben.
Zunächst wird eine gegenseitige Überwachungsfunktion
anhand von ausgewählten
Prozessdaten beschrieben. In der Regel sind im Betrieb der Radmodule 5 zu
jedem Zeitpunkt gegenseitige Überwachungsfunktionen 15 in
drei der vier Radmodule 5 aktiv. Über Modellrechnungen überprüfen die
an der Überwachung
beteiligten Radmodule 5 ihre Ergebnisse gegenseitig und
können
somit eine Mehrheitsauswahl (2 aus
3) treffen. Diese
Berechnungen werden mit ausgewählten
Prozessdaten durchgeführt,
die abwechselnd von jeweils einem Radmodul 5 den übrigen Radmodulen über das
Kommunikationssystem 4 bereitgestellt werden.
Die von einem Radmodul RM_i zu einem
Zeitpunkt T_x bereitgestellten Prozessdaten werden mit S_i (t_x)
bezeichnet. Das Ergebnis einer Modellrechnung, die in einem Radmodul
RM_j mit den Prozessdaten S_i (t_x) durchgeführt wird, wird mit E_j [S_i
(t_x)], mit i = 1 ... 4 bezeichnet. Die zur Ermittlung des Ergebnisses E_j
[S_i (t_x)] erforderlichen Modellrechnungen sind repräsentativ
bezüglich
der erforderlichen Berechnungen, die für die bestimmungsgemäße Funktion
des Radmoduls RM_i hotwendig sind, d. h. in diesen Modellrechnungen
wird der gleiche Befehlsvorrat des Rechengeräts 9 verwendet, ist
der gleiche Programmablauf gegeben und werden die gleichen Speicherbereiche
angesprochen. Bezüglich
des strukturellen Aufbaus der Prozessdaten S_i (t_x) sind drei Varianten
denkbar:
- (a) die Prozessdaten beinhalten sowohl
aktualisierte Daten, die über
die Sensorik 7 des Radmoduls 5 erfasst wurden,
als auch prozesstypische aufbereitete Rechengrößen.
- (b) Die Prozessdaten enthalten speziell vorbereitete und abgespeicherte
Werte, die bei der Realisierung der bestimmungsgemäßen Funktion
innerhalb des Radmoduls 5 repräsentativ als Sensorwerte bzw.
als aufbereitete Rechengrößen auftreten.
- (c) Die Prozessdaten werden zu einem Zeitpunkt t_x zufällig aus
einem Wertebereich ausgewählt,
der bei der Aufarbeitung der bestimmungsgemäßen Funktion des Radmoduls
5 im Betrieb typischerweise auftritt.
Typische Beispiele für die Modellrechnung
E_j [S_i (t_x)] sind:
- – Berechnung eines Radschlupfes
aufgrund von Drehzahlsignalen,
- – Berechnung
einer Referenzgeschwindigkeit aus Drehzahlsignalen,
- – Berechnung
einer Bremskraftverteilung aus vorhandenen Signalen.
Die Anzahl der an der Überwachung
beteiligten Module beschränkt
sich in einer bevorzugten Realisierungsvariante auf die Radmodule 5.
Davon abweichend ist es denkbar, dass außer den Radmodulen 5 noch weitere
Module des Rechnersystems 1 an der Überwachung beteiligt sind.
Insbesondere könnte
auch das Pedalmodul PM2 und/oder das Verarbeitungsmodul VM8 in die Überwachung
eingebunden werden oder zumindest bei Ausfall eines Radmoduls 5 dessen
Berechnungen für
die gegenseitige Überwachungsfunktion 15 übernehmen.
Die Einbindung des Pedalmoduls 2 bzw. des Verarbeitungsmoduls 8 ist
problematisch bezüglich eines
nach Möglichkeit
angestrebten modularen und gleichartigen Aufbaus des elektrischen
Bremssystems.
Die gegenseitige Überwachung 15 rotiert
mit fortschreitender Zeit t über
die beteiligten Radmodule 5. Zur Verdeutlichung wird ein
Umlauf der gegenseitigen Überwachung 15 in
der nachfolgenden Tabelle 1 dargestellt. Dabei wurden zur Überwachung
eines Radmoduls 5 jeweils zwei andere Radmodule 5 eingebunden.
Die Anzahl der beteiligten Module ist hier n = 3.
Betrachtet werden im Folgenden beispielhaft
die zum Zeitpunkt t_0 beginnende gegenseitige Überwachung
15 der
Radmodule RM_1, RM_2 und RM_3. Hierzu werden über das Kommunikationssystem
4 die
Prozessdaten S_1 (t_0) den anderen Radmodulen
5 bereitgestellt.
In den beteiligten Radmodulen
5 werden dann mit den Prozessdaten
S_1 (t_0) die Modellrechnungen durchgeführt. Die daraus resultierenden
Ergebnisse E_j [S_1 (t_0)], mit j = 1 ... n und n ≥ 3 werden
anschließend über das
Kommunikationssystem
4 gegenseitig ausgetauscht und in
jedem beteiligten Radmodul
5 miteinander verglichen. Als
Ergebnis dieses Vergleichs werden logische Vergleichsvariablen V_kji
gebildet. Eine in dem Radmodul RM_k berechnete logische Vergleichsvariable
xxx unter Einbeziehung der Ergebnisse E_j [S_1 (t_0)] und E_i [S_1
(t_0)] wird im Folgenden mit V_kji bezeichnet und ist definiert
durch:
mit k, j , i ∈ [1 . .
. n] und i ≠ j
.
∈ steht
für eine
Fehlertoleranz, die auch den Wert 0 annehmen kann. Der Index k der
logischen Vergleichsvariablen V_kji gibt an, welches Radmodul 5 den
Vergleich durchführt.
Der Index j steht für
den ersten Wert und der Index i für den zweiten Wert des Vergleichs.
Aufgrund des symmetrischen Aufbaus des elektrischen Bremssystems
ergibt sich eine vereinfachte Berechnung V_kji = V_kij.
Die fest vorgegebene Genauigkeitsschranke ∈ berücksichtigt
zulässige
Toleranzen zwischen den Berechnungen in den verschiedenen Radmodulen 5.
Aus diesen logischen Vergleichvariablen V_kji werden in jedem an
der Überwachung 15 beteiligten
Radmodul 5 logische Hilfsvariablen H_ki berechnet. Eine
in dem Radmodul RM_k berechnete Hilfsvariable, die Informationen über die
Korrektheit der Berechnung in dem Radmodul RM_i enthält, wird
nachfolgend mit H_ki bezeichnet. Betrachtet man eine Anzahl n an
der Überwachung 15 beteiligten
Radmodule 5, so sind die logischen Hilfsvariablen H_ki
definiert durch die folgende logische UND-Verknüpfung von je (n – 1)-Vergleichsvariablen
V_kji:
Hierbei entspricht der Index k der
logischen Hilfsvariablen H_ki dem Radmodul 5, in dem die
Berechnung ausgeführt
wird und der Index i dem Radmodul 5, das überprüft wurde.
Bei einer erweiterten Realisierungsvariante mehr als drei an der
gegenseitigen Überwachung 15 beteiligten
Radmodule kann die Bestimmung der logischen Hilfsvariable H_ki auf
eine logische UND-Verknüpfung
mit zwei Vergleichsvariablen V_kji beschränkt werden.
Eine Abschaltung der durch das Radmodul
RM_i angesteuerten Prozessgrößen erfolgt
durch eine logische Variable A_i, die bei einer Anzahl n betrachteter
Radmodule
5 durch folgende Bool'sche Beziehung gegeben ist:
In der Gleichung (4) entsprechen
B_i v H_ii intern ermittelten Fehlern des Radmoduls RM_i. Das Produkt
der Hilfsvariablen H_ij entspricht dagegen von externen Radmodulen
ermittelten Fehlern des Radmoduls RM_i. In Gleichung (4) charakterisiert
v eine ODER-Verknüpfung.
Aus dieser Beziehung wird deutlich, dass ein Abschaltsignal A_i
für die
von dem Radmodul RM_i angesteuerten Prozessgrößen ausgelöst wird, falls entweder das
Radmodul RM_i durch die interne Überwachung
14 oder
durch die Vergleichsrechnungen einen Fehlerzustand detektiert oder
falls die weiteren (n – 1)
an der gegenseitigen Überwachung
15 beteiligten
Radmodule
5 übereinstimmend
einen Fehler detektieren. Werden in einer erweiterten Realisierungsvariante
n > 3 Module in die
gegenseitige Überwachung
15 einbezogen,
kann als Bedingung für
eine Abschaltung der durch das Radmodul RMi angesteuerten Prozessgrößen anstelle
der Gleichung (4) die Beziehung:
verwendet
werden. Dabei beschreibt Ω_i
eine (2 aus k)-Auswahl
(sog. Mehrheitsauswahl) bezüglich
der logischen Variablen H_ij mit 3 ≤ k ≤ n – 1; i, j ∈ [1 ... n] und j ≠ i.
Aufgrund des hohen Risikopotentials
bei unberechtigtem Abschalten der Prozessgrößen eines oder mehrerer Radmodule 5 sollte
die Realisierung der durch die Gleichungen (4) bzw. (5) beschriebenen
Funktion sehr sicher gestaltet werden. Die Realisierung dieser Funktion
erfolgt für
jedes Radmodul RM_i auf zwei Abschaltpfaden. Der erste Abschaltpfad
realisiert die Bedingung A_i1 = B_i v H_ii und wird von dem Radmodul RM_i
ausgeführt.
Dies ist der eigene Abschaltpfad des Radmoduls RM_i. Der zweite
Abschaltpfad (externer Abschaltpfad) realisiert in Gleichung (4)
die Verknüpfung
A_i2 mit dem Produkt über
die Hilfsvariablen H_j bzw. in Gleichung (5) die Bedingung A_i2
= Ω_i.
Hierfür
sind für
jedes Radmodul RM_i Mittel erforderlich, die von den beteiligten
Radmodulen 5 die erforderlichen logischen Variablen H_ij
empfangen und gemäß den logischen
Verknüpfungen
verarbeiten können.
Das Ergebnis der Verarbeitung erlaubt dann eine unabhängige Abschaltung
der von dem Radmodul RM_i angesteuerten Prozessgrößen. Dieser
externe Abschaltpfad kann bspw. mittels intelligenter Kommunikationscontroller
realisiert werden, über
die die Rechengeräte
der einzelnen Radmodule an das Kommunikationssystem angeschlossen
sind. Diese Kommunikationscontroller übernehmen dann neben der Anbindung
des Rechengeräts
an das Kommunikationssystem auch die Überwachung der übrigen Radmodule.
Durch den rotierenden Umlauf kann
die gegenseitige Überwachung 15 auch
bei einem als defekt erkannten oder nicht vorhandenen Radmodul 5 durchgeführt werden.
In diesem Fall werden für
die zuvor definierten Bedingungen durch eine Rekonfiguration nur
die funktionstüchtigen
Module herangezogen.
Mit Hilfe eines zeitgesteuerten Busses
als Kommunikationssystem 4, d. h. mit einer globalen Systemzeit,
kann der Programmablauf der an der gegenseitigen Überwachung
beteiligten Radmodule 5 synchronisiert werden. Voraussetzung
dafür ist,
dass jede Task in einem fest definierten Zeitrahmen abläuft. Folglich
muss für
jede Task eine minimale und eine maximale Laufzeit vorgegeben sein,
um den korrekten Ablauf der zuvor festgelegten Tasks innerhalb eines
Zyklus gewährleisten
zu können.
Auch die Modell- und Vergleichsrechnungen zur gegenseitigen Überwachung 15 können in
Form von zeitsynchronen Tasks ablaufen. Der zeitliche und funktionelle
Ablauf der gegenseitigen Überwachung 15 der
Radmodule RM_1, RM_2 und RM_3 wird in der Tabelle aus 5 verdeutlicht.
Als eine weitere Ausführungsform
der gegenseitigen Überwachung
wird die Überprüfung der
richtigen Funktion eines Radmoduls RM_i anhand einer Frage-Antwort-Kommunikation näher beschrieben.
Die Überprüfung der
richtigen Funktion eines Radmoduls RM_i wird bei dieser Ausführungsform
von den anderen Radmodulen RM_j unterstützt. Die Anzahl n der an der Überwachung
beteiligten Radmodule 5 liegt bei n ≥ 3. Die Überwachungsvariante gemäß dieser
Ausführungsform
hat im Wesentlichen den gleichen Ablauf wie die weiter oben beschriebene Überwachung
anhand von ausgewählten
Prozessdaten. Anstelle der Prozessdaten S_i (t_x) werden bei der
vorliegenden Ausführungsform
jedoch Fragen bereitgestellt. Zu diesem Zweck ist in jedem an der
gegenseitigen Überwachung 15 beteiligten
Radmodule RM_j ein Satz von verschiedenen Fragen F_k, mit k = 1
... r abgespeichert. Zu jeder Frage F_k ist in den Radmodulen RM_j
zudem die richtige Antwort W_k, mit k = 1 ... r abgespeichert. Die
Kontrolle erfolgt bei der beschriebenen Ausführungsform durch eine Frage-Antwort-Kommunikation.
Das Radmodul RM_j sendet zu einem vorgebbaren Zeitpunkt t_x allen übrigen an der
gegenseitigen Überwachung 15 beteiligten
Radmodulen RM_i eine Frage F_k (t_x). Diese Frage sollte von dem
sendenden Radmodul RM_j und allen weiteren an der Überwachung
beteiligten Radmodulen RM_i innerhalb eines vorgebbaren Zeitintervalls
richtig beantwortet werden. Zur Beantwortung der verschiedenen Fragen werden
jeweils Teilantworten gebildet, die sich z. B. aus einem korrekten
Durchlauf von sicherheitsrelevanten Programmteilen mit einem vorgegebenen
Datensatz oder einem fehlerfreien Ablauf eines Computerprogramms
für den
Rechnerfunktionstest und den Befehlstest ergeben.
Die aus den Teilprogrammen gebildeten
Teilantworten werden in allen n an der Überwachung beteiligten Radmodulen
RM_i zu einer Gesamtantwort zusammengefasst. Die in einem Radmodul
RM_i berechnete Antwort auf die Frage F_k (t_x) wird im Folgenden
mit L_i (F_k), mit i = 1 ... n bezeichnet. Jedes Radmodul RM_i überträgt allen
weiteren an der Überwachung
beteiligten Radmodulen
5 die ermittelte Antwort L_i (F_k). Eine
Antwort L_i (F_k) wird in dem Radmodul RM_i und in den weiteren
beteiligten Radmodulen RM_j auf Richtigkeit hinsichtlich des Zeitintervalls
für das
Eintreffen der Antwort und auf Übereinstimmung
mit der der Frage zugeordneten richtigen Antwort W_k überprüft. Eine
in dem Radmodul RM_i entdeckte fehlerhafte Funktion des Radmoduls
RM_j wird durch eine logische Variable C_ij gekennzeichnet, die
gemäß
mit j, i ∈ [1 ... n] definiert ist.
Eine Abschaltung der durch das Radmodul
RM_i angesteuerten Prozessgrößen erfolgt
durch die logische Variable A_i, die bei einer Anzahl n betrachten
Radmodulen
5 durch folgende Bool'sche Beziehung gegeben ist:
Bei einer Realisierungsvariante mit
mehr als drei an der gegenseitigen Überwachung
15 beteiligten Radmodulen
5 kann
die logische UND-Verknüpfung
in Gleichung (7) auf zwei logische Variablen C_ji beschränkt werden
oder anstelle der Gleichung (7) kann die Beziehung:
verwendet
werden. Hierin beschreibt Ω_i
eine (2 aus k)-Auswahl
bezüglich
der logischen Variablen C_ji, mit i, j ∈ [1 ... n] und j ≠ i.
Auch bei dieser zweiten Ausführungsform
realisiert die Bedingung A_i1 = B_i v C_ii den eigenen Abschaltpfad,
der von dem Radmodul RM_i ausgeführt
wird. Das Produkt über
die logischen Variablen C_ji bzw. die (2 aus k)-Auswahl Ω_i beschreibt
einen externen Abschaltpfad A_i2, der von den Radmodulen RM_j ausgeführt wird,
welche das Radmodul RM_i überwachen.
Der zeitliche Ablauf der gegenseitigen Überwachungsfunktion 15 mittels
Frage-Antwort-Kommunikation ist in der Tabelle aus 6 dargestellt.
Zusammenfassend kann durch die vorliegende
Erfindung auf zusätzliche
Hardware-Komponenten zur Überwachung
der Rechner-Komponenten eines dezentral verteilten Rechnersystems
verzichtet werden. Die für
die Überwachung
nach dem erfindungsgemäßen Verfahren
erforderliche Hardware wird allein durch die aus Funktionsüberlegungen
erforderliche dezentrale Aufteilung der Komponenten bestimmt. Durch
die vorgestellte gegenseitige Überwachung
wird eine eindeutige Lokalisierung fehlerhafter Komponenten und
auch deren Abschaltung über
zwei getrennte Abschaltpfade ermöglicht.