EP0608456A1 - Engine control - Google Patents

Engine control Download PDF

Info

Publication number
EP0608456A1
EP0608456A1 EP93101326A EP93101326A EP0608456A1 EP 0608456 A1 EP0608456 A1 EP 0608456A1 EP 93101326 A EP93101326 A EP 93101326A EP 93101326 A EP93101326 A EP 93101326A EP 0608456 A1 EP0608456 A1 EP 0608456A1
Authority
EP
European Patent Office
Prior art keywords
processed
interrupts
control according
activation
engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
EP93101326A
Other languages
German (de)
French (fr)
Other versions
EP0608456B1 (en
Inventor
Heinz Dipl.-Ing. Neugebauer (Fh)
Herbert Dipl.-Ing. Ziegler (Fh)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8212564&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=EP0608456(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE59302747T priority Critical patent/DE59302747D1/en
Priority to EP19930101326 priority patent/EP0608456B1/en
Publication of EP0608456A1 publication Critical patent/EP0608456A1/en
Application granted granted Critical
Publication of EP0608456B1 publication Critical patent/EP0608456B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/263Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the program execution being modifiable by physical parameters

Definitions

  • the invention relates to a motor control according to the preamble of claim 1.
  • Priority-high are programs that trigger an engine control process at a given crank angle, e.g. Fuel is injected or ignited. So-called background programs run with low priority.
  • the time-dependent programs are divided into different groups, at least one program group with the shortest distance and longer programs. At least one of the longer programs is added to the program group with the shortest distance, thereby forming a network group.
  • This known operating system is complex.
  • the invention has for its object to provide a motor control with faster change times for the tasks to be processed.
  • Essential components of an engine control system 1 are a computing part 2 and a real-time part 3 (FIG. 1).
  • the computing part and the real-time part are connected to one another by a so-called two-port or three-port RAM 4, by a plurality of so-called handshake lines 5 and by an interrupt line 6.
  • a plurality of input lines 8 and output lines 9 are connected to the real-time part 3.
  • Input variables arrive via the input lines 8 and are measured in the real-time part, e.g. Sensor signals that reflect the position of the crankshaft or camshaft.
  • Control signals are output to actuators via the output lines 9, with which e.g. the ignition and the fuel injection are triggered.
  • the real-time part 3 has two microprocessors of the 87C51GB type from Intel.
  • Analogue temperature signals for example, reach the computing part via an input line 10 and are digitized in this in an internal AD converter.
  • Other input lines 10 are connected to an HSI input and to port pins of the computing part 2.
  • Pulse-width-modulated control signals LLFS are output via the output lines 11 from a so-called HSO output of the computing part to the idle filling actuator of the engine and signals TEV to the tank ventilation valve of the vehicle.
  • the vehicle and engine components not belonging to the engine control 1 are not shown, nor is the internal structure of the processors used, since they refer to the manuals of Manufacturer can be removed. Only a few of the input and output lines are shown to represent the actual lines.
  • a line 14 forms a serial interface of the computing part 2 and via a bus 15 it is connected to two memory components, a RAM 16 and an EPROM 17.
  • the task of the computing part in FIG. 2 is to record and evaluate the measurement data received, either directly or via the real-time part 3, and to calculate control signals for the ignition, injection, etc. based on this and output them to the corresponding actuators via the real-time part 3.
  • an operating system is used for the motor control, which is designed as described below.
  • the external interrupt EXTINT arriving via line 6 to computing part 2 is emitted by real-time part 3.
  • each crankshaft segment i.e. with a 6-cylinder engine every 120 ° KW (crankshaft angle)
  • an external interrupt EXTINT is carried out.
  • an EXTINT is generated for each tooth of the crankshaft pulley, i.e. every 6 ° crankshaft rotation, activated. This interrupt or interruption EXTINT triggers a calculation cycle of the data for one cylinder at a time.
  • HSO interrupts are used to generate pulse-width-modulated control signals for the tank vent valve TEV, the idle charge controller LLFS and the throttle valve actual value DKI.
  • a request for short time orders ZV_KURZ is issued in a time grid of 10 ms.
  • the HSI interrupt is used to evaluate the speedometer signal of the motor vehicle.
  • HSI / O high speed input / output
  • HSI / O high speed input / output
  • the interrupts for the serial interface are used to control the sending and receiving of data with external Development and adaptation, measuring and testing devices are exchanged.
  • the time management for short time jobs is carried out as follows. As soon as a task or task has been processed, it is checked whether there is a request for a short time task ZV_KURZ. If this is the case, the request is activated. A task is a part of a program that is activated and is returned to the operating system after it has been processed.
  • a list 20 is provided in RAM 16 - abbreviated to BERLST_SYNC - in which the start addresses of the tasks to be activated are entered.
  • this list is constructed as a ring memory and can hold up to 32 entries.
  • the entry pointer marks the position in the list in which the next task address is entered, the processing pointer points to the start address of the task that is currently being processed or is called up next.
  • a status mark "synchronous request" is set and the start address is entered in the position of the synchronous list 20 to which the entry pointer is currently pointing.
  • the entry pointer is then increased and limited to the permissible maximum value - here 32.
  • a task is called up by computing part 2 looking at the content of the task list - i.e. the entry address of the task - loads to which the processing pointer points and jumps to the loaded address.
  • the processing pointer is increased, limited and compared with the entry pointer. If the value of both pointers is the same, this means that the jobs in the synchronous list have been processed.
  • the status mark "Synchronous request available" is reset.
  • Synchronous tasks are those parts of the program that have to be processed in a rigid temporal relationship to the rotation of the crankshaft.
  • a synchronous task can only be called from the synchronous part of the operating system, but an entry in the synchronous list can be made from any priority level.
  • the pointers When the processing list 20, which is designed as a ring memory, is managed, the pointers must be limited in order to avoid that they extend beyond the end of the list due to a constant increase. After each addition, it is checked whether the respective pointer has exceeded the end of the list. If this is the case, the pointer is set back to the beginning of the task list.
  • a synchronization task is entered with a macro command "Start address synchronization task" START_TASK_SYNC.
  • the return address from a synchronous task to the operating system is always VON_SYNC.
  • the time management for long time jobs is carried out as follows. After processing the time management for short time jobs and all currently entered synchronous tasks, the time management ZV_LANG is activated if a request is present. A request for a time management ZV_LANG is entered every 10 ms by the ZV_KURZ.
  • the asynchronous tasks are processed with the lowest priority in the present motor control, i.e. they are only activated if there are no requests from ZV_KURZ, synchronous tasks and ZV_LANG.
  • the way in which the asynchronous tasks are processed is the same as that for the synchronous tasks, but there is a separate list 23 (FIG. 3) for the start addresses of the asynchronous tasks - the so-called ready list for asynchronous tasks BERLST_ASY - with its own processing pointer ASYNC_B and entry pointer ASYNC_E.
  • An asynchronous task can be entered from any priority level and is executed with the macro command "Start address asynchronous task" START_TASK.
  • the tasks can each be in one of three states: "COMPUTING” when the program is being processed in computing part 2; "READY” or “WAITING” if the program is requested but not yet running, and "SLEEPING” or “NOT ACTIVE” if neither of the first two states is present.
  • the various tasks and time management can only be interrupted at any time by interrupts.
  • the interrupt job is then processed and then the processing of the started task or time management is continued.
  • the maximum time for the processing of tasks must be less than 10 ms so that the time management ZV_LANG can work correctly.
  • FIG. 4 The operating system of the computing part 2 of the engine control 1 described above is shown in FIG. 4 in the form of a structogram.
  • the symbol “ ⁇ >” here means “not equal” or “not equal”
  • a query 26 as to whether the processing pointer of the synchronous list is different from the entry pointer of the synchronous list corresponds to the query as to whether there is a request for a synchronizing task.
  • a query 27 as to whether the processing pointer of the asynchronous list is not equal to the (associated) entry pointer corresponds to the query as to whether there is a request for a synchronization task.
  • the content of the other boxes of the structogram 25 is self-explanatory, also in view of the above description.
  • a controller 1 for a motor vehicle engine contains a computing part 2, by means of which measured values are recorded and evaluated, reflect the operating variables of the engine, and control signals are generated for actuators which act on engine operation (ignition, injection, etc.).
  • An operating system controls the acquisition and evaluation of the measured values and the generation of control signals in such a way that short change times result for the programs to be processed.
  • the operating system defines the following groups of workflows to be processed with a graded priority: requesting interruptions (interrupts), time management jobs and activation of workflows.

Abstract

A control (1) for a motor vehicle engine contains a computing component (2) by means of which measured values which represent operating variables of the engine are captured and evaluated, and control signals are produced for actuation elements which act on the operation of the engine (idling filler controller, fuel tank venting valve etc.). An operating system controls the capturing and evaluation of the measured values and the production of control signals in such a way that short change times for the programs to be processed are produced. By virtue of the operating system, the following groups of process sequences which are to be processed with graduated priority are determined: interrupt requests, time management jobs and activation of process sequences. <IMAGE>

Description

Die Erfindung betrifft eine Motorsteuerung nach dem Oberbegriff von Patentanspruch 1.The invention relates to a motor control according to the preamble of claim 1.

Bei einer bekannten Motorsteuerung (DE 38 26 526 A1) laufen Programme unterschiedlicher zeitlicher Priorität ab. Prioritätshoch sind Programme, mit denen bei einem vorgegebenen Kurbelwinkel ein Motorsteuervorgang ausgelöst wird, z.B. Kraftstoff eingespritzt oder gezündet wird. Mit niedriger Priorität laufen sogenannte Hintergrundprogramme ab. Die zeitabhängigen Programme sind in verschiedene Gruppen eingeteilt, mindestens in eine abstandskürzeste Programmgruppe und abstandslängere Programme. An die abstandskürzeste Programmgruppe ist mindestens eines der abstandslängeren Programme angefügt, wodurch eine Verbundgruppe gebildet wird. Dieses bekannte Betriebssystem ist aufwendig.In a known motor controller (DE 38 26 526 A1), programs with different temporal priority run. Priority-high are programs that trigger an engine control process at a given crank angle, e.g. Fuel is injected or ignited. So-called background programs run with low priority. The time-dependent programs are divided into different groups, at least one program group with the shortest distance and longer programs. At least one of the longer programs is added to the program group with the shortest distance, thereby forming a network group. This known operating system is complex.

Der Erfindung liegt die Aufgabe zugrunde, eine Motorsteuerung mit schnelleren Wechselzeiten für die zu bearbeitenden Aufgaben zu schaffen.The invention has for its object to provide a motor control with faster change times for the tasks to be processed.

Diese Aufgabe wird durch die Motorsteuerung nach Anspruch 1 gelöst.This object is achieved by the engine control according to claim 1.

Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen niedergelegt.Advantageous further developments of the invention are laid down in the subclaims.

Ein Ausführungsbeispiel der Erfindung wird im folgenden anhand der Zeichnung erläutert. Es zeigen:

  • Figur 1 die wesentlichen Bestandteile einer erfindungsgemäßen Motorsteuerung als Blockschaltbild,
  • Figur 2 und 3 den Aufbau der Synchronliste und der Asynchronliste des Betriebssystems der Motorsteuerung nach Figur 1 und
  • Figur 4 ein Struktogramm des Betriebssystems der Motorsteuerung nach Figur 1.
An embodiment of the invention is explained below with reference to the drawing. Show it:
  • FIG. 1 shows the essential components of an engine control according to the invention as a block diagram,
  • Figures 2 and 3 the structure of the synchronous list and the asynchronous list of the operating system of the engine control according to Figure 1 and
  • FIG. 4 shows a structure diagram of the operating system of the engine control according to FIG. 1.

Wesentliche Bestandteile einer Motorsteuerung 1 sind ein Rechenteil 2 und ein Echtzeitteil 3 (Figur 1). Der Rechenteil und der Echtzeitteil sind durch ein sog. Zwei- oder Drei-Port-RAM 4, durch mehrere sog. Handshake-Leitungen 5 und durch eine Interrupt-Leitung 6 miteinander verbunden.Essential components of an engine control system 1 are a computing part 2 and a real-time part 3 (FIG. 1). The computing part and the real-time part are connected to one another by a so-called two-port or three-port RAM 4, by a plurality of so-called handshake lines 5 and by an interrupt line 6.

An den Echtzeitteil 3 sind mehrere Eingangsleitungen 8 und Ausgangssleitungen 9 angeschlossen. Über die Eingangsleitungen 8 treffen Eingangsgrößen ein, die in dem Echtzeitteil gemessen werden, z.B. Sensorsignale, die die Lage der Kurbelwelle oder der Nockenwelle wiedergeben. Über die Ausgangsleitungen 9 werden Steuersignale an Aktoren ausgegeben, mit denen z.B. die Zündung und die Kraftstoffeinspritzung ausgelöst werden. Im vorliegenden Ausführungsbeispiel weist der Echtzeitteil 3 zwei Mikroprozessoren des Typs 87C51GB der Firma Intel auf.A plurality of input lines 8 and output lines 9 are connected to the real-time part 3. Input variables arrive via the input lines 8 and are measured in the real-time part, e.g. Sensor signals that reflect the position of the crankshaft or camshaft. Control signals are output to actuators via the output lines 9, with which e.g. the ignition and the fuel injection are triggered. In the present exemplary embodiment, the real-time part 3 has two microprocessors of the 87C51GB type from Intel.

An den Rechenteil 2 sind ebenfalls mehrere Eingangsleitungen 10 und Ausgangssleitungen 11 angeschlossen. Über eine Eingangsleitung 10 gelangen z.B. analoge Temperatursignale zu dem Rechenteil und werden in diesem in einem internen AD-Wandler digitalisiert. Andere Eingangsleitungen 10 sind an einen HSI-Eingang und an Port-Pins des Rechenteils 2 angeschlossen. Über die Ausgangsleitungen 11 werden von einem sogenannten HSO-Ausgang des Rechenteils pulsweitenmodulierte Steuersignale LLFS an den Leerlauffüllungssteller des Motors und Signale TEV an das Tankentlüftungsventil des Fahrzeugs ausgegeben. In der Zeichnung sind die nicht zu der Motorsteuerung 1 gehörenden Fahrzeugs- und Motorbestandteile nicht dargestellt, ebenso nicht der interne Aufbau der verwendeten Prozessoren, da sie den Handbüchern des Herstellers entnommen werden können. Von den Eingangs- und Ausgangsleitungen sind nur einige wenige stellvertretend für die tatsächlich vorhandenen Leitungen dargestellt.Several input lines 10 and output lines 11 are also connected to the computing part 2. Analogue temperature signals, for example, reach the computing part via an input line 10 and are digitized in this in an internal AD converter. Other input lines 10 are connected to an HSI input and to port pins of the computing part 2. Pulse-width-modulated control signals LLFS are output via the output lines 11 from a so-called HSO output of the computing part to the idle filling actuator of the engine and signals TEV to the tank ventilation valve of the vehicle. In the drawing, the vehicle and engine components not belonging to the engine control 1 are not shown, nor is the internal structure of the processors used, since they refer to the manuals of Manufacturer can be removed. Only a few of the input and output lines are shown to represent the actual lines.

Eine Leitung 14 bildet eine serielle Schnittstelle des Rechenteils 2 und über einen Bus 15 ist dieser mit zwei Speicherbausteinen, einem RAM 16 und einem EPROM 17, verbunden.A line 14 forms a serial interface of the computing part 2 and via a bus 15 it is connected to two memory components, a RAM 16 and an EPROM 17.

Die Aufgabe des Rechenteils in 2 ist es, die - entweder direkt oder über den Echtzeitteil 3 - empfangenen Meßdaten zu erfassen und auszuwerten und darauf basierend Steuersignale für die Zündung, die Einspritzung usw. zu berechnen und über den Echtzeitteil 3 an die entsprechenden Aktoren auszugeben. Um die Arbeiten mit der erforderlichen Genauigkeit und Schnelligkeit erledigen zu können, wird für die Motorsteuerung ein Betriebssystem eingesetzt, das wie nachfolgend beschrieben ausgebildet ist.The task of the computing part in FIG. 2 is to record and evaluate the measurement data received, either directly or via the real-time part 3, and to calculate control signals for the ignition, injection, etc. based on this and output them to the corresponding actuators via the real-time part 3. In order to be able to do the work with the required accuracy and speed, an operating system is used for the motor control, which is designed as described below.

Durch das Betriebssystem sind folgende, in abgestufter Priorität abzuarbeitende Gruppen von Arbeitsabläufen festgelegt:

  • Anforderungen von Unterbrechungen (Interrupts),
  • Zeitverwaltungsaufträge und
  • Aktivierung von Arbeitsabläufen.
The operating system defines the following groups of workflows to be processed in priority:
  • Requests of interrupts,
  • Time management orders and
  • Activation of work processes.

Dabei ergeben sich fünf sog. Prioritätsebenen, d.h. eine Unterteilung der Arbeitsabläufe in folgende Prioritäts- oder Vorrangstufen für die zu erledigenden Arbeiten oder Tasks, und zwar in absteigender Reihenfolge:

  • Interrupts (angeforderte Unterbrechungen)
  • Überprüfung auf abgearbeitete (oder abgelaufene) kurze Zeitaufträge ZV_KURZ
  • Synchrontasks (Aktivierung von synchronen Arbeitsabläufen)
  • Überprüfung auf abgearbeitete (oder abgelaufene) lange Zeitaufträge ZV_LANG, und
  • Asynchrontasks (Aktivierung von asynchronen Arbeitsabläufen)
In dem Rechenteil 2 werden vier Quellen für Interrupts benutzt:
  • externer Interrupt EXTINT
  • HSO-Interrupt
  • HSI-Interrupt
  • Interrupt für die serielle Schnittstelle.
There are five so-called priority levels, that is, a subdivision of the work processes into the following priority or priority levels for the work or tasks to be done, in descending order:
  • Interrupts
  • Check for completed (or expired) short time orders ZV_KURZ
  • Synchronous tasks (activation of synchronous workflows)
  • Check for processed (or expired) long time orders ZV_LANG, and
  • Asynchronous tasks (activation of asynchronous workflows)
Four sources for interrupts are used in computing part 2:
  • external interrupt EXTINT
  • HSO interrupt
  • HSI interrupt
  • Interrupt for the serial interface.

Der über die Leitung 6 zu dem Rechenteil 2 gelangende externe Interrupt EXTINT wird von dem Echtzeitteil 3 ausgesendet. Sobald sich der Echtzeitteil 2 auf die Bewegung einer Zahnscheibe, die an der Kurbelwelle befestigt ist, synchronisiert hat, wird jedes Kurbelwellen-Segment, d.h. bei einem 6-Zylinder-Motor alle 120° KW(Kurbelwellenwinkel), ein externer Interrupt EXTINT durchgeführt. Solange der Echtzeitteil 2 noch nicht synchronisiert ist, wird ein EXTINT bei jedem Zahn der Kurbelwellen-Scheibe, d.h. alle 6° Kurbelwellendrehung, aktiviert. Dieser Interrupt oder Unterbrechung EXTINT gibt den Anstoß für einen Berechnungszyklus der Daten für jeweils einen Zylinder.The external interrupt EXTINT arriving via line 6 to computing part 2 is emitted by real-time part 3. As soon as the real-time part 2 has synchronized itself with the movement of a toothed disk which is attached to the crankshaft, each crankshaft segment, i.e. with a 6-cylinder engine every 120 ° KW (crankshaft angle), an external interrupt EXTINT is carried out. As long as real-time part 2 is not yet synchronized, an EXTINT is generated for each tooth of the crankshaft pulley, i.e. every 6 ° crankshaft rotation, activated. This interrupt or interruption EXTINT triggers a calculation cycle of the data for one cylinder at a time.

HSO-Interrupts werden benutzt, um pulsweitenmodulierte Steuersignale für das Tankentlüftungsventil TEV, den Leerlauffüllungssteller LLFS und den Drosselklappen-Istwert DKI zu erzeugen. Zusätzlich wird in einem Zeitraster von 10 ms eine Anforderung für kurze Zeitaufträge ZV_KURZ ausgegeben.HSO interrupts are used to generate pulse-width-modulated control signals for the tank vent valve TEV, the idle charge controller LLFS and the throttle valve actual value DKI. In addition, a request for short time orders ZV_KURZ is issued in a time grid of 10 ms.

Der HSI-Interrupt wird für die Auswertung des Tachosignals des Kraftfahrzeugs benutzt. Bei dem vorstehend genannten Mikroprozessor 80C196KB wird mit HSI/O (high speed input/output) ein Anschluß für die schnellen Datenein- und - ausgabe bezeichnet.The HSI interrupt is used to evaluate the speedometer signal of the motor vehicle. With the above-mentioned microprocessor 80C196KB, HSI / O (high speed input / output) is a connection for fast data input and output.

Die Interrupts für die serielle Schnittstelle dienen dazu, das Senden und Empfangen von Daten zu steuern, die mit externen Entwicklungs- und Anpassungs-, Meß- und Testgeräten ausgetauscht werden.The interrupts for the serial interface are used to control the sending and receiving of data with external Development and adaptation, measuring and testing devices are exchanged.

Die Zeitverwaltung für kurze Zeitaufträge wird wie folgt durchgeführt. Sobald eine Aufgabe oder Task abgearbeitet ist, wird überprüft, ob eine Anforderung für einen kurzen Zeitauftrag ZV_KURZ vorliegt. Ist dies der Fall, so wird die Anforderung aktiviert. Als Aufgabe oder Task wird hier ein Programmteil bezeichnet, der aktiviert wird und nach dessen Abarbeitung wieder in das Betriebssystem zurückgesprungen wird.The time management for short time jobs is carried out as follows. As soon as a task or task has been processed, it is checked whether there is a request for a short time task ZV_KURZ. If this is the case, the request is activated. A task is a part of a program that is activated and is returned to the operating system after it has been processed.

Die Zeitverwaltung für kurze Zeitaufträge führt folgende Aufgaben durch:

  • Setzen einer Anforderung für eine Zeitverwaltung für lange Zeitaufträge ZV_LANG.
  • Inkrementieren eines als interne Systemuhr dienenden Zählers AKZEIT.
  • Verwaltung von Zeitaufträgen für kurze Zeiten (10 ms). Hierbei können vorgegebene Funktionen abgearbeitet, z.B. AD-Wandlungen gestartet, Eingangssignale überprüft, Synchrontasks oder Asynchrontasks usw. eingetragen werden.
  • Aktivierung einer Diagnosekommunikation im Bedarfsfall.
Time management for short time jobs does the following:
  • Set a request for a time management for long time orders ZV_LANG.
  • Incrementing a counter AKZEIT serving as an internal system clock.
  • Management of time jobs for short times (10 ms). Predefined functions can be processed, e.g. AD conversions started, input signals checked, synchronous tasks or asynchronous tasks etc. entered.
  • Activation of diagnostic communication if necessary.

Die Synchrontasks werden folgendermaßen verwaltet oder abgearbeitet. Im RAM-Speicher 16 ist eine Liste 20 vorgesehen - abgekürzt BERLST_SYNC - , in der die Anfangsadressen der zu aktivierenden Tasks eingetragen werden. In dem vorliegenden Ausführungsbeispiel ist diese Liste als Ringspeicher aufgebaut und faßt bis zu 32 Einträgen. Für die Liste gibt es zwei Zeiger, einen sog. Eintragszeiger BERLST_E_ZEIG und einen Bearbeitungszeiger BERLST_B_ZEIG. Der Eintragszeiger markiert die Stelle in der Liste, in der die nächste Taskadresse eingetragen wird, der Bearbeitungszeiger zeigt auf die Anfangsadresse der Task, die gerade abgearbeitet oder als nächste aufgerufen wird.The synchronous tasks are managed or processed as follows. A list 20 is provided in RAM 16 - abbreviated to BERLST_SYNC - in which the start addresses of the tasks to be activated are entered. In the present exemplary embodiment, this list is constructed as a ring memory and can hold up to 32 entries. There are two pointers for the list, a so-called entry pointer BERLST_E_ZEIG and a processing pointer BERLST_B_ZEIG. The entry pointer marks the position in the list in which the next task address is entered, the processing pointer points to the start address of the task that is currently being processed or is called up next.

Wird eine Synchrontask eingetragen, so wird eine Statusmarke "Synchronanforderung" gesetzt und die Anfangsadresse in die Stelle der Synchronliste 20 eingetragen, auf die der Eintragszeiger gerade zeigt. Anschließend wird der Eintragszeiger erhöht, und dabei auf den zulässigen Maximalwert - hier 32 - begrenzt.If a synchronous task is entered, a status mark "synchronous request" is set and the start address is entered in the position of the synchronous list 20 to which the entry pointer is currently pointing. The entry pointer is then increased and limited to the permissible maximum value - here 32.

Der Aufruf einer Task erfolgt, indem sich der Rechenteil 2 den Inhalt der Task-Liste - d.h. die Einsprungadresse der Task - lädt, auf die der Bearbeitungszeiger verweist, und auf die geladene Adresse springt.A task is called up by computing part 2 looking at the content of the task list - i.e. the entry address of the task - loads to which the processing pointer points and jumps to the loaded address.

Ist eine Task abgearbeitet worden, so wird der Bearbeitungszeiger erhöht, begrenzt und mit dem Eintragszeiger verglichen. Ist der Wert beider Zeiger gleich, bedeutet dies, daß die Aufträge in der Synchronliste abgearbeitet sind. Die Statusmarke "Synchronanforderung vorhanden" wird zurückgesetzt.If a task has been processed, the processing pointer is increased, limited and compared with the entry pointer. If the value of both pointers is the same, this means that the jobs in the synchronous list have been processed. The status mark "Synchronous request available" is reset.

Synchrontasks sind hier diejenigen Programmteile, die in starrer zeitlicher Bindung an die Drehung der Kurbelwelle abgearbeitet werden müssen. Eine Synchrontask kann nur aus dem Synchronteil des Betriebssystems aus aufgerufen werden, ein Eintrag in die Synchronliste kann jedoch von jeder Prioritätsebene aus erfolgen.Synchronous tasks are those parts of the program that have to be processed in a rigid temporal relationship to the rotation of the crankshaft. A synchronous task can only be called from the synchronous part of the operating system, but an entry in the synchronous list can be made from any priority level.

Bei der Verwaltung der als Ringspeicher ausgeführten Bearbeitungsliste 20 müssen die Zeiger, um zu vermeiden, daß sie durch ein ständiges Erhöhen über das Listenende hinauslaufen, begrenzt werden. Hierbei wird nach jeder Addition überprüft, ob der jeweilige Zeiger über das Ende der Liste hinausgelaufen ist. Ist dies der Fall, so wird der Zeiger wieder auf den Anfang der Task-Liste gesetzt.When the processing list 20, which is designed as a ring memory, is managed, the pointers must be limited in order to avoid that they extend beyond the end of the list due to a constant increase. After each addition, it is checked whether the respective pointer has exceeded the end of the list. If this is the case, the pointer is set back to the beginning of the task list.

Eine Synchrontask wird mit einem Makrobefehl"Anfangsadresse Synchrontask" START_TASK_SYNC eingetragen.A synchronization task is entered with a macro command "Start address synchronization task" START_TASK_SYNC.

Die Rücksprungadresse aus einer Synchrontask in das Betriebssystem lautet immer VON_SYNC.The return address from a synchronous task to the operating system is always VON_SYNC.

Die Zeitverwaltung für lange Zeitaufträge wird folgendermaßen durchgeführt. Nach Abarbeitung der Zeitverwaltung für kurze Zeitaufträge und sämtlicher momentan eingetragener Synchrontasks wird die Zeitverwaltung ZV_LANG aktiviert, sofern eine Anforderung vorhanden ist. Alle 10 ms wird durch die ZV_KURZ eine Anforderung für eine Zeitverwaltung ZV_LANG eingetragen.The time management for long time jobs is carried out as follows. After processing the time management for short time jobs and all currently entered synchronous tasks, the time management ZV_LANG is activated if a request is present. A request for a time management ZV_LANG is entered every 10 ms by the ZV_KURZ.

Mit niedrigster Priorität werden bei der vorliegenden Motorsteuerung die Asynchrontasks abgearbeitet, d.h., sie werden erst aktiviert, wenn keine Anforderungen von ZV_KURZ, Synchrontasks und ZV_LANG vorhanden sind.The asynchronous tasks are processed with the lowest priority in the present motor control, i.e. they are only activated if there are no requests from ZV_KURZ, synchronous tasks and ZV_LANG.

Die Funktionsweise beim Abarbeiten der Asynchrontasks ist gleich der bei den Synchrontasks, es existiert jedoch eine eigene Liste 23 (Figur 3) für die Anfangsadressen der Asynchrontasks - die sog. Bereitliste für Asynchrontasks BERLST_ASY - mit eigenen Bearbeitungszeiger ASYNC_B und Eintragszeiger ASYNC_E.The way in which the asynchronous tasks are processed is the same as that for the synchronous tasks, but there is a separate list 23 (FIG. 3) for the start addresses of the asynchronous tasks - the so-called ready list for asynchronous tasks BERLST_ASY - with its own processing pointer ASYNC_B and entry pointer ASYNC_E.

Ein Eintrag einer Asynchrontask kann aus jeder Prioritätsebene erfolgen und wird mit dem Makrobefehl "Anfangsadresse Asynchrontask" START_TASK ausgeführt.An asynchronous task can be entered from any priority level and is executed with the macro command "Start address asynchronous task" START_TASK.

Ein Rücksprung aus der Asynchrontask in das Betriebssystem muß immer auf die Adresse VON_ASYNC erfolgen.A return from the asynchronous task to the operating system must always be made to the address VON_ASYNC.

Die Tasks können sich jeweils in einem von drei Zuständen befinden: "RECHNEND", wenn das Programm in dem Rechenteil 2 abgearbeitet wird; "BEREIT" oder "WARTEND", wenn das Programm angefordert ist, aber noch nicht ausgeführt wird, und "SCHLAFEND" oder "NICHT AKTIV", wenn keiner der ersten beiden Zustände vorliegt.The tasks can each be in one of three states: "COMPUTING" when the program is being processed in computing part 2; "READY" or "WAITING" if the program is requested but not yet running, and "SLEEPING" or "NOT ACTIVE" if neither of the first two states is present.

Die verschiedenen Tasks und Zeitverwaltungen können jederzeit aber nur durch Interrupts unterbrochen werden. Es wird dann der Interrupt-Auftrag abgearbeitet und anschließend wieder die Abarbeitung der begonnenen Task oder Zeitverwaltung fortgesetzt. Für die Tasks und Zeitverwaltungen gilt: ein Auftrag mit höherer Priorität kann erst nach Abarbeitung des momentanen Auftrages - auch wenn dieser eine niedrigere Priorität hat - aktiviert werden.The various tasks and time management can only be interrupted at any time by interrupts. The interrupt job is then processed and then the processing of the started task or time management is continued. The following applies to tasks and time management: a job with a higher priority can only be activated after the current job has been processed - even if it has a lower priority.

Die maximale Zeit für die Abarbeitung von Tasks einschließlich der Zeit für die möglicherweise während der Abarbeitung auftretenden Interrupts muß kleiner als 10 ms sein, damit die Zeitverwaltung ZV_LANG fehlerfrei arbeiten kann.The maximum time for the processing of tasks, including the time for the interrupts that may occur during processing, must be less than 10 ms so that the time management ZV_LANG can work correctly.

Je kürzer die einzelnen Tasks sind, desto höhere Echtzeit-Anforderungen werden von dem Betriebssystem erfüllt, d.h., desto schneller kann es auf bestimmte kurbelwellensynchrone oder Zeitsynchrone Ereignisse reagieren.The shorter the individual tasks, the higher the real-time requirements are met by the operating system, i.e. the faster it can react to certain crankshaft-synchronous or time-synchronous events.

Das vorstehend beschriebene Betriebssystem des Rechenteils 2 der Motorsteuerung 1 ist in Figur 4 in Form eines Struktogramms dargestellt. Das Symbol "<>" bedeutet hierin "nicht gleich" oder "ungleich"The operating system of the computing part 2 of the engine control 1 described above is shown in FIG. 4 in the form of a structogram. The symbol "<>" here means "not equal" or "not equal"

Eine Anfrage 26, ob der Bearbeitungszeiger der Synchronliste ungleich dem Eintragszeiger der Synchronliste ist, entspricht der Abfrage, ob eine Anforderung für eine Synchrontask vorliegt. Eine Anfrage 27, ob der Bearbeitungszeiger der Asynchronliste ungleich dem (zugehörigen) Eintragszeiger ist, entspricht der Abfrage, ob eine Anforderung für eine Synchrontask vorliegt. Der Inhalt der anderen Kästchen des Struktogramms 25 ist, auch im Hinblick auf die vorstehende Beschreibung, selbsterklärend.A query 26 as to whether the processing pointer of the synchronous list is different from the entry pointer of the synchronous list corresponds to the query as to whether there is a request for a synchronizing task. A query 27 as to whether the processing pointer of the asynchronous list is not equal to the (associated) entry pointer corresponds to the query as to whether there is a request for a synchronization task. The content of the other boxes of the structogram 25 is self-explanatory, also in view of the above description.

Zusammengefaßt sei die Erfindung wie folgt beschrieben:
Eine Steuerung 1 für einen Kraftfahrzeugmotor enthält einen Rechenteil 2, durch den Meßwerte erfaßt und ausgewertet werden, die Betriebsgrößen des Motors wiedergeben, und Steuersignale für Stellglieder erzeugt werden, die auf den Motorbetrieb einwirken (Zündung, Einspritzung usw.). Ein Betriebssystem steuert die Erfassung und Auswertung der Meßwerte und die Erzeugung von Steuersignalen derart, daß sich kurze Wechselzeiten für die abzuarbeitenden Programme ergeben. Durch das Betriebssystem werden folgende, in abgestufter Priorität abzuarbeitende Gruppen von Arbeitsabläufen festgelegt: Anforderung von Unterbrechungen (Interrupts), Zeitverwaltungsaufträge und Aktivierung von Arbeitsabläufen.
In summary, the invention is described as follows:
A controller 1 for a motor vehicle engine contains a computing part 2, by means of which measured values are recorded and evaluated, reflect the operating variables of the engine, and control signals are generated for actuators which act on engine operation (ignition, injection, etc.). An operating system controls the acquisition and evaluation of the measured values and the generation of control signals in such a way that short change times result for the programs to be processed. The operating system defines the following groups of workflows to be processed with a graded priority: requesting interruptions (interrupts), time management jobs and activation of workflows.

Claims (10)

Motorsteuerung (1) mit einem Rechenteil (2), durch den Betriebsgrößen des Motors wiedergebende Meßwerte erfaßt und ausgewertet und Steuersignale für auf den Motorbetrieb ein wirkende Stellglieder erzeugt werden, und mit einem die Erfassung und Auswertung und die Erzeugung von Steuersignalen steuernden Betriebssystem, unter welchem Programme unterschiedlicher Priorität abgearbeitet werden,
dadurch gekennzeichnet,
daß durch das Betriebssystem folgende, in abgestufter Priorität abzuarbeitende Gruppen von Arbeitsabläufen festgelegt sind: - Anforderungen von Unterbrechungen, - Zeitverwaltungsaufträge und - Aktivierung von Arbeitsabläufen.
Motor control (1) with a computing part (2), by means of the operating variables of the motor, representing and evaluating measured values and generating control signals for actuators acting on motor operation, and with an operating system controlling the detection and evaluation and the generation of control signals, under which Programs of different priority are processed,
characterized,
that the operating system defines the following groups of workflows to be processed with a graded priority: - requests for interruptions, - time management orders and - Activation of work processes.
Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß die Arbeitsabläufe in folgende, in absteigender Reihenfolge abzuarbeitende Prioritätsstufen
unterteilt sind: - Anforderung von Unterbrechungen, - Überprüfung auf abgearbeitete kurze Zeitaufträge, - Aktivierung von synchronen Arbeitsabläufen, - Überprüfung auf abgearbeitete lange Zeitaufträge und - Aktivierung von asynchronen Arbeitsabläufen.
Motor control according to claim 1, characterized in that the work processes in the following priority levels to be processed in descending order
are divided into: - requesting interruptions, - Checking for processed short time orders, - activation of synchronous workflows, - Check for long time orders and - Activation of asynchronous workflows.
Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß folgende Quellen für Anforderungen von Unterbrechungen (Interrupts) vorhanden sind: - externe Interrupts (EXTIND); - HSO-Interrupts, - HSI-Interrupts und - Interrupts für serielle Schnittstelle. Motor control according to Claim 1, characterized in that the following sources are available for requests for interrupts: - external interrupts (EXTIND); - HSO interrupts, - HSI interrupts and - Interrupts for serial interface. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß die Zeitverwaltungsaufträge eine Überprüfung auf abgearbeitete kurze Zeitaufträge und eine Überprüfung auf abgearbeitete lange Zeitaufträge einschließen.Engine control according to claim 1, characterized characterized in that the time management orders include a check for processed short time orders and a check for processed long time orders. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß die Aktivierung von Arbeitsabläufen eine Aktivierung von synchronen und asynchronen Arbeitsabläufen einschließt.Engine control according to claim 1, characterized in that the activation of work processes includes an activation of synchronous and asynchronous work processes. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß von dem Rechenteil (2) Unterbrechungsanforderungen (HSO-Interrupts) ausgegeben werden, aufgrund derer Steuersignale für die Stellglieder erzeugt werden.Motor control according to claim 1, characterized in that the computing part (2) issues interrupt requests (HSO interrupts) on the basis of which control signals are generated for the actuators. Motorsteuerung nach Anspruch 6, dadurch gekennzeichnet, daß durch die Steuersignale der Leerlauffüllungsssteller des Motors und gfs. das Tankentlüftungsventil des Kraftfahrzeugs gesteuert werden.Engine control according to claim 6, characterized in that by the control signals of the idle filling actuator of the engine and gfs. the tank vent valve of the motor vehicle can be controlled. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß von dem Rechenteil (2) Tachosignale empfangen und aufgrund dieser Signale Unterbrechungsanforderungen(HSI-Interrupts) ausgelöst werden, die zur Ermittlung der Geschwindigkeit des Kraftfahrzeugs benutzt werden.Engine control according to claim 1, characterized in that the computing part (2) receives tachometer signals and on the basis of these signals trigger interrupt requests (HSI interrupts) which are used to determine the speed of the motor vehicle. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß von dem Rechenteil (2) Unterbrechungsanforderungen ausgewertet werden, die über eine Diagnoseschnittstelle von externen Geräten empfangen werden und durch die eine Kommunikation mit diesen externen Geräten gesteuert wird.Motor control according to claim 1, characterized in that the computing part (2) evaluates interruption requests which are received via a diagnostic interface from external devices and which control communication with these external devices. Motorsteuerung nach Anspruch 1, dadurch gekennzeichnet, daß sie einen Speicherbereich (RAM 16) aufweist, in dem eine erste Ringspeicherliste (20), in der die Anfangsadressen der zu aktivierenden synchronen Arbeitsabläufe gespeichert werden, und eine zweite Ringspeicherliste (23), in der die Anfangsadressen der zu aktivierenden asynchronen Arbeitsabläufe gespeichert werden, enthalten sind.Motor control according to Claim 1, characterized in that it has a memory area (RAM 16) in which a first ring memory list (20) in which the start addresses of the synchronous workflows to be activated are stored and a second ring memory list (23) in which contains the start addresses of the asynchronous workflows to be activated.
EP19930101326 1993-01-28 1993-01-28 Engine control Expired - Lifetime EP0608456B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE59302747T DE59302747D1 (en) 1993-01-28 1993-01-28 Engine control
EP19930101326 EP0608456B1 (en) 1993-01-28 1993-01-28 Engine control

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP19930101326 EP0608456B1 (en) 1993-01-28 1993-01-28 Engine control

Publications (2)

Publication Number Publication Date
EP0608456A1 true EP0608456A1 (en) 1994-08-03
EP0608456B1 EP0608456B1 (en) 1996-05-29

Family

ID=8212564

Family Applications (1)

Application Number Title Priority Date Filing Date
EP19930101326 Expired - Lifetime EP0608456B1 (en) 1993-01-28 1993-01-28 Engine control

Country Status (2)

Country Link
EP (1) EP0608456B1 (en)
DE (1) DE59302747D1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19527541A1 (en) * 1995-07-27 1997-01-30 Siemens Ag Device for generating control signals
WO1999034104A1 (en) * 1997-12-24 1999-07-08 Robert Bosch Gmbh Method for operating an internal combustion engine, especially of an automobile
EP1568873A1 (en) * 2004-02-18 2005-08-31 Toyota Jidosha Kabushiki Kaisha Control apparatus for internal combustion engine
WO2008022926A1 (en) * 2006-08-22 2008-02-28 Robert Bosch Gmbh Device for capturing measured data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4347570A (en) * 1978-12-18 1982-08-31 Nippondenso Co., Ltd. Method and apparatus for controlling ignition coil energization
US4355360A (en) * 1979-04-16 1982-10-19 Nissan Motor Company, Limited Method for program control of components of an automotive vehicle
DE3826526A1 (en) * 1988-08-04 1990-02-08 Bosch Gmbh Robert METHOD AND DEVICE FOR ADJUSTING THE OPERATING SIZE OF AN INTERNAL COMBUSTION ENGINE
US4956781A (en) * 1989-02-15 1990-09-11 Delco Electronics Corporation Counter driven RAM engine control

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4347570A (en) * 1978-12-18 1982-08-31 Nippondenso Co., Ltd. Method and apparatus for controlling ignition coil energization
US4355360A (en) * 1979-04-16 1982-10-19 Nissan Motor Company, Limited Method for program control of components of an automotive vehicle
DE3826526A1 (en) * 1988-08-04 1990-02-08 Bosch Gmbh Robert METHOD AND DEVICE FOR ADJUSTING THE OPERATING SIZE OF AN INTERNAL COMBUSTION ENGINE
US4956781A (en) * 1989-02-15 1990-09-11 Delco Electronics Corporation Counter driven RAM engine control

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN vol. 15, no. 310 (M-1144)8. August 1991 & JP-A-31 14 941 ( MAZDA MOTOR CORP. ) 16. Mai 1991 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19527541A1 (en) * 1995-07-27 1997-01-30 Siemens Ag Device for generating control signals
WO1997005373A1 (en) * 1995-07-27 1997-02-13 Siemens Aktiengesellschaft Process and device for controlling a regulating member
US5951619A (en) * 1995-07-27 1999-09-14 Siemens Aktiengesellschaft Method and device for controlling an actuator
WO1999034104A1 (en) * 1997-12-24 1999-07-08 Robert Bosch Gmbh Method for operating an internal combustion engine, especially of an automobile
US6438485B1 (en) 1997-12-24 2002-08-20 Robert Bosch Gmbh Method for operating an internal combustion engine, especially of an automobile
EP1568873A1 (en) * 2004-02-18 2005-08-31 Toyota Jidosha Kabushiki Kaisha Control apparatus for internal combustion engine
WO2008022926A1 (en) * 2006-08-22 2008-02-28 Robert Bosch Gmbh Device for capturing measured data

Also Published As

Publication number Publication date
DE59302747D1 (en) 1996-07-04
EP0608456B1 (en) 1996-05-29

Similar Documents

Publication Publication Date Title
DE2845354C2 (en)
DE2907390C2 (en)
DE2845350C2 (en)
DE2845356C2 (en)
DE3336028C2 (en)
DE2732781A1 (en) DEVICE FOR CONTROLLING OPERATING PARAMETER-DEPENDENT AND REPEATING ACTIVITIES
DE3609069A1 (en) ELECTRONIC CONTROL SYSTEM FOR INTERNAL COMBUSTION ENGINES
DE2742057A1 (en) DEVICE AND METHOD FOR MEASURING RELATIVE AND PARTIAL WORKING CLEAR SPEED IN THE DIAGNOSIS OF COMBUSTION ENGINES
DE3100825A1 (en) DEVICE FOR CONTROLLING THE IGNITION AND / OR FUEL INJECTION AND / OR GEAR SHIFTING PROCESSES IN INTERNAL COMBUSTION ENGINES
DE3144638C2 (en) Control device for fuel injection into the cylinders of an internal combustion engine
DE3623839A1 (en) SIGNAL TRANSFER PROCEDURE
DE3226353A1 (en) DEVICE FOR CONTROLLING THE ENERGY CONVERSION PROCESS OF AN ENGINE WITH INTERNAL COMBUSTION
DE2551681A1 (en) METHOD AND DEVICE FOR DETERMINING THE DURATION OF INJECTION CONTROL COMMANDS IN AN COMBUSTION ENGINE
DE3033526A1 (en) ELECTRONIC CONTROL METHOD FOR INTERNAL COMBUSTION ENGINES
DE2929797C2 (en) Method and arrangement for controlling the fuel supply, in particular the fuel injection, to an internal combustion engine
DE2809023A1 (en) DIGITAL COMPUTER FOR ELECTRONIC INJECTION
DE3143191C2 (en) Data sampling system for an electronic controller for an internal combustion engine
DE2845355A1 (en) ELECTRONIC COMBUSTION MACHINE CONTROL ARRANGEMENT
DE2845357C2 (en)
EP0608456B1 (en) Engine control
EP1313947B1 (en) Method for operating an internal combustion engine and corresponding arrangement
DE2850534A1 (en) Control microprocessor for ignition and fuel injection in IC engine - depends on count processes performed by input-output unit to reduce number of bits needed
DE3138057C2 (en) Method for controlling the ignition advance in an internal combustion engine
DE19610609B4 (en) Arrangement for controlling cyclically repeating processes in internal combustion engines
DE3321337A1 (en) DEVICE FOR CONTROLLING THE IGNITION OF AN INTERNAL COMBUSTION ENGINE

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 19931216

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB

17Q First examination report despatched

Effective date: 19950123

GRAH Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOS IGRA

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REF Corresponds to:

Ref document number: 59302747

Country of ref document: DE

Date of ref document: 19960704

ET Fr: translation filed
GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)

Effective date: 19960806

PLBI Opposition filed

Free format text: ORIGINAL CODE: 0009260

PLBF Reply of patent proprietor to notice(s) of opposition

Free format text: ORIGINAL CODE: EPIDOS OBSO

26 Opposition filed

Opponent name: ROBERT BOSCH GMBH

Effective date: 19970228

PLBF Reply of patent proprietor to notice(s) of opposition

Free format text: ORIGINAL CODE: EPIDOS OBSO

PLBO Opposition rejected

Free format text: ORIGINAL CODE: EPIDOS REJO

PLBN Opposition rejected

Free format text: ORIGINAL CODE: 0009273

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: OPPOSITION REJECTED

27O Opposition rejected

Effective date: 19980205

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20040113

Year of fee payment: 12

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20050128

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20050128

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20090122

Year of fee payment: 17

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20090115

Year of fee payment: 17

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

Effective date: 20100930

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20100201

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20100803