## 3 The MPC Controller Design for the Controllable Pitch Propeller
### Mathematical Modeling
The control time domain \(m\) is smaller than the prediction time domain \(p\), and the control quantity is assumed to remain unchanged outside the control time domain \(m\), i.e., \(\Delta u(k+i)=0,i=m,m+1,\cdots p-1\). Since the upcoming disturbance quantity at the current moment \(k\) is unknown, the measurable disturbance is assumed to be constant after \(k\), i.e., \(\Delta d(k+i)=0,i=1,2,\cdots p-1\). At \(k\), the system state is \(x(k)\), and \(\Delta x(k)\) is considered to be the starting value for predicting the controlled system state. According to Equation (17), the state from \(k+1\) to \(k+p\) can be predicted:\[ \begin{array}{c}\Delta x(k+1|k)=A\Delta x(k)+B_{u}\Delta u(k)+B_{d}\Delta d(k)\\ \Delta x(k+2|k)=A\Delta x(k+1|k)+B_{u}\Delta u(k+1|k)+B_{d}\Delta d(k+1|k)\\ =A^{2}\Delta x(k)+AB_{u}\Delta u(k)+B_{u}\Delta u(k+1)+AB_{d}\Delta d(k)\\ \Delta x(k+3|k)=A\Delta x(k+2|k)+B_{u}\Delta u(k+2|k)+B_{d}\Delta d(k+2|k)\\ =A^{3}\Delta x(k)+A^{2}B_{u}\Delta u(k)+AB_{u}\Delta u(k+1)+B_{u}\Delta u(k+2 )+A^{2}B_{d}\Delta d(k)\\ \vdots\\ \Delta x(k+m|k)=A\Delta x(k+m-1|k)+B_{u}\Delta u(k+m-1)+B_{d}\Delta d(k+m-1)\\ =A^{m}\Delta x(k)+A^{m-1}B_{u}\Delta u(k)+A^{m-2}B_{u}\Delta u(k+1)+\cdots\\ +B_{u}\Delta u(k+m-1)+A^{m-1}B_{d}\Delta d(k)\\ \vdots\\ \Delta x(k+p|k)=A\Delta x(k+p-1|k)+B_{u}\Delta u(k+p-1)+B_{d}\Delta d(k+p-1)\\ =A^{p}\Delta x(k)+A^{p-1}B_{u}\Delta u(k)+A^{p-2}B_{u}\Delta u(k+1)+\cdots\\ +A^{p-m}B_{u}\Delta u(k+m-1)+A^{p-1}B_{d}\Delta d(k)\end{array}  \tag{18}\]  
From Equations (17) and (18), the measured output \(y_{c}(k)\) at \(k\) is selected as the starting point for the system's controlled output prediction, which can be achieved from \(k+1\) to \(k+p\) as follows:  
\[ \begin{array}{c}y_{c}(k+1|k)=C_{c}\Delta x(k+1|k)+y_{c}(k)\\ =C_{c}A\Delta x(k)+C_{c}B_{u}\Delta u(k)+C_{c}B_{d}\Delta d(k)+y_{c}(k)\\ y_{c}(k+2|k)=C_{c}\Delta x(k+2|k)+y_{c}(k+1|k)\\ =(C_{c}A^{2}+C_{c}A)\Delta x(k)+(C_{c}A\Delta B_{u}+C_{c}B_{u})\Delta u(k)\\ +C_{c}B_{u}\Delta u(k+1)+(C_{c}AB_{d}+C_{c}B_{d})\Delta d(k)+y_{c}(k)\\ \vdots\\ y_{c}(k+m|k)=C_{c}\Delta x(k+m|k)+y_{c}(k+m-1|k)\\ =\sum\limits_{i=1}^{m}C_{c}A^{i}\Delta x(k)+\sum\limits_{i=1}^{m}C_{c}A^{i-1} B_{u}\Delta u(k)+\sum\limits_{i=1}^{m-1}C_{c}A^{i-1}B_{u}\Delta u(k+1)+\cdots\\ +C_{c}B_{u}\Delta u(k+m-1)+\sum\limits_{i=1}^{m}C_{c}A^{i-1}B_{d}\Delta d(k)+ y_{c}(k)\\ \vdots\\ y_{c}(k+p|k)=C_{c}\Delta x(k+p|k)+y_{c}(k+p-1|k)\\ =\sum\limits_{i=1}^{p}C_{c}A^{i}\Delta x(k)+\sum\limits_{i=1}^{p}C_{c}A^{i-1 }B_{u}\Delta u(k)+\sum\limits_{i=1}^{p-1}C_{c}A^{i-1}B_{u}\Delta u(k+1)+\cdots\\ +\sum\limits_{i=1}^{p-m+1}C_{c}A^{i-1}B_{u}\Delta u(k+m-1)+\sum\limits_{i=1}^{ p}C_{c}A^{i-1}B_{d}\Delta d(k)+y_{c}(k)\\ \end{array}  \tag{19}\]  
The prediction output vector \(Y_{p}(k+1|k)\) and input vector \(\Delta U(k)\) are defined as follows:  
\[Y_{p}(k+1\mid k)=\left[ \begin{array}{c}y_{c}(k+1|k)\\ y_{c}(k+2|k)\\ \vdots\\ y_{c}(k+p|k)\end{array} \right]_{p\times 1},\Delta U(k)=\left[ \begin{array}{c} \Delta u(k)\\ \Delta u(k+1)\\ \vdots\\ \Delta u(k+m-1)\end{array} \right]_{m\times 1} \tag{20}\]  
Equation (19) is converted to a matrix equation, and the system prediction output can be calculated by the following equation:  
\[Y_{p}(k+1|k)=S_{x}\Delta x(k)+Jy_{c}(k)+S_{d}\Delta d(k)+S_{u}\Delta U(k) \tag{21}\]\[S_{x}= \begin{bmatrix}C_{c}A\\ \sum\limits_{i=1}^{2}C_{c}A^{i}\\ \vdots\\ \sum\limits_{i=1}^{p}C_{c}A^{i}\end{bmatrix} _{p\times 1}I= \begin{bmatrix}I_{n_{c} \times n_{c}}\\ I_{n_{c}\times n_{c}}\\ \vdots\\ I_{n_{c}\times n_{c}}\end{bmatrix} _{p\times 1}S_{d}= \begin{bmatrix}C_{c}B_{d}\\ \sum\limits_{i=1}^{2}C_{c}A^{i-1}B_{d}\\ \vdots\\ \sum\limits_{i=1}^{p}C_{c}A^{i-1}B_{d}\end{bmatrix} _{p\times 1}\]  
\[S_{u}=