24小时热门版块排行榜    

查看: 1593  |  回复: 0

无情人的伤痛

铜虫 (初入文坛)

[求助] simulink s 函数仿真求助

%Single Neural Net PID Decouple Controller based on Hebb Learning
%Algorithm to adjust kp,ki,kd
function [sys,x0,str,ts]=sn_pidf(t,x,u,flag)
switch flag,
case 0           % initializations
    [sys,x0,str,ts] = mdlInitializeSizes;
case 2           % discrete states updates
    sys = mdlUpdates(x,u);
case 3           % computation of control signal
    sys=mdlOutputs(t,x,u);
case {1, 4, 9}   % unused flag values
    sys = [];
otherwise        % error handling
    error(['Unhandled flag = ',num2str(flag)]);
end;

%==============================================================
% when flag=0, perform system initialization
%==============================================================
function [sys,x0,str,ts] = mdlInitializeSizes
sizes = simsizes;        % read default control variables    定义一个结构体
sizes.NumContStates = 0; % no continuous states
sizes.NumDiscStates = 3; % 3 states and assume they are the P/I/D components
sizes.NumOutputs = 1;    % 2 output variables: control u(t) and state x(3)
sizes.NumInputs = 4;     % 4 input signals
sizes.DirFeedthrough = 1;% input reflected directly in output
sizes.NumSampleTimes = 1;% single sampling period
sys = simsizes(sizes);   % 返回size数据结构所包含信息
x0 = [0; 0; 0];          % zero initial states
str = [];
ts = [-1 0];             % sampling period
%==============================================================
% when flag=2, updates the discrete states
%==============================================================
function sys = mdlUpdates(x,u)
% T=1;  
sys=[ x(1)+1.2*u(1)*u(4)*u(1);
      x(2)+8.2*u(1)*u(4)*u(2);
      x(3)+0.2*u(1)*u(4)*u(3)];
% sys=[x(1);x(2);x(3);u(1)];

%==============================================================
% when flag=3, computates the output signals
%==============================================================
function sys = mdlOutputs(t,x,u)
% persistent wkp1_1 wki1_1 wkd1_1 u1_1
% xiteP=0.60;
% xiteI=0.60;
% xiteD=0.60;
%
% if t==0  %Initilizing kp,ki and kd
%     wkp1_1=0.3;
%     wki1_1=0.3;
%     wkd1_1=0.3;
%     u1_1=0;
% end
%
% %Adjusting NNC Weight Value by adopting hebb learning algorithm
%    wkp1=wkp1_1+xiteP*x(1)*u1_1*x(1);  %P      此处x(1)相当于e(k)
%    wki1=wki1_1+xiteI*x(1)*u1_1*x(2);  %I
%    wkd1=wkd1_1+xiteD*x(1)*u1_1*x(3);  %D
%
%    wadd1=abs(wkp1)+abs(wki1)+abs(wkd1);     %归一化处理
%    w111=wkp1/wadd1;
%    w122=wki1/wadd1;
%    w133=wkd1/wadd1;
%    w1=[w111,w122,w133];
%    k1=0.20;                             %非改进神经元PID控制中K值
%    u1=k1*w1*x;
%   
%    wkp1_1=wkp1;
%    wkd1_1=wkd1;
%    wki1_1=wki1;
%
%    u1_1=u1;

   sys=u(4)+(0.003+0.0002*abs(u(1))+0.075*abs(u(2))*(abs(1))*u(1)+abs(x(2))*u(2)+abs(x(3))*u(3))/(abs(x(1))+abs(x(2))+abs(x(3)));





上程序为一个单神经元PID simulink s函数,为何运行时出现输入参数数目不足,是在mdl中输入设置有关还是?本人刚刚接触simulink,希望大侠们能够详细解释一下,或者能够给一个单神经元PID控制的simulink例程也成,好让我仔细研究一下
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 无情人的伤痛 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +5 瞬息宇宙 2026-09-01 11/550 2026-09-02 14:15 by simwe390
[基金申请] 要骂人了,新模版改版就是要淡化问题凝练这种虚的东西,结果有个评委还在说凝练得不够 +9 瞬息宇宙 2026-08-31 17/850 2026-09-02 14:04 by anjeeshine
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 10/500 2026-09-02 11:35 by 大不刘6
[基金申请] 学科评审组评审是指会评吗? +5 瞬息宇宙 2026-08-31 5/250 2026-09-02 10:13 by 雨冰共舞
[文学芳草园] 梦想 +5 myrtle 2026-08-26 8/400 2026-09-02 02:42 by Leogzhya
[基金申请] 面上合作单位盖章 +6 ssyjh 2026-08-27 9/450 2026-09-01 20:01 by huagongfeihu
[基金申请] 面上函评意见出来了,像什么等级? 20+4 Tsingking1 2026-08-27 17/850 2026-09-01 19:51 by 超级无敌华子
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +13 Kittylucky 2026-08-27 14/700 2026-09-01 11:06 by feng6531
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +7 gdd2018 2026-08-28 12/600 2026-09-01 08:32 by 尼古拉斯小虫
[基金申请] 国社科又开始会评了,不知道这次命运如何 +7 雨打竹帘 2026-08-30 11/550 2026-08-31 23:16 by hittle2008
[基金申请] 基金未中,这种答复是模板吗? +6 zhaosm1982 2026-08-27 7/350 2026-08-31 21:18 by qdxxmc
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
信息提示
请填处理意见