Marcin Pohl

Version 1.6   Dec 3, 2006

Thanks to the usual crew: 

Larry & Chad (reality check),

Andy & Will (concepts),

Nate (motivational bickering),

Gex (formatting)

 

From Physics to Speed Density

Doubt is not a pleasant condition, but certainty is absurd.  (Voltaire)

Eventually I got tired of working off AFR % Error and Fuel Trims, and figured out that there’s got to be a better way of arriving at the final fueling.  Also, once I found out that the VE in HPT/EFILive is not a real VE but some combo package of mass, pressure and temperature, I decided that’s a moving target.  Combine the two, and you got an error prone method of aiming at a moving target—I have no idea frankly how we got any of our tunes working right this way.

 

Another important idea I got was that some serious standalones (namely MoTeC, and as I found today, EFILive too) can display VE tables not only as airflow efficiency, but also as airflow or even pre-calculated all the way to Injector Pulse Width, which for us Computer Science types (hi Larry!) always sounds like a good idea in systems where time matters.

 

So all this stuff got me thinking:  If Volumetric Efficiency is constant then the air moving through it should be calculated dynamically according to the conditions.  Of course, our VE (from now I’ll refer to it as the GMVE) contains pressure and temperature.  Thus, what I figured I needed is a way to convert from a fully tuned GMVE table obtained using historical methods, to a true mechanical, absolute VE.  Knowing that, we can calculate back to GMVE, adjusting for any conditions we’d like!  No more retunes.  No more waiting for fuel trims to catch up.  No more worrying about racing in the desert or mountains and suffering from a double penalty of bad air and a bad tune.  Just start with your absolute VE, punch in fresh weather data, and out comes your ‘here and now’ GMVE table ready to flash.


Part 1—general setup that leads us to Injector Pulse Width

Let’s start with few simple definitions:

Rho () – air charge density

VE – absolute Volumetric Efficiency (ratio of real vs. theoretical airflow)

Volume – volume, displacement of a cylinder (we’re going to look at things per cylinder)

(this is a generic volume, not our displacement, so let’s substitute our data)

For now, let’s assume we know, VE and Volume, and we’re looking for airmass:

This is an important stop, because we will return here twice.

  1. We have airmass, which happens to be Dynamic Cylinder Fill, and it will come in useful later
  2. We have, density of air figure, but not something we just know what it is, we’ll have to figure out later how to substitute something here that we can either calculate or just use data from sensors.

This is where we make a jump from air measurements to fuel calculations, through the means of Air Fuel Ratio (AFR).

    

Because both flows are per second we can drop them out of the equation and conclude:

 

We have Airmass from prior calculations, we can log AFR, and it’s time to get Fuelmass:

 [kg]

Now we know how much fuel is needed, but we have to convert it to something that an injector can understand:  Injector Pulse Width.  To do that, we have to figure out how much fuel does an injector of a certain size (IFR—the max flow) flow within 2 rotations (4 stroke motor, one injection every 2 rotations)

 

(numbers convert minutes into seconds, it’s just weight of fuel in one injection cycle)

In the process we can calculate the IDC:

IDC – Injector Duty Cycle

 

 

IPW – Injector Pulse Width--time of maximum fuel injected in injection once cycle

Notice that we already have a definition of IDC, and it involves some similar terms, so let’s substitute to see if we can simplify it:

 The RPM to time conversion drops out completely leaving us with:

Which ultimately makes sense, as it’s just a fuel mass version of a very generic, or in this case .

 

Let’s start substituting some earlier calculations for Fuelmass:

                FORMULA #1 FOR IPW

This is the big one.  This is the math powering my little VE2IPW calculator, which I find very handy. 

