机械控制理论基础课程实验指导书精.docx
《机械控制理论基础课程实验指导书精.docx》由会员分享,可在线阅读,更多相关《机械控制理论基础课程实验指导书精.docx(18页珍藏版)》请在冰豆网上搜索。
机械控制理论基础课程实验指导书精
机械控制理论基础
课程实验指导书
机械工程学院
2004年8月
目录
MATLAB简介1
(一)SIMULINK(模块图仿真)的使用1
(二)频域和时域分析3
(三)状态空间分析5
二实验指导7
实验一典型环节动态特性7
[实验目的]7
[实验内容]7
[实验报告要求]8
实验二PID的控制作用9
[实验目的]9
[实验系统说明]9
[实验步骤]10
[实验报告要求]10
实验三串联校正环节的设计11
[实验目的]11
[实验内容]11
[实验方法及步骤]11
[实验报告要求]16
MATLAB简介
1980年美国学者MOLER博士在研究线性代数时,为了解决矩阵运算非常烦琐这一问题,构思并开发了一种用于矩阵运算的矩阵实验室(MATrixLABoratory)软件。
由于MATLAB提供了功能非常强大的矩阵处理和绘图功能。
吸引了很多控制界的名家在自己擅长的领域编写了一些具有特殊意义的MATLAB工具箱,从而空前扩大了MATLAB的功能,使其成为了国际上最流行的控制系统计算机辅助设计的软件工具。
下面简单介绍自控原理实验涉及到的MATLAB知识
(一)SIMULINK(模块图仿真)的使用
1、进入WIN98:
2、进入MATLAB:
点击WIN窗口中MATLAB图标。
3、进入SIMULINK:
在MATLAB窗口中键入SIMULINK命令,即可弹出SIMULINK模块库。
如图1-1所示:
图1-1SIMULINK模块库
从左到右分别为信号源、输出、离散、线性、非线性、其他七个子模块库,每个子模块库分别包含若干个不同的模块。
4、建立自己的实验文件:
(1)FILE\NEW。
(2)FILE\SAVEAS。
(键入自己的文件名。
)
5、从SIMULINK模块库中挑选所需的模块:
(1)把SIMULIMK窗和自己的实验窗并列平铺。
(2)在SIMULINK窗中打开SOURCES模块库。
(3)从SOURCES库(信号源模块库)中拖出STEPINPUT(单位阶跃输入)
模块至自己的实验窗口。
(4)类似
(2)(3)从SINKS库中拖出AUTO-SCALEGRAPH(自动图形
输出)模块。
(5)从LINEAR、UNLINEAR库中分别选出INTEGRATOR(积分)、GAIN
(比例)、TRANFER-Fun(传递函数)等模块。
(6)通过TRANFER-FORNT模块构造积分、惯性、振荡环节。
双击TRANFER-FORNT模块,弹出如图1-2对话框
图1-2TransferFun模块对话框
其中Numerator为分子多项式的系数,Denominator为分母多项式的系数,通过修改多项式的系数实现不同环节的转变。
举例如下:
例1:
要实现传递函数
,则令Numerator为[1,2];
Denominator为[2,3,4];
例2:
要将传递函数变为积分环节:
,则令Numerator为[1];
Denominator为[1,0];
例3:
要将传递函数变为振荡环节:
,则令Numerator为[1];
Denominator为[1,1,1];
(在此传函中阻尼系数ζ为0.5)
例4:
要将传递函数变为实际微分环节:
,则令Numerator为[1,0];
Denominator为[1,1];
实际微分环节的传递函数为:
分子分母同除以Td,则为
因此,上式中分子s的系数即为Kd值,分母中常数项为Td的倒数.
(2)设仿真过程参数:
SIMULATION菜单\PARAMETERS菜单项。
如图1-3:
图1-3仿真时间的设置
其中:
StartTime为仿真开始时间,计算机默认的值为0.0。
Stoptime为仿真终止时间,计算机默认的值为999999。
MixStepSize为仿真最小步长。
MaxStepSize为仿真最大步长。
,
Tolerance为仿真精度。
仿真开始前应对StopTime进行修改,如改为10秒,50秒或200秒,再根据实际情况进行调整。
注:
在此使用的仿真算法为五阶的龙格库塔法(RUNGE-KUTTA5)
(3)进行仿真:
SIMULATION菜单中START菜单项。
注:
要使曲线光滑可以通过提高仿真精度或增加采样点来实现。
(二)频域和时域分析
1.根轨迹图的绘制
(1)乘积多项式的系数
可利用多项式相乘函数CONV(X,Y),该函数直接在MATLABCOMMANDWINDOWS窗口中使用。
例:
A(z)=(z-1)
B(z)=(z2+1.15z-1)
求A(z)*B(z)的多项式系数,可按如下步骤计算:
X=[1,-1];
Y=[1,1.15,-1];
C=CONV(X,Y)
上面式子等效于C=CONV([1,-1],[1,1.15,1])
注:
无常数项时,常数项系数记为0
(2)绘制根轨迹图
例:
绘制如下传递函数的根轨迹图
G(s)=
可在MATLABCOMMANDWINDOW窗口中输入下列命令:
NUM=[1,1];
DEN=[2,0,3];
RLOCUS(NUM,DEN)
(3)绘制Z平面的根轨迹图
在MATLABCOMMANDWINDOWS窗口中输入下列命令:
ZGRID(‘NEW’)
NUM=[A,B,C….];
DEN=[D,E,F….];
RLOCUS(NUM,DEN)
(4)在根轨迹图上求系统的闭环主导极点
在MATLABCOMMANDWINDOW窗口中输入下列语句:
[R,K]=RLOCUS(NUM,DEN)
即可得出不同的K值对应的不同根值R,从中找出尽量接近要求的主导极点及其对应的K’值。
在MATLABCOMMANDWINDOW窗口中输入下列语句:
R=RLOCUS(NUM,DEN,K)
在得出的K’值基础上不断调整K值,得出满足Y/X=tg的复根,则此时的K值即为开环放大系数。
(已知闭环主导极点的阻尼比为已知值,则以原点为起点作角度为=COS-1的直线,与根轨迹相交得S1点,S1与实轴相对称的点即为S2,若S1,2=X±Yj则tg=Y/X,即求主导极点的问题转化为求一复根,使其满足Y/X=tg的要求。
)
2.伯德图的绘制
(1)绘制伯德图
在MATLABCOMMANDWINDOW窗口中输入下列语句:
NUM=[A,B];
DEN=[C,D,E];
BODE(NUM,DEN)
(2)绘制离散控制系统BODE图
绘制离散控制系统BODE图时需将Z域的函数表达式变换为W域的,使用BODE(NUM,DEN)绘制BODE图。
(3)求系统的增益裕量(Gm)、相位裕量(Pm)和穿越频率Wcp
使用如下语句:
[Gm,Pm,Wcg,Wcp]=MARGIN(NUM,DEN)
(4)求新的增益穿越频率Wc’
设在该穿越频率Wc’处,G0(jW)的相角为,使用如下语句:
[MAR,PHA,W]=BODE(NUM,DEN)
即可得出不同的W值对应相角(PHA)和增益(MAR),找出近似满足PHA=时对应的W值,即为Wc’。
(三)状态空间分析
1、矩阵的基本运算
(1)求矩阵的秩
设矩阵A=[0,2;0,-2],则它的秩可直接在MATLABWINDOWSCOMMOND窗口中调用函数R=RANK(A)得到。
(2)矩阵的乘法
设有A,B两个矩阵,若求其相乘的结果可在MATLABWINDOWSCOMMOND窗口中输入如下命令:
A=[1,2;3,4]
B=[3,5;6,8]
C=A*B
则C即为矩阵A和B相乘得到的新矩阵。
(3)矩阵的转置
设A矩阵为[1,2;3,4],则它的转置矩阵为C=A’
2、由状态方程换算系统的传递函数
在MATLABWINDOWSCOMMAND窗口中直接调用如下函数
[NUM,DEN]=SS2TF(A,B,C,D,IU);
即可求出传递函数分子和分母多项式的系数,由此可直接写出传递函数的表达式。
其中A,B,C,D矩阵表示系统的状态方程模型,而IU为输入的代号,对于单输入系统来说,IU=1。
注意:
矩阵的输入是按行进行的,先输入第一行,再输入第二行,依次类推。
行与行之间用分号隔开,每行中不同元素用空格或逗号隔开。
3、用ACKERMAN算法计算状态反馈矩阵F及状态观测矩阵Fb
在MATLABWINDOWSCOMMOND窗口中调用函数F=ACKER(A,B,P),其中A,B为状态方程系数矩阵,P为要求配置到的极点。
例如,A=[0,0,4;-3,-3,-2];B=[-2,0;-1,1;-3,3];若想引入状态反馈矩阵K,使得闭环系统的极点位置为-2,-3,-1+j,-1-j,则可以使用下面的MATLAB命令来完成
A=[0,0,4;-3,-3,-2];B=[-2,0;-1,1;-3,3];
P=[-2;-3;-1+j;-1-j];
K=ACKER(A,B,P)
即可求出状态反馈矩阵K。
同理使用函数Fb=ACKER(A’,C’,P)可求出状态观测矩阵Fb
二实验指导
实验一典型环节动态特性
[实验目的]
1、通过观察典型环节在单位阶跃信号作用下的动态特性,熟悉各种典型环节的响应曲线。
2、定性了解各参数变化对典型环节动态特性的影响。
3、初步了解MATLAB中SIMULINK的使用方法。
[实验内容]
1、掌握比例、积分、一阶惯性、实际微分、振荡、迟延环节的动态特性。
[例题]:
观察实际微分环节的动态特性
(1)
连接系统,如图所示:
(2)参数设置:
在simulation/paramater中将仿真时间(StopTime)设置
为10秒,用鼠标双击实际微分环节,设Kd=1,Td=1
(3)仿真:
simulation/start,仿真结果如图2-1所示
(4)改变Td、Kd,观察仿真结果有什么变化
图2-1实际微分环节的动态特性图
2、利用上述六种环节构成一个具有如图2-2所示的阶跃响应特性的系统。
图2-2阶跃响应特征曲线
[实验报告要求]
1、画出所要求的系统模块图。
2、画出相应的系统阶跃响应曲线。
3、叙述振荡环节中阻尼系数对环节的影响。
4、结合实验遇到的问题谈谈对实验的看法
实验二PID的控制作用
[实验目的]
1.了解PID控制器中P,I,D三种基本控制作用对控制系统性能的影响。
2.进行PID控制器参数工程整定技能训练。
[实验系统说明]
图2-1.PID控制作用实验系统
可按图2-2组成PID控制器。
其传递函数表达式为:
,对于实际微分环节可将分子、分母同除以Td,传函
图2-2PID控制器的组成
变为:
,这样如果要改变PID的参数Td、Kd、Ti、Kp,只要改变模块的分子、分母多项式的系数即可。
图2-2中,GAIN模块的增益值对应于Kp参数;在Transfer–Fun2模块中,令B0=Kd,B1=0,A0=1,A1=1/Ti,可得微分控制器;在Transfer-Fcn3模块中令B0=0,B1=1;A0=Ti,A1=0,可得积分控制器。
然后据Kp,Kd,Ti,Td参数调整要求修改对应的B0、B1、A0、A1值,对系统进行整定。
[实验步骤]
1.进入SIMULINK。
2.按图2-3中(a)、(b)、(c)构成实验系统。
3.整定各PID参数,使得控制系统性能达到最优。
(最优即系统稳态误差为小、超调量小、调整时间短等)
图2-3控制系统图
[实验报告要求]
1、写出控制得到的三组最优Kp,Kd,Ti,Td值,要求三个环节都用上,并画出对应的响应曲线。
2、指出这三种系统分别为几型系统。
3、结合实验中遇到的问题谈谈自己的看法和体会。
实验三串联校正环节的设计
[实验目的]
1.学习使用MATLAB绘制根轨迹和伯德图。
2.熟悉使用根轨迹法和频率特性法设计典型滞后环节。
[实验内容]
1、有一单位反馈系统,其开环传递函数为G(s)=K/{(s+0.5)(s+0.1)(s+0.2)},试用根轨迹设计一个滞后校正环节,要求对应主导极点的ζ=0.5,Kp=10,以满足性能指标的要求。
2、设有一单位反馈系统的开环传递函数为G(s)=(0.08k)/{s(s+0.5)},试用频率特性法设计一个滞后校正环节,使得Kv≥4,相位裕量为50°,超调量Mp≤30%。
[实验方法及步骤]
寻找近似的闭环主导极点
根轨迹校正方法中,关键在于求出系统的闭环主导极点,在这里,我们用MATLAB的方法来求
1、用[R,K]=RLOUCS(NUM,DEN)命令,寻找近似的主导极点
●在MATLABCOMMANDWINDOWS中键入[R,K]=RLOUCS(NUM,DEN)命令,即可得出不同的K值对应的根值R,从中找出符合虚部与实部比值接近要求的根值。
本例题中,已知闭环主导极点的阻尼比为ξ=0.45(以原点为起点作角度为θ=COS
ξ的直线,与根轨迹相交得S1点,S1的与实轴相对称的点即为S2点,S1、S2为主导极点
)可知COSθ=0.45即θ=63.25
则tgθ=1.984≈2;现要找出一个共轭极点,使它的虚部与实部的比值接近tgθ=1.984。
下面数组中带下划线的共轭极点其虚部与实部的比值为
=1.945,接近给定值,找出与其对应的粗略K值,K=4.1
已知系统开环传递函数G
(S)=
可利用MATLAB函数c=conv([1,1,0],[1,5])
c=
1650;求多项式系数
num=[1];;分子多项式系数
den=[c];;分母多项式系数
[r,k]=rlocus(num,den)
结果为:
r=
0-5.0000-1.0000
-0.2543-5.0441-0.7015
-0.3080-5.0489-0.6431
┋
-0.4614+0.3198i-5.0773-0.4614-0.3198i
-0.4057+0.7910i-5.1886-0.4057-0.7910i
-0.3951+0.8525i-5.2097-0.3951-0.8525i
k=
0
1.2250
1.3500
┆
3.6000
4.1000
4.6000
5.1000
2、用R=RLOUCS(NUM,DEN,K),对K值精调
●在MATLABCOMMANDWINDOWS中键入R=RLOUCS(NUM,DEN,3.4),对K值精调,不断调整K值,最终要求tgθ=1.984左右,此时对应的K值即为主导极点的K值,写出此时的主导极点。
r=rlocus(num,den,4.1)
r=
-5.1886-0.4057+0.7910i-0.4057-0.7910i
tgθ=
=1.9497
设K=4.15,带入下面命令中,得
r=rlocus(num,den,4.15)
r=
-5.1908-0.4046+0.7974i-0.4046-0.7974I
tgθ=
=1.9708
设K=4.18,带入下面命令中,得
r=rlocus(num,den,4.18)
r=
-5.1920-0.4040+0.8012i-0.4040-0.8012I
tgθ=
=1.9831
可知主导极点为:
-0.4040+0.8012i-0.4040-0.8012I
对应得开环放大系数K为:
4.18
寻找新的穿越频率
(1)按规定的稳态误差系数确定放大系数K,此题K=5
(2)画出未校正系统的伯德图并求出其增益裕量和相位裕量
未校正系统的传递函数为:
G0=
在MATLABCOMMANDWINDOWS窗口中绘制BODE图
(3)寻找一新的幅值穿越ωc,在ω处G(Jω)的相角应等于-180加上所要求的相位裕量再加5-12º(补偿滞后校正环节造成的相位滞后)。
(4)为使滞后校正对系统的相位滞后影响较小(一般)
num=[5];
c=conv([110],[0.51]);
den=c
den=
0.50001.50001.00000
bode(num,den)
可得如下图2-5:
图2-5函数G(s)的BODE图
系统的增益裕量(Gm)、相位裕量(Pm)。
在MATLABCOMMANDWINDOWS窗口中键入如下命令
[gm,pm,wcp,wcg]=margin(num,den)
Warning:
Dividebyzero
gm=
0.6000增益裕量
pm=
-12.9972相位裕量
wcp=
1.4142增益穿越频率
wcg=
1.8022相位穿越频率
求新的增益穿越频率ωc’
在MATLABCOMMANDWINDOWS中键入如下命令:
[mar,pha,ω]=bode(num,den),即可得出不同的ω值对应的相角(PHA)和(MAR)
mar=
49.6898
┋
0.3342
0.1931
0.1090
0.0606
0.0332
0.0181
0.0098
pha=
-98.5730
┋
-119.3045
-125.6192
-133.0279
-141.5517
-151.1223
-161.5651
-172.6041
-183.8910
-195.0469
-252.9795
w=
0.1000
0.1233
0.1520
0.1874
0.2310
0.2848
0.3511
0.4329
0.5337
0.6579
0.8111
1.0000
┋
6.5793
ω=0.4329
找出近似满足PHA=-128°时对应的ω值,即为ωc’,如下画下划线
取滞后校正环节的第一转角频率ω1=
ωc’=0.086,可得T=11.6(S)
第二转角频率ω2=
=
则所求滞后校正环节的传递函数为
Gc(S)=
=
[实验报告要求]
1.对于根轨迹校正法,给出如下内容:
(1)原系统的稳态速度误差系数KP
(2)校正后的系统稳态速度误差系数Kp
(3)校正环节的传函GC(S)
2.对于频率特性校正,给出如下内容:
(1)新增益穿越频率Wc’和a值
(2)原相位裕量Pm
(3)校正环节的传函GC(S)
3.SIMULINK搭建未校正系统的模块图,观察其超调量;校正好后,将校正环节串入原系统,观察其超调量。
4.写出实验体会并进行校正前后的比较。