光纤内脉冲信号传输仿真包含matlab程序

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

光纤内脉冲信号传输仿真

一、仿真内容

1、 选择一种脉冲波形(高斯脉冲,啁啾高斯脉冲,双曲正割脉冲,超高斯脉冲等),

讨论光脉冲在光纤内传输时,GVD 和SPM 效应是如何结合的,并使用MATLAB 仿真脉冲波形随传播距离的变化。

2、 选择一种调制方式(ASK ,PSK ,QPSK ,QAM 等),对脉冲进行调制,分析接收端的误码率。 二、原理分析

1、 GVD

光脉冲在单模光纤内传输的NLS 方程,对脉冲大于5ps 的脉冲有

2222|A |22A A i i A A z T

βα

γ∂∂=-+-∂∂ (1式) U (z,T )满足线性偏微分方程

~

2222U U i z T

β∂∂=∂∂ (2式) 若U(z,w)是U(z,T)的傅里叶变换,即

~1(z,T)(z,)2i T U U e d ωωωπ-∞=-∞

⎰ (3式)

满足常微分方程

~

~222

U

i U z βω∂=-∂ (4式) 其解为

~

~

22(z,)(0,)exp(z)2

i

U U ωωβω= (5式)

由第5式可得,GVD 改变了脉冲的每个频谱分量的相位,且其改变量依赖于频率及传输距离。GVD 不会影响脉冲的频谱,但是能改变脉冲的形状。把5式代入3式可得方程2的通解

~22

1(z,T)(0,)exp(z i T)22

i U U d ωβωωωπ∞=--∞⎰ (6式)

其中,~

(0,)U ω是入射光在z=0处的傅里叶变换

~

(0,)U(0,T)exp(i T)U dT ωω∞

=-∞

(7式) 方程6和方程7适用于任意形状的输入脉冲。 2、 SPM

定义归一化振幅

U

/2

(z,)(z,)A U αττ-= (8式) 其中归一化时间量

00

/g

t z T T T ντ-==

(9式) (z,)U τ满足方程

2222sgn()|U |U 2z D NL

U U e i z L L αβτ-∂∂=-∂∂ (10式) 令2β=0,两边同时乘以i 可得

2|U |U z

NL

U e z L α-∂=∂ (11式) 其中10()NL L P γ-=

用NL exp(i )U V φ=做代换,并且令方程两边实部虚部相等,则有

0V

z ∂=∂

2z NL NL

e V z L αφ-∂=∂ (12式) 对相位方程进行积分,得到通解

NL (L,T)U(0,T)exp(i (L,T))U φ= (13式)

其中,U(0,T)是z=0处的场振幅,且

2NL eff NL (L,T)|U(0,T)|(L /L )φ= (14式)

式中有限长度

eff L [1exp(L)]/αα=-- (15式)

第14式表明,SPM 产生随光强变化的相位,但脉冲形状保持不变。脉冲沿光纤传输时,由于SPM 的作用,新的频率分量在不断产生,频谱被展宽。 3、 分步傅里叶方法

一般来说,沿光纤的传输方向,色散和非线性效应是同时作用的。分步傅里叶方法通过假定在传输过程当中,光场每通过一小段距离h ,色散和非线性效应分别作用,得到近似解。

从z 到z+h 的传输过程中,分为3步进行。 第一步,z 到z+h/2,只考虑GVD 。 第二步,z+h/2处,考虑SPM 。

第三步,z+h/2到z+h ,只考虑GVD 。

通过分步傅里叶方法,把传输距离L 分成m 个区间,MATLAB 程序做m 次循环,即可得到最终的近似解。

图 1

三、MATLAB 仿真结果

这里选择传输双极性非归零(NRZ )码,传输高斯脉冲,使用MATLAB 仿真光纤中脉冲传输。主要参数设置如下:传输距离L=50Km ,损耗a=0.3dB ,非线性系数r=3/km/w ,色散系数b2=20ps 2 /km 。

高斯脉冲入射光场表达式为:

2

2

0(0,T)exp()2T U T =-

(16式) 传输5个码源[1 , -1, 1, -1, 1],对应的时域波形如下:

图2

传输过程中使用分步傅里叶方法,分成m=10段,每段h=5Km ,分别进行GVD 和SPM 分析。传输过程中的波形如下:

周期高斯脉冲

图 3

通过图3可以发现,由于GVD 和SPM 的作用,脉冲波形被展宽。随着传输距离的增加,脉冲波形与原始波形的差异越大。

附:MATLAB 代码

clc;%清除命令窗口原有命令 clear all;%清除原有变量 L=5;%周期数 Ts=4;%符号周期 A=100;%插值倍数

Rb=1/Ts;%可以更改Rb 与Ts 的关系,但是A 需要同时改变 T0=Ts/A; F0=1/T0;

%信源产生[1 -1 1 -1 1] a=zeros(1,L); for i=1:L

if mod(i,2)==1 a(i)=1; else a(i)=-1; end end

d=zeros(1,L*A); for i=1:L

-800

-1-0.500.5

1T/ps

I n t e n s i t y

d(1+(i-1)*A)=a(i);%插值,在相邻a(i)插入A-1个0,得到插值后的发送序列;end

%周期高斯脉冲产生

T0=30;%初始宽度ps;

N=256;

TL=T0*20;

dt=TL/N;

df=1/TL;

t=(-N/2:N/2-1)*dt;

f=(-N/2:N/2-1)*df;

w=2*pi*f;

u=exp(-(1/2)*((t/T0).^2)); %U(0,t)

j=1;

%截取有效高斯点数

for i=1:256

if(u(i)>10^(-5))

U(j)=u(i);

j=j+1;

end

end

figure(2)

U1=conv(U,d);

plot(U1)

title('周期高斯脉冲');

b2=20;%ps^2/km色散系数

LD=T0^2/b2;%色散长度km

L=50;%光纤长度km

a=0.3;%损耗db/km

r=3;%非线性系数/km/w

p0=2*10^(-3); %峰值功率w

Lnl=1/(r*p0);%非线性长度km

z=L;

dz=z/10;

Leff=(1-exp(-dz*10^(-a/10)))/(10^(-a/10));%有效长度

fmax=Leff/Lnl;%最大相位偏移

y=0*ones(1,size(U1,2));

figure(3)

plot3(y,(-size(U1,2)/2:size(U1,2)/2-1)*dt,U1,'color',[0,0,0]);

xlabel('L/km');

ylabel('T/ps');

zlabel('Intensity');

grid on;

hold on;

相关文档
最新文档