课程设计用MATLAB进行控制系统的滞后超前校正设计.docx
《课程设计用MATLAB进行控制系统的滞后超前校正设计.docx》由会员分享,可在线阅读,更多相关《课程设计用MATLAB进行控制系统的滞后超前校正设计.docx(15页珍藏版)》请在冰豆网上搜索。
课程设计用MATLAB进行控制系统的滞后超前校正设计
课程设计任务书
学生姓名:
***专业班级:
自动化0805
指导教师:
*****工作单位:
自动化学院
题目:
用MATLAB进行控制系统的滞后-超前校正设计
初始条件:
已知一单位反馈系统的开环传递函数是
要求系统的静态速度误差系数,。
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1、MATLAB作出满足初始条件的最小K值的系统伯德图,计算系统的幅值裕量和相位裕量。
2、前向通路中插入一相位滞后-超前校正,确定校正网络的传递函数。
3、用MATLAB画出未校正和已校正系统的根轨迹。
4、用Matlab对校正前后的系统进行仿真分析,画出阶跃响应曲线,计算其时域性能指标。
5、课程设计说明书中要求写清楚计算分析的过程,列出MATLAB程序和MATLAB输出。
说明书的格式按照教务处标准书写。
时间安排:
任务
时间(天)
审题、查阅相关资料
2
分析、计算
3
编写程序
2
撰写报告
2
论文答辩
1
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
摘要
MATLAB是一个包含大量计算算法的集合。
其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。
函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。
在通常情况下,可以用它来代替底层编程语言,如C和C++。
在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。
MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。
函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。
此次课程设计就是利用MATLAB对一单位反馈系统进行滞后-超前校正。
通过运用MATLAB的相关功能,绘制系统校正前后的伯德图、根轨迹和阶跃响应曲线,并计算校正后系统的时域性能指标。
关键字:
超前-滞后校正MATLAB伯德图时域性能指标
目录
1滞后-超前校正设计目的和原理1
1.1滞后-超前校正设计目的1
1.2滞后-超前校正设计原理1
2滞后-超前校正的设计过程3
2.1校正前系统的参数3
2.1.1用MATLAB绘制校正前系统的伯德图3
2.1.2用MATLAB求校正前系统的幅值裕量和相位裕量4
2.1.3用MATLAB绘制校正前系统的根轨迹5
2.1.4对校正前系统进行仿真分析5
2.2滞后-超前校正设计参数计算6
2.2.1选择校正后的截止频率6
2.2.2确定校正参数、和6
2.3滞后-超前校正后的验证7
2.3.1用MATLAB求校正后系统的幅值裕量和相位裕量7
2.3.2用MATLAB绘制校正后系统的伯德图8
2.3.3用MATLAB绘制校正后系统的根轨迹9
2.3.4用MATLAB对校正前后的系统进行仿真分析10
3心得体会12
参考文献13
用MATLAB进行控制系统的滞后-超前校正设计
1滞后-超前校正设计目的和原理
1.1滞后-超前校正设计目的
所谓校正就是在系统不可变部分的基础上,加入适当的校正元部件,使系统满足给定的性能指标。
校正方案主要有串联校正、并联校正、反馈校正和前馈校正。
确定校正装置的结构和参数的方法主要有两类:
分析法和综合法。
分析法是针对被校正系统的性能和给定的性能指标,首先选择合适的校正环节的结构,然后用校正方法确定校正环节的参数。
在用分析法进行串联校正时,校正环节的结构通常采用超前校正、滞后校正和滞后-超前校正这三种类型。
超前校正通常可以改善控制系统的快速性和超调量,但增加了带宽,而滞后校正可以改善超调量及相对稳定度,但往往会因带宽减小而使快速性下降。
滞后-超前校正兼用两者优点,并在结构设计时设法限制它们的缺点。
1.2滞后-超前校正设计原理
滞后-超前校正RC网络电路图如图1所示。
图1滞后-超前校正RC网络
下面推导它的传递函数:
令,则
其中为超前部分的参数,为滞后部分的参数。
滞后-超前校正的频域设计实际是超前校正和滞后校正频域法设计的综合,基本方法是利用滞后校正将系统校正后的穿越频率调整到超前部分的最大相角处的频率。
具体方法是先合理地选择截止频率,先设计滞后校正部分,再根据已经选定的设计超前部分。
应用频率法确定滞后超前校正参数的步骤:
1、根据稳态性能指标,绘制未校正系统的伯德图;
2、选择校正后的截止频率;
3、确定校正参数;
4、确定滞后部分的参数;
5、确定超前部分的参数;
6、将滞后部分和超前部分的传递函数组合在一起,即得滞后-超前校正的传递函数;
7、绘制校正后的伯德图,检验性能指标。
2滞后-超前校正的设计过程
2.1校正前系统的参数
根据初始条件,调整开环传递函数:
当系统的静态速度误差系数时,。
则
满足初始条件的最小K值时的开环传递函数为
2.1.1用MATLAB绘制校正前系统的伯德图
程序:
num=[10];
den=[0.5,1.5,1,0];
bode(num,den)
grid
得到的伯德图如图2所示。
图2校正前系统的伯德图
2.1.2用MATLAB求校正前系统的幅值裕量和相位裕量
用命令margin(G)可以绘制出G的伯德图,并标出幅值裕量、相位裕量和对应的频率。
用函数[kg,r,wg,wc]=margin(G)可以求出G的幅值裕量、相位裕量和幅值穿越频率。
程序:
num=[10];
den=[0.5,1.5,1,0];
G=tf(num,den);
margin(G)
[kg,r,wg,wc]=margin(G)
得到的幅值裕量和相位裕量如图3所示。
图3校正前系统的幅值裕量和相位裕量
运行结果:
kg=0.3000r=-28.0814
wg=1.4142wc=2.4253
即幅值裕量,相位裕量=-28.0814o。
2.1.3用MATLAB绘制校正前系统的根轨迹
MATLAB中专门提供了绘制根轨迹的有关函数。
[p,z]=pzmap(num,den)的功能是绘制连续系统的零、极点图。
[r,k]=rlocus(num,den)的功能是绘制部分的根轨迹。
程序:
num=[10];
den=[0.5,1.5,1,0];
rlocus(num,den)
得到校正前系统的根轨迹如图4所示。
图4校正前系统的根轨迹
2.1.4对校正前系统进行仿真分析
Simulink是可以用于连续、离散以及混合的线性、非线性控制系统建模、仿真和分析的软件包,并为用户提供了用方框图进行建模的图形接口,很适合于控制系统的仿真。
仿真后得到的结果如图5和图6所示。
图5校正前系统的仿真图
图6校正前系统仿真的阶跃响应曲线
2.2滞后-超前校正设计参数计算
2.2.1选择校正后的截止频率
若性能指标中对系统的快速性未提明确要求时,一般对应的频率作为。
从图3中得,=1.5。
这样,未校正系统的相位裕量为0o ,与要求值仅差+45o ,这样大小的超前相角通过简单的超前校正是很容易实现的。
2.2.2确定校正参数、和
由超前部分应产生超前相角而定,即。
在本题中,,因此
取,以使滞后相角控制在-5o 以内,因此,滞后部分的传递函数为。
过,作20dB/dec直线,由该直线与0dB线交点坐标确定。
未校正系统的伯德图在=1.5处的增益是13dB。
所以过点(1.5,-13)画一条20dB/dec的直线,与0dB线的交点确定转折频率。
经计算得,转折频率,另一转折频率为。
所以超前部分的传递函数为。
将滞后校正部分和超前校正部分的传递函数组合在一起,得滞后-超前校正的传递函数为
系统校正后的传递函数为
2.3滞后-超前校正后的验证
由于校正过程中,多处采用的是近似计算,可能会造成滞后-超前校正后得到的系统的传递函数不满足题目要求的性能指标。
所以需要对滞后-超前校正后的系统进行验证。
下面用MATLAB求已校正系统的相角裕量和幅值裕量。
2.3.1用MATLAB求校正后系统的幅值裕量和相位裕量
程序:
num=[10,9.9,0.89];
den=[0.5,4.855,11.0985,6.8055,0.067,0];
G=tf(num,den);
margin(G)
[kg,r,wg,wc]=margin(G)
得到的校正后系统的幅值裕量和相位裕量如图7所示。
图7校正后系统的幅值裕量和相位裕量
运行结果:
kg=5.9195r=47.6239
wg=3.6762wc=1.2072
即校正后系统的相位裕量,满足指标。
假设验证结果不满足指标,重新选择校正后的截止频率,重复上述过程,直到满足性能指标为止。
2.3.2用MATLAB绘制校正后系统的伯德图
程序:
num=[10,9.9,0.89];
den=[0.5,4.855,11.0985,6.8055,0.067,0];
bode(num,den)
grid
得到的伯德图如图8所示。
图8校正后系统的伯德图
2.3.3用MATLAB绘制校正后系统的根轨迹
程序:
num=[10,9.9,0.89];
den=[0.5,4.855,11.0985,6.8055,0.067,0];
rlocus(num,den)
得到的校正后系统的根轨迹如图9所示。
图9校正后系统的根轨迹
2.3.4用MATLAB对校正前后的系统进行仿真分析
用Simulink对校正后的系统仿真。
仿真后得到的结果如图10和图11所示。
图10校正后系统的仿真图
图11校正后系统仿真的阶跃响应曲线
程序:
k=10;
num=conv([1,0.89],[1,0.1]);
den=conv(conv(conv(conv([1,0],[1,1]),[0.5,1]),[1,6.7]),[1,0.01]);
sys=tf(k*num,den);
Lsys=feedback(sys,1,-1);
[y,t,x]=step(Lsys);
plot(t,y);
ltiview
得到的阶跃响应曲线如图12所示。
图12校正后阶跃响应曲线
调节时间取的误差范围。
由图12可知,超调量,上升时间,峰值时间,调节时间。
对比校正前后的阶跃响应曲线可知,校正前系统是不稳定的,无法求得时域性能指标。
校正后的系统是稳定的,系统的阶跃响应曲线是衰减振荡的。
当调节时间取的误差范围时,调节时间。
3心得体会
随着科学技术发展的日新月异,MATLAB已成为当今应用软件中空前活跃的领域,在生活中的应用可以说是无处不在,因此掌握MATLAB这个软件基本的使用方法对我们是十分有益的。
MATLAB可用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。
当然,MATLAB也可以用对反馈系统进行校正。
此次课程设计的内容对一个单位反馈系统进行滞后-超前校正。
回顾此次实践的整个过程,虽然只有短短的几天,但是真的在这个自己独立学习的过程中学到了好多东西。
课程设计开始阶段比较顺利,但是做到计算校正后系统的时域性能指标这里时,遇到了不小麻烦,不会用MATLAB编程得阶跃响应曲线。
后来,在同学的帮助下,终于看懂了课件了的那段程序,于是就求出了滞后-超前校正后系统的