控制系统计算机仿真(matlab)实验四实验报告

控制系统计算机仿真(matlab)实验四实验报告
控制系统计算机仿真(matlab)实验四实验报告

实验四控制系统计算机辅助分析

一、实验目的

1、掌握如何使用Matlab进行系统的时域分析

2、掌握如何使用Matlab进行系统的频域分析

3、掌握如何使用Matlab进行系统的根轨迹分析

二、实验学时:2学时

三、试验原理:

1、稳定性的基本概念及必要条件

根据李雅普诺夫稳定性理论,线性控制系统的稳定性可定义如下:

如果线性控制系统在初始扰动的影响下,其动态过程随时间的推移逐渐衰减并趋于零(原平衡工作点),则称系统渐近稳定,简称稳定。否则,若在初始扰动影响下,系统的动态过程随时间的推移而发散,则称系统不稳定。

线性系统稳定的充分必要条件是:闭环系统特征方程的所有根均具有负实部;或者说,闭环传递函数的极点均严格位于左半s平面。

由上述线性系统稳定性概念及系统稳定的充分必要条件可知,判定线性系统稳定性的最直接方法就是求出闭环系统特征方程的所有根或者全部闭环极点,根据特征方程所有根是否具有负实部或闭环极点是否全部位于左半s平面来判定系统的稳定性。

四、实验内容:(三题选做两题)

1、时域分析

(1)根据下面传递函数模型:绘制其单位阶跃响应曲线并从图上读取最大超调量,并求出单位脉冲响应曲线。

程序:

s=tf('s');

G=5*(s^2+5*s+6)/(s^3+6*s^2+10*s+8);

step(G);

grid;

hold on;

impulse(G);

结果:

超调量=(|3.75-4|)/4x100%=6.25%

0123456

-1

1

2

3

4

5

Step Response

Time (sec)

A m p l i t u d e

(2)典型二阶系统传递函数为:

当ζ=0.7,ωn 取2、4、6、8、10、12的单位阶跃响应。

程序: kesi=0.7

for wn=2:2:12 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; step(G); hold on; end

title('wn 不同值下的单位阶跃响应'); xlabel('t');ylabel('阶跃响应'); grid; 结果:

00.51 1.52 2.53 3.54

0.2

0.4

0.6

0.8

1

1.2

1.4

w n 不同值下的单位阶跃响应

t (sec)

阶跃响应

(3)典型二阶系统传递函数为:

当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。

程序: wn=6;

for kesi=0.2:0.2:1.0 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; step(G); hold on; end

for kesi=1.5:0.5:2.0 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; step(G); hold on; end

title('δ不同值下的单位阶跃响应'); xlabel('t');ylabel('阶跃响应'); grid;

结果:

00.51 1.52 2.53 3.54 4.55

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

δ不同值下的单位阶跃响应

t (sec)

阶跃响应

2、频域分析

(1)典型二阶系统传递函数为:

当ζ=0.7,ωn 取2、4、6、8、10、12的伯德图 程序: kesi=0.7

for wn=2:2:12 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; bode(G); hold on; end

title('wn 不同值下的伯德图'); grid; 结果:

-150

-100

-50

50

M a g n i t u d e (d B

)10

-1

10

10

1

10

2

10

3

-180

-135-90-45

P h a s e (d e g

)

Frequency (rad/sec)

(2)典型二阶系统传递函数为:

当ωn =6,ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图。 程序: wn=6;

for kesi=0.2:0.2:1.0 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; bode(G); hold on; end

for kesi=1.5:0.5:2.0 num=wn^2;

den=[1 2*kesi*wn wn^2]; G=tf(num,den); t=0:0.01:10; bode(G); hold on; end

title('δ不同值下的伯德图'); grid;

运行结果:

-100

-80-60-40-200

20M a g n i t u d e (d B

)10

-2

10

-1

10

10

1

10

2

10

3

-180

-135-90-450P h a s e (d e g

)

Frequency (rad/sec)

(3)已知二阶系统传递函数1

