測量儀器中運用的腳本
當測試測量儀器增加了腳本支持時,最困難的選擇是什么呢?對拉,是如何向用戶介紹腳本!
這種困難包括需要回答的一些難題,例如:“如何集成儀器指令集和腳本環(huán)境?”“用戶如何將腳本載入儀器中?”吉時利選擇將腳本環(huán)境和指令集完全集成,這意味著所有儀器指令都是完全合法的Lua語句。基本上,送到儀器上的每條指令消息都作為Lua程序執(zhí)行。
這種選擇使用戶很容易地從使用單條指令控制儀器過渡到使用腳本控制儀器,因為不需要學習整個新指令集。與腳本中使用的命令相同,指令可以通過GPIB或LXI接口發(fā)送到儀器。這極大地簡化了從基于指令的簡單控制到基于腳本的控制的過渡過程。用戶能簡單地發(fā)送較大的腳本而不是單獨的指令到儀器。
下面我們用代碼來舉例說明一下:
案例分析
這種選擇的缺點是儀器指令可能對于第一次使用的用戶有點陌生。舉一些例子有助于說明這一缺點。這些例子比較了吉時利2400型源表(基于SCPI的單元)和吉時利2602型雙通道數(shù)字源表(基于TSP的單元)。
讓2400的源輸出電流的指令是:
::SOUR:FUNC CURR
2602對應(yīng)的指令是:
smua.source.func = smua.DC_AMPS
smua前綴指定雙通道儀器2602的通道A。除了等號外,其余的指令類似于SCPI指令。這是Lua的賦值運算,將mua.source.func屬性設(shè)為smua.DC_AMPS的值。
查詢指令有一些陌生。因為指令是有效的Lua語句,所以使用print函數(shù)產(chǎn)生輸出。SCPI查詢返回到2400的源函數(shù)是:
:SOUR:FUNC?
2602對應(yīng)的指令是:
print(smua.source.func)
正如SCPI儀器通過分號分隔單獨指令以支持復(fù)合指令,基于腳本的儀器也能通過語句分隔符分隔指令以支持復(fù)合指令。在Lua中,語句分隔符是空白字符。
假設(shè)我們的儀器已經(jīng)配置為電壓源。對于2400,以下指令消息將設(shè)置輸出電平,然后打開輸出:
:SOUR:VOLT 1.0; :OUTP 1
對于2602,相應(yīng)指令消息是:
smua.source.levelv = 1.0 smua.source.output = 1
上述例子說明腳本儀器可以表現(xiàn)得與傳統(tǒng)設(shè)備非常類似。僅指令語法稍;有改變。為了利用腳本引擎的全部能力,用戶只用發(fā)送消息來使用腳本語言功能。
評論