Skip to main content

Command Palette

Search for a command to run...

打造你的自動化實驗室:儀器控制入門 (4)

Updated
•1 min read•View as Markdown
打造你的自動化實驗室:儀器控制入門 (4)

第四部分:實戰演練 —— 操作 Chroma 電子負載

學會了控制電源供應器後,我們來挑戰另一種在電力電子測試中不可或缺的儀器:電子負載 (Electronic Load)。電子負載可以用來模擬待測物 (如電源供應器、電池) 的負載情況。

我們將以 Chroma 可程式化直流電子負載 為例。

1. 任務目標

這次的任務是模擬一個設備正在消耗 0.5A 的恆定電流:

  1. 設定電子負載為「定電流 (Constant Current, CC)」模式。

  2. 設定拉載電流值為 0.5A。

  3. 開啟負載輸入 (開始拉載)。

  4. 等待 3 秒鐘。

  5. 讀取此時負載兩端的電壓和實際拉載的電流。

  6. 關閉負載輸入。

2. 查詢儀器手冊

同樣,我們需要查閱儀器的編程手冊來找到對應的 SCPI 指令。對於 Chroma 電子負載,常見的指令可能如下:

  • 設定模式: MODE <CCH|CCM|CCL> (電子負載的定電流細分為三種模式 CCH, CCM, CCL)

  • 設定定電流值: CURR:STAT:L1 <current>

  • 開啟/關閉負載: LOAD <ON|OFF>

  • 讀取量測電壓: FETCh:VOLTage?

  • 讀取量測電流: FETCh:CURRent?

  • 重置儀器: *RST (在開始新測試前重置儀器是個好習慣)

3. 編寫控制腳本

讓我們將這些指令整合到一個自動化測試腳本中。

import pyvisa
import time

# --- 設定區 ---
VISA_ADDRESS = '請換成你的 Chroma 電子負載位址'
LOAD_CURRENT = 0.5

# 建立資源管理器
rm = pyvisa.ResourceManager()

try:
    # 開啟與儀器的連線
    eload = rm.open_resource(VISA_ADDRESS)
    eload.timeout = 5000

    # 在開始前,發送重置指令,讓儀器回到預設狀態
    eload.write('*RST')
    print(f"成功連接到: {eload.query('*IDN?').strip()}")

    # --- 開始自動化流程 ---

    # 1. 設定為定電流模式
    print("設定為定電流 (CCM) 模式...")
    eload.write('MODE CCM')

    # 2. 設定拉載電流
    print(f"設定拉載電流為: {LOAD_CURRENT}A")
    eload.write(f'CURR:STAT:L1 {LOAD_CURRENT}')

    # 3. 開啟負載
    print("開啟負載...")
    eload.write('LOAD ON')

    # 4. 等待 3 秒
    time.sleep(3)

    # 5. 讀取量測值
    voltage = float(eload.query('FETC:VOLT?'))
    current = float(eload.query('FETC:CURR?'))
    print(f"量測結果 -> 電壓: {voltage:.3f}V, 電流: {current:.3f}A")

except Exception as e:
    print(f"發生錯誤: {e}")

finally:
    # 6. 關閉負載
    if 'eload' in locals():
        print("關閉負載。")
        eload.write('LOAD OFF')
        eload.close()
        print("儀器連線已關閉。")

透過這個範例,您可以看到,即使是不同的儀器,只要它們都遵循 SCPI 標準,控制的邏輯和 PyVISA 的使用方法都是非常相似的。這正是儀器控制標準化的威力所在。

參考資料

More from this blog

打造你的自動化實驗室:儀器控制入門 (7)

第七部分:終極整合 —— 自動化效率量測與繪圖 在前面的章節中,我們學會了如何獨立控制各種儀器。現在,是時候將它們組合起來,完成一個在電力電子領域中至關重要的量測任務:自動化效率測試。 效率是衡量電源轉換器性能的核心指標。手動測試效率不僅耗時、繁瑣,而且容易出錯。透過 Python,我們可以將整個流程自動化,在幾分鐘內完成數十個測試點的量測與繪圖。 1. 硬體與接線設置 這個任務需要三台儀器與一個待測物 (Device Under Test, DUT) 協同工作。 儀器清單: 電源供應器 (...

Oct 21, 20254 min read
打造你的自動化實驗室:儀器控制入門 (7)

打造你的自動化實驗室:儀器控制入門 (6)

第六部分:讓程式更健壯 —— 最佳實踐 到目前為止,我們的腳本都能順利運作,但它們更像是「一次性」的腳本。在真實的專案中,我們需要考慮程式的穩定性、可讀性和可重複使用性。 1. 簡化資源管理:with 陳述式 在之前的範例中,我們都使用 try...finally 來確保 instrument.close() 一定會被執行。這雖然可行,但 Python 提供了一個語法來處理這種「需要獲取和釋放資源」的情境,那就是 with 陳述式。 PyVISA 的資源物件支援 with 陳述式。當程式碼區塊結...

Oct 21, 20252 min read
打造你的自動化實驗室:儀器控制入門 (6)

打造你的自動化實驗室:儀器控制入門 (5)

第五部分:實戰演練 —— 使用 Keysight DAQ 進行多通道量測 現在,我們來看看如何控制一個功能強大的資料擷取系統 (Data Acquisition System, DAQ),例如 Keysight DQA970A。 DAQ 的強項在於它擁有多個通道,可以同時或依序量測多個不同的物理量,如電壓、溫度、電阻等。 1. 任務目標 我們的任務是設定一個多通道的掃描清單,並一次性讀取所有通道的數值: 設定通道 101 用於量測直流電壓 (DC Voltage)。 設定通道 102 用於量...

Oct 21, 20251 min read
打造你的自動化實驗室:儀器控制入門 (5)

打造你的自動化實驗室:儀器控制入門 (3)

第三部分:實戰演練 —— 控制 Chroma 電源供應器 在前一個部分,我們學會了如何與儀器建立連線並讀取其身份。現在,讓我們來做一些更有趣、更實用的事情:實際控制一台儀器來完成一個自動化任務。 我們將以常見的 Chroma 可程式化直流電源供應器 為例。 1. 任務目標 我們的目標是編寫一個 Python 腳本,自動完成以下操作: 設定電源供應器的輸出電壓為 5.0V。 設定電流上限為 1.0A。 開啟電源輸出。 等待 2 秒鐘。 讀取實際的輸出電壓與電流。 關閉電源輸出。 2...

Oct 8, 20252 min read
打造你的自動化實驗室:儀器控制入門 (3)

工程師的成長方程式

8 posts

深度探討一位硬體測試工程師如何跨越專業界線,系統性地優化職涯與人生。內容涵蓋:實用Python代碼應用、測試工作哲學、建立FIRE路徑的投資理財方法、個人成長心得與優質書評。讓你的時間與金錢都獲得最佳配置,使成長與自由有跡可循。