21

)(2

++=

s s

s G K ξ 绘制阻尼系数ξ分别为1.2,1.0,0.5和0.25时系统的Nyquist 曲线。 程序:for kesi=0.25:0.25:0.51 num=1;

den=[1 2*kesi 1]; G=tf(num,den); nyquist(G); hold on; end

for kesi=1.0:0.2:1.2 num=1;

den=[1 2*kesi 1]; G=tf(num,den); nyquist(G); hold on; end

title('Nyquist 曲线'); 运行结果:

-1

-0.50

0.51 1.5

Nyquist 曲线

Real Axis

I m a g i n a r y A x i s

3、根轨迹分析

根据下面负反馈系统的开环传递函数,绘制系统根轨迹,并分析系统稳定的K 值范围。

程序: num=[1];

dun=[1 3 2 0]; rlocus(num,dun);

[k,p]=rlocfind(num,dun) 运行结果: k = 6.3711 p =

-3.0331 0.0166 + 1.4492i 0.0166 - 1.4492i

Root Locus

Real Axis

I m a g i n a r y A x i s

-7

-6-5-4-3-2-1012

-5-4-3-2-1012

34

5

Root Locus

Real Axis

I m a g i n a r y A x i s

-7

-6-5-4-3-2-1012

-5-4-3-2-1012

345

由结果分析可知,当0.385

计算机仿真实验

计算机仿真实验报告 专业:电气工程及其自动化班级:09电牵一班学号:22 姓名:饶坚指导老师:叶满园实验日期:2012年4月30日 一、实验名称 三相桥式SPWM逆变电路仿真 二、目的及要求 1.了解并掌握三相逆变电路的工作原理; 2.进一步熟悉MA TLAB中对Simulink的使用及构建模块; 3.掌握SPWM原理及构建调制电路模块; 4.复习在Figure中显示图形的程序编写和对图形的修改。 三、实验原理与步骤、电路图 1、实验原理图

2、电路原理(采用双极性控制方式) U、V和W三相的PWM控制通常公用一个三角波载波Uc,三相的调制信号Uru、Urv和Urw依次相差120°。 电路工作过程(U相为例):当Uru>Uc时,上桥臂V1导通,下桥臂V4关断,则U相相对于直流电源假想中点N’的输出电压Uun’=Ud/2。当Uru

对电路模型进行封装如下图示:

其中Subsystem1为主电路,Subsystem2为负载,Subsystem3为检测电路,Subsystem4为输入信号,Subsystem5为调制电路,Scope 为示波器,Repeating Sequence为三角载波。 各子系统电路分别如下所示: Subsystem1 Subsystem2 Subsystem3

matlab实验报告

数学实验报告 班级: 学号: 姓名: 实验序号:1 日期:年 月 日 实验名称:特殊函数与图形 ◆ 问题背景描述:绘图是数学中的一种重要手段,借助图形,可以使抽象的对象得到 明白直观的体现,如函数的性质等。同时,借助直观的图形,使初学者更容易接受新知识,激发学习兴趣。 ◆ 实验目的:本实验通过绘制一些特殊函数的图形,一方面展示这些函数的特点属性, 另一方面,就 Matlab 强大的作图功能作一个简单介绍。 实验原理与数学模型: 1、 球2222x y z R ++= ,x=Rsin φcos θ, y= Rsin φsin θ, z= cos φ, 0≤θ≤2π , 0≤φ≤π 环面 222222222()4(),(cos )cos ,x y z a r a x y x a r φθ+++-=+=- (cos )sin ,sin ,02,02y a r z r φθφφπθπ=-=≤≤≤≤ 2、 平面摆线:2 22 31150,(sin ),(1cos ),0233 x y x a t t y a t t π+-==-=-≤≤ 3、 空间螺线:(圆柱螺线)x=acost , y=asint , z=bt ;(圆锥螺线)22 cos ,sin ,x t t y t t z t === 4、 椭球面sin cos ,sin sin ,cos ,02,0x a y b z c φθφθφθπφπ===≤<≤≤ 双叶双曲面3 tan cos ,tan sin ,sec ,02,22 x a y b z c π φθφθφθπφπ===≤<- << 双曲抛物面2 sec ,tan 2 u x au y bu z θθ=== 实验所用软件及版本:mathematica(3.0) 主要内容(要点): 1、 作出下列三维图形(球、环面) 2、 作出下列的墨西哥帽子 3、 作出球面、椭球面、双叶双曲面,单叶双曲面的图形 4、 试画出田螺上的一根螺线 5、 作出如图的马鞍面

Matlab实验报告3

实验三函数的可视化与Matlab作图 一、按要求绘制如下曲线(面): 1. 在[0,4pi]上画sin(x),cos(x)在同一图像中,其中cos(x)图像用红色小圆圈,并在函数图上标注“y=sin(x)”,”y=cos(x)”,X轴,Y轴,标题为“正弦余弦函数图像。”答:>> clear >> clf, x=linspace(0,4*pi,200);y1=sin(x);y2=cos(x); plot(x,y1,'k-',x,y2,'ro') >> title('正弦余弦函数图像。') >> legend('y=sin(x)','y=cos(x)') >> ylabel('\it{Y轴}'); >> xlabel('\it{X轴}'); 2.任意绘制彗星曲线图。 答:>> clf; >> x=[1:10]; y=[5 6 3 4 8 1 10 3 5 6]; >> z=0:0.1:100; x=sin(z);y=cos(z).*10; >> %三维彗星图 comet3(x,y,z) >> %二维彗星图

t = -pi:pi/200:pi; comet(t,tan(sin(t))-sin(tan(t)))

3.在多窗口中绘制y=sin(t)*sin(t);y1=sin(3*t+2.5);y2=sin(5*t+5)并加以标注。答:>> clf; t=0:0.1:4*pi; subplot(3,1,1),plot(sin(t).*sin(t)),legend('y=sin(t)*sin(t)') subplot(3,1,2),plot(sin(3*t+2.5)),legend('y1=sin(3*t+2.5)') subplot(3,1,3),plot(sin(5*t+5)),legend('y2=sin(5*t+5)') 4.自拟题目绘制三维线图。 绘制以下方程y1=sin(t),y2=cos(t),x=t在t=[0,2π] 对应的三维曲线。 >> clf; >> t=0:pi/10:2*pi; >> y1=sin(t);y2=cos(t); >> plot3(y1,y2,t);grid on; >> xlabel('Dependent Variable Y1'); >> ylabel('Dependent Variable Y2'); >> zlabel('Dependent Variable X'); >> title('Sin and Cos Curve');

MATLAB实验报告50059

实验一MATLAB操作基础 实验目的和要求: 1、熟悉MATLAB的操作环境及基本操作方法。 2、掌握MATLAB的搜索路径及设置方法。 3、熟悉MATLAB帮助信息的查阅方法 实验内容: 1、建立自己的工作目录,再设置自己的工作目录设置到MA TLAB搜索路径下,再试 验用help命令能否查询到自己的工作目录。 2、在MA TLAB的操作环境下验证课本;例1-1至例1-4,总结MATLAB的特点。 例1-1

例1-2 例1-3 例1-4

3、利用帮助功能查询inv、plot、max、round等函数的功能。 4、完成下列操作: (1)在matlab命令窗口输入以下命令: x=0:pi/10:2*pi; y=sin(x); (2)在工作空间窗口选择变量y,再在工作空间窗口选择回绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形,并分析图形的含义。

5、访问mathworks公司的主页,查询有关MATLAB的产品信息。 主要教学环节的组织: 教师讲授实验目的、开发环境界面、演示实验过程,然后同学上机练习。 思考题: 1、如何启动与退出MA TLAB集成环境? 启动: (1)在windows桌面,单击任务栏上的开始按钮,选择‘所有程序’菜单项,然后选择MA TLAB程序组中的MA TLABR2008b程序选项,即可启动 MATLAB系统。 (2)在MA TLAB的安装路径中找到MA TLAB系统启动程序matlab.exe,然后运行它。 (3)在桌面上建立快捷方式后。双击快捷方式图标,启动MA TLAB。 退出: (1)在MA TLAB主窗口file菜单中选择exitMATLAB命令。 (2)在MA TLAB命令窗口中输入exit或quit命令。 (3)单击MATLAB主窗口的关闭按钮。 2、简述MATLAB的主要功能。 MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符 号计算功能、绘图功能、编程语言功能以及应用工具箱的扩展功能。 3、如果一个MATLAB命令包含的字符很多,需要分成多行输入,该如何处理?

计算机仿真技术的发展概述及认识

计算机仿真技术的发展概述及认识 摘要:随着经济的发展和社会的进步,计算机技术高速发展,使人类社会进入了信息时代,计算机作为后期新秀渗入到人们生活中的每一个领域,给人们的生活带来了前所未有的变化。作为新兴的技术,计算机技术在人类研究的各个领域起到了只管至关重要的作用,帮助人类解决了许多技术难题。在科研领域,计算机技术与仿真技术相结合,形成了计算机仿真技术,作为人们科学研究的一种新型方法,被人们应用到各个领域,用来解决人们用纯数学方法或者现实实验无法解决的问题,对科研领域技术成果的形成有着积极地促进作用。 本文在计算机仿真技术的理论思想基础上,分析了计算机仿真技术产生的基本原因,也就是人们用计算机模拟解决问题的优点所在,讨论了模拟、仿真、实验、计算机仿真之间的联系和区别,介绍了计算机仿真技术的发展历程,并查阅相关资料介绍了计算机仿真技术在不同领域的应用,分析并预测了计算机仿真的未来发展趋势。经过查阅大量数据资料并加以分析对比,这对于初步认识计算机仿真技术具有重要意义。 关键词:计算机仿真;模拟;仿真技术;发展 一、引言 计算机仿真技术是以多种学科和理论为基础,以计算机及其相应的软件为工具,通过虚拟试验的方法来分析和解决问题的一门综合性技术。计算机仿真(模拟)早期称为蒙特卡罗方法,是一门利用随机数实验求解随机问题的方法。其原理可追溯到1773年法国自然学家G.L.L.Buffon为估计圆周率值所进行的物理实验。根据仿真过程中所采用计算机类型的不同,计算机仿真大致经历了模拟机仿真、模拟-数字混合机仿真和数字机仿真三个大的阶段。20世纪50年代计算机仿真主要采用模拟机;60年代后串行处理数字机逐渐应用到仿真之中,但难以满足航天、化工等大规模复杂系统对仿真时限的要求;到了70年代模拟-数字混合机曾一度应用于飞行仿真、卫星仿真和核反应堆仿真等众多高技术研究领域;80年代后由于并行处理技术的发展,数字机才最终成为计算机仿真的主流。现在,计算机仿真技术已经在机械制造、航空航天、交通运输、船舶工程、经济管理、工程建设、军事模拟以及医疗卫生等领域得到了广泛的应用。 二、基本概念 模拟:(Simulation)应用模型和计算机开展地理过程数值和非数值分析。不是去求系统方程的解析解,而是从系统某初始状态出发,去计算短暂时间之后接着发生的状态,再以此为初始状态不断的重复,就能展示系统的行为模式。模拟是对真实事物或者过程的虚拟。模拟要表现出选定的物理系统或抽象系统的关键特性。模拟的关键问题包括有效信息的获取、关键特性和表现的选定、近似简化和假设的应用,以及模拟的重现度和有效性。可以认为仿真是一种重现系统外在表现的特殊的模拟。 仿真:(Emulation)利用模型复现实际系统中发生的本质过程,并通过对系统模型的实验来研究存在的或设计中的系统,又称模拟。即使用项目模型将特定于某一具体层次的不确定性转化为它们对目标的影响,该影响是在项目仿真项目

【含源代码】北邮dsp-MATLAB实验三梳状滤波器的应用

Dsp-matlab实验 实验三:梳状滤波器的应用 设 计 报 告 课题名称:梳状滤波器的应用 学生姓名: 班级: 班内序号: 学号: 日期:2015/06/15

目录 一、实验内容········································· 二、Matlab运行结果(含分析)································· 三、Matlab源代码···························· 四、遇到的难题与解决方法···························· 参考文献·························································

一、实验内容 录制一段自己的话音,时间长度及取样频率自定;对该段声音加入一次反射、三次反射和无穷多次反射。试验报告要求: 1、对试验原理的说明; 回声往往是原始声音衰减后的多个延迟叠加而组成的,因此回声可以用延迟单元来生成。X(n)表示原始声音信号,α为衰减系数,N为延迟周期,回声信号Y(n)=X(n)α*x(n-T)+α^2*x(n-2T)+……+α^N*x(n-NT). Z变换后的系统函数H(Z)可由梳状滤波器实现。MATLAB filter函数可用来仿真差分方程,本次实验用的就是这个函数。 2、在同一张图上,绘制原声音序列() x n、加入一次反射后的声音序列 1() x n、加入三次反射后的声音序列 3() x n和加入无穷多次反射后的声音序列() I x n;

其中蓝色为原声音序列x(n),粉红色为加入一次反射后的声音序列 x1(n),绿色为加入三次反射后的声音序列x3(n),红色为加入无穷多次反射后的声音序列x ∞(n)。 二、Matlab 运行结果(含分析)· 结合上述各序列,分析延时、衰减系数对回声效果的影响(提示:定量考察序列()x n 、1()x n 、3()x n 和()I x n 之间的区别) 延时不变时,衰减系数a 从零增大到1的过程中,回声效果由差变好再变差。a 很小时几乎听不到回声,a 在0.5±0.1时回声效果最明显,a 接近1时声音变得很不清晰,几乎不可识别。衰减系数不变时延时T 从零增大的过程中回声效果由差变好再变差。T 接近0时可以听到回声,但多次回声的层次感不清晰。0.1s1s 三、Matlab 源代码· >> [x,fs]=audioread('a.wav');sound(x,fs);a=0.6;T=0.2; y1=filter([1,zeros(1,T*fs-1),a],1,x);sound(y1,fs);wavwrite(y1,fs,'echo1.wav'); y2=filter([1,zeros(1,T*fs-1),a,zeros(1,T*fs-1),a^2,zeros(1,T*fs-1),a^3],1,x); sound(y2,fs);wavwrite(y2,fs,'echo2.wav');y3=filter(1,[1,zeros(1,T*fs-1),a],x);sound(y3,fs);wavwri te(y3,fs,'echo3.wav');plot(y3,'m'); hold on;plot(y2,'r'); hold on;plot(y1,'g');hold on;plot(x,'b'); 四、遇到的难题与解决办法 最开始遇到的问题是matlab 软件安装问题,因为电脑环境的特殊性尝试了多次才成功; 在建模过程中发现对实验原理因为学习时间过长有些不熟悉,于是翻书查阅复习,熟悉实验原理; 在实验过程中因为粗心,忘记保存,没有打符号等等之类问题使系统开始报错,细心调试之后成功建模

MATLAB实验报告第三章

M3-1 (1)ts=0;te=5;dt=0.01; >>sys=tf([2,1],[1,3,2]); >> t=ts:dt:te; >> x=exp(-3*t).*heaviside(t); >> y=lsim(sys,x,t); >>plot(t,y); >>xlabel('time(sec)'); >>ylabel('y(t)'); 系统的零状态响应 (2)y 的数值解为: M3-2,在图示电路中(1)建立该系统的微分方程;(2)用inpulse 函数求系统的单位冲击响应; (3)用step 函数求系统的单位阶跃响应。 解:(1)有图可知,方程的微分方程为:LC/R*Y(t)’’+C*Y(t)’+Y(t)/R=X(t) 带入数据得 1/6*Y(t)’’+1/2*Y(t)’+Y(t)=X(t) (2)>>ts=0;te=5;dt=0.01; >>sys=tf([1],[1/6,1/2,1]); >> t=ts:dt:te; >> y=impulse(sys,t); >>plot(t,y); >>xlabel('Time(sec)') >>ylabel('h(t)') 00.51 1.52 2.5 3 3.5 4 4.55 time(sec)y (t )

系统的冲击响应 (3)>>ts=0;te=5;dt=0.01; >>sys=tf([1],[1/6,1/2,1]); >> t=ts:dt:te; >> y=step(sys,t); >>plot(t,y); >>xlabel('Time(sec)') >>ylabel('d(t)') M3_3求下列二阶系统的单位阶跃响应。 (1)y ’’(t)+0.2y ’(t)+y(t)=x(t) >>ylabel('d(t)') >>ts=0;te=10;dt=0.01; >>sys=tf([1],[1,0.2,1]); >> t=ts:dt:te; >> y=step(sys,t); >>plot(t,y) Time(sec)h (t )Time(sec)d (t )

北邮dsp软件实验报告

Matlab仿真实验 实验报告 学院:电子工程学院 专业:电子信息科学与技术 班级: 学号: 姓名:

时间:2015年12月23日 实验一:数字信号的FFT分析 1.实验目的 通过本次试验,应该掌握: (a)用傅里叶变换进行信号分析时基本参数的选择 (b)经过离散时间傅里叶变换和有限长度离散傅里叶变换后信号频谱上的区别,前者DTFT时间域是离散信号,频率域还是连续的,而DFT在两个域中都是离散的。(c)离散傅里叶变化的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。 (d)获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。(e)建立DFT从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用时数字音频压缩中的分析滤波器,例如DVD AC3和MPEG Audio。 2.实验容、要求及结果。 (1)离散信号的频谱分析: 设信号x(n)=0.001*cos(0.45n)+sin(0.3n)-cos(0.302n-) 此信号的0.3谱线相距很近,谱线0.45的幅度很小,请选择合适的序列长度N和窗函数,用DFT分析其频谱,要求得到清楚的三根谱线。 【实验代码】:

k=2000; n=[1:1:k]; x=0.001*cos(0.45*n*pi)+sin(0.3*n*pi)-cos(0.302*n*pi-pi/4); subplot(2,1,1); stem(n,x,'.'); title(‘时域序列'); xlabel('n'); ylabel('x(n)'); xk=fft(x,k); w=2*pi/k*[0:1:k-1]; subplot(2,1,2); stem(w/pi,abs(xk)); axis([0 0.5 0 2]); title('1000点DFT'); xlabel('数字频率'); ylabel('|xk(k)|'); 【实验结果图】:

matlab实验报告3详解

实验四、LTI系统的响应 课程名称: MATLAB应用技术专业班级:通信1422 学生学号: 1430119231 学生姓名:周妍智 所属院部:电子信息工程系指导教师:徐树梅 2015 —— 2016 学年第二学期

实验项目名称: LTI 系统的响应 实验学时: 16 学生姓名: 周妍智 实验地点: 微机11 实验日期: 2016.4.17 实验成绩: 批改教师: 徐树梅 批改时间: 一、 实验目的 1. 熟悉连续时间系统的单位冲激响应、阶跃响应的意义及求解方法 2. 熟悉连续(离散)时间系统在任意信号激励下响应的求解方法 3. 熟悉应用MATLAB 实现求解系统响应的方法 二、 实验原理 1.连续时间系统 对于连续的LTI 系统,当系统输入为f (t ),输出为y (t ),则输入与输出之间满足如下的线性常系数微分方程: () ()0 ()()n m i j i j i j a y t b f t ===∑∑,当系统输入为单位冲激信号δ(t )时产生 的零状态响应称为系统的单位冲激响应,用h(t)表示。若输入为单位阶跃信号ε(t )时,系统产生的零状态响应则称为系统的单位阶跃响应,记为g(t),如下图所示。 系统的单位冲激响应h (t )包含了系统的固有特性,它是由系统本身的结构及参数所决定的,与系统的输入无关。我们只要知道了系统的冲激响应,即可求得系统在不同激励下产生的响应。因此,求解系统的冲激响应h(t )对我们进行连续系统的分析具有非常重要的意义。 在MATLAB 中有专门用于求解连续系统冲激响应和阶跃响应, 并绘制其时域波形的函数impulse( ) 和step( )。如果系统输入为f (t ),冲激响应为h(t),系统的零状态响应为y (t ),则有:()()()y t h t f t =*。 若已知系统的输入信号及初始状态,我们便可以用微分方程的经典时域求解方法,求出系统的响应。但是对于高阶系统,手工计算这一问题的过程非常困难和繁琐。 在MATLAB 中,应用lsim( )函数很容易就能对上述微分方程所描述的系统的响应进行仿真,求出系统在任意激励信号作用下的响应。lsim( )函数不仅能够求出连续系统在指定的任意时间范围内系统响应的数值解,而且还能同时绘制出系统响应的时域波形图。 以上各函数的调用格式如下: ⑴ impulse( ) 函数 函数impulse( )将绘制出由向量a 和b 所表示的连续系统在指定时间范围内的单位冲激响应h (t )的时域波形图,并能求出指定时间范围内冲激响应的数值解。

计算机仿真实训实验报告实验1-4

实验一 熟悉MATLAB 工作环境 16电气5班 周树楠 20160500529 一、实验目的 1.熟悉启动和退出MATLAB 软件的方法。 2.熟悉MATLAB 软件的运行环境。 3.熟悉MATLAB 的基本操作。 二、实验设备及条件 计算机一台(带有MATLAB6.0以上的软件境)。 三、实验内容 1.练习下面指令: cd,clear,dir,path,help,who,whos,save,load 。 2.建立自己的工作目录MYBIN 和MYDATA ,并将它们分别加到搜索路径的前面或者后面。 3.求23)]47(*212[÷-+的算术运算结果。 4.M 文件的建立,建立M 文件,求出下列表达式的值: ?? ????-+=++=+= 545.0212),1ln(21 185sin 2222 1i x x x z e z o 其中

5.利用MATLAB的帮助功能分别查询inv、plot、max、round函数的功能和用法。 四、运行环境介绍及注意事项 1.运行环境介绍 打开Matlab软件运行环境有图1-1所示的界面

图1-1 MATLAB的用户界面 操作界面主要的介绍如下: 指令窗( Command Window ),在该窗可键入各种送给 MATLAB 运作的指令、函数、表达式,并显示除图形外的所以运算结果。 历史指令窗( Command History ),该窗记录已经运行过的指令、函数、表达式;允许用户对它们进行选择复制、重运行,以及产生 M 文件。 工作空间浏览器( Workspace Browser ),该窗口罗列出 MATLAB 工作空间中所有的变量名、大小、字节数;并且在该窗中,可对变量进行观察、编辑、提取和保存。 其它还有当前目录浏览器( Current Directory Browser )、 M 文件编辑 / 调试器(Editor/Debugger )以及帮助导航/ 浏览器(Help Navigator/Browser )等,但通常不随操作界面的出现而启动。 利用 File 菜单可方便对文件或窗口进行管理。其中 File | New 的各子菜单, M-file ( M 文件)、 Figure (图形窗口)、或 Model ( Simulink 编辑界面)分别可创建对应文件或模块。 Edit 菜单允许用户和 Windows 的剪切板交互信息。 2.在指令窗操作时应特别注意以下几点 1)所有输入的指令、公式或数值必须按下回车键以后才能执行。例如: >>(10*19+2/4-34)/2*3 (回车) ans= 234.7500 2)所有的指令、变量名称都要区分字母的大小写。 3)%作为MATLAB注释的开始标志,以后的文字不影响计算的过程。 4)应该指定输出变量名称,否则MATLAB会将运算结果直接存入默认的输出变量名ans。 5)MATLAB可以将计算结果以不同的精确度的数字格式显示,可以直接在指令视窗键入不同的数字显示格式指令。例如:>>format short (这是默认的) 6)MATLAB利用了↑↓二个游标键可以将所输过的指令叫回来重复使用。按下↑则前一次输入的指令重新出现,之后再按Enter键,即再执行前一次的指令。

