"Idle Control Valve" An idle air valve is a valve which is usually located between either the intake manifold and the outside world, or the Throttle Body Injection Unit and the outside world. Its task is to regulate a certain amount of extra airflow (outside of the InTake/ThrottlePlates) to control the idle RPM. The fuel injection system simply sees this extra air and adjusts fuel accordingly so it doesn't specifically need to know this air is coming from a bypass valve.
A valve is usually an open-close type of switch known as a solenoid, and will usually want to be either open or closed. This is the simplest form of control for idle air and works well for most applications and is the easiest to setup. For mor information on this type of idle control see Genboard/Manual/Config/IdleControl.
In theory, with some valves you could regulate how far the valve opens by regulating the current, i.e. the valve is fighting the spring with the current-turned-into-magnetism. Limiting is usually done using pulse width modulation(PWM). Duty cycle of the PWM control determines how strongly the valve is resisting closing and thus how much it is opened. Note that most idle air bypass valves are open-closed, i.e. either one. It's virtually impossible to get them to hover somewhere in between. For more information on this type of idle control see Genboard/Manual/Config/IdleControl
There are other types of idle control valves that can be modulated to multiple positions so that idle air may be more strictly controlled. This type of valve is known as a stepper motor. This type of valve can be "stepped" to many different positions since it moves one small incriment for every "step" or signal that it recieves. For more information on this type of idle control see Genboard/Manual/Config/IdleControl.
Idle control is a strategy to keep the engine in a reasonable RPM range while your foot is not on the throttle (engine.tps andlt;= config.iac_tps_threshold, see fuelcalc.c).
This works by controlling the air entering the engine with an appropriate valve and a slightly improved version of the PID algorithm. There is also an ignition advance based adjustment option that improves the idlecontrol to smoothness that is not possible with just by idle-air valve control.
There is also an overrun-fuelcut feature, which is not real idlecontrol (rather a fuel saver), but can prevent idling at readline if air leaks into the engine somehow without throttle pressed (so effectively regulates RPM, though noticably roughly). Skipped event would also be possible, but would be hard to tune for a custom setup.
The air-valve can be
IdleControl/IdleValveStepper
The PWM style is simpler, because if you apply x% PWM, you know where the valve is. Unfortunately for the stepper you do not know where it is located, so you have to control with unknown positions or make sure to step it to one end-location, after which you know where it is. But that takes some time (appr. 0.3sec before every startup).
An idle air stepper is an idle air bypass system. It allows extra air into the intake manifold independantly of the InTake/ThrottlePlates, with the purpose of controlling the idle RPM.
Let's say an engine is idling at 800 RPM, and you turn on the high beams, woofer, etc. The extra load on the alternator will slow the engine down, in which case the ECU will open the idle air bypass system a little bit to raise the idle back to 800. It is also used to implement different idle speeds depending on for example engine temperature.
The stepper system is common on General Motors TbInjected. A stepper motor moves a pintle in and out, opening and closing a path for extra air.
The General Motors TbInjected Unit's use Bipolar Stepper Motors.
The Genboard has the necessary parts to operate an IAC bipolarstepper.
See ActuatorsNServos for general knowledge about actuators and servos (in many applications).
Big actuator If you have a bigger idlevalve (whatever type), CruiseControl or AntiLagSystem becomes possible.
-----
Wiring IAC actuator
The two types of idle valve will require a different wiring.
" Idle Control Configuration "
There are a few types of configuration options related to idle (mostly air) control:
ignition advance based fine adjustment
Configuration options and example
Don't worry, even if there are many options, it is not too hard to get a good idle (the I-term in PID and the ignition advance helps a lot). When setting idle-configuration for 1st time, it is recommended to
link it from own MembersPage
iac_step_seq=D8
This page explains how to set up the system for PWM or ON/OFF idle air solenoid (instead of IdleControl/IdleValveStepper stepper motor).
Disable the stepper
Set (config.iac_conf and _BV(stepper_iac)) false.
"config.iac_conf bit2 = 0"
Decide if your solenoid is ON/OFF or PWM
Set "(config.iac_conf and _BV(precise_idle))" accordingly. This is checked in "iac.c idle_solenoid()" function.
The output selection applies to both types, read below. Q.How can i send out the solenoid output signal to one of the FETs or a P259 channel or .... ?
The solenoid is actuated by "digitalout(config.iac_sol_channel, state);" in iac.c , so this allows huge flexibility. Select the output channel as iac_sol_channel=P259_4 See Genboard/Manual/DigitalOut for channel selection.
Note: the old method was IDLE_PWM_SOFT defined in my_make. Now it is configurable runtime as written above, IDLE_PWM_SOFT makes no difference.
Q.How can I set selenoid output signal to the pin 3 on EC_36 ? What do I need to set on iac_sol_channel=.... ?
Look at the schematic: EC36 pin 3 which is labeled as IDL is connected to P259 Q4, so it means "iac_sol_channel=P259_4".