why lookup tables?

Free and Open Source Engine Management discussions excluding more specific things on this board.
shameem
LQFP112 - Up with the play
Posts: 135
Joined: Thu May 01, 2008 6:30 pm
Location: Ann Arbor, MI
Contact:

why lookup tables?

Post by shameem »

I have been stumbling through various engine management schemes out there and one thing they all have in common is the tables? Why is it still needed? In the older days when processor power/ memory tech was infantile - lookup tables might have made sense. But with the faster processors being available for dirt cheap why not use a feedback control scheme (PI, PID, Fuzzy, Neural etc) that uses the feedback values to get the output parameters close to the target (set) point.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: why lookup tables?

Post by Fred »

Are you talking about parameterised mathematically modeled engine control? How would you tune it? I'm actually intending to not use tables, but I'll keep that idea on the sly for now. It doesn't involve model based stuff though. You still have to tune it similarly to a table.

Another answer would be that even the faster chips aren't that fast really.

I am curious as to how you think you would tune it. And also how it would work at all.

If you want to read more on model based stuff, B&G are right into it :-)

Admin.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
shameem
LQFP112 - Up with the play
Posts: 135
Joined: Thu May 01, 2008 6:30 pm
Location: Ann Arbor, MI
Contact:

Re: why lookup tables?

Post by shameem »

No not really - i am talking in terms of general control theory -
http://en.wikipedia.org/wiki/Control_theory

parameterized math models would be a great help if everyone knew the exact transfer function of the engine they are working on. But with modern software based digital controllers - one does not need extensive knowledge about the math model of the system under control.

http://en.wikipedia.org/wiki/PID_controller

There are multiple schemes possible - e.g. if a certain AFR is the setpoint then the controller parameters can be "tuned" to strive for that setpoint no matter what rpm, temp, pressure etc. If the setpoint is power (torque) then it can be optimized too (with AFR as a limited variable).

Granted PID is an old math method and (relatively) newer schemes like fuzzy and neural control can do the same with less/imperfect tuning....
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: why lookup tables?

Post by Fred »

There are heaps of problems with that, but the main one is that you don't want a tune that relies on an oxygen sensor. You want the opposite, a tune that doesn't use the oxygen sensor except as verification/monitoring. You want a steady predictable tune that is affected only by changes to physical hardware (which requires a retune anyway). Thus if you start getting a mechanical problem, the tune moving away from dialed in is a good indicator of it. Alternatively you know that your sensor is stuffed if you see change but there isn't any. Sensor response just is not reliable for that without complex cross referencing of different sensors etc.

Besides, some of actually enjoy tuning. This falls under the same category as pre printed boards to some extent. Some of us want to print our own boards.

Feel free to start a topic and develop an alternative method/setup for the common platform though :-)

Admin.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
ababkin
LQFP112 - Up with the play
Posts: 215
Joined: Tue Jan 15, 2008 5:14 pm

Re: why lookup tables?

Post by ababkin »

Interesting discussion

Fred is spot on about 'unreliable' feedback signal provided by the WBO2 sensor. The reaction is both delayed (about 3 sec?) and not very accurate (i recall an estimate of +-.7 AFR inaccuracy). I personally don't think a dynamic system can have the right amount of stability-usefulness balance to be effective with this kind of feedback. (but i could be wrong)
Perhaps some neural implementation can still make use of such delayed/inaccurate feedback and eventually 'figure out' a good responsive tune, but from what i know about neural networks, they require a LOT of computational horsepower, not something available in spades in automotive enthusiast solutions. Yes, we can use an FPGA.... but we are not quite there yet :D


.. but, if we had a feedback like ion sensing with pressure peak point estimation in place, for example, or say a precise torque measuring device, this feedback control schemes would make sense to consider.
The way things are currently (in DIY ECU scene anyway), there are no proper feedbacks. The only somewhat good feedback is a) dyno and b) tuner's ear and arse.

To summarize and answer your initial question: tables are still used to keep things flexible and simple, to be able to tune your car/engine the way it 'feels' right.

Alex
Legal disclaimer for all my posts: I'm not responsible for anything, you are responsible for everything. This is an open and free world with no strings attached.
shameem
LQFP112 - Up with the play
Posts: 135
Joined: Thu May 01, 2008 6:30 pm
Location: Ann Arbor, MI
Contact:

Re: why lookup tables?

Post by shameem »

The time lag in the feedback loop can be compensated - it takes "some" tweaking of equations (for traditional control schemes). Some of the "modern" digital control schemes can do it (relatively) simply.

A classic example might be temperature control - if the heater was on till the setpoint was reached then the final temperature will be higher than the setpoint due to residual effect. So the temperature feedback from the sensor is delayed by several seconds/minutes depending on the size of the room, heat loss etc. A typical PID control scheme "anticipates" or guesses future state and manipulates the control variable accordingly.

Well the control scheme doesnt even have to be feedback - it can be feed forward - http://en.wikipedia.org/wiki/Feedforward -

(By the way i am not trying to argue or be obnoxious - just trying to educate myself)
thebigmacd
LQFP112 - Up with the play
Posts: 205
Joined: Thu Apr 10, 2008 5:51 pm

Re: why lookup tables?

Post by thebigmacd »

Warmup enrichment, accel enrichment, fuel and spark maps, etc are all feed-forward to start with.

Now with Fuzzy you could eliminate the conventional 2d map by replacing it with fuzzy statements, but the result of a 2d fuzzy statement list is a 2d map anyway, and can be displayed as such. The big advantage to fuzzy is that you can add more degrees of freedom, ignoring some inputs under some conditions, using all of them under others, and ending up with very good control. The issue is that with multiple degrees of Fuzzy, the effect of individual parameters gets buried. On the other hand, if the other parameters are tuned well, the effect of a single incorrect parameter becomes small and the system will recover.

I really like Fred's idea of "floating point" maps. I'm having a hard time to figure out a slick implementation but he might have something up his sleeve.
Keith MacDonald
Control Engineering (Systems) Technologist
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: why lookup tables?

Post by Fred »

By the way i am not trying to argue or be obnoxious - just trying to educate myself
I know, and I'm trying not to be defensive as best I can. I'm sorry if it comes across like that :-)
thebigmacd wrote:I really like Fred's idea of "floating point" maps. I'm having a hard time to figure out a slick implementation but he might have something up his sleeve.
I can't take credit for that. It was Karsten's idea. He and Rob have been discussing it and working out some details etc. I admit to understanding some of it though :-)

Admin.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
ababkin
LQFP112 - Up with the play
Posts: 215
Joined: Tue Jan 15, 2008 5:14 pm

Re: why lookup tables?

Post by ababkin »

can anyone fill me in on those "floating point maps" and what's special about them?

i tried to search but didn't find the discussion.
Legal disclaimer for all my posts: I'm not responsible for anything, you are responsible for everything. This is an open and free world with no strings attached.
User avatar
Fred
Moderator
Posts: 15431
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: why lookup tables?

Post by Fred »

ababkin wrote:can anyone fill me in on those "floating point maps" and what's special about them?

i tried to search but didn't find the discussion.
Ummm, that's because it's only been discussed privately between myself, karsten, rob, and YOU! (wtf? why don't you remember? don't answer that here...)

Shhhhh.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Post Reply