matlab实验报告

实验一小球做自由落体运动内容:一小球竖直方向做自由落体,并无损做往返运动。程序: theta=0:0.01:2*pi x=cos(theta) y=sin(theta) l=1 v=1 while l<10 for t=1:10 y=y+(-1)^l*v*t plot(x,y,[-1,1],[-56,2],'.') axis equal pause(0.1) end l=l+1 end 结果:

-50 -40 -30 -20 -10 收获:通过运用小球自由落体规律,及(-1)^n 来实现无损往 返运动! 实验二 旋转五角星 内容:一个五角星在圆内匀速旋转 程序:x=[2 2 2 2 2 2] y=[0 4/5*pi 8/5*pi 2/5*pi 6/5*pi 0] y1=2*sin(y) x1=2*cos(y) theta=0:4/5*pi:4*pi

x2=2*cos(theta) y2=2*sin(theta) plot(x,y,x1,y1,x2,y2) axis equal theta1=theta+pi/10 x2=2*cos(theta1) y2=2*sin(theta1) plot(x2,y2) axis equal theta=0:4/5*pi:4*pi for rot=pi/10:pi/10:2*pi x=2*cos(theta+rot) y=2*sin(theta+rot) plot(x,y) pause(0.1) end 结果:

-2 -1.5-1-0.500.51 1.52 -2-1.5-1-0.500.511.5 2 收获:通过theta1=theta+pi/10,我们可以实现五角星在圆内匀速 旋转! 实验三 转动的自行车 内容:一辆自行车在圆内匀速转动 程序:x=-4:0.08:4; y=sqrt(16-x.^2); theta1=-pi/2:0.01*pi:3*pi/2; x3=0.5*cos(theta1); y3=0.5*sin(theta1); theta=-pi/2+0.02*pi for k=1:100

