基于Matlab的光学衍射实验仿真

基于Matlab的光学衍射实验仿真
基于Matlab的光学衍射实验仿真

基于Matlab的光学衍射实验仿真

()

摘要通过Matlab软件编程,实现对矩孔夫琅和费衍射的计算机仿真,结果表明:该方法直观正确的展示了衍射这一光学现象,操作性强,仿真度高,取得了较好的仿真效果。

关键词夫琅和费衍射;Matlab;仿真

1引言

物理光学是高校物理学专业的必修课,其中,光的衍射既是该门课程的重点内容,也是人们研究的热点。然而由于光学衍射部分公式繁多,规律抽象,学生对相应的光学图像和物理过程的理解有一定的困难,大大影响了教学效果。当然,在实际中可以通过加强实验教学来改善教学效果,但是光学实验对仪器设备和人员掌握的技术水平要求都较高,同时实验中物理现象容易受外界因素的影响,这给光学教学带来了较大的困难1【-5】。

随着计算机技术的迅速发展,现代化的教育模式走进了课堂,利用计算机对光学现象进行仿真也成为一种可能。Matlab是一款集数值分析、符号运算、图形处理、系统仿真等功能于一体的科学与工程计算软件,它具有编程效率高、简单易学、人机交互好、可视化功能、拓展性强等优点[6-8],利用Matlab编程仿真光学现象只需改变程序中的参数,就可以生成不同实验条件下的光学图像,使实验效果更为形象逼真。在课堂教学中,能快速的验证实验理论,使学生更直观的理解理论知识,接受科学事实。本文以矩孔夫琅和费衍射为例,介绍了Matlab在光学衍射实验仿真中的应用。

2 衍射基本原理

衍射是光波在空间或物质中传播的基本方式。实际上,光波在传播的过程中,只要光波波面受到某种限制,光波会绕过障碍物偏离直线传播而进入几何阴影,并在屏幕上出现光强分布不均匀的现象,称为光的衍射。根据障碍物到光源和考察点的距离,把衍射现象分为两类:菲涅尔衍射和夫琅和费衍射。研究不同孔径在不同实验条件下的光学衍射特性,对现代光学有重要的意义。

如图1所示,衍射规律可用菲涅尔衍射积分表示,其合振幅为[9]:

(1)

其中,K是孔径平面,E是观察平面,r是衍射孔径平面Q到观察平面P的距离,d是衍射孔径平面O到观察平面P0的距离,cosθ是倾斜因子,k=2π/λ是光波波数,λ是光波波长,x1,y1和x,y分别是孔径平面和观察平面的坐标。由图(1)中可得

(2)

根据r的不同取值,产生两种不同的衍射,即菲涅尔衍射和夫琅和费衍射。

当障碍物到光源和考察点的距离都是无限的情况,式(1)的合振幅分布可进一步表示为:

(3)

由此衍射积分得到的合振幅分布称为夫琅和费衍射。

3 仿真过程及结果

基于上述原理分析,假设矩孔夫琅和费衍射透镜焦距f=1000mm,光波长λ=500nm,矩形的孔径宽a=1mm,长b=2mm,根据公式(3),通过Matlab编程,则得到相应的仿真结果。

矩孔夫琅和费衍射仿真程序如下:

ocallength=1000;

lambda=500;

a=1.0;b=2.0;

resolution=64;

center=(resolution)/2;

A=zeros(resolution,resolution);

for i=1:1:resolution

for j=1:1:resolution

if abs(i-center)

A(j,i)=255;

end

end

end

E=ones(resolution,resolution);

k=2*pi*10000/focallength/lambda;

imag=sqrt(-1);

for m=1:1:resolution

x=m-center;

f or n=1:1:resolution

y=n-center;

C=ones(resolution,resolution);

for i=1:1:resolution

p=i-center;

for j=1:1:resolution

q=j-center;

C(j,i)=A(j,i)*exp(-imag*k*(x*p+y*q)); end

end

E(n,m)=sum(C(:));

end

end

E=abs(E);

I=E.^2;I=I.^(1/3);

I=I.*255/max(max(I));

L=I;I=I+256;

CM=[pink(255).^(2/3);gray(255)];

Colormap(CM);

edge=(resolution-1)/20;

[X,Y]=meshgrid([-edge:0.1:edge]);

x=linspace(-edge,edge,resolution);

y=linspace(-edge,edge,resolution);

subplot(1,2,1);

surf(x,y,L);

axis([-edge,edge,-edge,edge,0,255]);

caxis([0,511]);

subplot(1,2,2);

image(x,y,I);

axis([-edge,edge,-edge,edge,0,511]);

view(2);

axis square;

运行上述程序即可获得矩孔夫琅和费衍射的二维和三维光强分布图,如图2和图3所示,由图可见,矩孔夫琅和费衍射图样是明暗相间的条纹,且中央亮斑最亮,其余亮斑都比中央亮斑暗。当焦距和波长一定时,孔径越大,衍射的限制越小;孔径越小,则相反。这与理论知识,中央亮斑的强度最大,其他亮斑的强度比中央亮斑要小得多的分析一致,验证了数仿真现象的准确性和可行性。

4 结束语

在光学衍射教学中,光学理论复杂抽象,实验演示难度大。本文基于Matlab仿真技术,对光学衍射中的重要例子夫琅和费衍射进行模拟仿真,获得直观的衍射图像,仿真结果与实验结果吻合。通过将Matlab与光学教学相结合,有利于学生对物理概念的理解,克服了苛刻的光学实验条件,可有效提高教学效果。

【参考文献】

[1]蓝海江.光栅衍射及其特例MATLAB仿真[J].柳州师专学报,2008,23(3):121-124.

[2]崔祥霞,杨兆华,陈君.基于MATLAB光学衍射与干涉实验仿真[J].泰山学院学报,2009,31(3):109-113.

[3]杨应平,赵盾,胡昌奎,等.夫琅和费衍射实验仿真平台的构建[J].武汉理工大学学报,2010,32(5):721-724.

[4]陈湛旭.夫琅和费衍射现象的计算机模拟[J].广东技术师范学院学报,2008,(3):53-55.

[5]曲伟娟.基于Matlab的光学实验仿真[J].西北工业大学学报,2004,21(3):21-24.

[6]陈怀琛.MATLAB及其在理工课程中的应用指南[M].西安:西安电子科技大学出版社,2007.

[7]谢嘉宁,赵建林.光栅衍射现象的计算机仿真分析[J].佛山科学技术学院学报:自然科学版,2002,20(2):15-18.

[8]庄建,青莉.基于Matlab的光学实验仿真平台[J].成都大学学报:自然科学版,2006,25(1):70-72.

[9]姚启均.光学教程[M].北京:高等教育出版社,2002.

MATLAB仿真实验报告

MATLAB 仿真实验报告 课题名称:MATLAB 仿真——图像处理 学院:机电与信息工程学院 专业:电子信息科学与技术 年级班级:2012级电子二班 一、实验目的 1、掌握MATLAB处理图像的相关操作,熟悉相关的函数以及基本的MATLAB语句。 2、掌握对多维图像处理的相关技能,理解多维图像的相关性质 3、熟悉Help 命令的使用,掌握对相关函数的查找,了解Demos下的MATLAB自带的原函数文件。 4、熟练掌握部分绘图函数的应用,能够处理多维图像。 二、实验条件

MATLAB调试环境以及相关图像处理的基本MATLAB语句,会使用Help命令进行相关函数查找 三、实验内容 1、nddemo.m函数文件的相关介绍 Manipulating Multidimensional Arrays MATLAB supports arrays with more than two dimensions. Multidimensional arrays can be numeric, character, cell, or structure arrays. Multidimensional arrays can be used to represent multivariate data. MATLAB provides a number of functions that directly support multidimensional arrays. Contents : ●Creating multi-dimensional arrays 创建多维数组 ●Finding the dimensions寻找尺寸 ●Accessing elements 访问元素 ●Manipulating multi-dimensional arrays操纵多维数组 ●Selecting 2D matrices from multi-dimensional arrays从多维数组中选择二维矩 阵 (1)、Creating multi-dimensional arrays Multidimensional arrays in MATLAB are created the same way as two-dimensional arrays. For example, first define the 3 by 3 matrix, and then add a third dimension. The CAT function is a useful tool for building multidimensional arrays. B = cat(DIM,A1,A2,...) builds a multidimensional array by concatenating(联系起来)A1, A2 ... along the dimension DIM. Calls to CAT can be nested(嵌套). (2)、Finding the dimensions SIZE and NDIMS return the size and number of dimensions of matrices. (3)、Accessing elements To access a single element of a multidimensional array, use integer subscripts(整数下标). (4)、Manipulating multi-dimensional arrays

Matlab通信系统仿真实验报告

Matlab通信原理仿真 学号: 2142402 姓名:圣斌

实验一Matlab 基本语法与信号系统分析 一、实验目的: 1、掌握MATLAB的基本绘图方法; 2、实现绘制复指数信号的时域波形。 二、实验设备与软件环境: 1、实验设备:计算机 2、软件环境:MATLAB R2009a 三、实验内容: 1、MATLAB为用户提供了结果可视化功能,只要在命令行窗口输入相应的命令,结果就会用图形直接表示出来。 MATLAB程序如下: x = -pi::pi; y1 = sin(x); y2 = cos(x); %准备绘图数据 figure(1); %打开图形窗口 subplot(2,1,1); %确定第一幅图绘图窗口 plot(x,y1); %以x,y1绘图 title('plot(x,y1)'); %为第一幅图取名为’plot(x,y1)’ grid on; %为第一幅图绘制网格线 subplot(2,1,2) %确定第二幅图绘图窗口 plot(x,y2); %以x,y2绘图 xlabel('time'),ylabel('y') %第二幅图横坐标为’time’,纵坐标为’y’运行结果如下图: 2、上例中的图形使用的是默认的颜色和线型,MATLAB中提供了多种颜色和线型,并且可以绘制出脉冲图、误差条形图等多种形式图: MATLAB程序如下: x=-pi:.1:pi; y1=sin (x); y2=cos (x); figure (1); %subplot (2,1,1); plot (x,y1); title ('plot (x,y1)'); grid on %subplot (2,1,2); plot (x,y2);

基于matlab干涉系统仿真_

《工程光学》综合性练习一题目:基于matlab的干涉系统仿真 学院精密仪器与光电子工程学院 专业测控技术与仪器

综合练习大作业一 一、要求 3-4人组成小组,对下面给出的各题目利用Matlab等工具进行仿真。 二、仿真题目 1、对于杨氏双缝干涉,改变双缝的缝宽和缝间距,观察干涉图样变化 ①原理图 图中参数 光线波长:lam=500纳米; 双缝距离:d=0.1毫米;(可调) 双缝距接收屏距离:D=1米; 接收屏范围:xs:-0.005~0.005 ys:-0.005~0.005 光源振幅:AI=A2=1; (单位振幅,可调) ②matlab代码: clear; lam=500e-9; %设定波长lam(500纳米) d=0.5e-3; %设定两缝之间距离d(0.5毫米) D=1; %双缝到接收屏距离D(1米) A1=1; %初始两光源均为单位振幅 A2=1; xm=0.005; ym=xm; %接受屏的范围ym,xm(0.01*0.01矩形) n=1001; xs=linspace(-xm,xm,n); %用线性采样法生成两个一位数组xs,ys %(n为总点数) ys=linspace(-ym,ym,n); L1=sqrt((xs-d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源1距离r1 L2=sqrt((xs+d/2).^2+ys.^2+D^2);%光屏上点(xs,ys)距光源2距离r2 E1=A1./sqrt(L1).*exp(1i*L1*2*pi/lam);%光源1在接受屏上复振幅E1 E2=A2./sqrt(L2).*exp(1i*L2*2*pi/lam);%光源2在接受屏上复振幅E2 E=E1+E2; %复振幅叠加为合成振幅E

MATLAB仿真实验全部

实验一 MATLAB 及仿真实验(控制系统的时域分析) 一、实验目的 学习利用MATLAB 进行控制系统时域分析,包括典型响应、判断系统稳定性和分析系统的动态特性; 二、预习要点 1、 系统的典型响应有哪些 2、 如何判断系统稳定性 3、 系统的动态性能指标有哪些 三、实验方法 (一) 四种典型响应 1、 阶跃响应: 阶跃响应常用格式: 1、)(sys step ;其中sys 可以为连续系统,也可为离散系统。 2、),(Tn sys step ;表示时间范围0---Tn 。 3、),(T sys step ;表示时间范围向量T 指定。 4、),(T sys step Y =;可详细了解某段时间的输入、输出情况。 2、 脉冲响应: 脉冲函数在数学上的精确定义:0 ,0)(1)(0 ?==?∞ t x f dx x f 其拉氏变换为:) ()()()(1)(s G s f s G s Y s f === 所以脉冲响应即为传函的反拉氏变换。 脉冲响应函数常用格式: ① )(sys impulse ; ② ); ,();,(T sys impulse Tn sys impulse ③ ),(T sys impulse Y = (二) 分析系统稳定性 有以下三种方法: 1、 利用pzmap 绘制连续系统的零极点图; 2、 利用tf2zp 求出系统零极点; 3、 利用roots 求分母多项式的根来确定系统的极点 (三) 系统的动态特性分析 Matlab 提供了求取连续系统的单位阶跃响应函数step 、单位脉冲响应函数impulse 、零输入响应函数initial 以及任意输入下的仿真函数lsim.

MATLAB通信建模实验仿真实验报告

实验1:上采样与内插 一、实验目的 1、了解上采样与内插的基本原理和方法。 2、掌握上采样与内插的matlab程序的设计方法。 二、实验原理 上采样提高采样频率。上采样使得周期降低M倍,即新采样周期Tu和原有采样周期Ts的关系是T u=T s/M,根据对应的连续信号x(t),上采样过程从原有采样值x(kT s)生成新采样值x(kT u)=x(kT s/M)。操作的结果是在每两个采样值之间放入M-1个零值样点。 更实用的内插器是线性内插器,线性内插器的脉冲响应定义如下: 上采样值x(kT u)=x(kT s/M)通过与线性内插器的脉冲响应的卷积来完成内插。 三、实验内容 仿真正弦波采样和内插,通过基本采样x(k),用M=6产生上采样x u(k),由M=6线性内插得到样点序列x i(k)。 四、实验程序 % File: c3_upsampex.m M = 6; % upsample factor h = c3_lininterp(M); % imp response of linear interpolator t = 0:10; % time vector tu = 0:60; % upsampled time vector x = sin(2*pi*t/10); % original samples xu = c3_upsamp(x,M); % upsampled sequence subplot(3,1,1) stem(t,x,'k.') ylabel('x') subplot(3,1,2) stem(tu,xu,'k.') ylabel('xu') xi = conv(h,xu); subplot(3,1,3) stem(xi,'k.') ylabel('xi') % End of script file. % File: c3_upsample.m function out=c3_upsamp(in,M)

基于Matlab的光学衍射仿真

基于Matlab的光学衍射实验仿真 摘要 光学试验中衍射实验是非常重要的实验. 光的衍射是指光在传播过程中遇到障碍物时能够绕过障碍物的边缘前进的现象, 光的衍射现象为光的波动说提供了有力的证据. 衍射系统一般有光源、衍射屏和接受屏组成, 按照它们相互距离的大小可将衍射分为两大类, 一类是衍射屏与光源和接受屏的距离都是无穷远时的衍射, 称为夫琅禾费衍射, 一类是衍射屏与光源或接受屏的距离为有限远时的衍射称为菲涅尔衍射。 本文用Matlab软件对典型的衍射现象建立了数学模型,对衍射光强分布进行了编程运算,对衍射实验进行了仿真。最后创建了交互式GUI界面,用户可以通过改变输入参数模拟不同条件下的衍射条纹。 本文对于衍射概念、区别、原理及光强分布编程做了详细全面的介绍 关键字:Matlab;衍射;仿真;GUI界面;光学实验

Matlab-based Simulation of Optical Diffraction Experiment Abstract Optical diffraction experiment is a very important experiment. is the diffraction of light propagation of light in the obstacles encountered in the process to bypass the obstacles when the forward edge of the phenomenon of light diffraction phenomenon of the wave theory of light provides a strong Evidence. diffraction systems generally have light, diffraction screen and accept the screen composition, size according to their distance from each other diffraction can be divided into two categories, one is the diffraction screen and the light source and the receiving screen is infinity when the distance between the diffraction Known as Fraunhofer diffraction, one is diffraction screen and the light source or accept a limited away from the screen when the diffraction is called Fresnel diffraction. In this paper, Matlab software on a typical phenomenon of a mathematical model of diffraction, the diffraction intensity distribution of the programming operation, the diffraction experiment is simulated. Finally, create an interactive GUI interface, users can change the input parameters to simulate different conditions of the diffraction pattern. This concept of the diffraction, difference, intensity distribution of programming principles and a detailed comprehensive description Key word: matlab;diffraction; simulation; gui interface; optical experiment

工程光学matlab仿真设计

工程光学仿真实验报告 1、氏双缝干涉实验 (1)氏干涉模型 氏双缝干涉实验装置如图1所示: S 发出的光 波射到光屏上的两个小孔S1 和S2 , S1 和S2 相 距很近,且到S 等距;从S1 和S2 分别发散出的光 波是由同一光波分出来的,所以是相干光波,它们在距离光屏为D 的屏幕上叠加,形成一定的干涉图 样。 图1.1 氏双缝干涉 假设S 是单色点光源,考察屏幕上某一点P ,从S1 和S2 发出的光波在该点叠加 产生的光强度为: I = I1 + I2 + 2 I1 I2 cos δ (1-1) 式中, I1 和I2 分别是两光波在屏幕上的光强度, 若实验装置中S1 和S2 两个缝 大小相等, 则有 I1 = I2 =I0 (1-2) δ= 2π(r2 - r1)/λ(1-3) (1-3) 2221)2/(D y d x r +++= (1-4) 2222)2/(D y d x r ++-= (1-5) 可得 xd r r 22 122=- (1-6) 因此光程差:12r r -=? (1-7) 则可以得到条纹的强度变化规律- 强度分布公式: ]/)([cos 1220λπd r r I I -= (1-8) (2)仿真程序 clear; Lambda=650; %设定波长,以Lambda 表示波长 Lambda=Lambda*1e-9; d=input('输入两个缝的间距 )'); %设定两缝之间的距离,以d 表示两缝之间距离 d=d*0.001; Z=0.5; %设定从缝到屏幕之间的距离,用Z 表示

yMax=5*Lambda*Z/d;xs=yMax; %设定y方向和x方向的围 Ny=101;ys=linspace(-yMax,yMax,Ny);%产生一个一维数组ys,Ny是此次采样总点数 %采样的围从- ymax到ymax,采样的数组命名为ys %此数组装的是屏幕上的采样点的纵坐标 for i=1:Ny %对屏幕上的全部点进行循环计算,则要进行Ny次计算L1=sqrt((ys(i)-d/2).^2+Z^2); L2=sqrt((ys(i)+d/2).^2+Z^2); %屏上没一点到双缝的距离L1和L2 Phi=2*pi*(L2-L1)/Lambda; %计算相位差 B(i,:)=4*cos(Phi/2).^2; %建立一个二维数组,用来装该点的光强的值 end%结束循环 NCLevels=255; %确定使用的灰度等级为255级 Br=(B/4.0)*NCLevels; %定标:使最大光强(4. 0)对应于最大灰度级(白色) subplot(1,4,1),image(xs,ys,Br); %用subplot创建和控制多坐标轴 colormap(gray(NCLevels)); %用灰度级颜色图设置色图和明暗 subplot(1,4,2),plot(B(:),ys); %把当前窗口对象分成2块矩形区域 %在第2块区域创建新的坐标轴 %把这个坐标轴设定为当前坐标轴 %然后绘制以( b (: ) , ys)为坐标相连的线title('氏双缝干涉'); (3)仿真图样及分析 a)双缝间距2mm b)双缝间距4mm

