Engine combustion torque estimation method
By acquiring the running time and speed-torque difference of the engine crankshaft flywheel teeth, and then filtering and evaluating the engine combustion torque, the problem of accuracy in identifying abnormal engine combustion is solved, and timely protection is achieved.
Patent Information
- Application Number
- CN202411232761.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-04
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2044-09-04
AI Technical Summary
Existing technologies cannot effectively identify whether an engine is burning abnormally, especially when the air-fuel mixture cannot burn, leading to inaccurate estimates of combustion torque.
By acquiring the running time of each tooth of the engine crankshaft flywheel, and combining the initial crankshaft angle and tooth length obtained from calibration to determine the evaluation window, after filtering, the engine speed and torque difference are estimated, the total torque change is calculated, and a reasonable threshold is set to judge whether the engine combustion torque is abnormal.
It improves the accuracy of engine combustion torque estimation, enabling timely identification of combustion anomalies and protection of the engine, while reducing misjudgments.
Smart Images

Figure CN119122691B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of engine control, in particular to an engine combustion torque estimation method. BACKGROUND
[0002] Engine combustion generates torque, but if the engine abnormally combusts, especially if there is no ignition, the mixture is too lean or too rich, the compression stroke pressure is low or other reasons, causing the mixture to be unable to combust. Therefore, it is necessary to estimate the engine combustion torque to identify whether the engine is combusting normally. SUMMARY
[0003] The technical problem to be solved by the present application is to provide an engine combustion torque estimation method to solve the problems of the prior art, which can estimate the engine combustion torque to identify whether the engine is combusting normally.
[0004] To achieve the above-mentioned purpose, according to one aspect of the present application, an engine combustion torque estimation method is provided, comprising:
[0005] When the engine combustion torque estimation method enabling condition is met, the running time of each tooth of the engine crankshaft flywheel disc is obtained;
[0006] The evaluation window for estimating the engine combustion torque is determined according to the starting crank angle and the tooth length obtained through calibration, and the running time array of each tooth in the evaluation window is obtained in combination with the running time of each tooth;
[0007] The running time array of each tooth is filtered, and a filtered running time array of each tooth is outputted;
[0008] The engine speed is estimated based on the filtered running time array of each tooth, and an engine speed array is obtained;
[0009] The torque difference initial value of each tooth is estimated based on the engine speed during the running process of each tooth, and a torque difference initial value array is obtained;
[0010] The torque difference initial value array of each tooth is filtered, and a filtered torque difference array of each tooth is outputted;
[0011] The total torque change amount in the evaluation window is calculated based on the filtered torque difference array of each tooth;
[0012] Whether the engine combustion torque is abnormal is judged according to the total torque change amount.
[0013] In the above-mentioned scheme, the engine combustion torque estimation method enabling condition comprises:
[0014] (1) Entering the misfire diagnosis area specified in the regulations;
[0015] (2) no request for oil cut-off;
[0016] (3) no change in gear position;
[0017] (4) clutch is in full engagement;
[0018] (5) no uneven road surface;
[0019] (6) water temperature is within a preset range;
[0020] (7) throttle opening fluctuation is small during diagnosis;
[0021] (8) engine is in operation.
[0022] In the above scheme, the no change in gear position means that the engine cylinder fuel injection condition detection method is activated after a delay of more than a preset time of gear position change after the gear position changes; the clutch is in full engagement means that the engine cylinder fuel injection condition detection method is activated after a delay of more than a preset time of clutch after the clutch is engaged; the throttle opening fluctuation is small during diagnosis means that the maximum opening and minimum opening of the throttle valve within a preset time of the throttle valve are less than a preset opening difference of the throttle valve.
[0023] In the above scheme, the method for obtaining the running time of each tooth of the engine crankshaft flywheel disc is:
[0024] The flywheel disc has 58 teeth plus two consecutive missing teeth, and the running time t of each tooth ToothTimes is the time experienced from the current tooth to the next tooth during engine flywheel operation, i.e., the time experienced between the rising edge of the current tooth and the rising edge of the next tooth; wherein the running time of the first tooth before the missing tooth and the running time of the two missing teeth are the average of the running time of the tooth before the missing tooth and the running time of the first tooth after the second missing tooth, because there are two missing teeth, if the running time of each missing tooth is assumed to be 0, the running time of the total of 3 teeth (the first tooth before the missing tooth, the two missing teeth) will be 0, but the tooth running time is an important parameter that will cause misjudgment of the engine combustion torque estimation result, therefore optimization is needed.
[0025] In the above scheme, the method for obtaining the starting crank angle phi Start and the tooth length Cnt ToothArrayLen through calibration is: phi Start = f1(n, rho) + b CatHeat x f2(n, rho), wherein b Catheat is 1 when the catalyst light-off control is activated, otherwise b Catheat= 0; consider catalytic converter light-off to starting crank angle phi Start The reason is that the engine ignition angle efficiency is too low during the catalytic converter light-off process, thereby causing the engine combustion torque to be too small, and the evaluation window needs to be increased to evaluate whether the engine combustion is normal or not;
[0026] f1(n, rho) and f2(n, rho) are determined by the engine speed and the fresh air density entering the cylinder, and the specific parameters are obtained by calibration on the engine test bench. The specific calibration method is that the absolute value of the average of the ratio of the difference between the combustion torques when the engine combustion torque is normal and abnormal to the combustion torque when it is normal exceeds 20% in several tests within the evaluation window, and the engine IMEP reaches the maximum value during normal engine combustion. If the absolute value of the average of the ratio of the difference between the combustion torques when the engine combustion torque is normal and abnormal to the combustion torque when it is normal does not exceed 20%, then adjust the calibration appropriately to see if it can exceed 20%. If not, do not adjust these calibrations anymore, and improve by optimizing the combustion torque estimation method; after the catalytic converter light-off is completed, f1(n, rho) and Cnt ToothArrayLen1 are calibrated, and then f2(n, rho) and Cnt ToothArrayLen2 are calibrated during the catalytic converter light-off process; the specific calibration method is that the evaluation window and the torque estimation method described later can achieve the most obvious difference between normal and abnormal engine combustion torques, including if the engine IMEP reaches the maximum value during normal engine combustion. If it is not obvious, adjust the calibration appropriately to see if it can optimize the difference. If it cannot, do not adjust these calibrations anymore, and improve by optimizing the combustion torque estimation method;
[0027] When the catalytic converter is not in the light-off condition or the light-off condition is completed, the tooth length Cnt ToothArrayLen = Cnt ToothArrayLen1 ; when the catalytic converter is in the light-off condition, the tooth length Cnt ToothArrayLen = Cnt ToothArrayLen2 ;
[0028] The evaluation window for estimating the engine combustion torque is the operation range of the first tooth to the subsequent continuous tooth length Cnt Start after the starting crank angle phi ToothArrayLen ;
[0029] The operation time of the first tooth to the subsequent continuous tooth length Cnt ToothArrayLen + 4 teeth after the starting crank angle phi Start is represented by the array t ToothTimes [0, 1, 2, …, Cnt ToothArrayLen + 3], where the operation time array t ToothTimes[0, 1, 2,..., Cnt ToothArrayLen +3] is the running time of the first tooth, and the Cnt ToothArrayLen +3th position in [0, 1, 2,..., Cnt ToothArrayLen +4 is the running time of the Cnt
[0030] In the above scheme, the method for filtering the running time array of each tooth and outputting a filtered running time array of each tooth is:
[0031] The filtering time initial value t ToothTimesFilterRaw [N] = r1xt ToothTimes [N] + r2xt ToothTimes [N-1] + r2xt ToothTimes [N-2]; wherein N is the running time array t ToothTimes [0, 1, 2,..., Cnt ToothArrayLen +3] is the Nth index, and when N = 0 or 1, t ToothTimesFilterRaw [0] = t ToothTimes [0], t ToothTimesFilterRaw [1] = t ToothTimes [0], wherein r1, r2, and r3 add up to 1;
[0032] After determining the filtering time initial value t ToothArrayLen [0, 1, 2,..., Cnt ToothTimesFilter +3] = t ToothTimesFilterRaw [N+2], the final filtered running time of each tooth forms a filtered running time array t ToothTimesFilter [0, 1, 2,..., Cnt ToothArrayLen +1] of each tooth.
[0033] Filtering the running time of each tooth mainly considers the design deviation of the flywheel disc teeth and the accuracy of the crankshaft position sensor, which causes the running time of each tooth to have more burr signals. After filtering, the engine combustion torque estimation is performed, thereby improving the accuracy of the combustion torque estimation. At the same time, after the filtering algorithm, only the running time of the excess 2 teeth outside the evaluation window needs to be calculated.
[0034] In the above scheme, the method for obtaining the engine speed array is:
[0035] The engine speed wherein C1 is a preset value;
[0036] The engine speed during the running process of each tooth forms the engine speed array n EstRpm [0, 1, 2,..., Cnt ToothArrayLen +1].
[0037] In the above scheme, the method for obtaining the initial value array of torque differences is as follows:
[0038] Initial value M of torque difference between each tooth EstTrqErrRaw [N] = C2 × [(n EstRpm [N]) 2 -(n EstRpm [N-1]) 2 ], where C2 is the preset value;
[0039] The initial torque difference values of each tooth constitute the initial torque difference value array M. EstTrqErrRaw [0,1,2,...,Cnt ToothArrayLen +1].
[0040] In the above scheme, the method for filtering the initial value array of torque differences for each tooth and outputting the filtered torque difference array for each tooth is as follows:
[0041] The initial value M of the filter is used to calculate the initial value of the torque difference for each tooth. EstTrqErrFilter [N] = r1 × M EstTrqErrRaw [N]+r2×M EstTrqErrRaw [N-1]+r2×M EstTrqErrRaw [N-2]; where N is the runtime array t ToothTimes [0,1,2,...,Cnt ToothArrayLen The Nth index in [+3], and when N = 0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0], M EstTrqErrFilter [1] = M EstTrqErrRaw [0], where r1, r2, and r3 add up to 1;
[0042] Given N = 0, 1, 2, ..., Cnt ToothArrayLen After the initial filtering time of +3, the final filtered torque difference M EstTrqErr [N] = M EstTrqErrFilter [N+2], the final filtered torque difference of each tooth constitutes the filtered torque difference array M of each tooth. EstTrqErr [0,1,2,...,Cnt ToothArrayLen -1]. The reason for filtering the initial value array of torque differences for each tooth and outputting the filtered torque difference array for each tooth is to remove torque signal glitches, thereby improving the accuracy of combustion torque estimation.
[0043] In the above scheme, the method for calculating the total torque change within the evaluation window is as follows:
[0044] The filtering runtime array M for each tooth EstTrqErr [0,1,2,...,CntToothArrayLen all non-negative numbers and all negative numbers in the step 1) are added separately, and then the two sums are added to obtain the total torque change M TrqDetectDelta The purpose of this is to ensure the accuracy of the accumulation algorithm. If the integer and the negative number are added, some data accuracy will be lost in the code operation process, resulting in accuracy deviation of the calculation result.
[0045] In the above scheme, the method for judging whether the engine combustion torque is abnormal according to the total torque change is:
[0046] The total torque change M TrqDetectDelta is filtered to obtain a filtered total torque change M TrqSumMeanNew =(1-r TrqWeightMean )×M TrqSumMean (z)+r TrqWeightMean ×M TrqDetectDelta ; wherein M TrqSumMean (z) is the filtered total torque change of the previous sampling period, and the first default value is 0, and the sampling period is 180° of the crank angle, that is, sampling calculation is performed again after the crank is rotated by 180° from the starting crank angle phi Start ; r TrqWeightMean is a total torque change filtering coefficient, which is a preset value.
[0047] The initial value S TrqDetectRaw of the torque feature value for evaluating whether the combustion torque is abnormal is calculated: S TrqDetectRaw =(1-r TrqWeightVar )×S TrqDetectRaw (z)+r TrqWeightVar ×(M TrqDetectDelta -M TrqSumMeanNew ) 2 ; wherein S TrqDetectRaw (z) is the initial value of the torque feature value of the previous sampling period, and the first default value is 0; wherein r TrqWeightVar is a torque feature value filtering coefficient, and the calculation method is: r TrqWeightVar =(1-k TrqWeightVar )×r TrqWeightVar (z)+k TrqWeightVar ×(r TrqWeightGain ×b TrqDetectErr (z)+r TrqWeightInc ); wherein r TrqWeightVar (z) is the torque feature value filtering coefficient of the previous sampling period, and the first default value is 0.15; k TrqWeightVar is an update coefficient, which is a preset value; r TrqWeightGain is a gain coefficient, which is a preset value; r TrqWeightInc is an accumulation coefficient, which is a preset value; bTrqDetectErr (z) is a flag indicating whether the engine combustion torque is abnormal in the last sampling period, and b TrqDetectErr (z) takes 1 if it is abnormal, and b TrqDetectErr (z) takes 0 if it is not abnormal;
[0048] The initial value S TrqDetectRaw of the torque characteristic value is filtered to obtain a filtered torque characteristic value S TrqDetect : S TrqDetect = (1-r TrqWeightVarFilt ) x S TrqDetect (z) + r TrqWeightVar x S TrqDetectRaw ; wherein S TrqDetect (z) is the initial value of the torque characteristic value in the last sampling period, and its first default value is 0; r TrqWeightVarFilt is a filter coefficient of the filtered torque characteristic value, and is a preset value;
[0049] A lower limit value M TrqBoundLower of the combustion torque abnormality determination is determined: wherein k BunndLower is a lower limit value deviation coefficient, and is a preset value;
[0050] A torque deviation M ErrEst for determining whether the engine combustion torque is abnormal is calculated: M ErrEst = M TrqDetectDelta - M TrqBoundLower ;
[0051] It is determined whether the engine combustion torque is normal: if M ErrEst <M ErrThresh , the value of a flag b TrqDetectErr indicating whether the engine combustion torque is abnormal is set to 1, and the engine combustion torque may be abnormal, otherwise the value of the flag b TrqDetectErr indicating whether the engine combustion torque is abnormal is 0, and the engine combustion torque is not abnormal; wherein the combustion torque deviation limit value M ErrThresh is a preset value;
[0052] It is determined which cylinder of the engine has combustion abnormality: if the value of the flag b TrqDetectErr indicating whether the engine combustion torque is abnormal is set to 1, it is read which cylinder is in the power stroke under the evaluation window, and it is indicated that the corresponding cylinder may have combustion abnormality;
[0053] The number of combustion abnormality occurrences CNT1 of the corresponding cylinder which may have combustion abnormality is continuously accumulated, and the number of combustion abnormality non-occurrences CNT2 is continuously accumulated, and the default values of both are 0; CNT1 and CNT2 are updated at most once after the engine combustion torque estimation method enabling condition is met each time; after the engine combustion torque estimation method enabling condition is not met and then enters the condition of being met again, the update of CNT1 and CNT2 is judged again;
[0054] If it is read that CNT1 is greater than a preset value A, and CNT2 is greater than 0 but less than a preset value B, it is represented that the corresponding cylinder is determined to have combustion abnormality; combustion abnormality fault of the corresponding cylinder is set to occur, and combustion abnormality fault judgment of the corresponding cylinder is not performed in the subsequent vehicle driving cycle until the fault is cleared by the diagnostic instrument, and then the combustion abnormality fault judgment is performed again, and CNT1 and CNT2 are cleared to 0;
[0055] If it is read that CNT1 is greater than 0 but not greater than a preset value A, but CNT2 is 0, and such phenomenon occurs in two consecutive driving cycles, it is represented that the corresponding cylinder is determined to have combustion abnormality; combustion abnormality fault of the corresponding cylinder is set to occur, and combustion abnormality fault judgment of the corresponding cylinder is not performed in the subsequent vehicle driving cycle until the fault is cleared by the diagnostic instrument, and then the combustion abnormality fault judgment is performed again, and CNT1 and CNT2 are cleared to 0;
[0056] If it is read that CNT1 is 0, but CNT2 is not less than a preset value C, it is represented that the corresponding cylinder is determined to have no combustion abnormality; combustion abnormality fault of the corresponding cylinder is set to not occur, and combustion abnormality fault judgment of the corresponding cylinder is not performed in the current driving cycle, and combustion abnormality fault judgment of the corresponding cylinder is still performed in the subsequent vehicle driving cycle, and CNT1 and CNT2 are cleared to 0;
[0057] In other cases, it is represented that the combustion abnormality fault state of the corresponding cylinder is a pending state, whether combustion abnormality occurs cannot be determined, and combustion abnormality fault judgment of the corresponding cylinder is still performed in the current driving cycle, and combustion abnormality fault judgment of the corresponding cylinder is still performed in the subsequent vehicle driving cycle; if the combustion abnormality fault state of the corresponding cylinder is the pending state in a preset number of driving cycles, CNT1 and CNT2 are cleared to 0, otherwise, CNT1 and CNT2 are not cleared to 0.
[0058] The present application provides an engine combustion torque estimation method, which can continuously estimate the running time of each tooth of the engine under the condition that the engine combustion torque estimation method enabling condition is met, select a reasonable evaluation window for combustion judgment, estimate the speed and torque increment, estimate the torque increment in the whole evaluation window, check whether the engine combustion torque is normal by designing a reasonable threshold setting method, and output a flag bit when the engine combustion torque is abnormal, so as to protect the engine in time. BRIEF DESCRIPTION OF DRAWINGS
[0059] Various other advantages and benefits will become apparent to those of ordinary skill in the art upon reading the following detailed description of the preferred embodiments. The accompanying drawings are included to provide a better understanding of the preferred embodiments, and are not intended to be limiting of the application. Moreover, in the drawings, like reference numerals denote similar parts throughout the several views. In the drawings:
[0060] Figure 1 A flowchart of an engine combustion torque estimation method in an embodiment of the application. DETAILED DESCRIPTION
[0061] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely intended to explain the present application and should not be used to limit the present application. In addition, the technical features involved in each embodiment of the present application described below can be combined with each other as long as they do not conflict with each other.
[0062] It should be understood that the size of the serial number of each step in the embodiments does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0063] Embodiment 1
[0064] The present application provides an engine combustion torque estimation method, which can be used to estimate the engine combustion torque, and the engine combustion torque estimation method comprises the following steps: Figure 1 , comprising:
[0065] S1, when the engine combustion torque estimation method enabling condition is met, reading the running time of each tooth of the engine crankshaft flywheel disc.
[0066] Specifically, in the present embodiment, in order to ensure the accuracy and safety of the engine combustion torque estimation method, the engine combustion torque estimation method of the present application needs to be performed under the enabling condition to eliminate the misjudgment of the engine combustion torque estimation, and the sampling period of the enabling condition judgment in the present application is 10 ms, and the enabling condition of the engine fixed cylinder oil circuit injection action judgment method comprises:
[0067] (1) entering the misfire diagnosis area specified in the regulations;
[0068] (2) no oil interruption request;
[0069] (3) the gear position does not change, and the engine continuous oil interruption verification method needs to be activated after a delay of 0.1 s after the gear position changes;
[0070] (4) the clutch is in full engagement, and the clutch needs to be delayed for 1s after being combined to activate the engine continuous fuel cut verification method;
[0071] (5) non-uneven road surface;
[0072] (6) the water temperature is higher than -6℃;
[0073] (7) the throttle opening fluctuation is small during the diagnosis process, and the difference between the maximum and minimum throttle openings within 0.1s is less than 15%;
[0074] (8) the engine is in a running state.
[0075] After the above conditions are met, the engine combustion torque estimation detection can be performed. When the above conditions are not met, the working condition of the vehicle will cause misjudgment. If the enabling condition is not met during the diagnosis process, the diagnosis is terminated, and the engine combustion torque estimation method is executed again after the next diagnosis condition is met.
[0076] Specifically, in the present embodiment, there are 58 teeth on the flywheel disc plus two consecutive missing teeth, and the running time t of each tooth ToothTimes is the time that the engine flywheel needs to experience from the current tooth to the next tooth when the engine flywheel is running, that is, the time that is experienced between the rising edge of the current tooth and the rising edge of the next tooth; wherein the running time of the first tooth before the missing tooth and the running time of the two missing teeth are the average of the running time of the tooth before the three teeth and the running time of the first tooth after the second missing tooth.
[0077] S2, determine the evaluation window for estimating the engine combustion torque according to the starting crank angle and the tooth length obtained through calibration, and obtain the running time array of each tooth in the evaluation window combined with the running time of each tooth.
[0078] Specifically, in the present embodiment, the method for obtaining the starting crank angle phi Start and the tooth length Cnt ToothArrayLen through calibration is: phi Start = f1(n, rho) + b CatHeat x f2(n, rho), wherein b Catheat is 1 when the catalyst light-off control is activated, otherwise b Catheat is 0; the catalyst light-off is considered to affect the starting crank angle phi Start . The reason is that during the catalyst light-off process, the engine ignition angle efficiency is too low, thereby causing the engine combustion torque to be too small, and the evaluation window needs to be increased to evaluate whether the engine combustion is normal or not;
[0079] f1(n, rho) and f2(n, rho) are determined by engine speed and fresh air density entering the cylinder, and specific parameters are calibrated on the engine test bench. In the evaluation window, the absolute value of the average of the ratio of the difference between the combustion torques of the normal and abnormal engine combustion in several tests to the normal combustion torque exceeds 20%, and the engine normal combustion IMEP reaches the maximum value. If the absolute value of the average of the ratio of the difference between the combustion torques of the normal and abnormal engine combustion to the normal combustion torque does not exceed 20%, the calibration is adjusted appropriately to see if it can exceed 20%. If not, the calibration is no longer adjusted, and the combustion torque estimation method is improved by optimization; after the catalytic converter is ignited, f1(n, rho) and Cnt ToothArrayLen are calibrated, and f2(n, rho) and Cnt ToothArrayLen2 are calibrated during the catalytic converter ignition process.
[0080] When the catalytic converter is not ignited or the ignition condition is completed, the tooth length Cnt ToothArrayLen = Cnt ToothArrayLen1 ; when the catalytic converter is ignited, the tooth length Cnt ToothArrayLen = Cnt ToothArrayLen2 .
[0081] The evaluation window for estimating the engine combustion torque is the operation range of the first tooth to the subsequent continuous tooth length Cnt Start after the starting crank angle phi ToothArrayLen .
[0082] The operation time of the first tooth to the subsequent continuous tooth length Cnt Start + 4 teeth after the starting crank angle phi ToothArrayLen is represented by an array t ToothTimes [0, 1, 2, …, Cnt ToothArrayLen + 3], wherein the 0th position of the operation time array t ToothTimes [0, 1, 2, …, Cnt ToothArrayLen + 3] of each tooth is the operation time of the first tooth, and the Cnt ToothArrayLen + 3th position is the operation time of the Cnt ToothArrayLen + 4th tooth.
[0083] S3, filtering the operation time array of each tooth to output the filtered operation time array of each tooth.
[0084] Specifically, in this embodiment, the method for outputting the filtered operation time array of each tooth is:
[0085] The filtered time initial value t ToothTimesFilterRaw [N] = r1 x tToothTimes [N]+r2xt ToothTimes [N-1]+r2xt ToothTimes [N-2]; wherein N is the running time array t ToothTimes [0, 1, 2,..., Cnt ToothArrayLen +3]th index number, and when N=0 or 1, t ToothTimesFilterRaw [0]=t ToothTimes [0], t ToothTimesFilterRaw [1]=t ToothTimes [0], wherein r1, r2, r3 add up to 1, and in this example, r1, r2, r3 take 0.1708, 0.8821, -0.0529 respectively;
[0086] After determining the filter time initial value of N=0, 1, 2,... Cnt ToothArrayLen +3, the final filter running time t ToothTimesFilter [N]=t ToothTimesFilterRaw [N+2], the final filter running time of each tooth constitutes the filter running time array t ToothTimesFilter [0, 1, 2,..., Cnt ToothArrayLen +1].
[0087] S4, based on the engine speed during the running process of each tooth, estimate the torque difference initial value of each tooth, and obtain the torque difference initial value array.
[0088] Specifically, in this embodiment, the method for obtaining the engine speed array is:
[0089] engine speed wherein C1 is a preset value, and in this embodiment, C1=0.000001 min / (r*us);
[0090] The engine speed during the running process of each tooth constitutes the engine speed array n EstRpm [0, 1, 2,..., Cnt ToothArrayLen +1].
[0091] S5, based on the engine speed during the running process of each tooth, estimate the torque difference initial value of each tooth, and obtain the torque difference initial value array.
[0092] The method for obtaining the torque difference initial value array is:
[0093] The torque difference initial value of each tooth wherein C2 is a preset value, and in this embodiment, C2=3000 Nm / (rpm) 2 ;
[0094] The torque difference initial value of each tooth constitutes the torque difference initial value array M EstTrqErrRaw[0, 1, 2,..., Cnt ToothArrayLen +1].
[0095] S6, filtering the torque difference initial value array of each tooth to output a filtered torque difference array of each tooth.
[0096] Specifically, in the present embodiment, the method for outputting the filtered torque difference array of each tooth is as follows:
[0097] Calculate the filtering initial value M of the torque difference initial value of each tooth EstTrqErrFilter [N] = r1 x M EstTrqErrRaw [N] + r2 x M EstTrqErrRaw [N-1] + r2 x M EstTrqErrRaw [N-2]; wherein N is the running time array t ToothTimes [0, 1, 2,..., Cnt ToothArrayLen +3], and when N = 0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0], M EstTrqErrFilter [1] = M EstTrqErrRaw [0], wherein r1, r2, r3 add up to 1, and in the present example, r1, r2, r3 take 0.1708, 0.8821, -0.0529 respectively;
[0098] After determining the filtering time initial value N = 0, 1, 2,..., Cnt ToothArrayLen +3, the final filtered torque difference M EstTrqErr [N] = M EstTrqErrFilter [N+2], the final filtered torque difference of each tooth forming a filtered torque difference array M of each tooth EstTrqErr [0, 1, 2,..., Cnt ToothArrayLen -1].
[0099] S7, calculating the total torque change amount in the evaluation window based on the filtered torque difference array of each tooth.
[0100] Specifically, in the present embodiment, the method for calculating the total torque change amount in the evaluation window is as follows:
[0101] Adding all non-negative numbers and all negative numbers in the filtered running time array M EstTrqErr [0, 1, 2,..., Cnt ToothArrayLen -1] of each tooth separately, then adding the two sums to obtain the total torque change amount M TrqDetectDelta .
[0102] S8, judging whether the engine combustion torque is abnormal according to the total torque change amount.
[0103] Specifically, in the present embodiment, the total torque change amount MTrqDetectDelta The filtered total torque change amount M is obtained by filtering TrqSumMeanNew = (1 - r TrqWeightMean ) x M TrqSumMean (z) + r TrqWeightMean x M TrqDetectDelta ; wherein M TrqSumMean (z) is the filtered total torque change amount of the previous sampling period, and its first default value is 0; the sampling period is 180° of the crank angle, i.e., sampling and calculation are performed again after the crank is rotated by 180° from the starting crank angle phi Start ; r TrqWeightMean is a total torque change amount filtering coefficient, and is a preset value; in the present example, r TrqWeightMean is 0.05 when the catalytic converter is activated, and r TrqWeightMean is 0.1 when the catalytic converter is not activated;
[0104] The initial value S of the torque characteristic value used to evaluate whether the combustion torque is abnormal is calculated as follows: TrqDetectRaw S TrqDetectRaw = (1 - r TrqWeightVar ) x S TrqDetectRaw (z) + r TrqWeightVar x (M TrqDetectDelta - M TrqSumMeanNew ) 2 ; wherein S TrqDetectRaw (z) is the initial value of the torque characteristic value of the previous sampling period, and its first default value is 0; wherein r TrqWeightVar is an initial value filtering coefficient of the torque characteristic value, and its calculation method is as follows: r TrqWeightVar = (1 - k TrqWeightVar ) x r TrqWeightVar (z) + k TrqWeightVar x (r TrqWeightGain x b TrqDetectErr (z) + r TrqWeightInc ); wherein r TrqWeightVar (z) is the initial value filtering coefficient of the torque characteristic value of the previous sampling period, and its first default value is 0.15; k TrqWeightVar is an update coefficient, and is a preset value; in the present example, k TrqWeightVar is 0.65 when the catalytic converter is activated, and k TrqWeightVar is 0.7 when the catalytic converter is not activated; r TrqWeightGain is a gain coefficient, and is a preset value; in the present example, r TrqWeightGain is 0.01 when the catalytic converter is activated, and r TrqWeightGain is 0.012 when the catalytic converter is not activated; and r TrqWeightInc is an accumulation coefficient, and is a preset value; in the present example, r TrqWeightInc is 0.17 when the catalytic converter is activated, and r TrqWeightIncIt is 0.1; b TrqDetectErr (z) is the flag indicating whether the engine combustion torque was abnormal in the previous sampling period. If it was abnormal, then b TrqDetectErr The value of (z) is 1; if there is no anomaly, then b TrqDetectErr The value of (z) is 0;
[0105] Initial value S of torque characteristic value TrqDetectRaw Filtering is performed to obtain the filtered torque characteristic value S. TrqDetect :S TrqDetect =(1-r TrqWeightVarFilt )×S TrqDetect (z)+r TrqWeightVar ×S TrqDetectRaw ;where S TrqDetect (z) represents the initial value of the torque characteristic value from the previous sampling period, with an initial default value of 0; r TrqWeightVarFilt The filter coefficient is the torque characteristic value after filtering, and is a preset value. In this example, r is activated when the catalytic converter starts igniting. TrqWeightVarFilt The value is 0.3, when the catalyst is not activated. TrqWeightVarFilt It is 0.15;
[0106] Determine the lower limit value M for judging abnormal combustion torque. TrqBoundLower : Where k BunndLower Here, k is the lower limit deviation coefficient, and k is the preset value. In this example, k is used when the catalyst is ignited and activated. BunndLower The value is 1.8, when the catalyst is not activated. BunndLower It is 2.3;
[0107] Calculate the torque deviation M used to determine whether the engine combustion torque is abnormal. ErrEst M ErrEst =M TrqDetectDelta -M TrqBoundLower ;
[0108] Determine if the engine combustion torque is normal: If M appears ErrEst <M ErrThresh Then determine whether the engine combustion torque is abnormal (flag bit b). TrqDetectErr If the value is set to 1, the engine combustion torque may be abnormal; otherwise, check the flag bit b for abnormal engine combustion torque. TrqDetectErr The value is 0, indicating that the engine combustion torque is not abnormal; the combustion torque deviation limit M ErrThresh As a preset value, in this example, M is activated during catalyst ignition. ErrThresh The value is -0.8 Nm, M when the catalyst is not ignited and activated. ErrThresh -1.2 Nm;
[0109] Determine which cylinder of the engine has abnormal combustion: If determining whether the engine combustion torque is abnormal, check flag b.TrqDetectErr if the value of the corresponding evaluation window is 1, it is read which cylinder under the corresponding evaluation window is in the power stroke, and it is indicated that the corresponding cylinder may have abnormal combustion phenomenon;
[0110] The number of times of abnormal combustion CNT1 of the corresponding cylinder which may have abnormal combustion is continuously accumulated, and the number of times of normal combustion CNT2 is continuously accumulated, and the default values of CNT1 and CNT2 are both 0; CNT1 and CNT2 are updated at most once after the engine combustion torque estimation method enabling condition is met each time; CNT1 and CNT2 are judged again when the engine combustion torque estimation method enabling condition is not met and then enters the condition of being met again;
[0111] If it is read that CNT1 is greater than a preset value A, the preset value A is 5 in the present example, and CNT2 is greater than 0 but less than a preset value B, the preset value B is 2 in the present example, it is indicated that the corresponding cylinder determines to have abnormal combustion; the corresponding cylinder combustion abnormality fault is set to occur, and the corresponding cylinder combustion abnormality fault judgment is not performed in the subsequent vehicle driving cycle until the diagnostic instrument clears the fault and then the combustion abnormality fault judgment is performed again, and CNT1 and CNT2 are cleared to 0;
[0112] If it is read that CNT1 is greater than 0 but not greater than the preset value A, but CNT2 is 0, and such phenomenon occurs in two consecutive driving cycles, it is indicated that the corresponding cylinder determines to have abnormal combustion; the corresponding cylinder combustion abnormality fault is set to occur, and the corresponding cylinder combustion abnormality fault judgment is not performed in the subsequent vehicle driving cycle until the diagnostic instrument clears the fault and then the combustion abnormality fault judgment is performed again, and CNT1 and CNT2 are cleared to 0;
[0113] If it is read that CNT1 is 0, but CNT2 is not less than a preset value C, the preset value C is 10 in the present example, it is indicated that the corresponding cylinder determines not to have abnormal combustion; the corresponding cylinder combustion abnormality fault is set not to occur, and the corresponding cylinder combustion abnormality fault judgment is not performed in the present driving cycle, and the corresponding cylinder combustion abnormality fault judgment is still performed in the subsequent vehicle driving cycle, and CNT1 and CNT2 are cleared to 0;
[0114] In other cases, it is indicated that the state of the corresponding cylinder combustion abnormality fault is a pending state, and it cannot be determined whether abnormal combustion occurs or not, and the corresponding cylinder combustion abnormality fault judgment is still performed in the present driving cycle, and the corresponding cylinder combustion abnormality fault judgment is still performed in the subsequent vehicle driving cycle; if the corresponding cylinder combustion abnormality fault state is the pending state in a preset number (the preset number is 3 in the present example) of driving cycles, CNT1 and CNT2 are cleared to 0, otherwise they are not cleared to 0.
[0115] In summary, the engine combustion torque estimation method provided by the present application can estimate the engine combustion torque to identify whether the engine combustion is normal.
[0116] It should be noted that the various steps described in this specification can be implemented with more or fewer steps than those described or described steps can be combined in other steps, or arranged into different order, to implement the application.
[0117] Those skilled in the art will readily understand that the above described are only the preferred embodiments of the present application and are not intended to limit the present application and any modification, equivalent replacement and improvement made within the spirit and principle of the present application should be included in the protection scope of the present application.
Claims
1. A method for estimating engine combustion torque, characterized in that, include: When the enabling conditions of the engine combustion torque estimation method are met, the running time of each tooth of the engine crankshaft flywheel is obtained. An evaluation window for estimating engine combustion torque is determined based on the initial crankshaft angle and tooth length obtained through calibration, and an array of running times for each tooth within the evaluation window is obtained by combining the running time of each tooth. The running time array of each tooth is filtered, and the filtered running time array of each tooth is output. The engine speed is estimated based on the filtered running time array of each tooth, and the engine speed array is obtained. Based on the engine speed during the operation of each tooth, the initial value of the torque difference of each tooth is estimated, and an array of initial values of torque difference is obtained. The initial value array of torque differences for each tooth is filtered to output the filtered torque difference array for each tooth. The total torque change within the evaluation window is calculated based on the filtered torque difference array of each tooth. The engine combustion torque is judged to be abnormal based on the total torque change. The method for obtaining the running time of each tooth of the engine crankshaft flywheel is as follows: The flywheel has 58 teeth plus two consecutive missing teeth, and the running time t for each tooth is... ToothTimes , refers to the time required for the engine flywheel to travel from the current tooth to the next tooth during operation, that is, the time taken from the rising edge of the current tooth to the rising edge of the next tooth; wherein, the running time of the first tooth before the missing tooth and the two missing teeth are the average of the running time of the tooth before these three teeth and the running time of the first tooth after the second missing tooth.
2. The engine combustion torque estimation method according to claim 1, characterized in that, The initial crankshaft angle phi is obtained through calibration. Start and tooth length Cnt ToothArrayLen The method is as follows: phi Start =f1(n,rho)+b CatHeat ×f2(n,rho), where b is activated when the catalyst ignition control is activated. CatHeat If it is 1, otherwise b CatHeat =0; f1(n,rho) and f2(n,rho) are jointly determined by engine speed and the density of fresh air entering the cylinder, and the specific parameters are calibrated on the engine test bench; after the catalytic converter ignition is completed, f1(n,rho) and Cnt are calibrated. ToothArrayLen1 Then, during the catalytic converter ignition process, f2(n,rho) and Cnt were calibrated. ToothArrayLen2 ; When the catalyst is in non-ignition mode or ignition mode has been completed, the number of teeth length Cnt ToothArrayLen =Cnt ToothArrayLen1 During catalyst ignition, the tooth length Cnt ToothArrayLen =Cnt ToothArrayLen2 ; The evaluation window used to estimate engine combustion torque is the initial crankshaft angle phi. Start The length Cnt from the first tooth to the subsequent consecutive teeth ToothArrayLen The operating range of the teeth; The initial crankshaft angle phi Start The length Cnt from the first tooth to the subsequent consecutive teeth ToothArrayLen The runtime for +4 teeth is represented by the array t. ToothTimes [0,1,2,...,Cnt ToothArrayLen +3] represents the array t of the running times of each tooth. ToothTimes [0,1,2,...,Cnt ToothArrayLen The 0th bit in [+3] represents the running time of the first tooth, and the Cnt bit represents the running time of the first tooth. ToothArrayLen +3 is the Cnt number. ToothArrayLen +4 teeth running time.
3. The engine combustion torque estimation method according to claim 2, characterized in that, The method for filtering the runtime array of each tooth and outputting the filtered runtime array of each tooth is as follows: Calculate the initial value t of the filter time for the running time of each tooth. ToothTimesFilterRaw [N] = r1 × t ToothTimes [N]+r2×t ToothTimes [N-1]+r3×t ToothTimes [N-2]; where N is the runtime array t ToothTimes [0,1,2,...,Cnt ToothArrayLen The Nth index in [+3], and when N = 0 or 1, t ToothTimesFilterRaw [0] = t ToothTimes [0], t ToothTimesFilterRaw [1]=t ToothTimes [0], where r1, r2, and r3 add up to 1; Given N = 0, 1, 2, ..., Cnt ToothArrayLen After setting the initial filtering time to +3, the final filtering runtime t ToothTimesFilter [N] = t ToothTimesFilterRaw [N+2], the final filtering runtime of each tooth constitutes the filtering runtime array t of each tooth. ToothTimesFilter [0,1,2,...,Cnt ToothArrayLen +1].
4. The engine combustion torque estimation method according to claim 3, characterized in that, The method for obtaining the engine speed array is as follows: Engine speed Where C1 is the preset value; The engine speeds during the operation of each tooth constitute the engine speed array n. EstRpm [0,1,2,...,Cnt ToothArrayLen +1].
5. The engine combustion torque estimation method according to claim 4, characterized in that, The method for obtaining the initial value array of torque difference is as follows: Initial value of torque difference between each tooth Where C2 is the preset value; The initial torque difference values of each tooth constitute the initial torque difference value array M. EstTrqErrRaw [0,1,2,...,Cnt ToothArrayLen +1].
6. The engine combustion torque estimation method according to claim 5, characterized in that, The method for filtering the initial value array of torque differences for each tooth and outputting the filtered torque difference array for each tooth is as follows: The initial value M of the filter is used to calculate the initial value of the torque difference for each tooth. EstTrqErrFilter [N] = r1 × M EstTrqErrRaw [N]+r2×M EstTrqErrRaw [N-1]+r2×M EstTrqErrRaw [N-2]; where N is the runtime array t ToothTimes [0,1,2,...,Cnt ToothArrayLen The Nth index in [+3], and when N = 0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0], M EstTrqErrFilter [1] = M EstTrqErrRaw [0], where r1, r2, and r3 add up to 1; Given N = 0, 1, 2, ..., Cnt ToothArrayLen After the initial filtering time of +3, the final filtered torque difference M EstTrqErr [N] = M EstTrqErrFilter [N+2], the final filtered torque difference of each tooth constitutes the filtered torque difference array M of each tooth. EstTrqErr [0,1,2,...,Cnt ToothArrayLen -1].
7. The engine combustion torque estimation method according to claim 6, characterized in that, The method for calculating the total torque change within the evaluation window is as follows: The filtering runtime array M for each tooth EstTrqErr [0,1,2,...,Cnt ToothArrayLen First, add all non-negative numbers and all negative numbers in [-1] separately, then add the two sums together to obtain the total torque change M. TrqDetectDelta .
8. The engine combustion torque estimation method according to claim 7, characterized in that, The method for judging whether the engine combustion torque is abnormal based on the total torque change is as follows: The total torque change M TrqDetectDelta The total torque change M is obtained by filtering. TrqSumMeanNew =(1-r TrqWeightMean )×M TrqSumMean (z)+r TrqWeightMean ×M TrqDetectDelta ; where M TrqSumMean (z) represents the filtered total torque change from the previous sampling period, with an initial default value of 0. The sampling period is 180° crankshaft angle, i.e., from the initial crankshaft angle phi. Start Initially, the sampling calculation is updated again after the crankshaft rotates 180°; TrqWeightMean The filter coefficient for the total torque change is a preset value. Calculate the initial value S of the torque characteristic value used to assess whether the combustion torque is abnormal. TrqDetectRaw :S TrqDetectRaw =(1-r TrqWeightVar )×S TrqDetectRaw (z)+r TrqWeightVar ×(M TrqDetectDelta -M TrqSumMeanNew ) 2 ;where S TrqDetectRaw (z) represents the initial value of the torque characteristic value from the previous sampling period, with an initial default value of 0; where r TrqWeightVar The initial value of the torque characteristic value is the filter coefficient, and its calculation method is as follows: r TrqWeightVar =(1-k) TrqWeightVar )×r TrqWeightVar (z)+k TrqWeightVar ×(r TrqWeightGain ×b TrqDetectErr (z)+r TrqWeightInc ); where r TrqWeightVar (z) represents the initial value filtering coefficient of the torque characteristic value in the previous sampling period, with an initial default value of 0.15; k TrqWeightVar The coefficient is updated using the preset value; r TrqWeightGain r is the gain coefficient, which is a preset value. TrqWeightInc b is the cumulative coefficient, which is a preset value; TrqDetectErr (z) is the flag indicating whether the engine combustion torque was abnormal in the previous sampling period. If it was abnormal, then b TrqDetectErr The value of (z) is 1; if there is no anomaly, then b TrqDetectErr The value of (z) is 0; The initial value S of the torque characteristic value TrqDetectRaw Filtering is performed to obtain the filtered torque characteristic value S. TrqDetect :S TrqDetect =(1-r TrqWeightVarFilt )×S TrqDetect (z)+r TrqWeightVar ×S TrqDetectRaw ;where S TrqDetect (z) represents the torque characteristic value from the previous sampling period, with an initial default value of 0; r TrqWeightVarFilt , where is the filtering coefficient for the filtered torque characteristic value, and is a preset value; Determine the lower limit value M for judging abnormal combustion torque. TrqBoundLower : Where k BunndLower This is the lower limit deviation coefficient, which is a preset value; Calculate the torque deviation M used to determine whether the engine combustion torque is abnormal. ErrEst M ErrEst =M TrqDetectDelta -M TrqBoundLower ; Determine if the engine combustion torque is normal: If M appears ErrEst <M ErrThresh Then determine whether the engine combustion torque is abnormal (flag bit b). TrqDetectErr If the value is set to 1, the engine combustion torque may be abnormal; otherwise, check the flag bit b for abnormal engine combustion torque. TrqDetectErr The value is 0, indicating that the engine combustion torque is not abnormal; Among them, the combustion torque deviation limit M ErrThresh This is the default value; Determine which cylinder of the engine has abnormal combustion: If determining whether the engine combustion torque is abnormal, check flag b. TrqDetectErr If the value is set to 1, then it reads which cylinder is in the power stroke under the corresponding evaluation window, which indicates that the corresponding cylinder may have an abnormal combustion phenomenon. The number of combustion abnormalities CNT1 for the corresponding cylinder that may have combustion abnormalities is continuously accumulated, and the number of combustion abnormalities CNT2 that do not occur is continuously accumulated, with a default value of 0 for both. CNT1 and CNT2 are updated at most once after the enabling conditions of the engine combustion torque estimation method are met. The update of CNT1 and CNT2 is only determined after the enabling conditions of the engine combustion torque estimation method change from unsatisfied to satisfied each time. If CNT1 is read to be greater than the preset value A, and CNT2 is greater than 0 but less than the preset value B, it indicates that the corresponding cylinder has definitely experienced a combustion abnormality. The corresponding cylinder combustion abnormality fault is set to occur, and the corresponding cylinder combustion abnormality fault will not be judged in subsequent vehicle driving cycles until the diagnostic tool clears the fault. The combustion abnormality fault will be judged again, and CNT1 and CNT2 will be cleared to 0. If CNT1 is greater than 0 but not greater than the preset value A, but CNT2 is 0, and this phenomenon occurs in two consecutive driving cycles, it indicates that the corresponding cylinder has a combustion abnormality. The corresponding cylinder combustion abnormality fault is set to occur, and the corresponding cylinder combustion abnormality fault will not be judged in subsequent vehicle driving cycles until the diagnostic tool clears the fault and then the combustion abnormality fault is judged again, and CNT1 and CNT2 are cleared to 0. If CNT1 is read as 0, but CNT2 is not less than the preset value C, it indicates that there is no combustion abnormality in the corresponding cylinder. The system sets that the corresponding cylinder combustion abnormality fault has not occurred, and the corresponding cylinder combustion abnormality fault will not be judged in this driving cycle. However, the corresponding cylinder combustion abnormality fault will still be judged in subsequent vehicle driving cycles, and CNT1 and CNT2 will be cleared to 0. In other cases, the corresponding cylinder combustion abnormality fault status is unresolved, and it cannot be determined whether a combustion abnormality has occurred. The corresponding cylinder combustion abnormality fault judgment will still be performed in the current driving cycle, and the corresponding cylinder combustion abnormality fault judgment will still be performed in subsequent vehicle driving cycles. If the combustion abnormality fault status of the corresponding cylinder is still pending during the preset number of driving cycles, then CNT1 and CNT2 will be cleared to 0; otherwise, they will not be cleared.
9. The engine combustion torque estimation method according to claim 1, characterized in that, The enabling conditions for the engine combustion torque estimation method include: (1) Enter the fire diagnosis area as specified in the regulations; (2) No request to cut off fuel supply; (3) The gear position remained unchanged; (4) The clutch is fully engaged; (5) Not an uneven road surface; (6) The water temperature is within the preset range; (7) Throttle opening fluctuations were small during the diagnostic process; (8) The engine is running.
Citation Information
Patent Citations
Engine indicating torque estimating method and engine indicating torque circulating circuit
CN104747288A
Engine torque prediction method and device and computer storage medium
CN113818963A