Notices
ECU Flash

Mitsulogger v1 Officially Released

Thread Tools
 
Search this Thread
 
Old Nov 20, 2006 | 07:27 PM
  #106  
nj1266's Avatar
Evolved Member
iTrader: (6)
 
Joined: Nov 2004
Posts: 3,254
Likes: 13
From: USA
I created this IDC formula and added to MJ's requestID.xml file.

<Request LogReference="IDC" RequestID="FF" Eval="InjPulseWidth*RPM/1200" Unit="%" Logged="y" Response="2"/>

I tested it at idle and it works. All you have to do is add it the xml file where it says:

<!-- Place all Complex requests below this line -->

Now, can someone create or tell me how to create a formula to add to the mitsulogger.txt file so I can read IDC in DataLogLab?
Reply
Old Nov 20, 2006 | 07:44 PM
  #107  
MalibuJack's Avatar
Thread Starter
EvoM Guru
20 Year Member
iTrader: (5)
 
Joined: Feb 2003
Posts: 10,572
Likes: 14
From: Royse City, TX
DataLogLab is actually pretty well documented, but basically copy one of the existing blocks, give it a unique ID number, and make sure the label matches the label you gave it IDC That should get you far enough along in mitsulogger.txt
Reply
Old Nov 20, 2006 | 11:57 PM
  #108  
ob4's Avatar
ob4
Evolving Member
iTrader: (5)
 
Joined: Jun 2003
Posts: 109
Likes: 0
From: Norcal
Originally Posted by nj1266
I created this IDC formula and added to MJ's requestID.xml file.

<Request LogReference="IDC" RequestID="FF" Eval="InjPulseWidth*RPM/1200" Unit="%" Logged="y" Response="2"/>

I tested it at idle and it works. All you have to do is add it the xml file where it says:

<!-- Place all Complex requests below this line -->

Now, can someone create or tell me how to create a formula to add to the mitsulogger.txt file so I can read IDC in DataLogLab?
This maybe a newbie question, but can someone elaborate more as to why IDC is defined as InjPulseWidth*rpm/1200? I also learn that evoscan use this same equation.

Last edited by ob4; Nov 21, 2006 at 12:02 AM.
Reply
Old Nov 21, 2006 | 06:46 AM
  #109  
nj1266's Avatar
Evolved Member
iTrader: (6)
 
Joined: Nov 2004
Posts: 3,254
Likes: 13
From: USA
Originally Posted by MalibuJack
DataLogLab is actually pretty well documented, but basically copy one of the existing blocks, give it a unique ID number, and make sure the label matches the label you gave it IDC That should get you far enough along in mitsulogger.txt
Thanks for the help MJ. I did it. Here is the block:

[Column]
Name=Inj Duty Cycle
Description=IDC
ColumnTitle=IDC
DataItemID=14
Type=1
ColumnDecimalPlaces=4
DisplayDecimalPlaces=3

I put it right after the injector pulse width block.
Reply
Old Nov 21, 2006 | 07:34 AM
  #110  
l2r99gst's Avatar
Evolved Member
iTrader: (2)
 
Joined: Mar 2004
Posts: 3,499
Likes: 4
From: CA
Originally Posted by ob4
This maybe a newbie question, but can someone elaborate more as to why IDC is defined as InjPulseWidth*rpm/1200? I also learn that evoscan use this same equation.
It just deals with the time that you have to inject fuel, based on RPM.

For example, let's use 7500RPM. That's 7500 revolutions per minute, or 125 revolutions per second. In a 4 stroke engine, you have two revolutions before that cylinder fires again, so you have the time of two revolutions to inject fuel.

So, at 125 revolutions per second, that is .008 seconds per revolution (1/125). So, that's 8 ms for one revolution or 16 ms for two revolutions. So, if your IPW is 16ms at 7500RPM, your IDC will be 100%, since there is only 16ms of actual time to inject the fuel.

Using the same formulas at a smaller RPM, like 3000, will yield the following:

