background image

 

 

Uwagi prowadzącego ćwiczenie: 
 

 

 
 
 
 
 
 
 
 

Wykaz przyrządów znajdujących się na stanowisku 

Lp. 

Nazwa przyrządu 

Typ 

Producent 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

INSTYTUT SYSTEMÓW ELEKTRONICZNYCH 

WYDZIAŁ ELEKTRONIKI WAT 

Zakład Systemów Informacyjno-Pomiarowych 

Laboratorium Miernictwa Elektronicznego 2

 

Ćwiczenie 5 

Temat: 

AUTOMATYZACJA POMIARÓW  

Grupa: 

Data wykonania ćwiczenia: 
.................................................................. 

Zespół w składzie: 

 

1. 

2. 

3. 

Data oddania sprawozdania: 
.................................................................. 
Ocena: 
.................................................................. 
Prowadzący ćwiczenie: 
.................................................................. 

background image

 

A. Zastosowanie interfejsów szeregowych do sterowania oscyloskopem  

 
1.1. Wiadomości ogólne o interfejsach szeregowych 

 

Ze względu na swoją prostotę oraz niewielkie wymagania sprzętowe (w porównaniu z interfejsami 

równoległymi), transmisja z wykorzystaniem łączy szeregowych jest szeroko stosowana w przemyśle 

elektronicznym. Popularnym standardem łącza szeregowego jest interfejs RS-232. Jego nazwa pochodzi od 

oznaczenia amerykańskiej normy branżowej, opracowanej przez Electronic Industries Alliance (EIA), zawartej 

w biuletynie „Recommended Standard” nr 232. Na jej bazie w roku 1972 powstały zalecenia międzynarodowe 

opisane w dokumentach V.24 oraz V.28 Międzynarodowego Komitetu Doradczego do spraw Telegrafii i 

Telefonii (CCITT).  

Standard ten ma długą historię. W USA wprowadzony został w roku 1962 i był sześciokrotnie 

nowelizowany. Aktualnie obowiązująca wersja ma oznaczenie ANSI/TIA-232 F (został dodatkowo przyjęty 

przez Telecommunications Industry Association, TIA). Litera „F” w nazwie standardu wskazuje, że jest to jego 

siódma wersja. 

Polska Norma opisująca to łącze ma oznaczenie PN-T-05052 : 1986. 

 
1.2. Własności łącza szeregowego 

Połączenie komputera z przyrządem pomiarowym lub innym urządzeniem, może być w tym standardzie 

w bardzo prostym przypadku zrealizowane następująco: 

 

 

Każde z urządzeń przesyła bity danych zakodowane jako impulsy elektryczne, w których „0” odpowiada 

wysokiemu poziomowi napięcia a „1” – niskiemu. Przesyłanie odbywa się w obu kierunkach z pomocą 

oddzielnych linii przy wykorzystaniu wspólnej linii masy. Użycie oddzielnych linii do przesyłania informacji w 

obu kierunkach umożliwia jednoczesną transmisję bez obawy o wystąpienie zakłóceń. 

 

 

 

 

 

 

 

Komputer 

Urządzenie 

(TxD) Nadawanie 

 

(RxD) 

Odbiór 

 

(GND) Masa 

Odbiór (RxD) 
 
Nadawanie (TxD) 
 
Masa (GND) 

background image

 

1.3. Format słowa danych 

Przesłanie bitów słowa danych poprzedzone jest wysłaniem tzw. bitu startu (poziom napięcia wysoki), 

który sygnalizuje rozpoczęcie transmisji słowa. Następnie przesyłane są poszczególne bity w 

kolejności od najmniej znaczącego do najbardziej znaczącego. Po przesłaniu bitów słowa danych 

może być przesyłany bit kontroli parzystości, a następnie linia przechodzi w stan spoczynkowy 

(poziom napięcia niski) na czas trwania jednego lub dwóch bitów – są to tzw. bity stopu.  

 

 

Dopuszczalne wartości napięcia dla odpowiednich stanów logicznych bitów są następujące: 

 

Wartość bitu 

Przy nadawaniu 

Przy odbiorze 

(+ 5 V ... + 15 V) 

(+ 3 V ... + 15 V) 

(– 5 V ... – 15 V) 

(– 3 V ... – 15 V) 

 

1.4. Parametry transmisji w łączu szeregowym 

 

Norma RS-232 określa wiele szczegółów mechanicznych i elektrycznych, odnoszących się do transmisji 

szeregowej. Aby urządzenie odbierające informację mogło określić, który bit transmitowanego słowa jest w 

danej chwili odbierany – unormowaniu musiał być poddany czas trwania pojedynczego bitu. Jeśli jest on równy 

np. 1/9600 s, to mówimy, że szybkość transmisji jest równa 9600 bitów/s. Dopuszczalne przez normę szybkości 

transmisji to: 110, 150, 300, 600, 1200, 2 400, 4 800, 9 600 oraz 19 200 bitów/s. 

Aby transmisja odbywała się poprawnie zarówno urządzenie nadające jak i odbierające powinny być 

ustawione na tą samą szybkość przesyłania informacji. Należy w tym miejscu zaznaczyć, że wymienione 

powyżej szybkości transmisji odnoszą się do przesyłania bitów podczas transmisji pojedynczego słowa danych, 

nie zaś do transmisji jako całości.  

Poszczególne słowa danych transmitowane są metodą start-stopową, odstępy czasu pomiędzy 

poszczególnymi słowami mogą być dowolnie duże i dlatego przeciętna szybkość całej transmisji z reguły bywa 

bit startu 

bit parzystości 

bity stopu 

bity słowa danych 

background image

 

znacznie mniejsza. Słowo danych może zawierać 5, 6, 7 lub 8 bitów informacyjnych. W zależności od typu 

przesyłanej informacji można wybrać różną jego długość. W przypadku transmisji telegraficznych (dalekopis) 

wykorzystywane było słowo 5-bitowe; przy transmisji danych tekstowych – słowo 7-bitowe, a przy przesyłaniu 

danych binarnych – słowo 8-bitowe. 

Bity stopu podczas transmisji stanowią swego rodzaju rezerwę czasową daną odbiorcy informacji, aby 

mógł w tym czasie odebrane słowo danych przesłać z rejestru odbiorczego do odpowiedniego buforu 

telekomunikacyjnego, mając zagwarantowane, że w tym czasie nadawca nie rozpocznie transmisji kolejnego 

słowa. W przypadku najniższej szybkości transmisji dopuszczalna jest wartość 1½ bitu stopu. 

W typowym łączu szeregowym w standardzie RS-232 poza liniami do transmisji danych (TxD oraz RxD) 

występują dodatkowe linie, którymi przesyłane są sygnały sterujące, służące pierwotnie do komunikowania się 

komputera z modemem telefonicznym. W przypadku bezpośredniego połączenia komputera z przyrządem 

pomiarowym linie te można wykorzystać do sterowania przepływem danych między połączonymi urządzeniami. 

Sterowanie to polega na wstrzymywaniu transmisji od nadawcy danych, jeżeli urządzenie odbiorcze nie jest w 

stanie przetworzyć lub zapamiętać zbyt dużego strumienia danych, a także wznowieniu transmisji danych, kiedy 

urządzenie odbiorcze jest już gotowe na przyjęcie następnej ich porcji. 

Sterowanie przepływem danych (ang. flow control) może być zrealizowane w sposób sprzętowy, przy 

wykorzystaniu linii sterujących portu szeregowego (ang. hardware flagging) lub też za pomocą przesyłania po 

liniach danych umówionych znaków sterujących wstrzymaniem (XOFF) lub wznowieniem (XON) transmisji 

strumienia danych. W tym drugim przypadku sterowanie transmisją nosi nazwę programowego (ang. software 

flagging) lub protokołu XON/XOFF. 

1.5. Programy telekomunikacyjne 

W celu ułatwienia wymiany danych między komputerami przy wykorzystaniu łączy szeregowych RS-232 

przygotowane zostały specjalne programy komunikacyjne. Jednym z nich jest program HyperTerminal

wchodzący w skład standardowego zestawu akcesoriów systemu MS Windows. Z jego pomocą możliwa jest 

wymiana informacji między komputerami lub komputerem i urządzeniem, znajdującymi się blisko siebie – za 

pomocą specjalnego kabla dla łącza szeregowego (zwanego „null modem cable”) lub pomiędzy urządzeniami 

bardzo oddalonymi – za pomocą sieci telefonicznej. W tym drugim przypadku konieczne jest posiadanie 

odpowiedniego modemu telefonicznego. Aby wymiana informacji była możliwa, konieczne jest uzgodnienie 

ustawień parametrów transmisji obu komunikujących się ze sobą urządzeń, tzn. szybkości transmisji, liczby 

bitów danych w transmitowanym słowie, liczby bitów stopu, rodzaju zastosowanego sprawdzania parzystości, 

rodzaju sterowania przepływem. 

1.6. Zestaw komend sterujących przyrządami pomiarowymi (SCPI ) 

 

Zdalne sterowanie przyrządem polega na przesyłaniu do niego odpowiednich komend sterujących i 

