Shop OBEX P1 Docs P2 Docs Learn Events
IC engine crank angle detection algorithms using a missing tooth technique? — Parallax Forums

IC engine crank angle detection algorithms using a missing tooth technique?

pmrobertpmrobert Posts: 673
edited 2008-06-29 10:56 in Propeller 1
I'm curious as to what ideas/concepts/working knowledge exist on ways to perform the subject line. I'm fishing for info here; I have a rough idea of one way to do it (populate a circular buffer of n size where n=number of teeth-1; find the missing tooth location from the 2x cnt between the adjoining teeth and calc RPM and crank angle from the values contained therein. Comments?

-Mike

Comments

  • LawsonLawson Posts: 870
    edited 2008-06-28 21:06
    How about computing a running average (aka a first order digital filter) of the pulse width from tooth to tooth. Any pulse width greater than 'n' plus the average is the timing mark, everything else is a normal tooth.

    Alternatively, collect three consecutive pulse times. The pulse time that doesn't match the other two pulse times, to some tolerance, is the missing tooth.

    My 10 bits,
    Marty

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Lunch cures all problems! have you had lunch?
  • pmrobertpmrobert Posts: 673
    edited 2008-06-28 22:16
    I like the idea of computing the average - that'll be good for noise rejection! My initial message wasn't as clear as it should have been - typically the wheel would be a minimum of 8 or 12 teeth with one missing. The "2x cnt" I referenced was to the time span between the teeth surrounding the gap.

    -Mike
  • evanhevanh Posts: 15,543
    edited 2008-06-29 10:56
    I haven't tried to understand it but there is something really neat with circular pulse counting. You can pretty much keep summing indefinitely and get better and better low frequency resolution.

    It works properly, I think it is to do with the positional nature of the pulses. Each pulse is providing both a precise position and almost as precise a derived speed.


    Evan
Sign In or Register to comment.