Środowisko sprzętowo-programowe VXI-SCPI

Transkrypt

Środowisko sprzętowo-programowe VXI-SCPI
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: [email protected]
Warszawa, styczeń 2005
1. Cel ćwiczenia
Celem ćwiczenia jest pokazanie przydatności graficznego języka VEE1 [AGILENT] w projektowaniu 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 metrologicznym ć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ęstotliwoś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ądzeniem za pośrednictwem zestawu komend, najczęściej zgodnych ze standardem SCPI (Standard 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 wszystkimi parametrami przyrządu poprzez panel graficzny,
sterownik typu Component Driver umożliwiający projektantowi dostęp do wybranych
funkcji (komponentów) przyrządu.
gen (hp1440 @ 70911)
WRITE TEXT "*IDN?" EOL
READ TEXT x STR
< Double-Click to Add Transaction >
AlphaNumeric
HEWLETT-PACKARD,E1440A,0,REV 3.15
x
Rysunek 1. Sterownik Direct I/O
W przypadku obiektu Direct I/O nie jest potrzebny sterownik programowy przyrządu, natomiast korzystanie z tego obiektu wymaga znajomości komend i sposobu komunikacji z urzadzeniem. 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 producenta 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łania 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 reprezentacji 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żytkownika sposób sterowania przyrządem.
Real64 Slider
gen (hp1440 @ 70911)
500
Reset
1000
900
700
FREQUENCY
500
300
100
Func
Freq
Ampl
Offs
Main
Sine
500
1
0
Hz
Vpp
V
0
> deg
Phase <
1
Asn 0
Step
Fixed
Mode
Signal OFF
Outp
AlphaNumeric
Error
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 odpowiadają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 komunikacja za pomocą obiektu Component Driver przebiega szybciej niż poprzez Panel Driver.
Poza sterownikami Plug&play, programowe sterowniki przyrządów mogą występować w dowolnej kombinacji.
2.2. Konfiguracja
Przed rozpoczęciem pracy z urządzeniem należy dokonać konfiguracji programu VEE. Konfiguracja 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 drugiego 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 należ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ę interfejsu 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 zadania.
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
2 & 3! 4 5 6 7 + % & *
+
/ 0 1 ! & % 8 "
! '
9 ! ! # # $% & ' ( ( ) *
+ ) , % & -
7 ! & & % 8 ! "
.
2 & 3! 4 5 6 7 + % & *
+
/ / 0 1 ! "
Rysunek 3. Test generatora (dotyczy zadań 1 i 2)
Proponowane ustawienia (patrz też rysunek 4):
dla generatora E1440A
FUNC
VOLT
FREQ
OUTP
SIN
1
120
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
0
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
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
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
:ABORt
:OUTPut
[:SOURce]
[:SOURce]
[:SOURce]
:SYSTem
Parametry
[:STATe]
:VOLTage|:POWer|:CURRent
[:LEVel]
[:IMMediate]
[:AMPLitude]
:OFFSet
:UNIT
:FREQuency
[:CW|:FIXed]
:FUNCtion
[:SHAPe]
:ERRor?
:VERSion?
6
Boolean
numeric
numeric
V | DBM | VRMS
numeric
DC | SINusoidal | SQUare |
TRIangle | RUP | RDOWn | TTL
Tabela 2. Komendy SCPI dla woltomierza E1410A
Komenda
:ABORt
:CALibration
:CONFigure
:FETCh?
:INITiate
:INPut
:MEASure
:READ?
:SAMPle
[:SENSe:]
:SYSTem
:TRIGger
Parametry
:ZERO:AUTO
:VOLTage:AC
:VOLTage:ACDC
:VOLTage[:DC]
OFF | 0 | ON | 1 | ONCE
[numeric[,numeric]]
[numeric[,numeric]]
[numeric[,numeric]]
[:IMMediate]
:COUPling
:IMPedance:AUTO
:STATe
:VOLTage:AC?
:VOLTage:ACDC?
:VOLTage[:DC]?
AC | DC
Boolean
Boolean
[numeric[,numeric]]
[numeric[,numeric]]
[numeric[,numeric]]
:COUNt
:SOURce
:TIMer
VOLTage:AC:RANGe
VOLTage:APERture
VOLTage[:DC]:RANGe
VOLTage:NPLC
VOLTage:RANGe:AUTO
VOLTage:RANGe
VOLTage:RESolution
:ERRor?
:BUFFered
:COUNt
:DELay:AUTO
:DELay
[:IMMediate]
:SLOPe
:SOURce
7
1 − 16777215 | MIN | MAX
IMM | TIM
680µs − 2100s | MIN | MAX
numeric
10µs | 0.1ms | 1ms
numeric
numeric
Boolean
numeric
numeric
Boolean
1 − 16777215 | MIN | MAX
Boolean
1µs − 2100s | MIN | MAX
POS | NEG
BUS | EXT | HOLD | IMM
| TTLT0 - TTLT7
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

Podobne dokumenty