Optimisation PID Using Sliding mode script

조회 수: 3 (최근 30일)
Tarek
Tarek 2023년 4월 30일
답변: Sam Chak 2024년 3월 14일
I want à script for optimise PID paramèters Using Sliding Mode Control

답변 (2개)

Sam Chak
Sam Chak 2023년 5월 1일
I don't think that SMC can optimize the PID gains. The structure of SMC is not an optimization algorithm.
Before optimizing the PID gains, have you designed a stabilizing PID controller?
If you want to optimize the PID gains, I think that the basic LQR algorithm works for a linear plant or a linearized system.
If you need a demonstration, please show the model of the system.
  댓글 수: 1
Tarek
Tarek 2023년 5월 2일
(-0.014*s^2+3.436e-5 *s+1.214e-8) /(S^2+0.0004*s 5.834e-9) This is my model

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


Sam Chak
Sam Chak 2024년 3월 14일
Are you still working on this? I revisited this control problem and discovered that a PID controller can be tuned to eliminate the steady-state error in the step response.
s = tf('s');
%% Plant
Gp = (-0.014*s^2 + 3.436e-5*s + 1.214e-8)/(s^2 + 0.0004*s + 5.834e-9)
Gp = -0.014 s^2 + 3.436e-05 s + 1.214e-08 ------------------------------------ s^2 + 0.0004 s + 5.834e-09 Continuous-time transfer function.
%% Controller
Gc = pidtune(Gp, 'PIDF')
Gc = 1 s Kp + Ki * --- + Kd * -------- s Tf*s+1 with Kp = 0.645, Ki = 1.98e-05, Kd = -1.57e+03, Tf = 1.73e+04 Continuous-time PIDF controller in parallel form.
%% Closed-loop system
Gcl = minreal(feedback(Gc*Gp, 1))
Gcl = -0.007826 s^4 + 1.84e-05 s^3 + 8.749e-09 s^2 + 7.389e-13 s + 1.402e-17 ---------------------------------------------------------------------- s^4 + 0.0004799 s^3 + 3.796e-08 s^2 + 1.079e-12 s + 1.402e-17 Continuous-time transfer function.
%% Plots
step(Gp ), hold on
step(Gcl), grid on
legend('Plant', 'Closed-loop', 'location', 'se')

카테고리

Help CenterFile Exchange에서 PID Controller Tuning에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by