<abbr id="kc8ii"><menu id="kc8ii"></menu></abbr>
  • <input id="kc8ii"><tbody id="kc8ii"></tbody></input><table id="kc8ii"><source id="kc8ii"></source></table><kbd id="kc8ii"></kbd>
    <center id="kc8ii"><table id="kc8ii"></table></center>
  • <input id="kc8ii"></input>
    <abbr id="kc8ii"></abbr>
  • <abbr id="kc8ii"></abbr>
  • <center id="kc8ii"><table id="kc8ii"></table></center>
    <abbr id="kc8ii"></abbr>
    你的位置:首頁 > 測試測量 > 正文

    融入腳本的LXI儀器讓測試變得更輕松(上)

    發布時間:2011-06-03

    中心議題:
    • 測試測量儀器中的腳本
    • 利用腳本簡化測試與測量并提高速度
    解決方案:
    • 吉時利系統源表的腳步案例分析
    • 開發有效的腳本
    • 開發基于腳本的儀器驅動程序
       

    多年來,可編程儀器表現為一種形式或另一種形式。雖然具體功能有所不同,但可編程儀器允許用戶在儀器中創建和保存一組指令(或程序),并且按需運行指令。通常,早期可編程儀器的能力和容量都非常有限,這使可編程性的使用局限于相對小而簡單的應用。較大或較復雜的應用需要使用單獨計算機或控制器通過通信接口(常常是GPIB)控制可編程儀器。

    計算技術和編程語言的進步以及嵌入式計算容量成本的穩定下降帶來了新一代可編程儀器。新型儀器突破了舊的限制,極大提高了性能和靈活性。這些儀器的一個關鍵進步是采用腳本語言提供可編程性。本文詳細介紹了腳本以及如何利用腳本簡化測試與測量并且提高速度。

    相關鏈接:
    融入腳本的LXI儀器讓測試變得更輕松(下)
    http://www.77uud.com/art/artinfo/id/80011217

    Part I:什么是腳本?測試儀器的腳本與我們說的PC腳本又有什么區別呢?

    簡單地說,腳本是用腳本語言編寫的程序以便管理一系列的動作。

    腳本遠優于常規使用的宏或記錄序列。腳本能充分利用腳本語言,其中包括循環、轉移和數據處理。雖然宏可以通過基本循環控制方法實現重復,但是腳本能提供完全執行環境,其中數值可以保存在變量中。然后,這些變量可用于控制循環和轉移判定。

    腳本語言與其它編程語言的主要區別在于在運行腳本程序之前無需預編譯。如果需要,腳本環境可以直接中斷程序或自動編譯程序。此外,腳本語言還具有編程語言的全部能力,包括存儲變量值和創建存儲的程序(函數)以便代碼重用。

    由于腳本無需單獨進行編譯,所以腳本語言非常適合于測試與測量設備的嵌入式應用。腳本可以下載到儀器上,無需額外的準備工作就能為用戶提供更多便利。

    PC上運行的腳本語言和嵌到儀器中的腳本語言之間的關鍵不同在于環境。當腳本語言運行在PC上時,它通常能訪問文件系統、幾乎無限制的存儲器、圖形顯示以及鍵盤和鼠標。當腳本語言運行在儀器上時,它不必訪問任一種設備,但這些設備通常也不需要。

    PartII:測量儀器中運用的腳本

    流行的腳本語言包括Perl、Python、VBScript和JavaScript。Lua腳本語言特別適于嵌入式應用,因為它比多數其它腳本語言運行速度更快并采用占代碼空間非常小的庫實現。吉時利選擇Lua用于支持測試腳本處理器(TSP)的儀器系列。

    當測試測量儀器增加了腳本支持時,最困難的選擇是什么呢?對拉,是如何向用戶介紹腳本!

    這種困難包括需要回答的一些難題,例如:“如何集成儀器指令集和腳本環境?”“用戶如何將腳本載入儀器中?”吉時利選擇將腳本環境和指令集完全集成,這意味著所有儀器指令都是完全合法的Lua語句。基本上,送到儀器上的每條指令消息都作為Lua程序執行。

    這種選擇使用戶很容易地從使用單條指令控制儀器過渡到使用腳本控制儀器,因為不需要學習整個新指令集。與腳本中使用的命令相同,指令可以通過GPIB或LXI接口發送到儀器。這極大地簡化了從基于指令的簡單控制到基于腳本的控制的過渡過程。用戶能簡單地發送較大的腳本而不是單獨的指令到儀器。

    下面我們用代碼來舉例說明一下:

    案例分析
    這種選擇的缺點是儀器指令可能對于第一次使用的用戶有點陌生。舉一些例子有助于說明這一缺點。這些例子比較了吉時利2400型源表(基于SCPI的單元)和吉時利2602型雙通道數字源表(基于TSP的單元)。

    讓2400的源輸出電流的指令是:
    ::SOUR:FUNC CURR
    2602對應的指令是:
    smua.source.func = smua.DC_AMPS
    smua前綴指定雙通道儀器2602的通道A。除了等號外,其余的指令類似于SCPI指令。這是Lua的賦值運算,將mua.source.func屬性設為smua.DC_AMPS的值。
    查詢指令有一些陌生。因為指令是有效的Lua語句,所以使用print函數產生輸出。SCPI查詢返回到2400的源函數是:
    :SOUR:FUNC?
    2602對應的指令是:
    print(smua.source.func)
    正如SCPI儀器通過分號分隔單獨指令以支持復合指令,基于腳本的儀器也能通過語句分隔符分隔指令以支持復合指令。在Lua中,語句分隔符是空白字符。
    假設我們的儀器已經配置為電壓源。對于2400,以下指令消息將設置輸出電平,然后打開輸出:
    :SOUR:VOLT 1.0; :OUTP 1
    對于2602,相應指令消息是:
    smua.source.levelv = 1.0 smua.source.output = 1

    上述例子說明腳本儀器可以表現得與傳統設備非常類似。僅指令語法稍有改變。為了利用腳本引擎的全部能力,用戶只用發送消息來使用腳本語言功能。
    [page]
    PartIII:儀器測試中腳本案例分析以及LXI

    今天我們會介紹實際操作時的一些案例和經驗,并且介紹一下LXI和腳本。

    通過發送以下腳本,用戶能讓儀器執行二分查找法搜索能輸出1mA電流的電壓源:
    <代碼略>

    這種腳本的好處是避免了讀取每個結果和發送指令輸出新電平所需的通信時間。雖然有理由詢問發送較長消息需要多長時間,但是通常發送一條較長的消息比來回通信許多條較短消息快得多。然而,腳本環境的一個優點是前述代碼可以封裝為函數定義,然后重用,用的時候就能完全避免發送長消息。例如:
    <代碼略>

    前面的指令不會讓儀器立刻執行,但是它創建了一個命名為“Search(搜索)”的存儲程序,之后可以用搜索指令調用:
    Search(2.5, 0.001)

    儀器有一些特點能補充腳本引擎。如果腳本環境提供儀器前面板的編程訪問,那么用戶就能創建交互式腳本提示用戶在前面板輸入參數或顯示結果。儀器還能提供非易失的板上腳本存儲,因此當儀器上電時,這些存儲的腳本就能自動執行。這允許執行預先載入的應用,無需任何用戶動作,只需要打開儀器的電源。

    嵌入式腳本為測試和測量儀器用戶提供顯著的優點。雖然嵌入式腳本具有一些次要的缺點,例如前面介紹的對查詢陌生,但是大多數用戶都能很容易使用或者適應。

    腳本語言通常能自動管理內存,所以用戶無需分配和釋放用于字符串或矩陣的存儲區。雖然這對用戶很方便,但是腳本引擎需要周期性地重新聲明不再使用的內存,這個過程被稱為“垃圾收集”。雖然垃圾收集能自動進行,但是這得花費時間,而且如果在測試序列的關鍵時間段上發生垃圾收集就會出現問題。這些問題是可以預防的,但是首先用戶必須理解垃圾收集器的影響并且知道如何在測試序列的關鍵時間段上避免垃圾收集。

    LXI和腳本

    現行的測試儀器LXI標準不要求儀器可編程或實現腳本。然而,LXI標準中的許多特點預先考慮了可編程儀器,并提供有用的功能性以增強LXI標準儀器的腳本性能。

    LXI標準要求Class A和Class B儀器通過LAN消息支持對等消息傳送,并允許Class C儀器支持這種消息傳送。LAN消息能用于通知其它LXI儀器事件或者觸發另一臺儀器執行某些功能。在接收到LAN消息時,用戶必須能指明采取什么動作。為了實現這個,最靈活的方法以及LXI標準推薦的方法是允許用戶下載可執行代碼(即腳本或程序)到儀器中,然后在接收到適合的LAN消息時執行該代碼。這提供了極大靈活性,因為用戶不被局限于一組預定動作集。

    此外,LXI定義的LAN消息格式包含一個小空間,用于包括任意數據作為消息的一部分。可以傳送可執行代碼(例如一個短腳本)作為LAN消息的一部分。這允許一臺儀器通過LAN消息控制另一臺儀器,無需預先設置回應。例如,假定一臺儀器能對被測器件(DUT)進行測量。基于測量的結果,第一臺儀器必須能改變由另一臺儀器施加到DUT上的激勵。基于第一次測量計算新的激勵值,所以在之前第一臺儀器并不知道。在這種情況下,第一臺儀器可以發送包含一個短腳本的LAN消息至第二臺儀器以調整激勵值。

    Part IV:測試和測量中應用腳本的優點

    對于許多測試和測量應用,非常適合采用PC作為控制器用于與單獨儀器通信或使用帶有積分型控制器的基于時隙的系統。但對于其它情況,那些方法或者由于大材小用而過于昂貴,或者不能勝任此任務。這些應用可以受益于基于腳本的儀器提供的額外能力和靈活性,下面介紹在測試和測量中應用腳本的優點。

    1. 結構的靈活性

    構建帶少量儀器的小型測試系統可以不帶單獨控制器;其中一臺儀器用作控制器,管理其它儀器的工作。大系統能被劃分為各含少量儀器的子系統,其中每個子系統被基于腳本的儀器管理。這簡化了系統設計并且有助于提高性能。例如在裝配線、科學應用或射頻測試應用中,這類子系統使用基于LXI腳本的儀器就能很大程度地在物理上分開。

    2. 提高性能
    由基于腳本的儀器管理將大系統劃分為子系統,這擴展了跨多處理器的控制和數據處理功能,從而提升了系統可用的總處理能力并且常常提升整體速度和吞吐量。此外,這種工作劃分支持并行測試:當中心控制器忙于其它任務時,儀器或子系統不必保持空閑狀態。

    因為當傳輸命令或數據時,由于與控制器通信造成的延時更少,所以儀器上運行的腳本能以最大速度運行。當儀器執行重復測試序列時,這尤其重要。如果用單獨的控制器,即使同樣的序列被運行了幾百次或者幾千次,每次通過時都要傳送一次指令序列到儀器。對比使用腳本的方法,僅需傳輸一次腳本,然后使用短指令可以運行任意多的次數。
    條件處理(例如當一個測量的結果確定下一個要執行的函數時)提供了另一種提高性能的手段。在腳本中,本地進行條件檢查能去除由發送第一結果至控制器,等待控制器處理,然后發送下一個指令給儀器這個過程產生的延時。

    在包含高數據率和/或大數據集的系統中,通信延遲、帶寬限制和控制器吞吐量都可能是嚴重的瓶頸。基于腳本的儀器能壓縮數據以降低帶寬要求和/或緩沖數據,當帶寬可用時再通過后臺傳輸。基于腳本的儀器還能過濾數據,例如通過僅傳送超出正常限度的數據。如前面所提到的,腳本還降低了消耗的通信帶寬,從控制器發送命令至儀器,從而提高帶寬受限應用的性能并且最小化由于通信延遲引起的時延。

    3.降低成本
    使用基于腳本的儀器構建較小或較低復雜度的測試系統不需要單獨的控制器,從而節省了控制器的成本并節省了用于控制儀器的任意單獨測試運行軟件的成本。當從基于腳本的儀器構建子系統時,構建大的測試系統同樣可以實現節約成本。

    相關鏈接:
    融入腳本的LXI儀器讓測試變得更輕松(下)
    http://www.77uud.com/art/artinfo/id/80011217

    要采購測試與測量么,點這里了解一下價格!
    特別推薦
    技術文章更多>>
    技術白皮書下載更多>>
    熱門搜索
    ?

    關閉

    ?

    關閉

    无码乱码观看精品久久| 人妻中文久久久久| 欧美在线中文字幕| 一区二区三区无码视频免费福利| 潮喷大喷水系列无码久久精品| 无码中文av有码中文a| 亚洲精品成人无码中文毛片不卡| 无码人妻精品一区二区蜜桃AV| 合区精品中文字幕| 久久亚洲AV无码西西人体| 中文字幕日韩第十页在线观看| 97性无码区免费| 人妻无码精品久久亚瑟影视| 亚洲av麻豆aⅴ无码电影| 日韩a级无码免费视频| 亚洲高清有码中文字| 无码人妻少妇色欲AV一区二区| 日本精品久久久久中文字幕| 精品无码AV无码免费专区| 中文无码熟妇人妻AV在线 | 最近完整中文字幕2019电影 | 亚洲AV无码日韩AV无码导航| 中文字幕无码一区二区免费| 日韩精品久久无码中文字幕| 乱人伦中文字幕在线看| 亚洲一区二区三区无码影院| 无码国产精品一区二区免费vr| 日本中文字幕在线电影| 超清无码无卡中文字幕| 精品久久久久久久无码| 国产成人无码一区二区三区在线| 亚洲不卡中文字幕无码| 免费无码午夜福利片69| 东京热无码av一区二区| 无码中文字幕乱在线观看| 精品亚洲成在人线AV无码| 新版天堂资源中文8在线| 中文字幕人妻色偷偷久久| 国产成人无码精品久久久免费 | 人妻AV中文字幕一区二区三区| 免费a级毛片无码免费视频120软件|