Knock control system for internal combustion engine

Abstract: A knock control system for the internal combustion engine is disclosed in which a knock intensity value V is detected from a signal produced by a knock sensor (10), a cumulative percentage point V P of distri­ bution of a substantially logarithmic conversion value of the knock intensity value V is detected, a value S corre­ sponding to the standard deviation of the substantially logarithmic conversion value is detected, and a knock decision level V KD is prepared on the basis of V P and S, thereby controlling knock control factors such as ignition timing and air-fuel ratio. The control system further comprises a device for deciding whether a predetermined period has passed after the engine enters specified operating conditions, a device for averaging knock intensity values, and an update quantity setting device for increasing the unit quantity of updating the averaging device and/or the cumulative percentage point detection device only while the predetermined period has not passed.

Description: The present invention relates to what is called a knock control system (KCS) for detecting a knocking generated in an internal combustion engine and controlling knock control factors such as ignition timing and air-fuel ratio. Generally, a knock decision (discrimination) level V KD is prepared by multiplying an average value V mean of knock sensor signals by a constant K. Such a knock control system poses the problem that the optimum value of the constant K changes dependently on differences of sensors involved in manufacture of them or with lapse of time, thereby making impossible accurate knock detection. In order to solve this problem, a system has been invented for correcting a knock decision level automatically on the basis of the form in which the knock sensor signal is distributed. The U.S. Patent Specification No. 4,617,895 and JP-A-62-267574 each discloses such a system. Even such a system, however, has the problem that the knock decision is made improperly before the decision level is corrected. The present inventors have studied the reason why accurate knock detection is impossible by the conventional systems of decision level preparation. According to U.S. Patent specificaton No. 4,617,895, signals generated by a knock sensor coupled to an internal combustion engine and representing a knock intensity value V, i.e. an effective quantity signal such as a maximum peak value within a predetermined section of the knock sensor signal, can be arranged in a frequency distribution pattern with respect to their maximum peak values. Such a frequency distribution pattern of maximum peak values can be developped into logarithmic transformation values LOG(V) thereof with respect to the transformation ratio u=(x-µ)/σ (where x=LOG(V) , µ= x , representing the average of LOG(V), and σ=σ(x) , representing the standard deviation of LOG(V)) for normalization derived from the normal distribution table. A resulting distribution of logarithmic transformation values LOG (V) can be approximated as a straight line in case the frequency distribution pattern is of substantially normal distribution. Fig. 1 shows a corresponding distribution of the knock intensity value V in the total absence of knock printed on logarithmic-normal probability paper, wherein the knock intensity value V is plotted along the abscissa in logarithmic scale versus the probability percentage value in the absence of knocking as the ordinate parameter. In the Figure, characters (a) and (b) represent assumed distributions with small and large standard deviations (which may be replaced by the variances) of log(V) respectively. The standard deviation of log(V) is naturally subject to changes with differences of sensors involved in manufacture or with lapse of time. The standard deviation of log(V) is referred to because the standard deviation of the knock intensity value V is substantially meaningless among those assuming a logarithmic-normal distribution. This is also the case with the average value V mean and the median value V M . These two values are completely different and coincide with each other only in normal distribution. The value V M is more significant for a knock sensor signal in a logarithmic-normal distribution. In the description that follows herein, therefore, a knock decision level will be prepared on the basis of the more significant value V M . If a decision level is prepared as V KD = K x V M (K = 2), for example, the probability of knock decision for (a) is 1% while the figure is 10% for (b). As a result, in an engine having a distribution like (a), knock decision is rarely made in the absence of a knock, and therefore the ignition timing is controlled substantially to the largest advance angle in a system in which the ignition timing is controlled by detecting presence or absence of a knock. For an engine having a distribution like (b), however, its false knock decision cannot be ignored as the ignition timing would be delayed leading to a torque loss even when no knocking has occurred. Apart from the foregoing cases in which no knocking occurs, the inconvenience is that a knocking, if occurred, may not be decided as so. In a system of decision level preparation using V KD = K x V M or V KD = K x V mean , therefore, accurate knock detection is impossible for different standard deviations of log(V). Specifically, such a system only can meet the situation in which the magnitude alone of the knock sensor signal undergoes a change and does not take the standard deviation of log(V) into consideration. Moreover, from document JP-A-62-267574, a technique of stabilizing increases of retard angles of ignition timings caused under generation of knocking is known, which cyclically effects a knock decision step in an average cycle of once per second, thereby decreasing a parameter value A, which is representative of a standard deviation, by subtracting therefrom a predetermined amount cyclically in accordance with said average cycle, and increasing said parameter value A by adding thereto said predetermined amount every time it is detected that a knock intensity value V is smaller than or equal to the relation of a knock intensity corresponding to a cumulative 50% point and said parameter value A, resulting in updating said parameter value A to a value closer to the standard deviation. The technique suggested in document JP-A-62-267574 is thus capable of meeting and absorbing the change in the variance of the log(V) distribution, since the knock decision level is determined by the parameter value A, which changes in accordance with the variance of the log(V) distribution, and the knock intensity corresponding to said cumulative 50% point according to the expression V KD = A x V M x D (D: constant). However, since the frequency at which the value A is updated is almost the same as that for knock decision, the rate of updating is low, resulting in that it takes a long time before a knock decision level is corrected to an optimum value. SUMMARY OF THE INVENTION Therefore, it is the object of the present invention to obviate these problems and to provide a knock control system being capable of detecting the occurrence of knocking in an internal combustion engine fast and accurately. According to the present invention, this object is accomplished by means of the features recited in claim 1. In operation, the predetermined knock intensity value V p , which corresponds to a cumulative percentage point, of the distribution of the substantially logarithmic conversion value of the knock intensity value V determined by the knock intensity value determining means is determined by the determining means for determining a predetermined knock intensity value, and a value S corresponding to the standard deviation of the substantially logarithmic conversion value of the knock intensity value V is determined by the standard deviation determining means. Then a knock decision level is prepared on the basis of the predetermined knock intensity value V P and the value S logarithmically related to the standard deviation. This knock decision level is compared with a knock intensity value at the knock decision means thereby to decide whether a knocking has occurred or not. According to an embodiment of the invention, the knock decision level V KD is preferably prepared as S n x V P and updated in such a manner that the predetermined knock intensity value V P is a cumulative 50% point V M and the probability of attaining the relations V M /S ≦ V ≦ V M for a standard deviation is one third. According to another embodiment of the invention, the knock decision level V KD should better be prepared in the form of S³ x V M . According to a further embodiment of the invention, means is provided for correcting, by a predetermined constant, the knock decision level prepared on the basis of the value S corresponding to the standard deviation and the cumulative 50% point V M . BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a diagram showing a distribution characteristic plotted on the logarithmic-normal probability paper of a knock intensity value V. Fig. 2 is a block diagram showing an embodiment of the present invention. Figs. 3, 4 and 6 are flowcharts for explaining the system shown in Fig. 3. Figs. 5 and 8A to 8C are diagrams showing distribution characteristics of the knock intensity value V. Fig. 7 is a flowchart for explaining the operation of a modification of the system according to the present invention. Fig. 9 is a flowchart showing details of the decision routine in Figs. 4 and 6. DESCRIPTION OF THE PREFERRED EMBODIMENTS A system according to the present invention is schematically shown in Fig. 2. Reference numeral 10 designates a knock sensor for detecting a knock generated in an engine, numeral 20 a filter for extracting a knock-related component from a signal of the knock sensor, numeral 30 an amplifier for amplifying the signal after being passed through the filter, numeral 40 a peak hold circuit, numeral 50 a multiplexer for selecting an input signal to an A/D converter, numeral 60 an A/D converter for converting an analog signal into a digital signal, numeral 70 a microcomputer for computing an ignition timing, amount of fuel injection, etc. on the basis of the information obtained from various sensors including the knock sensor, numeral 80 an ignitor, injector or the like for realizing the result of computation. Numeral 90 designates various sensors such as a crank angle sensor, intake air amount sensor or water temperature sensor, and character AO a signal processing circuit for processing signals produced from the sensors. A flowchart for preparing a knock decision level V KD and making a knock decision is shown in Fig. 3. This routine starts with step S00, followed by step S01 for detecting a knock intensity value V. The knock intensity value V is, for example, a peak hold value of a knock sensor signal within a predetermined crank angle. Step S02 makes a knock decision. If V ≧ V KD , it is decided that there occurs a knock. In accordance with the result of this decision, the ignition timing or the like is controlled in a control region (such as a heavy load region). Step S03 decides whether the engine operating conditions meet specific conditions which are defined by any one or combination of the following conditions: (1) The engine load exceeds a predetermined value ; (2) The engine speed is within a predetermined range; (3) The change rate of engine load is less than a predetermined value; (4) The value V M is within a predetermined range. If the answer at step S03 is "Yes", the process proceeds to step S04, while if the answer is "No", the process is passed to step S05. S04 updates the value S corresponding to the standard deviation of the log(V) distribution (as described in detail later). Step S05 updates the central value V M of the V distribution (as described in detail later). Step S06 prepares a knock decision level V KD from the equation shown below. V KD = S³ x V M A detailed flowchart of step S04 is shown in Fig. 4. This routine starts with step S04. Step S04A tests to determine whether a counter CDLY (described in detail later) for deciding on a predetermined period is set to zero, and if the answer is "Yes", the process proceeds to step S041, while if the answer is "No", the process is passed to step S048 to end the routine. Step S041 decides whether V ≧ V M . If the answer is "Yes", the process proceeds to step S042, and if the answer is "No", to step S044. Step S042 decides whether S x V ≧ V M , and if the answer is "Yes", the process proceeds to step S043, while if the answer is "No", the process is passed to step S044. Step S043 reduces the value S by ΔS. Step S044 counts up an S-updating counter C S by one. Step S045 decides whether C S ≧ 3, and if the answer is "Yes", the process proceeds to step S046, and if the answer is "No", to step S048. Step S046 clears the counter C S . Step S047 increases the value S by ΔS. Step S048 ends the routine. The reason why S takes a value corresponding to the standard deviation of the log(V) distribution in the process shown in Fig. 4 will be explained with reference to Fig. 5. Assume that the central value x M of the distribution of x = log(V) is x M = log(V M ) , and the point -σ is given as x -σ = log(V M ) - σ x (σ x : standard deviation of the distribution of x). The integration of the probability of the hatched portion in the drawing is given as This indicates that the probability of being x -σ ≦ x ≦ x M is 0.34. According to the process shown in Fig. 4, on the other hand, the value S is corrected in such a manner that the probability of being V M /S ≦ V ≦ V M is one third (about 33%). Specifically, the expectation of the amount of change in S per cycle is given as S is thus converged to a value satisfying the condition associated with K S = 0. The relations below thus hold. σ x ≒ log(S) If V KD is prepared as S³ x V M by use of this value S, V KD is set to the point 3 σ in the log(V) distribution (3 x σ on the logarithmic axis is equivalent to S³ on the real number axis). Now, the process of step S05 will be explained in detail with reference to Fig. 6. An updating routine starts with step S21, and step S22 tests whether V is larger than V M . If the answer at this step is "Yes", the process proceeds to step S23 for storing (V - V M ) in a RAM called DV. Step S24 tests whether CDLY is zero, and if the answer is "Yes", the process proceeds to step S25, while if the answer is negative, the process is passed to step S26. Step S25 increases the value V M by DV M /8. Step S26, on the other hand, increases the V M by DV M /4. If the answer is "No" at step S22, the process proceeds to step S27, where it is tested whether V is smaller than V M , and if the answer is "Yes", the process proceeds to step S28, while if the answer is "No", step S2D is followed. Step S28 stores (V M - V) in DV. Step S29 tests to determine whether CDLY is zero, and if the answer is "Yes", the process is passed to step S2A, while if the answer is negative, the process is passed to step S2B. Step S2A reduces V M by DV M /8, while step S2B decreases V M by DV M /4. Step S2C stores the data in DV in DV M . Step S2D ends this routine. In the foregoing description, the values S and V M are updated by cylinder. According to this embodiment, the knock decision level V KD can be set at the point +3 σ in the log(V) distribution, and therefore even under a great change in V variance, a knock is decided erroneously only with a probability which is always as low as and is negligible. Instead of setting V KD to a value corresponding to the point 3 σ in the log(V) distribution as in this embodiment, it may be changed between for example the point 3.5 σ and 2.5 σ as required. In such a case, the computation of S n which is somewhat inconvenient may be accomplished by a method in which the results of computation of S n (1.0 to 4.1 for n = 3.5) against the value S corresponding to the standard deviation in a given range (say, 1.0 to 1.5) are written in the ROM in advance and obtained by table search. This method is very effective in the case where the microcomputer requires a long time in multiplication process if the value of n is integral. The S-updating counter which is set to 3 according to the present embodiment to correspond to the standard deviation of the log(V) distribution may alternatively be set to other values. If C S = 4, for example, S is updated in such a manner that which is equivalent to a quantity corresponding to 0.67 σ x ( 0.67 σ x = log(S) ) from the normal distribution table. As a result, if it is possible to set a knock decision level at point 3 σ. Also, the central value V M , which is used to prepare V KD according to the embodiment under consideration, may be replaced with other value of a cumulative percentage point. If the cumulative 16% point is V₁₆, for instance, it is possible to set to point 3 σ for V KD = S⁴ x V₁₆ . Further, in order to change the knock control level in accordance with the engine conditions or cylinders, the decision level may be corrected by use of a constant. For example, use V KD = S³ x C x V M (C: A constant set in accordance with the engine conditions or cylinder). It is also effective to limit the value S within a predetermined range as required. It is also effective to limit the knock decision level within a predetermined range as required. The logarithmic conversion of V, which is not applied to the present invention according to the embodiment under consideration, may be used for the present invention with equal effect. In such a case, the only difference is to use a different equation like (V M + 3 x S) for point 3 σ. The present invention may also be combined with the technique disclosed in U.S. Patent No. 4,617,895 effectively. An example of such a combination will be explained with reference to the flowchart of Fig. 7. This shows a process replacing the step S06 in Fig. 3 and other steps may be the same as mentioned above. The main routine starts at step S0700, and step S071 computes the variable A as S³ + D. Step S072 decides whether the engine operating conditions or a knock sensor signal has satisfied specified conditions, and if the answer is "Yes", the process proceeds to step S074, while if the answer is "No", the process is passed to step S078. The specified conditions are for example, that: (i) The engine load exceeds a predetermined value; (ii) The engine speed is within a predetermined range; (iii) The rate at which the engine speed changes is lower than a predetermined value; (iv) The value V M is within a predetermined range. Step S074 decides whether V ≦ V M /A , and if the answer is "Yes", the process proceeds to step S075, while if the answer is negative, the process is passed to step S076. Step 075 increases D by ΔD. Step S076 decides whether V ≦ V KD , and if the answer is affirmative, the process is passed to step S077, while the process proceeds to step S078 otherwise. Step 077 reduces D by 2 x ΔD. Step S078 ends the main routine. The value D is not necessarily positive but may be negative. As described above with reference to an embodiment, the present invention has effects as mentioned below. (1) In view of the fact that a knock decision level is prepared on the basis of the value S corresponding to the standard deviation of the log(V) distribution, an accurate knock decision is made possible against a change in V variance due to the variations in engine or knock sensor. (2) The value S may be updated more frequently (once for every three cycles as in the embodiment under consideration), and therefore a decision level may be corrected to a proper value quickly. (3) By conceiving an appropriate method of updating S, the value S works to correct any deviation of V M from a correct value which may occur e.g. during a transient period, thus permitting accurate knock detection under transient conditions. Although the present invention is an improvement of the techniques disclosed in U.S. Patent No. 4,617,895 and JP-A-62-267574, the features (2) and (3) mentioned above are specific to the present invention and not found in the above references. The effect (3) will in particular be explained additionally by use of Figs. 8A to 8C. When dV/dt is larger than zero as under acceleration, V M becomes somewhat smaller than the true value as shown in Fig. 8B. (Under steady condition, the value V M coincides with the true value as shown in Fig. 8A) If V M is at a cumulative 40% point, for example, (V₅₀: true value of median value), and therefore if is to be satisfied, S is corrected so that that is, V M /S is converted to the cumulative 7% point. The cumulative 40% point and 7% point correspond to -0.25 σ and -1.47 point, respectively (as determined from the normal distribution table). Therefore, S is finally corrected to a quantity corresponding to +0.25 + 0.61 = 0.86 σ, and thus assumes a value smaller than the true value, thereby correcting the deviation of V M from the true value. Now, a specified period decision routine by a counter CDLY used in the flowcharts of Figs. 4 and 6 will be explained in detail with reference to Fig. 9. This routine starts with step S011. Step S013 decides whether the engine is under specified conditions including any one or combination of the following: (1) The engine is in high load region. (2) The change in engine speed exceeds a predetermined value. (3) The engine speed is within a predetermined range. If step S013 decides that the specified conditions are met, the process proceeds to step S014, while if the answer at step S017 is negative, the process is passed to step S017. Step 014 tests whether the specified condition flag is "1", and if the answer is "Yes", the process is passed to step S016, while if the answer is "No", the process proceeds to step S015. Step S015 sets a counter CDLY for deciding on a predetermined period to a predetermined value C₁. Step S016 sets a specified condition flag. Step S017 clears the counter CDLY. Step S018 resets the specified condition flag. Step S019 decrements the counter CDLY by one count. Step S01A tests whether CDLY is negative or not, and if the answer is "Yes", the process proceeds to step S01B, while if the answer is "No", the process is passed to step S01C. Step S01B guards the counter CDLY to zero. This routine ends at step S01C. In this way, the counter CDLY is kept at a count other than zero for a predetermined period from the time when the specified conditions are established.

Claims: A knock control system for an internal combustion engine, comprising a knock sensor (10) for detecting a knocking of the internal combustion engine and for generating a knock detection signal, knock intensity value determining means (S01) for determining a knock intensity value (V) effective for knock detection on the basis of said knock detection signal generated by the knock sensor within a predetermined crank angle, knock decision means (S02) for deciding on the presence or absence of a knocking by comparing the detected knock intensity value (V) with a knock decision level (V KD ), knock control means (80) for controlling knock control factors in response to a result of decision from the comparison, determining means (S05) for determining a predetermined knock intensity value (V p ) corresponding to a predetermined accumulation point of a distribution of logarithmically converted determined knock intensity values (V), standard deviation determining means (S04) for determining within a standard deviation determination cycle a value (S) logarithmically related to the standard deviation of said distribution of said logarithmically converted knock intensity values (V), and knock decision level generation means (S06) for generating and for updating said knock decision level (V KD ) on the basis of said predetermined knock intensity value (V p ) and said value (S) logarithmically related to said standard deviation, said knock control system being characterized in that said standard deviation determining means (S04) includes means (S043, S047) for changing said value (S) logarithmically related to said standard deviation by a predetermined value (ΔS), wherein said changing is carried out in substantial accordance with the cycles of determination of said knock intensity value at intervals corresponding to a number of said cycles determined on the basis of said knock intensity value (V), said predetermined knock intensity value (V p ) and specified engine conditions. A knock control system according to claim 1, characterized in that said changing of said value (S) is performed at every determination of said knock intensity value. A knock control system according to claim 1 or 2, characterized in that said knock decision level generation means (S06) generates said knock decision level (V KD ) in accordance with the equation S n x V p (n: constant). A knock control system according to claim 1 or 2, characterized in that said predetermined knock intensity value is a central 50% probability value (V M ) of said substantially logarithmic knock intensity distribution. A knock control system according to claim 4, characterized in that said standard deviation determining means updates said value (S) logarithmically related to said standard deviation so as to make the probability of attaining the relationship V M /S ≦ V ≦ V M one third. A knock control system according to claim 4, characterized in that said knock decision level generating means generates a knock decision level V KD in the form of S³xV M . A knock control system according to claim 4, characterized by further comprising correction means (S074 to S077) for correcting the knock decision level V KD generated on the basis of said 50% probability value (V M ) and said value (S) logarithmically related to said standard deviation by a predetermined constant. A knock control system according to claim 1 or 2, characterized by further comprising engine condition detecting means (S013) for detecting that the engine enters said specified conditions, period decision means (S014 to S016, S019, S01A, S01B, S24, S29) for deciding whether a predetermined period has passed after detection of said specified conditions by said engine condition detecting means (S013), update quantity setting means (S25, S26, S2A, S2B) for setting a quantity used for updating said predetermined accumulation point depending on the result of decision obtained from said period decision means, update quantity increasing means (S26, S2B) for increasing said quantity used for updating said predetermined accumulation point only while said period decision means decides that said predetermined period has not passed, and updating means (S2C) for updating said predetermined accumulation point. A knock control system according to claim 8, characterized in that said engine condition detecting means (S013) detects that the engine is under acceleration as one of said specified conditions. A knock control system according to claim 8, characterized in that said engine condition detecting means (S013) detects as said specified conditions at least one of the conditions that the internal combustion engine is in a heavy load region, that the change in engine speed is more than a predetermined value, and that the engine speed is within a predetermined range.

Inventors: HIRATA YOSHIHIKO, SAKAKIBARA KOJI, HIRATA, YOSHIHIKO, SAKAKIBARA, KOJI
Applicants: NIPPON DENSO CO, NIPPONDENSO CO., LTD.
Application year: 1989
Main classification: F02P5
IPC codes: G01L23, F02P5