MATLAB: How to solve the discontinuity of MPC controller output?

model predictive controlModel Predictive Control Toolboxsimulink

In simulink, I used the MPC toolbox to obtain the control value calculated by MPC with a sampling period of 0.05s.
In the following calculations, I need to derive the control variable. However, 0.05s is much smaller than the simulation step size, which leads to an infinite value for the derivative.
I tried to use low-pass filtering, but it still can't solve the problem well.
The MPC algorithm should calculate the control variables in the control horizon together, and then output them one by one. Is it possible to perform interpolation processing before the output of the MPC controller? Or is there any better way to solve this difficulty?

Best Answer

When I use the discrete derivation module, the problem is solve