Modeling Engine Timing Using Triggered Subsystems


*Note: See the closed-loop engine model (an enhanced version of the this model).

Analysis and Physics



  1. Throttle

  2. Intake manifold

  3. Mass flow rate

  4. Compression stroke

  5. Torque generation and acceleration




  1. an empirical function of the throttle plate angle only

  2. a function of the atmospheric and manifold pressures


Equation 1

$$\dot{m}_{ai} = f(\theta)\cdot g(P_m) = \mbox{mass flow rate into manifold (g/s)}$$

$$f(\theta) = 2.821 - 0.05231\cdot\theta + 0.10299\cdot\theta^2 - 0.00063\cdot\theta^3$$

$$g(P_m) = 1; \mbox{ if } P_m \le P_{amb}/2 $$

$$g(P_m) = \frac{2}{P_{amb}} \sqrt{P_mP_{amb} - P^2_m}; \mbox{ if } P_{amb}/2 \le P_m \le P_{amb} $$

$$g(P_m) = -\frac{2}{P_m} \sqrt{P_m P_{amb} - P^2_{amb}}; \mbox{ if } P_{amb} \le P_m \le 2P_{amb} $$

$$g(P_m) = -1; \mbox{ if } P_m \ge 2P_{amb} $$

$$\dot{m}_{ai} \rightarrow \mbox{mass flow rate into manifold (g/s); } $$

$$ \theta \rightarrow \mbox{throttle angle (deg);}$$

$$ P_m \rightarrow \mbox{manifold pressure (bar); } $$

$$P_{amb} \rightarrow \mbox{ambient (atmospheric) pressure (bar);}$$

Intake Manifold


Equation 2

$$\dot{P}_m = \frac{RT}{V_m}\left( \dot{m}_{ai} - \dot{m}_{ao} \right)$$

$$&#xA;R \rightarrow \mbox{specific gas constant; }&#xA;$$

$$&#xA;T \rightarrow \mbox{temperature (K); }&#xA;$$

$$&#xA;V_m \rightarrow \mbox{manifold volume } (m^3) \mbox{; }&#xA;$$

$$&#xA;\dot{m}_{ao} \rightarrow \mbox{mass flow rate of air out of the manifold (g/s); }&#xA;$$

$$&#xA;\dot{P}_m \rightarrow \mbox{rate of change of manifold pressure (bar/s);}&#xA;$$

Intake Mass Flow Rate


Equation 3

$$&#xA;\dot{m}_{ao} = -0.366 + 0.08979\cdot N\cdot P_m - 0.0337\cdot N\cdot P^2_m&#xA;+ 0.0001\cdot N^2 \cdot P_m&#xA;$$

$$ N \rightarrow \mbox{engine angular speed (rad/s); } $$



Compression Stroke


Torque Generation and Acceleration


Equation 4

$$&#xA;Torque_{eng} = -181.3 + 379.36\cdot m_a + 21.91\cdot \left( \frac{A}{F} \right) -&#xA;0.85 \cdot \left( \frac{A}{F} \right)^2 + 0.26\cdot \sigma - 0.0028\cdot \sigma^2 +&#xA;$$

$$&#xA;+ 0.027 \cdot N - 0.000107 \cdot N^2 + 0.00048 \cdot N \cdot \sigma +&#xA;2.55 \cdot \sigma \cdot m_a - 0.05 \cdot \sigma ^2 \cdot m_a&#xA;$$

$$ m_a \rightarrow \mbox{mass of air in cylinder for combustion (g); } $$

$$ \left( \frac{A}{F} \right) \rightarrow \mbox{air to fuel ratio; } $$

$$&#xA;\sigma \rightarrow \mbox{spark advance (degrees before top - dead - center); }&#xA;$$

$$ Torque_{eng} \rightarrow \mbox{torque produced by the engine (Nm); } $$

Calculate the engine angular acceleration using Equation 5

Equation 5

$$ J \dot{N} = Torque_{eng} - Torque_{load}$$

$$ J \rightarrow \mbox{engine rotational moment of inertia } (kg\cdot m^2) \mbox{; }$$

$$ \dot{N} \rightarrow \mbox{engine angular acceleration } (rad/s^2) \mbox{; }$$

Open-Loop Model



Opening and Running the Simulation










Intake and Compression






Plotting Simulation Results

We used the following default inputs for the simulation:

$$Throttle  = 8.97\mbox{ (deg) if } t < 5 $$

$$Throttle  = 11.93\mbox{ (deg) if } t \ge 5 $$

$$Load  = 25 \mbox{ (Nm) if } t \le 2 \mbox{ or } t\ge 8 $$

$$Load  = 20 \mbox{ (Nm) if } 2 < t \le 8 $$


Figure 3a: Open-loop simulation inputs

Figure 3b: Open-loops simulation results

Closing Model

Close the model. Clear generated data.










Was this topic helpful?