文档库 最新最全的文档下载
当前位置:文档库 › MATLAB模拟反转粒子随时间变化曲线

MATLAB模拟反转粒子随时间变化曲线

MATLAB模拟反转粒子随时间变化曲线
MATLAB模拟反转粒子随时间变化曲线

时域有限差分法的Matlab仿真

时域有限差分法的Matlab仿真 关键词: Matlab 矩形波导时域有限差分法 摘要:介绍了时域有限差分法的基本原理,并利用Matlab仿真,对矩形波导谐振腔中的电磁场作了模拟和分析。 关键词:时域有限差分法;Matlab;矩形波导;谐振腔 目前,电磁场的时域计算方法越来越引人注目。时域有限差分(Finite Difference Time Domain,FDTD)法[1]作为一种主要的电磁场时域计算方法,最早是在1966年由K. S. Yee提出的。这种方法通过将Maxwell旋度方程转化为有限差分式而直接在时域求解,通过建立时间离散的递进序列,在相互交织的网格空间中交替计算电场和磁场。经过三十多年的发展,这种方法已经广泛应用到各种电磁问题的分析之中。 Matlab作为一种工程仿真工具得到了广泛应用[2]。用于时域有限差分法,可以简化编程,使研究者的研究重心放在FDTD法本身上,而不必在编程上花费过多的时间。 下面将采用FDTD法,利用Matlab仿真来分析矩形波导谐振腔的电磁场,说明了将二者结合起来的优越性。 1FDTD法基本原理 时域有限差分法的主要思想是把Maxwell方程在空间、时间上离散化,用差分方程代替一阶偏微分方程,求解差分方程组,从而得出各网格单元的场值。FDTD 空间网格单元上电场和磁场各分量的分布如图1所示。 电场和磁场被交叉放置,电场分量位于网格单元每条棱的中心,磁场分量位于网格单元每个面的中心,每个磁场(电场)分量都有4个电场(磁场)分量环绕。这样不仅保证了介质分界面上切向场分量的连续性条件得到自然满足,而且

还允许旋度方程在空间上进行中心差分运算,同时也满足了法拉第电磁感应定律和安培环路积分定律,也可以很恰当地模拟电磁波的实际传播过程。 1.1Maxwell方程的差分形式 旋度方程为: 将其标量化,并将问题空间沿3个轴向分成若干网格单元,用Δx,Δy和Δz 分别表示每个网格单元沿3个轴向的长度,用Δt表示时间步长。网格单元顶点的坐标(x,y,z)可记为: 其中:i,j,k和n为整数。 同时利用二阶精度的中心有限差分式来表示函数对空间和时间的偏导数,即可得到如下FDTD基本差分式: 由于方程式里出现了半个网格和半个时间步,为了便于编程,将上面的差分式改写成如下形式:

各种BP学习算法MATLAB仿真

3.3.2 各种BP学习算法MATLAB仿真 根据上面一节对BP神经网络的MATLAB设计,可以得出下面的通用的MATLAB程序段,由于各种BP学习算法采用了不同的学习函数,所以只需要更改学习函数即可。 MATLAB程序段如下: x=-4:0.01:4; y1=sin((1/2)*pi*x)+sin(pi*x); %trainlm函数可以选择替换 net=newff(minmax(x),[1,15,1],{'tansig','tansig','purelin'},'trainlm'); net.trainparam.epochs=2000; net.trainparam.goal=0.00001; net=train(net,x,y1); y2=sim(net,x); err=y2-y1; res=norm(err); %暂停,按任意键继续 Pause %绘图,原图(蓝色光滑线)和仿真效果图(红色+号点线) plot(x,y1); hold on plot(x,y2,'r+'); 注意:由于各种不确定因素,可能对网络训练有不同程度的影响,产生不同的效果。如图3-8。 标准BP算法(traingd)

图3-8 标准BP算法的训练过程以及结果(原图蓝色线,仿真图+号线)增加动量法(traingdm) 如图3-9。 图3-9 增加动量法的训练过程以及结果(原图蓝色线,仿真图+号线)弹性BP算法(trainrp)如图3-10 图3-10 弹性BP算法的训练过程以及结果(原图蓝色线,仿真图+号线)

