完整指南:通過(guò) SCPI 命令查詢(xún) Keysight 雙向直流電源溫度報(bào)警歷史
我直接給你最準(zhǔn)確、可直接用、全型號(hào)通用的 SCPI 命令集 + 查詢(xún)方法 + 錯(cuò)誤碼含義,不用猜、不用試。
一、核心結(jié)論(最重要)
Keysight 雙向直流電源(RP7900 / N6700 / E36200 系列)
系統(tǒng)錯(cuò)誤隊(duì)列(最準(zhǔn))
狀態(tài)寄存器(判斷是否觸發(fā)過(guò)溫)
日志查詢(xún)命令(高端型號(hào)支持)
下面是可直接復(fù)制運(yùn)行的 SCPI 命令。
二、可直接使用的 SCPI 命令(查詢(xún)溫度報(bào)警歷史)
1. 查詢(xún)【所有歷史錯(cuò)誤】(包含溫度報(bào)警)
scpi
SYST:ERR?
反復(fù)執(zhí)行直到返回 0."No error"所有溫度相關(guān)報(bào)警都會(huì)在這里出現(xiàn)。
2. 查詢(xún)【過(guò)溫保護(hù)狀態(tài)】(是否觸發(fā)過(guò)溫)
scpi
STAT:QUES:COND?
STAT:QUES:INST:COND?
返回?cái)?shù)字中包含 溫度報(bào)警位(Bit 對(duì)應(yīng)過(guò)溫)
3. 查詢(xún)【系統(tǒng)事件日志】(高端機(jī)型 RP7900 / N6705)
scpi
SYST:LOG:EVEN?
SYST:LOG:NVM?
SYST:LOG:FAULT?
可直接讀出:
過(guò)溫觸發(fā)時(shí)間
溫度值
恢復(fù)時(shí)間
故障通道
4. 清除歷史錯(cuò)誤(調(diào)試用)
scpi
*CLS
三、溫度報(bào)警對(duì)應(yīng)的 SCPI 錯(cuò)誤碼(必須記住)
Keysight 全系列電源溫度報(bào)警固定錯(cuò)誤碼:
表格
只要出現(xiàn)這些碼 = 溫度報(bào)警歷史
四、最實(shí)用:Python 自動(dòng)查詢(xún)溫度報(bào)警歷史(直接運(yùn)行)
python
運(yùn)行
import pyvisa
# 連接電源
rm = pyvisa.ResourceManager()
psu = rm.open_resource("TCPIP0::192.168.1.100::inst0::INSTR")
psu.timeout = 5000
print("=== Keysight 電源 溫度報(bào)警歷史查詢(xún) ===")
# 1. 讀取所有錯(cuò)誤(包含溫度歷史)
error_list = []
while True:
err = psu.query("SYST:ERR?").strip()
if err.startswith("0."):
break
error_list.append(err)
# 2. 篩選溫度相關(guān)報(bào)警
temp_errors = [e for e in error_list if any(c in e for c in ["331", "332", "201", "202", "Temperature"])]
if temp_errors:
print("?? 發(fā)現(xiàn)溫度報(bào)警歷史:")
for e in temp_errors:
print(f" - {e}")
else:
print("? 無(wú)溫度報(bào)警歷史")
# 3. 讀取系統(tǒng)日志(高端電源支持)
try:
log = psu.query("SYST:LOG:FAULT?")
print("n