Performance-Improved Implementation of the SISO Adaptive Predictive Control Algorithm for Embedded Systems

This article presents a performance improvement over a previously published software-based embedded implementation of the single-input single-output (SISO) adaptive predictive control (APC) algorithm. This article mainly focuses on reducing the execution time of a control iteration of the SISO APC algorithm, while preserving precision. A profiling study of the algorithm is developed, which identifies the performance bottlenecks. Analyzing the outcomes of the profiling study, a set of enhancements for efficient computations of the <italic>Recursion</italic> and <italic>Adaptation</italic> stages of the SISO APC algorithm is proposed, which greatly reduces the computational complexity of the algorithm. The ZYBO development board is the selected platform for testing. Firmware development and optimization is oriented to provide speedup using hardware acceleration, exploiting the processor in the ZYBO at its full extents, targeting the available coprocessors embedded in the core. Comparison with previously published work shows outstanding improvements in execution time, obtaining speedup increments up to <inline-formula><tex-math notation="LaTeX">$\text{12.0}\times$</tex-math></inline-formula>. The enhancements performed to the SISO APC algorithm along with firmware optimization allow the proposed implementation to run at execution times as low as 0.7 <inline-formula><tex-math notation="LaTeX">$\mu$</tex-math></inline-formula>s, which are considerably lower than existing embedded MPC implementations found in the literature.

[1]  Manfred Morari,et al.  High-speed online MPC based on a fast gradient method applied to power converter control , 2010, Proceedings of the 2010 American Control Conference.

[2]  Antonio Favela-Contreras,et al.  Embedded Software Implementation of the SISO Adaptive Predictive Control Algorithm , 2017, IEEE Transactions on Industrial Electronics.

[3]  Enrico Santi,et al.  FPGA-Based Model Predictive Controller for Direct Matrix Converter , 2016, IEEE Transactions on Industrial Electronics.

[4]  Wooi Ping Hew,et al.  Model Predictive Control of a Two-Motor Drive With Five-Leg-Inverter Supply , 2013, IEEE Transactions on Industrial Electronics.

[5]  Manfred Morari,et al.  Embedded Online Optimization for Model Predictive Control at Megahertz Rates , 2013, IEEE Transactions on Automatic Control.

[6]  Leonidas G. Bleris,et al.  A System-on-a-Chip Implementation for Embedded Real-Time Model Predictive Control , 2009, IEEE Transactions on Control Systems Technology.

[7]  José Rodellar,et al.  Adaptive Predictive Control: From the Concepts to Plant Optimization , 1995 .

[8]  Sorin Olaru,et al.  Efficient Embedded Model Predictive Vibration Control via Convex Lifting , 2019, IEEE Transactions on Control Systems Technology.

[9]  Xun Gong,et al.  Fast Nonlinear Model Predictive Control on FPGA Using Particle Swarm Optimization , 2016, IEEE Transactions on Industrial Electronics.

[10]  Eyal Dassau,et al.  Event-Triggered Model Predictive Control for Embedded Artificial Pancreas Systems , 2018, IEEE Transactions on Biomedical Engineering.

[11]  Manfred Morari,et al.  Resource-Efficient Gradient Methods for Model Predictive Pulse Pattern Control on an FPGA , 2017, IEEE Transactions on Control Systems Technology.

[12]  Denis Navarro,et al.  Optimized FPGA Implementation of Model Predictive Control for Embedded Systems Using High-Level Synthesis Tool , 2018, IEEE Transactions on Industrial Informatics.

[13]  João M. Lemos,et al.  Survey of industrial optimized adaptive control , 2012 .

[14]  Tian-Hua Liu,et al.  Model Predictive Controller for a Micro-PMSM-Based Five-Finger Control System , 2016, IEEE Transactions on Industrial Electronics.

[15]  Eric C. Kerrigan,et al.  Model predictive control for deeply pipelined field-programmable gate array implementation: algorithms and circuitry , 2012 .

[16]  Minghua He,et al.  Model predictive control on a chip , 2005, 2005 International Conference on Control and Automation.

[17]  Stefan Almér,et al.  Model Predictive Control in the Multi-Megawatt Range , 2016, IEEE Transactions on Industrial Electronics.

[18]  Alberto Bemporad,et al.  Exact Complexity Certification of Active-Set Methods for Quadratic Programming , 2017, IEEE Transactions on Automatic Control.

[19]  Alex Simpkins,et al.  System Identification: Theory for the User, 2nd Edition (Ljung, L.; 1999) [On the Shelf] , 2012, IEEE Robotics & Automation Magazine.

[20]  Alberto Bemporad,et al.  GPU-Accelerated Stochastic Predictive Control of Drinking Water Networks , 2016, IEEE Transactions on Control Systems Technology.

[21]  J.M. Martin-Sanchez,et al.  A new solution to adaptive control , 1976, Proceedings of the IEEE.

[22]  Francisco Beltran-Carbajal,et al.  Design of an adaptive predictive control strategy for crude oil atmospheric distillation process , 2015 .

[23]  Lennart Ljung,et al.  System Identification: Theory for the User , 1987 .

[24]  S. Joe Qin,et al.  A survey of industrial model predictive control technology , 2003 .

[25]  Alexander Domahidi,et al.  Embedded optimization methods for industrial automatic control , 2017 .

[26]  Hong Chen,et al.  Field programmable gate array/system on a programmable chip-based implementation of model predictive controller , 2012 .

[27]  Alberto Bemporad,et al.  A Numerically Stable Solver for Positive Semidefinite Quadratic Programs Based on Nonnegative Least Squares , 2018, IEEE Transactions on Automatic Control.

[28]  Alberto Bemporad,et al.  An Accelerated Dual Gradient-Projection Algorithm for Embedded Linear Model Predictive Control , 2014, IEEE Transactions on Automatic Control.