DE102014202877A1 - Method for modeling a deadtime behavior - Google Patents

Method for modeling a deadtime behavior Download PDF

Info

Publication number
DE102014202877A1
DE102014202877A1 DE102014202877.9A DE102014202877A DE102014202877A1 DE 102014202877 A1 DE102014202877 A1 DE 102014202877A1 DE 102014202877 A DE102014202877 A DE 102014202877A DE 102014202877 A1 DE102014202877 A1 DE 102014202877A1
Authority
DE
Germany
Prior art keywords
mode
pointer
read
write pointer
memory cells
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.)
Pending
Application number
DE102014202877.9A
Other languages
German (de)
Inventor
Sven Grossmann
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102014202877.9A priority Critical patent/DE102014202877A1/en
Priority to CN201510245259.7A priority patent/CN104915543B/en
Publication of DE102014202877A1 publication Critical patent/DE102014202877A1/en
Pending 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
    • 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/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1477Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the regulation circuit or part of it,(e.g. comparator, PI regulator, output)
    • F02D41/1481Using a delaying circuit
    • 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/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2409Addressing techniques specially adapted therefor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41032Backlash

Abstract

Die Erfindung betrifft ein Verfahren zur Modellierung eines Totzeitverhaltens in einer Betriebsart Vorwärtsbetrieb (I) und in einer Betriebsart Rückwärtsbetrieb (II), wobei in dem Vorwärtsbetrieb (I) Speicherzellen (S1, S2, ..., Sm, Sn) eines Speichers (14) mittels eines Schreibzeiger (SZ) nacheinander in einer ersten Reihenfolge (R1) ausgewählt werden, um Werte (W1, W2, Wm, ..., Wn) in die Speicherzellen (S1, S2, ..., Sm, Sn) zu schreiben, und mittels eines Lesezeigers (LZ) ausgewählt werden, um die Werte (W1, W2, Wm, ..., Wn) aus den Speicherzellen (S1, S2, ..., Sm, Sn) zu lesen, wobei in dem Rückwärtsbetrieb (II) die Speicherzellen (S1, S2, ..., Sm, Sn) des Speichers (14) mittels des Schreibzeigers (SZ) nacheinander in einer zweiten Reihenfolge (R2) ausgewählt werden, um Werte (W1, W2, Wm, ..., Wn) in die Speicherzellen (S1, S2, ..., Sm, Sn) zu schreiben, und mittels des Lesezeigers (LZ) ausgewählt werden, um die Werte (W1, W2, Wm, ..., Wn) aus den Speicherzellen (S1, S2, ..., Sm, Sn) zu lesen, wobei der Lesezeiger (LZ) in Abhängigkeit vom Schreibzeiger (SZ) bestimmt wird, wobei zum Wechseln von einer Ausgangsbetriebsart in eine Zielbetriebsart der Schreibzeiger (SZ) der Zielbetriebsart auf den letzten Wert des Lesezeigers der Ausgangsbetriebsart gesetzt wird.The invention relates to a method for modeling a dead time behavior in a forward mode (I) and in a reverse mode (II), wherein in the forward mode (I) memory cells (S1, S2, ..., Sm, Sn) of a memory (14 ) are successively selected in a first order (R1) by means of a write pointer (SZ) to supply values (W1, W2, Wm, ..., Wn) to the memory cells (S1, S2, ..., Sm, Sn) and read by a read pointer (LZ) to read the values (W1, W2, Wm, ..., Wn) from the memory cells (S1, S2, ..., Sm, Sn), in which Reverse mode (II) the memory cells (S1, S2, ..., Sm, Sn) of the memory (14) by means of the write pointer (SZ) successively in a second order (R2) are selected to values (W1, W2, Wm, ..., Wn) in the memory cells (S1, S2, ..., Sm, Sn), and by means of the read pointer (LZ) are selected to the values (W1, W2, Wm, ..., Wn ) from the memory cells (S1, S2, ..., Sm, Sn), wherein the read pointer (LZ) is determined in response to the write pointer (SZ), wherein for changing from an output mode to a destination mode, the write pointer (SZ) of the target mode to the last value of the read pointer Output mode is set.

Description

Die vorliegende Erfindung betrifft ein Verfahren zur Modellierung eines Totzeitverhaltens, ein Steuergerät und ein Computerprogramm.The present invention relates to a method for modeling a deadtime behavior, a control device and a computer program.

Stand der TechnikState of the art

Ein Totzeitverhalten tritt bei dynamischen Systemen sehr häufig auf. Z.B. zeigen bei Verbrennungskraftmaschinen alle Transportsysteme – z.B. Rohrleitungen – ein Totzeitverhalten. Das Totzeitverhalten wird z.B. in einem Steuergerät einer Verbrennungskraftmaschine simuliert, um z.B. Messwerte mittels sogenannter virtueller Sensoren zu erhalten.Deadtime behavior is very common in dynamic systems. For example, in internal combustion engines, all transport systems - e.g. Pipelines - a dead time behavior. The deadtime behavior is e.g. in a control unit of an internal combustion engine is simulated to e.g. To obtain measured values by means of so-called virtual sensors.

Zur Modellierung des Totzeitverhaltens werden Totzeitglieder verwendet. Ein mit einer Abtastrate, d.h. Schreibzugriffe pro Zeiteinheit, eingehender Datenstrom wird in einem reservierten Speicher gespeichert und nach Ablauf einer definierten Zeitdauer wieder ausgegeben. Für die Verwaltung des Speicherzugriffs werden Schreib- und Lesezeiger verwendet. Der Schreibzeiger wird üblicherweise bei jedem Aufruf des Totzeitglieds konstant um ein Inkrement erhöht und beim Erreichen des Endes des Speichers wieder auf Null gesetzt. Zum Bestimmen des Abstands des Lesezeigers zum Schreibzeiger wird die Totzeit durch die Abtastrate geteilt. Wenn sich ein Wert außerhalb des reservierten Speicherbereichs ergibt, wird er mit modulo Speichergröße umgebrochen. Bei jedem Aufruf des Totzeitglieds wird ein neuer Wert an die Position des Schreibzeigers geschrieben und ein Wert von der Position des Lesezeigers gelesen sowie ausgegeben. Die maximal darstellbare Totzeit ist durch die Größe des reservierten Speicherabschnitts begrenzt. Deadtime elements are used to model the deadtime behavior. One at a sample rate, i. Write accesses per unit of time, incoming data stream is stored in a reserved memory and output again after a defined period of time. Read and write pointers are used to manage memory access. The write pointer is usually incremented by one increment each time the idle timer is called, and reset to zero upon reaching the end of the memory. To determine the distance of the read pointer to the write pointer, the dead time is divided by the sample rate. If a value outside of the reserved memory area results, it is wrapped with modulo memory size. Each time the idle timer is called, a new value is written to the position of the write pointer and a value is read from the position of the read pointer and output. The maximum displayable dead time is limited by the size of the reserved memory section.

Da der Schreibzeiger jeweils um 1 erhöht wird und regelmäßig überläuft, wird der reservierte Speicherabschnitt zyklisch beschrieben und es entstehen in den gespeicherten Daten keine Lücken und keine veralteten Daten, auch wenn sich die Totzeit während der Laufzeit ändert. Since the write pointer is incremented by 1 and regularly overflows, the reserved memory section is cyclically described and there are no gaps in the stored data and no stale data, even if the dead time changes during runtime.

