精华内容
下载资源
问答
  • MATLAB鲁棒控制器实现
    千次阅读
    2018-05-25 12:02:22
     clc
     clear all
    % 平衡小车相关参数;
    g = 9.81;						% gravity acceleration重力加速度 [m/sec^2]
    M = 0.015;						% wheel weight车轮重量(个人更改) [kg]
    m = 1.5;						% body weight车体重量(个人更改) [kg]
    L = 0.045;			            % 车轮轴心到质心的距离                             
    b = 0.1;                        % 小车的摩擦系数                             
    J= m * L^2 / 3;             % 小车的转动惯量m * L^2 / 3;
    f=0.002;                       %小车的摩擦阻力距
    
    
    % 状态空间矩阵的计算
    tmp=J*(M+m)+m*M*J^2;
    
    
    % A矩阵
    A_22= -(J+m*J^2)*b/tmp;
    A_23= m*m*g*J/tmp;
    A_24= -m*L*f/tmp;
    A_42= -m*L*b/tmp;
    A_43= m*g*L*(M+m)/tmp;
    A_44= -f*(M+m)/tmp;
    %B1矩阵
    B1_2=m*L/tmp;
    B1_4=(M+m)/tmp;
    %B2矩阵
    B2_2=J+m*L*L/tmp;
    B2_4=m*L/tmp;
    
    
    % 矩阵的表示
    A=[0 1 0 0;0 A_22 A_23 A_24;0 0 0 1;0 A_42 A_43 A_44];
    B1=[0;B1_2;0;B1_4];
    B2=[0;B2_2;0;B2_4];
    D12=[0 0 0 1]';
    
    
    % 基于LMI算法鲁棒控制器设计
    setlmis([]); %新建LMI不等式
    C1=[1000 0   0    0;
        0    2
    更多相关内容
  • 比例积分微分控制,简称PID控制,是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,至今仍有90%左右的控制回路具有PID结构。
  • 基于名义模型的机械手P鲁棒控制\基于Anti- windup的PD控制、基于PD增益自适应调节的模型参考自适应控制
  • 鲁棒控制工具箱提供了一系列的函数和工具以支持带有不确定元素的多输入多输出控制系统的设计。在该工具箱的帮助下,你可以建立带有不确定参数和动态特性的LTI模型,也可以分析MIMO系统的稳定性裕度和最坏情况下的...
  • 鲁棒控制matlab程序

    热门讨论 2009-11-12 05:41:47
    is how to write the Matlab code. I will here try to give a short overview of some useful Matlab functions. Hopefully this will help you when trying to design your first H1- controller.
  • 基于无源性的二连杆机器人鲁棒控制matlab程序
  • 资源名:俞立鲁棒控制设计_LMI_系统的鲁棒控制器设计实例_matlab 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合...
  • MATLAB鲁棒控制设计

    2015-05-01 16:34:52
    这是一本关于鲁棒控制的书,主要内容是关于如何利用MATLAB 进行相关鲁棒控制的设计
  • 鲁棒控制matlab工具箱,编程pdf工具箱,对于学习鲁棒控制编程作用很大。(Robust control toolbox matlab, programming pdf toolbox, robust control for learning the role of great programming.)
  • 鲁棒控制经典书籍

    2018-08-23 18:04:36
    Robustness of control systems to disturbances and uncertainties has always been the central issue in feedback control. Feedback would not be needed for most control systems if there were no ...
  • 【实例简介】这是robust control design with matlab 书里的部分M文件,挺不错的【实例截图】【核心代码】6ded1493-7e1b-4413-aa1e-d5b2e24cca52└── Robust Control with Matlab Code├── column│ ├── clp_...

    【实例简介】

    这是robust control design with matlab 书里的部分M文件,挺不错的

    【实例截图】

    【核心代码】

    6ded1493-7e1b-4413-aa1e-d5b2e24cca52

    └── Robust Control with Matlab Code

    ├── column

    │   ├── clp_col.m

    │   ├── cola_lin.m

    │   ├── cola_lv_lin.m

    │   ├── cola_lv.m

    │   ├── colamod.m

    │   ├── colas.m

    │   ├── contents.m

    │   ├── dk_col.m

    │   ├── frs_col.m

    │   ├── hin_col.m

    │   ├── init_col.m

    │   ├── lsh_col.m

    │   ├── mod_col.m

    │   ├── ms_col.m

    │   ├── mu_col.m

    │   ├── nls_col.mdl

    │   ├── olp_col.m

    │   ├── pfr_col.m

    │   ├── prt_col.m

    │   ├── red_col.m

    │   ├── sim_col.m

    │   ├── unc_col.m

    │   ├── wfit.m

    │   └── wts_col.m

    ├── contents

    │   └── Readme.txt

    ├── flexman

    │   ├── betal_flm.m

    │   ├── clp_flm.m

    │   ├── contents.m

    │   ├── dk_flm.m

    │   ├── ffeq_flm.m

    │   ├── frs_flm.m

    │   ├── hin_flm.m

    │   ├── init_flm.m

    │   ├── koef50_flm.m

    │   ├── koef_flm.m

    │   ├── mod_flm.m

    │   ├── ms_flm.m

    │   ├── mu_flm.m

    │   ├── nls_flm.mdl

    │   ├── nophi_flm.m

    │   ├── olp_flm.m

    │   ├── par_flm.m

    │   ├── par_flm_plot.m

    │   ├── pd_flm.m

    │   ├── pdfrs_flm.m

    │   ├── pfrsa_flm.m

    │   ├── phid2v_flm.m

    │   ├── phi_flm.m

    │   ├── red_flm.m

    │   ├── refer_flm.m

    │   ├── s_flm.m

    │   ├── sim_flm.m

    │   ├── wts_flm.m

    │   └── xphiv_flm.m

    ├── hdd

    │   ├── cfr_hdd.m

    │   ├── c_hdd.mdl

    │   ├── clp_hdd.m

    │   ├── contents.m

    │   ├── ctr_hdd.m

    │   ├── dcl_hdd.m

    │   ├── ddk_hdd.m

    │   ├── dfr_hdd.m

    │   ├── d_hdd.mdl

    │   ├── dk_hdd.m

    │   ├── dlp_hdd.m

    │   ├── dms_hdd.m

    │   ├── dmu_hdd.m

    │   ├── dsl_hdd.m

    │   ├── dwt_hdd.m

    │   ├── frs_hdd.m

    │   ├── hinf_hdd.m

    │   ├── init_c_hdd.m

    │   ├── init_d_hdd.m

    │   ├── kf_hdd.m

    │   ├── lsh_hdd.m

    │   ├── mod_hdd.m

    │   ├── ms_hdd.m

    │   ├── mu_hdd.m

    │   ├── olp_hdd.m

    │   ├── prf_hdd.m

    │   ├── rbp_hdd.m

    │   ├── rbs_hdd.m

    │   ├── red_hdd.m

    │   ├── sim_hdd.m

    │   ├── vrs_hdd.m

    │   ├── wcp_hdd.m

    │   ├── worst_hdd.m

    │   ├── wpl_hdd.m

    │   └── wts_hdd.m

    ├── mds

    │   ├── clf_mds.m

    │   ├── clp_mds.m

    │   ├── contents.m

    │   ├── dk_mds.m

    │   ├── frs_mds.m

    │   ├── hin_mds.m

    │   ├── kf_mds.m

    │   ├── lsh_mds.m

    │   ├── mod_mds.m

    │   ├── ms_mds.m

    │   ├── nrp_mds.m

    │   ├── olp_mds.m

    │   ├── pcf_mds.m

    │   ├── pdc_mds.m

    │   ├── pfr_mds.m

    │   ├── ppf_mds.m

    │   ├── prf_mds.m

    │   ├── prt_mds.m

    │   ├── psf_mds.m

    │   ├── rbp_mds.m

    │   ├── rbs_mds.m

    │   ├── red_mds.m

    │   ├── rob_mds.m

    │   ├── sen_mds.m

    │   ├── sim_mds.m

    │   ├── sys_mds.m

    │   ├── wcp_mds.m

    │   └── wts_mds.m

    ├── pendul

    │   ├── act_pend.m

    │   ├── clp_pend.m

    │   ├── contents.m

    │   ├── c_pend.mdl

    │   ├── dcl_pend.m

    │   ├── dk_pend.m

    │   ├── d_pend.mdl

    │   ├── frs_pend.m

    │   ├── hinf_pend.m

    │   ├── inc_pend.m

    │   ├── init_c_pend.m

    │   ├── init_d_pend.m

    │   ├── mod_pend.m

    │   ├── ms_pend.m

    │   ├── mu_pend.m

    │   ├── olp_pend.m

    │   ├── pfr_pend.m

    │   ├── red_pend.m

    │   ├── sim_pend.m

    │   ├── s_pend.m

    │   ├── trans1.m

    │   ├── trans1_m.m

    │   ├── trans2.m

    │   ├── trans2_m.m

    │   ├── wcp_pend.m

    │   ├── wfit.m

    │   ├── wpl_pend.m

    │   ├── wsn_pend.m

    │   └── wts_pend.m

    └── rocket

    ├── acf_rock.m

    ├── air_data.m

    ├── cfn_rock.m

    ├── clp_rock.m

    ├── contents.m

    ├── c_rock.mdl

    ├── cx_fct.m

    ├── cy_fct.m

    ├── dcl_rock.m

    ├── ddk_rock.m

    ├── dfr_rock.m

    ├── dif_rock.m

    ├── dk_rock.m

    ├── dlp_rock.m

    ├── dms_rock.m

    ├── dmu_rock.m

    ├── d_rock.mdl

    ├── frc_rock.m

    ├── frs_rock.m

    ├── hin_rock.m

    ├── inc_rock.m

    ├── init_c_rock.m

    ├── init_d_rock.m

    ├── mmn_rock.m

    ├── mod_rock.m

    ├── ms_rock.m

    ├── mu_rock.m

    ├── olp_rock.m

    ├── prm_rock.m

    ├── prt_rock.m

    ├── red_rock.m

    ├── sim_rock.m

    ├── sol_rock.m

    ├── s_rock.m

    ├── sys_rock.m

    ├── theta_rock.m

    ├── wsa_rock.m

    └── wts_rock.m

    8 directories, 184 files

    展开全文
  • 基于MATLAB上肢康复机械臂鲁棒控制研究
  • 利用matlab实现H-infinity鲁棒控制 利用Matlab实现H∞控制 Prof. Dr.-Ing.F.Allgwer Institute for Systems Theory and Automatic Control http://www.ist.uni-stuttgart.de/education/courses/robust 1 引 言 H∞...

    41528d3028836879cd698677c3999917.gif利用matlab实现H-infinity鲁棒控制

    利用Matlab实现H∞控制 Prof. Dr.-Ing.F.Allgwer Institute for Systems Theory and Automatic Control http://www.ist.uni-stuttgart.de/education/courses/robust 1 引 言 H∞控制器设计原理容易理解,难点在于编程。这里简单介绍Matlab里面几个相关函数的用法,希望能帮助你设计第一个H∞控制器。 Matlab提供了很多H∞设计函数,与H∞设计相关的几个重要的工具箱有:Control System Toolbox,mu-Analysis and Synthesis Toolbox(mu-tools),Robust Control Toolbox(RCT)和LMI Control Toolbox。Matlab7.0之后的版本中,LMI和mu-tools都包含在RCT v3.0.1中,Matlab 7.0之前的版本中这些工具箱是独立的。 本文中用到的函数都写在了一个m文件中(见附录),也可以从网站下载。 利用混合S/KS问题说明H∞相关函数的用法。首先回顾这个问题。 2 回路成形传递函数 混合S/KS问题可用图1来说明。 从w到z的闭环传递函数可以表示为 广义过程模型P(s)(见图2)可以表示为 假设上面几个状态空间变量具有如下的形式: 于是可以得到P(s)的一个可能的状态空间实现形式: WS和WKS为调整参数。一种选择方法为: 其中A<1为允许的最大稳态误差,为期望带宽,M为灵敏度峰值(一般情况下A=0.01,M=2)。从控制器设计的方面来说,的倒数为回路成形期望灵敏度的上限,影响控制器的输出u。 有些情况下希望对补灵敏度函数进行回路成形设计(在图1中增加一个输出)。一种选择方法为: 此函数与函数成轴对称,见图3所示。图中参数设置为A=0.01(=-40dB),M=2(=6dB),。 3 子系统的实现 在Matlab中有几种方式得到G,WS和WKS。例如Control System Toolbox提供的ss,tf和zpk等函数。Mu-tools也提供了诸如pck,nd2sys,zp2sys等函数,也可以用mksys和tree等方法。需要注意的是,Mu-tools提供了一种与Control System Toolbox不一样的表达方式:系统矩阵(system matrix)。Control System Toolbox里面可以写成,对mu-tools则不适用。Mu-tools: 4 广义系统P的实现 广义系统P也有多种产生方式。下面我列举了五种: (1)直接写出传递函数矩阵,见2节。我倾向于利用mu-tools。如果后面需要转化为状态空间模型,需要利用minreal之类的函数得到最小化实现。重要的函数有:sbs(side-by-side),abv(above),mmult(multiply),minv(inverse)。 (2)写出状态空间系数矩阵A,B,C,D,然后利用3节中的指令:P=pck(A,B,C,D)。 (3)利用sysic函数(system interconnect)。先在一个m文件中利用mu-tools设置了子系统,然后利用该函数将子系统互连起来。 (4)利用sconnect函数,这是LMI-tools提供的函数。子系统、输入、输出以参数的形式传递,sconnect返回互连的系统。 (5)利用RCT v3.0.1提供的iconnect函数,该函数功能与sysic类似。 这些方法中,我倾向于sysic和iconnect函数,因为它们使用灵活,能够搭建方法1和方法2难于搭建的复杂系统。一般情况下,得到均衡实现形式以避免数值计算问题是一个很好的想法,均衡实现形式可以利用Control System Toolbox提供的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 %------------------------------------------------------------------------- %建立子系统 %------------------------------------------------------------------------- %Plant:G=200/((10s+1)(0.05s+1)^2) %方法1:直接方法,利用mu-tools G=nd2sys(1,conv([10,1],conv([0.05,1],[0.05 1])),200); %方法2:control system toolbox s=tf( s ); Gcst=200/((10*s+1)*(0.05*s+1)^2); [a,b,c,d]=ssdata(balreal(Gcst))

    展开全文
  • 资源名:Hinf鲁棒控制_Matlab_鲁棒控制工具箱_假定空间桁架设计_闭环系统 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者...
  • 案例来源于《现代鲁棒控制理论与应用》(梅生伟等) 程序已经调试通过,对于利用matlab鲁棒控制工具箱很有启发。
  • 一些先进pid控制方法,并且利用matlab进行控制
  • LMI求解鲁棒控制器_matlab源码.rar
  • 此模拟有助于了解中性点钳位 (NPC) 多电平逆变器(3 电平)。 我希望它对你很有帮助。 如果需要了解任何问题,请通过(nest2020engg@gmail.com)Gmail与我联系。 谢谢....
  • 资源名:鲁棒控制器设计程序_一个实际的鲁棒控制器设计实例_LMI_matlab 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换...
  • 简单介绍了鲁棒控制的例子,以及练习时代码,仅供参考 。
  • 针对利用模糊T-S模型建模的切换模糊系统,考虑当...利用平行分布补偿算法(PDC),给出切换模糊状态反馈控制器设计,使得闭环系统在所设计的控制器和切换律下,对所有允许的不确定具有鲁棒性。仿真结果表明方法的有效性。
  • 离散控制Matlab代码二自由度并联机构的鲁棒控制 概述 该项目引用了由大学自动化与控制实验室的Isabella Stevani在迭戈·科隆教授的指导下,由Isabella Stevani撰写的题为“结合反馈线性化和H-无穷大设计的2-DOF并联...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,754
精华内容 1,101
关键字:

鲁棒控制matlab

matlab 订阅