What is an efficient way to do PID tuning in a model with long computing time?

5 次查看(过去 30 天)
I'm modeling PID control of a variable frequency drive (VFD) on a centrifugal pump system in Simulink/Simscape. As I want the system to properly be controlled, I need to tune the PID parameters. More specifically, I solely focus on PI parameters. An inital open-loop simulation of solely the VFD with a step function shows the behaviour of the system. See picture below.
However, when applying the VFD to the hydraulic model, the computing time drastically increases. To be explicit, computing one second of simulation time takes about 500 seconds real time. Therefore, tuning the closed-loop PI parameters takes an immense amount of time.
I am not alllowed to use the automated PID tuner, and am therefore limited to manual tuning. What would be a good way to handle the PI tuning here?
  14 个评论
Mathieu NOE
Mathieu NOE 2023-6-15
I am confused
I didn't noticed that your second image
is simply a zoom on the tiny overshoot at the end of the step response of the motor plot
so at the end I am completely lost in what data we see and are talking about (VFD alone / VFD + pump ? open loop , closed loop ? )
DB
DB 2023-6-16
The open loop is solely VFD, and I applied the parameters found by ziegler-nichols to the closed-loop VFD+pump model and it gives desired results.

请先登录,再进行评论。

采纳的回答

Dr Narayanaswamy P R Iyer
You may use Ziegler-Nicholas step response or else frequency response method for tuning PID controllers.
  1 个评论
DB
DB 2023-6-15
The Ziegler-Nichols method of applying a tangent line work perfectly by exporting my plot MATLAB, and creating a tangent line based off the dy/dx at the inflection point. Using the steps I immediately got good Kp and Ti parameters. I used "GUI Based Control System Analysis Using PID Controller for Education" by Suleiman, 2016 as a reference.
Thank you for the tip!

请先登录,再进行评论。

更多回答(1 个)

Mohamad Nazir
Mohamad Nazir 2023-6-13
You can identify a second order transfer function model of your VFD from the open-loop step response (using overshoot, response time, etc.) then open a new model and insert that transfer function with PI(D) and tune its parameters quickly. That might provide you with a good initial guess which you ultimately have to manually tune on your model (with the hydraulic system).

社区

更多回答在  Power Electronics Control

类别

Help CenterFile Exchange 中查找有关 Nonlinear Operators 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by