So können Totzeiten in einem Vorwärtsbetrieb simuliert werden, jedoch ist eine Modellierung von Totzeiten abwechselnd im Vorwärts- und im Rückwärtsbetrieb, z.B. eines Rohres, das abwechselnd in zwei Richtungen durchströmt wird, damit nicht möglich.Thus, idle times can be simulated in a forward mode, however, a modeling of dead times is alternately in forward and reverse operation, e.g. a tube that is alternately flowed through in two directions, so not possible.

Es besteht daher Bedarf an einem Verfahren zur Modellierung von Totzeiten abwechselnd sowohl in einem Vorwärts- als auch in einem Rückwärtsbetrieb.There is therefore a need for a method of modeling dead times alternately in both forward and reverse modes.

Offenbarung der ErfindungDisclosure of the invention

Vor diesem Hintergrund schlägt die vorliegende Erfindung ein Verfahren zur Modellierung eines Totzeitverhaltens mit den Merkmalen des Patentanspruchs 1 sowie eine Recheneinheit und ein Computerprogramm zu dessen Durchführung vor.Against this background, the present invention proposes a method for modeling a deadtime behavior with the features of patent claim 1 and a computing unit and a computer program for its implementation.

Vorteile der ErfindungAdvantages of the invention

Die Erfindung schlägt ein Verfahren zur Modellierung eines Totzeitverhaltens, das in einem Betriebsmodus Vorwärtsbetrieb und in einem Betriebsmodus Rückwärtsbetrieb durchführbar ist, vor. Dabei werden in dem Vorwärtsbetrieb Speicherzellen eines Speichers mittels eines Schreibzeigers nacheinander in einer ersten Reihenfolge ausgewählt, um Werte in die Speicherzellen zu schreiben, und mittels eines Lesezeigers werden Speicherzellen ausgewählt, aus denen Werte ausgelesen werden. Ebenso werden in dem Rückwärtsbetrieb Speicherzellen des Speichers mit dem Schreibzeiger nacheinander in einer zweiten Reihenfolge ausgewählt, um Werte in die Speicherzellen zu schreiben, und mittels des Lesezeigers werden Speicherzellen ausgewählt, aus denen Werte ausgelesen werden. Der Lesezeiger wird in beiden Betriebsarten in Abhängigkeit vom Schreibzeiger bestimmt.The invention proposes a method for modeling a dead-time behavior, which can be carried out in a forward operating mode and in a reverse operating mode. In this case, in the forward operation, memory cells of a memory are successively selected in a first order by means of a write pointer to write values to the memory cells, and memory cells are selected by means of a read pointer from which values are read out. Also, in the reverse operation, memory cells of the memory with the write pointer are successively selected in a second order to write values to the memory cells, and memory cells are selected by means of the read pointer from which values are read out. The read pointer is determined in both modes depending on the write pointer.

Ein wesentlicher Aspekt der vorliegenden Erfindung besteht darin, dass zum Wechseln zwischen den Betriebsarten der Schreibzeiger der Zielbetriebsart auf den letzten Wert des Lesezeigers der Ausgangsbetriebsart gesetzt wird. Der Lesezeiger der Zielbetriebsart wird grundsätzlich wiederum in Abhängigkeit vom Schreibzeiger der Zielbetriebsart bestimmt.An essential aspect of the present invention is that, for switching between the modes, the write pointer of the target mode is set to the last value of the read pointer of the output mode. The read pointer of the target mode is in turn determined in turn depending on the write pointer of the target mode.

Hierdurch wird erreicht, dass ein Totzeitverhalten abwechselnd sowohl in einem Vorwärtsbetrieb als auch in einem Rückwärtsbetrieb simuliert werden kann. Somit kann z.B. das Totzeitverhalten eines Rohres, das abwechselnd in zwei Richtungen durchströmt wird, simuliert werden.This ensures that a deadtime behavior can be simulated alternately both in a forward operation as well as in a reverse operation. Thus, e.g. the deadtime behavior of a tube, which is alternately flowed through in two directions, can be simulated.

Eine Implementierung des Verfahrens in Form einer Logikschaltung oder eines Computerprogramms ist besonders vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn die ausführende Recheneinheit noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Geeignete Datenträger zur Bereitstellung des Computerprogramms sind insbesondere Festplatten, Flash-Speicher, EEPROMs, CD-ROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein implementiertes Verfahren kann auch als Totzeitglied (z.B. als Schaltungsteil oder – baustein oder als Computerprogrammblock) bezeichnet werden. An implementation of the method in the form of a logic circuit or a computer program is particularly advantageous, since this causes particularly low costs, in particular if the executing arithmetic unit is still used for further tasks and therefore already exists. Suitable data carriers for providing the computer program are in particular hard disks, flash memories, EEPROMs, CD-ROMs, DVDs and the like. It is also possible to download a program via computer networks (Internet, intranet, etc.). An implemented method may also be referred to as a deadtime member (e.g., a circuit part or block or a computer program block).

Gemäß einer bevorzugten Ausführungsform wird ein Totzeitverhalten im Vorwärtsbetrieb bei einem positiven Totzeitwert und ein Totzeitverhalten im Rückwärtsbetrieb bei einem negativen Totzeitwert simuliert. Der Totzeitwert charakterisiert den Abstand zwischen Schreibzeiger und Lesezeiger und wird üblicherweise von extern vorgegeben. Ein Umschalten von dem Vorwärtsbetrieb in den Rückwärtsbetrieb oder umgekehrt wird dementsprechend bei einem Vorzeichenwechsel des Totzeitwerts durchgeführt. According to a preferred embodiment, a deadtime response in forward mode at a positive dead time value and a deadtime response in reverse mode at a negative dead time value is simulated. The deadtime value characterizes the distance between the write pointer and the read pointer and is usually specified externally. Switching from the forward mode to the reverse mode or vice versa is accordingly performed upon a sign change of the dead time value.

Gemäß einer weiteren Ausführungsform erfolgt ein Betrieb im Vorwärtsbetrieb, wenn der Totzeitwert Null ist. Hierdurch wird erreicht, dass ein Wechsel von dem Vorwärts- in den Rückwärtsbetrieb nur dann erfolgt, wenn sich tatsächlich das Vorzeichen des Totzeitwerts ändert. Wenn die Totzeit Null ist, also kein Totzeitverhalten vorliegt, wird der Vorwärtsbetrieb beibehalten. In another embodiment, operation is in forward mode when the dead time value is zero. This ensures that a change from the forward to the reverse operation only takes place when the sign of the dead time value actually changes. If the dead time is zero, so there is no deadtime, the forward mode is maintained.

Gemäß einer weiteren Ausführungsform wird zum Bestimmen des Lesezeigers in Abhängigkeit von dem Schreibzeiger ein Quotient aus dem Totzeitwert und einer Abtastrate gebildet. Hierdurch wird erreicht, dass der Lesezeiger eine Laufweite aufweist, die mit der Totzeit des Totgliedes korrespondiert. Dabei legt der Quotient aus dem Totzeitwert und der Abtastrate einen Abstand zwischen dem Lesezeiger und dem Schreibzeiger fest. Die Abtastrate entspricht der Rate, mit der das Totzeitglied aufgerufen wird, und kann extern vorgegeben oder z.B. gemessen werden. According to a further embodiment, a quotient of the dead time value and a sampling rate is formed for determining the read pointer as a function of the write pointer. This ensures that the read pointer has a running distance that corresponds to the dead time of the dead member. The quotient of the dead time value and the sampling rate defines a distance between the read pointer and the write pointer. The sample rate corresponds to the rate at which the idle timer is called and may be externally preset or e.g. be measured.

Gemäß einer weiteren Ausführungsform wird bei einem Wechsel von dem Vorwärtsbetrieb in den Rückwärtsbetrieb oder umgekehrt der Abstand zwischen dem Lesezeiger und dem Schreibzeiger nach dem Wechsel des Betriebsmodus auf einen Wert festgelegt, den der Wert vor dem Wechsel des Betriebsmodus hatte. Hierdurch wird erreicht, dass zwischenzeitliche Änderungen der Totzeit keine Ausgabe fehlerhafter Werte hervorrufen können. Vorzugsweise wird der Lesezeiger anschließend schrittweise auf den durch die Abhängigkeit vom Schreibzeiger gegebenen Wert gesetzt, beispielsweise kann der Abstand bei jedem Aufruf um ein Inkrement erhöht werden.According to a further embodiment, in the case of a change from the forward operation to the reverse operation or vice versa, the distance between the read pointer and the write pointer after the change of the operating mode is set to a value which the value had before the change of the operating mode. This ensures that interim changes of the dead time can not cause the output of erroneous values. Preferably, the read pointer is then set stepwise to the value given by the dependency on the write pointer, for example, the distance can be incremented by one increment on each call.

Eine erfindungsgemäße Recheneinheit, z.B. ein Steuergerät eines Kraftfahrzeugs, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen. Es kann sich dabei um ein Steuergerät mit einer Einrichtung zur Modellierung eines Totzeitgliedes in einem Vorwärtsbetrieb und/oder einem Rückwärtsbetrieb, mit einem Speicher mit einer Mehrzahl von Speicherzellen, die mittels eines Schreibzeiger mit Werten beschrieben und mittels eines Lesezeigers ausgelesen werden können, handeln. Das Steuergerät weist ferner eine Schreibzeigermodifikationseinheit zum Verändern des Schreibzeigers und eine Lesezeigermodifikationseinheit zum Verändern des Lesezeigers auf. An arithmetic unit according to the invention, e.g. a control device of a motor vehicle is, in particular programmatically, configured to perform a method according to the invention. It can be a control device with a device for modeling a dead-time element in a forward mode and / or a reverse mode, with a memory having a plurality of memory cells, which can be read by means of a write pointer with values and read by means of a read pointer. The controller further includes a write pointer modification unit for changing the write pointer and a read pointer modification unit for changing the read pointer.

Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawings.

Es versteht sich, dass die vorstehend genannten und die nachfolgend noch zu erläuternden Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen. It is understood that the features mentioned above and those yet to be explained below can be used not only in the particular combination indicated, but also in other combinations or in isolation, without departing from the scope of the present invention.

Die Erfindung ist anhand eines Ausführungsbeispiels in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung ausführlich beschrieben.The invention is illustrated schematically with reference to an embodiment in the drawing and will be described in detail below with reference to the drawing.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

1 zeigt ein Luft- und Abgassystem einer Verbrennungskraftmaschine eines PKW in schematischer Darstellung, 1 shows an air and exhaust system of an internal combustion engine of a car in a schematic representation,

2 zeigt ein Steuergerät zur Durchführung eines erfindungsgemäßen Verfahrens in schematischer Darstellung, 2 shows a control device for carrying out a method according to the invention in a schematic representation,

3 einen ersten Verfahrensabschnitt des Verfahrens in schematischer Darstellung, und 3 a first method section of the method in a schematic representation, and

4 einen zweiten Verfahrensabschnitt in schematischer Darstellung des Verfahrens. 4 a second process section in a schematic representation of the method.

Ausführungsform(en) der ErfindungEmbodiment (s) of the invention

In 1 ist ein Abschnitt eines Luft- und Abgassystems 2 dargestellt, z.B. einer Verbrennungskraftmaschine eines PKWs. In 1 is a section of an air and exhaust system 2 shown, for example, an internal combustion engine of a car.

Das Luft- und Abgassystem 2 weist einen ersten Rohrabschnitt 4 und einen zweiten Rohrabschnitt 6 auf, die sich im vorliegenden Ausführungsbeispiel parallel zueinander erstrecken. Den ersten Rohrabschnitt 4 und den zweiten Rohrabschnitt 6 verbindet ein Verbindungsrohr 8. Im vorliegenden Ausführungsbeispiel kann das Verbindungsrohr 8 sowohl in einem Vorwärtsbetrieb I als auch in einem Rückwärtsbetrieb II von Gasen durchströmt werden. Somit zeigt das Verbindungsrohr 8 ein Totzeitverhalten, das im vorliegenden Ausführungsbeispiel abwechselnd in einem Vorwärtsbetrieb I und in einem Rückwärtsbetrieb II modelliert werden muss. The air and exhaust system 2 has a first pipe section 4 and a second pipe section 6 on, which extend parallel to each other in the present embodiment. The first pipe section 4 and the second pipe section 6 connects a connecting pipe 8th , In the present embodiment, the connecting pipe 8th be traversed in both a forward operation I and in a reverse operation II of gases. Thus shows the connecting pipe 8th a deadtime behavior, which must be modeled alternately in a forward operation I and in a reverse operation II in the present embodiment.

Das Totzeitverhalten wird sowohl im Vorwärtsbetrieb I als auch im Rückwärtsbetrieb II simuliert, z.B. für ein Lambda-Modell einer Regelung einer Verbrennungskraftmaschine eines PKW. Das Lambda-Modell modelliert die Verteilung verschiedener Stoffkonzentrationen, wie z.B. Sauerstoff und Kraftstoff innerhalb des Luft- und Abgassystems 2. Dabei werden von dem Lambda-Modell Mischung, Speicherung, Transport von Gas sowie chemische Reaktionen modelliert. Durch dieses Modell stehen Informationen über die aktuelle Konzentration dieser Stoffe an verschiedenen Positionen des Luft- und Abgassystems 2 zur Verfügung, und es kann ein Verbrennungsluftverhältnis (Lambda) für die Positionen berechnet werden. Dieses Modell kann auf andere Stoffe, wie z.B. Wasser, angewendet werden.The dead time behavior is simulated both in forward operation I and in reverse operation II, for example for a lambda model of a regulation of an internal combustion engine of a passenger car. The lambda model models the distribution different substance concentrations, such as oxygen and fuel within the air and exhaust system 2 , The lambda model models the mixture, storage, transport of gas and chemical reactions. This model provides information about the current concentration of these substances at different positions of the air and exhaust systems 2 are available, and a combustion air ratio (lambda) for the positions can be calculated. This model can be applied to other substances, such as water.

