Turbonator LM Code - Wideband Discussion
Quote:
Originally Posted by
risen
Jeff C and I were discussing things along this line in an email conversation. Basically, we were wondering if the cal could be tweaked to read the analog wideband output (0-5v). If we could find the constant that sets the toggle point, and adjust it so that it's toggle point would be 2.5 v (for stoic) or like 2.8v (for 15.4 or so). I'm not sure if the linear map of a wideband will help by being more sensitive, meaning car strays less from desired afr, or if it will cause all sorts of crazy behavior because it's too sensitive.
I know that lc-1's can be setup to fool the ecu based upon the simulated narroband output, but that's no good for the techedge and zietronics folks.
that would be hella cool. i was wondering the same thing recently.
Re: Turbonator LM codebase
Quote:
Originally Posted by
risen
Jeff C and I were discussing things along this line in an email conversation. Basically, we were wondering if the cal could be tweaked to read the analog wideband output (0-5v). If we could find the constant that sets the toggle point, and adjust it so that it's toggle point would be 2.5 v (for stoic) or like 2.8v (for 15.4 or so). I'm not sure if the linear map of a wideband will help by being more sensitive, meaning car strays less from desired afr, or if it will cause all sorts of crazy behavior because it's too sensitive.
I know that lc-1's can be setup to fool the ecu based upon the simulated narroband output, but that's no good for the techedge and zietronics folks.
It should be a simple matter to condition the WB encoded value through a bell-curve table to get the desired behavior. Then you can just slide the bell one way or the other to move the stoich point.
Still if you only wanted to nudge it a tad, it seems like the NB should suffice even if it is being used slightly out of spec.
Re: Turbonator LM codebase
Quote:
Originally Posted by
risen
Jeff C and I were discussing things along this line in an email conversation. Basically, we were wondering if the cal could be tweaked to read the analog wideband output (0-5v). If we could find the constant that sets the toggle point, and adjust it so that it's toggle point would be 2.5 v (for stoic) or like 2.8v (for 15.4 or so). I'm not sure if the linear map of a wideband will help by being more sensitive, meaning car strays less from desired afr, or if it will cause all sorts of crazy behavior because it's too sensitive.
I know that lc-1's can be setup to fool the ecu based upon the simulated narroband output, but that's no good for the techedge and zietronics folks.
It's possible to create a transfer function in the code to 'convert' the WB signal to emualte a NB signal just like the LC-1 does. I wrote the code for it a while back, but I've never tried it. Not sure I even still have the code snippet. I'll have to look. I didn't have a correction for stoic, but it would be possible to add one.
Re: Turbonator LM codebase
Quote:
Originally Posted by
ShelGame
It's possible to create a transfer function in the code to 'convert' the WB signal to emualte a NB signal just like the LC-1 does. I wrote the code for it a while back, but I've never tried it. Not sure I even still have the code snippet. I'll have to look. I didn't have a correction for stoic, but it would be possible to add one.
Well isn't there a O2 voltage to AF table or code that can be changed to match the WB O2 voltage to AF from our devices? I have a NB signal out, but it doesn't serve alot of purpose.
Frank
Re: Turbonator LM codebase
Quote:
Originally Posted by
Frank
Well isn't there a O2 voltage to AF table or code that can be changed to match the WB O2 voltage to AF from our devices? I have a NB signal out, but it doesn't serve alot of purpose.
I think the concern is that the WB signal is fairly linear over the range (completely linear if you use a corrected output of your gauge), while the NB signal has very steep slope around stoich but is very flat outside of that.
Re: Turbonator LM codebase
Quote:
Originally Posted by
risen
I know that lc-1's can be setup to fool the ecu based upon the simulated narroband output, but that's no good for the techedge and zietronics folks.
techedge can be reprogrammed to emit a false signal.
Brian
Re: Turbonator LM codebase
Quote:
Originally Posted by
MiniMopar
I think the concern is that the WB signal is fairly linear over the range (completely linear if you use a corrected output of your gauge), while the NB signal has very steep slope around stoich but is very flat outside of that.
Oh I understand that. My point is that, the LM or any computer, should somewhere have a table that equates the NB voltage to an AF. If we re-write that table to equate WB voltage to AF, we should be good. Of course this is just theory.
Re: Turbonator LM codebase
Quote:
Originally Posted by
Frank
Oh I understand that. My point is that, the LM or any computer, should somewhere have a table that equates the NB voltage to an AF. If we re-write that table to equate WB voltage to AF, we should be good. Of course this is just theory.
OK, yeah. I don't think there is an actual table for that. At least not in the LM code. There should be a constant or two marking the position of the "neutral zone" boundaries, but the behavior beyond that is implicit in the autocal values. What I mean is that because the voltage-per-AF-ratio changes so quickly in a NB sensor around the neutral zone compared to the WB, the mixture may end up bouncing much further than it should around stoich. At least that is how I understand it.
But yeah, as Brian mentioned the TE NB output is tweakable and I intend to take advantage of that fact (at some point). :D
Re: Turbonator LM codebase
Quote:
Originally Posted by
Aries_Turbo
techedge can be reprogrammed to emit a false signal.
Brian
me = techedge n00b.
I'm still sort of interested in how the very linear output of the wideband would act with normal 02 routines. .34 v is around 1 afr on the standard innovate scale. So .5v is around 1.5 afr, and that's the normal sweep of my o2. I'm wondering if the additional accuracy would help things any, but looking at it from a raw math (albeit, back of the envelope) standpoint, it doesn't seem any better.
I was also wondering how hard it would be to gut the o2 routines and make them seek a target afr instead of the toggling and kicks setup. This way you could set a value and just have it seek that value using something like the WG routines.
Re: Turbonator LM codebase
Quote:
Originally Posted by
risen
I was also wondering how hard it would be to gut the o2 routines and make them seek a target afr instead of the toggling and kicks setup. This way you could set a value and just have it seek that value using something like the WG routines.
The toggling is mainly an emissions thing as I understand it. It's needed to keep the cat happy/healthy. Some oscillation is inevitable in a complicated system with feedback, so they just turned it into something useful I guess.
Re: Turbonator LM codebase
Quote:
Originally Posted by
MiniMopar
OK, yeah. I don't think there is an actual table for that. At least not in the LM code. There should be a constant or two marking the position of the "neutral zone" boundaries, but the behavior beyond that is implicit in the autocal values. What I mean is that because the voltage-per-AF-ratio changes so quickly in a NB sensor around the neutral zone compared to the WB, the mixture may end up bouncing much further than it should around stoich. At least that is how I understand it.
So you are saying the system tends to seek an O2 voltage, not an AF? If that is the case, then translating those boundaries and cells would just be as much as scaling them for the new voltage values within the wideband linear curve.
Re: Turbonator LM codebase
Quote:
Originally Posted by
Frank
So you are saying the system tends to seek an O2 voltage, not an AF? If that is the case, then translating those boundaries and cells would just be as much as scaling them for the new voltage values within the wideband linear curve.
I think that is what Rob is suggesting, but I think those values are deltas from some current voltage to some target voltage. Or perhaps I have no idea what I am talking about.
Re: Turbonator LM codebase
Quote:
Originally Posted by
MiniMopar
The toggling is mainly an emissions thing as I understand it. It's needed to keep the cat happy/healthy. Some oscillation is inevitable in a complicated system with feedback, so they just turned it into something useful I guess.
<sarcasam> What's a cat? </sarcasam> :eyebrows:
CT emissions are every 2 years for cars newer than 25 years. I'm sure you can see where I'm going with this. 2 more trips and the CSX is done. 1 more trip and the glh-t is done.
I believe that cats "hold" o2 from when the engine was lean, and release it when rich so the toggling gives them o2 to hold. That was the 3rd grade explanation I found last time I wondered how one works.
I understand that you can never get rid of all oscillation, but with a 5v a/d converter and a linear w/b output, I bet you could get it within +/- .2 or .3 afr.
Re: Turbonator LM codebase
Quote:
Originally Posted by
risen
I understand that you can never get rid of all oscillation, but with a 5v a/d converter and a linear w/b output, I bet you could get it within +/- .2 or .3 afr.
Should be very doable, especially if the base fuel is dialed-in well.
Re: Turbonator LM codebase
Quote:
Originally Posted by
MiniMopar
I think that is what Rob is suggesting, but I think those values are deltas from some current voltage to some target voltage. Or perhaps I have no idea what I am talking about.
My understanding (not that it's 100% correct) is that the 'kicks' are timer counts allowed before the A/F is corrected the opposite direction. So, if the a/f is going leaner, it's allowed to go lean until the timer matches the 'lean' kicks value, then it richens the mixture up until it reaches the 'rich' kicks value. This is what causes the toggling effect. So, if you increase the 'lean' kicks value (or decrease the rich kicks value), you move the middle of the range to the lean side. Of course, you need to do it for the correct cells (or maybe all the cells).
Re: Turbonator LM codebase
Quote:
Originally Posted by
ShelGame
My understanding (not that it's 100% correct) is that the 'kicks' are timer counts allowed before the A/F is corrected the opposite direction. So, if the a/f is going leaner, it's allowed to go lean until the timer matches the 'lean' kicks value, then it richens the mixture up until it reaches the 'rich' kicks value. This is what causes the toggling effect. So, if you increase the 'lean' kicks value (or decrease the rich kicks value), you move the middle of the range to the lean side. Of course, you need to do it for the correct cells (or maybe all the cells).
So is there a table that equates o2 voltage to a/f? Or does it kick based on voltage values, not a/f.
Re: Turbonator LM codebase
its just voltage frank, im pretty sure.
Brian
Re: Turbonator LM codebase
Quote:
Originally Posted by
Frank
So is there a table that equates o2 voltage to a/f? Or does it kick based on voltage values, not a/f.
I don't think it uses a/f directly. I think it just looks to see whether or not the o2 voltage is above or below .5v (which would be 14.7) . I haven't read any of the o2 code, but based upon what Rob says above:
if o2 volts > .5v wait until timer is counted down, then richen mixture
if o2 volts < .5v wait until time is counted down, then lean mixture out
Re: Turbonator LM codebase
Quote:
Originally Posted by
Frank
So is there a table that equates o2 voltage to a/f? Or does it kick based on voltage values, not a/f.
Voltage.
Re: Turbonator LM codebase
Quote:
Originally Posted by
ShelGame
Voltage.
gotcha.
So what would it take for us to remap the current parameters to look at the new voltages instead of using a transfer function, which unfortunely I think doesn't do much more then our NB outputs from our WB kits. I would love to see us target the new voltage and be able to tighten up the bouncing, etc.