Está en la página 1de 47

DINMICA DE VEHCULOS

FERMN SONEIRA
BUS CAN Y J1939
Manuel Moreno
ELECTRNICA DEL AUTOMVIL
CURSO ACADMICO 2010-2011
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
ndice
Motivacin
Definiciones e Historia
Conceptos Bsicos
Hardware / Software
Aplicaciones
Otros Buses de Comunicacin
Bibliografa
J1939
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Motivacin
Demanda creciente de electrnica en el automvil
(exigencias en normativas de contaminacin, mayores
prestaciones de seguridad, confort, multimedia)
Gestin electrnica, ABS, ESP, Airbag, EPB, etc., son
tpicos ejemplos de unidades electrnicas de control
(ECUs) que actualmente se incluye de serie en los
vehculos.
A medida que aumenta el nmero de prestaciones de un
automvil se plantea la posibilidad de realizar un control
distribuido en lugar de un control centralizado.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Motivacin
El bus CAN nace como un mecanismo para compartir
informacin entre las electrnicas (ECUs) del vehculo,
lo cual permite:
Reducir el cableado del vehculo.
Reducir el nmero de sensores.
Reducir el tiempo en la deteccin y reparacin de
averas.
Facilitar la ampliacin de la electrnica en nuevas
versiones.
En definitiva, reducir el coste total.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
ECU 1
ECU 2
ECU 3
ECU n
Control distribuido
BUS de Comunicaciones
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Definiciones e Historia
CAN (Controller Area Network), bus digital inventado por
Robert Bosch en 1982 como bus de campo (i. proceso).
El Mercedes Clase E fue el primer coche en incorporar el
bus CAN, 10 aos despus (1992).
Diseado para permitir la comunicacin fiable entre
ECUs (Electronic Control Unit) y reducir cableado.
En Europa se ha convertido en un estndar de facto,
con carcter internacional y documentado por normas
ISO (ISO-11898 ).
Ventajas: reduccin de costes, mejora flexibilidad,
mantenimiento y verificacin de averas.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Conceptos bsicos
El bus CAN es un protocolo serie asncrono del tipo
CSMA/CD (Carrier Sense Multiple Access with Collision
Detection).
El bus es un medio compartido (multiplexado).
Se trata de un protocolo Multicast, es decir, todo el
mundo puede hablar (de uno en uno) y escuchar.
CSMA: cada nodo de la red debe monitorizar el bus y
si detecta que no hay actividad, puede enviar un
mensaje.
CD: si 2 nodos de la red comienzan a transmitir un
mensaje, ambos detectan la colisin. Un mtodo de
arbitracin basado en prioridades resuelve el conflicto.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Hardware/Nivel Fsico
Se utiliza un par de cables trenzados (bus diferencial)
para ser inmune a las interferencias electromagnticas
(EMIs). En camiones est apantallado, pero en los
coches no (Tacaos!).
Resistencias terminadoras (tpicamente de 120) al
principio y al final del bus evitan reflexiones y ruido en el
bus (antenas).
Longitud mxima de 1000m (a 40Kbps).
Velocidad mxima de 1Mbps (con una longitud de 40m)
En los coches se utiliza a 125kbit/s y a 500kbit/s.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Implementacin Fsica
CAN LOW
CAN HIGH
TX TX
RX
RX
Nodo 1 (ECU)
Nodo 2 (ECU)
0-5V
0-5V
1.5V 3.5V
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Niveles de Tensin
CAN LOW
CAN HIGH
2.5V
3.5V
1.5V
Bit dominante
0 lgico
Bit recesivo
1 lgico
t
Vbus
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
CAN HIGH
CAN LOW
CAN HIGH CAN LOW
Formas de onda en un bus CAN real. CAN HIGH, CAN LOW y la diferencia.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Nivel Lgico
La informacin es transmitida mediante mensajes.
Cada mensaje se empaqueta en una trama o frame.
Existen 4 tipos de mensajes distintos, definidos por el
protocolo:
DATA FRAME: mensaje de informacin (datos).
REMOTE FRAME (RTR): mensaje de peticin de datos.
ERROR FRAME: mensaje que indica un error.
OVERLOAD FRAME: mensaje de sobrecarga de un
nodo.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Estructura de un FRAME en bus CAN
SOF IDENTIFIER DLC DATA CRC ACK EOF
SOF (Start of Frame): 1 bit dominante inicia la trama.
IDENTIFIER (Identificador): 11 bits estndar / 29 bits extendido; indica
el tipo de informacin y la prioridad. Cuanto ms pequeo es el
identificador, mayor prioridad tiene el mensaje.
DLC (Data Length Code): nmero de bytes de datos (0-8).
DATA (Datos): Entre 0 y 8 bytes de datos.
CRC (Cyclic Redundancy Check): 15 bits para detectar errores.
ACK (Acknowledge): 1 bit de reconocimiento de mensaje.
EOF (End of Frame): 1 bit que indica que ha terminado la trama.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Proceso de Arbitraje en el bus CAN
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Buses CAN en Automviles
Se utilizan diferentes buses CAN en funcin de las
tareas de las centralitas.
Bus CAN Traccin: bus de alta velocidad (500 kbit/s),
intercambio de informacin de centralitas con tareas
crticas (Gestin de Motor, Airbag, ABS, ESP).
Bus CAN Confort: bus de baja velocidad (125kbit/s),
intercambio de informacin de centralitas con tareas no
crticas (climatizador, control de puertas, asientos, etc.)
Una puerta de enlace o GateWay permite el transpaso
de informacin entre los dos buses anteriores.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Hardware en bus CAN
Bsicamente existen 2 opciones:
Microcontrolador con Controlador de Bus CAN Interno
Microcontrolador + Controlador de Bus CAN Externo
Es preferible la primera versin por tamao y coste. La
mayora de microcontroladores de automocin llevan
integrado el controlador de bus CAN.
Actualmente existen circuitos integrados que
digitalizan seales analgicas y las envan por el bus
CAN.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Hardware en bus CAN
TRANSCEIVER
BUS CAN
Controlador
Bus CAN
Microcontrolador
TX
RX
0-5V
(TTL)
CAN_HIGH
CAN_LOW
ECU
1.5V
3.5V
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplo de Controlador de CAN (Microchip)
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplo de Transceiver de CAN (Philips)
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Software para bus CAN
Para la mayora de microcontroladores con
controlador de CAN integrado, existen libreras de
software (ensamblador / lenguaje C) para el manejo
del bus.
Rutinas del tipo:
CANSendMessage( identifier, message, length, flags);
CANReceiveMessage( &identifier, message, &length, &flags).
Todos los controladores de CAN permiten trabajar por
interrupciones, tanto de recepcin como de
transmisin.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Herramientas para Bus CAN
Existen en el mercado herramientas hardware y
software para el desarrollo, la verificacin y el
mantenimiento de un bus CAN.
El software ms utilizado en Europa es CANalyzer,
de Vector Informatik. El hardware ms utilizado es
fabricado por Kvaser. La configuracin tpica es una
tarjeta (PCMCIA USB) que se conecta a un PC.
Cada fabricante de automviles tiene su propia base
de datos que especifica para cada mensaje CAN del
vehculo todos los datos correspondientes
(identificador, n. de bytes, codificacin, etc.)
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplo de un analizador de tramas de bus CAN
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Aplicaciones
El bus CAN no slo se utiliza como sistema de
comunicacin entre ECUs.
Tambin se utiliza como medio fsico para
comunicarse con el exterior a travs de un conector de
diagnosis (OBD), tpicamente situado debajo del
asiento del conductor.
Desde 2008, todos los vehculos obligatoriamente
llevan incorporado el sistema OBD-II/EOBD con
comunicacin por bus CAN.
Hoy en da se utilizan complejos sistemas
informticos, que conectados al vehculo, reducen
drsticamente el tiempo de reparacin de averas.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Otros Buses de Comunicacin
TTCAN (Time Triggered CAN)
Bus LIN (Local Interconnect Network)
Bus MOST (Media-Oriented Systems Transport)
Bluetooth
D2B
MML
ByteFlight
FlexRay (el sustituto del CAN a medio plazo)

BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
CAN Specification Version 2.0, Robert Bosch
GmbH, 1991.
CAN: Controller Area Network, Introduction and
Primer, Robert Boys, Dearborn Group, Inc.,
Sept. 2004.
854 BUS, CAN Do, Will Do 1: CAN Bus Basics,
Microchip 2004.
Atmel Microcontrollers, CAN Tutorial, Atmel
2004.
CANbus in transport, T. Tjiook, 2009.
Bibliografa
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Aplicacin del bus CAN: Estndar J1939
Norma SAE (Society of Automotive Engineers)
aplicada a vehculos comerciales y pesados
(camiones y autobuses). Tambin se utiliza en el
mundo agrcola y a nivel industrial (comunicacin de
autmatas programables, grupos electrgenos, etc.).
Pensado inicialmente para la comunicacin en el
compartimento motor y entre la tractora y el trailer
(camiones).
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Bus CAN en camiones (J1939)
Motor
Truck bus
Trailer bus
Transmisin Frenos
Enlace Enlace
Frenos Luces ABS
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Caractersticas del J1939
Capa fsica: CAN 250kbit/s, par trenzado apantallado.
Identificadores de 29 bits.
Comunicacin punto a punto (peer to peer) y
comunicacin en abierto para todos (broadcast).
Utiliza protocolos de transporte de hasta 1785 bytes
de datos.
Definicin de grupos de parmetros estndar.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Grupos de Parmetros
Grupos de parmetros combinan seales similares o
asociadas. Se pueden utilizar grupos de parmetros
especficos para cada fabricante.
Estas agrupaciones de parmetros de hasta 8 bytes
se transmiten en un mensaje CAN.
Si el nmero de bytes es mayor que 8 es necesario un
protocolo de transporte.
Cada grupo de parmetros es direccionado va un
nico nmero (Parameter Group Number, PGN).
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
El PGN es un valor de 16 bits. En funcin del valor,
podemos hablar de PGN global o de PGN especfico.
PGN Global: (comunicacin broadcast). Se utilizan los
16 bits. El MSB (PDU format) debe ser mayor de 239.
PGN Especfico: (comunicacin peer to peer), slo se
utilizan los 8 bits ms significativos (PDU format). ste
debe ser mayor de 240. El byte menos significativo
(PDU specific) es siempre 0.
Grupos de Parmetros
PDU Format PDU Specific
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplos de PGNs
PGN = 0xFE01. Dado que 0xFE >= 0xF0 (240), se
trata de un PGN Global. 0x01 es el PDU specific.
PGN = 0xED00. Dado que 0xED < 0xF0, se trata de
un PGN especfico. El PDU, en este caso, es 0x00.
Con esta distribucin de PGN (PDU format + PDU
specific), podemos distinguir entre 8672 grupos de
parmetros distintos (240 + 16 *256) = 8672.
El PGN es codificado internamente en un identificador
de bus CAN extendido (29 bits).
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Interpretacin de un identificador CAN
Cada identificador de CAN (29 bits) est compuesto
por:
PDU Format PDU Specific Source Address Priority R. Data Page
3 bits 1 bit 1 bit 8 bits
8 bits 8 bits
TOTAL: 29 bits por identificador, conteniendo el PGN
PGN
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplo mensaje en J1939 (I)
Name: Engine Temperature
Transmission Rate: 1s
Data length: 8 bytes
Data page: 0
PDU format: 254
PDU specific: 238
Default priority: 6
PG Number: 65262 (0xFEEE)
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Ejemplo mensaje en J1939 (II)
Description of Data:
Byte 1: Engine Coolant Temperature
Byte 2: Fuel Temperature
Byte 3, 4: Engine Oil Temperature
Byte 5, 6: Turbo Oil Temperature
Byte 7: Engine Intercooler Temperature
Byte 8: Not defined
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Estandarizacin de magnitudes
Engine Coolant Temperature
Data Length: 1 byte
Resolution: 1 C/bit gain, -40C offset
Data Range: -40 to 210C
Type: Measured
Reference: Engine Temperature
Obsrvese que se deja un rango de valores
especiales (ej. Los valores 250-255 no estn definidos
en el rango de medida).
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Rangos de seales transmitidas
En el caso de magnitudes de 1 byte:
Valid Signal: 0-250 (0x00-0xFA)
Parameter Specific indicator: 251 (0xFB)
Reserved range for future indicator bits: 252-253
(0xFC-0xFD)
Error indicator: 254 (0xFE)
Not available or not requested: 255 (0xFF)
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Valores transmitidos para parmetros
discretos (medidos)
Disabled (off, passive, etc.) 00
Enabled (on, active, etc.) 01
Error indicator 10
Not available or not installed 11
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Valores transmitidos para comandos de
control
Command to disable function (turn-off) 00
Command to enable function (turn-on) 01
Reserved 10
Dont care/take no action(leave function as is) 11
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Control de una red J1939 (I)
En una red bajo el estndar J1939, cada ECU tiene
una direccin nica. Cada mensaje que enva cada
ECU contiene dicha direccin (source address).
Existen 255 direcciones posibles:
0..253 -> direcciones vlidas de una ECU
254 -> Cero
255 -> Global
Cada ECU tiene una direccin preferida
(preasignada).
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Control de una red J1939 (II)
Antes de que una ECU utilice una direccin, la debe
registrar sobre el bus (address claiming).
La ECU enva un mensaje CAN, denominado
AddressClaim parameter group con la direccin
(source address) deseada. Este PG (parameter group)
contiene un nombre del dispositivo codificado con 64
bits (entre los que se incluye la direccin, funcin,
fabricante, etc.).
Si la direccin ya est siendo utilizada por otra ECU,
se produce un arbitrio de la direccin basado en la
prioridad del nombre de la ECU.
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Cortesa de Scania
BUS CAN Y J1939
Manuel Moreno
25/03/11
ELECTRNICA DEL AUTOMVIL
Para saber ms del J1939
[1] SAE J1939 Recommended Practice for a Serial Control and
Communications Vehicle Network
[2] SAE J1939-11 Physical Layer250K Bits/s, Shielded Twisted Pair
[3] SAE J1939-13 Off-Board Diagnostic Connector
[4] SAE J1939-15 Reduced Physical Layer, 250K Bits/s, Un-Shielded
Twisted Pair (UTP)
[5] SAE J1939-21 Data Link Layer
[6] SAE J1939-31 Network Layer
[7] SAE J1939-71 Vehicle Application Layer
[8] SAE J1939-73 Application Layer - Diagnostics
[9] SAE J1939-81 Network Management Protocol

También podría gustarte