SI Controller
Spark-ignition engine controller that uses the driver torque request
Libraries:
Powertrain Blockset /
Propulsion /
Combustion Engine Controllers
Description
The SI Controller block implements a spark-ignition (SI) controller that uses the driver torque request to calculate the open-loop air, fuel, and spark actuator commands that are required to meet the driver demand.
You can use the SI Controller block in engine control design or performance, fuel economy, and emission tradeoff studies. The core engine, throttle, and turbocharger wastegate subsystems require the commands that are output from the SI Controller block.
The block uses the commanded torque and engine speed to determine these open-loop actuator commands:
Throttle position percent
Wastegate area percent
Injector pulse-width
Spark advance
Intake cam phaser angle
Exhaust cam phaser angle
Exhaust gas recirculation (EGR) valve area percent
The SI Controller block has two subsystems:
The
Controller
subsystem — Determines the commands based on the commanded torque, measured engine speed, and estimated cylinder air mass.The
Estimator
subsystem — Determines the estimated air mass flow, torque, and exhaust gas temperature from intake manifold gas pressure, intake manifold gas temperature, engine speed, and cam phaser positions.
The figure illustrates the signal flow.
The figure uses these variables.
N | Engine speed |
MAP | Cycle average intake manifold pressure |
IAT |
Intake air temperature |
Tin,EGR |
Temperature at EGR valve inlet |
MAT | Cycle average intake manifold gas absolute temperature |
, |
Intake cam phaser angle and intake cam phaser angle command, respectively |
, |
Exhaust cam phaser angle and exhaust cam phaser angle command, respectively |
EGRap, EGRapcmd |
EGR valve area percent and EGR valve area percent command, respectively |
ΔPEGR |
Pressure difference at EGR valve inlet and outlet |
WAPcmd |
Turbocharger wastegate area percent command |
SA |
Spark advance |
Fuel injector pulse-width | |
TPPcmd |
Throttle position percent command |
The Model-Based Calibration Toolbox™ was used to develop the tables that are available with the Powertrain Blockset™.
Controller
The block determines the commanded engine load (that is, normalized cylinder air mass) from a lookup table that is a function of commanded torque and measured engine speed.
To achieve the commanded load, the controller sets the throttle position percent and turbocharger wastegate area percent using feed forward lookup tables. The lookup tables are functions of the commanded load and measured engine speed.
To determine the cam phaser angle commands, the block uses lookup tables that are functions of estimated engine load and measured engine speed.
The block calculates the desired engine load using this equation.
The equations use these variables.
Lest | Estimated engine load |
Lcmd | Commanded engine load |
N | Engine speed |
Tcmd | Commanded engine torque |
TAPcmd | Throttle area percent command |
TPPcmd | Throttle position percent command |
WAPcmd | Turbocharger wastegate area percent command |
Crankshaft revolutions per power stroke | |
Standard pressure | |
Standard temperature | |
Ideal gas constant for air and burned gas mixture | |
Displaced volume | |
Estimated engine air mass flow |
The controller subsystem uses these lookup tables for the air calculations.
The throttle area percent command lookup table, , is a function of commanded load and engine speed
where:
TAPcmd is throttle area percentage command, in percent.
Lcmd=L is commanded engine load, dimensionless.
N is engine speed, in rpm.
To account for the non-linearity of the throttle position to throttle area, the throttle position percent lookup table linearizes the open-loop air mass flow control.
The throttle position percent command lookup table, , is a function of the throttle area percentage command
where:
TPPcmd is throttle position percentage command, in percent.
TAPcmd is throttle area percentage command, in percent.
The wastegate area percent command lookup table, , is a function of the commanded engine load and engine speed
where:
WAPcmd is wastegate area percentage command, in percent.
Lcmd=L is commanded engine load, dimensionless.
N is engine speed, in rpm.
The commanded engine load lookup table, , is a function of the commanded torque and engine speed
where:
Lcmd=L is commanded engine load, dimensionless.
Tcmd is commanded torque, in N·m.
N is engine speed, in rpm.
The intake cam phaser angle command lookup table, , is a function of the engine load and engine speed
where:
is commanded intake cam phaser angle, in crank degrees advance from park.
Lest=L is estimated engine load, dimensionless.
N is engine speed, in rpm.
The exhaust cam phaser angle command lookup table, , is a function of the engine load and engine speed
where:
is commanded exhaust cam phaser angle, in crank degrees retard from park.
Lest=L is estimated engine load, dimensionless.
N is engine speed, in rpm.
EGR is typically expressed as a percent of total intake port flow.
To calculate the EGR area percent command, the block uses equations and a lookup table.
Equations |
|
Lookup table |
The EGR area percent command, EGRapcmd, lookup table is a function of the normalized mass flow and pressure ratio where:
|
The equations and table use these variables.
EGRap, EGRapcmd |
EGR valve area percent and EGR valve area percent command, respectively |
EGRpct,cmd |
EGR percent command |
Commanded standard mass flow | |
Maximum standard mass flow | |
Commanded mass flow | |
Estimated intake port mass flow | |
Tstd, Pstd |
Standard temperature and pressure |
Tin,EGR |
Temperature at EGR valve inlet |
Pout,EGR, Pin,EGR |
Pressure at EGR valve inlet and outlet, respectively |
The air-fuel ratio (AFR) impacts three-way-catalyst (TWC) conversion efficiency, torque production, and combustion temperature. The engine controller manages AFR by commanding injector pulse-width from a desired relative AFR. The relative AFR, , is the ratio between the commanded AFR and the stoichiometric AFR of the fuel.
The SI Controller block accounts for the extra fuel delivered to the SI engine during startup. If the engine speed is greater than the startup engine cranking speed, the SI Controller block enriches the optimal AFR, lambda, with an exponentially decaying delta lambda. To initialize the delta lambda, the block uses the engine coolant temperature at startup. The delta lambda exponentially decays to zero based on a time constant that is a function of the engine coolant temperature.
You can configure the block for open-loop and closed-loop AFR control.
To | Use | Controls > Fuel > Closed-loop feedback Parameter Setting |
---|---|---|
| (default) Open-loop control |
|
| Closed-loop control |
|
Open-Loop Control
To create an input port for the commanded AFR (lambda), on the Controls > Fuel > Open-loop fuel pane, select Input lambda.
You can manually tune the catalyst for maximum efficiency during open-loop AFR control with or without dither. If you want to implement dither during open-loop control, on the Fuel tab, on the Closed-loop fuel pane, select Dither.
By default, the block is configured to use a lookup table for the commanded AFR.
The commanded lambda, , lookup table is a function of estimated engine load and measured engine speed
where:
is commanded relative AFR, dimensionless.
Lest=L is estimated engine load, dimensionless.
N is engine speed, in rpm.
The block calculates the estimated fuel mass flow rate using the commanded lambda, , stoichiometric AFR, and estimated air mass flow rate.
The block assumes that the battery voltage and fuel pressure are at nominal settings where pulse-width correction is not necessary. The commanded fuel injector pulse-width is proportional to the fuel mass per injection. The fuel mass per injection is calculated from the commanded fuel mass flow rate, engine speed, and the number of cylinders.
Closed-Loop Control
TWC converters are most efficient when the exhaust AFR is near the stoichiometric AFR, where the air and fuel burn most completely. Around this ideal point, the AFR is within the catalyst window in which the catalyst is most efficient at converting carbon monoxide, hydrocarbons, and nitrogen oxides to non-harmful exhaust products. Empirical studies show that oscillating the AFR around stoichiometry at an optimized AFR frequency, amplitude, and bias widens the TWC window, increasing catalyst conversion efficiency in the presence of unavoidable disturbances.
To keep production hardware costs down, AFR control systems include inexpensive switching oxygen sensors positioned in the engine exhaust stream upstream and downstream of the catalyst. The oxygen sensors have a narrow range. Essentially, they switch between too lean (i.e., more air is available than is required to burn the available fuel) and too rich (i.e., more air is available than is required to burn the available fuel).
The block implements a period-based method to control the average AFR at a value within the catalyst window for maximum conversion efficiency. Period-based AFR control is independent of the transport delay across the engine from the fuel injection point to the sensor measurement point. For more information about the method, see Developing a Period-Based Air-Fuel Ratio Controller Using a Low-Cost Switching Sensor.
Spark advance is the crank angle before top dead center (BTDC) of the power stroke when the spark is delivered. The spark advance has an impact on engine efficiency, torque, exhaust temperature, knock, and emissions.
The spark advance lookup table is a function of estimated load and engine speed.
where:
SA is spark advance, in crank advance degrees.
Lest=L is estimated engine load, dimensionless.
N is engine speed, in rpm.
The equations use these variables.
Lest | Estimated engine load, based on normalized cylinder air mass |
N | Engine speed |
Lookup table for spark advance | |
N | Spark advance |
When the commanded torque is below a threshold value, the idle speed controller regulates the engine speed.
If | Idle Speed Controller |
---|---|
Trqcmd,input < Trqidlecmd,enable | Enabled |
Trqidlecmd,enable ≤ Trqcmd,input | Not enabled |
The idle speed controller uses a discrete PI controller to regulate the target idle speed by commanding a torque.
The PI controller uses this transfer function:
The idle speed commanded torque must be less than the maximum commanded torque:
0 ≤ Trqidlecomd ≤Trqidlecmd,max
Idle speed control is active under these conditions. If the commanded input torque drops below the threshold for enabling the idle speed controller (Trqcmd,input < Trqidlecmd,enable), the commanded engine torque is given by:
Trqcmd = max(Trqcmd,input,Trqidlecmd).
The equations use these variables.
Trqcmd | Commanded engine torque |
Trqcmd,input | Input commanded engine torque |
Trqidlecmd,enable | Threshold for enabling idle speed controller |
Trqidlecmd | Idle speed controller commanded torque |
Trqidlecmd,max | Maximum commanded torque |
Nidle | Base idle speed |
Kp,idle | Idle speed controller proportional gain |
Ki,idle | Idle speed controller integral gain |
To prevent over revving the engine, the block implements an engine speed limit controller that limits the engine speed to the value specified by the Rev-limiter speed threshold parameter on the Controls > Idle Speed tab.
If the engine speed, N, exceeds the engine speed limit, Nlim, the block sets the commanded engine torque to 0.
To smoothly transition the torque command to 0 as the engine speed approaches the speed limit, the block implements a lookup table multiplier. The lookup table multiplies the torque command by a value that ranges from 0 (engine speed exceeds limit) to 1 (engine speed does not exceed the limit).
Estimator
The estimator subsystem determines the estimated air mass flow, torque, EGR mass flow, and exhaust temperature based on sensor feedback and calibration parameters.
Estimated engine air mass flow | |
Trqest |
Estimated engine torque |
Texh,est |
Estimated engine exhaust temperature |
Estimated low-pressure EGR mass flow |
To calculate engine air mass flow, configure the SI engine to use either of these air mass flow models.
Air Mass Flow Model | Description |
---|---|
SI Engine Speed-Density Air Mass Flow Model |
Uses the speed-density equation to calculate the engine air mass flow, relating the engine air mass flow to the intake manifold pressure and engine speed. Consider using this air mass flow model in engines with fixed valvetrain designs. |
SI Engine Dual-Independent Cam Phaser Air Mass Flow Model |
To calculate the engine air mass flow, the dual-independent cam phaser model uses:
In contrast to typical embedded air mass flow calculations based on direct air mass flow measurement with an air mass flow (MAF) sensor, this air mass flow model offers:
|
To determine the estimated air mass flow, the block uses the intake air mass fraction. The EGR mass fraction at the intake port lags the mass fraction near the EGR valve outlet. To model the lag, the block uses a first order system with a time constant.
The remainder of the gas is air.
The equations use these variables.
yintk,EGR,est |
Estimated intake manifold EGR mass fraction |
yintk,air,est |
Estimated intake manifold air mass fraction |
Estimated low-pressure EGR mass flow | |
Estimated intake port mass flow | |
τEGR | EGR time constant |
To calculate the brake torque, configure the SI engine to use either of these torque models.
Brake Torque Model | Description |
---|---|
SI Engine Torque Structure Model | For the structured brake torque calculation, the SI engine uses tables for the inner torque, friction torque, optimal spark, spark efficiency, and lambda efficiency. If you select Crank angle pressure and torque on the block Torque tab, you can:
|
SI Engine Simple Torque Model |
For the simple brake torque calculation, the SI engine block uses a torque lookup table map that is a function of engine speed and load. |
The controller estimates low-pressure mass flow, EGR valve inlet pressure, and EGR valve outlet pressure using an algorithm developed by F. Liu and J. Pfeiffer. The estimator requires measured EGR valve differential pressure, EGR valve area percent, intake air temperature, and EGR valve inlet temperature.
To estimate the EGR valve commands, the block uses:
Equations
Tables
The EGR valve standard mass flow lookup table is a function of EGR valve area percent and the pressure ratio
where:
is EGR valve standard mass flow, dimensionless.
EGRap is EGR valve flow area percent, in percent.
is the pressure ratio, dimensionless.
The pressure ratio is a function of the standard mass flow
where:
is standard mass flow, in g/s.
is pressure ratio, dimensionless.
The equations use these variables.
EGRap |
EGR valve area percent command |
IAT |
Intake air temperature |
, |
Standard air and EGR valve mass flow, respectively |
, |
Estimated air and EGR valve mass flow, respectively |
Tstd, Pstd |
Standard temperature and pressure |
Tamb, Pamb |
Ambient temperature and pressure |
ΔPEGR |
Pressure difference at EGR valve inlet and outlet |
Tin,EGR, Tout,EGR |
Temperature at EGR valve inlet and outlet, respectively |
Pin,EGR, Pout,EGR |
Pressure at EGR valve inlet and outlet, respectively |
The exhaust temperature lookup table, , is a function of engine load and engine speed
where:
Texh is engine exhaust temperature, in K.
L is normalized cylinder air mass or engine load, dimensionless.
N is engine speed, in rpm.
Examples
Ports
Input
Output
Parameters
References
[1] Gerhardt, J., Hönninger, H., and Bischof, H., A New Approach to Functional and Software Structure for Engine Management Systems — BOSCH ME7. SAE Technical Paper 980801, 1998.
[2] Heywood, John B. Internal Combustion Engine Fundamentals. New York: McGraw-Hill, 1988.
[3] Leone, T. Christenson, E., Stein, R., Comparison of Variable Camshaft Timing Strategies at Part Load. SAE Technical Paper 960584, 1996, doi:10.4271/960584.
[4] Liu, F. and Pfeiffer, J., Estimation Algorithms for Low Pressure Cooled EGR in Spark-Ignition Engines. SAE Int. J. Engines 8(4):2015, doi:10.4271/2015-01-1620.
Extended Capabilities
Version History
Introduced in R2017a