(19)
(11) EP 0 296 149 A2

(12) EUROPÄISCHE PATENTANMELDUNG

(43) Veröffentlichungstag:
21.12.1988  Patentblatt  1988/51

(21) Anmeldenummer: 88890150.1

(22) Anmeldetag:  13.06.1988
(51) Internationale Patentklassifikation (IPC)4F02D 41/20, F02D 41/24
(84) Benannte Vertragsstaaten:
AT CH DE ES FR GB IT LI SE

(30) Priorität: 19.06.1987 DE 3720404

(71) Anmelder: VOEST-ALPINE AUTOMOTIVE GESELLSCHAFT M.B.H.
A-1040 Wien (AT)

(72) Erfinder:
  • Kainz, Alois, Dipl.-Ing.
    A-1220 Wien (AT)

(74) Vertreter: Matschnig, Franz, Dipl.-Ing. 
Siebensterngasse 54 Postfach 252
1070 Wien
1070 Wien (AT)


(56) Entgegenhaltungen: : 
   
       


    (54) Verfahren zur Datenänderung im Parameterspeicher eines Kraftfahrzeug-Reglers


    (57) Um die Daten in dem Parameterspeicher (9) eines elektroni­schen Reglers (1) für Kraftfahrzeuge im on-line Betrieb, d.h. während der Regelung des Motors ändern zu können, wird der Regler (1) mit einem Dialogrechner (3) verbunden und es ist vorgesehen, daß der als Lese-Schreib-Speicher ausgebil­dete Parameterspeicher in einen Adreßbereich (A), in zumin­dest einen, im allgemeinen mehrere, Datenbereiche (Di) und in einen Zwischenspeicherbereich (Z) unterteilt wird, wobei der an der Anfangsadresse des Speichers liegende Adreßbe­reich (A) die Adressen aller Datenbereiche (Di) und des Zwi­schenspeicherbereiches (Z) enthält und die Kapazität des Zwischenspeicherbereiches zumindest gleich der Kapazität des größten Datenbereiches gewählt wird und daß die für einen Datenbereich (Di) vorgesehenen, in einem mit dem Regler kom­munizierenden Dialogrechner bestimmbaren geänderten Daten in den Zwischenspeicherbereich (Z) geschrieben werden, hierauf im Adreßbereich (A) die Adresse des Datenbereiches (Dj) durch die Adresse des Zwischenspeicherbereiches (Z) ersetzt wird, sodann die gänderten Daten aus dem Zwischenspeicherbe­reich (Z) in den Datenbereich (Dj) übertragen werden und schließlich im Adreßbereich (A) die Adresse des Datenberei­ches (Dj) wieder auf die Ursprungsadresse zurückgesetzt wird.




    Beschreibung


    [0001] Die Erfindung bezieht sich auf ein Verfahren zur Änderung der Daten in dem Parameterspeicher eines Reglers für Kraft­fahrzeuge im on-line-Betrieb, wobei der Regler außer dem Parameterspeicher zumindest einen Mikrorechner enthält und zum Steuern und Regeln der Kraftstoffeinspritzung und/oder weiterer Funktionen in Abhängigkeit von Betriebsgrößen, wie z.B. Drehzahl, Ladedruck, Gaspedalstellung etc., die mit Hilfe von Meßwertgebern ermittelt werden, eingerichtet ist, sowie auf eine Vorrichtung zur Durchführung dieses Ver­fahrens.

    [0002] Die Eigenschaften und das Verhalten eines Kraftfahrzeug­motors werden durch eine Anzahl von Parametern und Kenn­linien, im folgenden Daten genannt, bestimmt, die in einem Halbleiterspeicher des Reglers, dem sogenannten Parameter­speicher, untergebracht sind. Für die optimale Abstimmung des Motorverhaltens müssen diese Daten während der gesamten Motoren- und Fahrzeugentwicklungsphase verfügbar und änder­bar sein. Die Änderung dieser Daten muß sogar "on-line", d.h bei laufendem Motor möglich sein.

    [0003] Es ist bekannt geworden, für die Datenänderung während der Entwicklungsphase spezielle Prüfstandsregler zu verwenden, deren Parameterspeicher in einem eigenen Gerät, oft als Pro­grammiergerät bezeichnet, untergebracht ist. Der Parameter­speicher ist in zwei identischen Ausführungen in dem Program­miergerät vorhanden. Während dem Regler die Daten einer Ko­pie des Parameterspeichers zur Regelung des Motors zur Ver­fügung stehen, können in der zweiten Kopie Datenänderungen durchgeführt werden. Nach Abschluß der Änderung eines Daten­bytes werden die beiden Kopien der Parameterspeicher ver­tauscht und somit wird die Datenänderung wirksam. Neben den Daten enthält der Parameterspeicher aber auch das Kontroll­programm des Reglers.

    [0004] Der Regler ist mit dem Programmiergerät über ein Flachband­kabel verbunden. Ober dieses Kabel werden vom Mikroprozessor des Reglers die gewünschten Adressen an den Parameterspei­cher angelegt und anschließend die unter diesen Adressen ab­ gespeicherten Daten wie auch Programminstruktionen aus dem Parameterspeicher ausgelesen. Über die alpha-numerische Ta­statur des Programmiergerätes können durch Eingabe der ent­sprechenden Adressen die Daten des Parameterspeichers auf dem Bildschirm angezeigt und gegebenenfalls geändert werden. Sowohl die Daten als auch die Adressen des Parameterspei­chers werden als hexadezimale Zahlen angezeigt, ebenso müs­sen die geänderten Daten in hexadezimaler Form eingegeben werden.

    [0005] Die Nachteile dieser bekannten Lösung sind offensichtlich:

    [0006] Fehlerhafte Daten- oder Adreßeingaben können ein nicht vorhersagbares Verhalten des Motors verursachen, einer­seits weil das Reglerkontrollprogramm und die motor- und fahrzeugsspezifischen Daten im gleichen Speicher unterge­bracht sind, andererseits weil die Eingabedaten kaum ge­prüft werden.

    [0007] Durch Verwendung nur eines Speichers für Programm und Da­ten werden über das oben erwähnte Flachbandkabel auch Pro­gramminstruktionen übertragen, was bei elektrischen Ein­streuungen zu Programmabstürzen führen kann.

    [0008] Das Vertauschen der beiden Parameterspeicherkopien nach Änderung von jeweils nur einem Datenbyte kann zu inkon­sistenten Daten führen, was wiederum ein nicht vorherseh­bares Motorverhalten verursachen kann.

    [0009] Die Datenänderung in hexadezimaler Form und unter Angabe physikalischer Speicheradressen kann praktisch nur von Programmierern und kaum vom Prüfstandspersonal durchge­führt werden.

    [0010] Der spezielle Prüfstandsregler ist nicht mit dem späteren Serienregler identisch, da der Prüfstandsregler einen Multi-Chip Mikrorechner enthält, wogegen der Serienregler aus Kostengründen üblicherweise einen Single-Chip-Mikro­rechner enthält.

    [0011] Es ist ein Ziel der Erfindung, ein Verfahren und eine zu dessen Durchführung geeignete Vorrichtung zu schaffen, mit dem die Nachteile der bekannten Lösung beseitigt werden können.

    [0012] Dieses Ziel läßt sich mit einem Verfahren der eingangs ge­nannten Art erreichen, bei welchem erfindungsgemäß der als Lese-Schreib-Speicher ausgebildete Parameterspeicher in einen Adreßbereich, in zumindest einen, im allgemeinen mehrere, Datenbereiche und in einen Zwischenspeicherbereich unter­teilt wird, wobei der an der Anfangsadresse des Speichers liegende Adreßbereich die Adressen aller Datenbereiche und des Zwischenspeicherbereiches enthält und die Kapazität des Zwischenspeicherbereiches zumindest gleich der Kapazität des größten Datenbereiches gewählt wird und daß die für einen Da­tenbereich vorgesehenen, in einem mit dem Regler kommunizie­renden Dialogrechner bestimmbaren geänderten Daten in den Zwischenspeicherbereich geschrieben werden, hierauf im Adreßbereich die Adresse des Datenbereiches durch die Adres­se des Zwischenspeicherbereiches ersetzt wird, sodann die geänderten Daten aus dem Zwischenspeicherbereich in den Da­tenbereich übertragen werden und schließlich im Adreßbereich die Adresse des Datenbereiches wieder auf die Ursprungs­adresse zurückgesetzt wird.

    [0013] Die Erfindung ermöglicht das byteweise Einschreiben neuer Daten in den Zwischenspeicherbereich bzw. das Umkopieren aus diesem Bereich in den richtigen Adreßbereich während der Zeiten, in welchen kein Speicherzugriff durch das Regelpro­gramm erfolgt. Das Umschalten von den alten Daten eines Datenbereiches auf die neuen Daten kann sehr schnell erfolgen. Da diese Adreßänderung durch das Kommunikations­programm erfolgt, ohne zwischenzeitlich den Parameterspei­cher freizugeben, kann es zu keinen inkonsistenten Adressen kommen.

    [0014] Zweckmäßig ist es, wenn die geänderten Daten vor Einschrei­ben in den Zwischenspeicherbereich zunächst in einer Nachbil­ dung des Parameterspeichers im Dialogrechner abgelegt werden, da hiedurch die Sicherheit und die Flexibilität des Verfahrens erhöht werden.

    [0015] Eine Vorrichtung zur Durchführung des erfindungsgemäßen Ver­fahrens mit einem Regler für Kraftfahrzeuge, der zumindest einen Mikrorechner und einen Parameterspeicher für motor- und fahrzeugspezifische Daten, z.B. für Kennlinien aufweist und der zum Steuern und Regeln der Kraftstoffeinspritzung und/oder weiterer Funktionen in Abhängigkeit von Betriebs­größen, wie z.B. Drehzahl, Ladedruck, Gaspedalstellung etc., die mit Hilfe von Meßwertgebern ermittelt werden, eingerich­tet ist und mit einem Dialogrechner zur Ermittlung und vor­übergehender Abspeicherung der in dem im Parameterspeicher zu ändernden Daten ist erfindungsgemäß dadurch ausgezeich­net, daß der Regler mit dem Dialogrechner über eine vorzugs­weise serielle Schnittstelle verbindbar ist, der Parameter­speicher als Lese-Schreib-Speicher ausgebildet ist und der Dialogrechner eine Nachbildung des Parameterspeichers zur Speicherung der Daten des Parameterspeichers bzw. der zu än­dernden Daten enthält.

    [0016] Es sei erwähnt, daß ein Regler für Kraftfahrzeuge der ange­sprochenen Art beispielsweise in der EP-A2-207 051 beschrie­ben ist.

    [0017] Die Erfindung samt ihren weiteren Vorteilen und Merkmalen ist im folgenden an Hand einer beispielsweisen Ausführungs­form näher erläutert, die in der Zeichnung veranschaulicht ist. In dieser zeigen Fig. 1 in einer schematischen Über­sicht einen Regler für Kraftfahrzeuge, der mit einem Dialog­rechner verbunden ist, Fig. 2 schematisch die Organisation des Parameterspeichers, Fig. 3a bis 3e schematisch die ein­zelnen Schnitte der Datenänderung und Fig. 4a bis 4b ein schematisches Ablaufdiagramm einer Datenänderung, ohne Be­rücksichtigung der Fehlerbehandlung.

    [0018] Gemäß Fig. 1 ist ein elektronischer Regler 1 über ein im allgemeinen bloß 3-adriges Kabel 2 mit einem Dialogrechner 3 verbunden. Über eine Anzahl von Leitungen 4 steht der Regler 1 in hier nicht näher interessierender Weise mit Gebern eines Motors bzw. des Kraftfahrzeuges, z.B. für die Drehzahl, Tem­peratur usw. sowie mit einem oder mehreren Stellgliedern, beispielsweise für die Regelstange der Einspritzpumpe eines Dieselmotors in Verbindung.

    [0019] Der Regler 1 enthält im vorliegenden Fall drei Mikro­rechner 5, 6 und 7, die über einen parallelen Bus 8 mit einem Parameterspeicher 9 verbunden sind. Der Parameter­speicher 9 enthält motor- bzw. fahrzeugspezifische Daten, die für die Regelung des Motors bzw. den Betrieb des Fahr­zeuges benötigt werden. Über den Bus 8 kann jeder Mikro­rechner 5, 6, 7 mit jedem anderen Mikrorechner Daten aus­tauschen, sowie Daten aus dem Parameterspeicher 9 lesen, wo­bei gleichzeitig nur zwei der Mikrorechner oder einer der Mikrorechner mit dem Parameterspeicher kommunizieren können. Der Parameterspeicher 9 ist im Seriengerät als reiner Lese­speicher ausgebildet, während der Entwicklungsphase wird ein Lese-/Schreibspeicher verwendet. Der Mikrorechner 5 be­sitzt eine Sonderstellung in diesem Mehr-Computer System, er enthält das Kommunikationsprogramm, das über die serielle Schnittstelle (Kabel 2) mit dem Dialogrechner 3 verkehrt und er hat als einziger Schreibzugriff zu dem Parameterspeicher 9 über eine Leitung 10.

    [0020] Der Dialogrechner 3 ist als tragbarer Mikrorechner ausgebil­det und besteht im wesentlichen aus einer Zentraleinheit 11 (CPU), einem Speicher 12 und einer seriellen Ein-/Ausgabeeinheit 13. Für die Kommunikation mit dem Bedie­ner stehen ein Farbgrafik-Bildschirm 12 und eine alphanume­rische Tastatur 15 zur Verfügung. Der Speicher 12 des Dialog­rechners 3 besteht aus einem Festwertspeicher, der das Dia­logrechnerprogramm enthält und einem Lese-/Schreibspeicher, der sowohl die Programmdaten als auch eine Kopie des Para­meterspeichers 9 des elektronischen Reglers 1 enthält.

    [0021] Das 3-adrige Kabel 7 dient zur seriellen Übertragung von Da­ten zwischen dem Dialogrechner 3 und dem elektronischen Re­gler 1. Diese serielle Schnittstelle arbeitet halbduplex und entspricht dem Standard RS-485. Der Datenaustausch wird mit­tels sogenannter Nachrichten durchgeführt; die Bedeutung der Daten innerhalb einer Nachricht und die erlaubte Reihenfolge der Nachrichten werden durch eine Datenaustausch-Vorschrift (Protokoll) festgelegt.

    [0022] Nach Fig. 2 besteht der Parameterspeicher 9 aus einem am Speicheranfang liegenden Adreßbereich A, einem oder mehreren Datenbereichen Di, 1 ≦ i ≦ n und einem Zwischenspeicherbe­reich Z am Ende des Parameterspeichers. Der Adreßbereich A enthält die Adressen aller Datenbereiche Di, sowie die Adresse des Zwischenspeicherbereiches Z; die Datenbereiche Di enthalten die einzelnen motor- und fahrzeugspezifischen Daten und der Zwischenspeicherbereich Z dient zur vorüber­gehenden Aufnahme von geänderten Daten eines bestimmten Da­tenbereiches Di. Die Größe des Zwischenspeicherbereiches Z muß größer oder gleich dem Maximum der Größen aller Datenbe­reiche Di, 1 ≦ i ≦ n gewählt werden.

    [0023] In Fig. 3a bis 3e wird eine Datenänderung in einem bestimm­ten Datenbereich Dj, 1 ≦ j ≦ n in den einzelnen Schritten erläutert. Der Einfachheit halber sind in Fig. 3a bis 3e nur der Parameterspeicher 9, das Kommunikationsprogramm des Mikro­rechners 5 und die aus dem Parameterspeicher 9 lesenden Re­gelprogramme, die auf die Mikrorechner 5, 6, 7 verteilt sein können, dargestellt.

    [0024] Die Daten des Datenbereiches DJ werden durch Eingabe eines entsprechenden Kommandos über die Tastatur 15 des Dialog­rechners 3 auf dem Bildschirm 14 angezeigt. Ein Teil des Dialogrechnerprogrammes, nämlich der sogenannte Text-Editor, erlaubt nun die Änderung einzelner Datenwerte. Der Abschluß der Datenänderung und damit die Übernahme der geänderten Da­ten wird dem Dialogrechnerprogramm wieder mittels eines Kom­ mandos mitgeteilt. Jetzt werden die Daten des Datenberei­ches Dj vom Dialogrechnerprogramm auf Richtigkeit und Ver­träglichkeit mit den übrigen Daten geprüft. Falsche oder nicht plausible Daten werden unter Ausgabe einer Fehlermel­dung am Bildschirm 14 des Dialogrechners 3 zurückgewiesen und zur Korrektur angeboten.

    [0025] Werden die geänderten Daten des Datenbereiches Dj als rich­tig und verträglich mit dem Rest der Daten anerkannt, dann werden sie vorerst im Programmdatenspeicher des Dialogrech­ners 3 (und nicht in der Kopie des Parameterspeichers) zwischengespeichert. Fig. 3a zeigt den Zustand vor der Daten­änderung aus der Sicht des elektronischen Reglers 1.

    [0026] Anschließend, wie in Fig. 3b dargestellt, beauftragt der Dialogrechner 3 durch eine Nachricht den elektronischen Reg­ler 1, die nachfolgend gesandten Daten in den Zwischenspei­cherbereich Z zu schreiben. Das Kommunikationsprogramm des Mikrorechners 5 schreibt die vom Dialogrechner 3 empfangenen Daten des Datenbereiches Dj über den Bus 8 unter Verwendung der Schreibleitung 10 in den Zwischenspeicherbereich Z. Dabei werden die Daten Byte für Byte immer nur dann in den Parameterspeicher 9 geschrieben, wenn gerade kein Regel­programm darauf zugreift. Die Regelprogramme selbst arbeiten nach wie vor noch mit den alten Daten des Datenbereiches Dj. Wenn alle Daten des Datenbereiches Dj erfolgreich in den Zwischenspeicherbereich Z geschrieben wurden, wird dies dem Dialogrechner 3 per Nachricht (Antwort) mitgeteilt; ebenso auch wenn der Auftrag aus irgendeinem Grund nicht ausgeführt werden konnte. Im letzten Fall entscheidet der Dialogrechner 3, entweder den Auftrag zu wiederholen oder abzubrechen, was dem Bediener mittels einer Fehlermeldung am Bildschirm mit­geteilt wird.

    [0027] In dem Schnitt nach Fig. 3c beauftragt der Dialogrechner 3 den elektronischen Regler 1, im Adreßbereich A die Adresse des Datenbereiches Dj durch die Adresse des Zwischenspei­ cherbereiches Z zu ersetzen. Jetzt erst wird die Datenände­rung für die Regelprogramme wirksam; sie arbeiten ab dem nächsten Zugriff mit den neuen Daten des Datenbereiches Dj, die vorläufig im Zwischenspeicherbereich Z abgespeichert sind.

    [0028] Um weitere Datenänderungen durchführen zu können, werden wieder durch Auftrag des Dialogrechners 3 die neuen Daten des Datenbereiches Dj aus dem Zwischenspeicherbereich Z auf ihren ursprünglichen Platz kopiert. Dieser Schritt wird in Fig. 3d dargestellt; die Regelprogramme arbeiten nach wie vor mit den neuen Daten des Datenbereiches Dj im Zwischen­speicherbereich Z.

    [0029] Als letzten Schritt des Verfahrens wird nun, wie in Fig. 3e gezeigt, im Adreßbereich A die Adresse des Datenbereiches Dj wieder durch die ursprüngliche Adresse des Datenbereiches ersetzt. Die Regelprogramme arbeiten nun mit den neuen Daten des Datenbereiches Dj auf deren ursprünglichem Platz, der Zwischenspeicherbereich Z ist frei für weitere Datenände­rungen. Damit ist die Datenänderung für den elektronischen Regler 1 abgeschlossen. Schließlich übernimmt der Dialog­rechner 3 die geänderten Daten des Datenbereiches Dj in seine Kopie des Parameterspeichers. Der Dialogrechner 3 kann weitere Aufträge zur Datenänderung entgegennehmen.

    [0030] Ein mögliches Ablaufdiagramm das im Zusammenhang mit der Erfindung angewendet werden kann ist in Fig. 4a bis 4c dar­gestellt. Die Abkürzung DB steht für "Datenbereich". Eine nähere Erläuterung des Diagramms erübrigt sich.

    [0031] Die wesentlichen Vorteile der Erfindung werden im folgenden nochmals zusammengefaßt:

    [0032] Der erste und der dritte Schritt der Datenänderung, nämlich das Einschreiben in den Zwischenspeicherbereich und das Kopieren von diesem auf den Originalplatz können byteweise immer dann ausgeführt werden, wenn die Regelprogramme den Parameterspeicher gerade nicht benützen, ohne die Kon­sistenz der Daten zu beeinflussen (die Adressierung der Daten erfolgt immer über den Adreßbereich).

    [0033] Das Umschalten von den alten Daten eines Datenbereiches auf die neuen Daten im zweiten Schritt geschieht durch Änderung von nur einer Adresse (im allgemeinen 2 Bytes), also sehr schnell. Da das Kommunikationsprogramm diese Adreßänderung durchführt, ohne den Parameterspeicher zwischenzeitlich freizugeben, kann es zu keinen inkon­sistenten Adressen kommen.

    [0034] Plausibilität und Konsistenz aller Daten des Parameter­speichers werden vom Dialogrechner 3 durchgeführt.

    [0035] Bei der gezeigten Ausführung enthält der Regler 1 ein Mehr­rechnersystem mit drei Mikrorechnern. Hiezu sei erwähnt, daß der Regler 1 auch mit bloß einem einzigen Mikrorechner oder mit zwei Mikrorechnern und bei Bedarf auch mit mehr als drei Mikrorechnern aufgebaut sein kann.


    Ansprüche

    1. Verfahren zur Änderung der Daten in dem Parameterspeicher eines Reglers für Kraftfahrzeuge im on-line-Betrieb, wobei der Regler außer dem Parameterspeicher zumindest einen Mikrorechner enthält und zum Steuern und Regeln der Kraft­stoffeinspritzung und/oder weiterer Funktionen in Abhängig­keit von Betriebsgrößen, wie z.B. Drehzahl, Ladedruck, Gas­pedalstellung, die mit Hilfe von Meßwertgebern ermittelt werden, eingerichtet ist, dadurch gekennzeichnet, daß der als Lese-Schreib-Speicher ausgebildete Parameterspeicher in einen Adreßbereich (A), in zumindest einen, im allgemei­nen mehrere, Datenbereiche (Di) und in einen Zwischenspei­cherbereich (Z) unterteilt wird, wobei der an der Anfangs­adresse des Speichers liegende Adreßbereich (A) die Adressen aller Datenbereiche (Di) und des Zwischenspeicherbereiches (Z) enthält und die Kapazität des Zwischenspeicherbereiches zumindest gleich der Kapazität des größten Datenbereiches gewählt wird und daß die für einen Datenbereich (Di) vorge­sehenen, in einem mit dem Regler kommunizierenden Dialog­rechner bestimmbaren geänderten Daten in den Zwischenspei­cherbereich (Z) geschrieben werden, hierauf im Adreßbereich (A) die Adresse des Datenbereiches (Dj) durch die Adresse des Zwischenspeicherbereiches (Z) ersetzt wird, sodann die gänderten Daten aus dem Zwischenspeicherbereich (Z) in den Datenbereich (Dj) übertragen werden und schließlich im Adreßbereich (A) die Adresse des Datenbereiches (Dj) wieder auf die Ursprungsadresse zurückgesetzt wird.
     
    2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die geänderten Daten vor Einschreiben in den Zwischenspei­cherbereich (Z) zunächst in einer Nachbildung des Parameter­speichers im Dialogrechner abgelegt werden.
     
    3. Vorrichtung zur Durchführung des Verfahrens nach Anspruch 1 oder 2 mit einem Regler für Kraftfahrzeuge, der zumindest einen Mikrorechner und einen Parameterspeicher für motor-­und fahrzeugspezifische Daten, z.B. für Kennlinien aufweist und der zum Steuern und Regeln der Kraftstoffeinspritzung und/oder weiterer Funktionen in Abhängigkeit von Betriebs­größen, wie z.B. Drehzahl, Ladedruck, Gaspedalstellung, die mit Hilfe von Meßwertgebern ermittelt werden, eingerich­tet ist und mit einem Dialogrechner zur Ermittlung und vor­übergehender Abspeicherung der im Parameterspeicher zu ändernden Daten, dadurch gekennzeichnet, daß der Regler (1) mit dem Dialogrechner (3) über eine vorzugsweise seriel­le Schnittstelle (2) verbindbar ist, der Parameterspeicher (9) als Lese-Schreib-Speicher ausgebildet ist und der Dialog­rechner (3) eine Nachbildung des Parameterspeichers zur Speicherung der Daten des Parameterspeichers bzw. der zu än­dernden Daten enthält.
     




    Zeichnung