odbieranie od przyrządu przesyłanej zwrotnie informacji o jego stanie, wynikach przeprowadzonych pomiarów, 

itp. Aby ułatwić użytkownikom zdalne sterowanie przyrządami pomiarowymi komendy do ich sterowania mają 

postać ciągów znaków alfanumerycznych (liter, cyfr, znaków pisarskich i znaków sterujących wydrukiem), które 

są z reguły wyrazami lub zwrotami języka angielskiego lub ich skrótami. Dzięki temu komendy te są łatwiejsze 

do zapamiętania i wygodniejsze w użyciu przez człowieka. Podczas transmisji z pomocą łącza szeregowego 

pojedyncze transmitowane słowo RS-232 zawiera informację o jednym znaku komendy (literze, cyfrze lub 

background image

 

znaku sterującym), w związku z tym przesłanie komendy do przyrządu związane jest z reguły z transmisją od 

kilku do kilkunastu słów RS-232. 

Jednolity sposób porozumiewania się z przyrządami (język programowania przyrządów) pozwala istotnie 

ułatwić posługiwanie się nimi. W roku 1990 grupa największych producentów aparatury pomiarowej doszła do 

porozumienia i opracowała jeden wspólny zestaw komunikatów do zdalnego sterowania wszystkich rodzajów 

przyrządów pomiarowych. Ten jednolity zestaw komunikatów sterujących został nazwany SCPI (ang. Standard 

Commands for Programmable Instruments). 

 

Zastosowanie ujednoliconego języka SCPI, jako standardu pozwala na osiągnięcie następujących 

korzyści:  

- urządzenia steruje się identycznie, jak inne przyrządy tego samego typu, niezależnie od producenta. Np. 

wszystkie multimetry posiadają takie same polecenia dotyczące sterowania funkcją pomiarową, 

podzakresem, wyzwalaniem itd. Oczywiście ich możliwości funkcjonalne mogą się różnić. Cecha ta jest 

nazywana kompatybilnością wertykalną. 

- do programowania podobnych funkcji w przyrządach stosuje się takie same polecenia. Np. filtracji, czy 

sposobu sprzężenia wejścia przyrządu (stałoprądowe lub przemiennoprądowe) odbywa się przy użyciu tych 

samych poleceń niezależnie od rodzaju urządzenia (multimetr, częstościomierz, oscyloskop). Nazywa się tę 

cechę kompatybilnością funkcjonalną. 

- Istnieje możliwość stosowania identycznych poleceń do wykonania pomiarów wybranych wielkości przez 

różne urządzenia stosujące nawet odmienne techniki pomiarowe. Przykładowo czas narastania zbocza 

sygnału można zmierzyć za pomocą oscyloskopu lub licznika stosując identyczne polecenia. Uzyskuje się to 

za pomocą poleceń zorientowanych sygnałowo należących do specjalnego podsystemu MEASURE

Polecenia te są bardzo przyjazne dla użytkownika, ponieważ nie wymagają od niego znajomości szczegółów 

funkcjonowania przyrządu. Ta cecha jest określana jako kompatybilność horyzontalna.  

W języku SCPI zdefiniowano standardowy zestaw rozkazów o otwartym charakterze, a więc możliwym 

do rozszerzenia. Upraszcza to lub wręcz eliminuje potrzebę modyfikacji oprogramowania systemu pomiarowego 

przy zmianie niektórych przyrządów na nieco inne modele. 

Specyfikacja języka SCPI określa składnię i styl języka, zestaw rozkazów oraz format 

wymiany danych. Składnia i styl to definicje reguł tworzenia mnemoniki, struktury 

instrukcji, parametrów instrukcji, wyrażeń, informacji o stanie i sposobie zerowania 

urządzeń. Aby zapewnić wymienialność danych, zdefiniowano składnię, gramatykę, 

format danych i sposób opisu bloków danych. Pozwala to różnym przyrządom poprawnie 

wymieniać dane.  

Język SCPI tworzy strukturę hierarchiczną drzewiastą, w której podobne funkcje programujące są 

zgrupowane w odrębnej gałęzi drzewa. Korzenie tych drzew komend noszą nazwy odpowiadających im 

podsystemów urządzenia pomiarowego (SENSESOURCETRIGGERCALIBRATION, itd.) i pod każdym z 

nich są zgrupowane polecenia programujące dany podsystem. Dalsze uszczegółowienie poleceń gwarantują

 

background image

 

węzły niższego poziomu grupujące funkcjonalnie podobne funkcje programujące. Dla przykładu SOURCE jest 

słowem kluczowym korzenia polecenia programującego, FREQUENCY oraz SWEEP są słowami kluczowymi 

drugiego poziomu, a START oraz STOP są słowami kluczowymi trzeciego poziomu.  

Słowa kluczowe języka SCPI można zapisywać w postaci pełnej (rozwiniętej), np. FREQUENCY, ale można je 

także zapisywać w postaci skrótów, z reguły czteroliterowych, np. FREQ. Do ich zapisu można używać zarówno 

wielkich, jak i małych liter. W części wykonawczej ćwiczenia poszczególne słowa sterujące zapisywane będą w 

formie rozwiniętej, natomiast skrócona postać komendy będzie zapisywana dużymi literami, w tym przypadku 

FREQuency

. Słowa kluczowe można zapisywać tylko w postaci rozwiniętej lub ww. skrótu, nie są 

dopuszczalne formy pośrednie.  

 

 

Warto dodać, że drzewa hierarchii rozkazowej SCPI, tak jak to jest przyjęte w technice komputerowej, 

mają korzeń u góry i rosną w dół. Przykładowe drzewo podsystemu :SENSE (rys. 1) pokazuje reprezentatywne 

rozkazy poszczególnych poziomów, poczynając od poziomu korzenia w dół.  

 

 

 

 

 

 

 

 

 

 

 

 

 

Rys. 1. Przykładowe drzewo hierarchii rozkazowej języka SCPI 

 

 

Komunikat programowy SCPI jest łańcuchem elementarnych rozkazów, rozpoczynającym się od 

rozkazu z korzenia podsystemu i schodzących w dół. Separatorem rozkazów poszczególnych poziomów jest 

dwukropek, np.:  

:SENSE:VOLTAGE:AC:RANGE? 

 

Ten przykładowy komunikat był zapytaniem o zakres pomiarowy multimetru przy pomiarach napięcia 

przemiennego.  

 

Separatory niższego rzędu w języku SCPI to:  

 

- spacja lub tabulacja, która oddziela parametry od rozkazu;  

 

- przecinek oddzielający parametry wewnątrz ich listy; 

:SENSE 

:CURREN

T 

:UPPER 

:LOWER 

:RANGE 

:POWER 

:VOLTAG

E 

:AC 

:DC 

:RESOLUTIO

Nn 

:AUTO 

:AUTO 

background image

 

 

- średnik, który oddziela polecenia różnych podsystemów (terminator) lub pozwala użyć kolejno dwóch 

różnych rozkazów z tego samego poziomu danego drzewa podsystemu.  

 

Przykładem nieco bardziej złożonego komunikatu programowego może być:  

:SENSE:VOLTAGE:AC:RANGE:UPPER 5;LOWER 0.2 

Przy czym pokazano tu sposób wykorzystania jako separatorów spacji i średnika.  

 

Poza podsystemami rozkazów służącymi bezpośrednio do kontroli przyrządu, język ten zawiera też 

rozkazy o charakterze uniwersalnym, przerzucające ciężar konfiguracji sprzętu pomiarowego i pomiarów na sam 

sprzęt. Jednym z takich bardzo uniwersalnych rozkazów jest komunikat :MEASURE – zmierz, który może być 

użyty w sposób następujący:  

:MEASURE:CURRENT:DC? 

Multimetr sam dobierze tu właściwy zakres pomiarowy, przeprowadzi pomiar (alternatywnie niezbędne byłoby 

skorzystanie z podsystemu :TRIGGER) i prześle wynik pomiaru do komputera.  

 

Zestaw poleceń o mniejszej uniwersalności, ale większej elastyczności, to na przykład para 

:CONFIGURE – :READ. Między te polecenia można wprowadzić rozkazy modyfikujące sprzętową 

konfigurację inicjowaną rozkazem :CONFIGURE, na przykład: 

CONFIGURE:VOLTAGE:DC 10, 0.001 

TRIGger:SOURce:EXTernal 

READ? 

Pierwszy komunikat programowy jest dość oczywistą konfiguracją sprzętu, drugi definiuje zewnętrzne 

wyzwalanie pomiaru, a trzeci powoduje przejście multimetru w stan oczekiwania na wyzwolenie.  

  Szczególną pozycję w języku SCPI zajmuje zestaw tzw. rozkazów wspólnych. Zasadniczym zadaniem 

tej specyficznej grupy rozkazów jest przede wszystkim odczyt i ustawienie rejestrów stanu przyrządu SCPI. 

Przykładowe rozkazy tej grupy to m.in.:  

*CLS – zerowanie rejestrów stanu, 

*ESR – odczyt rejestru zdarzeń, 

*OPC – ustawienie bitu „operacja zakończona”, 

