Notices
944 Turbo and Turbo-S Forum 1982-1991
Sponsored by:
Sponsored by: Clore Automotive

DIY Tuning walk-through (TunerPro)

Thread Tools
 
Search this Thread
 
Old 12-10-2009, 04:43 AM
  #106  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by V2Rocket_aka944
back to the AFRs that are given in the fuel tables, those are just approximations based on the stock actual fuel values? and if they are modified how does that change the dme code to add or pull fuel?
The numbers are simply an estimate on what the AFR should be (using a stock fuel / AFM setup). If they are modified then the DME will add/pull fuel accordingly. If you want right-click on the tables and select view hex. Then you see the actual data and how it gets changed.


-Rogue
Old 12-10-2009, 12:52 PM
  #107  
V2Rocket
Rainman
Rennlist Member
 
V2Rocket's Avatar
 
Join Date: Jan 2007
Location: Nashville, TN
Posts: 45,498
Received 633 Likes on 490 Posts
Default

oh ok cool thanks.

about the FQS "fuel scale" table...this is the numbers that came with the .bin.

i am looking at the published FQS table (position vs timing/fuel) on frwilk and cannot see a correlation between those numbers and the ones in the table. im going to hazard a guess that maybe the numbers in the fuel scale table represent injector flow at a particular position? this would make sense to me as at higher constant flow say for position 3 (+6% fuel) the maximum duty of the injector is reduced. i also notice that taking the "stock" number of 34.6 and dividing by either 1.06, 1.03 or .97 (+6%, +3%, or -3% fuel) gets almost identical numbers to those listed in the fuel scaling table



i love this software lol
Old 12-10-2009, 04:25 PM
  #108  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by V2Rocket_aka944
im going to hazard a guess that maybe the numbers in the fuel scale table represent injector flow at a particular position?
Yes. If you tell the DME that it has smaller injectors, it is going to increase the Injector Duty Cycle (IDC) to compensate. The reverse is true for larger injectors.


-Rogue
Old 12-20-2009, 01:39 AM
  #109  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Updated bundle to include the newest release of TunerPro - this version has the data-tracing which works in the majority of the MAPs.
Old 12-20-2009, 03:57 AM
  #110  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Ok, attached is an Excel worksheet that allows you to play with the three AFM Transfer Function Tables. This worksheet will output a graph of the transfer function, and will hopefully allow people to get a better understanding of the 944/951 workings by manipulating the tables.

Transfer Function Worksheet

Furthermore, those with aftermarket MAFs, can try to get the transfer function to match their aftermarket unit (and see why the 944/951 stock code is limiting).


-Rogue
Old 12-21-2009, 02:44 PM
  #111  
Dare
Rennlist Member
 
Dare's Avatar
 
Join Date: Apr 2002
Location: San Jose, CA
Posts: 449
Received 2 Likes on 2 Posts
Default

Originally Posted by Rogue_Ant
Ok, attached is an Excel worksheet that allows you to play with the three AFM Transfer Function Tables.
Is there a reason why the formula for the transfer function is protected?
Old 12-21-2009, 03:51 PM
  #112  
Transaxle
Instructor
 
Transaxle's Avatar
 
Join Date: Feb 2002
Location: Germany
Posts: 201
Likes: 0
Received 0 Likes on 0 Posts
Default

Great project!

I'm a little confused about you interpretation of the FQS injection time scaling (*34.6) and the injection table target air fuel ratio (*14.5). Could you explain this a little more detailed?
Old 12-21-2009, 04:06 PM
  #113  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by Transaxle
Great project!

I'm a little confused about you interpretation of the FQS injection time scaling (*34.6) and the injection table target air fuel ratio (*14.5). Could you explain this a little more detailed?
From what I could find, the stock 951 injectors are rated at 34.6lb/hr.
And the target AFR should be * 14.7... I'll update the bundles.


-Rogue
Old 12-21-2009, 04:07 PM
  #114  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by Dare
Is there a reason why the formula for the transfer function is protected?
Just to keep the worksheet simple. I've already given the formula multiple times in this thread...


-Rogue
Old 12-21-2009, 04:34 PM
  #115  
Transaxle
Instructor
 
Transaxle's Avatar
 
Join Date: Feb 2002
Location: Germany
Posts: 201
Likes: 0
Received 0 Likes on 0 Posts
Default

Originally Posted by Rogue_Ant
From what I could find, the stock 951 injectors are rated at 34.6lb/hr.
And the target AFR should be * 14.7... I'll update the bundles.
-Rogue
From my understanding the injectors flowrate at a given fuel pressure is part of the AFM curve. For any volume flow the AFM curve delivers a basic injection time. Propably based on a stoichiometric mixture. That is corrected in a first step by an abstract filling rate of the engine (2000/rpm). The rest are just correcting factors to this value.

