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

📄 doublecontrol.m

📁 过程系统建模和PID整定ggg gjkjkjjjhgg g 、
💻 M
字号:
%  ====================================
%    互偶水槽建模和PI整定值
%  ====================================
%   注意:将本实验的水槽T2的高度检测点由4置为1
%
%   清屏,清理工作空间,命令窗口
clear all;
close all;
clc

wwa=load('wwa50');                   %  互偶水槽系统开环数据加载

wwa(:,2)=wwa(:,5);
%   wwa(:,2)为感应器2采集数据


%   开环互偶水槽系统阶跃响应曲线(数据未滤波)
figure;
plot(wwa(:,1),wwa(:,2),wwa(:,1),wwa(:,3))    %  阶跃响应曲线
title('互偶水槽阶跃响应曲线(数据未滤波)')
grid;
xlabel ('Time(s)');
ylabel('Respones(V)')

%  移动平均滤波器M=75
M = 75;                                     
b = ones(M,1)/M;
[y2,delay] = filter(b,1,wwa(:,2));
figure;
plot(wwa(:,1),y2,wwa(:,1),wwa(:,3))
grid;
xlabel ('Time(s)');
ylabel('Respones(V)')
title('移动平均滤波器(M=75)处理')

%  中值滤波器
y1 = medfilt1(wwa(:,2),75);                 %  Median filtering
figure;
plot(wwa(:,1),y1,wwa(:,1),wwa(:,3));
grid;
xlabel('Time(s)');ylabel('Respones(V)');
title('中值滤波器处理');


y1=y1;    %  取移动平均滤波器数值计算

%  --------------------------------
%          求参数K,T,Td
%  --------------------------------

disp('******************************')
disp('  建立一阶惯性加滞后环节模型')
disp('******************************')
[K,T,Td,t0,y0,temp9]=setmod(y1,wwa,1);  %  对y1建模
K
T
Td


% X(0)=x0
% X(inf)=xinf
L3=length(wwa(:,3));
x0=wwa(1,3);
xinf=wwa(L3,3);

%   理想模型与实际模型比较
L1=length(wwa(:,2));           %  Y数组长度
figure;
t=0:2000;
disp('====================================')
y3=tf(K,[T,1],'ioDelay',Td)
y4=step(y3,t);
y4=y4*(xinf-x0);
plot(t,y4);
hold on;
L4=length(y1);    % L4时y1的长度
y5=y1(temp9:L4)-y0;
x=wwa(temp9:L1,1)-t0;
plot(x,y5,'r');
title('模型与实际数据曲线比较');
xlabel('Time(s)');
ylabel('Respone(V)');
grid;
legend('理想曲线','实际曲线',4)

%   计算PID参数
disp('*********************************')
disp('          计算PID参数            ')
disp('*********************************')
PID(K,T,Td,1);      %  计算PID
PID(K,T,Td,2);      %  计算PID

⌨️ 快捷键说明

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