MATLAB Answers

What environment temperature should I collect the step response data under?thanks.

1 view (last 30 days)
Shawn Li
Shawn Li on 15 Jul 2021
Commented: Yoshi Minagawa on 28 Jul 2021
Hi Team,
I designed a heating circuit for a oven which is controlled by a PI regulator. a MCU sent a PWM signal to the the heating circuit, actually adjust the duty cycle of the PWM, then MCU sample the temperature of the oven.
Firstly I need to collect the step response data of the plant. the range of the duty cycle is 0~1023. I collected the step response data with the duty cycle 900 under -40C, then identify the plant, and get the PI parameters from the pidTuner. this PI parameter is good for the low temperature, but the system has some concussion under environment temperature 50C if using this PI parameters.
I guess the heat is slow under low, however with the high temperature it is fast, the PI parameter of the low temperatuer is unsuitable for high temperature. would you please comments this question? thanks.

Accepted Answer

Shawn Li
Shawn Li on 18 Jul 2021
Hi,
Thanks for your reply!
For the different temperature condition,I`ll get the different group Kp/Ki parameter of PI controller. at last how to confirm the final Kp/Ki parameter for all of temerature condition?I haven`t understand your clarification "Finally, you make feedback controller using PID block that is set so that control gains for each plant model can be input from the outside and be changed arbitrarily." would you please share more detailed information for it? thanks for your support.
  1 Comment
Yoshi Minagawa
Yoshi Minagawa on 28 Jul 2021
Hi Shawn,
I'm sorry for my delay response.
In gain scheduled contorl, after making each contorl gains (in this case, Kp/Ki) for the plant at multiple temperatures, you can implement them in the controller like as described below.(In this sample, it is assumed that the value of only A matrix changes depending on the temperature.)
You can select external source mode in PID block(see below) and use the gain from outside of PID block. With using lookup table block you can change control gain according to the plant temperature even during simulation.
To confirm the final Kp/Ki parameter for all of temperature condition, you should run simulation with different temp setting. If the control performance is not satisfied, it may be necessary to create a map that contains a sufficient amount of control gain for temperature changes by acquiring plant dynamics at more different temperatures and designing the control system for it individually.
I hope this will help.

Sign in to comment.

More Answers (1)

Yoshi Minagawa
Yoshi Minagawa on 15 Jul 2021
Hi Shawn,
I understood that this problem is changing plant dynamics due to plant's temperature and it makes the control difficult.
In like this problem, "gain scheduled control" is usually used. In this case, for making gain scheduled control, first you should get a few kind of step response data under the different temperature and make several plant model. Then you can make controlers for each plant model. Finally, you make feedback controller using PID block that is set so that control gains for each plant model can be input from the outside and be changed arbitrarily.
For more information, please see the detail below.
https://mathworks.com/help/slcontrol/ug/implement-gain-scheduled-pid-controllers.html
I hope this will help.

Tags

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!