Definition of Load?
#1
Definition of Load?
Does anyone know the algorithm for load calculation as performed by the ECU? The load curve closely mirrors the torque curve, which leads me to believe that it is in fact a VE calculation. This would make sense, as calculating VE is a necessary step for a MAF-based system.
Reason I ask is because I am facing the necessity of rescaling my load axis yet again, but unfortunately, this compromises map resolution to some degree. It's only a rough tune at this point, and yes, it's lean upstairs because my 850cc injectors are done. This is using the 015 Tephra v5.8 ROM with 1-byte load (checked against 2-byte for accuracy).
Reason I ask is because I am facing the necessity of rescaling my load axis yet again, but unfortunately, this compromises map resolution to some degree. It's only a rough tune at this point, and yes, it's lean upstairs because my 850cc injectors are done. This is using the 015 Tephra v5.8 ROM with 1-byte load (checked against 2-byte for accuracy).
#3
I have Evoscan 2.5, just haven't configured it yet. This was done with 0.99.
If load is a MAF calculation (which is used to calculate VE), then my suspicions are probably correct. What the ECU sees as VE is a function of mass airflow vs. rpm. This would indeed mirror the torque curve, and I can probably demonstrate it with the dyno. Of course, we are speaking of effective VE due to the presence of the turbo, not mechanical VE of the engine (which is obscured).
BTW, donation sent!
If load is a MAF calculation (which is used to calculate VE), then my suspicions are probably correct. What the ECU sees as VE is a function of mass airflow vs. rpm. This would indeed mirror the torque curve, and I can probably demonstrate it with the dyno. Of course, we are speaking of effective VE due to the presence of the turbo, not mechanical VE of the engine (which is obscured).
BTW, donation sent!
Last edited by Ted B; Aug 11, 2008 at 07:12 PM.
#4
EvoM Guru
iTrader: (50)
How exactly load is calculated in the Evo ROM is not so clear. I've been through this part of the code once already, and I could not find where load was calculated. I have not seen any of the other folks doing assembly show correctly where its calculated from either. Interestingly, in the Evo ROM the MAF Hz used by the ECU for airflow is calculated from load. Its the exact opposite of what is expected, but it does indirectly show the relationship between load and airflow. The formula is:
MAFHz = constant*load*rpm
MAFHz = constant*load*rpm
#5
Ok, that actually makes perfect sense, but it's the way it's defined that makes it confusing. If we rearrange the equation, we get:
Load = MAFHz/(rpm*constant)
This implies:
MAFHz represents the direct measurement at the MAF. What isn't clear is exactly at what point the ECU converts this measurement from volume to mass (using AIT and BAP), so we do not know if it represents air volume or air mass as expressed.
Load represents air volume (or mass) with respect to rpm, exactly as I suspected, which is effectively a VE calculation. The greater the airflow with respect to rpm, the greater the indicated load, and the greater the torque output.
We just may be able to create a reasonably accurate algorithm to estimate torque output from load. And if we can do that, we can estimate hp as well. No additional user input would be required (things like vehicle mass and friction coefficients won't matter).
Load = MAFHz/(rpm*constant)
This implies:
MAFHz represents the direct measurement at the MAF. What isn't clear is exactly at what point the ECU converts this measurement from volume to mass (using AIT and BAP), so we do not know if it represents air volume or air mass as expressed.
Load represents air volume (or mass) with respect to rpm, exactly as I suspected, which is effectively a VE calculation. The greater the airflow with respect to rpm, the greater the indicated load, and the greater the torque output.
We just may be able to create a reasonably accurate algorithm to estimate torque output from load. And if we can do that, we can estimate hp as well. No additional user input would be required (things like vehicle mass and friction coefficients won't matter).
#7
Based on some Evo disasm/logging and detailed DSM disasm, and from memory rather than reference material I would summarise it as follows to the best of my understanding, not necessarily in this order:
1. MAF ticks per CAS are measured using the timers/counters (this is why you don't find code "calculating" load as it is read from the hardware)
2. Linearization is applied
3. Baro and temp compensations are applied
Notes on above:
1. Sometimes the number of ticks between crank angle sensor events is small, so there are fine calculations based on the time elapsed since the pulse.
2. This is to correct for the non-linearity of the sensor.
3. Temp compensation can only increase the measured air mass, not reduce it from high temperatures. The logic would seem to be so that a heatsoaked sensor will not result in running too lean.
There is no VE map that I'm aware of, MAF based systems don't usually have them and work on air mass per cylinder charge which is referred to as load. MAF Hz when logged is already compensated and is calculated as mrfred mentioned by multiplying RPM and load.
1. MAF ticks per CAS are measured using the timers/counters (this is why you don't find code "calculating" load as it is read from the hardware)
2. Linearization is applied
3. Baro and temp compensations are applied
Notes on above:
1. Sometimes the number of ticks between crank angle sensor events is small, so there are fine calculations based on the time elapsed since the pulse.
2. This is to correct for the non-linearity of the sensor.
3. Temp compensation can only increase the measured air mass, not reduce it from high temperatures. The logic would seem to be so that a heatsoaked sensor will not result in running too lean.
There is no VE map that I'm aware of, MAF based systems don't usually have them and work on air mass per cylinder charge which is referred to as load. MAF Hz when logged is already compensated and is calculated as mrfred mentioned by multiplying RPM and load.
Trending Topics
#8
Right, there is no VE map per se, but the ECU calculates mass airflow per unit of rpm from measured input and uses that to reference load in the fueling and ignition maps. This contrasts with a speed density system, which guesses load from manifold pressure and rpm.
I'm referring to this as "VE", but in actuality it is 'mass efficiency'.
I'm referring to this as "VE", but in actuality it is 'mass efficiency'.
#9
I think it is reasonable to conclude that, especially since our load scaling seems to be normalized to 100 as the normally aspirated 100% VE situation, whereas other ECUs express it as a mass per cylinder charge. I suppose we can express it how we like as we can scale the load in the ECU editing and logging how we like it.
#10
Evolved Member
iTrader: (2)
Load appears to be a mass airflow per rev. In my quick testing a while back, I came up with load/95 = g/rev.
I was always used to logging g/rev and lb/min with DSMLink, that I wanted something similar with our ECUs. Since the DSM load axes for the timing and fuel tables were basically g/rev values (from the DSM creators/ECU disassemblers), I assumed the Evo Ecu load variable was the same.
After talking with Bez, he confirmed that the load variables is indeed baro and temp compensated, which makes it a mass airflow/rev. He actually mentioned, and as mrfred and jcsbanks have mentioned previously, there are several load variables and routine which decides which one is to be used. But, from what I remember Bez saying, as long as there are no sensor errors or similar, the resultant load is a mass/rev valule.
This made perfect sense to me, since this is what I was used to from the DSM. I simply applied that to the Evo from a few quick logs to come up with the above equation. Having a mass airflow just help me a ton more than having a Hz value or an arbitrary load value. You can see where you fall on the compressor maps, etc.
Obivously, the equation of load/95 will only hold true for a properly reading MAF that is calibrated and reading correctly.
Eric
I was always used to logging g/rev and lb/min with DSMLink, that I wanted something similar with our ECUs. Since the DSM load axes for the timing and fuel tables were basically g/rev values (from the DSM creators/ECU disassemblers), I assumed the Evo Ecu load variable was the same.
After talking with Bez, he confirmed that the load variables is indeed baro and temp compensated, which makes it a mass airflow/rev. He actually mentioned, and as mrfred and jcsbanks have mentioned previously, there are several load variables and routine which decides which one is to be used. But, from what I remember Bez saying, as long as there are no sensor errors or similar, the resultant load is a mass/rev valule.
This made perfect sense to me, since this is what I was used to from the DSM. I simply applied that to the Evo from a few quick logs to come up with the above equation. Having a mass airflow just help me a ton more than having a Hz value or an arbitrary load value. You can see where you fall on the compressor maps, etc.
Obivously, the equation of load/95 will only hold true for a properly reading MAF that is calibrated and reading correctly.
Eric
#11
That makes perfect sense, and confirms my suspicions. Indicated load mirrors torque, which is a direct factor of air mass/rev. I know that when I tune an EVO and watch the indicated load increase with each consecutive run, it directly reflects a torque increase (and therefore a hp increase). I haven't put my own car on the dyno in its rough state of tune, but having crossed a load of 380, I know it isn't sucking.
#14
Evolving Member
Join Date: Jun 2005
Location: McKinney TX
Posts: 259
Likes: 0
Received 0 Likes
on
0 Posts
There usual fashion is for it to be grams per 2 inductions (360 crank degrees). g/rev or g/per cyl is an industry standard calc for a MAS/MAF system. Since displacement is known it is simple to calc VE. Std air conditions are usually 1.2x grams per liter. Therefore if you have a load value of 120 this should represent 100% VE. 2.4 = 200 and so on temp corrected.
Last edited by GrocMax; Aug 12, 2008 at 10:11 AM.
#15
EvoM Guru
iTrader: (50)
Ok, that actually makes perfect sense, but it's the way it's defined that makes it confusing. If we rearrange the equation, we get:
Load = MAFHz/(rpm*constant)
...
We just may be able to create a reasonably accurate algorithm to estimate torque output from load. And if we can do that, we can estimate hp as well. No additional user input would be required (things like vehicle mass and friction coefficients won't matter).
Load = MAFHz/(rpm*constant)
...
We just may be able to create a reasonably accurate algorithm to estimate torque output from load. And if we can do that, we can estimate hp as well. No additional user input would be required (things like vehicle mass and friction coefficients won't matter).