首页  技术文章  LabVIEW控制Moku:Lab锁相放大器实现频率扫描

LabVIEW控制Moku:Lab锁相放大器实现频率扫描

发布时间:2021-10-21 17:02:00 浏览量:3502 作者:Liquid Instrument

摘要

在这篇应用笔记中,我们将提供如何用Moku:Lab的LabVIEW API 构建自动测试虚拟仪器(VI)的分步教程。许多电子系统在特定的频率

下性能最佳。为了优化锁相测量的信噪比,找到系统的传递函数并使用最佳调制频率非常重要。在此示例中,我们将构建一个

LabVIEW VI 用于扫描本机振荡器(LO)频率,并将所测量的幅度与调制频率作图,从而确定最佳的调制频率。然后我们将用该VI 来测

量一个带通滤波器的频率响应。

正文


Moku:Lab & LabVIEW编程指南

在这篇应用笔记中,我们将提供如何用Moku:Lab的LabVIEW API 构建自动测试虚拟仪器(VI)的分步教程。许多电子系统在特定的频率

下性能最佳。为了优化锁相测量的信噪比,找到系统的传递函数并使用最佳调制频率非常重要。在此示例中,我们将构建一个

LabVIEW VI 用于扫描本机振荡器(LO)频率,并将所测量的幅度与调制频率作图,从而确定最佳的调制频率。然后我们将用该VI 来测

量一个带通滤波的频率响应。


频率扫描锁相放大测量

锁相放大器旨在将微弱的振荡信号从噪声背中提取出来。锁相放大器将输入信号和本机振荡器产生的特定频率混合,然后用一个窄带

低通滤波器将高频分量衰减。


更多关于锁相放大器原理的详细介绍请查看下方往期文章链接: 

锁相放大器的基本原理Part 1

锁相放大器的基本原理Part 2


通过锁相放大测量的方法,我们可以以较窄的带宽检测对任意频率信号的响应。被测频率的中心由本机振荡器频率定义。 通过扫描本

机振荡器的频率,我们可以得到系统的传递函数。我们可以使用这种响应图来确定谐振、最佳调制频率和系统阻抗。这是在锁相放大测

量中寻求最佳信噪比的必要测试。在这篇应用笔记中,我们将演示如何用Moku:Lab LabVIEW API 构建自动测试虚拟仪器(VI),并用

于扫描本机振荡器频率和测量一个带通滤波器的频率响应。


图 1: 自动化测试序列的一般流程


系统设置

Moku:Lab’s LabVIEW API 安装文件和说明请从Liquid Instruments官网下载:

https://www.liquidinstruments.com/labview


完整的 LabVIEW .VI 文件可从此处下载: 

https://liquidinstruments.squarespace.com/s/20-0304_AppNote_LabVIEWLIAFrequencySweep.vi


为了在LabVIEW 上控制和运行Moku:Lab, 我们需要将Moku:Lab和计算机连接到同一网络。在这个示例中,我们将Moku:Lab和计算

机无线连接到同一Wi-Fi路由器。

要在网络上找到Moku:Lab,需要输入IP地址。若要查找IP地址, 需要将iPad连接到同一Wi-Fi网络并启动iPad上Moku:Lab应用程序。

然后,长按Moku:Lab仪器图标即可显示IP 地址。此外,如果您的计算机安装了Python 和PyMoku,您也可以输入“moku list”指令

找到Moku:Lab的 IP 地址。


由Moku:Lab输出2产生本机振荡信号,通过被测带通滤波器(DUT)然后由 Moku:Lab输入1测量返回信号。


图2: Moku:Lab 和计算机被无线连接到同一路由器。被测器件连接在Moku 输出2和输入1之间

 

构建LabVIEW VI

连接到Moku:Lab 并部署默认设置


要开始构建LabVIEW VI, 我们需要先启动LabVIEW 并将 “setup moku”面板拖动到程序中:

 

步骤 1: 拖动“setup moku” 面板到VI


该面板需要输入两个字符串:Moku:Lab的IP地址和仪器名称。我们在用户界面上创建一个占位符用于输入IP地址。在这个测试中,我

们只会用的锁相放大器(Lock-In Amplifier)这一个仪器,所以我们将其设置为默认仪器名称。接着,我们将仪器网络地址,Moku命令

反馈,和错误输出移动给 “execute cmd”面板。


步骤 2: 将网络地址,Moku命令和错误输出链接到 “execute cmd“面板


 “execute cmd”面板使用网络地址作为设备句柄,并将 JSON 格式命令传递给Moku:Lab。JSON 命令通常是由另一个VI生成。

 “execute cmd” 面板还可以接收命令反馈,将其传递给程序进行记录, 并标记出错误输出,以确保每一个 execute cmd面板都成功

执行。如果出现标记,程序将会终止。 “set default LIA” 面板生成 JSON 指令,启动锁相放大器并设置所有参数为默认值。此命令

用于启动Moku:Lab上的锁相放大器。


图 3: 连接和初始化锁相放大器


设置用于锁定测量的参数

设备初始化后,我们使用相同的 “execute cmd” 面板来修改锁相放大器的设置(步骤 3-9). 

步骤 3: 配置Moku 两个输出; 一个用于锁相测量的输出R (幅度,主通道) ,另一个用于本机振荡器的输出以进行频率扫描(辅助通道)。

步骤 4 和 5:在主通道与辅助通道设置两个监测点。主要输出通道的监测点随后用于采集实时数据。

步骤 6: 设置监测点和实时数据采集的时基。

步骤 7: 设置主要通道的增益。

步骤 8: 设置R-Theta 转化范围。关于R-Theta 转化的更详细介绍请参见Moku:Lab锁相放大器用户手册。

步骤 9: 配置混频器之后的低通滤波器。


图 4: 用于设置锁相放大器参数的面板


编写for循环实现自动频率扫描

接下来,我们使用一个for循环来实现频率的自动扫描与数据采集。我们将使用3个变量来控制这个循环:number of steps, 

frequency step, 以及initial frequency. 在每个迭代的开始,程序将使用i ×


如想进一步了解Moku:Pro云编译或相关产品详情,

请联系我们客户支持团队: