matlab状态反馈控制器设计,H无穷的状态反馈控制器设计

本帖最后由 zhedongxiao 于 2011-5-25 15:16 编辑

求教 :用LMI方法求倒立摆H无穷状态反馈控制器程序

求教 :用LMI方法求倒立摆H无穷状态反馈控制器程序用LMI方法求倒立摆H无穷状态反馈控制器程序 但运行出现没有合适的gama值

显示“could not establish feasibility nor infeasibility”

A=[0 1 0 0;0 0 0 0;0 0 0 1; 0 0 29.4 0];

B1=[0;0;-1;0];

B2=[0;1;0;3];

C1=[1 0 0 0; 0 0 1 0];

D=[0;0];

E=[0;1.496;0;3.612];

F=[0 1 1 0];

e=4;

setlmis([]);               %%初始化LMI系统

X=lmivar(1,[4,1]);

W=lmivar(2,[1,4]);

gama=lmivar(2,[1,1]);   %%定义决策变量X,W,r

NO=newlmi;

lmiterm([NO 1 1 X],A,1);

lmiterm([NO 1 1 W],B2,1);

lmiterm([NO 1 1 -X],1,A');

lmiterm([NO 1 1 -W],1,B2');

lmiterm([NO 1 1 0],e*E*E');

lmiterm([NO 1 2 X],1,F');

lmiterm([NO 1 3 0],B1);

lmiterm([NO 1 4 -X],1,C1');

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于LMI(线性矩阵不等式)工具箱设计状态反馈H无穷控制器的步骤如下: 1. 定义系统模型:使用“ss”函数定义系统的状态空间模型。 2. 定义加权函数:使用“augw”函数定义系统加权函数,其中包括控制器加权函数、传感器加权函数和外部加权函数。 3. 构造LMI约束:使用“lmis”函数构造LMI约束,其中包括状态反馈增益矩阵、Lyapunov矩阵和gamma值等。 4. 解决LMI问题:使用“lmi”函数解决LMI问题,得到状态反馈增益矩阵。 5. 构造闭环系统:使用“feedback”函数构造闭环系统。 以下是一个简单的MATLAB代码示例: ``` % 定义系统模型 sys = ss(A,B,C,D); % 定义加权函数 Wc = tf([1 2],[1 3]); Ws = tf([1 1],[1 5]); Wu = tf([1 1],[1 10]); L = augw(sys,Wu,Ws,Wc); % 构造LMI约束 setlmis([]); gamma = lmivar(1,[1 0]); P = lmivar(1,[n 1]); Lm = lmivar(2,[n m]); lmiterm([1 1 1 P],1,1); lmiterm([-2 1 1 P],1,1); lmiterm([3 1 1 Lm],1,B); lmiterm([3 1 1 P],A',-1,'s'); lmiterm([3 1 2 0],C); lmiterm([3 1 3 0],Lm*Wc); lmiterm([-4 1 1 gamma],1,1); lmis = getlmis; [tmin,xfeas] = feasp(lmis); % 解决LMI问题 P = dec2mat(lmis,xfeas,P); Lm = dec2mat(lmis,xfeas,Lm); % 构造闭环系统 K = Lm/P; sys_cl = feedback(K*L,sys); ``` 其中,A、B、C、D分别为系统的状态空间矩阵,n和m分别为输入和输出的数量。Wc、Ws和Wu分别为控制器加权函数、传感器加权函数和外部加权函数,可以根据具体问题进行定义。最终得到的状态反馈增益矩阵为K,闭环系统为sys_cl,gamma值为解决LMI问题得到的最小值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值