我是靠谱客的博主 魔幻灯泡,最近开发中收集的这篇文章主要介绍机电控制基础之超前校正,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

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

1.系统校正问题的提出

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

2.超前校正

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

 

2.设计步骤

以开环传递函数为G_{0}=frac{4k}{s(s+2)}为例,要求静态速度误差系数K_{v}=20s^{-1},要求相位裕量gammageqslant48,增益裕度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,根据sinvarphi _{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.248frac{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;


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

最后

以上就是魔幻灯泡为你收集整理的机电控制基础之超前校正的全部内容,希望文章能够帮你解决机电控制基础之超前校正所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部