This is also a good place to introduce another idea:  calculating Air Density from Pressure and Temperature of a gas.  This part is completely attributed to Richard Shelquist and his awesome Density Altitude (and many other useful things) site (http://wahiduddin.net/calc/density_altitude.htm)

 

The formula above is great, but we still have Air Density, a variable that we really don’t know what it is, especially in terms of senor data we can gather.  To get that, we have to look to chemistry to figure it out.

All gases basically follow the Ideal Gas Law:

N is the number of molecules in given Volume.

Or in terms that we’ve been using so far:

As we mentioned earlier, general formula for Density is:

In this case, because we’re dealing with molar mass:

Combining the two equations, we get:

R is gas constant, 287.05  J/(kg*K)  for dry air. 

Also we have to remember that Temp is in Kelvin, and pressure is done in Pascals, not kPa like everywhere else in this paper.

Now that we have, we can join the Ideal Gas Law based formula and the IPW formula together:

           Formula #2 for IPW

 


Part 2—Four Faces of VE

I’ve always felt that VE, GMVE, Cylinder Airmass, and Airflow were always connected, but no one ever posted any formulas, and even the common sense relationships were vague.  Then, by accident, EFILive’s help system came to the rescue.

Basically they posted their formula for the Airmass, when explaining their multi unit VE:

                  Airmass from GMVE

GMVE – VE related value that GM likes to use, which accounts for pressure and temperature, as the unit indicates [g * K / kPa]

MAP – value of the sensor that measures the manifold absolute pressure [kPa]

Temp – Temperature of the air charge, seems to be a blend of ECT and IAT depending on the airflow (more airflow more IAT biased and vice versa)

This is already useful, it is something that we either have (GMVE) or something we can measure with built in sensors (MAP, IAT, ECT)

 

So far, my own physics derived formula for Airmass was:

    Airmass from VE and Sensors

Remember this is the absolute VE and Volume is the cylinder’s displacement.

Since they’re both formulas for the same thing, they should be truly equal:

Map and Temp drop out on both sides leaving us with

            GMVE<->VE conversion

Let’s see what we get for units, derived out of this entirely physics based formula:

We already see this is interesting, because we have both the absolute VE and GMVE in one formula where the rest of variables are known.  Also, the units came back magically identical to the ones we find in EFILive’s help files.

Another cool part is that we can now transform GMVE into an Absolute VE:

To go back to the original premise of this chapter, we want to get Airmass—the mass of actual air in the cylinder.  Now we have multiple ways to achieve it, since we have multiple versions of VE, GMVE calculated form air density, volume, and temps.

                Airmass from VE

Once we have Airmass, getting airflow is just around the corner. We already know what to do to calculate Cylinder Airmass we need:

From the Cylinder Airmass, we can calculate Airflow (total Airflow, not just per cylinder anymore):

So substituting for Airmass the formula we just derived:

     Airflow from GMVE

This is very useful to us.  This is what I’m guessing EFILive folks do behind the scenes to be able to display the VE in three different forms.  The cool part about this is that If we knew how efficient the car is, how many HP per lb/min of airflow we get, we could display a 3D horsepower graph—is this cool or what?

Back to the previous thought on obtaining VE:

Since both of these airflows can be either per cylinder or total, we don’t care which we use, because number of cylinders would cancel out instantly since it’s in both terms.  Notice that the units for RealAirflow are, but TheoreticaAirflow is in, thus we must convert one of them to the same unit as the other:

Now substitute in for:                  

                                                       VE formula

Now we have formulas for VE, GMVE, Airmass, and Airflow.  Mission accomplished.

Part 2.5—Addendum

These equations been really useful, but recently I’ve been playing with them some more, trying to see them in different forms, expressed in terms of density, VE, or GMVE, without a set goal in my head.  Few things I noticed:

          

We can substitute these into the Airmass and Airflow equations and see what happens:

Let’s separate some terms out so it’s easier to see what we’re looking for

The last form is very important; it describes Airflow in terms of Airmass. 

Or, to describe Airmass in terms of Airflow:

                      Airmass in terms of Airflow

Another important formula was:

                                IPW in terms of VE

Or rearranged just like in formulas above:

We’ve already seen similar groupings of variables above:

    IPW in terms of Airflow

The importance of this is that we now we can calculate IPW from any airflow.  Not just Airflow as a result of Speed Density calculations, but also from any other way that we can obtain Airflow, i.e. MAF sensor.  This allows us to convert from pure MAF based tunes to SD, or fix tunes where MAF/IFR was manipulated to get required IPW.


Part 3--Applications

The question of course is what can we do with all this new stuff?

First of all, we gain the full understanding of the process.  We have gone all the way from physical properties describing the motor, to the pulse width given to the injectors.  That’s the whole functionality of the PCM, as far as the fueling is concerned.  Granted, there are always multipliers and adders and other modifiers but that’s just another ‘inline’ added item.

To me, looking at the equations and realizing the IPW is NOT RPM-dependent was a huge mental breakthrough.  I always thought it was, but now it all makes sense, and it was the math that demonstrated it to me.

We also understand now that VE, GMVE, Cylinder Airmass, and Airflow are all related and possible to calculate from one another.  I thought that’s going to be my big contribution, but apparently the EFILive guys figured it out long time ago and stole my thunder.  But, I have arrived at it myself, so my understanding of it is a lot more instinctual, not just some formulas you ‘plug and chug’ in numbers without real understanding. 

We can predict exactly how much Injector Pulse Width an engine with given VE is going to need.  We can also see the influence of things like AFR, temperatures, and pressure on the IPW.

We can calculate the Absolute VE from GMVE, once GMVE is totally dialed in, use it as the base of GMVE’s for any condition. 

We can see what’s worth fighting for:  keeping AFR consistent, keeping IAT down, and eliminating intake bottlenecks (high MAP all through RPM)

We can quantify gains attained by different modifications.  We can now say that with Heads X or Headers Y, we have gained Z airflow at W rpm.

We are able to calculate in IAT VE multiplier exactly to your application.

We are able to take bad tunes, and make some sense out of them.  We are able to see the real amount of fuel they injected and you just take that and find a VE to match that fuel at proper IFR.

Another extra benefit of staring at the different forms of VE long enough was that I looked at the LS2’s VE table, and I almost instantly knew how it works.  The numbers in it are simply GMVE multiplied out by 1000.  The only other numbers in there are the gas constant (R) and Cylinder Volume, which can be treated as a constant.  All you have to do then is to multiply it out using the GMVE<->VE formula and you’re back to the traditional VE that’s much easier to understand for me.


Part 4—Future Work and Conclusions

  • Fully automate going from GMVE->VE->GMVE(at any other conditions).

  • Fully automate going from GMVE based, tweaked IFR to a proper tune.

  • Incorporate MAP, Temp into the VE2IPW calculator.

  • Figure out the Temp equations using the bias table.

  • Figure out a reasonable estimate HP per lb/min of airflow (or TQ per g/cyl), and display a 3D dyno graph.  Live play through a 3D table would be very educational.

  • This is all ‘intake’ stuff, all these calculations are based on values of incoming air, and not how efficient the setup is.  A nice complement would be measurement of the outcome and seeing where we have the biggest losses.

The weird part is that I started all this research just trying to understand Cylinder Airmass.  In the process I learned that all these other forms of VE are related through few other pieces of sensor data, and how ultimately they affect fueling calculations.  Things like Airflow, Injector Duty Cycle, and what sensors are really used to calculate all these useful PIDs just happened in the process.

The next phase is definitely verification.  Soon, I should be getting a lot of track data from VIR (22 sec straightaway!) and with a new set of PIDS to monitor, I should be able to create VE, GMVE, Dynamic Airflow and Dynamic Cylinder Airflow tables, and see how they all compare to the one in the tune already.  That’s either going to make me very happy, or send me back to the drawing board.

I have created a spreadsheet that I’m attaching with this paper, which starts with a stock 2004 Z06 Corvette file, showing off VE in four forms, and then underneath I have my own calculated version, to see if I can convert between them.  So far everything looks good, often to many decimal points.

Also, I created, and then another guy has reformatted a spreadsheet that makes tuning LS2’s VE easier.  It’s really not necessary as GMVE is as linear as VE, but for the curious ones that would rather see it in VE instead of GMVE, it’s a great option.

So now you know how Speed Density works.  And knowing is half the battle…

Make a Free Website with Yola.