利用matlab实现h 控制,利用matlab实现H-infinity鲁棒控制
利用matlab实现H-infinity鲁棒控制提供的balreal实现。 5 控制器设计设计问题是寻找一控制器K,使之稳定系统G,并使下列的H∞范数最小:有很多种得到H∞控制器的方法,例如hinfsyn,hinfric,hinflmi,这些函数将P作为输入,并以系统矩阵(mu-tools)方式表达。RCT v3.0.1提供了mixsyn函数,将作为输入(为补灵敏度函数权重),并不需要事先得到广义
利用matlab实现H-infinity鲁棒控制
提供的balreal实现。 5 控制器设计

设计问题是寻找一控制器K,使之稳定系统G,并使下列的H∞
范数最小:

有很多种得到H∞控制器的方法,例如hinfsyn,hinfric,hinflmi,这些函数将P作为输入,并以系统矩阵(mu-tools)方式表达。RCT v3.0.1提供了mixsyn函数,将
作为输入(
为补灵敏度函数权重),并不需要事
先得到广义系统模型P。这些方法的主要区别在于是否用到Riccati方程和γ迭
代或者线性矩阵不等式来求解最优化问题。LMI方法不需要求解Riccati时设定的假设条件。
另外还有些指令:ncfsyn和loopsyn(对开环传递函数L=GK进行H∞回路成形设计),hinfmix和msfsyn(多目标)。具体请查阅手册。 6 结果分析
当控制器设计好后,需要对结果进行分析,这时可以利用Control System Toolbox提供的函数,例如利用lsim,step(阶跃响应),bode(伯德图),sigma(奇异值),freqresp(频域响应)等函数对传递函数S,KS,T,K,GK进行分析。Mu-tools提供的函数有:trsp(时域响应),frsp(频域响应),vsvd(奇异值),vplot。 7 结论
从前面可见,有很多种进行H∞控制器设计的方法。为了避免混淆,我建议尽可能使用mu-tools和RCT。如果你知道Control System Toolbox存在某个函数,那么mu-tools也很可能存在具有相同功能的函数,只不过名称稍有些不同。如果你清楚自己的目的,但不知道函数的名字,那么建议你浏览帮助手册中的函数索引。
希望此处简短的介绍能够帮助你进行H∞控制器的设计。好运! 附录
%下面的代码展示了如何在Matlab中进行H-infinity控制器的设计。此处举的例子与混合
%S/KS问题有些不同。此处用到的模型和权重函数见Skogestad和Postlethwaite,1996,
%ed.1,p.60.权重函数并不是“最优”的。 %
%大部分函数来自mu-tools,一些来自lmi-tools。mu-tools和lmi-tools均包含在RCT
%v3.0.1中。
%-Jorgen Johnsen 14.12.06
%------------------------------------------------------------------------- %建立子系统
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)