Vous êtes sur la page 1sur 25

30

- Segmento de atraso de propagação: Este segmento é responsável por fazer a


compensação do atraso que a rede proporciona no envio e recepção do sinal.

- Segmento de fase 1 e 2: Estes segmento estão localizados antes e depois,


respectivamente, do ponto de amostragem do sinal sendo responsáveis pelo
deslocamento do ponto de amostragem durante o processo de resincronização

- Amostragem do sinal: Este é o ponto em que o sinal é amostrado.

O dimensionamento dos segmentos é determinado pelas necessidades do sistema de


comunicação. Fatores como o comprimento da rede, taxa de transmissão e tempo de atraso
devem ser levados em conta no cálculo dos segmentos da rede. Uma abordagem mais
detalhada sobre a configuração da temporização do bit da rede CAN é apresentada por
[Hartwich, 1999].

Como o processo de sincronização ocorre quando tem-se uma alteração do estado


lógico, passando de nível 0 para 1, ou vice-versa, durante a mensagem, existe a
possibilidade de que pode-se ter vários bits no mesmo nível lógico, o que poderia acarretar
um erro de sincronismo. Para auxiliar no processo de sincronização foi implementado um
solução conhecida com “Bit Stuff”. Nesse processo, quando tem-se 5 bits de mesmo estado
lógico, insere-se um outro bit, de nível lógico contrário aos anteriores, fazendo assim que,
no máximo por um período de 5 bits não se terá alteração no nível lógico. Nos nós
receptores, a mensagem recebe o tratamento retirando os bits que foram incluídos na
transmissão.
29

2.6.5. Representação do bit

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.

2.6.7.Temporização e sincronização do bit

O protocolo CAN utiliza a comunicação síncrona em vez da assíncrona, o que, por um


lado permite a utilização, na transmissão de dados, de maneira mais eficiente, mas em
contrapartida leva a necessidade de utilização de métodos de sincronização do bit mais
sofisticados.
Como já visto, a característica da mensagem do protocolo CAN é a de possuir
apenas um start bit no início do mensagem, o que, geralmente não é suficiente para manter
o sincronismo do ponto de amostragem do receptor como do emissor durante toda a
mensagem. Para amenizar esse problema, utiliza-se um artifício de resincronização durante
as alterações dos pulsos de borda do frame de mensagem.
Na figura 2.22 tem-se a representação de um “BIT TIME” , com os diferentes
segmentos que o compõe:

Segmento de Segmento de Segmento Segmento


sincronização propagação de fase1 de fase2

Amostragem
do sinal
Figura 2.22 Segmentos do “BIT TIME”

Os componentes de um bit são:

- Segmento de sincronização: Durante este segmento espera-se que a sincronização


da rede ocorra através da borda de descida ou subida do bit.
28

- Circuitos integrados para aplicações específicas: estes são circuitos


integrados para aplicações específicas que já vem com as funções de
controlador CAN incorporadas.

2.6.4.2 Funções de um controlador CAN

Indiferente ao tipo de controlador CAN utilizado, ele deve implementar as funções da


primeira e segunda camada, dentre as quais pode-se destacar:

- Encapsulamento da mensagem que será transmitida;

- Disponibilizar a mensagem que foi recebida, se a mesma for do interesse do referido


nó;

- Fazer o cálculo de CRC;

- Detecção e sinalização de erros;

- Inserir e apagar os “bit stuff”;

- Gerar e detectar o bit de reconhecimento da mensagem;

- Sincronização 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

Figura 2.21 Esquema de um transceiver

2.6.4 Controlador CAN

A função dos controladores de CAN é da implementação das características


da rede, procurando atender, tanto a 1ª como a 2ª camada do padrão ISO/OSI. Assim,
como resultado, resta apenas o corpo da mensagem a ser transferida que pode ser obtida do
controlador, ou então, fornecer ao controlador a mensagem que será enviada, pois o mesmo
incorpora todas as características necessárias. Para isso existem diferentes controladores
oferecidos no mercado, que podem ser adaptados a diferentes configurações. As principais
configurações utilizadas são:

- Controladores isolados: onde os controladores são componentes isolados


fisicamente de um processador;

- Processadores com controladores integrados: Neste caso, os próprios


processadores já trazem incorporados o controlador CAN;
26

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)

Figura 2.20 Níveis de tensão da rede CAN

2.6.3 Transceiver CAN

O transceiver CAN tem a função de acoplar o controlador CAN ao


barramento. É composto por um transmissor e receptor. Serve para proteger o controlador
de eventuais curtos ou sobre-tensões da rede, além de adaptar a tensão do controlador, ao
padrão da rede. Na figura 2.21, tem-se o esquema básico de um transceiver CAN.