动量及自适应学习速率法(traingdx)如图3-11。 图3-11 动量及自适应学习速率法的训练过程以及结果(原图蓝色线,仿真图+号线)共轭梯度法(traincgf)如图3-12。

内点法matlab仿真doc资料

编程方式实现: 1.惩罚函数 function f=fun(x,r) f=x(1,1)^2+x(2,1)^2-r*log(x(1,1)-1); 2.步长的函数 function f=fh(x0,h,s,r) %h为步长 %s为方向 %r为惩罚因子 x1=x0+h*s; f=fun(x1,r); 3. 步长寻优函数 function h=fsearchh(x0,r,s) %利用进退法确定高低高区间,利用黄金分割法进行求解h1=0;%步长的初始点 st=0.001; %步长的步长 h2=h1+st; f1=fh(x0,h1,s,r); f2=fh(x0,h2,s,r); if f1>f2 h3=h2+st; f3=fh(x0,h3,s,r); while f2>f3 h1=h2; h2=h3; h3=h3+st; f2=f3; f3=fh(x0,h3,s,r); end else st=-st; v=h1; h1=h2; h2=v; v=f1; f1=f2; f2=v; h3=h2+st; f3=fh(x0,h3,s,r); while f2>f3 h1=h2; h2=h3; h3=h3+st; f2=f3;

f3=fh(x0,h3,s,r); end end %得到高低高的区间 a=min(h1,h3); b=max(h1,h3); %利用黄金分割点法进行求解 h1=1+0.382*(b-a); h2=1+0.618*(b-a); f1=fh(x0,h1,s,r); f2=fh(x0,h2,s,r); while abs(a-b)>0.0001 if f1>f2 a=h1; h1=h2; f1=f2; h2=a+0.618*(b-a); f2=fh(x0,h2,s,r); else b=h2; h2=h1; f2=f1; h1=a+0.382*(b-a); f1=fh(x0,h1,s,r); end end h=0.5*(a+b); 4. 迭代点的寻优函数 function f=fsearchx(x0,r,epson) x00=x0; m=length(x0); s=zeros(m,1); for i=1:m s(i)=1; h=fsearchh(x0,r,s); x1=x0+h*s; s(i)=0; x0=x1; end while norm(x1-x00)>epson x00=x1; for i=1:m s(i)=1; h=fsearchh(x0,r,s);

PID控制算法的matlab仿真

PID 控制算法的matlab 仿真 PID 控制算法就是实际工业控制中应用最为广泛的控制算法,它具有控制器设计简单,控制效果好等优点。PID 控制器参数的设置就是否合适对其控制效果具有很大的影响,在本课程设计中一具有较大惯性时间常数与纯滞后的一阶惯性环节作为被控对象的模型对PID 控制算法进行研究。被控对象的传递函数如下: ()1d s f Ke G s T s τ-= + 其中各参数分别为30,630,60f d K T τ===。MATLAB 仿真框图如图1所示。 图1 2 具体内容及实现功能 2、1 PID 参数整定 PID 控制器的控制参数对其控制效果起着决定性的作用,合理设置控制参数就是取得较好的控制效果的先决条件。常用的PID 参数整定方法有理论整定法与实验整定法两类,其中常用的实验整定法由扩充临界比例度法、试凑法等。在此处选用扩充临界比例度法对PID 进行整定,其过程如下: 1) 选择采样周期 由于被控对象中含有纯滞后,且其滞后时间常数为 60d τ=,故可选择采样周期1s T =。 2) 令积分时间常数i T =∞,微分时间常数0d T =,从小到大调节比例系数K , 使得系统发生等幅震荡,记下此时的比例系数k K 与振荡周期k T 。 3) 选择控制度为 1.05Q =,按下面公式计算各参数:

