Rede CAN
Conceitos e
Aplicações
Prof. André Márcio de Lima Curvello
contato@andrecurvello.com.br
Sobre mim
André Márcio de Lima Curvello
▸ Engenheiro de Computação – USP São Carlos
▸ MBA em Gestão de TI - UNIFRAN
▸ Mestrado em Processamento de Sinais e
Instrumentação – USP São Carlos
▸ Articulista do Portal Embarcados
“O homem ainda é o computador
mais extraordinário de todos.
John F. Kennedy
1.
O que é CAN?
Uma breve
introdução
Controller Area Network
▸ Protocolo multi-mestre
▸ Broadcast
▸ Comunicação serial
▸ Baseado em mensagens
▸ Sem “endereços”
▹ IDs
▹ Mensagens
Controller Area Network
▸ Desenvolvido pela Bosch para redes de
comunicação veiculares na década de 80
▸ Publicado em 1986 na SAE
▸ Troca de mensagens entre ECUs
▹ Electronic Control Unit
▸ Robusto em ambientes com ruído!
▸ Baixo custo
Antes…
Fonte: http://www.slideshare.net/abhinawambitious
Depois!
Fonte: http://www.slideshare.net/abhinawambitious
Um padrão de
Comunicação
Compatibilidade, equipamentos, módulos
REDE
▸ Automotivo
▸ Militar
▸ Maquinário Industrial
▸ Maquinário Agrícola
▸ Controle de Elevadores
▸ Sistemas Médicos
▸ Etc
Áreas de Aplicação
Estrutura-base de uma ECU CAN
Fonte: http://www.ti.com
Topologia de uma Rede CAN
E esse Transceiver?
E esse Transceiver?
SN65HVD230
Características da Rede CAN
▸ Todas as mensagens são broadcast
▸ Cada nó pode transmitir mensagens
▸ Cada mensagem possui uma ID que
identifica fonte ou conteúdo da mensagem
▸ Cada receptor decide processar ou ignorar
a mensagem
Uma transmissão COMPARADA
Como são os SINAIS da Rede CAN
Como são os SINAIS da Rede CAN
Um processo de ARBITRAGEM
Fonte: http://www.ti.com
2 Padrões ISO para sistemas com comunicação CAN:
▸ ISO 11898-3
▹ Baixa velocidade – 125 kb/s
▹ Distância de até 500 m
▸ ISO 11898-2
▹ Alta velocidade – 1 Mb/s
▹ Distância de até 40 m
Pacotes de INFORMAÇÃO
Standard CAN – Versão 2.0A
▸ ID de 11 bit
▸ 2048 ids diferentes!
Pacotes de INFORMAÇÃO
Extended CAN – Versão 2.0B
▸ ID de 29 bits
▸ 11 bit - identificador – base
▸ 18 bit – extensão
▸ 537 milhões de ids
Pacotes de INFORMAÇÃO
Pacotes de INFORMAÇÃO
Padrões de Rede CAN
▸ NMEA 2000 – Utilizado em aplicações navais e aéreas
▸ SAE J1939 - Utilizado em aplicações automotivas,
especialmente caminhões.
▸ DIN 9684 – Utilizado em Aplicações Agrícolas
▸ ISO 11783 – Utilizado em aplicações agrícolas - ISOBUS
Kit de Aprendizado
Fonte: http://www.ingendi.de
Shield Arduino
▸ Arduino R3
▸ Controller CAN
▹ MCP2515 - SPI
▸ Transceiver CAN
▹ MCP2551
Arduino Due
▸ AT91SAM3X8E
▸ ARM Cortex M3
▸ 84 MHz
▸ Controller CAN
+Transceiver!
BeagleBone Black
▸AM335x 1GHz ARM®
Cortex-A8
▸2x PRU 32-bit
microcontrollers
▸Controller CAN
+Transceiver
Renesas RX63N
▸ RX63N
▸ Controller CAN
▸ Transceiver CAN
(Kit de Desenvolvimento)
Vybrid VF61
▸ CPU Cortex A5 - 500MHz
Híbrido com Cortex-M4 -
167MHz
▸ Controller CAN
+Transceiver CAN
Desenvolvimento com CAN
▸ Bare-metal
▸ API do Fabricante
▸ Conhecimento de Registradores e Configurações de
Periféricos Associados
▸ Linux Embarcado
▸ SocketCAN – Volkswagen Research
▸ Camada de Driver
▸ Trabalha como “socket” de conexão
+ can-utils!
Hora de fazer a Demonstração!
Módulo
Conexões
Execução
Transceiver
Obrigado!
Perguntas?
Contato
@andremlcurvello
http://youtube.com/profandrecurvello
http://andrecurvello.com.br
contato@andrecurvello.com.br
http://facebook.com/profandrecurvello

TDC2016SP - Trilha Embarcados