BusCAN Protocolo SAE J1939
BusCAN Protocolo SAE J1939
BusCAN Protocolo SAE J1939
Índice
• Motivación
• Definiciones e Historia
• Conceptos Básicos
• Hardware / Software
• Aplicaciones
• Otros Buses de Comunicación
• Bibliografía
• J1939
Motivación
• Demanda creciente de electrónica en el automóvil
(exigencias en normativas de contaminación, mayores
prestaciones de seguridad, confort, multimedia…)
• Gestión electrónica, ABS, ESP, Airbag, EPB, etc., son
típicos ejemplos de unidades electrónicas de control
(ECUs) que actualmente se incluye de serie en los
vehículos.
• A medida que aumenta el número de prestaciones de un
automóvil se plantea la posibilidad de realizar un control
distribuido en lugar de un control centralizado.
Motivación
• El bus CAN nace como un mecanismo para compartir
información entre las electrónicas (ECUs) del vehículo,
lo cual permite:
Reducir el cableado del vehículo.
Reducir el número de sensores.
Reducir el tiempo en la detección y reparación de
averías.
Facilitar la ampliación de la electrónica en nuevas
versiones.
En definitiva, reducir el coste total.
Control distribuido
ECU 1 ECU 3
BUS de Comunicaciones
ECU 2 ECU n
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 años después (1992).
• Diseñado para permitir la comunicación fiable entre
ECUs (“Electronic Control Unit”) y reducir cableado.
• En Europa se ha convertido en un estándar “de facto”,
con carácter internacional y documentado por normas
ISO (ISO-11898 ).
• Ventajas: reducción de costes, mejora flexibilidad,
mantenimiento y verificación de averías.
Manuel Moreno ELECTRÓNICA DEL AUTOMÓVIL 25/03/11
BUS CAN Y J1939
Conceptos básicos
• El bus CAN es un protocolo serie asíncrono 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 colisión. Un método de
arbitración basado en prioridades resuelve el conflicto.
Manuel Moreno ELECTRÓNICA DEL AUTOMÓVIL 25/03/11
BUS CAN Y J1939
Hardware/Nivel Físico
• Se utiliza un par de cables trenzados (bus diferencial)
para ser inmune a las interferencias electromagnéticas
(EMIs). En camiones está apantallado, pero en los
coches no (Tacaños!).
• Resistencias terminadoras (típicamente de 120Ω) al
principio y al final del bus evitan reflexiones y ruido en el
bus (antenas).
• Longitud máxima de 1000m (a 40Kbps).
• Velocidad máxima de 1Mbps (con una longitud de 40m)
• En los coches se utiliza a 125kbit/s y a 500kbit/s.
Implementación Física
0-5V
CAN LOW
TX 1.5V – 3.5V TX
0-5V
CAN HIGH
RX RX
Niveles de Tensión
Vbus
CAN HIGH
3.5V
2.5V
1.5V
CAN LOW
CAN HIGH
CAN LOW
Formas de onda en un bus CAN real. CAN HIGH, CAN LOW y la diferencia.
Nivel Lógico
• La información 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 información (datos).
REMOTE FRAME (RTR): mensaje de petición de datos.
ERROR FRAME: mensaje que indica un error.
OVERLOAD FRAME: mensaje de sobrecarga de un
nodo.
Microcontrolador
TX CAN_HIGH
Controlador TRANSCEIVER
Bus CAN BUS CAN
RX CAN_LOW
0-5V 1.5V
(TTL) 3.5V
ECU
Aplicaciones
• El bus CAN no sólo se utiliza como sistema de
comunicación entre ECUs.
• También se utiliza como medio físico para
comunicarse con el exterior a través de un conector de
diagnosis (OBD), típicamente situado debajo del
asiento del conductor.
• Desde 2008, todos los vehículos obligatoriamente
llevan incorporado el sistema OBD-II/EOBD con
comunicación por bus CAN.
• Hoy en día se utilizan complejos sistemas
informáticos, que conectados al vehículo, reducen
drásticamente el tiempo de reparación de averías.
Manuel Moreno ELECTRÓNICA DEL AUTOMÓVIL 25/03/11
BUS CAN Y J1939
Bibliografía
• “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.
Grupos de Parámetros
Grupos de Parámetros
Ejemplos de PGNs
• 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
Estandarización de magnitudes
Cortesía de Scania