Jump to content

LM3S8962 / LM3S2110 Engine Management System

Recommended Posts

Maybe I should elaborate a bit about what is meant by "missing tooth" above, for those not engine aware?


The missing tooth serves as an index to a known crankshaft position... or rather, more accurately, the first detected tooth after the missing tooth is a known position.


When you try to start the engine, the ECU gets signals from the crankshaft position sensor. It knows how many teeth there are on the trigger, and measures the time between when teeth are detected. When that missing tooth comes around, it notices there is a longer than normal delay between teeth and if programmed correctly knows exactly what the crankshaft position is when the next tooth is detected.


The more teeth there are, the more accurate the position can be determined since more teeth equals more signals generated during 360 degrees of rotation. A 34 tooth trigger like I'm doing means the ECU reads a tooth every 10.58 degrees, give or take. A 36 tooth wheel would have 10 degrees between teeth and a 60 tooth wheel would have 1 degree between teeth. Obviously, a 60 tooth wheel would be a good choice, but sometimes space limitations come into play and there isn't room for 60 teeth. Therefore a wheel with fewer teeth must be used.


Then the ECU steps in and does some magic.


The crankshaft experiences acceleration and deceleration effects during operation: deceleration when a piston is pushing combustion gasses out or compressing the air/fuel charge and has acceleration when a spark plug fires. Multiple cylinder engines have a complex mix of acceleration and deceleration. Since the ECU measures the time between tooth detections, it can learn the crankshaft accel / decal 'profile' over a few rotations, and use that to scale a timer that runs between tooth events. The timer is used to interpolate, or infer, crankshaft position between teeth events and can result in accuracy in crankshaft position better than 0.1 degree even with a trigger wheel with teeth spaced 10 degrees or more apart.


The above is why I decided to make a trigger wheel rather than rely on the stock system. With 1 tooth on the flywheel, and two sensors in the engine case, I am only guaranteed to know the crankshaft position at two points in its rotation: once when the first sensor is triggered and again when the second sensor is triggered. Since the crank will rotate 80 degrees between 1st and 2nd sensor signals, and then 280 degrees before the 1st sensor is triggered again, any system would be hard pressed to run a timer and extrapolate crankshaft position from that because of the accel / decel effects.


Yeah, I'm just babbling. ;)

Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...