PROTOCOLOS SERIAIS : RS-232 / RS-422 / RS-485

 

 

 

PROTOCOLOS SERIAS – PRIMEIRO ESTUDO

 

 

  

A comunicação de dados estuda os meios de transmissão de mensagens digitais para dispositivos externos ao circuito origem da mensagem. Nesses casos as distâncias envolvidas podem ser enormes, e como o aumento das distâncias entre a fonte e o destino aumenta também a dificuldade de estabelecer uma transmissão de dados precisa. Isso é resultado de distorções elétricas dos sinais que trafegam através de condutores longos, e de ruídos adicionados ao sinal que se propagam através do meio de transmissão. Embora alguns cuidados devam ser tomados na troca de dados dentro de um computador, o grande problema ocorre quando dados são transferidos para dispositivos fora dos circuitos do computador. Nesse caso a distorção e o ruído podem tornar-se tão severos que a informação é perdida, ou parte dela. Dispositivos externos são geralmente circuitos com fonte de alimentação independente dos circuitos relativos a um computador ou outra fonte de mensagens digitais. Como regra, a taxa de transmissão máxima permissível de uma mensagem em diretamente proporcional a potência do sinal, e inversamente proporcional ao ruído. A função de qualquer sistema de comunicação é fornecer a maior taxa de transmissão possível, com a menor potência e com menor ruído possível.  

 

Um canal de comunicação é um caminho sobre o qual a informação pode trafegar. Ela pode ser definida por uma linha física (fio) que conecta dispositivos de comunicação, ou por um rádio, laser, ou outra fonte de energia radiante. Em comunicação digital, a informação é representada por bits de dados individuais, que podem ser encapsulados em mensagens de vários bits. Um byte (conjunto de 8 bits) é um exemplo de uma unidade de mensagem que pode trafegar através de um canal digital de comunicações. Uma coleção de bytes pode ser agrupada em um “frame”ou outra unidade de mensagem de maior nível.Esses múltiplos níveis de encapsulamento facilitam o reconhecimento de mensagens e interconexões de dados complexos.Um canal  no qual a direção de transmissão é inalterada é referida como canal simplex. Por exemplo, uma estação de rádio é um canal simplex porque ela sempre transmite o sinal para os ouvintes e nunca é permitido à transmissão inversa.

Um canal half-duplex é um canal físico simples no qual a direção pode ser revertida. As mensagens podem fluir nas duas direções, mas nunca ao mesmo tempo. Em uma chamada telefônica, uma parte fala enquanto outra escuta. Depois de uma pausa, a outra parte fala e a primeira escuta. Falar simultaneamente resulta em sons que não podem ser compreendidos. Um canal full-duplex permite que mensagens sejam trocadas simultaneamente em ambas as direções. Ele pode ser visto como dois canais simples, um canal direto e um canal reverso, conectados nos mesmos pontos. 

 

A maioria das mensagens digitais é mais longa que alguns poucos bits. Por não ser prático nem econômico transferir todos os bits de uma mensagem simultaneamente, a mensagem é quebrada em partes menores e transmitida seqüencialmente. A transmissão bit- serial converte a mensagem em um bit por vez através de um canal. Cada bit representa uma parte da mensagem. Os bits individuais são então rearranjados no destino para compor a mensagem original. Em geral, um canal irá passar um bit por vez. A transmissão bit-serial é normalmente chamada de transmissão serial, e é o método de comunicação escolhido por diversos periféricos de computadores. A transmissão byte-serial converte oito bits por vez através de oito canais paralelos. Embora a taxa de transferência seja oito vezes mais rápida que na transmissão bit-serial, são necessários oito canais, e o custo poderá ser maior do que oito vezes para transmitir a mensagem. Quando as distâncias são curtas, é factível e econômico usar canais paralelos como justificativa para as altas taxas de transmissão. A interface Centronics de impressoras é um caso típico de transmissão byte-serial.

 

                                     

 

A taxa de transferência (Baud Rate) refere-se à velocidade com que os dados são enviados através de um canal e é medido em transições elétricas por segundo. Na norma EIA-232, ocorre uma transição de sinal por bit, e a taxa de transferência e a taxa de bit (bit rate) são idênticas. Nesse caso, uma taxa de 9600 bauds corresponde a uma transferência de 9600 dados por segundo, ou um período de aproximadamente, 104us(1/9600s). Outro conceito é a eficiência do canal de comunicação que é definido como o número de bits de informação utilizável (dados) enviados através do canal por segundo. Ele não inclui bits de sincronismo, formatação, e detecção de erro que podem ser adicionados à informação antes da mensagem ser transmitida, e sempre será no máximo igual a um. 

Geralmente, dados serializados não são enviados de maneira uniforme através de um canal. Ao invés disso, pacotes com informação regulares são enviados seguidos de uma pausa. Os pacotes de dados binários são enviados dessa maneira, possivelmente com comprimentos de pausa variável entre pacotes, até que a mensagem tenha sido totalmente transmitida. O circuito receptor dos dados deve saber o momento apropriado para ler os bits individuais desse canal, saber exatamente quando um pacote começa e quanto tempo decorre entre bits. Quando essa temporização for conhecida, o receptor é dito estar sincronizado com o transmissor, e a transferência de dados precisa tornar-se possível. Falhas na manutenção do sincronismo durante a transmissão irão causar a corrupção ou perda de dados. Duas técnicas básicas são empregadas para garantir a sincronização correta. Emsistemas síncronos, canais separados são usados para transmitir dados e informação de tempo. O canal de temporização transmite pulsos de clock para o receptor. Através da recepção de um pulso de clock, o receptor lê o canal de dados e armazena o valor do bit encontrado no momento. O canal de dados não é lido novamente até que o próximo pulso de clock chegue. Como o transmissor é responsável pelos pulsos de dados e de temporização, o receptor irá ler o canal de dados apenas quando comandado pelo transmissor, portanto a sincronização é garantida. O comprimento do pacote de dados é pequeno em sistemas assíncronos para minimizar o risco do oscilador do transmissor e do receptor variar. Quando osciladores a cristal são utilizados, a sincronização pode ser garantida sobre os 11 bits do período. A cada novo pacote enviado, o start bit reseta a sincronização, portanto a pausa entre pacotes pode ser longa. Ruídos e Distúrbios elétricos momentâneos podem causar mudanças nos dados quando estão trafegando pelos canais de comunicação. Se o receptor falhar ao detectar isso, a mensagem recebida será incorreta, resultando em conseqüências possivelmente sérias. Como uma primeira linha de defesa contra erros de dados, eles devem ser detectados. Se um erro pode ser sinalizado, pode ser possível pedir que o pacote com erro seja reenviado, ou no mínimo prevenir que os dados sejam tomados como corretos. Se uma redundância na informação for enviada, um ou dois bits de erros podem ser corrigidos pelo hardware no receptor antes que o dado chegue ao seu destino. O bit de paridade é adicionado ao pacote de dados com o propósito de detecção de erro. Na convenção de paridade-par (even-parity), o valor do bit de paridade é escolhido da tal forma que o número total de dígitos “1”dos dados adicionado ao bit de paridade do pacote seja sempre um número par. Na recepção do pacote, a paridade do dado precisa ser recomputada pelo hardware local e comparada com o bit de paridade recebido com os dados. Se qualquer bit mudar de estado, a paridade não irá coincidir, e um erro será detectado. Se um número para bits for trocado, a paridade coincidirá e o dado com erro será validado. Contudo, uma análise estatística dos erros de comunicação de dados tem mostrado que um erro com bit simples é muito mais provável que erros em múltiplos bits na presença de ruído randômico. Portanto, a paridade é um método confiável de detecção de erro.

Outro método de detecção de erro envolve o cálculo de um “checksum” quando mensagens com mais de um byte são transmitidas pelo canal de comunicação. Nesse caso, os pacotes que constituem uma mensagem são adicionados aritmeticamente. Um número de checksum é adicionado à seqüência do pacote de dados de tal forma que a soma dos dados mais o checksum seja zero. Quando recebido, os dados devem ser adicionados pelo processador local. Se a soma do pacote der um resultado diferente de zero, ocorreu um erro. Na ocorrência de erros é improvável (mas não impossível) que qualquer corrupção de dados resulte em checksum igual a zero. Podem ocorrer erros que não sejam apenas detectados, mas também sejam corrigidos se o código adicional for adicionado à seqüência de dados do pacote. A correção de erros em uma transmissão, contudo, abaixa a eficiência do canal, e o resultado é uma queda na transmissão.

 

Com certeza a ETHERNET INDUSTRIAL é uma tendência, mas encontraremos sempre os protocolos seriais em equipamentos e aplicações industriais diversas, sendo assim vale à pena sabermos o que é RS232, RS422, RS455 e RS485? 

 

 

 

RS é uma abreviação de “Recommended Standard”. Ela relata uma padronização de uma interface comum para comunicação de dados entre equipamentos, criada no início dos anos 60, por um comitê conhecido atualmente como “Electronic Industries Association” (EIA). Naquele tempo, a comunicação de dados compreendia a troca de dados digitais entre um computador central (mainframe) e terminais de computador remotos, ou entre dois terminais sem o envolvimento do computador. Estes dispositivos poderiam ser conectados através de linha telefônica, e conseqüentemente necessitavam um modem em cada lado para fazer a decodificação dos sinais. Dessas idéias nasceu o padrão RS232. Ele especifica as tensões, temporizações e funções dos sinais, um protocolo para troca de informações, e as conexões mecânicas. A mais de 30 anos desde que essa padronização foi desenvolvida, a EIA publicou três modificações. A mais recente, EIA232E, foi introduzida em 1991. Ao lado da mudança de nome de RS232 para IA232, algumas linhas de sinais foram renomeadas e várias linhas novas foram definidas. Embora tenha sofrido poucas alterações, muitos fabricantes adotaram diversas soluções mais simplificadas que tornaram impossível a simplificação da padronização proposta. As maiores dificuldades encontradas pelos usuários na utilização da interface RS232 incluem pelo menos um dos seguintes fatores:

– Ausência ou Conexão errada de sinais de controle. Resultam em estouro do buffer (overflow) ou travamento da comunicação.

-Função incorreta de comunicação para o cabo em uso, resulta em inversão das linhas de Transmissão e Recepção, bem como a inversão de uma ou mais linhas de controle (handshaking). Se a norma EIA232 completa for implementada, o equipamento que faz o processamento dos sinais é chamado DTE (DATA TERMINAL EQUIPMENT- usualmente um computador ou terminal), tem um conector DB25 macho, e utiliza 22 dos 25 pinos disponíveis para sinais ou terra. O equipamento que faz a conexão (normalmente uma interface com a linha telefônica) é denominado de DCE (DATA CIRCUIT TERMINATING EQUIPMENT – usualmente um modem), tem um conector DB25 fêmea, e utilizam os mesmos 22 pinos disponíveis para sinais e terra. Um cabo de conexão entre os dispositivos DTE e DCE contém ligações em paralelo, não necessitando mudanças na conexão de pinos. Se todos os dispositivos seguissem essa norma, todos os cabos seriam idênticos, e não haveria chances de haver conexões incorretas.   

 

A norma EIA232 inclui a referência de terra no PINO 7, e é freqüentemente conectada ao PINO 1 e a blindagem do cabo que envolve os demais condutores. Sinais de tensão dos dados, temporizações e controle são medidos com relação a esse terra comum. Equipamentos que utilizam a interface RS232 não podem ser utilizados em aplicações onde os equipamentos nos dois opostos devem estar eletricamenteisolados.    

 

As normas RS485 e RS422 definem esquemas de transmissão de dados balanceados que oferecem soluções robustas para transmitir dados em longas distâncias em ambientes ruidosos. Estas normas não definem qual o protocolo a ser utilizado para a comunicação dos dados, e são adotadas como especificação da camada física de diversos protocolos, como, por exemplo, MODBUS, PROFIBUS, DIN-Measuremet-Bus e muitos outros. Todos os equipamentos que possuem comunicação serial por barramento utilizam o padrão RS485, devido às vantagens que o mesmo apresenta em ambientes industriais. Por ser amplamente difundido, é bem aceito em todas as partes do globo. Apesar de estarem sendo utilizadas há bastante tempo, é muito comum haver dúvidas nos usuários de redes baseadas em RS485 e RS422.

A norma TIA/EIA-422, conhecida popularmente como RS-422, descreve uma interface de comunicação operando em linhas diferenciais capaz de interligar um dispositivo transmissor a até 10 receptores. O meio físico definido para a RS-422 são dois pares trançados, sendo um utilizado para comunicação no sentido do transmissor (usualmente o mestre) para os receptores (usualmente escravos). O segundo par trançado é utilizado para comunicação dos escravos para o mestre. Como múltiplos escravos precisam transmitir através de um mesmo par de fios, estes precisam comutar seus transmissores de forma que em um mesmo instante de tempo, somente o transmissor de um escravo esteja ativo. A utilização de dois pares permite que no mesmo instante de tempo ocorram transmissão e recepção de dados entre o mestre e um escravo. A possibilidade de transmissão e recepção simultânea caracteriza a RS-422 como full-duplex

 

A norma TIA/EIA-485, conhecida popularmente como RS-485, descreve uma interface de comunicação operando em linhas diferenciais capaz de se comunicar com 32 unidades de carga. Normalmente, um dispositivo transmissor/receptor corresponde a uma unidade de carga, o que faz com que seja possível comunicar até 32 dispositivos. Entretanto, existe dispositivos que consomem frações de unidade de carga, o que aumenta o máximo número de dispositivos a serem interligados. O meio físico mais utilizado é um par trançado. Através deste único par de fios, cada dispositivo transmite e recebem dados. Cada dispositivo aciona o seu transmissor apenas no instante que necessita transmitir, mantendo-o desligado no resto do tempo de modo a permitir que outros dispositivos transmitam dados. Em um determinado instante de tempo, somente um dispositivo pode transmitir, o que caracteriza esta rede como half-duplex. Uma rede RS-485 pode também utilizar dois pares trançados, operando no modo full-duplex, totalmente compatível com o RS-422.

 

Tanto o RS-485 quanto o RS-422 se caracterizam pela utilização de um meio de comunicação diferencial (ou balanceado) denominado par trançado. Os circuitos transmissores e receptores adotados nestas interfaces utilizam como informação a diferença entre os níveis de tensão em cada condutor do par trançado. Os códigos binários são identificados pela polaridade (+ ou -) da diferença de tensão entre os condutores do par, ou seja, quando a tensão no condutor ”+”for maior que no condutor ”-“,é caracterizado um nível lógico “1”; quando ao contrário, a tensão no condutor “-“for maior que no condutor ”+”, é caracterizado um nível lógico ”0”. Uma margem de ruído de mais ou menos 0,2volts é definida para aumentar a tolerância a interferências. Esta técnica resulta no cancelamento de ruídos induzidos no meio de transmissão, pois se o mesmo ruído é induzido nos dois condutores à diferença de tensão entre eles não se altera e a informação é preservada. A interferência eletromagnética emitida por um barramento de comunicação diferencial é também menor que a emitida por barramentos de comunicação não-diferenciais. A teoria de comunicações descreve a necessidade de terminação d elinhas de comunicação com um valor de impedância correspondente à impedância característica da linha de transmissão. A correta terminação atenua reflexões que distorcem os dados transmitidos, aumentando os limites de velocidade e/ou comprimento da rede. Redes não-terminadas são baratas, de menor consumo e simples de implementar. A desvantagem clara é que as taxas de comunicação devem ser lentas ou os cabos curtos o bastante para manter a rede confiável. Redes com cabos curtos (até 100metros) e operando a baixa velocidade (até 19.200bps) operam adequadamente mesmo sem a utilização de resistores de terminação. A terminação paralela oferece excelentes taxas de comunicação, mas é limitada a redes com um único driver, onde um dispositivo fala e os demais apenas escutam como é o caso de cada um dos pares de redes RS-422 ou RS-485 full-duplex. Nesses casos, o driver deve ser posicionado em uma extremidade da rede e o resistor de terminação na outra. O terceiro método é a terminação bidirecional, que oferece uma excelente integridade do sinal. Com esta técnica, os drives podem estar localizados em qualquer ponto da rede. A desvantagem é que o consumo da rede aumenta. Este é, seguramente, um dos métodos mais confiáveis de terminação. A impedância característica de um par trançado é de aproximadamente 120ohms, sendo este um valor adequado para o resistor de terminação a ser instalado. O último assunto relacionado à terminação é o que fazer com os condutores não usados em um cabo de dados. Condutores não usados poderão auto-ressonar e acoplar ruído aos condutores de dados. Se eles forem deixados abertos, eles irão ressonar em todos os tipos de freqüências; se forem aterrados em uma extremidade, irão ressonar L/2(“L” é o comprimento do cabo); se forem aterrados nas duas extremidades irão ressonar em L/4. A melhor maneira de minimizar a energia de um condutor não utilizado é dissipá-la em forma de calor. Para tanto, deve-se colocar resistores de terminação em ambas as extremidades do condutor para o terra ( uma terminação bidirecional). Os resistores devem possuir um valor igual à impedância característica da linha, ou seja, em torno de 120ohms. Uma melhor alternativa é utilizar cabos em que não sobrem condutores. Enquanto a velocidade for relativamente baixa e as distâncias relativamente curtas, a influência da topologia da rede em seu desempenho não é significativa. Contudo, quando os efeitos de linhas de transmissão começam a aparecer, há apenas uma topologia simples que permite gerenciar estes efeitos, é a topologia “DAISY CHAIN”. Nela todos os dispositivos são conectados diretamente aos condutores da linha de comunicação principal, é fácil controlar as reflexões causadoras de erros de comunicação.                                                

