Inicio Artículos CAN FD – Cualquier cosa menos solo automoción

CAN FD – Cualquier cosa menos solo automoción

deteccion de errores y robustez

Autor: Bernd Westhoff

El bus CAN tiene grandes ventajas en términos de costo, flexibilidad y robustez que también son muy beneficiosas para aplicaciones no automotrices en muchos campos. Con la extensión del bus CAN FD para velocidades de datos más altas, el campo es aún más amplio. Este artículo cubre los fundamentos de los buses CAN y CAN FD, también en el aspecto de diferentes implementaciones de aplicaciones usando diferentes capas físicas o protocolos de capas superiores usando CAN como capa de enlace de datos. La familia de microcontroladores Renesas RA es la elección perfecta para una plataforma para aplicaciones con buses CAN y CAN FD.

Introducción

Debido a los mayores requisitos de ancho de banda en el campo de la automoción, la especificación CAN (Controller Area Networking) se amplió para velocidades de datos flexibles, CAN FD corto. CAN fue definido en los años 80 por Bosch y necesitaba una actualización que también es muy beneficiosa para aplicaciones no automotrices.

Ventajas

Primero, analicemos las grandes ventajas del bus CAN sobre la comunicación en serie estándar como RS232 o RS485 debido a una mayor velocidad de comunicación con detección de errores, gran robustez y menor costo.

Coste y flexibilidad

El impulso más importante para la industria automotriz fue reducir el cableado en el automóvil. Debido al cableado de par trenzado, es relativamente fácil tender el cable, además de ser menos pesado y económico. Las resistencias de terminación son necesarias para ejecutar CAN y CAN FD a mayor velocidad. La flexibilidad es una gran ventaja, ya que es muy fácil ampliar el sistema con más nodos.

Detección de errores y robustez

Los buses CAN y CAN FD incorporan mecanismos de comprobación de errores muy fiables. El relleno de bits y la supervisión funcionan en la capa 1, la verificación de tramas, el reconocimiento y la verificación de redundancia cíclica en la capa 2 del modelo OSI.

El relleno de bits agrega un bit alternativo después de cinco bits altos o bajos consecutivos. Si se detectan 6 bits consecutivos con el mismo nivel, debe haber algo mal. El chequeo de bits está leyendo cada mensaje que está enviando. Si hay una diferencia (excepto en el campo de arbitraje o reconocimiento) se detecta un error. Una gran ventaja es que los errores se detectan de manera muy rapida.

Las comprobaciones de redundancia cíclica se implementan de forma diferente en CAN que en CAN FD debido a la diferente longitud de los datos. Los errores de marco (a veces también llamados errores de formato o forma) utilizan valores predefinidos que deben ser los mismos en el lado del receptor. Cada mensaje debe ser reconocido. Estos tres mecanismos de verificación de errores funcionan en gran medida a nivel de mensaje.

En resumen, los buses CAN y CAN FD son muy robustos y fiables con varias verificaciones de errores diferentes. No se perderán datos durante la transmisión de un mensaje y se evitarán las colisiones de mensajes. Cada nodo espera un período de inactividad antes de enviar. En caso de que se envíen dos mensajes al mismo tiempo, el transmisor detecta qué mensaje tiene mayor prioridad y desactiva el mensaje con menor prioridad. En comparación con Ethernet, donde ambos mensajes se detienen y se envían más tarde, en el bus CAN llega el mensaje con la prioridad más alta.

Alta velocidad y baja latencia

El bus CAN admite velocidades de datos de hasta 1 Mbps. Con el bus CAN FD se puede aumentar la tasa de datos para el área de Control y Datos dependiendo del reloj máximo del controlador CAN FD. La tarifa para la fase de arbitraje se mantiene en un máximo de 1 Mbps. La latencia para las transmisiones en el bus CAN es inferior a 145us y para CAN FD con 8Msps y 8Byte Data inferior a 58us.

bus can