matlab光学仿真

MATLAB光学仿真实验报告

目录 一、实验目的 (3) 二、实验内容 (3) 三、实验原理 (3) 四.实验结果(各种干涉图样,) (4) 1.平面波与球面波之间的相互干涉 (4) (1)平面波与平面波方向相对的干涉 (4) (2)球面波与球面波 (5) (3)球面波与平面波 (6) 2.双缝干涉 (7) (1)经典杨氏双缝干涉 (7) (2)接收屏在侧面,且二者连线与干涉面垂直 (7) 3.多孔干涉 (8) (1)三孔干涉 (8) (2)四个孔干涉 (9) 4.多个不同方向的平面波 (10) 5.牛顿环与电磁波传播 (10) (1)牛顿环 (10) (2)模拟电磁波动画 (11) 五,实验总结与感想 (11)

一、实验目的 通过对光学现象的仿真,加深对各种光学现象本质的理解,同时,学会利用MATLAB,这种有效工具研究物理光学。 二、实验内容 这次由于时间关系,只研究了光的干涉现象,不过干涉内容很多,按照老师给的实验的提示内容,我每个都做了。并且自己还加了一些内容。按先后顺序非别如下: 1.平面波与球面波之间的相互干涉 (1)平面波与平面波方向相对的干涉,并且调整角度,方向相对干涉。 (2)球面波与球面波,这个研究的比较多,我分别研究了两个光源,三个,四个以及六个光源在与之共面的平面上的干涉,得到许多精美的图案。 (3)球面波与平面波 2.经典的杨氏双缝干涉 由于杨氏干涉比较重要,所以研究的时间相对较长,这个我为了更好的调整参数,采用了先输入数据的方法,之后才运行得到结果,我还增加了研究非单色光的研究。 另外,我还研究了与两个点光源连线相垂直的屏上的干涉,虽然这个不属于杨氏干涉,但是原理其实差不多。 3.多孔干涉 这部分其实原理差不多,只需要设置对参数。这部分分别研究了三孔和四孔的干涉,并且干涉屏的位置也不一样,分为与孔面平行和与孔面平行,总共四中情况,从中自己也找到了规律。 4.多个不同方向的平面波 这部分研究了三个不同方向的片面波与四个方向的平面波,从中得到一些图案,找到了规律。 5.模拟电磁波传播动画(代码借鉴一本参考书的)与牛顿环 为了加深对电磁波传播的理解,做了个模拟电磁波传播的动画,另外,还做了个牛顿环干涉。 三、实验原理 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括

圆孔矩孔的菲涅尔衍射模拟(matlab实现)-工程光学(20200607000913)

工程光学综合练习-----圆孔、矩孔的菲涅尔衍射模拟

圆孔和矩孔的菲涅尔衍射模拟 一、原理 由惠更斯-菲涅尔原理可知接收屏上的P点的复振幅可以表示为 其中为衍射屏上的复振幅分布, 为倾斜因子。根据基尔霍夫对此公式的 完善,有 设衍射屏上点的坐标为(x1, y1),接收屏上点的坐标为(x, y),衍射屏与接收屏间距离为z1,当满足菲涅尔近似条件时,即 此时可得到菲涅尔衍射的计算公式 把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与 x1、y1无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振 幅分布和一个二次相位因子乘积的傅里叶变换。 相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。在菲涅尔衍射中,输入变量和输出变量分别为衍射孔径平面的光场分布和观察平面的光场 以及光强分布,考虑到这三个量都是二维分布,而且Matlab主要应用于矩阵数值运算,所以本程序选择用二维矩阵来存储衍射孔径平面和观察平面的场分布,并分别以矩阵的列数和行数来对应平面的直角坐标值(x, y)以及(x1, y1)。 二、圆孔菲涅尔衍射 用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。注意使两矩阵阶次相同,考虑到运算量的要求,采样点数不能过多,所以每个屏的x和y方向各取200到300点进行运算。根据式(4),选取合适的衍射屏和接收屏尺寸和相距的

距离,模拟结果如下: 取典型的He-Ne激光器波长=632.8nm,固定衍射屏和接收屏尺寸和相距的 距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12mm,20mm,50mm 图 1(r=12mm) 图 2(r=20mm)

增量调制MATLAB仿真实验

增量调制MATLAB仿真实验

增量调制(DM)实验 一、实验目的 (1)进一步掌握MATLAB的应用。 (2)进一步掌握计算机仿真方法。 (3)学会用MATLAB软件进行增量调制(DM)仿真实验。 二、实验原理 增量调制是由PCM发展而来的模拟信号数字化的一种编码方式,它是PCM的一种特例。增量调制编码基本原理是指用一位编码,这一位码不是表示信号抽样值的大小,而是表示抽样幅度的增量特性,即采用一位二进制数码“1”或“0”来表示信号在抽样时刻的值相对于前一个抽样时刻的值是增大还是减小,增大则输出“1”码,减小则输出“0”码。输出的“1”,“0”只是表示信号相对于前一个时刻的增减,不表示信号的绝对值。 增量调制最主要的特点就是它所产生的二进制代码表示模拟信号前后两个抽样值的差别(增加、还是减少)而不是代表抽样值本身的大小,因此把它称为增量调制。在增量调制系统的发端调制后的二进制代码1和0只表示信号这一个抽样时刻相对于前一个抽样时刻是增加(用1码)还是减少(用0码)。收端译码器每收到一个1码,译码器的输出相对于前一个时刻的值上升一个量化阶,而收到一个0码,译码器的输出相对于前一个时刻的值下降一个量化阶。 增量调制(DM)是DPCM的一种简化形式。在增量调制方式下,采用1比特量化器,即用1位二进制码传输样值的增量信息,预测器是

一个单位延迟器,延迟一个采样时间间隔。预测滤波器的分子系数向量是[0,1],分母系数为1。当前样值与预测器输出的前一样值相比较,如果其差值大于零,则发1码,如果小于零则发0码。 三、实验内容 增量调制系统框图如图一所示,其中量化器是一个零值比较器,根据输入的电平极性,输出为 δ,预测器是一个单位延迟器,其输出为前一个采样时刻的解码样值,编码器也是一个零值比较器,若其输入为负值,则编码输出为0,否则输出为1。解码器将输入1,0符号转换为 δ,然后与预测值相加后得出解码样值输出,同时也作为预测器的输入 输入样值 e n e n =δsgn(e n ) 传输 n ) n n-1+δsgn(e n ) x n + - + + 预测输出 + n-1 + 预测输出 解码样值输出 x n-1 预测输入x n =x n-1+δsgn(e n ) 图一 增量调制原理框图 设输入信号为: x(t)=sin2π50t+0.5sin 2π150t 增量调制的采样间隔为1ms,量化阶距δ=0.4,单位延迟器初始值为0。建立仿真模型并求出前20个采样点使客商的编码输出序列以 解码 编码 二电平量化 单位延迟 单位 延迟

matlab与通信仿真实验指导书(上)

《Matlab与通信仿真》实验指导书(上) 刘毓杨辉徐健和煦黄庆东吉利萍编著 通信与信息工程学院 2011-1

目录 第一章 MALTAB基础知识 (1) 1.1MATLAB基础知识 (1) 1.2MATLAB基本运算 (2) 1.3MATLAB程序设计 (7) 第二章 MATLAB计算结果可视化和确知信号分析 (13) 2.1计算结果可视化 (13) 2.2确知信号分析 (17) 第三章随机信号与数字基带仿真 (23) 3.1基本原理 (23) 3.2蒙特卡罗算法 (30) 第四章模拟调制MATLAB实现 (34) 4.1模拟调制 (34) 4.2信道加性高斯白噪声 (35) 4.3AM调制解调的MATLAB实现 (36) 第五章模拟信号的数字传输 (45) 5.1脉冲编码调制 (45) 5.2低通抽样定理 (45) 5.3均匀量化原理 (46) 5.4非均匀量化 (48) 第六章数字频带传输系统 (52) 6.1数字频带传输原理 (52) 6.2数字频带传输系统的MATLAB实现 (53) 第七章通信系统仿真综合实验 (67) 7.1基本原理 (67) 7.2实验内容 (67)

