Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prof. André Sarmento Barbosa http://www.andresarmento.com 16 Redes Industriais e Sistemas Supervisórios CAPÍTULO 3 PROTOCOLOS INDUSTRIAIS – PARTE 1 Existem diversos tipos de tecnologias para redes industriais, estas diferem entre si pelas características físicas e mecânicas (tal como o meio de transmissão usado), bem como o tipo de protocolo. Protocolo fica assim definido como o conjunto de convenções e procedimentos que regulamentam a transmissão de dados entre diferentes equipamentos. São exemplos de protocolos industriais: HART, MODBUS, PROFIBUS, CAN, AS-i, ControlNet, DeviceNet, Ethernet Industrial e o TCP/IP. O Protocolo HART O protocolo HART (Highway Addressable Remote Transducer) foi criado em 1980. Em 1990 o protocolo foi aberto à comunidade e um grupo de usuários foi fundado. A grande vantagem oferecida por este protocolo é possibilitar o uso de instrumentos inteligentes em cima dos cabos 4-20mA tradicionais. Como a velocidade é baixa, os cabos normalmente usados em instrumentação podem ser mantidos. O que são Circuitos e Transmissores de 4-20mA? Os transmissores de corrente de 4mA a 20mA, geralmente denominados “transmissores de 4 a 20” ou “circuitos de 4 a 20” ou ainda, simplesmente, “4 a 20”, são circuitos utilizados em acoplamento de transdutores (sensores) dos mais diversos tipos: tensão, temperatura, nível, pressão, posição, etc. O transmissor de 4 a 20 recebe o sinal do transdutor e o converte em um sinal de corrente da seguinte forma: 4mA para o valor mínimo a ser medido pelo sensor, 20mA para o valor máximo a ser medido pelo sensor. Os valores intermediários normalmente são proporcionais com função de transferência linear (reta). Se este não for o caso, a função de transferência deve ser conhecida (ou ter valores pontuais tabelados), para que se efetue a correta correlação entre a corrente e a grandeza que está sendo medida. Prof. André Sarmento Barbosa http://www.andresarmento.com 17 Redes Industriais e Sistemas Supervisórios Genericamente, podemos dizer que 4ma corresponde a 0% da variável de controle e 20mA corresponde a 100% da variável de controle (grandeza que está sendo medida e convertida em um sinal elétrico). Quando nos deparamos pela primeira vez com este circuito (4 a 20), algumas perguntas muito naturais nos surgem à mente: por que transmitir um sinal de corrente e não de tensão? Por que a faixa vai e 4mA a 20mA? Não seria mais apropriado utilizar uma faixa de 0mA a 20mA? Por que 20mA e não 50mA ou 100mA? Em primeiro lugar, sinais de corrente não sofrem o efeito da queda de tensão na linha, nas conexões, e em demais elementos do circuito. Se transmitíssemos um sinal de tensão, para cada comprimento de linha de transmissão, teríamos diferentes quedas de tensão, o que produziria erros difíceis de serem conhecidos no sinal recebido. Com o sinal de corrente isso não acontece, uma vez que o transmissor irá manter a corrente constante e proporcional à variável do processo. Desde que a fonte de alimentação suporte o total das quedas de tensão, poderemos inserir elementos em série com a linha de transmissão (PLCs, medidores, etc), sem alterar o sinal que está sendo transmitido. Em segundo lugar, podemos citar pelo menos duas razões fundamentais para não se partir do 0mA: 1a) Se utilizamos 4mA como valor mínimo a ser transmitido, podemos, seguramente, alimentar nosso circuito transmissor com 3mA. Isto é fundamental para o transmissor a dois fios, uma vez que o mesmo não terá uma fonte de alimentação de tensão contínua. Sua alimentação será retirada da própria linha de transmissão do sinal (dois fios). Este procedimento simplifica e reduz o custo do sistema de medição. 2a) Qualquer sinal abaixo de 4mA, indica que há algum problema no sensor ou no circuito ou na linha de transmissão (um sinal igual a zero, por exemplo, pode ser um bom indicativo de que a linha de transmissão foi interrompida!). A maioria dos conversores A/D, opera com tensões de entrada de, no máximo, 5V. Assim, se utilizarmos um resistor de precisão de 250ohms na entrada do conversor A/D, alimentado por um sinal de 4 a 20, termos uma tensão de entrada de 1V a 5V (lei de Ohm). Voltando ao HART: O sinal Hart é modulado em FSK (Frequency Shift Keying) e é sobreposto ao sinal analógico de 4-20 mA. Para transmitir o bit 1 é utilizado um sinal de 1 mA pico a pico na freqüência de 1200 Hz e para transmitir um bit 0 a freqüência de 2400 Hz é utilizada. A comunicação é bidirecional. Assim, é possível utilizar a comunicação analógica dos sensores 4-20mA simultaneamente como a comunicação digital provida pelo HART. Tal configuração só é possível para um escravo no par de fios. Para a utilização de mais de um dispositivo escravo (topologia multidrop) o sinal analógico é desprezado. A corrente que era usada na comunicação analógica fica definida em 4ma todo o tempo (apenas para a alimentação dos dispositivos), e os sinais de controle são transmitidos nas frequências conhecidas 1200KHz-2400KHz. Pode-se configurar até 15 dispositivos nesse modo. Prof. André Sarmento Barbosa http://www.andresarmento.com 18 Redes Industriais e Sistemas Supervisórios Sinal Hart sobreposto ao sinal 4-20 mA Obs.: O protocolo HART permite o uso de até dois mestres. O mestre primário é um computador ou CLP ou multiplexador. O mestre secundário é geralmente representado por terminais hand-held de configuração e calibração. Protocolo HART com dois mestres Terminal de calibração multifunção Fluke 744 e calibrador de loop de corrente Fluke 707 para instrumentos HART. Prof. André Sarmento Barbosa http://www.andresarmento.com 19 Redes Industriais e Sistemas Supervisórios Modos de comunicação: Mestre-escravo: É o modo default de operação. Cada ciclo de pedido e recebimento de valor dura cerca de 500 ms, o que implica na leitura de dois valores por segundo. Burst ou broadcast: O dispositivo (escravo) pode enviar de forma autônoma e periódica o valor de uma variável, por exemplo, a PV (Primary Variable). No intervalo entre estes envios o mestre pode executar um ciclo de pergunta e resposta. A taxa de transmissão neste caso se eleva para 3 ou 4 por segundo. O mestre pode enviar uma mensagem para interromper este envio contínuo de mensagens, segundo sua conveniência. Cada mensagem pode comunicar o valor de até quatro variáveis. Cada dispositivo HART pode ter até 256 variáveis. Obs.: A PV (Primary Variable) é o valor primário ou principal do dispositivo. Se o dispositivo é um sensor de pressão a PV é o valor da pressão medida naquele momento. Mestre-escravo em multidrop: Quando usando uma topologia do tipo multidrop, a rede HART suporta até 15 instrumentos de campo. Apenas o modo mestre escravo pode ser utilizado. Neste caso o valor da corrente é mantido no seu nível mínimo de 4 mA e o valor da PV deve ser lido através de uma mensagem explícita. A grande deficiência da topologia multidrop é que o tempo de ciclo para leitura de cada dispositivo é de cerca de meio segundo podendo alcançar um segundo. Neste caso para 15 dispositivos o tempo será de 7,5 a 15 segundos, o que é muito lento para grande parte das aplicações. Prof. André Sarmento Barbosa http://www.andresarmento.com 20 Redes Industriais e Sistemas Supervisórios Cabeamento: O HART utiliza como meio de transmissão um par trançado. A distância máxima permitida é de cerca de 3000 m com cabo com um par trançado blindado e de 1500 m com cabo múltiplo com blindagem simples. O fator mais limitante do comprimentodo cabo é sua capacitância. Quanto maior a capacitância e o número de dispositivos, menor a distância máxima permitida: Comprimento máximo do cabo em função da capacitância do cabo O Protocolo MODBUS O MODBUS é um protocolo para barramento de campo criado pela empresa MODICON, fabricante de produtos para automação, visando o uso em seus próprios dispositivos. Porém, com o tempo, o MODBUS foi adotado por um grande número de fabricantes, com autorização da própria MODICON passando a ser um protocolo aberto. Na verdade, o MODBUS, apesar de antigo (foi criado da década de 70!), é utilizado ainda hoje por milhares de fabricantes de dispositivos para automação. O MODUBUS utiliza o RS-232, RS-422, RS-485 ou Ethernet como meios físicos. O mecanismo de controle de acesso é do tipo mestre-escravo ou Cliente-Servidor. A estação mestre (geralmente um PLC ou sistema supervisório) envia mensagens solicitando dos escravos que enviem os dados lidos pela instrumentação ou envia sinais a serem escritos nas saídas para o controle dos atuadores. O protocolo possui comandos para envio de dados discretos (entradas e saídas digitais) ou numéricos (entradas e saídas analógicas). O MODBUS é funciona no modo mestre-escravo, nesse modo, escravos não podem se comunicar diretamente, toda a comunicação deve passar por um mestre. Um mestre pode requisitar ou enviar informação para um escravo em particular e esperar pela resposta ou pode enviar uma mensagem comum para todos os escravos (broadcast). Como o mestre está ligado, assim como todos os escravos sobre uma rede bidirecional do tipo barramento, é necessário designar um endereço para cada escravo. Este endereço pode variar de 1 a 247, sendo possível haver um mestre e 247 escravos. Prof. André Sarmento Barbosa http://www.andresarmento.com 21 Redes Industriais e Sistemas Supervisórios Modos de funcionamento: MODBUS RTU: Todos os dados do quadro são transmitidos em binário. O modo RTU também é chamado de ModBus-B ou Modbus Binario e é o modo preferencial. MODBUS ASCII: Todos os dados do quadro são convertidos para ASCII. Exemplo: Transmissão do endereço 3B (hexadecimal) RTU: 00111011 ASCII: 3 = 33h B = 42h 0110011 1000010 (utiliza-se caracteres de 7 bits) Formato do quadro MODBUS RTU: Significado dos campos se for um quadro de requisição (enviado pelo Mestre): Address (endereço): Endereço do escravo (1 a 247) ou 0 para broadcast. Function Code (código da função): Designa um dado comando de leitura ou escrita no escravo. Data (Dados): Os dados a serem escritos no escravo caso o comando seja de escrita ou dados específicos de leitura, caso o comando seja de leitura. CRC (Palavra de controle): Dois bytes calculados para detectar erros de transmissão, utilizando CRC-16. Este valor é calculado a partir de todos os grupos de 16 bits (2 bytes) do quadro, excluindo obviamente o próprio CRC. No escravo, este valor é calculado novamente e comparado ao valor enviado. Significado dos campos se for um quadro de resposta (enviado pelos escravos): Address (endereço): Endereço do escravo (1 a 247) que está respondendo. Function Code (código da função): Comando de requisição (leitura) ou escrita realizado no escravo. Data (Dados): Os dados solicitados do escravo, caso o comando executado tenha sido de leitura ou o eco do valor escrito, caso o comando tenha sido de escrita. CRC (Palavra de controle): Dois bytes calculados para detectar erros de transmissão, utilizando CRC-16. Este valor é calculado a partir de todos os grupos de 16 bits (2 bytes) do quadro, excluindo obviamente o próprio CRC. No mestre, este valor é calculado novamente e comparado ao valor enviado. Prof. André Sarmento Barbosa http://www.andresarmento.com 22 Redes Industriais e Sistemas Supervisórios Dinâmica da requisição/resposta entre mestre e escravo: Prof. André Sarmento Barbosa http://www.andresarmento.com 23 Redes Industriais e Sistemas Supervisórios Alguns códigos de funções: 0x05 – (Write Single Coil) - Altera o estado de uma saída digital No jargão MODBUS um coil é uma saída discreta, ou seja, uma saída digital (ON, OFF). Poderia ser, por exemplo, ser uma válvula (abrir ou fechar) ou uma lâmpada (ligar ou desligar) Estrutura do quadro: Endereço do escravo (1 a 247) Código da função (0x05) Dados: Endereço da saída digital (2 bytes) – informação específica do dispositivo escravo Estado (2 bytes): o 0x00 0x00 – OFF (desligar) o 0xFF 0x00 – ON (ligar) CRC (2 bytes calculados em função dos anteriores) Para os interessados no cálculo do CRC: http://www.modbustools.com/modbus_crc16.htm http://pt.wikipedia.org/wiki/CRC Resposta gerada: O quadro de resposta gerado é um eco da requisição. 0x01 (Read Coils) - Lê um número variável de saídas digitais. Um dispositivo escravo pode ter várias sáidas digitais, assim, é possível obter o estado destas várias saídas a partir de um único comando. Estrutura do quadro: Endereço do escravo (1 a 247) Código da função (0x01) Dados: Endereço inicial (2 bytes) – informação específica do dispositivo Número de saídas (2 bytes) – quantas saídas serão lidas a partir do endereço inicial CRC (2 bytes calculados em função dos anteriores) Para os interessados no cálculo do CRC: http://www.modbustools.com/modbus_crc16.htm http://pt.wikipedia.org/wiki/CRC Prof. André Sarmento Barbosa http://www.andresarmento.com 24 Redes Industriais e Sistemas Supervisórios Resposta gerada: O quadro de resposta gerado é quase idêntico ao da requisição, exceto o campo de dados que terá: Contador de bytes: quantidade de bytes que seguem no status de resposta Resposta (estado das saídas digitais): Neste caso o estado das saídas são expressos pelos valores dos bits dentro do byte (bit 0 – desligado, bit 1 – ligado) Exemplo: Suponha que foi requisitado o estado de 8 saídas digitais de um escravo número 18: Estrutura do quadro de requisição: Endereço do escravo = 18 Código da função = 0x01 Dados: Endereço inicial (2 bytes) – informação específica do dispositivo. Ex. 0x00 0x06 Número de saídas = 8 CRC (2 bytes calculados em função dos anteriores) Estrutura do quadro de resposta: Endereço do escravo = 18 Código da função = 0x01 Dados: Contador de bytes = 1 Resposta (estado das saídas digitais): Ex.: 0xCD, que significaria: ON–ON–OFF–OFF–ON–ON–OFF–ON ( 1 1 0 0 1 1 0 1 ) CRC (2 bytes calculados em função dos anteriores) Outros códigos de função: 0x02 (Read Input Status) - Lê um número variável de entradas digitais. 0x06 – (Write Single Register) - Altera o estado de uma saída analógica 0x03 – (Read Holding Registers) – Lê um número variável de saídas analógicas ou memórias 0x04 – (Read Input Registers) – Lê um número variável de entradas analógicas A especificação de todos os códigos de função e suas respostas pode ser encontrada em: http://www.modbus.org/docs/PI_MBUS_300.pdf http://www.modbustools.com/modbus.asp
Compartilhar