*RST – ustawienie stanu początkowego (ang. reset), 

*SRE <wartość> – zapis maski blokującej;  

*STB? – odczyt bajtu stanu przyrządu, 

*TRG – zainicjowanie (wyzwolenie) uprzednio zaprogramowanego pomiaru. 

Programowanie w języku SCPI musi uwzględniać rzeczywiste właściwości sprzętu pomiarowego i 

magistral komunikacyjnych. Program w języku SCPI jest w istocie ciągiem znaków przesyłanych łączem 

komunikacyjnym, np. RS-232, i musi być uzupełniony oprogramowaniem organizującym przepływ informacji 

przez to łącze.  

 

1.7. Sterowanie pracą oscyloskopu  

Przygotowanie do pracy oscyloskopu Tektronix TDS-210 

background image

 

Aby przygotować oscyloskop firmy Tektronix typu TDS–210 do pracy sterowanej zdalnie przez interfejs 

RS-232 należy:  

- na płycie czołowej oscyloskopu wcisnąć klawisz Utility, 

- wcisnąć klawisz programowalny Options, a następnie RS232 Setup

za pomocą klawiszy programowalnych, w oparciu o tabelę 4. ustawić właściwe wartości parametrów 

transmisji szeregowej. 

 

 

Klawisz 
programowalny 

Rodzaj nastawianego 
parametru 

Możliwe wartości parametru 

Nastawa 
fabryczna 

FlowControl 

Sterowanie transmisją 
(handshake) 

HardFlagging (DTR/DSR, RTS/CTS) 
SoftFlagging (Xon/Xoff) 
None 

HardFlagging 

EOL String 

Sekwencja znaków 
końca linii 

LF, CR, LF/CR, CR/LF 

LF 

Parity 

Sposób kontroli 
parzystości 

Even 
Odd 
None 

None 

 

1.8. Wykonywanie ćwiczenia  

1. Połączyć oscyloskop cyfrowy Tektronix TDS-210 do portu szeregowego „COM1:” mikrokomputera IBM 
PC. 

2. Włączyć zasilanie komputera.  

3. Włączyć oscyloskop i doprowadzić badany sygnał do kanału 1. 

4. Na panelu czołowym oscyloskopu wcisnąć klawisz menu „UTILITY”, następnie klawiszem funkcyjnym 

wybrać podmenu „Options”, i z kolei w nim podmenu „RS232 Setup”.  

Naciskając odpowiednią liczbę razy klawisze funkcyjne wybrać następujące parametry transmisji:  

Baud:   

 

9600 

 

 

 

(szybkość transmisji) 

Flow control:   

None 

 

 

 

(brak sterowania transmisją) 

EOL string: 

 

 

CR/LF   

 

 

(znacznik końca linii) 

Parity:  

 

None 

 

 

 

(brak kontroli parzystości) 

5. W mikrokomputerze IBM PC z menu Start, podmenu ProgramyAkcesoria Komunikacja wybrać 

i uruchomić program HyperTerminal. Służy on do sterowania transmisją z wykorzystaniem łącza 

szeregowego komputera, modemu i linii telefonicznej. W tym ćwiczeniu laboratoryjnym będzie 

wykorzystywany jedynie do realizacji transmisji przez łącze szeregowe między komputerem i 

oscyloskopem cyfrowym.  

W oknie dialogowym opisu nowego połączenia wpisać nazwę grupy studenckiej z numerem podgrupy. W 

kolejnym oknie dialogowym Numer telefonu rozwinąć listę Połącz używając: i wybrać opcję 

Bezpośrednio do portu Com1. Zaakceptować wybór przyciskiem OK

Tabela 4. 

Baud 

 
 

Prędkość transmisji w 
bitach/s 

300, 600, 1200, 2400, 4800, 9600, 
19200 

9600 

background image

 

W kolejnym oknie dialogowym Właściwości: COM1 przy użyciu rozwijalnych list ustawić następujące 

parametry transmisji: 

– Bitów na sekundę:   

9600 

– Bity danych: 

 

 

– Parzystość: 

 

 

Brak  

– Bity stopu:  

 

– Sterowanie przepływem: 

Brak 

Zaakceptować wybrane opcje przyciskiem OK

 

6. Z menu Plik programu HyperTerminal wybrać opcję Właściwości. W oknie dialogowym   

    Właściwości: ... wybrać zakładkę Ustawienia, zaznaczyć w niej opcję Klawisze  

    Windows

, a następnie nacisnąć przycisk Ustawienia ASCII. W oknie Ustawienia  

   ASCII 

zaznaczyć opcje: 

 

Wysyłaj wiersze ze znakiem nowego wiersza 

oraz 

 

Lokalne echo wpisywanych znaków 

Zaakceptować ustawienia przyciskiem OK, a następnie zaakceptować właściwości połączenia. 

Wybranie opcji Lokalne echo wpisywanych znaków włącza tryb tzw. lokalnego echa, dzięki któremu 

polecenia wpisywane z klawiatury i wysyłane do oscyloskopu będą się ukazywały na ekranie komputera 

(bez wybrania tej opcji na ekranie ukazywałyby się tylko odpowiedzi oscyloskopu). 

Wybranie opcji Wysyłaj wiersze ze znakiem nowego wiersza spowoduje, że każdorazowe wysłanie 

znaku sterującego <CR> (naciśnięcie klawisza <Enter>) uzupełnione zostanie wysłaniem znaku 

sterującego <LF> (przejście kursora na ekranie do kolejnej linii).  

Dzięki temu informacje odbierane od oscyloskopu na ekranie monitora będą ukazywały się poniżej poleceń 

wysyłanych z komputera.  

 

7. W kolejnych punktach ćwiczenia należy wysyłać do oscyloskopu polecenia i zapytania przez wpisywanie ich 

z klawiatury komputera.  

Polecenia mogą mieć postać skróconą lub rozwiniętą i mogą być wpisywane małymi lub dużymi literami. W 

instrukcji wszystkie polecenia podano w formie rozwiniętej, zaś skróconą formę polecenia zapisano dużymi 

literami.  

W protokole należy zamieścić wszystkie wydane przyrządowi polecenia wraz z uwagami odnośnie ich 

znaczenia i sposobu reakcji na nie przez oscyloskop. 

Uwaga:  

Podczas wydawania przyrządowi poleceń za pomocą klawiatury każde naciśnięcie klawisza na klawiaturze 

powoduje wysłanie odpowiedniego kodu ASCII do przyrządu. W związku z tym nie ma możliwości edycji 

(poprawiania) błędnie wpisanego polecenia.  

Oscyloskop nie wykonuje poleceń o błędnej postaci. W przypadku pojawienia się błędu przy wpisywaniu 

polecenia należy nacisnąć na klawiaturze klawisz <Enter>, a następnie wpisać polecenie w sposób 

poprawny. 

background image

 

10 

8. Zapytanie o identyfikator przyrządu:  

Przesłać komendę:  

*IDN? 

zanotować dane przyrządu i modułu komunikacyjnego.  

9. Wyzerowanie nastaw oscyloskopu (reset):  

Przesłać do oscyloskopu komendę:  

*RST 

Zwrócić uwagę na komunikat pojawiający się w pasku stanu na dole ekranu oscyloskopu. Za pomocą 

przycisku DISPLAY a następnie przycisków menu Contrast Increase oraz Contrast Decrease 

ustawić wyraźny obraz przebiegu na ekranie. 

10. Samoczynny dobór nastawy (autoskalowanie):  

Pokrętłem VERTICAL POSITION przesunąć obraz w pionie;  

pokrętłem HORIZONTAL POSITION przesunąć obraz w poziomie;  

pokrętłem TRIGGER LEVEL zmienić wartość poziomu wyzwalania przebiegu.  

Z klawiatury wpisać komendę:  

:AUTOSet EXECute 

Po ustabilizowaniu się obrazu przebiegu zanotować położenie na ekranie:  

- znacznika poziomu odniesienia (strzałka z lewej strony ekranu);  

- znacznika momentu wyzwolenia (strzałka u góry ekranu);  

- położenie znacznika poziomu wyzwalania (strzałka z prawej strony ekranu) względem 

przebiegu.  

11. Szybkość podstawy czasu (w sekundach na działkę):  

Przesłać zapytanie: 

:HORizontal:MAIn:SCAle? 

- zmiana nastawy: 

:HORizontal:MAIn:SCAle 2.5E-4  

Zaobserwować efekt zmiany nastawy. 

12. Czułość odchylania pionowego (w woltach na działkę);  

- zapytanie:  

:CH1:SCAle?  

- zmiana nastawy:  

:CH1:SCAle 0.5 

13. Wybór źródła sygnału wyzwalania podstawy czasu. 

 

Na panelu czołowym oscyloskopu wcisnąć przycisk TRIGGER MENU. Pojawi się menu wyzwalania 

podstawy czasu oscyloskopu. 

Przesłać zapytanie:  

:TRIGger:MAIn:EDGE:SOUrce? 

Porównać odpowiedź z wartością wskazywaną w polu Source menu TRIGGER  

- zmiany nastawy:  

:TRIGger:MAIn:EDGE:SOUrce CH2 