0.630.490.140.014p k i k d k s k K K T T T T T T ==== 通过仿真可得在1s T =时,0.567,233k k K T ==,故可得: 0.357,114.17,32.62, 3.262p i d s K T T T ==== 0.0053.57 p s i i p d d s K T K T K T K T === = 按此组控制参数得到的系统阶跃响应曲线如图2所示。 01002003004005006007008009001000 0.20.40.60.811.21.41.6 1.8 图2 由响应曲线可知,此时系统虽然稳定,但就是暂态性能较差,超调量过大,且响应曲线不平滑。根据以下原则对控制器参数进行调整以改善系统的暂态过程: 1) 通过减小采样周期,使响应曲线平滑。 2) 减小采样周期后,通过增大积分时间常数来保证系统稳定。 3) 减小比例系数与微分时间常数,以减小系统的超调。 改变控制器参数后得到系统的阶跃响应曲线如图3所示,系统的暂态性能得到明显改善、

实验一 典型环节的MATLAB仿真汇总

实验一 典型环节的MATLAB 仿真 一、实验目的 1.熟悉MATLAB 桌面和命令窗口,初步了解SIMULINK 功能模块的使用方法。 2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。 3.定性了解各参数变化对典型环节动态特性的影响。 二、SIMULINK 的使用 MATLAB 中SIMULINK 是一个用来对动态系统进行建模、仿真和分析的软件包。利用SIMULINK 功能模块可以快速的建立控制系统的模型,进行仿真和调试。 1.运行MATLAB 软件,在命令窗口栏“>>”提示符下键入simulink 命令,按Enter 键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK 仿真 环境下。 2.选择File 菜单下New 下的Model 命令,新建一个simulink 仿真环境常规模板。 3.在simulink 仿真环境下,创建所需要的系统 三、实验内容 按下列各典型环节的传递函数,建立相应的SIMULINK 仿真模型,观察并记录其单位阶跃响应波形。 ① 比例环节1)(1=s G 和2)(1=s G 实验处理:1)(1=s G SIMULINK 仿真模型

波形图为: 实验处理:2)(1=s G SIMULINK 仿真模型 波形图为: 实验结果分析:增加比例函数环节以后,系统的输出型号将输入信号成倍数放大. ② 惯性环节11)(1+= s s G 和15.01)(2+=s s G 实验处理:1 1 )(1+=s s G SIMULINK 仿真模型

波形图为: 实验处理:1 5.01 )(2+= s s G SIMULINK 仿真模型 波形图为: 实验结果分析:当1 1 )(1+= s s G 时,系统达到稳定需要时间接近5s,当

LMMSE算法信道均衡MATLAB仿真

一.信道均衡的概念 实际的基带传输系统不可能完全满足无码间串扰传输条件,因而码间串扰是不可避免的。当串扰严重时,必须对系统的传输函数 进行校正,使其达到或接近无码间串扰要求的特性。理论和实践表明,在基带系统中插入一种可调滤波器就可以补偿整个系统的幅频,和相频特性从而减小码间串扰的影响这个对系统校正的过程称为均衡,实现均衡的滤波器称为均衡器。 均衡分为频域均衡和时域均衡。频域均衡是从频率响应考虑,使包括均衡器在内的整个系统的总传输函数满足无失真传输条件。而时域均衡,则是直接从时间响应考虑,使包括均衡器在内的整个系统的冲激响应满足无码间串扰条件。 频域均衡在信道特性不变,且传输低速率数据时是适用的,而时域均衡可以根据信道特性的变化进行调整,能够有效地减小码间串扰,故在高速数据传输中得以广泛应用。 时域均衡的实现方法有多种,但从实现的原理上看,大致可分为预置式自动均衡和自适应式自动均衡。预置式均衡是在实际传数之前先传输预先规定的测试脉冲(如重复频率很低的周期性的单脉冲波形),然后按“迫零调整原理”自动或手动调整抽头增益;自适应式均衡是在传数过程中连续测出距最佳调整值的误差电压,并据此电压去调整各抽头增益。一般地,自适应均衡不仅可以使调整精度提高,而且当信道特性随时间变化时又能有一定的自适应性,因此很受重视。这种均衡器过去实现起来比较复杂,但随着大规模、超大规模集成电路和微处理机的应用,其发展十分迅速。 二.信道均衡的应用 1.考虑如图所示的基带等效数据传输系统,发送信号k x 经过ISI 失真信道传输,叠加高斯加性噪声。 图1基带等效数据传输模型 设发送信号采用QPSK 调制,即(1)k x j =±±ISI 信道的冲击响应以向量的形式表示为h 2211[,,,]T L L L h h h --+=???。典型的ISI 信道响应向量有三种: h [0.04,0.05,0.07,0.21,0.5,0.72,0.36,0,0.21,0.03,0.07]T A =--- h [0.407,0.815,0.407]T B = h [0.227,0.46,0.6888,0.46,0.227]T C = k ω为实部与虚部独立的复高斯白噪声,其均值为零,方差为2 ωσ。 2.实现目的

神经网络学习算法matlab仿真

东南大学自动化学院 智能控制概论 神经网络学习算法研究 学院: 姓名: 学号: 日期:

目录 1 任务要求叙述 ..................................................... 错误!未定义书签。 2 系统分析及设计原理 ......................................... 错误!未定义书签。 3 设计实现.............................................................. 错误!未定义书签。4仿真验证.. (6) 5 讨论与分析.......................................................... 错误!未定义书签。

一.任务要求叙述 (1)任务 (a) 运行算法,观察和分析现有学习算法的性能; clear all;close all; nu=20;pi=3.1415926; for i=1:nu p(i)=2*pi*i/nu; t(i)=0.5*(1+cos(p(i))); end minmax=[min(p(:)) max(p(:))] net = newff([ 0 7],[6 1],{'logsig' 'purelin'},'traingd');% traingd traingdm trainlm net.trainParam.epochs = 10000; net.trainParam.goal = 0.0001; net.trainParam.show=200; net.trainParam.lr=0.1; net.trainParam.mc=0.6; %0.9 default value; available for momentum net = train(net,p,t); y1 = sim(net,p); figure(2); plot(p,t,'*-',p,y1,'r--') %************** test data ****************** nu2=nu*3/2; for i=1:(nu2) p2(i)=2*pi*i/(nu2); t2(i)=0.5*(1+cos(p2(i))); end y2 = sim(net,p2); figure(3); plot(t2,'*-');hold on; plot(y2,'r'); xlabel('times');ylabel('outputs'); figure(4); plot(t2-y2); xlabel('times');ylabel('error'); (b) 为了进一步提高学习逼近效果,可以采取那些措施,调节规律如何?根据所提的每种措施,修改算法程序,给出仿真效果验证、过程以及相应的曲线图,给出适当的评述;(c) 联系、结合前向神经网络的算法样本学习、测试等过程,谈谈本人对神经网络系统的一些认识和看法。 (2)要求 提交完整的报告,包括:封面(题目、个人学号姓名等信息)、目录、任务要求叙述、系

时域有限差分法对平面TE波的MATLAB仿真

时域有限差分法对平面TE波的 MATLAB仿真 摘要 时域有限差分法是由有限差分法发展出来的数值计算方法。自1966年Yee 在其论文中首次提出时域有限差分以来,时域有限差分法在电磁研究领域得到了广泛的应用。主要有分析辐射条线、微波器件和导行波结构的研究、散射和雷达截面计算、分析周期结构、电子封装和电磁兼容的分析、核电磁脉冲的传播和散射以及在地面的反射及对电缆传输线的干扰、微光学元器件中光的传播和衍射特性等等。 由于电磁场是以场的形态存在的物质,具有独特的研究方法,采取重叠的研究方法是其重要的特点,即只有理论分析、测量、计算机模拟的结果相互佐证,才可以认为是获得了正确可信的结论。时域有限差分法就是实现直接对电磁工程问题进行计算机模拟的基本方法。在近年的研究电磁问题中,许多学者对时域脉冲源的传播和响应进行了大量的研究,主要是描述物体在瞬态电磁源作用下的理论。另外,对于物体的电特性,理论上具有几乎所有的频率成分,但实际上,只有有限的频带内的频率成分在区主要作用。 文中主要谈到了关于高斯制下完全匹配层的差分公式的问题,通过MATLAB 程序对TE波进行了仿真,模拟了高斯制下完全匹配层中磁场分量瞬态分布。得到了相应的磁场幅值效果图。 关键词:时域有限差分完全匹配层MATLAB 磁场幅值效果图

目录 摘要 (1) 目录 (3) 第一章绪论 (4) 1.1 课题背景与意义 (4) 1.2 时域有限差分法的发展与应用 (4) 2.1 Maxwell方程和Yee氏算法 (7) 2.2 FDTD的基本差分方程 (9) 2.3 时域有限差分法相关技术 (11) 2.3.1 数值稳定性问题 (11) 2.3.2 数值色散 (12) 2.3.3 离散网格的确定 (13) 2.4 吸收边界条件 (13) 2.4.1 一阶和二阶近似吸收边界条件 (14) 2.4.2 二维棱边及角顶点的处理 (17) 2.4.3 完全匹配层 (19) 2.5 FDTD计算所需时间步的估计 (23) 第三章MATLAB的仿真的程序及模拟 (25) 3.1 MATLAB程序及相应说明 (25) 3.2 出图及结果 (28) 3.2.1程序部分 (28) 3.2.2 所出的效果图 (29) 第四章结论 (31) 参考文献 (32)

PID控制算法的matlab仿真.doc

PID 控制算法的 matlab 仿真 PID 控制算法是实际工业控制中应用最为广泛的控制算法,它具有控制器设 计简单,控制效果好等优点。 PID 控制器参数的设置是否合适对其控制效果具有很 大的影响,在本课程设计中一具有较大惯性时间常数和纯滞后的一阶惯性环节作为 被控对象的模型对 PID 控制算法进行研究。被控对象的传递函数如下: G(s) Ke d s 1 T f s 其中各参数分别为 K 30, T f 630, d 60 。MATLAB仿真框图如图1所示。 -K- Kp z 30 -K- (z-1) 630s+1 Step Ki Zero-Order Transport Transfer Fcn Hold Delay Add (z-1) -K- z Kd 图 1 2具体内容及实现功能 2.1 PID 参数整定 PID 控制器的控制参数对其控制效果起着决定性的作用,合理设置控制参 数是取得较好的控制效果的先决条件。常用的 PID 参数整定方法有理论整定法和实 验整定法两类,其中常用的实验整定法由扩充临界比例度法、试凑法等。在此处选用扩充临界比例度法对 PID 进行整定,其过程如下: 1)选择采样周期由于被控对象中含有纯滞后,且其滞后时间常数为 d60 ,故可选择采样周期 T s 1。 2)令积分时间常数T i,微分时间常数T d0 ,从小到大调节比例系数K , 使得系统发生等幅震荡,记下此时的比例系数K k和振荡周期 T k。 1 Out1 3)选择控制度为Q 1.05 ,按下面公式计算各参数:

