EFI mapping ideas.
Dale Ulan
ulan at ee.ualberta.ca
Thu Nov 10 03:48:14 GMT 1994
> So, you are interpolating between 2 points on the RPM axis and 2 points
> on the Load axis, making an overall interpolation between 4 points?
> If it works properly it should be quite nice.
In fact, that's exactly how it's done in OEM computers.
>> Yup. I'm only guessing that a 17 x 17 map will be enough. What did you base
>> your decision on using 32 load numbers on? Do you know something I don't?
>
> >From what I can determine, the load is much more important than the RPM.
> (I did some measurements of an aftermarket computer, and the pulse time
> the injector was on for did not vary with RPM (Well, when under engine
> vacuum. When under boost it did)
Depends a lot on the engine. The volumetric efficiency of the engine
can vary from a 10% difference between the VE peak and a lower value
(like at 1500 rpm or a fast idle) to a 60% difference or more... depending
on the engine. Typically, in OEM computers, the RPM is quite important, as
they are trying to fuel within a couple of percent (or even closer) as to
what the engine needs.
If I sound like I'm praising the OEM ECM's, it's because they have a lot
more research invested into their algorithms than any of us... or
pretty much any aftermarket company... can afford to put into the
box.
....
> If you're using interpolation 32 wouldn't matter, you might even get
> away with something as low as 4 or 8. I'd say 17x17 w/interpolation
> should be more than adaquate.
17x17 is good for most engine applications. It can even meet emissions
to 1994 levels, so it'll do for most of our applications.
The LT-5 engine is the only ECM I've seen with larger tables. These are
about 30x17. I don't remember which value had the 30 or so values, but
I have a hunch it's RPM.
-Dale
>>>I'm un-decided if an 8 bit injection time will have enough 'dynamic
>>>range' from idle to full throttle, though it's probably easier to >deal with
> > an 8 bit number.
An 8-bit number is fine for a typical table, however, these values are
multiplied and rounded, etc. so you want to keep as many bits as possible.
Normally you have a Base Pulse Width, a Power Enrichment, and an Air
Density Correction. Since these are multiplied out, I'd suggest the
following:
BASE_PW * AIR_DENS
result: 16 bits
* (POWER ENRICHMENT FACTOR + COLD START FACTOR)
result: 24 bits.
now round down to 16 bits
* ADDITIONAL FACTOR
result: 24 bits.
round down to 16 bits.
done.
16 bits is convenient as well, since it allows a lot of exta headroom
to add acceleration enrichment and other additive factors.
-Dale
More information about the Diy_efi
mailing list