自控实验指导书.docx
- 文档编号:17171311
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:27
- 大小:285.67KB
自控实验指导书.docx
《自控实验指导书.docx》由会员分享,可在线阅读,更多相关《自控实验指导书.docx(27页珍藏版)》请在冰点文库上搜索。
自控实验指导书
自动控制原理实验指导
(第一版)
湖南城市学院通信与电子工程学院
序言
高等教育最初的社会功能是培养精英人才。
产业革命的兴起,使高等院校培养高级专门人才的功能得以逐渐发展,各发达国家的高等教育打破了传统的单一学科教育模式,越来越多地面向行业需要培养应用性人才。
新世纪伊始来,我国高等教育进入快速发展期,新增了一大批地方本科院校,这些院校中的电气信息及自动化类专业占据了很大的生源比例。
此类专业的学生就业渠道广,薪酬较丰厚,同时又为日后创业打下了坚实的技术基础。
在教与学的过程中,专业基础课程的教学对于专业特色的凝练和专业素质的培养具有积极的促进作用。
《自动控制原理》课程是电气信息及自动化类专业共同的重要专业基础课程,该课程全面阐述控制工程的基本思想与应用,理论严谨,系统性强,该课程的教学不仅可以为各专业的后续专业课程打下坚实的基础,而且对于培养学生的辩证思维能力和创新能力,树立理论联系实际的科学观点,提高综合分析问题和解决问题的能力都具有重要的意义。
因此,自动控制技术课程教学内容和体系建设的改革对提高学生竞争力、更好的服务地方经济具有十分重要的现实意义。
笔者研究的项目“地方本科院校电气信息及自动化类专业自动控制技术课程建设的改革与研究”2009年5月立项为湖南城市学院教学改革课题。
立项以来,在电气信息类专业自动控制技术课程建设上着手改革,围绕电子信息工程(电子工程方向)、电子信息工程(自动控制方向)和通信工程等专业自动控制技术课程的课堂教学进行教学内容的整合以及教学方法和课程测试方法的改革;在推进改革的手段上,以通信与电子工程学院相应年级的本科生作为实施本课题的载体。
经过较长时间的研究,提出了“地方高等院校电气信息及自动化类专业自动控制技术教学基本要求”,并在此基础上编写了《自动控制原理实验指导》以供内部学习使用。
《自动控制原理实验指导》在编写的过程中,得到湖南城市学院教务处与通信与电子工程学院领导的大力支持,信息工程教研室肖卫初老师和电子技术实验室邱飚老师进行了审订工作,在此表示衷心的感谢。
本实验指导仅供内部学习及交流使用。
崔治
2010年9月1日
目录
实验一控制系统的数学模型及MATLAB实现………………………………………1
1.实验目的.………………………………………………………………………1
2.实验原理…………………………………………………………….................1
3.实验内容………………………………………………………………….........2
4.实验报告及要求……………………………………………………………….3
实验二时域响应和稳定性分析………………………………………………..……7
1.实验目的.………………………………………………………………………7
2.实验原理…………………………………………………………….................7
3.实验内容………………………………………………………………….......12
4.实验报告及要求…………………………………………………………..….13
实验三控制系统的根轨迹…………………………………………………………14
1.实验目的.…………………………………………………………………..…14
2.实验原理……………………………………………………………...............14
3.实验内容………………………………………………………………….......19
4.实验报告及要求…………………………………………………………..….19
实验四控制系统的频率特性及稳定性分析…………………………………..…..20
1.实验目的.……………………………………………………………………..20
2.实验原理……………………………………………………………...............20
3.实验内容………………………………………………………………….......27
4.实验报告及要求……………………………………………………………...27
实验五控制系统的SIMULINK仿真………………………………………………..28
1.实验目的.…………………………………………………………………..…28
2.实验原理……………………………………………………………...............28
3.实验内容………………………………………………………………….......29
4.实验报告及要求…………………………………………………………..….29
实验一控制系统的数学模型及MATLAB实现
一、实验目的
1.熟悉和了解MATLAB的基本使用环境,通过该实验,使学生初步掌握MATLAB软件使用的基本方法。
2.熟悉MATLAB程序设计的基本方法
3.掌握控制系统几种常见模型的建立方法
二、实验原理
1.控制系统模型的建立
◆连续系统的传递函数模型
连续系统的传递函数如下:
对线性定常系统,式中s的系数均为常数,且a1不等于零,这时系统在MATLAB中可以方便地由分子和分母系数构成的两个向量唯一地确定出来,这两个向量分别用num和den表示:
num=[b1,b2,…,bm,bm+1]
den=[a1,a2,…,an,an+1]
注意:
它们都是按s的降幂进行排列的。
◆零极点增益模型
零极点模型实际上是传递函数模型的另一种表现形式,其原理是分别对原系统传递函数的分子、分母进行分解因式处理,以获得系统的零点和极点的表示形式。
K为系统增益,
为零点,
为极点
Ø在MATLAB中零极点增益模型用[z,p,K]矢量组表示。
即:
Øz=[z1,z2,…,zm]
Øp=[p1,p2,...,pn]
ØK=[k]
Ø
◆复杂传递函数形式(借助多项式乘法函数conv来处理)
MATLAB程序为:
num=4*conv([1,2],conv([1,6,6],[1,6,6]));
den=conv([1,0],conv([1,1],conv([1,1],conv([1,1],[1,3,2,5]))));
2.生成典型系统
●随机生成N阶稳定的线性连续系统
[num,den]=rmodel(N,p);该系统有P个输出量
●生成二阶系统
[num,den]=ord2(wn,z)
●模型的组合
串联:
sys=series(s1,s2)
并联:
sys=parallel(s1,s2)
反馈:
sys=feedback(s1,s2,sign);sign表正或负反馈,空缺默认为负反馈
3.模型的转换
●连续系统——离散系统
Sysd=c2d(sysc,Ts,method);Ts:
采样周期
method:
’zoh’零阶保持器‘foh’一阶保持器
‘thstin’双线性变换‘matched’根匹配法
●离散系统——连续系统
Sysc=d2c(sysd,method)
●改变采样频率
Sys=d2d(sys,Ts)
三、实验内容:
1.运行下列程序并观察结果
(1)生成连续系统的传递函数模型
S1=tf([3,4,5],[1,3,5,7,9])
(2)生成离散系统的传递函数模型
S2=tf([3,4,5],[1,3,5,7,9],0.1,’InputName’,’电流’,’OutputName’,’转速’)
(3)模型转换
S3=filt([3,4,5],[1,3,5,7,9],0.1)
(4)生成连续系统的零极点模型
Z={[];-0.5}
P={0.3;[0.1+2j,0.2-2j]}
K=[2;3]
S5=zpk(z,p,k)
2.
(生成传递函数分子、分母模型多项式模型)
3.
(生成零极点增益模型)
4.
(编程求其传递函数)
5.
,Td=0.35s,用一阶保持器将其离散,Ts=0.1s
6.同步电机传递函数为
,Ts=0.1s,以电流为输入变量名,转速为输出变量名,生成电机系统的离散模型。
四、实验报告要求
利用所学知识,编写实验内容的相应程序,实验时仿真,将2-6中任意三道的程序与运行结果做在报告纸上。
实验二时域响应和稳定性分析
一、实验目的
1.研究一阶惯性环节的参数T对系统动态性能的影响。
2.二阶系统的特征参数阻尼比
和无阻尼自然震荡角频率
对系统动态性能的影响
3.掌握利用MATLAB对典型环节进行时域分析,并计算性能指标的方法。
4.应用MATLAB判断系统的稳定性。
二、实验原理
1.时域分析的一般方法
一时域分析是一种直接在时间域中对系统进行分析的方法,具有直观和准确的优点。
它是根据控制系统输入与输出之间的时域表达式,分析系统的稳定性、瞬态过程和稳态误差。
控制系统最常用的分析方法有两种:
一是当输入信号为单位阶跃时,求出系统的响应;二是当输入信号为单位冲激函数时,求出系统的响应。
在MATLAB的控制系统工具箱中提供了求取这两种输入下系统响应的函数。
求取系统单位阶跃响应:
step()
求取系统的冲激响应:
impulse()
◆step()函数的用法
Øy=step(num,den,t):
其中num和den分别为系统传递函数描述中的分子和分母多项式系数,t为选定的仿真时间向量,一般可以由t=0:
step:
end等步长地产生出来。
该函数返回值y为系统在仿真时刻各个输出所组成的矩阵。
Ø[y,x,t]=step(num,den):
此时时间向量t由系统模型的特性自动生成,状态变量x返回为空矩阵。
说明:
(1)如果对具体的响应值不感兴趣,而只想绘制系统的阶跃响应曲线,可调用以下的格式:
step(num,den);step(num,den,t);
(2)线性系统的稳态值可以通过函数dcgain()来求取,其调用格式为:
dc=dcgain(num,den)
例1已知系统的开环传递函数为:
求系统在单位负反馈下的阶跃响应曲线。
MATLAB程序为:
clc
clear
closeall
%开环传递函数描述
num=[20];
den=[1836400];
%求闭环传递函数
[numc,denc]=cloop(num,den);
%绘制闭环系统的阶跃响应曲线
t=0:
0.1:
10;单位负反馈下的阶跃响应线
y=step(numc,denc,t);
[y1,x,t1]=step(numc,denc);
%对于传递函数调用,状态变量x返回为空矩阵
plot(t,y,'r:
',t1,y1)
title('thestepresponce')
xlabel('time-sec')
%求稳态值
disp('系统稳态值dc为:
')
dc=dcgain(numc,denc)
◆impulse()函数的用法
求取脉冲激励响应的调用方法与step()函数基本一致。
y=impulse(num,den,t);[y,x,t]=impulse(num,den);[y,x,t]=impulse(A,B,C,D,iu,t)
impulse(num,den);impulse(num,den,t)
例2.已系统传递函数为:
求脉冲响应。
MATLAB程序如下:
MATLAB程序为:
sys=tf(4,[114]);%生成传递函数模型
impulse(sys);%计算并绘制系统的单位冲激响应
title('脉冲响应');
系统的脉冲响应
系统的脉冲响应
◆常用时域分析函数
时间响应探究系统对输入和扰动在时域内的瞬态行为,系统特征如:
上升时间、调节时间、超调量和稳态误差都能从时间响应上反映出来。
MATLAB除了提供前面介绍的对系统阶跃响应、冲激响应等进行仿真的函数外,还提供了大量对控制系统进行时域分析的函数,如:
Gensig:
生成任意激励信号,格式1[u,t]=gensig(type,tau);按类型和周期生成u
格式2[u.t]=gensig(type,tau,tf,Ts);指定持续时间和采样周期
例如,生成一个周期5S,持续30S,采样周期0.1S的正弦波
程序如下:
[u,t]=gensig(‘sin’,5,30,0.1)
Plot(t,u);xlabel(‘t’);ylabel(‘sin(t)’)
covar:
连续系统对白噪声的方差响应
initial:
连续系统的零输入响应
lsim:
连续系统对任意输入的响应,格式lsim(sys,u,T)
例如,u(t)=sin(t),持续5s
程序如下:
t=0:
0.01:
5;u=sin(t);lsim(sys,u,t)
对于离散系统只需在连续系统对应函数前加d就可以,如dstep,dimpulse等。
它们的调用格式与step、impulse类似,可以通过help命令来察看自学。
2.系统性能指标分析
系统单位阶跃响应曲线
◆一阶惯性环节T对系统动态性能的影响
例3:
知系统传递函数为:
,分别作T=0.1,1,10时的响应曲线。
MATLAB程序为:
subplot(3,3,1);num=1;den=[0.1,1];step(num,den)
subplot(3,3,2);impulse(num,den)
subplot(3,3,3);den=[0.1,1,0];step(num,den)
subplot(3,3,4);den=[1,1];step(num,den)
subplot(3,3,5);impulse(num,den)
subplot(3,3,6);den=[1,1,0];step(num,den)
subplot(3,3,7);den=[10,1];step(num,den)
subplot(3,3,8);impulse(num,den)
subplot(3,3,9);den=[10,1,0];step(num,den)
T=0.1,1,10时的响应曲线
例4某系统框图如下所示,求d和e的值,使系统的阶跃响应满足:
(1)超调量不大于40%,
(2)峰值时间为0.8秒。
C(s)
分析:
由图可得闭环传递函数为:
,其为典型二阶系统。
由典型二阶系统特征参数计算公式
,
得:
,
MATLAB程序为:
得pleaseinputexpectpos(%)=20
pleaseinputexpecttp=0.8
d=19.4686
e=0.1553
clear
clc
closeall
%输入期望得超调量及峰值时间
pos=input('pleaseinputexpectpos(%)=');
tp=input('pleaseinputexpecttp=');
Xi=log(100/pos)/sqrt(pi^2+(log(100/pos))^2);
wn=pi/(tp*sqrt(1-Xi^2));
num=wn^2;
den=[12*Xi*wnwn^2];
t=0:
0.02:
4;
y=step(num,den,t);
plot(t,y)
xlabel('time-sec')
ylabel('y(t)')
grid
d=wn^2
e=(2*Xi*wn-1)/d
3.系统稳定及最小相位系统的判别方法
(1)间接判别(工程方法)
劳斯判据:
劳斯表中第一列各值严格为正,则系统稳定,如果劳斯表第一列中出现小于零的数值,系统不稳定。
赫尔维茨判据:
当且仅当由系统分母多项式构成的胡尔维茨矩阵为正定矩阵时,系统稳定。
(2)直接判别
MATLAB提供了直接求取系统所有零极点的函数,因此可以直接根据零极点的分布情况对系统的稳定性及是否为最小相位系统进行判断。
例6.系统模型如下所示,判断系统的稳定性,以及系统是否为最小相位系统
MATLAB程序为:
clear
clc
closeall
%系统描述
num=[3164128];
den=[11411052814942117112];
%求系统的零极点
[z,p,k]=tf2zp(num,den)
%检验零点的实部;求取零点实部大于零的个数
ii=find(real(z)>0)
n1=length(ii);
%检验极点的实部;求取极点实部大于零的个数
零、极点图
jj=find(real(p)>0)
n2=length(jj);
%判断系统是否稳定
if(n2>0)
disp('thesystemisunstable')
disp('theunstablepoleare:
')
disp(p(jj))
else
disp('thesystemisstable')
end
%判断系统是否为最小相位系统
if(n1>0)|(n2>0)
disp('thesystemisanonminimalphaseone')
else
disp('thesyetemisaminimalphaseone')
end
%绘制零极点图
pzmap(p,z)
%p
%z
三、实验内容
1.运行例题程序,观察结果。
2.已知系统的开环传递函数为:
求系统在单位负反馈下的脉冲激励响应曲线。
3.
,周期6s,持续12s,采样周期0.1s,求方波响应.(square)
4.
,wn=1,zeta=0.4,在Tm=0.5、1、2时,求阶跃响应,并将其在Ts=0.1下离散化。
5.二阶系统
当
时,分别作出
的响应曲线,如图可得出什么结论。
6.判断线性系统稳定性
四、实验报告:
利用所学知识,编写实验2-6内容中任意三题的相应程序,并绘制曲线。
实验三控制系统的根轨迹
一、实验目的
1.学会常规根轨迹的绘制方法,掌握绘制常规根轨迹的命令函数及格式。
2.掌握零极点图的绘制。
二、实验原理
1.根轨迹的绘制
(1)根轨迹的基本概念
所谓根轨迹是指,当开环系统某一参数从零变到无穷大时,闭环系统特征方程的根在s平面上的轨迹。
一般来说,这一参数选作开环系统的增益K,而在无零极点对消时,闭环系统特征方程的根就是闭环传递函数的极点。
(2)根轨迹分析函数
在MATLAB中,专门提供了绘制根轨迹的有关函数。
pzmap:
绘制线性系统的零极点图
rlocus:
求系统根轨迹。
rlocfind:
计算给定一组根的根轨迹增益。
sgrid:
在连续系统根轨迹图和零极点图中绘制出阻尼系数和自然频率栅格。
◆零极点图绘制
MATLAB提供了函数pzmap()来绘制系统的零极点图,其用法如下:
Ø[p,z]=pzmap(a,b,c,d):
返回状态空间描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。
Ø[p,z]=pzmap(num,den):
返回传递函数描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。
Øpzmap(a,b,c,d)或pzmap(num,den):
不带输出参数项,则直接在s复平面上绘制出系统对应的零极点位置,极点用×表示,零点用o表示。
Øpzmap(p,z):
根据系统已知的零极点列向量或行向量直接在s复平面上绘制出对应的零极点位置,极点用×表示,零点用o表示。
◆根轨迹图绘制
MATLAB提供了函数rlocus()来绘制系统的根轨迹图,其用法如下:
Ørlocus(a,b,c,d)或者rlocus(num,den):
根据SISO开环系统的状态空间描述模型和传递函数模型,直接在屏幕上绘制出系统的根轨迹图。
开环增益的值从零到无穷大变化。
Ørlocus(a,b,c,d,k)或rlocus(num,den,k):
通过指定开环增益k的变化范围来绘制系统的根轨迹图。
Ør=rlocus(num,den,k)或者[r,k]=rlocus(num,den):
不在屏幕上直接绘出系统的根轨迹图,而根据开环增益变化矢量k,返回闭环系统特征方程1+k*num(s)/den(s)=0的根r,它有length(k)行,length(den)-1列,每行对应某个k值时的所有闭环极点。
或者同时返回k与r。
Ø若给出传递函数描述系统的分子项num为负,则利用rlocus函数绘制的是系统的零度根轨迹。
(正反馈系统或非最小相位系统)
◆rlocfind()函数
MATLAB提供了函数rlocfind()来找出给定的一组根(闭环极点)对应的根轨迹增益。
其用法如下:
Ø[k,p]=rlocfind(a,b,c,d)或者[k,p]=rlocfind(num,den)
它要求在屏幕上先已经绘制好有关的根轨迹图。
然后,此命令将产生一个光标以用来选择希望的闭环极点。
命令执行结果:
k为对应选择点处根轨迹开环增益;p为此点处的系统闭环特征根。
Ø不带输出参数项[k,p]时,同样可以执行,只是此时只将k的值返回到缺省变量ans中。
例1由连续系统:
试绘制其零极点图和根轨迹图。
MATLAB程序为:
>>num=[2,5,1];den=[1,2,3];sys=tf(num,den);%生成传递函数模型
figure
(1);pzmap(sys);title(‘零极点图’);%绘制零极点图
figure
(2);rlocus(sys);sgrid;title(‘根轨迹’);%绘制根轨迹图
三、实验内容
1.运行例题程序,观察结果。
2.开环传递函数.
绘制其根轨迹图。
3.已知某单位反馈系统的开环传递函数为:
要求:
绘制系统的闭环根轨迹,并确定使系统产生重实根和纯虚根的开环增益k。
4.
,绘制根轨迹并求临界增益;在Ts=0.5下将其离散,求离散系统根轨迹与临界增益。
四、实验报告
完成以上实验内容,将2-4程序中任意三题的运行结果做到报告纸上,绘图采用坐标绘图纸。
实验四控制系统的频率特性及稳定性分析
一、实验目的
掌握bode图和Nyquist图的绘制命令及格式。
二、实验原理
控制系统的频域分析
(1)频域分析的一般方法
频域分析法是应用频率特性研究控制系统的一种典型方法。
采用这种方法可直观地表达出系统的频率特性,分析方法比较简单,物理概念比较明确,对于诸如防止结构谐振、抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确地看出其物理实质和解决途经。
通常将频率特性用曲线的形式进行表示,包括对数频率特性曲线和幅相频率特性曲线简称幅相曲线,MATLAB提供了绘制这两种曲线的函数。
bode:
求取系统对数频率特性图(波特图)
nyquist:
求取系统奈奎斯特图(幅相曲线图或极坐标图)
margin:
margin函数可以从频率响应数据中计算出幅值裕度、相角裕度以及对应的频率。
幅值裕度和相角裕度是针对开环SISO系统而言,它指示出系统闭环时的相对稳定性。
当不带输出变量引用时,margin可在当前图形窗口中绘制出带有裕量及相应频率显示的Bode图,其中幅值裕度以分贝为单位。
◆对数频率特性图(波特图)
对数频率特性图包括了对数幅频特性图和对数相频特性图。
横坐标为频率w,采用对数分度,单位为弧度/秒;纵坐标均匀分度,分别为幅值函数20lgA(w),以dB表示;相角,以度表示。
MATLAB提供了函
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自控 实验 指导书