Protocolo FLEXRAY
Protocolo FLEXRAY
Curso UniTrain
«FlexRay»
Lucas-Nülle GmbH · Siemensstrasse 2 · D-50170 Kerpen (Sindorf), Alemania · Tel.: +49 2273 567-0
www.lucas-nuelle.es
Metas de aprendizaje 4
Equipo 6
CAN / TTCAN 14
LIN 15
MOST 16
TTP/C 17
Clasificación 18
Áreas de aplicación 20
Prueba de conocimientos 21
Fundamentos generales 24
Objetivos 25
Consorcio 26
Propiedades 27
Tecnología Drive-by-Wire 29
Ejercicio: Steer-by-Wire 30
Aplicaciones 34
Prueba de conocimientos 36
Fundamentos de la comunicación 38
Método TDMA 42
Método FTDMA 44
Topologías pasivas 46
Topologías activas 47
Estructura del nodo de comunicación 49
Transceptor FlexRay 84
Guardián de bus 87
Prueba de conocimientos 90
Ciclo de comunicación 96
Copyright 175
Metas de aprendizaje
El uso y avance de la electrónica en los automóviles no se detiene frente a los tradicionales dominios
de la mecánica y la hidráulica. Para prestar al conductor una asistencia con altas prestaciones se
precisan interfaces electrónicas en el chasis y, sobre todo, en el sistema de frenado y la
dirección. FlexRay ha sido desarrollado y se continúa perfeccionando para cumplir con todos estos
requisitos.
Contenidos de aprendizaje
Conocer y saber distinguir los distintos sistemas de bus del automóvil.
Funcionamiento del bus FlexRay.
Comunicación de los componentes conectados al bus FlexRay.
Intercambio de datos en una red FlexRay.
Desarrollar un entendimiento profundo mediante aplicaciones prácticas del protocolo
FlexRay.
Identificación de los errores comunes y análisis de las variables técnicas medidas.
Conocer el propósito y el modo de funcionamiento de la tecnología Steer-By-Wire.
Requisitos
Para un exitoso aprendizaje del curso se requiere:
Este curso se ha elaborado en colaboración con la empresa Eberspächer Electronics GmbH & Co.
KG, una firma experta en sistemas de bus, especialmente en el sistema FlexRay.
Equipo
CO4203-
Interfaz UniTrain
2A
CO4203-
Bus FlexRay UniTrain
4R
CO4203-
Accesorios de medición UniTrain
2J
PS2123-
8P / Portalámparas con fuente
SO5128- luminosa de 15 V incluida
3R
Módulo de bus FlexRay CO4203-4R
El FlexRay es un sistema de bus de campo en serie, determinista y con tolerancia a fallos concebido
para aplicaciones en el automóvil.
La próxima imagen le brinda la posibilidad de conocer mejor los distintos componentes del panel.
Para ello siga sencillamente la indicación siguiente.
Pase el cursor del ratón sobre la imagen para obtener más información acerca de los distintos
componentes del panel.
El panel
El presente panel de experimentación FlexRay representa el clúster FlexRay (del inglés cluster:
grupo). El clúster se compone de dos nodos. En la parte izquierda puede verse el nodo 1 y a la
derecha el nodo 2. La comunicación entre los nodos se realiza mediante la interconexión de los
terminales situados en el centro. De este modo la comunicación se lleva a cabo mediante dos
canales redundantes (A y B) que posibilitan el intercambio de datos.
El clúster se utiliza para formar un sistema Steer-by-Wire. Para ello se proporciona la señal del
sensor del «volante» a un nodo, desde donde pasará al otro nodo mediante el bus. Este nodo tiene
al servoaccionamiento como host que procesa la señal del sensor. Los nodos trabajan con el
protocolo FlexRay; los programas de los hosts (sensores y actuadores) se han escrito en el lenguaje
de programación C.
Características
El sistema FlexRay se caracteriza por lo siguiente:
En este capítulo se explica como se pone en operación el panel para, a continuación, trabajar con el
curso LabSoft.
Conecte la interfaz de medición UniTrain con el módulo FlexRay CO4203-4R como se muestra en la
siguiente animación. Para que pueda trabajar con dicho módulo tiene ahora que establecer el
cableado representado en la imagen de más abajo:
Por medio del cableado se conectan los nodos
entre sí y se permite así su comunicación. Ahora
puede iniciar el software LabSoft en su PC y
trabajar con el curso FlexRay.
Introducción a los sistemas de bus para automóviles
La aportación de la electrónica al automóvil se ha incrementado en los últimos años. Esto está ligado
al aumento de la complejidad de la interconexión de sensores, actuadores y unidades de control y de
los sistemas de entretenimiento y navegación. Para ello se utilizan distintos sistemas de bus que se
diferencian en lo concerniente a exigencias, eficiencia, costes y capacidad de actuación en tiempo
real.
Los sistemas de bus, cuya transmisión de datos ser realiza en banda base, funcionan,
principalmente, por multiplexación por división de tiempo. Los distintos métodos se dividen en dos
grupos, uno con resolución de colisiones en el acceso al bus y otro con acceso controlado:
En el siguiente cuadro se enumeran brevemente los hitos esenciales en el desarrollo del sistema de
bus CAN.
CAN / TTCAN
El estándar del protocolo CAN especifica un acceso al bus por medio del método denominado de
acceso múltiple con escucha de portadora y detección de colisiones o CSMA/CR (Carrier Sense
Multiple Access/Collision Resolution). Esto permite detectar colisiones y soluciona las situaciones de
concurrencia mediante un análisis de prioridad basado en un arbitraje. Se trata, por lo tanto, de un
procedimiento concurrente de acceso al bus.
Bus multimedia.
Transmisión de datos de hasta 22,5 Mbits/s por fibra óptica (50 Mbits/s en desarrollo).
Transmisión de datos orientada a acontecimientos y al control temporal.
Bus serie con topología de anillo.
TTP/C
Desde el punto de vista de la comunicación técnica, los vehículos se pueden dividir en áreas
diferentes. Cada una de ellas cumple tareas determinadas y plantea determinadas exigencias a la
red. Por esta razón, los automóviles no tienen solo una red que conecte directamente entre sí todas
las unidades de control, sino que poseen varias de ellas. En función de las exigencias
correspondientes, relacionadas con la velocidad y la seguridad de transmisión, al igual que con los
costes, se emplean diferentes sistemas de bus.
Para poder clasificar los sistemas de bus, la Society of Automotive Engineers (SAE) definió tres
clases, que se diferencian entre sí, sobre todo, por la velocidad de transmisión. Actualmente, estas
tres clases ya no resultan suficientes, por lo que la clasificación se amplió a cinco niveles.
Estructura de red en el automóvil
No solo los modernos vehículos de clase superior, sino también los de clase media (como, por
ejemplo, el Golf V) y los coches pequeños (como el Smart) disponen ya de diferentes sistemas de
bus con distintas características
Desde el punto de vista de la comunicación técnica, los vehículos se pueden dividir en áreas
diferentes. Cada una de ellas cumple tareas determinadas y plantea determinadas exigencias a la
red. Por esta razón, los automóviles no tienen solo una red que conecte directamente entre sí todas
las unidades de control, sino varias redes. En función de las exigencias correspondientes,
relacionadas con la velocidad y la seguridad de transmisión, al igual que con los costes de la red, se
emplean diferentes sistemas de bus:
Prueba de conocimientos
¿Cuáles de las siguientes afirmaciones son correctas en relación con el bus LIN?
¿Cuáles de las siguientes afirmaciones son correctas en relación con el bus MOST?
A la clase A
A la clase B
A la clase de seguridad
Fundamentos generales
FlexRay se convertirá en el sistema de comunicación del futuro si está basado en sistemas X-By-
Wire. Correspondientemente, en función de las exigencias, se establece como prioridad una alta
tasa de transmisión de datos, una comunicación determinista, una alta tolerancia a fallos al
igual que flexibilidad.
Objetivos
Objetivos técnicos
Velocidad del bus de 10 Mbits/s.
Canales de comunicación redundantes.
Puesta a disposición de una base de tiempo global síncrona.
Transmisión de mensajes garantizada con pequeñas diferencias.
Funcionalidad del protocolo independiente de la red (los terminales de comunicación
pueden variar arbitrariamente).
Asistencia de comunicación continua y esporádica.
Compatibilidad con Byteflight.
Función «Carry Over», fácil integración de componentes.
Sistema multimaster.
Implementación de distintas topologías (bus, estrella, sistema híbrido, diseño de dos
canales).
Objetivos económicos
Licencia libre.
Lograr un protocolo estándar para la industria automovilística.
Gran variedad entre los socios de desarrollo.
Aseguramiento de la calidad mediante pruebas de conformidad.
Estos objetivos se derivan del trabajo y experiencias conjuntas de las redes de colaboración de la
industria automotriz, así como de las demandas de las aplicaciones futuras en un sistema de
comunicación del automóvil. Representan la base para el desarrollo y marcan la pauta de las futuras
evoluciones.
Consorcio
El Consorcio FlexRay fue fundado como una organización dedicada a promover la aceptación de un
estándar abierto para sistemas de bus de alta velocidad en aplicaciones de control distribuido en los
automóviles como, por ejemplo, X-by-Wire. Desde su creación, en septiembre de 2000, el consorcio
ha crecido hasta tal punto que ahora cuenta entre sus miembros con algunas de las empresas más
grandes e influyentes de la industria del automóvil. El desarrollo de FlexRay está determinado en
gran medida por las principales firmas participantes, como es el caso de BMW, DaimlerChrysler,
General Motors, Motorola, Philips y Robert Bosch GmbH. La distinta naturaleza de sus miembros
ofrece la oportunidad de interactuar con los grupos del consorcio FlexRay para presentar ideas,
tomar parte en reuniones, asegurar la participación en el acceso a las nuevas especificaciones y, por
supuesto, aprovechar la oportunidad de participar activamente en el establecimiento de este
estándar global. El Consorcio FlexRay se disolvió en 2009 pero la especificación del protocolo
todavía está disponible en la página web de FlexRay.
El bus FlexRay se distingue por las características que se mencionan a continuación. En este
caso se prestó mayor atención a la flexibilidad y la versatilidad del sistema. Las siguientes
propiedades conforman las referencias del sistema:
Redundancia variable
Para aumentar la disponibilidad de un sistema, los mensajes se pueden transmitir de forma
redundante. Sin embargo, es posible realizar una selección que permita que solo ciertos mensajes
se repitan. La ventaja de este procedimiento estriba en una menor pérdida de ancho de banda.
Tolerancia a fallos
El sistema FlexRay está diseñado para ofrecer una base inherentemente segura; es decir, aun en
caso de fallo de alguna parte del sistema, o bien si dicha parte del sistema provocara un fallo, la
funcionalidad básica no se ve afectada.
Si se consideran las propiedades de FlexRay, puede observarse que contiene algunas de las
ventajas de los anteriores sistemas de bus:
Por razones de seguridad, los datos deben transferirse en paralelo, de forma rápida y redundante, a
través de múltiples líneas independientes, por lo que es prácticamente imposible que se llegue a un
caso de fallo que implique el peor de los escenarios.
¡Tenga en cuenta que tanto el sistema Brake-by-wire como el Steer-by-wire todavía no se utilizan en
la práctica!
Ejercicio: Steer-by-Wire
Montaje de experimentación
Permita la comunicación entre los nodos 1 y 2 mediante la conexión de los respectivos puertos
utilizando para ello cables de medición de 2 mm:
GND
Shield
3. BUS-
BUS+
Sí
No
¿Por qué canal se transmite la señal?
Canal A
Canal B
Ground
Shield
Bus +
Bus -
¿Puede tomarse una señal válida del cable Bus + o Bus - contra tierra?
El ámbito de aplicación del bus FlexRay no se limita al campo de la tecnología automotriz. Por
ejemplo, este sistema ofrece a todo el sector de la tecnología de automatización diversas
posibilidades de empleo. En este caso, para un aumento de las necesidades exigidas, es
especialmente importante el comportamiento determinista temporal y la rentabilidad. Otras
aplicaciones están presentes en las ingenierías militar, médica y aeroespacial.
Sin embargo estas aplicaciones no son objeto de este curso. Nuestra atención se centra en la
electrónica del automóvil.
Vehículos especiales
Los vehículos agrícolas y para la construcción, así como los de trabajos municipales, tienen
frecuentemente funciones complejas. A menudo, dichas funciones deben controlarse conjuntamente
con mucha precisión. Hoy en día ya se utilizan muchos sistemas de bus para la conexión en red de
componentes. Para evitar accidentes graves, las funciones de estos vehículos tienen que seguir
activas aún en caso de fallos.
Prueba de conocimientos
¿Cuáles de los siguientes aspectos representan una finalidad técnica del bus FlexRay?
¿Cuáles de los siguientes exitosos fabricantes pertenecen al núcleo del consorcio FlexRay?
Volkswagen
BMW
Opel (GM)
Mercedes (Daimler)
Ford
Honda
Tesla Roadster
¿Qué capacidad del sistema se describe como «redundancia en escala»?
¿Qué tipo de sistemas se implementan técnicamente por medio del empleo de la tecnología
Drive-by-Wire?
¿Por qué no es posible implementar el sistema de confort «Adaptive Drive» con el bus CAN
o LIN?
Introducción
En este capítulo se exponen los principios básicos del protocolo FlexRay. La atención se centra en la
capa física además de en las siguientes preguntas: ¿cómo se transmiten los impulsos?, ¿qué
señales se transmiten por el bus?, ¿cómo está construido un nodo FlexRay? Estas y otras
interrogantes se responderán a lo largo de este apartado. A continuación se analizará el sistema
desde el punto de vista de la compatibilidad electromagnética (CEM).
Para reducir al mínimo el riesgo de averías y fallos, FlexRay mantiene un diseño de canal de
comunicación redundante. Cada uno de los dos canales de comunicación puede operar con una
tasa de transmisión máxima de 10 Mbit/s. Sin embargo, en este canal redundante también se puede
aumentar la velocidad de transmisión hasta los 20 Mbits/s. La elección entre tolerancia a fallos o
aumento de la tasa de transmisión se puede ajustar para cada uno de los mensajes FlexRay.
Método de acceso al bus
El bus y la forma o manera del uso del medio de transmisión es una de las principales cuestiones en
los sistemas de comunicación. En la mayoría de los casos no es posible conectar entre sí todos los
componentes que forman parte del sistema. Imagine que todos los actuadores y sensores de un
vehículo moderno estuviesen conectados directamente a la unidad de control pertinente. Esto
constituiría un error solo por la cantidad extremadamente grande de espacio que necesitarían las
líneas. Como consecuencia, esto significa que las distintas instancias tendían que compartir el canal
de comunicación. Lógicamente, el acceso de todos los dispositivos al canal de transmisión debe
obedecer a determinadas reglas y, por lo tanto, debe estar sujetos a algún tipo de control. Pasa
exactamente lo mismo con el tráfico en una carretera. La vía, representada en este caso por el canal
de transmisión, es utilizada en común por todos los conductores. Puede ponerse como ejemplo un
envío desde una fábrica a un cliente. Para conseguir este objetivo se necesita un camión (la señal
de información) y la red vial (el canal de transmisión). Este es el objetivo que también tienen todos
los otros conductores de camiones y, dado que no puede construirse un camino para cada uno de
ellos, existe un ordenamiento del tráfico que regula el uso del medio. En telecomunicaciones, esta
ordenación del tráfico se denomina Media Access Control (control de acceso al medio).
Naturalmente, no existe un modo único de realizar este control de acceso, sino que hay muchas
posibilidades distintas, como se explica brevemente a continuación:
Principalmente, puede distinguirse entre un acceso controlado o determinista y un acceso
concurrente o aleatorio. Consideremos en primer lugar el acceso determinista. Este se define por un
orden de acceso fijo de cada participante; es decir, los nodos no tienen la misma igualdad de
derechos de acceso.
Esto puede regularse, por ejemplo, mediante un maestro (bus LIN) que define el orden de acceso.
En este caso hablamos de un acceso con regulación centralizada.
Si no hay ningún maestro, sino que el orden se establece por convenio entre quienes necesitan
utilizar el medio compartido, se habla de sistemas descentralizados como es el caso de FlexRay. El
método de acceso opuesto es el concurrente, es decir, todos los participantes en la comunicación
tienen los mismos derechos de acceso: no están subordinados a ninguna estructura u orden
temporal, y el medio de transmisión se encuentra a disposición en todo momento. Esto implica que
se puedan producir colisiones. En este contexto, colisión significa que más de un participante accede
al medio de transmisión al mismo tiempo, lo que conlleva una pérdida de información. El método
utilizado en este caso es el denominado de acceso múltiple con escucha de portadora o CSMA
(Carrier Sense Multiple Access). Esto significa que los nodos de la red supervisan el canal de
transmisión antes de enviar datos, haciéndolo solo si lo encuentran libre. El procedimiento CSMA
está dividido en tres métodos subordinados:
Evitación de colisión: Las colisiones se evitan con un periodo aleatorio de espera que
expira después de que se detecte un canal libre. Este proceso no resuelve las colisiones,
sino que ayuda a evitarlas desde el principio.
Detección de colisión: En este caso no se evitan las colisiones, sino que se las
reconoce y se las resuelve a continuación; en un primer paso se cancela la transmisión,
para más adelante volver a emitir después de que uno de los dispositivos haya variado la
duración de su tiempo de retardo de transmisión.
Resolución de colisión: Aquí también se detectan las colisiones y se solucionan
mediante un análisis de prioridades. En el caso del bus CAN la contienda se resuelve
mediante el uso de una lógica de arbitraje.
Ahora ha adquirido una visión general de los métodos de acceso utilizados en cada sistema
de bus. Este conocimiento le ayudará en la clasificación de los sistemas de bus:
Bus LIN __
Bus CAN __
FlexRay __
Bus TTCAN __
En las siguientes páginas se abordará más detalladamente los métodos relevantes de acceso al bus
FlexRay.
Método TDMA
Para la transmisión de datos, el bus FlexRay utiliza una técnica de control descentralizada por
multiplexión temporal con acceso controlado, es decir, los nodos de FlexRay no deben acceder al
bus de forma incontrolada en función de los acontecimientos, como ocurre en el bus CAN y, por otra
parte, el control no lo realiza un nodo maestro, como en el caso del bus LIN. Los nodos FlexRay
deben atenerse a un diagrama de operaciones predefinido (planificación temporal) que asigna a
cada mensaje un intervalo de tiempo determinado en cada ciclo, de modo que queden definidos los
tiempos de transmisión de todos los mensajes.
El comportamiento descrito está representado por el método sícnrono TDMA, basado en el principio
de determinismo temporal. El acceso múltiple por división de tiempo (Time Division Multiple Access)
se aplica en un segmento estático de un ciclo de la comunicación. Para los segmentos dinámicos se
usa una forma extendida del TDMA basada, en definitiva, en los mismos principios. En este caso tan
solo se cuenta con una jerarquía de comunicación, sin una planificación temporal fija.
Además puede distinguirse entre métodos de TDMA asíncronos y síncronos, donde en estos últimos
cada slot (intervalo) tiene asignado de forma explícita uno de los nodos de la comunicación. El
método asíncrono permite, sin embargo, que un intervalo sea utilizado por otro dispositivo si el
verdadero «dueño» no expresa ninguna solicitud de envío. En este caso, en la cabecera de la trama
de datos debe añadirse un identificador pues, en caso contrario, no sería posible una correcta
asignación.
El requisito de este método de acceso es la existencia de una base de tiempo sincronizada para
cada miembro del bus. La precisión de esta base de tiempo caracteriza en gran medida la eficacia
de este método de acceso y se logra mediante el uso de osciladores de cuarzo.
Método FTDMA
En un nodo del clúster FlexRay se dan dos formas diferentes de acceso al medio o canal de
comunicación: Por un lado, mediante el método TDMA (Time Division Multiple Access) y por otro
con el método FTDMA (Flexible Time Division Multiple Access), que es una extensión del
procedimiento anterior.
El método FTDMA se utiliza para el segmento dinámico de transmisión, es decir, cuando uno de los
nodos quiere enviar datos pero por razones de longitud o prioridad no puede hacerlo en el segmento
estático, por lo que puede hacerlo mediante el uso del otro segmento.
El último segmento del protocolo no se usa para la transmisión de datos. NIT significa «Network Idle
Time» o tiempo de espera de la red y ofrece a las unidades de control el tiempo necesario para
volver a sincronizarse con el bus y entre ellas mismas. Esto es importante porque una unidad de
control no sincronizada enviaría información en un intervalo erróneo, lo que daría lugar a la pérdida
de estos datos. La razón para la sincronización necesaria se encuentra en los segmentos dinámicos,
pues estos no poseen una asignación de tiempo uniforme y, por lo tanto, se puede tener como
resultado desfases en el tiempo.
La sincronización no la realiza un maestro o un reloj, sino que se logra mediante la interacción de las
unidades de control cuando estas despiertan del «modo latente». Para más información sobre este
segmento, consulte el capítulo del mismo nombre.
Topologías pasivas
La comunicación FlexRay no está vinculada a una topología física en particular. Sin embargo, para
asegurar el aumento de las tasas de transmisión, se recurre predominantemente a la topología en
estrella. La conexión punto a punto ofrece la ventaja de evitar problemas en los terminales del bus.
Además, el sistema FlexRay también ofrece la posibilidad de utilizar una estructura de bus
convencional. Por otra parte, es posible extender estas topologías básicas, aumentando así sus
posibilidades. Así, por ejemplo, es posible crear una estructura de bus de dos canales, garantizando
una mayor seguridad por la introducción de la redundancia en el sistema.
Las especificaciones de FlexRay prescriben que la distancia máxima entre dos nodos no exceda los
24 metros, si los canales de comunicación del clúster FlexRay operan a una velocidad de 10 Mbits/s.
La reducción de la tasa de datos posibilita el incremento de la distancia máxima entre los nodos
FlexRay más distanciados. De acuerdo con las especificaciones, en una línea no deben conectarse
más de 22 nodos.
Topologías activas
En lugar de una conexión pasiva, los nodos FlexRay también pueden combinarse de forma activa
con la ayuda de un adaptador en estrella: se ordena una interconexión del clúster FlexRay donde los
nodos estén conectados físicamente en estrella y se sustituye el punto central de la estrella (pasivo)
por un acoplador activo en estrella.
Un acoplador en estrella activo recibe las señales mediante un ramal de comunicaciones, las
amplifica y distribuye hacia los otros ramales de comunicación. Exceptuando las topologías mixtas,
al final de cada ramal se encuentran los respectivos nodos FlexRay. La distancia máxima entre el
acoplador en estrella activa y los nodos FlexRay no debe superar los 24 metros.
Otra alternativa que ofrece FlexRay es la utilización de las llamadas topologías híbridas, que
combinan las ventajas de cada una de las distintas estructuras.
En un nivel abstracto, el sistema global «vehículo» está formado por una red de comunicación
compleja que se compone de distintas estaciones de comunicaciones que, a su vez, están
interconectadas por canales de comunicación. FlexRay ofrece en este caso la posibilidad de
implementar los canales óptica y electrónicamente.
En este capítulo se analiza detalladamente la estructura interna de los dispositivos de comunicación,
también denominados nodos:
Host
El host
El host está representado por un microcontrolador. En él se ejecuta el verdadero programa de
aplicación, donde se envían o reciben informaciones de otros nodos. Por ejemplo, el host podría
contener el código del programa que lee los sensores de revoluciones de las ruedas.
Posteriormente, estos datos deben enviarse desde los nodos «sensores de revoluciones de las
ruedas» a otros nodos que puedan procesar la información.
Por otro lado, el host también puede recibir datos que, después, puedan ser utilizados para el control
de actuadores.
Transceptor FlexRay
El componente denominado transceptor o también «controlador de bus» representa la conexión
física y directa al canal de transmisión, es decir, acopla las señales a la línea, quedando así definido
como controlador de comunicación. Este está bajo la constante supervisión del guardián del bus.
Si recibe una señal para realizar una conversión A/D, el controlador de comunicación la podrá
procesar. Si el nodo quiere enviar una información, el transceptor convierte la señal discreta en un
impulso analógico de tensión.
Controlador FlexRay
El controlador FlexRay contiene el protocolo real del bus, es decir, se asegura de que las
especificaciones del protocolo se respeten, garantizando así una operación libre de fallos. Por
ejemplo, tiene la tarea de formar los paquetes de datos que contienen información para ser enviada
conforme a las normas FlexRay, así como la de reenviar dichos paquetes al transceptor en el
instante adecuado. Aquí el instante adecuado se da cuando los nodos tienen permiso para
suministrar señales en conformidad con el determinismo temporal establecido. Para ello es esencial
una sincronización con el sistema de bus.
La línea RxD: Esta línea soporta la transmisión de los datos recibidos por
el controlador del bus al controlador de comunicación («Receive Data»).
La línea TxD: El controlador de comunicación envía datos por esta línea al controlador
del bus («Transmit Data»).
La línea TxEN: Esta línea sirve para el control del controlador del bus. Mediante un nivel
de señal bajo activo envía a dicha unidad el permiso para introducir el paquete de datos
recibido al canal de transmisión.
Bajo activo / active low: Esta expresión indica un nivel de señal correspondiente a un estado. En la
tecnología digital existen principalmente dos diferentes niveles o estados, por ejemplo, «1» = «on» o
«0» = «off». La mayoría de sistemas trabajan con el nivel lógico «activo alto», es decir, si se
transmite un «1», el sistema está activo. Si se utiliza el nivel lógico «bajo activo» se invierte el
comportamiento.
El controlador FlexRay
Internamente, un controlador de FlexRay consta de una interfaz de host de controlador o CHI
(Controller Host Interface) y de un motor de protocolo o Protocol Engine (PE). La interfaz del
controlador de host permite precisamente la comunicación con el host. Además funciona a modo de
búfer (cadena de datos guardados temporalmente) para los datos destinados definitivamente al host.
El protocolo es responsable de enviar y recibir datos, siendo el transmisor o receptor la instancia que
establece la comunicación con el controlador del bus. Para una completa implementación del
protocolo FlexRay es de capital importancia contar con una base de tiempo uniforme y expandible.
Esto se logra integrando en cada nodo la unidad de control de tiempo o TCU (Time Control Unitel)
integrada en el controlador FlexRay. Esta unidad sienta las bases para una respuesta determinista
en el tiempo.
Generación de señales del bus FlexRay
Para la transmisión de datos entre los nodos individuales se utiliza una capa física eléctrica
especificada por el consorcio. Las especificaciones de un sistema óptico han sido omitidas por
razones de costes y montaje. El enfoque actual se limita a un diseño con líneas eléctricas.
Las señales se transmiten por esta vía en forma de impulsos de tensión, en los que hay tres estados
de señal posibles (transmisión en modo triestado):
Data_1 «dominante»
Data_0 «dominante»
Idle «recesivo» (en espera)
La animación deja en claro que la señal resultante se forma a partir de la diferencia de las señales
de dos canales, es decir, que ni la señal de la línea BP ni la de la línea BM, analizadas por separado,
son portadoras de información. Solo a partir del resultado obtenido por la diferencia se genera la
señal correcta para el sistema FlexRay.
En principio, las dos líneas trabajan con las tensiones de 3,5 V (BP) y de 1,5 voltios (BM).
Esto resulta en una tensión nominal (valor medio) de 2,5 voltios y el máximo nivel de señal de +/- 2
voltios. En este caso, el voltaje exacto depende en gran medida del punto de medición y de la
terminación. En los siguientes ejercicios descubrirá que, por ejemplo, el sistema de capacitación
opera con valores ligeramente discordantes.
Dominante - recesiva
Al leer estos dos términos surge naturalmente la pregunta de por qué un sistema de bus que usa
exclusivamente un acceso controlado (TDMA/FTDMA) precisa de esta división de las señales. La
respuesta a esta cuestión se encuentra en la fase inicial del clúster. En modo estacionario, es decir,
en estado de sincronía, la colisión de datos es imposible.
Otros comportamientos pueden darse en la fase transitoria de iniciación o mientras el sistema
«despierta» (fase conocida como wake-up), hecho motivado por la sincronización todavía pendiente
y la posibilidad de colisiones durante este proceso. Aquí es posible que varios nodos transmitan
simultáneamente el símbolo destinado a evitar colisiones (Collision Avoidance Symbol o CAS)
(hecho igualmente válido para el símbolo de Wake-Up). FlexRay resuelve el conflicto de la manera
siguiente: por medio de la asignación de «dominante» o «recesiva» se dan principalmente las
siguientes señales durante una colisión:
Data_1 /
Data_1 Data_0
Data_0 / Idle
En este y los siguientes ejrercicios se miden los niveles del bus y luego se compararan los
resultados obtenidos en la práctica con los valores teóricos previamente expuestos.
Montaje de experimentación
RANGO: 10V
MODO: RMS
DC
Procedimiento de experimentación
En primer lugar, revise si el sistema FlexRay funciona correctamente moviendo el volante. Si a
través de ello reaccionan los actuadores, será posible realizar mediciones en el sistema.
Mida la tensión entre Bus+ y GND y Bus- y GND y responda la siguiente pregunta. No vuelva a
mover los controles.
Usted ha medido la tensión nominal del sistema FlexRay. ¿Qué significado tiene esta
variable?
En este ejercicio se analizarán las señales que se transmiten en el bus positivo y en el canal
negativo. Para ello se utilizará el osciloscopio Labsoft.
Montaje de experimentación
Procedimiento de experimentación
Ahora mida la señal de la línea del bus+ y fíjela en la pantalla por medio del disparador («trigger»).
Varíe un poco los ajustes de disparo para obtener así la mejor representación posible de la señal.
Después de haber realizado el disparo, puede conseguir una captura de pantalla mediante el
comando «Stop» del osciloscopio. A continuación, copie la imagen arrastrándola hasta la ventana
siguiente:
Evaluación del ejercicio
Para saber si la
señal contiene
una componente
Sí, el canal del bus positivo tiene una tensión nominal de 2,5 de continua, es
voltios. Esto representa el punto de salida para la variación necesario
de la señal. seleccionar el
acoplamiento del
No, no hay ningún desplazamiento de la tensión. osciloscopio de
CC a CA. Esto
elimina la
componente de
continua.
¿El canal del bus positivo transporta información o la señal no tiene ningúna contenido
relevante?
En este ejercicio se analizarán las señales que se transmiten en el canal del bus negativo.
Para ello se utilizará el osciloscopio Labsoft.
Montaje de experimentación
Procedimiento de experimentación
Ahora mida la señal de la línea del bus negativo y fíjela mediante el disparador («trigger»). Varíe un
poco los ajustes de disparo para obtener así la mejor representación posible de la señal. Después de
haber realizado el disparo puede conseguir una captura de pantalla mediante el comando «Stop» del
osciloscopio. A continuación, copie la imagen arrastrándola hasta la ventana siguiente:
Sí
Recordatorio:
No unos 2,5 V en el
Este canal no contiene ninguna tensión nominal bus+
¿Son las magnitudes de amplitud semejantes en comparación con la señal del bus positivo?
¡Tenga siempre
La magnitud de las amplitudes es aproximadamente igual. en cuenta la
teoría! Piense en
Las amplitudes difieren notablemente. lo que puede ser
posible y en lo
que no puede ser
Medición de la señal diferencial
En este ejercicio se analizará el origen de la señal diferencial transmitida por los dos canales
de bus. Para ello se utilizará el osciloscopio Labsoft.
En los ejercicios anteriores se han estudiado de cerca las señales de los canales B+ y B-. En el
siguiente paso se interconectarán las señales para así entender cómo se produce la señal y, por lo
tanto, conocer los niveles lógicos exactos con los que trabaja el sistema FlexRay.
Montaje de experimentación
Para saber si la
señal contiene
una componente
Sí, el canal del bus positivo tiene una tensión nominal de 2,5 de continua, es
voltios. Esto representa el punto de salida para la variación necesario
de la señal. seleccionar el
acoplamiento del
No, no hay ningún desplazamiento de la tensión. osciloscopio de
CC a CA. Esto
elimina la
componente de
continua.
¿El canal del bus positivo transporta información o la señal no tiene ningúna contenido
relevante?
Es posible que se pregunte justamente el porqué de la señal invertida en el bus negativo. Esto está
relacionado con la función ADD del osciloscopio, pues esta realiza una suma y no una resta; es
decir, si se ha seleccionado la función ADD sin inversión, simplemente se sumarían los distintos
niveles de los canales. El resultado sería un nivel continuo de 5 voltios. Pero si previamente
invertimos la señal, obtenemos una resta de la inicial ecuación de suma: (x1+(-x2) = x1 - x2).
La señal diferencial
La señal del bus positivo
La señal del bus negativo
¿Esta señal también tiene un offset?
Sí
No
1 lógico = 1 voltio
1 lógico = 2 voltios
0 lógico = -1 voltio
0 lógico = -2 voltios
Una cuestión importante relacionada con los sistemas eléctricos, especialmente en el sector
industrial, radica precisamente en la compatibilidad magnética de los equipos eléctricos. En este
caso el objeto es determinar hasta qué punto un objeto sometido a prueba actúa como fuente de
interferencias o dispositivo sensible a ellas.
El sistema FlexRay especifica dos posibles medios de transmisión en la capa física. Además de la
transmisión eléctrica a través de las líneas correspondientes, también es posible una transmisión
óptica, pero esta no es objeto de este curso.
La desventaja de un diseño eléctrico frente a uno óptico reside en los posibles parámetros de
interferencia que pueden llegar a influir en la señal útil. Estas pueden ser interferencias de línea
(provocadas por los componentes de conmutación) o de campo (debidas a un acoplamiento
capacitivo o inductivo).
Particularmente importante es la observación del máximo retardo de propagación de la señal
(diferencia de tiempo entre el momento de su emisión hasta la llegada al receptor), que puede verse
afectada negativamente por diversos efectos. Para que el sistema FlexRay funcione
impecablemente, no se debería sobrepasar un valor de retardo de propagación de 2.500 ns. Si se
excede este tiempo, la sincronización de los relojes de los distintos nodos se torna imposible.
Se han aplicado distintas medidas para que el sistema FlexRay no constituya una fuente de
interferencia y para que, por otro lado, no se comporte como un dispositivo sensible:
Cables y conectores
En el bus FlexRay pueden utilizarse cables de par trenzado blindados o no blindados. Debe tenerse
una impedancia característica de entre 80 y 110 ohmios con 10 Mhz.
Los cables de par trenzado tienen dos propiedades básicas que garantizan una transmisión de la
señal libre de problemas. En primer lugar, la torsión del cable asegura que los campos magnéticos
se acoplen por igual en las dos líneas, lo que conduce a que estos se eliminen debido a la
transmisión simétrica posible gracias al diseño de dos hilos. Si los cables también están blindados se
eliminan de igual manera los campos capacitivos antes de que puedan producir un acoplamiento en
la ruta de señal.
Otro aspecto importante radica en evitar las reflexiones en los puntos de transición, donde aparecen
las llamadas ondas estacionarias. Estas se presentan si las terminaciones de dichos puntos no están
adaptadas, pues cada medio de transmisión tiene una impedancia característica que influye en la
onda portadora. Si se encuentran dos medios de transmisión con diferentes impedancias
características surge una superficie límite en la que las señales pueden ser objeto de reflexión
debido, por ejemplo, a un cable con un extremo abierto. La onda electromagnética se refleja en esta
superficie de separación (sin desfase). Para eliminar esta frontera debe realizarse una adaptación de
impedancia o, dicho de otro modo, el cable debe terminarse con su impedancia característica. En la
siguiente figura se puede observarse una terminación o adaptación de potencia:
Teóricamente, cada nodo conectado al medio de propagación (conductor) tiene una resistencia
terminal. Sin embargo esto no es factible en la práctica, pues las especificaciones FlexRay permiten
una resistencia total de entre 40 Ω y 55 Ω. Si se conectaran muchas resistencias en paralelo, la
resistencia total caería por debajo de ese valor. A continuación se presentaría un nivel de corriente
demasiado alto para el que no están preparados los componentes del sistema. Por lo tanto, algunos
controladores de bus no tienen ninguna impedancia terminal.
Esto significa que, para una conexión punto a punto, se necesita una impedancia terminal de 80 Ω a
110 Ω. En cualquier caso, también es posible integrar una bobina de choque de modo común en la
salida del controlador del bus. El diseño de este componente es tal que suprime las interferencias de
modo común (campos magnéticos) y permite el paso de las señales de contrafase (es decir, la señal
de transmisión simétrica).
En lugar de conectar cada uno de los extremos del canal de comunicación con una resistencia
terminal de bus, los extremos del bus FlexRay también pueden derivar en una terminación de bus
compartida. Debido a la resistencia del condensador, que depende de la frecuencia, esta resistencia
actúa como un filtro, que impide el paso de las correspondientes señales de interferencia o las
cortocircuitan a tierra.
Acoplamiento inductivo por efectos de interferencia
Montaje de experimentación
Amplitud: 100
Atenuación: 1:1
Frecuencia: 1k
Función: SINE
Tenga en cuenta
que esto solo
puede ser un
valor
aproximado,
La frecuencia es de aproximadamente ___ kHz.
pues cada
medición se
realiza bajo
distintas
condiciones.
¿Mediante qué tipo de acoplamiento se transmite la señal de interferencia?
Acoplamiento galvánico.
Acoplamiento capacitivo
Acoplamiento inductivo.
«Cuanto mayor sea el período de la onda senoidal, más elevada será la corriente inducida».
Sí
No
Rechazo al modo común: Principio de la transmisión
simétrica
Montaje de experimentación
Amplitud: 20
Atenuación: 1:1
Frecuencia: 1 k
Función: SINE
Mediante la suma.
Mediante la multiplicación.
Mediante la diferenciación.
Mediante la resta.
Transmisión asimétrica.
Transmisión simétrica.
Transmisión asíncrona.
Transmisión síncrona.
Transceptor FlexRay
El controlador eléctrico del bus (transceptor FlexRay) es la interfaz que hace las veces de nexo entre
la capa física y el nivel de procesamiento de señales discretas del controlador de comunicación.
Como el nombre lo indica, este componente es un sistema que funciona de forma bidireccional, por
lo que puede tanto recibir como enviar datos. Sin embargo, dado que la línea del bus opera con otra
señal que la del controlador de comunicación, se precisa adaptarla.
Recepción
El controlador del bus recibe una señal de la línea del bus. Esta línea opera con una señal diferencial
trivalente en espera («idle»), de nivel lógico alto («high») o bajo («low»), imposible de procesar para
el controlador de comunicación. Por lo tanto, el controlador del bus debe transformar esta señal en
una señal binaria (niveles alto y bajo) que el controlador de comunicación pueda procesar.
Transmisión
El controlador del bus tiene una señal que enviar al canal. Como ya se ha mencionado
anteriormente, esta señal es binaria y no puede introducirse así en la línea del bus, por lo que debe
transformarse en la correspondiente señal trivalente.
Funciones avanzadas
Las especificaciones de FlexRay prescriben ciertas características específicas de seguridad que
debe cumplir el controlador del bus. Estas son las siguientes:
BD_Normal
En este modo el controlador de bus está activo y puede transmitir y recibir señales. Constituye
el modo de funcionamiento normal.
BD_Standby
En este modo el controlador de bus está inactivo; es decir, no puede enviar ni recibir datos y su
consumo de energía es reducido. Los acontecimientos que ameriten su activación llevan de
nuevo al controlador del bus al modo normal. No obstante, el host del nodo no se ve afectado
por la presencia de este modo de funcionamiento.
BD_Sleep
Este estado opcional tiene una alta concordancia con el modo BD_Standby. Sin embargo,
aquí, el host también entra en un estado inactivo.
BD_ReceiveOnly
En este modo el nodo está activo, sin embargo el controlador del bus solo puede recibir datos y
no enviarlos.
En este diagrama de bloques se puede ver la comunicación interna del conductor del bus, que
puede resumirse en función de las entradas y salidas atendiendo a los siguientes grupos:
TxD
Controlador de comunicación TxEN (transmisión habilitada o «enable»)
RxD
Guardián de bus BGE (guardián de bus habilitado o «enable»)
RxEN
STBN (Standby)
Interfaz del host EN (Enable)
ERRN (Error)
VCC
El uso del guardián del bus es una medida de seguridad que se pueden integrar opcionalmente en
cada nodo FlexRay. Se trata de un componente que controla el acceso al medio de transmisión, sin
que por ello tenga acceso directo al mismo.
Aumenta la seguridad de la red al reconocer con rapidez procesos fallidos en su nodo y evitar que el
controlador de comunicación o el del bus introduzcan más mensajes, emitiendo a continuación el
pertinente mensaje de error.
Principio
Los períodos de tiempo permitidos de transmisión para el controlador de comunicación se regulan
mediante un control de tiempo; es decir, cada controlador dispone de plazos fijos de emisión. De
este modo no se producen colisiones y el controlador se sincroniza con una base de tiempo global.
Esto es así siempre y cuando todos los controladores estén funcionando correctamente. Podría
aparecer un fallo, por ejemplo, si la sincronización del reloj de un nodo es defectuosa, por lo que dos
controladores podrían desear la emisión simultánea de una señal. De esta manera, un nodo
defectuoso podría destruir muchas tramas procedentes de otros nodos. Para impedirlo se desarrolló
el concepto del guardián de bus en el que se integra el patrón de tiempo básico del protocolo, es
decir, conoce exactamente la evolución secuencial del sistema y, por lo tanto, los períodos
específicos de transmisión.
Si un controlador trata de a emitir fuera de su propio periodo de tiempo, entonces se verá
inmediatamente bloqueado por el guardián del bus.
Sin embargo, el guardián de bus solo se puede emplear en segmentos de comunicación estáticos.
Dentro del segmento de comunicación dinámica no se puede ofrecer tal protección, pues los
mensajes son enviados por los nodos FlexRay bajo demanda, por lo que aquí no existe ninguna
planificación del tiempo que pueda orientar al guardián del bus. En un segmento dinámico de
comunicación, solo existe la posibilidad de que un nodo FlexRay permita o prohíba por completo la
emisión. El guardián de bus es también un sistema de seguridad que garantiza un comportamiento
determinista en función del tiempo.
En el gráfico siguiente se muestra la tarea del guardián de bus a partir de un ciclo en el que
intervienen dos nodos:
Al nodo FlexRay 1 pertenecen en el canal A los intervalos o slots 1 y 4 y al nodo FlexRay 2 los 2, 3 y
5. Los dos guardianes de bus (BG) controlan los correspondientes intervalos. En el segmento
dinámico, los dos BG dejan el camino libre o interrumpen su funcionamiento.
Prueba de conocimientos
FDMA
WDMA
TDMA
El host.
El controlador de bus.
El controlador de comunicación.
El controlador DMA.
¿Qué componente del nodo FlexRay representa la unidad de control central que dirige la
comunicación de los nodos y tiene a su mando los paquetes de datos que arriban o se han
de enviar?
El controlador de comunicación.
El host.
El transceptor del bus.
La memoria EEPROM
¿Qué componente del nodo FlexRay tiene una conexión directa con el medio de
transmisión y actúa tanto como un receptor al igual que como un transmisor de datos?
El host.
El controlador DMA.
El controlador de bus.
El controlador FlexRay.
¿Qué se ha implementado en el guardián del bus para que pueda reconocer rápidamente
fallos de transmisión?
¿Por qué es importante que las líneas tengan una terminación correcta?
BD_Normal
BD_Standby
BD_Sleep
Si la línea BGE («bus guardian enable») del guardián del bus está en nivel alto significa que
el controlador de comunicación o el del bus...
...debe emitir.
...no debe emitir.
...debe cambiar al modo de espera (standby).
En el segmento dinámico.
En el segmento estático.
En los dos segmentos.
El protocolo FlexRay en detalle: Análisis de la estructura de
transmisión
Introducción
Ahora que ha adquirido conocimientos básicos sobre el protocolo FlexRay, este capítulo
profundizará más en el tema.
Aquí se analizarán más detenidamente los segmentos individuales del protocolo FlexRay y se
representarán en detalle sus tareas específicas. Es decir, también se considerarán los niveles
avanzados del modelo OSI.
Además, se observará con mayor detenimiento la base de tiempo global, pues esta representa uno
de los elementos principales del protocolo que asegura la funcionalidad del bus FlexRay.
Nota: En realidad, para el protocolo FlexRay, son muy importantes las dos primeras capas, dado
que los sistemas de bus de campo se utilizan principalmente para transmisión de datos y, por otra
parte, también se requiere conocer la base física sobre la que esto tiene lugar, al igual que las reglas
que rigen el intercambio de información, es decir, las especificaciones exactas del protocolo. Por
esta razón, las capas tres a la seis solo están cubiertas parcialmente por el protocolo FlexRay.
Ciclo de comunicación
En el bus FlexRay la comunicación de cada nodo está organizada en ciclos en el interior del
software. Un ciclo de comunicación tiene una secuencia fija que se repite en intervalos regulares.
Este proceso se configura de antemano antes de que pase a formar parte del controlador del nodo
FlexRay. Un requisito previo para que el sistema funcione correctamente es que cada nodo de un
clúster reciba la misma configuración.
Obligatorio Opcional
Segmento
Segmento estático
dinámico
Tiempo de espera de la red (Networt Idle Time o
Ventana de
NIT)
símbolo
Debido a esta distribución existen diferentes variantes de un ciclo de comunicación que difieren en
materia de longitud de tiempo y finalidad:
Además de los segmentos obligatorios, también se establece un orden de los segmentos dentro de
un ciclo, representando el segmento estático siempre el inicio mientras que el tiempo de espera de
red (NIT) corresponde al final. La longitud máxima del ciclo es de 16 ms.
Cada sistema basado en el tiempo posee un ritmo de sincronización. En este caso da igual si se
trata de medir el paso de las horas o de un sistema técnico como FlexRay. Los seres humanos
solemos usar los segundos como señal que marca el paso del tiempo y predetermina la rapidez con
que avanza el día hasta su fin. Ocurre lo mismo en un sistema FlexRay, solo que, aquí, la unidad
temporal más pequeña se denomina microtick (µT). El microtick está formado directamente por la
frecuencia normalizada del oscilador o por medio de un divisor que reduzca su valor.
El microtick fija la velocidad en que discurre el tiempo en un clúster Flexray y, además, de él se
deriva el macrotick.
A partir de estas dos unidades de tiempo se define la longitud de los segmentos dinámico y estático
(así como del ciclo). De este modo, dentro de un clúster, la longitud de un macrotick está prescrita
para todos los nodos, al igual que la longitud de un ciclo (un ciclo tiene un número fijo de macroticks,
así como una hora tiene un número fijo de minutos). Si este no fuera el caso, cada nodo tendría una
percepción distinta del tiempo, dando lugar a que el emisor y el receptor no registren una trama en el
mismo ciclo.
Un ciclo consta de un número fijo de macroticks y tiene en cada nodo del clúster la
misma duración temporal.
Un macrotick se compone de un número variable de microticks pero, a su vez, también
tiene una duración fija en el clúster.
Ahora bien, los microticks también pueden ser variables, pero ¿qué significa esto exactamente?
La menor unidad de tiempo de un sistema FlexRay, el microtick, no debe tener una longitud uniforme
para todos los nodos; es decir, su longitud puede variar nodo a nodo. Si, por ejemplo, se ha
establecido que la longitud de un macrotick sea de 1.000 ns, este valor puede variar en la
comunicación entre nodos. Si el microtick del nodo A tiene una duración de 10ns, se necesitan 100
µT para obtener la duración preestablecida para el macrotick de 1000 ns (10 ns * 100 µT = 1000 ns
= 1 MT). Si, por el contrario, el microtick del nodo B tiene una duración de 20ns, solo se necesitan
50 µT para volver a obtener el valor exigido para el macrotick.
La solución
puede
El tiempo de bit es de __ determinarse con
una regla de tres.
nano = 10^-9
Solución: La indicación 10 Mbit/s indica que se transmiten 10 millones de bits por segundo entre el
emisor y el receptor. Si ahora se calcula el tiempo de transmisión mediante la regla de tres, se
obtiene una duración de 10-7 s o 100 ns.
A partir del tiempo de bit puede deducirse la longitud de la frecuencia de muestreo de ticks. Dado
que un bit se muestrea ocho veces, se tendrá una duración de 1/8 del tiempo de bit. La frecuencia
de muestreo de ticks equivale, en último término, a la frecuencia fundamental del reloj. El microtick
es un resultado de esta frecuencia. Así, puede aceptarse una duración de 1:1 o alargarse mediante
otra relación de división, siendo posibles las siguientes fracciones de números enteros: 1:2, 1:3, 1:4.
Dado que una menor longitud de microtick tiene un efecto positivo sobre la precisión de todo el
sistema, en la práctica suelen utilizarse relaciones de 1:1 y 1:2.
El macrotick surge del microtick y puede tener una longitud de entre 1 µs y 6 µs. Sin embargo,
también son posibles otras condiciones generales, de tal forma que, por ejemplo, un macrotick debe
componerse de un mínimo de 40µT para que un cambio de la longitud del macrotick debido a
correcciones mecánicas del reloj no genere grandes diferencias entre los macroticks corregidos y no
corregidos.
El límite de microticks por macrotick es de 240 lo cual se explica por su sencilla implementación en
un registro de 8 bits.
A partir de estos requisitos se deduce que no se puede combinar cualquier duración de
microctick con el número de ellos que posea un macrotick, puesto que para una duración de
microtick de, por ejemplo, 12,5 ns y un tamaño de Macrotick de 40 µT/MT, se tendría una longitud de
macrotick de 500 ns, lo cual no corresponde a un valor permitido.
En última instancia, el ciclo surge del microtick o del macrotick. En este contexto, la longitud puede
variar entre 300 µs y 16 ms. El límite mínimo específico de la configuración se determina por la
longitud del NIT y el doble de la longitud del segmento estático.
Segmento estático
Se denominan slots a los intervalos de tiempo que cada nodo tiene asignado, es decir, que cada uno
de ellos posee un margen temporal para escribir en el medio de transmisión. La longitud y número
de estos intervalos están previamente establecidos en la configuración, partiendo de directrices
determinadas.
Lógicamente, el número mínimo de slots es de dos, ya que se debe contar por lo menos con un par
de nodos para que exista comunicación. El número máximo de intervalos estáticos es de 1023,
cifra que se deriva de la máxima duración del ciclo y de la longitud mínima de cada slot.
La longitud mínima de un intervalo tiene un valor de 13 µs, tiempo en el que también se toma en
consideración un búfer que permite compensar las diferencias de tiempo. En este contexto es
necesario tener en cuenta que el número de slots estará determinado de manera inversamente
proporcional por la longitud de los intervalos que contienen información útil.
Una vez que en la configuración se hayan especificado los parámetros obligatorios (número y
longitud de slots y longitud de ciclo), ya puede establecerse la base del programa de planificación del
tiempo. Estos parámetros no pueden cambiarse durante el servicio del bus; es decir, son estáticos.
El acceso al bus es congruente o representa el procedimiento TDMA.
La diferencia máxima de tiempo permitida entre dos relojes dentro de un clúster se denomina
precisión. Por lo tanto, la precisión define la longitud del búfer de los intervalos. El búfer puede
calificarse como un retardo de tiempo entre el inicio del slot y el principio de la emisión, o entre el
final del intervalo y la conclusión de la transmisión.
«Un transmisor envía en su slot una trama requerida por los receptores 1 y 2. Sin embargo, el reloj
del receptor 1 se adelanta en una magnitud correspondiente a la longitud de precisión y el receptor 2
se atrasa en la misma medida. Sin búfer de seguridad esto conllevaría a que el receptor 1 perdiera el
final de la trama. El receptor 2 obtendría su derecho a iniciar la lectura demasiado tarde, por lo que
perdería el inicio de la trama. Cabe señalar que los dos receptores cumplen con el programa de
planificación de tiempo; sin embargo, ninguno de ellos tiene la posibilidad de reconocer el error.
Mediante la integración al principio y al final del slot de un búfer temporal, que tenga la longitud de
precisión, se compensa el offset y se asegura que la trama se trasmite completa y correctamente».
Actionpoint: Instante que no marca el inicio del slot, sino del inicio de emisión de la
trama propiamente dicha.
gdActionPointOffset: Este parámetro define la distancia entre el principio del slot y el
comienzo de la transmisión y se fija previamente en la configuración.
El siguiente gráfico muestra un diagrama de operaciones de comunicación junto con una secuencia
de comunicación en el medio. Este diagrama está basado en un sistema de intercambio de
información de bus con cuatro nodos, donde cada uno de ellos transmite 2 mensajes en dos
momentos determinados.
Segmento dinámico
Si la longitud de los slots estáticos no es suficiente para la cantidad de datos que un nodo envía,
puede recurrirse al segmento dinámico para la transmisión de datos. En este caso, el término
dinámico describe una longitud de slot variable orientado a la cantidad de datos enviados por los
nodos activos. Como ya se ha mencionado anteriormente, en los slots dinámicos se usa el método
FTDMA, basado en el uso de los llamados minislots. La consecuencia del empleo de este segmento
flexible en el tiempo es la pérdida del determinismo en el tiempo.
La siguiente figura se muestra la estructura de un segmento dinámico.
Los minislots conforman la base del segmento dinámico. Tienen una longitud mínima fija que se
define por el número de macroticks por minislot. Esta longitud fundamental se define para todos los
nodos, es decir, que todo el clúster tiene una longitud uniforme de minislots. Además, la longitud
total del segmento dinámico también tiene un valor fijo; el nodo emisor no tiene limitaciones
temporales respecto a su slot dinámico, pero se limita su tiempo de transmisión mediante la longitud
total del segmento dinámico. Esto es necesario para que todo el proceso sea controlable y
determinado.
En el gráfico anterior se muestra la estructura de un minislot. Se puede observar que entre el
minislot y el slot estático existe un parecido en cuanto al búfer de tiempo. Por otra parte, la longitud
del minislot se define por los llamados macroticks. Si desea obtener más información acerca de los
macroticks o recopilar información general sobre la base de tiempo, la encontrará en los capítulos
correspondientes.
Así mismo el minislot tiene un punto de acción («action point») como el slot estático, que define el
inicio de emisión de una trama dentro del minislot. El espacio entre el comienzo del minislot y el
punto de acción se denomina gdMinislotActionPointOffset, más conocido generalmente bajo la
palabra precisión. Y es que, en el segmento dinámico, tiene una gran importancia que emisor y
receptor detecten en el mismo minislot la trama transmitida. Además también existe un búfer de
tiempo para retardos de propagación. Otro retraso en el tiempo se origina debido a la llamada
secuencia de inicio de transmisión o TSS (Transmission Start Sequence). Se utiliza para activar
acopladores en estrella en funcionamiento y también el transceptor. Por lo tanto, señaliza a la red la
necesidad de crear una ruta de comunicación particular. El tratamiento de la secuencia TSS más
corta también tiene un efecto sobre la longitud de los minislots. En consecuencia, la reducción del
TSS se realiza de modo que el retardo generado por la emisión y procesamiento del TSS pueda
compensarse mediante dimensiones determinadas.
El indeterminismo en el tiempo existente genera otro problema. Dado que los datos útiles
(«payload») tienen una longitud variable, el punto del tiempo final es también variable. Dado que
este debe tener una terminación, a las tramas se les añade un patrón de bits que garantice que la
trama siempre termine en el punto de acción. Esta secuencia de bits es la de rastreo dinámico o
DTS (Dynamic Trailing Sequence).
En el siguiente gráfico se representa un ejemplo de ciclo de un segmento dinámico. La sección con
el borde rojo es la trama del mensaje. Los mensajes comienzan con la secuencia de inicio de la
transmisión (TSS), compuesta por una secuencia de 3 a 15 ceros lógicos. Esta secuencia TSS
señaliza a la red el inicio de la comunicación y aquí se pueden activar acopladores en estrella y los
receptores en el caso de que se encuentren presentes. La secuencia TSS se reduce en función del
tiempo que los elementos necesitan para activarse.
La secuencia de inicio de trama o FSS (Frame Start Sequence) tiene una duración de un bit (1
lógico) e indica el comienzo de una trama y sincroniza el muestreo de bits. Después sigue la
secuencia de inicio de bit o BSS (Bit Start Sequence) que tiene un bit en nivel alto y otro en nivel
bajo. La secuencia BSS indica el comienzo de un byte de datos y se repite antes de uno de los bytes
siguientes.
Tras la secuencia BSS se realiza la auténtica transmisión de datos. Dependiendo del tamaño de los
datos se repite la transmisión de BSS y bytes de datos hasta que se hayan transmitido todos o se
interrumpa el proceso por haberse alcanzado el fin del segmento dinámico. Si todos los datos se
transmiten correctamente se transmite entonces la secuencia de final trama FES (Frame End
Sequence). Esta se compone de 1 bit bajo y 1 alto. Al segmento dinámico se enlaza una secuencia
de rastreo dinámico o DTS (Dynamic Trailing Sequence) que rellena y completa el minislot hasta el
siguiente punto de acción con n bits a nivel 0, siendo el último bit un 1 lógico.
En el gráfico inferior se amplia el valor de los datos del slot dinámico con n+6 minislots, y entonces
puede transmitirse el siguiente mensaje con el minislot n+7. Este proceso se repite hasta el final del
segmento dinámico o el último punto de acción.
Proceso de acceso de cada nodo
Cada nodo que desea enviar una trama contiene en su cabecera su identificador. Esto es
independiente de si el segmento es estático o dinámico. Además, en el segmento dinámico también
hay un contador de slots que se incrementa con cada minislot enviado. Si el identificador de trama y
el número de slot coinciden, el nodo puede enviar su trama. Este tipo y modo de ordenación de los
minislots conlleva una priorización automática, ya que cuanto mayor sea el identificador de la trama,
más tarda el nodo en obtener el permiso para mandar su mensaje.
En la siguiente animación se muestra el principio básico del segmento dinámico. Consideremos de
nuevo este componente. En este segmento se establecen intervalos de tiempo (slots) de igual
tamaños y numerados empezando por el número uno. Cada slot se asigna fijamente a un nodo, y
todos los nodos envían en su slot mensajes (tramas) de la misma longitud. Los nodos se reconocen
mediante un identificador de trama y si este coincide con la numeración del slot se permite la
transmisión.
En el segmento dinámico también se fijan intervalos de tiempo (slots), pero estos son más pequeños
que los del segmento estático y se denominan minislots. Para la transmisión de mensajes de
diferente extensión existen slots dinámicos que utilizan los minislots como base de transmisión. Un
slot dinámico tiene una longitud mínima de un minislot, pero puede contener más minislots. Los slots
dinámicos también tienen una numeración ascendente. Esta numeración la toma el último slot
estático n+1 sin que se produzcan fisuras.
El contador de slots integrado en el nodo cuenta incrementalmente de 0 a 1. El destello rojo de las
líneas señaliza la verificación del identificador de trama para así decidir que nodo tiene derecho de
emisión. En nuestro caso, se trata del nodo que tiene la identidad de trama 1, la prioridad de derecho
a emisión se ajusta al identificador de trama y cuanto menor es este, mayor será su derecho de
emisión. La transmisión de la trama se efectúa en el «slot dinámico n+1» ocupando una duración
total de 3 minislots. Como ya se ha descrito en el texto anterior, los mensajes pueden tener una
longitud flexible, sin por ello terminar en un punto de acción, por lo que la secuencia DTS del slot se
alarga de tal forma que termine en uno de ellos.
En nuestra animación cambia el contador del slot a 2, de manera que vuelve a evaluarse quién tiene
el turno de emisión. En nuestro ejemplo se trata del nodo con el identificador de trama 2. Ya que el
nodo no envía ningún mensaje, no se transfieren datos, por lo que el slot dinámico n+2 tiene una
duración de exactamente un minislot.
El contador de slots se incrementa hasta 3 unidades y el nodo con este número en el identificador de
trama es el que tiene en ese momento el derecho de emisión. Así, envía en el slot dinámico n+3 su
trama usando 4 minislots.
El contador de slots se incrementa hasta 4 unidades y el nodo con ese identificador de trama es el
que tiene en ese momento el derecho de emisión. Ahora pasará el parámetro pLatestTx, cuya misión
consiste en establecer la frontera para nuevas transmisiones. Las transmisiones comenzadas por
este parámetro pueden finalizarse en cualquier caso, pues el búfer entre los finales de los
segmentos y los parámetros es tan grande como la mayor longitud posible de un slot dinámico.
Tras este parámetro no puede iniciarse ninguna transmisión; esto significa que el nodo con el
identificador 5 de trama no ha tenido la posibilidad de enviar sus datos. Este nodo y el nodo 4 deben
esperar al siguiente ciclo de comunicación para enviar eventualmente sus mensajes.
Para ofrecerle una vez más una visión general del segmento dinámico, en el siguiente gráfico vuelve
a visualizarse la teoría general:
En relación con el gráfico superior, podemos resumir los puntos más importantes:
En los capítulos anteriores se explicaron los componentes principales del ciclo de comunicación. En
este apartado abordaremos la descripción del segmento opcional «ventana de símbolo». Este
segmento está situado directamente antes del de tiempo de inactividad de red o NIT (Network Idle
Time) y tiene la misma estructura que el segmento estático. Esto puede verse en el siguiente
gráfico:
Este segmento sirve para la transmisión de lo que se conoce como símbolos. En las
especificaciones de FlexRay se definen tres símbolos diferentes, siendo el de verificación del medio
o MTS (Media Test Symbol) el único que se transmite en la ventana de símbolo.
El símbolo
Para una mayor comprensión del texto, en primer lugar, definiremos el concepto de símbolo como
«la más pequeña unidad semántica». El significado de esta frase puede comprenderse mejor
mediante un ejemplo de la tecnología digital. En el campo de la modulación digital existen, por
ejemplo, dos procesos que utilizan una longitud variable de símbolo. Así, en la modulación de fase,
un símbolo consta de un bit, es decir, representa la transferencia de un 1 o 0 que contiene una
información valiosa. En la modulación de cuatro fases, un símbolo consta de dos bits cuyo resultado
implica que un solo bit no transmite información útil. Una pareja de bits (00,01,10,11) describe un
estado concreto.
CAS y MTS
Estos dos símbolos tienen la misma estructura esquemática, pero se diferencian en el tiempo de
transmisión y, por tanto, en su finalidad. El CAS (Colision Avoidance Symbol) se envía una sola vez
durante la activación del sistema, es decir, antes del comienzo del primer ciclo de comunicación de
los nodos, que primero envían las tramas de inicio (lo que se ha denominado leading coldstarter) y,
por tanto, conforma la base de sincronización de los otros nodos (following coldstarter). De este
modo se muestra esencialmente el inicio principal de la comunicación para todos los demás nodos
del clúster. Sin embargo, no todos los nodos participan directamente en la comunicación. Solo
cuando al menos dos tramas de inicio en frío (coldstarter) están sincronizadas mutuamente se
activan las que no obedecen al inicio en frío.
Al contrario que el CAS, el símbolo MTS se envía durante el funcionamiento del sistema en la
ventana de símbolo, integrada especialmente para esta función del ciclo de comunicación y que no
se puede utilizar de otra manera. Por medio de la ventana de símbolo y el MTS es posible verificar el
correcto funcionamiento del guardián de bus de un nodo. En este caso, a cada nodo se asigna un
determinado ciclo en el que puede probar su guardián. El procedimiento del test está estructurado de
forma relativamente simple. En la ventana temporal de símbolo, cada guardián de bus debe estar
cerrado, es decir, no debe otorgar permiso de escritura en la línea a ningún controlador de bus. Para
el MTS esto significa que no debe aparecer en el canal de comunicación. En el caso de que, contra
toda expectativa, apareciera, esto implicaría un mal funcionamiento del guardián del bus.
Si se implementa un sistema FlexRay sin guardián de bus, la ventana del símbolo pierde
lógicamente su sentido de existencia y, por tanto, no debe integrarse en el ciclo de comunicación.
El símbolo WakeUp
El símbolo WakeUp se utiliza para la generación de patrones WakeUp que permiten a los nodos
pasar del modo de espera («sleep mode») al modo normal de funcionamiento. Un símbolo de este
tipo consta de una fase "baja" y de otra de inactividad.
Un nodo envía este patrón WakeUp para «despertar» a los otros nodos indicando así el deseo de
que desea emitir un mensaje. Gracias a la estructura especial del patrón WakeUp, el nodo puede
cancelar el envío de ese patrón en el caso de que, en la fase de inactividad, detecte la actividad de
otro nodo.
Esto plantea la pregunta de porqué en lugar de un símbolo no puede utilizarse una trama normal,
hecho relacionado con la definición de la capa de enlace de datos y las posibles interferencias
resultantes de la aparición de otros símbolos. Si se superponen señales de nivel activo bajo se tiene
como resultado una señal activa de nivel bajo. Dado que en FlexRay los símbolos están definidos
como una cadena de bits activos a nivel bajo, no es un problema, por ejemplo, si otros nodos emiten
un CAS al principio del ciclo de comunicación, puesto que el receptor siempre recibirá el símbolo
correcto.
Tiempo de inactividad de red y corrección del reloj
El tiempo obligatorio de inactividad de red o NIT (Network Idle Time) se encuentra al final de cada
ciclo de comunicación. En esta fase no tiene lugar ninguna comunicación en el canal de transmisión,
es decir, los nodos del clúster no envían datos. Por tanto, esta fase de espera se usa para corregir
los posibles offsets del reloj que pudieran surgir. Por otra parte, también es posible calcular la
corrección de los relojes en el NIT, al igual que realizar el procesamiento de datos orientado al
control interno.
En FlexRay hay dos diferentes tipos de correcciones que deben realizarse en intervalos regulares
para corregir el funcionamiento no óptimo de los relojes. Aquí se diferencia entre la corrección de
offset y la de tasa («rate correction»).
La corrección offset se emplea para los desfases de carácter estático, es decir, los valores de los
relojes no divergen de manera que aumente en el tiempo sino que poseen una diferencia constante.
Para igualar la diferencia de las frecuencias mostrada en la imagen siguiente se integran microticks
repartidos a lo largo de todo el ciclo.
El cuarzo oscilante: La causa del fallo
Para que un reloj cumpla su función y ponga a disposición el tiempo actual del sistema, necesita un
ritmo. En los relojes convencionales, este viene dado por los segundos y, en el FlexRay, el microtick
asume esta función. El ritmo lo genera, en este caso, un generador de pulsos denominado también
oscilador. Dado que el funcionamiento del FlexRay está supeditado a una base de tiempo que opere
de manera muy exacta y estable, se plantean, consecuentemente, altas exigencias al oscilador y,
por esta razón, se emplean en mayor medida componentes de cuarzo. No obstante, incluso los
cuarzos de alta calidad no consiguen controlar las diferencias de frecuencia. Las influencias
externas, por ejemplo, las variaciones de temperatura o las vibraciones, al igual que el
envejecimiento propio del material, provocan diferencias en la frecuencia de resonancia. Dado que
precisamente estas influencias se encuentran presentes en gran parte en un automóvil, es necesario
tomar las medidas de seguridad pertinentes. Por otro lado, también desempeñan un papel
importante las tolerancias de fabricación. El sistema FlexRay presupone una calidad de por lo menos
1500 ppm, lo que significa que se debe contar como máximo con una discrepancia de un 0,15 % en
relación a la frecuencia nominal.
Corrección de offset y de tasa
Durante la corrección de offset se lleva el valor del contador del reloj a su posición correcta en un
momento definido, pero, para ello, es necesario contar con un reloj externo como referencia a fin de
sincronizar el componente que falla en función de este valor. No obstante, el problema de este
método de corrección radica en que solo se elimina el síntoma (el desfase temporal) y no el
problema verdadero (el desfase de frecuencia).
Con este fin se emplea la corrección de tasa. La frecuencia de un oscilador o de un cuarzo oscilante
es inherente al elemento y no se puede modificar sencillamente. Por esto se emplean divisores, que
reducen la frecuencia a un valor menor y sirven al reloj como generadores de pulsos. Para corregir
una frecuencia errónea se modifica la relación de división. De esta manera es posible elevar o
disminuir la frecuencia. FlexRay recurre a las dos opciones y lleva a cabo una corrección continua
por medio de un control.
El control
La medición del desfase temporal:
Durante el primer paso se calcula la diferencia de tiempo entre el reloj del nodo activo y el de los
otros nodos; es decir, se seleccionan varios valores de medición por medio de un algoritmo especial,
que permite calcular el valor de corrección. La medición propiamente dicha de la discrepancia
temporal entre dos nodos se determina a partir de la diferencia entre el tiempo esperado de llegada
de la trama, de acuerdo con el plan de tiempo, y el momento verdadero del arribo de dicha trama.
Esto implica que el cálculo de los valores de corrección solo puede tener lugar en el segmento
estático, puesto que solo este cuenta con una programación de tiempos.
Un nodo no solo envía una trama a un punto de acción sino que también sabe si se inicia la
recepción en uno de estos puntos; esto significa que puede comparar el momento de recepción
esperado con el momento que indica la programación de tiempos y medir la discrepancia a partir de
la diferencia detectada; es decir, el nodo determina el momento en el que su punto de acción se ha
adelantado en el tiempo. Si la trama en cuestión se inicia más temprano o más tarde, se tendrá un
desfase entre el punto de acción y el inicio de la trama y, de esta manera, también una diferencia
con el punto de acción del emisor, con lo que se determina el valor de corrección. Por otra parte,
esto significa que la trama cae en el búfer temporal denominado «gdActionPointOffset». Por lo
demás, es necesario observar los tiempos de propagación que no deben pasar a formar parte de los
valores de corrección del reloj.
En la siguiente representación es válido observar que no se tomaron en cuenta los efectos físicos;
es decir, solo se representa la diferente interpretación del tiempo de los dos nodos. Por esta razón
no existe aquí un desfase de la trama sino únicamente del slot estático.
En teoría, la medición se podría llevar a cabo desde cada nodo, pero en la práctica, en el FlexRay se
definen determinados nodos para las tareas de sincronización y son estos los que envían las tramas
de sincronización o «Sync-Frames». En estas tramas, paralelamente al transcurso de la trama
propiamente dicha, se realiza la medición aquí descrita.
La medición de la corrección de tasa se ejecuta de una manera más compleja y se puede aclarar de
mejor manera por medio de la siguiente gráfica:
Para establecer el valor de corrección, es necesario determinar la pendiente de la función linear de
desfase o, dicho de otra manera, el valor en función del cual aumenta la diferencia tras el
cumplimiento de cada ciclo. Por esta razón, un nodo envía una trama de sincronización cada dos
ciclos seguidos y determina de esta manera el desfase de cada ciclo. La diferencia entre las
discrepancias presentes entre el emisor y el receptor proporcionan finalmente el valor buscado y, a
partir de él, es posible entonces calcular el valor de corrección. Así, pues, como efecto secundario
positivo de este método de cálculo, desaparece el error debido al tiempo de propagación, pues este
se suprime por sustracción.
Para el cálculo de los valores de corrección se emplea lo que se denomina algoritmo de punto medio
(mid-point algorithm), que lleva a cabo operaciones matemáticas triviales y, por lo tanto, se puede
integrar sencillamente en el hardware.
Para garantizar cierta tolerancia a los fallos, tras una cantidad determinada de valores de medición
se elimina cierta cantidad de valores extremos (es decir los valores mayores y menores de
medición). A continuación se determina el valor aritmético medio a partir de los valores de medición
restantes.
Si tras la división para dos queda un decimal se redondea el resultado elevándolo al próximo número
entero. Si no existen valores de medición, el resultado del algoritmo será igual a cero.
La aplicación del valor de corrección para el offset tiene lugar puntualmente dentro de un ciclo; es
decir, se aplica en un breve margen de tiempo. Se procede de otra manera con el valor de
corrección de frecuencia. En este caso, la pendiente que traza la diferencia de valores se debe
acercar lentamente al valor de cero. A este fin, los valores se aplican durante todo el ciclo.
Los macroticks del ciclo deben variar en función del valor de corrección. Si, por ejemplo, en un ciclo
compuesto por 25 macroticks (1000 microticks) es necesario aplicar una corrección de pendiente de
9 µT (microticks), entonces no se debe alargar un macrotick en 9 microticks sino que nueve de los
25 macroticks reciben un microtick cada uno.
En el controlador de comunicación del FlexRay, el algoritmo que sirve de base a este procedimiento
está integrado en el equipo y su implementación es fija, por lo que el usuario no puede ejercer
ninguna influencia directa sobre el algoritmo y, de esta manera, no cuenta con ninguna posibilidad
de modificar su configuración.
Si se varía la longitud de una variable generadora de pulsos, entonces cambia también su frecuencia
puesto que se ha modificado el periodo.
El cálculo y la aplicación de los diferentes valores de corrección tienen lugar en distintos momentos.
La tabla siguiente proporciona una visión general acerca de dichos momentos:
A partir de la tabla se puede deducir que el cálculo de cada valor de corrección tiene lugar en un
ciclo impar. A continuación, en el mismo ciclo, se aplica además el valor de corrección de offset en el
NIT (se trata de una aplicación puntual). Los valores de corrección de la tasa se aplican en los dos
ciclos siguientes (en los dos casos, a lo largo de todo el ciclo). Además se debe observar que la
corrección de offset solo tiene efecto cada dos ciclos con el fin de no distorsionar el cálculo del valor
de corrección de frecuencia. Si se aplicara el valor de corrección de offset en cada ciclo no sería
posible formar la diferencia entre las discrepancias presentes de dos ciclos.
En el siguiente ciclo impar se calculan los nuevos valores de corrección para que, a continuación, se
apliquen en conformidad con el esquema.
Prueba de conocimientos
¿Cuáles de las siete capas del modelo de referencia OSI son relevantes para el bus
FlexRay?
La capa física
La capa de enlace de datos
La red
La capa de transporte
La capa de sesión
La capa de presentación
La capa de la aplicación
El segmento estático.
El segmento dinámico.
La ventana de símbolo.
El NIT
Segundos __
Minutos __
Horas __
¿Qué variables de tiempo se tienen que definir de manera que tengan validez para todos
los nodos?
El ciclo
El macrotick
El microtick
100 µT
50 µT a*b=c
Esta configuración no es posible.
1:2
1:4
1:10
1:6
1:3
¿Qué forma la base del comportamiento temporal determinista del segmento estático?
El reloj interno
El controlador del bus
El guardián del bus
¿Qué variable importante del reloj se puede modificar directamente debido a influencias
externas?
El pulso / la frecuencia.
La densidad del cuarzo.
El factor de amplificación de tensión .
En los relojes se hace una diferencia entre exactitud y precisión, ¿cuál de los dos valores
tiene una importancia mayor para el sistema FlexRay?
Exactitud =
diferencia con el
La precisión valor de
referencia.
La exactitud
Precisión =
diferencia de los
relojes entre sí.
¿Qué otra variable debe formar parte del establecimiento del tiempo en lo concerniente a la
vía de transmisión?
en el inicio de un minislot.
en otro punto de acción.
al final de un minislot.
¿Por medio de qué secuencia de bits se garantiza que la trama dinámica termine en un
punto de acción?
¿Qué función cumple el canal delimitador de inactividad o CID (“Channel Idle Delimiter”)?
1
2
3
4
5
¿Cuál/es símbolo/s no se transmiten en la ventana de símbolo?
CAS
MTS
Símbolo WakeUp
Al final de cada ciclo se encuentra la red de tiempo de inactividad (“Network Idle Time”).
¿Cómo se comportan los nodos en ese instante?
No envían datos.
Envían protocolos de errores.
Envían datos de muy alta prioridad.
Offset
Rate (tasa)
Temperatura
El protocolo FlexRay se implementa en la capa 2 de enlace de datos de acuerdo con el modelo OSI
ya presentado en el capítulo dedicado en detalle a dicho protocolo. Esta capa se encarga de la
transmisión correcta y libre de fallos de datos entre el emisor y el receptor por lo que, de esta
manera, asegura la integridad necesaria de la información. Por esta razón, por ejemplo, en alemán,
se habla de la capa de seguridad.
En base a la normativa OSI, los datos se envían en la capa 2 en tramas. Por el contrario, los
componentes de la tercera capa, para el envío de información, emplean paquetes de datos. La capa
de transporte recurre a los segmentos de datos.
En el protocolo FlexRay, una trama posee la siguiente estructura:
Una trama consta de varios segmentos de datos de diferente magnitud. En este caso, la carga útil
(payload), es decir, los datos útiles son los componentes verdaderamente importantes de la trama.
Es decir, ellos contienen la información relevante para el receptor. La magnitud de este segmento
está limitada a 254 bytes.
Antes de los datos útiles se encuentra la cabecera (header) de cinco bytes que, por su parte, se
compone de cinco bits de control, es decir, una identificación de trama de 11 bits, al igual que de un
CRC o comprobación de redundancia cíclica de la cabecera y de una cuenta o conteo de ciclo.
Finalmente, después de la carga útil se encuentra el tráiler. Este segmento contiene la suma de
prueba de tres bytes, que recibe la denominación de comprobación de redundancia cíclica o CRC
(Cyclic Redundancy Check).
La codificación de la trama
Para que las tramas se puedan enviar a través del canal de comunicación deben poseer una
codificación correspondiente; es decir, es necesario definir diferentes estados, en este caso niveles
de tensión, que sirven para que un bit (es decir, un cero o un uno) se puedan transportar por el
medio. A continuación, esta señal analógica se convierte en un valor discreto en el receptor y, de
esta manera, se convierte en una señal digital.
Para posibilitar una codificación correcta todavía es necesario introducir información adicional en la
trama que, no obstante, solo es importante para el transporte y que el receptor elimina una vez
realizada la transmisión.
FlexRay emplea como código de línea el ya mencionado NRZ (No Return to Zero), con el que se
representa un uno o un cero por medio de dos valores de nivel diferentes, por lo que no se debe
deducir del nombre del código no permitido, por ejemplo, el empleo de una tensión de 0 voltios. Es
perfectamente posible realizar una codificación unipolar por medio de 0 voltios y 5 voltios, no
obstante, la codificación NRZ no aísla cada bit. Esto conduce a que durante una transmisión de una
sucesión congruente de bits surja una componente de continua y se pierda la señal de
sincronización.
Para el protocolo FlexRay se emplea una versión modificada de la codificación NRZ puesto que
aquí, para la codificación, no se emplea el nivel propiamente dicho sino la diferencia entre los dos
niveles:
Se recurre, entonces, a una codificación NRZ diferencial, que posee una buena relación de rechazo
al modo común. Además de los bits de la trama, para la transmisión se antepone a cada byte un bit
de nivel alto y uno de nivel bajo. Estos dos bits reciben el nombre de byte de secuencia de inicio o
BSS (Byte Start Sequence) y ayudan al receptor a reconocer que ahora aparecerá un byte (8 bits).
Además del BSS que se antepone a cada bit, existen además otras secuencias de bits que, sin
embargo, solo aparecen una vez por trama:
Nombre Longitud Posición Función
1 bit de nivel
FES (Frame End Final de la Indica la finalización de la
bajo + 1 bit de
Sequence) trama trama y de la transmisión
nivel alto
El reconocimiento exacto de cada secuencia se lleva a cabo por medio de la precisa determinación
de la sucesión de bits que se deben transmitir. Si el receptor reconoce una secuencia de una
longitud determinada de bits de nivel bajo, entonces sabrá que se trata del inicio de una transmisión.
De esta manera esperará ahora por un bit de nivel alto que le indicará el inicio de la transmisión
propiamente dicha de una trama. A eso sobreviene la preparación que se realiza byte por byte, es
decir, la secuencia de inicio de bit o BSS, con la que se anuncia la aparición de los ocho bits
siguientes. A continuación se espera otra vez una secuencia BSS. Tras el último byte se tiene una
breve fase de inactividad y, luego, la secuencia de final de trama o FES, que indica la conclusión del
mensaje.
La curva que a manera de ejemplo se muestra en la imagen se puede captar en la práctica por
medio de un osciloscopio. En uno de los siguientes ejercicios usted mismo podrá captar y analizar la
misma secuencia de señales con dicho instrumento.
Diferencias entre la codificación del segmento dinámico y el
estático
La subdivisión de la trama en la cabecera, carga útil y rastreo tiene lugar en los dos segmentos.
También el canal delimitador de inactividad es un componente conjunto. Los dos segmentos se
diferencian únicamente por medio de la secuencia dinámica de rastreo (DTS), que solo se encuentra
en el segmento dinámico. Debemos recordar que la secuencia DTS se encarga de que una trama
siempre termine en un punto de acción, de manera que el nodo del receptor siempre pueda
determinar inequívocamente el minislot en el que finaliza la transmisión.
Esta diferencia impuesta por la secuencia DTS se puede visualizar perfectamente por medio de un
osciloscopio.
Segmento de cabecera
El «header», es decir, la cabecera de la trama, es una secuencia de bits de 5 byte que no transmite
ningún dato útil, sino información específica de control que permite el funcionamiento del protocolo.
Es decir, la cabecera contiene metadatos que describen más detalladamente los datos útiles, al igual
que información acerca del emisor.
Como se puede observar en la imagen, la cabecera posee nueve secuencias de bits diferentes:
Bit reservado
Indicador de preámbulo de carga útil (PPI)
Indicador de trama nula (NFI)
Indicador de trama de sincronización
Indicador de trama de inicio
Identificador de trama
Longitud de carga útil
CRC de cabecera
Cuenta de ciclo
Bit de reserva
El bit de reserva no se encuentra a disposición para un uso indicado en el protocolo sino que está
destinado a un desarrollo posterior del mismo y se representa por medio de un cero lógico. Este bit
también forma parte de la comprobación de redundancia CRC.
Indicador de preámbulo de carga útil
El indicador de preámbulo de carga útil o PPI (Payload Preamble Indicator), en función del estado
binario, indica si determinados datos de la carga útil se deben interpretar como información de
control. Aquí se diferencia entre el segmento dinámico y el estático.
Si el PPI se envía en el segmento estático, entonces, en la carga útil se encuentra un vector de
administración de red, que proporciona información acerca de la estructura de la red, con lo que se
facilita su gestión. En principio, este vector se puede implementar de diferentes maneras. Por
ejemplo, es posible integrarlo en el nivel del clúster, es decir que, en este caso, a cada nodo se
asigna un bit del vector de administración de red cuya longitud máxima es de 12 bytes. Cada nodo
del clúster solo puede proporcionar información acerca de si desea o no mantener la comunicación
por medio de la emisión de un 1 o un 0 en su bit de administración.
La suma de estas informaciones, es decir, el vector de gestión de red en su conjunto, se almacena
localmente en cada nodo. Si toda la cifra binaria solo consta de ceros, entonces ninguno de los
nodos requiere continuar la comunicación y todo el clúster puede pasar al modo de inactividad. Esto
representa una aplicación posible del vector opcional de administración de red.
Si el PPI se envía en el segmento dinámico entonces se agrega a la carga útil una identificación de
mensaje de 16 bits de longitud, que en ningún caso guarda relación con el identificador de la trama,
el cual posee funciones deterministas. El identificador del mensaje se puede otorgar libremente y
brinda la posibilidad de transmitir datos de otros sistemas a través del bus FlexRay. De esta manera,
por ejemplo, se pueden transmitir mensajes CAN por medio del FlexRay si el identificador del
mensaje toma la identificación original CAN.
Identificador de trama
El identificador de trama representa el componente elemental para que el comportamiento en el
tiempo sea determinista. Contiene una secuencia de bits obligatoria (longitud de 11 bits) con un
rango de valores de 1 a 2047. Este valor específico de cada nodo identifica el slot válido en el que se
puede transmitir una trama. En este caso, el valor 0 está reservado para tramas no válidas.
CRC de cabecera
La comprobación de redundancia cíclica (CRC) de la cabecera es un proceso de suma de
verificación que asegura la transmisión correcta de este segmento. Este proceso de comprobación
se basa en la división de polinomios de valor absoluto (división con resto) realizada por medio de un
polinomio diédrico, es decir, un polinomio compuesto por cifras binarias. Se habla de polinomios,
principalmente, al referirse a sumas de potencias (por ejemplo, x3+x2+x+1) pero, dado que para la
comprensión de la comprobación de redundancia cíclica no se necesita comprender con exactitud lo
que son los polinomios ni su división, esto ha sido mencionado aquí únicamente con el fin de
completar la información. Durante el cálculo realizado por medio de una división simplificada de
polinomios surge un resto que se debe añadir a la secuencia de bits que se ha de transmitir.
El procedimiento por el que se comprueba que la transmisión de la cabecera ha sido correcta
funciona de la siguiente manera:
1. Existe un polinomio de comprobación CRC ya definido, por ejemplo, 10110 (en la notación
matemática de polinomios, esta expresión tendría el siguiente aspecto:
1*x4+0*x3+1*x2+1*x+0)
2. Se necesita transmitir la información 110011. A fin de contar con suficiente espacio para
integrar el resto, la secuencia de bit se amplía en n-1 cifras del polinomio de comprobación
de redundancia cíclica (en este caso: 5 - 1= 4). De esta manera, se obtiene la siguiente
secuencia de bits: 1100110000
3. Ahora se lleva a cabo una división de polinomios simplificada por medio de la operación
lógica XOR cuya tabla de verdad es la siguiente:
1 1 0
0 0 0
1 0 1
0 1 1
A continuación tiene lugar la transmisión del emisor al receptor. En este caso es importante
que el receptor emplee el mismo polinomio CRC que el emisor. Ahora, el receptor lleva a
cabo el mismo cálculo:
Si la transmisión culmina correctamente,
tras este cálculo, el resto deberá ser igual
a cero. Si este no es el caso, esto indicaría
que existió un error durante la transmisión.
El aseguramiento de la transmisión correcta de cada bit tiene trascendental importancia puesto que
los fallos en la transferencia de los bits y secuencias de bits anteriormente descritos provocarían
serios problemas. Podríamos imaginar, por ejemplo, que se transmitió fallidamente el indicador de la
trama de inicio; si no se realizara la comprobación, este fallo conduciría a una sincronización errónea
y, de esta manera, a que, eventualmente, no tenga lugar la comunicación.
Cuenta de ciclo
El contador de ciclo de seis bits de longitud indica el número del ciclo en el que se envió una trama.
Dada la longitud de bits se cuenta con 63 números de ciclo. Cada nodo emisor introduce el valor de
su contador de ciclo en la cabecera antes del envío de la trama.
Segmento de carga útil
El segmento de carga útil representa, en definitiva, la parte más importante del sistema FlexRay,
puesto que aquí se transportan los datos útiles de la aplicación que se encuentran en el host de los
nodos individuales de un clúster. En un capítulo anterior ya se describió el manejo de estos datos
dentro de un nodo. Ahora abordaremos el tratamiento de los datos útiles en el formato de la trama.
La carga útil puede tener una longitud máxima de 2032 bits. Dado que los bits que se han de
transmitir se dividen en 16, esto corresponde a un máximo de 127 palabras (127 * 16 bits = 2032
bits). De esta manera se asegura que la cantidad de bits y bytes dentro de la carga útil sea un
número par.
La aplicación o el nodo pueden aprovechar toda la longitud de la carga útil o también solo parte de
ella. Por otro lado, la longitud disponible también se puede limitar por medio del identificador de
mensaje o del vector de administración de la red (véase el apartado dedicado el segmento de
cabecera). Los datos de la carga útil se toman del búfer del nodo en el que el host (la aplicación) los
deposita.
Las palabras de 16 bits del segmento de carga útil se identifican numéricamente empezando con el
0 para la primera palabra que aparece tras el segmento de cabecera y aumentado una cifra cada
vez tras cada palabra.
Segmento de tráiler
Este capítulo se ocupa una vez más de manera explícita de la transmisión de datos y tramas
propiamente dicha. En los apartados precedentes se ilustró detalladamente la transmisión de datos
entre cada componente de un nodo. Fue así como, por ejemplo, se describió cómo una señal pasa
al controlador del bus (TxD / TxEN) y cómo este, a continuación, la reenvía a través del bus.
La imagen siguiente muestra una vez más la cadena completa de señales entre el emisor y el
receptor:
El controlador de comunicación del nodo emisor activa el controlador del bus a través de la línea
TxEN. Este recibe los datos que se han de transmitir por medio de la línea TxD. En el caso de que
se cuente con un guardián de bus, este habilita la transmisión a través de su línea BGE. El
controlador del bus convierte la señal digital en una señal analógica de tensión diferencial. Esta pasa
al receptor a través de los buses BP y BM. La mayoría de las veces, los nodos se conectan entre sí
con una configuración en estrella, por lo que el sistema FlexRay emplea para ello los
correspondientes acopladores pasivos (no ópticos). Esto cumple esencialmente la función de los
componentes de red de la capa 1. Debemos recordar que en la capa de transmisión de bits solo se
define el medio de transferencia, es decir, el equipo aquí empleado carece por completo de
inteligencia. No es otro el caso de los acopladores en estrella, pues solo conectan entre sí los
componentes, como un mero nexo, sin ejercer ningún tipo de influencia sobre el flujo de la señal. Su
función se limita, por lo tanto, a la transmisión física de datos. Aparte de esto, existen también
acopladores en estrella activos que operan al nivel de la capa 2.
Ahora la señal abandona el acoplador en estrella y se dirige al receptor, lugar donde el controlador
del bus al que ha sido destinada reconoce la señal y la vuelve a convertir en una señal binaria, es
decir, la transforma en un valor discreto. Esta señal binaria pasa ahora hacia el transceptor a través
de la línea RxD y este consigue identificarla por medio de la exploración de los bits
correspondientes.
¿Pero qué es lo que hace exactamente el transceptor para identificar los bytes? En el controlador del
bus se encuentra una señal binaria que en su forma actual, no es apta para un procesamiento
digital. La señal binaria posee un valor discreto (es decir, 1 o 0), pero para que se convierta en una
señal digital también se requiere que su rango de tiempo se exprese en valores discretos. Esto se
consigue con la exploración realizada por medio del reloj de muestreo o «sampleclock». En FlexRay
el sistema se configura de manera que la frecuencia de este reloj sea ocho veces más alta que la
duración de bit; es decir, un bit se representa por medio de ocho valores de medida.
El siguiente paso consiste en el filtrado de la señal con la finalidad de eliminar fallos técnicos o
glitches. Se trata de interferencias en forma de cambios no deseados de nivel lógico, los mismos
que, sin el correspondiente filtrado, invalidarían la trama puesto que ya no sería posible reconocer
cada bit. Estos fallos pueden surgir, por ejemplo, si se acoplan a la línea campos de interferencia.
El filtrado
En este caso se emplea como filtro un elemento que toma decisiones en función de una mayoría de
3 de 5. Como se puede observar en la curva de la imagen, el mecanismo de filtrado revisa y
compara entre sí siempre cinco muestras. El valor de salida depende de si el grupo analizado tiene
más unos o más ceros, hecho que, en definitiva, determina el resultado. Se reconoce claramente
que el filtro elimina el cambio erróneo de nivel (entre el nivel bajo de la secuencia de inicio de byte
(BSS Low) y el primer bit). El funcionamiento exacto del filtro se orienta hacia un registro de
desplazamiento regido por el método de último en entrar, primero en salir; es decir que,
sencillamente, la elipse se desplaza con un incremento de uno de izquierda a derecha a través de la
señal sujeta a exploración. También es naturalmente evidente que el filtrado del fallo no puede
funcionar con una longitud arbitraria puesto que, en un punto determinado, la operación terminaría.
La longitud máxima de cambios de nivel fallidos depende de la velocidad del bus y oscila entre 25 ns
(10 Mbits/s) y 100 ns (2,5 Mbits/s).
Reconocimiento de bits
Conocido también como «strobing», en este último paso se determina directamente el valor definitivo
del bit a partir de la señal filtrada. Para este proceso se emplea un contador que cuenta
progresivamente ocho muestras (8 muestras = 1 bit), siendo el valor de la quinta muestra el que
expresa el valor del bit. Para que el contador identifique el momento en que debe iniciar la cuenta se
requiere una sincronización. Esta también se realiza por medio de la señal filtrada. El inicio de la
cuenta se indica a través del primer valor lógico bajo de la secuencia BSS, tomado de la señal
filtrada. Esta sincronización se repite tras cada byte.
Almacenamiento y procesamiento ulterior de los datos
Una vez que el flujo de bits ha pasado y aprobado una serie de pruebas sintácticas y semánticas, se
puede poner la información principalmente a disposición del host, para lo cual la trama se almacena
en el búfer del controlador de comunicación. No obstante, este proceso está sujeto a algunas
condiciones.
En principio, cada nodo recibe todas las tramas enviadas por otros nodos pero, lógicamente, no se
guarda en la memoria todo lo recibido puesto que el nodo en cuestión no necesita toda la
información y, por otra parte, no cuenta con un volumen de memoria ilimitado debido al número de
búfers también limitado.
Las condiciones se guardan en el mismo búfer en forma de ciertos segmentos. Es así, entonces, que
existen, por ejemplo, campos para el identificador de trama, para el canal de comunicación y para la
diferenciación entre búfers del receptor y del emisor. Una trama recibida solo se almacena bajo la
condición de que los campos del búfer contengan el identificador de la trama y la indicación correcta
relacionada con el canal de transmisión. De lo contrario, la trama será desechada. Además de la
configuración exclusiva de la identificación de la trama, por lo demás, resulta incluso posible
establecer determinadas reglas de filtrado, que permitan a un grupo de tramas almacenarse
temporalmente en el búfer.
Prueba de conocimientos
Señales de tensión
Paquetes
Tramas
La cabecera.
El tráiler.
La apostilla.
La atención.
La carga útil.
¿En qué sucesión se ordenan los segmentos de una trama?
262 bytes
254 bytes
5 bytes
3 bytes
La codificación de la línea es responsable del envío seguro de una señal a través del canal
de transmisión. ¿No obstante, por qué es necesario codificar especialmente la señal para su
transferencia?
Señales digitales
Señales analógicas
¿Qué tipo de señales se transmiten a través del canal físico de transmisión?
Señales analógicas
Señales digitales
Por cuantificación.
Por muestreo.
Por filtrado.
Por amplificación.
TSS
BSS
FSS
FES
DTS
Metadatos.
Metadatos.
Datos de seguridad.
¿De dónde se toman los datos que se deben transmitir en la carga útil?
¿Que significa contar con una distancia Hamming de seis en lo concerniente a la CRC?
Si un nodo recibe una señal, en principio, esta tiene una forma analógica. No obstante,
dado que se emplea un código binario, el rango de valores ya ha sido cuantificado y la señal
se puede tomar de esa manera. Sin embargo, es necesario todavía contar con un valor
discreto en el dominio del tiempo. ¿Cómo se consigue esto en el sistema FlexRay?
Sí.
No
Sí
No, solo aquellas en las que el identificador coincide con la
identificación almacenada en el búfer.
Localización de fallos en el taller: Reconocimiento de fallos
en el sistema FlexRay
En las siguientes páginas su tarea consiste en localizar los fallos que se incorporan al circuito del
sistema. En este caso no es necesario que active por sí mismo los fallos puesto que estos aparecen
de manera automática una vez que se abre la página correspondiente.
Ejercicio: Localización de fallo 1
Para localizar el fallo, procederemos paso a paso. Empezaremos por los puntos que ya nos son
conocidos y que, por lo tanto, nos permiten delimitar la búsqueda.
1. Hechos conocidos
El canal A se encuentra activo
El canal B no se emplea para la transferencia en este sistema.
La señal diferencial es el resultado de las señales del bus positivo y del negativo.
Esto significa que el fallo se encuentra en el canal A. En primer lugar, revise ahora la tensión entre
los dos canales de bus positivo y negativo y tierra (GND). En el momento actual, no obstante, en
este caso, no nos interesa en primer término la forma de la señal sino qué tensión se mide en las
líneas.
RANGO: 10V
MODO: RMS
DC
En este caso huelga la medición con el osciloscopio puesto que no existe señal. Por lo demás, el
resultado de la medición indica la presencia de un fallo común que se deducirá por medio de la
siguiente pregunta:
Para localizar el fallo, procederemos paso a paso. Empezaremos por los puntos que ya nos son
conocidos y que, por lo tanto, nos permiten delimitar la búsqueda.
1. Hechos conocidos
El canal A se encuentra activo.
El canal B no se emplea para la transferencia en este sistema.
La señal diferencial es el resultado de las señales del bus positivo y del negativo.
Esto significa que el fallo se encuentra en el canal A. En primer lugar, revise ahora la tensión entre
los dos canales de bus positivo y negativo y tierra (GND). En el momento actual, no obstante, en
este caso, no nos interesa en primer término la forma de la señal sino qué tensión se mide en las
líneas.
RANGO: 50V
MODO: RMS
DC
Sí
No
De esto podemos deducir que un fallo presente en un canal influye sobre el otro canal. El resultado
se observa en el hecho de que se mide una tensión fallida en los dos canales.
Corriente alterna
Corriente continua
Tensión mixta
Observe otra vez más con atención los resultados de la primera y tercera pregunta. ¿Se le
hace conocido ese valor en relación con la tecnología del automóvil?
¿Qué conclusión definitiva puede extraer a partir de las mediciones y las preguntas
anteriores?
En las dos líneas del canal ____ se aplica una tensión de ____
voltios, por eso se puede suponer que la tensión de a bordo 12, tensión
continua, batería,
proveniente de la _____________ se aplica al sistema. Esta A
tensión es _____________.
Ejercicio: Localización de fallo 3
Para localizar el fallo, procederemos paso a paso. Empezaremos por los puntos que ya nos son
conocidos y que, por lo tanto, nos permiten delimitar la búsqueda.
1. Hechos conocidos
El canal A se encuentra activo.
El canal B no se emplea para la transferencia en este sistema.
La señal diferencial es el resultado de las señales del bus positivo y del negativo.
Esto significa que el fallo se encuentra en el canal A. En primer lugar, revise ahora la tensión entre
los dos canales de bus positivo y negativo y tierra (GND).
Mida las tensiones específicas del canal y visualícelas en el osciloscopio. A continuación, conteste
las siguientes preguntas.
3. Evaluación de la medición
Sí
No
Sí
No
Los dos nodos reciben tensión pero el sistema no funciona. Por lo tanto hay que plantearse la
pregunta de si la tensión llega verdaderamente a los dos nodos o si, a lo mejor, la medición parte de
un error conceptual. En los nodos se emplean transceptores, es decir, equipos que pueden emitir y
receptar señales; es decir, mientras exista conexión entre los nodos, en cada punto del sistema de
capacitación se medirán 2,5 voltios mientras funcione correctamente por lo menos un nodo. Este
tiene como salida sencillamente la tensión de inactividad. Con el fin de contestar la pregunta anterior
es necesario modificar un poco el montaje de experimentación:
4. Medición avanzada
Puede llevar a cabo esta medición en el canal del bus, no obstante, esto no es absolutamente
imprescindible para el éxito del ejercicio. Conteste ahora las siguientes preguntas:
Para localizar el fallo, procederemos paso a paso. Empezaremos por los puntos que ya nos son
conocidos y que, por lo tanto, nos permiten delimitar la búsqueda.
1. Hechos conocidos
El canal A se encuentra activo.
El canal B no se emplea para la transferencia en este sistema.
La señal diferencial es el resultado de las señales del bus positivo y del negativo.
Esto significa que el fallo se encuentra en el canal A. En primer lugar, revise ahora la tensión entre
los dos canales de bus positivo y negativo y tierra (GND).
Mida las tensiones específicas del canal y visualícelas en el osciloscopio. A continuación, conteste
las siguientes preguntas.
3. Evaluación de la medición
¿Se representa una señal FlexRay correcta, es decir, tiene lugar una transferencia de
información?
Sí
No
Parpadean.
Se iluminan continuamente.
Resumen
Usted conoce ahora todos los segmentos importantes del protocolo FlexRay. Esta página le
proporcionará finalmente una sinopsis del protocolo FlexRay en su conjunto:
FlexRay vs. Ethernet
Durante el futuro próximo los sistemas de bus FlexRay y Ethernet serán dos importantes
competidores. Por esta razón, en esta página haremos una breve introducción al tema Ethernet.
Compararemos también los dos sistemas con el fin de mostrar sus ventajas y desventajas.
La tecnología Ethernet
La tecnología Ethernet se ha convertido en esta era de las redes de datos en un estándar fijo. Casi
en todo hogar existe una pequeña red de este tipo, que sirve de nexo, por ejemplo, entre los
ordenadores y un enrutador que permite el acceso a internet.
Si analizamos el protocolo Ethernet dentro del contexto del modelo OSI, en sus especificaciones se
define la primera y la segunda capa. Aquí se fijan los canales físicos que se deben emplear para la
capa de transmisión de bits, lo cual incluye conexiones normalizadas, mientras que los procesos de
acceso al bus se delegan a la capa de seguridad. Las velocidades de transmisión de esta tecnología
oscilan entre 10 megabits/s y 10 gigabits/s:
Las especificaciones Ethernet permiten una transmisión a través de líneas de cobre o de fibra óptica.
No obstante, el diseño especial de los cables, incluidas sus conexiones, se orientan a la velocidad
de transmisión deseada. Un tipo de cable frecuentemente usado es el CAT5 en una variante carente
de blindaje.
De igual manera se especifica en la primera capa el código de línea (es decir, la manera en que los
pulsos de tensión se introducirán en los conductores). También en este caso se emplean diferentes
códigos de línea en función de las especificaciones:
Código Manchester
Código 4B5B
Código 8b10b
NRZI
La capa de seguridad
Este el acrónimo inglés de «Carrier Sense Multiple Access/Collision Detection» es decir, acceso
múltiple por detección de portadora / detección de colisión. Para explicar claramente este
procedimiento es posible traer a colación un ejemplo de la vida cotidiana:
Un conflicto común se
presenta si varias
personas que se
encuentran en una
habitación intercambian
información sin que
exista alguien que
conduzca la charla. En
un momento
determinado, todos
podrían emiten mensajes
y dado que las ondas
sonoras se superponen,
el oído ya no estará en
capacidad de filtrar la
información importante.
Las personen perciben,
momentáneamente, que
la comunicación sufre
interferencias y,
entonces, cada quien
guarda silencio.
Acto seguido, cada uno
espera un breve tiempo
hasta volver a intentar
restablecer la comunicación. En este caso, tendrá prioridad la persona que haya hecho más corta su
espera.
El método CSMA/CD mencionado también opera bajo este principio que, naturalmente, en un nivel
tecnológico tiene un diseño algo más complejo.
De igual manera, en la capa de seguridad se encuentran las direcciones MAC (Media Access
Control). Estas direcciones de 48 bits de longitud, representadas en código hexadecimal, sirven para
la identificación de cada dispositivo que participa en la comunicación en la segunda capa. Por lo
tanto, esto significa que cada adaptador de red posee su propia dirección MAC específica, asignada
en los casos normales de manera fija al equipo y que no sufrirá modificaciones.
Comparación entre FlexRay y Ethernet
Una de las mayores diferencias entre estos dos sistemas de bus radica en la amplitud de la gama de
aplicaciones. El concepto Ethernet se distingue por su multiplicidad de subfunciones opcionales en el
ámbito de la tecnología de la información y de comunicación. Por el contrario, el bus FlexRay se
concentra en el área de la tecnología de control automático por lo que tiene una aplicación universal.
También el tipo de comunicación se diferencia fundamentalmente, pues el bus FlexRay emplea un
algoritmo determinista. Ethernet, por el contrario, opera por medio de un concepto orientado a los
acontecimientos.
Debido a las diferencias de los dos buses y dado el estado actual de la técnica, ninguno de los dos
sistemas se impondrá sobre el otro. La decisión a favor de uno de ellos se orienta más bien al tipo
de proyecto en que se utilicen. No obstante, en principio, se puede constatar que Ethernet tomará la
delantera en los sistemas en los que se desee combinar aplicaciones de tecnología de control
automático y comunicación. Por el contrario, FlexRay demuestra sus fortalezas en lo concerniente a
seguridad y fiabilidad. Por otra parte, también es imaginable un escenario en el que los dos sistemas
de bus se empleen paralelamente.
Perspectivas: El futuro del bus FlexRay
Estamos llegando al fin de este curso dedicado al bus FlexRay. A manera de conclusión, en el
siguiente y último capítulo se ofrece una sinopsis acerca del desarrollo ulterior del protocolo
FlexRay.
Los nuevos productos que aparecen en el mercado presentan frecuentemente algunos fallos que, a
menudo, solo se hacen visibles en la práctica, tras un empleo regular de la aplicación. Los sistemas
FlexRay tampoco han escapado a este problema. Sin embargo, en este caso no se trata de
dificultades graves, sino de posibilidades de optimización, que se consiguieron detectar
empíricamente. Es así cómo una de las metas consiste en mejorar la armonía entre la capa física y
las especificaciones del protocolo. Por otra parte, se deberá implementar un método de
sincronización de relojes más sencillo, al igual que un apoyo óptimo a tasas de bits que se
encuentren por debajo de los 10 Mbits/s.
Otro aspecto importante relacionado con el futuro del bus FlexRay es la iniciativa propuesta por
diferentes empresas de la industria automovilística denominada Initiative Automotive Open System
Architecture. El objetivo de este empeño se dirige al desarrollo de una base de software para
unidades de control que permita el diseño flexible de los programas y, de esta manera, garantice un
intercambio de componentes libre de complicaciones y que permita sencillas posibilidades de
actualización. La práctica actual muestra que el número de unidades de control de los automóviles
crece y, por lo tanto, aumenta constantemente el nivel de piezas electrónicas. En este contexto, el
software incorporado a los controles se desarrolla especialmente para cada caso de aplicación, es
decir, no se compone de módulos diferentes sino que cada programa se diseña en solitario. Es así
como, por ejemplo, para cada serie de modelos se elaboran unidades de control y aplicaciones de
software propias. Por lo demás, aparece el mismo problema cuando se trata de actualizar un
sistema. También en este caso se desarrollan nuevamente la unidad de control y el software. La
iniciativa AUTOSAR desea modificar estos procedimientos por medio de la reutilización de
determinadas estructuras básicas del software creando, de esta manera, un sistema modular, es
decir, recurriendo al perfeccionamiento o modificación de determinados módulos, sobre los que se
puedan montar aplicaciones especiales. Por una parte, esto implica un enorme aumento de la
eficiencia y, por otra, se eleva de esta manera la calidad de los módulos básicos, puesto que estos
se encontrarían en uso constante y serían objeto de un continuo avance en materia de calidad y
perfeccionamiento.
Para alcanzar esta meta es necesaria la creación de un sistema modular estandarizado. En este
caso posee una importancia especial el desarrollo de una interfaz estándar, que permita la
comunicación entre los distintos módulos de software. Esta interfaz lleva el nombre de Virtual
Functional Bus (VFB) y comunica entre sí los diferentes módulos en el plano virtual, en el que cada
uno de ellos cumple una función específica. Dado que la comunicación tiene lugar sobre una base
virtual, en principio, esta es independiente del equipo. En este caso, la estandarización garantiza las
posibilidades de reutilización.
Lo especial de este sistema radica en que, gracias al bus VFB, los componentes de software de una
unidad de control o ECU se encuentran casi desacoplados; es decir, si uno de ellos recibe
información de una ECU, este hecho es completamente independiente de si la información proviene
de un módulo de software o de otra ECU, o de si el módulo forma parte de la misma ECU. De esta
manera es posible romper las barreras de cada sistema y se obtiene la posibilidad de montar la
función deseada a partir de módulos de software de diferentes ECUs.
Para expresarlo de otra manera, esto significa que una unidad de control ya no tiene asignada una
función específica. De esta manera, ya no existiría, por ejemplo, una unidad de control propia que
abra o cierre exclusivamente la ventana de un vehículo o que controle el aire acondicionado. La
meta consiste en montar una red compuesta por diferentes unidades de control y que todas ellas
posean varios y diferentes módulos de regulación integrados. Estos módulos se comunicarán entre
sí por medio del bus VFB; de esta manera, se tiene la posibilidad de montar la función deseada a
partir de distintos módulos. La imagen adjunta sirve para ilustrar esta idea.
¡Felicidades!
Éste es el último capítulo. Usted ha finalizado el curso de "FlexRay".
El presente curso "FlexRay" tiene reservados los derechos de autor. Reservados todos los
derechos. Sin el permiso por escrito de LUCAS-NÜLLE GmbH, el documento no puede ser
reproducido en ninguna forma, sea por fotocopia, microfilm o algún otro procedimiento, ni tampoco
puede ser transferido a algún lenguaje legible por máquinas, en especial por instalaciones de
procesamiento electrónico de datos.
El software descrito se suministra sobre la base de un contrato general de licencia o por licencia
única. Se permite la utilización o la reproducción del software únicamente en concordancia con las
condiciones del contrato.
En el caso de que se realicen modificaciones por parte de una instancia no autorizada por LUCAS-
NÜLLE GmbH, desaparece ante ello la responsabilidad civil del fabricante, así como cualquier
eventual reclamo de garantía.