4. PXI平台软件环境搭建
PXI射频自动测试平台的软件环境可以理解为三层:最底层是PXIe机箱、控制器与射频模块的硬件层;中间层是NI-DAQmx、NI-RFSA、NI-RFSG、NI-SCOPE等驱动与配置层;最上层是LabVIEW、LabVIEW NXG或Python构成的开发层。三层之间的依赖关系决定了安装顺序——驱动必须先于开发环境安装,否则开发环境中的函数选板、API或Python包将无法正确识别硬件。本节围绕“装什么、按什么顺序装、装完怎么验证”展开,并给出可直接执行的配置与自检方法。
一、驱动与开发环境的对应关系
不同模块对应不同驱动,选错驱动会导致设备在MAX中显示为“未配置”或根本无法枚举。常见对应关系如下:
| 硬件模块 | 驱动/软件 | 典型用途 |
|---|---|---|
| PXIe-6363等多功能DAQ | NI-DAQmx | 低速模拟/数字IO、触发、电源控制 |
| PXIe-5644R/5840等VST | NI-RFSA + NI-RFSG | 矢量信号分析/发生,调制解调测试 |
| PXIe-5162等数字化仪 | NI-SCOPE | 高速波形采集、时域测量 |
| PXIe-5663/5668等下变频器 | NI-RFSA | 频谱与解调分析 |
| PXIe-5673等上变频器 | NI-RFSG | 信号发生与激励 |
开发环境方面,LabVIEW适合图形化快速搭建测试序列;LabVIEW NXG适合Web化部署与配置式开发;Python则通过nidaqmx、niscope、nirfsa、nirfsg等包调用底层驱动,适合与NumPy/SciPy做算法处理。三者可共存,但建议在同一台控制器上只保留一种主开发环境,避免版本冲突。
二、安装顺序与关键配置
推荐顺序为:先装NI-DAQmx,再装NI-RFSA与NI-RFSG,然后装NI-SCOPE,最后装LabVIEW或Python环境。原因是RFSA/RFSG依赖DAQmx中的部分底层组件,而SCOPE与RFSA共享部分采集引擎。安装时注意以下要点:
- 使用NI Package Manager(NPM)统一管理,避免单独下载exe造成版本错配。
- 安装前关闭LabVIEW与所有NI服务,安装后重启控制器。
- 在MAX中确认机箱、控制器、模块均被识别,且模块状态为“正常”。
- 对RFSA/RFSG模块,需在MAX中执行自校准(Self-Calibration),并记录校准温度。
- Python环境建议使用虚拟环境,安装对应驱动版本的包,例如:
python -m venv rfenv
rfenv\Scripts\activate
pip install nidaqmx niscope nirfsa nirfsg
安装完成后,在MAX中展开“设备和接口”,应能看到PXIe机箱下的各模块。若某模块显示黄色感叹号,通常是驱动版本与模块固件不匹配,需在NPM中升级对应驱动。
三、环境自检与最小验证
驱动装完不等于环境可用,必须做最小验证。对DAQmx,可在MAX中创建任务,采集AI0通道的直流电压;对RFSA,可配置中心频率1 GHz、参考电平0 dBm,观察底噪;对RFSG,可输出-10 dBm、1 GHz单音,用RFSA回采确认频率与功率;对SCOPE,可采集一个已知方波,检查采样率与触发电平。Python侧可用以下代码快速验证DAQmx是否可用:
import nidaqmx
with nidaqmx.Task() as task:
task.ai_channels.add_ai_voltage_chan("PXI1Slot2/ai0")
print(task.read())
若返回数值且无异常,说明DAQmx驱动与Python绑定正常。RFSA/RFSG的Python验证可先调用nirfsa的会话初始化,确认设备名与MAX中一致。
四、常见问题与排查思路
最常见的问题是“MAX能看到模块,但LabVIEW中找不到函数”。这通常是因为LabVIEW安装时未勾选对应驱动支持,或驱动安装顺序颠倒。解决方法是先装驱动再装LabVIEW,或在LabVIEW中通过VI Package Manager补装驱动接口。另一个常见问题是Python包版本与驱动不匹配,表现为调用时报“library not found”,此时应核对nidaqmx等包的版本是否与已安装驱动的主版本一致。
下图给出从硬件到开发环境的信号链与配置关系,帮助理解各驱动在平台中的位置与数据流向。