This invention relates to internal combustion engines, and more particularly to a virtual sensor for measuring cylinder pressure in an internal combustion engine.
In the field of internal combustion engines, cylinder pressure is an important source of data about the combustion process. In particular, many aspects of engine control can be improved with cylinder pressure data. As examples, cylinder pressure data can be used as a feedback to the engine controller, to refer combustion timing, to detect misfire, and to indicate peak cylinder pressure.
Today, extensive engine performance improvement research is being done using cylinder pressure sensors as information sources. However, one problem associated with their use is that they are too expensive to be implemented in production engines.
Furthermore, today's cylinder pressure sensors tend to be too fragile for implementation in production engines. Even for laboratory testing purposes, due to the harsh in-cylinder environment of internal combustion engines (such as high-temperature, high-pressure and strong chemical corrosion) existing cylinder pressure sensors can be unreliable.
As stated in the Background, cylinder pressure measurements are important to research and development of internal combustion engines. A measured cylinder pressure signal can provide a tremendous amount of useful information about the combustion process.
Cylinder Pressure Signals and Extracted Data
The following description is directed to a model-based cylinder pressure sensor. This sensor is also referred to herein as a “virtual” sensor, and can be used instead of a physical cylinder pressure sensor in an actual engine. The virtual sensor provides estimates of cylinder pressure values accurately and robustly over the entire engine operating range.
Like the sensor of
Virtual Cylinder Pressure Sensor
In the example of
Additional estimation modules can be added, depending on the needs of the engine control system 220 and availability of measurement data from a physical cylinder pressure sensor for training purposes. Examples of other modules are modules for estimating a maximum rising rate value, a pressure inflection value, a pressure inflection position, a second peak value, or a second peak value position.
The inputs to each module during both training and subsequent use are generally referred to as “engine operating conditions”. Typical examples are intake manifold pressure, intake manifold temperature, coolant temperature, and exhaust gas recirculation (EGR) rate. Other input data could include engine control parameters such as injection timing, injection fuel mass, and injection pressure. Each module may require some or all of these parameters as inputs.
Each module 201–203 is “trained” using extracted values from a measured physical cylinder pressure signal. Each module provides a different pressure variable that can be extracted from a physical cylinder pressure sensor.
The module inputs indicated with dotted lines are used for training purposes only. Modules 201–203 may be developed using techniques known in the art of neural networks, as well as by physical principles between inputs and outputs of the modules. Once the training process is finished and the modules are verified, these inputs are removed and sensor 200 is ready for use in production engines.
The virtual cylinder pressure sensor modules 201–203 may be trained on developing engines that have physical cylinder pressure sensors. The output signal of a physical cylinder pressure sensor installed on a development engine is used to train the modules 201–203 of the virtual cylinder pressure sensor 200 for the same type of engine. The modules 201–203 may be trained for both steady state and transient conditions.
During engine operation, each module 201–203 is programmed to receive relevant engine operating parameters. Typically, these parameters are real time measurements from physical engine sensors, but depending on the module, stored or calculated engine operating condition data may be used as input.
For each module, the module input is whatever engine operating parameter is required to obtain its associated pressure variable, the output is the estimated individual variable. The module either accesses stored data or performs calculations, or both, to obtain the desired output estimate. When virtual sensor 200 is implemented in a production engine, its programming may be “stand-alone” or it may be integrated with other programming of the engine control unit 220. Once embedded into the engine control system, sensor 200 provides its variables to the engine control system in real-time.
As indicated in
In effect, sensor 200 avoids the complications associated with coupling a cylinder pressure signal. This increases the accuracy and robustness of the virtual sensor 200. Sensor 200 eliminates the cost of a physical sensor, and it easy to implement into a production engine.
Modules 201–203 each provide the capability to predict its associated cylinder pressure information even before the actual cylinder pressure reaches that point. This is before a measurement from a physical cylinder pressure sensor would be available. Therefore, it gives engine control unit 220 enough time to perform compensations and/or control strategies to obtain optimal performances in both steady state and transient conditions.
Sensor 200 may further be used to monitor the health of a physical cylinder pressure sensor. Any one or more of its modules 201–203 could be used as a fault-diagnostic device for a physical cylinder pressure sensor if cheap and reliable physical cylinder pressure sensors become available in the future.
Overview of Method of Training and Using
In Step 310, the module is provided with data from a physical cylinder pressure sensor. The data is “extracted” data in the sense that it represents a particular variable that can be extracted from the cylinder pressure signal. The examples used in this description are combustion timing, peak value, and maximum position, but any of the signal characteristics of
In Step 320, the module is trained by the corresponding variable extracted from the measured signal of a physical cylinder pressure sensor installed on an engine. The result of the training is a “model”, which represents the relationship, over the range of operation of the engine, between a given set of operating conditions and the desired cylinder pressure data. The module is verified by comparing its output to that of a known-to-be-reliable sensor.
In Step 330, the model data is stored or otherwise made accessible to engine control software.
In Step 340, the module is embedded (by software, firmware, hardware, or some combination of these) into the engine control unit. The engine is assumed to be the same as, or of like type, as that used for training, and need not have a physical cylinder pressure sensor installed.
In Step 350, the module is used to estimate current (or predict future) values for the desired cylinder pressure data. This data may be provided in real time (or ahead of time) to the engine control unit.
Demonstration Data
For demonstration purposes, development and verification data were taken from a Peugeot DW10 diesel engine. The engine parameters are:
A Kistler 6053C60 cylinder pressure transducer was installed on the first cylinder of the engine through a glow plug adapter. A 720 count encoder was installed on the crankshaft of the engine and the physical cylinder pressure signal was sampled at each rising edge of the encoder pulse signal, which gives the sampling rate of 0.5 CAD for the cylinder pressure in crank angle domain. The cylinder pressure signal was taken at the steady state and averaged over 100 cycles.
Once combustion begins, the cylinder pressure signal becomes very noisy and can be filtered to have good calculation for the model development. Conventional causal digital filters can remove the noise but they will introduce delay to the filtered signal, which, however, is not desired for this application in terms of estimating the maximum rising rate position. Thus, a 3-point non-causal moving average digital filter was used to filter out the cylinder pressure signal and remove the combustion noise. This filter effectively removes the noise without introducing any delay. A numerical differentiator with 3-point centered rule was used to calculate the derivative of the filtered cylinder pressure in crank angle domain.
To develop, train, and verify the neural network-based models, training and verification data sets were taken from the actual engine. Test conditions for model development and verification were specified for the following actuators and their settings:
For purposes of demonstration, the scope of varying actuators were limited. However, in practice, the sensor 200 can be extended for the full scope of engine operation conditions.
As examples of the invention, two neural network-based independent estimator modules were developed and tested at steady state. These two modules were for estimating cylinder pressure maximum rising rate position (MRP) and the maximum cylinder pressure value.
Maximum Rising Rate Position Estimation Module
Generally, it is desired to have as few parameters in the neural networks as possible for a given size training data set. For this module, the major input variables were selected as the injection timing and the injection fuel mass only. For the given size of the training data set, to ensure the model accuracy and avoiding model over-fitting, a two-layer five-neuron network structure was selected to develop the model.
The model development data set was put in supervised learning mode to train the model by using the backpropagation learning rule with Levenberg-Marquardt (LM) algorithm. A hyperbolic tangent sigmoid transfer function was employed for the hidden layer.
Maximum Cylinder Pressure Estimation Module
Two different models for the maximum cylinder pressure estimation, without intake manifold absolute pressure (MAP) as input and with intake manifold pressure as input, were developed and compared.
For the model without the MAP as input, a 2-layer 5-neuron network structure similar to that of the maximum rising rate position model (described above) was used. The inputs were the injection timing and the injected fuel mass. The output was the predicted maximum cylinder pressure.
A comparison between the predicted outputs by the trained neural network and the measured values revealed that the model matched the measured values at most of the points except some interesting points. At those points, the measured intake manifold pressures were irregularly higher than the values of the points in the neighborhoods. And as a result, the corresponding measured maximum cylinder pressure values at these points are also irregularly higher than the values of the points in the neighborhoods. It is understandable because higher intake manifold pressure will bring more gas into the cylinder and will increase both the motoring pressure and combustion pressure. With the consideration that the intake manifold pressure will affect both the combustion and the motoring pressures, a second neural network model was proposed.
The neural network of
By following the same model development procedure described above, other cylinder pressure related individual variable oriented estimation models could be developed as well based on the requirement of the engine control system and the fault diagnostic module. The same model development process can be applied to the gasoline spark ignition engines as well.
The models described above are for the steady state condition. For the sensor 200 to work in the transient conditions, dynamic neural networks (with delay components) are required. Because the cylinder pressure is a function of the in-cylinder condition and the engine control commands (such as injection information for diesel engines, spark timing for gasoline engines), only those engine operating parameters that affect the in-cylinder condition along with the control commands need to be considered as the inputs. For some of these parameters, such as EGR, not only their values in the current cycle but also their values in the previous cycles will affect the cylinder pressure of the current cycle. Therefore, high-order estimators that take the input variables of the previous cycles into account will improve the performance of the sensor 200. The transient behaviors can be modeled by using the dynamic neural networks with tapped delay lines, which can combine both the current input signal and its previous values in both time and crank angle domains together as an input vector to the network.
This application claims priority to U.S. provisional patent application No. 60/563,887, entitled “Virtual Cylinder Pressure Sensor with Individual Variable-Oriented Independent Estimators,” filed on Apr. 20, 2004, the full disclosure of which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5093792 | Taki et al. | Mar 1992 | A |
5559285 | Bryant et al. | Sep 1996 | A |
6236908 | Cheng et al. | May 2001 | B1 |
6272426 | Tascillo | Aug 2001 | B1 |
6460408 | Gimmler et al. | Oct 2002 | B1 |
6553305 | Dixon et al. | Apr 2003 | B1 |
6925373 | La Rosa et al. | Aug 2005 | B1 |
20020087256 | Dixon et al. | Jul 2002 | A1 |
20050091294 | Tuken et al. | Apr 2005 | A1 |
Number | Date | Country | |
---|---|---|---|
20050251322 A1 | Nov 2005 | US |
Number | Date | Country | |
---|---|---|---|
60563887 | Apr 2004 | US |