Você está na página 1de 8

PROJETO E IMPLEMENTAO DE UM BARRAMENTO CAN PARA SUPORTE...

PROJETO E IMPLEMENTAO DE UM
BARRAMENTO CAN PARA SUPORTE AO
DESENVOLVIMENTO DE SISTEMAS DE
AUTOMAO PARA MQUINAS AGRCOLAS
Ricardo Y. Inamasu
Embrapa Instrumentao Agropecuria, R. XV de Novembro, 1452,
CEP 13560-970, So Carlos-SP, e-mail: ricardo@cnpdia.embrapa.br

Rafael V. de Sousa
Depto. Eng. Mecnica, EESC-USP, Av. Trabalhador So-carlense, 400,
CEP 13566-590, e-mail: rafael@cnpdia.embrapa.br

Resumo
Padronizaes internacionais baseadas no protocolo de comunicao digital serial CAN (Controller Area Network) tm
sido elaboradas e adotadas em aplicaes agrcolas para integrao de dispositivos de automao e controle. Destacam-se
os esforos das associaes de normas, empresas e instituies de pesquisa nacionais e internacionais no sentido de
desenvolver e promover a implementao da norma ISO 11783, baseada no CAN, como um padro para comunicao
digital entre dispositivos eletrnicos em mquinas e implementos agrcolas. Sob esse contexto, este trabalho apresenta o
projeto e a implementao de um barramento CAN para suporte ao desenvolvimento de dispositivos e protocolos de alto
nvel para sistemas de automao de mquinas e implementos agrcolas baseados na norma ISO 11783.
Palavras-chave: protocolo CAN, automao de mquinas agrcolas, ISO 11783.

Introduo
Nas ltimas dcadas, tem-se verificado um avano
vertiginoso da informtica e da automao em diversas
reas, incluindo a rea agrcola. Entretanto, o aumento
do nmero de programas computacionais e de dispositivos
eletrnicos presentes nesses sistemas conduz busca pela
compatibilidade e integrao de tais programas e dispositivos.
Uma tendncia verificada para suprir essa necessidade
em mquinas e implementos agrcolas tem sido a adoo
de padres baseados no protocolo de comunicao digital
serial Controller Area Network CAN (Hofstee & Goense,
1999; Stone et al., 1999; Auernhammer, 2001).
O protocolo CAN foi desenvolvido sob os conceitos
de Fieldbus (rede de campo), na dcada de 1980, por
Bosch GmbH (Bosch, 1991) para promover a interconexo
entre dispositivos de controle em automveis, mas em
poucos anos essa tecnologia migrou para outras reas para
integrar dispositivos de campo e em sistemas embarcados
(Barbosa et al., 1999). A importncia do CAN na rea
agrcola observvel pelos esforos para desenvolver
padronizaes internacionais para aplicaes em mquinas
e implementos agrcolas (Munack & Speckmann, 2001).
Stone (1997) apresenta um histrico do desenvolvimento
dessas normas e relata a unio de esforos entre instituies
de pesquisa, empresas e da associao de normas interna-

cionais ISO (International Organization for Standardization)


para desenvolvimento de uma norma internacional
denominada ISO 11783.
O propsito da norma ISO 11783 prover um padro
aberto para interconexo de sistemas eletrnicos embarcveis
atravs de um barramento, que, por sua vez, um conjunto
formado por fios, conectores, transceptores e dispositivos
de potncia para promover a interconexo de dispositivos
e permitir a comunicao de dados entre estes.
Na rea agrcola do Brasil, o emprego de redes
baseadas em tais padres em mquinas agrcolas ainda
restrito a produtos importados. Trabalhos de pesquisa tm
sido realizados no sentido de contribuir com os esforos
internacionais para desenvolvimento e implementao da
ISO 11783 e para contribuir com a assimilao dessa
tecnologia por instituies e empresas nacionais para que
haja possibilidade de competio com produtos importados
(Strauss, 2001; Sousa, 2002; Guimares, 2003; Silvia,
2003).
Diante das necessidades notadas, foi desenvolvido
e montado em laboratrio um barramento CAN, baseandose em especificaes de camadas fsica e de enlace de
dados da norma ISO 11783 para dar suporte ao desenvolvimento de sistemas de automao para mquinas e

Minerva, 1(1): 1-6

INAMASU & SOUSA

implementos agrcolas por meio de projeto posterior e


implementao de dispositivos e de protocolos de alto
nvel. Para isso, foi realizada pesquisa em diversas fontes
de informao sobre as tecnologias empregadas por esses
padres, sendo implementada uma interface-padro para
permitir a conexo de diferentes famlias de dispositivos
ao barramento CAN. As sees a seguir apresentam a
sistematizao de informaes, o desenvolvimento da
interface-padro e a implementao de barramentos.

O Protocolo CAN e os Protocolos de


Alto Nvel
O protocolo CAN, como desenvolvido por Robert
Bosch GmbH, foi padronizado e documentado internacionalmente pela ISO, gerando a norma ISO 11898, para
aplicaes de alta velocidade, e a norma ISO 11519,
para aplicaes de baixa velocidade. Esses padres
apresentam camada fsica e camada de enlace de dados
em acordo com o modelo OSI (Open Systems Interconnection).
As camadas acima da camada de enlace de dados no
so definidas pelas normas ISO 11898 e ISO 11519, ficando
abertas para que cada usurio ou grupo de usurios desenvolva
o prprio padro, com base em protocolos de camadas
superiores, denominados Protocolos de Alto Nvel, com
especificaes que atendam s necessidades de cada
aplicao. As diversas formas de implementar uma rede
baseada no CAN dependem das necessidades identificadas
por setor ou grupo e variam de acordo com as estratgias
adotadas para atender a essas necessidades.
A comunicao de dados em uma rede com protocolo
CAN baseada em mensagens transportadas em quadros
de bits, que, por sua vez, so formados por campos de bits
com determinada funo no quadro. Segundo a ISO 11898,
so definidos quatro tipos de quadros de bits: Data Frame
(Quadro de Dados), Remote Frame (Quadro Remoto), Error
Frame (Quadro de Erro) e Overload Frame (Quadro de

Figura 1

Minerva, 1(1): 1-6

Sobrecarga). H duas verses do protocolo CAN que diferem


pelo formato do quadro de bits. Estas duas verses so: o
Standard CAN (CAN 2.0A), com o identificador composto
por 11 bits, e o Extended CAN (CAN 2.0B), com identificador
composto por dois campos, um com 11 bits e outro com
18 bits (total de 29 bits). A Figura 1 ilustra uma mensagem
CAN e o quadro para transmisso de dados do CAN formado
por diferentes campos de bits.
A Figura 1 mostra que a mensagem CAN formada
por campo de dados denominado Data Field (Campo de
Dados), ao qual est associado outro campo que caracteriza
a mensagem. No caso do CAN, esse campo identificador
que caracteriza a mensagem denominado Identifier
(Identificador). Esse campo define tambm a prioridade
de cada mensagem. O valor do identificador das mensagens de cada n exclusivo em uma rede CAN, e quanto
mais baixo o valor do identificador, maior a prioridade
das mensagens desse n. Utilizando um identificador, os
vrios ns fazem o escalonamento do acesso ao meio.
Os protocolos de alto nvel so desenvolvidos
utilizando a mensagem CAN formada pelo campo
identificador e pelo campo de dados. No campo de dados
so dispostos conjuntos de bits representando as informaes
que se deseja transmitir, que podem ser, por exemplo:
dados de controle para outros ns, dados coletados por
sensores, dados informando o estado do n ou de dispositivos
conectados ao n, solicitao de dados a determinados
ns e parmetros de configurao para outros ns.

Viso Geral da Norma ISO 11783


O comit da ISO responsvel pela norma ISO 11783
(Tractors and machinery for agriculture and forestry
Serial control and communications data network) o
TC23/SC19/WG1. Grande parte da documentao da norma
encontra-se disponvel e torna possvel a implementao
de redes embarcadas segundo essa padronizao.

Formao da mensagem CAN a partir de quadro de bits do CAN.

PROJETO E IMPLEMENTAO DE UM BARRAMENTO CAN PARA SUPORTE...

O sistema eletrnico que promove a interconexo


de um dispositivo ao barramento denominado Electronic
Control Unit (ECU) ou Unidade Eletrnica de Controle.
Uma nica ECU pode ser responsvel pela conexo de
um ou mais dispositivos a um barramento de comunicao.
Tambm, um dispositivo pode ser conectado a um barramento
por uma ou mais ECUs. O conjunto formado por ECU e
dispositivo constitui um n CAN. A Figura 2 ilustra um
exemplo de rede segundo o padro da ISO, disposto em
um trator e com um implemento conectado.
As partes da documentao da norma ISO 11783
so:
l
l
l
l
l

l
l

l
l
l

Parte 1: General Standard (Viso Geral da Norma)


Parte 2: Physical Layer (Camada Fsica)
Parte 3: Data Link Layer (Camada de Enlace de Dados)
Parte 4: Network Layer (Camada de Rede)
Parte 5: Network Management Layer (Camada de
Administrao de Rede)
Parte 6: Virtual Terminal (Terminal Virtual)
Parte 7: Implement Messages Application Layer
(Mensagens de Implemento)
Parte 8: Power Train Message (Mensagens Automotivas)
Parte 9: Tractor ECU (ECU do Trator)
Parte 10: Task Controller and Management Computer
Interface (Controlador de Tarefas e Interface para
Computador de Administrao)
Parte 11: Mobile Agricultural Data Dictionary (Dicionrio
de Dados para Tarefas Agrcolas).

As Partes 2 e 3 possuem as especificaes de camada


fsica e de camada de enlace de dados da norma que so

Figura 2

diretamente relacionadas com o protocolo CAN. As Partes


de 4 a 10 possuem especificaes de camadas de alto
nvel relacionadas com topologia de rede, administrao
de rede, mensagens de rede, mensagens de dispositivos e
especificaes dos dispositivos especiais Terminal Virtual,
ECU do Trator e Controlador de Tarefas.

O Protocolo CAN e a ISO 11783


Adotaram-se especificaes da norma ISO 11898
referentes ao CAN para compor as camadas fsica e de
enlace de dados da ISO 11783. Alm dessas especificaes,
outras complementares foram definidas segundo as
necessidades da aplicao agrcola.
A camada fsica
A Parte 2 referente a especificaes de camada fsica
da ISO 11783 define uma taxa de comunicao de 250
kb/s e adota especificaes da norma ISO 11898, como,
por exemplo, codificao NRZ (Non Return to Zero), regra
de violao de bits (Bit-Stuffing) e nveis de sinais eltricos.
So definidos o nmero mximo de ns igual a 30 por
sub-rede e um comprimento mximo de barramento igual
a 40 m por sub-rede.
O cabo para o barramento especificado do tipo par
tranado, no blindado e com quatro pares de condutores
eltricos. Dois condutores so utilizados para sinalizao
eltrica digital balanceada na comunicao de dados (CAN_L
e CAN_H) e os outros dois condutores alimentam eletricamente
os circuitos de terminao do barramento (TBC_PWR e
TBC_RTN). Alm das caractersticas citadas, a documentao
de camada fsica especifica tambm outras caractersticas
eltricas e mecnicas dos componentes do barramento.

Ilustrao de uma rede ISO 11783.

Minerva, 1(1): 1-6

INAMASU & SOUSA

A camada de enlace de dados


A camada de enlace de dados da norma ISO 11783
adota a verso CAN2.0B do protocolo CAN. O campo
de dados da mensagem possui de 0 a 8 bytes (64 bits) e
o campo identificador possui 29 bits, que caracterizam
a mensagem. Esse campo identificador permite que as
mensagens trocadas sejam vistas como informaes com
prioridades diferentes e independentes dos ns que as
produzem. Os ns consumidores podem utilizar filtros
de aceitao de mensagens configurados de modo a
interromper o processador do n, ou CPU (Central
Processing Unit Unidade Central de Processamento)
do n, apenas quando chegam mensagens de interesse
para esse n.
O mecanismo de acesso ao meio para comunicao
de dados pelo barramento denominado CSMA/NDBA
Carrier Sense Multiple Access with Non-Destructive Bitwise
Arbitration (Acesso Mltiplo com Deteco de Portadora
com Arbitragem No Destrutiva por Operao Lgica Bit
a Bit). Esse mecanismo origina um mtodo de acesso ao
meio denominado Arbitragem. Um n com mensagem
com identificador de menor valor tem maior prioridade
na transmisso da mensagem.
A Parte 3 da norma define, alm do protocolo CAN,
formas de utilizao dos campos de bits identificador e
campo de dados, que formam uma mensagem CAN, como
ilustra a Figura 3.
Na Figura 3 definido um esquema de uso de bits
que origina duas Unidades de Protocolo de Dados (Protocol
Data Unit PDU). Essas duas PDUs so estruturas de
mensagem que permitem diferentes tipos de endereamentos
para uma mensagem. A estrutura denominada PDU1 permite
que uma ECU envie uma mensagem diretamente para outra
ECU (ponto a ponto: ECU envia mensagens para outra ECU

PDU 1 Priority R D

PDU format

especfica). A estrutura denominada PDU2 permite que se


identifique o tipo de dados da mensagem, mas no enderea
a mensagem a uma ECU especfica (difuso: ECU envia
mensagens que qualquer ECU pode receber). Definem-se
256 (0 a 255 8 bits) endereos possveis em uma rede
obedecendo os tamanhos dos campos Destination Address
(Endereo de destino) e Source Address (Endereo de Origem)
das duas estruturas possveis para o identificador (PDU1 e
PDU2). O PGN ou Parameter Group Number (Nmero
de Grupo de Parmetro) implementa uma forma de indicar
o contedo dos dados de uma mensagem relacionando-a
ao grupo de parmetros.
A Parte 3 da norma ISO 11783 tambm especifica
os tempos-limite para a resposta de uma solicitao, espera
por segmento de dado, espera por confirmao e um protocolo
de transporte, com regras definidas para o envio de dados
com mais de 8 bytes (limite mximo para um quadro CAN).

Barramento CAN
O barramento foi projetado considerando
especificaes de camada fsica e de enlace de dados.
Foi desenvolvida uma interface-padro para adaptar
diferentes tipos de dispositivos (sensores, atuadores, terminais
de controle) e compor as ECUs.
Dispositivos componentes do n CAN
Na implementao de um padro baseado no CAN,
os ns so tipicamente constitudos por trs mdulos
elementares, que so:
l

Transceptor CAN: mdulo responsvel pela adaptao


dos nveis de tenso entre os circuitos do n e do
barramento CAN. Tambm promove a adaptao de
impedncias e a proteo do n a faltas.

Destination address

Source address

Parameter group number

PDU 2 Priority R D

Mensagem CAN

Identificador 29 bits

Figura 3

Minerva, 1(1): 1-6

PDU format

Group extension

Source address

Dados 64 bits (8 bytes)

PDUs especificadas pela norma ISO 11783.

PROJETO E IMPLEMENTAO DE UM BARRAMENTO CAN PARA SUPORTE...

Controlador CAN: mdulo central da implementao


e do controle do protocolo.
Sistema Computacional Central: mdulo constitudo
por CPU, memria, programas computacionais, interface
com o controlador CAN e interfaces para outros
dispositivos, como sensores, atuadores e terminais de
controle. Por intermdio desse mdulo so implementados
os protocolos de alto nvel.

Os transceptores e controladores so os elementos


bsicos para a elaborao de redes CAN, pois determinam
as caractersticas de operao de rede, como velocidade
de transferncia de dados (taxa de bits), imunidade a
interferncias, robustez, capacidade de carga (nmero de
ns), deteco, sinalizao e distino de erros, deteco
de faltas, custo, entre outras.
Para desenvolvimento do circuito de uma ECU, sendo
o controlador o responsvel pela implementao do protocolo
CAN, as demais regras definidas pela norma devem ser
implementadas em um sistema computacional que se
comunique com o controlador. Tal sistema computacional
deve ter capacidade de processamento e de memria
relacionado com as caractersticas da ECU, podendo ser,
por exemplo, um simples microcontrolador, se a ECU for
associada a sensores, ou um computador embarcvel, se a
ECU for um terminal IHM (interface homem-mquinas).
Os microcontroladores so sistemas computacionais
implementados em um nico circuito integrado e permitem
que sejam gravados programas computacionais (rotinas de
programa) que implementam as funes do microcontrolador
em cada circuito. No mercado podem ser encontrados
microcontroladores com controladores CAN integrados ou

Figura 4

microcontroladores com interfaces que permitem a integrao


fcil de controladores externos ao microcontrolador.
Projeto do circuito de ECU
A Figura 4 ilustra, por meio de diagrama, o circuito
eletrnico de uma interface CAN desenvolvida e testada
em laboratrio para permitir a conexo de dispositivos
com interface RS232 ou sensores e atuadores atravs de
interfaces analgicas ou digitais (Braz et al., 2004).
Como mostrado na Figura 4, o circuito da interface
composto basicamente por trs circuitos integrados, que
so: microcontrolador, transceptor CAN e transceptor RS232.
Os transceptores tm a funo de adaptar os nveis de
tenso dos sinais de comunicao para os nveis definidos
para os respectivos padres. A porta de comunicao RS232C
baseada em um controlador tipo USART (Universal
Synchronous/Asynchronous Receiver Transmitter) e a
porta CAN, em um controlador CAN. A interface possui
tambm um mdulo para regulao de tenso que abaixa
a tenso provida pelo barramento, normalmente 12 ou
24 V, para 5 V, que a tenso de alimentao necessria
aos circuitos integrados da interface. O mdulo de conexo
para circuito externo permite que entradas e sadas, analgicas
ou digitais, estejam disponveis diretamente para a conexo
de sensores e atuadores ou atravs de circuito de condicionamento de sinais. Esse circuito constitui uma interfacepadro que pode ser utilizada para compor diferentes ns
CAN e formar uma rede CAN. Para projeto da interface
fisicamente compatvel com a ISO 11783 escolheram-se
os componentes transceptor CAN e controlador CAN
segundo as especificaes camada fsica e camada de enlace
de dados, definidas pela norma e apresentadas anteriormente.

Diagrama da interface CAN padro.

Minerva, 1(1): 1-6

INAMASU & SOUSA

que o quadro CAN (conjunto de bits formadores da


mensagem) possui 64 bits para transmisso e recebimento
de dados e que o quadro transmitido e recebido pela USART
possui 8 bits, ou seja, um quadro CAN de dados equivale
a 8 quadros USART. Assim, em um quadro CAN cabem
at 8 dados de 8 bits de 8 mensagens recebidas pela RS232C.
Os dados recebidos pelo CAN devem ser remontados em
mensagens diferentes para serem enviadas pela RS232C.

Implementao do barramento
Foi montada em laboratrio uma rede CAN composta
por sensores (receptor GPS, sonar e chaves de contato),
atuadores (motores CC e rels) e um computador industrial.
A interface-padro foi utilizada para permitir a conexo
desses dispositivos ao barrameto atravs de porta RS232C
ou dos terminais de entrada e sada digitais e analgicos.
Foi elaborado um terminal virtual tipo IHM utilizando o
ambiente de desenvolvimento de programas Labview na
National Instruments. Esse terminal virtual executado no
computador industrial e permite monitorar a rede CAN
pelo recebimento e envio de mensagens e acompanhamento
do status de cada transmisso. O computador industrial
tambm possui uma interface de rede sem fio padro IEEE
802.11b que habilita a integrao da rede CAN com a Internet
e amplia as possibilidades de desenvolvimento de aplicaes
embarcadas atravs de enlace de comunicao sem fio. A
Figura 5 ilustra a rede montada.
No processo de converso da mensagem CAN para
a mensagem no formato requerido pela USART e,
posteriormente, no sentido inverso, levou-se em considerao

