acumen 发表于 2009-4-15 09:52

求助,关于Hinf控制器

num=400;
den=
g=tf(num,den);
nw1=100*conv(,);
dw1=conv(,);
nw3=;
dw3=;

=tf2ss(num,den);
s=mksys(a,b,c,d);
w1=;
w3=;
tss=augtf(s,w1,[],w3);
=hinf(tss);
=branch(cf1);
gc=zpk(ss(af,bf,cf,df))

刚涉入鲁棒控制,有基本教材上都有这个例子,可是却实现不了,显示=hinf(tss);这里有错误,请高手指点,谢谢。

ant20050521 发表于 2009-4-15 15:39

可以运行,运行结果如下:
<< H-inf Optimal Control Synthesis >>

            Computing the 4-block H-inf optimal controller
          using the S-L-C loop-shifting/descriptor formulae

   Solving for the H-inf controller F(s) using U(s) = 0 (default)
   Solving Riccati equations and performing H-infinity
   existence tests:
      1.Is D11 small enough?                     OK
      2.Solving state-feedback (P) Riccati ...
             a.No Hamiltonian jw-axis roots?         OK
             b.A-B2*F stable (P >= 0)?               OK
      3.Solving output-injection (S) Riccati ...
             a.No Hamiltonian jw-axis roots?         OK
             b.A-G*C2 stable (S >= 0)?               OK
      4.max eig(P*S) < 1 ?                         OK
    -------------------------------------------------------
       all tests passed -- computing H-inf controller ...
                         DONE!!!
    -------------------------------------------------------

Zero/pole/gain:
8597.8554 (s+42.84) (s^2+ 2s + 400)
-------------------------------------
(s+5)^2 (s^2+ 308.5s + 4.388e004)

acumen 发表于 2009-4-15 16:22

哦,谢谢楼上,你倒是提醒了我,也许是我的matlab没安装完全,我只装了一个盘,怪不得helphinf 都找不到。下载个再安装试试

acumen 发表于 2009-4-16 08:45

请问2楼,为什么我完全安装了matlab后还是不能运行,错误如下:
??? Attempt to execute SCRIPT hinf as a function.

Error in ==> hinf at 18
=hinf(tss);

acumen 发表于 2009-4-16 08:46

我用的是7.1版本,按理来说这个不是问题

acumen 发表于 2009-4-16 09:27

不好意思,原来是文件名不对,改个文件名就好了。

ant20050521 发表于 2009-4-16 09:52

有时候一个不注意的小问题就能让人憋半天的。
页: [1]
查看完整版本: 求助,关于Hinf控制器