  Common approaches for direct model predictive control (MPC) for current
reference tracking in power electronics suffer from the high computational
complexity encountered when solving integer optimal control problems over long
prediction horizons. We propose an efficient alternative method based on
approximate dynamic programming, greatly reducing the computational burden and
enabling sampling times below 25 $\mu$s. Our approach is based on the offline
estimation of an infinite horizon value function which is then utilized as the
tail cost of an MPC problem. This allows us to reduce the controller horizon to
a very small number of stages while simultaneously improving the overall
controller performance. Our proposed algorithm was implemented on a small size
FPGA and validated on a variable speed drive system with a three-level voltage
source converter. Time measurements showed that our algorithm requires only
5.76 $\mu$s for horizon N = 1 and 17.27 $\mu$s for N = 2, in both cases
outperforming state of the art approaches with much longer horizons in terms of
currents distortion and switching frequency. To the authors' knowledge, this is
the first time direct MPC for current control has been implemented on an FPGA
solving the integer optimization problem in real-time and achieving comparable
performance to formulations with long prediction horizons.
