穿越技術迷霧,指引測試之光
為電子測量儀器保駕護航,技術支持,一路相隨
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(同微信)
