《自动控制原理》实验指导书实验指导书北京科技大学自动化学院控制科学与工程系2013年4月自动控制原理实验指导书I目录实验一典型系统的时域响应和稳定性分析...................................................1实验二用MATLAB建立传递函数模型.........................................................5实验三利用MATLAB进行时域分析...........................................................13实验四线性定常控制系统的稳定分析.........................................................25实验五利用MATLAB绘制系统根轨迹.......................................................29实验六线性系统的频域分析.........................................................................37实验七基于MATLAB控制系统频域法串联校正设计...............................51附录1MATLAB简介......................................................................................58附录2SIMULINK简介...................................................................................67自动控制原理实验指导书1实验一典型系统的时域响应和稳定性分析一、实验目的1.研究二阶系统的特征参量(ξ、ωn)对过渡过程的影响。2.研究二阶对象的三种阻尼比下的响应曲线及系统的稳定性。3.熟悉Routh判据,用Routh判据对三阶系统进行稳定性分析。二、实验设备PC机一台,TD-ACC+教学实验系统一套。三、实验原理及内容1.典型的二阶系统稳定性分析(1)结构框图:如图1-1所示。TS+1R(S)C(S)K1+_TS110E(S)图1-1(2)对应的模拟电路图:如图1-2所示。r(t)_20K20K_R200K-C(t)_500K2uF1uF20K_10K10KC(t)输出测量端输出输入图1-2(3)理论分析系统开环传递函数为:G(s)=?开环增益:K=?先算出临界阻尼、欠阻尼、过阻尼时电阻R的理论值,再将理论值应用于模拟自动控制原理实验指导书2电路中,观察二阶系统的动态性能及稳定性,应与理论分析基本吻合。在此实验中由图1-2,可以确地1-1中的参数。0?T,1?T,1?K?K系统闭环传递函数为:()?Ws其中自然振荡角频率:?n;阻尼比:?。2.典型的三阶系统稳定性分析(1)结构框图:如图1-3所示。TS+1R(S)K2+_TS120E(S)TS+1C(S)K11图1-3(2)模拟电路图:如图1-4所示。r(t)_20K20K_R100KC(t)_100K1uF1uF20K_10K10K测量端输入_500K2uF输出500K图1-4(3)理论分析系统的开环传函为:()()?GsHs系统的特征方程为:1()()0GsHs。(4)实验内容实验前由Routh判断得Routh行列式为:S3S2S1S0为了保证系统稳定,第一列各值应为正数,因此可以确定自动控制原理实验指导书3系统稳定K值的范围系统临界稳定K系统不稳定K值的范围四、实验步骤1)将信号源单元的“ST”端插针与“S”端插针用“短路块”短接。由于每个运放单元均设置了锁零场效应管,所以运放具有锁零功能。将开关分别设在“方波”档和“500ms~12s”档,调节调幅和调频电位器,使得“OUT”端输出的方波幅值为1V,周期为10s左右。2.)典型二阶系统瞬态性能指标的测试(1)按模拟电路图1-2接线,将1中的方波信号接至输入端,取R=10KΩ。(2)用示波器观察系统响应曲线C(t),测量并记录超调MP、峰值时间tp和调节时间tS。(3)分别按R=20KΩ;40KΩ;100KΩ;改变系统开环增益,观察响应曲线C(t),测量并记录性能指标MP、tp和tS,及系统的稳定性。并将测量值和计算值进行比较(实验前必须按公式计算出)。将实验结果填入表1-1中。3)典型三阶系统的性能(1)按图1-4接线,将1中的方波信号接至输入端,取R=30KΩ。(2)观察系统的响应曲线,并记录波形。(3)减小开环增益(R=41.7KΩ;100KΩ),观察响应曲线,并将实验结果填入表1-3中。表1-3中已填入了一组参考测量值,供参照。五、实验现象分析1)典型二阶系统瞬态性能指标实验测试值表1-1参数项目R(KΩ)KωnξC(tp)C(∞)MP(%)tP(s)tS(s)响应情况理论值测量值理论值测量值理论值测量值0ξ1欠阻尼1050ξ=1临界阻尼160ξ1过阻尼200自动控制原理实验指导书4其中21eMp,2np1t,ns4t,21pe1)t(C2)典型三阶系统在不同开环增益下的响应情况表1-2R(KΩ)开环增益K稳定性表1-3R(KΩ)开环增益K稳定性3016.7不稳定发散41.712临界稳定等幅振荡1005稳定衰减收敛注意:在做实验前一定要进行对象整定,否则将会导致理论值和实际测量值相差较大。自动控制原理实验指导书5实验二用MATLAB建立传递函数模型一、实验目的(1)熟悉MATLAB实验环境,掌握MATLAB命令窗口的基本操作;(2)掌握MATLAB建立控制系统数学模型的命令及模型相互转换的方法;(3)掌握使用MATLAB命令化简模型基本连接的方法;(4)学会使用Simulink模型结构图化简复杂控制系统模型的方法。二、实验原理及内容控制系统常用的数学模型有四种:传递函数模型(tf对象)、零极点增益模型(zpk对象)、结构框图模型和状态空间模型(ss对象)。经典控制理论中数学模型一般使用前三种模型,状态空间模型属于现代控制理论范畴。1、有理函数模型线性连续系统的传递函数模型可一般地表示为:mnasasasbsbsbsbsGnnnnmmmm)(1111121(1)将系统的分子和分母多项式的系数按降幂的方式以向量的形式输入给两个变量num和den,就可以轻易地将传递函数模型输入到MATLAB环境中。命令格式为:],,,,[121mmbbbbnum;(2)],,,,,1[121nnaaaaden;(3)用函数tf()来建立控制系统的传递函数模型,该函数的调用格式为:G=tf(num,den);(4)例1一个简单的传递函数模型:54325)(234ssssssG可以由下面的命令输入到MATLAB工作空间中去。num=[1,2];den=[1,2,3,4,5];G=tf(num,den)运行结果:Transferfunction:s+2-----------------------------s^4+2s^3+3s^2+4s+5自动控制原理实验指导书6这时对象G可以用来描述给定的传递函数模型,作为其它函数调用的变量。例2一个稍微复杂一些的传递函数模型:)6()13()5(6)(22sssssGnum=6*[1,5];den=conv(conv([1,3,1],[1,3,1]),[1,6]);tf(num,den)运行结果Transferfunction:6s+30-----------------------------------------s^5+12s^4+47s^3+72s^2+37s+6其中conv()函数(标准的MATLAB函数)用来计算两个向量的卷积,多项式乘法也可以用这个函数来计算。该函数允许任意地多层嵌套,从而表示复杂的计算。【自我实践1】建立控制系统的传递函数模型:25()(1)(44)Gsssss2、零极点模型线性系统的传递函数还可以写成极点的形式:)())(()())(()(2121nmpspspszszszsKsG将系统增益K、零点-zi和极点-pj以向量的形式输入给三个变量KGain、Z和P,命令格式为:;KKGain(6);;;;][21mzzzZ(7);;;;][21npppP(8)用函数命令zpk()来建立系统的零极点增益模型,其函数调用格式为:G=zpk(Z,P,KGain)(9)例3某系统的零极点模型为:)6412.00433.0)(2272.19567.0()9287.00353.0)(9294.1(6)(jsjsjsssGKGain=6;自动控制原理实验指导书7z=[-1.9294;-0.0353+0.9287j;-0.0353-0.9287j];p=[-0.9567+1.2272j;-0.9567-1.2272j;0.0433+0.6412j;0.0433-0.6412j];G=zpk(z,p,KGain)运行结果:Zero/pole/gain:6(s+1.929)(s^2+0.0706s+0.8637)---------------------------------------------------------(s^2-0.0866s+0.413)(s^2+1.913s+2.421)注意:对于单变量系统,其零极点均是用列向量来表示的,故z、p向量中各项均用分号(;)隔开。【自我实践2】建立控制系统的零极点模型:228(1)(1)()(5)(6)(1)sjsjGsssss3、控制系统模型间的相互转换零极点模型转换为传递函数模型:[num,den]=zp2tf(z,p,k)传递函数模型转化为零极点模型:[z,p,k]=tf2zp(num,den)例4给定系统传递函数为:sssssssG5.19225.72.952.618.6)(2342对应的零极点模型可由下面的命令得出num=[6.8,61.2,95.2];den=[1,7.5,22,19.5,0];G=tf(num,den);G1=zpk(G)显示结果:Zero/pole/gain:6.8(s+7)(s+2)------------------------------s(s+1.5)(s^2+6s+13)可见,在系统的零极点模型中若出现复数值,则在显示时将以二阶因子的形式表示相应的共轭复数对。例5给定零极点模型:)5.1)(23())7)(2(8.6)(sjsssssG可以用下面的MATLAB命令立即得出其等效的传递函数模型。输入程序时要注意大小写。自动控制原理实验指导书8Z=[-2,-7];P=[0,-3-2j,-3+2j,-1.5];K=6.8;G=zpk(Z,P,K);G1=tf(G)结果显示:Transferfunction:6.8s^2+61.2s+95.2---------------------------------------s^4+7.5s^3+22s^2+19.5s【自我实践3】已知系统传递函数23256()2ssGssss,求其等效的零极点模型。【自我实践4】建立控制系统的多项式模型:8(1)(2)()(5)(6)(3)ssGsssss。4、反馈系统结构图模型设反馈系统结构图如图所示。图2-1反馈系统结构图两个环节反馈连接后,其等效传递函数可用feedback()函数求得,其调用格式为:sys=feedback(G1,G2,sign)其中sign是反馈极性,sign缺省时,默认为负反馈,sign=-1;正反馈时,sign=1;单位反馈时,G2=1,且不能