第2章MATLAB的控制系统工具箱函数_第1页
第2章MATLAB的控制系统工具箱函数_第2页
第2章MATLAB的控制系统工具箱函数_第3页
第2章MATLAB的控制系统工具箱函数_第4页
第2章MATLAB的控制系统工具箱函数_第5页
已阅读5页,还剩118页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB的运算

已知控制系统的开环传递函数为求系统的闭环特征方程并计算系统的闭环特征根。p0=conv([1,2],[1,3])+conv([1,0],[1,1])%求特征方程p0=266>>p1=rref(p0)%行系数化简p1=133>>r=roots(p1)%求特征根r=-1.5000+0.8660i-1.5000-0.8660imatlab语句说明系统闭环特征方程特征根-1.5000+0.8660i,-1.5000-0.8660i2.1.4MATLAB循环与转移控制大部分的求解问题都要受到一定条件的控制,和其它高级语言一样,MATLAB也提供了一些常用的控制语句.从而使得MATLAB语言的编程显得十分灵活。MATTAB支持的控制语句和C语言中的控制语句结构很相似,有循环控制语句和条件转移控制语句。1.条件控制语句(1)if语句if语句是MATLAB提供的最基本的条件转移语句,它用于根据一定的逻辑条件执行相应的一组语句。

格式ifexpressionstatementsendifexpression1statements1elseifexpression2statements2elseifexpression3statements3elsestatements4end例2-18根据一个整数的符号和奇偶性,分成三种情况作不同的处理。ifn<0

%如果n是负数,显示错误信息

disp(‘Inputmustbepositive’);

elseifrem(n,2)==0

%如果n是正偶数,则除以2

A=n/2else

%如果n为正奇数,则加1再除以2

A=(n+1)/2

endswitch语句是MATLAB特别让熟悉C等高级语言的用户方便地编写程序而专门添加的。其调用格式为:(2)switch语句switchexpressioncasevalue1statements1casevalue2statements2 …otherwisestatementsend其中expression的值可以是标量和字符串。trystatement,…statement,catch,statements…statementsend(3)try和tatch语句try和catch语句为试探式语句,其调用格式为:

这种语句结构先试探执行try和catch之间的语句,如果在执行的过程中遇到错误,则把错误信息赋值给lasterr变量,并放弃执行这一段语句,转而执行catch和end之间的语句。2.循环控制语句(1)for语句如果要反复执行的一组语句的循环次数是已知或预定义的,就可以使用for循环语句。它的基本格式为:fori=is:id:ie;

statementsend其中:

is是循环变量的初值;

id是循环变量的增量;

ie是循环变量的终值。

例2-19输入以下MATLAB语句a=zeros(1,10);n=10;fori=1:na(i)=iend运行程序,得到结果:a=12345678910for语句可以嵌套使用,例如:m=10;n=5;fori=1:mforj=1:nF(i,j)=1/(i+j-1);endendF运行程序,得到结果:F=1.00000.50000.33330.25000.20000.50000.33330.25000.20000.16670.33330.25000.20000.16670.14290.25000.20000.16670.14290.12500.20000.16670.14290.12500.11110.16670.14290.12500.11110.10000.14290.12500.11110.10000.09090.12500.11110.10000.09090.08330.11110.10000.09090.08330.07690.10000.09090.08330.07690.0714值得注意的是:每一个for必须与end配对使用。for命令输入后,MATLAB将继续等待循环体的输入,直至遇到end结束循环体时,才开始执行for语句。(2)while语句while循环控制语句的作用是在一定的逻辑条件控制下,不断地循环执行一条或一组语句,直到逻辑条件不再满足时为止。它的基本格式为:

whileexpressionstatementsend例2-20找出使阶乘n!小于10的100次方的最小整数nn=1whileprod(1:n)<1e100n=n+1endnMATLAB程序如下:运行程序,得到结果:n=70其中,prod(1:n)是计算向量1:n各元素之积。当然.MATLAB提供的循环结构for和while是允许多级嵌套的,而且它们之间也允许相互嵌套,这和C语言等高级程序设计语言是一致的。在程序设计中,经常会碰到提前终止循环的操作。MATLAB中终止循环的命令有continue和break,它们的功能分别是:·continue命令continue命令的作用是结束本次循环,即跳过循环体中下面还未执行的语句,直接进行下一次循环。·break命令使用break命令,可以在条件成立的情况下终止循环(从循环体跳出),接着执行循环外面的语句。(3)循环终止语句2.2MATLAB控制系统工具箱函数MATLAB的控制系统工具箱,主要处理以传递函数为主要特征的经典控制和以状态空间为主要特征的现代控制中的问题。该工具箱对控制系统,尤其是线性时不变(LTI)系统的建模、分析和设计提供了一个完整的解决方案。

2.2.1模型建立函数2.2.2模型转换及参数获取函数2.2.3模型特性函数2.2.4时域响应函数2.2.5频域响应函数2.2.6根轨迹函数2.2.7估计器/调节器设计函数2.2.1模型建立函数

模型建立函数表函数名功能将状态增广到状态空间系统的输出中两个状态空间系统的组合系统的并联连接系统的串联连接两个系统的反馈连接系统的单位反馈连接产生二阶系统稳定的随机n阶模型从状态空间系统中删除输入、输出或状态从大状态空间系统中选择一个子系统将结构图转换为状态空间模型生成连续/离散状态估计器或观察器生成控制器/估计器延时的pade近似augstateappendparallelseriesfeedbackcloopord2rmodel,drmodessdeletessselectconnectestim,destimreg,dregpade返回目录将状态增广到状态空间系统的输出中。augstat

[Ab,Bb,Cb,Db]=augstate(A,B,C,D)该函数可将状态加到状态空间系统的输出中。可产生一个新的状态空间系统,其输入和状态与原系统相同,但输出增加了所有的状态。返回本表功能格式说明该函数对两个状态空间系统进行组合。

两个系统的组合append两个状态空间系统的组合[A,B,C,D]=append(A1,B1,C1,D1,A2,B2,C2,D2)功能格式说明[A,B,C,D]=append(A1,B1,C1,D1,A2,B2,C2,D2)可得到的系统为返回本表该函数可将两个系统按并联方式进行连接,它既适用于连续时间系统,也适用于离散时间系统。parallel系统的并联连接。[A,B,C,D]=parallel(A1,B1,C1,D1,A2,B2,C2,D2)[A,B,C,D]=parallel(A1,B1,C1,D1,A2,B2,C2,D2,inp1,inp2,out1,out2)[num,den]=parallel(num1,den1,num2,den2)格式功能说明[A,B,C,D]=parallel(A1,B1,C1,D1,A2,B2,C2,D2)可得到两个系统并联连接的状态空间系统,如图所示。得到的系统为:系统的并联连接[num,den]=parallel(num1,den1,num2,den2)可得到并联连接的传递函数表示的系统。[A,B,C,D]=parallel(A1,B1,C1,D1,A2,B2,C2,D2,inp1,inp2,out1,out2)部分并联连接的系统两个系统按如图所示的方式连接,在inp1和inp2中分别指定两个系统要连接在一起的输入端编号,out1和out2中分别指定要作相加的输出端编号。返回本表[num,den]=series(num1,den1,num2,den2)series系统的串联连接。该函数可将两个系统按串联方式进行连接,它既适用于连续时间系统,也适用于离散时间系统。[A,B,C,D]=series(A1,B1,C1,D1,A2,B2,C2,D2)[A,B,C,D]=series(A1,B1,C1,D1,A2,B2,C2,D2,outputs1,inputs2)功能格式说明[A,B,C,D]=series(A1,B1,C1,D1,A2,B2,C2,D2)

可得到两个系统串联连接的状态空间系统,如图所示。系统的串联连接[num,den]=series(num1,den1,num2,den2)可得到串联连接的传递函数表示的系统。[A,B,C,D]=series(A1,B1,C1,D1,A2,B2,C2,D2,outputs1,inputs2)

两个系统按如图所示的方式连接,在outputs1和inputs2用于指定sys1的部分输出和sys2的部分输入进行连接。部分串联连接的系统返回本表[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2)[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2,sign)[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2,inp1,out1)[num,den]=feedback(num1,den1,num2,den2)[num,den]=feedback(num1,den1,num2,den2,sign)功能格式说明该函数可将两个系统按反馈方式进行连接,它既适用于连续时间系统,也适用于离散时间系统。两个系统的反馈连接feedback两系统的反馈连接[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2,sign)可将两系统按反馈方式进行连接,系统1的所有输出连接到系统2的输入,系统2的所有输出连接到系统1的输入,sign是用于反馈连接的符号,当sign缺省时,默认为负。[num,den]=feedback(num1,den1,num2,den2,sign)用于传递函数模型所表示的系统,sign的含义与前述相同。[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2,inp1,out1)将系统1的指定输出(out1)连接到系统2的输入,系统2的输出连接到系统1的指定输入(inp1),以此构成闭环系统,如图所示。部分反馈连接[A,B,C,D]=feedback(A1,B1,C1,D1,A2,B2,C2,D2)[num,den]=feedback(num1,den1,num2,den2)可将两系统按负反馈方式进行连接返回本表[A,B,C,D]=cloop(A,B,C,D,sign)[A,B,C,D]=cloop(A,B,C,D,outputs,inputs)[num,den]=cloop(num,den,sign)功能格式说明cloop系统的单位反馈连接该函数可将系统按单位反馈方式进行连接,它既适用于连续时间系统,也适用于离散时间系统。[A,B,C,D]=cloop(A,B,C,D,sign)可将系统按单位反馈方式进行连接,从而产生闭环系统的状态空间模型,sign是用于反馈连接的符号,当sign缺省时,默认为负。单位反馈连接系统[num,den]=cloop(num,den,sign)用于传递函数模型所表示的系统,sign的含义与前述相同。单位反馈连接系统[A,B,C,D]=cloop(A,B,C,D,outputs,inputs)将系统指定的输出(outputs)连接到指定的输入(inputs),构成闭环系统的状态空间模型。一般为正反馈,形成负反馈时应在inputs中采用负值。部分单位反馈连接系统返回本表[A,B,C,D]=ord2(wn,z)[num,den]=ord2(wn,z)功能格式说明ord2产生二阶系统该函数能产生二阶系统[A,B,C,D]=ord2(wn,z)可得到二阶系统的状态空间的模型。[num,den]=ord2(wn,z)可得到二阶系统的传递函数模型。返回本表[A,B,C,D]=rmodel(n)[A,B,C,D]=rmodel(n,p,m)[num,den]=rmodel(n)[num,den]=rmodel(n,p)[A,B,C,D]=drmodel(n)[A,B,C,D]=drmodel(n,p,m)[num,den]=drmodel(n)[num,den]=drmodel(n,p)功能格式说明rmodel

drmodel稳定的随机n阶模型该函数能产生稳定的随机n阶模型[A,B,C,D]=rmodel(n)可得到随机的n阶稳定状态空间模型,并且为SISO系统。[A,B,C,D]=rmodel(n,p,m)可得到一个m输入p输出的随机的n阶稳定状态空间模型。[num,den]=rmodel(n)可得到随机的n阶稳定传递函数模型,[num,den]=rmodel(n,p)可得到一个单输入p输出的随机的n阶稳定传递函数模型。drmodel

可得到稳定的离散时间随机模型。返回本表[Ae,Be,Ce,De]=ssselect(A,B,C,D,inputs,outputs)[Ae,Be,Ce,De]=ssselect(A,B,C,D,inputs,outputs,states)功能格式说明该函数既适用于连续时间系统,也适用于离散时间系统。从大状态空间系统中选择一个子系统。ssselect[Ae,Be,Ce,De]=ssselect(A,B,C,D,inputs,outputs)可利用指定的输入和输出产生一个子系统,inputs用于指定子系统的输入,outputs用于指定子系统的输出。[Ae,Be,Ce,De]=ssselect(A,B,C,D,inputs,outputs,states)可利用指定的输入、输出和状态构造子系统,其输入、输出和状态由inputs、outputs、states指定。返回本表[Ac,Bc,Cc,Dc]=connect(A,B,C,D,q,inputs,outputs)功能格式说明connect将结构图转换为状态空间模型。可得到状态空间模型,其中[A,B,C,D]是给定的无连接对角方块,q用于指定内部连接关系,inputs和outputs用于选择系统[Ac,Bc,Cc,Dc]的输入和输出。返回本表[Ae,Be,Ce,De]=estim(A,B,C,D,I)[Ae,Be,Ce,De]=estim(A,B,C,D,l,sensors,known)[Ae,Be,Ce,De]=destim(A,B,C,D,l)[Ae,Be,Ce,De]=destim(A,B,C,D,l,sensors,known)功能说明格式estim,destim生成连续/离散状态估计器或观察器。该函数可以从状态空间系统和增益矩阵l中生成稳态卡尔曼估计器[Ae,Be,Ce,De]=estim(A,B,C,D,l)可生成连续系统的状态估计器,并假定系统的所有输出为传感器的输出。[Ae,Be,Ce,De]=estim(A,B,C,D,l,sensors,known)

可生成连续系统的状态估计器,其传感器由sensors指定,已知输入由known指定,由known指定的输入自动包括在估计器的输入中。destim函数适用于离散时间系统。返回本表2.2.2模型转换及参数获取函数

模型转换及参数获取函数表函数名功能c2d,c2dt将连续时间系统转换成离散时间系统c2dm将连续时间系统转换成离散时间系统d2c将离散时间系统转换成连续时间系统d2cm按指定方式将离散时间系统转换成连续时间系统d2d离散时间系统重新采样ss生成或转换为状态空间模型tf生成或转换为传递函数模型zpk生成或转换为零极点模型ss2tf将系统状态空间模型转换为传递函数模型ss2zp将系统状态空间模型转换为零极点模型tf2ss将系统传递函数模型转换为状态空间模型函数名功能tf2zp将系统传递函数模型转换为零极点模型zp2ss将系统零极点模型转换为状态空间模型zp2tf将系统零极点模型转换为传递函数模型ss2ss状态空间模型的相似变换tfdata得到传递函数模型参数ssdata,dssdata得到状态空间模型参数zpkdata得到零极点模型参数续上表返回目录[Ad,Bd]=c2d(A,B,Ts)[Ad,Bd,Cd,Dd]=c2dt(A,B,C,D,Ts,lambda)功能格式说明c2d,c2dt将连续时间系统转换为离散时间系统该函数可以将状态空间模型从连续时间变换到离散时间,且假定系统输入采用零阶保持器[Ad,Bd]=c2d(A,B,Ts)变换成离散系统,上述变换是在假设对输入有零阶保持器、采样时间为Ts的条件下,采样时间Ts可以设定。将连续时间系统作用[Ad,Bd,Cd,Dd]=c2dt(A,B,C,D,Ts,lambda)转换为离散时间系统其中Ts为采样时间,λ为输入延时。将具有纯延时的连续时间状态空间系统作用返回本表[Ad,Bd,Cd,Dd]=c2dm(A,B,C,D,Ts,’method’)[numd,dend]=c2dm(num,den,Ts,’method’)功能格式说明c2dm将连续时间系统转换为离散时间系统模型该函数可实现从连续时间域转换到离散时间域,其中Ts为采样时间,method为选项,具体用法为:‘zoh’假设对输入信号加一个零阶保持器。‘foh’假设对输入信号加一个一阶保持器。‘tustin’表示采用双线性变换方法(Tustin方法)。‘prewarp’表示采用改进的Tustin变换方法。‘matched’利用零极点匹配法将SISO系统变换成离散时间系统。如果缺省method,则默认为’zoh’。c2dm(A,B,C,D,Ts,’method’)c2dm(num,den,Ts,’method’)

可以在屏幕上绘出对比的奇异值或伯德增益图。连续系统用实线表示,离散系统用虚线表示。d2cm(…,’tustin’)将离散系统的z域转换到ω域c2dm将ω域转换到z域。返回本表[Ac,Bc]=d2c(A,B,Ts)功能格式说明d2c将离散时间系统转换为连续时间系统该函数可将状态空间模型从离散时间转换到连续时间,并假设对输入有零阶保持器、采样时间为Ts返回本表[Ac,Bc,Cc,Dc]=d2cm(A,B,C,D,Ts,’method’)[numc,denc]=d2cm(num,den,Ts,’method’)功能格式说明d2cm该函数可采用指定的方法完成从离散时间到连续时间系统的转换,转换方法由method指定,可’zoh’,’tustin’,’prewarp’,’matched’,详细说明可参见c2dm函数。按指定方式将离散时间系统转换成连续时间系统返回本表sysc=d2d(sys,Ts)

sysc=d2d(sys,[],Nd)功能格式说明d2d该函数采用指定的参数进行重新采样或则加入输入延迟将线性定常离散时间系统模型重新采样或者加入输入延迟sysc=d2d(sys,Ts)将离散时间系统模型sys按照新的采样周期Ts重新采样,得到离散时间系统模型sysc。sysc=d2d(sys,[],Nd)将离散时间系统模型sys加入输入延迟。输入延迟必须是采样周期的整倍。如果Nd为标量,则各输入通道具有同样的输入延迟,如果Nd为向量,则分别定义输入通道的输入延迟。返回本表sys=ss(A,B,C,D)

sys=ss(A,B,C,D,Ts)sysc=ss(sys)功能格式说明该函数将系统建立状态空间模型,它既适用于连续时间系统,也适用于离散时间系统ss生成或转换为状态空间模型sys=ss(A,B,C,D)可生成连续系统的态空间模型,返回结果在变量sys中。sysc=ss(sys)

将系统sys的任意模型转换成状态空间模型。sys=ss(A,B,C,D,Ts)可生成离散时间系统的状态空间模型,返回结果在变量sys中,Ts为采样周期。返回本表sys=tf(num,den)

sys=tf(num,den,Ts)sys=tf(M)sysc=tf(sys)功能格式说明tf生成或转换为传递函数模型该函数将系统建立传递函数模型,它既适用于连续时间系统,也适用于离散时间系统sys=tf(num,den)可生成连续系统的传递函数模型,返回结果在变量sys中。sys=tf(num,den,Ts)

可生成离散时间系统的传递函数模型,返回结果在变量sys中,Ts为采样周期。sys=tf(M)定义一个增益为M的静态系统。sysc=tf(sys)

将系统sys的任意模型转换成传递函数模型。返回本表sys=zpk(z,p,k)

sys=zpk(z,p,k,Ts)sys=zpk(M)sysc=zpk(sys)功能格式说明该函数将系统建立零极点模型,它既适用于连续时间系统,也适用于离散时间系统zpk生成或转换为零极点模型sys=zpk(z,p,k)可生成连续系统的零极点模型,返回结果在变量sys中。

sys=zpk(z,p,k,Ts)可生成离散时间系统的零极点模型,返回结果在变量sys中,Ts为采样周期。sys=zpk(M)定义一个增益为M的静态系统。sysc=zpk(sys)将系统sys的任意模型转换成零极点模型。返回本表[num,den]=ss2tf(A,B,C,D,iu)功能格式说明ss2tf将系统状态空间模型转换为传递函数模型A,B,C,D为系统矩阵,iu用于指定变换所使用的输入量,返回结果den为传递函数的分母多项式的系数,按s的降幂排列,相应的传递函数分子系数则包含在矩阵num中返回本表[z,p,k]=ss2tf(A,B,C,D,iu)功能格式说明A,B,C,D为系统矩阵,iu用于指定变换所使用的输入量,向量p为传递函数的极点,向量z为传递函数的零点,对应的增益则在向量k中将系统状态空间模型转换为零极点模型ss2zp返回本表[A,B,C,D]=tf2ss(num,den)功能格式说明对应于一个单输入的状态空间模型。向量den为传递函数的分母多项式的系数,按s的降幂排列,num对应为一个矩阵,每行对一个输出的分子系数,其行数等于输出的个数。tf2ss将系统传递函数模型转换为状态空间模型返回本表[z,p,k]=tf2zp(num,den)功能格式说明该函数可找出多项式传递函数模型的系统的零点、极点和增益tf2zp将系统传递函数模型转换为零极点模型返回本表[A,B,C,D]=zp2ss(z,p,k)功能格式说明该函数可将系统的零极点模型转换成状态空间模型zp2ss将系统零极点模型转换为状态空间模型返回本表[num,den]=zp2tf(z,p,k)功能格式说明该函数可将系统的零极点模型转换成传递函数模型将系统零极点模型转换为传递函数模型zp2tf返回本表sysT=ss2ss(sys,T)