:TRIGger:MAIn:EDGE:SOUrce EXT 

background image

 

11 

:TRIGger:MAIn:EDGE:SOUrce LINE 

:TRIGger:MAIn:EDGE:SOUrce CH1 

Zaobserwować wygląd przebiegu na ekranie dla różnych nastaw oraz wskazanie w pasku stanu. 

14. Poziom wyzwalania podstawy czasu:  

- zapytanie:  

:TRIGger:MAIn:LEVel? 

Porównać odpowiedź z wartością pokazywaną u dołu ekranu oscyloskopu. 

- zmiana poziomu:  

:TRIGger:MAIn:LEVel –0.5 

 

15. Tryb wyzwalania podstawy czasu:  

- zapytanie:  

:TRIGger:MAIn:MODe? 

Pokrętłem TRIGGER LEVEL zmieniać poziom wyzwalania podstawy czasu i obserwować zachowanie 

się oscyloskopu, gdy poziom ten wychodzi poza zakres wartości przebiegu. 

- zmiana trybu wyzwalania:  

:TRIGger:MAIn:MODe NORM 

- powtórzyć obserwacje zachowania się oscyloskopu przy zmianach poziomu wyzwalania.  

16. Wybór zbocza wyzwalającego podstawę czasu:  

:TRIGger:MAIn:EDGE:SLOpe FALL 

:TRIGger:MAIn:EDGE:SLOpe RISe 

Zwrócić uwagę na nastawy w menu „TRIGGER” oraz w pasku stanu u dołu ekranu oscyloskopu. 

17. Pomiary parametrów przebiegu w kanale 1;  

Przyciskiem MEASURE wyświetlić menu pomiarowe oscyloskopu, 

- przesłać komendę:  

:MEASUrement:MEAS1:SOUrce CH1 

- pomiar częstotliwości:  

:MEASUrement:MEAS1:TYPe FREQuency 

- odczyt wyniku pomiaru:  

:MEASUrement:MEAS1:VALue? 

:MEASUrement:MEAS1:UNIts? 

- pomiar okresu przebiegu:  

:MEASUrement:MEAS2:TYPe PERIod 

- pomiar wartości skutecznej przebiegu:  

:MEASUrement:MEAS3:TYPe CRMs 

- pomiar wartości międzyszczytowej przebiegu: 

:MEASUrement:MEAS4:TYPe PK2pk 

- wyłączenie wykonywania pomiaru:  

:MEASUrement:MEAS1:TYPe NONE 

Przyciskając odpowiednią liczbę razy klawisze wyboru wyłączyć wszystkie automatyczne pomiary 

(nastawa None). 

background image

 

12 

18. Pomiary z użyciem kursorów:  

Przyciskiem CURSOR włączyć menu kursorów oscyloskopu. 

Przesłać polecenie wyboru sygnału do pomiarów: 

:CURSor:SELect:SOUrce CH1 

- wyświetlenie kursorów pionowych (czasowych): 

:CURSor:FUNCtion VBArs 

 

Za pomocą pokręteł na panelu czołowym oscyloskopu o nazwach POSITION CURSOR 1 oraz 

POSITION CURSOR 2 ustawić kursory czasowe w wybranych miejscach obserwowanego przebiegu 

(np. w maksimach). 

- odczyt ustawienia kursora czasowego początkowego:  

:CURSor:VBArs:POSITION1? 

- odczyt ustawienia kursora czasowego końcowego:  

:CURSor:VBArs:POSITION2? 

- pomiar odstępu czasu między kursorami:  

:CURSor:VBArs:DELTa? 

- wyświetlenie kursorów poziomych (napięciowych):  

:CURSor:FUNCtion HBArs 

- ustawienie początkowego kursora napięciowego:  

:CURSor:HBArs:POSITION1 –0.6 

- ustawienie końcowego kursora napięciowego;  

:CURSor:HBArs:POSITION2 0.45 

- pomiar różnicy położeń kursorów napięciowych:  

:CURSor:HBArs:DELTa? 

- wyłączyć kursory:  

:CURS:FUNC OFF 

19. Wykorzystanie banków pamięci przebiegu. 

Przyciskiem SAVE / RECALL wyświetlić menu pamięci nastaw (Setups) oraz przebiegów 

(Waveforms). Przyciskiem programowalnym wybrać pamięci przebiegów Waveforms. 

- zapamiętanie bieżącego przebiegu w banku pamięci RefA:   

:SAVe:WAVEform CH1, REFA 

- wyłączenie wyświetlania przebiegu z kanału 1:  

:SELect:CH1 OFF 

- wyświetlenie na ekranie zawartości banku RefA:  

:SELect:REFA ON 

- wyłączenie wyświetlania banku pamięci:  

:SELect:REFA OFF 

Przyciskiem AUTOSET wznowić wyświetlanie przebiegu na ekranie.

 

20. Przesyłanie do komputera informacji o przebiegu zarejestrowanym przez oscyloskop:  

- zadeklarowanie źródła danych (kanał lub bank pamięci):  

:DATa:SOUrce CH1 

- deklaracja sposobu zapisu (encoding):  

background image

 

13 

:DATa:ENCdg ASCIi 

- punkt początkowy do transmisji:  

:DATa:STARt 1000 

- punkt końcowy:  

:DATa:STOP 1500 

- przesłanie danych:  

:CURVe? 

21. Odczytanie z oscyloskopu identyfikatora przebiegu (waveform ID) 

 

 

:WFMPre:WFId? 

22. Dodatkowe możliwości zdalnego sterowania przyrządem. 

 

- zablokowanie klawiszy i pokręteł panelu czołowego oscyloskopu 

 

 

:LOCk ALL 

 

Sprawdzić stan zablokowania panelu czołowego przyrządu. 

 

- odblokowanie 

 

 

:LOCk NONe 

 

- wybór języka wyświetlania informacji na ekranie 

 

 

:LANGuage JAPANESE 

 

 

:LANGuage ENGLISH 

 

 

- odczyt pełnego wykazu nastaw przyrządu 

 

 

*LRN? 

 

OPRACOWANIE SPRAWOZDANIA 

 

W sprawozdaniu należy zamieścić wszystkie wydane przyrządowi polecenia wraz z uwagami odnośnie ich 

znaczenia i sposobu reakcji na nie przez oscyloskop. 

 

LITERATURA:  

1. Winiecki W.: Organizacja komputerowych systemów pomiarowych. Oficyna Wydawnicza PW, Warszawa, 

1997.  

2. Nowakowski W.: Systemy interfejsu w miernictwie. Warszawa, WKiŁ 1987. 

3. Kocoń K.: Miernictwo elektroniczne. Automatyzacja pomiarów z wykorzystaniem systemu interfejsu według 

zalecenia IEC-625. WAT, Warszawa, 1991. 

4. Kasprzak B.: 

http://kmeif2.kmeif.pwr.wroc.pl/elektron/interfejsy/interface.html#vee

 

 

5. Maciejewski Ł., Zając P.: 

http://its.wmech.pwr.wroc.pl/pomoce/hp_vee/

 

 
 

background image

 

14 

B. Zastosowanie programu Agilent VEE do sterowania pracą multimetru cyfrowego 

 

2.1. Podstawowe informacje o systemie interfejsu GP-IB 

 

Około roku 1970 firma Hewlett-Packard opracowała cyfrowe łącze komunikacyjne, którego 

pierwotnym zadaniem było zdalne sterowanie przyrządami pomiarowymi. System ten szeroko upowszechnił się 

w świecie, został opisany w zaleceniach normalizacyjnych Międzynarodowej Komisji Elektrotechnicznej (norma 

IEC-625) jako podstawowe łącze transmisyjne dla programowalnej aparatury pomiarowej. Jest on także opisany 

w amerykańskiej normie branżowej o oznaczeniu IEEE-488. Powszechnie nazywa się go GP-IB (ang. General 

Purpose Interface Bus), chociaż jego twórca, firma Hewlett-Packard stosuje oznaczenie HP-IB. Jest to system 

magistralowy, równoległy, z 8-bitową szyną danych, umożliwiający jednoczesne podłączenie do 15 przyrządów 

(w tym również sterownika systemu, którym zwykle jest komputer). Maksymalna przewidziana normą szybkość 

transmisji to 1.0 MB/s. Wszystkie urządzenia w systemie podłączone są równolegle do wspólnej magistrali, w 

której oprócz  ośmiu linii danych występuje osiem linii sterujących: 3 linie wspomagające transmisję po liniach 

danych oraz 5 linii sterowania. Każde urządzenie w systemie jest identyfikowane przy pomocy tzw. adresu. 

Adres GP-IB jest liczbą całkowitą z zakresu od 0 do 30. Jest on zwykle przypisywany każdemu z urządzeniu na 

etapie zastawiania (konfigurowania) systemu. 

 

2.2. Ogólne właściwości multimetru Agilent typu 34401 A 

 

Multimetr cyfrowy typu 34401A został skonstruowany przez firmę Hewlett-Packard (obecnie Agilent) 

w roku 1991. Jest on przyrządem interfejsowym, wielofunkcyjnym, o bardzo rozbudowanych - w stosunku do 