Além disso esses transceivers devem apresentar algumas características próprias:

- Taxa de transmissão acima de 1 Mbit/s;


- Proteção contra sobrecarga;
- Proteção contra curto-circuito para terra como para a fonte;
- Total compatibilidade com a norma ISO 11898-2
- Baixo consumo de corrente em modo de repouso.

Estas características são discutidas em maiores detalhes por [Corrigan, 2002].


25

Nó 1 Nó 2 Nó 3

CAN_H

120 Ω 120 Ω
CAN_L
d

Figura 2.19 Componentes da rede CAN

Todos os nós devem ser ligados ao barramento obedecendo especificação de saída


de seus transceivers nos terminais CAN_L e CAN_H. Cada nó é separado de outro por
uma distância d, que pode variar de poucos milímetros até dezenas de metros. Essa
distância influi diretamente como um dos aspectos limitadores da seleção de velocidade do
barramento, pois existe um tempo de propagação do sinal no barramento.

A velocidade máxima de uma rede CAN é de 1Mbit/segundo, com um cabo com


comprimento máximo de 40 metros, porque o esquema de arbitragem necessita que a onda
se propague até ao nó mais remoto e volte antes de ser amostrada.

Outros valores máximos para o comprimento dos cabos são:

- 100 metros a 500 kbits/segundo


- 200 metros a 250 kbits/segundo
- 500 metros a 125 kbits/segundo
- 6 quilômetros a 10 kbits/segundo

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

aumento de processadores que possuem controladores CAN incorporados, esta tem-se


tornado uma solução mais adequada para muitos casos;

- 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.

2.6.2 Características do meio físico

De acordo com a ISO 11898-2 estabelece algumas características da rede física,


onde os aspectos principais são:

- Taxa de transmissão acima de 1 Mbit/s


- Impedância de linha de 120 ohms
- Comprimento máximo de 40 metros com taxa de transmissão de 1 Mbit/s
- Atraso de propagação de sinal de 5 ns/m

Os dois cabos são identificados pelos nomes de CAN_H e CAN_L, conforme pode-se
observar na figura 2.19.
23

2.6.1 Configuração de um nó de um barramento CAN

Cada nó no barramento CAN é interpretado como uma estação, podendo apresentar


diferentes possibilidades.
A configuração de um sistema de rede CAN permite diferentes possibilidades, mas
na figura 2.18 tem-se um exemplo da configuração típica seguida da explicação do
funcionamento da mesma.

Processador

Controlador CAN

Transceiver

Figura 2.18 Estrutura típica de um nó da rede CAN

Pode-se identificar os seguintes componentes:

- Processador : é o processador que utiliza a mensagem que circula no barramento. É ele


que utiliza ou gera informações passando as mesmas para o controlador. Existe a
possibilidade de se eliminar os processadores utilizando-se controladores CAN conhecidos
como SLIO (Serial Linked I/O), onde a configuração e o controle é feita por um nó mestre
que obtém o acesso aos sinais de entrada/saída do nó que possui um SLIO. Mas com o
22

um bit suplementar, a seguir a 5 bits consecutivos (todos do mesmo valor) com


o valor complementar ao do conjunto dos bits.

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.

Os mecanismos descritos, apesar de eficientes e corretos podem, no entanto, no


caso de uma estação estar com problemas, levar à degradação do sistema, abortando
mensagens corretas e bloqueando o funcionamento da rede. Assim, foram implementados
novos mecanismos que permitem distinguir entre erros esporádicos e erros permanentes, e a
localização da estação avariada. Isso é conseguido com base em avaliações estatísticas da
situação das várias estações.
Tratando-se de uma questão importante, uma avaliação mais criteriosa sobre os
mecanismos de detecção de erro, sua performance e respostas no tempo são abordados em
alguns artigos, onde pode-se destacar [Charzinski , 1997] e [Punnekkat , 2000].

2.6. CAMADA FÍSICA

A camada física é responsável pela transferência de bits entre os diferentes nós da


rede. Ela define os níveis elétricos, o esquema de sincronização a impedância do cabo e a
codificação.
O barramento é composto por dois cabos, habitualmente utilizando par entrelaçado,
mas também podendo ser utilizado o par liso (fio de telefone), apesar de gerar mais ruído e
ser mais susceptível a fontes externas de ruído.
21

2.5.2. Tratamento de erros na rede CAN

Qualquer controlador que detectar algum erro na mensagem começa a transmitir


uma mensagem de erro, destruindo o tráfego da rede. Os outros nós detectam o erro e
ignoram a mensagem que vinha sendo transmitida.

A rede CAN possui cinco mecanismos de detecção de erros :

- Teste de Redundância Cíclica (CRC) : Utilizada para testar a mensagem,


verificando sua integridade;

- 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.

- Erro de Confirmação: O protocolo CAN não utiliza mensagens de confirmação.


Em vez disso, assinala os erros que ocorrem. Assim, as mensagens recebidas
corretamente são confirmadas por todos os nós que as receberam através de uma
confirmação positiva. Nenhuma estação modifica o valor recessivo do bit de
ACK. No caso de o transmissor não receber nenhuma confirmação, é gerado um
erro que pode ser devido a: os nós receptores terem identificado um erro, ao
campo ACK ter sido corrompido, ou ao fato de não existirem quaisquer outras
estações na rede.

- Erros de Monitoramento: Cada transmissor monitora a própria mensagem


comparando com aquilo que transmite com o conteúdo atual da rede.

- Erro de bit: A codificação individual dos bits é testada ao nível do bit. A


representação escolhida pelo CAN garante a máxima eficiência na codificação
dos bits, sendo as transições de sincronização geradas através da introdução de
20

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.

- Delimitador de Erro (Error Delimiter): utilizado para finalizar a mensagem de


erro, sendo composto por oito bits recessivos .

2.5.1.4 Mensagem de Sobrecarga

A mensagem de sobrecarga gera um atraso para possibilitar o processamento da


informação pelos nós. O formato da mensagem é idêntico ao da mensagem de erro, sendo
formado também por dois campos, como pode ser observado na figura 2.17

Superposição do flag de
Delimitador
Sobrecarga
de
Flag de Sobrecarga
Sobrecarga

Figura 2.17 Mensagem de sobrecarga

Os dois campos são:

- Superposição do Flag de Sobrecarga: Nesta região tem-se os seis bits


dominantes do flag de sobrecarga (Overload Flags), seguidos de bits dominantes
dos outros nós, chegando até a seis bits dominantes.

- Delimitador de Sobrecarga (Overload Delimiter): são oito bits recessivos que


marcam o final da mensagem.
19

O formato da mensagem é idêntico ao de dados, tanto para o formato padrão como o


estendido, havendo apenas dois pontos que não são comuns:

- Não existe o campo de dados;

- O bit RTR (Remote Transmission Request) é recessivo.

Na figura 2.15 tem-se a representação da mensagem remota.

Início da Campo de Campo de Campo do Campo Fim da


mensagem Identificação Controle CRC de mensagem
ACK

Figura 2.15 Mensagem remota

2.5.1.3 Mensagem Erros

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.

Superposição do flag de erro Delimitador


de Erros
Flag de erro

Figura 2.16 Mensagem de erro

Essa mensagem é formada pelos campos:

- 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 Delimiter (Delimitador ACK): Este bit é recessivo é utilizado para


indicar o fim do campo de ACK.

Na figura 2.13 tem-se a representação do campo de ACK.

ACK ACK
Slot Delimiter

Figura 2.13 Campo de ACK

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

Figura 2.14 Fim de mensagem

2.5.1.2 Mensagem Remota

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

Os mesmos 6 bits são divididos em:

- 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;

Byte 0 Byte 1 Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7

Figura 2.11 Campo de dados

e) Campo do CRC: utilizado para verificar a integridade da mensagem. É dividido em


dois campos, a seqüência CRC e o delimitador CRC, conforme demonstra a figura 2.12;

Seqüência CRC Delimitador


CRC

Figura 2.12 Campo do CRC

A seqüência CRC é formada por 15 bits e armazena o valor segundo o código de


redundância cíclica (CRC – Cyclic Redundancy Ciclic ) onde torna possível verificar a
integridade da mensagem, sendo que esse valor é comparado por cada receptor e havendo
qualquer diferença é gerada uma mensagem de erro.
O delimitador CRC é somente um bit recessivo utilizado para indicar o fim deste
campo.
16

Os 6 bits são divididos em:

- IDE (Identifier Extension): apesar da localização em campos diferentes o


objetivo é o mesmo, de informar a existência de formato estendido ou não.
Unicamente que neste caso ele é dominante.

- r0 : É um bit de reserva, sendo que este bit deve ser dominante(=0).

- DLC3...0 ( Data Lenght Code ): é um conjunto de bits utilizado para informar o


número de bytes da mensagem, válido tanto para o formato padrão como o
estendido, conforme a tabela 2.1;

Tabela 2.1. Codificação do número de bytes da mensagem


Nr Bytes DLC3 DLC2 DLC1 DLC0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0

