POLITECHNIKA WARSZAWSKA
INSTYTUT SYSTEMÓW ELEKTRONICZNYCH
LABORATORIUM SYSTEMÓW
POMIAROWYCH
INSTRUKCJA DO ĆWICZENIA NR 8
DEMONSTRACJE SYSTEMÓW
POMIAROWYCH W ŚRODOWISKU
SPRZĘTOWYM MAGISTRALI VXI
I ZBIORU KOMEND SCPI
Do użytku wewnętrznego opracował dr Antoni Leśniewski
adiunkt w ISE PW, ul. Nowowiejska 15/19, 00-665 Warszawa
e-mail: A.Lesniewski@ise.pw.edu.pl
Warszawa, styczeń 2005
1. Cel ćwiczenia
Celem ćwiczenia jest pokazanie przydatności graficznego języka VEE
1
[AGILENT] w pro-
jektowaniu cyfrowego analizatora widma sygnałów kwazistacjonarnych. Przyjmuje się przy tym
założenie, że analizator powinien pracować w czasie na bieżąco, a bank analizujących widmo
filtrów pasmowych będzie emulowany za pomocą algorytmu FFT. Głównym celem metrologicz-
nym ćwiczenia jest pokazanie, jak należy korzystać ze sterowników przyrządów w rzeczywistych
warunkach pomiarowych [WINIECKI ’01], [MIELCZAREK ’99], [HELSEL ’95].
Ćwiczenie jest kontynuacją Ćwiczenia Nr 5 [ĆWICZENIE NR 5].
2. Opis ćwiczenia
W ćwiczeniu wykorzystywane są dwa przyrządy umieszczone w kasecie standardu VXI
[IEEE 1155], sterowane poprzez interfejs USB/GPIB z komputera PC. Są to:
HP1440 generator sygnału sinusoidalnego, trójkątnego bądź prostokątnego w zakresie często-
tliwości do 21 MHz, o programowanej amplitudzie do 10 V, składowej stałej w zakresie ±5 V
oraz fazie początkowej w przedziale ±720
◦
.
HP1410 woltomierz cyfrowy napięcia stałego i zmiennego, omomierz i częstościomierz.
Środowisko VEE posiada zbiór obiektów służących do komunikacji z urządzeniami. Znajdują
się one w menu I/O.
2.1. Programowe sterowniki przyrządów
Do sterowania przyrządami pomiarowymi służą obiekty czterech typów:
— sterownik typu Direct I/O (rysunek 1) umożliwiający bezpośrednią komunikację z urządze-
niem za pośrednictwem zestawu komend, najczęściej zgodnych ze standardem SCPI (Stan-
dard Commands for Programmable Instruments
) [SCPI ’94],
— sterownik typu Plug&play Driver bazujący na zbiorze funkcji zawartych w bibliotece
dostarczanej przez producenta urządzenia (zgodnej ze standardową biblioteką VISA (Virtual
Instrument Software Architecture
)),
— sterownik typu Panel Driver, dostarczany wraz z VEE, zapewniający sterowanie wszyst-
kimi parametrami przyrządu poprzez panel graficzny,
— sterownik typu Component Driver umożliwiający projektantowi dostęp do wybranych
funkcji (komponentów) przyrządu.
WRITE TEXT "*IDN?" EOL
READ TEXT x STR
< Double-Click to Add Transaction >
x
gen (hp1440 @ 70911)
HEWLETT-PACKARD,E1440A,0,REV 3.15
AlphaNumeric
Rysunek 1. Sterownik Direct I/O
W przypadku obiektu Direct I/O nie jest potrzebny sterownik programowy przyrządu, na-
tomiast korzystanie z tego obiektu wymaga znajomości komend i sposobu komunikacji z urza-
dzeniem. Jest to najszybszy, ale też wymagający dużego zasobu wiedzy, sposób programowania
przyrządu. Umożliwia dostęp do dowolnych programowalnych parametrów.
1
Visual Engineering Environment
1
Obiekt Plug&play Driver jest sterownikiem programowym zawierającym bibliotekę funkcji
służących do sterowania konkretnym przyrządem. Sterownik ten jest dostarczany przez pro-
ducenta przyrządu. Użycie tego obiektu polega na wywoływaniu odpowiednich standardowych
funkcji bibliotecznych. Umożliwia użycie przyrządów dowolnego producenta, szybkość działa-
nia jest porównywalna z szybkością obiektu Direct I/O, natomiast jest bardziej uniwersalny,
niezależny od platformy sprzętowo-programowej.
Obiekt Panel Driver ma postać zbliżoną do płyty czołowej przyrządu pomiarowego. Obiekt
ten ukrywa przed użytkownikiem wszystkie szczegóły wymiany danych przez interfejs, wymaga
jednak specjalnego sterownika programowego. Sterownik ten zawiera opis graficznej reprezen-
tacji panelu przyrządu oraz definicje komponentów wykonujących operacje oferowane przez
urządzenie. Do komponentów możliwy jest dostęp interaktywny za pomocą przycisków i pól
wyświetlaczy danych. Dostęp z poziomu programu jest realizowany za pośrednictwem terminali
wejściowych i wyjściowych (rysunek 2). Jest to najbardziej naturalny i wygodny dla użytkow-
nika sposób sterowania przyrządem.
300
500
700
900
100
1000
500
Real64 Slider
Reset
Main
Func
Sine
Freq
500
Hz
Ampl
1
Vpp
Offs
0
V
Phase
<
0
> deg
Step
1
Asn 0
Mode
Fixed
Outp
Signal OFF
Error
FREQUENCY
gen (hp1440 @ 70911)
AlphaNumeric
Rysunek 2. Panel Driver
Obiekt Component Driver korzysta z tego samego sterownika przyrządu co Panel Driver,
jednak tylko w celu dostępu do komponentów (obiekt nie posiada panelu graficznego). Różnica
w działaniu tych obiektów polega na tym, że w przypadku obiektu Panel Driver wysyłane są
do przyrządu wszystkie rozkazy, które są niezbędne do ustawienia przyrządu w stan odpowia-
dający graficznemu panelowi sterującemu, natomiast w przypadku obiektu Component Driver
programowane są tylko te ustawienia, które odpowiadają terminalom wyjściowym obiektu oraz
odczytywane są tylko te komponenty, dla których istnieją terminale wejściowe. Dzięki temu ko-
munikacja za pomocą obiektu Component Driver przebiega szybciej niż poprzez Panel Driver.
Poza sterownikami Plug&play, programowe sterowniki przyrządów mogą występować w do-
wolnej kombinacji.
2.2. Konfiguracja
Przed rozpoczęciem pracy z urządzeniem należy dokonać konfiguracji programu VEE. Kon-
figuracja sterowników rozpoczyna się od wybrania listy przyrządów z głównego menu I/O ⇒
InstrumentManager.... Następnie trzeba wybrać z menu Instrument pozycję Add i wpisać
dane przyrządu:
Name: nazwę przyrządu, np. generator,
2
Interface: wybrać opcję GPIB,
Address: wpisać 70911 (pierwsza cyfra oznacza adres karty interfejsu swobodnego sterownika
systemowego (interface select code), dwie następne – adres przyrządu na szynie GPIB – w
tym przypadku kasety VXI, a dwie ostatnie określają adres wtórny przyrządu, tzn. adres
generatora w kasecie VXI),
Gateway: wpisać chopin0 (jest to nazwa sieciowa komputera, do którego jest dołączona kaseta
VXI).
Następnie przyciskiem Advanced trzeba wybrać okienko Advanced Instrument Properties, a w nim
zakładkę Panel Driver i w pozycji ID Filename: wybrać z listy plik sterownika hpe1440a.cid (jest
to plik typu compiled instrument driver). W pozycji Sub Address: należy wpisać wartość 11,
określającą adres wtórny przyrządu. W zakładce General wpisać w okienku Description: hp1440
i potwierdzić przyciskiem OK i ponownie OK w okienku Instrument Properties.
Powtórzyć powyższe czynności począwszy od pozycji Instrument Add, wpisując dane dru-
giego przyrządu:
Name:
woltomierz
,
Interface: GPIB,
Address:
70903
,
Gateway: chopin0.
Następnie przyciskiem Advanced wybrać okienko Advanced Instrument Properties, a w nim
zakładkę Panel Driver i w pozycji ID Filename: wybrać z listy sterownik hpe1410a.cid. W
pozycji Sub Address: należy wpisać wartość 3 (adres woltomierza w kasecie VXI). W zakładce
General
wpisać w okienku Description: hp1410 i potwierdzić przyciskiem OK i ponownie OK w
okienku Instrument Properties.
Teraz trzeba zapisać konfigurację przyciskiem Save.
3. Zadania do wykonania
Każdy ze studentów powinien skonfigurować przyrządy wg danych z punktu 2.2. Następnie
trzeba sprawdzić poprawność konfiguracji poprzez próbę połączenia się przez sieć z kasetą VXI.
Pierwsze zadanie polega na przetestowaniu komunikacji z generatorem. W tym celu na-
leży utworzyć program pokazany na rysunku 3. Do komunikacji z generatorem użyto tutaj
sterownika typu Direct I/O z menu I/O ⇒ InstrumentManager.... W celu zablokowania
możliwości zmiany ustawień przyrządu przez innego użytkownika, zastosowano blokadę inter-
fejsu komendą EXECUTE LOCK INTERFACE wpisaną w sterowniku interfejsu dostępnym w menu
I/O ⇒ Advanced I/O ⇒ Interface Operations. Po zakończeniu programowania przyrządu
należy zwolnić interfejs komendą EXECUTE UNLOCK INTERFACE. Do sygnalizacji braku dostępu
wykorzystano tu blok z menu Flow ⇒ Raise Error.
Drugie zadanie polega na przetestowaniu w podobny sposób komunikacji z woltomierzem.
Po sprawdzeniu poprawności komunikacji można przystąpić do wykonania następnego za-
dania.
Trzecie zadanie polega na zaprogramowaniu obu przyrządów – generatora i woltomierza –
w celu zebrania rekordu zawierającego 128 próbek zebranych z co najmniej dwóch okresów
sygnału generatora. Do programowania wykorzystać tabele 1 i 2 zawierające zestaw komend
SCPI zastosowanych przyrządów.
3
!
"
#
$
%
&
'
(
(
)
*
+
)
,
%
&
-
.
/
/
0
1
!
"
2
&
3
!
4
5
6
7
+
%
&
*
+
/
0
1
!
"
2
&
3
!
4
5
6
7
+
%
&
*
+
&
%
8
&
%
8
9
!
!
#
'
7
!
&
!
Rysunek 3. Test generatora (dotyczy zadań 1 i 2)
Proponowane ustawienia (patrz też rysunek 4):
dla generatora E1440A
FUNC SIN
VOLT 1
FREQ 120
OUTP ON
dla woltomierza E1410A
CONF:VOLT 3
CAL:ZERO:AUTO OFF
VOLT:APER 1E-5
SAMP:SOUR TIM
SAMP:TIM 0.001
SAMP:COUN 128
INIT
FETC?
4
Woltomierz (hpe1410a @ 70903)
WRITE TEXT "CONF:VOLT 3" EOL
WRITE TEXT "CAL:ZERO:AUTO OFF" EOL
WRITE TEXT "VOLT:APER 1E-5" EOL
WRITE TEXT "SAMP:SOUR TIM" EOL
WRITE TEXT "SAMP:TIM 0.001" EOL
WRITE TEXT "SAMP:COUN 128" EOL
WRITE TEXT "INIT" EOL
WRITE TEXT "FETC?" EOL
READ TEXT x REAL64 ARRAY:128
< Double-Click to Add Transaction >
x
generator (hp1440 @ 70911)
WRITE TEXT "FUNC SIN" EOL
WRITE TEXT "VOLT 1" EOL
WRITE TEXT "FREQ 120" EOL
WRITE TEXT "OUTP ON" EOL
< Double-Click to Add Transaction >
1
0
Rysunek 4. Ustawienia generatora i woltomierza (dotyczy zadania 3)
Końcowe zadanie polega na zapisaniu danych wyjściowych woltomierza w pliku. Należy przy
tym skorzystać ze schematu przedstawionego na rysunku 5 w instrukcji do Ćwiczenia Nr 5.
Poprawnie wykonane ćwiczenie powinno zakończyć się wyświetleniem widma zapamiętanego
przebiegu w postaci wykresów analogicznych do uzyskanych w Ćwiczeniu Nr 5.
5
Tabela 1. Komendy SCPI dla generatora E1440A
Komenda
Parametry
:ABORt
:OUTPut
[:STATe]
Boolean
[:SOURce]
:VOLTage|:POWer|:CURRent
[:LEVel]
[:IMMediate]
[:AMPLitude]
numeric
:OFFSet
numeric
:UNIT
V | DBM | VRMS
[:SOURce]
:FREQuency
[:CW|:FIXed]
numeric
[:SOURce]
:FUNCtion
[:SHAPe]
DC | SINusoidal | SQUare |
TRIangle | RUP | RDOWn | TTL
:SYSTem
:ERRor?
:VERSion?
6
Tabela 2. Komendy SCPI dla woltomierza E1410A
Komenda
Parametry
:ABORt
:CALibration
:ZERO:AUTO
OFF | 0 | ON | 1 | ONCE
:CONFigure
:VOLTage:AC
[numeric[,numeric]]
:VOLTage:ACDC
[numeric[,numeric]]
:VOLTage[:DC]
[numeric[,numeric]]
:FETCh?
:INITiate
[:IMMediate]
:INPut
:COUPling
AC | DC
:IMPedance:AUTO
Boolean
:STATe
Boolean
:MEASure
:VOLTage:AC?
[numeric[,numeric]]
:VOLTage:ACDC?
[numeric[,numeric]]
:VOLTage[:DC]?
[numeric[,numeric]]
:READ?
:SAMPle
:COUNt
1 − 16777215 | MIN | MAX
:SOURce
IMM | TIM
:TIMer
680µs − 2100s | MIN | MAX
[:SENSe:]
VOLTage:AC:RANGe
numeric
VOLTage:APERture
10µs | 0.1ms | 1ms
VOLTage[:DC]:RANGe
numeric
VOLTage:NPLC
numeric
VOLTage:RANGe:AUTO
Boolean
VOLTage:RANGe
numeric
VOLTage:RESolution
numeric
:SYSTem
:ERRor?
:TRIGger
:BUFFered
Boolean
:COUNt
1 − 16777215 | MIN | MAX
:DELay:AUTO
Boolean
:DELay
1µs − 2100s | MIN | MAX
[:IMMediate]
:SLOPe
POS | NEG
:SOURce
BUS | EXT | HOLD | IMM
| TTLT0 - TTLT7
7
Literatura
[WINIECKI ’01]
W. Winiecki, J. Nowak, S. Stanik: Graficzne zintegrowane środowiska
programowe. Rozdz. 5, Mikom, Warszawa 2001.
[MIELCZAREK ’99] W. Mielczarek: Urządzenia pomiarowe i systemy kompatybilne ze standardem
SCPI. Rozdz. 10, Helion, Gliwice 1999.
[HELSEL ’95]
R. Helsel: Graphical Programing – A Tutorial for HP VEE. Prentice Hall
PTR, 1995.
[AGILENT]
Agilent VEE 6.0 Manuals in PDF Format – CD version.
[ĆWICZENIE NR 5] Jerzy Jędrachowicz: Symulacja systemu pomiarowego w środowisku języka
graficznego VEE. Instrukcja do Ćwiczenia Nr 5, ISE PW, 2004.
[IEEE 1155]
IEEE Std 1155: IEEE Standard for VMEbus Extensions for Instrumentation:
VXIbus, 1992.
[SCPI ’94]
Standard Commands for Programmable Instruments (SCPI), SCPI
Consortium, 1994.
8