UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

8

Click here to load reader

Transcript of UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

Page 1: UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

Gustavo Godoy de Lima

Barramento de Instrumentação IEEE 488 (GPIB)Departamento de Engenharia Elétrica - Universidade Federal do Espírito Santo

Vitória - ES – [email protected]

Resumo – Este artigo apresenta uma visão geral sobre o barramento de instrumentação GPIB tentando mostrar seu funcionamento tanto no nível de software como de hardware.

I – INTRODUÇÃO

O padrão IEEE 488.1, também conhecido por GPIB (General Purpose Interface Bus), descreve um padrão de interface de comunicação entre equipamentos e controladores de diferentes fabricantes. O mesmo contém informação acerca de especificações elétricas, mecânicas e de funcionamento da interface.

1.1 – HISTÓRICO

O barramento GPIB foi inventado pela Hewlett-Packard Corporation em 1974, com o objetivo de simplificar as comunicações entre equipamentos de medida e computadores. Nessa altura, os computadores não possuíam portas padrões de ligação. Por outro lado, apenas um número muito restrito de equipamentos de medida apresentava conectores com linhas de saída BCD paralelas, para ligação a impressoras ou plotters.

O controle remoto dos equipamentos estava limitado a um pequeno número de linhas de entrada num conector, existente na retaguarda dos mesmos, permitindo a seleção de um número reduzido de funções ou gamas de medida. Como tal, uma interface especial com o computador teria que ser desenvolvido para cada equipamento, presente na montagem experimental. Tal implicava geralmente meses de trabalho, mesmo para os sistemas menos complexos.

Um novo barramento, HP-IB (Hewlett-Packard Instrument Bus) passaria a utilizar um cabo padrão de modo a interligar vários

equipamentos de medida ao computador. Cada equipamento teria a sua própria interface eletrônica e um conjunto padrão de respostas a comandos vindos do computador. O sistema seria facilmente expansível, ligando múltiplos equipamentos através de conectores especiais (cabos piggyback). O número máximo de equipamentos ligados desta maneira estava limitado a 14 e o comprimento do cabo a 20 metros.

O barramento HP-IB foi proposto às organizações internacionais de padrões em 1974, sendo adotado pelo comitê IEC na Europa em 1975. Devido a objeções levantadas nos EUA por outra grande companhia sobre o nome do barramento, foi criado o novo nome: General Purpose Instrument Bus (GPIB). O barramento GPIB foi formalmente adotado como IEEE 488, em 1978.

1.2 – NORMAS

O barramento GPIB é descrito por três normas:

IEEE 488.1 que define os aspectos mecânicos e elétricos

IEEE 488.2 que trata de relatório de status, comandos padrões e formato de dados.

SCPI que define um grupo de comandos de fácil compreensão para todos os equipamentos.

II – IEEE 488.1: INTERFACE DIGITAL

PADRÃO PARA EQUIPAMENTOS

PROGRAMÁVEIS

2.1 – ASPECTOS FUNCIONAIS

Existem três tipos de dispositivos que podem ser ligados ao barramento IEEE 488 GPIB: os talkers, os listeners e os controladores.

Page 2: UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

Um talker envia mensagens de dados para o barramento. Por seu lado, um listener recebe mensagens de dados do barramento. O controlador, geralmente o computador, controla as ligações de comunicação e envia comandos GPIB para os diferentes dispositivos.

Alguns dispositivos podem desempenhar mais do que uma função. Por exemplo, um analisador de espectro pode desempenhar as funções de listener e talker.

2.2 – LINHAS

Em termos físicos, o GPIB é composto por 16 linhas (lógica TTL negativa). Estas linhas correspondem às linhas de dados, linhas de handshake e linhas de gestão da interface, como visto na figura 1.

2.2.1 – LINHAS DE DADOS

Oito linhas do barramento GPIB são linhas de dados bidirecionais, DIO 1-8. As linhas de dados são responsáveis pela transferência de dados e mensagens de comandos GPIB.

2.2.2 – LINHAS DE HANDSHAKE

Três linhas de handshake controlam em modo assíncrono, a transferência de bytes de mensagens entre dispositivos. O processo de handshake garante que os diferentes dispositivos enviem e recebem mensagens, nas linhas de dados, sem erros de transmissão.

As linhas de handshake são assim responsáveis pela transferência de dados do aparelho de escrita (talker) para todos os dispositivos endereçados no estado de leitura (listeners). O talker controla a linha DAV, enquanto que os listeners controlam as linhas NDAC e NRFD:

NRFD (Not Ready For Data) - O dispositivo em modo listener está (ou não) preparado para receber um byte de mensagem. Também usado pelo talker para sinalizar modo de transferência GPIB HS-488;

NDAC (Not Data Accepted) - O dispositivo em modo listener aceitou (ou não) um byte de mensagem;

