欢迎来到天天文库
浏览记录
ID:46896250
大小:472.82 KB
页数:7页
时间:2019-11-29
《使用simulink bode图的绘制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、在Matlab中,大多时候,我们都是用M语言,输入系统的传递函数后,用bode函数绘制bode图对系统进行频率分析,这样做,本人觉得效率远不如Simulink建模高。如何在Matlab/Simulink中画bode图,以前也在网上查过些资料,没看到太多有用的参考。今天做助教课的仿真,又要画电机控制中电流环的bode图,模型已经建好,stepresponse也很容易看出来,可这bode图怎么也出不来,又不愿意用m语言写出传递函数再画。baidu和google了好一阵,几乎没有一个帖子说的清清楚楚的,经过一番摸索,终于掌握
2、了Simulink里画bode图的方法。.其实,Simulink里画bode图,非常的easy,也很方便。写此文的目的是希望对那些常用Simulink进行仿真希望画bode图又不愿用M语言的新手有所帮助。 以下均是以MatlabR2008a为例。 首先,在simulink里建好model。如图1,这里需要注意的是,输入和输出要用inputport和outputport,这样以后画bode图的时候,系统就会知道是这两个变量之间的关系。图1建好model其次,选择线性分析。Tools->ControlDesign-
3、>LinearAnalysis。如图2。图2选择LinearAnsysis将出现如图3所示的ControlandEstimationToolsManager窗口。图3ControlandEstimationToolsManager窗口第三步,激动人心的时刻到了,哈哈。如果你是按照前面的步骤来的,那么这时候,你就应该可以直接画出bode图,在窗口的下方,将“Plotlinearanalysisresultina”前面的方框打上勾,已打的就不用管了,再在后面的下拉框里选择“boderesponseplot”,即画outpu
4、tport和inputport之间的bode图,再点击“LinearizeModel”按钮,就OK了。其实除了bode图,还可以画其他很多响应曲线,比如stepresponse、impulseresponse和Nyquist图等等,只需选择相应的stepresponseplot,inpulseresponseplot或者Nyquistplot等等。方法都是相同的。选择选择“boderesponseplot”,如图4所示。图4画出bode图稍等片刻,便出现了图1中outputport和inputport的bode图了。是
5、不是很简单?!图5model的bode图至此,bode已经画完。如果此时还想看看stepresponse或者Nyquist图,也是可以的。只需在bode图上右击,选择PlotTypes->Step或者Nyquist等等,asyouneed!我们选择step,便会出现阶跃响应图。如图6、7所示。图6画阶跃响应 图7显示阶跃响应 上面的bode图和stepresponse都没有网格,看着不精确,没关系。在图上右击,选择Grid,就能出现网格了。想要知道曲线上某点的坐标时,只需在该点上单击,就会显示出该点的坐标值。如图8
6、a,8b。图8a图8b显示网格和曲线上的坐标 关于图画里的操作,就介绍这么多,其他的功能自己去摸索。 回到图3中的ControlandEstimationToolsManager窗口。在该窗口中,除了可以画bode图之外,还可以看到系统的状态方程、传递函数或者零极点方程。运行完“LinearizeModel”后,单击左侧“LinearizationTask”下的“Model”,在下方的下拉列表里选择“ZeroPoleGain”(也可以选择“StateSpace”或者“TranseferFuncit
7、on”),就能看到系统输入输出的零极点增益方程。如下图9。 图9查看系统输入输出之间的关系描述(状态议程、零极点增益、传递函数) 通过LinearAnalysis工具,我们可以得到很多关于系统的直观的或者非直观的信息,如bode图、Nyquist图、状态方程、传递函数等等。 以上简单介绍了Matlab/Simulink中利用ControlDesign的LinearAnalysis绘制系统的bode图,及查看系统输入输出关系的描述。Matlab的功能十分强大,还有许多功能需要探索,以便其更好的帮助我
8、们完成系统建模仿真和控制等
此文档下载收益归作者所有