Transportvorgänge werden dabei mit einem oder mehreren Totzeitgliedern 10 modelliert. Z.B. sind das Frisch- und Abgassystem 2 über einen Verbrennungsmotor, Hochdruck-AGR (Abgasrückführung) und Niederdruck-AGR mediumführend verbunden. Normalerweise strömt Gas an jeder Stelle immer nur in eine Richtung. In einer Hochdruck-AGR-Leitung, wie z.B. dem Verbindungsrohr 8, kann es aber auch rückwärts strömen. Eine Richtungsumkehr kann zu beliebigen Zeitpunkten auftreten, auch wenn das Gas seit der letzten Richtungsumkehr nicht vollständig ausgetauscht ist. Um das Modell dynamisch exakt zu halten und zu gewährleisten, dass sich jede Konzentrationsänderung zum richtigen Zeitpunkt an der richtigen Position befindet, wird die Konzentration entlang der Gassäule, z.B. innerhalb des Verbindungsrohrs 8, "in Scheiben" modelliert. Damit die Reihenfolge dieser Scheiben erhalten bleibt, ist eine korrekte Modellierung von Totzeiten, gerade auch von reversiblen Totzeiten, erforderlich.Transport operations are doing with one or more deadtime members 10 modeled. For example, the fresh and exhaust system 2 via an internal combustion engine, high pressure EGR (exhaust gas recirculation) and low pressure EGR medium leading connected. Normally, gas always flows in only one direction at any point. In a high-pressure EGR line, such as the connecting pipe 8th but it can also flow backwards. A reversal of direction can occur at any time, even if the gas has not been completely replaced since the last reversal of direction. In order to keep the model dynamically accurate and to ensure that any change in concentration is in the correct position at the right time, the concentration will be along the gas column, eg inside the connection tube 8th , "sliced" model. To maintain the order of these slices, a correct modeling of dead times, especially of reversible dead times, is required.

In 2 ist ein Steuergerät 12 dargestellt, dass zur Modellierung von Totzeiten in dem Vorwärtsbetrieb I und in dem Rückwärtsbetrieb II ausgebildet bzw. eingerichtet ist. Es weist dazu ein als Totzeitglied 10 implementiertes Verfahren gemäß einer bevorzugten Ausführungsform der Erfindung auf. Das Verfahren ist insbesondere als aufrufbare Funktion computerimplementiert.In 2 is a control unit 12 illustrated that is configured for modeling dead times in the forward mode I and in the reverse mode II. It has as a deadtime member 10 implemented method according to a preferred embodiment of the invention. The method is in particular computer-implemented as a callable function.

Im vorliegenden Ausführungsbeispiel weist das Totzeitglied 10 einen Speicher 14, eine Schreibzeigermodifikationseinheit 16 und eine Lesezeigermodifikationseinheit 18 auf. Der Speicher 14 und/oder die Schreibzeigermodifikationseinheit 16 und/oder die Lesezeigermodifikationseinheit 18 können Hardware- und/oder Softwarekomponenten aufweisen.In the present embodiment, the deadtime element 10 a memory 14 , a write pointer modification unit 16 and a read pointer modification unit 18 on. The memory 14 and / or the write pointer modification unit 16 and / or the read pointer modification unit 18 may include hardware and / or software components.

Der Speicher 14 kann ein reservierter Abschnitt eines Speichers des Steuergeräts 12 sein. Im vorliegenden Ausführungsbeispiel weist der Speicher 14 eine Mehrzahl von Speicherzellen S1, S2, ..., Sm, Sn auf, in die je ein Wert W1, W2, ..., Wm, Wn eingeschrieben und daraus ausgelesen werden kann. Im vorliegenden Ausführungsbeispiel können die Speicherzellen S1, S2, ..., Sm, Sn mittels Pointer bzw. Zeiger adressiert werden. Somit können im vorliegenden Ausführungsbeispiel die Werte W1, W2, ..., Wm, Wn der jeweiligen Speicherzellen S1, S2, ..., Sm, Sn mittels eines Pointers Lesezeiger LZ ausgelesen werden. Ferner können im vorliegenden Ausführungsbeispiel die Werte W1, W2, ..., Wm, Wn in die jeweiligen Speicherzellen S1, S2, ..., Sm, Sn mittels eines Pointers Schreibzeiger SZ eingeschrieben werden.The memory 14 may be a reserved portion of a memory of the controller 12 be. In the present embodiment, the memory 14 a plurality of memory cells S1, S2, ..., Sm, Sn, in each of which a value W1, W2, ..., Wm, Wn can be written and read out therefrom. In the present exemplary embodiment, the memory cells S1, S2,..., Sm, Sn can be addressed by means of pointers. Thus, in the present exemplary embodiment, the values W1, W2,..., Wm, Wn of the respective memory cells S1, S2,..., Sm, Sn can be read out by means of a pointer read pointer LZ. Furthermore, in the present exemplary embodiment, the values W1, W2,..., Wm, Wn can be written into the respective memory cells S1, S2,..., Sm, Sn by means of a pointer write pointer SZ.

Um eine Modellierung eines Totzeitverhaltens sowohl in dem Betriebsmodus Vorwärtsbetrieb I als auch in dem Betriebsmodus Rückwärtsbetrieb II zu ermöglichen, weist das Totzeitglied 10 eine Schreibzeigermodifikationseinheit 16 und eine Lesezeigermodifikationseinheit 18 auf. In order to enable a modeling of a dead time behavior in both the forward mode I operation mode and in the reverse mode II operation mode, the deadtime element has 10 a write pointer modification unit 16 and a read pointer modification unit 18 on.

Die Schreibzeigermodifikationseinheit 16 ist, wie später erläutert wird, zum Verändern des Schreibzeigers SZ, und die Lesezeigermodifikationseinheit 18 ist, wie ebenfalls später erleutert wird, zum Verändern des Lesezeigers LZ ausgebildet. The write pointer modification unit 16 is, as will be explained later, for changing the write pointer SZ, and the read pointer modification unit 18 is, as will also be taught later, designed to change the read pointer LZ.

Es wird zusätzlich auf die 3 und 4 Bezug genommen. Dabei zeigt die 3 die Modellierung einer Totzeit in dem Vorwärtsbetrieb I, während die 4 die Modellierung einer Totzeit in dem Rückwärtsbetrieb II zeigt. Dabei können einzelne Schritte oder auch Gruppen von Schritten in einer von dem vorliegenden Ausführungsbeispiel abweichenden Reihenfolge durchgeführt werden. Auch laufen üblicherweise mehrere der beschriebenen Schritte gleichzeitig oder nacheinander pro Aufruf der Funktion ab. Weiterhin laufen im Zusammenhang mit dem Schreibzugriff beschriebene Schritte und im Zusammenhang mit dem Lesezugriff beschriebenen schritte in einem Funktionsaufruf ab. Vor Beginn des Regelbetriebs werden die Speicherzellen zweckmäßigerweise mit für den konkreten Anwendungsfall plausiblen Werten W beschrieben, so dass von Anfang an plausible Werte ausgelesen werden können. Die plausiblen Werte können beispielsweise abgespeicherte Werte aus einem früheren Regelbetrieb oder Default-Werte sein.It will be added to the 3 and 4 Referenced. It shows the 3 the modeling of a dead time in the forward mode I, while the 4 the modeling of a dead time in the reverse mode II shows. In this case, individual steps or even groups of steps can be carried out in a different order from the present embodiment. Also, typically several of the described steps occur simultaneously or sequentially per call of the function. Furthermore, steps described in connection with the write access and steps described in connection with the read access take place in a function call. Before the start of the control operation, the memory cells are expediently described with values W that are plausible for the specific application, so that plausible values can be read from the beginning. The plausible values can be, for example, stored values from a previous control mode or default values.

Zu Beginn des Verfahrens wird ein Totzeitwert von dem Totzeitglied 10 eingelesen. Der Totzeitwert wird zweckmäßigerweise extern anhand des zu simulierenden physikalischen Modells vorgegeben. Aus dem Totzeitwert und einer Abtastrate bzw. Aufrufrate (siehe oben) kann der Abstand zwischen Lesezeiger und Schreibzeiger berechnet werden.At the beginning of the process, a dead time value of the deadtime member 10 read. The dead time value is expediently specified externally on the basis of the physical model to be simulated. From the dead time value and a sampling rate or call rate (see above), the distance between read pointer and write pointer can be calculated.

In einem weiteren Schritt wird geprüft, ob der Totzeitwert positiv oder negativ ist, und ein entsprechendes Prüfergebnis erzeugt. Wenn das Prüfergebnis anzeigt, dass der Totzeitwert positiv ist, erfolgt ein Betrieb im Vorwärtsbetrieb I. Wenn hingegen das Prüfergebnis anzeigt, dass der Totzeitwert negativ ist, erfolgt ein Betrieb im Rückwärtsbetrieb II. Wenn das Prüfergebnis anzeigt, dass der Totzeitwert Null ist, erfolgt ein Betrieb im Vorwärtsbetrieb I.In a further step, it is checked whether the dead time value is positive or negative, and generates a corresponding test result. If the test result indicates that the dead time value is positive, operation is in forward mode I. On the other hand, if the test result indicates that the dead time value is negative, the operation is in reverse mode II. If the test result indicates that the dead time value is zero, a Operation in forward operation I.

In einem weiteren Schritt wird die erste Speicherzelle S1 des Speichers 14 mit dem Schreibzeiger SZ ausgewählt (in Strichlinie dargestellt). Dann wird in einem weiteren Schritt der erste Wert W1 in die erste Speicherzelle S1 geschrieben. In einem weiteren Schritt wird der Schreibzeiger SZ um 1 erhöht, und zeigt nun auf die zweite Speicherzelle S2 (in Strichlinie dargestellt). Zweckmäßigerweise laufen die bisher erläuterten Schritte zusammen mit einem unten noch näher erläuterten Lesevorgang gleichzeitig oder nacheinander bei einem Aufruf der Funktion ab. In a further step, the first memory cell S1 of the memory 14 selected with the write pointer SZ (shown in dashed line). Then, in a further step, the first value W1 is written in the first memory cell S1. In a further step, the write pointer SZ is increased by 1, and now points to the second memory cell S2 (shown in dashed lines). Expediently, the steps explained so far, together with a reading process explained in greater detail below, run simultaneously or successively when the function is called.

Bei einem weiteren Funktionsaufruf wird der zweite Wert W2 in die zweite Speicherzelle S2 geschrieben.In a further function call, the second value W2 is written in the second memory cell S2.

Somit werden in dem Vorwärtsbetrieb I die Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 mit dem Schreibzeiger SZ nacheinander durch Funktionsaufrufe in einer ersten Reihenfolge R1 ausgewählt und dann die Werte W1, W2, ..., Wm, Wn in der Reihenfolge ihres Auftretens in die Speicherzellen S1, S2, ..., Sm, Sn geschrieben. Die erste Reihenfolge R1 kann einer reihenförmigen Anordnung der Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 entsprechen. Hiervon abweichend kann die erste Reihenfolge R1 in Abhängigkeit von der Verfügbarkeit freier Speicherzellen einen beliebigen Verlauf aufweisen. Wenn durch das Erhöhen des Schreibzeigers SZ um 1 das Ende des Speicher 14, im vorliegenden Ausführungsbeispiel die Speicherzelle Sn, überschritten ist, wird der Schreibzeiger SZ wieder auf den ersten Zählwert (hier 1, ebenso ist auch 0 möglich) gesetzt. Thus, in the forward mode I, the memory cells S1, S2, ..., Sm, Sn of the memory become 14 with the write pointer SZ successively selected by function calls in a first order R1 and then written the values W1, W2, ..., Wm, Wn in the order of their occurrence in the memory cells S1, S2, ..., Sm, Sn. The first order R1 can be a row-shaped arrangement of the memory cells S1, S2,..., Sm, Sn of the memory 14 correspond. Deviating from this, the first order R1 can have an arbitrary course as a function of the availability of free memory cells. If by increasing the write pointer SZ by 1 the end of the memory 14 , In the present embodiment, the memory cell Sn, is exceeded, the write pointer SZ is again set to the first count (here 1, as well as 0 is possible).

Parallel wird bei jedem Funktionsaufruf der Lesezeiger LZ in Abhängigkeit von dem Schreibzeiger SZ bestimmt. Hierzu wird ein Quotient aus dem Totzeitwert und der Abtastrate gebildet, mit der das Steuergerät 12 arbeitet. Wenn sich ein Wert ergibt, der eine Speicherzelle außerhalb des Speichers 14 adressiert, wird er mit der Funktion modulo Speichergröße des Speichers 14 umgebrochen. Dabei legt der Quotient aus dem Totzeitwert und der Abtastrate den Abstand AB zwischen dem Lesezeiger LZ und dem Schreibzeiger SZ fest. Somit wird die Position des Lesezeigers LZ in dem Speicher 14 in einem weiteren Schritt durch Subtraktion des ermittelten Abstands AB von der Position des Schreibzeigers SZ bestimmt. Wenn in 2 der Schreibzeiger die Speicherzelle Sn adressiert, zeigt der Lesezeiger LZ auf die Speicherzelle S1. In einem weiteren Schritt wird nun mit dem ermittelten Lesezeiger LZ die Speicherzelle S1 des Speichers 14 ausgewählt. In einem weiteren Schritt wird der weitere Wert W1 aus der Speicherzelle S1 ausgelesen. In einem weiteren Schritt wird der Lesezeiger LZ aktualisiert. Bei einem erneuten Funktionsaufruf wird der weitere Wert W2 aus der Speicherzelle S2 ausgelesen, auf die der Lesezeiger LZ nun zeigt. In parallel, the read pointer LZ is determined as a function of the write pointer SZ during each function call. For this purpose, a quotient of the dead time value and the sampling rate is formed, with which the control unit 12 is working. If a value results, the memory cell is out of memory 14 addressed, he is using the function modulo memory size of the memory 14 wrapped. In this case, the quotient of the dead time value and the sampling rate determines the distance AB between the read pointer LZ and the write pointer SZ. Thus, the position of the read pointer LZ in the memory becomes 14 determined in a further step by subtracting the determined distance AB from the position of the write pointer SZ. When in 2 the write pointer addresses the memory cell Sn, the read pointer LZ points to the memory cell S1. In a further step, the memory cell S1 of the memory is now used with the determined read pointer LZ 14 selected. In a further step, the further value W1 is read out of the memory cell S1. In a further step, the read pointer LZ is updated. In another function call, the further value W2 is read out of the memory cell S2, to which the read pointer LZ now points.

Bei jedem Aufruf des Totzeitgliedes 10 wird somit ein neuer Wert eingespeichert und ein gespeicherter Wert ausgelesen.Every time the deadtime element is called 10 Thus, a new value is stored and read out a stored value.