Los marcos de datos cortos tienen una ventaja en términos de latencia. El paquete completo se transfiere más rápido, luego se decodifica más rápido y, por lo tanto, el tiempo de reacción es mucho más rápido. Con tasas de transmisión más altas en CAN FD, este efecto es aún mayor. En comparación, por ejemplo, con la comunicación TCP/IP, que está diseñada para una gran cantidad de datos, los paquetes son relativamente grandes y, por lo tanto, la latencia aumenta. Eso significa que CAN FD, dependiendo de la cantidad de datos, tiene potencialmente tiempos de reacción más cortos que la comunicación TCP/IP con 10 o 100 Mbit, y muestra un mejor rendimiento total en tiempo real, con detección de errores a tiempo.

marcos de datos

Limitaciones

En cuanto a la cantidad de nodos, teóricamente no hay límite, ya que cada mensaje podría enviarse a un nodo diferente. Prácticamente cada nodo provoca reflejos de señal en el bus, la calidad de transmisión depende del transceptor CAN y la implementación en la capa física. Esta es también la razón de la limitación en términos de velocidad cuando se trata de largas distancias. Los valores habituales son un máximo de 25 nodos en CAN y un máximo de 8 nodos en CAN FD.

Ejemplos de aplicación fuera del campo de la automoción

¿Por qué usar CAN FD fuera de las aplicaciones automotrices? Por las grandes ventajas descritas anteriormente.

CAN y CAN FD se utilizan ampliamente en todas las industrias, por ejemplo en:

  • Automatización de edificios

o Ascensor y montacargas

o Control de acceso, control de iluminación

o Aire acondicionado

  • Mercado de repuestos para automóviles

o Seguimiento de flotas, seguimiento de vehículos

o Logging para mantenimiento predictivo, telemática, seguros, blackbox

o Equipo médico y sanitario

  • Industriales

o Accionamientos industriales

o Armarios eléctricos

  • Mercado generalista

o Máquinas de juego

  • Robótica

o Entre controlador principal y actuadores encadenados

Un gran caso de uso de MCU con dos unidades de controlador CAN FD en combinación con TrustZone y Security es una unidad de control en la automatización de edificios que separa las partes seguras de las no seguras. Se puede usar un controlador CAN FD para el lado seguro para controlar componentes críticos como controles de accesos, lectores de tarjetas de identificación, etc. El segundo CAN FD se puede utilizar para piezas de control no críticas en la automatización de edificios como iluminación, puertas dentro del edificio, etc.

mcu

Otro caso de uso para las unidades duales CAN FD es la funcionalidad Gateway. P.ej. para sistemas de automatización de grandes edificios, en grandes armarios electricos, módulos de extensión de comunicación, etc. Hay muchos casos de uso diferentes para MCU con controladores CAN FD integrados. P.ej. para actuadores, sensores, control, etc.

CAN FD es muy adecuado para requisitos de alta seguridad y fiabilidad, por ejemplo, en robots, ascensores y sistemas de transporte, pero también en el ámbito médico y sanitario. Los requisitos de fiabilidad de la industria automotriz son muy beneficiosos en estos casos de uso.

Diferencias entre el bus CAN convencional y el CAN FD

Los protocolos CAN y CAN FD descritos en la especificación de Bosch comparten la misma capa física. First CAN FD amplía el protocolo CAN convencional. Eso significa que es compatible con las redes CAN 2.0B existentes. Existen dos versiones del CAN convencional denominadas CAN 2.0A y CAN 2.0B. No es posible utilizar CAN 2.0A (más las versiones anteriores) y CAN 2.0B / CAN FD en el mismo bus, ya que pueden producirse errores de transmisión. El motivo es que los identificadores de mensajes de 29 bits CAN 2.0A no pueden manejar, pero CAN 2.0B y CAN FD se ampliaron.

CAN 2.0B que no usa marcos extendidos de 29 bits también se denomina CAN 2.0B pasivo y se puede usar en CAN 2.0A.

