-
Die
vorliegende Erfindung betrifft ein Diagnosesystem für ein Fahrzeug,
bei dem Daten aus einer elektronischen Steuereinheit ausgelesen
werden, welche in dem Fahrzeug installiert ist. Die Erfindung betrifft
insbesondere ein Diagnosesystem, welches für verschiedene Arten von Protokollen
für die
Datenübertragung
oder Datenkommunikation anwendbar ist.
-
In
der jüngeren
Vergangenheit ist die elektronische Steuerung eines Kraftfahrzeuges
immer komplizierter geworden. Wesentlich für die Diagnose des Fahrzeugs
ist das Diagnosesystem, welches Daten elektronischer Steuereinheiten,
die in den Fahrzeugen installiert sind, auslesen kann.
-
Dieses
Diagnosesystem ist üblicherweise tragbar
und universell einsetzbar. Ein Kraftfahrzeugmechaniker kann dann
leicht das Steuersystem des Fahrzeugs überprüfen. Die meisten Diagnosesysteme
sind mit einer Speicherkassette ausgestattet, welche von dem System
getrennt werden kann. Die Speicherkassette enthält ein Aufzeichnungsmedium, welches
Diagnoseprogramme speichert, die den Arten und Typen der in bestimmten
Jahren hergestellten Fahrzeugen etc. entsprechen. Das Diagnosesystem
mit der Speicherkassette stellt eine Datenverbindung zu der elektronischen
Steuereinheit in dem Fahrzeug her, von welcher die Daten gelesen
werden. Ein solches System, oder Diagnoseeinrichtung, ist in der
offengelegten japanischen Patentschrift JP-A-1-210844 offenbart.
-
Es
gibt viele Arten von elektronischen Steuereinheiten, welche in Kraftfahrzeuge
eingebaut werden. Diese Einheiten verwenden unterschiedliche Arten
von Übertragungssystemen
und Schnittstellen. Kraftfahrzeughersteller sehen unterschiedliche
Kommunikations- oder Übertragungsprotokolle
für verschiedene
Arten von Fahrzeugen vor. Diese Tatsache macht es notwendig, daß Reparaturwerkstätten Diagnoseeinrichtungen
derart mit Hardware ausstatten, daß sie für unterschiedliche Kommunikationsprotokolle
für jeden
Fahrzeughersteller oder für
jeden Typ der elektronischen Steuereinheiten einsetzbar sind. Das
Ausstatten dieser Einrichtung für
alle Kommunikationsprotokolle ist für die Reparaturwerkstatt eine
große
wirtschaftliche Belastung.
-
Um
dieses Problem zu lösen
offenbart die offengelegte japanische Patentschrift JP-A-3-111733 einen Adapter
zum Umwandeln von Signalen, der von einer Datenverarbeitungsschaltung
in einer Diagnoseeinrichtung lösbar
ist. Dadurch wird ein Teil der Schaltung der Diagnoseeinrichtung
für den
Datenaustausch mit einem Steuersystem eines Kraftfahrzeugs austauschbar.
Die Diagnoseeinrichtung ist somit für verschiedene Arten von Kommunikationsprotokollen
einsetzbar.
-
Eine
Art von Diagnoseeinrichtung erfordert noch immer unterschiedliche
zusätzliche
Hardware. Daraus ergeben sich höhere
Gesamtherstellungskosten. Ferner kann dies zu einer Fehldiagnose
in einer Reparaturwerkstatt führen,
wenn die zusätzliche Hardware
für den
Datenaustausch der Diagnoseeinrichtung falsch zugeordnet wird. Solche
fehlerhaften Zusammenstellungen treten häufig auf, wenn Diagnoseprogramme
für unterschiedliche
Arten von Kraftfahrzeugen, Typen von Fahrzeugen, welche in bestimmten
Jahren hergestellt wurden, und dergleichen ausgetauscht werden.
-
Es
ist eine Aufgabe der vorliegenden Erfindung, ein Diagnosesystem
vorzusehen, welches für alle
Arten von in Fahrzeugen installierten elektrischen Steuereinheiten
mit unterschiedlichen Kommunikationsprotokollen geeignet ist, ohne
die Hardware verändern
zu müssen.
-
Diese
Aufgabe wird durch ein Diagnosesystem mit den Merkmalen von Patentanspruch
1 gelöst.
-
Gemäß der vorliegenden
Erfindung wird ein Diagnosesystem für ein Kraftfahrzeug vorgesehen, welches
mehrere Sensoren zum Erfassen von Betriebsbedingungen des Fahrzeuges
und zum Erzeugen von Fahrzeugbetriebssignalen, eine elektronische
Steuereinheit zum Steuern des Fahrzeuges und zum Erzeugen von Steuersignalen,
welche auf die Fahrzeugbetriebssignale anspricht, und mehrere Betätigungseinrichtungen
und Anzeigelampen, welche auf die Steuersignale ansprechen, aufweist,
um das Fahrzeug unter optimalen Bedingungen zu betreiben, welche
jeweils den Betriebsbedingungen entsprechen, wobei das System Daten
in der elektronischen Steuereinheit ausliest und diese Daten übertragen
kann, mit einer Diagnoseeinrichtung, welche auf die Steuersignale
anspricht, um die elektronische Steuereinheit durch Vergleichen
der übertragenen Daten
mit in einem Speicher gespeicherten normalen Daten zu diagnostizieren,
und einer von der Diagnoseeinrichtung trennbaren Speichereinrichtung
zum Speichern unterschiedlicher Diagnoseprogramme und Kommunikationsprotokolle,
und bei dem das Diagnosesystem folgende Merkmale aufweist: eine
in der Speichereinrichtung vorgesehenen Schnittstellenschaltung,
welche direkt mit der elektronischen Steuereinheit verbunden ist,
um eine logische Funktion anzupassen, welche jedem Steuersignal
entspricht, und um ein Übertragungssignal
zu erzeugen; Speichermittel zum Speichern unterschiedlicher Arten
von Logikprogrammen; einer systeminternen Programmiereinrichtung,
welche auf das Übertragungssignal
anspricht, um die Speichermittel durch Neuprogrammieren logischer
Funktionen der Schaltung aufgrund von Designinformation zu steuern,
um das Fahrzeug bei einer hohen Geschwindigkeit präzise zu
diagnostizieren, ohne die Speichereinrichtung für unterschiedliche Arten von
elektronischen Einheiten auszutauschen.
-
Das
Diagnosesystem kann ferner einen Speicher zum Speichern unterschiedlicher
Arten von Designinformationen für
die Neuprogrammierung aufweisen. Der Speicher kann ein flüchtiger
Speicher oder ein elektronisch löschbarer,
nicht flüchtiger Speicher
sein.
-
Das
Diagnosesystem kann ferner ein Aufzeichnungsmedium aufweisen, welches
in der Speichereinrichtung vorgesehen ist, um die Diagnoseprogramme
zu speichern.
-
Das
Diagnosesystem kann ferner eine Schnittstellenschaltung aufweisen,
die in der Speichereinrichtung vorgesehen ist, um die integrierte Schaltung
mit der elektronischen Steuereinheit zu verbinden.
-
Bevorzugte
Ausführungsformen
der vorliegenden Erfindung sind im folgenden mit Bezug auf die Zeichnungen
mit weiteren Einzelheiten erörtert. In
den Figuren zeigen:
-
1 eine
Vorderansicht einer Fehlerdiagnoseeinrichtung gemäß der vorliegenden
Erfindung, welche mit einer elektronischen Steuereinheit in einem
Kraftfahrzeug verbunden ist;
-
2 einen
Schaltplan in Form eines Blockdiagramms der elektronischen Steuereinheit
und der Diagnoseeinrichtung gemäß einer
ersten bevorzugten Ausführungsform
der vorliegenden Erfindung;
-
3 ein
Schaltplan in Form eines Blockdiagramms der FPGA 45 von 2;
-
4 ein
Flußdiagramm
zur Erläuterung
des Ablaufs des Datenaustausches und des Diagnoseverfahrens gemäß der ersten
Ausführungsform;
-
5 einen
Schaltplan in Form eines Blockdiagramms der elektronischen Steuereinheit
und der Fehlerdiagnoseeinrichtung gemäß einer weiteren Ausführung, die
nicht Gegenstand der beanspruchten Erfindung ist; und
-
6A und 6B Flußdiagramme
zur Erläuterung
des Ablaufs des Datenaustausches und des Diagnoseverfahrens gemäß der weiteren
Ausführung.
-
1 zeigt
eine Frontplatte einer tragbaren Diagnoseeinrichtung 100 gemäß der vorliegenden Erfindung.
Die Diagnoseeinrichtung 100 ist mit einer elektronischen
Steuereinheit 300 verbunden, welche für die Diagnose in einem Kraftfahrzeug 200 installiert
ist. An der Frontplatte sind ein Flüssigkristallbildschirm 30,
eine Anzeigeeinrichtung 31 aus lichtemittierenden Dioden
und eine Tastatur 32 vorgesehen. Eine Eingangs/Ausgangs-Verbindungseinrichtung 33 und
ein Leistungsschalter 35 sind oben an der Diagnoseeinrichtung 100 vorgesehen.
Ein Adapterstück 34 erstreckt
sich von der Eingangs/Ausgangs-Verbindungseinrichtung 33.
Eine Speicherkassette 60 wird in den unteren Teil der Diagnoseeinrichtung 100 eingebracht.
Die Kassette 60 wird später
beschrieben.
-
Um
einen Fehler zu diagnostizieren, welcher in der Steuereinheit 300 auftritt,
werden folgende Schritte durchgeführt: zunächst wird das Adapterstück 34 mit
einem Verbindungselement 2a der Steuereinheit 300 verbunden;
dann wird der Leistungsschalter 35 eingeschaltet; als drittes
werden bestimmte Tasten der Tastatur 32 eingegeben; und schließlich wird
die Diagnose ausgeführt,
während die
Anzeige des Anzeigebildschirms 30 beobachtet wird.
-
Die
bevorzugten Ausführungsformen
verwenden einen Maschinenleitstand (engine control unit; ECU) 2,
welcher als die elektronische Steuereinheit 300 zu untersuchen
ist, wie in 2 gezeigt. Neben der Motorsteuerung,
kann die elektronische Steuereinheit 300 für die folgenden
Zwecke verwendet werden: Steuerung der Leistungsübertragung eines Motors, eines
automatischen Getriebes und dergleichen; Steuerung des Fahrzeugkörpers, wie
der Klimaanlage und verschiedener Informationsleitsysteme; Steuerung
des Fahrzeugs, wie Steuerung der Aufhängung, des Tempomats (auto-cruise)
und dergleichen.
-
Wie
in 2 gezeigt, ist die Motorsteuereinheit 2 ein
Mikrocomputer mit einem Spannungsregler 8, welcher vorgegebene
konstante Spannungen an die Schaltkreise und einen Treiber 9 liefert.
Der Mikrocomputer umfaßt:
eine CPU 3 als eine Hauptrecheneinheit; ein ROM 4,
welches vorgegebene Daten speichert, z.B. ein Motorsteuerprogramm
und verschiedene Speicherabbildungen; ein RAM 5, welches
Daten speichert, die durch Verarbeiten von Ausgangssignalen unterschiedlicher
Sensoren erhalten werden; eine Eingangsschnittstelle 6,
an welche diese Ausgangssignale übergeben
werden; und eine Ausgangsschnittstelle 7, welche Steuersignale
an verschiedene Betätigungseinrichtungen
liefert. Über Busse
sind diese Komponenten miteinander verbunden.
-
Im
folgenden sind Datensignale angegeben, welche an die Eingangsschnittstelle 6 angelegt
werden: ein Kühltemperatursignal
TW, welches von einem Kühltemperatursensor 10 erzeugt
wird; ein Mager/Fett-Signal λ,
welches dem Luft-Kraftstoff-Verhältnis
entspricht und von einem Sauerstoffsensor 11 erzeugt wird;
ein Ansaugluftmengensignal Q, welches von einem Ansaugluftsensor 12 erzeugt
wird; ein EIN/AUS-Signal SWa eines Klimaanlagenschalters 13;
ein Fahrzeuggeschwindigkeitssignal S, welches von einem Geschwindigkeitssensor 14 erzeugt wird;
ein EIN/AUS-Signal SW1 eines Leerlaufschalters 15; ein
Drosselsignal TrΘ,
welches von einem Drosselsensor 16 erzeugt wird, wobei
das Signal TrΘ einem Öffnungsgrad
der Drossel entspricht; ein EIN/AUS-Signal SWn eines Neutralschalters 17;
und ein Motordrehzahlsignal N, welches von einem Motordrehzahlsensor 18 erzeugt
wird.
-
Diese
Datensignale werden von der CPU 3 verarbeitet und in das
RAM 5 eingeschrieben, um die Berechnungen der Größen zu steuern.
Die CPU 3 liest die Daten von dem RAM 5, um verschiedene Steuergrößen zu berechnen,
wie eine Impulsbreite für
die Kraftstoffeinspritzung und einen Zündzeitpunkt. Die CPU 3 erzeugt
die Steuersignale, welche den Steuergrößen entsprechen. Die Steuersignale werden
zu vorgegebenen Zeitpunkten über
die Ausgangsschnittstelle 7 an den Treiber 9 geschickt.
-
Mit
dem Treiber 9 sind folgende Komponenten verbunden: eine
Tanksteuereinrichtung 19 zum Steuern der Entnahme- oder
Entleerungsmenge des Tanks; eine EGR-Betätigungseinrichtung 20 zum Steuern
der EGR-Größe; eine
Leerlaufsteuerungs-Betätigungseinrichtung 21 zum
Steuern einer Leerlaufdrehzahl; eine Zündspule 22 zum Liefern
einer Hochspannung und Zünden
der Zündspule;
und eine Einspritzeinrichtung 23 zum Einspritzen von Kraftstoff
in einen Motor. Der Treiber 9 treibt diese Komponenten
mit den Steuersignalen an, welche diesem über die Ausgangsschnittstelle 7 zugeführt werden,
um den Motor in jedem Ansteuerbereich zu steuern.
-
Ebenfalls
mit dem Treiber 9 ist eine Selbstdiagnose-Anzeigeeinrichtung 24 verbunden,
um Fehler anzuzeigen, wenn diese von einer Selbstdiagnose-Funktion
entdeckt werden. Die Anzeigeeinrichtung 24 weist eine Reihe
von Lampen auf, welche zu vorgegebenen Zeiten blinken oder auf eine
bestimmte Weise eingeschaltet werden. Diese Lichtanzeigen entsprechen
den Fehlercodes, welche aus dem ROM 4 ausgelesen werden
und ihrerseits den Fehlerbereichen entsprechen.
-
Das
RAM 5 weist einen Backup-RAM auf, dem über einen Regler 8 eine
Hilfsleistungsversorgung von einer Batterie VB zugeführt wird,
wenn die Hauptleistung ausfällt.
Das Bakup-RAM speichert Werte, welches es durch Lernen, durch den
Fehlerbereichen entsprechende Fehlercodes usw. erhält.
-
Die
Diagnoseeinrichtung 100 kann in einer Reparaturwerkstatt
beispielsweise eines Autohändlers
eingesetzt werden. Die Diagnoseeinrichtung 100 weist eine
Steuereinrichtung 36 (Mikrocomputer) und einen Spannungsregler 37 auf.
Mit dem Spannungsregler 37 ist der Leistungsschalter 35 verbunden,
der ferner über
das Adapterstück 34 an
die Batterie VB angeschlossen ist. Die herausnehmbare
Speicherkassette 60 mit einem ROM 61 wird über die
Verbindungseinrichtung 38 in die Steuereinrichtung 36 eingebracht.
-
Die
Steuereinrichtung 36 umfaßt eine CPU 40 als
einen Hauptprozessor, ein RAM 41, einen Zeitgeber 42 zum
Erzeugen eines Synchronisierungssignals, Ein/Ausgangs-Schnittstellen 43 und 44 und eine
Kommunikationsschnitstelle (welche später beschrieben wird). Über Busse
sind diese Komponenten und das ROM 61 der Speicherkassette 60 miteinander
verbunden. Die Ausgangssignale der Sensoren und Schalter der ECU 2 werden
an die Ein/Ausgangs-Schnittstelle 43 über die
Ausgangsschnittstelle 7 übergeben. Abhängig von
den Ausgangssignalen erzeugt die Ein/Ausgangs-Schnittstelle 43 Signale
zum Einschalten der LEDs der Anzeigeeinrichtung 31. Die
LEDs zeigen EIN- oder AUS-Zustände
der Sensoren und Schalter an. Eine Tasteneingabe auf der Tastatur 32 erzeugt
Signale, welche an die Ein/Ausgangs-Schnittstelle 44 geliefert
werden. Die Schnittstelle 44 erzeugt Signale, welche an
den Anzeigebildschirm 30 geliefert werden.
-
Die
erste bevorzugte Ausführungsform
verwendet einen vom Anwender programmierbaren Universalschaltkreis
(feld-programmierbare Gateanordnung; FPGA) 45 als die Übertragungs- oder Kommunikationsschnittstelle.
Die FPGA 45 ist eine integrierte Halbleiterschaltung mit
umprogrammierbaren logischen Funktionen. Diese Funktionen können vor
Ort neu programmiert werden, indem Designinformation verwendet wird,
welche für
einen Kommunikationsprotokoll der ECU 2 gilt.
-
Wie
in 3 gezeigt, weist die FPGA 45 folgende
Merkmale auf: einen Speicher 46, welcher den programmierten
Inhalt speichert; Makrozellen 47, deren logische Funktionen
vom Inhalt des Speichers 46 abhängig sind; einen logischen
Verdrahtungsblock 48, welcher die Makro zellen 47 mit
Daten von dem Speicher 46 verbindet; einen Ein/Ausgangs-Verdrahtungsblock 49, über den
die Makrozellen 47 externe Eingangs- und Ausgangssignal
annehmen können; und
eine systeminterne Programmiereinrichtung 50 zum Verwalten
des Speichers 46. Der Speicher 46 ist entweder
ein flüchtiger
Speicher des SRAM-Typs oder ein nicht flüchtiger Speicher des EEPROM-Typs,
dessen Daten elektrisch löschbar
sind.
-
Die
Speicherkassette 60 soll die Diagnoseeinrichtung 100 für den allgemeinen
Einsatz flexibel und für
unterschiedliche Diagnosegegenstände, Fahrzeugarten,
Kommunikationsprotokolle usw. einsetzbar machen. Zu diesem Zweck
speichert das ROM 61 ein Diagnose-Startprogramm (Bootprogram) für die CPU 40,
ein Diagnoseprogramm für eine
elektronische Steuereinheit (ECU) 2 eines speziellen Kraftfahrzeuges
und logische Daten für
die Neuprogrammierung der FPGA 45. Das ROM 61 muß nicht
notwendigerweise das Bootprogram speichern. Es kann auch in der
Steuereinrichtung 36 ein Nurlesespeicher (ROM), in dem
das Bootprogram gespeichert ist, vorgesehen sein.
-
Die
Speicherkassette 60 weist eine Ein/Ausgangs-Schnittstelle 62 auf,
welche die FPGA 45 und die ECU 2 verbindet. Übertragungsleitungen 63a und 64a sind
mit der Ein/Ausgangs-Schnittstelle 62 über die
Verbindungseinrichtung 38 verbunden. Ferner sind die Übertragungsleitungen 63a und 64a mit
der Eingangs- bzw. der Ausgangsschnittstelle 6 und 7 der
ECU 2 über
die Eingangs/Ausgangs-Verbindungseinrichtung 33 und das
Adapterstück 34 verbunden.
-
Die
Ein/Ausgangs-Schnittstelle 62 wird dazu verwendet, Signalpegel,
Eingangs/Ausgangs-Leistungen
usw. so umzuwandeln, daß sie
für jede
Art von ECU 2 geeignet sind. Die Motorsteuereinheiten können in
den Übertragungssystemen
der Kraftfahrzeuge unterschiedlich sein. Ferner können solche Steuereinheiten
nicht über
logische Funktionen der FPGA 45 angepaßt werden. Übertragungsleitungen 63b und 64b sind über die
Verbindungseinrichtung 38 mit der Ein/Ausgangs-Schnittstelle 62 verbunden, wobei
sich die Übertragungsleitungen
von dem Ausgangsanschluß bzw.
dem Eingangsanschluß der FPGA 45 erstrecken.
Die Ein/Ausgangs-Schnittstelle 62 kann durch Drahtverbindungen
der Übertragungsleitungen 63a und 63b und 64a und 64b ersetzt
werden. Dieses Ersetzen ist möglich,
wenn die Signale zwischen der ECU 2 und der FPGA 45 zueinanderpassen.
-
Um
Fehler zu diagnostizieren, wird die Speicherkassette 60 mit
dem ROM 61 in die Diagnoseeinrichtung 100 eingebracht.
Das ROM 61 speichert das Diagnoseprogramm für die Motorsteuereinheit (ECU) 2 eines
bestimmten Kraftfahrzeuges und bestimmter Designdaten. Die Diagnoseeinrichtung 100 wird
initialisiert, und die in dem ROM 61 gespeicherten Designdaten
werden zu der FPGA 45 übertragen. Die
FPGA 45 wird mit den Designdaten neu programmiert, so daß sie für das Diagnoseprogramm
und das Kommunikationsprotokoll für die ECU 2 des Kraftfahrzeugs 200 einsetzbar
ist. Auf diese Weise wird die Kommunikation zwischen der ECU 2 und
der FPGA 45 möglich.
-
Das
in 4 gezeigte Flußdiagramm beschreibt den Ablauf
des Diagnosebetriebs mit der Diagnoseeinrichtung 100.
-
Um
das Verfahren durchzuführen
wird: zuerst die Diagnoseeinrichtung 100 mit der Speicherkassette 60 über das
Adapterstück 34 mit
der ECU 2 verbunden; und dann wird der Leistungsschalter 35 eingeschaltet,
um die CPU 40 zurückzusetzen,
welche das gesamte System der Diagnoseeinrichtung 100 bestimmt.
Auf diese Weise wird das gesamte System initialisiert (Schritt S101).
-
Die
Initialisierung schaltet den Programmierungsmodus der FPGA 45 im
Schritt S102 ein. In dem Fall, daß der Speicher 46 (3)
der FPGA 45 ein EEPROM ist, müssen dessen Daten zuvor gelöscht werden.
Im Schritt S103 werden die Designdaten zum Bilden der Kommunikationsschnittstelle, welche
für das
Kommunikationsprotokoll der ECU 2 anwendbar ist, aus dem
ROM 61 der Speicherkassette 60 gelesen. Die Designdaten
werden zu der FPGA 45 übertragen.
-
Im
Schritt S104 wird überprüft, ob die Übertragung
aller Designdaten abgeschlossen ist. Wenn sie nicht abgeschlossen
ist, wird die Datenaustausch im Schritt S103 fortgesetzt. Wenn sie
abgeschlossen ist, wird der Programmierungsmodus der FPGA 45 im
Schritt S105 abgeschaltet.
-
In
der FPGA 45, wie sie in 3 gezeigt
ist, bestimmt die systemeigene Programmiereinrichtung 50 die
logischen Funktionen der Makrozellen 47. Diese Entscheidung
wird nach Maßgabe
der Designdaten gefällt,
welche in dem Speicher 46 gespeichert sind, wenn der Programmiermodus
EIN-geschaltet ist. Ferner werden der logische Verdrahtungs block 48 und
der Eingangs/Ausgangs-Verdrahtungsblock 49 mit der Verbindungsinformation
miteinander verbunden. Wenn der Datenaustausch abgeschlossen ist,
bildet die FPGA 45 die Kommunikations-schnittstelle, welche
für das
Kommunikationsprotokoll der ECU 2 verwendbar ist. Die FPGA 45 wird
dann aktiv, so daß die
Kommunikation zwischen der CPU 40 und der ECU 2 möglich ist,
wenn der Programmiermodus AUS-geschaltet ist.
-
Im
Schritt S106 überträgt die FPGA 45 eine Antwortanforderung über die
Verbindungsleitung 63b, die Ein/Ausgangs-Schnittstelle 62 der
Speicherkassette 60, die Übertragungsleitung 63a der
Diagnoseeinrichtung 100 und das Adapterstück 34 zu
der ECU 2. Diese Datenaustausch wird mit dem Kommunikationsprotokoll
der ECU 2 durchgeführt.
Die FPGA 45 wartet dann im Schritt S107 auf die Antwort
der ECU 2.
-
Die
Antwortanforderung wird an die ECU 2 über die Eingangsschnittstelle 6 weitergeleitet.
Daraufhin überträgt die ECU 2 eine
Antwort über
das Adapterstück 34,
die Übertragungsleitung 64a,
die Ein/Ausgangs-Schnittstelle 62, die Übertragungsleitung 64b und
die FPGA 45 zu der CPU 40.
-
Wenn
die CPU 40 im Schritt S107 die Antwort empfängt, führt die
CPU 40 im Schritt S108 ein Diagnoseprogramm aus. Während dieses
Programm läuft,
wird eine Nachricht auf dem Anzeigebildschirm 30 angezeigt,
welche angibt, daß die
Diagnose nun beginnen kann, und das System geht in einen Tastatureingabe-Wartemodus.
-
Um
beispielsweise eine Batteriespannung zu überprüfen, gibt eine Bedingungsperson
die Batteriespannungs-Diagnosemodus-Tasten, z.B. "F", "0", "1" und "ENT",
auf der Tastatur 32 ein. Dieser Diagnosemodus wird von
der CPU 40 interpretiert, welche Batteriespannungsdaten über die
FPGA 45 von der ECU 2 anfordert.
-
Abhängig von
dieser Anfrage sucht die ECU 2 eine Adresse in dem RAM 5,
welche der Anfrage entspricht, um Daten auszulesen. Diese Daten
werden zu der Diagnoseeinrichtung 100 übertragen.
-
Bei
Empfang führt
die Diagnoseeinrichtung 100 eine Datenverarbeitung durch,
z.B. eine binär-dezimale
Umwandlung. Das verarbeitete Ergebnis wird auf dem Bildschirm 30 angezeigt.
-
Die
Bedienungsperson überprüft die Batteriespannung über die
Anzeige und fährt
nach Bedarf mit der Diagnose weiterer Punkte fort, indem sie entsprechende
Tasten eingibt.
-
Wie
oben beschrieben, kann die Diagnoseeinrichtung gemäß der ersten
Ausführungsform
für verschiedene
Arten von elektronischen Steuereinheiten verwendet werden. Dies
wird dadurch erreicht, daß die
für die
Kommunikationsprotokolle mit unterschiedlichen Datenformaten, Sende-
und Empfangszeiten und dergleichen geeigneten Speicherkassetten
ausgetauscht werden. Es müssen
also keine weiteren Diagnosemittel mit unterschiedlicher Hardware für die Kommunikationsprotokolle
der elektronischen Steuereinheit vorgesehen werden. Daraus ergibt
sich ein sehr effizienter Diagnosebetrieb.
-
Die
Designdaten für
die FPGA 45 müssen nicht
notwendigerweise in dem RAM 61 der Speicherkassette 60 gespeichert
sein. Diese Daten können
durch eine Modifikation des Bootprogramms der CPU 40 von
einem externen Rechner in die FPGA 45 geladen werden.
-
Im
folgenden ist eine weitere Ausführung
des Diagnosesystems beschrieben, die nicht Gegenstand der beanspruchten
Erfindung ist.
-
Wie
in 5 gezeigt, weist die Diagnoseeinrichtung 100a eine
Steuereinrichtung 36a auf, welche als ein Mehrfachprozessor
konfiguriert ist. Die Steuereinrichtung 36a umfaßt eine
CPU 40a als einen Hauptprozessor, ein RAM 41,
einen Zeitgeber 42 zum Erzeugen eines Synchronisierungssignals, Ein/Ausgangs-Schnittstellen 43 und 44 und
einen Unterprozessor (ISP) 70. Über Systembusse sind diese
Komponenten und ein ROM 61a einer Speicherkassette 60a miteinander
verbunden. Der ISP 70 sendet und empfängt Signale zu und von einer
elektronischen Steuereinheit (ECU) 2, welche über Systembusse
mit der Steuereinrichtung 36a in Datenverbindung steht.
-
Die
CPU 40a ist ein Ein-Chip-Prozessor, während der ISP 70 eine
Ein-Chip-Einrichtung mit einem Prozessor, ROMs, RAMs und Ein/Ausgangs-Schnittstellen
ist. Der Ein-Chip-Prozessor,
wie die CPU 40a, und die Ein-Chip-Einrichtung, wie der ISP 70,
sind jedoch im Zusammenhang dieser Erfindung beide als Prozessor
bezeichnet.
-
tokolle
usw. einsetzbar machen. Zu diesem Zweck speichert das ROM 61a verschiedene
Programme für
die CPU 40a und den ISP 70. Die Programme für die CPU 40a sind
ein Diagnose-Bootprogramm, ein Diagnoseprogramm für die ECU 2 eines bestimmten
Kraftfahrzeugs usw. Die Programme für den ISP 70 umfassen
ein Kommunikations-Verarbeitungsprogramm, welches an das Kommunikationsprotokoll
der ECU 2 anpaßbar
ist, usw.
-
Die
Speicherkassette 60a weist eine Ein/Ausgangs-Schnittstelle 62a auf,
welche den ISP 70 und die ECU 2 verbindet. Übertragungsleitungen 63a und 64a sind
mit der Ein/Ausgangs-Schnittstelle 62a über die
Verbindungseinrichtung 38 verbunden. Die Übertragungsleitungen 63a und 64a sind
ferner mit den Eingangs- und Ausgangsschnittstellen 6 und 7 der
ECU 2 über
eine Eingangs/Ausgangs-Verbindungseinrichtung 33 und ein
Adapterstück 34 verbunden.
-
Die
Ein/Ausgangs-Schnittstelle 62a paßt Signalpegel, Eingangs/Ausgangs-Leistungen
und dergleichen an die ECU 2 an, welche in Übertragungssystemen
der Kraftfahrzeuge unterschiedlich sind und nicht durch Software
emuliert werden können. Übertragungsleitungen 63b und 64b sind über die Verbindungseinrichtung 38 mit
der Ein/Ausgangs-Schnittstelle 62a verbunden und erstrecken sich
von dem Ausgangs- bzw. dem Eingangsanschluß des ISP 70. Die
Ein/Ausgangs-Schnittstelle 62a kann durch Drähte ersetzt
werden, welche die Übertragungsleitungen 63a und 63b und 64a und 64b verbinden.
Dieser Ersatz ist möglich,
wenn die Signale zwischen der ECU 2 und dem ISP 70 aneinander
angepaßt
sind.
-
Die
CPU 40a weist Speicherbereiche für die Programme oder Daten
auf, welche in dem RAM 41 der Steuereinrichtung 36a und
dem ROM 61a der Speicherkassette 60a gespeichert
sind. Das System der Diagnoseeinrichtung 100a läuft mit
einem Startprogramm (Bootprogramm), das in dem ROM 61a gespeichert
ist. Dieses Bootprogramm muß nicht
notwendigerweise in dem ROM 61a gespeichert sein. Das Bootprogramm
kann in einem ROM (nicht gezeigt) der Steuereinrichtung 36a gespeichert
sein. Oder wenn die CPU 40a eine Einrichtung mit einem internen
ROM ist, kamm das Bootprogramm auch in dem internen ROM gespeichert
sein.
-
Der
ISP 70 ermöglicht
der Diagnoseeinrichtung 100a den Datenaustausch mit elektronischen Steuereinheit
mit unterschiedlichen Kommunikationsprotokollen mehrerer Arten von
Kraftfahrzeugen. Man kann also sagen, daß der ISP 70 eine
intelligente Ein/Ausgangs-Schnittstelle eines Mikrocomputers ist.
Bei dieser zweiten Ausführungsform
ist der ISP 70 eine Ein-Chip- Einrichtung mit einem ROM zum Speichern
des Bootprogramms, RAMs zum Speichern von Daten und Ein/Ausgangs-Schnittstellen.
-
Um
Fehler zu diagnostizieren, wird die Speicherkassette 60a mit
dem ROM 61a in die Diagnoseeinrichtung 100a eingebracht.
Das ROM 61a speichert das Diagnoseprogramm für die Motorsteuereinheit
(ECU) 2 eines bestimmten Kraftfahrzeuges sowie ein Kommunikations-Verarbeitungsprogramm.
-
Die
Diagnoseeinrichtung 100a wird initialisiert, und das in
dem ROM 61a gespeicherte Kommunikations-Verarbeitungsprogramm
wird zu dem ISP 70 übertragen.
Der ISP 70 führt
das Kommunikations-Verarbeitungsprogramm aus, um einen Datenaustausch
mit der ECU 2 zu ermöglichen.
Bei dem Datenaustausch sendet der ISP 70 die Daten der CPU 40a zu
der ECU 2 und umgekehrt.
-
Einerseits
liest und schreibt die CPU 40a Daten von bzw. zu dem ISP 70,
um einen virtuellen Datenaustausch mit der ECU 2 herzustellen.
Andererseits führt
der ISP 70 einen wirklichen Datenaustausch mit der ECU 2 durch,
wobei das Kommunikations-Verarbeitungsprogramm von dem ROM 61a der Speicherkassette 60a gesendet
wird. Der ISP 70 kann den Datenaustausch mit der ECU 2 unabhängig von
der Diagnose bewirken, welche von der CPU 40a dorchgeführt wird.
-
Der
ISP 70 kann einen internen Speicher geringer Kapazität haben,
oder er kann ein Ein-Chip-Prozessor
sein, der keinen solchen internen Speicher enthält. In diesem Fall können ein
RAM zum Speichern des Kommunikations-Verarbeitungsprogramms oder
von Arbeitsdaten und ein ROM zum Speichern des Bootprogramms in
der Steuereinrichtung 36a vorgesehen werden.
-
Im
folgenden sind die in den 6A und 6B gezeigten
Flußdiagramme
des Ablaufs des Datenaustausches und der -diagnose erörtert. 6A zeigt
das erste Verfahren (Prozeß),
welches von der CPU 40a der Diagnoseeinrichtung 100a ausgeführt wird. 6b zeigt
das zweite Verfahren (Prozeß),
welches von dem ISP 70 der Diagnoseeinrichtung 100a ausgeführt wird.
-
Zum
Ausführen
des ersten und des zweiten Verfahrens werden: die Diagnoseeinrichtung 100a mit
der Speicherkassette 60a, welche für die ECU 2 des Kraftfahrzeugs 200 geeignet
ist, über das
Adapterstück 34 angeschlossen;
dann wird der Leistungsschalter 35 eingeschaltet, um die
CPU 40a, welche das Hauptsystem der Diagnoseeinrichtung 100a kontrolliert,
zurückzusetzen.
Das in 6A gezeigte erste Verfahren
beginnt anschließend.
-
Im
Schritt S201 wird das Hauptsystem der Diagnoseeinrichtung 100a initialisiert.
Dann wird im Schritt S202 das Untersystem für den Datenaustausch des ISP 70 zurückgesetzt,
um das in 6B gezeigte zweite Verfahren
zu starten. Im Schritt S301 (6B) wird
auch das Untersystem des ISP 70 initialisiert.
-
Im
Schritt 5203 liest die CPU 40a Daten (Kommunikationsemulations-Programm)
aus dem ROM 61a der Speicherkassette 60a aus.
Das Kommunikationsemulations-Programm wird zum Emulieren des Kommunikationsprotokolls
der ECU 2 verwendet. Die Daten werden in einen Kanal oder
Anschluß des
ISP 70 geschrieben. Das erste Verfahren geht dann im Schritt 5204 in
eine Datenempfangs-Warteschleife.
-
Im
zweiten Verfahren in 6B empfängt der ISP 70 im
Schritt S302 die Daten des Emulations-Programm, welche zu dessen
Kanal überspielt werden.
Der ISP 70 überträgt die Daten
zu einer bestimmten Speicheradresse (die Adresse des internen RAMs),
im Schritt S303. Dann sendet der ISP 70 im Schritt S304
ein Datenbestätigungs-Signal
von seinem Kanal aus.
-
Bei
dem ersten Verfahren in 6A liest
die CPU 40a im Schritt S204 das Datenbestätigungs-Signal.
Das erste Verfahren geht von der Datenempfangs-Warteschleife in
Schritt S204 zum Schritt S205 weiter. Im Schritt S205 wird überprüft, ob die
Datenübertragung
abgeschlossen ist. Wenn sie abgeschlossen ist, geht das erste Verfahren
zum Schritt S206 weiter. Wenn sie nicht abgeschlossen ist, geht
das erste Verfahren zurück
zum Schritt S203 zurück,
um die Datenübertragung
fortzusetzen.
-
Während der
Schritte S203 bis S206 im ersten Verfahren geht das zweite Verfahren
vom Schritt S304 zum Schritt S305. Im Schritt S305 wird überprüft, ob der
Datenempfang abgeschlossen ist. Das zweite Verfahren geht zum Schritt
S306 weiter, wenn der Datenempfang und die Datenübertragung zu dem Speicher
des ISP 70 abgeschlossen sind. Wenn sie nicht abgeschlossen
sind, geht das zweite Verfahren zurück zum Schritt S302, um den
Datenempfang fortzusetzen.
-
Im
ersten Verfahren schreibt die CPU 40a im Schritt S206 eine
Antwortanforderung für
die ECU 2 in einen Kanal des ISP 70. Dies wird
nach dem Abschluß der Übertragung
des Kommunikationsemulations-Programms von der CPU 40a zu
dem ISP 70 durchgeführt.
Die CPU 40a geht dann im Schritt S107 in einen Antwon-Wartemodus,
um eine Antwort von der ECU 2 zu erwarten.
-
Gleichzeitig
führt der
ISP 70 im Schritt S306 im zweiten Verfahren das Kommunikationsemulations-Programm
aus. Der ISP 70 liest die Antwortanforderung von der CPU 40a und
sendet Antwortanforderungsdaten an seinen Ausgangsanschluß aus. Die Anforderungsdaten
werden über
die Übertragungsleitung 63b,
die Ein/Ausgangs-Schnittstelle 62a der Speicherkassette 60a,
die Übertragungsleitung 63a und
das Adapterstück 34 zu
der ECU 2 übertragen. Diese Übertragung
der Anforderungsdaten wird mit dem Kommunikationsprotokoll der ECU 2 durchgeführt.
-
Die
ECU 2 liest die Anforderungsdaten über die Eingangsschnittstelle 6.
Die ECU 2 sendet dann Antwortdaten über die Eingangsschnittstelle 7 aus. Die
Antwortdaten werden über
das Adapterstück 34, die Übertragungsleitung 64a,
die Ein/Ausgangs-Schnittstelle 62a der Speicherkassette 60a und
die Übertragungsleitung 64b zu
dem Eingangsanschluß des
ISP 70 übertragen.
Ferner werden die Antwortdaten von einem Kanal des ISP 70 auf
die Systembusse gesendet.
-
Im
ersten Verfahren liest die CPU 40a im Schritt S207 die
Antwortdaten von dem ISP 70 und bestätigt die Antwort der ECU 2.
Das erste Verfahren geht dann zum Schritt S208, in dem ein Anwendungsprogramm
für die
Diagnose ausgeführt
wird. Die Nachricht "Diagnosebeginn
ok" wird auf dem Bildschirm 30 angezeigt,
und das erste Verfahren geht in einen Wartemodus, um eine Tastatureingabe über die
Tastatur 32 zu erwarten, während das Anwendungsprogramm
läuft.
-
Um
z.B. eine Batteriespannung zu überprüfen, gibt
eine Bedienungsposition die Tasten für den Batteriespannung-Diagnosemodus
auf der Tastatur 32 ein, beispielsweise "F", "0", "1" und "ENT".
Dieser Diagnosemodus wird von der CPU 40a interpretiert, welche
eine Anforderung der Batteriespannungsdaten an den ISP 70 sendet.
-
Der
ISP 70 wandelt die Batteriespannungs-Anforderungsdaten
in ein Datenaustauschs-Anforderungssignal
mit einem bestimmten Format und einer bestimmten Zeitsteuerung gemäß dem Kommunikationsprotokoll
der ECU 2 um. Bei Empfang empfängt der ISP 70 die
Batteriespannungsdaten, welche von der ECU 2 gesendet werden,
und er sendet die Daten an seinem Kanal aus.
-
Die
CPU 40a liest die von dem ISP 70 gesendeten Daten
und führt
eine Datenverarbeitung durch, z.B. eine binär-dezimale Umwandlung. Das
verarbeitete Ergebnis wird auf dem Bildschirm 30 angezeigt. Die
Bedienungsperson überprüft die Batteriespannung über die
Anzeige und setzt nach Bedarf die Diagnose weiterer Punkte durch
Eingabe entsprechender Tasten fort.
-
Wie
oben beschrieben, kann die Diagnoseeinrichtung gemäß der zweiten
Ausführungsform
für unterschiedliche
Arten von elektronischen Steuereinheiten verwendet werden. Dies
wird dadurch erreicht, daß die
für die
Kommunikationsprotokolle mit unterschiedlichen Datenformaten, Sende-
und Empfangszeiten usw. geeigneten Speicherkassetten ausgetauscht
werden. Es müssen
keine weiteren Diagnosemittel mit unterschiedlicher Hardware für die Kommunikationsprotokolle
der elektronischen Steuereinheiten vorgesehen werden. Daraus ergibt
sich ein sehr effizienter Diagnosebetrieb.
-
Die
zweite Ausführungsform
wendet den ISP 70 als Ein-Chip-Unterprozessor mit einem
ROM, einem RAM und Ein/Ausgangs-Schnittstellen. Als ISP 70 könnte jedoch
auch ein Ein-Chip-Prozessor
mit nur einer Datenverarbeitungseinheit verwendet werden. In diesem
Fall werden das ROM oder RAM mit dem Speicherbereich für den ISP 70 in
der Steuereinrichtung 36a vorgesehen. Ferner wird ein Teil
des ROM oder RAM oder ein Teil des RAM 41 für die CPU 40a als
ein Kommunikationspuffer verwendet. Dieser Kommunikationspuffer
kann sowohl für
die Übertragung
des in dem ROM 61a der Speicherkassette 60a gespeicherten
Kommunikations-Verarbeitungsprogramms als auch für den Datenaustausch zwischen der
CPU 40a und dem ISP 70 verwendet werden.
-
Die
Steuereinrichtung 36a kann mit einer Steuereinrichtung
für den
direkten Speicherzugriff (DMA) ausgestattet sein. In diesem Fall
kann das Kommunikations-Verarbeitungsprogramm durch eine DMA-Übertragung
von dem ROM 61 zu dem ISP 70 übertragen werden.
-
Ferner
muß das
Kommunikations-Verarbeitungsprogramm für den ISP 70 nicht
notwendigerweise in dem ROM 61a der Speicherkassette 60a gespeichert
sein. Eine andere Möglichkeit
ist, das Bootprogramm für
die CPU 40a zu modifizieren, so daß es zusammen mit dem Kommunikations-Verarbeitungsprogramm
von einem externen Rechner geladen wird.
-
Gemäß der obigen
Beschreibung hat die vorliegende Erfindung die folgenden Vorteile:
Die
Fehlerdiagnoseeinrichtung weist eine integrierte Schaltung auf,
deren logische Funktionen vor Ort mit Designdaten umprogrammierbar
sind. Die integrierte Schaltung wird als eine Kommunikationsschnittstelle verwendet,
die für
Kommunikationsprotokolle einer elektrischen Steuereinheit geeignet
ist, die in einem Kraftfahrzeug montiert ist. Die Diagnoseeinrichtung führt eine
Diagnose aufgrund der Daten durch, welche von der elektronischen
Steuereinheit gesendet werden, welche eine Datenaustausch gemäß dem Kommunikationsprotokoll
durchführt.
Die Diagnoseeinrichtung gemäß der vorliegenden
Erfindung kann also für
verschiedene Arten von elektronischen Steuereinheiten mit unterschiedlichen
Kommunikations-protokollen verwendet werden. Dadurch ist die Diagnoseeinrichtung
universell und flexibel einsetzbar, und die Kosten für die Diagnose
werden gesenkt.
-
Die
Designdaten für
den integrierten Schaltkreis, welcher die Kommunikationsschnittstelle
bildet, sind ferner in einem Aufzeichnungsmedium in einer abnehmbaren
Kassette gespeichert. Die Diagnoseeinrichtung kann so an unterschiedliche
Kommunikationsprotokolle für
verschiedene elektronische Steuereinheiten angepaßt werden,
welche in Kraftfahrzeuge eingebaut sind. Das Diagnoseprogramm ist
ferner auf demselben Aufzeichnungsmedium in der abnehmbaren Kassette
gespeichert. Das Programm kann also leicht in ein Diagnoseprogramm umgewandelt
werden, das an eine elektronische Steuereinheit eines Kraftfahrzeugs
angepaßt
ist. Daraus ergibt sich eine vielseitige Einsetzbarkeit für die Diagnose.
-
Der
integrierte Schaltkreis, welcher die Kommunikationsschnittstelle
bildet, ist ferner über
eine Schnittstellenschaltung in der Kassette mit der elektronischen
Steuereinheit des Kraftfahrzeugs verbunden. Mit dieser Schnittstellenschaltung
werden Signalpegel, Eingangs/Ausgangs-Leistungen und dergleichen,
welche sich von dem Kommunikationssystem des Kraftfahrzeugs unterscheiden
und welche nicht durch das Kommunikationsprotokoll angepaßt werden
können,
so umgewandelt werden, daß sie
zu der elektronischen Steuereinheit passen.
-
Die
Diagnoseeinrichtung kann für
unterschiedliche Arten von elektronischen Steuereinheiten mit verschiedenen
Kommunikationsprotokollen verwendet werden, ohne daß ihre Hardware
verändert wird.
Dadurch wird die Diagnoseeinrichtung flexibel einsetzbar, und die
Kosten für
die Diagnose werden gesenkt.
-
Während hier
die momentan bevorzugten Ausführungsformen
der vorliegenden Erfindung gezeigt und beschrieben wurden, ist zu
beachten, daß diese
Offenbarung nur dem Zwecke der Erläuterung dient und daß verschiedene Änderungen
und Modifikationen ausgeführt
werden können,
ohne den Bereich der Erfindung gemäß den folgenden Ansprüchen zu
verlassen.