GPIB. 27 października 2014 Wojciech Kucewicz 1



Podobne dokumenty
Interfejsy. w systemach pomiarowych. Ryszard J. Barczyński, 2016 Materiały dydaktyczne do użytku wewnętrznego

Architektura komputerów

Architektura komputerów. Układy wejścia-wyjścia komputera

Standard transmisji równoległej LPT Centronics

Komputerowe systemy pomiarowe

Laboratorium Komputerowe Systemy Pomiarowe

Rysunek 1: Schemat układu pomiarowego.

Rodzaje urządzeń i połączeń między nimi stosowanych w systemach pomiarowych: Karty DAQ do systemów komputerowych magistrala systemu komputerowego,

Interfejs urządzeń peryferyjnych

Spis treści Objaśnienie skrótów Wstęp Rozdział 1. Pomiar, system pomiarowy, przesyłanie danych Rozdział 2. Magistrala GPIB

Zintegrowany system pomiarowy oparty o magistralę IEEE-488

OPBOX ver USB 2.0 Miniaturowy Ultradźwiękowy system akwizycji danych ze

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

LEKCJA TEMAT: Zasada działania komputera.

Architektura komputerów

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

interfejs szeregowy wyświetlaczy do systemów PLC

CompactPCI. PCI Industrial Computers Manufacturers Group (PICMG)

Technika Mikroprocesorowa

XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej. XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej

INTERFEJSY SYSTEMÓW ELEKTRONICZNYCH. Interfejsy klasy RS

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Pomoc do programu konfiguracyjnego RFID-CS27-Reader User Guide of setup software RFID-CS27-Reader

LABORATORIUM SYSTEMÓW POMIAROWYCH KTP IR PW MATERIAŁY POMOCNICZE DO ĆWICZENIA 1 SYMULATOR SYSTEMU POMIAROWEGO W STANDARDZIE IEC-625.

Komunikacja w mikrokontrolerach Laboratorium

Katedra Metrologii i Systemów Elektronicznych. Interfejs USB

Parametryzacja przetworników analogowocyfrowych

Kod produktu: MP01105

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

System interfejsu RS 232C opracowali P. Targowski i M. Rębarz

Komputerowe systemy pomiarowe. Dr Zbigniew Kozioł - wykład Mgr Mariusz Woźny - laboratorium

Laboratorium Komputerowe Systemy Pomiarowe

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Autor: Jakub Duba. Interjesy

Instrukcja do oprogramowania ENAP DEC-1

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Podsumowanie. semestr 1 klasa 2

Urządzenie do programowania głowic eq-3

KOMPUTEROWE SYSTEMY POMIAROWE

Architektura komputerów

Programowanie Mikrokontrolerów

Generator przebiegów pomiarowych Ex-GPP2

TECHNIKA MIKROPROCESOROWA

Budowa systemów komputerowych

Systemy wbudowane - wykład 8. Dla zabicia czasu Notes. I 2 C aka IIC aka TWI. Notes. Notes. Notes. Przemek Błaśkiewicz.

5. Model komunikujących się procesów, komunikaty

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Interfejsy systemów pomiarowych

Ćw. 12. Akwizycja sygnałów w komputerowych systemach pomiarowych ( NI DAQPad-6015 )

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

Plan wykładu. 1. Urządzenia peryferyjne 2. Rodzaje transmisji danych 3. Interfejs COM 4. Interfejs LPT 5. Plug and Play

Laboratorium Elektrycznych Systemów Inteligentnych

Architektura komputerów

Wirtualne przyrządy kontrolno-pomiarowe

Mikroprocesory i Mikrosterowniki Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

Mikroprocesor Operacje wejścia / wyjścia

IEEE Centronics

Podstawy działania układów cyfrowych...2 Systemy liczbowe...2 Kodowanie informacji...3 Informacja cyfrowa...4 Bramki logiczne...

Architektura systemów komputerowych. dr Artur Bartoszewski

Aby w pełni przetestować układ o trzech wejściach IN_0, IN_1 i IN_2 chcemy wygenerować wszystkie możliwe kombinacje sygnałów wejściowych.

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Ploter I-V instrukcja obsługi

Wstęp Architektura... 13

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

Wirtualne przyrządy pomiarowe

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Przemysłowe Sieci informatyczne

Komunikacja pomiędzy S i S7-300/400 przez Ethernet (1)

. Rodzaje transmisji sygnału i RS-232

S Instrukcje programowania instrukcje obsługi Ethernetu

Dyski z interfejsem SCSI.

2. Architektura mikrokontrolerów PIC16F8x... 13

Hardware mikrokontrolera X51

Rejestratory Sił, Naprężeń.

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

Przetworniki. Przetworniki / Transducers. Transducers. Przetworniki z serii PNT KON PNT CON Series Transducers

PL B1. Akademia Górniczo-Hutnicza im. St. Staszica,Kraków,PL BUP 24/01. Wiesław Wajs,Kraków,PL

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

Camspot 4.4 Camspot 4.5

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

POLITECHNIKA ŚLĄSKA INSTYTUT AUTOMATYKI ZAKŁAD SYSTEMÓW POMIAROWYCH

Sterownik Spid Pant 8 i Ant 8. Podręcznik użytkowania

Komunikacja z urzadzeniami zewnętrznymi

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

Interfejs transmisji danych

Wykład 4. Interfejsy USB, FireWire

STEKOP SA. Odbiornik dialerowy. Zakład Pracy Chronionej Białystok, ul. Młynowa 21 tel./fax : (+48 85) ,

Research & Development Ultrasonic Technology / Fingerprint recognition

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

Kurs Zaawansowany S7. Spis treści. Dzień 1

Automatyczne włączenie przystawki odbioru mocy napędzanej od skrzyni biegów

MIKROKONTROLERY - MAGISTRALE SZEREGOWE

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

Instrukcja obsługi czytnika MM-R32

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

PL B1 (19) PL (11) (12) OPIS PATENTOWY (13) B1. (51) Int.Cl.7: G 06F 3 /1 2 G06K 15/02 G06F 17/60 G07G 1/12

Transkrypt:

GPIB 27 października 2014 Wojciech Kucewicz 1

Interfejs GPIB (General Purpose Inteface Bus) HPIB, IEEE-488 Magistrala GPIB pozwala na prostą integrację urządzeń pomiarowych z komputerem. Magistrala jest przeznaczona do łączenia w system pomiarowy następujących urządzeń: cyfrowych przyrządów pomiarowych, urządzeń sterowanych cyfrowo, drukarek i ploterów oraz kontrolera. GPIB cable PCI-GPIB for Windows Długość 1-8 m Szybkość transmisji danych 1.5 Mbyte/s 27 października 2014 Wojciech Kucewicz 2

Interfejs GPIB (General Purpose Inteface Bus) HPIB, IEEE-488 Anthony J. Caristi - Ieee-488 General Purpose Instrumentation Bus Manual (1989) - 103$ Wojciech Mielczarek - Urządzenia pomiarowe i systemy kompatybilne ze standardem SCPI, Helion, 1999 http://www.ni.com/gpib/ GPIB cable PCI-GPIB for Windows Długość 1-8 m Szybkość transmisji danych 1.5 Mbyte/s 27 października 2014 Wojciech Kucewicz 3

Ewolucja GPIB 1965 1975 1987 1990 1992 Hewlett-Packard designs HP-IB for Instrumentation Systems HP-IB becames IEEE 488 standard IEEE 488-1975 becomes 488.1-1987 IEEE 488.2 adopted SCPI Specification Introduced for IEEE 488 Instruments (Standard Commands for Programmable Instruments) IEEE 488.2 Standard Revised 1993 National Instruments proposed High-speed extensions to IEEE 488.1 called HS488 27 października 2014 Wojciech Kucewicz 4

Ewolucja GPIB 1965 Standard interfejsu równoległego IEEE-488 opracowano w amerykańskiej firmie Hewlett-Packard pod nazwą firmową HPIB (ang. Hewlett-Packard Interface Bus) w latach 1965-1970. 1975 Interfejs HPIB otrzymał status normy USA o oznaczeniu IEEE-488 (IEEE - ang. Institute of Electrical and Electronic Engineers). W roku 1976 status normy międzynarodowej IEC-625 (IEC - ang. International Electrotechnical Commission) z nieznaczną różnicą w stosunku do IEEE-488 dotyczącą złącza interfejsowego i okablowania. 1987 Standard IEEE 488-1975 przekształcono na 488.1-1987 i rozszerzono (standard IEEE 488.2 ) 1990 Dodano do IEEE 488 specyfikację SCPI (Standard Commands for Programmable Instruments) 1993 National Instruments zaproponował rozszerzenie High speed nazwane HS488 27 października 2014 Wojciech Kucewicz 5

Standard GPIB Standard interfejsu IEEE-488 i standard interfejsu IEC-625 są identyczne pod względem funkcjonalnym i sterowania. Standard IEEE-488 jest również znany pod nazwą GPIB (ang. General Purpose Interface Bus), którą stosują m.in. firmy Tektronix i National lnstruments, bardzo znaczący producenci sprzętu i oprogramowania do systemów pomiarowych. Opis standardu interfejsu IEC-625 ujmuje PN-83/T-06536. Standard interfejsu określa organizację wymiany danych cyfrowych w systemie, parametry elektryczne sygnałów, parametry mechaniczne złączy i podstawowe procedury programowe. 27 października 2014 Wojciech Kucewicz GPIB 6

GPIB Podstawowe parametry systemu interfejsu IEEE-488 (IEC-625) to: równoległa asynchroniczna transmisja informacji w postaci komunikatów słów 8- bitowych szyną danych magistrali interfejsowej; transmisja w trybie handshake, z potwierdzeniem odebrania komunikatu; tryb handshake pozwala na dostosowanie szybkości transmisji do możliwości odbierania komunikatów przez najwolniejszego odbiorcę; sygnały na magistrali przedstawiane w logice ujemnej, tzn. stanowi logicznemu 1 (ang. T - true) odpowiada niski poziom napięcia na linii sygnałowej, a stanowi logicznemu O (ang. F - false) odpowiada wysoki poziom napięcia na linii; wysokość napięcia odpowiada poziomom TTL; maksymalna szybkość transmisji 1,5 MB/s; maksymalna liczba urządzeń systemu 15; kabel magistrali interfejsowej zawierający 24 linie (25 linii dla IEC-625) o maksymalnej całkowitej długości 20 m, z zalecanym ograniczeniem długości kabla między dwoma urządzeniami do 2 m. 27 października 2014 Wojciech Kucewicz GPIB 7

GPIB Standard IEEE-488 jest normą USA, a standard IEC-625 normą międzynarodową, ale użytkownik systemu musi często uwzględniać jeden z nich, niezależnie od swojego wyboru, lecz zależnie od wytwórcy przyrządu i okablowania. Firmy i korporacje amerykańskie, jak np. Hewlett-Packard lub National Instruments, wyposażają swoje przyrządy w 24-stykowe gniazda interfejsowe i okablowanie według IEEE-488. Producenci z Europy trzymają się raczej standardu IEC-625 - ich produkty mają gniazda 25-stykowe i okablowanie według IEC-625. Obydwa standardy są identyczne funkcjonalnie. Warto wspomnieć, że firma Hewlett-Packard konsekwentnie oznacza standard IEEE-488 nazwą firmową HPIB, natomiast firma National Instruments, która jest producentem o światowym zasięgu zarówno cyfrowych przyrządów pomiarowych, jak i oprogramowania do tych systemów (programy LabView i LabWindows), używa nazwy GPIB. Ze względu na dominującą pozycję firm amerykańskich na rynku przyrządów pomiarowych znacznie częściej są stosowane i spotykane przyrządy ze złączem i okablowaniem IEEE-488 niż IEC-625. 27 października 2014 Wojciech Kucewicz GPIB 8

Ewolucja standardu GPIB Handshaking/Control/Mechanical /Electrical Standards IEEE 488.1 Common Commands /Syntax/Data Structures IEEE 488.2 Command Hierarchy/Standard Response /Standard Programm Command set SCPI IEEE 488.1 simplified the interconnection of programmable instrumentation by clearly defining mechanical, electrical and hardware protocol specification. IEEE 488.2 builds on IEEE 488.1 by defining a minimum set of device interface capabilities, a common set of data codes and formats, a device message protocol, a generic set of commonly needed device commands. SCPI (Standard Commands for Programmable Instruments) simplifies the programming task by defining a single comprehensive command set for programmable instrumentation, regardless of type or manufacturer. 27 października 2014 Wojciech Kucewicz 9

Struktura magistrali GPIB Magisrala danych Magistrala synchronizacji Magistrala sterowania 27 października 2014 Wojciech Kucewicz 10

GPIB Magistrala interfejsu GPIB zawiera 24 linie, z których 16 to linie sygnałowe zgrupowane w trzech częściach zwanych szynami, a pozostałe to linie masy i ekranowania. Magistralę interfejsu GPIB tworzą: szyna danych (8 linii), szyna sterowania (5 linii), szyna synchronizacji (3 linie), 7 linii masy i 1 linia ekranowania. Liczba linii magistrali interfejsu IEC-625 wynosi 25 i magistrala ta różni się od GPIB tylko liczbą linii masy, których zawiera 8. 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 GPIB IEC-625 13 25 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 27 października 2014 Wojciech Kucewicz GPIB 11

Złącze IEEE-488 i IEC-625 Nr zestyku Linia Linia Nr zestyku IEC-625 IEEE-488 IEC-625 IEEE-488 1 DIO 1 DIO 1 14 DI05 DI06 2 DI02 DI02 15 DI06 DI07 3 DI03 DI03 16 DI07 DI08 4 DI04 DI04 17 DI08 REN 5 REN EOl 18 masa (5) masa (6) 6 EOl DAV 19 masa (6) masa (7) 7 DAV NRFD 20 masa (7) masa (8) 8 NRFD NDAC 21 masa (8) masa (9) 9 NDSC IFC 22 masa (9) masa (10) 10 IFC SRQ 23 masa (10) masa (11) 11 SRQ ATN 24 masa (11) masa cyfrowa 12 ATN Ekran 25 masa (12) 13 Ekran DI05 27 października 2014 Wojciech Kucewicz GPIB 12

Szyna sterowania Szyna sterowania (ang. interface management bus) jest zbiorem pięciu linii sygnałowych: IFC, ATN, REN, SRQ, EOL IFC - "zerowanie interfejsu" (ang. InterFace Clear), sterowana przez kontroler systemu. W szczególności, po włączeniu zasilania systemu interfejsu kontroler podaje na linię IFC sygnał logiczny 1 (niski poziom napięcia) na czas nie krótszy niż 100 ms. Sygnał ten sprowadza układy interfejsu urządzeń IEEE-488 do stanu początkowego. Po zakończeniu zerowania, w czasie wymiany komunikatów między urządzeniami, stan logiczny linii IFC = O (wysoki poziom napięcia na linii). ATN - "uwaga na typ komunikatu" (ang. ATteNtion), sterowana przez kontroler. Stan logiczny ATN = 1 informuje o tym, że komunikaty na szynie danych to instrukcje (adresy lub rozkazy), stan logiczny ATN = O oznacza, że komunikaty na szynie danych to dane. GPIB 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 SRQ - "żądanie obsługi" (ang. Service ReQuest), sterowana przez dowolne urządzenie IEEE-488. Linia SRQ może być uważana za linię zgłaszania przerwań. Każde urządzenie w systemie może zgłaszać potrzebę obsługi przez wysterowanie linii SRQ = 1. Obsługa może się wiązać np. z informacją o przekroczeniu zakresu pomiarowego przyrządu i potrzebą zmiany nastawionego zakresu lub z żądaniem przesłania danych ustawiających przyrządy do następnego kroku procedury pomiarowej. 27 października 2014 Wojciech Kucewicz GPIB 13 3 15 2 14 1 13

Szyna sterowania Szyna sterowania (ang. interface management bus) jest zbiorem pięciu linii sygnałowych: IFC, ATN, REN, SRQ, EOL GPIB REN - "obsługa zdalna możliwa" (ang. Remote ENable), sterowana przez kontroler. Przez wysterowanie linii REN wybiera się obsługę zdalną (systemową) wszystkich urządzeń IEEE-488 (nastaw ich przełączników i pokręteł) lub obsługę lokalną, ręczną. W przypadku obsługi zdalnej, dla REN = 1, urządzenie IEEE-488 obsługuje się albo zupełnie automatycznie, albo tak jak przyrząd wirtualny, korzystając z widoku na ekranie monitora płyty czołowej urządzenia i manipulując klawiaturą lub myszą komputera. Do lokalnej obsługi nastaw urządzenia REN = O. EOl - "koniec lub identyfikacja" (ang. End Or Identify), sterowana przez kontroler lub nadawcę. Nazwa linii łączy się z dwoma znaczeniami jej wysterowania, zależnie od rodzaju komunikatu na szynie danych, co jest sygnalizowane stanem linii ATN. W przypadku transmisji danych (wtedy ATN = O) ustawienie przez nadawcę danych stanu logicznego linii EOl = 1 oznacza koniec segmentu danych (funkcja END). W przypadku transmisji instrukcji (wtedy ATN = 1) stan linii EOl = 1 oznacza kontrolę (odpytywanie) równoległą urządzeń IEEE-488 - pytanie o to, jaki jest status urządzeń. 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 27 października 2014 Wojciech Kucewicz GPIB 14

Szyna synchronizacji Szynę synchronizacji (ang. interface handshake bus) tworzą 3 linie, których zadaniem jest sterowanie wysyłaniem i odbieraniem każdego bajtu na szynie danych. Dla interfejsu IEEE-488 słowo "synchronizacja" jest tu rozumiana jako koordynacja transmisji. Transmisja bajtów odbywa się asynchronicznie, w trybie handshake. Szynę synchronizacji tworzą trzy linie: DAV, NRFD, NDAC. DAV - "dane ważne" (ang. DAta Valid). Linia jest sterowana przez nadawcę, który sygnałem DAV = 1 informuje odbiorców, że zakończyły się procesy zmiany i ustalania sygnałów na szynie danych i nowy bajt jest ważny i dostępny na szynie DIO. GPIB 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 27 października 2014 Wojciech Kucewicz GPIB 15

Szyna synchronizacji Szynę synchronizacji (ang. interface handshake bus) tworzą 3 linie, których zadaniem jest sterowanie wysyłaniem i odbieraniem każdego bajtu na szynie danych. Dla interfejsu IEEE-488 słowo "synchronizacja" jest tu rozumiana jako koordynacja transmisji. Transmisja bajtów odbywa się asynchronicznie, w trybie handshake. Szynę synchronizacji tworzą trzy linie: DAV, NRFD, NDAC. NRFD - "niegotowe do odbioru danych" (ang. Not Ready For Data). Ta linia jest sterowana przez wszystkich odbiorców zaadresowanych do odbierania. Stan logiczny 1 na wyjściu NRFD urządzenia IEEE-488 oznacza, że urządzenie nie jest jeszcze gotowe do przyjęcia danych. Ponieważ stan logiczny 1 jest reprezentowany przez niski poziom napięcia (logika ujemna), to wystarczy, aby tylko jeden odbiorca sygnalizował brak gotowości niskim poziomem napięcia, a cała linia NRFD będzie na niskim poziomie napięcia. Zatem gotowość do odbioru danych wszystkich urządzeń zaadresowanych do odbierania jest sygnalizowana przez stan linii NRFD = O, co odpowiada wysokiemu poziomowi napięcia na linii. Z powodu różnicy między stanem logicznym komunikatów wysłanych przez część urządzeń (logiczne O) a stanem odebranego komunikatu (logiczna 1, kiedy chociaż jedno urządzenie wysyła komunikat NRFD = 1) wprowadzono pojęcie logicznej wartości komunikatów aktywnej i pasywnej GPIB 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 27 października 2014 Wojciech Kucewicz GPIB 16

Szyna synchronizacji Szynę synchronizacji (ang. interface handshake bus) tworzą 3 linie, których zadaniem jest sterowanie wysyłaniem i odbieraniem każdego bajtu na szynie danych. Dla interfejsu IEEE-488 słowo "synchronizacja" jest tu rozumiana jako koordynacja transmisji. Transmisja bajtów odbywa się asynchronicznie, w trybie handshake. Szynę synchronizacji tworzą trzy linie: DAV, NRFD, NDAC. NDAC - "dane nieodebrane" (ang. Not Data ACcepted). Ta linia jest również sterowana przez wszystkich odbiorców zaadresowanych do odbierania. Stan logiczny 1 na wyjściu NDAC urządzenia IEEE-488 odbiorcy oznacza, że to urządzenie IEEE-488 nie zakończyło jeszcze procesu odbioru bajtu. Może się to wiązać np. z przetwarzaniem przez urządzenie danych odebranych poprzednio i przepełnieniem buforów wejściowych. Stan logiczny 1 na wyjściu NDAC przynajmniej jednego odbiorcy wystarczy do wysterowania całej linii stanem NDAC = 1. Kiedy wszyscy odbiorcy zakończyli odbieranie aktualnego bajtu, to stan logiczny linii NDAC = O i odpowiada mu wysoki poziom napięcia na linii. GPIB 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 27 października 2014 Wojciech Kucewicz GPIB 17

Szyna danych Szyna danych (ang. data bus) jest złożona z 8 linii sygnałowych oznaczonych DIO1 DIO8 (ang. Data Input Output). GPIB Służy do przesyłania danych oraz instrukcji (adresy lub rozkazy). Informacja o typie komunikatu dostępnego na szynie danych jest generowana przez kontroler i dostarczana liną sterującą ATN (ATN=1 instrukcje; ATN=0 dane). Komunikaty są przesyłane bajtami, dwukierunkowo, od nadawcy do odbiorców, z potwierdzeniem gotowości do ich przyjęcia (linia NRFD) i potwierdzeniem ich odebrania (linia NDAC). 12 24 11 23 10 22 9 21 8 20 7 19 6 18 5 17 4 16 3 15 2 14 1 13 27 października 2014 Wojciech Kucewicz GPIB 18 18

Przyłączanie urządzeń GPIB Linear Configuration Star Configuration 27 października 2014 Wojciech Kucewicz 19

Przyłączanie urządzeń GPIB W magistrali GPIB należy przestrzegać następujących zasad: Maksymalna odległość pomiędzy dwoma urządzeniami poniżej 4 m przy średniej odległości 2 m. Maksymalna długośc magistrali 20 m Nie więcej niż 15 urządzeń podłączonych w magistrali przy czym co najwyżej 2/3 z może jednocześnie pracować. 27 października 2014 Wojciech Kucewicz 20

Przyłączanie urządzeń GPIB For higher speed systems using the 3-wire IEEE 488.1 handshake (T delay = 350 ns), and HS488 systems, the following restrictions apply: A maximum total cable length of 15 m with a device load per 1 m cable All devices should be powered on Device capacitance on each GPIB signal should be less than 50 pf per device 27 października 2014 Wojciech Kucewicz 21

Porównanie GPIB z SCSI, RS-232 i RS-485 GPIB SCSI RS-232 RS-485 Pasmo 1-8MB/s 2-5MB/s <20kB/s <20kB/s Max # of Devices 14 7 1 32 Max cable lenght 20m 6m 15m 1220m Connectors Standard Nostand. Nostand. Nostand. Bus connectivity Linear or Star Linear - Linear *SCSI- Small Computer System Interface 27 października 2014 Wojciech Kucewicz 22

Magistrala GPIB Interfejs GPIB Urządzenie pomiarowe Urządzenie kontrolne Funkcje pomiarowe Interfeis do GPIB Interfeis do GPIB Komputer Kontroler, Nadawca, Odbiorca np. Komputer Nadawca np. klawiatura, czujnik Nadawca, Odbiorca np. przyrząd pomiarowy Odbiorca np. drukarka 27 października 2014 Wojciech Kucewicz 23

Urządzenia przyłączane do magistrali Kontroler: definiuje połączenia na magistrali odpowiada na żądanie obsługi przez urządzenie wysyła rozkazy GPIB Nadawca: kontroler ustawia nadawcę w tryb nadawania nadawca umieszcza dane na magistrali kontroler pozwala tylko jednemu urządzeniu na nadawanie w danej chwili Odbiorca: kontroler ustawia odbiorcę w tryb odbierania odbiorca czyta dane z magistrali kontroler pozwala wielu urządzeniom na odbieranie danych w danej chwili 27 października 2014 Wojciech Kucewicz 24

Funkcje interfejsowe Urządzenie pomiarowe Device Functions Interface Functions Transceiver GPIB Każde urządzenie IEEE-488 składa się z trzech bloków funkcjonalnych spełniających następujące funkcje: przeznaczenia urządzenia (ang. Device Functions), a więc np. woltomierz cyfrowy przeznaczony do systemu IEEE-488 musi pełnić funkcję woltomierza, generator musi być generatorem itd., interfejsowe (ang.interface Functions), umożliwiające urządzeniu przyjmowanie i interpretację komunikatów oraz generowanie i wysyłanie komunikatów za pośrednictwem magistrali interfejsowej, dopasowania sygnałów - do/z magistrali przez układy kodowania i dekodowania sygnałów oraz odbiorniki i nadajniki linii 27 października 2014 Wojciech Kucewicz GPIB 25

Funkcje Interfejsowe Kod funkcji S H A H T L S R Nazwa funkcji Source Handshake - Inicjator współpracy Acceptor Handshake - Akceptor współpracy Talker - Nadawca Listener - Odbiorca Service Request - Żądanie o bsługi Opis Funkcja realizowana w urządzeniu nadawczym, wraz z funkcją AH umożliwia synchronizację przekazu informacji liniami DIO Funkcja realizow ana w urządzeniu odbiorczym, wraz z funkcją SH umożliwia synchronizację przekazu informacji liniami DIO Funkcja realizowana w urządzeniu nadawczym, odpowiedzialna bezpośrednio za wysyłanie asynchronicznych bajtów; urządzenie musi być w cześniej skonfigurowane do nadawania Funkcja realizowana w urządzeniu odbiorczym, odpowiedzialna bezpośrednio za odbieranie bajtów z magistrali; urządzenie musi być wcześniej skonfigurowane do odbioru Funkcja sterująca linią SRQ, realizuje zgłoszenie przerwania 27 października 2014 Wojciech Kucewicz 26

Funkcje Interfejsowe Kod funkcji D C D T R L P P C Nazwa funkcji Device Clear - Zerowanie urządzenia Device Trigger - Wyzwalanie urządzenia Remote/Local - Zdalny/ Lokalny Parallel Poll - Kontrola równoległa Controller - Kontroler Opis Funkcja wprowadzające urządzenie w stan początkowy Funkcja realizująca zdalne wyzwalanie urządzenia Funkcja realizująca przełączanie urządzenia z pracy zdalnej na lokalną Funkcja pozwalająca na prowadzenie kontroli równoległej, pozwala na przekazanie do kontrolera pojedynczego bitu statusu bez uprzedniego ustawienia do nadawania, przekazywana po jednej z linii DIO Funkcja umożliwiająca sterowanie urządzeniem pomiarowym, przejmowanie i przekazywanie kontroli nad magistralą 27 października 2014 Wojciech Kucewicz 27

Funkcje interfejsowe Urządzenie pomiarowe Device Functions Interface Functions Transceiver GPIB W standardzie IEEE-488 zdefiniowano 10 funkcji interfejsowych: SH T AH L (ang. Source Handshake), przygotowanie urządzenia do wysyłania komunikatów - (ang. Tolker), nadajnik wykonanie czynności nadania komunikatu (ang. Acceptor Handshake), przygotowanie urządzenia do odbierania komunikatów - (ang. Listener), odbiornik wykonanie czynności przyjęcia komunikatu C - (ang. Controller), służy do sterowania pracą systemu. Funkcja C - "kontroler" - jest wykonywana przez wysyłanie rozkazów i adresowanie urządzeń. W szczególności są to: rozkaz zerowania urządzeń IFC, rozkaz wyboru sposobu obsługi "zdalny/lokalny" REN i rozkaz kontroli równoległej PP. 27 października 2014 Wojciech Kucewicz GPIB 28

Funkcje interfejsowe Urządzenie pomiarowe Device Functions Interface Functions Transceiver GPIB W standardzie IEEE-488 zdefiniowano 10 funkcji interfejsowych: Funkcja interfejsowa SR umożliwia urządzeniu zgłoszenie potrzeby obsługi programowej. W celu wykonania funkcji SR urządzenie steruje asynchronicznie linią SRQ - "żądanie obsługi" - w magistrali interfejsowej, ustawiając stan logiczny SRQ = 1. W reakcji na zgłoszenie SR kontroler musi rozpoznać, które urządzenie zgłasza to żądanie i jakiego rodzaju obsługa programowa jest potrzebna. Następnie kontroler powinien rozpocząć obsługę programową zgodnie z algorytmem działania systemu. Funkcja interfejsowa RL służy do wybrania sposobu obsługi nastaw urządzenia: przez magistralę interfejsową, czyli do obsługi zdalnej, lub z płyty czołowej urządzenia, czyli do obsługi lokalnej. Realizacja funkcji RL dokonuje się przez wysterowanie linii REN - "obsługa zdalna możliwa". Ponieważ wejścia REN wszystkich urządzeń IEEE-488 są dołączone równolegle do linii REN, to wynik wyboru sposobu obsługi (zdalna lub lokalna) dotyczy wszystkich podłączonych urządzeń. 27 października 2014 Wojciech Kucewicz GPIB 29

Funkcje interfejsowe Urządzenie pomiarowe Device Functions Interface Functions Transceiver GPIB W standardzie IEEE-488 zdefiniowano 10 funkcji interfejsowych: Funkcja interfejsowa PP - "kontrola równoległa", nazywana także "odpytywanie równoległe", umożliwia kontrolerowi równoległe sprawdzenie stanu urządzeń IEEE-488 (w liczbie do 8 urządzeń). Do sygnalizowania stanu urządzeń służą linie DIO1 -DIO8 szyny danych. Każdej z ośmiu linii jest przypisane jedno urządzenie IEEE-488, zatem stan wszystkich ośmiu linii może być ustalony jednocześnie. Funkcja PP jest wykonywana w sytuacji, gdy np. na linii SRQ jest zgłaszane żądanie obsługi programowej (SRQ = 1). Wówczas kontroler wykonuje funkcję PP - "odpytywania równoległego" - w celu ustalenia, które urządzenie w systemie zgłaszało to żądanie. Warto wspomnieć, że w systemie IEEE-488 oprócz kontroli równoległej jest możliwa także kontrola szeregowa stanu urządzeń. 27 października 2014 Wojciech Kucewicz GPIB 30

Funkcje interfejsowe Urządzenie pomiarowe Device Functions Interface Functions Transceiver GPIB W standardzie IEEE-488 zdefiniowano 10 funkcji interfejsowych: Funkcja interfejsowa DC służy do sprowadzenia do stanu początkowego wszystkich urządzeń systemu IEEE-488. Wykonanie funkcji DC - "zerowanie urządzenia" - jest zastrzeżone dla aktywnego kontrolera systemu. Kontroler spełnia funkcję DC przez wysterowanie linii IFC = 1. Funkcja interfejsowa DT służy do rozpoczęcia działania jednego lub kilku urządzeń IEEE-488 zaadresowanych do odbierania. Realizacja funkcji DT - "wyzwalanie urządzenia" - inicjuje działanie urządzenia, np. służy do zdalnego rozpoczęcia procesu pomiaru napięcia przez woltomierz cyfrowy w systemie. Każde urządzenie jest wyposażone tylko w te funkcje, które są potrzebne do jego pracy w systemie 27 października 2014 Wojciech Kucewicz GPIB 31

Komunikaty Informacje przekazywane w systemie interfejsu GPIB nazywamy komunikatami. Komunikaty zdalne (przesyłane po magistrali): Komunikaty interfejsowe służące do zarządzania systemem Komunikaty urządzeń (nie przetwarzane przez system interfejsu np. dane) Komunikaty lokalne (przesyłane wewnątrz urządzenia) 27 października 2014 Wojciech Kucewicz 32

Klasyfikacja komunikatów GPIB Komunikaty GPIB Przesyłane po magistrali Zdalne Przesyłane od interfejsu do urządzenia i odwrotnie Lokalne Komunikaty interfejsowe Komunikaty urządzeń (dane) Do funkcji urządzeń Do funkcji interfejsowych Jednoliniowe Wieloliniowe (instrukcje) Dane programujące C D (DIO) Wyniki pomiarów D C (DIO) Komunikaty stanów D C (DIO) Synchronizacji C D (DAV, NDAC, NRFD) Sterowania C D C (ATN, IFC, REN, SRQ, EOI) Adresy Rozkazy Rozkazy i adresy Wtórne C D (DIO) Odbiorcze C D (DIO) Nadawcze C D (DIO) Uniwersalne C D (DIO) Adresowe C D (DIO) 27 października 2014 Wojciech Kucewicz 33

Komunikaty zdalne Podział funkcjonalny wszystkich komunikatów pozwala wyodrębnić 7 grup: 1. Rozkazy Uniwersalne UC 2. Adresy AD 3. Komunikaty zależne od urządzenia DD 4. Komunikaty synchronizacji HS 5. Komunikaty stanu ST 6. Rozkazy Adresowane AC 7. Komunikaty wtórne SE 27 października 2014 Wojciech Kucewicz 34

Komunikaty zdalne Rozkazy Uniwersalne (UC) Do grupy UC należą zarówno komunikaty jednoliniowe przesyłane po przypisanych im liniach sterowania interfejsów, jak i komunikaty wieloliniowe zawierające kod grupowy (UCG). Rozkazy uniwersalne są kierowane do wszystkich urządzeń jednocześnie, a ich oddziaływanie jest uwarunkowane uprzednim zaadresowaniem odbiorców Rozkaz Nazwa rozszerzona Rozkazy jednoliniowe Działanie ATN attention Tryb pracy magistrali. ATN-L - przesyłanie instrukcji; ATN-H - przesyłanie danych. IFC interface clear Zerowanie interfejsu. Wszystkie interfejsy przechodzą w stan początkowy REN remote enable Wszystkie urządzenia są przełączane na pracę programowaną z magistrali IDY identify Rozkaz przesyłany po linii EOI; wraz z ATN-L powoduje przeprowadzenie kontroli równoległej. 27 października 2014 Wojciech Kucewicz 35

Komunikaty zdalne Rozkazy Uniwersalne (UC) Do grupy UC należą zarówno komunikaty jednoliniowe przesyłane po przypisanych im liniach sterowania interfejsów, jak i komunikaty wieloliniowe zawierające kod grupowy (UCG). Rozkazy uniwersalne są kierowane do wszystkich urządzeń jednocześnie, a ich oddziaływanie jest uwarunkowane uprzednim zaadresowaniem odbiorców Rozkaz Nazwa rozszerzona Działanie Rozkazy wieloliniowe DCL device clear Zerowanie urządzenia. Wprowadzenie wszystkich urządzeń (nie interfejsów)w stan początkowy (oczekiwania). Działa podobnie jak rozkaz SDC (select device clear) LLO local lock-out Blokada sterowania lokalnego. Rozkaz uniemożliwia przełączanie na sterowanie ręczne(za pomocą przełączników na płycie czołowej) podczas automatycznej pracy systemu (REN-L) SPE serial poll enable Możliwa kontrola szeregowa. Pozwala przeprowadzić kontrolę szeregową SPD serial poll disable Niemożliwa kontrola szeregowa. Pozwala zakończyć kontrolę szeregową PPU parallel poll unconfigure Zakończenie kontroli równoległej. Powrót do stanu początkowego po kontroli równoległej. Działa przeciwnie niż PPC (parallel poll configure) 27 października 2014 Wojciech Kucewicz 36

Komunikaty zdalne Rozkazy Adresowane (AC) Są to komunikaty wieloliniowe zawierające kod grupowy (ACG). Rozkaz Nazwa rozszerzona Rozkazy wieloliniowe SDC selected device clear Działanie Zerowanie wybranego urządzenia. Wprowadzenie urządzenia w stan początkowy (oczekiwania). Działa podobnie jak rozkaz DCL (device clear) GTL go to local Przejdź na sterowanie lokalne. Rozkaz umożliwia sterowanie ręczne GET group execute trigger Wyzwolenie grupy urządzeń. Rozkaz inicjuje działanie jednego lub kilku urządzeń zaadresowanych uprzednio do odbioru TCT take control Przejmij sterowanie. Aktualnie pracujący kontroler może przekazać sterowanie innemu. Urządzenie przejmujące kontrolę musi być uprzednio zaadresowane do nadawania PPC parallel poll configure Zaadresowanie do kontroli równoległej. Rozkaz ten wspólnie z komunikatem wtórnym PPE(parallel poll enable) przesyłanym w następnej kolejności, umożliwia przyporządkowanie urządzeniu numeru linii za pomocą której przesyłana będzie odpowiedź 27 października 2014 Wojciech Kucewicz 37

Komunikaty zdalne Adresy (AD) Są to komunikaty (wieloliniowe) służące do samoidentyfikacji urządzeń dołączonych do magistrali GPIB, polegające na sprawdzeniu w bloku dekoderów, czy podawany przez kontroler komunikat adresowy zgadza się z kombinacją binarną określającą adres danego interfejsu i wprowadzenia, w przypadku zgodności, funkcji T lub L w stan zaadresowania do nadawania lub odbierania danych. 27 października 2014 Wojciech Kucewicz 38