Version Send message identifier Receive message identifier
CAN 2.0A 11 bit 11 bit
CAN 2.0B 11 bit and 29 bit 11 bit and 29 bit
CAN 2.0B passive 11 bit (29 bit not used!) 11 bit (29 bit ignored)
CAN FD 11 bit and 29 bit 11 bit and 29 bit

Resumen de diferentes estándares CAN

CAN 2.0A también se denomina CAN básico o estándar. Utiliza identificadores de mensajes de 11 bits y está cubierto en ISO11519.

CAN2.0B se llama CAN completo. Usaba identificadores de mensajes de 11 y/o 29 bits y está cubierto en ISO11898 (-1: capa de enlace de datos, -2: capa física para CAN de alta velocidad, -3: capa física para CAN tolerante a fallas de baja velocidad, -2 y -3 no forman parte de la especificación de Bosch). CAN FD y CAN2.0B se pueden usar en el mismo bus.

Name Nickname ISO Message identifier Data area Max. Speed Comment
CAN 1.0, 1.2, 2.0A Basic or Standard CAN 11519 11 bit (Standard) 0 to 8 Byte Doesn’t tolerate 29 bit message identifier. CAN 2.0A is supporting also 1.0 and 1.2
CAN 2.0B Full CAN or extended CAN 11898-1 11 bit (Standard) and 29 bit (Extended) 0 to 8 Byte 1Mbit/s Supports both, Standard and Extended frames can exist on the same bus. Standard frame has the higher priority.
CAN FD CAN Flexible Data Rate 11898-1:2015 11 bit (Standard) and 29 bit (Extended) 0 to 64 Byte 1Mbit/s and 8Mbit/s for data and control area different data length, switching to a faster bit rate after the arbitration

La estructura de mensajes de CAN con todas las extensiones es la misma. La diferencia está en el área de datos más grande en CAN FD con un máximo de 64 bytes en comparación con un máximo de 8 bytes en CAN. Y en la tasa de transmisión más alta para el área de Control y Datos de CAN FD

CAN y CAN FD como base para diferentes variantes

La capa física y de enlace de datos (nivel 1 y nivel 2 en el modelo OSI) están definidas en el estándar CAN/CAN FD. Son la base para variantes de la industria en capas superiores, pero también para diferentes implementaciones de capas físicas.

Diferentes implementaciones de capa física

La implementación de capa física más común es el uso de transceptores estándar con 5 V sobre cable de par trenzado. Hay otras variantes en la capa física que utilizan un transceptor CAN de un solo cable o variantes para capas físicas de baja potencia y velocidad.

Protocolos de nivel superior usando CAN o CAN FD

CAN o CAN FD forman el nivel de enlace de datos para protocolos de capa superior que se utilizan en los siguientes casos específicos de la industria.

DeviceNet

«DeviceNet» administrado por ODVA es un protocolo de capa de aplicación que utiliza CAN tanto en el enlace de datos como en la capa física. La razón de esto es que CAN es superior al tradicional RS485 usado. Las principales aplicaciones se encuentran en la automatización de fábricas.

CAN Open

En el estándar “CANOpen”, Full CAN forma la capa de enlace de datos, para “CANopen FD” es CAN FD, ambos administrados por CiA con diferentes sabores:

  • “CANopen” (CiA 301) basado en CAN clásico para control general integrado en tiempo real
  • “CANopen FD” (CiA 1301) basado en CAN FD y CAN XL para control integrado en tiempo real con funciones avanzadas
  • Perfil J1939 para CAN clásico y CAN FD para vehículos comerciales de carretera
  • Perfil Isobus basado en CAN clásico para máquinas agrícolas y forestales basado en J1939
  • Perfil NMEA2000 basado en CAN clásico para aplicaciones marítimas basado en J1939

(Fuente CAN en Automatización (CiA): Protocolos estandarizados de capa superior (can-cia.org))

TTTCAN

