学习笔记-第3周-电机参数优选

说明:由于word发布到博客园失败,故将word内容截图,然后将图片上传至随笔中。

转速随时间近似线性变化

电流各段峰值比较均匀

附上主要的MATLAB代码:

 

clc,clear;close all;
% 参数设置
J = 1;
R = 0.6;
Kt = 1.8;
Ke = 0.189;
Tl = 29.2;
p = 0.99;
% 额定参数
u = 240;
I = 16.2;
n0 = 1220;
% 待优化参数
K0 = 0.1; % T2超过TL的百分比
R5 = 0;

% 含参输入函数
tao = @(R_ad) J*(R+R_ad)/Ke/Kt*6.28/60;
ns = @(R_ad) (u-Tl*(R+R_ad)/Kt)/Ke;

% 约束
R1min = (u-Ke*0)/(2*I)-R;
t_best = inf;
inter = 0.01;
Rlist1 = 6.85+inter*(1:40);
len = length(Rlist1);
t = zeros(len, len);
for i = 1:len
R1 = Rlist1(i);
t1 = tao(R1) * log(J*6.28/60*ns(R1)/tao(R1)/K0/Tl);
n1 = (1-exp(-t1/tao(R1)))*ns(R1);

R2min = (u-Ke*n1)/(2*I)-R;
Rlist2 = floor(20*R2min)/20 + inter*(1:len);
for j = 1:len
R2 = Rlist2(j);
t2 = tao(R2) * log(J*6.28/60* (ns(R2)-n1) /tao(R2)/K0/Tl );
n2 = (ns(R2)-(ns(R2)-n1)*exp(-t2/tao(R2)) );

R3min = (u-Ke*n2)/(2*I)-R;
Rlist3 = floor(20*R3min)/20 + inter*(1:len);
for k = 1:len
R3 = Rlist3(k);
t3 = tao(R3) * log(J*6.28/60* (ns(R3)-n2) /tao(R3)/K0/Tl );
n3 = (ns(R3)-(ns(R3)-n2)*exp(-t3/tao(R3)) );

R4min = (u-Ke*n3)/(2*I)-R;
Rlist4 = floor(20*R4min)/20 + inter*(1:len);
for o = 1:len
R4 = Rlist4(o);
t4 = tao(R4) * log(J*6.28/60* (ns(R4)-n3) /tao(R4)/K0/Tl );
n4 = (ns(R4)-(ns(R4)-n3)*exp(-t4/tao(R4)) );
% if n4>1140
% numbest = [R1,R2,R3,R4]
% end

t5 = tao(R5) * log( (ns(R5)-n4)/(1-p)/ns(R5) );
t(i,j,k,o) = t1+t2+t3+t4+t5;

if t(i,j,k,o) < t_best && n4>1140
t_best = t(i,j,k,o);
numbest = [R1,R2,R3,R4];
end
end
end

end
end

 

posted on 2016-03-09 21:41  zjzero  阅读(205)  评论(0编辑  收藏  举报

导航