文档库 最新最全的文档下载
当前位置:文档库 › 3种线性分类器的设计及MATLAB建模

3种线性分类器的设计及MATLAB建模

3种线性分类器的设计及MATLAB建模
3种线性分类器的设计及MATLAB建模

线性分类器设计

(张天航空天科学技术研究院201121250314)

1 问题描述

对“data1.m”数据,分别采用感知机算法、最小平方误差算法、线性SVM算法设计分类器,分别画出决策面,并比较性能。(注意讨论算法中参数设置的影响。)

2 方法描述

2.1 感知机算法

线性分类器的第一个迭代算法是1956年由Frank Rosenblatt提出的,即具有自学习能力的感知器(Perceptron)神经网络模型,用来模拟动物或者人脑的感知和学习能力。这个算法被提出后,受到了很大的关注。感知器在神经网络发展的历史上占据着特殊的位置:它是第一个从算法上完整描述的神经网络,是一种具有分层神经网络结构、神经元之间有自适应权相连接的神经网络的一个基本网络。

感知器的学习过程是不断改变权向量的输入,更新结构中的可变参数,最后实现在有限次迭代之后的收敛。感知器的基本模型结构如图1所示:

图1 感知器基本模型

其中,X输入,Xi表示的是第i个输入;Y表示输出;W表示权向量;w0是阈值,f 是一个阶跃函数。

感知器实现样本的线性分类主要过程是:特征向量的元素x1,x2,……,xk是网络的输入元素,每一个元素与相应的权wi相乘。,乘积相加后再与阈值w0相加,结果通过f函数执行激活功能,f为系统的激活函数。因为f是一个阶跃函数,故当自变量小于0时,f= -1;当自变量大于0时,f= 1。这样,根据输出信号Y,把相应的特征向量分到为两类。

然而,权向量w并不是一个已知的参数,故感知器算法很重要的一个步骤即是寻找一个合理的决策超平面。故设这个超平面为w,满足:

12

*0,*0,T

T

w x x w x x ωω>?∈

引入一个代价函数,定义为:

()**T

x

x Y

J w w x

δ

∈=

∑ (2)

其中,Y 是权向量w 定义的超平面错误分类的训练向量的子集。变量x δ定义为:当

1x ω∈时,x δ= -1;当2x ω∈时,x δ= +1。显然,J(w)≥0。当代价函数J(w)达到最小值0

时,所有的训练向量分类都全部正确。为了计算代价函数的最小迭代值,可以采用梯度下降法设计迭代算法,即:

()

()(1)()n

w w n J w w n w n w

ρ=?+=-? (3)

其中,w(n)是第n 次迭代的权向量,n ρ有多种取值方法,在本设计中采用固定非负值。由J(w)的定义,可以进一步简化(3)得到:

(1)()*n x x Y

w n w n x

ρδ∈+=-∑ (4)

通过(4)来不断更新w ,这种算法就称为感知器算法(perceptron algorithm )。可以证明,这种算法在经过有限次迭代之后是收敛的,也就是说,根据(4)规则修正权向量w ,可以让所有的特征向量都正确分类。

采用感知器算法实现data1.m 的数据分类流程如图2所示:

图2 单层感知器算法程序流程

MA TLAB程序源代码如下:

function Per1()

clear all;

close all;

%样本初始化

x1(1,1)=5.1418; x1(1,2)=0.5950;

x1(2,1)=5.5519; x1(2,2)=3.5091;

x1(3,1)=5.3836; x1(3,2)=2.8033;

x1(4,1)=3.2419; x1(4,2)=3.7278;

x1(5,1)=4.4427; x1(5,2)=3.8981;

x1(6,1)=4.9111; x1(6,2)=2.8710;

x1(7,1)=2.9259; x1(7,2)=3.4879;

x1(8,1)=4.2018; x1(8,2)=2.4973;

x1(9,1)=4.7629; x1(9,2)=2.5163;

x1(10,1)=2.7118; x1(10,2)=2.4264; x1(11,1)=3.0470; x1(11,2)=1.5699; x1(12,1)=4.7782; x1(12,2)=3.3504; x1(13,1)=3.9937; x1(13,2)=4.8529; x1(14,1)=4.5245; x1(14,2)=2.1322; x1(15,1)=5.3643; x1(15,2)=2.2477; x1(16,1)=4.4820; x1(16,2)=4.0843; x1(17,1)=3.2129; x1(17,2)=3.0592; x1(18,1)=4.7520; x1(18,2)=5.3119; x1(19,1)=3.8331; x1(19,2)=0.4484; x1(20,1)=3.1838; x1(20,2)=1.4494; x1(21,1)=6.0941; x1(21,2)=1.8544; x1(22,1)=4.0802; x1(22,2)=6.2646; x1(23,1)=3.0627; x1(23,2)=3.6474; x1(24,1)=4.6357; x1(24,2)=2.3344; x1(25,1)=5.6820; x1(25,2)=3.0450; x1(26,1)=4.5936; x1(26,2)=2.5265; x1(27,1)=4.7902; x1(27,2)=4.4668; x1(28,1)=4.1053; x1(28,2)=3.0274; x1(29,1)=3.8414; x1(29,2)=4.2269; x1(30,1)=4.8709; x1(30,2)=4.0535; x1(31,1)=3.8052; x1(31,2)=2.6531; x1(32,1)=4.0755; x1(32,2)=2.8295; x1(33,1)=3.4734; x1(33,2)=3.1919; x1(34,1)=3.3145; x1(34,2)=1.8009; x1(35,1)=3.7316; x1(35,2)=2.6421; x1(36,1)=2.8117; x1(36,2)=2.8658; x1(37,1)=4.2486; x1(37,2)=1.4651;

x1(39,1)=3.9590; x1(39,2)=1.3024; x1(40,1)=1.7524; x1(40,2)=1.9339; x1(41,1)=3.4892; x1(41,2)=1.2457; x1(42,1)=4.2492; x1(42,2)=4.5982; x1(43,1)=4.3692; x1(43,2)=1.9794; x1(44,1)=4.1792; x1(44,2)=0.4113; x1(45,1)=3.9627; x1(45,2)=4.2198;

x2(1,1)=9.7302; x2(1,2)=5.5080;

x2(2,1)=8.8067; x2(2,2)=5.1319;

x2(3,1)=8.1664; x2(3,2)=5.2801;

x2(4,1)=6.9686; x2(4,2)=4.0172;

x2(5,1)=7.0973; x2(5,2)=4.0559;

x2(6,1)=9.4755; x2(6,2)=4.9869;

x2(7,1)=9.3809; x2(7,2)=5.3543;

x2(8,1)=7.2704; x2(8,2)=4.1053;

x2(9,1)=8.9674; x2(9,2)=5.8121;

x2(10,1)=8.2606; x2(10,2)=5.1095; x2(11,1)=7.5518; x2(11,2)=7.7316; x2(12,1)=7.0016; x2(12,2)=5.4111; x2(13,1)=8.3442; x2(13,2)=3.6931; x2(14,1)=5.8173; x2(14,2)=5.3838; x2(15,1)=6.1123; x2(15,2)=5.4995; x2(16,1)=10.4188; x2(16,2)=4.4892; x2(17,1)=7.9136; x2(17,2)=5.2349; x2(18,1)=11.1547; x2(18,2)=4.4022; x2(19,1)=7.7080; x2(19,2)=5.0208; x2(20,1)=8.2079; x2(20,2)=5.4194; x2(21,1)=9.1078; x2(21,2)=6.1911; x2(22,1)=7.7857; x2(22,2)=5.7712; x2(23,1)=7.3740; x2(23,2)=2.3558; x2(24,1)=9.7184; x2(24,2)=5.2854; x2(25,1)=6.9559; x2(25,2)=5.8261; x2(26,1)=8.9691; x2(26,2)=4.9919; x2(27,1)=7.3872; x2(27,2)=5.8584; x2(28,1)=8.8922; x2(28,2)=5.7748; x2(29,1)=9.0175; x2(29,2)=6.3059; x2(30,1)=7.0041; x2(30,2)=6.2315; x2(31,1)=8.6396; x2(31,2)=5.9586; x2(32,1)=9.2394; x2(32,2)=3.3455; x2(33,1)=6.7376; x2(33,2)=4.0096; x2(34,1)=8.4345; x2(34,2)=5.6852;

x2(36,1)=6.5268; x2(36,2)=4.3933;

x2(37,1)=7.6699; x2(37,2)=5.6868;

x2(38,1)=7.8075; x2(38,2)=5.0200;

x2(39,1)=6.6997; x2(39,2)=6.0638;

x2(40,1)=5.6549; x2(40,2)=3.6590;

x2(41,1)=6.9086; x2(41,2)=5.4795;

x2(42,1)=7.9933; x2(42,2)=3.3660;

x2(43,1)=5.9318; x2(43,2)=3.5573;

x2(44,1)=9.5157; x2(44,2)=5.2938;

x2(45,1)=7.2795; x2(45,2)=4.8596;

x2(46,1)=5.5233; x2(46,2)=3.8697;

x2(47,1)=8.1331; x2(47,2)=4.7075;

x2(48,1)=9.7851; x2(48,2)=4.4175;

x2(49,1)=8.0636; x2(49,2)=4.1037;

x2(50,1)=8.1944; x2(50,2)=5.2486;

x2(51,1)=7.9677; x2(51,2)=3.5103;

x2(52,1)=8.2083; x2(52,2)=5.3135;

x2(53,1)=9.0586; x2(53,2)=2.9749;

x2(54,1)=8.2188; x2(54,2)=5.5290;

x2(55,1)=8.9064; x2(55,2)=5.3435;

for i=1:45 r1(i)=x1(i,1);end;

for i=1:45 r2(i)=x1(i,2);end;

for i=1:55 r3(i)=x2(i,1);end;

for i=1:55 r4(i)=x2(i,2);end;

figure(1);

plot(r1,r2,'*',r3,r4,'o');

hold on;%保持当前的轴和图像不被刷新,在该图上接着绘制下一图

x1(:,3) = 1;%考虑到不经过原点的超平面,对x进行扩维

x2(:,3) = 1;%使x'=[x 1],x为2维的,故加1扩为3维

%进行初始化

w = rand(3,1);%随机给选择向量,生成一个3维列向量

p = 1; %p0非负正实数

ox1 = -1;%代价函数中的变量

ox2 = 1;%当x属于w1时为-1,当x属于w2时为1

s = 1;%标识符,当s=0时,表示迭代终止

n = 0;%表示迭代的次数

w1 = [0;0;0];

while s %开始迭代

J = 0; %假设初始的分类全部正确

j = [0;0;0]; %j=ox*x

for i = 1:45

if (x1(i,:)*w)>0 %查看x1分类是否错误,在x属于w1却被错误分类的情况下,w'x<0

w1 = w; %分类正确,权向量估计不变

else%分类错误

j = j + ox1*x1(i,:)';%j=ox*x。进行累积运算

J = J + ox1*x1(i,:)*w;%感知器代价进行累积运算

end

end

for i = 1:55

if (x2(i,:)*w)<0%查看x2分类是否错误,在x属于w2却被错误分类的情况下,w'x>0

w1 = w; %分类正确,权向量估计不变

else%分类错误

j = j + ox2*x2(i,:)';%j=ox*x。进行累积运算

J = J + ox2*x2(i,:)*w;%感知器代价进行累积运算

end

end

if J==0 %代价为0,即分类均正确

s = 0; %终止迭代

else

w1 = w - p*j;%w(t+1)=w(t)-p(ox*x)进行迭代

p=p+0.1;%调整p

n = n+1; %迭代次数加1

end

w = w1;%更新权向量估计

end

x = linspace(0,10,5000);%取5000个x的点作图

y = (-w(1)/w(2))*x-w(3)/w(2);%x*w1+y*w2+w0=0,w=[w1;w2;w0]

plot(x,y,'r');%用红线画出分界面

disp(n);%显示迭代的次数

axis([1,12,0,8])%设定当前图中,x轴范围为1-12,为y轴范围为0-8

end

所得的结果如图3所示:

图3 感知器算法分类图

2.2 最小二乘法

基于分类判别的思想,我们期望w1类的输出为y1 = -1,w2的输出为y2 = 1。但实际的输出和期望并不总是相等的。运用最小二乘法(Least Squares Methods ),可以让期望输出和真实的输出之间的均方误差最小化,即:

2

()[|*|]

?arg m in ()T

w

J w E y x w w

J w =-= (5)

要使得J(w)最小,需要满足正交条件(orthogonality condition ):

()

2[*(*)]0

T

J w E x y x w w

?=-=? (6)

可以得到:

1?*[]x w

R E xy -= (7)

?w

就是求得的加权向量。其中:

1112121[*][*][*][*]

[*][*]

[*]l l T x l l l E x x E x x E x x E x x R E x x E x x E x x ??

?

?

??≡=???

?

??

(8)

称为自相关矩阵;

1[]l x y E xy E x y ??????

??=??

??????????

(9)

称为期望输出和输入特征向量的互相关。

通过最小均方误差算法实现线性分类的程序流程如图4所示:

图4 最小均方误差算法程序流程图

MA TLAB 程序源代码如下:

function MSE1()

clear all ; close all ;

%样本初始化

%数据同上一算法,略;

hold on ;% 保持当前的轴和图像不被刷新,在该图上接着绘制下图

%初始化函数

y1 = -ones(45,1);% w1类的期望输出为-1 y2 = ones(55,1);% w2类的期望输出为1

x1(:,3) = 1;% 考虑到不经过原点的超平面,对x 进行扩维

x2(:,3) = 1;%使x'=[x 1],x为2维的,故加1扩为3维

x = [x1;x2]'; %使x矩阵化

y = [y1;y2]; %使y矩阵化

display(x) %显示x矩阵

display(y) %显示y矩阵

R = x*x'; %求出自相关矩阵

E = x*y; %求出期望输出和输入特征向量的互相关

w = inv(R)*E%求权向量估计值

x = linspace(0,10,5000);%取5000个x的点作图

y = (-w(1)/w(2))*x-w(3)/w(2);%x*w1+y*w2+w0=0,w=[w1;w2;w0] plot(x,y,'r');%用红线画出分界面

axis([1,12,0,8]);%设定当前图中,x轴范围为1-12,为y轴范围为0-8 disp(w);%显示权向量

end

所得结果如图5所示:

图5 最小二乘法分类图

2.3 支撑矢量机(SVM )

SVM 是针对线性可分情况进行分析,对于线性不可分的情况,通过非线性映射算法将低维输入线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间可以采用线性算法对样本的非线性特征进行线性分析。而且,SVM 是基于最优化理论的算法,在特征空间中构造最优超平面,且这个最优超平面是全局最优的,同时,支持向撑矢量机的最优超平面分类器是唯一的。

在线性可分的情况下,我们想要设计一个超平面,使得所有的训练向量正确分类:

0()0

T

g x w x w =+= (10)

由于感知器算法可能收敛于任何可能的解,显然,这样设计得到的超平面不唯一的。最优超平面是使得每一类数据与超平面的距离最近的向量与超平面之间的距离最大的这样的平面,或者说,最优超平面是使得超平面在每一个方向上与w1类、w2类中各自最近的点距离都相同。这样,我们设计的分类器的容量就更大,两类数据被错误分类的概率更小;同时当面对未知数据的分类时,最优超平面可靠度最高。

最优超平面可以通过求解二次优化问题来获得:

2

1m in ()2J w w

(11) 满足约束条件:

0()1,1,2,,T

i i y w x w i N +≥=

(12)

在样本数目特别大的时候,可以将二次规划问题转化为其对偶问题:

1

,1

max 2N T

i i j i j i j i i j

y y x x λλλ=??-

?

??∑∑

(13)

[]*

1

0,1N

i

i i i w y x λ

==

(14)

*0T

i w y w x =-

(15)

满足约束条件:

1

0,0,1,2,N

i

i

i i y

i N λλ==≥=∑

(16)

这里,i λ是拉格朗日算子,*

w 是最优超平面的法向量,*

0w 是最优超平面的偏移量。 在这类优化问题的求解中,根据karush-kuhn-tucker 条件,求得的解必满足:

()010,1,2,,T

i i i y w x w i N λ??+-==??

(17)

从式中我们可以发现,对于i λ=0这样的点对于样本分类没有任何作用,只有i λ>0时的样本才对分类起作用,这些样本就称为支撑矢量。

通过SVM 算法实现分类的程序流程如图6所示:

图6 SVM算法程序流程图

MA TLAB程序源代码如下:

function SVM()

close all;

clear all;

%数据初始化略

hold on; %保持当前的轴和图像不被刷新,在该图上接着绘制下图

y1 = ones(45,1); %对于每一个xi,yi为相应的标识器,对于w1为1,对于w2为-1 y2 =-ones(55,1);

X = [x1;x2]; %x矩阵化

Y = [y1;y2]; %y矩阵化

l = zeros(100,1);%对lambda进行初始化

A=[];

b=[]; %不存在线性不等式约束,故为空

Aeq=Y';

beq=0; %定义线性等式约束

lb=zeros(100,1); %定义上下界约束,有lambda大于等于0

lambda = fmincon('Optimization',l,A,b,Aeq,beq,lb);

%用fmincon函数来求解非线性多变量约束问题,其中Optimization为等价最优任务w = X'*(lambda.*Y);%求解支撑矢量

s = find(lambda > 0); %提取非0的元素位置下标构成新矩阵

sum=0; %初始化累计变量

N = length(s) ; %算出非0元素的个数

for i=1:N;

j=s(i);

sum=sum+Y(j) - X(j,:)*w;%由条件 w'x+w0=y 隐含得到,其中y为正负1 end

w0 = sum/N;%计算w0的值,w0是通过所有条件的均值计算得出的

x = linspace(0,10,5000);%取5000个x点画图

y = (-w(1)/w(2))*x-w0/w(2);%x*w1+y*w2+w0=0,w=[w1;w2;w0]

plot(x,y,'r');%用红线标出分界面

axis([1,12,0,8]);% 设定当前图中,x轴范围为1-12,为y轴范围为0-8

display(w);%显示出权向量

display(w0);%显示出w0

end

function fl = Optimization(lambda)%用此函数来描述最优化问题

fl = (-1*ones(100,1))'*lambda+1/2*(lambda.*Y)'*X*X'*(lambda.*Y); %最优化问题的等价函数

end

SVM算法分类效果如图7所示:

图7 支撑矢量机算法分类图

3 结果比较与分析

感知机分类方法分类错误的数据个数为0个;最小二乘法分类方法分类错误的数据个数为3个,且错误较明显;支撑矢量机分类方法分类错误的数据个数为2个,错误不明显。可知,感知机分类方法的分类误差最小,最小二乘法分类方法分类误差最大。

感知机分类方法决策面的优劣程度取决于w的选取,所得的超平面可能不唯一,无法判断最优解,感知机分类方法可以再有限次的迭代内求出问题的解。

最小二乘法分类方法在处理较大的训练样本时,计算量较大,导致误差偏大。由于该方法是基于最小平方误差来进行分类的,所以不能保证最小样本错误分类数,即不保证一定能将样本完全正确分开。

支撑矢量机分类方法可以对样本目标进行较为精准的最优分类。

对同一目标样本进行分类,感知机分类方法分类用时为0.443814 seconds,最小二乘法分类用时为0.116585 seconds,支撑矢量机分类方法分类用时2.200510 seconds。可见,使用最小二乘法分类方法的运算量最小,运算速度最快,使用支撑矢量机分类方法运算量最大,运算速度最慢。

线性系统理论Matlab实践仿真报告

线性系统理论Matlab实验报告 1、本题目是在已知状态空间描述的情况下要求设计一个状态反馈控制器,从而使得系统具 有实数特征根,并要求要有一个根的模值要大于5,而特征根是正数是系统不稳定,这样的设计是无意义的,故而不妨设采用状态反馈后的两个期望特征根为-7,-9,这样满足题目中所需的要求。 (1)要对系统进行状态反馈的设计首先要判断其是否能控,即求出该系统的能控性判别矩阵,然后判断其秩,从而得出其是否可控; 判断能控程序设计如下: >> A=[-0.8 0.02;-0.02 0]; B=[0.05 1;0.001 0]; Qc=ctrb(A,B) Qc = 0.0500 1.0000 -0.0400 -0.8000 0.0010 0 -0.0010 -0.0200 Rc=rank(Qc) Rc =2 Qc = 0.0500 1.0000 -0.0400 -0.8000 0.0010 0 -0.0010 -0.0200 得出结果能控型判别矩阵的秩为2,故而该系统是完全可控的,故可以对其进行状态反馈设计。 (2)求取状态反馈器中的K,设的期望特征根为-7,-9; 其设计程序如下: >> A=[-0.8 0.02;-0.02 0]; B=[0.05 1;0.001 0]; P=[-7 -9]; k=place(A,B,P) k = 1.0e+003 * -0.0200 9.0000 0.0072 -0.4500 程序中所求出的k即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。 2、(a)要求求该系统的能控型矩阵,并验证该系统是不能控的。

实验一 基于Matlab的控制系统模型

实验一 基于Matlab 的控制系统模型 姓名 学号 班级 一、实验目的 1) 熟悉Matlab 的使用环境,学习Matlab 软件的使用方法和编程方法。 2) 学习使用Matlab 进行各类数学变换运算的方法。 3) 学习使用Matlab 建立控制系统模型的方法。 二、实验原理 1. 香农采样定理 对一个具有有限频谱的连续信号f (t )进行连续采样,当采样频率满足ωs ≥ωmax 时,采样信号f *(t )能无失真的复现原连续信号。 (1) 作信号f (t )=5e 10t 和f *(t ) =5e 10kT 的曲线,比较采样前后的差异。 0.05 0::0.5 5*(10*) subplot(2,1,1) plot(,) grid subplot(2,1,2) stem(,) grid T t T f exp t t f t f ===- 请改变采样周期T ,观察不同的采样周期下的采样效果。

