欢迎来到天天文库
浏览记录
ID:12667516
大小:127.00 KB
页数:4页
时间:2018-07-18
《matlab中bode图的绘制技巧》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Matlab中Bode图的绘制技巧我们经常会遇到使用Matlab画伯德图的情况,可能我们我们都知道bode这个函数是用来画bode图的,这个函数是Matlab内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。譬如我们要画出下面这个传递函数的伯德图:1.576e010s^2H(s)=------------------------------------------------------------------------------------------
2、s^4+1.775e005s^3+1.579e010s^2+2.804e012s+2.494e014(这是一个用butter函数产生的2阶的,频率范围为[2020K]HZ的带通滤波器。)我们可以用下面的语句:num=[1.576e010 0 0];den=[11.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H)这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s
3、,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上gridon解决)。下面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptions我们可以看到以下内容:ans=Title:[1x1struct]XLabel:[1x1struct]YLabel:[1x1struct]TickLabel:[1x1struct]Grid:'off'XLim:{[110]}XLimMode:{'auto'}YLim:{[110]}YLim
4、Mode:{'auto'}IOGrouping:'none'InputLabels:[1x1struct]OutputLabels:[1x1struct]InputVisible:{'on'}OutputVisible:{'on'}FreqUnits:'rad/sec'FreqScale:'log'MagUnits:'dB'MagScale:'linear'MagVisible:'on'MagLowerLimMode:'auto'MagLowerLim:0PhaseUnits:'deg'PhaseVisib
5、le:'on'PhaseWrapping:'off'PhaseMatching:'off'PhaseMatchingFreq:0PhaseMatchingValue:0我们可以通过修改上面的每一项修改伯德图的风格,比如我们使用下面的语句画我们的伯德图:P=bodeoptions;P.Grid='on';P.XLim={[10 40000]};P.XLimMode={'manual'};P.FreqUnits='HZ';num=[1.576e010 0 0];den=[11.775e00
6、5 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H,P)这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ,范围是[1040K]HZ,而且打开了网格,便于我们观察-3DB处的频率值。当然,你也可以改变bodeoptions中的其它参数,做出符合你的风格的伯德图。是这样的,运行命令ctrlpref,出现控制系统工具箱的设置页面,Units改为Hz就好了R=abs(Z)theta=angle(Z)
此文档下载收益归作者所有