Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Oxygen sensor and chip-tuning 2

Status
Not open for further replies.

zimbali

Automotive
Jun 2, 2003
99
Hi,

New engines usually use 6 or 7 different modes for fuel injection and spark ignition timing (Start, warm up, open loop, closed loop, hard acceleration, deceleration). There is one map in the ECU that contains the open loop data, this is the one that always all people talking about; a 3-D map. There are several 2-D tables to correct the values of the 3-D map depending on the mode which engine works in. Besides an engine is usually in its closed loop mode, i.e. Oxygen sensor(s) gives feedback to the ECU to adjust the A/F ration at 14.7. On the other hand A/F ratio is in a range of [12,12.5] for acceleration mode for Wide Open Throttle(WOT) where ECU ignores the Oxygen sensor to achieve the best performance.

Now the question is, how these electronic chip tuners manage to change the fuel map (so the amount of injected fuel)? I mean if they change the map to have say A/F ratio of 12.5 for normal loads, then anyway Oxygen sensor will adjust this map until it gets 14.7(a transition in sensor output happens in A/F=14.7), because engine is not in WOT mode and works in partial load (closed loop).

If you say that in partial load this chip-tuning stuff doesn't make any difference but it adds more fuel just in WOT and hard acceleration, There would be this problem that in WOT, engine already works in the best A/F ratio to generate the best torque and any more fuel will decrease the performance ( A/F <12 will decrease the torque output). So please let me know if you can solve my contradiction.

Thanks for any help in advance.

Cheers
 
Replies continue below

Recommended for you

Hi Steve,
O2 sensor is simply a switch that has high output for rich mixtures (A/F < 14.7) and low output for lean ones. Transition is very fast between low and high. So, for narrow band O2 sensors, you cannot shift the output voltage of O2 sensor. It is possible for wide band sensors, thoungh. But as far as I know they cost some $800 and are not popular in production cars.
The solution I thought is feeding the ecu with a square wave with equal on and off time with a frequency like 80-100 Hz. When the pulse is high, ECU leans the mixture A BIT, and waits for the next pulse from O2 sensor. If my pulse is fast enough then ECU doesn't change the mixture that much and thinks that the mixture is somewhere very near to stoic. Then I can change the maps for Part Load.

If you share what you know, you'll never forget it.

Cheers
Zimbali
 
Why not fool your ECU into thinking the engine isn't warmed-up yet (e.g., by putting in a very low-temperature thermostat, or simply by fooling with the coolant temp sensor) and then modifying the cold-start map?
Then you'll always be running open-loop, in the region you've modified.
 
Rob,

