资源简介
自抗扰的matlab程序。 是大家学习adrc的好东西
代码片段和文件信息
%ADRC controller
clear all;
close all;
step=0.001;%kk=1;
sys=tf(189[0.58580]);
%sys=tf(5.235e005[187.351.047e0040]);
dsys=c2d(sysstep‘z‘); %采用零阶保持器离散化方法将连续时间系统离散化;
[numden]=tfdata(dsys‘v‘); %获得变换后的传递函数的模型参数;
u_1=0.0;u_2=0.0;u_3=0.0;
y_1=0.0;y_2=0.0;y_3=0.0;
v1=0;v2=0;z1=0;z2=0;z3=0;
%the parameters for the ESO
a1=0.75;d=0.001;b1=2000;b2=30;b3=100; %a1=0.25;d=0.001;b1=150;b2=300;b3=150;
%The parameters for the TD
R=9;h0=0.005*step;d1=R*h0;d01=h0*d1; %R=500;h0=0.005*step;d1=R*h0;d01=h0*d1;
%the parameters for Controller
a01=0.5;a02=0.25;d0=0.01;b01=300;b02=0.1; %a01=0.75;a02=0.75;d0=0.0001;b01=1000;b02=10;
for k=1:1:10000
time(k)=k*step;
S=1;
if S==1
rin(k)=1.0;
kp=8;ki=0.10;kd=10;
elseif S==2
kp=8
- 上一篇:用matlab绘制凸轮教程(详细)
- 下一篇:powell法程序
评论
共有 条评论