Abstract
This paper demonstrates a symbolic tool that generates C code for nonlinear model predictive controllers. The optimality conditions are derived in a quick tutorial on optimal control. A model based workflow using MapleSim for modeling and simulation, and Maple for analysis and code generation is then explained. In this paper, we assume to have a control model of a nonlinear plant in MapleSim. The first step of the workflow is to get the equations of the control model from MapleSim. These equations are usually in the form of differential algebraic equations. After converting the equations to ordinary differential equations, the C code for the model predictive controller is generated using a tool created in Maple. The resulting C code can be used to simulate the control algorithm and program the hardware controller. The proposed tool for automatic code generation for model predictive controllers is open and can be employed by users to create their own customized code generation tool.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Maplesoft, a division of Waterloo Maple Inc.: MapleSim (2016)
Maplesoft, a division of Waterloo Maple Inc.: Maple (2016)
Qin, S.J., Badgwell, T.A.: A survey of industrial model predictive control technology. Control Eng. Pract. 11, 733–764 (2003)
Qin S.J., Badgwell T.A.: An overview of nonlinear model predictive control applications. In: Allgöwer F., Zheng A. (eds.) Nonlinear Model Predictive Control. Progress in Systems and Control Theory. Springer, Switzerland (2000)
Boyd, S., Vandenberghe, L.: Convex Optimization. Cambridge University Press, Cambridge (2004)
Diehl, M., Ferreau, H.J., Haverbeke, N.: Efficient numerical methods for nonlinear MPC and moving horizon estimation. In: Magni, L., et al. (eds.) Nonlinear Model Predictive Control. LNCIS, vol. 384, pp. 391–417. Springer, Heidelberg (2009)
Ohtsuka, T.: A continuation/GMRES method for fast computation of nonlinear receding horizon control. Automatica 40, 563–574 (2004)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Samadi, B. (2017). Model Based Automatic Code Generation for Nonlinear Model Predictive Control. In: Bogomolov, S., Martel, M., Prabhakar, P. (eds) Numerical Software Verification. NSV 2016. Lecture Notes in Computer Science(), vol 10152. Springer, Cham. https://doi.org/10.1007/978-3-319-54292-8_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-54292-8_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-54291-1
Online ISBN: 978-3-319-54292-8
eBook Packages: Computer ScienceComputer Science (R0)