Take the FQS values as simple factors (x/128) and compare the result with the description of the FQS in the workshop manual...
Old 12-21-2009, 05:00 PM
  #116  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by Transaxle
From my understanding the injectors flowrate at a given fuel pressure is part of the AFM curve. For any volume flow the AFM curve delivers a basic injection time. Propably based on a stoichiometric mixture. That is corrected in a first step by an abstract filling rate of the engine (2000/rpm). The rest are just correcting factors to this value.
Is the 2000/rpm actual RPM or the 8bit value RPM/40? And yes, I believe you are correct. Here is an older post about this:

Originally Posted by TT
Yes it is the basic injector pulse width calculation which uses the VAF signal that I changed. That calculation is performed before any maps (ie. cell values) are applied. I could for instance remove all three maps (idle/pt/wot), put in an appropriate constant multiplier and the car would operate under all conditions with a 14.7 AFR.
Originally Posted by Transaxle
Take the FQS values as simple factors (x/128) and compare the result with the description of the FQS in the workshop manual...

The FQS fuel change values are:
position / change
0 / 0%
1 / +3%
2 / -3%
3 / +6%

The scaling I used for the FQS represents this change, smaller injector size will increase IDC, larger injector will decrease IDC (this is doing the X/128):
position / injector size / percent change
0 / 34.6 / 0%
1 / 33.55 / +3%
2 / 35.72 / -3%
3 / 32.54 / +6%

Perhaps this is not the best way of displaying the FQS values, but I haven't had a problem with it yet. The numbers are just guidelines, and not hard values.


-Rogue
Old 12-24-2009, 01:51 AM
  #117  
Dare
Rennlist Member
 
Dare's Avatar
 
Join Date: Apr 2002
Location: San Jose, CA
Posts: 449
Received 2 Likes on 2 Posts
Default

Originally Posted by Rogue_Ant
I've already given the formula multiple times in this thread.
Well, there’s a little more to the formula than what’s been given before. Here’s what I make it out to be:
Flow (g/s) = T1[ Vmaf / 32 ] * T3[ Vmaf % 32] * 2 ^ T2[ Vmaf / 32 ] / 16384
where Vmaf is an 8-bit representation of the MAF output voltage from 0 to 5 volts.

It would be interesting to see the code that implements this. I don’t quite understand the need for the final division term (the / 16384). Since 16384 is a power of 2 this could have been incorporated into the values in the T2 table. There must be something more going on that I’m not aware of.

Originally Posted by Rogue_Ant
This function predetermines the basic curve, so that no matter how we play with the data in the three tables, it is impossible to truly match the Lightning MAF.
When I read this I remember thinking that the two curves didn’t look all that different to me, which left me puzzled as to why the existing AFM code couldn’t be adapted to match the transfer function of the lightning MAF. Once I got your spreadsheet and understood the basic algorithm I began to explore the math behind the algorithm and what types of curves it was capable of representing. As it turns out, the AFM code is capable of making a reasonable approximation of the Lightning MAF transfer function given the right input tables. (Since I don’t have access to the data sheet for the Lightning MAF I used the values from the following post by toddk911: link. Hopefully it’s close to the real thing.)

I discovered that the AFM algorithm is capable of representing curves of the form y = a * b ^ x, for reasonably sized values of a and b. Using a curve fitting algorithm I came up with values for a and b that produce a curve fairly close to that of the Lightning MAF transfer function, in this case a=12.11433, b=1.60063. I then developed a spreadsheet that helped me pick the correct values for the three tables based on these values. Here are the table values I came up with:

T1: 155 248 199 159 254 204 163 130
T2: 3 3 4 5 5 6 7 8
T3: 160 163 166 169 172 175 178 181 184 187 190 193 196 199 202 205 208 211 214 217 220 223 226 229 232 235 238 241 244 247 250 253

The following graph shows the computed air flow based on my new table values as compared to the actual air flow from Lighting MAF transfer function:



For most of the curve the maximum error in the computed value is around +/-20 g/s. While small, my guess is that this is still too big to ignore in the lower range of the curve. I wonder however if this could be trimmed out by adjusting other tables.

This was mostly an exercise in curiosity on my part. But I wonder if one couldn’t use this approach to adapt an off the shelf MAF without requiring a piggyback.
Old 12-24-2009, 02:04 AM
  #118  
V2Rocket
Rainman
Rennlist Member
 
V2Rocket's Avatar
 
Join Date: Jan 2007
Location: Nashville, TN
Posts: 45,498
Received 633 Likes on 490 Posts
Default