DAV (Data Valid) - O dispositivo em modo talker indica que os sinais nas linhas de dados são válidos.

2.2.3 – LINHAS DE GESTÃO DA INTERFACE GPIB

As cinco linhas de gestão do hardware fazem a gestão do fluxo de informação através do barramento. A descrição destas linhas utilizadas no controle de operações do barramento, é a seguinte:

ATN (Attention) – Enquanto o controlador envia mensagens de interface ou endereços de dispositivos, o ATN deve estar no estado verdadeiro. ATN é colocado no estado falso quando o barramento está transmitindo dados;

EOI (End Or Identify) – Marca o último caractere da mensagem ou, em conjunto com o sinal ATN, de modo a realizar uma operação de parallel poll.

IFC (Interface Clear) – O controlador de sistema ativa a linha IFC para “desendereçar” todos dispositivos iniciando, assim, o barramento;

REN (Remote Enable) – Usado conjuntamente com mensagens da interface ou endereços de dispositivos, para comutar os instrumentos em modo de controle remoto ou local;

SRQ (Service Request) – Qualquer dispositivo pode ativar essa linha de modo a requisitar, em modo assíncrono, a atenção do

controlador.

Page 3: UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

2.3 – ASPECTOS MECÂNICOS E ELÉTRICOS

Dispositivos com conexão GPIB são usualmente conectados com um cabo condutor blindado de 24 pinos com conexão receptáculo e tomada (ambas) no fim. Você pode ligar dispositivos em um ou outro uma configuração linear, uma configuração de estrela, ou uma combinação de ambos como mostrado na figura abaixo.

Figura 2

O conector padrão é o Amphenol ou Cinch Série 57 MICRORIBBON ou tipo AMP CHAMP. Para aplicações especiais de interconexão, um cabo de adaptador com cabo não padronizado e/ou conectores são utilizado. O GPIB usa lógica negativa com níveis padrões TTL.

Figura 3

III – IEEE 488.2: PROTOCOLOS E COMANDOS

PARA USAR O IEEE 488.1

O conceito GPIB expresso no padrão IEEE 488, tornou muita fácil a tarefa de conectar fisicamente diferentes dispositivos. No entanto, não permite aos programadores comunicar, de forma fácil, com os vários equipamentos. Alguns fabricantes de instrumentação de medida identificam o fim da resposta dos seus dispositivos recorrendo a um Carriage Return (CR), outros com uma seqüência Carriage Return - Linefeed CR-LF ou apenas um LF.

Regra geral, os nomes de comandos, sistema de numeração e codificação dependiam de cada fabricante. Numa tentativa de uniformização, a Tektronix propôs um conjunto de padrões em 1985. Este conjunto de propostas constitui a base para o padrão IEEE 488.2, adotado em 1987. Em simultâneo, o padrão original foi redesenhado passando a ser conhecido como 488.1.

O novo padrão IEEE-488.2 estabelece formatos padrões para as mensagens de dispositivos, um conjunto de comandos comuns, um padrão para a estrutura de relatório de status bem como para protocolos do controlador. Desta forma foi unificado o controle de equipamentos de medida, fabricados pela maioria dos construtores.

O formato padrão para as mensagens enviadas termina com um LF e/ou declarando EOI (end or identify) no último caractere da string. Múltiplos comandos, na mesma mensagem, são separados através de ponto e vírgula. Como formato base para as respostas numéricas, foi utilizado dados de ponto fixado.

3.1 – PROTOCOLOS

Protocolos são rotinas de alto nível que combinam um número de seqüências de controle para desempenhar operações de sistema de teste comuns. IEEE 488.2 define dois protocolos obrigatórios e seis protocolos opcionais. Esses protocolos reduzem o tempo de desenvolvimento porque eles combinam vários comandos para executar as a maioria das operações comuns requeridas por qualquer

Figura 1

Page 4: UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

sistema de teste. Talvez os dois protocolos mais importantes são FINDLSTN e FINDRQS. O protocolo do FINDLSTN aproveita a capacidade do Controlador de monitorar linhas de barramento para localizar escutando dispositivos no barramento. O Controlador implementa o protocolo do FINDLSTN emitindo um endereço de escuta particular e então monitorando a linha do NDAC handshake para determinar se um dispositivo existe naquele endereço. O resultado do protocolo do FINDLSTN é uma lista de endereços para todos os dispositivos localizados. O protocolo do FINDRQS é um mecanismo eficiente para localizar dispositivos que estão solicitando serviço.

3.2 – HANDSHAKING

O Handshaking é o processo pelo qual os dados são transferidos assincronamente de forma controlada. Através desse processo, as perdas de dados são mínimas.

3.2.1 – IEEE 488 Handshake

