Why can't I tune my controllers in Simulink Control Design?
3 views (last 30 days)
Show older comments
MathWorks Support Team
on 20 Jun 2018
Edited: MathWorks Support Team
on 17 Apr 2024
I am trying to tune controllers in my model using either Control System Tuner or the PID Tuner App. However, I keep getting error messages such as:
"Linearization resulted in a system that cannot be tuned, you may try a different operating point(s)."
or
"Plant cannot be linearized. Use the Plant menu to create or select a new plant"
How do I tune my controllers in the model?
Accepted Answer
MathWorks Support Team
on 17 Apr 2024
Edited: MathWorks Support Team
on 17 Apr 2024
In order for Simulink to perform its tuning capabilities, it must be able to linearize the plant model. Simulink performs linearization using a block-by-block approach, then combines the individual block linearizations to product the overall system linearization. The linearization of each block can use one of two different methods:
1) Analytical linearization: obtain the Jacobian from the block
2) Numerical perturbation: perturb the block by a small amount and compute a linear model based on the response to these perturbations
Strong discontinuities in a block (such as those generated by PWM signals) can cause poor linearization results, e.g. linearizing to zero or an infinite gain. Therefore, such blocks require special handling.
For more on this, see the following page, which describes common problematic blocks and potential solutions for linearizing them:
Refer to the following page when troubleshooting linearization results in general, which provides a number of useful resources and approaches for obtaining better linearization results:
To handle poor linearization results, you can specify a custom linearization for a block if it is known. This can be down using either of these two approaches:
1) Specify using a MATLAB expression: https://www.mathworks.com/help/slcontrol/ug/when-to-specify-individual-block-linearization.html
2) Specify using a function: https://www.mathworks.com/help/slcontrol/ug/when-to-specify-individual-block-linearization.html
An alternative approach is to use the System Identification Toolbox to identify a linear system for the block. An example of how to do that can be found here:
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!