Você está na página 1de 26

Redes de DISPOSITIVOS

CAN - Controller Area Network


Prof. Ralf Moura, MSc
PMP, PRINCE2, COBIT, CTAL-TM, IS20F, ISFS, ITIL, MOF, CTFL, CPRE-FL, CCF, CI-SCS, MCP
CAN - Controller Area Network
• O CAN Bus (ou Controller Area Network) foi desenvolvido pela empresa
alemã BOSCH e disponibilizado em meados dos anos 80.
• Sua aplicação inicial foi realizada em ônibus e caminhões. Atualmente, é
utilizado na indústria, em veículos automotivos, navios e tratores, entre
outros.
• Por ser uma rede de baixo custo, atuação eficiente em ambientes ruidosos
e oferece os requisitos para controlar sistemas distribuídos em tempo
real, ela é utilizada em áreas da engenharia que necessitam de
monitoração e controle.
CAN - Controller Area Network
• Esse protocolo tornou-se um padrão internacional e está documentado na ISO11898
(para aplicações em alta velocidade) e ISO11519 (para aplicações em baixa
velocidade).
• Trabalha baseado no conceito multi-mestre, onde todos os módulos podem se tornar
mestre em determinado momento e escravo em outro, além de suas mensagens
serem enviadas em regime multicast, caracterizado pelo envio de toda e qualquer
mensagem para todos os módulos existentes na rede.
• Ele tem base na técnica CSMA/CR (Carrier Sense Multiple Access/Collision Resolution),
às vezes chamado de CSMA/CD + AMP (Carrier Sense Multiple Access/Collision
Detection and Arbitration on Message Priority) ou CSMA/NBA (Carrier Sense Multiple
Access / Collision Detection with Non-Destructive Arbitration), para acesso ao meio de
transmissão.
CAN – Mensagens MultiCast
CAN - Características
• CAN é um protocolo de comunicações serial síncrono utilizado em
aplicações onde se deseja controlar sistemas distribuídos em tempo
real com um alto nível de confiabilidade das informações.
• O sincronismo entre os módulos conectados a rede é feito em relação
ao início de cada mensagem lançada ao barramento (evento que
ocorre em intervalos de tempo conhecidos e regulares).
CAN - Controller Area Network
• O protocolo CAN utiliza das camadas do modelo OSI apenas a camada de enlace de
dados e parte da camada física e a subcamada PLS (Physical Signaling), deste modelo.
• O restante da camada física, as subcamadas PMA (Physical Medium Signaling) e a MDI
(Medium Dependent Interface), e as outras camadas não são definidos pela
especificação CAN, mas elas podem ser definidas pelo projetista do sistema.
CAN - OSI
CAN -Características
• As mensagens são caracterizadas por identificadores únicos, que podem ser de 11 ou
29 bits (estendido), e que também determinam a prioridade intrínseca da mensagem
ao competir com outras pelo acesso ao barramento.
• Elas possuem comprimento de dados de até 8 bytes de informação útil que podem
ser transmitidas a uma taxa de até 1 Mbps utilizando um protocolo de arbitragem e
mecanismo de detecção e sinalização de erros que proporcionam a integridade das
informações transmitidas.
• A taxa de transmissão depende do comprimento do barramento. A taxa máxima
especificada é de 1 Mbps em sistemas com barramento de comprimento de até 30 m.
• Se a distância do barramento for superior a 1 km pode ser necessária à utilização de
dispositivos repetidores ou pontes para reforçar o sinal elétrico.
CAN – Controle de Acesso ao Meio
• CAN é uma rede CSMA/NBA (Carrier Sense Multiple Access / Collision Detection
with Non-Destructive Arbitration), isto é, todos os módulos verificam o estado do
barramento, analisando se outro módulo está ou não enviando mensagens com
maior prioridade.
• Caso isto seja percebido, o módulo cuja mensagem tiver menor prioridade cessará
sua transmissão e o de maior prioridade continuará enviando sua mensagem deste
ponto, sem ter que reiniciá-la.
CAN – Controle de Acesso ao Meio
CAN – Detecção de Falhas
• Algumas das maiores vantagens do CAN é a sua robustez e a capacidade de se adaptar às
condições de falha, temporárias e/ou permanentes.
• Podemos classificar as falhas de uma rede CAN em três categorias ou níveis: Nível de Bit, Nível de
Mensagem e Nível Físico.
CAN – Detecção de Falhas
• Nível de Bit – Possui dois tipos de erro possíveis:
• Bit Monitoring: Após a escrita de um bit dominante, o módulo
transmissor verifica o estado do barramento.
• Se o bit lido for recessivo, significará que existe um erro no barramento.
• Bit Stuffing: Apenas cinco bits consecutivos podem ter o mesmo valor
(dominante ou recessivo).
• Caso seja necessário transmitir sequencialmente seis ou mais bits de mesmo valor,
o módulo transmissor inserirá, imediatamente após cada grupo de cinco bits
consecutivos iguais, um bit de valor contrário.
• O módulo receptor ficará encarregado de, durante a leitura, retirar este bit,
chamado de Stuff Bit. Caso uma mensagem seja recebida com pelo menos seis bits
consecutivos iguais, algo de errado terá ocorrido no barramento.
CAN – Detecção de Falhas
• Nível de Mensagem – São três os tipos de erro
possíveis:
• CRC ou Cyclic Redundancy Check: Funciona como um checksum.
• O módulo transmissor calcula um valor em função dos bits da
mensagem e o transmite juntamente com ela.
• Os módulos receptores recalculam este CRC e verificam se este é
igual ao transmitido com a mensagem.
CAN – Detecção de Falhas

