FPGA-based Smart Engine Control Unit

Engine management is almost never considered as a way to get better fuel economy. But in today's world of rising fuel prices, electronics can be used very effectively to improve fuel economy. You can enjoy every minute of driving, not just when you put your foot down, which is a benefit. In addition, the use of FPGAs to implement the ECU is also a great advantage because it can be easily reconfigured.

A method is provided for controlling the internal combustion engine on a cycle-by-cycle basis. The method includes: maintaining training data for identifying engine mapping functions; filling a buffer using adaptive data for a given cylinder, where the adaptive data is a measure of the input and output of the mapping function captured during multiple recent operating cycles for a given cylinder; combining training data for the mapping function with the adaptive data; identifying the mapping function from the combined data set using weighted least squares; using mapping functions and measurements input during the current cycle to predict the combustion characteristics of a given cylinder in the next cycle.

Conventional engine control unit

1Conventional engine control unit.png

Here are just a few of the things that we control to run this engine. These parameters and components help to make the right decisions about the internal combustion engine.

  • Injection duration

  • Injection timing

  • Injection pressure

  • Low pressure fuel pump

  • Ignition Timing

  • DBW valve

  • Tumble valve

  • Short/long runner valves

Typically, a conventional ECU has the following I/O devices to run the entire management system.

  • 12 injector outputs, which can be used as auxiliary outputs

  • -8 ignition outputs

  • -8 auxiliary outputs that can drive high or low

  • -8 digital inputs with configurable internal pull-up/down resistors

  • -5 trigger inputs, configurable as reluctance or digital

  • -4 VSS or turbine speed inputs, configurable as magneto-resistive or digital

  • -16 general purpose analog inputs, 4 configurable for temperature sensing and 2 for oxygen sensors

You can use interceptors or ECU software remapping to remap mixtures for cars that no longer have oxygen sensor inputs. You may be able to run at 14.7:1 at idle, but at light load you can run leaner than that without engine failure. The level of leanness you can achieve depends on many factors, including transmission, engine combustion efficiency, etc., but typically a ratio of about 16:1 is usually acceptable. In some cars, you can achieve a lean ratio of 20:1 at light loads. You can even develop your own lean cruise pattern by looking carefully at the load when driving at 100 km/h (or any other way) and then leaning a little at those load points. Too much and you'll get a flat spot, but again, adjust carefully and chances are (especially when finishing on the road) at least one ratio, sometimes more.

Using this approach means you can set the total engine mixture from lean (say) 16.5:1 to rich to 12.5:1 depending on load and rpm conditions. it's worth noting that this car spends most of its time using a leaner-than-standard mixture, which makes a real and measurable difference to fuel economy.

Machine Learning Approach

Machine learning provides a computationally efficient way to capture complex cycle-to-cycle combustion patterns while avoiding explicit knowledge of the underlying mixture state and composition (assuming an appropriate abstract mapping function is chosen). While there are clearly benefits to machine learning approaches, the key issue is that machine learning is data-driven and requires relatively large amounts of data to adequately cover large dimensional spaces.

2computationally efficient way.png

Zynq MPSoC provides Arm processor cores and programmable logic. The heterogeneous device allows us to properly build solutions that achieve a balance between power and performance, a key parameter for edge-based applications. the Xilinx PYNQ can be used to implement machine learning algorithms.

When we want to accelerate neural networks into programmable logic, fixed-point implementations (e.g., fixed-point 8) are easier to implement and can provide similar performance at lower power consumption. Since many machine learning applications are edge-based, power efficiency is critical.

3 implementations.png

The Future of Work

As can be seen, FPGA architectures such as the Xilinx Zynq provide an efficient platform for compute-intensive ECUs and configurable gateway architectures for future in-vehicle applications and interconnects. FPGAs like partial reconfiguration can enable new mechanisms for integrating non-concurrent functions and hardware-level fault tolerance. The management of low-level operations associated with partial reconfiguration is abstracted from the application and managed by extensions on the network interface, making them a platform feature for application designers. Eventually this project should be further developed to gain real advantages.