声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3499|回复: 2

[共享资源] [转帖]二阶系统阶跃响应

[复制链接]
发表于 2006-5-25 20:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
  1. clf
  2. %
  3. zeta2=[0.2 0.4 0.6 0.8 1.0];n=length(zeta2);
  4. for k=1:n;Num{k,1}=1;Den{k,1}=[1 2*zeta2(k) 1];end
  5. S=tf(Num,Den);
  6. t=(0:0.4:20)';
  7. [Y,x]=step(S,t);
  8. tt=t*ones(size(zeta2));
  9. %
  10. clf reset,H=axes('Position', [0, 0, 1, 1], 'Visible', 'off');
  11. %
  12. str{1}='\fontname{隶书}二阶系统阶跃响应';                                                                        %<11>
  13. str{2}='y(t) = 1 - \beta^{-1}e^{-\zetat}sin(\betat + \theta)';
  14. str{3}=' ';str{4}='\fontname{隶书}其中:';
  15. str{5}='\beta = (1 - \zeta^{2})^{0.5}';
  16. str{6}='\theta = arctg(\beta/\zeta)';
  17. str{7}='\zeta = .2, .4, .6, .8, 1';                                                                                %<15>
  18. %
  19. set(gcf, 'CurrentAxes',H)                                                                                                        %<18>
  20. text(0.01, 0.73, str, 'FontSize', 12)                                                                        %<19>
  21. h1=axes('Position', [0.45, 0.45, 0.5, 0.5]);
  22. ribbon(tt,Y,0.4)
  23. %
  24. set(h1,'XTickLabelMode','manual','XTickLabel','0|0.4|0.8|1.2');%<23>
  25. set(h1,'ZTickLabel','0|1.0|2.0');                                                                                %<24>
  26. %
  27. set(get(h1,'XLabel'),'String','\zeta \rightarrow','Rotation',17.5)
  28. set(get(h1,'YLabel'),'String','\leftarrow t','Rotation',-25)        %<27>
  29. set(get(h1,'Zlabel'),'String','y \rightarrow')
  30. h2=axes('Position',[0.03, 0.08, 0.27, 0.27]);%
  31. plot(tt,Y)                                                                                                %
  32. %
  33. h3=axes('Position',[0.37,0.04,0.63,0.32]);        %
  34. set(h3,'Xlim',[0,1.2],'Ylim',[0,0.5])                        %
  35. set(h3,'DataAspectRatio',[1 1 1])                                %
  36. set(h3,'ColorOrder',[0,0,0])                                                %
  37. set(h3,'Visible','off')                                                                %
  38. hh1=rectangle('Position',[0.5,0.2,0.4,0.2],'Curvature',[0,0]);
  39.                                                                                                                                 %        <37>
  40. hh2=rectangle('Position',[0.2,0.26,0.08,0.08],'Curvature',[1,1]);
  41.                                                                                                                                 %        <38>
  42. xx1=0.05:0.01:0.2;xx2=0.28:0.02:0.5;
  43. xx3=0.9:0.02:1.1;xx4=0.24:0.02:1;
  44. yy5=0.1:0.02:0.26;yy6=0.1:0.02:0.3;
  45. yy1=0.3*ones(size(xx1));yy2=0.3*ones(size(xx2));
  46. yy3=0.3*ones(size(xx3));yy4=0.1*ones(size(xx4));
  47. xx5=0.24*ones(size(yy5));xx6=ones(size(yy6));
  48. line(xx1,yy1);line(xx2,yy2);line(xx3,yy3);line(xx4,yy4);
  49. line(xx5,yy5);line(xx6,yy6)
  50. line(0.17,0.3,'Marker','>','MarkerFaceColor','k')
  51. line(0.47,0.3,'Marker','>','MarkerFaceColor','k')
  52. line(1.1,0.3,'Marker','>','MarkerFaceColor','k')
  53. line(0.24,0.23,'Marker','^','MarkerFaceColor','k')
  54. line(0.17,0.35,'Marker','+')
  55. text(0.27,0.23,'-')
  56. text(0.05,0.35,'u(t)')
  57. text(1,0.35,'y(t)')
  58. text(0.6,0.26,'s{^2} + 2{\zeta}s');
  59. xx7=0.56:0.02:0.84;yy7=0.3*ones(size(xx7));line(xx7,yy7)
  60. text(0.68,0.35,'1')  
复制代码

[ 本帖最后由 suffer 于 2006-10-9 19:45 编辑 ]
回复
分享到:

使用道具 举报

发表于 2006-10-16 20:25 | 显示全部楼层

学习学习

楼主你的响应是用编程算的啊,我用的是SIMULINK,不知道你的图形显示是不是和用仿真的一样?
发表于 2006-10-20 15:12 | 显示全部楼层
原帖由 cybobchen 于 2006-10-16 20:25 发表
楼主你的响应是用编程算的啊,我用的是SIMULINK,不知道你的图形显示是不是和用仿真的一样?



应该是一样的,你可以做一个简单例子比较一下
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-12 16:11 , Processed in 0.061780 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表