PDA

View Full Version : DYNAIRTMP_DMA vs CHRGTEMP_DMA



redhardsupra
March 5th, 2007, 08:11 PM
what's the difference between DYNAIRTMP_DMA vs CHRGTEMP_DMA?

I'm looking for a PID that would give me aircharge temp, blended accordingly to airflow and B0115 (newer) or B4901 (older)

also, does anyone know how to add *Kelvin to the general selection so I dont have to make extra custom PIDs for it?

Redline Motorsports
March 7th, 2007, 04:45 PM
:nixweiss:

Sounds like your up to a new experiment again! I'm still trying to absorb your last writeup on your site!

Here's a bump!

Howard

redhardsupra
May 15th, 2007, 07:13 PM
Here's a longer list of PIDs, could someone please enlighten me as to which ones do exactly what, what platforms they occur on, etc... I have an idea about most of them, but i'd like to hear others' take on some of them.

GM.DYNAIRTMP_DMA
GM.CHRGTEMP_DMA

GM.DYNCYLAIR
GM.DYNCYLAIR_DMA
CALC.CYLAIR

GM.DYNAIR
GM.DYNAIR_LS2
GM.AIRPERSEC

GM.VETABLE_DMA
CALC.VEPCT_V8
GM.APCYL_E40_DMA
CALC_VE

GM.AIRFLZONE_DMA
GM.ENGZONE1_DMA

GM.CORRRCALC
GM.INJFLOW
GM.FINLRCALC

SSpdDmon
May 16th, 2007, 02:37 AM
Here's a longer list of PIDs, could someone please enlighten me as to which ones do exactly what, what platforms they occur on, etc... I have an idea about most of them, but i'd like to hear others' take on some of them.

GM.DYNAIRTMP_DMA - I would guess this is the IAT used at a given instant during SD calculations????
GM.CHRGTEMP_DMA - Calculated charge temperature based on IAT, ECT, Charge Temp Blending, and Charge Temp Filter.

GM.DYNCYLAIR - The PCM's predicted airflow values...maybe based on changes observed in short-term histories and observed/filtered changes? In other words, I believe this pid is designed around transitional throttle.
GM.DYNCYLAIR_DMA - The current grams/cyl. value being used in SD fueling calculations. If the MAF is active, GM.CYLAIR_DMA is the pid to use.
CALC.CYLAIR - EFI Live's calculated grams/cyl. based on MAF flow and RPM.

GM.DYNAIR - The PCM's calculated grams/sec. of airflow based on VE settings, IAT, ECT, etc.
GM.DYNAIR_LS2 - Same as above, but for LS2's.
GM.AIRPERSEC - Must be new for 7.4.x as I don't see it in my list on the last build of 7.3.x.

GM.VETABLE_DMA - The current VE table value (direct lookup) being used for fueling calculations.
CALC.VEPCT_V8 - EFI Live's calculated VE % of theoretical maximum based on the above pid and engine displacement.
GM.APCYL_E40_DMA - Must be new for 7.4.x as I don't see it in my list on the last build of 7.3.x.
CALC_VE - EFI Live's calculated % of theoretical maximum based on MAF flow, IAT, displacement, RPM, and MAP.

GM.AIRFLZONE_DMA - Maybe has to do with operating range of the IAC??
GM.ENGZONE1_DMA - Must be new for 7.4.x as I don't see it in my list on the last build of 7.3.x.

GM.CORRRCALC - Must be new for 7.4.x as I don't see it in my list on the last build of 7.3.x.
GM.INJFLOW - PCM's calculated injector flow rate based on current conditions (flow vs. MAP)???
GM.FINLRCALC - Must be new for 7.4.x as I don't see it in my list on the last build of 7.3.x.
That's my best guess.

Remember, DMA pids are direct memory access...which means they are the current values the PCM recognizes based on live readings. They are pulled from the RAM and not the tables flashed into the PCM.

SSpdDmon
May 16th, 2007, 02:58 AM
Also, I believe you can search through the cal_link.txt to see if a certain pid is tied to the scanning software. Just make sure you don't save any changes.

joecar
May 16th, 2007, 04:01 AM
I'm making this sticky.

