自动控制原理课程设计
本课程设计的目的着重于自动控制基本原理与设计方法的综合实际应用。主要内容包括:古典自动控制理论(PID)设计、现代控制理论状态观测器的设计、自动控制MATLAB仿真。通过本课程设计的实践,掌握自动控制理论工程设计的基本方法和工具。
1 内容
某生产过程设备如图1所示,由液容为C1和C2的两个液箱组成,图中Q为稳态液体流量(m3/s),?Qi为液箱A输入水流量对稳态值的微小变化(m3/s),
?Q1为液箱A到液箱B流量对稳态值的微小变化(m3/s),?Q2为液箱B输出水流量对稳态值的微小变化(m3/s),h1为液箱A的液位稳态值(m),?h1为液箱A液面高度对其稳态值的微小变化(m),h2为液箱B的液位稳态值(m),?h2为液箱B液面高度对其稳态值的微小变化(m),R1,R2分别为A,B两液槽的出水管液阻
(m/(m3/s))。设u为调节阀开度(m2)。
已知液箱A液位不可直接测量但可观,液箱B液位可直接测量。
Qi+△Qih10+△h1AQ10+△Q1h20+△h2BQ20+△Q2
图1 某生产过程示意图
要求
1. 建立上述系统的数学模型;
2. 对模型特性进行分析,时域指标计算,绘出bode,乃示图,阶跃反应曲线 3. 对B容器的液位分别设计:P,PI,PD,PID控制器进行控制; 4. 对原系统进行极点配置,将极点配置在-1+j和-1-j;(极点可以不一样) 5. 设计一观测器,对液箱A的液位进行观测(此处可以不带极点配置); 6. 如果要实现液位h2的控制,可采用什么方法,怎么更加有效?试之。 用MATLAB对上述设计分别进行仿真。
(提示:流量Q=液位h/液阻R,液箱的液容为液箱的横断面积,液阻R=液面差变化?h/流量变化?Q。)
2 双容液位对象的数学模型的建立及MATLAB仿真过程一、对系统数学建模
如图一所示,被控参数?h2的动态方程可由下面几个关系式导出: 液箱A:?Qi??Q1?C1d?h1 dtd?h2 dt液箱B:?Q1??Q2?C2R1??h1/?Q1 R2??h2/?Q2
?Qi?Ku?u
消去中间变量,可得:
d2?h2d?h2T1T2?(T?T)??h2?K?u 12dtdt2式中,C1,C2——两液槽的容量系数
R1,R2——两液槽的出水端阻力 T1?R1C1——第一个容积的时间常数 T2?R2C2——第二个容积的时间常数
K?KuR2_双容对象的放大系数 其传递函数为:
G(S)??H2(S)K ??U(S)T1T2S2?(T1?T2)S?1二.对模型特性进行分析,绘出bode,奈氏图,阶跃反应曲线 当输入为阶跃响应时的Matlab仿真: 令T1=T2=6;K=1
G(S)??H2(S)11 ???U(S)36S2?12S?1(6S?1)2单位阶跃响应的MATLAB程序: num1=[1];den1=[36 12 1]; G1=tf(num1,den1); figure(1); step(G1);
xlabel('时间(sec)');ylabel('输出响应');title('二阶系统单位阶跃响应'); step(G1,100); 运行结果如下:
阶跃反应曲线:
图1
c(∞)=1; c(tp)=1; tp=45.5s; td=10s; ts=45.5s; 最大超调量:δ(tp)= [c(tp)- c(∞)]/ c(∞)*100%=0%
稳态误差分析: 开环传递函数G(S)??H2(S)1?,稳态误差ess?1;
?U(S)36S2?12S?1用MATLAB绘制的奈氏图如下图2所示,其程序如下: nyquist([1],conv([6 1],[6 1]))
图2
在工程实践中,一般希望正相角裕度r为45o~60o,增益裕度Kg?10dB,即Kg?3。当系统为单位负反馈时的Bode图:用MATLAB绘制的奈氏图如下图3所示,其程序如下:
sys=tf([1],conv([6 1],[6 1]));margin(sys);figure
图3
三:对B容器的液位分别设计:P,PI,PD,PID控制器进行控制
PID控制的原理和特点
(1)P控制:取P=9;
I=0;
D=0;
(2)PI控制:P=6,I=0.4,D=0;
(3)PD控制:P=9,I=0,D=5;