功能格式说明ss2ss相似变换该函数完成系统的相似变换。进行变换,变换后的系统为相似变换即对于如下系统:其中,T为变换矩阵。返回本表2.2.3模型特性函数

模型特性函数表函数名功能ctrb,obsv可控性和可观性矩阵gram,dgram求可控性和可观性gram矩阵dcgain,ddcgain计算系统的稳态(DC)增益damp,ddamp求衰减因子和自然频率covar,dcovar白噪声的协方差矩阵esort,dsort特征值排序tzero传输零点printsys显示或打印线性系统返回目录co=ctrb(A,B)

ob=obsv(A,C)功能格式说明该函数可求出状态空间系统的可控性和可观性矩阵ctrb,obsv可控性和可观性矩阵返回本表[wn,z]=damp(sys)

mag=ddamp(sys)[mag,wn,z]=ddamp(sys,Ts)功能格式说明该函数可求出系统的阻尼系数和自然频率damp,ddamp求阻尼系数和自然频率返回本表[s,ndx]=esort(p)[s,ndx]=dsort(p)功能格式说明esort,dsort按实部或幅值对特征值排序。s=esort(p)可根据实部按递减顺序对矢量p中的复特征值进行排序,对于连续特征值,先列出不稳定特征值。2.2.4时域响应函数

时域响应函数表函数名功能step求连续系统的单位阶跃响应dstep求离散系统的单位阶跃响应impulse求连续系统的单位脉冲响应dimpulse求离散系统的单位脉冲响应initial求连续系统的零输入响应dinitial求离散系统的零输入响应lsim仿真任意输入的连续系统dlsim仿真任意输入的离散系统ltitr求线性时不变系统的时间响应返回目录[y,x,t]=step(A,B,C,D)[y,x,t]=step(A,B,C,D,iu)[y,x,t]=step(A,B,C,D,iu,t)[y,x,t]=step(num,den)[y,x,t]=step(num,den,t)功能格式说明step求连续系统的单位阶跃响应。该函数可计算出连续时间线性系统的单位阶跃响应,当不带输出变量引用时,则在当前窗口中直接绘出系统的单位阶跃响应曲线。step(A,B,C,D,iu)可绘制出从第iu个输入到所有输出的单位阶跃响应曲线。step(A,B,C,D)可得到一组单位阶跃响应曲线,其时间矢量由函数自动设定。step(num,den)可绘制出以多项式传递函数表示的系统单位阶跃响应曲线。step(A,B,C,D,iu,t)step(num,den,t)可利用用户指定的时间矢量t来绘制单位阶跃响应曲线。当带有输出变量引用函数时,可得到系统单位阶跃响应的输出数据,而不直接绘制出曲线。返回本表[y,x]=dstep(A,B,C,D)[y,x]=dstep(A,B,C,D,iu)[y,x]=dstep(A,B,C,D,iu,n)[y,x]=dstep(num,den)[y,x]=dstep(num,den,n)功能格式说明该函数可计算出离散时间线性系统的单位阶跃响应,当不带输出变量引用时,则在当前窗口中直接绘出系统的单位阶跃响应曲线。dstep求离散系统的单位阶跃响应。dstep(A,B,C,D)可得到一组单位阶跃响应曲线,其取样点数自动选取。dstep(num,den)可绘制出以多项式传递函数表示的系统单位阶跃响应曲线。dstep(A,B,C,D,iu)可绘制出从第iu个输入到所有输出的单位阶跃响应曲线。dstep(A,B,C,D,iu,n)dstep(num,den,n)可利用用户指定的取样点数n来绘制单位阶跃响应曲线。当带有输出变量引用函数时,可得到系统单位阶跃响应的输出数据,而不直接绘制出曲线。返回本表[y,x,t]=impulse(A,B,C,D)[y,x,t]=impulse(A,B,C,D,iu)[y,x,t]=impulse(A,B,C,D,iu,t)[y,x,t]=impulse(num,den)[y,x,t]=impulse(num,den,t)功能格式说明impulse该函数可计算出连续时间线性系统的单位脉冲响应,当不带输出变量引用时,则在当前窗口中直接绘出系统的单位脉冲响应曲线。求连续系统的单位脉冲响应。impulse(A,B,C,D)可得到一组单位脉冲响应曲线,其时间矢量由函数自动设定。impulse(num,den)可绘制出以多项式传递函数表示的系统单位脉冲响应曲线。impulse(A,B,C,D,iu)