Wenn nun eine Überprüfung des Totzeitwertes TZW ergibt, dass z.B. nun ein negativer Totzeitwert vorliegt, wird ein Wechsel von dem Vorwärtsbetrieb I in den Rückwärtsbetrieb II durchgeführt. Dazu wird der Schreibzeiger SZ für den Rückwärtsbetrieb II auf den letzten Wert des Lesezeigers LZ im Vorwärtsbetrieb I gesetzt. Der Lesezeiger LZ für den Rückwärtsbetrieb II wird grundsätzlich, wie oben bereits erläutert, in Abhängigkeit vom Schreibzeiger SZ für den Rückwärtsbetrieb II bestimmt. Ändert sich der Betrag des Totzeitwerts beim Umschalten nicht, entspricht der Lesezeiger LZ für den Rückwärtsbetrieb II dann dem vorherigen Schreibzeiger SZ für den Vorwärtsbetrieb I.Now if a check of the dead time value TZW shows that e.g. Now there is a negative dead time value, a change from the forward operation I in the reverse operation II is performed. For this purpose, the write pointer SZ for the reverse operation II is set to the last value of the read pointer LZ in forward operation I. The read pointer LZ for the reverse operation II is basically, as already explained above, determined in dependence on the write pointer SZ for the reverse operation II. If the amount of the dead time value does not change during the changeover, the read pointer LZ for the reverse operation II then corresponds to the previous write pointer SZ for the forward operation I.

Im Rückwärtsbetrieb II werden die Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 mit dem Schreibzeiger SZ nacheinander in einer zweiten Reihenfolge R2 ausgewählt, die umgekehrt zur ersten Reihenfolge R1 ist. In reverse mode II, the memory cells S1, S2, ..., Sm, Sn of the memory 14 with the write pointer SZ successively selected in a second order R2, which is reverse to the first order R1.

Es kann jedoch nach einem Wechsel von z.B. dem Vorwärtsbetrieb I in den Rückwärtsbetrieb II der Fall auftreten, dass der Betrag des Totzeitwerts größer ist als vorher. Dann würde der Lesezeiger LZ unter Umständen Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 adressieren, die gerade noch nicht beschrieben wurden. Die Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 enthalten dann Werte vom letzten Schreibzyklus, die z.B. eine maximale Totzeit alt sind, den die Größe des Speichers 14 festlegt. Ferner kann der Fall auftreten, dass die Strömung im Verbindungsrohr 8 um Null schwankt, und daher häufig ein Wechseln des Betriebsmodus erfolgt. Dann schwingen auch der Lesezeigen LZ und der Schreibzeiger SZ und laufen nicht regelmäßig über. Dann können die Werte beliebig alt sein. However, after a change from, for example, the forward operation I to the reverse operation II, it may happen that the amount of the dead time value is larger than before. Then the read pointer LZ would possibly memory cells S1, S2, ..., Sm, Sn of the memory 14 address that have not been described yet. The memory cells S1, S2, ..., Sm, Sn of the memory 14 then contain values from the last write cycle that are, for example, a maximum dead time old, the size of the memory 14 sets. Further, the case may occur that the flow in the connecting pipe 8th fluctuates around zero, and therefore often a change of the operating mode takes place. Then also the read pointer LZ and the write pointer SZ swing and do not run over regularly. Then the values can be any age.

Um dieses Problem zu beheben ist vorzugsweise vorgesehen, auch bei einer Änderung des Betrags des Totzeitwerts beim Umschalten den Abstand AB zunächst auf den vorherigen Wert zu begrenzen. Demnach wird zu Beginn des Rückwärtsbetriebs II der maximale Wert des Abstands AB nach dem Wechsel des Betriebsmodus als Begrenzungswert auf einen Wert festgelegt, auf den der Abstand AB vor dem Wechsel des Betriebsmodus festgelegt war. Der neue Abstand AB wird dann auf das Minimum aus dem Begrenzungswert und dem eigentlichen Wert, der sich als Quotient aus dem Totzeitwert und der Abtastrate ergibt, gesetzt.To remedy this problem, it is preferably provided to initially limit the distance AB to the previous value even if the amount of the dead time value changes during the changeover. Thus, at the beginning of the reverse operation II, the maximum value of the distance AB after the change of the operation mode is set as the limit value to a value to which the distance AB was set before the change of the operation mode. The new distance AB is then set to the minimum of the limit value and the actual value, which results as the quotient of the dead time value and the sampling rate.

Im weiteren Verfahrensablauf wird der Begrenzungswert dann schrittweise auf die gesamte reservierte Speichergröße erhöht. Der Begrenzungswert kann beispielsweise bei jedem Aufruf des Totzeitglieds 10 um 1 erhöht werden, bis er die Speichergröße erreicht und damit unbegrenzt ist.In the further procedure, the limit value is then incrementally increased to the total reserved memory size. The limit value may be, for example, every time the deadtime element is called 10 increased by 1 until it reaches the memory size and is thus unlimited.

Im Rückwärtsbetrieb II wird zunächst ein Wert in die Speicherzelle S1 geschrieben, auf die der Schreibzeiger SZ zeigt. In einem weiteren Schritt wird der Schreibzeiger SZ aktualisiert, indem er im vorliegenden Ausführungsbeispiel um 1 erniedrigt wird. Im vorliegenden Ausführungsbeispiel springt der Schreibzeiger dann auf die Speicherzelle Sn (in Strichlinie dargestellt). Somit werden in dem Rückwärtsbetrieb II die Speicherzellen S1, S2, ..., Sm, Sn des Speichers 14 mit dem Schreibzeiger SZ nacheinander in der zweiten Reihenfolge R2 ausgewählt und mit weiteren Werten beschrieben, die dann nacheinander ausgelesen werden.In reverse mode II, a value is first written into the memory cell S1, to which the write pointer SZ points. In a further step, the write pointer SZ is updated by being decremented by 1 in the present exemplary embodiment. In the present embodiment, the write pointer then jumps to the memory cell Sn (shown in dashed line). Thus, in the reverse mode II, the memory cells S1, S2, ..., Sm, Sn of the memory become 14 with the write pointer SZ successively selected in the second order R2 and described with further values, which are then read out sequentially.

Ferner kann bei einer Zunahme des Totzeitwertes ohne Betriebsartenwechsel der Fall auftreten, dass in der Folge der Lesezeiger LZ weiterhin die gleiche Speicherzelle S1, S2, ..., Sm, Sn adressiert oder gar Speicherzellen S1, S2, ..., Sm, Sn adressiert, die entgegen der Fortschrittsrichtung liegen, mit der die Speicherzellen S1, S2, Sm, Sn ausgelesen werden. Um dies zu verhindern, können Veränderungen in der Position des Lesezeigers LZ entgegen der Fortschrittsrichtung verhindert werden. So kann erreicht werden, dass die ausgegebenen Werte W1, W2, ... Wm, Wn immer in ihrer Reihenfolge der Eingabe ausgegeben werden. Furthermore, with an increase in the dead time value without a mode change, it may occur that the read pointer LZ continues to address the same memory cell S1, S2,..., Sm, Sn or even memory cells S1, S2,..., Sm, Sn addressed, which are opposite to the direction of progress, with which the memory cells S1, S2, Sm, Sn are read. To prevent this, changes in the position of the read pointer LZ against the direction of progress can be prevented. Thus it can be achieved that the output values W1, W2,... Wm, Wn are always output in their order of input.

Das bisher beschriebene Verfahren stellt eine besonders bevorzugte Ausführungsform der Erfindung dar, die wie nachfolgend erläutert modifiziert werden kann.The method described so far represents a particularly preferred embodiment of the invention, which can be modified as explained below.

Abweichend von dem oben beschrieben Verfahrensablauf kann z.B. ein Lesezugriff auf die Speicherzellen S1, S2, ..., Sm, Sn vor einem Schreibzugriff erfolgen. Dann wird bei einem maximalen Totzeitwert, den die Größe des Speichers 14 festlegt, die entsprechende Speicherzelle S1, S2, ..., Sm, Sn direkt nach dem Auslesen wieder überschrieben. Für den Sonderfall einer Totzeit Null ist eine gesonderte Routine, z.B. eine Softwareroutine, vorgesehen, die diesem Fall behandelt. Notwithstanding the procedure described above, for example, a read access to the memory cells S1, S2, ..., Sm, Sn before a write access. Then, at a maximum dead time value, that is the size of the memory 14 determines, the corresponding memory cell S1, S2, ..., Sm, Sn overwritten directly after reading again. For the special case of zero dead time, a separate routine, eg a software routine, is provided, which deals with this case.

Ferner können abweichend von dem oben beschrieben Verfahrensablauf z.B. der Lesezeiger LZ und/oder der Schreibzeiger SZ nicht ganzzahlig berechnet werden. Ein Index des Lesezeigers LZ und/oder des Schreibzeigers SZ ist dann beim Zugriff auf die Speicherzellen S1, S2, ..., Sm, Sn zu runden. Dann ist hier der maximale Totzeitwert nicht mehr direkt von der Größe des Speichers 14 begrenzt. Für den Sonderfall nicht ganzzahlig berechneter Lesezeiger LZ und/oder Schreibzeiger SZ ist eine gesonderte Routine, z.B. eine Softwareroutine, vorgesehen, die diesem Fall behandelt und so Datenverluste verhindert.Furthermore, notwithstanding the procedure described above, for example, the read pointer LZ and / or the write pointer SZ can not be calculated as an integer. An index of the read pointer LZ and / or the write pointer SZ is then to round when accessing the memory cells S1, S2, ..., Sm, Sn. Then here the maximum dead time value is no longer directly dependent on the size of the memory 14 limited. For the special case non-integer calculated read pointer LZ and / or write pointer SZ a separate routine, such as a software routine, is provided, which handles this case and thus prevents data loss.

Des Weiteren können, abweichend von dem oben beschrieben Verfahrensablauf, z.B. einzelnen Schritte im Vorwärtsbetrieb I eine andere Reihenfolge aufweisen. Z.B. kann das Verfahren im Vorwärtsbetrieb I mit dem Schritt "Bestimmen eines Lesezeigers LZ in Abhängigkeit von dem Schreibzeiger SZ" beginnen, oder es werden z.B. erst die Schritte "Auswählen einer ersten Speicherzelle S1 eines Speichers 14 mit einem Schreibzeiger SZ" und "Schreiben eines ersten Wertes W1 in die erste Speicherzelle S1, gefolgt von dem Schritt "Bestimmen eines Lesezeigers LZ in Abhängigkeit von dem Schreibzeiger SZ" durchgeführt. Dann folgen z.B. die weiteren Schritte. Furthermore, different from the method sequence described above, for example, individual steps in forward mode I may have a different order. For example, in forward operation I, the method may begin with the step "determining a read pointer LZ as a function of the write pointer SZ", or, for example, only the steps "selecting a first memory cell S1 of a memory 14 with a write pointer SZ "and" writing a first value W1 into the first memory cell S1, followed by the step "determining a read pointer LZ in response to the write pointer SZ". Then, for example, follow the further steps.

Claims (12)

Verfahren zur Modellierung eines Totzeitverhaltens in einer Betriebsart Vorwärtsbetrieb (I) und in einer Betriebsart Rückwärtsbetrieb (II), wobei in dem Vorwärtsbetrieb (I) Speicherzellen (S1, S2, ..., Sm, Sn) eines Speichers (14) mittels eines Schreibzeiger (SZ) nacheinander in einer ersten Reihenfolge (R1) ausgewählt werden, um Werte (W1, W2, Wm, ..., Wn) in die Speicherzellen (S1, S2, ..., Sm, Sn) zu schreiben, und mittels eines Lesezeigers (LZ) ausgewählt werden, um die Werte (W1, W2, Wm, ..., Wn) aus den Speicherzellen (S1, S2, ..., Sm, Sn) zu lesen, wobei in dem Rückwärtsbetrieb (II) die Speicherzellen (S1, S2, ..., Sm, Sn) des Speichers (14) mittels des Schreibzeiger (SZ) nacheinander in einer zweiten Reihenfolge (R2) ausgewählt werden, um Werte (W1, W2, Wm, ..., Wn) in die Speicherzellen (S1, S2, ..., Sm, Sn) zu schreiben, und mittels des Lesezeigers (LZ) ausgewählt werden, um die Werte (W1, W2, Wm, ..., Wn) aus den Speicherzellen (S1, S2, ..., Sm, Sn) zu lesen, wobei die erste Reihenfolge (R1) eine andere Fortschrittsrichtung hat als die zweite Reihenfolge (R2), wobei der Lesezeiger (LZ) in Abhängigkeit vom Schreibzeiger (SZ) bestimmt wird, wobei zum Wechseln von einer Ausgangsbetriebsart in eine Zielbetriebsart der Schreibzeiger (SZ) der Zielbetriebsart auf den letzten Wert des Lesezeigers der Ausgangsbetriebsart gesetzt wird. Method for modeling a dead time behavior in a forward mode (I) and in a reverse mode (II), wherein in the forward mode (I) memory cells (S1, S2, ..., Sm, Sn) of a memory ( 14 ) are successively selected in a first order (R1) by means of a write pointer (SZ) to supply values (W1, W2, Wm, ..., Wn) to the memory cells (S1, S2, ..., Sm, Sn) and read by a read pointer (LZ) to read the values (W1, W2, Wm, ..., Wn) from the memory cells (S1, S2, ..., Sm, Sn), in which Reverse mode (II) the memory cells (S1, S2, ..., Sm, Sn) of the memory ( 14 ) are successively selected in a second order (R2) by means of the write pointer (SZ) to supply values (W1, W2, Wm, ..., Wn) to the memory cells (S1, S2, ..., Sm, Sn) and read by the read pointer (LZ) to read the values (W1, W2, Wm, ..., Wn) from the memory cells (S1, S2, ..., Sm, Sn), the first Order (R1) has a different direction of progress than the second order (R2), wherein the read pointer (LZ) is determined in response to the write pointer (SZ), wherein to change from an output mode to a destination mode, the write pointer (SZ) of the target mode on the last value of the reading pointer of the output mode is set. Verfahren nach Anspruch 1, wobei ein Abstand (AB) zwischen dem Lesezeiger (LZ) und dem Schreibzeiger (SZ) in Abhängigkeit von einem Totzeitwert bestimmt wird.The method of claim 1, wherein a distance (AB) between the read pointer (LZ) and the write pointer (SZ) is determined in dependence on a dead time value. Verfahren nach Anspruch 2, das in dem Vorwärtsbetrieb (I) durchgeführt wird, wenn der Totzeitwert positiv ist, und das in dem Rückwärtsbetrieb (II) durchgeführt wird, wenn der Totzeitwert negativ ist. A method according to claim 2, which is performed in the forward mode (I) when the dead time value is positive, and which is performed in the reverse mode (II) when the dead time value is negative. Verfahren nach Anspruch 2 oder 3, das in dem Vorwärtsbetrieb (I) durchgeführt wird, wenn der Totzeitwert Null ist. A method according to claim 2 or 3, performed in the forward mode (I) when the dead time value is zero. Verfahren nach einem der Ansprüche 2 bis 4, wobei der Abstand (AB) zwischen dem Lesezeiger (LZ) und dem Schreibzeiger (SZ) in Abhängigkeit von einer Abtastrate bestimmt wird. Method according to one of claims 2 to 4, wherein the distance (AB) between the read pointer (LZ) and the write pointer (SZ) is determined in dependence on a sampling rate. Verfahren nach Anspruch 5, wobei der Abstand (AB) zwischen dem Lesezeiger (LZ) und dem Schreibzeiger (SZ) als Quotient aus dem Totzeitwert und der Abtastrate bestimmt wird.The method of claim 5, wherein the distance (AB) between the read pointer (LZ) and the write pointer (SZ) is determined as a quotient of the dead time value and the sampling rate. Verfahren nach einem der Ansprüche 2 bis 6, wobei der Abstand (AB) zwischen dem Lesezeiger (LZ) und dem Schreibzeiger (SZ) beim Wechseln von der Ausgangsbetriebsart in die Zielbetriebsart auf einen Begrenzungswert begrenzt wird, auf den der Abstand (AB) vor dem Wechsel des Betriebsmodus festgelegt war.Method according to one of claims 2 to 6, wherein the distance (AB) between the read pointer (LZ) and the write pointer (SZ) when changing from the output mode to the target mode is limited to a limiting value to which the distance (AB) before the Change of operating mode was set. Verfahren nach Anspruch 7, wobei der Begrenzungswert nach dem Wechseln von der Ausgangsbetriebsart in die Zielbetriebsart schrittweise auf einen unbegrenzten Wert erhöht wird.The method of claim 7, wherein the limit value is incrementally increased to an infinite value after switching from the output mode to the destination mode. Verfahren nach einem der vorstehenden Ansprüche, wobei bei der Bestimmung des Lesezeigers (LZ) in Abhängigkeit vom Schreibzeiger (SZ) eine Veränderung der Position des Lesezeigers (LZ) entgegen der Fortschrittsrichtung verhindert wird. Method according to one of the preceding claims, wherein in the determination of the read pointer (LZ) in dependence on the write pointer (SZ), a change of the position of the read pointer (LZ) against the direction of progress is prevented. Recheneinheit, die dazu eingerichtet ist, ein Verfahren nach einem der vorstehenden Ansprüche durchzuführen.Arithmetic unit which is adapted to carry out a method according to one of the preceding claims. Computerprogramm, das eine Recheneinheit dazu veranlasst, ein Verfahren nach einem der Ansprüche 1 bis 9 durchzuführen, wenn es auf der Recheneinheit, insbesondere nach Anspruch 10, ausgeführt wird. Computer program that causes a computing unit to perform a method according to one of claims 1 to 9 when it is executed on the computing unit, in particular according to claim 10. Maschinenlesbares Speichermedium mit einem darauf gespeicherten Computerprogramm nach Anspruch 11.Machine-readable storage medium with a computer program stored thereon according to claim 11.
DE102014202877.9A 2014-02-05 2014-02-17 Method for modeling a deadtime behavior Pending DE102014202877A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102014202877.9A DE102014202877A1 (en) 2014-02-05 2014-02-17 Method for modeling a deadtime behavior
CN201510245259.7A CN104915543B (en) 2014-02-05 2015-02-04 Method for being modeled to dead time characteristic

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102014202082.4 2014-02-05
DE102014202082 2014-02-05
DE102014202877.9A DE102014202877A1 (en) 2014-02-05 2014-02-17 Method for modeling a deadtime behavior