第一章 MALTAB基础知识 本章目标 ●了解MATLAB 程序设计语言的基本特点,熟悉MATLAB软件运行环境 ●掌握创建、保存、打开m文件及函数的方法 ●掌握变量等有关概念,具备初步的将一般数学问题转化为对应的计算机模型并进行处理的能力 1.1 MATLAB基础知识 1.1.1 MATLAB程序设计语言简介 MATLAB,Matrix Laboratory的缩写,是由MathWorks公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。与大家常用的Fortran和C等高级语言相比,MATLAB的语法规则更简单,更贴近人的思维方方式,被称为“草稿纸式的语言”。MATLAB软件主要由主包、仿真系统(simulink)和工具箱(toolbox)三大部分组成。 1.1.2 MATLAB界面及帮助 MATLAB基本界面如图1-1所示,命令窗口包含标题栏、菜单栏、工具栏、命令行区、状态栏、垂直和水平波动条等区域。 图1-1 MATLAB基本界面 (1)菜单栏

工程光学matlab仿真

工程光学仿真实验报告1、杨氏双缝干涉实验 (1)杨氏干涉模型 屏 图 , 0(1-8) 2 1 (2)仿真程序 clear; Lambda=650; %设定波长,以Lambda表示波长 Lambda=Lambda*1e-9; d=input('输入两个缝的间距 )'); %设定两缝之间的距离,以d表示两缝之间距离 d=d*0.001; Z=0.5; %设定从缝到屏幕之间的距离,用Z表示 yMax=5*Lambda*Z/d;xs=yMax; %设定y方向和x方向的范围

Ny=101;ys=linspace(-yMax,yMax,Ny);%产生一个一维数组ys,Ny 是此次采样总点数 %采样的范围从- ymax 到ymax,采样的数组命名为ys %此数组装的是屏幕上的采样点的纵坐标 for i=1:Ny %对屏幕上的全部点进行循环计算,则要进行Ny 次计算 L1=sqrt((ys(i)-d/2).^2+Z^2); L2=sqrt((ys(i)+d/2).^2+Z^2); %屏上没一点到双缝的距离L1和L2 Phi=2*pi*(L2-L1)/Lambda; %计算相位差 B(i,:)=4*cos(Phi/2).^2; %建立一个二维数组,用来装该点的光强的值 end %结束循环 NCLevels=255; %确定使用的灰度等级为255级 Br=(B/4.0)*NCLevels; %定标:使最大光强(4. 0)对应于最大灰度级(白色) subplot(1,4,1),image(xs,ys,Br); %用subplot 创建和控制多坐标轴 colormap(gray(NCLevels)); %用灰度级颜色图设置色图和明暗 subplot(1,4,2),plot(B(:),ys); %把当前窗口对象分成2块矩形区域 %在第2块区域创建新的坐标轴 %把这个坐标轴设定为当前坐标轴 %然后绘制以( b (: ) , ys)为坐标相连的线 title('杨氏双缝干涉'); (3)仿真图样及分析 a)双缝间距2mm b)双缝间距4mm c)双缝间距6mm d)双缝间距8mm 图1.2改变双缝间距的条纹变化 由上面四幅图可以看出,随着双缝之间的距离增大,条纹边缘坐标减小,也就是条纹 间距减小,和理论公式d D e /λ=推导一致。如果增大双缝的缝宽,会使光强I 增加,能够 看到条纹变亮。 二、杨氏双孔干涉实验 1、杨氏双孔干涉 杨氏双孔干涉实验是两个点光源干涉实 验的典型代表。如图2所示。当光穿过这两个 离得很近小孔后在空间叠加后发生干涉, 并 在像屏上呈现出清晰的明暗相间的条纹。 由 于双孔发出的波是两组同频率同相位的球面 波, 故在双孔屏的光射空间会发生干涉。 于是, 在图2中两屏之间的空间里, 如果一点P 处于 两相干的球面波同时到达 波 峰 (或波谷)的位置, 叠加后振幅达到最高, 图2.1 杨氏双孔干涉 表现为干涉波的亮点; 反之, 当P 处处于一个球面波的波峰以及另一个球面波的波谷时候, 叠加后振幅为零,变现是暗纹。

高频电子线路Matlab仿真实验

高频电子线路Matlab 仿真实验要求 1. 仿真题目 (1) 线性频谱搬移电路仿真 根据线性频谱搬移原理,仿真普通调幅波。 基本要求:载波频率为8kHz ,调制信号频率为400Hz ,调幅度为0.3;画出调制信号、载波信号、已调信号波形,以及对应的频谱图。 扩展要求1:根据你的学号更改相应参数和代码完成仿真上述仿真;载波频率改为学号的后5位,调制信号改为学号后3位,调幅度设为最后1位/10。(学号中为0的全部替换为1,例如学号2010101014,则载波为11114Hz ,调制信号频率为114,调幅度为0.4)。 扩展要求2:根据扩展要求1的条件,仿真设计相应滤波器,并获取DSB-SC 和SSB 的信号和频谱。 (2) 调频信号仿真 根据调频原理,仿真调频波。 基本要求:载波频率为30KHz ,调制信号为1KHz ,调频灵敏度32310f k π=??,仿真调制信号,瞬时角频率,瞬时相位偏移的波形。 扩展要求:调制信号改为1KHz 的方波,其它条件不变,完成上述仿真。 2. 说明 (1) 仿真的基本要求每位同学都要完成,并且记入实验基本成绩。 (2) 扩展要求可以选择完成。

