【例1】已知单位反馈系统的被控对象为试设计串联校正器,使得:①在单位斜坡信号t t r )(的作用下,系统的速度误差系数Kv ≥30sec-1;②系统校正后的截止频率ωc≥2.3rad/sec ;③系统校正后的相位稳定裕度Pm>40°。
采用Bode 图设计方法。
(1)确定K 0 根据控制理论,给定被控对象为I 型系统,单位斜坡响应的速度误差系数Kv =K = K 0≥30sec-1,其中K 0是系统的开环增益。
取K 0=30sec -1,则被控对象的传递函数为(2)作原系统的Bode 图和阶跃响应曲线,检查是否满足要求编写M 脚本文件exam1_1.m 如下: % exam1_1cleark0=30; z=[]; p=[0;-10;-5]; sys0=zpk(z,p,k0*10*5);figure(1); margin(sys0) % 函数figure 用来创建图形窗口 figure(2); step(feedback(sys0,1)), grid运行exam1_1.m 后,得到如图1所示未校正系统的Bode 图和阶跃响应曲线。
(a) 未校正系统的Bode 图和频域性能(b) 未校正系统的单位阶跃响应图1 未校正系统的频域性能和时域响应根据计算可知未校正系统的频域性能指标为:对数幅值稳定裕度G m0=-6.02dB-180°穿越频率ωg0=7.07 rad/sec相位稳定裕度P m0=-17.2°截止频率ωc0=9.77 rad/sec由计算所得数据知:对数幅值稳定裕度和相位稳定裕度均为负值,这样的系统根本无法工作。
这一点也可从如图1(b)所示发散振荡的阶跃响应曲线看出,系统必须进行校正。
(3)求校正器的传递函数由于给定的开环截止频率ωc≥2.3rad/sec,远小于ωc0=9.77 rad/sec,可以通过压缩频带宽度来改善相位裕度,因此采用串联滞后校正是合理的。
令校正器的传递函数为显然,应有β>1。
①确定新的开环截止频率ωc希望的相位稳定裕度Pm>40°,所以根据滞后校正的设计方法,应有其中,(2°~5°)是附加相位补偿角。
取其等于5°,则有于是,有从图1(a )的对数相频特性图上可以取得对应于-135°的ω为2.77rad/sec ,即有② 计算高频衰减率β 从图1(a )的对数幅频特性图上可以取得对应于sec /77.2rad c =ω的L 为19.2dB 。
于是,有从而③ 计算两个转折频率ω1和ω2 所以,校正器的传递函数为校正后的开环传递函数为(4)校验系统校正后的频域性能是否满足要求编写M 脚本文件exam1_2.m 如下: % exam1_2clear,clck0=30; z=[]; p=[0,-10,-5]; sys0=zpk(z,p,k0*10*5);n=[3.6,1]; d=[32.9,1]; sys1=tf(n,d);sys=tf(sys0)*sys1;figure(1); margin(sys); hold onfigure(2); step(feedback(sys,1)), grid运行exam1_2.m 后,得到如图2所示校正后系统的Bode 图和阶跃响应曲线。
(a) 校正后系统的Bode 图和频域性能(b) 校正后系统的单位阶跃响应图2 校正后系统的频域性能和时域响应根据计算可知校正后系统的频率性能指标为:对数幅值稳定裕度Gm=12.5dB-180°穿越频率ωg=6.8 rad/sec相位稳定裕度Pm=40.3°截止频率ωc=2.78 rad/sec显然,系统校正后的相位稳定裕度和截止频率均满足给定要求。
补充控制系统工具箱中的实用工具—SISO系统设计工具经典控制理论设计系统基本上是“分析+画图”的试探方法,既繁琐又可能得不到预期的效果。
利用MATLAB的控制系统工具箱通过简单的编程,可以完成系统的设计。
但对于不太熟悉MATLAB的用户,使用起来有一定的难度。
而利用MATLAB控制系统工具箱中提供的SISO系统设计工具(SISO Design Tool),可以直观地在图中进行设计,从而使用户快速方便地完成系统校正的工作。
SISO系统设计工具可以完成的功能如下:•利用根轨迹方法计算系统闭环特性。
• 针对开环系统的Bode 图进行系统设计。
• 添加补偿器的零极点。
• 设计超前、滞后补偿器和滤波器。
• 分析闭环系统响应。
• 调整系统幅值或相位稳定裕度。
• 系统在连续和离散状态下的互换。
下面以一个例子说明如何利用SISO 系统设计工具设计系统补偿器。
【例2】 已知单位反馈系统的被控对象为试设计串联补偿器,使得:①在单位斜坡信号t t r =)(的作用下,系统的速度误差系数K v ≥30sec -1;②系统校正后的截止频率ωc ≥2.3sec -1;③系统校正后的相位稳定裕度Pm> 40°。
说明• 本例即为【例1】,这里介绍如何用SISO 系统设计工具进行系统设计。
(1)确定K 0根据控制理论,给定被控对象为I 型系统,单位斜坡响应的速度误差系数K v =K =K 0≥30sec -1,其中K 0是系统的开环增益。
取K 0 =30sec -1,则被控对象的传递函数为(2)输入被控对象并打开SISO 系统设计工具在MATLAB 指令窗中键入>> clear>>k0=30; z=[]; p=[0;-10;-5]; sys0=zpk(z,p,k0*10*5);>>sisotool(sys0)就可以打开SISO系统设计工具操作桌面,如图3所示。
(a) sisotool设计结构(b) sisotool设计任务图3 sisotool操作桌面在该操作桌面中除了给出了开环系统的根轨迹图和Bode 图以及一些常用菜单外,还提供了许多其它信息和按钮。
其中:•图3(a)所示的补偿器编辑器(Compensator Editor)给出了当前补偿器的结构描述,默认的补偿器为C。
可以直接在增益编辑框(描述区中的小方块)s(=)1中改变补偿器的增益值。
•图3(a)所示的反馈结构图给出了当前反馈系统的整个结构。
F为前置滤波器,C为补偿器,G为被控对象(在本例中即为sys0),H为传感器。
用户可以根据需要使用上述4个模块构造实际系统。
单击各模块可以观察各模块的当前属性。
左下角的按钮可以切换正/负反馈。
•图3(b)根轨迹工具条上的几个按钮()用来增加或者删除补偿器的零极点,还可以拖曳闭环系统的极点。
左面的第一个按钮为拖曳补偿器的零极点和闭环极点,它为默认方式;第二个按钮为增加补偿器的实数极点;第三个按钮为增加补偿器的实数零点;第四个按钮为增加补偿器的复数极点;第五个按钮为增加补偿器的复数零点;第六个按钮为删除补偿器的零极点。
(3)观察系统的单位阶跃响应曲线,检查是否满足要求在图3(b)通过选择【Analysis : Response to Step Command】下拉菜单项,就得到如图4所示的闭环系统的单位阶跃响应。
图4未校正系统的单位阶跃响应其中,蓝线表示闭环系统的单位阶跃响应曲线;绿线表示补偿器的输出曲线。
从图3(b)和图4中可以看出,未校正系统的频域性能指标为:对数幅值稳定裕度Gm=-6.02dB-180°穿越频率ωg=7.07 rad/sec相位稳定裕度Pm=-17.2°、截止频率ωc=9.77 rad/sec对数幅值稳定裕度和相位稳定裕度均为负值,单位阶跃响应曲线是发散的,系统必须进行校正。
(4)Bode图方法设计补偿器根据Bode图分析该系统,可知应采用滞后校正。
在Bode 图上点击鼠标右键,在弹出的快捷菜单中选择“Add Pole/Zero”下的“Lag”项,在控制器中增加一个滞后校正环节。
在校正后的截止频率ωc2=2.3sec-1附近按下鼠标,就可以在开环系统的Bode图增加一对滞后零极点。
左右调整滞后校正环节的零极点位置,观察Bode图中相位稳定裕度和截止频率,直到满足系统的性能指标为止。
图5和图6给出了校正后的系统Bode图和闭环系统的单位阶跃响应曲线。
图5校正后的系统Bode图图6 校正后的系统单位阶跃响应校正后系统的频域性能指标为:对数幅值稳定裕度Gm=13.2dB-180°穿越频率ωg=6.67rad/sec相位稳定裕度Pm=40.6°截止频率ωc=2.55rad/sec显然,系统校正后的相位稳定裕度和截止频率均满足给定要求。
点击图3(a)Compensator Editor框,可知所得到的补偿器的传递函数为说明•在拖曳补偿器的零极点位置时,可能会改变补偿器的增益值。
为此,可以直接点击图3(a)Compensator Editor框,在增益编辑框(描述区中的小方块)中恢复补偿器的增益值。
•在拖曳补偿器的零极点位置的过程中,图6中的单位阶跃响应曲线也会随着补偿器零极点位置的变化而改变,从而可以交互地观察系统的频域性能指标和时域性能指标。
•也可以利用根轨迹法设计补偿器,读者自己完成。