有兩種方案或者運行獨立ICL指令(類似于發送獨立SCPI指令),或者用測試腳本語言編寫測試腳本。測試腳本語言(TSL)是一種基于標準程序語言Lua(www.lua.org)的程序語言。TSL能執行條件轉移、循環和其它屬性以實現用ICL指令控制儀器的目標。 腳本是儀器控制指令(ICL)和/或程序語句(TSL)的集合(列表)。3700系列儀器運行腳本的全部指令和語句。在儀器級運行腳本比在PC上運行測試程序快。使用腳本縮短了從PC經GPIB傳輸至儀器所需的時間。由于儀器內建測試腳本處理器(TSP),整個TSL控制程序可以裝載至測量儀器。然后,發送一個指令就能執行整個程序。在其它情況下,如果程序的某些部分駐留在PC上可能對應用更有利。腳本的優點就在于它能以任何有意義的方式劃分程序。 為了比較SCPI指令和ICL指令之間的使用區別,我們來查看運行簡單掃描的例子中的兩個指令集。2700系列SCPI指令和等效的37007CFB列TSP腳本如例1所示。 例1:電壓測量/簡單掃描通道1~20 下面的示例代碼(例1)將: l 設置直流電壓通道。 l 指定通道1至20的掃描列表。 l 將電壓讀數返回至PC主機。 ![]() ![]() 例1所示的SCPI程序可以輕松轉換為等效ICL腳本。值得注意的是,ICL指令與SCPI指令在結構上的相似性。一個區別是如何獲取讀數。在SCPI協議中,獲取讀數實際是一個兩步驟過程。首先,必須使用幾種查詢指令之一請求讀數。這個例子用的“DATA?”指令從內部緩沖區取回數據。發送查詢指令后,讀數保存在讀數隊列中。然后,控制程序必須從隊列中獲取讀數才算完成此過程。如果進一步發送指令或查詢卻沒有從讀數隊列中取得完整讀數,那么測量儀器將給出-410查詢中斷錯誤。-410查詢中斷錯誤是中斷查詢的結果并且是基于SCPI產品的常見錯誤。 在SCPI測量儀器中,發送INIT指令初始化掃描,并且測量結果總是自動保存在內部緩沖區中。而用ICL指令時并非如此。值得注意的是,在例1的代碼中scan.execute(mybuffer)指令初始化掃描。在TSL中,創建名為mybuffer的緩沖區保存測量結果。另一種選擇是創建一個變量,然后該變量能在TSP腳本中用于其它操作,例如極限測試、數學運算或作為整個測試策略的一部分。TSP函數的強大功能便從這里開始。 TSP語言遠遠超出了僅發送儀器指令;TSP語言還包含變量和變量類型、數學運算符和運算、表格和陣列、創建可以從腳本調用的用戶函數、優先級、邏輯運算符、字符串連接、條件轉移、循環控制和內建標準字符串和可調用數學庫等功能。這些TSP語言內建工具拓展了3700系列儀器的編程潛能,更重要的是相對于用SCPI編程簡化了應用開發。 想與吉時利測試測量專家互動?想有更多學習資源?可登錄吉時利官方網站http://www.keithley.com.cn/ |