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