Oxygen sensors

Dale Ulan ulan at ee.ualberta.ca
Thu Nov 3 16:27:35 GMT 1994


>According to the shop manual,when the computer is running closed loop and sees 
>a rich or lean condition it incraments or decraments a ajustment variable.  
>This variable is 8bit. When the variable gets to close to an extreem - (255 or 
>0) The computer adjusts the learned table and resets the variable to 125.  The 
>adjust should be done to the NVRAM and is a learning function.  Personally, I 
>think the computer should differentiat between what was learned at idle and 
>what was learned at part throttle.

As a matter of fact, it does. This is the 'BLOCK LEARN' function.
Don't ask how I know this..... :-)


   Block Learn (the value stored in NVRAM) is divided into
     16 'blocks', each which vary a different part of the
     operating curve. The intercept points are re-programmble
     in the PROM, as is the 'slop' value used to determine
     which block should be used.

  ALDL - 8192 ports usually give not only the BLM but also the BLM
    cell, which indicates which cell the ECM is running on now.

The BLM number is changed when the INTEGRATOR reaches preset
limits, which are normally in the 64 and 190 area, but these again
depend on the engine application. 128 is the happy medium.

The integrator is changed when the O2 sensor is oscillating slower in
one direction than in the other. The O2 driver routine attempts to
keep the duty cycle of the O2 sensor at a programmed value, which is
based on predicted engine airflow and on the estimated oxygen
sensor temperature and response time. If the O2 sensor does not
respond quickly enough, the INTEGRATOR will start to oscillate instead
of the PD controller (next section), and in some applications, this
will set off a DEGRADED O2 SENSOR trouble code.

The PD controller uses a decaying exponential function and a step
adjustment, which, when combined, create an oscillator, with the
engine and sensor delays being the 'phase shift' required for
oscillation. The tables are calibrated to keep the oscillator going
at a critical value. If the oscillator becomes too damped, the above
INTEGRATOR correcion tried to fix this up. ie. the calibration of
the computer in this section is critical. This is the mystery
section that you never see in scanning tools because it goes faster
than the INTEGRATOR or BLM, and the serial data link isn't
fast enough to keep up with it. The 'CROSS COUNT' increments whenever
one half cycle of oscillation occurs. This number is visible on
the scanner, and should go up at a fairly fast rate... and it
should vary with engine speed and load. It wraps around at 255, and
goes back to 0. This last bit is a bit complicated, but that's how
it appears to work. Normally, a PD controller shouldn't oscillate, but
the engine performs the work of a delay line, and the engine
computer performs the function of an inverter. This is a lot like a
transmission-line oscillator in radios.

-Dale



More information about the Diy_efi mailing list