-
QUERVERWEIS AUF VERWANDTE
ANMELDUNGEN
-
Diese
Anmeldung beansprucht die Priorität der vorläufigen US-Anmeldung mit der
Nr. 61/049,648, die am 1. Mai 2008 eingereicht wurde. Der gesamte
Offenbarungsgehalt der vorstehenden Anmeldung ist durch Bezugnahme
hier aufgenommen.
-
GEBIET
-
Die
vorliegende Offenbarung betrifft Motorklopfdetektionssysteme und
insbesondere Systeme und Verfahren zur Motorklopfdiagnose.
-
HINTERGRUND
-
Die
hier bereitgestellte Hintergrundbeschreibung dient der allgemeinen
Darstellung des Kontexts der Offenbarung. Die Arbeit der gegenwärtig genannten
Erfinder, sofern sie in diesem Hintergrundabschnitt beschrieben
ist, sowie Aspekte der Beschreibung, die zum Zeitpunkt des Einreichens nicht
anderweitig als Stand der Technik ausgewiesen sind, werden weder
explizit noch implizit als Stand der Technik gegen die vorliegende
Offenbarung anerkannt.
-
Mit
Bezug auf 1 ist nun ein Funktionsblockdiagramm
eines Klopfsteuerungssystems 100 nach dem Stand der Technik
dargestellt. Das Klopfsteuerungssystem 100 umfasst einen
Motor 102, der mehrere Zylinder 104 umfasst. Der
Motor 102 umfasst einen Vibrationssensor 106,
der eine Vibration des Motors 102 erfasst. Die Vibration
kann durch eine frühe
Detonation in den Zylindern 104 verursacht sein, die auch
als Klopfen bezeichnet wird. Bei verschiedenen Implementierungen
kann der Vibrationssensor 106 einen piezoelektrischen Beschleunigungsmesser
umfassen.
-
Ein
Ausgang des Vibrationssensors 106 wird von einem Analog/Digital-Umsetzer (A/D-Umsetzer) 110 empfangen.
Der A/D-Umsetzer 110 digitalisiert den Ausgang des Vibrationssensors 106 und
leitet den digitalisierten Ausgang an einen digitalen Signalprozessor
(DSP) 114 weiter. Der DSP 114 führt eine schnelle
Fouriertransformation (FFT) auf den digitalisierten Ausgang aus.
Der Frequenzgehalt oder das Frequenzspektrum des digitalisierten
Ausgangs wird an ein Klopfdetektionsmodul 116 übertragen.
-
Das
Klopfdetektionsmodul 116 ermittelt auf der Grundlage des
Frequenzgehalts des Ausgangs des Vibrationssensors 106,
ob gerade ein Klopfen auftritt. Das Klopfdetektionsmodul 116 kann
einen Intensitätsspitzenwert
oder einen Intensitätsmittelwert über die
Frequenzen der von dem DSP 114 berechneten FFT wählen. Das
Klopfdetektionsmodul 116 kann den Intensitätsmittelwert
oder den Intensitätsspitzenwert
mit einem Intensitätsschwellenwert
vergleichen und ermitteln, dass ein Klopfen vorliegt, wenn der Intensitätsschwellenwert überschritten wird.
-
Das
Klopfdetektionsmodul 116 kann den Intensitätsschwellenwert
an Hintergrundvibrationen anpassen, die mit dem Klopfen, das in
dem Motor 102 vorhanden ist, nicht in Beziehung stehen.
Das Klopfdetektionsmodul 116 überträgt Klopfinformationen an ein
Klopfsteuerungsmodul 118. Auf der Grundlage der Klopfinformationen
variiert das Klopfsteuerungsmodul 118 Betriebsparameter
des Motors 102, um das Klopfen zu verringern.
-
Beispielsweise
kann das Klopfsteuerungsmodul 118 den Motor 102 anweisen,
den Zündfunken zu
verzögern.
-
ZUSAMMENFASSUNG
-
Bei
einer Ausführungsform
wird ein Klopfdiagnosesystem bereitgestellt, das ein Klopfmodul
umfasst, das einen Abtastzählerwert
erhöht,
wenn ein Zylinderzündsignal
empfangen wird, das einem ersten Zylinder entspricht, und das einen
Klopfzählerwert
auf der Grundlage eines Klopfdetektionssignals, welches dem Zylinderzündsignal
des ersten Zylinders entspricht, selektiv inkrementiert. Ein Klopfanalysemodul
analysiert den Klopfzählerwert
des ersten Zylinders, wenn der Abtastzählerwert des ersten Zylinders
einen vorbestimmten Wert erreicht, und erzeugt selektiv ein Signal
für übermäßiges Klopfen, wenn
der Klopfzählerwert
einen vorbestimmten Schwellenwert überschreitet. Ein Gegenmaßnahmenmodul
führt auf
der Grundlage des Signals für übermäßiges Klopfen
selektiv eine Gegenmaßnahme
aus.
-
Gemäß weiteren
Merkmalen umfasst ein Verfahren zur Klopfdetektion, dass ein Abtastzählerwert
inkrementiert wird, wenn ein Zylinderzündsignal empfangen wird, das
einem ersten Zylinder entspricht, und dass ein Klopfzählerwert
auf der Grundlage eines Klopfdetektionssignals, welches dem Zylinderzündsignal
des ersten Zylinders entspricht, selektiv inkrementiert wird. Der
Klopfzählerwert
für den ersten
Zylinder wird analysiert, wenn der Abtastzählerwert des ersten Zylinders
einen vorbestimmten Wert erreicht, und es wird ein Signal für übermäßiges Klopfen
selektiv erzeugt, wenn der Klopfzählerwert einen vorbestimmten
Schwellenwert überschreitet. Eine
Gegenmaßnahme
wird auf der Grundlage des Signals für übermäßiges Klopfen selektiv ausgeführt.
-
Weitere
Anwendungsgebiete der vorliegenden Offenbarung ergeben sich aus
der nachstehend hier bereitgestellten genauen Beschreibung. Es versteht
sich, dass die genaue Beschreibung und spezielle Beispiele nur zur
Veranschaulichung gedacht sind und den Umfang der Offenbarung nicht
einschränken
sollen.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die
vorliegende Offenbarung wird anhand der genauen Beschreibung und
der beiliegenden Zeichnungen besser verstanden werden, in denen:
-
1 ein
Funktionsblockdiagramm eines Klopfsteuerungssystems nach dem Stand
der Technik ist;
-
2 ein
Funktionsblockdiagramm eines beispielhaften Klopfsteuerungssystems
gemäß den Prinzipien
der vorliegenden Offenbarung ist;
-
3 ein
Funktionsblockdiagramm eines beispielhaften Klopfdetektionsmoduls
des Klopfsteuerungssystems gemäß den Prinzipien
der vorliegenden Offenbarung ist;
-
4 eine
graphische Darstellung beispielhafter Inhalte des Statistikspeichermoduls
gemäß den Prinzipien
der vorliegenden Offenbarung ist;
-
5 ein
Flussdiagramm ist, das beispielhafte Schritte darstellt, die von
dem Klopfdetektionsmodul gemäß den Prinzipien
der vorliegenden Offenbarung ausgeführt werden;
-
6 ein
Funktionsblockdiagramm eines beispielhaften Klopfdiagnosemoduls
des Klopfsteuerungssystems gemäß den Prinzipien
der vorliegenden Offenbarung ist;
-
7 eine
Beispieltabelle darstellt, die verwendet werden kann, um herauszufinden,
ob gemäß den Prinzipien
der vorliegenden Offenbarung ein übermäßiges Klopfen detektiert wird;
und
-
8A–8B Flussdiagramme
sind, die beispielhafte Schritte darstellen, die von dem Klopfdiagnosemodul
gemäß den Prinzipien
der vorliegenden Offenbarung ausgeführt werden.
-
GENAUE BESCHREIBUNG
-
Die
folgende Beschreibung ist rein beispielhafter Natur und soll die
Offenbarung, ihre Anwendung oder Verwendungen in keiner Weise einschränken. Der
Klarheit halber werden in den Zeichnungen gleiche Bezugszeichen
verwendet, um ähnliche
Elemente zu bezeichnen. Bei der Verwendung hierin soll der Ausdruck
mindestens eine von A, B, und C so aufgefasst werden, dass er ein
logisches (A oder B oder C) bedeutet, wobei ein nicht exklusives
logisches Oder verwendet wird. Es ist zu verstehen, dass Schritte
in einem Verfahren in einer anderen Reihenfolge ausgeführt werden
können,
ohne die Prinzipien der vorliegenden Offenbarung zu verändern.
-
Bei
der Verwendung hierin bezieht sich der Begriff Modul auf eine anwendungsspezifische
integrierte Schaltung (ASIC), eine elektronische Schaltung, einen
Prozessor (gemeinsam genutzt, dediziert, oder Gruppe) und einen
Speicher, die ein oder mehrere Software- oder Firmwareprogramme
ausführen,
eine kombinatorische Logikschaltung und/oder weitere geeignete Komponenten,
welche die beschriebene Funktionalität bereitstellen.
-
Die
Klopfdetektion hängt
von Sensoren ab, die Klopfbedingungen in dem Zylinderblock messen. Zum
Beispiel können
Vibrationssensoren verwendet werden, um ein Klopfen zu detektieren.
Bei verschiedenen Implementierungen kann ein Klopfsensor für jede Zylinderbank
in einem Motor verwendet werden. Zum Beispiel gibt es bei einem
Achtzylindermotor in einer V-8-Konfiguration einen Klopfsensor für jede Bank
mit 4 Zylindern. Wenn einer der Vibrationssensoren fehlerhaft arbeitet
und/oder nicht korrekt installiert ist, können Klopfdaten, welche dieser
Zylinderbank entsprechen, fehlerhaft sein.
-
Wenn
andere Vibrationsquellen in einem oder mehreren der Zylinder vorhanden
sind, kann dies auf ähnliche
Weise von den Vibrationssensoren fälschlich als ein Klopfen detektiert
werden. Zum Beispiel kann ein fehlerhaft arbeitender Ventilstößel eine Vibration
erzeugen, welche dem Zündfenster
eines der Zylinder entspricht, und daher als ein Klopfen für diesen
Zylinder detektiert werden.
-
Kurz
dargestellt zeigt 2 ein Funktionsblockdiagramm
eines beispielhaften Klopfsteuerungssystems. 3 ist ein
Blockdiagramm eines Klopfdetektionsmoduls des Klopfsteuerungssystems. 4 stellt
ein beispielhaftes Schema zur Adaption an ein Hintergrundrauschen
dar, wenn Klopfen detektiert wird. 5 stellt
einen beispielhaften Betrieb des Klopfdetektionsmoduls dar. 6 ist
ein Blockdiagramm eines beispiel haften Klopfdiagnosemoduls. 7 ist
eine beispielhafte Diagnosetabelle, die verwendet werden kann, um
herauszufinden, ob gerade ein übermäßiges Klopfen
detektiert wird. 8A–8B sind
Flussdiagramme, die beispielhafte Schritte darstellen, welche von
dem Klopfdiagnosemodul ausgeführt
werden.
-
Das
Klopfdiagnosemodul analysiert das Klopfdetektionssystem, um Unregelmäßigkeiten
zu detektieren. Es werden hier drei Beispiele beschrieben: Die Detektion
von übermäßigem Klopfen,
Werte in einem nicht normalen Bereich und ungenügende Schwankung. Das Klopfdiagnosemodul
detektiert ein Klopfen, um zu ermitteln, ob ein übermäßiges Klopfen detektiert wird.
-
Selbst
bei stark klopfenden Motoren wird der Gesamtklopfbetrag nur selten
einen Schwellenwert, wie etwa 20 Prozent, überschreiten. Der Prozentsatz kann
ermittelt werden, indem die Anzahl detektierter Klopfereignisse
durch die Gesamtanzahl von Zylinderzündereignissen dividiert wird.
Ein übermäßiges Klopfen
kann für
jeden Sensor und für
jeden Zylinder separat ermittelt werden. Auf diese Weise sollten
sich Fehler bezüglich
des Sensors deutlich herausstellen, wenn Daten für diesen Sensor isoliert werden,
während
sich Fehler bezüglich
eines Zylinders deutlich herausstellen sollten, wenn Daten für diesen
Zylinder isoliert werden.
-
Klopfdaten
können
analysiert werden, um festzustellen, ob eine ungenügende Schwankung zwischen
Lesewerten vorhanden ist. Dies kann bewirken, dass kein Klopfen
detektiert wird. Wenn jedoch eine ungenügende Schwankung bei den Lesewerten
vorhanden ist, ist es wahrscheinlicher, dass ein Systemfehler verhindert,
dass genaue Messungen durchgeführt
werden, als dass kein Klopfen vorhanden ist. Tatsächliche
Klopfereignisse können
daher undetektiert bleiben. Der Systemfehler kann nur als Bei spiel
durch einen fehlerhaften Klopfsensor oder einen nicht korrekt installierten
Klopfsensor verursacht werden.
-
Eine
ausreichende Schwankung kann durch Analyse der Rohdaten detektiert
werden. Zum Beispiel kann eine schnelle Fouriertransformation (FFT) auf
den Ausgang des Vibrationssensors ausgeführt werden. Diese FFT kann
auf einen einzigen Intensitätswert
reduziert werden. Dieser Intensitätswert kann über die
Zeit analysiert werden, um zu ermitteln, ob eine ausreichende Schwankung
vorliegt. Zum Beispiel kann die Schwankung von Lesewert zu Lesewert
mit einem Schwellenwert verglichen werden. Alternativ kann ein Mittelwert
oder ein gleitender Mittelwert der Schwankung von Abtastwert zu
Abtastwert ermittelt werden. Zudem kann die Standardabweichung von
Intensitätswerten
berechnet werden. Wenn die Standardabweichung unter einem Schwellenwert
liegt, kann es sein, dass die Intensitätsdaten Motorbedingungen nicht
genau widerspiegeln.
-
Ein
weiterer Fehler, der diagnostiziert werden kann, liegt vor, wenn
Sensordaten zu oft außerhalb
erwarteter Bereiche liegen. Bei verschiedenen Implementierungen
können
mehrere Lastzonen definiert sein. Lastzonen können durch eine Luftströmung, wie
etwa eine Luftmassenströmung
(MAF) oder Luft pro Zylinder (APC), und Motorumdrehungen pro Minute
(RPM) definiert sein. Wenn beispielsweise vier APC-Regionen definiert
sind und 17 RPM-Regionen definiert sind, gibt es insgesamt 68 Lastzonen.
-
Während einer
Kalibrierung kann für
jede der Lastzonen eine Unter- und eine Obergrenze festgelegt werden.
Im Betrieb kann die aktuelle Zone auf der Grundlage der aktuellen
APC und der aktuellen RPM ermittelt werden. Wenn die gemessene Intensität außerhalb
des für
diese Zone definierten Bereichs liegt, kann ein Zähler inkrementiert
werden, der anzeigt, dass die Intensität außerhalb des normalen Bereichs
liegt. Wenn Intensitätswerte häufig genug
außerhalb
eines normalen Bereichs liegen, kann ein Klopfsystemfehler signalisiert
werden.
-
Auf
der Grundlage der Ermittlung von übermäßigem Klopfen, ungenügender Schwankung
und nicht normalem Bereich kann eine Gegenmaßnahme ausgeführt werden,
etwa ein DTC (Diagnosestörungscode)
gesetzt werden. Der DTC kann von einem Zündfunkensteuerungsmodul des
Motors verwendet werden. Wenn beispielsweise der DTC gesetzt ist, kann
es einem Zündfunkensteuerungsmodul
nicht länger
möglich
sein, den Zündzeitpunkt
auf der Grundlage der Klopfdetektion zu steuern. Das Zündfunkensteuerungsmodul
kann daher eine aggressive Zündfunkenvorverstellung
vermeiden, da ein resultierendes Klopfen nicht genau detektiert
werden kann. DTCs können
für jeden
Sensor und für
jeden Zylinder definiert sein. Alternativ kann ein erster DTC für Fehler
eines beliebigen Sensors verwendet werden und ein zweiter DTC kann
für Fehler
eines beliebigen Zylinders verwendet werden. Alternativ kann ein
DTC für
jede Zylinderbank definiert sein.
-
Wieder
auf 2 Bezug nehmend ist ein Funktionsblockdiagramm
eines beispielhaften Klopfsteuerungssystems gezeigt. Das System
umfasst einen Motor 202 und ein Steuerungsmodul 204.
Der Motor 202 umfasst eine oder mehrere Zylinderbänke 206.
Nur als Beispiel sind zwei Zylinderbänke 206-1 und 206-2 gezeigt.
Jede der Zylinderbänke 206-1 und 206-2 umfasst
einen oder mehrere Zylinder 208. Nur als Beispiel sind
acht Zylinder 208 gezeigt. Dies kann einer V-8-Konfiguration
entsprechen. Jede der Zylinderbänke 206-1 und 206-2 umfasst
mindestens einen Vibrationssensor 210.
-
Der
Motor 202 umfasst einen Drehzahlsensor (RPM-Sensor) 220.
Der RPM-Sensor 220 kann mit einer (nicht gezeigten) Kurbelwelle
des Motors 202 verbunden sein, um die Motordrehzahl zu
erfassen. Der Motor 202 kann auch einen Luftmassenstromsensor
(MAF-Sensor) 222 und die anderen Sensoren 224 umfassen.
Ein Zündfunkensteuerungsmodul 226 steuert
den Zeitpunkt des Zündfunkens
für jeden
der Zylinder 208.
-
Das
Steuerungsmodul 204 empfängt Signale von den Vibrationssensoren 210 und
liefert Daten an das Zündfunkensteuerungsmodul 226.
Das Steuerungsmodul 204 kann als Teil eines Motorsteuerungsmoduls
implementiert sein. Das Motorsteuerungsmodul kann auch das Zündfunkensteuerungsmodul 226 umfassen.
Das Steuerungsmodul 204 umfasst ein analoges Frontend 240.
-
Das
analoge Frontend 240 kann zwischen den Signalen von den
Vibrationssensoren 210 auf der Grundlage dessen wählen, welcher
der Zylinder 208 analysiert wird. Jeder der Zylinder 208 zündet in einer
vorbestimmten Reihenfolge. Zünden
bedeutet, dass die Zündkerze
das Luft/Kraftstoffgemisch in dem Zylinder 208 zündet. Während dieser
Verbrennungsphase kann ein Klopfen für diesen Zylinder 208 auftreten.
-
Das
Fenster, das den zündenden
Zylinder für einen
gegebenen Zylinder 208 umgibt, wird als das Klopffenster
dieses Zylinders bezeichnet. Das Vibrationsprofil eines Zylinders
wird während
des Klopffensters des Zylinders erfasst. Das analoge Frontend 240 kann
die Eingänge
von dem Vibrationssensor 210 wählen, der sich in der Zylinderbank 206 befindet,
die den Zylinder 208 aufweist, der gerade in dem Zylinderklopffenster
arbeitet.
-
Wenn
mehrere Vibrationssensoren 210 in den Zylinderbänken 206 vorhanden
sind, kann das analoge Frontend 240 den Vibrationssensor 210 wählen, der
dem erfassten Zylinder 208 am nächsten liegt. Das analoge Frontend 240 kann
eine differentielle Eingangsschaltung umfassen. Die differentielle Eingangsschaltung
kann einen differentiellen Eingang von einem der Vibrationssensoren 210 in
einen Ausgang mit einem Kontakt umsetzen.
-
Das
analoge Frontend 240 kann ein Analogfilter umfassen, das
den Ausgang der Vibrationssensoren 210 filtert. Zum Beispiel
kann das Analogfilter ein Filter erster Ordnung mit einer Tiefpassgrenzfrequenz
von 25 kHz umfassen. Das analoge Frontend 240 kann auch
ein Verstärkungs-/Dämpfungs-Modul umfassen,
etwa ein Verstärkungssteuerungsmodul (nicht
gezeigt). Das Verstärkungs-/Dämpfungs-Modul
kann seinen Eingang alternativ um einen vorbestimmten Betrag verstärken oder
dämpfen.
-
Ein
Ausgang des analogen Frontend 240 wird an einen Analog/Digital-Umsetzer (A/D-Umsetzer) 242 übertragen.
Der A/D-Umsetzer 242 gibt eine digitalisierte Version seines
Eingangs an ein digitales Signalprozessormodul (DSP-Modul) 244 aus.
Der A/D-Umsetzer 242 kann beispielsweise eine Auflösung von
10 Bit oder mehr aufweisen. Das DSP-Modul 244 kann ein
digitales Filter auf das empfangene Signal anwenden. Zum Beispiel
kann das DSP-Modul 244 ein elliptisches digitales Filter
vierter Ordnung mit unbegrenztem Impulsansprechverhalten (IIR) mit einer
Grenzfrequenz von 20 kHz implementieren. Alternativ kann das DSP-Modul 244 zwei
IIR-Filter zweiter Ordnung in Reihe implementieren, um die Stabilität zu verbessern.
-
Das
DSP-Modul 244 kann eine digitale Dezimierung ausführen und
kann eine DC-Vorspannung entfernen. Für jeden der Zylinder 208 führt das DSP-Modul 244 während eines
Klopffensters des Zylinders mindestens eine schnelle Fouriertransformation
(FFT) aus. Die Klopffenster für
jeden der Zylinder 208 können mit Hilfe von Kurbelwellenrotationsgraden
der Kurbelwelle definiert sein. Die Klopffenster können festgelegt
sein oder sie können
auf der Grundlage der Motordrehzahl oder anderer Motorbetriebsparameter
variiert werden.
-
Wenn
die während
eines Klopffensters verstrichene Zeit lang genug ist, etwa bei niedriger
Drehzahl, kann das DSP-Modul 244 genügend Daten sammeln, um mehrere
FFTs während
des Klopffensters zu berechnen. Falls die Daten für die letzte
FFT nur zum Teil gesammelt sind, wenn das Klopffenster endet, können die
Daten mit Nullen aufgefüllt
werden. Alternativ können
Daten von vorhergehenden FFTs verwendet werden, um einen Datensatz
für die letzte
FFT zu vervollständigen.
-
Wenn
sich Klopffenster für
verschiedene Zylinder 208 überschneiden dürfen, kann
das Steuerungsmodul 204 ein zusätzliches analoges Frontend, einen
zusätzlichen
A/D-Umsetzer und ein zusätzliches
DSP-Modul umfassen. Auf diese Weise können die sich überschneidenden
Abschnitte der Klopffenster parallel aufgenommen und analysiert
werden. Wenn das DSP-Modul 244 Verarbeitungskapazitäten aufweist,
die schneller als Echtzeit sind, kann das DSP-Modul 244 in
der Lage sein, Daten von sich überschneidenden
Klopffenstern ohne ein zusätzliches
DSP-Modul zu verarbeiten. In diesem Fall kann ein Puffer zwischen
dem A/D-Umsetzer 242 und dem DSP-Modul 244 umfasst
sein.
-
Die
Start- und Endpunkte von Klopffenstern können von einem Klopfdetektionsmodul 250 an
das DSP-Modul 244 übertragen
werden. Das Klopfdetektionsmodul 250 empfängt FFT-Daten
von dem DSP-Modul 244 und erzeugt ein Klopfdetektionssignal,
das anzeigt, ob ein Klopfen detektiert wurde oder nicht. Dieses
Signal wird an das Zündfunkensteuerungsmodul 226 und
ein Klopfdiagnosemodul 252 übertragen.
-
Ein
Sensorempfangsmodul 254 empfangt Sensordaten, etwa von
dem RPM-Sensor 220, dem MAF-Sensor 222 und den
anderen Sensoren 224. Das Sensorempfangsmodul 254 kann
ankommende Signale unter Verwendung von Techniken aufbereiten, welche
denjenigen ähneln,
die von dem analogen Frontend 240 ausgeführt werden,
und kann aufbereitete Signale in den digitalen Bereich umsetzen. Der
RPM-Sensor 220 kann Signale auf der Grundlage des Kurbelwellenwinkels übertragen,
so dass das Klopfdetektionsmodul 250 ermitteln kann, wann Klopffenster
auftreten. Das Klopfdetektionsmodul 250 kann dem analogen
Frontend 240 befehlen, welcher Vibrationssensor gewählt werden
soll.
-
Um
ein Klopfen genauer zu detektieren, kann das Klopfdetektionsmodul 250 ermitteln,
in welcher Zone der Motor 202 gegenwärtig arbeitet. Die Zone kann
auf der Grundlage der Motordrehzahl, welche durch den RPM-Sensor 220 angezeigt
werden kann, und durch die Motorlast, welche durch den MAF-Sensor 222 angezeigt
werden kann, ermittelt werden. Nur als Beispiel können vier
Motorlastbereiche und 17 Motordrehzahlbereiche definiert sein, die
68 Zonen erzeugen.
-
Das
Klopfdiagnosemodul 252 kann Daten von dem DSP-Modul 244 und/oder
von dem Klopfdetektionsmodul 250 empfangen. Das Klopfdiagnosemodul 252 analysiert
mögliche
Fehler in dem Klopfdetektionssystem und erzeugt einen Störungscode, wenn
ein Fehler detektiert wird. Dieser Störungscode wird von dem Zündfunkensteuerungsmodul 226 und von
einem Motordiagnosemodul 260 empfangen. Das Motordiagnosemodul 260 kann
den Störungscode
speichern und kann das Problem dem Anwender anzeigen, etwa mit der
Motorprüfleuchte.
-
Wenn
ein Störungscode
von dem Zündfunkensteuerungsmodul 226 empfangen
wird, kann das Zündfunkenssteuerungsmodul 226 eine
aggressive Zündfunkenvorverstellung
vermeiden. Die aggressive Zündenfunkenvorverstellung
kann ein Klopfen verursachen und das Zündfunkensteuerungsmodul 226 kann
sich nicht mehr darauf verlassen, dass das Klopfdetektionsmodul
diese Bedingung detektiert. Wenn ein Klopfen detektiert wird, verzögert das Zündfunkensteuerungsmodul 226 normalerweise den
Zündzeitpunkt.
-
Mit
Bezug nun auf 3 ist ein Funktionsblockdiagramm
einer beispielhaften Implementierung des Klopfdetektionsmoduls 250 dargestellt.
Das Klopfdetektionsmodul 250 umfasst ein Verarbeitungsmodul 302 und
ein Statistikspeichermodul 304. Das Klopfdetektionsmodul 250 kann
auch ein Kalibrierungsspeichermodul 308 umfassen. Das Verarbeitungsmodul 302 kann
FFT-Daten direkt von dem DSP-Modul 244 empfangen.
-
Alternativ
kann ein Datenreduktionsmodul 310 die FFT von dem DSP-Modul 244 auf
einen oder mehrere Intensitätswerte
reduzieren. Zum Beispiel kann das Datenreduktionsmodul 310 FFT-Daten
auf einen einzigen Intensitätswert
reduzieren. Das Datenreduktionsmodul 310 kann seine Reduktion
auf der Grundlage von Signalen von dem Sensorempfangsmodul 254 und
von Kriterien von dem Kalibrierungsspeichermodul 308 ausführen.
-
Das
Datenreduktionsmodul 310 kann für das Klopffenster jedes Zylinders
eine oder mehrere FFTs von dem DSP-Modul 244 empfangen.
Wie vorstehend beschrieben ist, hängt die Anzahl von dem DSP-Modul 244 erzeugter
FFTs von der Zeit ab, die während
des Klopffensters verstreicht. Nur als Beispiel kann jede FFT aus
128 Punkten bestehen. Abschnitte jeder FFT können abgeschnitten werden, etwa
indem die letzten 64 Punkte jeder FFT entfernt werden.
-
Ein
oder mehrere Bereiche von interessanten Punkten können für jede der
FFTs definiert sein. Zum Beispiel werden drei interessante Bereiche
für jede
der empfangenen FFTs definiert. Die Bereiche können auf der Grundlage der
Drehzahl definiert sein. Da sich die FFTs im Frequenzbereich befinden, wird
ein Bereich von interessanten Punkten in einen interessanten Frequenzbereich
umgesetzt.
-
Innerhalb
eines jeden Bereichs von FFT-Punkten kann ein einziger Wert ermittelt
werden. Zum Beispiel kann der FFT-Punkt mit der maximalen Intensität in dem
Bereich gewählt
werden oder ein Mittelwert von FFT-Punkten in dem Bereich kann berechnet
werden. Für
jede FFT kann einer der Bereiche gewählt werden. Die Bereichswahl
kann beispielsweise auf der Drehzahl basieren. Da jeder Bereich
auf einen einzigen Wert reduziert wurde, kann das Wählen eines
Bereichs die gesamte FFT auf einen einzigen Wert reduzieren. Eine
Wahl des Bereichs kann auf der Drehzahl basieren oder es kann der
größte Wert
gewählt
werden.
-
Als
nächstes
kann eine der FFTs gewählt werden.
Der einzelne Wert, welcher der gewählten FFT entspricht, kann
als der einzige Intensitätswert verwendet
werden. Die FFT kann auf der Grundlage der Drehzahl gewählt werden.
Alternativ kann der maximale FFT-Wert gewählt werden oder ein Mittelwert
der FFT-Werte kann berechnet werden. Weil jede der FFTs einem anderen
Zeitabschnitt des Klopffensters entspricht, kann eine Kalibriereinrichtung
ermitteln, dass bei gewissen Drehzahlen eine der FFTs eine zuverlässigere
Anzeige von Motorklopfen ist.
-
Das
Kalibrierungsspeichermodul 308 kann Kalibrierungsentscheidungen
umfassen, wie etwa, ob Maximum- oder Mittelwertermittlungen und
Tabellen von FFT-Bereichen, die durch die Drehzahl indiziert sind,
verwendet werden sollen. Das Verarbeitungsmodul 302 ermittelt
die aktuelle Motorbetriebszone und vergleicht den einzigen Intensitätswert mit den
historischen Intensitätsdaten
für diese
Zone.
-
Die
historischen Daten können
ferner durch den Zylinder klassifiziert sein. Zum Beispiel können historische
Daten für
jeden Zylinder in jeder Zone gespeichert sein. Wenn nicht genügend historische
Daten für
einen Zylinder in einer Zone vorhanden sind, können Daten von benachbarten
Zonen interpoliert werden, um abzuschätzen, wie groß die aktuelle
Intensität
sein sollte. Alternativ können
Anfangswerte als historische Daten verwendet werden. Diese Anfangswerte
können
von Kalibriereinrichtungen bereitgestellt sein.
-
Wenn
das Verarbeitungsmodul 302 Intensitätswerte für verschiedene Zylinder in
verschiedenen Zonen empfängt,
werden Statistiken in dem Statistikspeichermodul 304 aktualisiert.
Das Statistikspeichermodul 304 kann von einem Servicetechniker
manuell zurückgesetzt
werden oder es kann von einer internen Diagnoseroutine automatisch
zurückgesetzt werden.
Zum Beispiel kann eine Diagnoseroutine ermitteln, dass Daten in
dem Statistikspeichermodul 304 ungültig sind. Das Statistikspeichermodul 304 kann
dann gelöscht
und/oder auf kalibrierte Werte zurückgesetzt werden.
-
Das
Verarbeitungsmodul 302 kann ermitteln, dass ein Klopfen
aufgetreten ist, wenn der empfangene Intensitätswert mehr als eine vorbestimmte
Anzahl von Standardabweichungen über
dem Mittelwert für
diesen Zylinder liegt, der in der aktuellen Zone arbeitet. Das Statistikspeichermodul 304 kann
aktualisiert werden, wenn die empfangenen Intensitätswerte
in einem vorbestimmten Bereich um den historischen Mittelwert liegen.
Das Verarbeitungsmodul 302 kann ausgeben, ob ein Klopfen
detektiert wurde, und kann die Intensität des Klopfens angeben, falls vorhanden.
-
Nun
auf 4 Bezug nehmend ist eine graphische Darstellung
beispielhafter Inhalte des Statistikspeichermoduls 304 dargestellt.
Eine zweidimensionale Tabelle 400 kann ein Gitter aus Datenstrukturen
umfassen, die durch den Zylinder und die Zone indiziert sind. Nur
als Beispiel ist die Tabelle 400 mit vier Zylindern und
12 Zonen gezeigt. Nur als Beispiel können die 12 Zonen vier Drehzahlbereichen
und drei Lastbereichen entsprechen. Anstatt, dass sie eine kollektive
Zone auf der Grundlage der Drehzahl und der Last aufweist, kann
die Tabelle 400 als eine dreidimensionale Tabelle implementiert
sein, die durch den Zylinder, die Drehzahl und die Motorlast indiziert
ist.
-
Eine
beispielhafte Datenstruktur der Tabelle 400 ist bei 402 gezeigt.
Die Datenstruktur 402 umfasst Mittelwerte und Standardabweichungswerte, mit
welchen neue Intensitätswerte
verglichen werden. Zudem umfasst die Datenstruktur 402 statistische
Informationen, die zum Aktualisieren der Mittelwerte und der Standardabweichungswerte
verwendet werden. Zum Beispiel kann die Datenstruktur 402 einen
Zählerwert,
eine laufende Summe, und eine laufende Summe der Quadrate umfassen.
Wenn ein neuer Intensitätswert
für die
Datenstruktur 402 empfangen wird, wird das Zählerwertelement
inkrementiert. Zudem kann das Summenelement um den Intensitätswert erhöht werden,
während
das Element der Summe der Quadrate um das Quadrat des Intensitätswertes
erhöht
wird.
-
Sobald
das Zählerwertelement
einen vorbestimmten Wert erreicht, wie etwa 1.000, können ein neuer
Mittelwert und eine neue Standardabweichung berechnet und in der
Datenstruktur 402 gespeichert werden. Durch Speichern der
Summe und der Summe der Quadrate kann eine echte Standardabweichung
berechnet werden. Das Zählerwertelement, das
Summenelement, und das Element der Summe der Quadrate können dann
zurückgesetzt
werden, etwa auf Null.
-
Mit
Bezug nun auf 5 stellt ein Flussdiagramm beispielhafte
Schritte dar, die von dem Verarbeitungsmodul 302 von 3 ausgeführt werden. Die
Steuerung beginnt mit Schritt 502, bei dem eine Variable
C gleich der Nummer des Zylinders gesetzt wird, dessen Klopffenster
als erstes auftritt. Die Steuerung fährt mit Schritt 504 fort,
bei dem während
des Klopffensters des Zylinders C eine oder mehrere FFTs ausgeführt werden.
-
Die
Steuerung fährt
mit Schritt 506 fort, bei dem die Steuerung eine Variable
Z so setzt, dass sie eine Zahl ist, welche die aktuelle Motorbetriebszone darstellt.
Zum Beispiel kann es M Drehzahlbereiche und N Motorlastbereiche
geben, die M mal N Zonen erzeugen. Bei verschiedenen Implementierungen
ist M gleich 17 und N ist gleich 4. Die Steuerung fährt mit Schritt 508 fort,
bei dem ein Gesamtintensitätswert berechnet
wird. Der Gesamtintensitätswert
ist mit FFTCZ beschriftet, um anzuzeigen,
dass der Wert dem Zylinder C entspricht, der in der Zone Z arbeitet.
-
Die
Steuerung fährt
mit Schritt 510 fort, bei dem die Steuerung FFTCZ mit gespeicherten Statistikwerten vergleicht.
Wenn FFTCZ zum Beispiel größer als
der Intensitätsmittelwert
für den
aktuellen Zylinder und die aktuelle Zone (FFTAVECZ)
plus einer vorbestimmten Anzahl (N) von Standardabweichungen (FFTSTDCZ) ist, ermittelt die Steuerung, dass ein Klopfen
aufgetreten ist. Wenn ein Klopfen detektiert wurde, geht die Steuerung
zu Schritt 512 weiter; andernfalls geht die Steuerung zu
Schritt 514 weiter.
-
Bei
Schritt 512 werden das Auftreten von Klopfen und optional
die Intensität
des Klopfens signalisiert, und die Steuerung fährt mit Schritt 516 fort. Bei
Schritt 516 wird die Variable C auf den Zylinder gesetzt,
dessen Klopffenster als nächstes
auftreten wird, und die Steuerung kehrt zu Schritt 504 zurück. Bei
Schritt 518 ermittelt die Steuerung, ob FFTCZ innerhalb
von n2 Standardabweichungen vom Mittelwert liegt. Wenn dem so ist,
geht die Steuerung zu Schritt 516 weiter; andernfalls fährt die
Steuerung mit Schritt 520 fort. Ein Intensitätswert kann
zu klein sein, um ein Klopfen anzuzeigen, und dennoch zu groß, um in
die Statistikwerte aufgenommen zu werden. Der Schritt 518 überprüft diese
Bedingung, was bedeutet, dass n2 kleiner als n ist.
-
Bei
Schritt 520 ermittelt die Steuerung, ob FFTCZ kleiner
als n3 Standardabweichungen unter dem Mittelwert ist. Wenn dem so
ist, geht die Steuerung zu Schritt 516 weiter; andernfalls
fährt die
Steuerung mit Schritt 522 fort. Der Schritt 520 schließt Intensitätswerte
aus, die zu klein sind, um in die Statistikwerte aufgenommen zu
werden. Der Wert n3 kann gleich dem Wert n2 gesetzt sein, um einen
symmetrischen Bereich um den Mittelwert herum zu definieren.
-
Bei
Schritt 522 wird eine weitere Prüfung ausgeführt. Die Steuerung ermittelt,
ob die prozentuale Differenz zwischen FFTCZ und
einem für
diese Zone angegebenen Mittelwert größer als die Grenze ist. Ein
Mittelwert kann für
jede Zone von einer Kalibriereinrichtung angegeben sein. Statt eine
einzige Grenze zu verwenden, können
sowohl eine positive Grenze als auch eine negative Grenze verwendet werden.
Wenn die prozentuale Differenz außerhalb dieser Grenzen liegt,
wird die Steuerung den Intensitätswert
von der statistischen Analyse ausschließen.
-
Bei
Schritt 524 wurde ermittelt, dass FFTCZ akzeptabel
ist und wird daher der Statistik hinzugefügt. Das Zählerwertelement für diesen
Zylinder und diese Zone wird inkrementiert, während die Statistiken, wie
etwa die Summe und die Summe der Quadrate, erhöht werden. Die Steuerung fährt mit
Schritt 526 fort, bei dem der Zählerwert für den aktuellen Zylinder und
die aktuelle Zone mit einem vorbestimmten Wert verglichen wird,
wie etwa 1.000. Wenn sie gleich sind, geht die Steuerung zu Schritt 528 weiter; andernfalls
geht die Steuerung zu Schritt 516 weiter. Bei Schritt 528 werden
ein neuer Mittelwert und eine neue Standardabweichung für den aktuellen
Zylinder und die aktuelle Zone auf der Grundlage der letzten 1.000
Intensitätswerte
berechnet. Die Steuerung fährt
mit Schritt 530 fort, bei dem CountCZ und
StatistikCZ zurückgesetzt werden, etwa auf
Null. Die Steuerung fährt
dann mit Schritt 516 fort.
-
Nun
auf 6 Bezug nehmend ist eine beispielhafte Implementierung
des Klopfdiagnosemoduls 252 dargestellt. Das Klopfdiagnosemodul 252 umfasst
ein Klopfmodul 602. Das Klopfmodul 602 empfängt das
Klopfdetektionssignal. Wenn das Klopfdetektionssignal empfangen
wird, aktualisiert das Klopfmodul 602 entsprechende Zählerwerte
in einem Zählermodul 604.
-
Das
Zählermodul 604 kann
einen Zählerwert von
Klopfereignissen für
jeden Sensor und für
jeden Zylinder speichern. Eine beispielhafte Implementierung der
Werte, die in dem Zählermodul 604 gespeichert
sind, ist in 7 gezeigt. Wenn das Klopfdetektionssignal
empfangen wird, inkrementiert das Klopfmodul 602 den Abtastzählerwert
in dem Zählermodul 604.
Der Abtastzählerwert
wird für
den Zylinder, dessen Klopffenster analysiert wurde, und für den Sensor,
der diesem Zylinder entspricht, inkrementiert.
-
Wenn
das Klopfdetektionssignal anzeigt, dass ein Klopfen detektiert wurde,
inkrementiert das Klopfmodul 602 den Klopfzählerwert
für diesen
Zylinder und für
diesen Sensor. Andernfalls lässt
das Klopfmodul 602 die Klopfzählerwerte unverändert. Ein
Klopfanalysemodul 610 analysiert die Abtastzählerwerte.
Wenn einer der Abtastzählerwerte
einen vorbestimmten Wert, wie etwa 100, erreicht, kann das Klopfanalysemodul 610 ermitteln,
ob der detektierte Klopfbetrag in dieser Anzahl von Abtastwerten übermäßig ist.
-
Zum
Beispiel kann das Klopfanalysemodul 610 den Klopfzählerwert
durch den Abtastzählerwert dividieren.
Wenn dieser Wert größer als
ein Schwellenwert ist, wie etwa 20 Prozent, kann das Klopfanalysemodul 610 ermitteln,
dass für
diesen Sensor oder diesen Zylinder ein übermäßiger Klopffehler aufgetreten
ist. Dieser Fehler wird an ein Gegenmaßnahmenmodul 612 gemeldet.
Das Gegenmaßnahmenmodul 612 kann
auf der Grundlage der Fehlerinformation einen Störungscode erzeugen.
-
Nur
als Beispiel kann das Gegenmaßnahmenmodul 612 einen
Code erzeugen, der anzeigt, dass ein Klopfdetektionsproblem vorhanden
ist, ohne den genauen detektierten Fehler anzugeben. Ein einziger
Code kann einem Fehler bei einem beliebigen der Zylinder entsprechen
und separate Codes können
für jeden
der Sensoren verwendet werden.
-
Ein
Modul 620 für
einen nicht normalen Bereich empfängt Rohdaten, etwa von dem
Klopfdetektionsmodul 250. Die Rohdaten können den
einzelnen Intensitätswert
von dem Datenreduktionsmodul 310 umfassen. Alternativ können die
Rohdaten von dem DSP-Modul 244 empfangen werden. Zum Beispiel umfassen
die Rohdaten bei einem Modus, der als Verhaltensdiagnose bezeichnet
wird, den Ausgang des Datenreduktionsmoduls 310. Bei einem
Modus, der offene Diagnose genannt wird, können die Rohdaten Daten von
dem DSP-Modul 244 umfassen, welche anders reduziert werden
können,
als dies gegenwärtig
von dem Datenreduktionsmodul 310 getan wird.
-
Auf
der Grundlage der Rohdaten ermittelt das Modul 620 für einen
nicht normalen Bereich, ob die Rohdaten in einem angegebenen Bereich
liegen. Zum Beispiel ermittelt das Modul 620 für einen
nicht normalen Bereich für
einen einzelnen Intensitätswert, ob
dieser einzelne Intensitätswert
in einem angegebenen Bereich liegt. Der angegebene Bereich kann eine
Obergrenze und eine Untergrenze umfassen und kann aus einer Tabelle
geholt werden, die mit der Zone indiziert ist. Die Rohdaten können außerhalb des
angegebenen Bereichs liegen, wenn der Klopfsensor angeschlossen
ist (nicht offen), aber nicht korrekt in dem Motor installiert ist.
Wenn dies passiert, wird der Klopfsensor ein Signal liefern, aber
nicht innerhalb des angegebenen Bereichs, der dem Motorklopfen entspricht.
-
Wenn
das Modul 620 für
einen nicht normalen Bereich ermittelt, dass ein Wert außerhalb
des angegebenen Bereichs liegt, werden die entsprechenden Zählerwerte
für einen
nicht normalen Bereich in dem Zählermodul 604 sowohl
für den
Sensor als auch den Zylinder inkrementiert. Dies kann gleichzeitig
mit dem Betrieb des Klopfmoduls 602 auftreten und daher
wurde der Abtastzählerwert
bereits von dem Klopfmodul 602 inkrementiert.
-
Ein
Bereichsanalysemodul 622 wertet die Abtastzählerwerte
aus und wenn einer der Abtastzählerwerte
einen vorbestimmten Wert erreicht, ermittelt das Bereichsanalysemodul 622,
ob der zugehörige
Zählerwert
für einen
nicht normalen Bereich zu hoch ist. Wenn dem so ist, wurde ein Fehler
für einen
nicht normalen Bereich erkannt und diese Information wird an das
Gegenmaßnahmenmodul 612 geliefert.
-
Ein
Modul 630 für
niedrige Schwankungen ermittelt, ob die Schwankung zwischen Abtastpunkten
der Rohdaten zu gering ist. Eine ungenügende Schwankung kann anzeigen,
dass der Sensor nicht angeschlossen ist oder nicht korrekt funktioniert,
weil ein gewisser Schwankungsbetrag in den Daten für einen
korrekt arbeitenden Sensor erwartet wird. Das Modul 630 für niedrige
Schwankungen kann daher vorherige Rohdaten speichern, so dass diese
mit den aktuellen Rohdaten verglichen werden können.
-
Eine
Schwankung bei den Rohdaten kann auf mehrere Weisen analysiert werden.
Zum Beispiel kann der Mittelwert der Schwankungen zwischen einer
Anzahl von Rohdatenpunkten mit einem Schwellenwert verglichen werden.
Bei verschiedenen Implementierungen kann dieser Mittelwert ein gleitender Mittelwert
sein oder kann ein Mittelwert sein, der über sich nicht überschneidende
Intervalle geführt
wird.
-
Nur
als Beispiel, und wie in 7 gezeigt ist, kann eine Schwankungssumme
in dem Zählermodul 604 mitgeführt werden.
Ein Schwankungsanalysemodul 632 kann die Abtastzählerwerte
kontrollieren und die Schwankungssumme analysieren, wenn ein vorbestimmter
Abtastzählerwert,
wie etwa sechs, erreicht ist. Die Schwankungssumme kann dann durch die
Anzahl von gemessenen Schwankungen dividiert werden, um den Schwankungsmittelwert
zu ermitteln. Bei einem Abtastzählerwert
von sechs wurden fünf
Schwankungen zwischen diesen sechs Werten gemessen.
-
Wenn
der Schwankungsmittelwert unter einem vorbestimmten Schwellenwert
hegt, kann das Schwankungsanalysemodul 632 ein Fehlersignal
an das Gegenmaßnahmenmodul 612 übertragen.
Der vorbestimmte Schwellenwert kann von der Drehzahl und der Motorlast
abhängen.
Bei verschiedenen Implementierungen können das Klopfanalysemodul 610,
das Bereichsanalysemodul 622 und das Schwankungsanalysemodul 632 eine
Modulo-Operation auf den Abtastzählerwert
ausführen.
Zum Beispiel kann das Klopfanalysemodul 610 den Abtastzählerwert
Modulo 100 mit Null vergleichen. Dieser Ausdruck wird alle
100 Abtastwerte gleich Null werden. Das Klopfanalysemodul 610 kann
daher jede Gruppe von 100 Zylinderzündereignissen auswerten.
-
Nun
mit Bezug auf 8A–8B stellt
ein Flussdiagramm beispielhafte Schritte dar, die von dem Klopfdiagnosemodul 252 ausgeführt werden. Die
Steuerung beginnt mit Schritt 702, bei dem Zähler initialisiert
werden. Die Steuerung fährt
mit Schritt 704 fort, bei dem die Steuerung auf ein Zylinderzündereignis
wartet. Wenn ein Zylinderzündereignis
vergangen ist, fährt
die Steuerung mit Schritt 706 fort; in der Zwischenzeit
bleibt die Steuerung bei Schritt 704. Bei Schritt 706 inkrementiert
die Steuerung den Abtastzählerwert
für den
Zylinder, der ein Zündereignis aufweist,
und für
den Sensor, der diesem Zylinder entspricht.
-
Die
Steuerung fährt
mit Schritt 708 fort, bei dem die Steuerung ermittelt,
ob ein Klopfen detektiert wurde, etwa durch das Klopfdetektionsmodul 250. Wenn
dem so ist, geht die Steuerung zu Schritt 710 weiter; andernfalls
geht die Steuerung zu Schritt 712 weiter. Bei Schritt 710 werden
die Klopfzählerwerte für den Zylinder
und den Sensor inkrementiert und die Steuerung fährt mit Schritt 712 fort.
Bei Schritt 712 ermittelt die Steuerung, ob ein Abtastzählerwert für den aktuellen
Zylinder Modulo 100 gleich Null ist. Wenn dem so ist, sind
100 Abtastungen durchgeführt worden
und die Steuerung geht zu Schritt 714 weiter; andernfalls
geht die Steuerung zu Schritt 716 weiter. Der Wert 100
ist nur zu Veranschaulichungszwecken verwendet.
-
Bei
Schritt 714 ermittelt die Steuerung, ob der Klopfzählerwert
für diesen
Zylinder größer als
ein vorbestimmter Wert ist, wie etwa 20. Wenn dem so ist, geht die
Steuerung zu Schritt 718 weiter; andernfalls fährt die
Steuerung mit Schritt 716 fort. Ein Wert von 20 bei 100
Zylinderereignissen entspricht einem Klopfprozentsatz von 20%, was
höher als
erwartet wäre,
selbst für
einen stark klopfenden Motor. Bei Schritt 718 wird ein
Zylinderstörungscode
gesetzt und die Steuerung kehrt zu Schritt 704 zurück.
-
Bei
Schritt 716 ermittelt die Steuerung, ob der Abtastzählerwert
für den
Sensor Modulo 100 gleich Null ist. Wenn dem so ist, geht
die Steuerung zu Schritt 720 weiter; andernfalls geht die
Steuerung zu Schritt 722 von 8B über die
Verknüpfung
A weiter. Bei Schritt 720 ermittelt die Steuerung, ob der Klopfzählerwert
für diesen
Sensor größer als
20 ist. Wenn dem so ist, geht die Steuerung zu Schritt 724 weiter;
andernfalls fährt
die Steuerung mit Schritt 722 von 8B fort.
Bei Schritt 724 setzt die Steuerung den Störungscode
für den
aktuellen Sensor. Die Steuerung kehrt dann zu Schritt 704 zurück.
-
Nun
mit Bezug auf 8B ermittelt die Steuerung bei
Schritt 722, ob die Rohdaten außerhalb des angegebenen Rauschbereichs
für die
aktuelle Zone liegen. Wenn dem so ist, geht die Steuerung zu Schritt 726 weiter;
andernfalls geht die Steuerung zu Schritt 728 weiter. Bei
Schritt 726 inkrementiert die Steuerung die Bereichszählerwerte
für den
aktuellen Zylinder und den aktuellen Sensor. Die Steuerung fährt dann
mit Schritt 728 fort.
-
Bei
Schritt 728 ermittelt die Steuerung, ob der Abtastzählerwert
für den
Zylinder Modulo 20 gleich Null ist. Wenn dem so ist, geht
die Steuerung zu Schritt 730 weiter; andernfalls geht die
Steuerung zu Schritt 732 weiter. Bei Schritt 730 ermittelt
die Steuerung, ob der Bereichszählerwert
für den
Zylinder größer als
ein vorbestimmter Schwellenwert ist, wie etwa fünf. Wenn dem so ist, fährt die
Steuerung mit Schritt 734 fort; andernfalls fährt die
Steuerung mit Schritt 732 fort. Bei Schritt 734 setzt
die Steuerung den Zylinderstörungscode
und die Steuerung kehrt zu Schritt 704 von 8A zurück.
-
Bei
Schritt 732 ermittelt die Steuerung, ob der Abtastzählerwert
für den
Sensor Modulo 20 gleich Null ist. Wenn dem so ist, geht
die Steuerung zu Schritt 736 weiter; andernfalls geht die
Steuerung zu Schritt 738 weiter. Bei Schritt 736 ermittelt
die Steuerung, ob der Bereichszählerwert
für den
Sensor größer als
fünf ist.
Wenn dem so ist, geht die Steuerung zu Schritt 740 weiter;
andernfalls fährt
die Steuerung mit Schritt 738 fort. Bei Schritt 740 setzt
die Steuerung den Sensorstörungscode
für den
aktuellen Sensor und die Steuerung kehrt zu Schritt 704 zurück.
-
Bei
Schritt 738 inkrementiert die Steuerung die Schwankungssumme
um die Differenz zwischen den Rohdaten und den vorherigen Rohdaten.
Bei verschiedenen Implementierungen kann die Schwankungssumme ein
skalarer Wert sein, wenn die Rohdaten aus einem einzigen Intensitätswert bestehen.
Die Steuerung fährt
mit Schritt 742 fort, bei dem die aktuellen Rohdaten als
vorherige Rohdaten für
den nächsten
Durchlauf gespeichert werden. Die Steuerung fährt mit Schritt 744 fort.
-
Bei
Schritt 744 ermittelt die Steuerung, ob der Abtastzählerwert
für den
Zylinder Modulo sechs gleich Null ist. Wenn dem so ist, geht die
Steuerung zu Schritt 746 weiter; andernfalls geht die Steuerung zu
Schritt 748 weiter. Bei Schritt 746 ermittelt
die Steuerung, ob die Schwankungssumme dividiert durch fünf kleiner
als ein Schwellenwert ist. Wenn dem so ist, geht die Steuerung zu
Schritt 750 weiter; andernfalls geht die Steuerung zu Schritt 752 weiter. Bei
Schritt 750 wird die Schwankungssumme zurückgesetzt
und die Steuerung fährt
mit Schritt 754 fort.
-
Bei
Schritt 754 wird der Zylinderstörungscode gesetzt und die Steuerung
kehrt zu Schritt 704 zurück. Bei Schritt 752 wird
die Schwankungssumme zurückgesetzt
und die Steuerung fährt
mit Schritt 748 fort. Bei Schritt 748 wird der
Abtastzählerwert
für den Sensor
Modulo sechs mit Null verglichen. Wenn er gleich Null ist, geht
die Steuerung zu Schritt 756 weiter; andernfalls kehrt
die Steuerung zu Schritt 704 zurück. Bei Schritt 756 ermittelt
die Steuerung, ob die Schwankungssumme dividiert durch fünf kleiner
als ein Schwellenwert ist. Wenn dem so ist, geht die Steuerung zu
Schritt 758 weiter; andernfalls geht die Steuerung zu Schritt 762 weiter.
Nach sechs Abtastungen wurden nur fünf Schwankungen zwischen den
sechs Abtastwerten ermittelt, und daher wird fünf als der Teiler verwendet.
-
Bei
Schritt 758 wird die Schwankungssumme für diesen Sensor zurückgesetzt
und die Steuerung fährt
mit Schritt 762 fort. Bei Schritt 760 wird der Störungscode
für diesen
Sensor gesetzt und die Steuerung kehrt zu Schritt 704 zurück. Bei
Schritt 760 setzt die Steuerung die Schwankungssumme für diesen
Sensor zurück
und die Steuerung kehrt zu Schritt 704 zurück. Die
in 8A–8B verwendeten Zahlen
sind nur als Beispiele gezeigt und können höher oder niedriger sein und
können
auf aktuellen Betriebsbedingungen basieren, wie etwa der Motorlast und
der Drehzahl.
-
Obwohl
es nicht als ein Schritt gezeigt ist, können die Sensorstörungscodes
und der Zylinderstörungscode
nach einer vorbestimmten Zeitspanne gelöscht werden. Dies muss nicht
unbedingt dazu führen,
dass das Zündfunkensteuerungsmodul 226 sich
wieder vollständig
auf das Klopfsteuerungssystem verlässt. Wenn die Störungscodes
jedoch gelöscht
bleiben, kann das System die korrekte Funktion wieder aufgenommen
haben.
-
Fachleute
können
nun aus der vorstehenden Beschreibung entnehmen, dass die breiten
Lehren der Offenbarung in einer Vielzahl von Formen implementiert
werden können.
Obwohl diese Offenbarung spezielle Beispiele umfasst, soll daher
der wahre Umfang der Offenbarung nicht darauf begrenzt sein, da
sich dem Fachmann bei einem Studium der Zeichnungen, der Beschreibung
und der folgenden Ansprüche
weitere Modifikationen offenbaren werden.