⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pid_derinimas_itae.m

📁 PId and PI ITAE tunning
💻 M
字号:
function main 
clc
clear

%--- Simulinke modeliuojame objekto reakcijos i vienetini suoli kreive
sim('obj_3')

get_indexes = 1:10:1200; 
sim_char = out_per(get_indexes);
sim_t    = tout(get_indexes);
plot(sim_t,sim_char)

%--- Prideriname modelio reakcijos kreive prie proceso reakcijos kreives
%--- tasku. Gauname pirmos eiles perdavimo funkcija su velavimu.
k_a=0.4;
min_err=inf;
T_a_min_err = inf;
tau_a_min_err = inf;
t = sim_t;

for T_a=10:0.01:20
    for tau_a = 0:0.01:20
        calc_char = calc_perein_char(t,k_a,T_a,tau_a);
        err = sum((sim_char-calc_char).^2);
        if err < min_err
            min_err = err;
            T_a_min_err = T_a;
            tau_a_min_err = tau_a;
        end
    end
end

calc_char = calc_perein_char(t, k_a, T_a_min_err, tau_a_min_err);

plot(t, sim_char,'-', t, calc_char,'*')

disp('%--- Objekto parametrai');
K_obj = k_a
tau_obj = tau_a_min_err 
T_obj = T_a_min_err


disp('%--- Derinimo formules ITAE kriterijui');
disp('%--- PID, Reakcijos tipas - Nuostatas');
K_r = 0.965/K_obj*(T_obj/tau_obj)^0.855
T_i = T_obj/(0.796-0.147*(tau_obj/T_obj))
T_d = 0.308*T_obj*(tau_obj/T_obj)^0.929

disp('%--- Derinimo formules ITAE kriterijui');
disp('%--- PID, Reakcijos tipas - Trikdys');
K_r = 1.357/K_obj*(T_obj/tau_obj)^0.947
T_i = T_obj/0.842*(tau_obj/T_obj)^0.738
T_d = 0.381*T_obj*(tau_obj/T_obj)^0.995

disp('%--- Derinimo formules ITAE kriterijui');
disp('%--- PI, Reakcijos tipas - Nuostatas');
K_r = 0.586/K_obj*(T_obj/tau_obj)^0.916
T_i = T_obj/(1.03-0.165*(tau_obj/T_obj))

disp('%--- Derinimo formules ITAE kriterijui');
disp('%--- PI, Reakcijos tipas - Trikdys');
K_r = 0.859/K_obj*(T_obj/tau_obj)^0.977
T_i = T_obj/0.674*(tau_obj/T_obj)^0.68


function h = calc_perein_char(t,k_a,T_a,tau_a)
h = k_a * (1-exp(-(t-tau_a)/T_a)) .* (t > tau_a);  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -