First, the circuit, any accompaning software, and documentation are all
licensed under the GNU LGPL. For a full explanation of this license, please
view GNU LGPL online.
Future versions may have a different license. The purpose is to promote free
discussion without the worry that someone will co-opt the design for closed
Ok, the circuit is available here: MWBO2 PDF (41k)
If you find any errors in the circuit, please feel free to contact me at <pedward at dainst dot com>.
The circuit uses 2 power supplies, a 10.34v and 5v. The 10.34v is for powering
the heater of the UEGO. The 5v is for logic and Ip pump.
The heater is controlled via the IRF530N HexFET using PWM. U5-a is used as a
differential voltage amp, when the voltage across R5 is 640mv, the heater is at
approximately 800 degc. The microproccessor controls the duty cycle to the
heater to control the average current. The goal is to run closed loop to keep
the heater at normal temp.
Once the heater reaches temperature the Ip pump is turned on via the Ip PWM
output of the mcu. The ground for the Ip pump and O2S is offset by 2.5v via
R3 and R4. The current is limited to 6.1ma, the bounds of the Ip pump.
The Ip PWM output controls the forward or reverse current via varying the
duty cycle of the Ip pump. When the Ip pump is biased normally low, it
reverses the Ip pump, when biased normally high, it forward operates the pump.
At 50% duty cycle is averages out to niether reverse nor forward.
The current is controlled in closed loop via the Vs output of the sensor. The
target voltage is 450mv. The Ip pump is controlled to keep the Vs at 450mv.
Since there exists and offset for the Ip/Vs ground, the target voltage is 2.5v
plus 450mv, or 2.95v.
The microprocessor knows the duty cycle of the Ip pump, therefor no direct
current measurement is required to determine lambda. It can all be derived
in software. The PWM output is 16bit resolution, so there are 32768 possible
values for forward and reverse current, this is higher resolution than the
A/D converter, which is 10bit.
The circuit is calibrated using free air. The Ip current is adjusted until
the Vs is 450mv, then the Ip current is calculated internally and used as the
upper bounds for the scale.
The circuit is incomplete, has no output reporting mechanism, although RS232
and direct LCD interface are easily done.
The circuit is designed around the 42 pin SDIP version of the Hitachi H8/3664.
This is a low cost high performance 16bit processor with 32k of flash and 2k
of RAM. It costs about $7 for the SDIP.
A free compiler is available for the H8/Tiny series of mcus. It will be
available in September 2002.