1 Standard Commands for Programmable Instruments (SCPI)
2 Model urządzenia pomiarowego PamięćWyzwalacz Przełącznik sygnałów Funkcja pomiarowa Formatowanie wyniku pomiaru Generator sygnału
3 Uproszczony model instrumentu pomiarowego Uproszczony model urządzenia generującego sygnał
4 Rozszerzony model funkcji pomiarowej Wejście Czujnik Matematyczna obróbka wyniku
5 Sense
6 Rozszerzony model generatora sygnałów
7 Komenda musi być wysłana wraz ze ścieżką: SENSe:DATA? Nawiasy [] oznaczają że parametr lub polecenie znajdujące się wewnątrz nich jest opcjonalne: SENSe:DATA? Nawias {} oznacza, że można użyć kilka parametrów. Znak | oznacza alternatywę lub. ? na końcu komendy to zapytanie. W wyniku urządzenie powinno nam przesłać informację o którą pytamy. Nie jest istotne czy komenda ma duże litery. Można skrócić komendy do ilości znaków pisanych dużymi literami.
8 Instrukcje pomiarowe MEASure? – to polecenie (jeżeli są ustawione warunki pomiaru) dokona pomiaru i wyśle dane. Dla wykorzystania wielu specyficznych ustawień to polecenie bywa dzielone na dwa: CONFigure i READ? ABORt; CONFigure: ; READ: ? [, ];
9 MEASure[: ] [: ] : ? przykład: MEASure:ARRay:VOLTage:DC? READ[: ]? – polecenie to może być podzielone na dwa: INITiate [:IMMediate] i FETCH? przykład: CONFigure:VOLTage:RISE:TIME 10 PCT, 90 PCT, 0.001 S SWEep:TIME.05 S VOLTage:AC:RANGe 5 V READ:VOLTage:RISE:TIME? INITiate – wykonuje pomiar. FETCH? – obrabia wynik pomiaru i wysyła dane. CONFigure: [,source list] przykład: CONFigure:VOLTage:AC 5,.001
10 Podstawowe funkcje pomiarowe transducer
11
12
13 Zbiór komend matematycznych Zestaw ten służy do przeliczania zmierzonych i przetworzonych na formę reprezentacji cyfrowej danych.
14
15
16
17
18
19 Zbiór komend uśredniania
20 CALCulate:AVERage:TCONtrol EXPonential|MOVing|NORMal|REPeat EXPonential: Dla TYPE SCALar Xn rzeczywiste TYPE SCALar Xn zespolone TYPE RMS Xn rzeczywiste TYPE RMS Xn zespolone CALCULATE:AVERage:TCONtrol EXPonential dla TYPE:MINImum| MAXimum | ENVelope nieokreślona MOVing - W miarę dodawania nowych danych stare są wymazywane. REPeat – czyści dane i zeruje licznik, restartuje nowe uśrednianie. NORMal – uśrednianie ustawiane komendą TYPE.
21 CALCulate:AVERage:TYPE COMPlex | ENVelope | MAXimum | MINimum | RMS | SCALar COMPlex osobne sumowanie dla części rzeczywistej i zespolonej ENVelope – zachowane minimum i maksimum ze zbioru Xn Gdy X n jest rzeczywiste RMS SCALar MAXimum – AVG(n) = MAX(X 1 … X n ) MINimum – AVG(n) = MIN(X 1 ….X n )
22 CALCulate:AVERage:TYPE COMPlex | ENVelope | MAXimum | MINimum | RMS | SCALar Gdy X n jest zespolone RMS SCALar MAXimum – AVG(n) = MAX(MAG(X 1 )…MAG(X n )) MINimum – AVG(n) = MIN(MAG(X1)…MAG(Xn))
23 CALCulate:DATA? – czyta wynik systemu matematycznego. CALCulate:Derivative – liczy pochodną ze zbioru pomiarów. CALCulate:FEED – określa jakie dane mają być przetwarzane w systemie matematycznym. CALCulate:FILTER: [GATE] : TIME: STATe ON | OFF włącza lub wyłącza filtr czasowy. [GATE]: TIME:[:TYPE] BPASs | NOTCh BPASs – przepuszcza informacje w oknie czasowym. NOTCh – blokuje informacje w oknie czasowym. [GATE]:TIME:STARt – czas startu dla filtra. Zakres zależy od urz. [GATE]:TIME:STOP - czas stopu dla filtra. Zakres zależy od urz. [GATE]:TIME:SPAN - czas działania filtru od startu.
24 CALCulate:FORMat NONE | MLINear | MLOGarithmic | PHASe | REAL | IMAGinary | SWR | GDELay | COMPlex | NYQuist | NICHols | POLar | UPHase NONE – wyłaczenie przetwarzania danych. MLINear MLOGarithmic PHASe REAL IMAGinary SWR GDELay COMPlex|NYQuist POLar NICHols
25 CALCulate:MATH CALCulate:MATH[:EXPRession] CALCulate:MATH:STATE ON|OFF CALCulate:SMOothing – wygładzanie. CALCulate:SMOothing:STATe ON|OFF – włączone lub nie. CALCulate:SMOothing:APERture
26 Zbiór komend związanych z kalibracją
27 CALibration:ALL CALibration:ALL? CALibration:AUTO ON|OFF|ONCE - kalibracja z ustaloną częstością. CALibration:DATA? – przesyła ostatnie dane z kalibracji. CALibration:SOURce INTernal|EXTernal – sygnał referencyjny wewnętrzny|zewnętrzny CALibration:STATe ON|OFF CALibration:VALue CALibration:ZERO – mierzona wartość przez sensor traktowana jest jako zero. CALibration:ZERO:AUTO ON|OFF|ONCE
28 Komendy zbioru format FORMat:READings:BORDer NORMal|SWAPped – SWAPped to odwrocone bity w bajcie. FORMat:READings:DATA [, ] - ASCii, INTeger, UINTeger, REAL, HEXadecimal, OCTal, BINary, and PACKed. FORMat:SREGister ASCii | BINary | HEXadecimal | OCTal – format danych z rejestrów stanów.
29 Zbiór INPut
30
31 INPut:ATTenuation tłumienność. INPut:ATTenuation:AUTO ON | OFF | Once – zmienia tłumienność by osiągnąć maksimum czujnośći. INPut:ATTenuation:STATe ON | OFF INPut:BIAS:TYPE CURRent | VOLTage INPut:BIAS:STATe ON | OFF INPut:BIAS:CURRent:AC - odjęcie bazowego prądu zmiennego. INPut:BIAS:CURRent:DC - odjęcie bazowego prądu stały. INPut:BIAS:VOLTage:AC INPut:BIAS:VOLTage:DC
32 INPut:COUPling AC | DC | GROund – zwarcie sygnału AC, DC INPut:FILTer:AWEighting – filtr o charakterze czułości słuchu. INPut:FILTer:HPASs:FREQuency - częstotliwość graniczna filtru gurnoprzepustowego. INPut:FILTer:HPASs:STATe ON | OFF INPut:FILTer:LPASs:FREQuency INPut:FILTer:LPASs:STATe ON | OFF INPut:GAIN - wzmocnienie. INPut:GAIN:AUTO ON | OFF | ONCE INPut:GAIN:STATe ON | OFF INPut:IMPedance INPut:OFFSet INPut:OFFSet:STATe ON | OFF INPut:POLarity NORMal | INVerted
33 Komendy wyzwalające akcje pomiaru
34
35 ABORt – kasowanie układu wyzwalania. ARM:SEQuence:DEFine ARM:SEQuence:LAYer:DELay - czas od zdarzenia do pomiaru. ARM:SEQuence:LAYer:ECOunt - ile razy musi zajść zdarzenie aby uruchomić pomiar. ARM:SEQuence:LAYer:SLOPe POSitive | NEGative | EITHer – która z krawędzi sygnału wyzwalającego ma być uznana jako początek akcji pomiaru.
36 ARM:SEQuence:LAYer:SOURce AINTernal | BUS | ECLTrg | EXTernal | HOLD | IMMediate | INTernal | LINE | LINK | MANual | OUTPut | TIMer | TTLTrg AINTernal – Sygnał wyzwalający jest generowany przez specjalną funkcję użądzenia. BUS – wyzwolenie pomiaru następuje przez magistralę GPIB (*TRG | GET). ECLTrg – wyzwalanie przez VXI. EXTernal – wyzwalanie sygnałem z zewnątrz. HOLD – wstrzymanie wykrywania sygnału wyzwalającego. IMMediate – wykonanie pomiaru od razu. INTernal – wyzwoleniem jest sygnał mierzony przez urządzenie np. przekroczenie określonego napięcia w woltomierzu. LINE – źródłem jest poziom napięcia na zewnętrznej linii analogowej. LINK – definiowane przez komendę LINK. MANual – generowany przez wciśnięcie specjalnego klawisza. OUTPut – sygnał z wyjścia urządzenia (generatora). TIMer – sygnał z wewnętrznego zegara ustawiany komendą TIMer. TTLTrg – wyzwalanie przez linie VXI.
37 ARM:SEQuence:LAYer:TIMer INITiate INITiate:CONTinuous ON | OFF – jeżeli jest włączone to automatycznie przejście do kolejnego wyzwolenia pomiaru. OFF jednorazowe wyzwolenie i przejście do stanu IDLE. INITiate:IMMediate – Urządzenie przechodzi ze stanu IDLE do wykonania pełnego cyklu trigerowania.
38 Manipulowanie danymi zgromadzonymi w pamięci
39 DATA:CATalog? – w wyniku dostaniemy nazwy katalogów z danymi i/lub ustawieniami. DATA:COPY, ( | ) – kopiowanie danych pomiędzy różnymi katalogami. DATA [:DATA]? – w odpowiedzi otrzymujemy dane zgromadzone w pamięci. DATA:DATA:VALue,, - zapisuje dane do określonego katalogu i numeru komurki pamięci. DATA:DATA:VALue?, - czyta dane z określonej komórki pamięci DATA:DELete[:NAME] - kasowanie utworzonego przez użytkownika katalogu. TRACe:DELete:ALL – jak wyżej ale wszystkich katalogów. DATA:FEED, ( | NONE ) – definiuje jakie jest żródło danych zapisywanych do katalogu trace_name. DATA:FREE? – w odpowiedzi dostaniemy informacje ile jest jeszcze wolnego miejsca w pamięci a ile zajętego. DATA:POINts [, ] – definiuje ile np. pomiarów ma być zapisanych w danym katalogu. DATA:POINts? - w wyniku dostajemy informację o ilości wpisów.
40 DATA:AUTO,(ON | OFF | ONCE) – automatyczne dostosowanie rozmiaru pamięci.
41 Zastosowanie SCPI na przykładzie multimetru 34401A
42
43
44 FREQuency:CW 2000000 lub FREQuency 2000000 FREQuency:CW:AUTO OFF lub FREQuency:AUTO OFF