Académique Documents
Professionnel Documents
Culture Documents
As mensagens da rede CAN são enviadas por uma seqüência de bits. Assim, a menor
unidade da rede é o bit. E para representá-lo utiliza-se um método conhecido como NRZ
(Non-Return-to-Zero ), onde o nível lógico do bit permanece o mesmo, seja nível lógico 0
ou 1, durante todo o tempo de um bit. Ou seja, durante o intervalo de tempo destinado para
um bit não tem-se a variação do nível lógico.
Amostragem
do sinal
Figura 2.22 Segmentos do “BIT TIME”
Além disso, uma outra característica relevante no controlador CAN é a filtragem das
mensagens, visto que todas as mensagens do barramento estão acessíveis a todos os nós,
mas não necessariamente interessa aos mesmos. Assim, um processo de filtragem das
mensagens é muito importante.
27
Controlador
CAN
Transceiver
CAN_H
120 Ω 120 Ω
CAN_L
no caso do nível lógico 0 (dominante) o terminal CAN_H estará com 3,5 volts e o terminal
CAN_L estará com 1,5 volts, conforme tem-se na figura 2.20
4 - 3,5 CAN H
3 - 2,5
2 - 1,5
CAN L
1 -
Recessivo Dominante Recessivo
(lógica 1) (lógica 0) (lógica 1)
Nó 1 Nó 2 Nó 3
CAN_H
120 Ω 120 Ω
CAN_L
d
A faixa de variação da tensão nos nós é de 1,5 até 3,5 volts. Para que ocorra o nível
lógico 1 (recessivo) os dois nós estarão com a tensão igual a aproximadamente 2,5 volts, e
24
- Controlador CAN: O controlador CAN é que faz a filtragem das mensagens que circulam
pelo barramento, verifica erros, formata a mensagem do processador de acordo com o
padrão CAN. O tratamento das informações é feito neste módulo, ficando reservado para
CPU somente o tratamento da informação;
- Transceiver da CAN: Sua principal função é a adaptação do sinal digital para os padrões
da rede;
- Meio físico: Composto, neste caso, por dois fios trançados com resistores terminais no
final de cada ponta do cabo. O meio físico não é especificado pela norma pois depende da
tecnologia existente.
Os dois cabos são identificados pelos nomes de CAN_H e CAN_L, conforme pode-se
observar na figura 2.19.
23
Processador
Controlador CAN
Transceiver
Se um, ou mais, erros forem descobertos por pelo menos uma estação usando os
mecanismos acima descritos, a transmissão atual é abortada e é enviada uma mensagem de
erro. Isso impede que outras estações aceitem uma mensagem errada e garante a
consistência dos dados ao longo de toda a rede.
Depois da transmissão de uma mensagem errada ter sido abortada, o emissor tenta
re-transmitir automaticamente a mensagem. No entanto, pode haver competição pela
alocação da rede. Como regra geral, a emissão começa 23 períodos de bit depois da
detecção.
- Teste da Mensagem: Através de alguns bits que tem que assumir determinados
estados, recessivos ou dominantes, assim podendo-se verificar se a estrutura da
mensagem esta correta. Este tipo de erro é denominado de erro de formato.
recessivos , neste caso chamado de Flag de Erro passivo. Depois dos primeiros
seis bits enviados pelo nó que identificou o erro, os demais nós identificam um
erro de “ bit stuff” , pois seis bits consecutivos de mesmo nível lógico acabam
por provocar este erro nos demais nós. No segundo intervalo os outros nós
escrevem a mensagem de erro, podendo assim esta mensagem completar os
doze bits.
Superposição do flag de
Delimitador
Sobrecarga
de
Flag de Sobrecarga
Sobrecarga
Sempre que for detectada alguma falha na integridade da mensagem, é gerada uma
mensagem de erro. Essa mensagem consiste de dois campos, um denominado de
Superposição do Flag de Erro e o outro campo denominado de Delimitador de Erro (Error
Delimiter) , conforme pode ser observado na figura 2.16.
- Flag de Erro (Error Flag): que é composto por seis bits consecutivos
dominantes, neste caso chamado como Flag de Erro Ativo, ou de seis bits
18
f) Campo ACK (Acknowledge) : Este campo é utilizado pelas unidades receptoras para
indicar que uma mensagem foi recebida. Ele é composto por dois bits:
- ACK Slot : Este bit é enviado recessivo(=1) pelo transmissor. Qualquer receptor
que confirmar o recebimento de uma mensagem irá alterar este bit para
dominante(=0).
ACK ACK
Slot Delimiter
g) Fim da mensagem: utilizado para indicar o final da mensagem, composta por sete bits
recessivos, conforme demonstra a figura 2.14.
Fim de Mensagem
Utilizada para solicitar alguma informação, ou seja, quando algum módulo necessita
determinada informação, ele faz uma solicitação ao barramento e assim o sistema que tiver
a informação envia para o barramento.
17
- r0 e r1 : São bits de reserva, sendo que estes bit devem ser dominantes(=0).
- DLC3...0 (Data Lenght Code): é o conjunto de bits utilizado para informar o
número de bytes da mensagem, e a tabela 1 também é válida para esse formato.
d) Campo de Dados: consiste dos dados que serão transmitidos, podendo variar entre zero
e até oito bytes. A ordem de transmissão geralmente é crescente, como na figura 2.11, mas
através de alteração de parâmetros de determinados controladores é possível alterar essa
seqüência;
Para a parte B tem-se a alteração somente do primeiro bit, conforme a figura 2.10
- SRR (Substitute Remot Request): Este bit é recessivo (=1), substituindo o bit
RTR do padrão 2.0 A;
c) Campo de Controle: é composto por seis bits, utilizado para informar o número de
bytes da mensagem.
Para a parte A tem-se a representação do bytes de controle na figura 2.9
Para comunicação entre os diferentes nós da rede tem-se quatro tipos de mensagens:
- Mensagem de Erro: é um tipo de mensagem que indica que algum tipo de erro
que ocorreu;
Nesse modelo cada camada fornece serviço à camada superior. A vantagem disso é
que a camada superior não precisa se preocupar em conhecer os detalhes da camada
anterior.
O protocolo de comunicação CAN trabalha nas duas camadas inferiores, a de
Enlace e a Física. Na especificação inicial, a mídia de transmissão foi deixada de fora para
permitir uma maior flexibilidade para os usuários escolherem entre as diferentes
tecnologias disponíveis, seja par trançado, coaxial, fibra ótica ou rádio freqüência.
Cada camada possui uma série de serviços que são responsáveis pela adequação da
mensagem para os níveis posteriores. Na figura 2.5, tem-se um maior detalhamento das
funções de cada camada.
Camada de Enlace
Controle Lógico do Enlace ( LLC )
- Filtragem de mensagens
- Notificação de sobrecarga Supervisor
- Gerenciamento de restabelecimento
Camada Física
- Codificação/Decodificação de Bits
Gerenciamento
- Sincronização/Temporização de Bits
de Falha do
- Características do Driver de
Barramento
Recepção/Transmissão
Company, 2001], para aqueles que desejam fornecer equipamentos para serem
incorporados aos seus próprios veículos.
Por tratar apenas das duas camadas inferiores a rede CAN possibilitou o surgimento
de outras plataformas que foram desenvolvidas com diferentes finalidades, utilizando
geralmente a camada de aplicação. Dentre as mais conhecidas pode-se ressaltar:
Aplicação
Apresentação
Sessão
Transporte
Rede
Enlace
Física
esteja livre novamente. Mesmo não obtendo o acesso à rede, a mensagem não é destruída,
permanecendo armazenada até a possibilidade de envio. Na figura 2.3 encontra-se um
exemplo do instante em que três nós tentam o acesso à rede. A medida que um dos nós
envia um bit recessivo ele deixa de enviar para se tornar um ouvinte.
A norma original deu origem à norma ISO 11898 parte 1, ou simplesmente, ISO
11898-1. Como essa norma não especifica o meio de comunicação, podem haver
problemas para a conexão de dispositivos de diferentes sistemas. A ISO ( International
Standardization Organization) em conjunto com a SAE (Society of Automotive Engineers)
definiram alguns protocolos adicionais, onde além de outros parâmetros, incluem a
definição do meio de transmissão, assim como também a velocidade de transmissão. Os
fabricantes de veículos fazem a especificação das características, como, por exemplo [Ford
9
Se um nó decide enviar uma mensagem, tudo o que tem que fazer é fazer a coleta
dos dados e enviá-los para o controlador CAN, do próprio nó, onde então a mensagem é
construída e enviada ao barramento, logo que lhe for autorizado o acesso ao mesmo.
Quando este nó tiver o controle da rede, todos os outros nós tornam-se receptores da
mensagem. Cada nó da rede, depois de ter recebido a mensagem, faz um teste de validação
para verificar se o conteúdo da mensagem lhe interessa, nesse caso processando-os, caso
contrário serão descartados. Existe a possibilidade de que cada nó aplique filtros de
mensagens, onde um ou mais bits dos identificadores de mensagens são mascarados, ou
seja, são desconsiderados no teste de validação, possibilitando que determinado nó receba
um grupo de mensagens.
Os conflitos de acesso à rede são resolvidos através da arbitragem bit a bit dos
identificadores das mensagens. Cada estação observa bit a bit a rede, em que o estado
dominante (0 lógico) se sobrepõe ao estado recessivo (1 lógico). A competição pela
alocação da rede é perdida por todas as estações que queiram enviar um bit recessivo, em
favor das que queiram transmitir um bit dominante. Além disso, toda estação que perde o
acesso a rede torna-se receptora e não faz mais nenhuma tentativa de envio até que a rede
8
Nó A Nó B Nó C
Mensagem: Mensagem: Mensagem:
o o
RPM C C, RPM
• Fujitsu
• Hitachi
• Intel
• Mitsubishi
• National semicondutros
• NEC
• Philips Semiconductors
• SGS Thomson
• Infineon
• Texas Instruments
Em 1991 a Bosch publicou uma alteração da norma [Bosch, 1991] onde foi incluída
uma segunda parte, conhecida como parte B. Em 1993, a rede CAN tornou-se padrão ISO
11898 , com a primeira modificação ocorrendo em 1995.
Rt Rt
REDE CAN
2.1. INTRODUÇÃO
Neste capítulo serão abordados os principais aspectos da rede CAN, como os tipos e
formato de mensagens existentes, principais características elétricas e mecanismos de
detecção de erro e definição de prioridade de mensagens.
2.2. HISTÓRICO
Neste contexto surgiu a rede CAN. Ela foi desenvolvida pela empresa Robert Bosch
GmbH, na Alemanha, em 1986, quando se necessitava desenvolver um sistema de
comunicação entre três unidades de controle eletrônico para um veículo da Mercedes Benz.
O primeiro chip controlador CAN foi fabricado em 1987 pela Intel. Atualmente
existem diversos fabricantes de chip de CAN, sendo que os principais são: