Microcontroller is the answer
was just looking for a circuit to operate the engines starter motor. it needs to be energized to start the engine, but how does the circuit know that the engine has started and it can stop cranking it over? that's the only part that i can't figure out. if it's a human doing it, he just lets go of the key when the engine starts. how does a circuit know when to let go of the key?
i was wanting to see a circuit where some one else has handeled this problem to get some ideas for my own circuit.
Hi Mike,
I have built a computerized controller for my diesel engine that does exactly what you are looking for.
I use a hall effect sensor and a magnet on the flywheel to determine RPM.
When cranking, I wait until the RPM exceeds a certain speed to determine if the engine has started. Using oil pressure won't work, because the engine starts long before the oil pressure comes up. Also, the alternator does not start putting out power until the engine is near full speed, so that is not useful in determining when the engine has started.
Here is a video showing the start sequence:
**broken link removed**
The start sequence is as follows:
- Move speed control to start position
- Engage Glow plug for fixed amount of time
- Start cranking
- when rpm exceeds 300rpm, disengage starter
- move speed control to run
I'm also using a PID controller to tune the engine speed to exactly 1800 rpm. If you watch the video closely, you can see the PID overshoot the target RPM, then back off to the correct speed. (The PID controller was not fully tuned when the video was made.)
Unless you are a glutton for punishment, or enjoy building and programming your own controller, I suggest you stick with one of the commercially available controllers. That being said, if you are interested, you can see full schematics and description of the controller here
Automatic Generator Controller