DDL - faster Nernst cell sensing

Bernd Felsche bernie at innovative.iinet.net.au
Sat Nov 17 00:09:36 GMT 2001


bcroe at juno.com tapped away at the keyboard with:

> I'm not sure we are communicating, but here is what 
> I understood.  

> The idea of emulating an analog operation with digital
> stuff has its merits.  And apparently you have a way to
> temperature compensate.

I think that's where communications is breaking down. Direct Digital
Lamda does not attempt to _emulate_ an analogue operation. To do so
would require much more computing horsepower than is reasonable to
include in an "in-plug" controller.

> On Tue, 13 Nov 2001 08:53:50 +0800 (WST) Bernd Felsche
> <bernie at innovative.iinet.net.au> writes:
> > bcroe at juno.com tapped away at the keyboard with:
> > 
> > > On Sat, 10 Nov 2001 11:47:44 +0800 (WST) Bernd Felsche
> > > <bernie at innovative.iinet.net.au> writes:
> > > > See http://bernd.felsche.org/tech/EFI/DDL/DDL.html for the
> > > > few circuit changes required to implement the fast switching
> > > > detection, largely eliminating the bandwidth limitations
> > > > imposed by ADC and subsequent numerical comparisons.
> > > > Response bandwidth for the controller now approaches 1 MHz
> > > > compared to the 15kHz or so limit of the ADC strategy for
> > > > Nernst cell voltage detection.

> I thought you were trying to avoid the A to D frequency 
> limitations by going to a simple fast comparator.

That's correct. The comparator has nanosecond delays.

> > > > Furthermore, the detection method lends itself to a 
> > > > simpler control strategy for applying pump pulses 
> > > > (e.g. bang-bang control relying on sensor hysteresis), 

> Sure it gets simpler.  The analog  version uses a 
> Proportional/Integral/Differential servo loop to develop
> the output signal.  With a simple comparator (bang-bang
> control) you have no idea of the rate of change, so the
> D term goes away.  With no indication of the size of the 
> error, the P term goes away.  So you are left with an
> Integrator, and the penalty is much less optimum 
> frequency response.

It's the "P" term that's not *immediately* available. It can be
measured though. But there _may_ be little point in doing so if the
Nernst cell voltage is constantly jitter about the 0.45V under
the action of the controller. 

> > > I guess you could just "hunt" for a .45 volt crossing
> > > like an ordinary ECU does.  But you will still need to
> > 
> > i.e. bang-bang control within the hysteresis of the ADC.
> > 
> > Hunting for the reference level is also what's done in all the WB
> > controllers, even the commercial ones. :-)

> Bang-bang hunting is what is done for NARROW band 
> signals, since not much else is practical.  But every 
> WB system I have seen or built,  and all the documentation 
> I have seen use the full PID control.

Note that the pump cell is always operated at "full" current and
alternating voltage pulses. A nett-zero current is achieved by short
alternating pulses of equal magnitude. With the mixture leaner or
richer, one of the pulses is lengthened; the effective pump current
is the (signed) sum of the magnitudes (essentially the duration).
That will cause the Nernst cell voltage to jitter about 0.45V at all
mixture levels.

> > Practical bandwidth of the _controller_ will likely be in the range
> > of 100 to 250 kHz, once pump circuit operation is taken into
> > account. These are estimates based on typical pulse timings, CPU
> > cycles required, etc. As the sensor's response is unknown, it's
> > hoped that the controller will still be several times faster than
> > the sensor to give at least the possibility of stable operation.

> The sensors' response is not unknown at all; take a look
> at the PID response of the analog units and build on that.

Where is that documented? I haven't seen any sensor-specific
information of ion migration velocities or Nernst time response as a
function of voltage, temperature, pressure or partial pressure.

> You will not need blinding speed to stay ahead of the sensor.

But 15kHz is probably too slow, given that users of the NTK sensor
report being able to pick misfires (using a 'scope) at high engine
speeds in multi-cylinder engines.

> Since it is a bit sluggish, it is best to do some loop optimizing.

> > The error size can be evaluated by ADC conversion 
> > and comparison.  The ADC channels are already 
> > allocated for resistance measurement for 
> > temperature stablization. The crossing detector 
> > provides for a rapid response to a transition. It's 
> > the knock on the door, so to speak.

> I suggest you get as good a digital system as you can
> up and running.  Then evaluate the tradeoffs and work
> on optimizing it.  To say you have already allocated all
> resources before it is even running does not sound
> like a great plan.  

The CPU core has enough processing power. But not enough to waste.
DDL tries to build on the strengths of digital designs.

> > > If you came up with a "negative" pulse Ip generator,
> > > you might be able to dispense with the virtual
> > > ground.  The negative pulse could be generated 
> > > with capacitive coupling from all positive circuitry
> > > since it is just a fixed digital pulse.  Not so easy 
> > > to do with a straight analog drive.
> > 
> > The negative pulse generator needs to have it's magnitude measured.
> > Pump cell resistance is also to be measured for temperature and age.
> > The temperature sensing pulses have to have a minimum duration to
> > allow for one complete conversion and a subsequent sample.
> > 
> > Measuring a negative pulse with the ADC on positive rails? Not
> > without a lot more glue; unless you have a simple suggestion. Your
> > component budget is 4 components costing no more than $5 in total.
> > :-)
> > 
> > That's the cost of the floating reference.

> There is plenty of cost to a virtual ground system.  Its an access
> to the system for noise and external damaging currents.  It can
> affect loop stability, or oscillate if done as simply as you
> imply.  There are ways to generate negative voltages, and a simple
> digital pulse would always be the same, not requiring any
> measurements.  Such a circuit will fly or fall on its own merits
> when tried in the overall picture.  To discard a possibility on a
> pure guess cost without overall merit testing is presumptuous.

Not a guess. I've sketched up a number of ideas and decided to use
the one as presented on the DDL page because it's simpler, easier to
implement and cheap. If it's not sufficient in practice, then I'll
choose a more complex design.

More importantly; the digital pulses will not all be identical. And
they do require measurement to ascertain cell resistance (hence
temperature), as well as detecting sensor "age" effects.

Bosch's use of the LSU 4.2 sensor is apparently on a virtual ground
basis. The latest information made available indicates that it's
highly likely that the Bosch circuit is quite similar to DDL.

-- 
Bernd Felsche - Innovative Reckoning, Perth, Western Australia

----- End of forwarded message from owner-diy_efi at diy-efi.org -----
----------------------------------------------------------------------------
To unsubscribe from diy_efi, send "unsubscribe diy_efi" (without the quotes)
in the body of a message (not the subject) to majordomo at lists.diy-efi.org




More information about the Diy_efi mailing list