MATLAB程序设计教程(第二版)第三章实验报告下载

大学社区网收集整理https://www.360docs.net/doc/976268003.html, 评分 日期湖南商学院北津学院实验报告 课程名称MATLAB科学计算编程语言 实验名称MATLAB程序设计 专业班级信科1121班 姓名xxx 学号xxx 实验日期2012年11月5日 2012—2013学年度第一学期 一、实验目的 1.掌握利用if语句、switch语句实现选择结构的方法。 2.掌握利用for语句、while语句实现循环结构的方法。 3.熟悉利用向量运算来代替循环操作的方法并理解MATLAB程序设计的特点 4.掌握定义和调用MATLAB函数的方法。

二、实验环境 系统windows7旗舰版 处理器Intel(R)Core(TM)i7-3610M CPU @ 2.30GHz 安装内存 4.00GB (3.07GB 可用)系统类型64位操作系统运行环境 MATLAB 5.3 三、实验基本原理 利用上课所学知识解决以下问题: 1.从键盘输入一个3位数的整数,将它反向输出。如输入639,输出936。 2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。 要求: (1)分别用if 语句和switch 语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。3.输入20个数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB 的max 函数、min 函数来实现。 4.23.0ln )3.0sin(23.03.0a a e e y a a +++?=?,当a 取-3.0、-2.9、-2.8、…、2.8、2.9、 3.0时,求各点的函数值。要求分别用顺序结构和循环结构实现。 5.当n 分别取100、1000、10000时,求下列各式的值: (1)) 6...(n 1...31211122222π=+++++(2)) 2...()12)(12()2)(2(...756653443122π =??? ?????+?????????××????????××????????××n n n n 要求分别用循环结构和向量运算(使用sum 函数)来实现。 6.建立5×6矩阵,要求输出矩阵第n 行元素。当n 值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。 7已知,o999 ) 20()30()40(f f f y += (1)当)5ln(10)(2 ++=n n n f 时,y 的值是多小。 (2)当+×+×+×=433221)(n f …+)1(+×n n 时,y 的值是多小。 8.先用函数的递归调用定义一个函数文件求 ∑=n i m i 1,然后调用该函数文件求

计算机仿真实验-基于Simulink的简单电力系统仿真参考资料

实验七 基于Simulink 的简单电力系统仿真实验 一. 实验目的 1) 熟悉Simulink 的工作环境及SimPowerSystems 功能模块库; 2) 掌握Simulink 的的powergui 模块的应用; 3) 掌握发电机的工作原理及稳态电力系统的计算方法; 4)掌握开关电源的工作原理及其工作特点; 5)掌握PID 控制对系统输出特性的影响。 二.实验内容与要求 单机无穷大电力系统如图7-1所示。平衡节点电压044030 V V =∠?。负荷功率10L P kW =。线路参数:电阻1l R =Ω;电感0.01l L H =。发电机额定参数:额定功率100n P kW =;额定电压440 3 n V V =;额定励磁电流70 fn i A =;额定频率50n f Hz =。发电机定子侧参数:0.26s R =Ω,1 1.14 L mH =,13.7 md L mH =,11 mq L mH =。发电机转子侧参数:0.13f R =Ω,1 2.1 fd L mH =。发电机阻尼绕组参数:0.0224kd R =Ω,1 1.4 kd L mH =,10.02kq R =Ω,11 1 kq L mH =。发电机转动惯量和极对数分别为224.9 J kgm =和2p =。发电机输出功率050 e P kW =时,系统运行达到稳态状态。在发电机输出电磁功率分别为170 e P kW =和2100 e P kW =时,分析发电机、平衡节点电源和负载的电流、电磁功率变化曲线,以及发电机转速和功率角的变化曲线。