(2) 频谱曲线 50:1:50 5./(100.^2) (,)w F sqrt w plot w F grid =-=+ 若|F (j ωmax ) |=0.1|F (0)|,选择合理的采样周期T 并验加以证。 400:20:400 200 2*/05/*(1./(100.^2)) 15/*(1./(100().^2)) 25/*(1./(100().^2)) (,0,,1,,2) w ws Ts pi ws F Ts sqrt w F Ts sqrt w ws F Ts sqrt w ws plot w F w F w F grid =-===+=+-=++ 请改变采样频率,观察何时出现频谱混叠? 2. 拉式变换和Z 变换 (1) 使用Matlab 求函数的拉氏变换 拉式变换: 反拉氏变换: ()()()()()()2 222 1exp -*123*exp -*4sin *5exp -*s 11/(1) 21/()31/4/() 51/(*(2)*(*c 3)o ) s *yms syms a w t f a t laplace f f t f t a t f s a f s ilaplace f f s a f s f w s w f s s s w t f a t w t ==+==+====++== (2) 使用Matlab 求函数的Z 变换 Z 变换: 反Z 变换:

APF matlab仿真建模要点

电力电子系统建模与仿真 学院:电气工程学院 年级:2012级 学号:12031236 姓名:周琪俊 指导老师:舒泽亮

二极管钳位多电平APF电压平衡SPWM仿真报告 1 有源电力滤波器的发展及现状 有源电力滤波器的发展最早可以追溯到20 世纪60 年代末,1969 年B.M.Bird 和J.F.Marsh发表的论文中,描述了通过向电网注入三次谐波电流来减少电源电流中的谐波成分,从而改善电源电流波形的新方法,这种方法是APF 基本思想的萌芽。1971年日本的H.Sasaki 和T.Machida 首先提出APF 的原始模型。1976 年美国西屋电气公司的L.Gyugyi 等提出了用PWM 变流器构成的APF 并确立了APF 的概念。这些以PWM 变流器构成的APF 已成为当今APF 的基本结构。但在70 年代由于缺少大功率的快速器件,因此对APF 的研究几乎没有超出实验室的范围。80 年代以来,随着新型电力半导体器件的出现,脉宽调制的发展,以及H.Akagi 的基于瞬时无功功率理论的谐波电流瞬时检测方法的提出,APF有了迅速发展。 现在日本、美国、德国等工业发达国家APF已得到了高度重视和日益广泛的应用。由于理论研究起步较早,目前国外有源电力滤波器的研究已步入工业化应用阶段。随着容量的逐步提高,其应用范围也从补偿用户自身的谐波向改善整个电网供电质量的方向发展。有源电力滤波器的工业化应用对理论研究起了非常大的推动作用,新的理论研究成果不断出现。1976 年美国西屋公司的L.Gyugyi 率先研制出800kV A的有源电力滤波器。在此以后的几十年里,有源电力滤波器的实践应用得到快速发展。在一些国家,已经投入工业应用的有源电力滤波器容量已增加到50MV A。目前大部分国际知名的电气公司如西屋电气、三菱电机、西门子和梅兰日兰等都有相关的部门都已有相关的产品。 我国在有源电力滤波器的研究方面起步较晚,直到20 世纪80 年代末才有论文发表。90 年代以来一些高等院校和科研机构开始进行有源电力滤波器的研究。1991 年12 月由华北电科院、北京供电局和冶金部自动化研究所研制的国内第一台400V/50kV A 的有源电力滤波器在北京某中心变电站投运,2001 年华北电科院又将有源电力滤波器的容量提高到了10kV/480kV A。由中南大学和湖南大学研制的容量为500kV A 并联混合型有源电力滤波器已在湖南娄底早元220kV 变电站挂网运行。在近几年国内的有源电力滤波器产品已有很多应用,本文研制的两种APF都已应用于工业现场。 2 二极管箝位式多电平逆变器 自从日本学者南波江章于1980 年提出三电平中性点箝位逆变器以来,多电平逆变器的拓扑结构就受到人们的普遍关注,很多学者相继提出了一些实际应用

用MATLAB解决线性代数问题实验报告

实验三使用MATLAB解决线性代数问题学院:数计学院班级:1003班姓名:黄晓丹学号:1051020144 实验目的: 学习MATLAB有关线性代数运算的指令,主要学习运用MATLAB解决矩阵除法,线性方程组的通解,矩阵相似 对角化问题,以及解决投入产出分析等应用问题。 实验内容: 矩阵转置:A=[1 2;3 4];B=[4 3;2 1]; >> A',B' ans = 1 3 2 4 ans = 4 3 3 1 矩阵加减:A-B ans= -3 -1 1 3 矩阵乘法:A*B,A.*B(数组乘法)||比较矩阵乘法与数组乘法的区别ans= 8 5 20 13 ans= 4 6 6 4 矩阵除法:A\B,B./A ans=

-6 -5 5 4 ans= 4 1.5 0.6667 0.25 特殊矩阵生成:zeros(m,n)||生成m行n列的矩阵 ones(m,n)||生成m行n列的元素全为一的矩阵 eye(n)||生成n阶单位矩阵 rand(m,n)||生成m行n列[0 ,1]上均匀分布随 机数矩阵 zeros(2,3) ans = 0 0 0 0 0 0 >> ones(3,3) ans = 1 1 1 1 1 1 1 1 1 >> eye(3)

ans = 1 0 0 0 1 0 0 0 1 >> rand(2,4) ans = Columns 1 through 3 0.9501 0.6068 0.8913 0.2311 0.4860 0.7621 Column 4 0.4565 0.0185 矩阵处理:trace(A)||返回矩阵的迹 diag(A)||返回矩阵对角线元素构成的向量 tril(A)||提取矩阵的下三角部分 triu(A)||提取矩阵的上三角部分 flipud(A)||矩阵上下翻转 fliplr(A)||矩阵左右翻转 reshape(A,m,n)||将矩阵的元素重排成m行n列矩阵A=[1 2 3;4 5 6;7 8 9]; >> t=trace(A),d=diag(A),u=triu(A)

线性系统理论大作业

目录 题目一 (2) (一)状态反馈加积分器校正的输出反馈系统设计 (2) (1)建立被控对象的状态空间模型,并判断系统性质 (2) (2)状态反馈增益矩阵和积分增益常数的设计 (4) (3)全维观测器设计 (6) (4)如何在闭环调速系统中增加限流环节 (8) (二)二次型最优全状态反馈控制和按负载扰动前馈补偿的复合控制系统设计 (8) (1)线性二次型最优全状态反馈设计 (8) (2)降维观测器设计 (13) 题目二 (15) (1)判断系统是否存在最优控制律 (15) (2)非零给定点的最优控制设计和仿真分析 (16) (3)权矩阵的各权值对动态性能影响分析 (17)

题目一 (一)状态反馈加积分器校正的输出反馈系统设计 (1)建立被控对象的状态空间模型,并判断系统性质 1)画出与题目对应的模拟结构图,如图1所示: 图1原始系统结构图 取状态变量为1x =n ,2x =d I ,3x =d u ,控制输入u=c u 1222212333375375111 T L e la la la s s s C x x T GD GD C x x x x RT T RT K x x u T T ?=-???=--+???=-+?? 将已知参数代人并设输出y=n=1x ,得被控对象的状态空间表达式为 L x Ax Bu ET y Cx =++= 其中,2 37500039.768011=-3.696-17.85727.05600-588.2351 00 T e la la la s C GD C A RT T RT T ???? ? ???????=- -?????? ??????-??? ? ,

基于MATLAB的变压器仿真 与分析

于MATLAB_Simulink的牵引变压器建模与仿真 基于MATLAB/Simulink的牵引变压器建模与仿真徐(西安铁路局安康供电段新陕西汉中 723000)摘要:针对多种牵引变压器接线方式,建立数学模型,基于Matlab/Simulink仿真软件,建立牵引变压器的仿真模型,并验证数学模型和仿真模型的一致性。利用所建立仿真模型对不同接线形式牵引变压器在不同条件下对公用电网产生的谐波和负序影响进行仿真试验,对研究各种类型的牵引变压器特性在我国电气化铁路的应用提供条件。关键词:牵引变压器;数学模型;仿真模型;Matlab/Simulink 中图分类号:U223.6 文献标识码:A 文章编号:1671-7597(2011)0610061-03 牵引变压器按其特性可分为平衡接线和不平衡接线。其中不平衡接线有单相接线、Vv接线和YNd11接线;平衡接线是试图实现三相两相对称变换而提出的,主要代表方式有Scott,Leblanc、Kubler、Wood-bridge、阻抗匹配接线等。本次主要总结了常用牵引变压器的特点并建立数学模型,包括每种牵引变压器的原理结构、原次边电气量关系等,基于Matlab/Simulink软件建立牵引变压器仿真模型,并对牵引变压器在不同条件下的负序、谐波特性的进行了研究. 1 牵引变压器数学模型研究 1.1 YNd11接线 YNd11变压器接线原理如下图所示,如果忽略激磁电流及其漏阻抗压降,二次侧绕组ac相与一次侧绕组A相同相,cb相与C相同相。由于变压器一次侧绕组A,B,C相与电力系统的相序一致,A相滞后C相,对应的二次侧ac也滞后cb相[2]。其中Z为牵引端口对应变压器漏抗,和β相的端口电压。 1.2 Vv接线 Vv接线牵引变压器接线原理如图2所示。为二次侧空载相即α相图2 Vv接线牵引变压器设Vv接线变压器一次侧、二次侧绕组匝数分别为可得电流输入输出关系[3]:和,电压输入输出关系如下:图1 YNd11接线牵引变压器设YNd11接线变压器一次侧、二次侧绕组匝数分别为和假设变压器原边中性点接地,可以得出一次侧三相电流。,其中为牵引端口对应变压器漏抗,为二次侧空载相即α相和β相的端口电压。 1.3 Scott接线 Scott接线变压器(又称T形接法变压器)属于能完成三相-两相变换的平衡变压器,Scott接线牵引变压器接线原理如图3所示。图3 Scott牵引变压器接线原理图 1 61 设一次侧绕组BC的匝数为次侧绕组AD的匝数为,记,二次的绕组ad、bc的匝数为,则一。可得电流输入输出关系[4]:把一次侧绕组电流用相电流替换,即为:式中,为从三相端子流进变压器的电流。输出端口电压方程为:图6 YNd11接线牵引变压器两供电臂输出电压波形从电压输出波形中可以得到α供电臂电压波形超前β供电臂电压波形120°,在对称阻性负载下,两臂电流输出波形幅值相同,相位相差120°,满足理论值。 2.2 Vv接线牵引变压器 Vv 接线牵引变压器是由两个单相牵引变压器并联而成,仿真模型如图7所示.在仿真模型中牵引变压器T1和T2的原、次边变比设置为110kV/27.5kV。对,于

MATLAB Simulink系统建模与仿真 实验报告

MATLAB/Simulink 电力系统建模与仿真 实验报告 姓名:****** 专业:电气工程及其自动化 班级:******************* 学号:*******************

实验一无穷大功率电源供电系统三相短路仿真 1.1 无穷大功率电源供电系统仿真模型构建 运行MATLAB软件,点击Simulink模型构建,根据电路原理图,添加下列模块: (1)无穷大功率电源模块(Three-phase source) (2)三相并联RLC负荷模块(Three-Phase Parallel RLC Load) (3)三相串联RLC支路模块(Three-Phase Series RLC Branch) (4)三相双绕组变压器模块(Three-Phase Transformer (Two Windings)) (5)三相电压电流测量模块(Three-Phase V-I Measurement) (6)三相故障设置模块(Three-Phase Fault) (7)示波器模块(Scope) (8)电力系统图形用户界面(Powergui) 按电路原理图连接线路得到仿真图如下: 1.2 无穷大功率电源供电系统仿真参数设置 1.2.1 电源模块 设置三相电压110kV,相角0°,频率50Hz,接线方式为中性点接地的Y形接法,电源电阻0.00529Ω,电源电感0.000140H,参数设置如下图:

1.2.2 变压器模块 变压器模块参数采用标幺值设置,功率20MVA,频率50Hz,一次测采用Y型连接,一次测电压110kV,二次侧采用Y型连接,二次侧电压11kV,经过标幺值折算后的绕组电阻为0.0033,绕组漏感为0.052,励磁电阻为909.09,励磁电感为106.3,参数设置如下图: 1.2.3 输电线路模块 根据给定参数计算输电线路参数为:电阻8.5Ω,电感0.064L,参数设置如下图: 1.2.4 三相电压电流测量模块 此模块将在变压器低压侧测量得到的电压、电流信号转变成Simulink信号,相当于电压、电流互感器的作用,勾选“使用标签(Use a label)”以便于示波器观察波形,设置电压标签“Vabc”,电流标签“Iabc”,参数设置如下图:

倒立摆系统的建模及Matlab仿真资料

第1 页共11 页 倒立摆系统的建模及Matlab仿真 1.系统的物理模型 考虑如图(1)所示的倒立摆系统。图中,倒立摆安装在一个小车上。这里仅考虑倒立摆在图面内运动的二维问题。 图(1)倒立摆系统 假定倒立摆系统的参数如下。 摆杆的质量:m=0.1g l=1m小车的质量:摆杆的长度:2重力加速度:g=9.8m/M=1kg s摆杆的质量在摆杆的中心。 设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量?≤10%,调节时间ts ≤4s ,通过小车的水平运动使倒立摆保持在垂直位置。 2.系统的数学模型 2.1建立倒置摆的运动方程并将其线性化。 为简化问题,在数学模型中首先假设:1)摆杆为刚体;2)忽略摆杆与支点之间的摩擦;3)忽略小车与接触面间的摩擦。 ?),在u设小车瞬时位置为z,摆心瞬时位置为(作用下,小车及摆均产生加速远 动,sin?lz根据牛顿第二定律,在水平直线远动方向的惯性力应与u平衡,于是有 22dzd?)?sinu?M?m(zl22dtdt???2????z(M?mml?)cos?mlusin? 即:??①

绕摆轴转动的惯性力矩与重力矩平衡,因而有. 第2 页共11 页 2??d??? sin??lcosm(z?lsinmgl)??2dt?????22???????即: nis?l?ocgcosincoszs?ls??② 以上两个方程都是非线性方程,为求得解析解,需作线性化处理。由于控制的目的是保持倒立摆直?2?????且可忽略则,立,在试驾合适的外力条件下,假定θ很小,接近于零时合理的,1sincos??,项。于是有 ???M?zm?u?ml??)(③ ????g?z?l??④联立求解可得1mg?u?z????MM 1)?m(M????u??MlMl 列写系统的状态空间表达式。2.2??T xx,x,x,,选取系统变量则 xx,x,xx?,42134123xx??211mgux???x?32MM x?x?431)(M?mu?x?x? 34MlMl 即00100????z??1mg??????000?z?????d MM??Bu?Ax?xux????????00001???dt????1gm?(M)????000??????? MlMl??????Cx?0?y?xx1001代入数据计算得到:0100????000?1??????T0D,?0??1BA?,?001,C100??1000??00011?? 11 页3 页共第 3.设计控制器3.1判断系统的能控性和稳定性 1100????0011????23BBAABAB?Q?故被控对象完全可控, rank()=4,Q kk??11?0?10??011?10???22???11?。出现大于零的特征值,故被,,0 解得特征值为 0由特征方程0??11I?A?)(控对象不稳定3.2确定希望的极点, 另一对为远极点,认为系统性能主要由主导,选其中一对为主导极点和希望的极点n=4ss21极点决定,远极点只有微小影响。根据二阶系统的关系式,先确定主导极点???42??1????10.?e??t1.67?有,闭环可得;取误差带,于是取,则6.?059?0.02.?0? pns??n2????1?js??=-10.8j,远极点选择使它和原点的距离大于主导极点与原点 距离主导极点为?n,21s??15倍,取的54,33.3采用状态反馈方法使系统稳定并配置极点 ??kkkk?k;状态反馈系统的状态方程,馈状态反的控制规律为为kxu??3102?,其

线性系统理论Matlab实践仿真报告指南

线性系统理论实验报告 学院:电信学院 姓名:邵昌娟 学号:152085270006 专业:电气工程

线性系统理论Matlab实验报告 1、由分析可知系统的状态空间描述,因系统综合实质上是通过引入适当状态反馈矩阵K,使得闭环系统的特征值均位于复平面S的期望位置。而只有当特征根均位于S的左半平面时系统稳定。故当特征根是正数时系统不稳定,设计无意义。所以设满足题目中所需要求的系统的期望特征根分别为λ1*=-2,λ2*=-4。 (a) 判断系统的能控性,即得系统的能控性判别矩阵Q c,然后判断rankQ c,若rank Q c =n=2则可得系统可控;利用Matlab判断系统可控性的程序如图1(a)所示。由程序运行结果可知:rank Q c =n=2,故系统完全可控,可对其进行状态反馈设计。 (b) 求状态反馈器中的反馈矩阵K,因设系统的期望特征根分别为λ1*=-2,λ2*=-4;所以利用Matlab求反馈矩阵K的程序如图1(b)所示。由程序运行结果可知:K即为所求状态反馈控制器的状态反馈矩阵,即由该状态反馈矩阵所构成的状态反馈控制器能够满足题目要求。 图1(a) 系统的能控性图1(b) 状态反馈矩阵 2、(a) 求系统的能控型矩阵Q c,验证若rank Q c

线性系统理论

Linear Systems Theory: A Structural Decomposition Approach 线性系统理论: 结构分解法 Ben M. Chen (陈本美) 新加坡国立大学 Zongli Lin(林宗利) 美国弗吉尼亚大学 Yacov Shamash (雅科夫 司马诩) 美国纽约州立大学石溪分校

此书献给我们的家人 前两位作者谨以这中译版献给他们的母校 厦门大学

目录 绪论 1 导论和预览 1.1 背景 1.2 各章预览 1.3 符号和术语 2 数学基础 2.1 导论 2.2 矢量空间和子空间 2.3 矩阵代数和特性 2.3.1 行列式、逆和求导 2.3.2 秩、特征值和约当型 2.3.3 特殊矩阵 2.3.4 奇异值分解 2.4 范数 2.4.1 矢量范数 2.4.2矩阵范数 2.4.3 连续时间信号范数 2.4.4 离散时间信号范数 2.4.5 连续时间系统范数 2.4.6 离散时间系统范数 3 线性系统理论复习 3.1 导论 3.2 动态响应 3.3 系统稳定性 3.4 可控性和可观性 3.5 系统可逆性 3.6 常态秩、有限零点和无限零点3.7 几何子空间 3.8 状态反馈和输出馈入的特性3.9 练习

4 无驱动和/或无检测系统的分解 4.1 导论 4.2 自治系统 4.3 无驱动系统 4.4 无检测系统 4.5 练习 5. 正则系统的分解 5.1 导论 5.2 SISO系统 5.3 严格正则系统 5.4 非严格正则系统 5.5 结构化分解特性的证明 5.6 系统矩阵的Kronecker型和Smith型5.7 离散时间系统 5.8 练习 6 奇异系统的分解 6.1 导论 6.2 SISO奇异系统 6.3 MIMO描述系统 6.4 定理6.3.1的证明和性质 6.5 离散时间奇异系统 6.6 练习 7 双线性变换的结构化映射 7.1 导论 7.2 连续到离散时间系统的映射 7.3 离散时间到连续时间系统的映射7.4 定理7.2.1的证明 7.5 练习 8 系统因子分解 8.1 导论 8.2 严格正则系统 8.3 非严格正则系统 8.4 离散时间系统 8.5 练习 9 通过选择传感器/执行器实现的结构配置9.1 导论 9.2 同时有限和无限零点结构配置 9.2.1 SISO系统 9.2.2 MIMO系统

Matlab控制系统计算机辅助设计

实验目录 实验一:Matlab环境熟悉与基本运算(设计型)实验二:Matlab语言程序设计(设计型) 实验三:控制系统模型的建立(设计型) 实验四:Simulink仿真入门(验证型) 实验五:控制系统时域仿真分析(设计型) 实验六:Simulink环境下时域仿真 实验七:控制系统根轨迹仿真分析 实验八:控制系统频域仿真分析(设计型)

1、矩阵运算(1)矩阵的乘法 A=[1 2;3 4]; B=[5 5;7 8]; y=A^2*B y = 105 115 229 251 (2)矩阵除法 A=[1 2 3;4 5 6;7 8 9]; B=[1 0 0;0 2 0;0 0 3]; y1=A\B 警告: 矩阵接近奇异值,或者缩放错误。结果可能不准确。RCOND = 1.541976e-18。y1 = 1.0e+16 * -0.4504 1.8014 -1.3511 0.9007 -3.6029 2.7022 -0.4504 1.8014 -1.3511 y2=A/B y2 = 1.0000 1.0000 1.0000 4.0000 2.5000 2.0000 7.0000 4.0000 3.0000 (3)矩阵的转置及共轭转置 A=[5+i,2-i,1;6*i,4,9-i]; y1=A.' y1 = 5.0000 + 1.0000i 0.0000 + 6.0000i 2.0000 - 1.0000i 4.0000 + 0.0000i 1.0000 + 0.0000i 9.0000 - 1.0000i y2=A' y2 = 5.0000 - 1.0000i 0.0000 - 6.0000i 2.0000 + 1.0000i 4.0000 + 0.0000i 1.0000 + 0.0000i 9.0000 + 1.0000i 实验名称:Matlab环境熟悉与基本运算(设计型)

三相变压器建模及仿真及MATLAB仿真

XXXXXXX学院课程设计报告 课程名称: 系部: 专业班级: 学生姓名: 指导教师: 完成时间: 报告成绩: 学院教学工作部制

目录 摘要 (3) 第一章变压器介绍 (4) 1.1 变压器的磁化特性 (4) 1.2 变压器保护 (4) 1.3 励磁涌流 (7) 第二章变压器基本原理 (9) 2.1 变压器工作原理 (9) 2.2 三相变压器的等效电路及联结组 (10) 第三章变压器仿真的方法 (11) 3.1 基于基本励磁曲线的静态模型 (11) 3.2基于暂态磁化特性曲线的动态模型 (13) 3.3非线性时域等效电路模型 (14) 第四章三相变压器的仿真 (16) 4. 1 三相变压器仿真的数学模型 (16) 4.2电源电压的描述 (20) 4.3铁心动态磁化过程简述 (21) 第五章变压器MATLAB仿真研究 (25) 5.1 仿真长线路末端电压升高 (25) 5.2 仿真三相变压器 T2 的励磁涌流 (28) 5.3三相变压器仿真模型图 (34) 5.4 变压器仿真波形分析 (36) 结论 (40) 参考文献 (41)

摘要 在电力变压器差动保护中,励磁涌流和内部故障电流的判别一直是一个关键问题。文章阐述了励磁涌流的产生及其特性,利用 MATLAB 对变压器的励磁涌流、内部故障和外部故障进行仿真,对实验的数据波形分析,以此来区分故障和涌流,目的是减少空载合闸产生的励磁涌流对变压器差动保护的影响,提高保护的灵敏性。 本文在Matlab的编程环境下,分析了当前的变压器仿真的方法。在单相情况下,分析了在饱和和不饱和的励磁涌流现象,和单相励磁涌流的特征。在三相情况下,在用分段拟和加曲线压缩法的基础上,分别用两条修正的反正切函数,和两条修正的反正切函数加上两段模拟饱和情况的直线两种方法建立了Yd11、Ynd11、Yny0和Yy0四种最常用接线方式下三相变压器的数学仿真模型,并在Matlab下仿真实现。通过对三相励磁涌流和磁滞回环波形分析,三相励磁涌流的特征分析,总结出影响三相变压器励磁涌流地主要因素。最后,分析了两种方法的优劣,建立比较完善的变压器仿真模型。 关键字: 变压器;差动保护;励磁涌流;内部故障;外部故障;波形分析;仿真;数学模型

matlab实验二

实验2 MATLAB数值计算、符号运算功能 一、实验目的 1、掌握建立矩阵、矩阵分析与处理的方法。 2、掌握线性方程组的求解方法。 3、掌握数据统计和分析方法、多项式的常用运算。 4、掌握求数值导数和数值积分、常微分方程数值求解、非线性代数方程数值求解的方法。 5、掌握定义符号对象的方法、符号表达式的运算法则及符号矩阵运算、符号函数极限及导数、符号函数定积分和不定积分的方法。 二、预习要求 (1)复习4、5、6章所讲内容; (2)熟悉MATLAB中的数值计算和符号运算的实现方法和主要函数。 三、实验内容 1、已知 29618 20512 885 A -?? ?? =?? ?? - ?? ,求A的特征值及特征向量,并分析其数学意义。 >> A=[-29,6,18;20,5,12;-8,8,5]; >> [V,D]=eig(A) V = 0.7130 0.2803 0.2733 -0.6084 -0.7867 0.8725 0.3487 0.5501 0.4050 D = -25.3169 0 0 0 -10.5182 0 0 0 16.8351 V为A的特征向量,D为A的特征值,3个特征值是-25.3169、10.5182和16.8351。 >> A*V ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 >> V*D

ans = -18.0503 -2.9487 4.6007 15.4017 8.2743 14.6886 -8.8273 -5.7857 6.8190 经过计算,A*V=V*D 。 2、 不用rot90函数,实现方阵左旋90°或右旋90°的功能。例如,原矩阵为A ,A 左旋后得到B ,右旋后得到C 。 147102581136912A ????=??????,101112789456123B ??????=??????,321654987121110B ??????=?????? 提示:先将A 转置,再作上下翻转,则完成左旋90°;如将A 转置后作左右翻转,则完成右旋转90°,可用flipud 、fliplr 函数。 >> a=[1 4 7 10;2 5 8 11;3 6 9 12] a= 1 4 7 10 2 5 8 11 3 6 9 12 >> B=rot90(a) B = 10 11 12 7 8 9 4 5 6 1 2 3 >>C= rot90(s,3) C= 3 2 1 6 5 4 9 8 7 12 11 10

MATLAB的建模和仿真

课程设计说明书 题目:基于Matlab的IIR滤波器设计与仿真班级:2012 级电气五班 姓名:王璐 学号:201295014178 指导教师:张小娟 日期:2015年 1 月12日

课程设计任务书

基于MATLAB的IIR滤波器设计与仿真 前言 数字信号处理(digital signal processing,DSP)是从20世纪60年代以来,随着信息学科和计算机学科的高速发展而迅速发展起来的一门新兴学科。数字信号处理是把信号用数字或符号表示的序列,通过计算机或通用(专用)信号处理设备,用数字的数值计算方法处理(例如滤波、变换、压缩、增强、估计、识别等),以达到提取有用信息便于应用处理的目的。数字信号处理系统有精度高、灵活性高、可靠性高、容易大规模集成、时分复用、可获得高性能指标、二维与多维处理等特点。正是由于这些突出的特点,使得它在通信、语音、雷达、地震测报、声呐、遥感、生物医学、电视、仪器中得到愈来愈广泛的应用。在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,Digital Filter),根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应IIR(Infinite Impulse Response)滤波器和有限冲激响应FIR(Finite Impulse Response)滤波器。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来结算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的有点,使MATLAB成为一个强大的数学软件,在新的版本中也加入了对C,FORTRAN,C++,JA V A的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。 1 数字滤波器概述 数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。时域离散系统的频域特性:Y(eωj)=X(eωj)H(eωj) 其中Y(eωj)、X(eωj)分别是数字滤波器的输出序列和输入序列的频域特性(或称为

用MATLAB处理线性系统数学模型

实验一 用MATLAB 处理线性系统数学模型 [说明] 一个控制系统主要由被控对象、测量装置、控制器和执行器四大部分构成。MATLAB 软件的应用对提高控制系统的分析、设计和应用水平起着十分重要的作用。采用MATLAB 软件仿真的关键问题之一是在MATLAB 软件平台上怎样正确表示被控对象的数学模型。 [实验目的] 1.了解MATLAB 软件的基本特点和功能; 2.掌握线性系统被控对象传递函数数学模型在MATLAB 环境下的表示方法及转换; 3.掌握多环节串联、并联、反馈连接时整体传递函数的求取方法; 4. 掌握在SIMULINK 环境下系统结构图的形成方法及整体传递函数的求取方法; 5.了解在MATLAB 环境下求取系统的输出时域表达式的方法。 [实验指导] 一、被控对象模型的建立 在线性系统理论中,一般常用的描述系统的数学模型形式有: (1)传递函数模型——有理多项式分式表达式 (2)传递函数模型——零极点增益表达式 (3)状态空间模型(系统的内部模型) 这些模型之间都有着内在的联系,可以相互进行转换。 1、传递函数模型——有理多项式分式表达式 设系统的传递函数模型为 111011 1......)()()(a s a s a s a b s b s b s b s R s C s G n n n n m m m m ++++++++= =---- 对线性定常系统,式中s 的系数均为常数,且a n 不等于零。 这时系统在MATLAB 中可以方便地由分子和分母各项系数构成的两个向量唯一地确定,这两个向量常用num 和den 表示。 num=[b m ,b m-1,…,b 1,b 0] den=[a n ,a n-1,…,a 1,a 0]

倒立摆系统的建模及Matlab仿真

倒立摆系统的建模及Matlab 仿真 1.系统的物理模型 考虑如图(1)面内运动的二维问题。 图(1)倒立摆系统 假定倒立摆系统的参数如下。 摆杆的质量:m=0.1g 摆杆的长度:l =1m 小车的质量: M=1kg 重力加速度:g=9.8m/2s 摆杆的质量在摆杆的中心。 设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量δ ≤10%,调节时 间ts ≤4s ,通过小车的水平运动使倒立摆保持在垂直位置。 2.系统的数学模型 2.1建立倒置摆的运动方程并将其线性化。 为简化问题,在数学模型中首先假设:1)摆杆为刚体;2)忽略摆杆与支点之间的摩擦;3)忽略小车与接触面间的摩擦。 设小车瞬时位置为z,摆心瞬时位置为(θsin l z +),在u 作用下,小车及摆均产生加速远动,根据牛顿第二定律,在水平直线远动方向的惯性力应与u 平衡,于是有 u l z dt d m dt z d M =++)sin (22 22θ 即: u ml ml z m M =-++θθθθsin cos )(2&&&&& ① 绕摆轴转动的惯性力矩与重力矩平衡,因而有

θθθsin cos )sin (22mgl l l z dt d m =??? ????+ 即: θθθθθθθsin cos sin cos cos 22g l l z =-+&&&&& ② 以上两个方程都是非线性方程,为求得解析解,需作线性化处理。由于控制的目的是保持倒立摆直 立,在试驾合适的外力条件下,假定θ很小,接近于零时合理的,则1cos ,sin ≈≈θθθ,且可忽略θ θ2&项。于是有 u ml z m M =++θ&&&& )( ③ θθg l z =+&&&& ④ 联立求解可得 u Ml Ml m M u M M mg z 1)(1 -+=+- =θθθ&&&& 2.2列写系统的状态空间表达式。 选取系统变量4321,,,x x x x , []T x x x x x 4321,,,=则 u Ml x Ml m M x x x u M x M mg x x x 1 )(134433221-+= =+-==&&&& 即 []Cx x x y Bu Ax u Ml M x Ml g m M M mg z z dt d x ===+=?????? ? ???????-+?????????? ??? ? +- =???? ????????=000110100)(0 010 0000000 1 1θθ&&& 代入数据计算得到: [][]0,0001,1010,01100 1000010000 1 0==-=? ? ??? ? ??? ???-=D C B A T

Matlab线性代数实验指导书

Matlab线性代数实验指导书 理学院线性代数课程组 二零零七年十月

目录 一、基础知识 (1) 1.1、常见数学函数 (1) 1.2、系统在线帮助 (1) 1.3、常量与变量 (2) 1.4、数组(矩阵)的点运算 (3) 1.5、矩阵的运算 (3) 二、编程 (4) 2.1、无条件循环 (4) 2.2、条件循环 (5) 2.3、分支结构 (5) 2.4、建立M文件 (6) 2.5、建立函数文件 (6) 三、矩阵及其运算 (7) 3.1、矩阵的创建 (7) 3.2、符号矩阵的运算 (11) 四、秩与线性相关性 (14) 4.1、矩阵和向量组的秩以及向量组的线性相关性 (14) 4.2、向量组的最大无关组 (14) 五、线性方程的组的求解 (16) 5.1、求线性方程组的唯一解或特解(第一类问题) (16) 5.2、求线性齐次方程组的通解 (18) 5.3、求非齐次线性方程组的通解 (19) 六、特征值与二次型 (22) 6.1、方阵的特征值特征向量 (22) 6.2、正交矩阵及二次型 (23)

一、基础知识 1.1常见数学函数 函数数学计算功能函数数学计算功能 abs(x) 实数的绝对值或复数的幅值floor(x) 对x朝-∞方向取整acos(x) 反余弦arcsinx gcd(m,n) 求正整数m和n的最大公约数acosh(x) 反双曲余弦arccoshx imag(x) 求复数x的虚部angle(x) 在四象限内求复数x的相角lcm(m,n)求正整数m和n的最小公倍 自然对数(以e为底数) asin(x) 反正弦arcsinx log(x) 常用对数(以 10 为底数) asinh(x) 反双曲正弦arcsinhx log10(x) atan(x) 反正切arctanx real(x) 求复数 x 的实部atan2(x,y) 在四象限内求反正切rem(m,n) 求正整数m和n的m/n之余数atanh(x) 反双曲正切arctanhx round(x) 对x四舍五入到最接近的整数 符号函数:求出 x 的符号ceil(x) 对x朝+∞方向取整 sign(x) conj(x) 求复数x的共轭复数 sin(x) 正弦sinx 反双曲正弦sinhx cos(x) 余弦cosx sinh(x) cosh(x) 双曲余弦coshx sqrt(x) 求实数x的平方根exp(x) 指数函数e x tan(x) 正切tanx fix(x) 对 x 朝原点方向取整 tanh(x) 双曲正切tanhx 如:输入 x=[-4.85 -2.3 -0.2 1.3 4.56 6.75],则: ceil(x)= -4 -2 0 2 5 7 fix(x) = -4 -2 0 1 4 6 floor(x) =-5 -3 -1 1 4 6 round(x) = -5 -2 0 1 5 7 1.2 系统的在线帮助 1.2.1 help 命令: 1.当不知系统有何帮助内容时,可直接输入 help以寻求帮助: >> help(回车) 2.当想了解某一主题的内容时,如输入: >> help syntax (了解Matlab的语法规定) 3.当想了解某一具体的函数或命令的帮助信息时,如输入: >> help sqrt (了解函数sqrt的相关信息) 1.2.2 lookfor 命令 现需要完成某一具体操作,不知有何命令或函数可以完成,如输入: >> lookfor line (查找与直线、线性问题有关的函数) 1.3 常量与变量

matlab控制系统传递函数模型

MATLAB及 控制系统仿真 实验 班级:智能0702

姓名:刘保卫 学号: 06074053(18) 实验四控制系统数学模型转换及MATLAB实现 一、实验目的 熟悉MATLAB 的实验环境。 掌握MATLAB 建立系统数学模型的方法。 二、实验内容 (注:实验报告只提交第2 题) 1、复习并验证相关示例。 (1)系统数学模型的建立 包括多项式模型(Transfer Function,TF),零极点增益模型(Zero-Pole,ZP),状态空间模型 (State-space,SS); (2)模型间的相互转换 系统多项式模型到零极点模型(tf2zp),零极点增益模型到多项式模型(zp2tf),状态空间模 型与多项式模型和零极点模型之间的转换(tf2ss,ss2tf,zp2ss…); (3)模型的连接 模型串联(series),模型并联(parallel),反馈连接(feedback) 2、用MATLAB 做如下练习。 (1)用2 种方法建立系统的多项式模型。 程序如下: %建立系统的多项式模型(传递函数) %方法一,直接写表达式 s=tf('s') Gs1=(s+2)/(s^2+5*s+10) %方法二,由分子分母构造 num=[1 2]; den=[1 5 10]; Gs2=tf(num,den) figure pzmap(Gs1) figure pzmap(Gs1) grid on 运行结果:

易知两种方法结果一样 Transfer function: s Transfer function: s + 2 -------------- s^2 + 5 s + 10 Transfer function: s + 2 -------------- s^2 + 5 s + 10 (2)用2 种方法建立系统的零极点模型和多项式模型。 程序如下: %方法一 s=tf('s') Gs1=10*(s+1)/((s+1)*(s+5)*(s+10)) % zpk模型 ZPK=zpk(Gs1) %方法二 % tf模型 num=[10 10]; den=conv([1 1],conv([1 5],[1 10])); Gs2=tf(num,den) % zpk模型 ZPK=zpk(Gs2) figure pzmap(Gs1) figure pzmap(Gs1) grid on 运行结果: 易知两种方法结果一样 Transfer function: s Transfer function:

相关文档
相关文档 最新文档