# Crankshaft Position Sensor

## Recommended Posts

Dear labVIEW users,

As a last year graduate on the KDG I got to realise a last year project.

The target is to simulate automotive sensor signals and send these to the ECU ( electronic control unit ) of the motormanagementsystem, this ECU will interpretate this signal as actual circumstances in the car while he's driving and while the engine is running.

Now the problem is that we've got to simulate the crankshaft signal, this is an inductive sensor that stands next to a flywheel, on the flywheel there are 30 theeth and 3 parts at the flywheel where there are no theeth. The picture will show how it is built. We have made a sinus for the first 12 thooth, and than something to simulate the section with no theeth (0V, it musn't be a sinus), and than also a sinus for the second part of theeth (15). Now the problem is that we want to combine those sinussen to one sinus that replicates the crankshaft position, but we don't know how.

Does anybody have an other idea to make a crankshaft simulation like this ?

Thank you very much for your help !!

Yannick

##### Share on other sites

You won't be able to accurately recreate a crank (or cam) shaft signal in real time using a non-real time operating system. Basically if you're going to use the outputted signal on a analog out card I don't think you'll be able to get the data out fast enough. If you have an engine spinning at 7000 RPM and you have 40 teeth (if there were no gaps) that means you'd need to change the voltage over 4000 times a second, that's every 250 microseconds. (all of these numbers are just estimates)

Also will the engine be changing speeds? If you just need to generate a signal that looks like an engine at one speed you could just multiply the two signals you've generated. The sine one goes on forever, and the signal with no teeth is just a zero or a 1. It should be a 1 when you want there to be teeth, and a 0 when there should be no teeth. When the two signals are multiplied it should be teeth...no teeth...teeth...no teeth.

##### Share on other sites

This is exactly what labview is made for. There exist an arbitrary wave vi somewhere. Just put one revolution (the total signal for one revolution) into the wave pattern, and the vi will do the rest (frequency, amplitude etc).

##### Share on other sites

QUOTE (Fritske @ Mar 19 2009, 08:09 AM)

Now the problem is that we've got to simulate the crankshaft signal,

Having designed 7 cam and crank sensors, and testers for them using LabVIEW I understand what you are trying to do. Your simplest solution by far is to make a simple apparatus to spin the actual target wheel in front of an actual sensor. Then your simulation is correct at all speeds. If you use the actual electronics from the automible then you can also correctly simulate fault conditions such as high and low supply voltage, bad grounds and so on.

Attached is an image of a simple simulator. Mine also includes a high count encoder for examining the signal output from the sensor in real time in the angle domain (much more useful than time domain if you think about it). If you leave out the ncoder the apparatus is not very expensive ddepending on the motor and drive you use. IF you have no DAQ to acquire from the sensor then you can use inexpensive AC induction motor and drives. If you plan to do any DAQ then a servo is best to keep away radiated and condiuted electrical nioise originating fromt eh frequency drive.

If you try to simulate the signal with software you are in for a long job if the simulation is to have any correlation with reality. And if you do simulate the signal you should have a study in hand to base your evaluation of the simulation - meaning actual measurements of the sensor and target system at different speeds, temperatures, and so on. If you can not defend you correlation of the simulation to reality then it is an exersize not good engineering. I also suspect that the time you put into the software simulation will be much greater than building an electromechanical appratus.

##### Share on other sites

QUOTE (bsvingen @ Mar 19 2009, 07:52 PM)

This is exactly what labview is made for. There exist an arbitrary wave vi somewhere. Just put one revolution (the total signal for one revolution) into the wave pattern, and the vi will do the rest (frequency, amplitude etc).

Do you know where I can find this VI ?

## Join the conversation

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

×   Pasted as rich text.   Paste as plain text instead

Only 75 emoji are allowed.

×   Your previous content has been restored.   Clear editor

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

×
×