Time Triggered CAN está agregando una transmisión de mensaje activada por tiempo al protocolo CAN existente. Esto permite transmitir mensajes en intervalos de tiempo definidos. Con esto varios maestros pueden transmitir mensajes con el principal de arbitraje CAN en la franja horaria asignada a cada maestro. Esto está mejorando aún más el comportamiento en tiempo real.

En resumen, el bus CAN se puede utilizar en diferentes capas físicas. El más común es el cableado de par trenzado de 5V con señales diferenciales implementado con transceptores estándar en combinación con una MCU con controlador IP CAN integrado. Las otras variantes son protocolos en niveles superiores que utilizan la capa física y/o de enlace de datos de CAN. Estos son, p. CANopen o DeviceNet

Implementación con la familia RENESAS RA

Hay una larga lista de microcontroladores de la familia RA que integran un controlador CAN 2.0B, incluida la serie RA2 con RA2L1, RA2A1, la serie RA4 con grupos RA4M1, RA4M2, RA4M3, RA4E1, RA4W1, la serie RA6 con grupos RA6T1 y RA6E1.

Además, la Serie RA6 viene con dos controladores CAN 2.0B en los grupos RA6M1, RA6M2, RA6M3 y RA6M4.

El grupo RA6T2 integra un controlador CAN FD o CAN 2.0B y el grupo RA6M5 dos controladores CAN FD o CAN2.0B.

Todos los dispositivos RA futuros admitirán CAN y CAN FD en lugar de solo CAN

familia renesas

Los MCU Renesas RA se basan en núcleos Arm Cortex-M, con TrustZone y Secure Crypto Engine para requisitos de alta seguridad en aplicaciones conectadas. El paquete de software flexible (FSP) ofrece controladores CAN y CAN FD altamente eficientes que se pueden configurar fácilmente con herramientas de configuración. Es muy fácil integrar protocolos de nivel superior utilizando CAN o CAN FD con la API común.

La IP utilizada en las MCU RA que integran CAN FD cumple totalmente con CAN-FD ISO 11898-1 (2015). El RA6T2 con un controlador CAN FD admite hasta 5 Mbit/s para la fase de datos, el RA6M5 con dos controladores CAN FD admite hasta 8 Mbit/s en cada canal.

El RA6M5 se puede utilizar perfectamente como host con una rica conectividad en un panel de acceso, un módulo de comunicación o en una puerta de enlace para combinar CAN2.0B ↔ CAN2.0B, CAN2.0B ↔ CAN FD o CAN FD ↔ CAN FD.

El RA6T2 es ideal como actuador con una gran funcionalidad de temporizador para controlar motores en aplicaciones de accionamiento industrial.

La implementación de RA incluye dos buffers FIFO de recepción y un FIFO común configurable como FIFO de recepción o transmisión por unidad. La RAM FIFO es RAM ECC con código de corrección de errores para una mayor confiabilidad en aplicaciones de seguridad.

fifo de recepcion

La familia de microcontroladores RA es la elección perfecta para una plataforma para aplicaciones CAN y CAN FD.

La familia RA de Renesas ahora cuenta con más de 201 piezas que van desde 48 MHz a 240 MHz. Los MCU de la familia RA ofrecen especificaciones de consumo de energía líderes en la industria, una amplia gama de opciones de comunicación y las mejores opciones de seguridad de su clase, incluida la tecnología Arm TrustZone®. Todos los dispositivos RA son compatibles con el programa de software flexible Renesas (FSP) que incluye controladores y middleware altamente eficientes para facilitar la implementación de comunicaciones y seguridad. La GUI del FSP simplifica y acelera el proceso de desarrollo. Permite el uso flexible del código heredado, así como una fácil compatibilidad y escalabilidad con otros dispositivos de la familia RA. Los diseñadores que usan FSP también tienen acceso al extenso ecosistema Arm, que ofrece una amplia gama de herramientas que ayudan a acelerar el tiempo de comercialización, así como a la extensa red de socios de Renesas.