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

11 views (last 30 days)
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?
Mathieu NOE
Mathieu NOE on 15 Jun 2023
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 on 16 Jun 2023
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.

Sign in to comment.

Accepted Answer

Dr Narayanaswamy P R Iyer
Dr Narayanaswamy P R Iyer on 14 Jun 2023
You may use Ziegler-Nicholas step response or else frequency response method for tuning PID controllers.
  1 Comment
DB on 15 Jun 2023
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!

Sign in to comment.

More Answers (1)

Mohamad Nazir
Mohamad Nazir on 13 Jun 2023
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).


More Answers in the  Power Electronics Control

Community Treasure Hunt

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

Start Hunting!