基于观测器的T-S模糊系统故障分析simulink仿真(提供matlab仿真录像,详细理论推导文档)

目录

1.源码获取方式

2.算法描述

3.部分程序

4.部分仿真图预览


1.源码获取方式

使用版本matlab2022a

获取方式1:

点击下载链接(解压密码C+123456):

基于观测器的T-S模糊系统故障分析simulink仿真

获取方式2:

如果下载链接失效,加博主微信联系,或私信联系。

2.算法描述

       T-S模糊模型是复杂非线性系统模糊建模中的一种典型的模糊动态模型,由Takagi 和Sugeno 于1985 年提出,其主要特点:前提部依据系统输入、输出间是否存在局部线性关系来进行划分,结论部由多项式线性方程来表达,从而构成各条规则间的线性组合,使非线性系统的全局输出具有良好的线性描述特性。模糊逻辑的设计不依赖被控对象的模型,但却非常依赖专家经验和知识。模糊逻辑的优点:能将人的控制经验通过模糊规则融入控制器中,通过设计模糊规则,实现高水平的控制器设计。
       T-S模糊模型分为2种类型,一型T-S模糊系统是表示光滑非线性系统的有力工具。一般地,两种方法可以获得一型T-S模糊模型。

       第一种方法主要基于系统的输入-输出数据,并运用系统辨识算法获得一型T-S模糊模型。当无法获得非线性系统的数学模型,而系统的输入-输出数据又可以获得时,主要采用这一方法。
       第二种建模方法主要适合于非线性系统数学模型已知的情形。当非线性系统的数学模型已经被建立,运用扇区非线性法或局部近似方法可以获得期望的一型T-S模糊模型。

       在T-S模糊模型中,对于双输入、单输出的系统可以用F条件语句:

来叙述。输出量u是一个数值函数f(x1,x2)。

对于1阶ts模型F推理,设第i条规则为Ri,则:

        其中和表示第i条规则中的两个模糊集合。其中pi,qi,ri都是第i条规则的中的常数,他们共同反映了系统的固有特性。当输入量xi激活m条模糊规则时,最终输出U将由这m条规则的输出ui决定。

3.部分程序

基于观测器的T-S模糊系统故障分析simulink仿真(提供matlab仿真录像,详细理论推导文档)_第1张图片 

clc;
clear;
close all;
warning off;
addpath(genpath(pwd));
%赋值
rho=2;
A1=[-0.1 50; -1 -10];%A1=3*3
A2=[-0.1-rho^2 50;-1 -10];%A2=3*3
E1=[0.1 -0.5]';%E1=3*1
E2=E1;%E2=3*1
D1=[0.01;0.05];%D1=3*1
D2=D1;%D2=3*1
C=[1 1];%C=2*3
H=0;%H=2*1=[0.01 0]'
phi=1;%eye(2)-H*inv(H'*H)H'

r1=0.5;r2=0.5;
%%%%%%%%


setlmis([])
% 定义未知变量
Gama=lmivar(2,[1 1])%(2,[1 2])
L1=lmivar(2,[2 1])%(2,[3 2])
L2=lmivar(2,[2 1])%(2,[3 2])
M1=lmivar(2,[1 1])%(2,[1 2])
M2=lmivar(2,[1 1])%(2,[1 2])
P=lmivar(1,[2 1])%(1,[3 1])


%LMI i=1
lmiterm([1 1 1 P],1,A1,'s')
% lmiterm([1 1 1 P],-1,D1*inv(H)*C1,'s')
lmiterm([1 1 1 L1],1,C,'s')
lmiterm([1 2 1 Gama],1,phi*C*A1)
lmiterm([1 2 1 M1],1,C)
lmiterm([1 1 2 P],1,E1)
lmiterm([1 1 3 P],-1,D1)
lmiterm([1 1 3 L1],-1,H)
lmiterm([1 2 2 Gama],1,phi*C*E1,'s')
lmiterm([1 2 3 Gama],-1,phi*C*D1)
lmiterm([1 2 3 M1],-1,H)
lmiterm([1 2 4 0],1)
lmiterm([1 3 3 0],-r1*r1)
lmiterm([1 4 4 0],-r2*r2)


%LMI i=2
lmiterm([2 1 1 P],1,A2,'s')
lmiterm([2 1 1 L2],1,C,'s')
lmiterm([2 2 1 Gama],1,phi*C*A2)
lmiterm([2 2 1 M2],1,C)
lmiterm([2 1 2 P],1,E2)
lmiterm([2 1 3 P],-1,D2)
lmiterm([2 1 3 L2],-1,H)
lmiterm([2 2 2 Gama],1,phi*C*E2,'s')
lmiterm([2 2 3 Gama],-1,phi*C*D2)
lmiterm([2 2 3 M2],-1,H)
lmiterm([2 2 4 0],1)
lmiterm([2 3 3 0],-r1*r1)
lmiterm([2 4 4 0],-r2*r2)




%LMI 3
lmiterm([3 1 1 P],-1,1)

%求解器
 LMIs=getlmis 
[tmin,xfeas]=feasp(LMIs,[0,0,1000,0,0],-0.001)%

%求解各变量的值
P=dec2mat(LMIs,xfeas,P)
Gama=dec2mat(LMIs,xfeas,Gama)
L1=dec2mat(LMIs,xfeas,L1)
L2=dec2mat(LMIs,xfeas,L2)
%  r=dec2mat(LMIs,xfeas,r)
M1=dec2mat(LMIs,xfeas,M1)
M2=dec2mat(LMIs,xfeas,M2)

4.部分仿真图预览

基于观测器的T-S模糊系统故障分析simulink仿真(提供matlab仿真录像,详细理论推导文档)_第2张图片 A98

你可能感兴趣的:(Simulink控制器,matlab,观测器,T-S模糊,故障分析,simulink仿真)