穿越技术迷雾,指引测试之光
为电子测量仪器保驾护航,技术支持,一路相随
NI 示波器卡(Digitizer)编程步骤详解-NI技术支持中心
NI 示波器卡(如 PXIe-5162、PXIe-5105)通过 NI-SCOPE 或 NI-DAQmx 驱动进行编程,支持 LabVIEW、Python、C/C++ 等语言。以下是通用编程流程:

1. 准备工作
(1) 硬件连接
将示波器卡安装到 PXI/PXIe 机箱 或通过 MXI/USB 连接。
连接信号源到模拟输入通道(如 CH0+ 和 CH0- 差分输入)。
(2) 软件安装
安装 NI-SCOPE 驱动 或 NI-DAQmx(部分示波器卡兼容 DAQmx API)。
安装开发环境(如 LabVIEW、Python 的 niscope 模块)。
2. 编程步骤(以 LabVIEW 和 Python 为例)
LabVIEW 示例
(1) 初始化设备
使用 NI-SCOPE Initialize.vi 或 DAQmx Create Task.vi 创建任务。
配置通道参数(如垂直范围、耦合方式):
Plaintext
NI-SCOPE Configure Channel.vi →
Channel List: "0" (CH0)
Voltage Range: ±10V
Coupling: DC
(2) 配置采样参数
Plaintext
NI-SCOPE Configure Acquisition.vi →
Sample Rate: 1 MS/s
Record Length: 1000 (采样点数)
Trigger Type: Immediate (或外部触发)
(3) 启动采集并读取数据
Plaintext
NI-SCOPE Start.vi →
NI-SCOPE Fetch.vi (读取波形数据) →
NI-SCOPE Clear.vi (释放资源)
LabVIEW 示波器卡编程框图
Python 示例(使用 niscope 库)
Python
import niscope
import matplotlib.pyplot as plt
# 1. 初始化设备
with niscope.Session("PXI1Slot2") asPXI1Slot2") as session:
# 2. 配置通道和采样
session.configure_vertical(range=10.0, coupling=niscope.VerticalCoupling.DC)
session.configure_horizontal_timing(min_sample_rate=1e6, min_num_pts=1000)
# 3. 启动采集并获取数据
session.initiate()
waveforms = session.channels[0].fetch(num_samples=1000)
_samples=1000)
# 4. 绘制波形
plt.plot(waveforms[0].samples)
plt.xlabel("Time (samples)")
plt.ylabel("Voltage (V)")
plt.show()
3. 关键配置参数
参数 说明
采样率 根据信号频率选择(奈奎斯特定理:≥2×信号最高频率)。
垂直范围 匹配信号幅值(如±1V、±10V),避免饱和或分辨率不足。
触发模式 - 立即触发(无外部信号)- 边沿触发(上升/下降沿)- 数字触发(外部TTL)。
耦合方式 - DC耦合(直流+交流)- AC耦合(仅交流,去除直流偏移)。
阻抗匹配 通常设为 1MΩ(高阻抗)或 50Ω(射频信号)。
4. 高级功能
(1) 多通道同步采集
使用 参考时钟(PXI_CLK10) 同步多卡。
代码示例(LabVIEW):
Plaintext
NI-SCOPE Configure Clock.vi → Reference Clock: "PXI_CLK10"
(2) 分段存储(Segmented Memory)
捕获高频瞬态信号(如雷达脉冲):
Python
session.configure_horizontal_timing(
min_sample_rate=1e9,
min_num_pts=10000,
num_records=100 # 存储100段波形
)
(3) 自动测量(FFT/幅值/上升时间)
Python
measurements = session.channels[0].measure(
niscope.MeasurementType.FREQUENCY
)
print("信号频率:", measurements)
**50])
---
5. 常见问题解决
如需手册或进一步技术支持,可联系18682985902(同微信)