Isso não significa que seja impossível implementar uma rede funcional com outra topologia. Entretanto, na prática, controlar reflexões em uma rede tipo estrela (por exemplo) é mais uma arte do que ciência. Ao utilizar o barramento com derivações, é recomendável que o comprimento das derivações que interligam cada dispositivo à linha de comunicação principal seja o menor possível (muito menores que o comprimento do barramento principal). Tanto a RS-422 quanto a RS-485 especificam um comprimento máximo de 1.200metros para os cabos de comunicação. A velocidade máxima de comunicação (em bits por segundo) depende de características dos equipamentos instalados, da capacitância dos cabos de comunicação e dos resistores de terminação instalados. Como regra geral quanto mais longo os cabos, menor deve ser a velocidade de comunicação. Como orientação, não se deve esperar problemas de comunicação quando o produto entre o comprimento dos cabos (em metros) e a velocidade de comunicação em (bits por segundo) for menor que 100.000.000. O desempenho de um sistema irá variar de acordo com o tipo de cabo, terminações, topologia da rede, interferências presentes no ambiente e qualidade dos transmissores e receptores de cada dispositivo da rede.    

 

A rede RS-485 não define o número máximo de dispositivos interligados em uma rede, e sim uma série de parâmetros que podem ser utilizados para o cálculo deste limite.

 

1-Limite inferior para a resistência de carga resultante no barramento.

 2-Valor de resistência que cada dispositivo da rede representa no barramento, denominada ”Carga Unitária”)-(15kohms).     

 3-Valor mínimo de corrente que o driver (transmissor) de um dispositivo RS-485 deve ser capaz de fornecer. A partir destes dados e considerado a necessidade de resistores de terminação nos dois extremos do barramento (correspondentes a 60ohms), pode ser calculado o limite de 32 dispositivos com carga unitária para um barramento de comunicação RS-485. Atualmente são comercializados disponíveis equipamentos RS-485 com carga inferior à unitária, sendo usuais os valores de 1/2 ,1/4 e 1/8 da carga unitária. Para ampliar o número de dispositivos de uma rede RS-485 para 256, uma solução possível é utilizar apenas dispositivos com 1/8 da carga unitária. Em aplicações menores, onde o comprimento dos cabos da rede é pequeno e/ou a velocidade de comunicação é baixa, pode ser possível eliminar os resistores de terminação. Isto permite aumentar a capacidade de dispositivos da rede de 32 para 247 dispositivos. É claro que a operação confiável nesta condição não é garantida. 

O aterramento é talvez o tema menos compreendido e que causa maiores problemas na instalação de redes RS-485. Linhas de transmissão diferenciais utilizam como informação apenas a diferença de potencial existente entre os dois condutores do par trançado, independente da diferença de potencial que eles apresentam em relação ao referencial de tensão (comum ou terra). Isto permite que múltiplos sistemas se comuniquem mesmo que uma referência de potencial comum entre eles não seja estabelecida. No entanto, os circuitos eletrônicos de transmissão e recepção podem ser danificados se o par trançado apresentar um potencial excessivamente elevado em relação ao referencial (comum ou terra). A norma Tia/EIA-485 especifica que a máxima diferença de potencial entre os equipamentos da rede deve estar entre -7 Volts e +12 Volts, enquanto a norma TIA/EIA-422 especifica estes limites entre -7 Volts e +7 Volts. Diferenças de potencial acima destes limites são usuais quando múltiplos dispositivos isolados eletricamente entre si são interligados apenas pelos pares diferenciais de comunicação. A utilização de aterramento nos dispositivos, apesar de ajudar, não soluciona o problema em todas as situações, pois em uma instalação industrial típica a diferença de potencial entre aterramentos de locais afastados pode ser de muitos volts, podendo chegar a centenas de volts na ocorrência de descargas atmosféricas. A melhor solução para evitar a queima dos circuitos de comunicação é adotar um condutor adicional que interligue o comum (ou terra) de todos os dispositivos da rede. A utilização de cabo blindado é recomendada sempre que o custo mais elevado deste tipo de cabo não for problema. A utilização de cabo blindado com a malha adequadamente aterrada torna a rede mais imune a interferências externas mesmo quando o cabo é instalado próximo a fontes de ruído elétrico, como inversores de freqüência, máquinas de solda, chaves eletromagnéticas e condutores de alimentação CA. Para reduzir custos, pode ser utilizado cabo trançado sem malha de blindagem, mas este deve ser instalado separado de condutores de alimentação CA e distante de fontes de ruído elétrico. As conexões dos dispositivos são efetuadas conforme o tipo de rede que se deseja implementar: RS-422,RS-485 a dois fios ou RS-485 a quatro fios. Para a ligação dos barramentos de comunicação entre os dispositivos da rede, deve-se utilizar um cabo tipo par trançado, tendo cuidado de interconectar os terminais ”COMUM” de todos os dispositivos da rede. A bitola mínima recomendada para os condutores de comunicação é 24 AWG (0,2 mm²).