Para a parte B tem-se a alteração somente do primeiro bit, conforme a figura 2.10

r1 r0 DLC3 DLC2 DLC1 DLC0

Figura 2.10 Campo de controle para parte B


15

Se o bit estiver em 0 a mensagem é de dados, se estiver em 1 a mensagem é


uma mensagem remota.

Para a mensagem de dados da parte B o campo de identificação encontra-se na figura 2.8.

11 bits identificadores SRR IDE 18 bits identificadores RTR

Figura 2.8 Campo de identificação da parte B

Neste padrão tem-se ao todo 29 bits identificadores, separados em dois blocos, o


primeiro, idêntico ao anterior, de 11 bits, e o segundo bloco, de 18 bits. Além dos bits
identificadores tem-se os bits:

- SRR (Substitute Remot Request): Este bit é recessivo (=1), substituindo o bit
RTR do padrão 2.0 A;

- IDE (Identifier Extension): Este bit é recessivo na parte B e serve para


identificar que a mensagem é de formato estendido.

- RTR (Remote Transmission Request): tem a mesma função que na parte 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

IDE r0 DLC3 DLC2 DLC1 DLC0

Figura 2.9 Campo de controle para parte A


14

2.5.1.1 Mensagem de Dados

Como já mencionado, a mensagem de dados possui dois tipos:


• Padrão, conhecido como 2.0 A;
• Estendido, conhecido como 2.0 B.

A mensagem de dados é composta por sete campos principais, conforme encontra-


se na figura 2.6 e descrita a seguir:

Início da Campo de Campo de Campo de Campo do Campo Fim da


mensagem Identificação Controle Dados CRC de mensagem
ACK
Figura 2.6 Campos da mensagem de dados

a) Início da mensagem: utilizado para indicar o início da mensagem, composta por um


único bit dominante ;

b) Campo de Identificação: este campo é composto pelos bits de identificação da


mensagem. A largura desse campo pode ser igual a 11 bits ( 2.0 A) ou 29 bits (2.0 B);
Na figura 2.7 encontram-se os bits que compõe o campo de identificação para a parte A.

11 bits identificadores RTR

Figura 2.7 Campo de identificação da parte A

Além dos 11 bits identificadores tem-se ainda o bit RTR:

- RTR (Remote Transmission Request): este bit serve para identificar se a


mensagem é uma mensagem de dados ou uma mensagem remota, que é uma
solicitação para receber uma determinada informação enviada à rede por um nó.
13

A camada de Enlace é o núcleo do protocolo CAN, onde ocorre o encapsulamento


/desencapsulamento da mensagem, a detecção e sinalização de erros de mensagens e
encontram-se os filtros de aceitação de mensagens, entre outras funções. Essa camada
disponibiliza à camada superior a mensagem recebida e os erros encontrados. Por sua vez
recebe da camada superior a mensagem a ser transmitida, o identificador da mensagem e o
número de bytes da mensagem.

A camada Física é responsável pela recepção/transmissão da mensagem através do


meio físico utilizado, assim como a sincronização de bit, entre outras funções.

O Supervisor faz o tratamento dos erros gerados nas duas camadas e no


barramento.

2.5. CAMADA DE ENLACE

2.5.1 Tipos de Mensagens

Para comunicação entre os diferentes nós da rede tem-se quatro tipos de mensagens:

- Mensagem de Dados: são as mensagens que enviam as informações sobre o


processo monitorado;

- Mensagem Remota: é uma solicitação de informação que um nó faz à rede. O


nó que tiver a informação irá devolver a mensagem com os dados solicitados;

- Mensagem de Erro: é um tipo de mensagem que indica que algum tipo de erro
que ocorreu;

- Mensagem de Sobrecarga: esta mensagem indica que determinado nó está


sobrecarregado de informações e não conseguiu processá-las ainda, solicitando
um atraso maior entre as transmissões.
12

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

Controle de Acesso ao Meio ( MAC )


- Encapsulamento/Desencapsulamento de
dados Contenção de
- Codificação da mensagem Erro
- Detecção e sinalização de erros
- Reconhecimento de mensagens
- Serialização/Deserialização
- Gerenciamento de Acesso ao Meio

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

Figura 2.5 Camadas da Rede CAN


11

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:

- CAL ( CAN Application Layer)


- CANOpen
- DeviceNet
- SAE J1939

Uma abordagem mais detalhada sobre as características desses protocolos é


apresentada em [Etschberger, 2001].

2.4. O PADRÃO DE COMUNICAÇÃO ISO/OSI

A comunicação de sistemas em rede utiliza uma arquitetura dividida em camadas.


