• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-18
  • 语言: Matlab
  • 标签: PID  

资源简介

针对一阶惯性延迟系统的PID自整定,采用Matlab仿真。

资源截图

代码片段和文件信息

m=0.8187;
n=0.3625;
theta=[0.0001 0.0001 0.00001]‘;
theta1 =theta;
P = [100;010;001];
P1 = P;
phi =[000]‘;
K = [000]‘;
K1 = K;
I = [100;010;001];
y = zeros(1500);
r = zeros(1500);
u = zeros(1500);
a1 = zeros(1500);
b0 = zeros(1500);
b1 = zeros(1500);
h1 = zeros(1500);
g0 = zeros(1500);
g1 = zeros(1500);
for j = 1:100
   r(j) = 1;
   r(100+j) = 1;
   r(200+j) = 1;
   r(300+j) = 1;
   r(400+j) = 1;
end
y(1) = 0;
a1(1) = theta(1);
b1(1) = theta(2);
b0(1) = theta(3);
g1(1) = h1(1)*a1(1)/b1(1);
g0(1) = (0.433+a1(1)-b0(1)*g1(1)+(a1(1)-1)*(a1(1)+0.2))/(b1(1)-a1(1)*b0(1)+b0(1));
h1(1) = -a1(1) - 0.2-b0(1)*g0(1);
u(1) =  g0(1)*(r(1)-0) + g1(1)*(0-0);
y(2) =  m*y(1) + n*0;
phi(1) = -y(1);
phi(2) = 0;
phi(3) = u(1);
P = (I-K*phi‘)*P1/0.97;
K = (P1*phi)/(0.97+phi‘*P1*phi);
theta = theta1 + K*(y(2) - phi‘*theta1); 
a1(2) = theta(1);
b1(2) = theta(2);
b0(2) = theta(3);
g1(2) = h1(2)*a1(2)/b1(2);

评论

共有 条评论