自动控制原理之超前校正

自动控制原理属于本科生学习范畴,期间没有学明白,研究生阶段再次补上,学霸君可略过。

1.系统校正问题的提出

在系统设计时,常常遇到不能满足性能指标要求的情况,甚至有时不同性能要求间相互矛盾。为了满足稳态精度的要求,可以通过扩大稳态精度误差系数K的办法,但这有可能导致稳态性变差(即稳态裕度不充分大)。所以,这种单纯靠改变增益参数来改善系统性能的方法具有局限性。行之有效的方法是通过改变系统的结构或增加附加装置使系统性能满足指标要求。后者称为校正或者补偿。校正大致分为超前、滞后和超前滞后三种,本文介绍超前校正。

2.超前校正

超前校正是指通过相位超前效应达到增大相位裕量和频带宽度的目的,使瞬态响应得到显著改善,但对提高稳态精度作用不大,它用于稳态精度已经满足,噪声信号较小,但瞬态品质不能满足要求的系统。

2.设计步骤

以开环传递函数为G_{0}=\frac{4k}{s(s+2)}为例,要求静态速度误差系数K_{v}=20s^{-1},要求相位裕量\gamma\geqslant48,增益裕度\beta >10dB,试设计校正装置。

(1)求未校正系统的开环增益K

根据误差系数K_{v},确定开环增益K值,此系统为1型系统,单位斜坡的稳态误差为e_{ss}= \frac{1}{K_{a}}=\frac{1}{20},通过终值定理求得,k=20.

G_{0}=\frac{40}{s(s+2)}

现在,利用matlab(也可用simulink)绘出未校正系统的时域波形图和伯德图如下:

由上图可看出,该系统瞬态响应很差,振荡大,相位裕度为18°,不满足要求。

(2)求校正装置参数

a.为满足\gamma_{2}_{_{}}\geqslant48°,校正装置提供的最大超前相角为\varphi _{m}=\varphi _{2}-\varphi _{1}+(5°~10°)=48-18+7=37°;

b计算超前校正网络的衰减系数\alpha,根据sin\varphi _{m}=\frac{1-\alpha }{1+\alpha },可得,\alpha =0.248,即当\alpha =0.248时,可保证\varphi _{m}=37°;

c.根据超前角\varphi _{m}确定其对应的幅值,进而确定\omega _{m},即L(\omega _{m})=-20lg(\frac{1}{\sqrt{\alpha }}),=-6.1dB,由未校正的伯德图可确定\omega _{m}=8.9s^{-1},一次来作为校正后开环传递函数的增益交界频率;

d.根据\omega _{m}=\frac{1}{\sqrt{\alpha }T},求得T=0.233s^{-1}

e.根据G_{c}=\alpha \frac{Ts+1}{\alpha Ts+1},即G_{c}=0.248\frac{0.233s+1}{0.056s+1},0.248为为校正装置造成的幅值衰减,将其抵消,即G_{c}=\frac{0.233s+1}{0.056s+1}

则校正后的系统开环传递函数为:G_{c}G_{0}=\frac{0.233s+1}{0.056s+1}\frac{40}{s(s+2)},完成。

下图为校正装置的伯德图和校正后的系统时域波形图、伯德图:

由上图可知,校正后的系统满足要求。

matlab源代码如下:
 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%作用:超前校正装置的设计
%作者:北疆紫云
%时间:2018年12月5日
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear all;
close all;
t=0:0.01:10; %%设置仿真时间
%画出未校正的阶跃响应波形图
s=tf('s');
G0=40/(s*(s+2));  %%开环传递函数
G1=feedback(G0,1);%%闭环传递函数 
figure(1);
step(G1,t); 
grid ;
xlabel('t');ylabel('c(t)'); 
title('单位阶跃响应');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%未校正的伯德图
s=tf('s');
figure(2)
margin(G0);
[gm,pm,wg,wp]=margin(G0);
grid;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%校正装置的伯德图
s=tf('s');
Gc=(0.223*s+1)/(0.056*s+1);
figure(3)
margin(Gc);
[gm,pm,wg,wp]=margin(Gc);
grid;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%校正后系统的时域波形图
s=tf('s');
G3=Gc*G0;
figure(4);
G4=feedback(G3,1);%%闭环传递函数 
step(G4,t);
grid 
hold on;
step(G1,t);
xlabel('t');ylabel('c(t)'); 
title('单位阶跃响应');
figure(5);
%校正后系统的伯德图
margin(G3);
[gm,pm,wg,wp]=margin(G3);
grid;


 

猜你喜欢

转载自blog.csdn.net/weixin_42683131/article/details/84815873