补充(2024年5月21日19:47:49)
%% 线性调频信号产生
Bit_rate = 10e9;
Time_Window = 0.4096e-6;
Num_Samples = 131072;
F_sample = Num_Samples / Time_Window;
t = 0 : 1/F_sample : (Time_Window - 1/F_sample);
t1 = Time_Window;
f0 = 2e9;
f1 = 3e9;
x=chirp(t,f0,t1,f1);
figure;plot(t, x);
Copy 了代码记得收藏关注哟~
标题有什么optisystem或者雷达的问题欢迎给我留言!
调用matlab代码向optisystem导入数据
基于optisystem 15.0,MATLAB 2021a
本文章主要说明调用的方法,请参考时注意软件版本。
1.设置组件输入、输出接口
首先,在optisystem中插入一个“MATLAB Component”组件,双击该组件进入“Properties”栏,设置输入(inputs),输出(outputs)两个端口数量和信号形式(即光或电)。
optisystem组件似乎没有输入就不会执行和输出,由于实现的是导入自己数据的功能,为了图方便,直接设置了1入1出两个电端口,输入端放了一个直流信号组件。估计有更简单的实现方式,比如将输入口直接接地,可能也行。
2.导入调用程序
这里是向optisystem导入一组数据,将待调用的“LFM_2GHz_3GHz_131072points”(末尾加不加.m都成功调用)填写到Run command栏。matlab脚本需要和optisystem的project在同一目录。
3.结果展示
程序是将自己生成的LFM信号输入到optisystem,结果符合预期。
4.其他功能
同理,在实现读取optisystem输出结果时,可以在示波器或所需数据仪器后连接一个matlab组件,脚本写循环命名保存之类。
后来发现optisystem软件里给出了联合使用的例程,搜索==“MATLAB co-simulation”== 或者 ==“OptiSystem MATLAB data model”==文件夹即可。
补充:
OutputPort1 =InputPort1;
%Gain = 9.8;
load('131072点_线性调频信号2到3GHz.mat');
OutputPort1.Sampled.Signal = OutputPort1.Sampled.Signal;
之前看了一些其他教程没有解决问题,参考了官网的例程,一次成功。
如有错漏,敬请批评。