自动控制原理Matlab程序作业(精)
- 格式:doc
- 大小:375.50 KB
- 文档页数:18
第5章频率特性法频域分析法是一种图解分析法,可以根据系统的开环频率特性去判断闭环系统的性能,并能较方便地分析系统参量对系统性能的影响,从而指出改善系统性能的途径,已经发展成为一种实用的工程方法,其主要内容是:1)频率特性是线性定常系统在正弦函数作用下,稳态输出与输入的复数之比对频率的函数关系。
频率特性是传递函数的一种特殊形式,也是频域中的数学模型。
频率特性既可以根据系统的工作原理,应用机理分析法建立起来,也可以由系统的其它数学模型(传递函数、微分方程等)转换得到,或用实验法来确定。
2)在工程分析和设计中,通常把频率特性画成一些曲线。
频率特性图形因其采用的坐标不同而分为幅相特性(Nyquist图)、对数频率特性(Bode图)和对数幅相特性(Nichols图)等形式。
各种形式之间是互通的,每种形式有其特定的适用场合。
开环幅相特性在分析闭环系统的稳定性时比较直观,理论分析时经常采用;波德图可用渐近线近似地绘制,计算简单,绘图容易,在分析典型环节参数变化对系统性能的影响时最方便;由开环频率特性获取闭环频率指标时,则用对数幅相特性最直接。
3)开环对数频率特性曲线(波德图)是控制系统分析和设计的主要工具。
开环对数幅频特性L(ω)低频段的斜率表征了系统的型别(v),其高度则表征了开环传递系数的大小,因而低频段表征系统稳态性能;L(ω)中频段的斜率、宽度以及幅值穿越频率,表征着系统的动态性能;高频段则表征了系统抗高频干扰的能力。
对于最小相位系统,幅频特性和相频特性之间存在着唯一的对应关系,根据对数幅频特性,可以唯一地确定相应的相频特性和传递函数。
4)奈奎斯特稳定性判据是利用系统的开环幅相频率特性G(jω)H(jω)曲线,又称奈氏曲线,是否包围GH平面中的(-l,j0)点来判断闭环系统的稳定性。
利用奈奎斯特稳定判据,可根据系统的开环频率特性来判断闭环系统的稳定性,并可定量地反映系统的相对稳定性,即稳定裕度。
稳定裕度通常用相角裕量和幅值裕量来表示。
上海电力学院实验报告自动控制原理实验课程题目:用Matlab软件编制劳斯判据程序并解题(《学习辅导》例4.3.5) 班级:姓名:学号:时间:2012年11月4日自动化工程学院自动化(电站自动化)专业实验报告目录一、问题描述 (3)二、理论方法分析 (3)三、实验设计与实现 (3)四、实验结果与分析 (5)五、结论与讨论 (6)六、实验心得体会 (6)七、参考文献 (7)八附录 (7)一、问题描述用MATLAB编制劳斯判据列出其劳斯矩阵并判断相对应系统的稳定性二、理论方法分析采用M文件实现Matlab编程。
1) M文件的建立与调用➢从Matlab操作桌面的“File”菜单中选择“New”菜单项,再选择“M-file”命令,屏幕将出现Matlab文本编辑器的窗口。
➢在Matlab命令窗口的“File”菜单中选择“Open”命令,则屏幕出现“Open”对话框,在文件名对话框中选中所需打开的M文件名。
2) M文件的调试在文件编辑器窗口菜单栏和工具栏的下面有三个区域,右侧的大区域是程序窗口,用于编写程序;最左面区域显示的是行号,每行都有数字,包括空行,行号是自动出现的,随着命令行的增加而增加;在行号和程序窗口之间的区域上有一些小横线,这些横线只有在可执行行上才有,而空行、注释行、函数定义行等非执行行的前面都没有。
在进行程序调试时,可以直接在这些程序上点击鼠标以设置或去掉断点。
三、实验设计与实现(1)程序%RouthMatrix**劳斯矩阵(带参数的特征多项式)并判断对应系统稳定性** clear;syms k z q %定义变量k z qp=input('请输入特征多项式的参数='); %提示输入参数n=length(p); %得到p的长度for i=0:ceil(n/2)-1 %将多项式进行劳斯矩阵排序a(1,i+1)=p(2*i+1);if 2*(i+1)>na(2,i+1)=0;breakenda(2,i+1)=p(2*(i+1));endfor k=3:n %计算从第三行开始劳斯矩阵内容for j=1:ceil((n-k+1)/2)if a(k-1,1)==0 %判断是否有共轭虚根disp('系统有共轭虚根')breaksign=1;breakenda(k,j)=(a(k-1,1)*a(k-2,j+1)-a(k-1,j+1)*a(k-2,1))/a(k-1,1);endenddisp('劳斯矩阵') %输出对应的劳斯矩阵disp(double(a))for i=3:k %用劳斯判据判断系统的稳定性if a(i-1,1)<=0 %判断第一列元素是否不大于0 q=1;breakendendif q==1disp('系统不稳定')elsedisp('系统稳定') %输出系统稳定性判定结果end(2)设计劳斯表的内容根据书上的原理进行设计,将多项式进行劳斯矩阵排序,可得其前两行的内容,余下几行则要根据书上原理写出。
系统数学模型建立num=[1 2];den=[4 3 2 1];model=tf(num,den)model=s + 2-----------------------4 s^3 + 3 s^2 + 2 s + 1num=7*[2 3];den=conv([1 0],[3 2 1]);model=tf(num,den)model =14 s + 21-----------------3 s^3 + 2 s^2 + s系统连接串联:函数调用:series(sys1,sys2)并联:函数调用:parallel(sys1,sys2)反馈:函数调用:feedback(sys1,sys2,sign)sys1前向通道sys2反馈通道sign缺省为负sign=1为正num1=[1];num2=[2];den1=[2 1];den2=[1 2];sys1=tf(num1,den1);sys2=tf(num2,den2);syss=series(sys1,sys2)syss =2---------------2 s^2 + 5 s + 2sysp=parallel(sys1,sys2)sysp =5 s + 4---------------2 s^2 + 5 s + 2sysf=feedback(sys1,sys2)sysf =s + 2---------------2 s^2 + 5 s + 4模型转换传递函数模型—>零极点增益模型函数调用:[z,p,k]=tf2zp(num,den) num=[1 1];den=[1 5 6];[z p k]=tf2zp(num,den);sys=zpk(z,p,k)sys =(s+1)-----------(s+3) (s+2)零极点增益模型—>传递函数模型函数调用:[num,den]=zp2tf(z,p,k) z=[-1];p=[-2 -3];k=1;[num,den]=zp2tf(z,p,k);sys=tf(num,den)sys =s + 1-------------s^2 + 5 s + 6线性系统的阶跃响应函数调用:[Y,T]=step(num,den) [Y ,T]=step(num,den,t) [Y ,T]=step(G) wn=1;zetas=[0:0.2:1,2,3,5];t=0:0.1:12;hold onfor i=1:length(zetas)G=tf(wn^2,[1,2*zetas(i)*wn,wn^2]);step(G,t),grid onendhold offtitle('当\omega_n=1,\zeta=0,0.2,...1,2,3,5时系统的单位阶跃响应曲线')024681012当ωn =1,ζ=0,0.2,...1,2,3,5时系统的单位阶跃响应曲线Time (seconds)A m p l i t u d e控制系统性能指标计算上升时间tr 峰值时间tp 超调量pos 调整时间ts线性系统的单位脉冲响应函数调用:[Y,T]=impulse(num,den) [Y ,T]=impulse(num,den,t) [Y,T]=impulse(G) G=tf(1,[1 0.4 1]);impulse(G);grid ontitle('G(s)=1/(s^2+0.4s+1)的单位脉冲响应曲线')05101520253035G(s)=1/(s 2+0.4s+1)的单位脉冲响应曲线Time (seconds)A m p l i t u d e线性系统的任意输入响应函数调用:[Y,T]=lsim(num,den,u,t) [Y ,T,X]=lsim(num,den,u,t,x0) u 指定时间序列上的输入值;x0指定初始状态;G=tf(1,[1 0.4 1]);t=0:0.1:10;r=t;y=lsim(G,r,t);plot(t,r,t,y,'o');grid on;title('G(s)=1/(s^2+0.4s+1)的单位斜坡响应曲线')G(s)=1/(s2+0.4s+1)的单位斜坡响应曲线线性系统的稳定性分析函数调用:roots(den)计算特征方程den全部极点den=conv([1 3],[1 2 2]);roots(den)ans =-3.0000 + 0.0000i-1.0000 + 1.0000i-1.0000 - 1.0000i绘制系统开环零极点函数调用:[p,z]=pzmap(num,den) [p,z]=pzmap(p,z) num=[1 2];den=conv([1 3],[1 2 2]);pzmap(num,den)title('G(s)=(s+2)/((s+3)(s^2+2s+2))开环零极点');-1.5-1-0.500.511.5G(s)=(s+2)/((s+3)(s 2+2s+2))开环零极点Real Axis (seconds -1)I m a g i n a r y A x i s (s e c o n d s -1)绘制系统根轨迹函数调用:[R,K]=rlocus(num,den) [R,K]=rlocus(num,den,K) num=[1 2];den=conv([1 3],[1 2 2]);rlocus(num,den);title('G(s)=(s+2)/((s+3)(s^2+2s+2))180度根轨迹曲线');G(s)=(s+2)/((s+3)(s 2+2s+2))180度根轨迹曲线Real Axis (seconds -1)I m a g i n a r y A x i s (s e c o n d s -1)计算给定一组特征根的根轨迹增益ki函数调用:[K,poles]=rlocfind(num,den) [K,poles]=rlocfind(num,den,P) num=[1 2];den=conv([1 3],[1 2 2]);rlocfind(num,den)title('G(s)=(s+2)/((s+3)(s^2+2s+2))给定一组特征根的根轨迹增益ki');根轨迹设计工具函数调用:rltool() rltool(num,den) rltool(G)绘制系统的奈式图函数调用:nyquist(sys) nyquist(sys,w)[re,im,w]=nyquist(sys) [re,im,w]=nyquist(sys,w) num=[1 2];den=conv([1 3],[1 2 2]);nyquist(num,den);title('G(s)=(s+2)/((s+3)(s^2+2s+2))奈式图曲线');-1-0.8-0.6-0.4-0.200.20.4G(s)=(s+2)/((s+3)(s 2+2s+2))奈式图曲线Real Axis I m a g i n a r y A x i s绘制系统的伯德图函数调用:bode(sys) bode(sys,w)[mag,phase,w]=bode(sys) [mag,phase,w]=bode(sys,w) num=10*[1 2];den=conv([1 3],[1 2 2]);bode(num,den);title('G(s)=(s+2)/((s+3)(s^2+2s+2))伯德曲线');M a g n i t u d e (d B )1010101010P h a s e (d e g )G(s)=10(s+2)/((s+3)(s 2+2s+2))伯德曲线Frequency (rad/s)系统的相对稳定性函数调用:margin(sys) [Gm,Pm,Wcg,Wcp]=margin(sys) num=10*[1 2];den=conv([1 3],[1 2 2]);[Gm,Pm,Wcg,Wcp]=margin(num,den)Gm =Inf 无穷大Pm =54.1970 相角裕度Wcg =InfWcp =2.8597基于MATLAB 的控制系统设计串联超前校正 leadc();I 型系统的渐进稳定性分析i )绘制I 型系统根轨迹Real Axis (seconds -1)I m a g i n a r y A x i s (s e c o n d s -1)num1=500;den1=conv(conv([1,0],[0.007,1]),[0.9,1]);rlocus(num1,den1);grid onhold offtitle('根轨迹曲线');ii )求解I 型系统特征根Gp=tf([500],conv([1,0],conv([0.007,1],[0.9,1]))); H=tf([1]);G=feedback(Gp,H);p=eig(G)p =1.0e+02 *-1.4658 + 0.0000i0.0131 + 0.2323i0.0131 - 0.2323i结论:根据根轨迹与求解其特征根的形式判断该I 型系统不稳定。
实验一 MATLAB及仿真实验(控制系统的时域分析)一、实验目的学习利用MATLAB进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性;二、预习要点1、系统的典型响应有哪些?2、如何判断系统稳定性?3、系统的动态性能指标有哪些?三、实验方法(一)四种典型响应1、阶跃响应:阶跃响应常用格式:1、;其中可以为连续系统,也可为离散系统。
2、;表示时间范围0---Tn。
3、;表示时间范围向量T指定。
4、;可详细了解某段时间的输入、输出情况。
2、脉冲响应:脉冲函数在数学上的精确定义:其拉氏变换为:所以脉冲响应即为传函的反拉氏变换。
脉冲响应函数常用格式:①;②③(二)分析系统稳定性有以下三种方法:1、利用pzmap绘制连续系统的零极点图;2、 利用tf2zp 求出系统零极点;3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.四、实验内容 (一) 稳定性1. 系统传函为()27243645232345234+++++++++=s s s s s s s s s s G ,试判断其稳定性2. 用Matlab 求出的极点。
%Matlab 计算程序num=[3 2 5 4 6];den=[1 3 4 2 7 2];G=tf(num,den);pzmap(G);p=roots(den) 运行结果: p =-1.7680 + 1.2673i -1.7680 - 1.2673i 0.4176 + 1.1130i 0.4176 - 1.1130i -0.2991P ole-Zero MapReal AxisI m a g i n a r y A x i s-2-1.5-1-0.500.5-1.5-1-0.50.511.5图1-1 零极点分布图由计算结果可知,该系统的2个极点具有正实部,故系统不稳定。
实验一 MATLAB 及仿真实验(控制系统的时域分析)一、实验目的学习利用MATLAB 进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性; 二、预习要点1、 系统的典型响应有哪些2、 如何判断系统稳定性3、 系统的动态性能指标有哪些 三、实验方法(一) 四种典型响应1、 阶跃响应:阶跃响应常用格式:1、)(sys step ;其中sys 可以为连续系统,也可为离散系统。
2、),(Tn sys step ;表示时间范围0---Tn 。
3、),(T sys step ;表示时间范围向量T 指定。
4、),(T sys step Y =;可详细了解某段时间的输入、输出情况。
2、 脉冲响应:脉冲函数在数学上的精确定义:0,0)(1)(0〉==⎰∞t x f dx x f其拉氏变换为:)()()()(1)(s G s f s G s Y s f ===所以脉冲响应即为传函的反拉氏变换。
脉冲响应函数常用格式: ① )(sys impulse ; ②);,();,(T sys impulse Tn sys impulse③ ),(T sys impulse Y =(二) 分析系统稳定性 有以下三种方法:1、 利用pzmap 绘制连续系统的零极点图;2、 利用tf2zp 求出系统零极点;3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.四、实验内容 (一) 稳定性1. 系统传函为()27243645232345234+++++++++=s s s s s s s s s s G ,试判断其稳定性2. 用Matlab 求出253722)(2342++++++=s s s s s s s G 的极点。
%Matlab 计算程序num=[3 2 5 4 6];den=[1 3 4 2 7 2];G=tf(num,den);pzmap(G);p=roots(den)运行结果: p =+ - + -P ole-Zero MapReal AxisI m a g i n a r y A x i s-2-1.5-1-0.500.5-1.5-1-0.50.511.5图1-1 零极点分布图由计算结果可知,该系统的2个极点具有正实部,故系统不稳定。
matlab课程设计自动控制原理一、教学目标本课程的目标是使学生掌握自动控制原理的基本概念和MATLAB在自动控制领域的应用。
通过本课程的学习,学生应能理解自动控制系统的组成、工作原理和设计方法,熟练运用MATLAB进行自动控制系统的分析和仿真。
知识目标:学生通过本课程的学习,应掌握自动控制基本理论、MATLAB基本操作和自动控制系统仿真方法。
技能目标:学生应能熟练使用MATLAB进行自动控制系统的建模、仿真和分析,具备一定的实际问题解决能力。
情感态度价值观目标:培养学生对自动控制技术的兴趣和热情,提高学生运用现代技术手段进行科学研究的能力,培养学生的创新精神和团队合作意识。
二、教学内容本课程的教学内容主要包括自动控制原理的基本概念、MATLAB的基本操作和自动控制系统的仿真方法。
1.自动控制原理:包括自动控制系统的组成、数学模型、稳定性分析、控制器设计和校正方法等。
2.MATLAB基本操作:包括MATLAB的安装和启动、变量和数据类型、矩阵运算、编程和函数的使用等。
3.自动控制系统仿真:包括MATLAB仿真环境的设置、Simulink的介绍和应用、控制系统仿真的方法和步骤等。
三、教学方法本课程采用讲授法、案例分析法和实验法相结合的教学方法。
1.讲授法:通过教师的讲解,使学生掌握自动控制原理的基本概念和MATLAB的基本操作。
2.案例分析法:通过分析实际案例,使学生理解和掌握自动控制系统的建模和仿真方法。
3.实验法:通过上机实验,使学生熟练掌握MATLAB自动控制系统仿真工具的使用,提高学生的实际操作能力。
四、教学资源本课程的教学资源包括教材、多媒体资料和实验室设备。
1.教材:选用《自动控制原理》和《MATLAB基础教程》作为主要教材,为学生提供系统的理论知识和实践指导。
2.多媒体资料:制作课件、教学视频等,以图文并茂的形式展示自动控制原理和MATLAB的操作方法。
3.实验室设备:提供计算机和MATLAB软件,供学生进行自动控制系统的仿真实验。
实验七 控制系统的MATLAB 分析一、 实验目的1)、掌握如何使用Matlab 进行系统的时域分析 2)、掌握如何使用Matlab 进行系统的频域分析 3)、掌握如何使用Matlab 进行系统的根轨迹分析 4)、掌握如何使用Matlab 进行系统的稳定性分析 5)、掌握使用Bode 图法进行控制系统设计的方法 二、 实验内容 1、时域分析法根据下面传递函数模型:绘制其单位阶跃响应曲线并从图上读取最大超调量,绘制系统的单位脉冲响应、零输入响应曲线。
1)、某单位负反馈系统传递函数为:8106)65(5)(232+++++=s s s s s s Gt (seconds)c (t )t (seconds)c (t )结论:2)、典型二阶系统传递函数为:2222)(nn nc s s s G ωξωω++= 当ζ=0.7,ωn 取2、4、6、8、10、12的单位阶跃响应。
Step ResponseTime (seconds)00.51 1.52 2.53 3.54结论:3)、典型二阶系统传递函数为:2222)(nn nc s s s G ωξωω++= 当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。
Time (seconds)结论:2、频率分析法根据下面传递函数模型,绘制出系统的频率响应曲线,包括Bode 图和Nyquist 图,并从图上读取相角交接频率、截止频率,并求出幅值裕度和相角裕度。
1)、典型二阶系统传递函数为:2222)(nn nc s s s G ωξωω++= 当ζ=0.7,ωn 取2)、4)、6)、8、1)0、1)2)的伯德图和奈奎斯特图。
Wn=2M a g n i t u d e (d B )10101010P h a s e (d e g )Bode DiagramGm = Inf dB (at Inf rad/s) , Pm = 164 deg (at 0.4 rad/s)Frequency (rad/s)Real AxisI m a g i n a r y A x i sWn=4M a g n i t u d e (d B )10101010P h a s e (d e g )Bode DiagramFrequency (rad/s)Real AxisI m a g i n a r y A x i sWn=6M a g n i t u d e (d B )1010101010P h a s e (d e g )Bode DiagramFrequency (rad/s)Real AxisI m a g i n a r y A x i sWn=8M a g n i t u d e (d B )1010101010P h a s e (d e g )Bode DiagramFrequency (rad/s)Real AxisI m a g i n a r y A x i sWn=10M a g n i t u d e (d B )1010101010P h a s e (d e g )Bode DiagramFrequency (rad/s)Real AxisI m a g i n a r y A x i sWn=12M a g n i t u d e (d B )1010101010P h a s e (d e g )Bode DiagramFrequency (rad/s)Real AxisI m a g i n a r y A x i s2)、典型二阶系统传递函数为:2222)(nn nc s s s G ωξωω++= 当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图和奈奎斯特图。
第1章控制系统的基本概念本章介绍了自动控制的定义,自动控制系统的组成、工作原理和相关的常用术语。
比较了开环控制系统和闭环控制系统,并进一步说明了其优缺点和适用范围,介绍了典型闭环系统的功能框图。
需要重点掌握负反馈在自动控制系统中的作用,闭环系统(或反馈系统)的特征是:采用负反馈,系统的被控变量对控制作用有直接影响,即被控变量对自身有控制作用。
在分析系统的工作原理时,确定控制系统的被控对象、控制量和被控制量,根据控制系统的工作原理及各元件信号的传送方向,可画出控制系统的职能方框图。
方框图是分析控制系统的基础。
本章的难点在于由系统的物理结构图或工作原理示意图绘出系统元件框图。
按照不同的分类方法可以将自动控制系统分成不同的类型,实际系统可能是几种方式的组合。
对自动控制系统的基本要求包括:系统首先必须是稳定的;系统的稳态控制精度要高,即稳态误差要小;系统的动态性能要好,即系统的响应过程要平稳,响应过程要快。
这些要求可归纳成稳、准、快三个字。
教材习题同步解析1.1 试列举几个日常生活中的开环控制和闭环控制系统的例子,并简述其工作原理。
解:1)开环控制最普通的热得快,加热到一定程度提醒断电,但不会自主断电,需要人为去断电。
电风扇,人工转换电扇档位实现转速的控制,但不能根据环境温度自动调节。
洗衣机,洗衣人根据经验,预先设定洗涤、漂洗等洗衣程序,则洗衣机根据设定的程序完成洗衣过程。
系统的被控制量(输出量)没有通过任何装置反馈回输入端,对系统的控制不起作用。
2)闭环系统饮水机或电水壶,自动断电保温,加温到一定温度停止加温,进入保温状态;温度降低进入加温状态,如此循环。
自动调温空调,当环境温度高于或低于设定温度时,空调制冷系统自动开启,调定室温到设定值。
全自动洗衣机的水位控制,红外传感器扫描水位高低,当水位合适时,洗衣机自动停止加水。
走道路灯的声光控制系统,基本工作原理如下:白天或夜晚光线较亮时,光控部分将开关自动关断,声控部分不起作用。
《自动控制原理》Matlab求解控制系统时域响应实验一、实验目的(1)学习控制系统在阶跃信号、脉冲信号、速度函数、加速度函数等不同输入信号下的响应(2)通过计算机的仿真图形观测二阶控制系统的时域响应曲线。
(3)改变ξ和ωn,观测参数变化时对典型环节时域响应的影响。
二、实验仪器Matlab7.0,计算机三、实验原理1、求解连续系统时域响应的MATLAB函数Impulse函数计算/绘制连续系统的单位脉冲响应句法:step函数lsim函数计算/绘制连续系统在0~t时间内的对任意输入u的响应。
上述函数句法中带输出变量引用时,得到系统的时域响应数据而不直接显示响应曲线,此时需通过绘图命令plot查看响应曲线。
四、实验内容及步骤(分析:无阻尼固有频率一定,阻尼比越小,系统超调量越大,振荡越厉害)五、实验原始数据记录与数据处理当ζ=0.7,ωn取2、4、6、8、10、12时的单位阶跃响应曲线。
六、实验结果与分析讨论无阻尼固有频率一定,阻尼比越小,系统超调量越大,振荡越厉害。
阻尼比一定,无阻尼固有频率越大,系统能更快达到稳定值,响应的快速性越好七、结论控制系统在阶跃信号、脉冲信号、速度函数、加速度函数等不同输入信号下的响应不同,无阻尼固有频率一定,阻尼比越小,系统超调量越大,振荡越厉害。
阻尼比一定,无阻尼固有频率越大,系统能更快达到稳定值,响应的快速性越好。
八、实验心得体会(可略)通过这次实验我学到了很多,首先是对单位脉冲响应,单位加速度响应,单位速度响应,单位阶跃响应有了一定的认知,对matlab软件有了更深的认识,会使用的功能越来越多了,希望在今后的学习生涯中能学到更多的知识。