joecar
May 16th, 2007, 04:03 AM
Paul, need some more input detail as to what all those mean.

redhardsupra
May 16th, 2007, 05:34 AM
CALC_VE - EFI Live's calculated % of theoretical maximum based on MAF flow, IAT, displacement, RPM, and MAP.

um...why would you need IAT if you already got airflow? isn't the point of measuring airflow so things like pressure and temp get accounted for automagically? CALC.CYLAIR sounds like the more proper cylair from maf all corrected for conditions.

what i'm really trying to get at here is:
1. which values are 'raw', as in corrected vs uncorrected for conditions
2. which values are derived from MAF sensor
3. which values are derived from airflow properties/composite values and are use toward calculating airflow (SD calcs)

as the info is going to pour in (fingers crossed) i'll compile the knowledge into some sort of easy to look up/see patterns/remember/understand table for a more sticky worthy content. (forums are great for discussions but suck as a reference, moderators should earn their stripes sorting and cleaning up material for the stickies, hint hint)

SSpdDmon
May 16th, 2007, 07:52 AM
um...why would you need IAT if you already got airflow? isn't the point of measuring airflow so things like pressure and temp get accounted for automagically? CALC.CYLAIR sounds like the more proper cylair from maf all corrected for conditions.

what i'm really trying to get at here is:
1. which values are 'raw', as in corrected vs uncorrected for conditions
2. which values are derived from MAF sensor
3. which values are derived from airflow properties/composite values and are use toward calculating airflow (SD calcs)

as the info is going to pour in (fingers crossed) i'll compile the knowledge into some sort of easy to look up/see patterns/remember/understand table for a more sticky worthy content. (forums are great for discussions but suck as a reference, moderators should earn their stripes sorting and cleaning up material for the stickies, hint hint)

DMA values are the raw values. Anytime you can log those, you're using the same raw data the PCM is as it's pulled directly from the PCM's RAM.

I'm not as up to speed regarding the science/math as to answer why they have IAT and MAF values in the equation. But, I can do my best to point you in the right direction. If you want to see the equation used for the CALC.VE, you can right click on the pid in the F8 tab of the scanner and select More Info...

As for which pids are MAF related...I believe there are two main types of airflow measurement that the PCM uses: Cylinder Air Mass and Airflow

Airflow - In SD, you want GM.DYNAIR. With the MAF, you want SAE.MAF.
Air Mass - In SD, you want GM.DYNCYLAIR_DMA. With the MAF, you want GM.CYLAIR_DMA.

redhardsupra
September 6th, 2007, 05:14 PM
so can we get a 'summary judgement' on this from like Paul or Ross?

joecar
September 6th, 2007, 07:55 PM
so can we get a 'summary judgement' on this from like Paul or Ross?You may have to ping them with a pm.

joecar
September 7th, 2007, 10:40 AM
Hopefully the "air" pids will be explained (rightclick->more) in the upcoming update: showthread.php?t=6131 (http://forum.efilive.com/showthread.php?t=6131)

redhardsupra
January 18th, 2011, 03:30 AM
CALC.VE is horsepoop. ignore at will.

WeathermanShawn
January 18th, 2011, 03:42 AM
CALC.VE is horsepoop. ignore at will.

Biased opinion. It is as accurate as the Ideal Gas law is.

Ignore naysayers who have no viable alternative..

redhardsupra
January 18th, 2011, 03:48 AM
'wrong' does not make a good 'second best' and yes, i've had an answer for it for over 3 years for it, it's just not for public consumption.

WeathermanShawn
January 18th, 2011, 04:06 AM
Come on, a real scientist shares his findings.

Be a team player, Marcin. Lets see it...:rolleyes:

redhardsupra
January 18th, 2011, 04:18 AM
all the bits and pieces of the underlying ideas are on my blog. the complete code has been shared on github for years. how much more would you like?

Taz
January 18th, 2011, 04:50 AM
Marcin,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p>
<o:p> </o:p>
Your profile indicates <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /><st1:State w:st="on"><st1:place w:st="on">South Carolina</st1:place></st1:State> as your general location - isn’t a commonly held “southern” quality one of hospitality and decorum ?<o:p></o:p>
<o:p> </o:p>
Presenting as egocentric and arrogant, may lead people to form the opinion that you are compensating for deficits - physical and / or psychological.<o:p></o:p>
<o:p> </o:p>
This Forum is dedicated to automotive enthusiasts assisting one and other. You may need to look up what “assistance” means - you will find it does not include opposition, contradiction, or condescension.<o:p></o:p>
<o:p> </o:p>
<o:p> </o:p>
Regards,<o:p></o:p>
Taz

redhardsupra
January 18th, 2011, 06:55 AM
Providing derivations, proofs, methodology, code, and data is not arrogance, it's good science. Providing half-baked ideas with 'it works for me' anecdotal evidence is both bad science and arrogance (even if well intentioned). Personal attacks (argumentum ad hominem) are a logical fallacy, and thus I ignore them. If you'd like to argue my methodology, my math, my code, you're most welcome to do so.

WeathermanShawn
January 18th, 2011, 07:07 AM
Good science dictates publishing your work.

I don't think Einstein published his theories on a blog or Twitter.

Put it out on this forum for all of us to study and hopefully learn..:rolleyes:

Taz
January 18th, 2011, 07:27 AM
Marcin,<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p>
<o:p> </o:p>
I was a clinician for many years, before retiring from the field. My words were carefully chosen, not in anyway an attack, and based on years of direct experience. Your words cannot hide your underlying mental health issues … get control of yourself and attempt to become a “sociable” member of this Forum … or take a sabbatical until such time as you are able.<o:p></o:p>
<o:p> </o:p>
<o:p> </o:p>
Regards,<o:p></o:p>
Taz

redhardsupra
January 18th, 2011, 08:53 AM
awesome, now i'm a mental case for sharing years of my work with complete strangers for free...
Taz, you are correct, i will change. from this moment on, i am taking a sabbatical from helping people.

Wolfie
January 19th, 2011, 12:30 PM
oops. now I've done it.... added to the fray...
I always thought this forum was for the people, by the people, to share ideas?
If one on this board is here to take in what is written, but offers no offerings....
as in... "sharing years of my work with complete strangers for free...,
just why are you here?

Highlander
February 20th, 2011, 06:34 PM
I don't see anything wrong with what redhardsupra has said.. and I find his post EXTREMELY valuable and...FREE... why would anyone want to piss him off is inexplicable.

WeathermanShawn
February 21st, 2011, 01:57 AM
what's the difference between DYNAIRTMP_DMA vs CHRGTEMP_DMA??

There is no difference. They are the same.

If readers are interested in further technical discussion of DYNAIRTMP.DMA, it is addressed in this thread:http://forum.efilive.com/showthread.php?15747-DYNAIRTMP.DMA-Experiment..Is-it-Indeed-Charge-Temperature

http://i1126.photobucket.com/albums/l609/weathermanshawn/DYNAIRTMP.png

Redline Motorsports
February 21st, 2011, 03:11 AM
Wow! :shock: This is a crazy thread!!!!

As a calibrator who has spent years self teaching and mucking through documentation to make my own opinion I have to admit that some things I don't want to share. Not implying to you guys in this thread but many people buy the software...make one post and want the quick answers....I hate that crap. I would rather send info that I guarded through an e mail or PM before I publically dumped it here.

Obviously when discussing general understandings its not that big a deal...

Marcin has done a great job over the years in converting math into street level reality. Much appreciated....maybe if you play nice he will crack! LOL!

Howard

joecar
February 21st, 2011, 06:20 AM
CALC.VE is horsepoop. ignore at will.The CALC.VE pid that comes predefined with the V7 scantool is defined as:



VE% = {SAE.MAF.gps}*({SAE.IAT.C}+273.15)/((displacement()*61.024)*{SAE.RPM}*{SAE.MAP.kPa})* 212544
VEpcm = {SAE.MAF.gps}*({SAE.IAT.C}+273.15)/((displacement()*61.024)*{SAE.RPM}*{SAE.MAP.kPa})* 6155274.24
I saw several problems with those definitions:
- they use IAT instead of DAT;
- the constants don't reconcile (VE% is close, VEpcm is nowhere near).


Here's my analysis/derivation of calculated VE (I keep track of the constants):



In one cycle (4 strokes, 2 revs) all N cylinders are filled/emptied once.

Time for one cycle (2 revs):
t[s] = 2[rev] * 60[s/min] / RPM[rev/min]
= 120[s*rev/min] / RPM[rev/min]

Mass of air thru engine in one cycle (N cylinders):
VE[g] = MAF[g/s] * t[s]
= MAF[g/s] * 120[s*rev/min] / RPM[rev/min]


Mass of air normalized for temperature and pressure in one cycle (N cylinders):
VE[g*K/kPa] = VE[g] * DAT[K] / MAP[kPa]
= MAF[g/s] * DAT[K] * 120[s*rev/min] / RPM[rev/min] / MAP[kPa]

Normalized mass of air thru one cylinder:
VE[g*K/kPa] = MAF[g/s] * DAT[K] * 120[s*rev/min] / RPM[rev/min] / MAP[kPa] / N
= MAF[g/s] * DAT[K] * 15[s*rev/min] / RPM[rev/min] / MAP[kPa] when N=8


Ideal Gas Law equation (PV=nRT):
P[Pa] * V[m^3] = n[mol] * R[J/K/mol] * T[K] = (m[g] / M[g/mol]) * R[J/K/mol] * T[K]

where:
M = 28.96[g/mol] = molar mass of air (average molar mass of air composition)
R = 8.31447[J/K/mol] = Universal gas Constant
T = DAT[K]
P = MAP[Pa]
V = displacement[m^3] of engine (all N cylinders)

Theoretical air mass contained in engine displacement V (N cylinders), rearrange IGL:
m[g] = V[m^3] * MAP[Pa] / DAT[K] * M[g/mol] / R[J/K/mol]

Note conversions:
1[Pa] = 1[N/m^2] = 1[J/m^3] since 1[J] = 1[Nm]
1[kPa] = 1000[Pa]
1[m^3] = 1000[L]

So, converting to [L] and [kPa], theoretical air mass becomes:
m[g] = V[L] * MAP[kPa] / DAT[K] * M[g/mol] / R[J/K/mol] * 1000[Pa/kPa] / 1000[L/m^3]
= V[L] * MAP[kPa] / DAT[K] * 28.96[g/mol] / 8.31447[J/K/mol] * 1[Pa/kPa*m^3/L]
= V[L] * MAP[kPa] / DAT[K] * 3.4831[g*K*/kPa/L]

So, mass volumetric efficiency of engine (N cylinders):
VE[%] = VE[g] / m[g] * 100[%]
= MAF[g/s] * 120[s*rev/min] / RPM[rev/min] / V[L] / MAP[kPa] * DAT[K] / 3.4831[g*K*/kPa/L] * 100[%]
= MAF[g/s] * DAT[K] * 3445.2[s/g*kPa/K*rev/min*L*%] / RPM[rev/min] / MAP[kPa] / V[L]

Mass volumetric efficiency of 1 cylinder would be:
VE[%] = (VE[g] / N) / (m[g] / N) * 100[%] = VE[g] / m[g] * 100[%]
= same as for N cylinders.

i.e. VE[%] is the same regardless of number of cylinders.


Writing VE[g*K/kPa] and VE[%] using pids (assuming engine 5.669L V8):
VE[g*K/kPa] = {SAE.MAF.gps}*{CALC.DAT.K}/{SAE.RPM}/{SAE.MAP.kPa}*15 for 1 of 8 cylinders
VE[%] = {SAE.MAF.gps}*{CALC.DAT.K}/(SAE.RPM}/{SAE.MAP.kPa}*3445.2/5.669

So I would ignore the CALC.VE pid (like you said) and instead use the VE derived above.

joecar
February 21st, 2011, 09:51 AM
For one cylinder in an 8 cylinder motor (regardless of displacement):
VE[g*K/kPa] = {SAE.MAF.gps}*{CALC.DAT.K}/{SAE.RPM}/{SAE.MAP.kPa}*15


For a motor having displacement 5.669L (regardless of cylinder count):
VE[%] = {SAE.MAF.gps}*{CALC.DAT.K}/{SAE.RPM}/{SAE.MAP.kPa}*3445.2/5.669