可绘制出从第iu个输入到所有输出的单位脉冲响应曲线。impulse(A,B,C,D,iu,t)impulse(num,den,t)可利用用户指定的时间矢量t来绘制单位脉冲响应曲线。当带有输出变量引用函数时,可得到系统单位脉冲响应的输出数据,而不直接绘制出曲线。返回本表[y,x]=dimpulse(A,B,C,D)[y,x]=dimpulse(A,B,C,D,iu)[y,x]=dimpulse(A,B,C,D,iu,n)[y,x]=dimpulse(num,den)[y,x]=dimpulse(num,den,n)功能格式说明dimpulse求离散系统的单位脉冲响应。该函数可计算出离散时间线性系统的单位脉冲响应,当不带输出变量引用时,则在当前窗口中直接绘出系统的单位脉冲响应曲线。dimpulse(A,B,C,D)可得到一组单位冲激响应曲线,其取样点数自动选取。dimpulse(num,den)

可绘制出以多项式传递函数表示的系统单位脉冲响应曲线。dimpulse(A,B,C,D,iu)

可绘制出从第iu个输入到所有输出的单位脉冲响应曲线。dimpulse(A,B,C,D,iu,n)dimpulse(num,den,n)可利用用户指定的取样点数n来绘制单位冲激响应曲线。当带有输出变量引用函数时,可得到系统单位冲激响应的输出数据,而不直接绘制出曲线。返回本表2.2.5频域响应函数

频域响应函数表函数名功能allmargin计算系统稳定裕度的全部信息bode求连续系统的Bode频率响应dbode求离散系统的Bode频率响应bodemag绘制连续系统Bode图的幅频响应曲线nyquist求连续系统的Nyquist频率曲线dnyquist求离散系统的Nyquist频率曲线nichols求连续系统的Nichols频率响应曲线dnichols求离散系统的Nichols频率响应曲线ngrid绘制Nichols曲线网络sigma求连续状态空间系统的奇异值Bode图dsigma求离散状态空间系统的奇异值Bode图freqs模拟滤波器的频率响应freqz数字滤波器的频率响应margin求增益和相位裕度ltifr求线性时不变响应返回目录[mag,phase,w]=bode(A,B,C,D)[mag,phase,w]=bode(A,B,C,D,iu)[mag,phase,w]=bode(A,B,C,D,iu,w)[mag,phase,w]=bode(num,den)[mag,phase,w]=bode(num,den,w)功能格式说明该函数可计算出连续时间LTI系统的幅频和相频响应曲线(即Bode图)。当不带输出变量引用函数时,可在当前图形窗口中直接绘制出LTI系统的Bode图。bode求连续系统的Bode(伯德)频率响应。Bode(A,B,C,D)可绘制出系统的一组Bode图,它们是针对连续状态空间系统的每个输入的Bode图。其中频率范围由函数自动选取,而且在响应快速变化的位置会自动采用更多取样点。bode(num,den)