Nesse processo o Talker afirma o a linha DAV e espera o Listener afirmar a linha NFRD. Após esse processo inicial, os dados são transmitidos. O processo termina após o Listener receber um EOI e negar o NDAC. Todo o processo pode ser visualizado na figura 4.

Figura 4

3.2.2 – HS488 Handshake

O HS488 aumenta a quantidade de dados que podem ser transferidos no sistema por remover demoras de propagação associadas

com as três linhas de handshake. Para habilitar o HS488 handshake, o Talker ativa o NRFD, depois o Controlador endereça todos os Listeners. Se o Listener suportar HS488, então o transfere-se usando o HS488 handshake (Figura 5). Uma Vez esteja o HS488 habilitado, o Talker coloca um byte nas linhas de dados espera por um tempo, afirma DAV, espera mais um tempo, nega DAV, e dirige o próximo byte de dados nas linhas de dados. O Listener guarda NDAC negado e deve aceitar o byte dentro do tempo especificado.

Figura 5

IV – SCPI: COMANDO PADRÃO PARA

EQUIPAMENTOS PROGRAMÁVEIS

Em Abril 1990, um grupo de fabricantes de instrumento anunciou a especificação do SCPI, que define um grupo de comandos para instrumentos programáveis.

Antes do SCPI, cada fabricante de instrumento desenvolvia seu próprio grupo de comandos para seus equipamentos programáveis. Nessa falta de padronização, desenvolvedores de sistema de teste tinham que aprender um número de comandos enorme para equipamentos específicos.

Por definir uma programação padrão, SCPI decresce tempo de desenvolvimento e aumenta a capacidade para trocar instrumentos.

SCPI é um completo, além de extensível, padrão que unifica comandos de programação para equipamentos. A primeira versão do padrão foi liberada em meados de 1990. Hoje, o Consórcio do SCPI continua a somar comandos e funcionalidade ao padrão do SCPI. SCPI tem seu próprio conjunto de comandos, além dos comandos obrigatórios do

Page 5: UFES - Artigo - BARRAMENTO DE INSTRUMENTAÇÃO IEEE 488 (GPIB)

IEEE 488.2. Embora IEEE 488.2 seja utilizado como base, SCPI define comandos de programação que podem ser usados com qualquer tipo de hardware ou de link de comunicação.

SCPI especifica regras padronizadas para abreviar palavras-chave de comando e usa o protocolo de controle de trocas para formatar comandos e parâmetros.

SCPI oferece vantagens numerosas ao engenheiro de teste. Uma destas é a que o SCPI fornece um conjunto compreensivo de funções de programação cobrindo todas as principais funções de um instrumento. Este conjunto padronizado de comandos assegura um mais alto grau de comunicação entre equipamentos e minimiza o esforço envolvido em projetar novos sistemas de teste.

Figura 6 - Modelo de Equipamento SCPI

V – CONCLUSÃO

O padrão IEEE 488, também conhecido como GPIB, vem mostrando-se a melhor alternativa quando se trata de transferência de dados entre equipamentos programáveis de medição, pois reduz a quantidade de protocolos, formatos de dados e comandos usados na área de instrumentação.

O uso de apenas três padrões (IEEE 488.1, IEEE 488.2 e SCPI) torna o GPIB um padrão bem estruturado e fácil de criar aplicativos.

VI – REFERÊNCIAS

[1] ANSI/IEEE 488.1-1987, IEEE Standard Digital Interface for Programmable Instrumentation.[2] ANSI/IEEE 488.2-1992, IEEE Codes, Formats, Protocols, and Common Commands, and Standard Commands for Programmable Instruments.[3] The latest SCPI Standards are published by the SCPI Consortium.

[4] High speed GPIB http://ourworld.compuserve.com/homepages/acea/hs_gpib.htm [5] GPIB CHIPS http://www.gpib2000.com/ [6] GPIB Discussions http://www.inesinc.com/gpibinfo.htm.[7] Hewlett-Packard, Tutorial Description of the Hewlett-Packard Interface Bus Hewlett-Packard, Nov. 1987.[8] NI-488.2MTM User Manual for Windows 95 and Windows NT, National Instruments, Inc., Austin, TX, 1996. [9] IEEE Std 488.2-1992, IEEE Standard Codes, Formats, Protocols, and Common Commands for Use with IEEE Std 4881.-1987, IEEE Standard Digital Interface for Programmable Instrumentation, Institute of Electrical and Electronics Engineers, New York, NY, 1992. [10] Instrument Communication Handbook, IOTech, Inc., Cleveland, OH, 1991. [11] Instrumentation for Enginnnering Measuments, 2 Edição, Jmaes W. Dallly, William F. Riley e Kenneth G. Mc.Connell, Jonh Wiley & Sons, Inc. New York, 1993.[12] Process Control Instrumentation Technology, 4 Edição, Curtis Jonhson, Prentice Hall Career & Technology, New Jersey, 1993.