K p 0.63K k T i 0.49T k T d 0.14T k T s 0.014T k 通过仿真可得在 T s 1时, K k 0.567, T k 233 ,故可得: K p 0.357, T i 114.17, T d 32.62,T s 3.262 K p T s 0.005 K i T i K p T d 3.57 K d T s 按此组控制参数得到的系统阶跃响应曲线如图 2 所示。 1.8 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 01002003004005006007008009001000 图 2 由响应曲线可知,此时系统虽然稳定,但是暂态性能较差,超调量过大,且响应曲线不平滑。根据以下原则对控制器参数进行调整以改善系统的暂态过程: 1)通过减小采样周期,使响应曲线平滑。 2)减小采样周期后,通过增大积分时间常数来保证系统稳定。 3)减小比例系数和微分时间常数,以减小系统的超调。 改变控制器参数后得到系统的阶跃响应曲线如图3 所示,系统的暂态性能得到明显改善 .

MATLAB定点仿真方法的学习笔记

定点仿真方法的学习笔记(一) 在用MATLAB工具对算法进行仿真时,数据的流动是以浮点形式进行的,浮点型又分单 单精度浮点型数据用32 bit 来存储数据,其中符号位1 bit,指数位8 bit,尾数位23 bit。双精度浮点型数据则用64 bit 来存储数据,其中符号位1 bit,指数位11 bit,尾数位52 bit。 这样的数据存储方式能够保证一个数的精度。但是在考虑硬件实现的时候(如FPGA,定点DSP),数据的流动是以固定长度的二进制序列进行,因此,为了进一步的反映硬件实现中算法性能,我们需要对数据的类型做重新的定义,使得所表示的数据更符合硬件平台上的处理方式。 做定点仿真实际就是对算法中的每一个数据进行量化,用规定字长的二进制序列表示一个数,使它接近实际值。为了方便对数据类型做定点转换,MATLAB提供了强大的Fixed-Point Toolbox 来帮助我们做这项工作。以下的所用内容只是个人对Fixed-Point Toolbox 学习的总结,如有任何疑问,请查找HELP 中的相关内容,理解上如有错误,恳请斧正。 先介绍几个对象给大家认识,也就是Object,个人认为定点的过程就是让数据在 fi 这个对象下进行工作。 ●fi 对象 当你用 fi 这个函数对一个数据进行定点处理时,你就构造了一个fi 对象(说白了也是一个数,你规定了这个数的数据类型)。你可以对这个对象进行运算。与一个数不同的是这个对象有很多的属性,在这里先把它们中常用的列出来,并对它们做一些简要说明,后面会用实例告诉大家怎么去理解这些属性。 ?Data 属性 该属性可以让你了解一个fi对象在不同的数据形式下的具体值,如二进制(bin),八进制(oct),十进制(dec),十六进制(hex),双精度(double)等等。 ?fimath 属性 该属性规定了fi 对象在进行数据运算时,处理数据的习惯(数学运算,截位方式,溢出方式)。它是一个比较抽象意义上的属性,你可以用另一个对象对它进行定义。当你要定义fi对象的fimath属性时,你需要先定义一个fimath的对象,再用fimath 对象定义fi对象的fimath属性。将在fimath对象中介绍。 ?numerictype 属性 该属性包含了fi对象的所有数据类型信息。它是一个比较抽象意义上的属性,你可以用另一个对象对它进行定义。当你要定义fi对象的numerictype属性时,你需要先定义一个numerictype对象,再用numerictype对象定义fi对象的fimath属性。将在numerictype对象中介绍。 ●fimath 对象 该对象的常用属性如下: ?CastBeforeSum 属性 在两个操作数进行加法之前,是否将操作数影射成“和”的数据类型。“0”表示“否”,“1”表示“是”。例如,若两个操作数(对象)是18 bit,定义“和”为12 bit,若该属性为“0”,则两个操作数先进行“加”操作,然后对“和”截位得到12 bit输出,若该属性为“1”,则两个操作数先截位成12 bit,然后再进行“加”操作。

