フィルターのクリア

Tune PID controller for a nonlinear system in MATLAB

37 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2021 年 2 月 17 日
回答済み: MathWorks Support Team 2021 年 2 月 25 日
I am implementing a PID controller in a MATLAB script in which I have use ode23. The system is nonlinear, and I want to know how to optimize my PID gains without using Simulink.
 

採用された回答

MathWorks Support Team
MathWorks Support Team 2021 年 2 月 17 日
Most of the tools that MATLAB has available for PID controller tuning is with respect to linear systems. Nonlinear systems are extremely hard to predict and are therefore very hard to optimize PID gains for. Common practice is to optimize the PID gains for the linearized system and use these as a starting point for the PID gains of the nonlinear system.
A Simulink model can easily be linearized, but it is less straightforward to do this in MATLAB. The way to do this is through the PID Tuner app, for which the documentation can be found at:
With this app, the user can input arrays of input and output signals to the physical system without any PID controller action. The PID Tuner app will try to linearize the system and apply the best PID gains for the performance measures (response time, transient behavior) specified. The steps below outline this process when choosing the input/output data for the plant.
  1. Open the PID Tuner app from the "Apps" tab
  2. In the "Plant" dropdown, select "Identify New Plant"
  3. In the "Get I/O Data" dropdown, select "Arbitrary I/O Data"
  4. Specify the variable name (vector) for the output signal.
  5. Specify the variable name (vector) for the input signal (*Note: input and output signals must be the same size)
  6. Enter the start time
  7. Enter the sample time
  8. Click "Import" in the bottom right of the pop-up window
  9. Set all other settings in the toolstrip of the PID tuner (i.e. Controller type, domain, performance measures, etc.)
The performance measures can be adjusted until the desired system response is achieved.
 

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangePID Controller Tuning についてさらに検索

製品


リリース

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by