Developing a New Control Unit Using an FPGA
From the series: Student Teams Share Their Keys to Success
Alexander Ehard and Sebastian Straßl, Starkstrom Augsburg
To simplify your engine control unit, Sebastian Straßl and Alexander Ehard, of Starkstrom Augsburg, join Christoph Hahn of MathWorks, to use Simulink and the HDL Coder in developing a new control unit with an FPGA. With regards to Formula Student, this is a very applicable project. The benefits of a control unit with an FPGA include the ability to merge multiple devices together to decrease the overall weight, increase system performance, and reduce interface problems.
The Xilinx Zyng 7000 platform was used in this project and is a powerful tool in developing an engine control. As explained by Sebastian and Alexander, the platform itself has a classic micro controller as well as an FPGA, providing greater flexibility. Whereas a classical micro controller involves only programming software, an FPGA involves writing on hardware to result in an increase in performance.
For the FPGA programming, HDL code generation for rapid prototyping is demonstrated. In Simulink, you will see an example for HDL code generation with a torque calculation model from the Starkstrom Augsburg team. This model uses a fixed-step solver with discrete states and illustrates the entire workflow to generate the code. After the software demo, Sebastian and Alexander use a hardware testing setup to check if the code is working and demonstrate how this system would ultimately work in a real racecar.
Using the Xilinx Zynq Platform is complex, but the documentation and user forums greatly assisted the Starkstrom Augsburg team during this project. The links to these resources can be found here:
Published: 18 Mar 2015