CREDIT: Huge thanks to Craig Starnes (Calan) for writing up a nice, concise explanation of injector duty cycle simple enough for the rest of us to understand. This is just a copy of his work below.
A mechanical coil-driven device is energized by applying positive voltage to one side of it, and applying ground to the other side. This creates a magnetic field that can be used to do mechanical work, such as pulling on a plunger to open a disk or pintle on an injector. The activating signal (in our case, ground) can either be applied continuously, or it can be pulsed on and off. When the coil is pulsed, the length of each pulse is called the pulse width (or PW). For injectors in particular, the PW is measured in milliseconds (thousandths of a second).
Taken by itself, a pulse width value doesn't mean a whole lot because there is also the interval of time between pulses that has to be accounted for. In a cyclic, repeating system, this combination of on-time and off-time is called the period, and represents how much time there is available between the point when the coil is first energized, and when it needs to be energized again in the cycle. So if I needed to energize a coil every 100 milliseconds, and I keep it energized for 25 milliseconds each time… the period would be 100ms, the PW would be 25ms, and there would be 75ms of time between pulses when the coil is closed and waiting for the next 25ms pulse.
Pretty simple stuff right? Just covering all the bases here. :)
The term “duty cycle” is used in many applications, but for most all mechanical coil-driven devices, it is simply a calculated value that provides a way for us to get an idea of how hard a coil is working, without having to deal with pulse widths and periods. As far as the device is concerned, duty cycle doesn't exist; you can't energize a coil by directly applying a duty cycle to it. :)
The calculation for duty cycle is very simple; it's just the pulse width divided by the period, which gives the percentage of time that the coil is being energized, compared to the total time available before it has to be energized again. So for our above example, the duty cycle would be 25%: 25ms PW / 100ms period = .25, or 25%
In a fixed repeating system, like a flashing road construction light for example, the PW (on-time of the light) and the period (time between flashes) is always constant; so the duty cycle is always constant as well. In an engine however, the period is always changing…and that is where things get a little more complicated.
The amount of time available between injector pulses is based on engine RPM, or more specifically, on engine cycles. Considering that the injectors fire once per complete engine cycle (which takes two revolutions of the crank), we can use the following equations to calculate some useful information:
Revolutions per second = RPM/60 Cycles per second = (RPM/60)/2 or RPM/120 Time available between injector pulses (period) = 120/RPM
Given this information, it's easy to calculate IDC:
IDC = PW/Period, or PW/(120/RPM)... which can be simplified to PW*(RPM/120)
Now that we know how IDC is calculated, lets plug some numbers in.
At any point in time, the ECU is determining the required injector PW based on reported airflow, assumed injector size and base fuel pressure, battery voltage, temperature compensation, desired AFR, engine load, etc. As an example, let's assume that under a given set of test conditions at a steady 7000 rpm, a required PW of 13ms is calculated. Plugging those numbers into our IDC formula, we get the following:
IDC = PW/(120/RPM) = .013/.017 = .765, or 76.5%
So at 7000 rpm and with our set of test conditions, the ECU has 17ms of time available to open an injector, close it, and then open it again at the start of the next cycle. If the injector stays open for 13ms during this 17ms “window”, you get an IDC of 76.5%.
But what if under these same conditions, the ECU has smaller injectors to work with? Lets assume that with these smaller injectors, the ECU calculates that it needs a longer PW of 18ms to hit the same AFR under the same conditions. Plugging that into our formula, we get the following:
IDC = PW/(120/RPM) = .018/.017 = 1.059, or 105.9%
What we end up with is a calculated pulse width that is longer than the time available between injector firing events. The injector is going to be open for the full 17ms of available time, and then before it can close it receives the next 18ms pulse in the cycle. The net result is that the injector never has time to close before receiving another pulse, so it's running wide open. In other words, we get a calculated IDC of 105.9%, but a true IDC of 100%… since an injector obviously can't be open longer than 100% of the time.
So as you can see, injector size can change time; it can affect the calculated PW, which by definition is the injector's on-time.
As you've probably guessed, that ^ is a greatly over-simplified description of injector behavior. For one thing, the injectors don't just instantly open and close; it takes a small amount of time for the coil to fully energize and open the pintle or disk depending on the voltage, fuel viscosity, fuel pressure, etc. It also takes a small amount of time for the injector to close once current stops flowing through the coil. This additional time has to be considered by the ECU when calculating pulse width, and can therefore affect IDC to some extent. On top of that, fuel flow through the injector isn't always linear with changes in pulse width, which also has to be considered.
Fortunately for us, we have the ECU to handle all of this craziness and to provide us with a simple IDC parameter to quickly evaluate how hard our injectors are working.