91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 37KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-06-01
  • 語(yǔ)言: Matlab
  • 標(biāo)簽: 模糊pid??

資源簡(jiǎn)介

大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真.rar

資源截圖

代碼片段和文件信息

function?[sysx0strts]=fuzzy01(txuflag)
switch?flag
case?0?%?初始化
????[sysx0strts]?=?mdlInitializeSizes;
????case?2?
????????sys=mdlUpdates(xu);
????
????

case?3?%?計(jì)算輸出量,亦即控制率和權(quán)值
????sys?=?mdlOutputs(x);
case?{1?4?9}?%?未定義的?flag?值
????sys?=?[];
otherwise?%?錯(cuò)誤處理
????error([‘Unhandled?flag?=?‘num2str(flag)]);
end;
function?[sysx0strts]?=?mdlInitializeSizes
sizes?=?simsizes;?%?讀入系統(tǒng)變量的默認(rèn)值
sizes.NumContStates?=?0;?%?沒(méi)有連續(xù)狀態(tài)
sizes.NumDiscStates?=?3;?%?設(shè)置三個(gè)離散狀態(tài),亦即權(quán)值
sizes.NumOutputs?=?3;?%?設(shè)置四路輸出,分別為控制率和歸一化的權(quán)值
sizes.NumInputs?=?2;?%?設(shè)置四路輸入,分別為誤差的三個(gè)時(shí)刻值即控制率
sizes.DirFeedthrough?=?0;?%?輸入信號(hào)直接在輸出中反映出來(lái)
sizes.NumSampleTimes?=?1;?%?單采樣速率系統(tǒng)
sys?=?simsizes(sizes);?%?設(shè)置系統(tǒng)模型變量
x0?=?[0;0;0];?%?初始狀態(tài)變量,亦即權(quán)值,設(shè)置成隨機(jī)數(shù)
str?=?[];?ts?=?[10?0];?%?繼承輸入信號(hào)的采樣周期




function?sys?=?mdlUpdates(xu)
if??u(1)>200
????sys=[12.5;0;1250]
else





a=newfis(‘fuzzpid‘);

a=addvar(a‘input‘‘e‘[010]);?%Parameter?e
?????
;
a=addmf(a‘input‘1‘Z‘‘zmf‘[03]);
a=addmf(a‘input‘1‘PS‘‘trimf‘[036]);
a=addmf(a‘input‘1‘PM‘‘trimf‘[3610]);
a=addmf(a‘input‘1‘PB‘‘smf‘[610]);

a=addvar(a‘input‘‘ec‘[-33]);?%Parameter?ec


a=addmf(a‘input‘2‘Z‘‘zmf‘[01]);
a=addmf(a‘input‘2‘PS‘‘trimf‘[012]);
a=addmf(a‘input‘2‘PM‘‘trimf‘[123]);
a=addmf(a‘input‘2‘PB‘‘smf‘[23]);

a=addvar(a‘output‘‘kp‘[03]);?%Parameter?kp

??????
a=addmf(a‘output‘1‘Z‘‘zmf‘[01]);
a=addmf(a‘output‘1‘PS‘‘trimf‘[012]);
a=addmf(a‘output‘1‘PM‘‘trimf‘[123]);
a=addmf(a‘output‘1‘PB‘‘smf‘[23]);

a=addvar(a‘output‘‘ki‘[00.0003]);?%Parameter?ki


a=addmf(a‘output‘2‘Z‘‘zmf‘[00.0001]);
a=addmf(a‘output‘2‘PS‘‘trimf‘[00.00010.0002]);
a=addmf(a‘output‘2‘PM‘‘trimf‘[0.00010.00020.0003]);
a=addmf(a‘output‘2‘PB‘‘smf‘[0.00020.0003]);

a=addvar(a‘output‘‘kd‘[0300]);?%Parameter?kp


a=addmf(a‘output‘3‘Z‘‘zmf‘[0100]);
a=addmf(a‘output‘3‘PS‘‘trimf‘[0100200]);
a=addmf(a‘output‘3‘PM‘‘trimf‘[100200300]);
a=addmf(a‘output‘3‘PB‘‘smf‘[200300]);

rulelist=[
1?1?1?4?1?1?1;
1?2?4?4?1?1?1;
1?3?4?4?1?1?1;
1?4?3?4?1?1?1;


2?1?2?3?2?1?1;
2?2?4?3?2?1?1;
2?3?4?4?2?1?1;
2?4?3?3?1?1?1;


3?1?3?1?3?1?1;
3?2?3?1?3?1?1;
3?3?3?2?3?1?1;
3?4?2?2?3?1?1;
%*******************************************

4?1?4?1?4?1?1;
4?2?4?1?4?1?1;
4?3?4?1?4?1?1;
4?4?2?1?2?1?1;]


a=addrule(arulelist);
a=setfis(a‘DefuzzMethod‘‘mom‘);
writefis(a‘fuzzpid‘);



a=readfis(‘fuzzpid‘);

k_pid=evalfis([u(1)u(2)]a)
kp0=10;kd0=1250;ki0=0.000289;

sys(11)=kp0+k_pid(11)*2
sys(21)=ki0+k_pid(12)
sys(31)=kd0+k_pid(13)*2
end

?
function?sys?=?mdlOutputs(x)
sys=x




?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件??????21821??2007-12-22?22:56??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\fu1.mdl

?????文件???????2884??2007-12-21?21:58??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\fuz2164.m

?????文件???????1212??2007-12-25?12:10??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\fuzzpid.fis

?????文件??????40826??2007-12-25?12:11??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\fuzzypid.mdl

?????文件??????35293??2007-12-25?12:11??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\putongpid.mdl

?????文件??????64512??2007-12-22?22:55??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\基于S函數(shù)實(shí)現(xiàn)的參數(shù)自整定模糊PID控制器.doc

?????文件????????146??2007-12-21?11:27??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾\附2.txt

?????文件???????3543??2009-02-01?16:19??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\使用幫助:新手必看.htm

?????文件????????183??2009-02-02?09:47??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\Matlab中文論壇--助努力的人完成畢業(yè)設(shè)計(jì).url

?????目錄??????????0??2009-04-09?16:37??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真\新建文件夾

?????目錄??????????0??2009-04-09?16:46??大時(shí)滯系統(tǒng)的模糊控制MATLAB仿真

-----------?---------??----------?-----??----

???????????????170420????????????????????11


評(píng)論

共有 條評(píng)論