3000RPM = 50 revolutions/sec = .02 sec/revolution. So, 20 ms for one rev, 40 ms for two rev. So, at 3000 RPM you have 40 ms of time to inject. So, you wouldn't reach 100% IDC at 3000RPM unless your IPW was 40 ms.



Eric
Reply
Old Nov 21, 2006 | 07:41 AM
  #111  
mrfred's Avatar
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Originally Posted by ob4
This maybe a newbie question, but can someone elaborate more as to why IDC is defined as InjPulseWidth*rpm/1200? I also learn that evoscan use this same equation.
Injector Duty Cycle is the percentage of the 4-stroke cycle that an injector is open. Injector pulse width is the amount of time an injector is open per 4-stroke cycle (2 revolutions). Scale that value with rpm/1200, and you get %IDC. 100% IDC = injector open during the entire 4-stroke cycle.
Reply
Old Nov 21, 2006 | 07:49 AM
  #112  
l2r99gst's Avatar
Evolved Member
iTrader: (2)
 
Joined: Mar 2004
Posts: 3,499
Likes: 4
From: CA
From my post above, to see how you actually get to the finall equation:

So, from some simple math:

IDC = IPW/(time to inject)

time to inject = 2/RPM (two revolutions to inject)
getting 2/RPM to be in ms=
2/revolutions/minute=
2*60s*1000/revolutions=
120000/revolution

So, IDC = IPW/120000/revolutions
= revolutions*IPW/120000

To get IDC in a percent, just multiply by 100


IDC (%) = IPW*RPM/1200
Reply
Old Nov 21, 2006 | 09:39 AM
  #113  
ob4's Avatar
ob4
Evolving Member
iTrader: (5)
 
Joined: Jun 2003
Posts: 109
Likes: 0
From: Norcal
Great info guys. It cleared some misconception that I have. I always thought of IDC in absolute terms, meaning if the max pulse width is 20ms, if your IPW is 18ms you are running at 90% IDC. I never thought about the dependency of RPM, due to the the amount of time available between the time of injector firing at different rpm. Also, I guess it's safe for me to conclude that the max pulse width changes with rpm.

Thanks guys!

Last edited by ob4; Nov 21, 2006 at 09:48 AM.
Reply
Old Nov 21, 2006 | 10:02 AM
  #114  
l2r99gst's Avatar
Evolved Member
iTrader: (2)
 
Joined: Mar 2004
Posts: 3,499
Likes: 4
From: CA
Originally Posted by ob4
Also, I guess it's safe for me to conclude that the max pulse width changes with rpm.
Yes, the maximum amount of time to inject decreases with increasing RPM.

From my example a few posts up:

At 7500 RPM, you only have a 16ms window.
At 3000 RPM, you have a 40ms window.


Eric
Reply
Old Nov 21, 2006 | 10:44 AM
  #115  
MalibuJack's Avatar
Thread Starter
EvoM Guru
20 Year Member
iTrader: (5)
 
Joined: Feb 2003
Posts: 10,572
Likes: 14
From: Royse City, TX
As you can see by the formula, how thanks to math, you can have duty cycles in excess of 100%.. Though it should never happen..
Reply
Old Nov 21, 2006 | 11:15 AM
  #116  
mrfred's Avatar
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Originally Posted by MalibuJack
As you can see by the formula, how thanks to math, you can have duty cycles in excess of 100%.. Though it should never happen..
In theory, if the IPW and RPM are accurate, then its impossible to exceed 100% IDC. So I had thought that seeing more than 100% duty cycle was not due to math, but due to the way the ECU represents the IPW. It must be that the scaling of the IPW value is a little generous.
Reply
Old Nov 21, 2006 | 11:35 AM
  #117  
ob4's Avatar
ob4
Evolving Member
iTrader: (5)
 
Joined: Jun 2003
Posts: 109
Likes: 0
From: Norcal
So at 7500rpm, the time takes for 1 full cycle (for 4 stroke) is 16ms, then if the IPW is truely over 16ms, then the the IPW would over lapped. If this is the case, is this due to the delay from the ecu to the injectors? So is it true that in order for the ecu to maintain 100% IDC @ 7500rpm (16ms IPW), the ecu needs to run the IPW higher then 16ms? or is it that the IPW is not very accurate when rpm is high?

