The present disclosure relates generally to injector solenoid controls, and more specifically to a method and apparatus for detecting a precise opening time of an injector solenoid applied for a direct injection system.
Modern vehicle controls, such as those used in direct injection or other similar system engine control systems, frequently require a controller to determine or estimate the time the injector solenoid opens. The vehicle systems rely on an injector opening time response in order to predict aspects of the engine system, such as fuel rail pressure. These predictions are made in real time utilizing a linear transfer function.
To properly utilize predictive systems, the engine systems require a reliable detection of injector opening time for each injection, at each stroke. Current control systems also require that the opening time detection have a high accuracy in order to guarantee proper operation.
Disclosed is a method for detecting a fuel injector solenoid opening time, including detecting a slope inflection in a derivative of a current draw during a data collection period, using slope inflection detection and discrimination filters.
Also disclosed is a vehicle utilizing direct injection solenoid fuel injectors. The vehicle includes at least one current sensing function capable to detect a injector current draw of the and a controller connected to current sensing function. The controller is capable to detect a slope inflection in a derivative of the injector solenoid current draw using slope inflection detection and discriminator filters, thereby detecting the opening time of the injector solenoid.
Existing injectors utilize a combination of empirical data sets and predictive modeling to estimate the response time of the direct injector solenoid 30. While this method can provide adequate results, the predictions are not necessarily precise and include multiple assumptions. Further still, the predictive modeling requires a significant investment of controller processing power. The processing power requires a dedicated injection controller and/or limits alternate functions of the engine controller 40.
The illustrated engine controller 40 includes a slope inflection based injector opening time detector. In one example, the injector opening time detector is a software module. The engine controller 40 detects a current input to the direct injector solenoid 30 using existing sensing functions and constructs a current profile of the direct injector solenoid 30. The current profile is a representation of the direct injector solenoid 30 input current with respect to time.
With continued reference to
It is known in the art that a direct injector solenoid 30 is fully open at least a minimum time period after the start of injection. The minimum time period is illustrated as a delay window 130. Once the delay window 130 has passed, the controller 40 begins collecting data from the current profile 100, in order to precisely determine the injector opening time. The current data is collected from the end of the delay window 130 until the beginning of the current holding phase 124. This window of time is referred to as the data collection window 140.
With continued reference to
Once the delay window 130 has elapsed, the controller 40 begins data collection in a data collection step 220. The controller 40 collects data for the duration of the data collection window 140 and stores the data collected in a data buffer. Once all the injector opening data has been stored in the data buffer, the controller 40 determines an opening time detection window (illustrated in
Once the opening time detection window has been determined, the controller 40 discards the data that is outside of the opening time detection window from the buffer and the remaining data is processed with slope inflection and discrimination filters in a ‘detect slope inflection’ point step 240. The controller 40 identifies the time when the solenoid 30 became fully open based on the timing of the peak of a slope inflection amplified by the slope discrimination filter. The slope inflection filter and the slope discrimination filter are implemented as software modules within the controller 40. In alternate examples, the slope inflection and discrimination filters can be implemented in other vehicle components including a processor capable of performing the corresponding calculations. The determination of the fully open time is made in a calculate opening time step 250. The controller 40 can then output the fully open time to any other system, such as another controller or an on board diagnostic (OBD1/OBD2) system.
With continued reference to
Once the time delay has passed, a data input 310 is utilized to determine a current profile within the previously described data collection window 140. The data input 310 is a current drawn by the direct injector solenoid 30 and is sampled at a high data sampling rate. A low pass filter is applied to the data to remove high frequency noise. The data is then down sampled from high to low data rate. The rate of the down sampling is configurable and can be adjusted to reflect the particular processing power and speed of the controller 40. Once the data has been fully down sampled, the data is stored in a data buffer and is output from the data collection step 220 as a data output 320.
The illustrated data output 320 is an example data output from the data collection step 220. As can be seen, the data is truncated before the data collection window 140 and after the data collection window 140.
With continued reference to
The controller 40 sets an opening time detection window 410 as extending from the time of the peak value of the data buffer until the end of the data buffer. The data within the data buffer can again be truncated by eliminating all data outside the opening time detection window 410. This truncation further reduces the amount of data required to be analyzed by the controller 40. Once the opening time detection window 410 has been determined, the controller 40 applies the detect slope inflection point step 240.
With continued reference to
Once a slope inflection location is identified with the slope inflection detection filter, the controller 40 applies the slope discrimination filter to amplify a slope inflection, without amplifying other variations in the data. By applying the slope discrimination filter, the controller 40 generates the slope inflection output 510. A predefined threshold 520 is stored in a memory of the controller 40. The sole peak 530 above the predefined threshold 520 indicates the presence of a slope inflection, with the peak point being the occurrence of the slope inflection.
Once the slope inflection point 530 has been determined, the injector opening time is calculated by the controller 40 according to the following relationship:
Opening time=(window start+peak position+processing offset+filter delay)*down sampled data sample rate.
With the window start being the time at which the controller 40 begins the opening time detection window, the peak position 530 being the time at which the slope inflection detector output 510 peaks, the processing offset and the filter delay being constants, and the data sample rate being the rate at which the current profile data has been down sampled. The processing offset constant and the filter delay constant are calibration constants that are calibrated depending on the particulars of the given system. Specific processing offset constants and filter delay constants for any given system can be calculated by one of skill in the art having the benefit of this disclosure.
Once the opening time has been determined by the controller 40 in the calculate opening time step 250, the controller 40 can output the injector solenoid 30 opening time to other sub-routines within the controller 40, to another engine controller, to an engine diagnostics system (OBD1/OBD2), or to any other vehicle system.
With continued reference to
Both the slope inflection detection filter and the slope discrimination filter utilize two synchronized sliding windows, a mean window 610 and a median window 620, to detect and amplify a slope inflection. The median window 620 is a larger window and fully encompasses the mean window 610. Both windows 610, 620 slide through the derivative of the data within the opening time detection window (alternately referred to as the detection signal 630) entry by entry at the same time, doing slope calculation and nonlinear filtering, over the entire detection signal 630 the data in the median window 620 is sorted before calculating a mean term. A median term is calculated in median window 620 entry by entry. A mean term is calculated in mean window 610 entry by entry.
The size of both the mean window 610 and the median window 620 are calibration values that can be experimentally or mathematically determined for a particular injection solenoid 30 by one of skill in the art having the benefit of this disclosure.
The value of the output of the slope inflection detection filter is determined by the following relationship:
Out=mid*dfact−(mean*gfact).
Where Out is the output value, mid is the center value of the data points in the median window 620 once the data points in the median window 620 have been sorted in ascending order, mean is the mean value of the data points in the mean window 610, and dfact and gfact are variable factors. dfact and gfact are determined by the following relationships:
gfact=1+ABS(mid−mean)
dfact=1−ABS(mid−mean)
Where mid is the center value of the data points in the median window 620 once the data points in the median window 620 have been sorted in ascending order, mean is the mean value of the data points in the mean window 610, and ABS is the absolute value function.
As a result of the above relationships, the bigger the difference between the value of the median window 620 (mid) and the mean window 610 (mean), the greater the factor gfact will be. Similarly, the bigger the difference between the value of the median window 620 (mid) and the mean window 610 (mean), the smaller factor dfact will be. This difference in gfact and dfact results in an output (out) that greatly magnifies a slope inflection.
The value of the output of the slope discrimination filter is determined by the following relationship:
Output=Mid*Gfact−(Mean*dfact−Offset)
Where Mid, Mean, Gfact, and dfact are the previously described terms and Offset is determined by the following relationship:
Offset=ABS(Mid−Mean)/(length of mean window)
Where Mid and Mean have their previously described definitions and the length of mean window is the time encompassed by the mean window 610. ABS is the absolute value function.
Further, as previously described Gfact, and dfact are variable gain terms with Gfact always being greater than 1, and dfact always being less than 1. The offset term is related to the difference between the Median term (mid) and the mean term (mean).
While the above process is described with regards to a direct injection engine control system, it is understood that the process can be applied by alternate controllers to determine an accurate solenoid opening time for any similar system and is not limited to fuel injection timing controls.
It is further understood that any of the above described concepts can be used alone or in combination with any or all of the other above described concepts. Although an embodiment of this invention has been disclosed, a worker of ordinary skill in this art would recognize that certain modifications would come within the scope of this invention. For that reason, the following claims should be studied to determine the true scope and content of this invention.
This application claims the benefit of U.S. Provisional Application No. 61/896,710 filed on Oct. 29, 2013.
Number | Name | Date | Kind |
---|---|---|---|
4140084 | Di Nunzio | Feb 1979 | A |
5535621 | Glidewell et al. | Jul 1996 | A |
5941209 | Hashimoto | Aug 1999 | A |
5988143 | Dietz et al. | Nov 1999 | A |
6115727 | Schooler et al. | Sep 2000 | A |
7152594 | Anilovich et al. | Dec 2006 | B2 |
7677086 | Albertson et al. | Mar 2010 | B2 |
7802563 | Behr et al. | Sep 2010 | B2 |
8880276 | Qiao et al. | Nov 2014 | B2 |
20050066940 | Sheikh et al. | Mar 2005 | A1 |
20070277777 | Barnes et al. | Dec 2007 | A1 |
20110170224 | Gietler et al. | Jul 2011 | A1 |
20120296551 | Kabasin | Nov 2012 | A1 |
20130180323 | Peucat et al. | Jul 2013 | A1 |
20140190453 | Qiao et al. | Jul 2014 | A1 |
20150113950 | Qiao et al. | Apr 2015 | A1 |
20150128568 | Barbier et al. | May 2015 | A1 |
Number | Date | Country |
---|---|---|
3611220 | Jan 1987 | DE |
19730594 | Aug 1999 | DE |
4308811 | Aug 2004 | DE |
102011078161 | Sep 2012 | DE |
0878617 | May 2003 | EP |
2060763 | May 2009 | EP |
2060763 | May 2009 | EP |
2585692 | Apr 2014 | EP |
62599 | Jan 1994 | JP |
10501597 | Feb 1998 | JP |
2001221121 | Aug 2001 | JP |
2003262149 | Sep 2003 | JP |
2005061583 | Mar 2005 | JP |
2007173158 | Jul 2007 | JP |
2009121482 | Jun 2009 | JP |
2010532448 | Oct 2010 | JP |
201420287 | Feb 2014 | JP |
201431731 | Feb 2014 | JP |
2014163475 | Sep 2014 | JP |
1019990020511 | Jan 2001 | KR |
2013191267 | Dec 2013 | WO |
Entry |
---|
European Patent Office Search Report dated Nov. 4, 2015, EP 14 18 9880. |
Korean Intellectual Property Office Office Action dated Oct. 22, 2015. 10-2014-0147662. |
U.S. Appl. No. 14/323,373, Continental Automotive Systems, Inc. |
U.S. Appl. No. 14/689,367, Continental Automotive Systems, Inc. |
English Translation of Japanese Office Action dated Feb. 1, 2016, JP 2014-220386. |
Number | Date | Country | |
---|---|---|---|
20150114099 A1 | Apr 2015 | US |
Number | Date | Country | |
---|---|---|---|
61896710 | Oct 2013 | US |