Podręcznik
2. Interfejs równoległy IEC-625
2.8. Dokument IEC-625.2 (IEEE 488.2)
Podczas eksploatacji interfejsu IEC-625 zauważone zostały problemy związane między innymi z brakiem kompatybilności w zakresie implementacji przyrządów pomiarowych pochodzących od różnych producentów.
Pociąga to za sobą wady takie jak: brak przenośności oprogramowania.
Przyczyny:
- brak pewnych funkcji w konkretnych zestawach,
- brak standaryzacji: kody, formaty.
Udoskonalony standard IEC-625 określony został mianem IEC-625.2 z dopiskiem „Kody, formaty, protokoły, polecenia”. Standard IEC-625.2 –zachowuje kompatybilność z IEC-625 - tzn. kontroler obsługuje urządzenia pracujące w standardzie poprzednim. W normie tego standardu zdefiniowano:
- minimalny, obowiązkowy zestaw funkcji interfejsowych,
- dopuszczalne kody i formaty danych,
- sposoby interpretacji ciągów poleceń do urządzeń,
- hierarchiczny model statusu urządzeń.
Formalnie, norma IEC-625.2 składa się z następujących części:
- Kontroler: wymagania ogólne, standardowe polecenia i procedury.
- Urządzenie: zasady przepływu informacji struktury danych, komunikacja.
- Składania poleceń i odpowiedzi.
- Standardowe polecenia: obowiązkowe i opcjonalne.
- Struktury danych do przechowywania i przekazywania informacji.
Do dodatkowych zadań kontrolera systemu należą:
- Wykrywanie i zapamiętanie błędów oraz wysłanie bajtu informacyjnego (gdy inne przyrządy w stanie oczekiwania),
- Monitorowanie magistrali (bufor) dla celów diagnostycznych,
- Sygnalizacja błędu przeterminowania (timeout),
- Zróżnicowanie długości przeterminowania dla różnych przyrządów (dopasowanie do ich szybkości działania).
Wykaz sekwencji sterujących
Wykaz wszystkich sekwencji sterujących zamieszczonych w standardzie IEC-625.2, pokazano z podziałem na obligatoryjne i opcjonalne.
Obligatoryjne:
SEND COMMAND – send ATN – true, command
SEND SETUP - set address to send data
SEND DATA BAYTES – send ATN –false, data
SEND - send a program message
RECEIVE SETUP - set adress to receive data
RECEIVE RESPONSE MESSAGE – receive atn – false, data
RECEIVE - receive a response message
SEND IFC - pulse IFC line
DEVICE CLEAR - place device in DCAS
ENABLE LOCAL CONTROLOS – place devices in local states
ENABLE REMOTE – place devices in remote states
SET RWLS - place devices in remote with local lockout state
SEND LLO – place devices in local lockout state
READ STATUS BYTE – read IEC 625.1 status byte
TRIGGER – send group execution trigger (GET)
Opcjonalne:
PASS CONTROL – przekaż kontrolę innemu kontrolerowi
PERFORM PARALLEL POLL – przeprowadź kontrolę równoległą
PARALLEL POLL CONFIGURE – konfiguracja do kontroli równoległej
PARALLEL POLL UNCONFIG – zakończenie kontroli równoległej
Protokoły kontrolera IEC 625.2
Wyżej w hierarchii leżą protokoły kontrolera IEC-625.2. Ich wykaz zawarto w tabeli 2.8.
Tabela 2.8 Protokoły kontrolera IEC 625.2
RESET – Reset System |
inicjalizacja, stan początkowy |
ALLSPOLL – Serial Poll All Devices |
przepytanie urządzeń i zwrot bajtów statusu |
PASSCTL – Pass Control |
przekazanie kontroli innemu kontrolerowi |
REQUESTCTL – Request Control |
żądanie kontroli |
TESTSYS – Self – Test System |
zlecenie autotestu każdemu urządzeniu |
FINDLSTN – Find Liteners |
lista adresów zlokalizowanych urządzeń |
SETADD – Set Address |
dynamiczne przepisywanie adresów zlokalizowanym urządzeniom |
FINDRQS – Find Device Requesting Serwice |
Poszukuj urządzenia z SRQ zgodnie z listą priorytetową odpytywania urządzeń |
Rozkazy uniwersalne IEC 625.2
Oprócz sekwencji sterujących i protokołów zdefiniowane zostały tzw. rozkazy uniwersalne, służące do obsługi systemowej (np. statusu). Rozkazy te stanowiły bazę do opracowania języka SCPI (zostały do niego włączone).
Wykaz Rozkazów uniwersalnych zawiera tabela 2.9.
Tabela 2.9 Wykaz rozkazów uniwersalnych standardu IEC-625.2
* CLS |
Clear Status - zeruje rejestry zdarzeń i kolejkę wejściową |
* ESE |
Event Status Enable - ustawia zawartość maski rejestru zdarzeń |
* ESE ? |
żąda wysłania przez urządzenie aktualnej zawartości rejestru ESE w postaci dziesiętnej |
*IDN ? |
żądanie identyfikacji urządzenia: (symbol wytwórcy, model, numer seryjny, wersja oprogramowania < 72 znaki) |
*OPC |
Operation Complete - ustawienie „ 1” na odpowiednich pozycjach ESR (wszystkie operacje wykonane) ® SRQ |
*OPC ? |
umieszczenie w kolejce wyjściowej „1” jeżeli wszystkie operacje wykonane |
*RST |
Restart - wprowadza funkcje urządzenia w stan początkowy |
*SRE |
Service Request Enable - ustawia zawartość maski rejestru |
*SRE ? |
Żądanie umieszczenia w kolejce wyjściowej aktualnej zawartości SRE |
*STB ? |
Żądanie mieszczenia w kolejce wyjściowej aktualnej zawartości bajtu statusu STB |
*TST ? |
wykonanie autotestu funkcji urządzenia i umieszczenie w kolejności wyjściowej wyniku, (null)- gdy wynik testu pozytywny |
*WAI |
wymusza sekwencyjność wykonywanych poleceń (nie wykonuj żadnego rozkazu dopóki NOP-flag = „1” |
*TRG |
odpowiednik GET z 625.1 |
Norma IEC-625.2 w zakresie urządzeń definiuje:
- warunki określone w normie 625.1,
- obowiązkowe funkcje: SH , AH , T , L , SR , DC,
- struktury danych związane z komunikacją,
- IB (INPUT BUFFER) - bufor wejściowy,
- OQ (OUTPUT QUE) - kolejka wyjściowa.
Rys. 2.12 Schemat obrazujący działanie systemu statusu IEC-625.2