资源简介
该程序的主要目的是给出鲁棒H无穷控制器的设计过程,并通过绘图形象反映仿真结果,具有较高的参考价值。
代码片段和文件信息
%__________________________________________________________
%
% tank_DKiteration.m
%
% Perform an H_infinity/mu synthesis design for a process
% tank system. The main purpose of this code is to
% demonstrate the use of the software for robust H_infinity
% control design.
%
% Requires version 3.0 (Sept/2004) of the robust control
% toolbox.
%
% Roy Smith 23/May/2006
%
%__________________________________________________________
% The system consists of a water tank with controlled hot and
% cold water inlet flows. An outlet flow is located at the
% bottom of the tank. The measured variables of interest
% are the level and temperature of the water in the tank.
% The tank system and the perturbation model is described in:
%
% “Model validation for robust control: an experimental process
% control application“ Roy S. Smith Automatica Vol. 31
% No. 11 pp. 1637-1647 1995.
% _________________________________________________________
clear all
% Nominal model:
% Physical constants: (scaled dimensionless units)
A1 = 91.4; % tankcross-sectional area
alpha = 1.34; % exit flow gain
beta = 0.6; % exit flow bias
th = 1.0; % hot water temperature
tc = 0.0; % cold water temperature
act_tc = 0.05; % actuator time constant
% Nominal operating point:
h1nom = 0.47;
t1nom = 0.5;
% Linearized model with
% input variables: [fh; fc]
% state variables: [E; f1]
% output variables: [h1; t1]
A_tank = [-(1+beta/h1nom)/(A1*alpha) beta*t1nom/(A1*h1nom);
0 -1/(A1*alpha) ];
B_tank = [th/A1 tc/A1;
1/(A1*alpha) 1/(A1*alpha)];
C_tank = [0 alpha;
1/h1nom -t1nom*alpha/h1nom];
D_tank = [0 0;
0 0];
P_tank = ss(A_tankB_tankC_tankD_tank);
% Actuator model.
% We use a model of the form: exp(-theta*s)*k/(tau*s + 1)
% with 0.8 <= k <= 1.2 1.5 <= tau <= 2.5 and 0.5 <= theta <= 1.0.
% A second order Pade approximation models the delay.
s = tf(‘s‘);
P_act = (s^2 - 8*s + 21.3)/((2*s+1)*(s^2+8*s+21.3));
% Examine the frequency response.
omega = logspace(-42250);
P_tank_f = frd(P_tankomega);
P_act_f = frd(P_actomega);
figure(1)
subplot(211)
loglog(abs(P_tank_f(11))abs(P_tank_f(12))...
abs(P_tank_f(21))abs(P_tank_f(22))...
abs(P_act_f));
axis([min(omega)max(omega)1e-510])
grid
legend(‘h1 <- fh‘‘h1 <- fc‘‘t1 <- fh‘‘t1 <- fc‘‘P_{act}‘)
xlabel(‘Frequency [rad/sec]‘)
ylabel(‘Magnitude‘)
r2d = 180/pi;
subplot(212)
semilogx(r2d*unwrap(angle(P_tank_f(11)))r2d*unwrap(angle(P_tank_f(12)))...
r2d*unwrap(angle(P_tank_f(21)))r2d*unwrap(angle(P_tank_f(22)))...
r2d*unwrap(angle(P_act_f)))
grid
xlabel(‘Frequency [rad/sec]‘)
ylabel(‘Phase [deg]‘)
title(‘Nominal model‘)
% -------------- Perturbation weights ---------------------
% Actuator model (see Laugh
- 上一篇:压缩感知测量矩阵产生
- 下一篇:MATLAB基于几何图形法的障碍物地图构建算法
相关资源
- 基于MATLAB鲁棒控制工具箱的计算机硬
- 利用matlab实现H-infinity鲁棒控制
- 电力系统广域时滞系统鲁棒控制的论
- 基于干扰协方差矩阵重构的鲁棒波束
- 鲁棒孤子分布的仿真程序
- 反步控制轨迹跟踪算法
- Matlab鲁棒控制工具箱Robust Control Tool
- 高鲁棒性的自适应图像加密算法
- robust-control-of-permanentmagnet 以电动小汽
- RPCA 鲁棒式主成分分析的实例
- 鲁棒H∞控制程序
- 鲁棒控制的在matlab中的程序
- 一个通用的ransac算法框架程序matlab
- 鲁棒优化线性规划yalmip工具包
- Robust Control Design with MATLAB的源代码
评论
共有 条评论