It MIGHT be possible to do that, depending on the car and model. Most cars (as far as I've found out) use a run-time error, i.e. if the warm-up time exceeds some predefined time, ECU switches into the closed loop mode.


Cheers


You can live in your car, but you can't drive your House!
 
Rob45 asked:

Why not fool your ECU into thinking the engine isn't warmed-up yet (e.g., by putting in a very low-temperature thermostat, or simply by fooling with the coolant temp sensor) and then modifying the cold-start map?

That's because many ECUs have a cold rev limitter. This rev limit is usually signifcantly lower than the vehicle's normal operational limit. Also the ECU will never close idle air control valve if it's constantly seeing the engine in a cold temperature state.

Bryan Carter
 
Usually the transition between closed loop and open loop is made by the trottle angle or position of the acceleration pedal, around 80-85% trottle, so if you can acces to the ECU parameters, you can modify this parameter and fix it at for example 25% in order to have a good Idle.

Don't forget to adjust the fuel and ignition tables to avoid discontinuitis in the transition point.

Regards

Francisco
 
Hi I was just wondering why you couldn't add a diode on the oxygen sensor? Germanium diodes have a forward voltage drop of around .3v. This would show a lean condition at the computer and it would add more fuel to the engine. The computer would operate as if the air/fuel ratio is 14.7 but would actually be lower. I have been working on this idea for a speed density computer, this may work for your mass airflow setup also. Or maybe the MAF sensor is what you want to add it to. Let me know what you think.
 
If you already have a computer, you can do whatever you want.

A germanium diode, particularly in a hot engine environment will behave quite differently than in the lab. There might also be temperature issues during cold startups as well as possible issues with cold temperatures during operation.

TTFN
 
It's been quite a while since I've been involved in this, so maybe I'm dead wrong, but I seem to recall that the systems I worked with (US Big 3 EEC-IV) weren't really concerned about O2 sensor voltages. The actual parameter that was a concern was the switching frequency, not voltage.

A 3 way cat requires constant switching between O2 rich exhaust gases to oxidize HC and CO and and O2 deprived exhaust gases to reduce NOx. Fueling is then adjusted not in response to sensor voltage, but switching frequency in order to dither about stoich. The ECU will learn fuel offsets to account for system drift, but then, when you hit the limits of it's control range, you light the MIL and go into HLOS (Hardware Limited Operating Strategy- i.e., limp home) Consequently, you can mess with sensor offsets all day long and the ECU will drive fueling until it gets the switching it wants or fails. Which would be consistent with what Retracnic reported.

Changing the way all of that works would mean changing the actual control algorithms and not just some table or curve values. I can't imagine that you'd want to touch that. It would be akin reprogramming Microsoft Word only if you screwed up the interfaces (our strategy books were 6 inches thick with interwoven background and foreground loop routines), you could blow up your engine or worse.

The best suggestion I see here would be to change the throttle tip in value so it goes open loop sooner, assuming that's a single value that you could identify and change. If you could do that, you'd automatically go to WOT OL fueling and spark which would give you best power. The cold rev limiter is probably an algorithm change that couldn't be removed easily. Don't see any other suggestions that will overcome the return to swiching frequency problem.

But then again, I'm not sure I really know what I'm talking about.
 
Ooh, ooh! It's all coming back to me now (dang, I really need my sleep too so I can go to work in the morning. Curse you guys). Although I can't recall exact numbers, this is how it works directionally.

There are really only 2 operating modes when it comes to fueling, closed loop and open loop (well, technically there are 3 more while you're spinning the engine hoping it'll catch, ramping to idle speed when it does catch, and warming up. That amounts to the first 15 or 20 seconds after you turn the key). Since you need to limit processor horsepower required and generate numbers as fast as you can, you can't afford real complicated math, and this routine is elegeantly simple.

Most of the time you're running CL. You've got an O2 sensor in the exhaust switching between +0.5V and -0.5V around stoich exhaust O2. You can measure the time between up edges and down edges (I'll call them UD switch time) and between down and up edges (DU switch time). When you are actually at stoich, the switch times are the same. As you drift one way or the other, the ratio between them changes. That ratio is what you are measuring.

Now you have a main injection duration time speed/load lookup table that is filled with injection pulsewidth values will keep you at stoich based on the engine configuration. This is the table that you can actually change if you do anything mechanically to the engine.

You also have short term fuel trim value called lambda that varies in inverse proportion to the switch time ratio.

The actual injection duration for each event is simply the lookup table value plus lambda.

Then there is a long term fuel trim value that is a rolling average of lambda and can be used to adjust lambda to accomodate fuel system drift. If either lambda or the long term fuel trim exceed the control system limits, you're HLOS.

And then, at a certain throttle angle, the system kicks out into WOT OL and uses another speed/load table calibrated to generating max power. Where (or if) that kick out happens will depend on the emissions certification cycle. You want to stay closed loop during all the accelerations in the cycle. As standards get tighter or if cycles get tougher, your ability to go OL will be either curtailed or eliminated and the throttle angle threshold will be raised until you reach 100%.

So if you want to tune it from the fueling side after the fact, it's virtually impossible to get much improvement from anything other than mechanical changes and accompanying fuel table adjustments or somehow getting into OL sooner.

Now spark is another matter, but staying at stoich is by definition a fueling problem and that's what the O2 sensors are primarily doing. Once you've got the right mixture, spark is adjusted to get the most efficient burn and get the pressure peak where you want it. I have my doubts you could get much in the way of tuning spark either, but, again, I can't remember that much.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor