Monthly Archives: May 2013

Setting up the engine

I spent yesterday setting up the engine and equipment that I will need for the project. The engine is mounted on a frame with a car alternator as the load. The frame is then stood on a trolley which can be moved around. Some driving circuitry for the fuel injector and ignition coil has already been built and is also mounted to the trolley. There is also a conditioning circuit for the Variable Reluctance Sensor (VRS) to process the toothed wheel sensor output into a nice clean square wave ready to input to a microcontroller. The engine can be run using the stock carburettor, or with a fuel injector, and can use the stock magneto ignition or electronically controlled coil ignition.

I’ve set up a PC on the trolley to use to reprogram my ECU, and an Oscilloscope to measure signals. I forgot to take pictures, but will add them later when I do.

Update: pictures available here

Variable Reluctance Sensors (Crankshaft position sensor)

VRS sensors (sometimes called crank sensors) are basically a coil of wire around a ferrite core. They are located close to a toothed wheel which is usually mounted on the crankshaft or the teeth are part of the flywheel itself. Here’s an example of one:

From this website:

From this website:

Continue reading

Ignition Timing, Engine and Fuel Map

I have now implemented more accurate ignition timing control which is based on degrees before top dead centre rather than a fixed time period.

I’ve also implemented a simple fuel map with the ability to store new values, display the map and save the map over serial from the Arduino.

Continue reading

How Torque varies with Air to Fuel Ratio

For my Stellaris Launchpad engine simulator, I wished to add a calculation of the Air to Fuel Ratio (AFR) or lambda/equivalence ratio for the current engine conditions. I did this crudely by using the throttle position, engine speed (this->s) and current fuel pulse width (this->F) as factors in calculating the AFR:

this->AFR = (0.32666 * this->s * this->throttle)/(this->F);

Continue reading

Arduino Engine Control Unit and Stellaris Launchpad LM4F120 Engine Simulator

The ECU which I am developing is an embedded real time system which is designed to control a single cylinder spark ignition fuel injected gasoline engine. There are a number of ways to approach developing this type of system, and a mixture of these are likely used in industry

  • Develop code on the embedded device and continuously test on the engine 
  • Develop code all in one go on the embedded device and perform a final test on the engine (you would have to be pretty confident in your code for this to be worthwhile)
  • Create an engine simulator in software on a PC and write your ECU software on the PC to control it, then program the ECU to an embedded device to test on a real engine
  • Develop model based code in software like Matlab Simulink, build an engine simulator and ECU separately in the software, then program it to a ‘target’ to run on an embedded device
  • Develop an engine simulator  on an embedded device and develop the ECU on an embedded device to control it

I’m going with the last option. Continue reading

Engine Control Unit Project

I am currently studying an MSc in Automotive Electronic Engineering, and am now beginning to work on my final project. The main goal of the project is to build an engine control unit. I’m now at the prototyping stage where I just want to get something working to that I can make sure that everything is possible. I’m hoping to eventually get to a stage where I use an in cylinder pressure transducer to infer the air to fuel ratio of the engine and use this instead of a lambda sensor as an input to my ECU to control my fuel injection. Continue reading

Honda Variable Cylinder Management Engine

Honda New Zealand have a really nice explanation of their ‘Variable Cylinder Management’ technology. The idea behind this is similar to the Scalzo Piston Deactivation Engine in that it reduces pumping losses in the engine at part load. The great thing about Honda’s system is that it utilises the already proven VTEC technology to achieve a similar effect. The disadvantage compared with the Scalzo engine is that it cannot remove the friction losses as the pistons are still connected to the crank shaft and still move up and down in the bore. The Honda v6 engine can run on 6, 4 or 3 cylinders.


2004 Corsa C Wheel Hub Removal, wheel bearing, brake pads and disk renewal

Information given here describes working on the braking system of a car. This is only a rough guide, if you are not experienced with working on vehicles, I do not suggest starting on the brakes. If you crash and die – do not blame me.

This is a rough guide on working on some of the wheel hub parts on a 2004 1.2 L Vauxhall/Opel Corsa C. This may or may not apply to your vehicle, and should only be used as a guide. Additional  tools or steps may be required. I am not a mechanic, merely a hobbyist, and so any advice should be taken with a pinch of salt, as there may be better ways to do things. You follow this information at your own risk, if you cause any damage to your self or your car, do not blame me. If you are not confident in solving problems as they arise, or are not prepared to spend more money to fix things if they go wrong then get a professional mechanic to do the job. Continue reading