klasycznych przyrządów - możliwościach. Sterowany jest za pomocą dwóch systemów mikroprocesorowych: 

głównego, zbudowanego w oparciu o 16-bitowy mikrokontroler Intel 80C196, oraz podrzędnego - sterowanego 

przez 8-bitowy mikrokontroler Intel 80C51. Główny system mikroprocesorowy odpowiedzialny jest za 

realizację funkcji pomiarowych przyrządu, natomiast współpracujący z nim system podrzędny odpowiedzialny 

jest za odczytywanie klawiatury, komunikację przez interfejsy (szeregowy RS-232 oraz równoległy GP-IB) a 

także wyświetlanie wyników pomiarów oraz komunikatów na wyświetlaczu fluorescencyjnym. Przyrząd ma 

wyświetlacz o rozdzielczości 6½ cyfry, niepewność podstawową przy pomiarze napięć stałych równą 15 ppm, 

potrafi wykonywać do 1000 pomiarów na sekundę. Jest to multimetr z wbudowanymi 11 podstawowymi 

funkcjami pomiarowymi, do których należą : pomiary napięcia i prądu – stałego i przemiennego, pomiary 

stosunku napięć, rezystancji, testowanie diod, pomiary częstotliwości i okresu przebiegu. Posiada także wiele 

wbudowanych funkcji matematycznych : odejmowanie stałej wartości (pomiary względne), zapamiętywanie 

wartości minimalnej, maksymalnej i średniej z serii pomiarów, wyliczanie poziomu sygnału w dB w stosunku do 

wybranego poziomu odniesienia, wyliczanie poziomu mocy sygnału w dBm, testowanie tolerancji wartości 

parametrów. 

 

background image

 

15 

 

 

Ze względu na mnogość funkcji przyrządu i potrzebę ograniczenia liczby przycisków na panelu 

czołowym, programuje się go za pomocą rozbudowanego systemu menu o strukturze drzewiastej, do którego 

wchodzi się przez naciśnięcie niebieskiego klawisza Shift, a następnie klawisza MENU z niebieskim opisem 

On/Off . 

2.3. Wybór typu interfejsu 

 

Multimetry Agilent 34401A są wyposażone w dwa typy interfejsów: RS-232 i HP-IB (odpowiednik 

GP-IB). Typ interfejsu, przez który przyrządy będą współpracowały ze swoim kontrolerem można wybrać 

jedynie z płyty czołowej przyrządów w następujący sposób: 

po naciśnięciu klawisza Shift a następnie On/Off na wyświetlaczu przyrządu ukazuje się pierwsza 

pozycja najwyższego poziomu menu konfiguracyjnego. Z pomocą strzałek poziomych należy 

przemieścić się do I/O MENU, następnie przy pomocy strzałki pionowej należy wejść do poziomu 

komend tego menu (commands). Strzałką poziomą wybrać komendę INTERFACE, i w dalszej 

kolejności za pomocą strzałki pionowej wejść na poziom parametrów tej komendy. Są tu do dyspozycji 

dwa parametry, przy pomocy poziomych strzałek należy wybrać HP-IB / 488

2.4. Ustawianie adresu multimetru dla standardu GP-IB 

A:MEAS MENU 

 

B:MATH MENU 

 

C:TRIG MENU 

 

D:SYS MENU 

 

E:I/O MENU 

  F:CAL MENU 

 

 

 

 

 

 

 

   

 

 

   

 

>   

>   

>   

>   

 

   

 

 

 

 

 

 

 

   

   

 

 

 

 

 

 

 

   

   

1:HP-IB ADDR 

 

2:INTERFACE 

 

3:BAUD RATE 

 

4:PARITY 

 

5:LANGUAGE     

 

 

 

 

 

 

 

 

 

 

 

   

 

>   

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

   

HP-IB / 488 

 

RS-232 

 

 

 

 

 

 

   

background image

 

16 

 

 

Dokonany wybór należy zatwierdzić za pomocą klawisza podpisanego ENTER. Następnie multimetr 

samoczynnie wychodzi z menu konfiguracyjnego. 

Multimetr pamięta ostatnio wykonaną komendę konfiguracyjną, dlatego w przypadku potrzeby ponownego 

modyfikowania tego samego parametru w sposób szybki można przejść do odpowiedniego miejsca w menu 

naciskając klawisz Shift a następnie Recall

 

 

Każdy przyrząd pracujący w systemie interfejsu GP-IB musi posiadać swój własny, indywidualny 

adres. W multimetrze 34401A adres można nastawić w zakresie 0 ... 31. Nie można mu nadać adresu kontrolera 

(na ogół 21), bo system pracowałby niepoprawnie lub nie pracowałby w ogóle. Adresem specyficznym jest także 

adres 31. Przy takim adresie multimetr pracuje w tak zwanym trybie "talk-only". W trybie tym miernik może 

wysyłać wyniki odczytów bezpośrednio do drukarki bez potrzeby istnienia kontrolera systemu. W przypadku 

pracy multimetru w systemie z użyciem kontrolera adres ten jest niepożądany. Adres może być ustawiony z 

płyty czołowej multimetru w następujący sposób: 

- klawiszami Shift oraz On/Off wejść do menu konfiguracyjnego, przejść do I/O MENU, wejść do komendy 

HP-IB ADDR

, a następnie do jej parametru. Strzałkami poziomymi wybrać cyfrę do edycji, a strzałkami 

pionowymi - nastawę wartości adresu. Zaakceptować zmianę klawiszem ENTER

 

2.5. Wiadomości ogólne o programowaniu w środowisku HPVEE 

Program VEE (Visual Engineering Environment) jest produktem firmy Hewlett-Packad i został 

wprowadzony na rynek w roku 1991, początkowo dla systemu operacyjnego Unix, a w dalszej kolejności został 

zaadaptowany do MS Windows. Od tego czasu program przeszedł wiele modyfikacji. Jest graficznym językiem 

programowania przeznaczonym do sterowania przyrządami przy pomocy łączy takich jak GP-IB, RS-232, USB, 

LAN i VXI w trakcie samego procesu pomiarowego, jak i w trakcie dalszego przetwarzania danych uzyskanych 

z pomiarów. Pakiet ten nadaje się także do symulacji tych działań. Program VEE nie jest trudny do nauki, nie 

wymaga znajomości słów czy komend kluczowych a poruszanie się po nim jest tak intuicyjne, że 

programowania w VEE można nauczyć się mając jedynie ogólne pojęcie o pracy systemów pomiarowych. 

 

 

A:MEAS MENU 

 

B:MATH MENU 

 

C:TRIG MENU 

 

D:SYS MENU 

 

E:I/O MENU 

  F:CAL MENU 

 

 

 

 

 

 

 

   

 

 

   

 

>   

>   

>   

>   

 

   

 

 

 

 

 

 

 

   

   

 

 

 

 

 

 

 

   

   

1:HP-IB ADDR 

 

2:INTERFACE 

 

3:BAUD RATE 

 

4:PARITY 

 

5:LANGUAGE     

 

 

 

 

 

 

 

 

 

   

 

v   

 

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

   

 

 

 

 

 

 

 

 

 

   

/\ 22          ADDR   

 

 

 

 

 

 

 

   

background image

 

17 

2.6. Zapoznanie z oknem roboczym programu 

Rys. 1. przedstawia okno robocze programu VEE. Okno to składa się z czterech zasadniczych części:  

 

a) paska menu, 

b) paska narzędziowego, 

c) okna pola roboczego, 

d) okna eksploratora programu. 

 

Pasek menu udostępnia szereg bibliotek obiektów graficznych używane do budowy konkretnych programów.  

Pasek narzędziowy składa się z klawiszy kontroli wykonywania programów oraz umożliwia szybki dostęp do 

często wykorzystywanych poleceń z menu File, Edit, View, Debug. 

Pole robocze jest obszarem ekranu, który służy do konstruowania grafu przepływu danych oraz uaktywnień – 

tworzenia programu (graf ten jest odpowiednikiem kodu źródłowego w tekstowych językach programowania, 

takich jak: BASIC, Pascal, C itp.). Środowisko program VEE umożliwia tworzenie aplikacji zorganizowanych 

wielopoziomowo, tzn. aplikacje te mogą składać się z procedur, które mogą zawierać kolejne procedury itd. 

Procedury te, nazywane obiektami użytkownika, reprezentowane są przez specjalne okienka.  

 

 

 

 

Pole robocze

Eksplorator

programu

Pasek menu

Pasek narz

ędziowy

Rys. 1. Okno robocze programu Agilent VEE

background image

 

18 

2.7. Zapoznanie z menu programu 

Pasek menu umożliwia szybki dostęp do bogatych bibliotek obiektów oraz do pewnych funkcji 

dostępnych w programie – podobnie jak to jest w innych aplikacjach WINDOWS.  

Przykład organizacji menu Flow przedstawia rysunek 2. Pełny opis poszczególnych menu zawiera 

dokumentacja techniczna.  

 

2.8. Operacje wykonywane na obiektach  

Obiektem nazywamy każdy blok lub jego ikonę uzyskaną z menu programu. Obiekty takie mogą 

