预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共17页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

武汉轻工大学《自动控制原理》课程设计 PAGE\*MERGEFORMAT17 基于滞后校正的转子绕线机控制系统设计 王政军 武汉轻工大学自动化系湖北武汉430000 摘要:在控制技术需求推动下,控制理论本身也取得了显著进步。从线性近似到非线性系统的研究取得了新的成就,借助微分几何的固有非线性框架来研究非线性系统的控制,已成为目前重要研究方向之一。为了实现各种复杂的控制任务首先要将被控制对象和控制装置按照一定的方式连接起来,组成一个有机整体,这就是自动控制系统 关键词:自动控制技术、系统分析、MATLAB、校正 1设计目的、要求及原理 1.1设计目的 滞后校正网络具有低通滤波器的特性,因而当它与系统的不可变部分串联相连时,会使系统开环频率特性的中频和高频段增益降低和截止频率Wc减小,从而有可能使系统获得足够大的相位裕度,它不影响频率特性的低频段。由此可见,滞后校正在一定的条件下,也能使系统同时满足动态和静态的要求。本设计通过增加一个滞后校正装置,确定其最适合参数来改变系统性能。 1.2设计要求 系统对斜坡输入响应的稳态误差小于10%,; 系统对阶跃输入的超调量在10%左右; (3)按2%准则的调节时间不超过3s。 1.3设计原理 通过分析系统逐步确定其矫正系统参数,具体步骤如下: 1.根据稳态误差要求求出K值; 2.画出未校正系统的波特图,并求; 3.波特图上绘制出曲线; 4.根据稳态误差要求,求出校正系统的截止频率; 5.根据公式和,可求出b和t; 6.验证已校正系统的相位裕度和幅值裕度; 2设计分析与计算 2.1最小K值的系统频域分析 已知转子绕线机控制系统的开环传递函数是: ,静态速度误差系数, 所以最小的K值为:K=500 故 1求相角裕度: 因为 在穿越频率处=1,解得Wc≈5.96rad/s 穿越频率处的相角为: 相角裕度为:γ=180+=180-162.73=18.3deg 2求幅值裕度: 先求相角穿越频率: 由三角函数关系得: 所以,幅值裕度为: 使用MATLAB软件可直接得到系统的BODE图和相角,幅值裕度。程序的代码如下: n=750 d=[1,20,75,0] g1=tf(n,d) [mag,phase,w]=bode(g1) margin(g1) 图2-1校正前系统的BODE图 Matlab仿真结果为:Gm=6.02dBPm=18.3deg(与理论计算结果相同) 2.2滞后校正函数计算 求滞后校正的网络函数可以按设计原理所讲述的方法进行求解,但过程比较麻烦,这里介绍使用matlab进行编程求解的方法。操作简单,可快速得到结果。 由于按设计要求幅值裕度。根据要求令相角裕度γ=60并附加6,即取γ=66。 设滞后校正器的传递函数为: 校正前的开环传递函数为: 用matlab编写滞后校正的程序代码如下: k0=750; n1=1;d1=conv(conv([10],[15]),[115]); Go=tf(k0*n1,d1); [mag,phase,w]=bode(Go); Mag=20*log10(mag); Pm=60; Pm1=Pm+6; Qm=Pm1*pi/180; b=(1-sin(Qm))/(1+sin(Qm)); Lcdb=-20*log10(b); wc=spline(Mag,w,Lcdb); T=10/(wc*b); Tz=b*T; Gc=tf([Tz1],[T1]) 图2-2滞后校正求解图 得到结果为: 使用matlab检验是否符合要求,程序代码为: K=750; n1=1;d1=conv(conv([10],[15]),[115]); s1=tf(K*n1,d1); n2=[22.231];d2=[492.11];s2=tf(n2,d2); sys=s1*s2; [mag,phase,w]=bode(sys); margin(sys) 图2-3校正后系统BODE图 Matlab仿真结果为:Gm=32.8dBPm=77.7deg(符合设计要求) 3用MATLAB画校正前后的轨迹 3.1校正前的根轨迹 由于系统未校正前的开环传递函数为: 使用MATLAB画根轨迹代码如下: num=750 den=conv(conv([1,0],[1,5]),[1,15]) rlocus(num,den) title('控制系统未校正前根轨迹图') 图3-1校正前系统根轨迹图 3.2校正后的根轨迹 系统校正后的开环传递函数为: 使用MATLAB画根轨迹代码如下: num=750*[22.23,1] den=conv(conv([1,15],[492.1,1]),[1,5,0]) rlocus(num,den) ti