by changing the transfer function, like in order to use a 951 afm on my NA, is that to ensure that when the 951 afm measures X volume airflow, that the NA computer puts out Y fuel corresponding to X? otherwise, like if the 951 afm were just plugged in, it would measure X airflow but the DME would read it as less than X since it is programmed for an afm that flows less, therefore it would send too little fuel and run lean?
Old 12-24-2009, 07:12 PM
  #119  
Dare
Rennlist Member
 
Dare's Avatar
 
Join Date: Apr 2002
Location: San Jose, CA
Posts: 449
Received 2 Likes on 2 Posts
Default

The DME uses the transfer function to determine how much air is flowing into the engine when it sees a particular voltage from the AFM. A different size AFM will likely output a different voltage for the same amount of air. Conversely, two different AFMs that are both outputting the same voltage are likely to have differing amounts of air flowing through them. Since the DME needs to base its fueling decision on the actual amount of air flowing into the engine, it needs a transfer function that matches the behavior of the attached AFM.

In the case of using a 951 AFM on an NA car, without knowing the difference between the NA and 951 AFMs I can’t really say what would happen. However if I had to guess, I’d say you’re probably right about the car running lean.
Old 12-24-2009, 07:48 PM
  #120  
Rogue_Ant
Addict
Rennlist Member

Rennlist
Small Business Partner

Thread Starter
 
Rogue_Ant's Avatar
 
Join Date: May 2006
Location: Denver
Posts: 5,252
Likes: 0
Received 4 Likes on 4 Posts
Default

Originally Posted by Dare
Well, there’s a little more to the formula than what’s been given before. Here’s what I make it out to be:
Flow (g/s) = T1[ Vmaf / 32 ] * T3[ Vmaf % 32] * 2 ^ T2[ Vmaf / 32 ] / 16384
where Vmaf is an 8-bit representation of the MAF output voltage from 0 to 5 volts.

It would be interesting to see the code that implements this. I don’t quite understand the need for the final division term (the / 16384). Since 16384 is a power of 2 this could have been incorporated into the values in the T2 table. There must be something more going on that I’m not aware of.

When I read this I remember thinking that the two curves didn’t look all that different to me, which left me puzzled as to why the existing AFM code couldn’t be adapted to match the transfer function of the lightning MAF. Once I got your spreadsheet and understood the basic algorithm I began to explore the math behind the algorithm and what types of curves it was capable of representing. As it turns out, the AFM code is capable of making a reasonable approximation of the Lightning MAF transfer function given the right input tables. (Since I don’t have access to the data sheet for the Lightning MAF I used the values from the following post by toddk911: link. Hopefully it’s close to the real thing.)

I discovered that the AFM algorithm is capable of representing curves of the form y = a * b ^ x, for reasonably sized values of a and b. Using a curve fitting algorithm I came up with values for a and b that produce a curve fairly close to that of the Lightning MAF transfer function, in this case a=12.11433, b=1.60063. I then developed a spreadsheet that helped me pick the correct values for the three tables based on these values. Here are the table values I came up with:

T1: 155 248 199 159 254 204 163 130
T2: 3 3 4 5 5 6 7 8
T3: 160 163 166 169 172 175 178 181 184 187 190 193 196 199 202 205 208 211 214 217 220 223 226 229 232 235 238 241 244 247 250 253

The following graph shows the computed air flow based on my new table values as compared to the actual air flow from Lighting MAF transfer function:



For most of the curve the maximum error in the computed value is around +/-20 g/s. While small, my guess is that this is still too big to ignore in the lower range of the curve. I wonder however if this could be trimmed out by adjusting other tables.

This was mostly an exercise in curiosity on my part. But I wonder if one couldn’t use this approach to adapt an off the shelf MAF without requiring a piggyback.
Jay, great post!
That is the closest I've curve I've seen to the lightning MAF... However, The low-loads are quite a bit off. I would be iterested in a % comparison between the lightning MAF and your curve. 20g/s difference is lot when, the engine is only injesting, say, ~4g/s.
And yes, there is a little bit more to the transfer function, but it really is not necessary for most to know. The VMAF/32 is to simply divide an 8bit number to divide an 8bit number to get a 0-7 pointer for he T1 & T3 tables... And the airflow value is a 24bit number, then is divided to get an 8bitnumber (IIRC). I'm out of state, so I'll double-check when I get back home.
It is easy to see the limitations of the stock transfer functin code, and why it nees to be changed to truely match up to an aftermarket MAF.


-Rogue


Quick Reply: DIY Tuning walk-through (TunerPro)



All times are GMT -3. The time now is 02:11 AM.