What about the response time of the injectors? If the reponse time of the injector is greater then the max IPW @ say 7500rpm (16ms) then would it be better off for the ecu to not turn off the injectors at all?

Sorry for all the questions, I am trying to make sense out of this entire topic on fuel injection.
Reply
Old Nov 21, 2006 | 12:11 PM
  #118  
l2r99gst's Avatar
Evolved Member
iTrader: (2)
 
Joined: Mar 2004
Posts: 3,499
Likes: 4
From: CA
Originally Posted by ob4
So at 7500rpm, the time takes for 1 full cycle (for 4 stroke) is 16ms, then if the IPW is truely over 16ms, then the the IPW would over lapped. If this is the case, is this due to the delay from the ecu to the injectors? So is it true that in order for the ecu to maintain 100% IDC @ 7500rpm (16ms IPW), the ecu needs to run the IPW higher then 16ms? or is it that the IPW is not very accurate when rpm is high?

What about the response time of the injectors? If the reponse time of the injector is greater then the max IPW @ say 7500rpm (16ms) then would it be better off for the ecu to not turn off the injectors at all?

Sorry for all the questions, I am trying to make sense out of this entire topic on fuel injection.

I'll try to answer some of these questions:

First of all, any latency for the injectors is used by the ECU to calculate how long the ECU should keep the injectors open. We have this latency table defined in ECUFlash.

These latencies, or response times of the injector, are on the order of microseconds. For example, 300us would equal .3 ms. So, if the latency was .3ms and 10 ms was required to meet the injection requirement, the ECU would hold the injector open for 10 + .3 = 10.3 ms. That's why when you mess with the latency tables, you will add or subtract fuel, altering your trims.

When the injectors are truly at 100% IDC, they are held wide open by the ECU without turning them off until IDC goes below 100%.


Eric
Reply
Old Nov 21, 2006 | 12:16 PM
  #119  
mrfred's Avatar
EvoM Guru
iTrader: (50)
 
Joined: Mar 2006
Posts: 9,675
Likes: 132
From: Tri-Cities, WA // Portland, OR
Originally Posted by ob4
So at 7500rpm, the time takes for 1 full cycle (for 4 stroke) is 16ms, then if the IPW is truely over 16ms, then the the IPW would over lapped. If this is the case, is this due to the delay from the ecu to the injectors? So is it true that in order for the ecu to maintain 100% IDC @ 7500rpm (16ms IPW), the ecu needs to run the IPW higher then 16ms? or is it that the IPW is not very accurate when rpm is high?

What about the response time of the injectors? If the reponse time of the injector is greater then the max IPW @ say 7500rpm (16ms) then would it be better off for the ecu to not turn off the injectors at all?

Sorry for all the questions, I am trying to make sense out of this entire topic on fuel injection.
100% IDC means the injector is always open, so there is no such thing has >100% IDC in the real world.

Within Evoscan/Mitsulogger, there is a conversion factor that translates the data from the ECU relating to IPW into time in ms. This conversion factor is probably a little high, so the IPW value logged in Evoscan/Mitsulogger is a little high. Another possibility is that the rpm value logged by the ECU is a little high. This could also cause >100% duty cycle readings if the injectors were near max.
Reply
Old Nov 21, 2006 | 02:46 PM
  #120  
MalibuJack's Avatar
Thread Starter
EvoM Guru
20 Year Member
iTrader: (5)
 
Joined: Feb 2003
Posts: 10,572
Likes: 14
From: Royse City, TX
Originally Posted by mrfred
In theory, if the IPW and RPM are accurate, then its impossible to exceed 100% IDC. So I had thought that seeing more than 100% duty cycle was not due to math, but due to the way the ECU represents the IPW. It must be that the scaling of the IPW value is a little generous.
True, thanks to rounding error, and interpolation (aka Math ) You can potentially see values over 100% IDC
Reply



All times are GMT -7. The time now is 02:01 PM.