reprezentować rzeczywisty przyrząd podłączony do komputera za pomocą interfejsu lub jakąś operację 

wykonywaną na dostarczonych danych. 

Tworzenie programu w środowisku Agilent VEE polega na umieszczaniu, za pomocą myszki, w obszarze 

pola roboczego różnych obiektów i wykonywaniu między nimi połączeń, które obrazują przepływ informacji 

między obiektami i ustalają kolejność uaktywniania obiektów. Tworzony jest wtedy tzw. graf przepływu 

danych i uaktywnień

Każdy obiekt w grafie może być zobrazowany w dwóch postaciach:  

- w postaci rozwiniętej – otwartej, 

w postaci ikony.  

 

 

 

 

 

 

 

Rys. 2. Dostęp do wielopoziomowego menu. 

background image

 

19 

Lp. 

Nazwa czynności  

Sposób wykonania czynności 

1. 

Wybór obiektu i umieszczanie go w 

polu roboczym

 

- posługując się myszką otworzyć menu Device

- z podmenu Virtual Source wybrać i kliknąć Function Generator

- umieścić zmodyfikowany kursor kontur obiektu w wybranym miejscu 

polu roboczego i ponownie kliknąć.  

2. 

Zapoznanie z menu obiektu 

- kliknąć myszką w górnym lewym rogu obiektu (rozwinie się pasek 

menu tego obiektu), 

- wybierać poszczególne polecenia z menu i zapoznać się z ich 

przeznaczeniem, 

- zamknąć menu przez kliknięcie w dowolnym miejscu ekranu.  

3. 

Przemieszczanie obiektu po polu 

roboczym 

- najechać znacznikiem myszy na pasek tytułowy obiektu, 

- nacisnąć i przytrzymać lewy klawisz myszy, 

- przesunąć kontur obiektu w żądane miejsce ekranu, 

- zwolnić klawisz myszy. 

4. 

Zmiana rozmiaru obiektu 

- wskaźnikiem myszy najechać na dolny lewy róg obiektu aż do 

uzyskania znacznika w postaci ukośnej strzałki, 

- przytrzymać lewy klawisz i przemieścić mysz do położenia 

definiującego nowy rozmiar obiektu, 

- zwolnić myszkę.  

5. 

Przejście od zobrazowania 

otwartego do zamkniętego 

(ikonowego) 

- kliknąć myszką w prawym górnym rogu obiektu, 

- aby powrócić do zobrazowania tzw. otwartego wystarczy podwójnie 

kliknąć w ikonę obiektu. 

 

6. 

Powielanie obiektu 

- otworzyć menu obiektu; 

- wybrać polecenie Clone

- kontur nowego obiektu umieścić w wybranym miejscu ekranu i 

ponownie kliknąć. 

 

7. 

Usuwanie obiektu 

otworzyć menu obiektu i wybrać polecenie Cut 

lub podwójnie kliknąć myszką w lewym górnym rogu obiektu. 

 

8. 

Uzyskiwanie informacji  

o obiekcie 

- otworzyć menu obiektu i kliknąć hasło Help

- zapoznać się z zawartością okna Agilent VEE Help, 

- zamknąć okno pomocy. 

 

background image

 

20 

9. 

Zapoznanie z właściwościami 

obiektu 

- z menu obiektu wybrać opcję Properties (właściwości), 

- zapoznać się z zawartością okna Properties klikając myszką w 

poszczególne zakładki, 

- zakończyć przyciskiem Cancel

 

10. 

Edycja opisu obiektu 

- z menu obiektu wybrać opcję Description (opis), 

- do pola edycyjnego wpisać wiersz tekstu, 

- zakończyć edycję przyciskiem OK.   

 

2.9. Zaciski obiektu 

 

Każdy obiekt w programie VEE jest wyposażony w wejścia i wyjścia – synchronizujące i danych. 

Rozmieszczenie tych wejść i wyjść przedstawia rysunek 3. Zaciski wejściowe dla danych umieszczane są 

zawsze z lewej strony okienka lub ikony obiektu, zaś zaciski wyjścia danych lub informacji o błędach – z prawej 

strony. Wejścia i wyjścia danych mogą występować w różnej liczbie, może ich także nie być wcale. W 

niektórych obiektach programista może tworzyć dodatkowe takie zaciski lub usuwać już istniejące. Do wejść 

danych muszą być doprowadzone dane z innego obiektu (wejście nie może pozostać nie podłączone). 

Wejście synchronizujące może być w obiekcie tylko jedno i jest umieszczone u góry okienka. Służy ono 

do przekazywania obiektowi sygnału pobudzającego do działania od innego obiektu. Wyjście synchronizujące 

umieszczone jest na spodzie okienka i służy ono do wysłania sygnału pobudzenia do innego obiektu po 

zakończeniu działania przez dany obiekt. Przesyłanie pobudzeń za pomocą wejść i wyjść synchronizujących 

służy do ustalenia kolejności wykonywania operacji przez obiekty tworzące program, jeśli ma to dla aplikacji 

znaczenie. W przypadku, gdy wejście synchronizujące nie jest podłączone (nie ma doprowadzonego sygnału 

pobudzającego z innego obiektu) zakłada się, że sygnał pobudzający jest obecny. 

W menu niektórych obiektów znajdują się polecenia Add Terminal (dodaj zacisk) i Delete Terminal 

(usuń zacisk).  

Po kliknięciu polecenia Add Terminal będzie można dołączyć do obiektu dodatkowe wejście 

umożliwiające sterowanie wybranym przez użytkownika parametrem (komponentem) obiektu. 

Wejście
synchronizujące

Wyjście
synchronizujące

Wyjście danych

Wejście danych

Rys. 3. Zaciski wejść i wyjść obiektu VEE

background image

 

21 

Zaciski można także usuwać. W tym celu wystarczy wybrać Delete Terminal. Klikając podwójnie 

istniejący zacisk można uzyskać o nim pewne informacje, np. nazwę, typ oraz format przesyłanych danych. 

 

2.10. Łączenie obiektów  

 

Sposób łączenia obiektów można prześledzić na prostym przykładzie. Przed przystąpieniem do 

tworzenia programu należy wyczyścić pole edycyjne. Można to zrobić w opisany wcześniej sposób (usuwając 

obiekt po obiekcie) lub wybierając w menu File opcję New

 

Lp. 

Czynności studentów 

Sposób wykonania czynności  

 

1. 

Opisać program 

- z menu File wybrać Save As ... 

- w okienku dialogowym w polu Nazwa pliku: wpisać "Zobrazowanie sygnału 

nieharmonicznego" i zaakceptować klawiszem Zapisz

- z menu Display wybrać Note Pad i obiekt notatnika umieścić w górnej części 

pola roboczego, 

- kliknąć na polu tekstowym i wpisać "Program zobrazowania sygnalu. 

Powoduje generacje sygnalu nieharmonicznego i wyswietlenie jego 

przebieg czasowy". 

 

2. 

Utworzyć program 

- z menu Device wybrać VirtualSource 

 Function Generator i umieścić w 

lewej części pola roboczego, 

- z menu Display wybrać Waveform[Time] i umieścić w prawej części pola 

edycyjnego, 

- kliknąć tuż przy wyjściu danych obiektu FunctionGenerator a następnie 

przemieścić myszkę w pobliże wejścia danych obiektu Waveform[Time] i 

kliknąć ponownie (powinno się uzyskać linię danych łączącą obydwa obiekty) – 

tak jak na rysunku 4, 

- w obiekcie Function Generator kliknąć rozwijalne menu Function i wybrać 

kształt sygnału, który ma być generowany, np. Square (przebieg prostokątny), 

- uruchomić tak utworzony program, wybierając z menu Debug opcję 

Run/Resume lub kliknąć ikonę Run na pasku narzędziowym. Jeśli wszystko 

zostało zrobione poprawnie program powinien zacząć działać - można teraz w 

obiekcie Function Generator wprowadzać różne wartości parametrów 

generowanego przebiegu i obserwować efekty tych zmian. 

 

background image

 

22 

Aby wykasować niepotrzebne lub błędne połączenie między obiektami należy, przy wciśniętych 

klawiszach Ctrl + Shift, najechać myszką na linię (znacznik myszy zmieni kształt na nożyczki) i kliknąć ją. 

 

2.11.Inne właściwości użytkowe środowiska programowego Agilent VEE 

 

Ogromną liczbę wbudowanych funkcji zawiera Function & Object Browser w menu Device 

programu. Przeglądarka tych funkcji dzieli je na typy i kategorie. 

 

 

 

 

 

 

 

Rys. 4. Wykonywanie połączeń między obiektami. 

Rys. 5. Okno dialogowe obiektu Function & Object Browser 

Pole typów funkcji 

Pole kategorii 

Pole nazw funkcji 

background image

 

23 

Pętle programowe 

Do realizacji pętli programowych służy zestaw obiektów pętli, umieszczonych w menu Flow opcja Repeat. Na 

rys. 6. pokazano cały zestaw obiektów pętli, które mogą być użyte w 

 programie. 

 

Dostępnych jest tu pięć typów pętli: 

