資源簡介
使用matlab仿真的一個buck降壓斬波電路,將帶有PI控制器的電路與無PI控制器的電路響應做對比。其中PI控制器采用的是使用S函數編寫的控制器,進行簡單的修改就可以在仿真中實現專家PI控制等等,控制器的輸入參數有Kp,Ki以及控制器輸出的上下限定值。因為控制器直接控制的是PWM的脈沖寬度,所以控制器的輸出值限定在0到100之間。MySource用來將要求的電壓與電源的電壓100v進行對比,從而輸出相應脈沖寬度的PWM波形給IGBT。
代碼片段和文件信息
function?[sysx0strtssimStateCompliance]?=?MySource(txuflagTT)
switch?flag
??case?0
????[sysx0strtssimStateCompliance]=mdlInitializeSizes(txuflagTT);
??case?1
????sys=mdlDerivatives(txu);
??case?2
????sys=mdlUpdate(txu);
??case?3
????sys=mdlOutputs(txu?TT);
??case?4
????sys=mdlGetTimeOfNextVarHit(txu);
??case?9
????sys=mdlTerminate(txu);
??otherwise
????DAStudio.error(‘Simulink:blocks:unhandledFlag‘?num2str(flag));
end
function?[sysx0strtssimStateCompliance]=mdlInitializeSizes(txuflagTT)
sizes?=?simsizes;
sizes.NumContStates??=?0;
sizes.NumDiscStates??=?0;
sizes.NumOutputs?????=?1;
sizes.NumInputs??????=?2;
sizes.DirFeedthrough?=?1;
sizes.NumSampleTimes?=?1;???%?at?least?one?sample?time?is?needed
sys?=?simsizes(sizes);
x0??=?[];
str?=?[];
ts??=?[TT/10?0];
simStateCompliance?=?‘UnknownSimState‘;
function?sys=mdlDerivatives(txu)
sys?=?[];
function?sys=mdlUpdate(txu)
sys?=?[]
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????19788??2015-06-27?19:44??Buck\Buck.slx
?????文件???????1334??2015-06-26?17:54??Buck\MySource.m
?????文件???????1472??2015-04-17?20:28??Buck\PI_Controller.m
?????目錄??????????0??2015-06-29?17:28??Buck
-----------?---------??----------?-----??----
????????????????22594????????????????????4
- 上一篇:matlab對各種光纖光柵的仿真
- 下一篇:MATLAB圖像紋理特征提取代碼
評論
共有 條評論