Publications (1)

Publication Number Publication Date
DE102014202877A1 true DE102014202877A1 (en) 2015-08-06

Family

ID=53547115

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014202877.9A Pending DE102014202877A1 (en) 2014-02-05 2014-02-17 Method for modeling a deadtime behavior

Country Status (2)

Country Link
CN (1) CN104915543B (en)
DE (1) DE102014202877A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6045297B2 (en) * 1977-07-22 1985-10-08 株式会社日立製作所 Internal combustion engine fuel control device
EP0724073B1 (en) * 1995-01-27 2005-11-16 Matsushita Electric Industrial Co., Ltd. Air-fuel ratio control system
CN100462875C (en) * 2006-04-14 2009-02-18 中国科学院长春光学精密机械与物理研究所 Control system with gap characteristic transmission mechanism
CN102636992A (en) * 2012-04-19 2012-08-15 南京理工大学常熟研究院有限公司 Modeling based on piecewise-linear system of hybrid system theory and control method

Also Published As

Publication number Publication date
CN104915543A (en) 2015-09-16
CN104915543B (en) 2019-05-31

Similar Documents

Publication Publication Date Title
AT512977B1 (en) Method for determining a model of an output of a technical system
DE102010028259A1 (en) A microcontroller having a computing unit and a logic circuit and method for performing calculations by a microcontroller for control or in-vehicle control
WO2016146528A1 (en) Method for generating a model ensemble for calibrating a control device
DE102017213510A1 (en) Method and apparatus for generating a machine learning system, and virtual sensor device
EP2088486B1 (en) Method for measuring a non-linear dynamic real system using design of experiment
DE102014225039A1 (en) Method and apparatus for providing sparse Gaussian process models for calculation in an engine control unit
DE2654389B2 (en)
DE102008005712A1 (en) Method and arrangement for controlling motors and a corresponding computer program and a corresponding computer-readable storage medium
DE102015208513A1 (en) Method and apparatus for calculating a data-based multi-output functional model
WO2003029978A2 (en) Method and system for processing fault hypotheses
DE102014202877A1 (en) Method for modeling a deadtime behavior
EP0932857B1 (en) Method for modelling and controlling a first order dynamic system with non-linear properties
DE102019128655B4 (en) Method for providing a computer-aided control for a technical system
DE102016216950A1 (en) Model calculation unit and control unit for calculating a multilayer perceptron model with feedforward and feedback
DE102014208379A1 (en) Method and device for determining a function value of a data-based function model inverted relative to an input variable
DE102009058713A1 (en) Method for exhaust gas recirculation
DE102009059931A1 (en) Method for determining parameterizable polynomial model for target parameters of diesel engine of aircraft, involves determining individual terms in individual polynomial models, and determining polynomial models by individual terms
DE102017110065A1 (en) Method and computer program product for modeling a NOx storage behavior of a NOx storage catalyst
DE102019214436A1 (en) Method, device and computer program for operating an artificial neural network
DE10237173A1 (en) Motor vehicle control unit, especially an ignition control unit, in which temporary measurement values, e.g. calibration values, can be stored in RAM
DE102016225308A1 (en) Method and device for calibrating a control unit
DE102020111204A1 (en) Method for operating a control device for a motor vehicle and a corresponding control device
DE102007040148B4 (en) Microprocessor with a circuit for evaluating a large number of program counter (PC) values for generating breakpoint control signals for a program logging unit
DE102020111206A1 (en) Method for operating a control device for a motor vehicle and a corresponding control device
DE102020111208A1 (en) Method for operating a control device arrangement and a corresponding control device arrangement

Legal Events

Date Code Title Description
R012 Request for examination validly filed