U.S. patent application number 13/647713 was filed with the patent office on 2013-04-11 for method for real-time testing of a control unit for an internal combustion engine using a simulator.
This patent application is currently assigned to dSPACE digital signal processing and control engineering GmbH. The applicant listed for this patent is dSPACE digital signal processing and control engineering GmbH. Invention is credited to Thorsten PUESCHL.
Application Number | 20130090886 13/647713 |
Document ID | / |
Family ID | 47908590 |
Filed Date | 2013-04-11 |
United States Patent
Application |
20130090886 |
Kind Code |
A1 |
PUESCHL; Thorsten |
April 11, 2013 |
METHOD FOR REAL-TIME TESTING OF A CONTROL UNIT FOR AN INTERNAL
COMBUSTION ENGINE USING A SIMULATOR
Abstract
A method for real-time testing of a control unit for an internal
combustion engine using a simulator is provided. The control unit
and the simulator are connected to one another by a first data
channel. The control unit transmits engine control data to the
simulator through the first data channel and the simulator
calculates engine state variables in real time on its first
simulator processor with a first sampling step size and transmits
at least some of the engine state variables to the control unit.
Thus, selected engine state variables can be made available at a
different frequency, and in particular at a higher frequency, than
is possible by the first sampling step size of the first simulator
processor, in that the simulator calculates at least one specific
engine state variable using a partial engine model and with a
second sampling step size different from the first sampling step
size.
Inventors: |
PUESCHL; Thorsten;
(Paderborn, DE) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
GmbH; dSPACE digital signal processing and control
engineering |
Paderborn |
|
DE |
|
|
Assignee: |
dSPACE digital signal processing
and control engineering GmbH
Paderborn
DE
|
Family ID: |
47908590 |
Appl. No.: |
13/647713 |
Filed: |
October 9, 2012 |
Current U.S.
Class: |
702/113 |
Current CPC
Class: |
F02D 2041/1437 20130101;
F02D 41/26 20130101; G01M 15/02 20130101; G05B 17/02 20130101 |
Class at
Publication: |
702/113 |
International
Class: |
G01M 15/04 20060101
G01M015/04; G06F 19/00 20110101 G06F019/00 |
Foreign Application Data
Date |
Code |
Application Number |
Oct 6, 2011 |
DE |
DE102011054217.5 |
Claims
1. A method for real-time testing of a control unit for an internal
combustion engine, the method comprising: providing a simulator
comprising a first simulator processor and a first simulator I/O
interface, the control unit comprises a control unit processor and
a control unit I/O interface, the control unit and the simulator
being connectable to one another through their I/O interfaces via a
first data channel; transmitting, via the control unit, engine
control data to the simulator through the first data channel;
calculating, via the simulator, engine state variables in real time
by the first simulator processor with a first sampling step size
using the engine control data and using a full engine model;
transmitting at least a portion of the engine state variables with
a first transmission step size to the control unit; and
calculating, via the simulator, at least one specific engine state
variable of the engine state variables using a partial engine model
and with a second sampling step size that is different from the
first sampling step size.
2. The method according to claim 1, wherein the specific calculated
engine state variable is transmitted to the control unit with a
second transmission step size via a second data channel that is
different from the first data channel.
3. The method according to claim 1, wherein the second sampling
step size is smaller than the first sampling step size, and wherein
the first sampling step size is an integer multiple of the second
sampling step size.
4. The method according to claim 1, wherein the second transmission
step size is smaller than the first transmission step size.
5. The method according to claim 1, wherein the second data channel
is routed through a second simulator I/O interface that is
independent of the first simulator I/O interface.
6. The method according to claim 1, wherein the partial engine
model for calculating the specific engine state variable is
calculated on a second simulator processor that is different from
the first simulator processor.
7. The method according to claim 1, wherein the partial engine
model for calculating the specific engine state variable is carried
out in a different task from the task in which the full engine
model for calculating all engine state variables is carried out,
and wherein both tasks are carried out on the first simulator
processor.
8. The method according to claim 1, wherein values determined in a
most recent sampling step by the full engine model are made
available to the partial engine model.
9. The method according to claim 1, wherein the full engine model
includes the engine state variable of the cylinder pressure inside
the combustion chamber of a cylinder of the internal combustion
engine, and wherein the partial engine model includes as a specific
engine state variable the cylinder pressure inside the combustion
chamber of the cylinder of the internal combustion engine.
10. The method according to claim 9, wherein the full engine model
includes as additional engine state variables, and the partial
engine model includes as additional specific engine state variable,
a temperature inside the combustion chamber of the cylinder and/or
a temperature gradient of the temperature inside the combustion
chamber of the cylinder and/or a volume of the combustion chamber
of the cylinder and/or a pressure gradient inside the combustion
chamber of the cylinder.
11. The method according to claim 10, wherein, in the partial
engine model, the temperature in the combustion chamber of the
cylinder is determined by integration and the temperature is used
to calculate the cylinder pressure.
12. The method according to claim 10, wherein the volume of the
combustion chamber of the cylinder is determined in the partial
engine model by a series expansion or via a table lookup, and
wherein the volume is used to calculate the cylinder pressure.
13. The method according to claims 9, wherein the cylinder pressure
is determined in the partial engine model as a function of a
defined crank angle, and wherein the crank angle is defined by an
angle calculation unit provided in the simulator.
14. The method according to claim 13, wherein the calculation of
the volume of the combustion chamber of the cylinder is carried out
for a crank angle range of one-half crank revolution of 0.degree.
to 180.degree., wherein for a crank angle of greater than
180.degree. the actual crank angle is replaced by a
volume-equivalent crank angle for determining the volume of the
combustion chamber of the cylinder, wherein the crank angle range
is divided into sub-ranges, and wherein expansion coefficients are
determined for the series expansion of the cylinder volume for each
sub-region for each engine type that is to be simulated before
simulation.
15. A simulator comprising: a first simulator processor; and a
first simulator I/O interface for real-time testing of a control
unit for an internal combustion engine, the control unit comprising
a control unit processor and a control unit I/O interface, wherein
the simulator is connectable to the control unit through the
simulator I/O interface and the control unit I/O interface via a
first data channel configured to transmit engine control data from
the control unit to the simulator, wherein a full engine model that
is configured to calculate engine state variables on the first
simulator processor as a function of the transmitted engine control
data with a first sampling step size is maintained on the first
simulator processor, wherein the simulator is configured to
transmit at least a portion of the engine state variables to the
control unit with a first sampling step size, and wherein a partial
engine model for calculating at least one specific engine state
variable of the engine state variables with a second sampling step
size that is different from the first sampling step size is
maintained in the simulator.
Description
[0001] This nonprovisional application claims priority under 35
U.S.C. .sctn.119(a) to German Patent Application No. DE
102011054217.5, which was filed in Germany on Oct. 6, 2011, and
which is herein incorporated by reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to a method for real-time
testing of a control unit for an internal combustion engine using a
simulator, and also relates to a simulator, wherein the simulator
comprises a first simulator processor and a first simulator I/O
interface, wherein the control unit comprises a control unit
processor and a control unit I/O interface, and wherein the control
unit and the simulator are connected to one another through their
I/O interfaces by means of a first data channel, and the control
unit transmits engine control data to the simulator through the
first data channel, and the simulator calculates engine state
variables in real time on its first simulator processor with a
first sampling step size using the engine control data and using a
full engine model and transmits at least some of the engine state
variables to the control unit.
[0004] 2. Description of the Background Art
[0005] A generic method for performing a real-time test of a
control unit is also known in practice as a hardware-in-the-loop
test. Simulators of the generic type for carrying out such a method
are known under the names hardware-in-the-loop simulator or HIL
simulator. "Hardware-in-the-loop test" is understood to mean that
the hardware to be tested--here in the form of a control unit--is
not tested in its real environment--in the present case, in
conjunction with the internal combustion engine that is to be
operated--but instead in an environment that is at least partially
simulated in the simulator. To this end, the simulator is connected
to the control unit through the corresponding I/O interfaces in
each case, so that the simulator receives the electrical signals
output by the control unit, causes them to be included in the
calculation of the full engine model, and in turn calculates data
in real time that are sent to the control unit in the form of
signals through the data channel between the simulator and the
control unit, for example. Here, the term data channel describes a
suitable connection for transmitting data or signals, for example a
bus connection, which can also comprise additional subchannels. In
this context, "real time" means that the engine state variables are
calculated so quickly that for all practical purposes the control
unit cannot detect whether it is being operated with a real engine
or only in a simulated environment. In order for this to function,
the first simulator I/O interface additionally must be matched in
terms of hardware and signals such that it seems like the I/O
interface of the real engine to the control unit.
[0006] The advantages of such a testing method are obvious: it is
possible to verify the behavior of the control unit in a completely
risk-free manner, with a good capability for observing the control
unit and with the capability of exploring even extreme operating
situations, and thereby ascertaining whether the control unit
drives and monitors the engine as expected. Since engine state
variables are transmitted from the simulator to the control unit
and engine control data are transmitted from the control unit to
the simulator via the data channel on a continuous basis, the
control unit is tested "in the control loop" (hence "in the
loop.")
[0007] It is immediately obvious that the quality of such a
real-time test of a control unit depends critically on the quality
of the underlying mathematical model, hence the full engine model,
and from the most precise possible calculation of this full engine
model. Thermodynamic models of internal combustion engines
typically have comprehensive systems of differential equations that
must be solved numerically in real time in order to obtain the
engine state variables of interest. When mention is made herein
that the simulator has a full engine model, this is only intended
to mean that it is possible with the full engine model to calculate
all of the engine state variables that are required in order to
appropriately stimulate the control unit under test that is
connected to the simulator, which is to say to supply it with all
necessary engine state variables via the data channel. In
particular, if the control unit requires cylinder internal pressure
as an input quantity, it is necessary to employ a full engine model
that models the thermodynamic processes in the cylinder. The
complexity of typical full engine models places great demands on
the simulator processor, which must calculate the engine state
variables of interest in each sampling step.
[0008] A problem can arise, for example, when the control unit
makes it necessary to provide engine state variables at a frequency
that does not correspond to the sampling step size of the simulator
processor, and in particular is greater than the frequency defined
by the first sampling step size of the simulator processor. Another
problem can arise because engine state variables are to be
transmitted at different, and in particular variable, time
intervals than is possible with the first, fixed sampling step size
of the simulator. A specific example of such an engine state
variable is the cylinder pressure in the combustion chamber of a
cylinder, wherein the pressure in the cylinder is provided to the
control unit for each cylinder of the internal combustion engine.
One example of such an HIL system is described in the German press
release titled "HiL-Simulation in der Praxis: Hochdynamische
Regelung des Zylinderdruckverlaufs."
[0009] Modern control units require reporting of cylinder pressures
not at fixed time intervals, but at, e.g., fixed intervals of crank
angle, which is to say the angle of rotation of the crankshaft, for
example one value for each degree of crank angle, and in particular
over the full speed range of the engine. At a speed of 6000 RPM,
this means that the calculation of the full engine model can last
barely 30 .mu.s in order to be able to provide a calculated value
for the cylinder pressure or cylinder pressures to the control unit
at every degree of change in the crank angle. Depending on the
complexity of the full engine model this cannot be implemented,
with the result that real-time conditions cannot be maintained.
SUMMARY OF THE INVENTION
[0010] It is therefore an object of the present invention to
provide a method for real-time testing of a control unit for an
internal combustion engine that makes it possible to provide
selected engine state variables, in particular at a higher
frequency than is possible by means of the first sampling step size
of the first simulator processor. The object is also to provide a
simulator for carrying out such a method.
[0011] The object, according to an embodiment, is attained in a
method for real-time testing of a control unit for an
internal-combustion engine using a simulator by the means that the
simulator calculates at least one specific engine state variable of
the engine state variables using a partial engine model and with a
second sampling step size different from the first sampling step
size. The specific engine state variable is at least one engine
state variable of the full engine model that is to be provided at
different times than is specified by the first sampling step size
of the first simulator processor, which is to say in particular at
a higher frequency or at variable times.
[0012] The partial engine model is used to calculate this specific
engine state variable; this model exists in addition to the full
engine model, but permits a calculation of the specific engine
state variable that conforms to the time requirements for providing
this specific engine state variable. This means that the full
engine model continues to provide all engine state variables at the
first sampling step size, including the selected specific engine
state variable. The partial engine model can access the value for
one of the engine state variables calculated and made available by
the full engine model in a last sampling step and uses it as the
initial value for an independent calculation of the specific engine
state variable. Starting from at least one such initial value
calculated with the relatively complex full engine model, the
partial engine model selectively permits a different, in particular
faster, calculation of the selected specific engine state variable
independent of the first sampling step size and independent of the
calculation of the full engine model.
[0013] In general, the partial engine model is not merely a part of
the full engine model. The term is intended to express that this is
a mathematical model of the engine that concerns itself primarily
with calculating the specific engine state variable and thus takes
into account only a portion of the aspects that are taken into
account by the full engine model. The partial engine model can be a
different type of physical/technical model than that represented by
the full engine model. While the full engine model is typically
based on a system of differential equations, the partial engine
model can typically be based on extrapolation from past calculated
data and engine state variables.
[0014] Especially when the specific engine state variable must be
calculated much more frequently by the partial engine model, and
possibly transmitted to the control unit, which is to say that the
second sampling step size is smaller than the first sampling step
size, this may be problematic with regard to the utilization of the
first data channel, since the more frequent transmission of the
specific engine state variable to the control unit via the first
data channel loads the first data channel in such a manner that
on-time transmission of the engine state variables bound to the
first sampling step size can no longer be guaranteed. To solve this
problem, provision is made in an embodiment of the method that the
specific calculated engine state variable is transmitted to the
control unit via a second data channel different from the first
data channel. It is not critical in this regard whether this data
channel uses the existing first simulator I/O interface and the
existing control unit I/O interface or whether this takes place via
additional interfaces; all that is important here is that the first
data channel and the second data channel are independent of one
another. However, provision is made in an embodiment of the method
according to the invention for the second data channel to be
implemented by a second simulator I/O interface that is independent
from the first simulator I/O interface.
[0015] The method according to an embodiment of the invention, can
be put to especially practical use when the second sampling step
size is smaller than the first sampling step size, and particularly
when the first sampling step size is an integer multiple of the
second sampling step size. This can involve sampling step sizes
that are fixed in terms of time, but the sampling step sizes can
also be tied to reference quantities other than time, for example
the angle of the crankshaft of the simulated engine, which is to
say the crank angle. The thermodynamic full engine model can be
calculated once every 10.degree. of crank angle change, for
example, whereas the partial engine model is calculated at every
1.degree. of crank angle change to calculate the specific engine
state variable.
[0016] The transmission of the calculated engine state variables of
interest to the control unit via the first data channel is not
necessarily coupled to the first sampling step size, although it
can be coupled thereto. Nor is the second sampling step size at
which the specific engine state variable is calculated necessarily
coupled to the transmission step size at which the specific engine
state variable is transmitted to the control unit. For the case in
which a first and a second data channel are implemented, however,
provision is made in another embodiment for the specific engine
state variable to be transmitted to the control unit via the second
data channel at a smaller transmission step size than the
transmission step size at which the engine state variables are
transmitted to the control unit via the first data channel. The
method can be carried out in a simplified manner such that the
first sampling step size corresponds to the first transmission step
size and/or such that the second sampling step size corresponds to
the second transmission step size, so that the processing of the
associated I/O routines can be linked to the calculation
routines.
[0017] In an embodiment of the method, provision is made for the
partial engine model for calculating the specific engine state
variable to be calculated on a second simulator processor that is
different from the first simulator processor, wherein this second
simulator processor can be an independent processor or
microcontroller, but can also be one core of a multi-core
processor. What is important here is that the calculation of the
specific engine state variable of the partial engine model does not
influence the calculation of the engine state variables with the
full engine model, which is to say computing capacities that are
independent of one another are available for the calculation.
[0018] Another embodiment of the method according to the invention
provides that the partial engine model for calculating the specific
engine state variable is only carried out in a different task from
the task in which the full engine model for calculating all engine
state variables is carried out, which is to say in particular that
both tasks are carried out on the first simulator processor. Here,
too, it is necessary to bear in mind that the partial engine model
is not merely an external part of the full engine model, but
instead exists in addition to the full engine model, yet is
designed such that a faster calculation of the partial engine
model, in particular, is possible than the calculation time for
calculating the engine state variables achievable with the full
engine model.
[0019] The inventive method can be used, for example, when the full
engine model includes the cylinder pressure inside the combustion
chamber of a cylinder of the internal combustion engine as one of
the engine state variables, and the partial engine model also
includes the cylinder pressure inside the cylinder of the internal
combustion engine as a specific engine state variable. In this
context, it is important to bear in mind that in the case of
multi-cylinder engines, the full engine model calculates the
cylinder pressures in all of the engine's cylinders, as does the
partial engine model. In certain engines, it is possible that
symmetries may be utilized, thus reducing computational effort.
When the cylinder pressure inside the combustion chamber of a
cylinder is referred to below, then of course this means that the
cylinder pressures inside the combustion chambers of any additional
cylinders can also be included.
[0020] The cylinder pressure inside a cylinder is an essential
engine state variable for controlling an internal combustion
engine, which is transmitted to the engine control unit at regular
intervals, in particular with respect to a predetermined change in
the crank angle. Conversely, the control unit transmits the
injection time and ignition angle (in internal combustion engines
with externally supplied ignition) for each cylinder as a function
of the engine state variables to drive the internal combustion
engine. In an embodiment of the method, the full engine model
includes as additional engine state variable(s), and the partial
engine model includes as additional specific engine state
variable(s), the temperature inside the combustion chamber of the
cylinder and/or the temperature gradient of the temperature inside
the combustion chamber of the cylinder and/or the volume of the
combustion chamber of the cylinder and/or the pressure gradient
inside the combustion chamber of the cylinder. With these
variables, the cylinder pressure inside the combustion chamber of
the cylinder, in particular, can be calculated in a simple manner
without requiring a complex differential equation system to be
solved, and in particular, the calculation of the cylinder pressure
within the framework of the partial engine model is then possible
such that it only takes a fraction of the calculation time of the
full engine model.
[0021] In an embodiment, the cylinder pressure inside the
combustion chamber of a cylinder can be calculated with the partial
engine model as a function of the current temperature and volume
values, which likewise are calculated within the partial engine
model. Using as a starting point the last values calculated with
the full engine model for p.sub.0 for the cylinder pressure,
V.sub.0 for the volume of the cylinder's combustion chamber, and
T.sub.0 for the temperature inside the combustion chamber, the
cylinder pressure p.sub.k is calculated for points in time
extending beyond that--before the next sampling size step is
reached, for example, in a simplified fashion using:
p k = p 0 V 0 T 0 T k V k ( 1 ) ##EQU00001##
[0022] Here, p.sub.k is the calculated value of the cylinder
pressure in step k, which is calculated with the second sampling
step size of the partial engine model, and T.sub.k and V.sub.k are
the values calculated in the partial engine model for the
temperature inside the combustion chamber of the cylinder and for
the volume of the cylinder's combustion chamber.
[0023] The temperature T.sub.k in the cylinder's combustion chamber
advantageously can be determined within the framework of the
partial engine model through integration or extrapolation, for
example using:
T.sub.k=T.sub.0+T.sub.S2kdT.sub.0 (2)
[0024] Here; T.sub.S2 is the second sampling step size, with which
the partial engine model is calculated, and dT.sub.0 is the value
for the temperature gradient of the temperature inside the
combustion chamber determined at the most recent calculation time
by the full engine model.
[0025] In another embodiment of the invention, the volume V.sub.k
of the combustion chamber of the cylinder is determined as a
function of the crank angle .phi. in the partial engine model. In
one embodiment, the volume is calculated by means of a series
expansion, so that the following applies:
V.sub.k(.phi.)=.alpha..sub.0+.alpha..sub.1(.phi..sub.0-.phi.)+.alpha..su-
b.2(.phi..sub.0-.phi.).sup.2+ . . . (3)
[0026] The volume of the combustion chamber of the cylinder behaves
in a manner that is periodic, for example sinusoidal, with the
crank angle, so that the series expansion preferably takes place
only for a crank angle range of 0.degree. to 180.degree., where a
further subdivision into sub-ranges can take place here so that
only a few powers are required in the series expansion for the
calculation. Then, for example, one of three different series
expansions V.sub.k,1, V.sub.k,2, or V.sub.k,3 may come into play in
the subdivision of the angle range into three sub-ranges as a
function of the value of the crank angle .phi..
[0027] In another embodiment, the volume as a function of the crank
angle .phi. is stored in a table such that it is accessible to the
partial engine model.
[0028] The simulator according to the invention has a first
simulator processor and a first simulator I/O interface for
carrying out a real-time test of a control unit, wherein the
control unit is equipped with a control unit processor and a
control unit I/O interface. The simulator can be connected to the
control unit via the simulator I/O interface and the control unit
I/O interface by means of a first data channel to transmit engine
control data from the control device to the simulator. A full
engine model that is configured to calculate engine state variables
on the first simulator processor as a function of the transmitted
engine control data with a first sampling step size is maintained
on the first simulator processor. The simulator is configured to
transmit at least a portion of the engine state variables to the
control unit with a first sampling step size, in particular via the
first data channel. According to an embodiment of the invention, a
partial engine model for calculating at least one specific engine
state variable of the engine state variables with a second sampling
step size T.sub.S2 different from the first sampling step size
T.sub.S1 is maintained in the simulator, so that the
above-described method according to the invention can be performed
by means of the simulator.
[0029] In particular, now, there are a variety of possibilities for
designing and further developing the method according to the
invention for real-time testing of a control unit for an internal
combustion engine, as well as for designing and further developing
the simulator according to the invention.
[0030] Further scope of applicability of the present invention will
become apparent from the detailed description given hereinafter.
However, it should be understood that the detailed description and
specific examples, while indicating preferred embodiments of the
invention, are given by way of illustration only, since various
changes and modifications within the spirit and scope of the
invention will become apparent to those skilled in the art from
this detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
[0031] The present invention will become more fully understood from
the detailed description given hereinbelow and the accompanying
drawings which are given by way of illustration only, and thus, are
not limitive of the present invention, and wherein:
[0032] FIG. 1 schematically shows an arrangement having a control
unit and a simulator for carrying out the method according to an
embodiment of the invention for real-time testing of the control
unit, and
[0033] FIG. 2 shows a variant arrangement having a control unit for
an internal combustion engine and a simulator for explaining the
method according to the invention.
DETAILED DESCRIPTION
[0034] Shown schematically in the figures in each case is a control
unit 1 for an internal combustion engine, and a simulator 2 that is
used to subject the control unit 1 to a real-time test. To start
with, the simulator 2 includes a first simulator processor 3 and a
first simulator I/O interface 4. The control unit 1 likewise
includes a control unit processor, which is not expressly shown
here, and a control unit I/O interface 5. Implemented between the
I/O interfaces 4 and 5 is a first data channel that connects the
control unit 1 to the simulator 2.
[0035] The control unit 1 transmits engine control data to the
simulator 2 through the first data channel 6. The simulator 2
calculates the engine state variables of interest in real time on
its first simulator processor 3 based on the engine control data
and by means of a full engine model 7 with a first sampling step
size T.sub.S1, so that the engine state variables of the full
engine model 7 are available as a result at the end of each
calculation interval delimited by the first sampling step size.
Listed as engine state variables in FIG. 1 are the temperature
T.sub.0 inside the cylinder's combustion chamber, the temperature
gradient dT.sub.0, the volume V.sub.0 of the cylinder's combustion
chamber, and the cylinder pressure p.sub.0 inside the cylinder.
[0036] The method carried out using the simulator 2 provides for
the simulator 2 to calculate at least one specific engine state
variable, in the present case the cylinder pressure p inside the
combustion chamber of a cylinder, with a partial engine model 8 and
with a second sampling step size T.sub.S2 that is different from
the first sampling step size T.sub.S1. The partial engine model 8
thus is not an external part of the full engine model 7, but
instead represents an additional calculation possibility for the
specific engine state variable that makes it possible in the
present case to provide the specific engine state variable with a
second sampling step size T.sub.S2 that is smaller than the first
sampling step size T.sub.S1. Preferably the state variables most
recently calculated by the full engine model 7 are made available
to the partial engine model 8. The partial engine model 8 uses the
engine state variables made available by the full engine model 7
for a calculation of the specific engine state variable that is
independent of the full engine model 7.
[0037] The exemplary embodiments in FIG. 1 and FIG. 2 have in
common that the specific calculated engine state variable p is
transmitted to the control unit 1 via a second data channel 9
different from the first data channel 6, wherein the second data
channel 9 in the exemplary embodiment from FIG. 1 is created using
the first simulator I/O interface 4 and the control unit I/O
interface 5. In the exemplary embodiment from FIG. 2, the second
data channel 9 is implemented using a second simulator I/O
interface 10, independent of the first simulator I/O interface 4,
and the control unit I/O interface 5. The control unit I/O
interface 5 cannot be changed without additional effort on the
control unit 1 itself, since the connection schematic and the
interface are predefined, at least for production-model control
units.
[0038] In both exemplary embodiments, the partial engine model 8
for calculating the specific engine state variable is calculated on
a second simulator processor 11 different from the first simulator
processor 3, resulting in the greatest possible degree of hardware
decoupling between the calculation of the full engine model 7 and
the calculation of the partial engine model 8. The first simulator
processor 3 and the second simulator processor 11 both have access
to the memory 12, which in the present case is implemented as
dual-port memory, in other words as memory accessible from both
sides.
[0039] In the exemplary embodiment in FIG. 2, the calculation of
the full engine model 7 and the calculation of the partial engine
model 8 are not performed at fixed time intervals, but instead as a
function of the crank angle .phi., so that the first sampling step
size T.sub.S1 and the second sampling step size T.sub.S2 depend on
the speed of the simulated internal combustion engine.
[0040] The full engine model 7 makes the engine state variables
T.sub.0, dT.sub.0, V.sub.0, and p.sub.0 available at the end of
each first sampling step size T.sub.S1, with these engine state
variables being stored in the memory 12. There, the engine state
variables are available to the partial engine model 11, which then
calculates intermediate cylinder pressures p.sub.k at intermediate
step sizes, in the present case using the rules set forth in
equations (1, 2, 3).
[0041] In the case of the exemplary embodiment from FIG. 2, the
crank angle .phi. is defined by an angle calculation unit 13
located in the simulator 2.
[0042] In the method shown, the volume of the combustion chamber of
the cylinder is carried out for a crank angle range of one-half
crank revolution, wherein for a crank angle of >180.degree. the
actual crank angle .phi. is replaced by a volume-equivalent crank
angle for determining the volume of the combustion chamber. In this
process, the crank angle range is divided into sub-ranges, with
provision being made to determine the expansion coefficients for
the series expansion of the cylinder volume for each sub-region for
each engine type that is to be simulated before simulation.
[0043] The invention being thus described, it will be obvious that
the same may be varied in many ways. Such variations are not to be
regarded as a departure from the spirit and scope of the invention,
and all such modifications as would be obvious to one skilled in
the art are to be included within the scope of the following
claims.
* * * * *