FlexRay

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Protocolo de red informática

FlexRay es un protocolo de comunicaciones de red automotriz desarrollado por el FlexRay Consortium para controlar la informática a bordo de los automóviles. Está diseñado para ser más rápido y fiable que CAN y TTP, pero también es más caro. El consorcio FlexRay se disolvió en 2009, pero el estándar FlexRay es ahora un conjunto de estándares ISO, ISO 17458-1 a 17458-5.

FlexRay es un bus de comunicación diseñado para garantizar altas velocidades de datos, tolerancia a fallos, funcionamiento en un ciclo de tiempo, dividido en segmentos estáticos y dinámicos para comunicaciones activadas por eventos y por tiempo.

Características

FlexRay admite velocidades de datos de hasta 10 Mbit/s, admite explícitamente topologías físicas en estrella y en bus y puede tener dos canales de datos independientes para tolerancia a fallos (la comunicación puede continuar con ancho de banda reducido si un canal está inoperativo). El autobús opera en un ciclo de tiempo, dividido en dos partes: el segmento estático y el segmento dinámico. El segmento estático está preasignado en segmentos para tipos de comunicación individuales, lo que proporciona un determinismo más fuerte que su predecesor CAN. El segmento dinámico funciona más como CAN, con nodos que toman el control del bus según esté disponible, lo que permite un comportamiento activado por eventos.

Consorcio

El Consorcio FlexRay estaba formado por los siguientes miembros principales:

  • Freescale Semiconductor
  • Bosch
  • NXP Semiconductors
  • BMW
  • Volkswagen
  • Daimler
  • General Motors

También hubo miembros Premium Associate y Associate del consorcio FlexRay. En septiembre de 2009, había 28 miembros asociados premium y más de 60 miembros asociados. A finales de 2009 el consorcio se disolvió.

Implementación comercial

El primer vehículo de producción en serie con FlexRay fue a finales de 2006 en el BMW X5 (E70), permitiendo un nuevo y rápido sistema de amortiguación adaptativo. El uso completo de FlexRay se introdujo en 2008 en el nuevo BMW Serie 7 (F01).

Vehículos

  • Audi A4 (B9) (2015–)
  • Audi A5 (F5) (2016–)
  • Audi A6 (C7) (2011–2018)
  • Audi A7
  • Audi A8 (D4) (2010-2017)
  • Audi Q7 (2015–)
  • Audi TT Mk3 (2014–2023)
  • Audi R8 (2015–2023)
  • Bentley Flying Spur (2013-2019)
  • Bentley Mulsanne (2010–2020)
  • BMW X5 (E70) (2006–2013)
  • BMW X6 (E71) (2008–2014)
  • BMW 1 serie
  • BMW 3 Series
  • Serie BMW 5 (2009–2017)
  • BMW 6 Series (2011–2018)
  • BMW 7 Series (2008–2015)
  • Lamborghini Huracán
  • Mercedes-Benz S-Class (W222) (2013–2020)
  • Mercedes-Benz S-Class (C217) (2014–2020)
  • Mercedes-Benz E-Class (W213) (2016–2023)
  • Mercedes-Benz C-Class (W205) (2015-2023)
  • Mercedes-Benz Clase C (W206) (2021–)
  • Mercedes-Benz S-Class (W223) (2020–)
  • Rolls-Royce Ghost (2009–)
  • Land Rover
  • Volvo XC90 (2015–)

Detalles

Reloj

El sistema FlexRay consta de un bus y ECU (unidad de control electrónico). Cada ECU tiene un reloj independiente. La desviación del reloj no debe ser superior al 0,15 % con respecto al reloj de referencia, de modo que la diferencia entre el reloj más lento y el más rápido del sistema no sea superior al 0,3 %.

Esto significa que, si la ECU-s es un emisor y la ECU-r es un receptor, entonces por cada 300 ciclos del emisor habrá entre 299 y 301 ciclos del receptor. Los relojes se resincronizan con suficiente frecuencia para garantizar que esto no cause problemas. El reloj se envía en el segmento estático.

Brocas en el autobús

000000 1 11111110000
00000000 11111111 00

Promedio correcto en caso de no errores. La señal se retrasa sólo por 2 ciclos.

000000 1111 0111 0000
00000000 11111111 00

Se cancelan los errores cerca de la mitad de la región de 8 ciclos.

00010 11111111 0000
000000 111111111 00

Los errores cerca del límite de la región de 8 ciclos pueden afectar el bit límite.

En cada momento, sólo una ECU escribe en el bus. Cada bit a enviar se mantiene en el bus durante 8 ciclos de reloj de muestra. El receptor mantiene un buffer de las últimas 5 muestras y utiliza la mayoría de las últimas 5 muestras como señal de entrada.

Los errores de transmisión de un solo ciclo pueden afectar los resultados cerca del límite de los bits, pero no afectarán los ciclos en el medio de la región de 8 ciclos.

Bits muestreados