• Frame Check: Os módulos receptores analisam o conteúdo de alguns bits da mensagem recebida.
• Estes bits (seus valores) não mudam de mensagem para mensagem e são determinados pelo padrão CAN.

• Acknowledgment Error Check: Os módulos receptores respondem a cada mensagem íntegra


recebida, escrevendo um bit dominante no campo ACK de uma mensagem resposta que é enviada
ao módulo transmissor.
• Caso esta mensagem resposta não seja recebida (pelo transmissor original da mensagem), significará que,
ou a mensagem de dados transmitida estava corrompida, ou nenhum módulo a recebeu.

• Toda e qualquer falha mencionada, quando detectada por um ou mais módulos receptores, fará
com que estes coloquem uma mensagem de erro no barramento, avisando toda a rede de que
aquela mensagem continha um erro e que o transmissor deverá reenviá-la.
Camada Física

• Considerando-se fios elétricos como o meio de transmissão dos dados,


existem três formas de se constituir um barramento CAN, dependentes
diretamente da quantidade de fios utilizada.
• Existem redes baseadas em 1, 2 e 4 fios. As redes com 2 e 4 fios trabalham
com os sinais de dados CAN_H (CAN High) e CAN_L (CAN Low).
• No caso dos barramentos com 4 fios, além dos sinais de dados, um fio com
o VCC (alimentação) e outro com o GND (referência) fazem parte do
barramento, levando a alimentação às duas terminações ativas da rede.
• As redes com apenas 1 fio têm este, o fio de dados, chamado
exclusivamente de linha CAN.
CAN – Camada Física – Detecção de Falhas
• Nível Físico – Para os barramentos com 2 e 4 fios, caso algo de
errado venha a ocorrer com os fios de dados CAN_H e CAN_L, a rede
continuará operando sob uma espécie de modo de segurança.
• Seguem abaixo algumas das condições de falha nas linhas de comunicação que
permitem a continuidade das atividades da rede:
• Curto do CAN_H (ou CAN_L) para GND (ou VCC);
• Curto entre os fios de dados CAN_H e CAN_L;
• Ruptura do CAN_H (ou CAN_L);
CAN - Controller Area Network
• CAN (Controller Area Networks)
• Utilização e configuração simples (JPI – Just Plug In)
• Uso de par trançado (blindado ou não) ou fibra ótica
• Máx: 20 nós ou 30 nós
• Transmissão de 125kbit/s ou 1Mbit/s (Depende o comprimento do cabo)
• Detecção de erros extremamente eficaz
• Confiável e robusta em diversas situações
CAN – Formato da Mensagem
• Start Of Frame (SOF) – Bit de inicio de mensagem
• Arbitration field – Identificador de 11 bits, define a
prioridade da mensagem, menor valor binário maior
prioridade.
• Remote Transmission Request (RTR) – bit usado para
distinguir entre um frame de dados e um frame de
requisição;
• IDentifier Extension (IDE)- Distingue um frame base ou um
frame estendido
• Data Length Code (DLC) – Número de bytes no campo de
dados;
• Data field – Dados até 8 bytes;
• Cyclic Redundant Check (CRC) – Detecção de erros;
• ACKnowledge (ACK) - o receptor escreve um bit
dominante que indica que a mensagem foi recebida.
• End Of Frame (EOF) – Fim de mensagem;
• Intermission Frame Space (IFS): contém a quantidade de
tempo requerido pelo controlador CAN para mover um
Frame corretamente recebido para uma área de
armazenamento de mensagem.
CAN – Sinalização física
CAN
• CAN despertou muito interesse devido algumas de suas características:
• Base no conceito broadcast;
• Arbitragem não destrutiva;
• Mensagens de dados pequenas;
• Sem endereço explícito;
• Elaborado esquema de tratamento de erros;
• Vários meios físicos; (pode ser escolhido de acordo coma conveniência);
• Capacidade multimestre e multicast;
• Flexível;
• Custo baixo, etc...
CAN para automação Industrial
• Protocolos baseados no CAN:
• J1939
• Volcano

• CAN possui basicamente dois tipos de redes industriais:


• CANopen
• Devicenet
CANopen
• A rede CANopen é uma rede baseada em CAN, o que significa dizer que ela utiliza telegramas
CAN para troca de dados na rede.
• Foi pré-desenvolvida em um projeto Espirit da Bosh;
• Em 1995 sua especificação foi passada para a CAN in Automation; http://www.can-cia.org/
CANopen
• Por utilizar um barramento CAN como forma de transmissão de telegramas, todos
os dispositivos da rede CANopen têm os mesmos direitos de acesso à rede, onde a
prioridade do identificador é responsável por resolver problemas de conflito
quando acessos simultâneos ocorrem;
• Possibilita a comunicação direta entre escravos da rede, além do fato de que os
dados podem ser disponibilizados de maneira mais otimizada, sem a necessidade de
um mestre que controle toda a comunicação;
CANopen
• Outra característica importante é a utilização do modelo produtor /
consumidor para a transmissão de dados.
• Uma mensagem que trafega na rede não possui um endereço fixo na rede como destino.
• A mensagem possui um identificador que indica qual o dado que ela está transportando.
• Qualquer elemento da rede que necessite utilizar desta informação para a sua lógica de
operação, poderá consumi-la, e portanto uma mesma mensagem pode ser utilizada por
vários elementos da rede ao mesmo tempo.
CANopen – Meio Físico
• O meio físico para a transmissão de sinais em uma rede CANopen é especificado pela norma ISO 11898.
• Define como barramento de transmissão um par trançado com sinal elétrico diferencial.
• O componente responsável pela transmissão e recepção de sinais é denominado transceiver, que obedece
ao especificado pela ISO 11898;
CANopen

Você também pode gostar