[Diy_efi] Timing Calculations
amdcpu at hot.ee
Wed Jun 15 18:08:13 CDT 2005
With 60 tooth-wheel you can count teeth. Every tooth is 6deg. If needed
advance would be 26deg BTDC
(26deg / 6deg/tooth) = 4tooth - 2deg BTDC.
When 5th tooth BTDC has triggered, we know that we must wait 6deg/tooth-2deg
Lets assume: acceleration "doubles" speed every second (3sec from 1000 to
8000RPM) - which is pretty good. It is +360deg/sec = +0.36deg/ms. Means:
every next millisecond engine moves 0.36deg more than last millisecond.
If we could use 0.1sec old speed signal, would be 36deg off without
BUT even at slow engine (long trigger periods) let's say 600RPM one tooth
corresponds to as short as 1.67 ms, which is only 0.6deg (+0.36deg/ms x
OK, our signal isn't that nice and we must average last 10 tooth, so advance
would be off 6deg @600RPM.
BUT we know also previous 10 tooth average, and therefore know the
If previous acceleration was our 6deg per 10tooth (16.7ms @600RPM), we can
predict that accel remains. Since our foot can stop acceleration in ca.
167ms and only 10% of it in 16.7ms.
This 10% * 6deg = 0.6deg.
WITH ACCELERATION PREDICTION, MAX ADVANCE ERROR WOULD BE 0.6DEG.
* When we decelerate by moving throttle 10%, then MAP becomes lower. In good
system ECU can see it in quickly. (measures MAP every 8ms in std MegaSquirt
* When MAP becomes lower, lookup gets other advance figure from spark lookup
Retarding 0.6deg deceleration bins and Advancing acceleration bins would
elliminate this quick acceleration change.
I can make mistakes, but think about it.
I'm pleased with just a 2 triggers per revolution.
----- Original Message -----
From: <cobraman at insightbb.com>
To: <diy_efi at diy-efi.org>
Sent: Wednesday, June 15, 2005 5:01 PM
Subject: RE: [Diy_efi] Timing Calculations
> With a 60 tooth wheel, aren't we measuring RPM 60 times per revolution?
> (weighted average of last x measurements? where x is < 10). I would think
> could measure the crank acceleration - maybe even the crank harmonics.
> Engines under rapid acceleration (1-2 gear) can use several deg. more
> than under slow acceleration conditions (3-4 gear), hence the old retard
> With the current processing power available, we should almost be real time
> our calculations. TomS
> > > I was thinking of checking the trend of the last x number of
> > > cycles and
> > > trying to anticipate whether the engine is accelerating or
> > > decelerating. It would never be perfect, but it would average the
> > > timing out better. Or maybe using the throttle sensor to anticipate
> > > accelerationg/deceleration, kind of like a throttle pump, but
> > > for timing.
> > Say your engine accelerates in first gear from 1000 rpm to 5000 rpm in 2
> > seconds. That's an acceleration of 2rpm/ms.
> > Revolution time at 1000 rpm is 60 ms
> > If you start at 1000 rpm, at full acceleration, you will finish that
> > revolution at (60 ms * 2rpm/ms)=120 rpm faster, or 1120 rpm
> > Revolution time at 1120 rpm is 53.5 ms
> > Under full acceleration, you will begin the revolution at 1000 rpm and
> > end the revolution at 1120, with a revolution time of (60+53.5)/2=56.8
> > ms. The error comes in not anticipating the acceleration, and
> > calculating a spark timing based on a 60 ms revolution when the motor
> > actually finished in 56.8 ms. Or, to put a different way, your spark
> > will be (60-56.8)=3.2ms too late. 3.2ms, at 1120 rpm, is
> > (3.2/53.5)*360=21 degrees. That doesn't seem right... maybe I made a
> > math error above. Anyway, you get the idea. As the rpms increase
> > there's less time for acceleration from rev to rev, so the error gets
> > smaller. This'll give you an idea how important rpm prediction is.
> > --steve
> > _______________________________________________
> > Diy_efi mailing list
> > Diy_efi at diy-efi.org
> > http://lists.diy-efi.org/mailman/listinfo/diy_efi
> Diy_efi mailing list
> Diy_efi at diy-efi.org
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.323 / Virus Database: 267.7.2 - Release Date: 6/14/2005
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.7.3/15 - Release Date: 6/14/2005
More information about the Diy_efi