Old Mar 15, 2010 | 07:24 PM
  #26  
Red_bull's Avatar
Red_bull
I've found that life I needed.. It's HERE!!
 
Joined: Aug 2006
Posts: 1,063
Likes: 0
From: The Netherlands
Default

Originally Posted by Karlos G
What do you mean timing delay?
It's one of the general settings of megasquirt


Here's the discription of megamanual

Injection Timing Delay (InjStart): This is a user input in percentage after tach pulse that tells the controller when to start an injection event (i.e. a 'squirt'), and users can tune this to optimize the injection timing. Injection Timing Delay is a value that is a percentage of the number of degrees between injection events. Valid numbers are between 0 and 100 percent.
ANY NUMBER LARGER THAN 100 WILL PREVENT THE INJECTORS FROM FIRING. You must use a number LESS than the values below.
To convert the injector timing delay from the percentage used to crank degrees, multiply the injector timing delay percentage by these numbers:
  • 90° for a 4 stroke V8,
  • 120° for a 6 cylinder/4-stroke (even fire),
  • 180° for a 4 cylinder/4-stroke.
So a value of 40% on a 6 cylinder gives an injection delay of 40%×120° = 48°. The injection will then occur at 48° after the tach event, or 48° - trigger offset (btdc).
Note this is a variable for injection start angle relative to the tach pulse (not necessarily TDC). The start of the fuel injection pulse width will begin at:
Tach time + InjStart % × predicted delta_t (between present and next tach pulse)

which is in crank degrees. When that time is exceeded in the main loop, MAP is grabbed, the pulse width is calculated, and fuel is injected in that sequence.
Now because MegaSquirt® does not do sequential injection (though the MS-II Sequencer™ controller will), it won't squirt at the same point in the engine cycle for all the cylinders connected to the same injector driver, but by moving the injection timing delay around you may be able to improve your idle. There is no simple calculation to come up with the best number for you to use. The general idea is to avoid injecting into an open exhaust valve. Since MegaSquirt® controllers use a banked injection system, then it would be better to move the timing on all the cylinders to a place where it avoids this on all cylinders (or as many as can be accommodated).
What you have to do is adjust the injection timing delay from 0% to about 80% and see which value gives you the best idle - as determined by the highest vacuum, or leanest AFR, or smoothest idle, or whatever else you are tuning for.
Of course there is a limit - you can't inject at say 98% of the next predicted tach pulse interval because there may not be time to calculate it all. Plus there is bit more fluctuation in fuel timing - NOT in the overall fuel pulse width, which will still be interrupt driven and exact, but in when the injection starts. This could vary by as much as a few milliseconds at low rpm, but the idea is that it is way better to inject within +/- a few ms of optimum than to consistently inject at a non-optimal value. However, to ensure there is plenty of time to calculate the PW and start the injection, the fuel start time is limited to force it to occur at least 2 ms before the predicted next tach pulse. So if you look at a scope you will see the fuel pulse move right relative to the tach input as you increase InjStart %, but it will stop when it gets within 2 ms of the next tach in pulse, regardless of your increasing InjStart %.
Reply