Essa arquitetura levou a criação pela ISO de um modelo de referência conhecido como
Modelo de Referência ISO/OSI para Comunicação de Dados, onde a sigla OSI vem de
Open Systems Interconnection. Na figura 2.4 tem-se a representação do modelo.

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física

Figura 2.4 Modelo de camadas ISO/OSI


10

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.

Figura 2.3 . Acesso de um nó a rede

Existem dois formatos de mensagem da Rede CAN, um é conhecido como parte A,


que é a versão 2.0 A , e a outra, conhecida como parte B, que é a versão 2.0 B. A principal
diferença é que a versão 2.0 A utiliza 11 bits identificadores de mensagem, enquanto a
versão 2.0 B utiliza 29 bits identificadores, permitindo um número muito maior de tipos de
mensagens que podem ser transmitidas. Cabe ao projetista analisar a necessidade de
utilização de uma ou outra.

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

No exemplo de utilização da rede CAN em um automóvel serão considerados três


sub-sistemas independentes: o medidor de velocidade do automóvel (Nó A), da temperatura
do motor (Nó B) e o controlador do motor (Nó C). O medidor de velocidade informa a rede
constantemente a velocidade atual do motor, sendo que esta mensagem ocupa o barramento
e está disponível para todos os sub-sistemas conectados ao barramento. Através da
filtragem, a mensagem somente é aceita pelo sub-sistema que utiliza a informação, neste
caso o controlador do motor. Ainda acoplado a esta rede está o medidor de temperatura do
motor, que envia para o barramento a informação da temperatura, e como essa informação
somente interessa ao controlador do motor, a mesma somente é aceita por este dispositivo.

Quando são transmitidos dados na CAN, nenhum nó é endereçado diretamente,


sendo o conteúdo da mensagem definido por um identificador único em toda a rede que
estabelece a prioridade da mensagem.

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

Estes componentes básicos são:

Módulo eletrônico: Consiste de um sub-sistema responsável pela aquisição do sinal


local desejado, como leitura de sensores, e enviar o dado através da rede. Este módulo pode
ou não ser microprocessado, contendo ainda um controlador CAN, que é um chip que
implementa efetivamente a norma para condicionamento do dado e um transceiver, que é
um chip transmissor/receptor para adequar o sinal digital para os níveis elétricos adequados
à rede. Este conjunto de componentes, ou módulo, é conhecido como um NÓ da rede CAN;
Cabo: este cabo é o meio físico para o transporte de dados, sendo geralmente
utilizado um cabo entrelaçado, apesar da norma não especificar o meio físico, pois pode ser
utilizado qualquer outro meio, como por exemplo, um cabo de fibra ótica;
Resistores terminais: estes são resistores colocados no final na rede para satisfazer
a adequação da rede quanto a sua especificação elétrica.

2.3.1. Princípio de funcionamento da rede CAN

Para tornar mais fácil o entendimento do funcionamento da rede CAN será


abordado um exemplo simples de sua utilização no automóvel, que se encontra na figura
2.2.
Error!
Sensor de Sensor de
Velocidade Temperatura Controlador
( RPM ) (oC ) do Motor

Nó A Nó B Nó C
Mensagem: Mensagem: Mensagem:
o o
RPM C C, RPM

Figura 2.2. Princípio de funcionamento da rede CAN


7

• 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.

2.3. ESTRUTURA DA REDE CAN

A rede CAN é um barramento serial multi-mestre que usa transmissores para


enviar para todos os nós da CAN, podendo alcançar a velocidade de transmissão de dados
de até 1Mbit/s. Além do mais, possui um sistema de detecção de erros muito sofisticado e
robusto [Bosch, 1991].
Os componentes básicos de uma rede CAN encontram-se na figura 2.1.
Módulo Módulo
Eletrônico Eletrônico
A B

Rt Rt

Figura 2.1 Componentes da rede CAN


CAPÍTULO 2

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

A aplicação crescente de sistemas eletrônicos na indústria automobilística


proporcionou o surgimento de sistemas especialistas divididos em módulos, em diferentes
partes do automóvel. Mas, em virtude disso, geralmente havia uma necessidade comum, a
da comunicação de informações obtidas nos diferentes módulos, como por exemplo de
sensores de velocidade e temperatura para outros módulos, não necessariamente próximos
aos anteriores. A primeira solução adotada foi a do acréscimo de um número cada vez
maior de cabos interligando os diferentes módulos. Uma segunda alternativa foi o do
desenvolvimento de uma rede que possibilita-se a comunicação entre os módulos, de forma
rápida e segura.

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:

Vous aimerez peut-être aussi