FlexRay es un nuevo protocolo de comunicaciones para buses de datos en el automóvil desarrollado por el consorcio FlexRay entre 2000 y 2009. Se considera un protocolo de comunicación más avanzado que el CAN y el MOST en lo relativo al precio y a las prestaciones.
Características.
Sus características más destacadas son:
Una alta transmisión de datos (10 megabits por segundo)
Un comportamiento estimulado por factores temporales
Las especificaciones de éste protocolo están siendo
actualmente revisadas. El primer vehículo del mercado que contaba con ésta
tecnología fue el BMW X5, lanzado al mercado en Enero de 2007. Este vehículo se
basa en ésta tecnología para comunicar los sensores en los amortiguadores con
una centralita electrónica central que sirve como reguladora. El objetivo de
este sistema es una respuesta rápida a las asperezas de la carretera para
lograr un conducción lo más suave posible. Se espera el uso de esta tecnología
a gran escala en el 2008. La versión actual es la 3.0 (2009).
Creación.
El consorcio FlexRay fue fundado en Septiembre de 2000 por
BMW, Daimler AG (matriz de Mercedes), Philips y Motorola y actualmente está
compuesto por los siguientes miembros:
Volkswagen
BMW
Daimler AG
General Motors
Robert Bosch GmbH
2 Capa física.
En este apartado vamos a describir los puntos más importantes y relevantes de la capa física del protocolo Flexray.
En este apartado vamos a describir los puntos más importantes y relevantes de la capa física del protocolo Flexray.
3 Arquitectura de un nodo.
Un nodo Flexray está formado esencialmente por un microcontrolador, un periférico llamado Communication Controller, 2 transceivers y una fuente de alimentación.
El microcontrolador
es el propio de la ECU, el cual seguramente realiza otras funciones externas
propias de la ECU y que cada cierto tiempo envía y recibe una trama de
información al bus Flexray.
Para ello se comunica con el Communication Controller (CC),
que no es más que un periférico hardware que gestiona en todo momento el
protocolo. Es decir, el microcontrolador no se encarga de la pila del
protocolo, si no que lo gestiona todo el CC. Así pues, el CC se comunica a su
vez con los transceivers que se encargan de transformar los datos lógicos a
niveles eléctricos de Bus. Flexray dispone de 2 canales de comunicación, lo que
requiere un transceiver para cada canal. Entre los diferentes bloques
mencionados existen líneas optativas de señalización para determinadas
situaciones. Esto será explicado más adelante con más detalle. Por tanto el
hardware que se espera de un nodo o ECU responde al siguiente esquema
Estudio del nuevo bus
de automoción Flexray y diseño de un prototipo ilustrativo de la tecnología
4 Topologías de red.
Flexray permite un amplio abanico de topologías de red. El hecho de tener 2 canales independientes aporta además otro grado de libertad, pudiendo hacer para cada canal una configuración de nodos diferente. La interconexión básica entre dos nodos responde al siguiente esquema.
En el caso que conectemos más nodos podemos hacerlo de
manera pasiva o de manera activa. Veamos antes de empezar a ver diferentes
ejemplos de topologías otro elemento de red importante en Flexray como es el
Active Star. El siguiente esquema nos da una idea
Así pues combinando estos elementos entre sí y para cada
canal obtenemos una flexibilidad substancial de crear diferentes topologías de
red, ya sean básicas o híbridas.
Para cada una de ellas existen algunas limitaciones que hay
que cumplir para el correcto funcionamiento del bus tales como longitud máxima
del bus, número máximo de stubs, número máximo de Active Stars.
Estos parámetros son típicos de todos los buses y tienen
como causa principal los retardos
que se producen en el bus.
que se producen en el bus.
5. Topologías básicas.
5.1 Linear passive bus
Es la topología más
básica y una de las más usadas. Se puede apreciar como es posible que un nodo
se conecte a los dos canales (por ejemplo en el caso que este nodo representara
una función crítica del sistema) mientras que otros nodos se conectan a uno de
los dos canales. Las limitaciones más importantes a tener en cuenta en esta
topología son:
Longitud del bus 24m
Número máximo de nodos conectados al bus mediante stubs 22
Mínima distancia entre stubs 15cm.
Número máximo de nodos conectados al bus mediante stubs 22
Mínima distancia entre stubs 15cm.
Estudio del nuevo bus de automoción Flexray y diseño de un
prototipo ilustrativo de la tecnología Cabe recalcar que existe una variante
del Passive Bus que es la Passive Star la cual tiene las mismas limitaciones
que el anterior.
Eso sí se limita el uso de la Passive Star a un máximo de 1
‘splice’ (empalme). La idea de la
Passive Star es que todos los nodos se unen en un solo punto.
5.2 Bits en el bus.
Desviación de 2 ciclos en situaciones libres de errores.
Los errores en las cercanías del centro en un ciclo de 8 se
cancelan.
Los errores junto a los bordes de un ciclo de 8 pueden
afectar al bit fronterizo.
En cada momento solo una centralita emite en el bus. Cada
bit se mantiene en el bus durante 8 ciclos de reloj. Cada receptor contiene
un búfer de los 5 últimos ciclos.
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
Desviación de 2 ciclos en situaciones libres de errores.
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
Los errores en las cercanías del centro en un ciclo de 8 se
cancelan.
0
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
6. Errores de transmisión.
En un único ciclo pueden afectar los resultados de los bits fronterizos, pero no en el centro de un ciclo de 8 bits.
Muestreo de bits
El valor del bit se muestrea en el centro de una región de 8
bits. Los errores se desplazan a los ciclos extremos, y el reloj se sincroniza
frecuentemente para evitar desfases.
7. Estructura.
Toda la comunicación se envía en estructuras soporte
(o frames). Un mensaje consiste en bytes ,
empaquetados de la siguiente forma:
Señal de inicio de transmisión (Transmission Start Signal,
TSS) - bit 0
Señal de inicio de la estructura (Frame Start Signal, FSS) -
bit 1
veces:
Señal de inicio de byte 0 (BSS0) - bit 1
Señal de inicio de byte 1 (BSS1) - bit 0
0-ésimo bit del i- byte
1. bit del i-ésimo byte
2. bit del i-ésimo byte
...
7. bit del i-ésimo byte
Señal de fin de la estructura (FES) - bit 0
Señal de fin de la transmisión (TES) - bit 1
Si no hay ningún mensaje en el bus, el valor es igual a 1
(voltaje alto), de forma que cada receptor sabe que la comunicación comienza
cuando el voltaje cambia a 0.
El receptor sabe si el mensaje es completo comprobando que o
BSS0 (1) o FES (0) han sido recibidos.
Hay que destacar que un ciclo de 8 por bit no tiene nada que
ver con bytes. Se necesitan 80 ciclos para transmitir un solo byte, 16 para
BSS0 y BSS1 así como 64 para sus bits. Igualmente, BSS0 siempre tiene el valor
0 y BSS1 el valor 1