CAN significa Rede de área do controlador protocolo. É um protocolo desenvolvido por Roberto Bosch por volta de 1986. O protocolo CAN é um padrão projetado para permitir que o microcontrolador e outros dispositivos se comuniquem entre si sem qualquer computador host. A característica que torna o protocolo CAN único entre outros protocolos de comunicação é o tipo de barramento de transmissão. Aqui, transmissão significa que a informação é transmitida a todos os nós. O nó pode ser um sensor, microcontrolador ou gateway que permite ao computador se comunicar pela rede por meio de um cabo USB ou porta Ethernet. O CAN é um protocolo baseado em mensagens, o que significa que a mensagem carrega o identificador da mensagem e, com base no identificador, a prioridade é decidida. Não há necessidade de identificação de nó na rede CAN, portanto fica muito fácil inseri-lo ou excluí-lo da rede. É um tipo de protocolo de comunicação serial half-duplex e assíncrono. O CAN é um protocolo de comunicação de dois fios, pois a rede CAN é conectada através do barramento de dois fios. Os fios são pares trançados com impedância característica de 120Ω conectados em cada extremidade. Inicialmente, foi concebido principalmente para comunicação dentro dos veículos, mas agora é utilizado em muitos outros contextos. Assim como o UDS e o KWP 2000, também PODE ser usado para diagnósticos integrados.
Por que pode?
A necessidade de um protocolo de comunicação padrão centralizado surgiu devido ao aumento do número de dispositivos eletrônicos. Por exemplo, pode haver mais de 7 TCU para vários subsistemas, como painel de instrumentos, controle de transmissão, unidade de controle do motor e muitos mais em um veículo moderno. Se todos os nós estivessem conectados um a um, a velocidade da comunicação seria muito alta, mas a complexidade e o custo dos fios seriam muito altos. No exemplo acima, um único painel requer 8 conectores, portanto, para superar esse problema, o CAN foi introduzido como uma solução centralizada que requer dois fios, ou seja, CAN alto e CAN baixo. A solução de utilização do protocolo CAN é bastante eficiente devido à sua priorização de mensagens, e flexível, pois um nó pode ser inserido ou removido sem afetar a rede.
Aplicações do protocolo CAN
Inicialmente, o protocolo CAN foi projetado para solucionar problemas de comunicação que ocorrem dentro dos veículos. Mas posteriormente, pelas funcionalidades que oferece, é utilizado em diversas outras áreas. A seguir estão as aplicações do protocolo CAN:
qual é a diferença entre um megabyte e um gigabyte
- Automotivo (veículos de passeio, caminhões, ônibus)
- Equipamentos eletrônicos para aviação e navegação
- Automação industrial e controle mecânico
- Elevador e escadas rolantes
- Automação predial
- Instrumentos e equipamentos médicos
- Marinha, médica, industrial, médica
Arquitetura em camadas CAN
Como sabemos que o Modelo OSI particiona o sistema de comunicação em 7 camadas diferentes. Mas a arquitetura em camadas CAN consiste em duas camadas, ou seja,
Vamos entender ambas as camadas.
- Camada de enlace de dados: Esta camada é responsável pela transferência de dados de nó para nó. Ele permite que você estabeleça e termine a conexão. Também é responsável por detectar e corrigir os erros que possam ocorrer na camada física. A camada de enlace de dados é subdividida em duas subcamadas:
MAC: MAC significa Controle de acesso à mídia. Define como os dispositivos em uma rede obtêm acesso ao meio. Ele fornece encapsulamento e desencapsulamento de dados, detecção de erros e sinalização. - Camada física: A camada física é responsável pela transmissão de dados brutos. Ele define as especificações para parâmetros como nível de tensão, temporização, taxas de dados e conector.
As especificações CAN definem o protocolo CAN e a camada física CAN, que são definidos no padrão CAN ISO 11898. ISO 11898 tem três partes:
- ISO 11898-1: Esta parte contém a especificação da camada de enlace de dados e do enlace de sinal físico.
- ISO 11898-2: Esta parte está na camada física CAN para CAN de alta velocidade. O CAN de alta velocidade permite taxas de dados de até 1 Mbps utilizadas no trem de força e na área de carga do veículo.
- ISO 11898-3: Esta parte também está incluída na camada física CAN para CAN de baixa velocidade. Permite taxas de dados de até 125 kbps, e o CAN de baixa velocidade é utilizado onde a velocidade de comunicação não é um fator crítico.
CiA DS-102: A forma completa de CiA é CAN em Automação, que define as especificações do conector CAN.
No que diz respeito à implementação, o controlador CAN e o transceptor CAN são implementados no software com a ajuda do aplicativo, sistema operacional e funções de gerenciamento de rede.
PODE enquadrar
Vamos entender a estrutura do quadro CAN.
Agora veremos como os dados são transmitidos pela rede CAN.
Uma rede CAN consiste em vários nós CAN. No caso acima, consideramos três nós CAN e os nomeamos como nó A, nó B e nó C. O nó CAN consiste em três elementos que são fornecidos abaixo:
- Hospedar
Um host é um microcontrolador ou microprocessador que executa algum aplicativo para realizar um trabalho específico. Um host decide o que significa a mensagem recebida e qual mensagem deve ser enviada em seguida. - Controlador CAN
O controlador CAN lida com as funções de comunicação descritas pelo protocolo CAN. Também aciona a transmissão ou recepção das mensagens CAN. - Transceptor CAN
O transceptor CAN é responsável pela transmissão ou recepção dos dados no barramento CAN. Ele converte o sinal de dados no fluxo de dados coletados do barramento CAN que o controlador CAN pode entender.
No diagrama acima, um cabo de par trançado não blindado é usado para transmitir ou receber dados. Também é conhecido como barramento CAN, e o barramento CAN consiste em duas linhas, ou seja, linha CAN baixa e linha CAN alta, que também são conhecidas como CANH e CANL, respectivamente. A transmissão ocorre devido à tensão diferencial aplicada a essas linhas. O CAN usa cabo de par trançado e tensão diferencial devido ao seu ambiente. Por exemplo, em um carro, o motor, o sistema de ignição e muitos outros dispositivos podem causar perda e corrupção de dados devido ao ruído. A torção das duas linhas também reduz o campo magnético. O barramento é terminado com resistência de 120Ω em cada extremidade.
Características CAN
Usando a tensão diferencial, determinaremos como 0 e 1 são transmitidos através do barramento CAN. A figura acima é o gráfico de tensão que mostra o nível de tensão de CAN baixo e CAN alto. Na terminologia CAN, a lógica 1 é considerada recessiva, enquanto a lógica 0 é dominante. Quando a linha CAN alta e a linha CAN baixa são aplicadas com 2,5 volts, a tensão diferencial real seria zero volt. Um zero volt no barramento CAN é lido pelo transceptor CAN como recessivo ou lógico 1. Um zero volt no barramento CAN é um estado ideal do barramento. Quando a linha alta do CAN é puxada para 3,5 volts e a linha baixa do CAN é puxada para 1,5 volts, a tensão diferencial real do barramento seria de 2 volts. É tratado como um bit dominante ou 0 lógico pelo transceptor CAN. Se o estado do barramento for atingido como dominante ou lógico 0, será impossível passar para o estado recessivo por qualquer outro nó.
exemplo de formato json
Pontos-chave aprendidos com as características do CAN
- A lógica 1 é um estado recessivo. Para transmitir 1 no barramento CAN, tanto CAN alto quanto CAN baixo devem ser aplicados com 2,5V.
- A lógica 0 é um estado dominante. Para transmitir 0 no barramento CAN, o CAN alto deve ser aplicado em 3,5V e o CAN baixo deve ser aplicado em 1,5V.
- O estado ideal do barramento é recessivo.
- Se o nó atingir o estado dominante, ele não poderá voltar ao estado recessivo por qualquer outro nó.
Lógica de barramento CAN
A partir do cenário acima, ficamos sabendo que o estado dominante substitui o estado recessivo. Quando o nó envia o bit dominante e o recessivo simultaneamente, o barramento permanece dominante. O nível recessivo ocorre somente quando todos os nós enviam o bit recessivo. Essa lógica é conhecida como lógica AND e fisicamente é implementada como um circuito coletor aberto.
Princípio de comunicação CAN
Como sabemos que a mensagem é enviada com base na prioridade definida no campo de arbitragem. Para o quadro padrão, o identificador da mensagem é de 11 bits, enquanto para o quadro estendido, o identificador da mensagem é de 29 bits. Ele permite que o projetista do sistema projete o identificador da mensagem no próprio projeto. Quanto menor o identificador da mensagem, maior será a prioridade da mensagem.
Vamos entender como funciona a arbitragem através de um fluxograma.
O remetente deseja enviar a mensagem e aguarda que o barramento CAN fique ocioso. Se o barramento CAN estiver ocioso, o remetente envia o SOF ou o bit dominante para o acesso ao barramento. Em seguida, envia o bit identificador da mensagem no bit mais significativo. Se o nó detectar o bit dominante no barramento enquanto transmite o bit recessivo, significa que o nó perdeu a arbitragem e para de transmitir mais bits. O remetente irá esperar e reenviar a mensagem assim que o barramento estiver livre.
Exemplo de Arbitragem CAN
Se considerarmos três nós, ou seja, Nó 1, Nó 2 e Nó 3, os identificadores de mensagem desses nós são 0x7F3, 0x6B3 e 0x6D9, respectivamente.
A transmissão de todos os três nós com o bit mais significativo é mostrada no diagrama acima.
passagem de pré-encomenda
onzeºbit: Como todos os três bits dos nós são recessivos, o bit do barramento também permanecerá recessivo.
10ºbit: Todos os nós possuem o 10º bit como recessivo, então o barramento também permanecerá recessivo.
9ºbit: O nó 1 possui um bit recessivo enquanto outros nós possuem um bit dominante, portanto o barramento também permanecerá dominante. Nesse caso, o nó 1 perdeu a arbitragem e para de enviar bits.
8ºbit: Tanto o nó 2 quanto o nó 3 estão enviando bits recessivos, de modo que o estado do barramento permanecerá recessivo.
7ºbit: O nó 2 está enviando o bit dominante enquanto o nó 3 enviou o bit recessivo, de modo que o estado do barramento permanecerá dominante. Neste caso, o nó 3 perdeu a arbitragem, então ele para de enviar a mensagem enquanto o nó 2 ganha a arbitragem, o que significa que ele continuará segurando o barramento até que a mensagem seja recebida.