Fuel & Injector Model
Applies to: IOcan · Standalone controller. What this means
The fuel-based torque estimation methods (Fuel + Air (arbitrated), Fuel Model, and the air model in Air Model) work out how much fuel the engine is burning from the ECU's injector signal. For that, each driver carries the same injector model, configured once per injector set.
Primary and secondary injector
There are two injector sets with identical settings:
- The primary set is active as soon as its Injector pulse width input is assigned. It is required by every fuel/air method.
- The secondary set is optional — assign its pulse-width input only for staged or auxiliary injection.
Settings
| Setting | Meaning | Unit |
|---|---|---|
| Fuel type | Selects the built-in fuel data — see below | Gasoline · Flex Fuel · Ethanol 100 · Ethanol 85 · Methanol · Diesel · User defined |
| Injector pulse width | Live injection-time signal from the ECU | µs |
| Injector size | Static flow rating of one injector | cm³/min |
| Nominal injector pressure | Pressure the flow rating applies at | kPa |
| Deadtime mode | How injector dead time is obtained — see below | Do not use · Input · User defined |
| Deadtime input | Live dead-time signal (mode Input) | µs |
| Fuel pressure | Live fuel-pressure input — enables pressure compensation | kPa |
| Fuel temperature | Live fuel-temperature input — refines fuel density | °C |
| Flex Fuel | Live ethanol-content input (fuel type Flex Fuel) | % |
Fuel types and built-in fuel data
For every fuel type except User defined, the fuel's density, stoichiometric AFR and energy content are built into the firmware — you do not fill any fuel tables. The ethanol content is also implied by the type; only Flex Fuel reads the live Flex Fuel input:
| Fuel type | Fuel data | Ethanol content |
|---|---|---|
| Gasoline | built-in | fixed (E5 pump fuel) |
| Ethanol 85 | built-in | fixed 85 % |
| Ethanol 100 | built-in | fixed 100 % |
| Flex Fuel | built-in | from the Flex Fuel input |
| Methanol | built-in | — |
| Diesel | built-in | — |
| User defined | from your fuel tables | from the Flex Fuel input |
With User defined, fill the three fuel tables:
| Table | Axes | Calibrates |
|---|---|---|
| Fuel density | Ethanol % × temperature | Density of the blend |
| Stoichiometric AFR | Ethanol % (1D) | Stoich air-fuel ratio of the blend |
| Fuel energy | Ethanol % (1D) | Energy content of the blend |
Dead time
Injector dead time (the opening delay that burns no fuel) is subtracted from the pulse width before the fuel mass is calculated:
- Do not use — pulse width is taken as-is.
- Input — dead time comes from the live Deadtime input (e.g. the ECU broadcasts it).
- User defined — dead time is looked up from the Deadtime table (axes: battery voltage × fuel pressure).
Fuel-pressure compensation
When the Fuel pressure input is assigned and a Nominal injector pressure is set, the effective injector flow is corrected for the actual rail pressure. Leave the input unassigned to always use the rated flow.
Related
- Engine torque estimation — the methods that use this model
- Scaling and Maps — how tables are entered