matlab单容水箱液位pid控制,双容水箱pid控制MATLAB仿真参数

  matlab单容水箱液位pid控制,双容水箱pid控制MATLAB仿真参数

  一内容介绍计算机控制技术课程是电气信息类专业的主干课程之一,实验教学是该课程教学的重要组成部分。本实验项目以水箱液位为控制参量,设计了包括系统硬件,基于矩阵实验室的控制界面,PID控制程序等内容的计算机控制技术实验方案。通过教学实践,培养了学生的综合能力,达到了预期的教学目的。

  2部分代码函数varargout=PID _ opt _ pj(vara gin)

  用于PID_OPT_PJ的% PID_OPT_PJ M文件

  % PID_OPT_PJ本身会创建一个新的PID_OPT_PJ或引发现有的

  %单例* .

  %

  % H=PID_OPT_PJ将句柄返回给新的PID_OPT_PJ或将句柄返回给

  %现有的单例*。

  %

  % PID_OPT_PJ(回调,hObject,eventData,handles,)调用本地

  % PID _ OPT _ PJ中的函数名为回电.用给定的输入参数初始化m .

  %

  % PID_OPT_PJ(属性,值,)创建一个新的PID_OPT_PJ或引发

  %现有单例*。从左边开始,属性值对是

  %在调用pid_opt_pj_OpeningFunction之前应用于图形用户界面.一;一个

  %无法识别的属性名或无效值使属性应用程序

  %停止。所有输入都通过变长度输入宗量传递给pid_opt_pj_OpeningFcn .

  %

  % *请参见指南的"工具"菜单上的图像使用者界面选项。选择图像使用者界面只允许一个

  要运行的%实例(单例)”.

  %

  %请参阅:指南、GUIDATA、GUIHANDLES

  %版权所有2002-2003 MathWorks公司。

  %编辑以上文本以修改对帮助pid_opt_pj的响应

  %上次修改指南版本2.5 2022年四月30日09:11:18

  %开始初始化代码-不要编辑

  GUI _ Singleton=1;

  gui_State=struct(gui_Name ,mfilename,

  gui_Singleton ,gui_Singleton,

   gui_OpeningFcn ,@pid_opt_pj_OpeningFcn,

  gui_OutputFcn ,@pid_opt_pj_OutputFcn,

  gui_LayoutFcn ,[],

  gui_Callback ,[]);

  if nargin ischar(varargin{1})

  GUI _ state。GUI _ Callback=str 2 func(vara rgin { 1 });

  目标

  如果输出参数的数目

  [varargout { 1:nargout }]=GUI _ mainfcn(GUI _ State,vara gin {:});

  其他

  gui_mainfcn(gui_State,vara rgin {:});

  目标

  %结束初始化代码-不要编辑

  % -在pid_opt_pj可见之前执行。

  函数pid_opt_pj_OpeningFcn(hObject,eventdata,handles,varargin)

  %此函数没有输出参数,请参见输出Fcn .

  % h对象句柄到数字

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % vara gin PID _ opt _ pj的命令行参数(请参见瓦拉金酒)

  %选择pid_opt_pj的默认命令行输出

  handles.output=hObject

  %更新句柄结构

  guidata(hObject,handles);

  %等待使pid_opt_pj等待用户响应(请参见UIRESUME)

  % ui等待(句柄。图_ PID _ opt _ pj);

  setappdata(handles.axes1, tout ,0);

  setappdata(handles.axes1, yout ,0);

  set(handles.btn_no_pid, Enable , on );

  set(handles.btn_pid, Enable , on );

  set(handles.btn_reset, Enable , on );

  % -此函数的输出返回到命令行。

  函数varargout=PID _ opt _ pj _ output fcn(h对象,eventdata,句柄)

  % varargout单元格数组,用于返回输出参数(请参见VARARGOUT);

  % h对象句柄到数字

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  %从句柄结构获取默认命令行输出

  varargout { 1 }=handles.output

  函数edit_pid_Callback(hObject,eventdata,handles)

  % h编辑_ PID的对象句柄(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回编辑_pid的内容

  % str 2 double(get(ho object, String ))以双精度形式返回编辑_pid的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit_pid_CreateFcn(hObject,eventdata,handles)

  % h编辑_ PID的对象句柄(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit_I_Callback(hObject,eventdata,handles)

  % h编辑对象句柄_I(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回编辑_I的内容

  % str 2 double(get(ho object, String ))以双精度形式返回编辑_I的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit_I_CreateFcn(hObject,eventdata,handles)

  % h编辑对象句柄_I(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit_P_Callback(hObject,eventdata,handles)

  % h编辑对象句柄_P(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回编辑_P的内容

  % str 2 double(get(ho object, String ))以双精度形式返回编辑_P的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit_P_CreateFcn(hObject,eventdata,handles)

  % h编辑对象句柄_P(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit_D_Callback(hObject,eventdata,handles)

  % h编辑对象句柄_D(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints:get(ho object, String )以文本形式返回编辑_D的内容

  % str 2 double(get(ho object, String ))以双精度形式返回编辑_D的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit_D_CreateFcn(hObject,eventdata,handles)

  % h编辑对象句柄_D(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  % -在btn_pid中按下按钮时执行。

  函数btn_pid_Callback(hObject,eventdata,handles)

  [t,x,y]=sim( have _ PID );

  plot(t,y);

  a=get _ param( have _ PID/Subsystem , Kp );

  b=get _ param( have _ PID/Subsystem , Ki );

  c=get _ param( have _ PID/Subsystem , Kd );

  set(handles.edit_P, string ,a);

  set(handles.edit_I, string ,b);

  set(handles.edit_D, string ,c);

  ym=max(y);

  ys=y(长度(t));

  n=1;

  ys=y(长度(t));

  n=1;

  而y(n) ys

  n=n ^ 1;目标

  set(handles.edit5, string ,tr);%上升时间

  tp=spline(t,y,ym)

  set(handles.edit6, string ,TP);%峰值时间

  l=长度(t);

  而(y(L) 0.98*ys) (y(L) 1.02*ys)

  L=L-1;目标

  ts=t(L)

  set(handles.edit7, string ,ts) %调节时间

  CTL=(ym-ys)/ys * 100;

  set(handles.edit8, string ,CTL);%超调量

  es=(ys-20)/20 * 100;

  set(handles.edit9, string ,es);%稳态误差

  % -在btn_no_pid中按下按钮时执行。

  函数btn_no_pid_Callback(hObject,eventdata,handles)

  至btn _ no _ pid的对象句柄(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  [t,x,y]=sim( no _ PID );

  plot(t,y);

  % -在btn _重置中按下按钮时执行。

  函数btn_reset_Callback(hObject,eventdata,handles)

  % h BTN _重置的对象句柄(见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hint:get(ho object, Value )返回btn _重置的切换状态

  val=get(hObject, value )

  如果val==1

  x=get(handles.edit_P, string );

  y=get(handles.edit_I, string );

  z=get(handles.edit_D, string );

  set_param(have_pid/Subsystem , Kp ,x);

  set_param(have_pid/Subsystem , Ki ,y);

  set_param(have_pid/Subsystem , Kd ,z);

  [t,x,y]=sim( have _ PID );

  plot(t,y);

  ym=max(y);

  ys=y(长度(t));

  n=1;

  ys=y(长度(t));

  n=1;

  而y(n) ys

  n=n ^ 1;目标

  set(handles.edit5, string ,tr);%上升时间

  tp=spline(t,y,ym)

  set(handles.edit6, string ,TP);%峰值时间

  l=长度(t);

  而(y(L) 0.98*ys) (y(L) 1.02*ys)

  L=L-1;目标

  ts=t(L)

  set(handles.edit7, string ,ts) %调节时间

  CTL=(ym-ys)/ys * 100;

  set(handles.edit8, string ,CTL);%超调量

  es=(ys-20)/20 * 100;

  set(handles.edit9, string ,es);%稳态误差

  n=1;

  set(handles.btn_reset, Enable , on );

  val=0;

  结束;

  函数edit5_Callback(hObject,eventdata,handles)

  % h要编辑的对象句柄5(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回第5版的内容

  % str 2 double(get(ho object, String ))以双精度形式返回第5版的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit5_CreateFcn(hObject,eventdata,handles)

  % h要编辑的对象句柄5(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit6_Callback(hObject,eventdata,handles)

  % h要编辑的对象句柄6(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回第六版的内容

  % str 2 double(get(ho object, String ))以双精度形式返回第六版的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit6_CreateFcn(hObject,eventdata,handles)

  % h要编辑的对象句柄6(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit7_Callback(hObject,eventdata,handles)

  % h要编辑的对象句柄7(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回第7版的内容

  % str 2 double(get(ho object, String ))以双精度形式返回第7版的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit7_CreateFcn(hObject,eventdata,handles)

  % h要编辑的对象句柄7(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit8_Callback(hObject,eventdata,handles)

  % h要编辑的对象句柄8(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回版本8的内容

  % str 2 double(get(ho object, String ))以双精度形式返回版本8的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit8_CreateFcn(hObject,eventdata,handles)

  % h要编辑的对象句柄8(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  函数edit9_Callback(hObject,eventdata,handles)

  % h要编辑的对象句柄9(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄包含句柄和用户数据的结构(请参见GUIDATA)

  % Hints: get(hObject, String )以文本形式返回第9版的内容

  % str 2 double(get(ho object, String ))以双精度形式返回第9版的内容

  % -在设置所有属性后,在对象创建期间执行。

  函数edit9_CreateFcn(hObject,eventdata,handles)

  % h要编辑的对象句柄9(请参见GCBO)

  % eventdata保留-将在矩阵实验室的未来版本中定义

  %句柄为空-调用所有创建Fcns后才创建句柄

  %提示:在Windows操作系统上,编辑控件通常有一个白色背景。

  %参见上海跨国采购中心有限公司和计算机。

  如果上海跨国采购中心有限公司

  set(hObject, BackgroundColor , white );

  其他

  set(ho对象, BackgroundColor ,get(0, defaultUicontrolBackgroundColor ));

  目标

  3运行结果

  四参考文献[1]范振瑞。基于矩阵实验室的PID温度控制系统设计[J]的缩写.电子科技, 2013, 26(8):164-167.

  [2]王佳庆,肖忠,王晓刚,等。基于矩阵实验室的水箱液位控制系统实验设计及教学实践[J]的缩写.高教学刊, 2020(8):3.

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: