【过程控制】串级控制【含GUI Matlab源码 2385期】

文章介绍了MATLAB和Simulink联合开发的交互系统,用于串级控制特性的研究与分析,包括工作频率提升、抗扰能力演示和主副控制器参数整定。通过实际操作演示和理论知识链接,帮助读者理解和实践串级控制技术。
摘要由CSDN通过智能技术生成

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄一、简介

1 交互系统整体外观展示
该系统基于 MATLAB GUI 与 Simulink 联合开发, 实现对串级控制系统特性的研究与分析。学生在学习串级控 制有关知识后可使用该应用进行知识回顾。界面提供许多功能按钮以及输入输出窗口, 方便参数设置。整个系统分 为三大部分:串级控制特性——提升工作频率演示、串级控制特性——提升抗扰能力演示、串级控制主控制器和副 控制器参数整定演示。(注:验证参数可根据这张图片中的数据进行设定)

2 串级控制特性——提升工作频率演示
这一部分开发的基础知识源于《过程控制系统》 P121- 124 有关串级控制提升工作频率的理论讲解。 模块包含三 个子部分:图像绘制界面、控制面板、参数显示部分。图像绘制界面绘制串级控制与单回路控制在阻尼相同时的阶 跃响应曲线与各自的闭环 bode 图。控制面板可以输入影响串级控制提升工作频率的几个重要参数 (To1/To2, K2),即 主对象与副对象之间时间常数比值以及副控制器增益, 另外K1 也可作为输入。参数显示部分从 3 个方面比较串级控 制与单回路控制差别:工作频率、闭环带宽、过渡时间。同时, 还给出了串级控制较单回路控制等效时间常数和等 效增益的变化。在参数显示中,创新地将工作频率提升的本质归结到闭环带宽的提升,这一点是书上没有讲到的。 图像绘制界面可以绘制串级控制与单回路控制的时域响应和频域响应。参数面板如下图,既有时域信息也有频域信
息。

有关参数的计算原理可参考《自动控制原理》第三章时域理论以及第五章频域理论。等效时间常数和等效增益 计算参考《过程控制系统》P122。

3 串级控制特性——提升抗扰能力演示
这一部分基于 MATLAB 与 Simulink 联合开发,MATLAB GUI 运行 Simulink 模型后将数据传至 Workspace , GUI 再调用Workspace 数据, 最后进行图像的绘制。该模块包含三个子部分:图像绘制界面、扰动值和扰动时间给 定界面、功能按钮部分。涉及到的理论知识参考《过程控制系统》P124- 126 有关串级控制抗扰能力的讲述。功能按 钮部分点击“Simulink 开始仿真”即可开始仿真。第二个按钮可查看 Simulink 模型示意图,第三个按钮点击后可显
示仿真中串级控制和单回路控制的系统方框图,方便使用者对应参数在实际模型中所处位置,点击后弹出窗口:

第四个按钮点击后会显示在这一部分默认使用的系统参数。给定好恒值干扰大小以及作用时间后点击“Simulink 开
始仿真”,稍微等待一段时间即可得到图像(图中虚线位置为扰动加入时间点)。

图中虚线表示干扰开始作用的时间,该演示程序添加了数据游标等工具方便使用者对图像进行细致观察。

4 串级控制主控制器和副控制器参数整定演示
这一部分同样基于 Simulink 与MATLAB 进行联合仿真并计算。涉及到的知识参考《过程控制系统》 P129, 133- 135,以及一些优化算法知识。根据 P129 页有关“主副调节器控制规律的选择”所述, 这一部分所使用的串级控制 模型中主控制器为 PI (比例-积分),副控制器为 P (比例)。该模块包含 5 个子部分: 优化后串级控制输出响应曲线绘 制、优化后串级控制 PI 控制器输出响应曲线、给定模型参数部分、经优化后 PI 控制器,P 控制器参数值以及开始 仿真按钮。
参数的选择使用无梯度优化的方法, 目标函数选用性能优异的 ITAE 指标 (这一部分参考《控制系统仿真与 CAD》):
为了更好地模拟实际情况,控制器中积分项带限幅输出且控制器输出带相同限幅输出, 同时考虑到阀门全开状 态下流量有上限,因此阀门输出带限幅,这些参数都可以在整定前输入界面。

⛄二、部分源代码

function varargout = demo(varargin)
gui_Singleton = 1;
gui_State = struct(‘gui_Name’, mfilename, …
‘gui_Singleton’, gui_Singleton, …
‘gui_OpeningFcn’, @demo_OpeningFcn, …
‘gui_OutputFcn’, @demo_OutputFcn, …
‘gui_LayoutFcn’, [] , …
‘gui_Callback’, []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
end
% End initialization code - DO NOT EDIT

% — Executes just before demo is made visible.
function demo_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to demo (see VARARGIN)

% Choose default command line output for demo
handles.output = hObject;

% Update handles structure
axes(handles.axes1);grid on;
axes(handles.axes3);grid on;
axes(handles.axes4);grid on;
axes(handles.axes5);grid on;
%初始化串级控制参数
handles.K01 = 1;handles.Km1 = 5;handles.K02 = 1;handles.Km2 = 1;
handles.Kv = 1;
guidata(hObject, handles);
end

% — Outputs from this function are returned to the command line.
function varargout = demo_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure
varargout{1} = handles.output;
end

function edit1_Callback(hObject, eventdata, handles)
% Hints: get(hObject,‘String’) returns contents of edit1 as text
% str2double(get(hObject,‘String’)) returns contents of edit1 as a double
T01 = get(handles.edit1,‘String’);
T01 = str2double(T01);
handles.T01 = T01;
guidata(hObject,handles);
end

% — Executes during object creation, after setting all properties.
function edit1_CreateFcn(hObject, eventdata, handles)
% Hint: edit controls usually have a white background on Windows.
% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,‘BackgroundColor’), get(0,‘defaultUicontrolBackgroundColor’))
set(hObject,‘BackgroundColor’,‘white’);
end
end

function edit2_Callback(hObject, eventdata, handles)
% Hints: get(hObject,‘String’) returns contents of edit2 as text
% str2double(get(hObject,‘String’)) returns contents of edit2 as a double
T02 = get(handles.edit2,‘String’);
T02 = str2double(T02);
handles.T02 = T02;
guidata(hObject,handles);
end

⛄三、运行结果

在这里插入图片描述
在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]吴成渝,王超,李斌.模糊自适应PID串级控制在主汽温控制中的应用[J].电子设计工程. 2018,26(22)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值