El valor del bit se muestrea en el medio de la región de 8 bits. Los errores se trasladan a los ciclos extremos y el reloj se sincroniza con la frecuencia suficiente para que la deriva sea pequeña. (La deriva es menor que 1 ciclo cada 300 ciclos y durante la transmisión el reloj se sincroniza más de una vez cada 300 ciclos).

Marco

Toda la comunicación se envía en forma de marcos. El mensaje consta de bytes {}x0,x1,... ... ,xm− − 1}{displaystyle {x_{0},x_{1},dotsx_{m-1}}, empaquetado de la siguiente manera:

  • Transmission Start Signal (TSS) – bit 0
  • Frame Start Signal (FSS) – bit 1
  • m veces:
    • Byte Start Signal 0 (BSS0) – bit 1
    • Byte Start Signal 1 (BSS1) – bit 0
    • 0th bit of i-th byte
    • 1er bit of i-th byte
    • 2o pedazo de i-th byte
    • ...
    • 7a parte i-th byte
  • Frame End Signal (FES) – bit 0
  • Signal final de transmisión (TES) – bit 1

Si no se comunica nada, el bus se mantiene en el estado 1 (alto voltaje), por lo que cada receptor sabe que la comunicación comenzó cuando el voltaje cae a 0.

El receptor sabe cuándo se completa el mensaje comprobando si se recibió BSS0 (1) o FES (0).

Tenga en cuenta que 8 ciclos por bit no tienen nada que ver con los bytes. Cada byte tarda 80 ciclos en transferirse. 16 para BSS0 y BSS1 y 64 para sus bits. Tenga en cuenta también que BSS0 tiene el valor 1 y BSS1 tiene el valor 0.

Sincronización de reloj

Los relojes se resincronizan cuando la señal votada cambia de 1 a 0, si el receptor estaba en estado inactivo o esperando BSS1.

Como la sincronización se realiza en la señal votada, pequeños errores de transmisión durante la sincronización que afectan los bits límite pueden sesgar la sincronización no más de 1 ciclo. Como hay como máximo 88 ciclos entre sincronizaciones (BSS1, 8 bits del último byte, FES y TES - 11 bits de 8 ciclos cada uno), y la deriva del reloj no es mayor que 1 por 300 ciclos, la deriva puede sesgar el reloj. no más de 1 ciclo. Pequeños errores de transmisión durante la recepción pueden afectar sólo a los bits límite. Entonces, en el peor de los casos, los dos bits intermedios son correctos y, por lo tanto, el valor muestreado es correcto.

Aquí hay un ejemplo de un caso particularmente grave: error durante la sincronización, un ciclo perdido debido a una desviación del reloj y un error en la transmisión.

Errores que ocurrieron en el ejemplo:

  • Debido a un error de un solo bit durante la sincronización, la sincronización se retrasó en 1 ciclo
  • El reloj receptor fue más lento que el reloj del remitente, por lo que el receptor perdió un ciclo (marcado X). Esto no volverá a suceder antes de la siguiente sincronización debido a los límites de la máxima deriva de reloj permitido.
  • Debido a un error de un solo bit durante la transmisión, un poco fue votado incorrectamente cerca del resultado.

A pesar de tantos errores, la comunicación se recibió correctamente.

Las celdas verdes son puntos de muestreo. Todos, excepto el primero, están sincronizados por el flanco 1->0 en el fragmento de transmisión que se muestra.

Signal to be sent 1 0 1 0 1
Signal sent 11111111 00000000 11111111 00000000 11
En el autobús 11111111 0 1000000 11111111 000000 10 11
Recibidos 11111111 0 1000000 111111 X1 000000 10 11
5-maj votado 111 11110 100 00001 111 11 X100 000 0 1011

Herramientas de desarrollo

Al desarrollar y/o solucionar problemas del bus FlexRay, el examen de las señales del hardware puede ser muy importante. Los analizadores lógicos y analizadores de bus son herramientas que recopilan, analizan, decodifican y almacenan señales para que las personas puedan ver las formas de onda de alta velocidad en su tiempo libre.

El futuro de FlexRay

Ethernet puede reemplazar a FlexRay para aplicaciones que requieren un uso intensivo de ancho de banda y no son críticas para la seguridad.

Contenido relacionado

Spl (Unix)

spl es el nombre de una colección de rutinas o macros del kernel de Unix utilizadas. para cambiar el nivel de prioridad de interrupción. Históricamente...

Familia de arquitectura ARM

ARM es una familia de arquitecturas de conjuntos de instrucciones de computadora con conjunto de instrucciones reducido para procesadores de computadora...

10BASE5

10BASE5 fue la primera variante comercial de Ethernet. La tecnología se estandarizó en 1982 como IEEE 802.3. 10BASE5 utiliza un cable coaxial grueso y...

Altair 8800

La Altair 8800 es una microcomputadora diseñada en 1974 por MITS y basada en la CPU Intel 8080. El interés creció rápidamente después de que apareciera...

Acceso múltiple por división de tiempo

Acceso múltiple por división de tiempo es un método de acceso a canales para redes de medios compartidos. Permite que varios usuarios compartan el mismo...
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save