• 大小: 33KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-09
  • 语言: Matlab
  • 标签: S函数  智能控制  

资源简介

本资源为基于BP神经网络PID控制应用在双闭环直流调速系统中,各参数已调好,可完美运行。如有怀疑请查看我的博客:基于BP神经网络控制+Simulink双闭环直流调速系统仿真 地址:https://blog.csdn.net/weixin_42650162/article/details/95518842 博客里有各种情况的仿真波形,可查看学习

资源截图

代码片段和文件信息

function [sysx0strtssimStateCompliance] = nnbp_pid(txuflagTnhxitealfaK1K2)
switch flag
  case 0
    [sysx0strtssimStateCompliance]=mdlInitializeSizes(Tnh);
%初始化函数
  case 3
    sys=mdlOutputs(txunhxitealfaK1K2);
%输出函数
  case {1249}
    sys=[];
  otherwise
    DAStudio.error(‘Simulink:blocks:unhandledFlag‘ num2str(flag));
end
function [sysx0strtssimStateCompliance]=mdlInitializeSizes(Tnh)
%调用初始画函数,两个外部输入参数 参数T确定采样时间,参数nh确定隐含层层数
sizes = simsizes;
sizes.NumContStates  = 0;
sizes.NumDiscStates  = 0;
sizes.NumOutputs     = 4+6*nh;
%定义输出变量,包括控制变量u隐含层+输出层所有加权系数
sizes.NumInputs      = 7+12*nh;
%定义输入变量,包括前7个参数[e(k);e(k-1);e(k-2);y(k);y(k-1);r(k);u(k-1)]
%隐含层+输出层权值系数(k-2)隐含层+输出层权值系数(k-1)
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1; 
sys = simsizes(sizes)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      73439  2019-07-11 21:14  BP_PID双闭环直流调速系统\bp_pid.mdl

     文件      22288  2019-07-11 21:16  BP_PID双闭环直流调速系统\Help.docx

     文件       2828  2019-07-11 09:47  BP_PID双闭环直流调速系统\nnbp_pid.m

     目录          0  2019-07-11 21:16  BP_PID双闭环直流调速系统

----------- ---------  ---------- -----  ----

                98555                    4


评论

共有 条评论