Rev Limiter - simple solution?
Posted: Fri May 12, 2006 2:51 pm
Firstly I would like to say that the MJLJ looks like an excellent piece of kit. I will probably be ordering a PCB and processor within the next couple of weeks.
From reading the various posts on this website it seems that implementing a hard rev limiter is not as simple as it first appears. Simply using the rev limit output of the MJLJ with a relay to cut power to the coil may cause problems:
<a href="http://picasso.org/mjlj/?q=node/396">Submitted by David Withers on Sat, 06/04/2005 - 17:59.</a>
<blockquote>
If the + 12v or coil -ve is switched during the dwell period of one of the coils, this will probably generate a spark, which, if generated, must be more advanced than the intended timing at that rpm. This will cause detonation, possibly at max rpm and load. It is conceivable that this will damage the engine, particularly if repeated.</blockquote>
While I'm sure that <a href="http://www.with.nildram.co.uk/MJLJ/Limi ... ">Davids's thyristor circuit</a> solution works well, it seems to me that there may be a simpler way...
The difficulty with simply cutting power to the coil with a relay is that the power must not be cut during the dwell period, but only while there is no current flowing in the coil. Is it possible that the MJLJ firmware could be modified so that the rev limit output is only activated at a safe time while there is no current flowing in the coil?
I think this is possible. The rev limit output needs to be synchronised with the operation of the EDIS coil outputs. The MJLJ should be able to use the PIP signal for this. Although there seems to be confusion about the exact timing of the PIP signal, this should not matter.
From <a href="http://www.dainst.com/info/edis/edis.ht ... is.html</a>:
<blockquote>
When the number of teeth required passes the VR sensor, the EDIS module emits the PIP signal to the ECU. The PIP signal is emitted at the TDC of the cylinder.
...
The Ford patent says that the SAW is communicated to the EDIS module approximately 10us after 10° ATDC. This is to ensure that there are no spark events occurring, since the SAW accumulator can not be set externally while it's being read or cleared.</blockquote>
From <a href="http://www.megasquirt.info/ms2/EDIS.htm ... DIS.htm</a>
<blockquote>
In other words, when this signal (Ford calls it the PIP, for Profile Ignition Pick-up) goes from +12V to ground, one of the ignition coils is firing. This signal follows the ignition coils, not the VR sensor (as indicated on some incorrect documentation floating around).
...
Note that the SAW pulse must be synchronized with the PIP negative going pulse (i.e, when the PIP drops to zero). It cannot be applied asynchronously to the PIP signal, otherwise incorrect advance commands will be interpreted by the EDIS module. SAW should be initiated a short period after the falling edge of the PIP signal.</blockquote>
This suggests that the MJLJ could activate a rev limit relay after the falling edge of PIP (ie during the SAW pulse), with confidence that it will not cause a spark at the wrong time.
How difficult would it be to modify the firmware so that the rev limit output operates in this way? Is there a reason why this would not work that I have missed?
Let me know what you think.
Ben
From reading the various posts on this website it seems that implementing a hard rev limiter is not as simple as it first appears. Simply using the rev limit output of the MJLJ with a relay to cut power to the coil may cause problems:
<a href="http://picasso.org/mjlj/?q=node/396">Submitted by David Withers on Sat, 06/04/2005 - 17:59.</a>
<blockquote>
If the + 12v or coil -ve is switched during the dwell period of one of the coils, this will probably generate a spark, which, if generated, must be more advanced than the intended timing at that rpm. This will cause detonation, possibly at max rpm and load. It is conceivable that this will damage the engine, particularly if repeated.</blockquote>
While I'm sure that <a href="http://www.with.nildram.co.uk/MJLJ/Limi ... ">Davids's thyristor circuit</a> solution works well, it seems to me that there may be a simpler way...
The difficulty with simply cutting power to the coil with a relay is that the power must not be cut during the dwell period, but only while there is no current flowing in the coil. Is it possible that the MJLJ firmware could be modified so that the rev limit output is only activated at a safe time while there is no current flowing in the coil?
I think this is possible. The rev limit output needs to be synchronised with the operation of the EDIS coil outputs. The MJLJ should be able to use the PIP signal for this. Although there seems to be confusion about the exact timing of the PIP signal, this should not matter.
From <a href="http://www.dainst.com/info/edis/edis.ht ... is.html</a>:
<blockquote>
When the number of teeth required passes the VR sensor, the EDIS module emits the PIP signal to the ECU. The PIP signal is emitted at the TDC of the cylinder.
...
The Ford patent says that the SAW is communicated to the EDIS module approximately 10us after 10° ATDC. This is to ensure that there are no spark events occurring, since the SAW accumulator can not be set externally while it's being read or cleared.</blockquote>
From <a href="http://www.megasquirt.info/ms2/EDIS.htm ... DIS.htm</a>
<blockquote>
In other words, when this signal (Ford calls it the PIP, for Profile Ignition Pick-up) goes from +12V to ground, one of the ignition coils is firing. This signal follows the ignition coils, not the VR sensor (as indicated on some incorrect documentation floating around).
...
Note that the SAW pulse must be synchronized with the PIP negative going pulse (i.e, when the PIP drops to zero). It cannot be applied asynchronously to the PIP signal, otherwise incorrect advance commands will be interpreted by the EDIS module. SAW should be initiated a short period after the falling edge of the PIP signal.</blockquote>
This suggests that the MJLJ could activate a rev limit relay after the falling edge of PIP (ie during the SAW pulse), with confidence that it will not cause a spark at the wrong time.
How difficult would it be to modify the firmware so that the rev limit output operates in this way? Is there a reason why this would not work that I have missed?
Let me know what you think.
Ben