可绘制出以连续时间多项式传递函数G(s)=num(s)/den(s)表示的系统Bode图。bode(A,B,C,D,iu)可得到从系统第iu个输入到所有输出的Bode图。对对角化系统可采用fbode函数绘制Bode图,它采用了基于系统对角矩阵A的快速算法,以此提高运算速度。

当带输出变量引用函数时,可得到系统Bode图相应的幅度、相位及频率点矢量,其相互关系为bode(A,B,C,D,iu,w)bode(num,den,w)可利用指定的频率矢量w绘制出系统的Bode图返回本表[mag,phase,w]=dbode(A,B,C,D,Ts)[mag,phase,w]=dbode(A,B,C,D,Ts,iu)[mag,phase,w]=dbode(A,B,C,D,Ts,iu,w)[mag,phase,w]=dbode(num,den,Ts)[mag,phase,w]=dbode(num,den,Ts,w)功能格式说明该函数用于计算离散时间LTI系统的幅频和相频响应(即Bode图),当不带输出变量引用函数时,可在当前图形窗口中直接绘制出系统的Bode图。dbode求离散系统的Bode(伯德)频率相应。dbode(A,B,C,D,Ts)可得到一组Bode曲线,每条曲线对应于离散状态空间系统的每个输入,其频率范围由函数自动选取。Ts为取样频率,频率点在0到π/Ts间选取。在响应快速变化的位置自动选取更多的取样点dbode(num,den,Ts)可得到以离散时间多项式传递函数G(z)=num(z)/den(z)表示的系统Bode图dbode(A,B,C,D,Ts,iu)

可得到从第iu个输入到所有输出的系统Bode图。dbode(A,B,C,D,Ts,iu,w)dbode(num,den,Ts,w)可利用指定的频率范围w来绘制系统的Bode图。当带输出变量引用函数时,可得到系统Bode图的数据,而不直接绘制出Bode图,幅值和相位可根据以下公式计算例2-21已知二阶离散系统开环的脉冲传递函数为:求离散系统当Ts=0.1s时的Bode图。解:MATLAB程序如下:num=[0.70.06];den=[1-0.50.43];dbode(num,den,0.1);运行该程序可得二阶离散系统的Bode图,如图所示。返回本表[sv,w]=sigma(A,B,C,D)[sv,w]=sigma(A,B,C,D,‘inv’)[sv,w]=sigma(A,B,C,D,w)[sv,w]=sigma(A,B,C,D,w,‘inv’)功能格式说明该函数可计算出复矩阵的奇异值响应,它是Bode幅值响应在MIMO系统的扩展,广泛应用于系统的鲁棒分析。当不带输出变量引用时,可在当前图形窗口中绘出奇异值Bode图。sigma求连续状态空间系统的奇异值Bode图。sigma(A,B,C,D)可求出作为频率函数的复矩阵的奇异值Bode图,频率范围由函数自动选取。对方阵系统,sigma(A,B,C,D,‘inv’)

可得到复矩阵逆的奇异值Bode图。sigma(A,B,C,D,w)sigma(A,B,C,D,w,‘inv’)

可利用指定的频率矢量w来绘制奇异值Bode图。当带输出变量引用函数时,可得到奇异值Bode图的数据,sv为奇异值,w为相应的频率值。返回本表[gm,pm,wcp,wcg]=margin(mag,phase,w)[gm,pm,wcp,wcg]=margin(num,den)[gm,pm,wcp,wcg]=margin(A,B,C,D)功能格式说明该函数可从频率响应数据中计算出增益、相位裕度以及相应的交叉频率。增益和相位裕度是针对开环SISO系统而言的,它指示出当系统闭环时的相对稳定性。当不带输出变量引用时,可在当前图形窗口中绘制出裕度的Bode图。margin求增益和相位裕度。margin(mag,phase,w)可得到增益和相位裕度,并绘制出Bode图,其中mag、phase和w为由bode或dbode得到的增益、相位裕度及其频率值。margin(num,den)

可计算出连续系统G(s)=num(s)/den(s)表示的增益和相位裕度,[gm,pm,wcp,wcg]=margin(mag,phase,w)可得到增益和相位裕度及相应的频率wcg、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论