MATLAB绘制根轨迹由传递函数求零点和极点在MATLAB控制系统工具箱中,给出了由传递函数对象G求系统零点和极点的函数,其调用格式分别为:Z=tzero(G)P=pole(G)注意:上式中要求的G必须是零极点模型对象。已知传递函数为输入如下命令:num=[6.8,61.2,95.2];den=[1,7.5,22,19.5,0];G=tf(num,den);G1=zpk(G);Z=tzero(G);P=pole(G);结果为:Z=-7-2P=0-3.0000+2.0000i-3.0000-2.0000i-1.5000零极点分布图在MATLAB中,可利用pzmap()函数绘制连续系统的零、极点图,从而分析系统的稳定性,该函数调用格式为:pzmap(num,den)。给定传递函数:利用下列命令可自动打开一个图形窗口,显示该系统的零、极点分布图。用鼠标点击图中零、极点可自动显示其坐标值。num=[3,2,5,4,6];den=[1,3,4,2,7,2];pzmap(num,den)title(‘Pole-ZeroMap’)%图形标题求系统根轨迹rlocus命令可求得系统的根轨迹格式:[r,k]=rlocus(num,den)[r,k]=rlocus(num,den,k)不带输出变量时则绘出系统的根轨迹图,带输出变量时给出一组r,k的对应数据。若给定了k的取值范围,则该命令将按要求绘出图形或数组或者输出指定增益k所对应的r值。每条根轨迹都以不同的颜色区别。某系统开环传递函数为:322()32kGssss要绘制系统的根轨迹,则输入:n=[0002]d=[1320]rlocus(n,d)若要得到指定增益k值对应的r值则输入:n=2;d=[1320];[r,k]=rlocus(n,d,5)结果如下:r=-3.30890.1545+1.7316i0.1545-1.7316ik=5求根轨迹增益rlocfind命令可求得给定根的根轨迹增益。格式:[k,poles]=rlocfind(n,d)[k,poles]=rlocfind(num,den,p)当代有输出变量时,可得到所有极点的座标数据和增益值。不带输出时只得到所选点的座标和增益值。注意:在执行这条命令前最好先执行一次根轨迹的绘图命令,这样就可直接在根轨迹图上选取我们感兴趣的点。其中的p是系统的根,由此可得到对应的增益值。