A Control-Oriented Engine Torque Online Estimation Approach for Gasoline Engines Based on In-Cycle Crankshaft Speed Dynamics

Engine brake torque is a key feedback variable for the optimal torque split control of an engine–motor hybrid powertrain system. Due to the limitations in available sensors, however, engine torque is difficult to measure directly. For torque estimation, the unknown external load torque and the overlap of the expansion stroke between cylinders introduce a great disturbance to engine speed dynamics. This makes the conventional cycle average engine speed-based estimation approach unusable. In this article, an in-cycle crankshaft speed-based indicated torque estimation approach is proposed for a four-cylinder engine. First, a unique crankshaft angle window is selected for load torque estimation without the influence of combustion torque. Then, an in-cycle angle-domain crankshaft speed dynamic model is developed for engine indicated torque estimation. To account for the effects of model inaccuracy and unknown external disturbances, a “total disturbance” term is introduced. The total disturbance is then estimated by an adaptive observer using the engine’s historical operating data. Finally, a real-time correction method for the friction torque is proposed in the fuel cut-off scenario. Combining the aforementioned torque estimators, the brake torque can be obtained. The proposed algorithm is implemented in an in-house developed multi-core engine control unit (ECU). Experimental validation results on an engine test bench show that the algorithm’s execution time is about 3.2 ms, and the estimation error of the brake torque is within 5%. Therefore, the proposed method is a promising way to accurately estimate engine torque in real-time.


Introduction
Engine-motor hybrid powertrain systems have been widely used in passenger vehicles [1] to meet increasingly strict emission legislation and improve fuel economy. Optimal torque split between the engine and torque is obviously essential to achieve the best overall efficiency for hybrid vehicles.
Due to the fundamental nature of internal combustion engines (ICEs), the torque's response is slower than the motor's and is usually difficult to measure directly [2,3]. The degradation in engine torque control performance will, in turn, have an adverse effect on the overall fuel economy of the hybrid powertrain systems [4]. This drives the need for real-time estimation of the engine torque, especially in the application of hybrid electric vehicles (HEVs) [5].
Various solutions were available for engine torque control in the past. The most straightforward method to measure the engine torque is by in-cylinder pressure sensors or torque sensors. These solutions, however, increase the hardware cost and create an issue of durability. For instance, the cylinder's pressure may suffer from its harsh thermal environment. These factors limit the application of this method in stock engines [6][7][8][9].

Experiment Setup
The experiment was conducted on a Greatwall Motor EC02 GDI (Gasoline Direct Injection) engine test bench (as shown in Figure 1) with a Horiba DYNAS3 LI 250 electric dynamometer. The schematic diagram of the test bench is shown in Figure 2. The engine has a firing order of 1-3-4-2, and all four cylinders are equipped with in-cylinder pressure sensors for the indicated torque estimation (the baseline for observer validation). The detailed engine specifications are tabulated in Table 1.

Engine Torque Observer Development
In this section, the derivation of the proposed engine torque estimation algorithm is discussed in detail, including engine dynamic model identification, the indicated torque observer [29], and the brake torque observer.

Engine Dynamic Model
The instantaneous rotational speed of the crankshaft is affected by the torque enforced by the crankshaft following Newton's law. In the crankshaft dynamics, a combination of the brake torque, the friction torque, the indicated torque, and the reciprocating inertia torque works on the crankshaft, causing engine instantaneous speed to fluctuate. There are two kinds of dynamic model in literature, the elastic model and the rigid-body model. The rigid-body model is simplified from the elastic model. Although the elastic model of the crankshaft has high accuracy, the calculation process needs to consume more computing resources. The rigid-body crankshaft dynamic model needs less computing resources, but it has a lower accuracy. This section proposes a rigid-body crankshaft model with a disturbance factor (1), which is used to compensate the error caused by dynamic model simplification process.
where is the rotational inertia of the crankshaft, is the rotation angle of the crankshaft, Δ is the disturbance factor, is the angular acceleration of the crankshaft, is the indicated torque, is the reciprocating inertia torque, is the friction torque, and is the brake torque. As seen in Equation (1), the angular acceleration is the second-order derivative of the crankshaft rotation angle ( ), which is very noisy. So, a finite impulse response (FIR) filter is used to process the angular speed signal with a cut-off frequency of 300 Hz. A Kalman filter is used to calculate the angular acceleration.

Reciprocating Torque
The reciprocating torque is generated by the reciprocating part of the connecting rod system. The schematic diagram of the movement of the connecting rod system is as follows in Figure 3. , is the reciprocating mass of the system, including the piston group and the reciprocating part of the connecting rod.
is the length of the reciprocating part of crank connecting rod mechanism.
, is the rotation mass of the system, including the crankshaft and the rotation part of the connecting rod mechanism, and is the length of the rotating part of the connecting rod. denotes the length of the connecting rod.
is radius of the crank. is the crankshaft rotation angle. denotes the connecting rod angle.
is the velocity of the piston. is the linear velocity of the crank.
denotes the piston pin offset, which is neglected in this research. According to the law of conservation of energy, the system's kinetic energy consists of the kinetic energy of the reciprocating mass and the rotation mass, which can be expressed as Equation (2) [23].
The velocities of the reciprocating mass and the rotation mass can be expressed as: where = ( / ) denotes the crank radius to connecting rod length ratio [23].
So, according to Equations (2) and (3), the moment of inertia of the system can be expressed as: denotes the reciprocating torque [23]. where: The total reciprocating torque can be written as: where: is the number of cylinders, in this case = 4. ( = 1, … , ) denotes the phase of the th cylinder [13].

Indicated Torque Estimation
Indicated torque is generated at two process, the compression process and the combustion process. The indicated torque during combustion process is difficult to estimate. However, the compression process can be considered as a polytropic process, the in-cylinder pressure can be estimated using the manifold absolute pressure (MAP) sensor and the intake air temperature (IAT) sensor, assuming that the in-cylinder pressure can be approximated by MAP at the timing of intake valve closing and corrected by volumetric efficiency. The MAP sensor and IAT sensor are already standard sensors equipped in stock engines. The estimated pressure then can be used to calculate the indicated torque during compression process, shown in Figure 4.
where denotes the in-cylinder pressure; denotes the gas volume; and is the polytropic process factor, which is taken to be 1.3 in this research within the compression stoke [21].
where is the combustion chamber volume, and is the cylinder diameter [22]. The total indicated torque is:

Load Torque Estimation
For an internal combustion engine, the load torque ( ) involves two parts: The brake torque ( ) and the friction torque ( ). a slow-varying variable compared to the combustion process, so can be considered approximately as a constant in one cycle. In the crankshaft dynamic model, both and are unknown variables, which makes difficult to estimate. In Section 3.1.2, during the compression process can be estimated, which can be defined as gas torque ( ). For four-cylinder engines and engines with less than four cylinders, there is a unique crankshaft angle window, where the sum of the other three cylinders can be neglected [21]. Within this particular crankshaft angle window, the total indicated torque can be calculated from the cylinder in the compression phase. A estimator can be designed in this window, where there is no combustion, even for all cylinders. A bench test was done to locate this angle window, and experimental result shows that 50 crank angle before TDC to 20 crank angle before TDC is the unique angle window to estimate the total gas torque for all cylinders. Meanwhile, this angle window can be used to estimate and Δ ( ). In the unique crankshaft angle window from 50° before TDC to 20° before TDC, the only unknown variables are and Δ ( ). So the estimation issue can be regarded as a system parameter estimation issue. The least-squares method is a method for identifying system parameters. However, there are few sampling points in the unique window, and the least-squares method is challenging for online applications. So estimation algorithm using the recursive least-squares method is proposed, and the algorithm can process the sampling data in multiple cycles. The estimated load torque ( ) at the end of last cycle will be set as the initial load torque into the engine load torque estimator. and Δ ( ) are key variables for observer in the next section. The specific algorithm is shown in Figure 5. The manifold absolute pressure at intake valve close (IVC) _ is used to calculate . During the unique crankshaft angle window, Equation (1) can be transformed as: where: For the K times of successive sampling, Equation (10) can be: Where is white noise with mean value 0. So Equation (11) can be described as: According to the recursive least-squares method: For +1, when a new ( + 1) and ( + 1) are calculated, we define = [ ( + 1) 1], so: Then the can be estimated using recursive least-squares method: The convergence of requires a certain amount of and . Therefore, the recursive process is expanded to multiple cycles, that is, the initial value of the estimated parameter , including and Δ ( ), is the result of the last estimated value from the previous cycle.

Engine Management Model
This engine management model is a serious model to calculate the initial indicated torque , and the model is the base of the extended state observer (ESO) to estimate the indicated torque. The engine management model contains the thermal efficiency model, the crankshaft dynamic model, etc. [30].
The indicated work comes from the combustion process of the delivered fuel, and can be modeled as a function of fuel heating value, the delivered mass of the gasoline and the operation conditions [30]. The indicated work can be expressed as: where is indicated work, is the delivered gasoline mass, is gasoline heating value. is thermal efficiency, which can be expressed as: where denotes the compression ratio, is the engine displacement, is the position for the ignition timing, is the ignition efficiency, , ( , ) is the heat transfer efficiency between the real and the ideal cycles, denotes the air/fuel ratio, and min (1, ) describes that the fuel mass cannot fully utilized in the case of a rich mixture [30].
The engine dynamic model used in this section is already mentioned in Section 3.1

Indicated Torque Observer Design
Here, an indicate torque observation method is built using ESO. The indicated thermal efficiency is the key parameter to calculate the indicated torque. However, the is a state parameter of the combustion process, which is impossible to measure. So an ESO is built on the base of the engine management model, the uncertainty of the indicated thermal efficiency ∆ is proposed to compensate the total error of the engine management model. The indicated torque observer based on ESO is shown in Figure 6.
The intake air quantity ( ) used to calculate the initial indicated torque, along with the estimated in Section 3.1.3, are processed by crankshaft dynamic model into engine rotation speed . The engine speed simulated by the crankshaft dynamic model is compared with the engine speed measured. The error between the simulated engine speed and the measured engine speed is obtained by ESO-based indicated thermal efficiency observer to calculate the ∆ . Once the ∆ is calculated, the indicated torque can be calculated using ∆ , , and . The detailed solution consists of system modeling in Equation (18), the model-based ESO design as Equation (20), and the ESO parameter tuning as Equation (23). The crankshaft dynamic model can be described as a first order linear system, as in Equation (18): The ESO can be described as: where is the estimated value of , and is the estimated value of [31]. So, Equation (18) can be described as: where: State matrix A, B, C, and gain matrix L can be described as: To make the indicated thermal efficiency observer in Equation (19) converge, the characteristic roots of the polynomial − should be located in the left half of the complex plane.
According to [31], the observer gains, and , can be solved by the pole configuration method, and the concept of the bandwidth was introduced. The observer gain factors and represent the observation speed of the observer, which is the bandwidth. With larger bandwidth, the observer can acquire more information, but more system noise is also sampled by the observer. In Equation (23), must be a positive value to ensure the convergence of the observer.
( + ) = + * + * * (23) By adjusting the bandwidth parameter to adjust the system gains and , the observer can get a better observation result. So the complicated parameter adjustment problem of the system gains and can be simplified into one parameter problem, which can greatly reduce the workload of the indicated thermal efficiency observer parameter adjustment.

A Self-Learning Observer for Brake Torque Estimation
The of a GDI engine (the total torque of the brake torque and friction torque) was estimated. In order to calculate the brake torque ( ), the engine friction torque ( ) must be calculated first. An empirical engine friction model is established to change the look-up tables in traditional control algorithms. The engine friction model's parameters could be identified during certain operation points of the engine, such as in idle and fuel cut-off operating conditions, which do not only save a large amount of calibration work, but can also update the friction torque, along with the engine operations. Finally, both and can be calculated from load torque (as in Section 3.1.3.
Engine friction torque includes the friction loss of accessories in mechanical systems, the friction loss of crankshaft bushings, piston liners and piston rings, the friction loss of valve trains, etc. A detailed engine friction torque model could better describe the relationship between and engine working characteristics, but this model would be too complicated and unsuitable for online applications. In traditional applications, a look-up table is used to describe friction torque. Thus, it requires a large amount of calibration work and is not easy to be corrected online. Therefore, a friction torque mean value model is proposed.
According to [32], increases with an increase in engine speed. This relationship can be described as in Equation (24): where is the engine's average speed; and , , and are the model's parameters. is also related to oil temperature. The reference friction torque is calculated as at the oil viscosity of ; then, regardless of the initial oil viscosity, after an initial period of transient behavior, the can be expressed with an oil viscosity of [33], as follows: where is the model's parameter. generally is taken within the range of 0.29 to 0.35. In this study, the correction of the oil viscosity is simplified as follows: where is the oil temperature of the engine, and the reference temperature is 0 °C. Base on the reference model at a temperature of 0 °C, an engine friction model is proposed as: A friction torque look-up table requires a large amount of calibration work and cannot describe the aging issues as the engine operates. Thus, an engine friction model parameter self-learning algorithm is proposed (shown as Figure 7). The parameters are estimated based on engine idle and fuel cut-off operating conditions. Once the engine starts, it will retain idle speed operations. In this working condition, the engine's average speed will remain stable as the temperature of the cooling water and oil start to rise. In this process, the temperature parameter can be identified. During engine stop operations, the engine stops supplying fuel so the crankshaft rotation speed decreases over a few seconds. During this process, the temperature of the cooling water and oil barely change, so the engine speed parameters , , and can be identified. In engine idle speed working conditions, the crankshaft average speed remains stable and engine indicated torque is used to overcome friction loss.
during idle speed operations is estimated in Section 3 using the engine management model and crankshaft instantaneous speed. Thus, the friction torque can be expressed as: In fuel cut-off operating conditions, the crankshaft dynamic system is only affected by friction. Thus, the process can be described as: During the idle and fuel cut-off operating conditions, the friction torque of the two working conditions can be estimated. However, this only covers a small part of the whole engine operation range. Once the parameters in the model are identified, the friction torque model can be expanded to cover a larger working range. While the friction torque model is a nonlinear model, it is very challenging to directly identify the speed parameter and oil temperature parameter at the same time in online applications. Therefore, it is necessary to combine the two working conditions-idle and fuel cut-off operating conditions-to identify the model parameters.
In idle speed working conditions, the relation between friction torque and oil temperature can be rendered as: or In fuel cut-off operating conditions, the oil temperature barely changes. The friction torque model can be described as: By combining the particularity of the specific operating conditions of the engine, the nonlinear coefficients in the model are temporarily eliminated, and the linearization of the model's coefficients is realized. During this process, the structure and parameters of the model do not change, and the relationship between the friction torque described in the model and the speed and oil temperature is not affected, so the accuracy of the model is not affected.
The parameters of the model are identified by the recursive least squares method. The description of the friction torque model can be abstracted into the following formula: where is the mode input, is the model's output, and stands for the parameters of the model. The parameters' identification process using the recursive least squares method can be expressed as: In engine idle speed working conditions, the system can be described as: and for fuel cut-off process as: After the friction model's parameters are identified, a friction torque model can be acquired. On the basis of the identified friction torque, can then be calculated from the aforementioned .