1.0 >> ma = 0.3; >> omega_c = 2 * pi * 8000; >> omega = 2 * pi * 400; >> t = 0 : 5 / 400 / 1000 : 5 / 400; >> u_cm = 1; >> fc = cos(omega_c * t); >> fa = cos(omega * t); >> u_am = u_cm * (1 + fa).* fc; >> U_c =fft(fc,1024); >> U_o =fft(fa,1024); >> U_am =fft(u_am, 1024); >> figure(1); >> subplot(321);plot(t, fa, 'k');title('调制信号');grid;axis([0 2/400 -1.5 1.5]); >> subplot(323);plot(t, fc, 'k');title('高频载波');grid;axis([0 2/400 -1.5 1.5]); >> subplot(325);plot(t, u_am, 'k');title('已调信号');grid;axis([0 2/400 -3 3]); >> fs = 5000; >> w1 = (0:511)/512*(fs/2)/1000; >> subplot(322);plot(w1, abs([U_am(1:512)']),'k');title('调制信号频谱');grid;axis([0 0.7 0 500]); >> subplot(324);plot(w1, abs([U_c(1:512)']),'k');title('高频载波频谱');grid;axis([0 0.7 0 500]); >> subplot(326);plot(w1, abs([U_am(1:512)']),'k');title('已调信号频谱');grid;axis([0 0.7 0 500]); 1.1 >> ma = 0.8; >> omega_c = 2 * pi * 11138; >> omega = 2 * pi * 138; >> t = 0 : 5 / 400 / 1000 : 5 / 400; >> u_cm = 1; >> fc = cos(omega_c * t);

MATLAB仿真实验报告

MATLA仿真实验报告 学院:计算机与信息学院 课程:—随机信号分析 姓名: 学号: 班级: 指导老师: 实验一

题目:编写一个产生均值为1,方差为4的高斯随机分布函数程序, 求最大值,最小值,均值和方差,并于理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示 G仁random( 'Normal' ,0,4,1,1024); y=max(G1) x=mi n(G1) m=mea n(G1) d=var(G1) plot(G1);

实验二 题目:编写一个产生协方差函数为CC)=4e":的平稳高斯过程的程序,产生样本函数。估计所产生样本的时间自相关函数和功率谱密度,并求统计自相关函数和功率谱密度,最后将结果与理论值比较。 解:具体的文件如下,相应的绘图结果如下图所示。 N=10000; Ts=0.001; sigma=2; beta=2; a=exp(-beta*Ts); b=sigma*sqrt(1-a*a); w=normrnd(0,1,[1,N]); x=zeros(1,N); x(1)=sigma*w(1); for i=2:N x(i)=a*x(i-1)+b*w(i); end %polt(x); Rxx=xcorr(x0)/N; m=[-N+1:N-1]; Rxx0=(sigma A2)*exp(-beta*abs(m*Ts)); y=filter(b,a,x) plot(m*Ts,RxxO, 'b.' ,m*Ts,Rxx, 'r');

periodogram(y,[],N,1/Ts); 文件旧硯化)插入(1〕 ZMCD 克闻〔D ]窗口曲) Frequency (Hz) 50 100 150 200 250 300 350 400 450 500 NH---.HP)&UO 二 balj/ 」- □歹

Matlab 编程方法及仿真实验

《现代机械工程基础实验》之机械工程控制基础综合实验报告 姓名 学号 班级 山东建筑大学机电工程学院 2012.06.04~06

