Optimal Input Signal Design and MPC of Nonlinear Dynamical Systems

University essay from KTH/Reglerteknik

Author: Mariette Annergren; [2010]

Keywords: ;


The main topics of this master’s project are control theory, system identification and convex optimization. The objective is to develop, implement and test methods for optimal input signal design and for control of a nonlinear dynamical system using MPC. The thesis begins with a theoretical part, in which some known results in these fields are summarized. In the applied part of the thesis, methods are developed and exemplified in MATLAB.

Optimal input signal design is performed on specific FIR, ARX and DCmotor systems which are all controlled by an MPC. The implementation works very well for the FIR and ARX systems. The estimates of the true parameters fulfill the pre-specified requirements when using the optimal input signal constructed. An unexpected behavior is obtained of the estimates for the DC-motor system. Some additional approximations which were made in the design of the optimal input signal are thought to be the cause. Although, the source of the odd behavior were never confirmed. To be able to have a user-friendly environment for optimal input signal design, further work is necessary to overcome numerical problems in the implementation.

A general method of implementing MPC of nonlinear dynamical systems is constructed. It is problematic to use MPC to control a nonlinear system. The reason for this is that a nonlinear system in general corresponds to a non-convex optimization problem in the MPC algorithm. Our method is based on making the problem convex through a linearization of the nonlinear system dynamics. The method is tested on simulations of a reaction wheel pendulum and a two link robot arm. It works very well and the systems fulfill the control objectives. Each optimization problem takes about 0.3-1 second to solve when using cvx. This is in some situations too slow to be able to control a system in reality. Further work is recommended on implementing our method with another solver so that it can be tested on an actual system which requires new updates every milli- or microsecond.

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)