Switching on a new or retuned controller while keeping the control loop engaged tends to generate transient “bumps” in the commands and plant outputs. For a linear time-invariant (LTI) controller in state–space form, these bumps can be mitigated or even suppressed by resetting the controller state to an appropriate non-zero value adapted to the pre-switching trajectories of the feedback loop signals. This paper proposes a simple way to compute this adapted controller state by minimizing the difference between the commands actually applied immediately before switching and the virtual command trajectory which the new controller would have generated if it had been activated in parallel. This adapted state can be recursively computed as the output of an LTI system in standard state–space form, the anti-bump adapter. Computing the anti-bump adapter involves only standard matrix algebra and control concepts (e.g., observability and controllability matrices/Gramians). Calculations are very simple and can be translated into compact computer code. This bump suppression procedure is applicable to any discrete-time or continuous-time LTI SISO or MIMO controller, without any assumption on or knowledge of either the previously active controller or the plant. Illustrative applications to continuous-time and discrete-time switching problems and a Matlab® code for computing the anti-bump adapter are presented.
Read full abstract