G 发电机节点 V 负 荷 l R l L L P 图 7.1 单机无穷大系统结构图 输电线路 三.实验步骤 1. 建立系统仿真模型 同步电机模块有2个输入端子、1个输出端子和3个电气连接端子。模块的第1个输入端子(Pm)为电机的机械功率。当机械功率为正时,表示同步电机运行方式为发电机模式;当机械功率为负时,表示同步电机运行方式为电动机模式。在发电机模式下,输入可以是一个正的常数,也可以是一个函数或者是原动机模块的输出;在电动机模式下,输入通常是一个负的常数或者是函数。模块的第2个输入端子(Vf)是励磁电压,在发电机模式下可以由励磁模块提供,在电动机模式下为一个常数。 在Simulink仿真环境中打开Simulink库,找出相应的单元部件模型,构造仿真模型,三相电压源幅值为4403,频率为50Hz。按图连接好线路,设置参数,建立其仿真模型,仿真时间为5s,仿真方法为ode23tb,并对各个单元部件模型的参数进行修改,如图所示。

参考答案Matlab实验报告

实验一 Matlab基础知识 一、实验目的: 1.熟悉启动和退出Matlab的方法。 2.熟悉Matlab命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握Matlab各种表达式的书写规则以及常用函数的使 用。 二、实验内容: 1.求[100,999]之间能被21整除的数的个数。(rem) 2.建立一个字符串向量,删除其中的大写字母。(find) 3.输入矩阵,并找出其中大于或等于5的元素。(find) 4.不采用循环的形式求出和式 63 1 2i i= ∑ 的数值解。(sum) 三、实验步骤: ●求[100,199]之间能被21整除的数的个数。(rem) 1.开始→程序→Matlab 2.输入命令: ?m=100:999; ?p=rem(m,21); ?q=sum(p==0) ans=43 ●建立一个字符串向量,删除其中的大写字母。(find) 1.输入命令:

?k=input('’,’s’); Eie48458DHUEI4778 ?f=find(k>=’A’&k<=’Z’); f=9 10 11 12 13 ?k(f)=[ ] K=eie484584778 ●输入矩阵,并找出其中大于或等于5的元素。(find) 1.输入命令: ?h=[4 8 10;3 6 9; 5 7 3]; ?[i,j]=find(h>=5) i=3 j=1 1 2 2 2 3 2 1 3 2 3 ●不采用循环的形式求出和式的数值解。(sum) 1.输入命令: ?w=1:63; ?q=sum(2.^w) q=1.8447e+019

实验二 Matlab 基本程序 一、 实验目的: 1. 熟悉Matlab 的环境与工作空间。 2. 熟悉M 文件与M 函数的编写与应用。 3. 熟悉Matlab 的控制语句。 4. 掌握if,switch,for 等语句的使用。 二、 实验内容: 1. 根据y=1+1/3+1/5+……+1/(2n-1),编程求:y<5时最大n 值以及对应的y 值。 2. 编程完成,对输入的函数的百分制成绩进行等绩转换,90~100为优,80~89为良,70~79为中,60~69为及格。 3. 编写M 函数文件表示函数 ,并分别求x=12和56时的函数值。 4. 编程求分段函数 2226;03 56;0532 1;x x x x y x x x x x x x +-<≠=-+≤<≠≠-+且且及其它,并求输入x=[-5.0,-3.0,1.0,2.0,2.5,3.0,3.5]时的输出y 。 三、 实验步骤: 根据y=1+1/3+1/5+……+1/(2n-1),编程求:y<5时最大n 值以及对应的y 值。 1. 打开Matlab ,新建M 文件 2. 输入命令: 51022-+x

MATLAB实验报告实例

MATLAB课程设计 院(系)数学与计算机学院 专业信息与计算科学 班级 学生姓名 学号 指导老师赵军产 提交日期

实验内容: 1. Taylor逼近的直观演示用Taylor 多项式逼近y = sin x. 已知正弦函数的Taylor 逼近式为 ∑= - - -- =≈ n k k k k x x P x 1 1 2 1 !)1 2( )1 ( ) ( sin. 实验目的: 利用Taylor多项式逼近y = sin x,并用图形直观的演示。 实验结果报告(含基本步骤、主要程序清单、运行结果及异常情况记录等): 1.将k从1取到5,得到相应的P = x-1/6*x^3+1/120*x^5-1/5040*x^7+1/362880*x^9; 2.用MATLAB进行Taylor逼近,取x的范围是(- 3.2,3.2);程序清单如下: syms x; y = sin(x); p = x - (x^3)/6 + (x^5)/120 - (x^7)/5040 + (x^9)/362880 x1 = -3.2:0.01:3.2; ya = sin(x1); y1 = subs(p,x,x1); plot(x1,ya,'-',x1,y1)

4.程序运行正常。 思考与深入: 取y = sin x 的Taylor 多项式为P 的逼近效果很良好,基本接近y = sin x 的图像,不过随着k 的取值变多,逼近的效果会越来越好。 实验内容: 2. 数据插值 在(,)[8,8][8,8]x y =-?-区域内绘制下面曲面的图形: 222 2 sin( )x y z x y += + 并比较线性、立方及样条插值的结果。 .

计算机仿真实验报告实验

《计算机仿真》上机实验报告 姓名: 学号: 2012104021 专业:测控 班级: 12级

实验一常微分方程的求解及系统数学模型的转换一.实验目的 通过实验熟悉计算机仿真中常用到的Matlab指令的使用方法,掌握常微分方程求解指令和模型表示及转换指令,为进一步从事有关仿真设计和研究工作打下基础。 二. 实验设备 个人计算机,Matlab软件。 三. 实验准备 预习本实验有关内容(如教材第2、3、5章中的相应指令说明和例题),编写本次仿真练习题的相应程序。 四. 实验内容 1. Matlab中常微分方程求解指令的使用 题目一:请用MATLAB的ODE45算法分别求解下列二个方程。要求:1.编写出Matlab 仿真程序;2.画出方程解的图形并对图形进行简要分析;3.分析下列二个方程的关系。 1.2. 1.function fun=funl(t,x) fun=-x^2;

[t,x]=ode45('fun1',[0,20],[1]); figure(1);plot(t,x); grid 2.function fun=fun2(t,x) fun=x^2; [t,x]=ode45('fun2',[0,20],[-1]); figure(2);plot(t,x); grid

题目二:下面方程组用在人口动力学中,可以表达为单一化的捕食者-被捕食者模式(例如,狐狸和兔子)。其中1x 表示被捕食者, 2x 表示捕食者。如果被捕食者有无限的食物,并且不会出现捕食者。于是有1'1x x ,则这个式子是以指数形式增长的。大量的被捕食者将会使捕食者的数量增长;同样,越来越少的捕食者会使被捕食者的数量增长。而且,人口数量也会增长。请分别调用ODE45、ODE23算法求解下面方程组。要求编写出Matlab 仿真程序、画出方程组解的图形并对图形进行分析和比较。 1.ODE45

matlab实验报告

Matlab实验报告 实验二图像处理 一、实验目的 (1)通过应用MA TLAB语言编程实现对图像的处理,进一步熟悉MATLAB软件的编程及应用; (2)通过实验进一步掌握图像处理的基本技术和方法。 二、实验内容及代码 ㈠.应用MA TLAB语言编写显示一幅灰度图像、二值图像、索引图像及彩色图像的程序,并进行相互之间的转换 首先,在matlab页面中的current directory下打开存放图像的文件夹。 1.显示各种图像 ⑴显示彩色图像: ①代码:>> mousetif=imread('tif.TIF'); >> image(mousetif) 显示截图: ②代码:>> mousetif=imread('tif.TIF'); >> imshow(mousetif) 显示截图:

③代码:mousetif=imread('tif.TIF'); subimage(mousetif) 显示截图: 显示截图:

⑵显示二值图像 ①代码:>> I=imread('单色bmp.bmp'); >> imagesc(I,[0 2]) 显示截图: ②代码:>> I=imread('单色bmp.bmp');

>> imshow(I,2) 显示截图: ③代码:>> I=imread('单色bmp.bmp'); >> subimage(I) 显示截图:

⑶显示灰度图像 ①代码:>> I1=imread('256bmp.bmp'); >> imagesc(I1,[0,256]) 显示截图: 代码:>> I1=imread('256bmp.bmp'); >> colormap(gray); >> subplot(1,2,1); >> imagesc(I1,[0,256]); >> title('灰度级为[0 256]的mouse.bmp图'); >> subplot(1,2,2); >> imagesc(I1,[0,64]); >> colormap(gray); >> title('灰度级为[0 64]的mouse.bmp图'); 显示截图:

基于Matlab的空间滤波实验的计算机仿真.

35 基于Matlab 的空间滤波实验的计算机仿真 张奇辉,王洪,蓝发超 (华南理工大学物理科学与技术学院,广东广州 510640 摘要:利用阿贝-波特实验装置和空间滤波系统,从改变频谱入手改造一幅光学图形进行光学信息处理。在 此基础上,通过Matlab 环境编写程序完成阿贝-波特实验的物理模型的构建并进行计算机模拟实验。 关键词:计算机模拟;Matlab ;空间滤波 中图分类号:TP391.9 文献标识码:A 文章编号:1003-7551(200801-0035-04 1 引言 在工程设计领域中,人们通过对研究对象建立模型,用计算机程序实现系统的运行和得到运行结果,寻找出最优方案,然后再予以物理实现,这就是计算机仿真科学。在计算机日益普及的今天,计算机仿真技术作为虚拟实验手段已经成为计算机应用的一个重要分支。它是继理论分析和实物实验之后,认识客观规律性的新型手段。作为科学计算软件,Matlab 的特点是使用方便、输入便捷、运算功能齐全,而且有大量的函数可供使用。因此本文提出基于Matlab 软件,通过在频谱面上设置滤波器对空间频谱的处理,实现对阿贝-波特 实验装置和空间滤波系统的模拟。为了实现仿真实验操作的方便,本文设计出了图形用户可操作界面(GUI 。 2 空间滤波原理

根据阿贝成像原理,相干光学成像过程可分为两步:第一步称为分频过程,即从物平面到光源的共轭像平面或曰频谱面,由输入的物作为衍射屏对照射光波产生夫琅和费衍射;第二步称为合频或频谱综合过程,即从频谱面到输入物的共轭像平面,被分解的频谱成分经进一步的衍射后再次叠加形成输入物的共轭像。按照傅里叶变换理论,两步成像过程实际上是光学系统对携带输入物信息的二维光场的复振幅分布进行的两次傅里叶变换过程。 以图1所示4f 成像系统为例,此时输入平面O(即物平面位于透镜1L 的前焦平面,输出平面I(即像平面位于透镜1L 的后焦平面。透镜1L 和2L 分别起分频(傅里叶变换和合频(逆傅里叶变换作用。设输入图像的复振幅分布为,(y x g ,透镜1L 后焦平面T(即频谱面上的复振幅分布为,(ηξG ,按照傅里叶光学理论,当1L 的孔径无限大时,函数,(ηξG 即等于,(y x g 的傅里叶变换,而,(y x g 为,(ηξG 的傅里叶逆变换,即 (,(,exp i2(d d x y x y G f f g x y f x f y x y π∞ ?∞ ??=?+??∫∫(1 (,(,exp[i2(]d d g x y G x y ξηπμνμν∞∞ ?∞?∞=+∫∫ (2 其中/f μξλ=,/f νηλ=,表示光场(,G ξη的空间频率。设(','g x y 为透镜2L 后焦平面I(输出平面上的复振幅分布,同样,当2L 的孔径无限大时,(','g x y 就等于的傅里叶变换: (','(,exp[i2('']d d g x y G x y ξηπμνμν∞∞?∞?∞= +∫∫ (3 可以得 (','(,g x y g x y ∝?? (4 即输出图像是输入图像的倒置,且在几何上相似。

相关文档
最新文档