a)  For Count  – pętla realizująca pewną liczbę powtórzeń, określoną przez wartość wpisaną w polu 

edycyjnym obiektu, 

b)  For Range – pętla zapewniająca zmianę wartości na swoim wyjściu danych w zakresie i z krokiem 

zadeklarowanym przez programistę (krok liniowy), 

c)  For Log Range – pętla zapewniająca zmianę wartości na swoim wyjściu danych z krokiem zmiennym w 

sposób logarytmiczny, 

d)  Until Breake – pętla zapewniająca nieskończone powtarzanie, aż do momentu uaktywnienia obiektu Stop 

lub przerwania programu przez operatora, 

e)  On Cycle – pętla zapewniająca okresowe powtarzanie pewnych operacji; okres powtarzania deklarowany 

jest w sekundach w okienku edycyjnym obiektu. 

 

 

 

 

 

 

 

Rys. 6. Obiekty powtórzeniowe w Agilent VEE.

a)

d)

e)

b)

c)

background image

 

24 

Obiekty sterujące 

Niektóre dostępne obiekty sterujące, przeznaczone do tworzenia graficznego interfejsu użytkownika 

przedstawione zostały na poniższym rysunku. Są one dostępne w menu Data opcje: Selection Contron

Toggle Control oraz Continuous

 

Obiekty zobrazowujące 

Duża różnorodność obiektów zobrazowujących umożliwia przedstawienie danych w sposób graficzny i bardzo 

wygodny dla użytkownika programu. Obiekty te dostępne są w menu Display opcje: Indicator, XY Trace, 

Strip Chart, Complex Plane, Polar Plot, i innych. 

 

background image

 

25 

2.12. Obiekty sterujące przyrządami pomiarowymi 

 

Program VEE dysponuje ponadto dużym zestawem obiektów, których zadaniem jest sterowanie 

przyrządami pomiarowymi, dołączonymi do komputera za pomocą standardowych interfejsów, takich jak RS-

232, GP-IB, USB i LAN. Obiekty te dostępne są przez menu I/O opcja Instrument Manager. Sterowanie 

dołączonymi do komputera przyrządami polega ogólnie na tym, że każda dana doprowadzana do obiektu 

sterującego (ang. driver) jest przez ten obiekt samoczynnie wysyłana do odpowiedniego przyrządu 

pomiarowego, natomiast próba odczytania danych o obiektu sterującego przyrządem związana jest każdorazowo 

z pobraniem stosownej informacji (wyniku pomiaru, wartości nastawy, informacji o stanie, itp.) od podległego 

przyrządu pomiarowego. Dzieje się to samoczynnie, bez udziału operatora i zwalnia programistę z potrzeby 

znajomości szczegółów protokołu komunikacji urządzeń ze sterującym komputerem. 

 

Obiekty sterujące przyrządami mogą występować w trzech postaciach, różniących się wyglądem, 

łatwością użycia w programie i szybkością pracy. Są to: 

 

sterowniki panelowe (panel drivers), 

 

sterowniki komponentów obiektu (component drivers), 

 

sterowniki bezpośrednie (direct I/O). 

W dalszej części ćwiczenia wykorzystywane będą głównie sterowniki panelowe i komponentów, najbardziej 

rozbudowane i umożliwiające najwygodniejsze sterowanie przyrządami. 

 

background image

 

26 

2.13. Wykonanie ćwiczenia 

 

1. Do zacisków Input HI LO woltomierza Agilent 34401A dołączyć rezystor dekadowy. 

Uruchomić program Agilent VEE. W menu I\O otworzyć okno dialogowe Instrument Manager. Na liście 

dostępnych przyrządów (Instrument List) wybrać Multimetr, a następnie utworzyć obiekt sterujący przyrządem 

(Create I\O Object) wybierając przycisk Panel Driver. Zarys obiektu sterującego umieścić na polu edycyjnym 

i kliknąć myszką. 

Utworzenie obiektu sterującego spowodowało nawiązanie połączenia z rzeczywistym przyrządem, przełączenie 

go w stan sterowania zdalnego (ang. remote control, napis Rmt na wyświetlaczu), ustawienie nastaw 

domyślnych w oczekiwaniu na polecenie wykonania pomiaru. 

Zainicjować wykonanie pomiaru klikając myszką w obiekcie sterującym w pole wyniku pomiaru (początkowo 

jest na nim znak zapytania "?"). Kliknąć w pole Function, z listy dostępnych funkcji pomiarowych multimetru 

wybrać 2Wire Ohms (pomiar rezystancji) i zaakceptować przyciskiem OK. Klikając w pole wyniku pomiaru 

inicjować wykonywanie pomiarów rezystancji. 

Kliknąć w pole Range (zakres pomiarowy), a po ukazaniu się okienka edycyjnego wybrać przycisk Query 

(zapytanie przyrządu o wybrany przezeń zakres pomiarowy). 

Otworzyć menu własne obiektu sterującego multimetrem (lewy górny narożnik), wybrać opcję Add Terminal 

by Component 

  Select Output Component

, a następnie kliknąć myszką na polu wyniku pomiaru. Obiekt 

zostanie wówczas uzupełniony o zacisk wyjścia danych, w tym wypadku o nazwie READING (odczyt), za 

pomocą którego wyniki pomiarów będzie można wyprowadzać do innych obiektów programu. 

Z menu Display wybrać obiekt AlphaNumeric i umieścić go na polu edycyjnym na prawo od obiektu 

multimetru. Wykonać połączenie wyjścia danych READING sterownika multimetru z wejściem danych 

wyświetlacza AlphaNumeric. Następnie uruchomić stworzony w ten sposób program za pomocą przycisku Run 

w pasku narzędzi programu VEE. 

 

2. Usunąć obiekt AlphaNumeric. Z menu Display wybrać obiekt Logging AlphaNumeric i umieścić na 

polu edycyjnym. 

Otworzyć menu lokalne sterownika multimetru i z pomocą opcji Delete Terminal 

 Output... usunąć wyjście 

danych o nazwie READING. 

Na panelu sterownika multimetru kliknąć w pole Trigger Options (opcje wyzwalania). Ukaże się wówczas 

panel Trigger Options, na którym w pole Sample Count wpisać liczbę 20. Spowoduje to, iż pojedyncze 

wyzwolenie pracy multimetru zainicjuje wykonanie serii 20 pomiarów, których wyniki zostaną zapamiętane w 

pamięci multimetru, a po zakończeniu serii - przesłane do komputera. Zaakceptować zmianę nastawy 

przyciskiem Done. 

Do sterownika multimetru dodać zacisk wyjściowy serii wyników pomiarów. W tym celu z menu lokalnego 

obiektu wybrać opcję Add Terminal by Component 

 Select Output Component, a następnie kliknąć 

myszką w pole wyników pomiarów. Spowoduje to pojawienie się w sterowniku zacisku wyjścia danych o 

nazwie READINGS. Wyjście danych READINGS połączyć z wejściem danych obiektu Logging AlphaNumeric. 

Za pomocą przycisku Run uruchomić program rejestrujący serię 20 pomiarów rezystancji. 

 

background image

 

27 

3. Z menu Display wybrać obiekt Strip Chart i umieścić na polu edycyjnym. Z menu lokalnego tego 

obiektu wybrać opcję Properties (właściwości), po ukazaniu się okienka dialogowego w sekcji Layout 

zaznaczyć pole Show Auto Scale Button. Zaakceptować nastawę klawiszem OK. 

Połączyć wyjście serii danych READINGS sterownika multimetru z wejściem danych obiektu wykresu Strip 

Chart. 

Ponownie uruchomić program klawiszem Run. 

Po zakończeniu serii pomiarów na wykresie Strip Chart kliknąć Auto Scale (autoskalowanie). 

 

4. Usunąć z programu obiekt Logging AlphaNumeric. 

Z menu Device wybrać opcję Function & Object Browser. Ukaże się okienko przeglądarki wbudowanych 

funkcji środowiska VEE. W polu typu funkcji wybrać Built-in Functions, w polu kategorii - Probability & 

Statistics

, a w polu nazwy funkcji wybrać mean (wartość średnia). Po naciśnięciu klawisza Create Formula 

na polu edycyjnym pojawi się obiekt mean(x) wyliczający wartość średnią zbioru danych podanego na jego 

wejście. Wyjście danych READINGS podłączyć do wejścia danych x obiektu matematycznego. Z pomocą menu 

Display umieścić na polu edycyjnym obiekt AlphaNumeric i jego wejście danych połączyć z wyjściem danych 

obiektu mean(x). Podobnie za pomocą menu Device 

 Function & Object Browser z kategorii Probability & 

Statistics wybrać funkcję sdev, która służy do wyliczania odchylenia standardowego w serii danych (ang. 

standard deviation). Utworzony obiekt sdev(x) umieścić na polu edycyjnym, jego wejście danych podłączyć do 

wyjścia serii pomiarów READINGS, a wyjście danych sdev(x) dołączyć do wejścia danych jeszcze jednego 

obiektu typu AlphaNumeric. 

Ponownie uruchomić program. 

 

5. Za pomocą menu File opcja New wyczyścić pole edycyjne. 

