本案例展示了在OptiSystem中调用MATLAB代码实现振幅调制。
h5keYBA +`3ZH9 一、建模目标
DkKD~ 案例中,我们生成两束
功率为0dBm,频率分别为192.7THz、191THz的载波,合束之后经过自定义
脉冲的调制。我们用MATLAB代码控制电脉冲对光信号的调制过程,通过在MATLAB组件中导入MATLAB代码来实现。整体光路图如图1,全局
参数如图2:
kDa#yN\ U7eQ-r 图1.整体光路图
k $&A 图2.全局参数
OSIp 二、参数设置
pdiZ"pe MATLAB组件设置2个输入口,一个输出口。其中输入口1输入类型为光信号,输入口2输入类型为电信号。输出口输出类型为光信号。输入、输出端口设置如图3:
PW4Wn`u E8<i PTJs a) 输入端口设置 oA@^N4PD
CW YJ<27v{ b) 输出端口设置
图3.输入、输出口设置
v[3sg2. 接下来,要讲MATLAB代码导入到MATLAB组件中,要进行如下设置:
&L~rq)r/& 首先,勾选MATLAB Component中的Load MATLAB,OptiSystem将调用电脑中的MATLAB程序:
Vp^sER 1&"1pH 图3.调用MATLAB
Sd6^%YB 勾选运行MATLAB文件:
M?u)H&kEl :+!b8[?Z 图4.运行MATLAB文件
3U$fMLx]k 在组件中键入MATLAB的m文件
文件名:
D9C; JD !P3|T\|]+ 图5.输入程序文件名
iUB ni&B 输入程序所在路径,m文件添加完成,点击OK。(注意:m文件需与该光路文件存放在同一个文件夹)
e'&{KD,-T h8Si,W3o 图6.输入程序路径
\c}r6xOr MATLAB中振幅调制主代码如下:
ksp':2d} B4ze$# 图7.MATLAB代码
+]vl8, 4@ 对应
函数代码如图8:
1*jm9])# &W!@3O{~. a) AmplitudeModulatorSampled函数
P@?CQvMx b)AmplitudeModulatorParameterized函数
.r'.5RI A c)AmplitudeModulatorNoise函数
图8.MATLAB代码
R"([Y#>m 三、运行结果
Y%@'a~ 运行结果:
l}/UriZ0 Z Uv_u6aD a)振幅调制前 '~J6mojE
Su #1yw> b)振幅调制后
图9.振幅调制前后对比