Methodology
The validation experiment for engine torque estimation was conducted on the test bench mentioned in Section 2. Then the , , , estimation validation results were discussed one-by-one. Additionally, the real-time performance of the engine torque observer in a multi-core ECU was also discussed.
To validate the torque estimation algorithm, the torques were measured or calculated from the sensors equipped in test bench and the engine, as seen in Table 2.
First, was validated at steady state at the brake mean effective pressure (BMEP) of 6 bar at 1400 rpm and a BMEP of 5 bar at 1600 rpm.
was not straightforward to be measured accurately using the test bench, especially during transients, due to the existence of the rotational momentums of the engine and dynamometer. Additionally, the transient process was much slower for the load torque variation relative to the combustion process. Therefore, the load torque was validated only at steady state in this work. Then, to conduct the estimation validation, an engine motoring experiment was carried out. Recall that consists of two torques, and , where is obtained from the engine motoring experiments and is measured directly by the dynamometer.
is then obtained by summing up and . For the validation of the , an engine motoring experiment was conducted from 800 to 1800 rpm under multiple oil temperature. In the motoring test, the could be approximately measured by the dynamometer, and for the validation, was directly recorded by the dynamometer.
The validation of the indicated torque was carried out at both steady-state and transient conditions. This is because the dynamic of indicated torque during transients is complex, caused by the breathing and combustion process. As all four cylinders are equipped with in-cylinder pressure sensors, the for validation was calculated from the measured in-cylinder pressure and engine geometry using Equation (9).
Finally, the real-time performance of the engine torque observer in a multi-core ECU, such as computational time and CPU loads, is discussed.  Figure 8a shows the load torque estimation results at the BMEP of 6 bar at 1400 rpm, the observation algorithm starts to approach the measured load torque in the first five cycles rapidly, and the load torque observer starts to converge within 40 cycles. After the observer converges, the estimated load torque still fluctuate within a small range of 3 Nm. The fluctuation is caused by the combustion cyclic variations. At a BMEP of 5 bar with the engine speed of 1600 rpm (Figure 8b Figure 10a shows the indicated torque estimation results from a throttle opening of 7.2-10.8% at 1000 rpm. It can be seen that at the moment when the throttle starts to change, the estimated indicated torque fluctuates. This is because the ESO-based indicated torque observer not only used the engine speed and manifold pressure as the state feedback, but also used the derivative term of the engine speed and manifold pressure as feedback. After the throttle opening changes, there are several cycle delays between the estimated indicated torque and the measured indicated torque. However, when the indicated torque observation is stable, the estimation error between the estimated value and the measured value is within 3%. Figure 10b shows the indicated torque estimation results from a throttle opening of 9-11.7% at 1400 rpm. Moreover, the estimation error between the estimated value and the measured value is also within 3%.  Figure 11a shows the indicated torque estimation result at 3 bar to 6 bar at 1000 rpm. In steady state operations, the estimated indicated torque has a certain deviation from the measure value. At 3 bar, the estimated indicated torque is about 1.83 Nm larger than the measured value, and the mean relative error is 3.7%. At 4 bar, 5 bar, and 6 bar, the mean relative error is 4.7%, 1.8%, and 3.6%, respectively. In summary, the mean relative error of the indicated torque estimation at the 3-6 bar operating point covered by 1000 rpm is within 5%. As the engine speed increases to 1400 rpm (Figure  11b), the mean relative error of the indicated torque estimation is within 5%, from 3-6 bar.  Figure 12 shows the indicated torque estimation result summary from 1000 to 1800 rpm; the average estimation accuracy under different loads could reach 96.1%. The estimation of the indicated torque not only provides a basis for the optimal control of the engine ignition's advance angle, but also lays a foundation for the friction torque model identification and brake torque estimation.

Friction Model Parameter Identification Result
A test bench experiment was carried out to estimate the oil temperature parameter at an engine speed of 1000 rpm in an idle state. For the engine speed parameters , , , an engine fuel cut-off experiment was carried out at an oil temperature of 55 °C. The trend of gradual convergence is presented, and convergence was achieved by 40 fittings during the engine stop process, as shown in Figure 13. The final identified parameter values are shown in Table 3.

Friction Torque Estimation Validation
In order to verify the validity of the identification parameters and the accuracy of the friction torque mean model based on the identification parameters, an engine motoring experiment was carried out. The friction torque model obtained by the model parameter identification method can better describe the average value of the friction torque at different speeds and different oil temperatures. As shown in Figure 14, by comparing the friction torque model identified by learning with the friction torque value obtained in the engine motoring experiment, the maximum deviation is 1.55 Nm and the average deviation is 1.27 Nm at an engine oil temperature of 80 °C. When the oil temperature is 70 °C, the maximum deviation is 1.39 Nm and the average deviation is 1.17 Nm. At an oil temperature of 60 °C, the maximum deviation of the friction torque is 0.75 Nm and the average deviation is 0.53 Nm. At an oil temperature of 50 °C, the maximum deviation of the friction torque output from the output of the friction torque model is 0.58 Nm and the average deviation is 0.27 Nm. As the oil temperature increases, the deviation between the friction torque model and the friction torque obtained by the reverse drag test tends to increase. As shown in Figure 15, at different engine speeds, the friction torque model identified by learning was compared with the friction torque value obtained by the engine motoring experiment. At 800 rpm, the maximum deviation of the model compared with the reversed data is 1.48 Nm and the average deviation is 0.85 Nm. At 1000 rpm, the maximum deviation of the model is 1.41 Nm and the average deviation is 0.95 Nm. At 1200 rpm, the maximum deviation is 1.34 Nm and the average deviation is 0.91 Nm. At a speed of 1400 rpm, the maximum deviation of the model compared with the reversed data is 1.33 Nm and the average deviation is 0.92 Nm. At a speed of 1600 rpm, the maximum deviation of the lower model compared to the inverted data is 0.88 Nm and the average deviation is 0.48 Nm. With an increase of the rotational speed, the friction torque average model is relatively stable compared to the friction torque obtained by the reverse drag test, showing a decreasing trend.

Brake Torque Estimation Result
On the basis of the identified friction torque, the engine brake torque ( ) is decoupled from the load torque ( ). A test bench experiment was done to validate the estimated brake torque compared to the reference brake torque measured by a dynamometer.  starts to approach the measured value rapidly in the first five cycles, and the brake torque estimates over 30 cycles tend to be stable. However, due to the combustion cyclic variations, fluctuates. Between the 30th cycle and the 50th cycle, fluctuates within 4 Nm and has good stability. At a load of 4 bar, the brake torque observation algorithm starts to approach the measured brake torque in the first 10 cycles and finally approaches stability after calculating 17 cycles.
fluctuates between the 17th and 50th cycles.   Figure 18a,b shows the observations of the engine speed at 1600 rpm at 3 bar and 5 bar, respectively. Under a load of 3 bar, the brake torque converges to the reference value after 20 cycles, and the amplitude of the fluctuation after stabilization is about 5 Nm. Under a 5 bar load, the approach value is almost reached after five cycles, but after 15 cycles, the observer tends to be stable, and the amplitude of the brake torque after stabilization is small (concentrated around 3 N); moreover, the observation accuracy is promising.
Based on the above observations of steady-state conditions, the observation algorithm starts to converge rapidly during the first 10 cycles and basically stabilizes in the 20th to 30th cycles. The estimation accuracy of the steady-state test conditions increases to 95.8%. Even under steady-state conditions, there are still fluctuations in the observed brake torque because the brake torque is estimated based on the load torque estimation. Due to the cyclic variations of the engine combustion process, the cyclic fluctuation of the indicated torque further results in speed fluctuations, which in turn cause fluctuations in the estimations of the and .

Real-Time Performance of the Brake Torque Observer in a Multi-Core ECU
Considering the limited computational speed of the embedded platform, observation, the observation, self-learning, and calculation algorithm need to select methods suitable for operation on the embedded computing platform (specifications as Table 4). On the embedded computing platform, it is necessary to meet the characteristics of fast calculation speed, strong realtime performance, and the accuracy of observation.  Table 5. Engine brake torque estimation task table.

Task index Task content Allocation Task_0
Crankshaft speed signal processing GTM processor Task_1  estimation  CPU  Task_2  estimation  CPU  Task_3 self-learning and calculation CPU As shown in Table 5, the torque observation algorithm can be divided into four tasks in the embedded platform. The first task is a model-based Kalman filter for engine velocity and acceleration processing. The second task is the load torque estimation algorithm. The third task is the model-based indicated torque estimation algorithm. The fourth task is the friction torque self-learning and brake torque calculation task.
As shown in Figure 19, the velocity-related signal is processed utilizing a general timer module (GTM), which is isolated from the CPUs. The velocity processing results by GTM were shared in a public memory area that could be accessed by other CPUs, which could reduce the processing load of the CPU in the microcontrollers. The algorithm was converted to C code via Target-Link, compiled into executable files, and processed in an AURIX based ECU. Figure 19. The software and hardware collaborative processing framework for brake torque estimation.
Third-party developing tools (shown as Figure 20) were used to measure the CPU load of the torque observation tasks. As shown in Table 6, task 0 has a CPU load of 0.55% because the main signal processing algorithms is implemented in the GTM processor. Task 1 has a CPU load of 16.04% and task 2's CPU load is 29.87%, which are the tasks of the load torque estimation and indicated torque estimation algorithms. Task 3 mainly processes the friction torque and brake torque calculation. This algorithm works at certain operating points, and a few calculations are needed, so the algorithm has a CPU load of 1.33%. Moreover, the whole torque estimation algorithm costs 3.2 ms per cycle, which is promising for real-time applications. Figure 20. Task_0, task_1, task_2, and task_3 CPU load when executing the algorithm. Table 6. Engine brake torque estimation task table.

Conclusions
In this paper, an approach for the online estimation of engine brake torque was proposed, utilizing the standard crankshaft instantaneous speed signal of stock engines. The main accomplishments are summarized below.
1) An in-cycle crank angle-based crankshaft dynamic model was established, where a crank angle interval is chosen by experiments to estimate the load torque without influence from the combustion torque. A disturbance factor was designed to compensate for the deviation of the model from the real engine. Results show that the error of the estimated load torque is within 3 Nm.
2) An indicated torque observer algorithm is proposed. The observer is an ESO, and the indicated torque observer was validated for both the steady state and transient state in experiments. Results show that the estimation error is less than 4%.
3) A self-learning friction torque estimator was developed, which allows one to estimate the engine brake torque with the aforementioned sub-estimators. For this estimator, the parameters of the friction torque model were identified online in idle and fuel cut-off operating conditions. Experimental validation of the results show that the brake torque observation error is less than 5%.
4) The proposed algorithm was implemented in a multi-core ECU with a cycle-triggered runnable. Results show that the corresponding computational time is 3.2 ms with a CPU computational load of 47.41%. This algorithm is suitable for real-time control applications, such as the optimal torque split control of HEVs.
Author Contributions: Q.T. and D.Z. carried out the engine test. K.S., Q.T. and D.Z. worked together on the experimental data analysis, model-based observer design, and paper writing. H.X. provided many valuable insights on the model-based observer design and validation.

Conflicts of Interest:
The authors declare no conflicts of interest.