ICE Management system

Implementation of a micro-controller that controls for the speed, temperature and vacuum, and optimises the ignition timing in every cycle according to the values measured on a designated PCB

In a spark ignition internal combustion engine, Ignition timing refers to the timing, relative to the current piston position and crankshaft angle, to the release of a spark in the combustion chamber near the end of the compression stroke.

In modern engines, ignition timing is made by a controller that schedules the ignition, so it is timed according to some parameters: engine speed, temperature, vacuum, etc.

However, in legacy car engines, ignition timing is traditionally made only by mechanical means and can’t be controlled. Controlling the ignition timing is critical for increasing the engine’s reliability and improving efficiency.

This project is based on two previous projects- software and hardware. The goal of the project is to implement a system that combines hardware component and sensors to a programmed micro controller.

The micro-controller was implemented on an esp32 Arduino board and the code was written in C and using the freeRTOS operating system.

 

Video