使用simulinkbode图的绘制
波德图实现
实验(三):控制系统的对数频率特性— 波德(Bode )图一、实验目的1. 利用计算机绘制系统的波德图;2. 观察记录控制系统的开环频率特性;3. 控制系统的开环频率特性分析。
二、实验步骤1. 开机执行程序:c:\matlab\bin\matlab.exe (或用鼠标双击图标)进入MATLAB 命令窗口:“Command Window”。
2. 给定系统开环传递函数G 0(s )的多项式模型,绘制系统的波德图。
计算公式为:G 0(s ) =)()(s den s num 式中,num 为开环传递函数G 0(s )的分子多项式系数向量,den 为G 0(s )的分母多项式系数向量。
函数格式1:bode(num,den)给定num 、den 作波德图,角频率向量w 的范围自动设定。
函数格式2:bode(num,den,w )角频率向量w 的范围可以由人工给定。
w 为对数等分,由对数等分函数logspace ( ) 完成,例如:w =logspace(-1,1,100)。
函数格式3:[mag, phase, w ]=bode(num,den)返回变量格式。
计算所得的幅值mag 、相角phase 及角频率w 返回至MATLAB 命令窗口,不作图。
更详细的命令说明,可键入“help bode”在线帮助查阅。
例如:系统的开环传递函数:G 0(s )=102102++s s 其作图程序如下:num = [10];den = [1 2 10];bode (num,den);w =logspace (-1,1,32);bode (num,den,w );注:(1)MATLAB 指令logspace (d1,d2,n)其作用是:将变量w 作对数等分。
命令中d1、d2为10d1~10d2之间的变量范围,n 为等分点数。
(2)MATLAB 指令semilogx (x,y)其作用是:半对数绘图命令,函数格式与plot ( ) 相同。
BODE图画图过程
电机定位系统校正(BODE图)MATLAB软件具有强大的计算能力和绘图功能,能够快速、准确地做出频域特性曲线。
利用MATLAB^制系统的Bode图,为控制系统设计和分析提供了极大的方便。
1.创建M-file文挡,并输入如下程序,运行后生成LTI对象my_sys:J=3.2284e-6;b=3.5077e-6;K=0.0274;R=4;L=2.75e-6;num=[0 0 0 K];den=[(J*K) (J*R+(L*b)) ((b*R)+O2) 0]; my_sys=tf( nu m,de n);打开Matlab7.0软件,并新建一个空文档,将程序复制到文档内,如图1所示:图12.运行程序并保存运行结果。
如图2所示:图2图43. 打开 Start-Toolboxes — ControlSystem — SISO Design Tool启动SISO Design,如图3所示4. 将my_sys 程序导入到SISO Design Tool 中, 如图4所示啪号TW Hi^vicn ToniP il ■ ErLE ・ Vi, mr r za-ipMi-i k t Dqri £x> al>1* E □'l'l. •冷日■丁 11*』]1卜l>] X o 4 T 11; »M s K 1 mi4||'=4Dp山 watLa ft — 15-S-IQ Jt 午肌"■存-i-s — 15-5-in 上午恥ny_2F2c !x|F L 1« Edu I 上LIM tmp viiK«l&rl 姿kl 尸L C. TadulllaJpIIH n y. L R ann曲闻出田画田田刚Dur r ■n.l 卫a r nryCtiaiTijinfl Hi ®f-15-5-JQ 上牛奔■■■jip.sygG ii — 15-5-10 上午和 iSB (TT = EJS >尺jgtrt.Hci nr ||T ^ nkm 1rn mfi B * njrtlini£>■ |si90 ・ui.fi 1 v f Ja S D .EM 1 色■'i -Fi'Mii ^mpp+if-slnrCi|r TBH.*: n i. B-Bf I arv^(Bft-olKl fir tiv? for “偷史 俺±&n )埔1口曲riw^uefCf rijSr.14 fftcrt图65.在View 菜单中,关闭根轨迹显示,只显示开环的 Bode 图。
动态系统建模仿真
动态系统建模与仿真实验报告学生姓名:杨康学号:ZY1203226实验一 直流电动机建模及仿真实验一、实验目的(1)了解直流电动机的工作原理; (2)了解直流电动机的技术指标; (3)掌握直流电动机的建模及分析方法;(4)学习计算直流电动机频率特性及时域响应的方法。
二、实验设备(1)系统实验平台:建模仿真实验平台。
(2)PC 机:P4 2.4G ,内存512M ,硬盘120G 。
(3)IBM 服务器。
(4)网络交换机、集线器。
(5)工具软件:操作系统:Windows2000以上;软件工具:MATLAB 。
三、实验原理及实验要求实验原理:直流电机电枢回路的电路方程是:dt diLiRa E u a +=- (3.1)其中,a u 是加到电机两端的电压,E 是电机反电势,i 是电枢电流, Ra 是电枢回路总电阻, L 是电枢回路总电感, l LaT Ra=称为电枢回路电磁时间常数。
并且反电动势E 与电机角速度m ω成正比:me m e k k E θω == (3.2)其中e k 称为反电势系数,m θ为电机轴的转角。
对于电机而言,其转动轴上的力矩方程为:mm m m l m J J M i k θω ==- (3.3)其中m k 是电机的力矩系数, l M 是负载力矩, J 是电机电枢的转动惯量。
进行拉式变换得到:⎪⎩⎪⎨⎧=-=+=-s s J M s I k s k s E s s I T s I Ra s E s Ua m m l m m e l )()()()())()(()()(θθ(3.4)由此方程组可以得到相应的电动机数学模型的结构框图:图3.1直流电动机数学模型结构框图实验要求:(1)根据电机的工作原理(电压平衡方程、力矩平衡方程)建立从电枢电压a u 到转速m θ⋅的传递函数模型,并根据表1所给电机参数求其频率特性。
表1共给出了两个电机的参数,其中A 为大功率电机,B 为小电机。
BODE图的讲解
§5.7 利用闭环频率特性分析系统的性能
共二十三页
§5.3
对数(duì shù)频率特性 ( Bode )
Bode图介绍
(jièshào)
共二十三页
§5.3
对数(duì shù)频率特性 ( Bode)(2)
Bode图介绍(jièshào)
横轴 按 lg 刻度,dec “十倍频程”
绘制开环系统(xìtǒng)Bode图的 步骤
⑴ 化G(j)为尾1标准型
⑵ 顺序列出转折频率
例1
G(s)
s(
40(s 0.5) 0.2)( s2 s 1)
100( s 1)
G(s)
0.5
s( s 1)(s2 s 1)
0.2
0.2 惯性环节
0.5 一阶复合微分
1 振荡环节
⑶ 确定低频特性
例1 根据(gēnjù)Bode图确定系统传递函数。
解. 依图有 G(s) K
Ts 1
30
20lg K 30 K 1020 31.6
转折频率 2 1 T T 0.5
G(s)
3.16 s 1
2
• Bode图与Nyquist图之间的对应(duìyìng)
关系: • 截止频率c:G( jc ) 1
最小转折频率之左 的特性或其延长线
基准点 ( 1, L(1) 20lg K ) 斜率 20 v dB dec
⑷ 叠加作图
一阶
二阶
惯性环节 -20dB/dec
复合微分 +20dB/dec
振荡环节 -40dB/dec
复合微分 +40dB/dec
共二十三页
0.2 惯性环节 -20
如何绘制伯德图
1
s2
K n 2 2ns n2
讨论 0 1时旳情况。当K=1时,频率特征为:
G(
j )
(1 T
1
2 2 )
j2T
幅频特征为:
A( )
1
(1 T 2 2 )2 (2T )2
相频特征为:
(
)
tg
1
1
2T T 2
2
对数幅频特征为:L() 20 log A() 20 log (1 T 2 2 )2 (2T )2
2
当 1 时,有谐振峰值。
2
M p A( p ) 2
1
1 2
由幅频特征
A( )
1
(1 T 2 2 )2 (2T )2
当
0
,A(0 )
1
2
,L(0) 20lg 2 。
所以在转折频率附近旳渐近线依不同阻尼系数与实际曲线可能
有很大旳误差。
11/29/2023
10
幅值 A()与 T 旳关系:
T 2.0 3.0 4.0 5.0 7.0 10 20 50 100
( ) -63.4 -71.5 -76 -78.7 -81.9 -84.3 -87.1 -88.9 -89.4
当 0时,(0) 0;当 1 时,( 1 ) ;当 时,() 。
T
T4
2
由图不难看出相频特征曲线在半对数坐标系中对于(0, -45°)
2
L( ) 20lg (1 T 2 2 )2 (2T )2
低频渐近线: T 1时,L() 0
高频渐近线: T 1时,L( ) 20lg (1 T 2 2 )2 (2T )2 40logT
转折频率为:o
1 T
Matlab中Bode图的绘制技巧(精)
Matlab中Bode图的绘制技巧我们经常会遇到使用Matlab画伯德图的情况,可能我们我们都知道bode这个函数是用来画bode 图的,这个函数是Matlab内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。
譬如我们要画出下面这个传递函数的伯德图:1.576e010 s^2H(s= ------------------------------------------------------------------------------------------s^4 + 1.775e005 s^3 + 1.579e010 s^2 + 2.804e012 s + 2.494e014(这是一个用butter函数产生的2阶的,频率范围为[20 20K]HZ的带通滤波器。
我们可以用下面的语句:num=[1.576e010 0 0];den=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den;bode(H这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上grid on解决)。
下面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptions我们可以看到以下内容:ans =Title: [1x1 struct] XLabel: [1x1 struct] YLabel: [1x1 struct] TickLabel: [1x1 struct] Grid: 'off'XLim: {[1 10]} XLimMode: {'auto'} YLim: {[1 10]} YLimMode: {'auto'} IOGrouping: 'none' InputLabels: [1x1 struct] OutputLabels: [1x1 struct] InputVisible: {'on'} OutputVisible: {'on'} FreqUnits: 'rad/sec' FreqScale: 'log' MagUnits: 'dB' MagScale: 'linear' MagVisible: 'on' MagLowerLimMode: 'auto' MagLowerLim: 0 PhaseUnits: 'deg' PhaseVisible: '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=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den;bode(H,P这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ,范围是[1040K]HZ,而且打开了网格,便于我们观察-3DB处的频率值。
控制系统仿真 计算机辅助设计 matlab simulink 2010版PPT 100510基传递函数模型的控制系统设计-Bode图法
Bode图法基本要求为了获得比较高的开环增益及满意的相对稳定性,必须改变开环频率特性响应曲线的形状,这主要体现为:1)在低频区和中频区增益应该足够大,2)且中频区的对数幅频特性的斜率应为-20dB/dec,并有足够的带宽,以保证适当的相角裕度;3)而在高频区,要使增益尽可能地衰减下来,以便使高频噪声的影响达到最小。
Bode图设计方法的频域指标为。
K c ,,ωγ基本思路在Bode图中的对数频率特性的低频区表征了闭环系统的稳态特性,中频区表征了系统的相对稳定性和响应性,而高频区表征了系统的抗干扰特性。
在大多数实际情况中,校正问题实质上是在稳态精度和相对稳定性之间取折衷的问题。
05101520M a g n i t u d e (d B )10-11010110210310403060P h a s e (d e g )Bode DiagramFrequency (rad/sec)串联超前校正描述:超前校正装置的主要作用是改变系统开环Bode 图中曲线的形状来产生足够大的超前相角,以补偿原系统中过大的相角滞后,从而提高系统的相对稳定性,致使闭环系统的频带扩宽。
设超前校正装置的传递函数为TsaTss G c ++=11)(1>a mm a φφsin 1sin 1−+=alg 10mφ串联超前校正Bode图的几何设计方法1.根据稳态指标要求确定未校正系统的型别和开环增益,并绘制Bode图;2.根据动态指标要求确定超前校正装置的参数;第一种情形:给出了的要求值(1)确定超前校正所应提供的最大超前相角(2)求解的值)20~5( ,)](180[0°°°=+′∠+−=εεωγφc m j G amm a φφsin 1sin 1−+=a j G m lg 10)(lg 200−=′ω(确定)m ωc ω)(0s G ′如果,说明值选择合理,能够满足相角裕度要求,否则按如下方法重新选择的值:c m ωω≈a a 2)(1c j G a ω′=a j G c lg 10)(lg 200−=′ω11sin 1+−=′−a a mφm mφφ≥′若,则正确,否则重新调整值。
Matlab中Bode图的绘制技巧
Matlab(一)中Bode图的绘制技巧我们经常会遇到使用Matlab画伯德图的情况,可能我们我们都知道bode这个函数是用来画bode图的,这个函数是Matlab内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。
譬如我们要画出下面这个传递函数的伯德图:1.576e010 s^2H(s)= ------------------------------------------------------------------------------------------s^4 + 1.775e005 s^3 + 1.579e010 s^2 + 2.804e012 s + 2.494e014(这是一个用butter函数产生的2阶的,频率范围为[20 20K]HZ的带通滤波器。
)我们可以用下面的语句:num=[1.576e010 0 0];den=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H)这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上grid on解决)。
下面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptions我们可以看到以下内容:ans =Title: [1x1 struct]XLabel: [1x1 struct]YLabel: [1x1 struct]TickLabel: [1x1 struct]Grid: 'off'XLim: {[1 10]}XLimMode: {'auto'}YLim: {[1 10]}YLimMode: {'auto'}IOGrouping: 'none'InputLabels: [1x1 struct]OutputLabels: [1x1 struct]InputVisible: {'on'}OutputVisible: {'on'}FreqUnits: 'rad/sec'FreqScale: 'log'MagUnits: 'dB'MagScale: 'linear'MagVisible: 'on'MagLowerLimMode: 'auto'MagLowerLim: 0PhaseUnits: 'deg'PhaseVisible: '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=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H,P)这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ,范围是[10 40K]HZ,而且打开了网格,便于我们观察-3DB处的频率值。
matlab绘制bode图技巧(可编辑修改word版)
我们经常会遇到使用Matlab 画伯德图的情况,可能我们我们都知道bode 这个函数是用来画bode 图的,这个函数是Matlab 内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。
譬如我们要画出下面这个传递函数的伯德图:1.576e010 s^2H(s)=s^4 + 1.775e005 s^3 + 1.579e010 s^2 + 2.804e012 s + 2.494e014(这是一个用butter 函数产生的2 阶的,频率范围为[20 20K]HZ 的带通滤波器。
)我们可以用下面的语句:num=[1.576e010 0 0];den=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H)这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上grid on 解决)。
下面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptions我们可以看到以下内容:ans =Title: [1x1 struct]XLabel: [1x1 struct]YLabel: [1x1 struct]TickLabel: [1x1 struct]Grid: 'off'XLim: {[1 10]}XLimMode: {'auto'}YLim: {[1 10]}YLimMode: {'auto'}IOGrouping: 'none'InputLabels: [1x1 struct]OutputLabels: [1x1 struct]InputVisible: {'on'}OutputVisible: {'on'}FreqUnits: 'rad/sec'FreqScale: 'log'MagUnits: 'dB'MagScale: 'linear'MagVisible: 'on'MagLowerLimMode: 'auto'MagLowerLim: 0PhaseUnits: 'deg'PhaseVisible: '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=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf(num,den);bode(H,P)这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ,范围是[10 40K]HZ,而且打开了网格,便于我们观察-3DB 处的频率值。
MATLAB中bode图绘制技巧
Matlab中Bode图的绘制技巧2010-06-04 21:21:48 阅读54 评论0 字号:大中小订阅我们经常会遇到使用Matlab画伯德图的情况,可能我们我们都知道bode这个函数是用来画bode图的,这个函数是Matlab内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。
譬如我们要画出下面这个传递函数的伯德图:s^2H(s)=------------------------------------------------------------------------------------------s^4 + s^3 + s^2 + s +(这是一个用butter函数产生的2阶的,频率范围为[20 20K]HZ的带通滤波器。
) 我们可以用下面的语句:num=[ 0 0];den=[1 ];H=tf(num,den);bode(H)这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上grid on解决)。
下面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptions我们可以看到以下内容:ans =Title: [1x1 struct]XLabel: [1x1 struct]YLabel: [1x1 struct]TickLabel: [1x1 struct]Grid: 'off'XLim: {[1 10]}XLimMode: {'auto'}YLim: {[1 10]}YLimMode: {'auto'}IOGrouping: 'none'InputLabels: [1x1 struct]OutputLabels: [1x1 struct]InputVisible: {'on'}OutputVisible: {'on'}FreqUnits: 'rad/sec'FreqScale: 'log'MagUnits: 'dB'MagScale: 'linear'MagVisible: 'on'MagLowerLimMode: 'auto'MagLowerLim: 0PhaseUnits: 'deg'PhaseVisible: 'on'PhaseWrapping: 'off'PhaseMatching: 'off'PhaseMatchingFreq: 0PhaseMatchingValue: 0我们可以通过修改上面的每一项修改伯德图的风格,比如我们使用下面的语句画我们的伯德图:P=bodeoptions;='on';={[10 40000]};={'manual'};='HZ';num=[ 0 0];den=[1 ];H=tf(num,den);bode(H,P)这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ,范围是[10 40K]HZ,而且打开了网格,便于我们观察-3DB处的频率值。
Bode 图法控制系统设计---串联滞后校正解读
重庆交通大学《自动控制》课程设计课题:三、Bode 图法控制系统设计---串联滞后校正作者:学号:专业:班级:指导教师:2013.06.28摘要在现代科学技术的众多领域中,自动控制技术起着越来越重要的作用,而自动控制理论是自动控制科学的核心。
自动控制理论自至今已经过了三代的发展。
现代控制理论已广泛应用于制造业、农业、交通、航空及航天等众多产业部门。
自动控制理论从线性近似到非线性系统的研究取得了新的成就,借助微分几何的固有非线性框架来研究非线性系统的控制,已成为目前重要研究方向之一。
在控制技术需求推动下,控制理论本身也取得了显著进步。
为了实现各种复杂的控制任务首先要将被控制对象和控制装置按照一定的方式连接起来,组成一个有机整体,这就是自动控制系统。
本次课程设计是利用滞后-超前校正网络来校正系统以改善系统性能,首先应该根据原有系统和初始条件要求来确定校正系统,然后利用MATLAB分析校正后的系统是否达到要求以及其性能。
关键字:自动控制 MATLAB 滞后-超前校正系统分析目录前言 (2)一、设计任务 (5)1、设计要求 (5)2、设计方案分析 (5)3、控制器的MATLAB程序实现 (6)二、控制系统的模拟化设计 (7)1、模拟控制器的离散化 (7)A、冲激不变法 (7)B、加零阶保持器的Z变换法 (8)C、差分变换法 (8)D、双线性变换法 (8)E、频率预畸变双线性变换法 (9)2、控制器的MATLAB离散程序 (9)3、控制器的计算机实现 (9)A、直接程序设计法 (9)B、串行程序法 (10)C、并行程序法 (11)D、控制器的计算机实现流程图 (11)三、控制系统的MATLAB实现 (12)1、控制系统的MATLAB仿真 (12)2、控制系统的simulink仿真 (13)四、小结 (14)五、参考文献 (15)一、设计任务Bode 图法控制系统设计---串联滞后校正设被控对象的传递函数为1、设计要求(1)开环增益Kv=20(2)频率裕量γ=70°(3)对此控制器进行离散化,并用计算机程序实现(划出流程图)(4)用Matlab 对系统进行仿真,分析系统的阶跃响应2、设计方案分析系统要求使用Bode 图法对控制系统进行设计,同时要求采用串联滞后校正。
实验三 系统Bode图及Nyquist曲线的绘制实验报告.docx
实验三系统Bode图及Nyquist曲线的绘制1.实验的目的和要求1)加深了解系统及元件频率特性的物理概念;2)进一步加深对Bode图及Nyquist曲线的了解;3)熟练掌握用Matlab分析系统频率特性的方法。
2.实验内容1)系统的模拟电路原理图及系统的结构方框图分别如图5-1、5-2所示。
图5-1 系统的模拟电路原理图图5-2 系统的结构方框图2)绘制系统的Bode图及Nyquist曲线,并分析K对Bode图及Nyquist曲线的影响。
3.需用的仪器计算机、Matlab6.5编程软件4.实验步骤1)计算系统的开环传递函数;2)取R2=500K,绘制系统开环Bode图及Nyquist曲线;3)K取不同值,实验分析K对开环幅相曲线及Bode图的影响。
5.教学方式讲授与指导相结合6.实验报告要求1)、计算开环传函G k(s)=10s ×10.1s+1×K =10K0.1s2+s2)、取R2=500K,绘制Bode图和Nyquist图⑴、Simulink指令块Bode图:Nyquist图:3)、K取不同值,对开环幅相曲线及Bode图的影响⑴、K取不同值,对开环幅相曲线的影响程序:》y1=tf([50],[0.1,1,0]);y2=tf([100],[0.1,1,0]);y3=tf([200],[0.1,1,0]);nyquist(y1);set(findobj('Color','b'),'LineWidth',3)hold on;nyquist(y2);nyquist(y3);set(findobj('Color','r'),'LineWidth',6);grid;legend('k=5响应曲线','K=10响应曲线','K=20响应曲线'); title('李山 1206074118');图形:分析,φ(jw)=arctan(10w)得出,K的改变不会影响角度的由公式A(w)=|G(jw)|=10k0.01w4+w2变化,只会影响幅值。
5.3.2开环系统bode图的绘制
5.3.2 开环系统Bode 图的绘制将开环传递函数()G s 表示成式(5-48)形式的典型环节组合形式,有12121212()20lg ()20lg[()()()]20lg ()20lg ()20lg ()()()()()()()()l l l l L A A A A A A A L L L ω=ω=ωωω⎧⎪=ω+ω++ω⎪⎨=ω+ω++ω⎪⎪ϕω=ϕω+ϕω+ϕω⎩ (5-58) 式中,)(ωi L 和)(ωϕi 分别表示各典型环节的对数幅频特性和对数相频特性。
式(5-58)表明,只要能作出)(ωj G 所包含的各典型环节的对数幅频和对数相频曲线,将它们进行代数相加,就可以求得开环系统的Bode 图。
实际上,在熟悉了对数幅频特性的性质后,可以采用更为简捷的办法直接画出开环系统的Bode 图,具体步骤如下。
(1) 将开环传递函数写成尾1标准形式:()211()2211(1)[()21]()(1)[()21]m p pzh i h i zh zh n q v qv pk j k j pk pks s s K z G s s s s s p -==--==+++=+++∏∏∏∏ξωωξωω 确定系统开环增益K 和型别v ,把各典型环节的转折频率由小到大依次标在频率轴上。
(2) 绘制开环对数幅频特性低频段的渐近线。
由于低频段渐近线的频率特性为()v K j ω,所以它就是过点(K lg 20,1)、斜率为20dB/dec v -的直线。
(3) 在低频段渐近线的基础上,沿频率增大的方向每遇到一个转折频率就改变一次斜率,其规律是遇到惯性环节的转折频率,斜率变化20dB/dec -;遇到一阶复合微分环节的转折频率,斜率变化20dB/dec ;遇到二阶复合微分环节的转折频率,斜率变化40dB/dec ;遇到振荡环节的转折频率,斜率变化40dB/dec -;直到所有转折全部进行完毕。
最右端转折频率之后的渐近线斜率应该是20()dB/dec n m --,其中,m n ,分别为)(s G 分母、分子的阶数。
(完整版)Matlab中Bode图的绘制技巧(精)
Matlab中Bode图的绘制技巧我们经常会遇到使用Matlab画伯德图的情况,可能我们我们都知道bode这个函数是用来画bode图的,这个函数是Matlab内部提供的一个函数,我们可以很方便的用它来画伯德图,但是对于初学者来说,可能用起来就没有那么方便了。
譬如我们要画岀下面这个传递函数的伯德图:1.576e010 s A2H(s= ..........................................................................................................sA4 + 1.775e005 sA3 + 1.579e010 sA2 + 2.804e012 s + 2.494e014(这是一个用butter函数产生的2阶的,频率范围为[20 20K]HZ的带通滤波器。
我们可以用下面的语句:num=[1.576e010 0 0];den=[1 1.775e005 1.579e010 2.804e012 2.494e014];H=tf( num,de n;bode(H这样,我们就可以得到以下的伯德图:可能我们会对这个图很不满意,第一,它的横坐标是rad/s,而我们一般希望横坐标是HZ;第二,横坐标的范围让我们看起来很不爽;第三,网格没有打开(这点当然我们可以通过在后面加上grid on解决)。
F面,我们来看看如何定制我们自己的伯德图风格:在命令窗口中输入:bodeoptio ns我们可以看到以下内容:ans =Title: [1x1 struct] XLabel: [1x1 struct] YLabel: [1x1 struct] TickLabel: [1x1 struct] Grid: 'off' XLim: {[1 10]} XLimMode: {'auto'} YLim: {[1 10]} YLimMode: {'auto'} IOGrouping: 'none' InputLabels: [1x1 struct] OutputLabels: [1x1 struct] InputVisible: {'on'} OutputVisible: {'on'} FreqUnits: 'rad/sec' FreqScale: 'log' MagUnits: 'dB' MagScale: 'linear' MagVisible: 'on' MagLowerLimMode: 'auto' MagLowerLim: 0 PhaseUnits: 'deg' PhaseVisible: 'on' PhaseWrapping: 'off'是这样的,运行命令 ctrlpref ,出现控制系统工具箱的设置页面, Units 改为Hz 就好了PhaseMatchi ng: 'off'PhaseMatchi ngFreq: 0PhaseMatchi ngValue: 0我们可以通过修改上面的每一项修改伯德图的风格,比如我们使用下面的语句画我们的伯德图: P=bodeopti ons;P.Grid='o n';P.XLim={[10 40000]};P.XLimMode={'ma nual'};P.Freq Un its='HZ';num=[1.576e010 00]; den=[1 1.775e0051.579e0102.804e012 2.494e014];H=tf( num,de n;bode(H,P这时,我们将会看到以下的伯德图:上面这张图相对就比较好了,它的横坐标单位是HZ ,范围是[10 40K]HZ ,而且打开了网格,便于我们观察-3DB 处的频率值。
自动控制原理simulink实验指导
自动控制原理上机实验指导书王芳、杨志超编写南京工程学院电力工程学院二〇〇七年二月目录Simulink仿真集成环境简介 (2)实验一典型环节的性能分析 (11)实验二二阶系统的性能分析 (14)实验三自动控制系统的稳定性和稳态误差分析 (17)实验四自动控制系统根轨迹的分析 (22)实验五自动控制系统的频域分析 (27)实验六控制系统的校正及设计 (32)实验七非线性系统的稳定性分析 (39)Simulink仿真集成环境简介Simulink是可视化动态系统仿真环境。
1990年正式由Mathworks公司引入到MATLAB中,它是Slmutation 和Link的结合。
这里主要介绍它的使用方法和它在控制系统仿真分析和设计操作的有关内容。
1、进入Simulink操作环境双击桌面上的MATLAB图标,启动MATLAB,进入开发环境,如图0-1所示:图0-1 MATLAB开发环境从MATLAB的桌面操作环境画面进入Simulink操作环境有多种方法,介绍如下:①点击工具栏的Simulink图标,弹出如图0-2的图形库浏览器画面。
②在命令窗口键入“simulink”命令,可自动弹出图形库浏览器。
上述两种方法需从该画面“File”下拉式菜单中选择“New/Model”,或点击图标,得到图0-3的图形仿真操作画面。
③从“File”下拉式菜单中选择“New/Model”,弹出图0-3所示的未命名的图形仿真操作画面。
从工具栏中点击图形库浏览器图标,调出图0-2的图形库浏览器画面。
图0-3用于仿真操作,图0-2的图形库用于提取仿真所需的功能模块。
图0-2 Simulink图形库浏览器画面图0-3 simulink仿真操作环境画面2、提取所需的仿真模块在提取所需仿真模块前,应绘制仿真系统框图,并确定仿真所用的参数。
图0-2中的仿真用图形库,提供了所需的基本功能模块,能满足系统仿真的需要。
该图形库有多种图形子库,用于配合有关的工具箱。
(完整版)使用simulinkbode图的绘制
在Matlab中,大多时候,我们都是用M语言,输入系统的传递函数后,用bode函数绘制bode图对系统进行频率分析,这样做,本人觉得效率远不如Simulink建模高。
如何在Matlab/Simulink中画bode图,以前也在网上查过些资料,没看到太多有用的参考。
今天做助教课的仿真,又要画电机控制中电流环的bode图,模型已经建好,step response也很容易看出来,可这bode图怎么也出不来,又不愿意用m语言写出传递函数再画。
baidu和google 了好一阵,几乎没有一个帖子说的清清楚楚的,经过一番摸索,终于掌握了Simulink里画bode图的方法。
.其实,Simulink里画bode图,非常的easy,也很方便。
写此文的目的是希望对那些常用Simulink进行仿真希望画bode图又不愿用M语言的新手有所帮助。
以下均是以Matlab R2008a为例。
首先,在simulink里建好model。
如图1,这里需要注意的是,输入和输出要用input port 和output port,这样以后画bode图的时候,系统就会知道是这两个变量之间的关系。
图1 建好model其次,选择线性分析。
Tools->Control Design ->Linear Analysis。
如图2。
图2 选择Linear Ansysis将出现如图3所示的Control and Estimation Tools Manager窗口。
图3 Control and Estimation Tools Manager窗口第三步,激动人心的时刻到了,哈哈。
如果你是按照前面的步骤来的,那么这时候,你就应该可以直接画出bode图,在窗口的下方,将“Plot linear analysis result in a ”前面的方框打上勾,已打的就不用管了,再在后面的下拉框里选择“bode response plot”,即画output port和input port之间的bode图,再点击“Linearize Model”按钮,就OK了。
MATLAB中调用simulink并绘制bode图技巧
Matlab中Bode图的绘制技巧
用simulink提供的linmod()或者linmod2()两个函数,从连续系统中提取线性模型,两个函数命令执行后都可以得到一个[a,b,c,d]表达的状态空间模型。
利用bode(sys)或者bode(a,b,c,d)函数绘制系统的对数幅频和相频特性曲线。
1) 修正原来的simulink模型,使其输入用inport表示,输出用outport表示。
这些端口在6.1版中分别位于sources和sinks组。
2)编写m文件内容为:
[A,B,C,D]=linmod(‘untitled1’) % untitled1’为系统的动态模型或simulink文件名。
[num,den]=ss2tf(A,B,C,D); %转换成传递函数模型
printsys(num,den,’s’); %显示系统的传递函数模型
sys=ss(A,B,C,D);
bode(sys); %即可绘制系统的开环系统bode图
bode(A,B,C,D); %也可以采用此语句代替上面紫色语句
3)、直接在命令窗执行m文件。
如何绘制伯德图
900
0.05
1.0
1800
n
1 T
10 n
16
1 n 10
图5-20
振荡环节对数相频特性图
(六)二阶微分环节
二阶微分环节的频率特性是 G( j ) (1 2 2 ) j 2 其对数幅频特性是 20 lg G( j ) 20 lg (1 2 2 ) 2 4 2 2 2 dB 相频特性是
当
20 lg G ( j ) 20 lg
1
20 lg
1 时,20 lg G( j1) 20 lg 1 0(dB) ; 当 10 时,20 lg G( j10) 20 lg 10 20(dB) 。
6
设
' 10 ,则有
(5-68)
dB L( )
900 ( )
度
1 1 100
1 1 10
1
渐近特性
10
1
100
1
450
00
1 1 100
45o / dec
1 1 10
1
10
1
100
1
以横轴(ω 轴)为对称的。
图5-16 一阶微分环节的Bode图
13
(五) 振荡环节
振荡环节的频率特性是
1 G ( j ) (1 T 2 2 ) j 2T 其对数幅频特性为 20 lg G( j ) 20 lg (1 T 2 2 ) 2 4 2T 2 2
T
T
对应的相频特性曲线如图5-14 所示。它是一条由 且以 00至-900范
MATLAB-simulink建模与sisotool校正
以下步骤为matlab7.5.0 (R2007b)的步骤。
建立原系统的框图,开始不考虑TL,.所以设TL为零,并封装为下图Gm(s).封装参数如下;
在子系统Gm(s)的两端通过选中连线,右击,设置线性输入输出点。
再TOOLS —control design—linear analysis。
浮现对话框:
单击标记处:
单击file——export,出现下面对话框:
选中model,单击export to workspace:
再在命令窗口:输入sisotool,回车,出现下面对话框:
单击标记处,进入矫正传函参数的设置。
在单击file——import,出现下框:
单击标记处,再单击browse,进入
按标记操作,
再单击OK,进入:
这是没有矫正系统的零极点图,和BODE图。
单击analysis——response to step command,出现原系统单位反馈的step响应。
在原系统中任意加入一个实极点和实零点。
进入下面的对话款,设置相应的增益,零点和极点值
如图:
单位阶跃响应为:
此时。
Bode图为
在对上图,作如下操作,file——export:
作上图操作
可得矫正环节的:
其中校正环节方框图为:
总连线图:
word格式-可编辑-感谢下载支持
最终仿真结果:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在Matlab中,大多时候,我们都是用M语言,输入系统的传递函数后,用bode函数绘制bode图对系统进行频率分析,这样做,本人觉得效率远不如Simulink建模高。
如何在Matlab/Simulink中画bode图,以前也在网上查过些资料,没看到太多有用的参考。
今天做助教课的仿真,又要画电机控制中电流环的bode图,模型已经建好,step response也很容易看出来,可这bode图怎么也出不来,又不愿意用m语言写出传递函数再画。
baidu和google 了好一阵,几乎没有一个帖子说的清清楚楚的,经过一番摸索,终于掌握了Simulink里画bode图的方法。
.其实,Simulink里画bode图,非常的easy,也很方便。
写此文的目的是希望对那些常用Simulink进行仿真希望画bode图又不愿用M语言的新手有所帮助。
以下均是以Matlab R2008a为例。
首先,在simulink里建好model。
如图1,这里需要注意的是,输入和输出要用input port和output port,这样以后画bode图的时候,系统就会知道是这两个变量之间的关系。
图1 建好model
其次,选择线性分析。
Tools->Control Design ->Linear Analysis。
如图2。
图2 选择Linear Ansysis
将出现如图3所示的Control and Estimation Tools Manager窗口。
图3 Control and Estimation Tools Manager窗口
第三步,激动人心的时刻到了,哈哈。
如果你是按照前面的步骤来的,那么这时候,你就应该可以直接画出bode图,在窗口的下方,将“Plot linear analysis result in a ”前面的方框打上勾,已打的就不用管了,再在后面的下拉框里选择“bode response plot”,即画output port和input port之间的bode图,再点击“Linearize Model”按钮,就OK 了。
其实除了bode图,还可以画其他很多响应曲线,比如step response、impulse response 和Nyquist图等等,只需选择相应的step response plot,inpulse response plot或者Nyquist plot等等。
方法都是相同的。
选择选择“bode response plot”,如图4所示。
图4 画出bode图
稍等片刻,便出现了图1中output port和input port的bode图了。
是不是很简单?!
图5 model的bode图
至此,bode已经画完。
如果此时还想看看step response或者Nyquist图,也是可以的。
只需在bode图上右击,选择Plot Types->Step或者Nyquist等等,as you need!我们选择step,便会出现阶跃响应图。
如图6、7所示。
图6 画阶跃响应
图7 显示阶跃响应
上面的bode图和step response都没有网格,看着不精确,没关系。
在图上右击,选择Grid,就能出现网格了。
想要知道曲线上某点的坐标时,只需在该点上单击,就会显示出该点的坐标值。
如图8a,8b。
图8a
图8b 显示网格和曲线上的坐标
关于图画里的操作,就介绍这么多,其他的功能自己去摸索。
回到图3中的Control and Estimation Tools Manager窗口。
在该窗口中,除了可以画bode图之外,还可以看到系统的状态方程、传递函数或者零极点方程。
运行完“Linearize Model”后,单击左侧“Linearization Task”下的“Model”,在下方的下拉列表里选择“Zero Pole Gain”(也可以选择“State Space”或者“Trans efer Funciton”),就能看到系统输入输出的零极点增益方程。
如下图9。
图9 查看系统输入输出之间的关系描述(状态议程、零极点增益、传递函
数)
通过Linear Analysis工具,我们可以得到很多关于系统的直观的或者非直观的信息,如bode图、Nyquist图、状态方程、传递函数等等。
以上简单介绍了Matlab/Simulink中利用Control Design的Linear Analysis绘制系统的bode图,及查看系统输入输出关系的描述。
Matlab的功能十分强大,还有许多功能需要探索,以便其更好的帮助我们完成系统建模仿真和控制等
如有侵权请联系告知删除,感谢你们的配合!。