Komunikaty zdalne Komunikaty synchronizacji (HS) Stosuje się trzy komunikaty synchronizacji (jednoliniowe - DAV, NRFD, NDAC) niezbędne do prawidłowego przebiegu transmisji bajtów po liniach DIO 27 października 2014 Wojciech Kucewicz 39

Komunikaty zdalne Komunikaty wtórne (SE) Grupa komunikatów wieloliniowych charakteryzująca się kodem grupowym SCG. Należą tu komunikaty adresowe (MSA, OSA) oraz komunikaty służące kontroli równoległej (PPE, PPD) 27 października 2014 Wojciech Kucewicz 40

Komunikaty zdalne Komunikaty zależne od urządzenia (DD) Grupa komunikatów wieloliniowych zależnych od urządzenia 27 października 2014 Wojciech Kucewicz 41

Komunikaty zdalne Komunikaty stanu (ST) Komunikaty przenoszące informacje o stanie urządzenia do kontrolera systemu. Do grupy należą 2 komunikaty jednoliniowe (SQR, END) i 3 komunikaty wieloliniowe 27 października 2014 Wojciech Kucewicz 42

Komunikaty lokalne Komunikaty lokalne są przesyłane między interfejsem a urządzeniem właściwym i na odwrót, a więc wewnątrz urządzeń dołączonych do magistrali Komunikaty lokalne przesyłane z urządzenia do interfejsu Nazwa Nazwa rozszerzona Funkcja Funkcja interfejsowa, w której komunikat jest wykorzystywany clr Clear device Zerowanie przyrządu DC (dev. Clear) dcd Don't change data Nie zmieniać danych SH (source handshake) dvd Data valid Dane ważne dla przyrządu AH (acceptor handshake lsb Last byte Ostatni bajt L (listener), LE (l. extended) srq Service requested Żądana obsługa C (controller) tac Talker active Nadajnik aktywny T (talker), TE (t. extended) trg Trigger device Wyzwolenie przyrządu DT (device trigger) wnc Wait for new cycle Czekaj na nowy cykl SH 27 października 2014 Wojciech Kucewicz 43

Komunikaty lokalne Komunikaty lokalne przesyłane z interfejsu do urządzenia Nazwa Nazwa rozszerzona Funkcja Funkcja interfejsowa, w której komunikat jest wykorzystywany end end of byte string koniec łańcucha T, TE gts go to standby czekaj bezczynnie C ist individual status stan indywidualny PP (parallel poll) lon listen only tylko odbieranie L, LE lpe local poll enable możliwa lokalna kontrola PP ltn listen odbiór L, LE lun local unlisten lokalnie nie odbierać L, LE nba new byte avaible dostępny nowy bajt SH pon power on włączenie zasilania wszystkie rdy ready for next message gotowy do następnego komunikatu AH rpp request parallel poll żądanie kontroli równoległej C rsc request system control żądanie aktywności kontrolera systemu rsv request service obsługa żądania SR (service request) rtl return to local wróć do sterowania ręcznego RL (remote/local) sic send interface clear wyślij zerowanie interfejsów C sre send remote enable wyślij zdalne możliwe C tca take control ansynchronously przejmij sterowanie asynchroniczne tcs take control synchronously przejmij sterowanie synchroniczne C, AH ton talk only tylko nadawanie T, TE 27 października 2014 Wojciech Kucewicz 44 C C

Komunikaty jednoliniowe Komunikat jednoliniowy Stan linii Skrót Nazwa Grupa DAV NRFD NDAC ATN EOI SQR IFC REN ATN Attention UC x x x L x x x x DAC Data accepted HS x x H x x x x x DAV Data valid HS L x x x x x x x END End ST x x x H L x x x IDY Identify UC x x x L L x x x IFC REN Interface clear Remote enable UC x x x x x x L x UC x x x x x x x L RFD Ready for data HS x H x x x x x x x- stan nieistotny 27 października 2014 Wojciech Kucewicz 45

Komunikaty wieloliniowe Nazwa grupy komunikatów Stan linii DIO DIO8 DIO8 DIO8 DIO8 DIO8 DIO8 DIO8 DIO8 Adresy do odbioru x 0 1 L L L L L Adresy do nadawania x 1 0 T T T T T Rozkazy uniwersalne x 0 0 1 U U U U Rozkazy adresowane x 0 0 0 A A A A Komunikaty wtórne x 1 1 S S S S S x- stan nieistotny 27 października 2014 Wojciech Kucewicz 46

GPIB Wymiana komunikatów między urządzeniami w systemie interfejsu GPIB rozpoczyna się od wybrania przez kontroler jednego nadawcy komunikatu (przez adresowanie do nadawania) i wyznaczenia odbiorców lub jednego odbiorcy (przez adresowanie do odbioru). Następnie wybrany nadawca przekazuje komunikaty na szynę danych, a zaadresowani (wyznaczeni) odbiorcy odczytują je bajt po bajcie, potwierdzając odebranie każdego bajtu. Szybkość transmisji danych jest dostosowana do możliwości odbierania najwolniejszego odbiorcy. 27 października 2014 Wojciech Kucewicz GPIB 47

Controler -Talker - Listener GPIB communication is similar to classroom interaction In a classroom, the students express themselves only when the teacher adresses them. This system creates order in the classroom so that everyone can be heard. Listen to me Listeners Controller On the GPIB, the Controller controls bus activity and is the only device that decides when other devices on the bus can talk or listen 27 października 2014 Wojciech Kucewicz 48

Controler -Talker - Listener GPIB communication is similar to classroom interaction To speak to a student, the teacher first addresses that student by his name. Yes Who would Kowalski Sierocki Nowak like to talk? No Yes Talker Listener Controller On the GPIB, the Controller controls bus activity and is the only device that decides when other devices on the bus can talk or listen 27 października 2014 Wojciech Kucewicz 49

Adressing Protocol GPIB communication is similar to classroom interaction To speak to a student, the teacher first addresses that student by his name. Give me your money Kowalski Nowak listen talk Talker Controller Before any data passed between devices, the Controller first determinated who would talk and who would listen. On the GPIB each device (including controller) has a unique GPIB address. The primary GPIB address is in the range of decimal 0 to 30. 27 października 2014 Wojciech Kucewicz 50

Adressing Protocol Identyfikatorem urządzenia na magistrali GPIB jest numer selekcyjny urządzenia, który może przyjmować wartość z zakresu od 0 do 30. Każde urządzenie dołączone do magistrali musi mieć przypisany sobie unikalny numer, który pozwala jednoznacznie wyróżnić je spośród innych. Urządzenia są wyposażone w środki pozwalające przypisać im żądane numery. Często jest to nastawnik przełącznikowy pozwalający ustawić binarnie żądaną wartość numeru urządzenia. Większość współczesnych urządzeń pozwala ustawić numer urządzenia na magistrali za pomocą elementów nastawczych płyty czołowej po wybraniu z menu obsługi urządzenia opcji konfiguracji interfejsu urządzenia. 27 października 2014 Wojciech Kucewicz 51

Adressing Protocol The Controller sends a single byte of information for a Talker or Listener address command message. Address command messages have the following format: DIO bit 7 6 5 4 3 2 1 0 Data 0 TA LA GPIB Primary Address Bits 0 to 4 contain the binary GPIB primary address of the device in communication, and either bit 5 (Listen Address LA) or bit 6 (Talker Address TA) will be set if the device is a Talker or a Listener. Bit 7 is never used and is consider a don t care bit (for simplicity, assume bit 7 is O. 27 października 2014 Wojciech Kucewicz 52

Adressing Protocol Controller at primary GPIB address 0 talks to a device at primary GPIB address 1. To establish the communication link, the Controller must send its GPIB talk address and the device listen address over the GPIB DIO bit 7 6 5 4 3 2 1 0 Talker 0 1 0 0 0 0 0 0 Listener 0 0 1 0 0 0 0 1 Talk Address corresponds to hexadecimal number 40 what in Multiline Interface Command Messages refers to MTA0 My Talk Address 0. Listener Address corresponds to hexadecimal number 21 what in Multiline Interface Command Messages refers to MLA1 My Listen Address 1 27 października 2014 Wojciech Kucewicz 53

Primary Address Controller at primary GPIB address 0 talks to a device at primary GPIB address 1. To establish the communication link, the Controller must send its GPIB talk address and the device listen address over the GPIB DIO bit 7 6 5 4 3 2 1 0 Untalk UNT 0 1 0 1 1 1 1 1 Unlisten UNL 0 0 1 1 1 1 1 1 MTA My Talk Address from Hex 40 (dec.64) till Hex 5E (dec.94) UNT Untalk - 5F (dec.95) is used to clear the bus of Talkers before assigning new Talkers, but addressing one talker automatically unaddresses the previous one. MLA My Listen Address from 20 (dec. 32) till 3E (dec.62) UNL Unlisten - 3F (dec.63) - is used to clear the bus of Listeners before assigning new Listeners 27 października 2014 Wojciech Kucewicz 54

Secondary Address A device can also have a secondary address. A secondary address is in the range Hex 60 through 7E. You address device with a secondary address by sending the primary address and then the corresponding secondary address. With secondary addressing, you can assign up to 961 talk and listen addresses. Most instruments do not use secondary addressing. DIO bit 7 6 5 4 3 2 1 0 Secondary Address 0 1 1 0 0 0 0 0 DEL 0 1 1 1 1 1 1 1 27 października 2014 Wojciech Kucewicz 55

Transmisja na magistrali GPIB Data Management Synch 7 6 5 4 3 2 1 0 E A S R I N R N D 0 0 1 1 1 1 1 1 1 0 0 1 0 0 1 1 Koniec nadawania danych (EOI, ATN) 0 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 Komunikat (ATN), 0 0 1 1 1 1 1 1 0 1 0 1 0 0 1 1 Przerwanie odbioru (UNL) 0 0 1 0 0 0 0 0 0 1 0 1 0 0 1 1 Adres odbiorcy 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 1 Adres nadawcy 1 0 0 1 1 1 1 1 1 0 0 0 1 0 0 1 0 Dane (ATN) 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 1 Dane (ATN) 0 0 0 0 1 0 1 0 0 0 0 1 0 0 1 1 End of String (0A), Koniec nadawania danych 0 1 0 0 0 1 1 0 1 0 0 1 0 0 1 1 Koniec nadawania danych (EOI, ATN) D 27 października 2014 Wojciech Kucewicz 57

Procedura współpracy urządzeń (handshake-u) 3,4 Nadawca umieszcza dane na magistrali danych 27 października 2014 Wojciech Kucewicz 58

Procedura współpracy urządzeń (handshake-u) 5 Odbiorcy ustawiają wysoki poziom na linii NRFD (ready) 27 października 2014 Wojciech Kucewicz 59

Procedura współpracy urządzeń (handshake-u) 6 Nadawca ustawia w odpowiedzi niski poziom na linii DAV 27 października 2014 Wojciech Kucewicz 60

Procedura współpracy urządzeń (handshake-u) 7 Odbiorcy ustawiają niski poziom na linii NRFD (working) 8 Odbiorcy ustawiają wysoki poziom na linii NDAC (finished) 27 października 2014 Wojciech Kucewicz 61

Procedura współpracy urządzeń (handshake-u) 10 Nadawca w odpowiedzi ustala wysoki poziom na linii DAV (data not avaible) 27 października 2014 Wojciech Kucewicz 62

Procedura współpracy urządzeń (handshake-u) 13 Odbiorcy resetują linię NDAC 11 Nadawca usuwa dane z magistrali danych 27 października 2014 Wojciech Kucewicz 63

Programowanie odpowiedzi Kontrola równoległa urządzeń dołączonych do magistrali Obsługa urządzeń Start DIO1=1 Tak Podprogram A IFC, REN UNL, MLA (urządzenie A) PPC, PPE 0 DIO2=1 DIO3=1 Tak Tak Podprogram B Podprogram C UNL, MLA (urządzenie B) PPC, PPE 1 PPU Program Program Kontrola równoległa IDY=1 odbiór PPR, IDY=0 Umożliwia jednoczesne sprawdzenie do 8 urządzeń 27 października 2014 Wojciech Kucewicz 64

Sekwencja kontroli szeregowej Kontrola szeregowa urządzeń dołączonych do magistrali Obsługa urządzeń SRQ=1 Tak UNL, MLA (kontroler), SPE MTA (urządzenie A) STB Odbiór bajtu stanu Tak DIO7=1 RQS A =1 DIO7=1 RQS B =0 SPD RQS A =1 Tak RQS B =1 Tak Podprogram A RQS A =0 MTA (urządzenie B) SRQ=1 RQS B =1 Tak Podprogram B STB Odbiór bajtu stanu UNL unlisten MLA, MTA My Listen (Talking) Address SPE, SPD Serial Poll Enable (Disable) STB Status Byte 27 października 2014 Wojciech Kucewicz 65

Status byte STB 7 6 5 4 3 2 1 0 Command error RQS Out of Range Infinite Value Data Ready Control Requested Trigger Error 0 1 0 0 1 0 0 0 This instrument asserted the SRQ Instrument has data ready Data Unavailable 27 października 2014 Wojciech Kucewicz 66

Protokół High-Speed Podstawowe czynniki pozwalające zwiększyć wydajność transferu na magistrali GPIB to : Redukcja cykli współpracy, czyli rezygnacja z potwierdzeń ze strony urządzenia odbierającego (współpraca bez potwierdzeń). Redukcja opóźnienia T1 związanego z ustaleniem się stanów na liniach DIO oraz czasu trwania sygnału DAV. 27 października 2014 Wojciech Kucewicz 67

Protokół High-Speed HS488 Jednocześnie przyjęto dodatkowe założenia : Szybki protokół dotyczy tylko transferu danych urządzeniowych. Transfer rozkazów interfejsowych (ATN=1) odbywa się zawsze metodą tradycyjną. Procedury rozkazowe przesyłają kilkubajtowe komunikaty i nie ma potrzeby stosowania w tej sytuacji szybkiego protokółu transferu. Nowy protokół transmisji zapewni kompatybilność wsteczną tak, aby w systemie mogły współpracować urządzenia zbudowane zgodnie z specyfikacją IEEE488.1 oraz urządzenia stosujące HS488. W konsekwencji transfer danych w systemie może odbywać się z zastosowaniem trójprzewodowego cyklu współpracy lub metodą bez potwierdzeń. Wybór metody powinien być całkowicie przezroczysty dla aplikacji, czyli realizowany automatycznie na drodze sprzętowej przez współpracujące urządzenia. Protokół zapewnia istotny wzrost szybkości transferu bez wprowadzenia dodatkowych narzutów czasowych związanych z przygotowaniem transferu. Protokół jest przezroczysty tak, że istniejące aplikacje nie wymagają modyfikacji. 27 października 2014 Wojciech Kucewicz 68

Protokół High-Speed HS488 27 października 2014 Wojciech Kucewicz 69

Protokół High-Speed HS488 27 października 2014 Wojciech Kucewicz 70

Protokół High-Speed HS488 Długość okablowania T13 T14 do 1 m 80 ns 33 ns 1 do 2 m 120 ns 50 ns 2 do 3 m 151 ns 69 ns 3 do 5 m 211 ns 105 ns 5 do 10 m 294 ns 216 ns 10 do 15 m 344 ns 336 ns 27 października 2014 Wojciech Kucewicz 71

Protokół High-Speed HS488 Długość okablowania T13 T14 do 1 m 80 ns 33 ns 1 do 2 m 120 ns 50 ns 2 do 3 m 151 ns 69 ns 3 do 5 m 211 ns 105 ns 5 do 10 m 294 ns 216 ns 10 do 15 m 344 ns 336 ns 27 października 2014 Wojciech Kucewicz 72

SCPI - Standard Commands for Programmable Instruments Wojciech Mielczarek - Urządzenia pomiarowe i systemy kompatybilne ze standardem SCPI On April 23, 1990, a group of instrument manufacturers announced the SCPI specification, which defines a common command set for programming instruments. SCPI is a complete, yet extendable, standard that unifies the software programming commands for instruments. SCPI has its own set of required common commands in addition to the mandatory IEEE 488.2 common commands and queries. Although IEEE 488.2 is used as its basis, SCPI defines programming commands that you can use with any type of hardware or communication link. SCPI specifies standard rules for abbreviating command keywords and uses the IEEE 488.2 message exchange protocol rules to format commands and parameters. You may use command keywords in their long form (MEASure) or their short form shown in capital letters (MEAS). 27 października 2014 Wojciech Kucewicz 73

SCPI Device Model MEASUREMENT FUNCTION Signal Routing INPut SENSe CALCulate FORMat TRIGer MEMory DISPlay Signal Routing OUTput SOURce CALCulate FORMat SIGNAL GENERATION 27 października 2014 Wojciech Kucewicz 74

SCPI Device Model INPut - Określa własności portu wejściowego przetwornika. Realizuje funkcje kondycjonowania sygnału przed jego przetworzeniem w bloku MEASUREMENT FUNCTION INPut SENSe CALCulate SENSe (tłumienie, wzmacnianie, filtracja itp.). Jest też odpowiedzialny za impedancję wejściową, rodzaj sprzężenia (AC, DC) oraz konfigurację wejścia (symetryczne lub niesymetryczne, pływające lub nie). Programowanie tego podsystemu pozwala wybrać funkcję pomiarową i ustalić własności przetwornika (zakres, rozdzielczość). Podsystem oferuje akwizycję serii danych w dziedzinie czasu lub częstotliwości a także zaawansowane techniki pomiaru kształtu fali, parametrów modulacji sygnału itp. CALCulate - Podsystem jest odpowiedzialny za wykonywanie operacji obliczeniowych na zebranych przez podsystem SENse danych. W urządzeniach stymulujących jest używany w odwrotnej kolejności. Przed wygenerowaniem sygnału przez SOURce podsystem CALCulate może być użyty do zmiany jednostek, wykonania odwrotnej transformaty Fouriera itp. Dostarcza funkcji obliczeń statystycznych, różniczkowania, całkowania, przetwarzania wektorów i danych zespolonych, transformacji w domenie czasowej i częstotliwościowej, itd. Zwykle żądane obliczenia są uruchamiane automatycznie, gdy nowe dane zostaną zebrane. 27 października 2014 Wojciech Kucewicz 75

SCPI Device Model SIGNAL GENERATION CALCulate SOURce OUTput SOURce - Dostarcza możliwości funkcjonalne związane z przetwarzaniem DA oraz generacji sygnałów analogowych na podstawie dostarczonych danych. Podsystem grupuje polecenia służące do generacji różnorodnych sygnałów. Najczęściej kryje się pod tym określeniem stały lub zmienny sygnał napięciowy, prądowy lub mocy. Mogą to być jednak także inne wielkości jak np. rezystancja lub temperatura. Specjalne polecenia służą do modyfikacji amplitudy i częstotliwości w funkcji czasu. Podsystem SOURce dostarcza też możliwości sterowania modulacją wytwarzanego sygnału. Dostępne są różne rodzaje modulacji (amplitudowa, częstotliwościowa, fazowa itd.). OUTPut - Podstawowym celem tego podsystemu jest dostarczenie poleceń sterujących kondycjonowaniem sygnału dostarczonego do portu wyjściowego urządzenia. Polecenia dotyczą tłumienia, filtracji sygnału, sposobu sprzężenia (AC, DC), offsetu oraz dołączenia lub odłączenia sygnału. Dostępne są też polecenia dotyczące sposobu zabezpieczenia wyjścia. 27 października 2014 Wojciech Kucewicz 76

SCPI Device Model DISPlay FORMat MEMory DISPlay - Dostarcza możliwości funkcjonalne związane z wyborem i prezentacją informacji na urządzeniu wyświetlającym przyrządu. Urządzenia te mogą mieć różną postać, od prostego wyświetlacza do złożonego terminala. Prezentowane informacje obejmują dane pomiarowe, status przyrządu, interakcje użytkownika a także informacje z kontrolera systemu. Gdy okno prezentacji danych jest używane przez kontroler, działa jako wizualny terminal dostępny w przyrządzie. FORMat mogą się znaleźć potrzebne do tego celu polecenia sterujące, np. określające kolejność wysyłania bajtów bloku reprezentującego binarne dane całkowite lub rzeczywiste. MEMory - Podsystem dostarcza poleceń dotyczących operacji w obszarze wewnętrznej pamięci przyrządu, w której mogą być umieszczane makropolecenia, tablice, pliki binarne itp. Typowe polecenia tego podsystemu dotyczą kopiowania, zerowania i usuwania oraz zapytań o dane, wolną przestrzeń itp. TRIGer TRIGer - Podsystem zajmuje się synchronizacją wszystkich rodzajów akcji przyrządu z wewnętrznymi lub zewnętrznymi zdarzeniami. Podsystem ten implementuje wielowarstwowy model systemu wyzwalania o bardzo elastycznych możliwościach. 27 października 2014 Wojciech Kucewicz 77

Budowa drzewa poleceń SCPI...... SENSe TRIGger SOURce.................. VOLTage CURRent SCPI grupuje polecenia w 28 podstawowych podsystemach 27 października 2014 Wojciech Kucewicz 78

Budowa drzewa poleceń SCPI... MEASure... VOLTage...... CURRent...... RESistance... RANge... RESolutin... RANge... RESolutin UPPer AUTO AUTO UPPer AUTO AUTO W podsystemach następuje kolejne grupowanie zasobów funkcjonalnych oraz związanych z nimi poleceń. 27 października 2014 Wojciech Kucewicz 79

Budowa drzewa poleceń SCPI Example SCPI Command The following command programs a digital multimeter (DMM) to configure itself to make an AC voltage measurement on a signal of 20 V with a 0.001 V resolution. : MEASure:VOLTage:AC? 20, 0.001 The leading colon indicates a new command is coming The keywords MEASure:VOLTage:AC instructs the DMM to take an AC voltage measurement The? instructs the DMM to return its measurement to the computer/controller The 20, 0.001 specifies the range (20 V) and resolution (.001 V) of the measurement 27 października 2014 Wojciech Kucewicz 80

LabView GPIB software 27 października 2014 Wojciech Kucewicz 81

Węzły sterujące GPIB w LabVIEW 27 października 2014 Wojciech Kucewicz 82

GPIB w LabVIEW 27 października 2014 Wojciech Kucewicz 83

GPIB Send-Receive 27 października 2014 Wojciech Kucewicz 84

Search for Device Address 27 października 2014 Wojciech Kucewicz 85

Data Taking 27 października 2014 Wojciech Kucewicz 86