ATE 02 - 1 / 64 Lezione 3 i sistemi automatici di misurazione gli ATE ATE 02 - 2 / 64 nella parte 1 ... I sistemi modulari su bus standard • IEEE Std 488 - GPIB - HPIB (1975) • IEEE Std 1155 - VXI (1988) • PXI (1997) • LXI (2004) ATE 02 - 3 / 64 nella parte 1 ... I sistemi automatici di misurazione • ATE e “in-circuit test” ( ICT ) • Struttura dell’ATE • Switch matrix • Fixture e “letto di aghi” • Guarding ATE 02 - 4 / 64 parte 2 sistemi automatici di misurazione IEEE 488 ATE 02 - 5 / 64 Strumenti IEEE Std 488 ATE 02 - 6 / 64 Interfaccia / Controller (modello simile ISO-OSI) Livello “RETE” Livello “TEMPORALE” Livello “FISICO” al BUS CABLE IEEE 488 Livello “TRASPORTO” al bus interno del PC ATE 02 - 7 / 64 Livello fisico - GPIB Cable 1 m : 80 € ; 4 m : 100 € ( ottobre 2010 ) ATE 02 - 8 / 64 Interfaccia PC - mondo IEEE 488 ATE 02 - 9 / 64 Livello fisico - IEEE Std 488 • • • • Bus di comunicazione a 8 bit – “wired OR” - logica “negata” 1 Mbyte/s max 20 m di sviluppo complessivo del “bus cable” 15 periferiche max (compreso il “controller”) ATE 02 - 10 / 64 Interfaccia periferiche - mondo IEEE 488 PC periferica periferica periferica ATE 02 - 11 / 64 Livello fisico - IEEE Std 488 • Bus di comunicazione a 8 bit – “wired OR” - logica “negata” ATE 02 - 12 / 64 Interfaccia PC e strumenti - “mondo” IEEE 488 ATE 02 - 13 / 64 Interfaccia / Controller (modello simile ISO-OSI) Livello “RETE” Livello “TEMPORALE” Livello “FISICO” al BUS CABLE IEEE 488 Livello “TRASPORTO” al bus interno del PC ATE 02 - 14 / 64 Interfaccia PC e strumenti - “mondo” IEEE 488 ATE 02 - 15 / 64 NI PCI-GPIB : Windows 2000/XP/Me/98 Linux 585 euro ( ottobre 2010 ) ATE 02 - 16 / 64 NI GPIB-ENET/100: Windows 7 – Vista - XP 1211 euro ( ottobre 2010 ) ATE 02 - 17 / 64 Interfaccia PC e strumenti - “mondo” IEEE 488 30 euro ( ottobre 2010 ) ATE 02 - 18 / 64 Livello temporale - “ Handshake ” ATE 02 - 19 / 64 Livello temporale - “ Handshake ” ATE 02 - 20 / 64 Livello rete - “ Addressing ” ATN = 1 UNT 0101 1111 UNL 0011 1111 TAD #02 0100 0010 LAD #01 0010 0001 ATN = 0 ATE 02 - 21 / 64 Livello rete - “ Comunicazione ” ATN = 1 UNT 0101 1111 UNL 0011 1111 TAD #02 0100 0010 LAD #01 0010 0001 ATN = 0 1° byte 0101 0111 2° byte 0100 1100 ... xxxx xxxx ATE 02 - 22 / 64 Livello rete - “ Termine della comunicazione” ATN = 1 UNT 0101 1111 UNL 0011 1111 TAD #02 0100 0010 LAD #01 0010 0001 ATN = 0 1° byte 0101 0111 2° byte 0100 1100 ... xxxx xxxx EOI = 1 ATN = 1 ATE 02 - 23 / 64 Livello rete - “ Terminatori ” ATN = 1 UNT 0101 1111 UNL 0011 1111 TAD #02 0100 0010 LAD #03 0010 0011 ATN = 0 1° byte 0101 0111 2° byte 0100 1100 3° byte 0100 0110 ... xxxx xxxx < CR > 0000 1101 < LF > 0000 1010 ATE 02 - 24 / 64 IEEE 488 : contenuto della comunicazione ATN = 1 UNT 0101 1111 UNL 0011 1111 TAD #02 0100 0010 LAD #01 0010 0001 ATN = 0 1° byte 0101 0111 2° byte 0100 1100 ... xxxx xxxx EOI = 1 ATN = 1 ATE 02 - 26 / 64 Teletype e codice ASCII ATE 02 - 27 / 64 Risposta del multimetro Fluke 45 ATE 02 - 28 / 64 Risposta degli oscilloscopi ... ATE 02 - 29 / 64 Livello trasporto Livello “RETE” Livello “TEMPORALE” Livello “FISICO” al BUS CABLE IEEE 488 Livello “TRASPORTO” al bus interno del PC ATE 02 - 30 / 64 Livello trasporto ATE 02 - 31 / 64 Programmazione delle periferiche: “device dependent commands” ATE 02 - 32 / 64 Device Dependent Commands ATE 02 - 33 / 64 Device Dependent Commands ATE 02 - 34 / 64 Programmazione delle periferiche “SCPI - Standard Commands for Programmable Instruments” ATE 02 - 35 / 64 Programmazione del Controller ATE 02 - 36 / 64 Programmazione del controller • Linguaggi dedicati (‘80) • Linguaggi grafici – NI LabVIEW – HP VEE • Librerie per linguaggi di programmazione ad oggetti – NI Measurement Studio for Visual Basic, Visual C#, Visual C++, .NET • Ambienti di sviluppo e generazione per linguaggi di programmazione imperativi – NI LabWindows/CVI for ANSI C ATE 02 - 37 / 64 HP 85 e RM-BASIC ATE 02 - 38 / 64 HP 85 e RM-BASIC 311 ... 313 output 709; “*RST; OHMS; RANGE1; …;*TRG; VAL1?” 315 enter 709; lettura$ 317 ... output 709; “*RST; OHMS; RANGE1; …;*TRG; VAL1?” enter 709; lettura$ print lettura$