第一部分 Matlab 编程方法及仿真实验 实验1. 三维曲面的绘制(略) 实验2. 系统零极点绘制例:求部分分式展开式和)(t g 一个线性定常系统的传递函数是 1 5422 3)(2 3 ++++= s s s s s G (1) 使用MATLAB 建立传递函数,并确定它的极点和零点,写出)(s G 的部分分式展开式并绘制 系统的脉冲响应。 实验结果:零点-0.6667 极点-0.8796 + 1.1414i -0.8796 - 1.1414i -0.2408 实验3. 系统的阶跃响应 例. )(s G 的阶跃响应 对例2中由(1)式给出的传递函数)(s G ,增加一个0=s 处的极点,使用impulse 命令绘制其拉普拉斯反变换式曲线,得到阶跃响应图。将该响应与对)(s G 使用step 命令所得到的响应比较,确定系统的DC 增益。利用初值定理和终值定理来校验结果。 实验结果:DC 增益= 2

实验4. 双输入反馈系统单位阶跃响应 考虑一个如图1所示的反馈系统,它既有参考输入也有干扰输入,其中对象和传感器的传递函数是 )12)(15.0(4)(++=s s s G p ,105.01 )(+=s s H 控制器是一个增益为80,有一个在3-=s 处的零点,极点/零点比15=α超前控制器。推导 两个独立的MATLAB 模型,其中一个模型的输入为)(s R ,另一个输入为)(s D 。使用这些模型确定闭环零点和极点,并在同一坐标系内绘制它们的阶跃响应。 D (s ) 图1 具有参考和干扰输入的反馈系统方框图 实验结果: 参考输入的CL 极点:-49.3658 -7.3336 + 7.9786i -7.3336 - 7.9786i -3.4670 参考输入的DC 增益:320 干扰输入的CL 零点:-45 干扰输入的CL 极点:-49.3658 -7.3336 + 7.9786i -7.3336 - 7.9786i -3.4670 干扰输入的DC 增益:4 -20

北邮dsp软件matlab仿真实验报告

题目: 数字信号处理MATLAB仿真实验 姓名 学院 专业 班级 学号 班内序号

实验一:数字信号的 FFT 分析 1、实验内容及要求 (1) 离散信号的频谱分析: 设信号 此信号的0.3pi 和 0.302pi 两根谱线相距很近,谱线 0.45pi 的幅度很小,请选择合适的序列长度 N 和窗函数,用 DFT 分析其频谱,要求得到清楚的三根谱线。 (2) DTMF 信号频谱分析 用计算机声卡采用一段通信系统中电话双音多频(DTMF )拨号数字 0~9的数据,采用快速傅立叶变换(FFT )分析这10个号码DTMF 拨号时的频谱。 2、实验目的 通过本次实验,应该掌握: (a) 用傅立叶变换进行信号分析时基本参数的选择。 (b) 经过离散时间傅立叶变换(DTFT )和有限长度离散傅立叶变换(DFT ) 后信号频谱上的区别,前者 DTFT 时间域是离散信号,频率域还是连续的,而 DFT 在两个域中都是离散的。 (c) 离散傅立叶变换的基本原理、特性,以及经典的快速算法(基2时间抽选法),体会快速算法的效率。 (d) 获得一个高密度频谱和高分辨率频谱的概念和方法,建立频率分辨率和时间分辨率的概念,为将来进一步进行时频分析(例如小波)的学习和研究打下基础。 (e) 建立 DFT 从整体上可看成是由窄带相邻滤波器组成的滤波器组的概念,此概念的一个典型应用是数字音频压缩中的分析滤波器,例如 DVD AC3 和MPEG Audio 。 3、程序代码 (1) N=5000; n=1:1:N; x=0.001*cos(0.45*pi*n)+sin(0.3*pi*n)-cos(0.302*pi*n-pi/4); y=fft(x,N); magy=abs(y(1:1:N/2+1)); k=0:1:N/2; w=2*pi/N*k; stem(w/pi,magy) axis([0.25,0.5,0,50]) (2) column=[1209,1336,1477,1633]; line=[697,770,852,941]; fs=10000; N=1024; 00010450303024().*cos(.)sin(.)cos(.)x n n n n ππππ=+--

Matlab数字衍射光学实验讲义(一)

实验注意事项(必读) 1.没有弄清楚实验内容者,禁止接触实验仪器。 2.注意激光安全。绝对不可用眼直视激光束,或借助有聚光性的光学组件观察激光束,以免损伤眼睛。 3.注意用电安全。He-Ne激光器电源有高压输出,严禁接触电源输出和激光头的输入端,避免触电。 4.注意保持卫生。严禁用手或其他物品接触所有光学元件(透镜、反射镜、分光镜等)的光学表面;特别是 在调整光路中,要避免手指碰到光学表面。 5.光学支架上的调整螺丝,只可微量调整。过度的调整,不仅损坏器材,且使防震功能大减。 6.实验完成后,将实验所用仪器摆放整齐,清理一下卫生。

Matlab数字衍射光学实验一 计算机仿真过程是以仿真程序的运行来实现的。仿真程序运行时,首先要对描述系统特性的模型设置一定的参数值,并让模型中的某些变量在指定的范围内变化,通过计算可以求得这种变量在不断变化的过程中,系统运动的具体情况及结果。仿真程序在运行过程中具有以下多种功能: 1)计算机可以显示出系统运动时的整个过程和在这个过程中所产生的各种现象和状态。具有观测方便,过程可控制等优点; 2)可减少系统外界条件对实验本身的限制,方便地设置不同的系统参数,便于研究和发现系统运动的特性; 3)借助计算机的高速运算能力,可以反复改变输入的实验条件、系统参数,大大提高实验效率。因此.计算机仿真具有良好的可控制性(参数可根据需要调整)、无破坏性(不会因为设计上的不合理导致器件的损坏或事故的发生)、可复现性(排除多种随机因素的影响,如温度、湿度等)、易观察性(能够观察某些在实际实验当中无法或者难以观察的现象和难以实现的测量,捕捉稍纵即逝的物理现象,可以记录物理过程的每一个细节)和经济性(不需要贵重的仪器设备)等特点。 Matlab是MathWorks公司于1982年推出的一套高性能的数值计算和可视化软件。它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便、界面友好的用户环境。它还包括了ToolBox(工具箱)的各类问题的求解工具,可用来求解特定学科的问题。Matlab的长处在于数值计算,能处理大量的数据,而且效率比较高。MathWorths公司在此基础上开拓了符号计算、文字处理、可视化建模和实时控制能力,增强了Matlab的市场竞争力,使Matlab成为市场主流的数值计算软件。Matlab产品族支持概念设计、算法开发、建模仿真、实时实现的理想的集成环境。其主要功能有:数据分析、数值和符号计算、工程与科学绘图、控制系统设计、数字图像信号处理、财务工程,建模、仿真、原型开发,应用开发,图形用户界面。 在光学仪器设计和优化过程中,计算机的数值仿真已经成为不可缺少的手段。通过仿真计算,可以大幅度节省实验所耗费的人力物力,特别是在一些重复实验工作强度较大且对实验器材、实验环境等要求较苛刻的情况下。如在大型激光仪器的建造过程中,结合基准实验的仿真计算结果可为大型激光器的设计和优化提供依据。仿真光学实验也可应用于基础光学教学。光学内容比较抽象,如不借助实验,很难理解,如光的干涉、菲涅耳衍射、夫琅禾费衍射等。传统的光学实验需要专门的实验仪器和实验环境。其操作比较烦琐,误差大现象也不明显,对改变参数多次观察现象也多有不便。MATLAB是当今国际上公认的在科技领域方面最为优秀的应用软件和开发环境。利用它对光学实验仿真可避免传统实验中的缺点,强大的功能使光学实验变得简便准确。基于MATLAB的科学可视化功能对光学仿真实验现象进行计算机模拟的效果更加准确明显。 1.实验目的: 掌握基本的Matlab编程语言,了解其编程特点;模拟几种常用函数,了解其编程过程及图像显示命令函数,掌握Matlab画图方法;通过设计制作一系列光学研究物体掌握其编程方法;掌握光波的matlab编程原理及方法,初步了解Matlab

相关文档
最新文档