Przy użyciu I\O 

 Instrument Manager..

. wybrać na wykazie Multimetr i utworzyć dla niego obiekt sterujący 

typu Panel Driver. 

Na panelu pomiarowym obiektu w polu Function wybrać 2Wire Ohms, tzn. pomiar rezystancji. Następnie z 

menu Flow 

 

Repeat wybrać obiekt pętli On Cycle i umieścić pod panelem multimetru. W polu edycyjnym 

obiektu pętli wpisać liczbę 1 (okres powtarzania pętli w sekundach), połączyć wyjście synchronizujące panelu 

multimetru z wejściem aktywującym pętli i obiekt pętli zminimalizować do postaci ikony (prawy górny narożnik 

obiektu). 

Ponownie wejść do menu I\O 

 Instrument Manager..

. i po zaznaczeniu multimetru utworzyć dla niego tym 

razem Component Driver (sterownik komponentów). Obiekt ten umieścić na polu edycyjnym na prawo od 

obiektu pętli i nieco poniżej niej. Podwójnie klikając na sterownik komponentowy rozwinąć go do pełnej 

postaci. Połączyć wyjście danych obiektu pętli On Cycle z wejściem uaktywniającym sterownika 

komponentowego multimetru. 

Otworzyć menu lokalne tego sterownika i za pomocą opcji Add Terminal 

 Data Output... otworzyć okienko 

z wykazem wszystkich dostępnych komponentów wyjściowych sterownika. Zaznaczyć pozycję 

READING(Real) i zaakceptować wybór przyciskiem OK. 

Z menu Display wybrać obiekt AlphaNumeric i umieścić na polu edycyjnym. Wejście danych tego obiektu 

połączyć z wyjściem danych READING komponentowego sterownika multimetru. 

background image

 

28 

Uruchomić program. 

Zatrzymać program przyciskiem Stop w pasku narzędzi VEE. 

 

6. Z menu Display 

 Indicator wybrać obiekt zobrazowujący Meter. W polach edycyjnych zakresu 

wskazań tego obiektu wpisać : w lewym - liczbę 0, w prawym - liczbę 100. 

Otworzyć menu lokalne tego obiektu i wybrać opcję Properties. W zakładce General okienka dialogowego 

skonfigurować podzakresy wskaźnika wyróżnione kolorami, np. 

–  kolor czerwony : od 80 do 100, 

–  kolor żółty        : od 50 do 80, 

–  kolor zielony     : od 0 do 50. 

Zaakceptować zmianę nastawy klawiszem OK. 

Wyjście danych READING podłączyć do wejścia danych obiektu Meter. 

Uruchomić program i zmieniając nastawę rezystora dekadowego obserwować zachowanie wskaźnika. 

Zatrzymać program. 

 

 

7. Z menu Display 

 Indicator wybrać Color Alarm, obiekt umieścić na polu edycyjnym. 

Otworzyć menu lokalne tego obiektu i wybrać menu Properties. W zestawie parametrów Limits deklarujących 

wartości graniczne, przy których obiekt zmienia kolor wpisać odpowiednio: 

–  w polu High Limit : 80, 

–  w polu Low Limit : 50. 

Zaakceptować zmiany nastaw przyciskiem OK. 

Wejście danych wskaźnika Color Alarm podłączyć do wyjścia danych READING sterownika multimetru. 

Ponownie uruchomić program i uzyskać zmiany koloru wskaźnika przy zmianie nastawy rezystora dekadowego. 

Zatrzymać program. 

 

8. Wyczyścić pole edycyjne przy pomocy menu File 

 New. 

Z menu I/O 

 Instrument Manager... wybrać obiekt sterujący typu Panel Driver multimetru i umieścić go na 

polu edycyjnym. 

W polu Function panelu pomiarowego wybrać funkcję 2Wire Ohms (pomiar rezystancji). 

Kliknąć myszką w pole oznaczone Measure Panel. Otworzy się okienko z listą dodatkowych paneli 

dostępnych w tym obiekcie sterującym. Wybrać Other Panel i zaakceptować przyciskiem OK. W oknie tego 

panelu kliknąć w polu Readings Entry Mode i po otwarciu się kolejnej listy z dostępnymi wariantami wybrać 

As Taken

. Ten ostatni wybór spowoduje, że przy wykonywaniu serii pomiarów poszczególne wyniki będą 

wysyłane przez multimetr sukcesywnie do komputera. Domyślne ustawienie multimetru było zaś takie, że w 

trakcie wykonywania serii pomiarów ich wyniki były przechowywane w pamięci wewnętrznej multimetru (co 

ograniczało ich liczbę do 512) i transmitowane do komputera dopiero po zakończeniu całej serii. Skutkiem tego 

sterownik był zmuszony czekać bezczynnie na zakończenie serii pomiarów, co mogło grozić pojawieniem się 

błędu przeterminowania transmisji systemu GP-IB. 

background image

 

29 

Klikając w polu Other Panel ponownie wybrać panel pomiarowy sterownika (Measure Panel). Z menu I/O 

 

Instrument Manager... wybrać sterownik komponentowy multimetru i umieścić pod sterownikiem panelowym. 

Przez podwójne kliknięcie nadać mu postać rozwiniętą. 

Otworzyć menu lokalne sterownika komponentowego i wybrać opcję Add Terminal 

 Data Input... Po 

otwarciu listy z wykazem komponentów wejściowych wybrać daną o nazwie SAMP_COUNT(Int16). Steruje 

ona liczbą pomiarów, jakie ma wykonać multimetr po jednokrotnym wyzwoleniu. 

Ponownie otworzyć menu lokalne sterownika komponentowego i wybrać Add Terminal 

 Data Output... Z 

wykazu wybrać daną READINGS(Real Array). 

Z menu Data wybrać Constant 

 Int16 i obiekt stałej programowej umieścić na lewo od sterownika 

komponentowego multimetru. Do jego pola edycyjnego wpisać liczbę 20, a wyjście danej obiektu Int16 

podłączyć do wejścia SAMP_COUNT sterownika multimetru. 

Z menu Display wybrać obiekt Logging AlphaNumeric i umieścić go na prawo od sterownika 

komponentowego. Jego wejście danych podłączyć do wyjścia wyników pomiarów READINGS. 

Wyjście sekwencyjne sterownika panelowego multimetru połączyć z wejściem uaktywniającym sterownika 

komponentowego. 

Uruchomić program. 

 

9. Z menu I/O wybrać opcję To 

 File. Obiekt zapisujący dane do pliku dyskowego umieścić na prawo 

od sterownika komponentowego multimetru. 

Otworzyć menu lokalne obiektu To File i wybrać opcję Add Terminal 

 Data Input.  

W okienku obiektu pojawi się zacisk wejścia danych o nazwie A. Podwójnie kliknąć w ten zacisk, w okienku 

dialogowym Input Terminal Information zmienić nazwę zacisku na wyniki. Zaakceptować zmianę klawiszem 

OK. 

W obiekcie To File kliknąć myszką w pole nazwane myFile. Pojawi się okienko o nazwie Write data into what 

file?

, w którym w umieszczonym u dołu polu edycyjnym należy wpisać nazwę pliku, do którego będą 

wpisywane wyniki pomiarów (wraz z pełną ścieżką dostępu), np.  

 

C: \ TEMP \ WYNIKI.TXT 

Zaznaczyć pole Clear File At PreRun &Open. 

Zadeklarować operację, którą ma wykonać obiekt To File. W tym celu podwójnie kliknąć w zaznaczone pole o 

nazwie <Double-Click to Add Transaction>. Pojawi się okienko dialogowe I/O Transaction. Z listy rodzaju 

operacji wybrać WRITE (zapis), z listy typu danych wybrać TEXT (postać tekstowa), a w polu nazwy parametru 

wpisać wyniki

Wejście danych wyniki obiektu To File połączyć z wyjściem danych READINGS sterownika multimetru. 

Uruchomić program. 

Po zakończeniu pomiarów sprawdzić zawartość pliku dyskowego WYNIKI.TXT . 

SPRAWOZDANIE:  

 

W sprawozdaniu z wykonanego ćwiczenia należy zamieścić własne uwagi i spostrzeżenia dotyczące 

programu HPVEE oraz pracy w systemie pomiarowym, a ponadto wydruki lub schematy blokowe 

opracowanych programów.  

 

background image

 

30 

LITERATURA:  

 

1. Winiecki W.: Organizacja komputerowych systemów pomiarowych. Oficyna Wydawnicza PW, Warszawa, 

1997.  

2. Nowakowski W.: Systemy interfejsu w miernictwie. Warszawa, WKiŁ 1987. 

3. Kocoń K.: Miernictwo elektroniczne. Automatyzacja pomiarów z wykorzystaniem systemu interfejsu według 

zalecenia IEC-625. WAT, Warszawa, 1991. 

4. Kasprzak B.: 

http://kmeif2.kmeif.pwr.wroc.pl/elektron/interfejsy/interface.html#vee

 

 

5. Maciejewski Ł., Zając P.: 

http://its.wmech.pwr.wroc.pl/pomoce/hp_vee/