实验一--典型环节的MATLAB仿真

实验一 典型环节的M A T L A B 仿真 一、实验目的 1.熟悉MATLAB 桌面和命令窗口,初步了解SIMULINK 功能模块的使用方法。 2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。 3.定性了解各参数变化对典型环节动态特性的影响。 二、SIMULINK 的使用 MATLAB 中SIMULINK 是一个用来对动态系统进行建模、仿真和分析的软件包。利用SIMULINK 功能模块可以快速的建立控制系统的模型,进行仿真和调试。 1.运行MATLAB 软件,在命令窗口栏“>>”提示符下键入simulink 命令,按Enter 键或 在工具栏单击按钮,即可进入如图1-1所示的SIMULINK 仿真环境下。 2.选择File 菜单下New 下的Model 命令,新建一个simulink 仿真环境常规模板。 3.在simulink 仿真环境下,创建所需要的系统 三、实验内容 按下列各典型环节的传递函数,建立相应的SIMULINK 仿真模型,观察并记录其单位阶跃响应波形。 ① 比例环节1)(1=s G 和2)(1=s G 实验处理:1)(1=s G SIMULINK 仿真模型 波形图为: 实验处理:2)(1=s G SIMULINK 仿真模型 波形图为: 实验结果分析:增加比例函数环节以后,系统的输出型号将输入信号成倍数放大. ② 惯性环节11)(1+= s s G 和1 5.01)(2+=s s G 实验处理:11)(1+=s s G

SIMULINK 仿真模型 波形图为: 实验处理:1 5.01)(2+=s s G SIMULINK 仿真模型 波形图为: 实验结果分析:当11)(1+=s s G 时,系统达到稳定需要时间接近5s,当1 5.01)(2+=s s G 时,行动达到稳定需要时间为2.5s,由此可得,惯性环节可以调节系统达到稳定所需时间,可以通过惯性环节,调节系统达到稳定输出的时间。 ③ 积分环节s s G 1)(1= 实验处理: SIMULINK 仿真模型 实物图为: 实验结果分析:由以上波形可以的出,当系统加入积分环节以后,系统的输出量随时间的变化成正比例增加。 ④ 微分环节s s G =)(1 实验处理: SIMULINK 仿真模型 波形图为: 实验结果分析:微分环节,是将系统的输入对时间的倒数作为输出,当输入为阶跃信号时,加入微分环节后,输入变为0。 ⑤ 比例+微分环节(PD )2)(1+=s s G 和1)(2+=s s G 实验处理:2)(1+=s s G SIMULINK 仿真模型 波形图为:

实验三、最少拍控制算法matlab仿真实验2017.docx

实验三、最少拍控制算法matlab 仿真实验 一、 实验目的: 1.掌握最少拍有纹波、无纹波系统的设计方法; 2.学会最少拍控制系统的分析方法; 3.了解输入信号对最少拍控制系统的影响及改进措施 二、实验内容: 设单位反馈线性定常系统的连续部分和零阶保持器的传递函数分别为: , ,采样周期T=1秒。要求系统在单位阶跃输入时实现最少拍控制,求数字控制器的脉冲传递函数。讨论加上控制器后的系统输出在采样点之间是否存在纹波,若存在纹波,请设计最少拍无纹波控制器。系统结构如图: 1、对未加控制器时的闭环系统分析其是否满足最少拍要求 clear all ; clc; G=zpk([],[0,-1],1); %零极点形式的被控对象 T=1; %采样周期 Gd=c2d(G,T,'zoh') %广义被控对象脉冲传函 [num1,den1]=tfdata(Gd,'v'); GG=feedback(Gd,1) %原系统闭环传递函数 yd_1=0;yd_2=0; ed_1=0;ed_2=0; for k=1:1:35 time(k)=k*T; rin(k)=1; %单位阶跃信号 %闭环系统的差分方程 yd(k)=num1(2)*ed_1+num1(3)*ed_2-den1(2)*yd_1-den1(3)*yd_2; ed(k)=rin(k)-yd(k); %求偏差 %数据更新 ed_2=ed_1;ed_1=ed(k); yd_2=yd_1;yd_1=yd(k); )1(1)(0+=s s s G s e s G sT h --=1)()(z D

end yd %原闭环系统的输出序列 ed %原闭环系统的偏差序列 figure(1); plot(time,rin,'r',time,yd,'g',time,ed,'b'); xlabel('time'); ylabel('rin,yd'); title('闭环系统在单位速度信号下的响应'); text(3,23,'红线:输入信号;绿线:系统输出响应;蓝线:偏差'); 1)原系统闭环脉冲传递函数为: GG = 0.36788 (z+0.7183) ------------------ (z^2 - z + 0.6321) 得系统特征根为618.05.0j z ±=, 特征根174.049.025.0618.05.02 22<=+<+=z , 即闭环系统稳定。 2)广义对象的开环脉冲传递函数为: Gd = 0.36788 (z+0.7183) ------------------ (z-1) (z-0.3679) 可知,开环脉冲传递函数有1=z 的极点个数为1,系统为I 型系统。 对于单位速度输入,稳态误差不为零。即原来的闭环系统达不到最少拍系统中对某个输入稳定无静差的要求。 3)原闭环系统输出序列为: yd = Columns 1 through 9 0 0.3679 1.0000 1.3996 1.3996 1.1470 0.8944 0.8015 0.8682 Columns 10 through 18 0.9937 1.0770 1.0810 1.0323 0.9811 0.9607 0.9726 0.9975 1.0148 Columns 19 through 27 1.0164 1.0070 0.9967 0.9922 0.9943 0.9992 1.0028 1.0033 1.0015 Columns 28 through 35 0.9994 0.9985 0.9988 0.9998 1.0005 1.0007 1.0003 0.9999 可知,系统输出在第十三拍以后,基本稳定为1,满足稳定性要求。调节时间为13s 。动态过程为13拍,达不到最少怕的要求。 原闭环系统偏差序列为: ed = Columns 1 through 9 1.0000 0.6321 0.0000 -0.3996 -0.3996 -0.1470 0.1056 0.1985 0.1318

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