SCPI

SCPI

可程式儀器標準命令(英語:Standard Commands for Programmable Instruments,縮寫:SCPI)定義了一套用於控制可程式測試測量儀器的標準語法和命令。

基本介紹

  • 中文名:可程式儀器標準命令
  • 外文名:Standard Commands for Programmable Instruments
  • 縮寫:SCPI
  • 領域:硬體
概述,歷史,語法,參數,串聯命令,縮略命令,

概述

SCPI於1990與IEEE 488.2協定一起面世。這套標準定義了可用於控制一切儀器的語法,命令結構以及數據格式。比如,通用的命令,如配置儀器參數的命令CONFigure,測量命令MEASure等。這些命令可用於任一儀器,並且同一類的命令屬於同一子系統里。SCPI同時也定義了若干儀器的種類。比如,任何可控制的電源都會實現DCPSUPPLY基本功能類型。儀器的類別規定了它們會去實現什麼樣的子系統,當然也包括針對儀器的特定功能。
需要注意的是,SCPI並未定義物理層的傳輸信道的實現方法。雖然上文指出它最開始是和IEEE 488.2(即GPIB)面世的,但SCPI控制命令也可用於串口(RS-232),乙太網,USB接口,VXIbus等若干硬體匯流排。
SCPI命令是ASCII字元串,通過物理傳輸層傳入儀器。命令由一連串的關鍵字構成,有的還需要包括參數。在協定中,命令規定為如下形式:CONFigure。在使用中,即可以寫全名,也可以僅寫僅包含大寫字母的縮寫。通常儀器對於查詢命令的反饋也為ASCII代碼。在傳輸大量數據時,二進制數據也是可以使用的。

歷史

首次發布於1990年,SCPI的起源是IEEE-488的另外一個層。 IEEE-488.1指定了物理和電氣匯流排,IEEE488.2指定了協定和數據格式,但是都沒有指定儀器的指令。不同的製造商,甚至不同的型號、相同類型的儀器都需要使用不同的命令集。 SCPI創建了一個標準,可以在所有的製造商和所有型號中通用。它需要使用的IEEE488.2數據格式,但不必非得是-488.1匯流排在2002-2003年,SCPI協會投票成為IVI基金會的一部分(可互換虛擬儀器)。

語法

SCPI命令大致分為兩種功能:
改變儀器運行狀態的set操作(打開/關閉電源輸出),或者查詢儀器狀態的query操作(例如讀取輸出電壓值)。查詢命令一般以問號(?)結尾。有些命令即可以用來設定,也可以用來查詢儀器。
相似的命令可以被歸類成一種層狀或樹狀結構。例如,任何讀取儀器測量結果的命令均可以MEASure開頭。特定的子命令以冒號同上級命令分隔開。例如,測量直流電壓會是這樣的形式:MEASure:VOLTage:DC?,或者測量交流電流會是這樣的形式:MEASure:CURRent:AC?

參數

有些命令需要額外的參數。參數一般跟在命令的後面,以空格隔開。例如,將某個儀器的觸發模式設為normal的命令可寫為:TRIGer:MODe NORMal。上述命令里NORMal即為參數。

串聯命令

多個命令可用一條語句傳送至儀器,只需在每條命令後使用分號;隔開即可。同時,除了第一條命令,隨後的每條命令前必須加一個分號的前綴(除非其以星號開頭)。例如,測量直流電壓和交流電流可以寫成一條語句:MEASure:VOLTage:DC?;:MEASure:CURRent:AC?

縮略命令

可以只傳送命令名中的大寫字母部分。例如,命令SYSTem:COMMunicate:SERial:BAUD 2400將會設定RS-232通訊連線埠的比特率為2400。這個命令可以簡寫為SYST:COMM:SER:BAUD 2400。

相關詞條

熱門詞條

聯絡我們