資源簡(jiǎn)介
本資源為基于BP神經(jīng)網(wǎng)絡(luò)的PID連續(xù)控制系統(tǒng)Simulink仿真模型,BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法通過(guò)S-function函數(shù)編寫(xiě),各個(gè)參數(shù)已調(diào)好,可完美運(yùn)行。如有懷疑,請(qǐng)瀏覽我的博客:基于BP神經(jīng)網(wǎng)絡(luò)PID控制+Simulink仿真 地址:https://blog.csdn.net/weixin_42650162/article/details/90678503
代碼片段和文件信息
function?[sysx0strtssimStateCompliance]?=?nnbp(txuflagTnhxitealfa)
switch?flag
??case?0
????[sysx0strtssimStateCompliance]=mdlInitializeSizes(Tnh);
%初始化函數(shù)
??case?3
????sys=mdlOutputs(txunhxitealfa);
%輸出函數(shù)
??case?{1249}
????sys=[];
??otherwise
????DAStudio.error(‘Simulink:blocks:unhandledFlag‘?num2str(flag));
end
function?[sysx0strtssimStateCompliance]=mdlInitializeSizes(Tnh)
%調(diào)用初始畫(huà)函數(shù),兩個(gè)外部輸入?yún)?shù)?參數(shù)T確定采樣時(shí)間,參數(shù)nh確定隱含層層數(shù)
sizes?=?simsizes;
sizes.NumContStates??=?0;
sizes.NumDiscStates??=?0;
sizes.NumOutputs?????=?4+6*nh;
%定義輸出變量,包括控制變量u隱含層+輸出層所有加權(quán)系數(shù)
sizes.NumInputs??????=?7+12*nh;
%定義輸入變量,包括前7個(gè)參數(shù)[e(k);e(k-1);e(k-2);y(k);y(k-1);r(k);u(k-1)]
%隱含層+輸出層權(quán)值系數(shù)(k-2)隱含層+輸出層權(quán)值系數(shù)(k-1)
sizes.DirFeedthrough?=?1;
sizes.NumSampleTimes?=?1;?
sys?=?simsizes(sizes);
x0??=?[];
str?=?[];
ts??=?[T?0];
simStateCompliance?=?‘UnknownSimState‘;
function?sys=mdlOutputs(txunhxitealfa)
%調(diào)用輸出函數(shù)
wi_2?=?reshape(u(8:7+3*nh)nh3);
%隱含層(k-2)權(quán)值系數(shù)矩陣,維數(shù)nh*3
wo_2?=?reshape(u(8+3*nh:7+6*nh)
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????17502??2019-05-30?11:09??BP_PID.slx
?????文件?????158986??2019-05-30?11:15??Help.docx
?????文件???????2608??2019-05-30?10:35??nnbp.m
-----------?---------??----------?-----??----
???????????????179096????????????????????3
評(píng)論
共有 條評(píng)論