Engine combustion torque monitoring method
The method addresses engine torque monitoring challenges by accurately assessing combustion conditions through a systematic evaluation of crankshaft tooth times, filtering, and setting activation conditions, ensuring timely detection and prevention of engine issues.
Patent Information
- Application Number
- CN202411230632.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-04
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2044-09-04
AI Technical Summary
Existing engine combustion systems struggle to accurately monitor torque to identify abnormal combustion conditions such as misfires, lean or rich mixtures, and low compression stroke pressures, which can lead to inefficiencies and potential damage.
A method for monitoring engine combustion torque involves reading and correcting the running time of each tooth of the engine crankshaft flywheel, determining an evaluation window, filtering and updating the running time, calculating torque differences, and setting activation conditions to assess torque abnormalities, including ignition states, gear positions, and vehicle travel conditions.
This method enables continuous and accurate monitoring of engine combustion torque, allowing for timely detection of abnormalities and preventing engine damage by setting reasonable thresholds and outputting flags for abnormal conditions.
Smart Images

Figure CN119102877A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of engine control, and in particular to a method for monitoring engine combustion torque. Background Art
[0002] Engine combustion produces torque, but if the engine burns abnormally, especially if there is no ignition, the mixture is too lean or too rich, the compression stroke pressure is low or other reasons, the mixture cannot burn. Summary of the invention
[0003] The object of the present invention is to provide a method for monitoring engine combustion torque to identify whether the engine is burning normally.
[0004] In order to solve the above technical problems, the present invention provides a technical solution: a method for monitoring engine combustion torque, which is executed when a preset engine combustion torque monitoring condition is met; the method comprises:
[0005] Read the running time of each tooth of the engine crankshaft flywheel disc at a set sampling period, and correct the running time of each tooth;
[0006] Determining an evaluation window for estimating engine combustion torque; the evaluation window includes a starting crankshaft angle and a tooth length;
[0007] When the set activation conditions for the misfire diagnosis evaluation time update optimization process are met, the running time of each tooth is updated;
[0008] Filter the running time of each tooth;
[0009] The engine speed during the running time of each tooth is obtained according to the running time of each tooth after filtering;
[0010] The initial value of the torque difference of each tooth is obtained according to the engine speed during the operation time of each tooth;
[0011] Filter the initial value of the torque difference of each tooth;
[0012] Calculate the total torque change of the engine within the evaluation window according to the initial value of the torque difference of each tooth after filtering;
[0013] Whether the engine combustion torque is abnormal is determined based on the change in the total engine torque.
[0014] According to the above scheme, the engine combustion torque monitoring conditions include:
[0015] 1) Enter the specified fire diagnosis area;
[0016] 2) No fuel cut-off request;
[0017] 3) The gear position has not changed, and the engine combustion torque monitoring method needs to be executed after a certain delay after the gear position changes;
[0018] 4) The clutch is in a fully engaged state, and the engine combustion torque monitoring method is executed after a certain delay after the clutch is engaged;
[0019] 5) The vehicle is traveling on a flat road;
[0020] 6) The engine water temperature is within the preset range;
[0021] 7) The throttle opening fluctuates within a certain range;
[0022] 8) The engine is in running state;
[0023] When the above conditions are met simultaneously for a certain period of time, it is considered that the engine combustion torque monitoring condition is met; if the engine combustion torque monitoring condition is not met when the engine combustion torque monitoring method is executed, the engine combustion torque monitoring method is stopped.
[0024] According to the above scheme, the engine crankshaft flywheel is provided with a plurality of teeth, and adjacent first missing teeth and second missing teeth, and the running time of the first missing teeth, the second missing teeth, and the first tooth before the first missing teeth is zero;
[0025] The method for correcting the running time of each tooth is:
[0026] The running time of the first missing tooth, the second missing tooth, and the first tooth before the first missing tooth are all set as the average running time; the average running time is the average of the running time of the second tooth before the first missing tooth and the running time of the first tooth after the second missing tooth.
[0027] According to the above scheme, the method for determining the evaluation window for estimating the engine combustion torque includes:
[0028] Through calibration, we can get f1(n,rho), f2(n,rho), Cnt ToothArrayLen1 , Cnt ToothArrayLen2 , Cnt ToothArrayLen1 , Cnt ToothArrayLen2 are respectively the first initial teeth number length and the second initial teeth number length;
[0029] When the catalyst is not in the ignition state or the ignition state is completed, Cnt ToothArrayLen =Cnt ToothArrayLen1 ; When the catalyst is ignited, let Cnt ToothArrayLen =Cnt ToothArrayLen2 ; Cnt ToothArrayLen is the length of the teeth;
[0030] Determine the starting crankshaft angle:
[0031] phi Start =f1(n,rho)+b CatHeat ×f2(n,rho);
[0032] Among them, phi Start is the starting crankshaft angle, b CatHeat Determined according to the catalyst light-off control activation state;
[0033] The running time of each tooth is expressed as t after correction ToothTimes [c],c=0,1,2,...,Cnt ToothArrayLen +3, c represents the serial number of the tooth.
[0034] According to the above scheme, the method for updating the running time of each tooth includes:
[0035] Set the evaluation time update coefficient;
[0036] Set the counter for updating optimization of misfire diagnosis evaluation time and the initial value of evaluation time update coefficient;
[0037] Determine the counter for updating optimization of misfire diagnosis evaluation time and the initial value of evaluation time update coefficient;
[0038] Determine the evaluation time update coefficient;
[0039] Determine the runtime of each tooth after the update.
[0040] According to the above scheme, the activation conditions of the fire diagnosis evaluation time update optimization process include:
[0041] 1) The engine is in running state;
[0042] 2) All cylinders of the engine are in the fuel cut-off state;
[0043] 3) The engine is not directly involved in driving the vehicle;
[0044] 4) The engine does not experience knock or pre-ignition;
[0045] 5) The running time of each cylinder of the engine within the evaluation window is not 0 for several times;
[0046] 6) The engine has no faults;
[0047] The method for setting the counter for updating and optimizing the misfire diagnosis evaluation time and the initial value of the evaluation time update coefficient comprises:
[0048] Set the evaluation time update coefficient to r n [p],p=1,2,...,p max , where rn The subscript n represents the cylinder number of the engine, p represents the evaluation area, and p max is the maximum value of the serial number of the evaluation area, and the evaluation area is determined according to the engine speed;
[0049] Set the misfire diagnosis evaluation time to update the optimized counter Cnt AdaptCounter , Evaluation time update coefficient initial value r raw [n]; r raw [n] where n is the cylinder number of the engine;
[0050] The method for determining the counter for updating and optimizing the misfire diagnosis evaluation time and the initial value of the evaluation time update coefficient comprises:
[0051] If any of the following conditions are met:
[0052] 1) The activation conditions for the fire diagnosis evaluation time update optimization process are not met;
[0053] 2) The evaluation area changes;
[0054] Then Cnt AdaptCounter Reset to 1 and set r raw [n] Reset to the power-off storage value r n r in [p] n [p real ]; where p real Indicates the current actual evaluation area;
[0055] Otherwise, Cnt is set after each sampling period. AdaptCounter Add one and accumulate r raw [n]:
[0056]
[0057] In the above formula, r raw [n](z) is the initial value of the evaluation time update coefficient obtained in the previous sampling period,
[0058] n max Indicates the maximum number of cylinders in the engine;
[0059] where t RawSegmentAvg [n] The acquisition method is: first collect the running time T of each cylinder of the engine within the evaluation window for several times n [k], k = 1, 2, 3, .., .m, where the subscript n represents the cylinder number of the engine, k represents the collected running time number, and m represents the number of times the running time of a certain cylinder is collected; then the running time of a certain cylinder of the engine is averaged to obtain the average running time of the cylinder, thereby obtaining the average running time t of each cylinder of the engine RawSegmentAvg[n];
[0060] The method for determining the evaluation time update coefficient comprises:
[0061] When Cnt AdaptWeightCounter Greater than the preset number Cnt B1 When the evaluation time is updated for the first time, the flag bit b FirstAdaptDone Set to 1; otherwise, flag bit b FirstAdaptDone Set to 0; where Cnt AdaptWeightCounter Cnt in the current evaluation area AdaptCounter Not less than the preset value Cnt A1 The number of times, Cnt AdaptWeightCounter The accumulation method is: Cnt AdaptWeightCounter The default value is 0. AdaptCounter After reset, the accumulation is restarted, Cnt AdaptCounter Not less than the preset value Cnt A1 After that, Cnt AdaptWeightCounter plus one;
[0062] When b FirstAdaptDone is 0, and Cnt AdaptCounter Not less than the preset value Cnt A1 Only when r is updated n [p]; otherwise when b FirstAdaptDone If it is 0, updating r is not allowed. n [p]; b FirstAdaptDone When r is 0, n The update method of [p] is:
[0063] r n [p] = k AdaptWeight × raw [n]+(1-k AdaptWeight )×r n [p](z)
[0064] In the above formula, r n [p](z) is the evaluation time update coefficient of the evaluation area p in the previous sampling period, k AdaptWeight is the set weighting coefficient;
[0065] When b FirstAdaptDone is 1, and Cnt AdaptCounter Not less than the preset value Cnt A2 Only when r is updated n [p],Cnt A2 Not less than Cnt A1 Otherwise, when b FirstAdaptDone When 1, updating r is not allowed n [p]; b FirstAdaptDone When r is 1, nThe update method of [p] is:
[0066] r n [p] = k Adapt × raw [n]+(1-k Adapt )×r n [p](z);
[0067] In the above formula, k Adapt is the set weighting coefficient, k Adapt No more than k AdaptWeight ;
[0068] The method for determining the updated running time of each tooth includes:
[0069] When b FirstAdaptDone When it is 0, the running time of each tooth will not be updated;
[0070] When b FirstAdaptDone When it is 1, the updated t ToothTimes [c] is t before update ToothTimes [c] Multiply by r n [p]; at the same time, T n [k] multiplied by r n [p] Get the updated running time T of each cylinder of the engine within the evaluation window n_new [k].
[0071] According to the above scheme, the method for filtering the running time of each tooth includes:
[0072] Set the initial filter run time for each tooth ToothTimesFilterRaw [c] is:
[0073] t ToothTimesFilterRaw [c] = r1 × t ToothTimes [c]+r2×t ToothTimes [c-1]+r2×t ToothTimes [c-2]
[0074] In the above formula, when c = 0 or 1, t ToothTimesFilterRaw [0] = t ToothTimes [0], t ToothTimesFilterRaw [1] = t ToothTimes [0]; r1+r2+r3=1;
[0075] Determine the final filter run time t for each tooth ToothTimesFilter [c']:
[0076]
[0077] In the above formula, c'=0,1,2,...,CntToothArrayLen +1;
[0078] The method for obtaining the engine speed during the running time of each tooth according to the running time of each tooth after filtering includes:
[0079]
[0080] In the above formula, Indicates the engine speed during the running time of each tooth, and C1 is the set value.
[0081] According to the above scheme, the method for obtaining the initial value of the torque difference of each tooth according to the engine speed during the operation time of each tooth includes:
[0082]
[0083] In the above formula, is the initial value of the torque difference of each tooth, and C2 is the set value;
[0084] The method for filtering the initial value of the torque difference of each tooth includes:
[0085] Determine the initial value of the filter for the initial value of the torque difference of each tooth:
[0086]
[0087] In the above formula, when c'=0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0],
[0088] M EstTrqErrFilter [1] = M EstTrqErrRaw [0];
[0089] Determine the filtered torque difference for each tooth:
[0090]
[0091] In the above formula, c"=0,1,2,...,Cnt ToothArrayLen -1.
[0092] According to the above scheme, the method for calculating the total torque variation of the engine within the evaluation window according to the initial value of the torque difference of the torque of each tooth after filtering includes:
[0093] M EstTrqErr The numbers in [c”] are added together to obtain the total engine torque change M within the evaluation window. TrqDetectDelta .
[0094] According to the above scheme, the method for judging whether the engine combustion torque is abnormal according to the change in the total engine torque includes:
[0095] The total engine torque change M TrqDetectDelta Filter to obtain the filtered total engine torque change M TrqSumMeanNew :
[0096] M TrqSumMean =(1-r TrqWeightMean )×M TrqSumMean (z)+r TrqWeightMean ×M TrqDetectDelta
[0097] In the above formula, M TrqSumMean (z) is the total engine torque change after filtering in the previous sampling period, r TrqWeightMean is the total torque change filter coefficient, which is determined by the catalyst light-off activation state;
[0098] Determine the initial value S of the torque characteristic value TrqDetectRaw :
[0099] S TrqDetectRaw =(1-r TrqWeightVar )×S TrqDetectRaw (z)+
[0100] r TrqWeightVar ×(M TrqDetectDelta -M TrqSumMeanNew ) 2
[0101] In the above formula, S TrqDetectRaw (z) is the initial value of the torque characteristic value in the previous sampling period, r TrqWeightVar is the initial filter coefficient of torque characteristic value; r TrqWeightVar satisfy:
[0102] r TrqWeightVar =(1-k TrqWeightVar )×r TrqWeightVar (z)+
[0103] k TrqWeightVar ×(r TrqWeightGain ×b TrqDetectErr (z)+r TrqWeightInc )
[0104] In the above formula, r TrqWeightVar (z) is the initial filter coefficient of the torque characteristic value in the previous sampling period, k TrqWeightVar is the update coefficient, r TrqWeightInc is the cumulative coefficient, k TrqWeightVar 、r TrqWeightInc are determined by the catalyst light-off activation state, b TrqDetectErr (z) is b of the previous sampling period TrqDetectErr , b TrqDetectErrIt is the flag of whether the engine combustion torque is abnormal. If the engine combustion torque is abnormal, b TrqDetectErr Take 1, otherwise take 0;
[0105] Filter the initial value of the torque characteristic value:
[0106] S TrqDetect =(1-r TrqWeightVarFilt )×S TrqDetect (z)+r TrqWeightVar ×S TrqDetectRaw
[0107] In the above formula, S TrqDetect is the torque characteristic value after filtering, r TrqWeightVarFilt is the filter coefficient of the torque characteristic value after filtering, which is determined by the activation state of the catalyst light-off;
[0108] Determine the combustion torque abnormality judgment lower limit value M TrqBoundLower :
[0109]
[0110] In the above formula, k BunndLower is the lower limit deviation coefficient, which is determined by the catalyst light-off activation state;
[0111] Determine the torque deviation M ErrEst :
[0112] M ErrEst =M TrqDetectDelta -M TrqBoundLower
[0113] Determine whether the engine combustion torque is normal:
[0114] If M ErrEst <M ErrThresh , it is judged that the engine combustion torque is abnormal, b TrqDetectErr Set to 1, otherwise it is judged that the engine combustion torque is not abnormal, b TrqDetectErr Set to 0; where M ErrThresh is the combustion torque deviation limit, which is determined by the catalyst light-off activation state;
[0115] When the engine combustion torque is abnormal, read which cylinder is in the power stroke under the corresponding evaluation window to determine whether the cylinder has abnormal combustion.
[0116] The beneficial effects of the present invention are as follows: when the combustion judgment conditions are met, by continuously estimating the operating time of each tooth of the engine, and the operating parameters are continuously updated, and a reasonable window for combustion judgment is selected, by estimating its rotational speed and torque increment, and estimating the torque increment in the entire window, by designing a reasonable threshold setting method, it is possible to check whether the engine combustion torque is normal, and output a flag when the engine combustion torque is abnormal, thereby protecting the engine in time. BRIEF DESCRIPTION OF THE DRAWINGS
[0117] Figure 1 is a flow chart of an engine combustion torque monitoring method according to a first embodiment of the present invention;
[0118] Figure 2 It is a schematic diagram of the process of the engine combustion torque monitoring method according to the first embodiment of the present invention. DETAILED DESCRIPTION
[0119] In order to make the purpose, technical solution and advantages of the embodiments of the present disclosure clearer, the technical solution of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings of the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, not all of the embodiments. Based on the described embodiments of the present disclosure, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present disclosure.
[0120] Embodiment 1:
[0121] This embodiment discloses a method for monitoring engine combustion torque. When a preset engine combustion torque monitoring condition is met, the method is executed. The method comprises the following steps:
[0122] S1. Read the running time of each tooth of the engine crankshaft flywheel at a set sampling period, and correct the running time of each tooth.
[0123] In a preferred embodiment of the present invention, the engine combustion torque monitoring conditions include:
[0124] 1) Entering the fire diagnosis area specified in the regulations; the regulations are the relevant provisions of the National Emission Standards for Light-Duty Vehicle Pollutant Emission Limits and Measurement Methods (China Phase VI) (GB18352.6-2016);
[0125] 2) No fuel cut-off request;
[0126] 3) The gear position has not changed, and after the gear position has changed, the engine combustion torque monitoring method is executed after a certain delay (0.1s in this embodiment);
[0127] 4) The clutch is in a fully engaged state, and the engine combustion torque monitoring method is executed after a certain delay (1s in this embodiment) after the clutch is engaged;
[0128] 5) The vehicle is traveling on a flat road;
[0129] 6) The engine water temperature is within a preset range (greater than -6 degrees Celsius in this embodiment);
[0130] 7) The throttle opening fluctuates within a certain range (in this embodiment, the difference between the maximum opening and the minimum opening of the throttle within 0.1 s is less than 15%);
[0131] 8) The engine is in running state;
[0132] It should be understood that after the above conditions are met for a certain period of time, the engine torque performance monitoring can be performed. When the above conditions are not met, the working conditions of the vehicle may cause misjudgment of the engine torque performance monitoring.
[0133] If the enabling condition is not met during the diagnosis process, the diagnosis is terminated and the engine torque performance monitoring is performed after the next diagnosis condition is met.
[0134] In a preferred embodiment of the present invention, there are 58 teeth plus 2 missing teeth on the engine crankshaft flywheel disc. The running time of each tooth of the engine crankshaft flywheel disc refers to the time required for the engine flywheel to go from the current tooth to the next tooth when running. The time between the rising edge of the current tooth and the rising edge of the next tooth can be calculated. It should be understood that because there are two missing teeth, the default running time of each tooth is 0, which will cause the running time of a total of 3 teeth (the first tooth before the missing tooth and the second missing tooth) to be 0. However, the tooth running time is an important parameter, which will cause misjudgment of the engine torque performance monitoring result. Therefore, it is necessary to optimize the running time of the three teeth, and take the running time of the tooth before these three teeth (that is, the second tooth before the missing tooth) and the running time of the first tooth after the second missing tooth as the average value.
[0135] S2. Determine an evaluation window for estimating engine combustion torque; the evaluation window includes a starting crankshaft angle and a tooth length.
[0136] In a preferred embodiment of the present invention, the starting crankshaft angle phi Start The method for determining phi is: Start =f1(n,rho)+b CatHeat ×f2(n,rho), where b CatHeat is 1, otherwise it is 0. Considering the catalyst ignition on the starting crankshaft angle phi StartThe reason is that the engine ignition angle efficiency is too low during the catalyst ignition process, resulting in too little engine combustion torque. It is necessary to increase the evaluation window to evaluate whether the engine combustion is normal. f1(n,rho) and f2(n,rho) are determined by the engine speed and the density of fresh air entering the cylinder. The specific parameters are calibrated on the engine bench. First, after the catalyst ignition is completed, f1(n,rho) and Cnt are calibrated. ToothArrayLen1 Then, f2(n,rho) and Cnt are calibrated during the catalyst light-off process. ToothArrayLen2 The specific calibration method is determined based on: the evaluation window and the torque estimation method described later can make the difference between normal and abnormal engine combustion torque the most obvious. If it is not obvious, the calibration is appropriately adjusted to see if the difference can be optimized. If not, these calibrations are no longer adjusted, and the torque performance monitoring method is optimized to improve. In this embodiment, the difference between the normal and abnormal engine combustion torque is divided by the absolute value of the average value of the ratio of the normal combustion torque. If the value obtained exceeds 20%, it is considered that the difference between the normal and abnormal engine combustion torque meets the requirement.
[0137] Starting crankshaft angle phi Start The running time of each tooth from the first tooth to the subsequent continuous tooth length is represented by array t ToothTimes [0,1,2,...,Cnt ToothArrayLen +3], where array t ToothTimes [0,1,2,...,Cnt ToothArrayLen +3] is the running time of the first tooth, and the Cnt ToothArrayLen +3 is the Cnt ToothArrayLen +4 teeth running time. It should be noted here that the specific calculation of the running time of more than 4 teeth beyond the evaluation window is mainly for the subsequent torque performance monitoring filter algorithm.
[0138] Among them, when the catalyst is not in the ignition state or the ignition state is completed, Cnt ToothArrayLen =Cnt ToothArrayLen1 ; During the catalyst light-off condition, Cnt ToothArrayLen =Cnt ToothArrayLen2 .
[0139] S3. When the set activation conditions for the misfire diagnosis evaluation time update optimization process are met, the operation time of each tooth is updated.
[0140] In a preferred embodiment of the present invention, the activation conditions for the optimization process of updating the evaluation time of misfire diagnosis (mainly when all cylinders of the engine request fuel cut-off, during the engine operation and the vehicle coasting process, the learning and updating of the evaluation time) are as follows:
[0141] 1) The engine is in running state;
[0142] 2) All cylinders of the engine are in the fuel cut-off state;
[0143] 3) The engine is not directly involved in driving the vehicle, that is, the engine is not connected to the transmission system;
[0144] 4) The engine does not experience knock or pre-ignition;
[0145] 5) The running time of each cylinder of the engine within the evaluation window is not 0 for several times, that is, the A+1 running time of each cylinder calculated in the first step is not 0;
[0146] 6) The engine has no faults;
[0147] In a preferred embodiment of the present invention, the update checking period of the activation condition of the misfire diagnosis evaluation time update optimization process is 10 ms.
[0148] When all the above conditions are met, proceed to steps S301 to S305, otherwise the running time of each tooth is not updated, and steps S4 to S9 are directly performed. It should be noted that after entering step S301, its update period (sampling period) is 180 degrees of crankshaft rotation, and each cylinder is from 80 degrees of crankshaft angle after the compression top dead center of each cylinder to 260 degrees after the compression top dead center of its corresponding cylinder.
[0149] Steps S301 to S305 specifically include:
[0150] S301. Set the evaluation time update coefficient.
[0151] It should be understood that this step is to store the evaluation time update coefficient in different areas, and the area division depends on the engine speed, that is, the storage address of the update coefficient is different at different engine speeds. n [0,1,2,...], which can be saved after the vehicle is powered off, and its initial value is 1. Among them, r1[0,1,2,...] refers to the evaluation time update coefficient of the first cylinder. In this example, 10 areas are divided according to the engine speed, so the evaluation time update coefficient of the first cylinder in this example is r1[0,1,2,...,9], and the same applies to other cylinders. Specifically, in this example, 10 areas are divided according to the engine speed as follows:
[0152]
[0153] Among them, if the engine speed is 750 rpm or less, the evaluation area is 0; if the engine speed is greater than 750 rpm and not less than 1000 rpm, the evaluation area is 1; and so on.
[0154] S302, setting a counter for updating and optimizing the misfire diagnosis evaluation time and an initial value of an evaluation time update coefficient.
[0155] In a preferred embodiment of the present invention, the counter for updating and optimizing the misfire diagnosis evaluation time is set to Cnt AdaptCounter , the initial value of the evaluation time update coefficient is set to r raw [0,1,2,3].
[0156] If any of the following conditions is met, Cnt AdaptCounter Reset to 1, and update the evaluation time coefficient to the initial value r raw [0,1,2,3] (where r raw [0] is the initial value of the evaluation time update coefficient of the first cylinder, and so on) is reset to the update coefficient r1[0,1,2,...,9] stored at power-off that is the same as the update coefficient of the current actual evaluation area:
[0157] 1) The activation conditions for the fire diagnosis evaluation time update optimization process are not met;
[0158] 2) The evaluation area has changed.
[0159] If the above two conditions are not met, Cnt AdaptCounter Add 1, and accumulate the initial value r of the evaluation time update coefficient raw [0,1,2,3], the accumulation method is as follows, taking the first cylinder as an example, the other cylinders are the same:
[0160] where r raw [0](z) is the initial value of the cumulative evaluation time update coefficient obtained in the previous sampling period,
[0161] That is the average running time of all cylinders.
[0162] In the above formula, t RawSegmentAvg [n] The acquisition method is: first collect the running time T of each cylinder of the engine within the evaluation window n [k], k = 1, 2, 3, .., .m, where the subscript n represents the cylinder number of the engine, k represents the collected running time number, and m represents the number of times the running time of a certain cylinder is collected; then the running time average value of the previous A times (A is 9 in this example) and the total A+1 times (10 times in this example) corresponding to the same cylinder is calculated. Since the number of cylinders in this example is 4, for the sake of ease of description, the 4-cylinder engine is used as an example in the following, and the method for engines with other cylinder numbers is the same. Then the A+1 times running time of a cylinder of the engine is averaged to obtain the running time average value of the cylinder, and the running time average value t of each cylinder of the engine is obtained.RawSegmentAvg [n],t RawSegmentAvg [0] is the average time for the first cylinder, and so on.
[0163] It is particularly important to note that the default initial value of the previous A running times is 0. The running time update cycle (sampling cycle) is 180 degrees of crankshaft rotation, and each cylinder is from 80 degrees of crankshaft angle after the compression top dead center of each cylinder to 260 degrees after the compression top dead center of its corresponding cylinder.
[0164] Where T n The method for obtaining [k] can refer to the patent publication CN202010204064.9 "A gasoline engine misfire monitoring method", which proposes calculating the running time of the engine within a certain crankshaft angle range near the compression top dead center of each cylinder and storing it in an array. n [0,1,2,3…].
[0165] S303, determining a counter for updating optimization of the misfire diagnosis evaluation time and an initial value of the evaluation time update coefficient.
[0166] The evaluation time update coefficient is set to r n [0,1,2,...,9], whichever bit in the evaluation time update coefficient array is stored according to the current evaluation area.
[0167] First, determine whether the evaluation time in the current evaluation area has completed the first update. If the first update has not been completed, the evaluation time is accumulated in a weighted manner. The purpose of this design is that when the first update is not completed, the learning parameters are not very stable, and the weighted approach is more stable and accurate.
[0168] If the misfire diagnosis evaluation time in the current evaluation area is updated, the optimized counter Cnt AdaptCounter Not less than the preset value Cnt A1 (This example takes 5) The number of times Cnt AdaptWeightCounter Greater than the preset number Cnt B1 (3 in this example), the evaluation time is updated for the first time, that is, the flag bit b FirstAdaptDone is 1; otherwise, flag bit b FirstAdaptDone is 0.
[0169] Among them, the number of times Cnt AdaptWeightCounter The update accumulation method is, its default value is 0, in the counter Cnt AdaptCounter After reset, re-accumulate and update the optimized counter Cnt AdaptCounter Not less than the preset value Cnt A1 After that, the counter Cnt AdaptWeightCounter Add 1. That is, each time the counter Cnt AdaptCounter After reset, CntAdaptCounter Update at most once.
[0170] It should be noted that the number Cnt AdaptWeightCounter and flag bit b FirstAdaptDone It will be saved after the vehicle is powered off, and its default value is 0.
[0171] S304: Determine the evaluation time update coefficient.
[0172] In a preferred embodiment of the present invention, in the flag bit b FirstAdaptDone When it is 0, the counter Cnt optimized for misfire diagnosis evaluation time update AdaptCounter Not less than the preset value Cnt A1 Only when the evaluation time update coefficient r is allowed to be updated n [0,1,2,...,9]. Otherwise, in the flag bit b FirstAdaptDone When it is 0, updating the evaluation time update coefficient r is not allowed n [0,1,2,...,9]. In the flag bit b FirstAdaptDone When it is 0, the counter Cnt optimized for misfire diagnosis evaluation time update AdaptCounter Not less than the preset value Cnt A1 When the evaluation time update coefficient r is updated n The update method for [0,1,2,...,9] is: Assume that the current evaluation area is 0. If it is in other evaluation areas, the update method is similar. Update the update coefficient r under the current evaluation area n
[0173] r n [0] = k AdaptWeight × raw [n]+(1-k AdaptWeight )×r n [0](z)
[0174] Among them, r raw [n] is the initial value of the evaluation time update coefficient r raw The value of the n+1th cylinder in [0,1,2,3], r n [0](z) is the update coefficient of the evaluation area of 0 in the previous sampling period (i.e., the evaluation time update coefficient r n [0,1,2,...,9] when the evaluation area is 0 n [0], the default value for the first time is described above. )k AdaptWeight is the weighting coefficient, which is 0.15 in this example.
[0175] Based on the above rules, it is possible to determine the update coefficient r if the current evaluation area is in other areas n , that is, forming r n[0,1,2,...,9].
[0176] In a preferred embodiment of the present invention, in the flag bit b FirstAdaptDone When it is 1, the counter Cnt of the optimization of misfire diagnosis evaluation time update AdaptCounter Not less than the preset value Cnt A2 Time (Cnt A2 Not less than Cnt A1 The main purpose is that the evaluation time is more stable at this time, and the update speed can be slower. In this example, 16) is taken to allow the evaluation time update coefficient r to be updated. n [0,1,2,...,9]. Otherwise, in the flag bit b FirstAdaptDone When it is 1, updating the evaluation time update coefficient r is not allowed n [0,1,2,...,9]. In the flag bit b FirstAdaptDone When it is 1, the counter Cnt of the optimization of misfire diagnosis evaluation time update AdaptCounter Not less than the preset value Cnt A2 When the evaluation time update coefficient r is updated n The update method for [0,1,2,...,9] is:
[0177] Assume that the current evaluation area is 0. If it is in other evaluation areas, the update method is similar. Update the update coefficient r under the current evaluation area n
[0178] r n [0] = k Adapt × raw [n]+(1-k Adapt )×r n [0](z)
[0179] Among them, r raw [n] is the initial value of the evaluation time update coefficient r raw The value of the N+1th cylinder in [0,1,2,3], r n [0](z) is the update coefficient of the evaluation area of 0 in the previous sampling period (i.e., the evaluation time update coefficient r n [0,1,2,...,9] when the evaluation area is 0 n [0], the default value for the first time is described above. )k Adapt is the weighting coefficient, k Adapt No more than k AdaptWeight , k Adapt In this example, 0.005 is used.
[0180] Based on the above rules, we can determine the update coefficient r if the current evaluation area is in other areas n , that is, forming rn [0,1,2,...,9].
[0181] S305: Determine the running time of each tooth after updating.
[0182] Specifically, in the flag bit b FirstAdaptDone When t is 0, ToothTimes [0,1,2,...,Cnt ToothArrayLen +3] is the final running time t of each tooth ToothTimes [0,1,2,...,Cnt ToothArrayLen +3]
[0183] In the flag bit b FirstAdaptDone When T is 1, n [0,1,2,3…] multiplied by the update coefficient r n [0,1,2,...,9] The value in the current evaluation area is the final evaluation time T for misfire diagnosis n-New [0,1,2,3…]. Assuming the evaluation area is 0, the final evaluation time for misfire diagnosis is obtained:
[0184] t ToothTimes [0,1,2,...,Cnt ToothArrayLen +3]=t ToothTimes [0,1,2,...,Cnt ToothArrayLen +3]*r n [0,1,2,...,9], used for misfire evaluation of each cylinder.
[0185] S4. Filter the running time of each tooth.
[0186] This step is for the running time t of each tooth ToothTimes [0,1,2,...,Cnt ToothArrayLen +3] to filter and output the filter running time t of each tooth ToothTimesFilter [0,1,2,...,Cnt ToothArrayLen +1].
[0187] It should be understood that this step is mainly to consider the design deviation of the flywheel teeth and the accuracy of the crankshaft position sensor, which will cause more burr signals to appear in the running time of each tooth, and need to be eliminated for engine torque performance monitoring, so as to improve the accuracy of torque performance monitoring. At the same time, after the filtering algorithm, only the running time of the extra 2 teeth that exceed the evaluation window after filtering needs to be calculated.
[0188] This step specifically includes the following steps:
[0189] S401, set the initial value of the filter time for calculating the running time of each tooth
[0190] t ToothTimesFilterRaw [N] = r1 × t ToothTimes [N]+r2×t ToothTimes [N-1]+r2×t ToothTimes [N-2]
[0191] N is the array t in ToothTimes [0,1,2,...,Cnt ToothArrayLen +3] in the Nth sequence number. In particular, when N = 0 or 1, t ToothTimesFilterRaw [0] = t ToothTimes [0], t ToothTimesFilterRaw [1] = t ToothTimes [0]
[0192] Among them, r1, r2, and r3 add up to 1. The determination method and the torque estimation method described later can achieve the most obvious difference between normal and abnormal engine combustion torque. If it is not obvious, adjust the calibration appropriately to see if the difference can be optimized. If not, do not adjust these calibrations and improve by optimizing the torque performance monitoring method. In this example, 0.1708, 0.8821, and -0.0529 are taken respectively.
[0193] S402, based on this, N=0, 1, 2, ..., Cnt ToothArrayLen +3 initial filter time, and the final filter running time t ToothTimesFilter [N] = t ToothTimesFilterRaw [N+2], after forming the array, becomes
[0194]
[0195] S5. Obtain the engine speed during the running time of each tooth according to the running time of each tooth after filtering:
[0196]
[0197] S6. Obtaining an initial value of the torque difference of each tooth according to the engine speed during the operation time of each tooth.
[0198] In a preferred embodiment of the present invention, the initial value of the torque difference of each tooth is expressed as
[0199] M EstTrqErrRaw [0,1,2,...,Cnt ToothArrayLen +1]. It should be understood that the engine torque difference refers to the difference in engine torque change from the beginning of the current tooth operation to the end of the next tooth operation. If it is a negative value, the engine torque is increasing, and if it is a positive value, the engine torque is decreasing.
[0200] This step includes:
[0201]
[0202] In the above formula, C2 is 3000Nm / (rpm) in this example. 2 .
[0203] S7. Filter the initial value of the torque difference of each tooth.
[0204] It should be understood that the purpose of this step is mainly to remove torque signal glitches, thereby improving the accuracy of torque performance monitoring.
[0205] This step includes the following steps:
[0206] S701, filtering initial value of initial value of torque difference of each tooth
[0207] M EstTrqErrFilter [N] = r1 × M EstTrqErrRaw [N]+r2×M EstTrqErrRaw [N-1]+r2×M EstTrqErrRaw [N-2]
[0208] In particular, when N = 0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0],M EstTrqErrFilter [1] = M EstTrqErrRaw [0].
[0209] S702, based on this, N=0,1,2,…, Cnt ToothArrayLen +3 is the initial value of the filtered torque difference of each tooth, and the final filtered torque difference M EstTrqErr [N]=M EstTrqErrFilter [N+2], after forming an array, becomes M EstTrqErr [0,1,2,...,Cnt ToothArrayLen -1].
[0210] S8. Calculate the total torque variation of the engine within the evaluation window according to the initial value of the torque difference of each tooth after filtering.
[0211] In the preferred embodiment of the present invention, the total engine torque variation is expressed as M TrqDetectDelta This step specifically involves converting M EstTrqErr [0,1,2,...,Cnt ToothArrayLen It should be noted that in this embodiment, the non-negative number and the negative number are added separately and then the two sums are added to obtain the final total torque change M. TrqDetectDelta The purpose of this is to ensure the accuracy of the accumulation algorithm. If an integer and a negative number are added, some data precision will be lost during the code operation, resulting in a loss of precision in the calculation result.
[0212] S9. Determine whether the engine combustion torque is abnormal based on the change in the total engine torque.
[0213] This step includes the following steps:
[0214] S901, total torque change M TrqDetectDelta Filter to obtain the total torque change M after filtering TrqSumMean New :M TrqSumMeanNew =(1-r TrqWeightMean )×M TrqSumMean (z)+r TrqWeightMean ×M TrqDetectDelta
[0215] Among them, M TrqSumMean (z) is the total torque change after filtering in the previous sampling period (especially, its first default value is 0), and its sampling update period is 180 degrees crankshaft angle, that is, from the starting crankshaft angle phi Start At the beginning, the sampling calculation is performed again after the crankshaft rotates 180 degrees. Among them, the total torque change filter coefficient r TrqWeightMean In this example, the value is 0.05 when the catalyst is activated by light-off, and is 0.1 when the catalyst is not activated by light-off.
[0216] S902, calculating the initial value S of the torque characteristic value used to evaluate whether the combustion torque is abnormal TrqDetectRaw :
[0217] S TrqDetectRaw =(1-r TrqWeightVar )×S TrqDetectRaw (z)+r TrqWeightVar ×(M TrqDetectDelta -M TrqSumMeanNew ) 2
[0218] Where S TrqDetectRaw (z) is the initial value of the torque characteristic value of the previous sampling period (especially, its first default value is 0), and its sampling update period is defined in the same way as the sampling period described above. Among them, the torque characteristic value initial value filter coefficient r TrqWeightVar :
[0219] r TrqWeightVar =(1-k TrqWeightVar )×r TrqWeightVar (z)+
[0220] k TrqWeightVar ×(r TrqWeightGain ×b TrqDetectErr (z)+r TrqWeightInc )
[0221] Among them, r TrqWeightVar(z) is the initial value filter coefficient of the torque characteristic value in the previous sampling period. Its sampling update period is defined in the same way as the sampling period described above. Its initial default value is 0.15. The update coefficient k TrqWeightVar In this example, the gain coefficient is 0.65 when the catalyst is activated and 0.7 when the catalyst is not activated. TrqWeightGain In this example, when the catalyst is activated, it is 0.01, and when the catalyst is not activated, it is 0.012. The cumulative coefficient r TrqWeightInc In this example, the value is 0.17 when the catalyst is activated and 0.1 when the catalyst is not activated. TrqDetectErr (z) is the flag bit for whether the engine combustion torque is abnormal in the previous sampling cycle. If it is abnormal, it is 1; if it is not abnormal, it is 0.
[0222] S903, the initial value S of the torque characteristic value TrqDetectRaw Filter and obtain the filtered torque characteristic value S TrqDetect
[0223] S TrqDetect =(1-r TrqWeightVarFilt )×S TrqDetect (z)+r TrqWeightVar ×S TrqDetectRaw
[0224] Among them, S TrqDetect (z) is the total torque change after filtering in the previous sampling period (especially, its first default value is 0), and its sampling update period is defined in the same way as the sampling period described above. TrqWeightVarFilt In this example, the value is 0.3 when the catalyst is activated by light-off, and is 0.15 when the catalyst is not activated by light-off.
[0225] S904: Determine the combustion torque abnormality judgment lower limit value M TrqBoundLower
[0226]
[0227] where k BunndLower is the lower limit deviation coefficient, k BunndLower In this example, the value is 1.8 when the catalyst is activated by light-off, and is 2.3 when the catalyst is not activated by light-off.
[0228] S905: Calculate the torque deviation M used to determine whether the engine combustion torque is abnormal. ErrEst
[0229] M ErrEst =M TrqDetectDelta -M TrqBoundLower .
[0230] S906: Determine whether the engine combustion torque is normal
[0231] If it appears, M ErrEst <M ErrThresh , combustion torque deviation limit M ErrThresh In this example, when the catalyst is activated, it is -0.8Nm, and when the catalyst is not activated, it is -1.2Nm. TrqDetectErr Set to 1, the engine combustion torque is abnormal;
[0232] Otherwise b TrqDetectErr It is 0 and there is no abnormality in the engine combustion torque.
[0233] S907: Determine which cylinder of the engine has abnormal combustion.
[0234] If b TrqDetectErr If it is set to 1, it will read which cylinder is in the power stroke under the corresponding evaluation window, indicating that the corresponding cylinder has abnormal combustion.
[0235] Embodiment 2:
[0236] This embodiment provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the above-mentioned engine combustion torque monitoring method when executing the computer program.
[0237] Embodiment three:
[0238] This embodiment provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned engine combustion torque monitoring method are implemented.
[0239] The above descriptions are merely embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A method for monitoring engine combustion torque, characterized in that: When a preset engine combustion torque monitoring condition is met, the method is executed; the method includes: Read the running time of each tooth of the engine crankshaft flywheel disc at a set sampling period, and correct the running time of each tooth; Determining an evaluation window for estimating engine combustion torque; the evaluation window includes a starting crankshaft angle and a tooth length; When the set activation conditions for the misfire diagnosis evaluation time update optimization process are met, the running time of each tooth is updated; Filter the running time of each tooth; The engine speed during the running time of each tooth is obtained according to the running time of each tooth after filtering; The initial value of the torque difference of each tooth is obtained according to the engine speed during the operation time of each tooth; Filter the initial value of the torque difference of each tooth; Calculate the total torque change of the engine within the evaluation window according to the initial value of the torque difference of each tooth after filtering; Whether the engine combustion torque is abnormal is determined based on the change in the total engine torque.
2. The engine combustion torque monitoring method according to claim 1, characterized in that: The engine combustion torque monitoring conditions include: 1) Enter the specified fire diagnosis area; 2) No fuel cut-off request; 3) The gear position has not changed, and the engine combustion torque monitoring method needs to be executed after a certain delay after the gear position changes; 4) The clutch is in a fully engaged state, and the engine combustion torque monitoring method is executed after a certain delay after the clutch is engaged; 5) The vehicle is traveling on a flat road; 6) The engine water temperature is within the preset range; 7) The throttle opening fluctuates within a certain range; 8) The engine is in running state; When the above conditions are met simultaneously for a certain period of time, it is considered that the engine combustion torque monitoring condition is met; if the engine combustion torque monitoring condition is not met when executing the engine combustion torque monitoring method, the engine combustion torque monitoring method is stopped.
3. The engine combustion torque monitoring method according to claim 1, characterized in that: The engine crankshaft flywheel is provided with a plurality of teeth, and adjacent first missing teeth and second missing teeth, and the running time of the first missing teeth, the second missing teeth, and the first tooth before the first missing teeth is zero; The method for correcting the running time of each tooth is: The running time of the first missing tooth, the second missing tooth, and the first tooth before the first missing tooth are all set as the average running time; the average running time is the average of the running time of the second tooth before the first missing tooth and the running time of the first tooth after the second missing tooth.
4. The engine combustion torque monitoring method according to claim 1, characterized in that: The method for determining an evaluation window for estimating engine combustion torque includes: Through calibration, we can get f1(n,rho), f2(n,rho), Cnt ToothArrayLen1 , Cnt ToothArrayLen2 ; where n and rho are the engine speed and the density of fresh air entering the cylinder, respectively, Cnt ToothArrayLen1 , Cnt ToothArrayLen2 are respectively the first initial teeth number length and the second initial teeth number length; When the catalyst is not in the ignition state or the ignition state is completed, Cnt ToothArrayLen =Cnt ToothArrayLen1 ; When the catalyst is ignited, let Cnt ToothArrayLen =Cnt ToothArrayLen2 ; Cnt ToothArrayLen is the length of the teeth; Determine the starting crankshaft angle: phi Start =f1(n,rho)+b CatHeat ×f2(n,rho); Among them, phi Start is the starting crankshaft angle, b CatHeat Determined according to the catalyst light-off control activation state; The running time of each tooth is expressed as t after correction ToothTimes [c],c=0,1,2,...,Cnt ToothArrayLen +3, c represents the serial number of the tooth.
5. The engine combustion torque monitoring method according to claim 4, characterized in that: The method for updating the running time of each tooth includes: Set the evaluation time update coefficient; Set the counter for updating optimization of misfire diagnosis evaluation time and the initial value of evaluation time update coefficient; Determine the counter for updating optimization of misfire diagnosis evaluation time and the initial value of evaluation time update coefficient; Determine the evaluation time update coefficient; Determine the runtime of each tooth after the update.
6. The engine combustion torque monitoring method according to claim 5, characterized in that: The activation conditions for the fire diagnosis evaluation time update optimization process include: 1) The engine is in running state; 2) All cylinders of the engine are in the fuel cut-off state; 3) The engine is not directly involved in driving the vehicle; 4) The engine does not experience knock or pre-ignition; 5) The running time of each cylinder of the engine within the evaluation window is not 0 for several times; 6) The engine has no faults; The method for setting the counter for updating and optimizing the misfire diagnosis evaluation time and the initial value of the evaluation time update coefficient comprises: Set the evaluation time update coefficient to r n [p],p=1,2,...,p max , where r n The subscript n represents the cylinder number of the engine, p represents the evaluation area, and p max is the maximum value of the serial number of the evaluation area, and the evaluation area is determined according to the engine speed; Set the misfire diagnosis evaluation time to update the optimized counter Cnt AdaptCounter , Evaluation time update coefficient initial value r raw [n]; r raw [n] where n is the cylinder number of the engine; The method for determining the counter for updating and optimizing the misfire diagnosis evaluation time and the initial value of the evaluation time update coefficient comprises: If any of the following conditions are met: 1) The activation conditions for the fire diagnosis evaluation time update optimization process are not met; 2) The evaluation area changes; Then Cnt AdaptCounter Reset to 1 and set r raw [n] Reset to the power-off storage value r n r in [p] n [p real ]; where p real Indicates the current actual evaluation area; Otherwise, Cnt is set after each sampling period. AdaptCounter Add one and accumulate r raw [n]: In the above formula, r raw [n](z) is the initial value of the evaluation time update coefficient obtained in the previous sampling period, n max Indicates the maximum number of cylinders in the engine; where t RawSegmentAvg [n] The acquisition method is: first collect the running time T of each cylinder of the engine within the evaluation window for several times n [k], k = 1, 2, 3, .., .m, where the subscript n represents the cylinder number of the engine, k represents the collected running time number, and m represents the number of times the running time of a certain cylinder is collected; then the running time of a certain cylinder of the engine is averaged to obtain the average running time of the cylinder, thereby obtaining the average running time t of each cylinder of the engine RawSegmentAvg [n]; The method for determining the evaluation time update coefficient comprises: When Cnt AdaptWeightCounter Greater than the preset number Cnt B1 When the evaluation time is updated for the first time, the flag bit b FirstAdaptDone Set to 1; otherwise, flag bit b FirstAdaptDone Set to 0; where Cnt AdaptWeightCounter Cnt in the current evaluation area AdaptCounter Not less than the preset value Cnt A1 The number of times, Cnt AdaptWeightCounter The accumulation method is: Cnt AdaptWeightCounter The default value is 0. AdaptCounter After reset, the accumulation is restarted, Cnt AdaptCounter Not less than the preset value Cnt A1 After that, Cnt AdaptWeightCounter plus one; When b FirstAdaptDone is 0, and Cnt AdaptCounter Not less than the preset value Cnt A1 Only when r is updated n [p]; otherwise when b FirstAdaptDone If it is 0, updating r is not allowed. n [p]; b FirstAdaptDone When r is 0, n The update method of [p] is: r n [p]=k AdaptWeight ×r raw [n]+(1-k AdaptWeight )×r n [p](z) In the above formula, r n [p](z) is the evaluation time update coefficient of the evaluation area p in the previous sampling period, k AdaptWeight is the set weighting coefficient; When b FirstAdaptDone is 1, and Cnt AdaptCounter Not less than the preset value Cnt A2 Only when r is updated n [p],Cnt A2 Not less than Cnt A1 Otherwise, when b FirstAdaptDone When 1, updating r is not allowed n [p]; b FirstAdaptDone When r is 1, n The update method of [p] is: r n [p]=k Adapt ×r raw [n]+(1-k Adapt )×r n [p](z); In the above formula, k Adapt is the set weighting coefficient, k Adapt No more than k AdaptWeight ; The method for determining the updated running time of each tooth includes: When b FirstAdaptDone When it is 0, the running time of each tooth will not be updated; When b FirstAdaptDone When it is 1, the updated t ToothTimes [c] is t before update ToothTimes [c] Multiply by r n [p]; at the same time, T n [k] multiplied by r n [p] Get the updated running time T of each cylinder of the engine within the evaluation window n_new [k].
7. The engine combustion torque monitoring method according to claim 6, characterized in that: The method for filtering the running time of each tooth includes: Set the initial filter running time ToothTimesFilterRaw[c] of each tooth to: t ToothTimesFilterRaw [c]=r1×t ToothTimes [c]+r2×t ToothTimes [c-1]+r2×t ToothTimes [c-2] In the above formula, when c = 0 or 1, t ToothTimesFilterRaw [0] = t ToothTimes [0], t ToothTimesFilterRaw [1]=t ToothTimes [0];r1+r2+r3=1; Determine the final filter run time t for each tooth ToothTimesFilter [c']: t ToothTimesFilter [c']=t ToothTimesFilterRaw [c+1]; In the above formula, c'=0,1,2,...,Cnt ToothArrayLen +1; The method for obtaining the engine speed during the running time of each tooth according to the running time of each tooth after filtering includes: In the above formula, Indicates the engine speed during the running time of each tooth, and C1 is the set value.
8. The engine combustion torque monitoring method according to claim 7, characterized in that: The method for obtaining the initial value of the torque difference of each tooth according to the engine speed during the operation time of each tooth includes: In the above formula, is the initial value of the torque difference of each tooth, and C2 is the set value; The method for filtering the initial value of the torque difference of each tooth includes: Determine the initial value of the filter for the initial value of the torque difference of each tooth: In the above formula, when c'=0 or 1, M EstTrqErrFilter [0] = M EstTrqErrRaw [0], M EstTrqErrFilter [1]=M EstTrqErrRaw [0]; Determine the filtered torque difference for each tooth: In the above formula, c"=0,1,2,...,Cnt ToothArrayLen -1.
9. The engine combustion torque monitoring method according to claim 8, characterized in that: The method for calculating the total engine torque variation within the evaluation window according to the initial value of the torque difference of each tooth after filtering includes: Will Add the numbers in the above formula to get the total engine torque change M within the evaluation window. TrqDetectDelta .
10. The engine combustion torque monitoring method according to claim 9, characterized in that: The method for judging whether the engine combustion torque is abnormal according to the change in the total engine torque comprises: The total engine torque change M TrqDetectDelta Filter to obtain the filtered total engine torque change M TrqSumMeanNew : M TrqSumMean =(1-r TrqWeightMean )×M TrqSumMean (z)+r TrqWeightMean ×M TrqDetectDelta In the above formula, M TrqSumMean (z) is the total engine torque change after filtering in the previous sampling period, r TrqWeightMean is the total torque change filter coefficient, which is determined by the catalyst light-off activation state; Determine the initial value S of the torque characteristic value TrqDetectRaw : S TrqDetectRaw =(1-r TrqWeightVar )×S TrqDetectRaw (z)+ r TrqWeightVar ×(M TrqDetectDelta -M TrqSumMeanNew ) 2 In the above formula, S TrqDetectRaw (z) is the initial value of the torque characteristic value in the previous sampling period, r TrqWeightVar is the initial filter coefficient of torque characteristic value; r TrqWeightVar satisfy: r TrqWeightVar =(1-k TrqWeightVar )×r TrqWeightVar (z)+ k TrqWeightVar ×(r TrqWeightGain ×b TrqDetectErr (z)+r TrqWeightInc ) In the above formula, r TrqWeightVar (z) is the initial filter coefficient of the torque characteristic value in the previous sampling period, k TrqWeightVar is the update coefficient, r TrqWeightInc is the cumulative coefficient, k TrqWeightVar 、r TrqWeightInc are determined by the catalyst light-off activation state, b TrqDetectErr (z) is b of the previous sampling period TrqDetectErr , b TrqDetectErr It is the flag of whether the engine combustion torque is abnormal. If the engine combustion torque is abnormal, b TrqDetectErr Take 1, otherwise take 0; Filter the initial value of the torque characteristic value: S TrqDetect =(1-r TrqWeightVarFilt )×S TrqDetect (z)+r TrqWeightVar ×S TrqDetectRaw In the above formula, S TrqDetect is the torque characteristic value after filtering, r TrqWeightVarFilt is the filter coefficient of the torque characteristic value after filtering, which is determined by the activation state of the catalyst light-off; Determine the combustion torque abnormality judgment lower limit value M TrqBoundLower : In the above formula, k BunndLower is the lower limit deviation coefficient, which is determined by the catalyst light-off activation state; Determine the torque deviation M ErrEst : M ErrEst =M TrqDetectDelta -M TrqBoundLower Determine whether the engine combustion torque is normal: If M ErrEst <M ErrThresh , it is judged that the engine combustion torque is abnormal, b TrqDetectErr Set to 1, otherwise it is judged that the engine combustion torque is not abnormal, b TrqDetectErr Set to 0; where M ErrThresh is the combustion torque deviation limit, which is determined by the catalyst light-off activation state; When the engine combustion torque is abnormal, read which cylinder is in the power stroke under the corresponding evaluation window to determine whether the cylinder has abnormal combustion.
Citation Information
Patent Citations
A method for detecting misfires in gasoline engines
CN111336011B
Misfire diagnosis method in hybrid electric vehicle engine rotating speed mode and electronic equipment
CN113460025A
Engine torque control method and device, electronic equipment and storage medium
CN116517715A
Method for monitoring operational parameters in an internal combustion engine
EP3008444A1
Measuring method of torque of engine
JP1985188826A
