miércoles, 28 de octubre de 2015

FLEX RAY


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
Redundancia, seguridad y tolerancia de errores.




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.

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.

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.



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