PDA

View Full Version : calc.ve .pid wrong?



SSpdDmon
June 25th, 2007, 01:33 AM
There's a calc pid in the scanner I just noticed that computes a VE value based on MAF. The equation shows:

VEpcm=MAF*(IAT+273.15)/((displacement()*61.024)*RPM*MAP)*6155274.24

I didn't get any values that made sense with that and I wasn't sure how to represent displacement.

So, I tried the following:

VEpcm=(MAF*(IAT+273.15)*6155274.24)/(displacement*61.024*RPM*MAP)

...using cylinder_volume*8=5665.527336 for displacement and metric values for MAF, IAT, and MAP.

The result appears to be relatively close to my VE in grams*K/kPa.

Is it possible this calculated pid's equation is wrong in the EFI Live sae_generic.txt file?

joecar
June 25th, 2007, 02:16 AM
Jeff, I pm'd Paul.

johnsZ06
June 25th, 2007, 08:26 AM
Subscribe :cheers:

Blacky
June 25th, 2007, 11:58 AM
The value of the displacement() function is determined by the displacement setting in the log file.

You can view/change the displacement setting in the log file here:
Edit->Log file information...->Vehicle Options->Engine:
Select from the list, or just type in the displacemnt in CC.

You can set the default displacement for a particular VIN in the customer details. The customer details are copied into a log file when it is recorded.

Regards
Paul

mnotx
June 25th, 2007, 12:15 PM
I have done just that and still can't get the VE to work on old logged data(V1). Do I have to log new VE data before it will work?

joecar
June 25th, 2007, 12:18 PM
Posts #4 and #5 don't follow on from post #1... :nixweiss::nixweiss::nixweiss::nixweiss::nixweiss: :nixweiss:

SSpdDmon
June 25th, 2007, 12:19 PM
Displacement seems to not be a problem anymore....at least not for me (edited my sae_generic.txt file to always use 5665.527336). I don't log any other cars and don't plan on a stroker anytime soon.

The problem was the constant I highlighted in red. As it sits in the original sae_generic.txt, it's on the denominator side of the equation. When I moved it to the numerator side, the values started to look sane. After that and setting the displacement, the pid started working.

Without the displacement in the equation, I would get an invalid error because of "divide by zero" was a possibility.

Blacky
June 25th, 2007, 12:40 PM
The problem was the constant I highlighted in red. As it sits in the original sae_generic.txt, it's on the denominator side of the equation. When I moved it to the numerator side, the values started to look sane.

No, the constant in red is on the numerator side - look carefully at the braces.

Regards
Paul

Blacky
June 25th, 2007, 12:42 PM
I have done just that and still can't get the VE to work on old logged data(V1). Do I have to log new VE data before it will work?
No, once you update the displacement value in the log file (and replot the charts), then the calculated PID's value should reflect the new displacement.

Just to check the displacment is being picked up correctly, create a calculated PID with just "displacement()" as the expression. That should be a straight line at the value of the displacement.

Regards
Paul

Blacky
June 25th, 2007, 12:44 PM
No, the constant in red is on the numerator side - look carefully at the braces.
Regards
Paul

Just to clarify,

a/b*c is NOT the same as a/(b*c)
a/b*c IS the same as (a*c)/b

Regards
Paul

joecar
June 25th, 2007, 01:17 PM
Just to clarify,

a/b*c is NOT the same as a/(b*c)
a/b*c IS the same as (a*c)/b

Regards
Paul

VEpcm=MAF*(IAT+273.15)/((displacement()*61.024)*RPM*MAP)*6155274.24

VEpcm=(MAF*(IAT+273.15)*6155274.24)/(displacement*61.024*RPM*MAP)
lol... I missed the position of the parens... :muahaha:... that's pretty bad (the constant is right on the end)... :notacrook:

I've been fighting mis-matched braces/parens. all day in my work... me ->:bash: <- { [ (

mnotx
June 26th, 2007, 03:53 AM
Posts #4 and #5 don't follow on from post #1... :nixweiss::nixweiss::nixweiss::nixweiss::nixweiss: :nixweiss:

My post was in response to Blacky's. My point was that I did what should have fixed the problem and it didn't. My VE PID worked under V1, but has not worked since upgrading to V2. I simply would like to get VE working again.

mnotx
June 26th, 2007, 04:10 AM
No, once you update the displacement value in the log file (and replot the charts), then the calculated PID's value should reflect the new displacement.

Just to check the displacment is being picked up correctly, create a calculated PID with just "displacement()" as the expression. That should be a straight line at the value of the displacement.

Regards
Paul

How do I create the "displacement" PID to test? I have not created PIDs before.

joecar
June 26th, 2007, 04:15 AM
My post was in response to Blacky's. My point was that I did what should have fixed the problem and it didn't. My VE PID worked under V1, but has not worked since upgrading to V2. I simply would like to get VE working again.That's ok, it was me who fell in a tar pit... :cheers:

mnotx
June 28th, 2007, 09:56 AM
The value of the displacement() function is determined by the displacement setting in the log file.

You can view/change the displacement setting in the log file here:
Edit->Log file information...->Vehicle Options->Engine:
Select from the list, or just type in the displacemnt in CC.

You can set the default displacement for a particular VIN in the customer details. The customer details are copied into a log file when it is recorded.

Regards
Paul

Since I don't know how to creat my own PIDs, is there another way to test and see what is wrong. I did the above, but the VE still does not work.

Blacky
July 2nd, 2007, 09:40 AM
There is a "gotcha" when setting up the displacement value for a log file. If the displacement is not set (i.e. set to 0) then EFILive defaults to displaying 5669 cc (i.e. LS1 5.7 liter). Unfortunately, it still uses the 0 value in the calculated PIDs, which is what has been confusing everyone - me included).

Workaround:
1. Load the log file.
2. Select the menu option Edit->Log file information
3. Select tab page [Vehicle options]
4. Change the "Engine: CC" setting to a different value.
5. Click on Ok.
6. Save the log file.
7. Repeat steps 2-6, but select the correct engine size.

Attached is a calc_pids.txt file that shows the value of the "displacement()" function. To display in cubic inches, right click on the CALC.ENGSIZE PID is the [PIDs (F8)] tab page and select Imperial (or select Metric for cubic centimeters).

Regards
Paul

mnotx
July 2nd, 2007, 11:24 AM
Works like a champ now. Thank you for the quick fix...I know you have a lot going on right now. I appreciate it!