PID linearization failed? Help!

조회 수: 5 (최근 30일)
Arfiel Lorenz Herbon
Arfiel Lorenz Herbon 2014년 2월 9일
답변: Arkadiy Turevskiy 2014년 3월 7일
I'm currently using SimPowerSystems to model a DC-DC buck converter which regulates the output voltage to 5V. Using the closed-loop configuration, when I try to auto-tune the PID values, I get a message that says linearization failed.
However, when I try to replace the SimPowerSystems block with a control-to-output buck transfer function obtained using state-space analysis, the PID tuning works successfully. What did I do wrong with the SimPowerSystems block? I personally prefer modelling using SimPowerSystems since using these blocks, I can see the voltage and current waveforms in each component. However, I still can't get the PID tuning to work.
I have attached my simulink model with this question.
Thanks!

채택된 답변

Arkadiy Turevskiy
Arkadiy Turevskiy 2014년 2월 13일
You did not do anything wrong. PID Tuner needs a linear model to design a PID controller. To get this linear model, when you press the "tune" button, it automatically linearizes a Simulink model using exact linearization method. This method results in zero linearization when a model has discontinuities such as MOSFET blocks and PWM logic that you have in your case.
The workaround is to use simulation input/output data to estimate a transfer function of the system as shown in this example .
Once you get this transfer function you can keep your SimPowerSystems model, but you can specify a custom linearization behavior for it as explained here, using the transfer function you get in the previous step.
The result of this will be that when you simulate the model, you use your SimPowerSystems blocks with all MOSFETS, PWMs, etc, but when you do linear analysis of the model or PID Tuning, the converter subsystem is replaced with a transfer function automatically.
HTH. Arkadiy
  댓글 수: 1
Arfiel Lorenz Herbon
Arfiel Lorenz Herbon 2014년 2월 13일
Wow this is really nice! I will definitely try this soon. Thanks a lot!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Arkadiy Turevskiy
Arkadiy Turevskiy 2014년 3월 7일
We just shipped new functionality in 14a to specifically address this scenario. Take a look here: PID Controller Tuning for a Model with Discontinuities .

Community Treasure Hunt

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

Start Hunting!

Translated by