⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bodepl.m

📁 基于MATLAB的辅助设计 简述了矩阵分析的重要性
💻 M
字号:
%
%  BODEPL   is the M-file which generate the required Bode
%    diagram for the given system over the frequency range
%    of w_range.      

%    Author:  Ole Barup Sorensen, Rapid Data Ltd 

%    Copyright (c) 1989-94 by Rapid Data Ltd
%    Revision 10:36  07/02/94

okflag=figflag(tit1,0);

if okflag==0
  Fig7=figure('Numbertitle','off','Name',tit1,'Menubar','none',...
  'Units','Normal','Position',[160/Scx 60/Scy 440/Scx 350/Scy]);
  set(0,'currentfig',Fig7);

% design menu
  pt_menu
  uimenu(Han_fil,'Label','Close','Sep','on','Callback',...
  'close(Fig7);clear Fig7');
end
w_range=logspace(w_start,w_end,pt);
config;
delete(gca);

set([gca],'color',[1 1 1])

if t_delay == 0
   [mmm,ddd]=bode(num,den,w_range);
else
   if cloop == 1
      n0 = size(H_den);
      if n0(2) == 1, 
         cmpc = num(1)/den(1)*ones(size(w_range'));
      else
         [mmm,ddd] = nyquist(H_num,H_den,w_range);
         cmpc = mmm + sqrt(-1) * ddd;
      end
   end
   [mmm,ddd] = timdly(cloop,num,den,w_range,t_delay,cmpc);
end
if id > 9
   if t_delay == 0
      [mmmx,dddx] = bode(numx,denx,w_range);
   else
      [mmmx,dddx] = timdly(cloop,numx,denx,w_range,t_delay,cmpc);
   end
end
mmm = 20 * log10(mmm); mmm0 = mmm;
if id > 9
   mmmx = 20*log10(mmmx);
   mmm0 = [mmm0 mmmx]; ddd = [ddd dddx]; clear dddx
end
if ipp ~= 1,
   md1 = asymp(num,den,mmm,w_range);
   mmm0 = [mmm0 md1']; clear md1
   if id > 9
      md2 = asymp(numx,denx,mmmx,w_range);
      mmm0 = [mmm0 md2']; clear md2 mmmx
   end
end
subplot(1,1,1);
if choice == 1,
  subplot(2,1,1); 
end

if choice <=2;
  semilogx(w_range,mmm0); grid
  xlabel('Frequency')
  ylabel('Magnitude (dB)')
end;

if ipp == 1
   if id <= 9
      title('Exact Bode Diagram')
   else
      title(' Exact Bode Diagram - Yellow: Compensated')
   end
elseif ipp == 2
   title('Exact and Asymptotic Bode Diagrams')
end

if choice == 1
   subplot(2,1,2)
end
if ((choice ==1)|(choice==3)),
   semilogx(w_range,ddd)
   grid
   ylabel('Phase')
   xlabel('Frequency')
end

if choice == 2
  if id <= 9
    title('Exact Bode Diagram')
  else
    title(' Exact Bode Diagram - Yellow: Compensated')
  end
end


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -