创建和下载到函数发生器的任意波形
此示例显示如何使用快速控制功能发生器生成任意波形。
仪器控制工具箱™通过接口和驱动程序支持与仪器的通信。金宝app
有关支持的硬件的完整列表,请访问仪器控制工具箱金宝app产品页面。
介绍
在此示例中,我们将使用快速控制功能发生器创建和下载任意波形到任意波形发生器。
要求
要运行此示例,您需要:
任意波形发生器(此示例使用Tektronix®FG3022B)。
您的机器上安装的Visa软件(此示例使用Agilent®IO库16.1版)。
机器上安装的IVI-C驱动程序(此示例使用IVI基础驱动程序注册表中的Tektronix®TKAFG3KIVI-C驱动程序版本3.2)。
仪器控制工具箱™。
定义波形参数
我们将创建一个由三种不同波形组成的任意波形。每个波形的属性,包括幅度和频率,将在下面的部分中设置。对于每个波形,幅度在伏
,频率在赫兹
。
当为函数发生器生成信号时,重要的是要确保时域中的连续性,以便在信号中不引入意外的光谱内容,特别是如果波形将重复播放。为了确保连续性,您可以定义时间向量,使得它包含将构成合成波形的三个音调中的每一个的积分循环周期。
timestep = 0.001;Time = 0:Timestep :( 1-timestep);
第一个波形的参数
幅度1 = 0.2;频率1 = 10;
第二波形的参数
振幅2 = 0.8;频率2 = 14;
第三波形的参数
幅度3 = 0.6;频率3 = 18;
创建任意波形
我们将使用我们的三个单独的波形罪
命令。
波形1 =幅度1 * SIN(2 * PI *频率1 *时间);波形2 =幅度2 * SIN(2 * PI *频率2 *时间);波形3 =幅度3 * SIN(2 * PI *频率3 *时间);
任意波形将是上述每个列出的波形的组合。
波形=波形1 +波形2 +波形3;
将随机噪声添加到更早创建的波形。
波形=波形+ 0.3 * rand(1,尺寸(波形,2));
某些功能发生器需要归一化波形。在这种情况下,波形在-1至+1之间标准化。
waveformArray =(波形/ m(waveform))';绘图(波形array);Xlabel('样品');ylabel('振幅');
发现可以使用的所有可用仪器资源(目标),使用资源
命令。
f = fgen;F.Resources.
ans = 1×211 char数组asrl1 :: instrs asrl3 :: instr asrl :: com1 asrl :: com3 gpib0 :: intfc pxi0 :: memacc tcpip0 :: 172.28.22.217 :: inst0 :: ortry tcpip0 :::172.28.23.55::INST0 :: instr TCPIP0 :: A-D6054L-000006.DHCP.Mathworks.com :: Inst0 :: Instr
连接功能发生器
既然您有您的波形需要将其下载到函数发生器上。您将使用快速控制功能发生器或Fen.
仪器控制工具箱™的功能。因为仪器的IP地址是172.28.22.217,指定的资源将是TCPIP0 :: 172.28.22.217 :: Inst0 :: instr。
f = fgen('TCPIP0 :: 172.28.222.17 :: INST0 :: instr'那'tkafg3k');
下载创建的波形
指定生成波形的函数发生器的通道。这里,波形将在信道编号1上生成。
SelectChannel(F,'1');
由于您将生成自定义任意波形,因此设置波形
财产arb.。
F.WaveForm =.'arb';
您现在准备下载以前生成的任意波形波形array.到函数发生器。
下载WaveForm(F,WaveformArray);
启用波形生成。
启用输出(f);
清理
清除F;