Concluses
O barramento CAN implementado constitui uma
plataforma de desenvolvimento de dispositivos e aplicaes
para sistemas de automao de mquinas agrcolas segundo
a ISO 11783. Por meio desse barramento, diferentes
dispositivos podem ser integrados, constituindo uma rede
de comunicao de dados. Tambm, os resultados
apresentados sobre o projeto e a implementao do
barramento constituem uma referncia para orientar grupos
de pesquisa de instituies e de empresas no desenvolvimento
e implementao dessas tecnologias, contribuindo para
que se tornem realidade na agricultura brasileira.

Rede ethernet
sem fio

Computador
porttil

Computador
embarcvel

GPS

Sonar

Outros
sensores

Atuadores

Interface
CAN

Interface
CAN

Interface
CAN

Interface
CAN

Interface
CAN

Barramento CAN
Rede ethernet com fio
Rede ethernet sem fio
Outros padres de comunicao (RS232, USB, etc.)

Figura 5

Ilustrao do barramento CAN montado em laboratrio.

Referncias Bibliogrficas
AUERNHAMMER, H. Precision farming: the environmental
challenge. Computers and Electronics in Agriculture, v.
30, n. 1-3, p. 31-43, 2001.
BARBOSA, M.; FARSI, M.; RATCLIFF, K. An overview
of controller area network. Computing & Control Engineering
Journal (Jun.), v. 10, n. 3, p. 113-120, 1999.
Minerva, 1(1): 1-6

BRAZ, D. C.; SOUSA, R. V.; INAMASU, R. Y.; PORTO,


A. J. V. Desenvolvimento de uma interface CAN para
integrao de dispositivos embarcados em mquinas
agrcolas. In: CONGRESSO BRASILEIRO DE
ENGENHARIA AGRCOLA, 33., 2004, So Pedro. Anais...
So Pedro, 2004.

PROJETO E IMPLEMENTAO DE UM BARRAMENTO CAN PARA SUPORTE...

BOSCH. CAN Specification Version 2.0. Robert Bosch


GmbH, Stuttgart, 1991.
GUIMARES, A. A. Anlise da norma ISO11783 e sua
implementao no barramento do implemento de um monitor
de semeadora. 2003. Dissertao (Mestrado) Escola
Politcnica, Universidade de So Paulo, So Paulo.
HOFSTEE, J. W.; GOENSE, D. Simulation of a controller
area network-based tractor-implement data bus according
to ISO 11783. Journal of Agricultural Engineering Research
(Aug.), v. 73, n. 4, p. 383-394, 1999.
MUNACK, A.; SPECKMANN, H. Communication
technology is the backbone of precision agriculture.
Agricultural engineering international. CIGR Journal of
Scientific Research and Development, v. 3, p. 1-12, 2001.
SILVIA, K. M. R. Agrican: simulador de redes baseadas
no protocolo ISO 11783 para ambiente web. 2003.
Dissertao (Mestrado) Escola Politcnica, Universidade
de So Paulo, So Paulo.

SOUSA, R. V. CAN (Controller Area Network): uma


abordagem para automao e controle na rea agrcola.
2002. Dissertao (Mestrado) Escola de Engenharia
de So Carlos, Universidade de So Paulo, So Carlos.
STONE, M. L. Dynamic address configuration in SAE
J1939. Proc. of the SAE Symposium on Off-Highway
Equipment. Milwaukee, SAE Transactions, 1997. p. 310315.
STONE, M. L.; MCKEE, K. D.; FORMWALT, C. W.;
BENNEWEIS, R. K. An Electronic Communications
Protocol for Agricultural Equipment. ASAE Distinguished
Lecture # 23 of the Agricultural Equipment Technology
Conference (Feb.), Louisville, Kentucky, 1999.
STRAUSS, C. Implementao e avaliao de uma rede
experimental baseada em CAN para aplicaes agrcolas.
2001. Dissertao (Mestrado) Escola Politcnica,
Universidade de So Paulo, So Paulo.

Minerva, 1(1): 1-6

ffffffffffffffffffffffffffff