- Status Researching
- Percent Complete
- Category 07K ME17.5 (2009+)
-
Assigned To

Jason - Priority High
FS#10 - ME17.5.6 Idle controller instability on some 2.5T setups
On some 2.5T using the Bosch ME17.5.6, the idle controller can be unstable once it has reached operating temperature. Although the same vehicle with an earlier ME17.5 experience a more stable idle
ME17.5 vs ME17.5.6
- %LIGov_Governor% has been confirmed to be different, and therefore the changes between these two engine management can hardly be implemented without extensive R&D
- On the ME17.5, it targets a lower throttle angle at idle, and it relies more on the torque path intervention through ignition advance than the airflow path (throttle again). This handle overshoot more easily and leads to stable control on setups with unsteady idle
- The ME17.5.6 is not lenient enough, the control loop is too aggressive and becomes quickly unstable as it tries to adjust the idle speed
Initial approach
- The idle control has been made "more lazy" to avoid this aggressive control loop. It has helped for most setups, although it can still enter an unstable loop (see attachment)
- Since the unstable loop mostly arise from the throttle intervention, an attempt at capping the throttle angle to force the ECU to use ignition advance intervention (similar to ME17.5) has been done. This work, although the angle limitation should be tied to the engine temperature to avoid cold start issues, and it should allow free intervention when the idle speed gets lower than 600-650rpm to prevent stalls. While this is a viable solution without a lot of R&D, deeper research should be conducted.
Literature from the FR
The idle speed control then adjusts to the slowly decaying value of the low-pass filter. During tracking, a weighting factor FNSNF and a threshold value KNSNF ensure that the target speed nsol_w always remains slightly below nmot. This is necessary to allow for settling at engine speeds close to the steady-state target speed nstat. Without this measure, the target speed would be tracked even with a slight overshoot, and the control loop would be unstable.
Speed tracking is deactivated at idle when the target speed nsol_w has reached the steady-state value nstate and the magnitude of the speed deviation from the steady-state target speed is below a threshold. This prevents the target speed from being incorrectly tracked during an idle speed overshoot.
The idle speed controller's task is to maintain a constant idle speed when no torque is required, or to adjust it to the target idle speed as quickly as possible and with minimal overshoot. For this purpose, the speed deviation between the target value (HLSDem_nSetPTrck) and the actual value is used in the "LIGov_Governor" function. The controller parameters are selected depending on the operating state (LIGov_SelPar). The controller compares the current speed with the idle speed target speed and adjusts the engine speed via its output. The target idle speed is vehicle-specific and dependent on the operating state. The idle speed controller requires the transmission characteristics of the entire drivetrain. Since the transmission behavior is a very complex quantity, and since automatic adjustment of the controller parameters to the current transmission behavior cannot be implemented, the idle speed controller is forced to obtain the dynamic information that is important for the transmission behavior: • Gear / Neutral / Power transmission • Engine temperature (water temperature) • Underbraking For a given vehicle, the current transmission behavior and the corresponding set of controller parameters are thus fixed. The idle speed controller only receives the information about which set of controller parameters to use (LIGov_numPar). The output of the function is the idle speed controller torque LIGov_trq for the set path and LIGov_trqLead for the air path. Additionally, the components LIGov_trqI (I-component), LIGov_trqP (P-component for PTO), and LIGov_trqPLead (P-component for air path) are provided. Idle speed control torque = f(Idle speed control setpoint, engine speed, current engine state, limit for internal torque, initialization torque for I-component after start, Idle speed control state, transmission state via CAN).
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
The following are being logged:
Investigate the Proportional of LIGov