这个例子展示了如何使用快速控制函数发生器来产生任意波形。
仪器控制工具箱™支持通过接口和驱动程序与仪器通信。金宝app
有关所支持的硬件的完整列表,请访问仪器控制工具金宝app箱产品页面.
在这个例子中,我们将使用Quick-Control Function generator创建并下载任意波形到任意波形发生器。
要运行这个示例,您需要:
一个任意波形发生器(本例使用Tektronix®AFG3022B)。
在您的机器上安装VISA软件(本例使用Agilent®IO Libraries Version 16.1)。
安装在您机器上的仪器的IVI- c驱动程序(本例使用来自IVI Foundation driver Registry的Tektronix®tkafg3k IVI- c驱动程序版本3.2)。
仪器控制工具箱™。
我们将创建一个由三种不同波形组成的任意波形。每个波形的属性,包括振幅和频率,将在下面的章节中设置。对于每个波形,振幅都在伏
,而频率为赫兹
.
当为函数发生器生成信号时,重要的是要确保时域的连续性,以避免在信号中引入非预期的频谱内容,特别是当要重复播放波形时。为了确保连续性,你可以定义时间矢量,这样它就包含了合成波形的三个音调的整数周期。
步伐= 0.001;时间= 0:步伐:(1-timeStep);
第一波形的参数
amplitude1 = 0.2;frequency1 = 10;
第二个波形的参数
amplitude2 = 0.8;frequency2 = 14;
第三波形的参数
amplitude3 = 0.6;frequency3 = 18;
我们将创建我们的三个独立的波形使用罪
命令。
waveform1 = amplitude1 * sin(2 *π* frequency1 *时间);waveform2 = amplitude2 * sin(2 *π* frequency2 *时间);waveform3 = amplitude3 * sin(2 *π* frequency3 *时间);
任意波形将是上面列出的每个波形的组合。
波形= waveform1 + waveform2 + waveform3;
在之前创建的波形中添加随机噪声。
波形=波形+ 0.3*rand(1,大小(波形,2));
有些函数发生器需要归一化波形。在这种情况下,波形在-1到+1之间归一化。
waveformArray = (waveform. / max(波形))';情节(waveformArray);包含(“样本”);ylabel (“振幅”);
方法发现您可以连接到的所有可用的仪器资源(目标)资源
命令。
f = fgen;f.resources
ans = 1×211 char array ASRL1::INSTR ASRL3::INSTR ASRL::COM1 ASRL::COM3 GPIB0::INTFC PXI0::MEMACC TCPIP0::172.28.22.217::inst0::INSTR TCPIP0::172.28.23.55::inst0::INSTR TCPIP0::a-d6054l-000006.dhcp.mathworks.com::inst0::INSTR
现在已经有了波形,需要将它下载到函数生成器中。您将使用快速控制函数生成器或fgen
功能的仪器控制工具箱™做到这一点。因为仪器的IP地址是172.28.22.217,指定的资源将是TCPIP0::172.28.22.217::inst0::INSTR。
f = fgen (“TCPIP0:: 172.28.22.217:: inst0:: INSTR”,“tkafg3k”);
指定将产生波形的函数发生器的通道。在这里,波形将在通道1上产生。
selectChannel (f,' 1 ');
由于您将生成自定义任意波形,因此设置波形
财产Arb.
f.Waveform =“Arb”;
现在可以下载前面生成的任意波形了waveformArray到函数生成器。
downloadWaveform (f, waveformArray);
使能波形生成。
enableOutput (f);
清晰的f;