要使用SCPI指令設(shè)置雙向直流電源輸出電流序列的上升沿和下降沿時間,核心在于利用 斜率控制指令(Slew Rate Control) 或 序列點過渡時間設(shè)置,具體方法因設(shè)備型號而異,但通常遵循以下邏輯:
多數(shù)雙向直流電源使用 SOURce:CURRent:SLEW 或 SOURce:SLEW 指令設(shè)置電流變化率(單位:A/s 或 A/μs),該值直接決定上升/下降時間。
設(shè)置電流變化率
plaintextSOURce:CURRent:SLEW 1000 // 設(shè)置電流變化率為1000 A/s
啟用斜率限制(部分設(shè)備需顯式啟用)
plaintextSOURce:CURRent:SLEW:STATe ON // 啟用斜率限制
驗證設(shè)置
plaintextSOURce:CURRent:SLEW? // 查詢當(dāng)前斜率值(如返回“1000”)
若需為序列中的不同點設(shè)置不同的上升/下降時間,可使用序列模式(List Mode)的過渡時間參數(shù)(部分設(shè)備支持):
plaintextSOURce:LIST:COUNt 3 // 設(shè)置3個序列點SOURce:LIST:CURRent:DATA1 0, 2 // 第1點:0A,保持2秒
SOURce:LIST:CURRent:DATA2 5, 2, 0.01 // 第2點:5A,保持2秒,上升/下降時間0.01秒(10ms)
SOURce:LIST:CURRent:DATA3 0, 2 // 第3點:0A,保持2秒
DATA# 指令的第三個參數(shù)(如 0.01)為過渡時間,適用于支持該功能的設(shè)備(如 Keysight N6700 系列)。plaintextSOURce:LIST:FUNCtion ON // 啟用序列功能
不同品牌設(shè)備的指令可能不同,需參考具體型號手冊:
SOURce:CURRent:SLEW 和序列過渡時間設(shè)置:plaintextSOURce:LIST:CURRent:DATA1 0, 2, 0.01 // 第1點過渡時間10ms
LIST:SLEW 指令設(shè)置斜率:plaintextLIST:SLEW 1000 // 設(shè)置斜率為1000 A/s
PROG:LIST:CURR:RAMP 指令:plaintextPROG:LIST:CURR:RAMP 0, 5, 0.01 // 從0A到5A,斜坡時間10ms
pythonimport pyvisarm = pyvisa.ResourceManager()power = rm.open_resource("TCPIP0::192.168.1.100::inst0::INSTR") # 替換為實際設(shè)備地址# 1. 進入遠(yuǎn)程模式power.write("SYSTem:REMote")# 2. 設(shè)置電流斜率(通用方法)power.write("SOURce:CURRent:SLEW 500") # 斜率500 A/spower.write("SOURce:CURRent:SLEW:STATe ON") # 啟用斜率限制# 3. 配置序列(進階方法,若設(shè)備支持)power.write("SOURce:LIST:COUNt 3")power.write("SOURce:LIST:CURRent:DATA1 0, 2") # 第1點:0A, 2秒power.write("SOURce:LIST:CURRent:DATA2 5, 2, 0.01") # 第2點:5A, 2秒, 過渡時間10mspower.write("SOURce:LIST:CURRent:DATA3 0, 2") # 第3點:0A, 2秒power.write("SOURce:LIST:FUNCtion ON") # 啟用序列# 4. 啟動輸出power.write("OUTPut:STATe ON")# 5. 驗證設(shè)置current_slew = power.query("SOURce:CURRent:SLEW?")print(f"當(dāng)前電流斜率: {current_slew.strip()} A/s")power.close()
SYSTem:ERRor?)。