Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FloresBermejoHumbertoI SIM Sin Articulo PDF
FloresBermejoHumbertoI SIM Sin Articulo PDF
TESIS
PARA OBTENER EL GRADO DE
MAESTRO EN
SISTEMAS INTELIGENTES MULTIMEDIA
PRESENTA
Cada nuevo reto suele ser un trayecto con subidas y bajadas, la maestría no ha sida
para nada la excepción, muchas experiencias y vivencias llegaron con ella. A lo largo
de esta etapa he aprendido y crecido como profesionista y lo más importante como
persona.
También quiero agradecer a todas aquellas personas las cuales han pasado por
alguna etapa de mi vida y dejaron algún aprendizaje o una enseñanza, algunos ya
no se encuentran en el mismo camino, solo pasando por un pequeño instante pero
siempre se agradecerá haber aprendido algo de ustedes. A aquellos pocos que aún
siguen aquí se les agradece mucho más.
V
VI
RESUMEN
VII
VIII
ABSTRACT
IX
X
ÍNDICE DE CONTENIDO
AGRADECIMIENTOS.................................................................................................................................. V
RESUMEN ............................................................................................................................................... VII
ABSTRACT ................................................................................................................................................ IX
ÍNDICE DE CONTENIDO ........................................................................................................................... XI
ÍNDICE DE FIGURAS ................................................................................................................................ XV
ÍNDICE DE TABLAS ................................................................................................................................. XIX
GLOSARIO .............................................................................................................................................. XXI
NOMENCLATURA ................................................................................................................................. XXV
1. INTRODUCCIÓN ................................................................................................................................ 1
1.1. ANTECEDENTES ........................................................................................................................ 1
1.2. DEFINICIÓN DEL PROBLEMA .................................................................................................... 2
1.3. JUSTIFICACIÓN.......................................................................................................................... 3
1.4. OBJETIVOS ................................................................................................................................ 3
1.4.1. Objetivo general ............................................................................................................... 4
1.4.2. Objetivos específicos ........................................................................................................ 4
1.5. HIPÓTESIS ................................................................................................................................. 4
2. MARCO TEÓRICO .............................................................................................................................. 5
2.1. SISTEMAS EMBEBIDOS EN EL AMBIENTE AUTOMOTRIZ .......................................................... 5
2.2. REDES DE COMUNICACIÓN ...................................................................................................... 7
2.2.1. Topología de las redes de comunicación ......................................................................... 7
2.2.2. Organización de una red de comunicación .................................................................... 12
2.2.3. Direccionamiento ........................................................................................................... 14
2.2.4. Acceso a bus de datos .................................................................................................... 17
2.2.5. Modelo de interconexión de sistemas abiertos (OSI) ................................................... 26
2.3. REDES DE COMUNICACIÓN AUTOMOTRICES ......................................................................... 29
2.3.1. Composición de las redes automotrices ........................................................................ 30
2.3.2. Sistemas de buses en automóviles................................................................................. 31
2.3.3. Mecanismos de control .................................................................................................. 36
2.3.4. Clasificación de los sistemas de bus ............................................................................... 39
2.3.5. Compuerta de enlace (Gateway).................................................................................... 41
XI
2.4. APLICACIONES EN VEHÍCULOS ............................................................................................... 43
2.4.1. Sistemas de transmisión y chasis ................................................................................... 43
2.4.2. Sistemas de confort y comodidad .................................................................................. 43
2.4.3. Sistemas multimedia ...................................................................................................... 44
2.4.4. Ejemplo de redes vehiculares ......................................................................................... 44
2.5. SISTEMAS DE BUSES ............................................................................................................... 45
2.5.1. CAN ................................................................................................................................. 45
2.5.2. LIN................................................................................................................................... 82
3. PROCEDIMIENTO DE INVESTIGACIÓN .......................................................................................... 113
3.1. DEFINICIÓN DE REQUISITOS DEL SISTEMA ........................................................................... 113
3.1.1. Perspectiva del sistema ................................................................................................ 114
3.1.2. Funcionalidad del producto.......................................................................................... 114
3.1.3. Restricciones................................................................................................................. 114
3.1.4. Suposiciones y dependencias ....................................................................................... 114
3.1.5. Características de los usuarios ..................................................................................... 115
3.1.6. Entorno de utilización del sistema .............................................................................. 115
3.1.7. Requisitos funcionales .................................................................................................. 116
3.1.8. Requisitos no funcionales............................................................................................. 117
3.2. DISEÑO E IMPLEMENTACIÓN ............................................................................................... 118
3.2.1. Clases, funciones y parámetros .................................................................................... 118
3.2.2. Diagramas eléctricos .................................................................................................... 127
3.2.3. Interfaz gráfica.............................................................................................................. 132
3.3. IMPLEMENTACIÓN DE LA AUTOMATIZACIÓN...................................................................... 135
3.3.1. Visión general ............................................................................................................... 135
3.3.2. Procedimiento de pruebas anterior ............................................................................. 136
3.3.3. Cambio en el procedimiento de pruebas ..................................................................... 136
3.3.4. Medición ....................................................................................................................... 137
4. RESULTADOS................................................................................................................................. 139
4.1. REDUCCIÓN DE TIEMPOS ..................................................................................................... 139
4.2. VENTAJAS OBTENIDAS .......................................................................................................... 143
4.3. NUEVAS PRUEBAS EJECUTADAS ........................................................................................... 144
XII
4.4. RETORNO DE INVERSIÓN (ROI) ............................................................................................ 145
4.5. DEFECTOS ENCONTRADOS ................................................................................................... 146
5. CONCLUSIONES ............................................................................................................................ 149
6. RECOMENDACIONES .................................................................................................................... 151
7. REFERENCIAS BIBLIOGRÁFICAS .................................................................................................... 153
8. ANEXO A ....................................................................................................................................... 159
XIII
XIV
ÍNDICE DE FIGURAS
XVI
Figura 78 - Clase Short2Battery_LIN..................................................................................... 123
Figura 79 - Clase Power_Reset ............................................................................................ 123
Figura 80 - Clase WakeUp ....................................................................................................124
Figura 81 - Clase Sleep .........................................................................................................124
Figura 82 - Interacción entre cases .................................................................................... 125
Figura 83 - Clase común para protocolos .........................................................................126
Figura 84 - Diagrama eléctrico CAN DW...........................................................................128
Figura 85 - Diagrama eléctrico CAN SW............................................................................129
Figura 86 - Diagrama eléctrico común para protocolos ................................................130
Figura 87 - Diagrama eléctrico LIN ..................................................................................... 131
Figura 88 - Diagrama activación y desactivación .......................................................... 132
Figura 89 - Panel de control.................................................................................................135
Figura 90 - Implementación de funciones ........................................................................137
Figura 91 - Reducción de tiempo en pruebas continúas de pérdida de
comunicación ....................................................................................................................... 140
Figura 92 - Reducción de tiempo en pruebas continúas de activación y
desactivación ........................................................................................................................ 141
Figura 93 - Reducción de tiempo en pruebas continúas de reseteo ........................... 142
XVII
XVIII
ÍNDICE DE TABLAS
Tabla 1 - Requisitos de los sistemas en tiempo real............................................................ 35
Tabla 2 - Clasificación del bus de CAN ...............................................................................40
Tabla 3 - Descripción general de buses ..............................................................................45
Tabla 4 - Principales acontecimientos en los primeros 20 años de CAN ........................ 48
Tabla 5 - Código de longitud de datos ...............................................................................60
Tabla 6 - Mapa de memoria de mensaje de datos .......................................................... 61
Tabla 7- Comando para ir a modo inactivo.....................................................................107
Tabla 8 - Interpretación de errores ..................................................................................... 109
Tabla 9 - Personal involucrado ............................................................................................ 114
Tabla 10 - Reglas de diseño .................................................................................................134
Tabla 11 - Reducción de tiempo en pruebas de pérdida de comunicación.............139
Tabla 12 - Reducción de tiempo en pruebas continúas de pérdida de comunicación
.................................................................................................................................................140
Tabla 13 - Reducción de tiempo en pruebas activación y desactivación .................140
Tabla 14- Reducción de tiempo en pruebas continúas de activación y desactivación
.................................................................................................................................................141
Tabla 15 - Reducción de tiempo en pruebas de reseteo ..............................................141
Tabla 16 - Reducción de tiempo en pruebas continúas de reseteo ............................ 142
Tabla 17 - Costos del equipo VT System ............................................................................145
Tabla 18 - Costo por hora ingeniería de trabajo .............................................................. 146
XIX
XX
GLOSARIO
XXI
EMI – Interferencia electromagnética (ElectroMagnetic Interference).
UTP – Cableado de par trenzado sin blindaje (Unshielded twisted pair).
STP – Cableado de par trenzado con blindaje (Shielded Twisted Pair).
ABS – Sistema de frenos antibloqueo (Antiblockiersystem, Antilock Brake System).
EDC – Sistema de control electrónico de diesel (Electronic Diesel Control).
ABC – Sistemas de control activo del chasis (Active Body Control).
ACC – Sistemas de control de crucero adaptativo (Adaptive Cruise Control)
MSM – Módulos de memoria para asientos (Memory Seat Module).
CCSM – Módulos climatización de asientos (Climatique Control Seat Module).
CSM – Módulo de sistema central (Center Stack Module).
IPC – Panel de control de instrumentos (Instrumental Control Panel).
HUD – Pantalla frontal (Head-Up Display).
CiA – CAN en Automatización (CAN in Automation).
I2C – Circuito Inter-integrado (Inter-Integrated Circuit).
ET – Activación por eventos (Event Triggered).
TT – Activación por tiempo (Time Triggered),
TTCAN – CAN activado por tiempo (Time-Triggrered CAN).
MOST – Sistema de transporte orientado a medios (Media Oriented Systems
Transport).
OSEK – Sistemas abiertos y sus interfaces para electrónicos en vehículos de motor
(Offene Systeme und deren Schnittstellen für die Elektronik in Kraftfahrzeugen, Open
systems and their interfaces for electronics in motor vehicles).
LLC – Control de Enlace Lógico (Logical Link Control).
MAC – Control de Acceso al Medio (Media Access Control).
RTR – Retransmisión remota (Remote Retransmition).
EOF – Fin del mensaje (End Of Frame).
SOF – Inicio del mensaje (Start Of Frame).
CRC – Comprobación de redundancia cíclica (Cyclic Redundancy Check).
FIFO – Primeras entradas primeras salidas (First Inputs First Outputs).
DLC – Código de longitud (Data Length Code).
ACK – Reconocimiento (Acknowledge).
NRZ – No regreso a cero (Non-Return Zero).
XXII
TEC – Contador de errores de transmisión (Transmission Error Counter).
REC – Contador de errores de recepción (Reception Error Counter).
CAN_H – Canal alto de CAN (CAN High).
CAN_L – Canal bajo de CAN (CAN Low).
SCI – Interface de comunicación serial (Serial Communications Interface).
UART – Receptor-transmisor asincrónico universal (Receptor-transmisor asincrónico
universal).
LSB – Bit menos significativo (Less Significative Bit).
MSB – Bit mas significativo (More Significative Bit).
PID – Identificador protegido (Protected Identifier).
Jlitter – Fluctuación (Variaciones en el tiempo de una señal con respecto a su posición
original).
ERS – Especificación de Requisitos Software (SRS, Software Requirement Specification).
CAPL – Lenguaje de programación nativa de CANoe (Communication Access
Programming Language).
CANoe - Herramienta de software para el desarrollo, prueba y análisis de redes
completas y ECU individuales.
VT System – Módulos de interfaz de entradas y salidas para pruebas de ECU.
CAN DW – CAN doble cable (CAN Double-Wire).
CAN SW – CAN un cable (CAN Single-Wire).
HMI – Interfaz Hombre-Máquina (Human Machine Interface).
XXIII
XXIV
NOMENCLATURA
Rb – Tasa de transferencia por usuario.
Rbs – Tasa de transmisión de bits del sistema.
Tg – Tiempo libre de transmisión.
Tf – Duración de tiempo de transmisión (ventana).
K- Número de slots por cada ventana o número de canales.
B – Ancho de banda de cada canal.
Bg – Tiempo libre de transmisión entre los dos canales.
VBAT – Tensión de alimentación.
VSUP – Voltaje de suministro interno.
A – Ángulo (min).
XXV
XXVI
1. INTRODUCCIÓN
Este primer capítulo se encarga de presentar los elementos por los cuales se decidió
a llevar a cabo esta esta investigación. En primera instancia se presentarán los
antecedentes y definición del problema, con lo que justificamos y definiremos el
objetivo general y objetivos específicos de la investigación y finalmente generamos la
hipótesis dicha investigación.
1.1. ANTECEDENTES
Hoy en día la industria automotriz en es una de las industrias con mayor auge,
dinamismo y crecimiento en México y en el mundo (1). Hoy la industria automotriz
mexicana vuelve a ser centro de atención en la escena global, debido a que vive un
proceso de transición de un perfil orientado principalmente a la manufactura, a uno
en el que la innovación y el diseño juegan un papel preponderante (2).
La demanda automotriz así como el los avances tecnológicos obligan a los
fabricantes de vehículos a incorporar cada vez más mejoras dentro del confort,
seguridad y cuidado al medio ambiente. Los nuevos productos se basan en el
desarrollo de sistemas embebidos, los cuales deben de cumplir con estrictas
normativas que garanticen la seguridad de los usuarios.
Para asegurar la calidad del producto y con ello la satisfacción del cliente, las pruebas
juegan un papel importante al conseguir este objetivo Las pruebas de sistema dentro
de cualquier metodología de desarrollo de software son una etapa que debe
comenzar actividades tempranamente. Dentro del desarrollo de software la
ejecución de pruebas suele efectuarse como uno de los últimos pasos de este nivel
de pruebas. La liberación final del software al cliente depende de la terminación de
la ejecución de pruebas. Por ello es de vital importancia la detección de fallas en esta
etapa previa a la entrega al cliente de esta manera evitar cualquier descontento. Un
software libre de errores no es posible de garantizar, el seguimiento de metodologías
así como técnicas de prueba pueden incrementar la confianza del cliente. Uno de
los principales factores que afecta la profundidad de las pruebas es el tiempo y
1
presupuesto. La combinación de pruebas funcionales y no funcionales así como su
ejecución manual o automática.
2
1.3. JUSTIFICACIÓN
1.4. OBJETIVOS
3
1.4.1. Objetivo general
1.5. HIPÓTESIS
4
2. MARCO TEÓRICO
Algunos ejemplos enfocados al área automotriz son los sistemas de frenado anti
bloqueo o los sistemas de bolsas de aire. La complejidad de los sistemas embebidos
automotrices se está aumentando cada vez más. Por lo cual están sujetos a una gran
cantidad de normas que aseguren su funcionalidad y cuiden la integridad de los
usuarios. El estándar ISO 26262 (5) es uno de los estándares dedicados
específicamente a la seguridad de los sistemas automotrices.
5
Figura 1 - Clasificación de los sistemas embebidos
Los sistemas de software automotrices son clasificados como sistemas en tiempo real
(RTOS Real-time operative system). Estos sistemas operativos son destinados a ejecutar
aplicaciones en tiempo real. Esto implica que son sistemas se rigen bajo requisitos de
tiempo muy estrictos.
Un sistema operativo de tiempo real debe responder a eventos externos dentro de
lapsos de tiempo muy pequeños. Este tiempo de respuesta en el cual un sistema
responde a una interrupción generada por un evento es conocido como latencia de
interrupción. Al mismo tiempo un sistema operativo en tiempo real debe de ser capaz
de manejar todas estas interrupciones y priorizarlas para asegurar el correcto
procesamiento de eventos generados.
Las tareas procesadas por estos sistemas operativos deben ser tareas finitas con un
límite de tiempo llamado deadline. Para conseguir esto un sistema de programación
de tareas es llevado a cabo (6).
Si un sistema operativo en tiempo real debe de cumplir con requisitos de tiempo
continuamente es llamado Sistema duro en tiempo real, si el sistema no debe de
cumplir con estos requisitos de tiempo es considerado como sistemas ligeros o suaves
6
en tiempo real. Es por ello que los sistemas embebidos en tiempo real dentro de una
red automotriz son considerados como sistemas duros, como los ejemplos
mencionados un bolsa de aire instalada dentro de un vehículo debe responder y
activarse en un lapso determinado de tiempo después de que un impacto ha sido
detectado.
2.2.1.1. Bus
7
Figura 2 - Topología bus
2.2.1.2. Estrella
8
Figura 3 - Topología estrella
2.2.1.3. Anillo
9
Figura 4 - Topología anillo
2.2.1.4. Malla
Todos los nodos tienen una conexión con cada otro nodo de la red.
Conexiones redundantes entre los nodos de la red.
En caso de alguna falla en un nodo la red sigue operando.
Facilita el aislamiento de fallas.
Privacidad entre información transmitida.
En caso de alguna falla es más difícil de diagnosticar.
Costoso debido a la cantidad de cableado.
10
Figura 5 - Topología malla
2.2.1.5. Hibrida
11
Figura 6 - Topología híbrida
12
2.2.2.1. Nodo (ECU)
Los datos, bus de datos es la información que será enviada entre las ECUs que
conforman la red dentro de un vehículo. Estos datos o paquetes de datos son
enviados a través de un mensaje. Se dice que un ECU es emisor o transmisor cuando
es el encargado de enviar información y receptor cuando éste lee la información
proveniente de otro. Dada esta característica un mensaje se considerará TX cuando
es transmitido y RX cuando es un mensaje recibido (11).
13
Figura 7 - Emisor, receptor y mensaje
2.2.3. Direccionamiento
14
2.2.3.1. Direccionamiento orientado al suscriptor
Los paquetes de datos se intercambian en base a las direcciones de los nodos (ECU).
Los mensaje enviados por el nodo transmisor contiene los datos a transmitir y también
la dirección del nodo de destino. Todos los nodos receptores comparan la dirección
de recepción enviada por el transmisor con su propia dirección, y solo el receptor con
la dirección correcta evalúa el mensaje, el resto de nodos ignoran la información
enviada (7). Un ejemplo de red de comunicación automotriz el cual utiliza este tipo
de suscripción es la comunicación por medio de Ethernet, el cual mediante una
dirección IP (Protocolo de Internet) proporciona a los nodos un único número de
identificación jerárquico (12).
15
que cada receptor lee el mensaje y decide si este es procesado o no. El mensaje
puede ser recibido y evaluado por varios nodos (7). Los ejemplos más claros de este
tipo de direccionamiento son los mensajes de CAN (Controller Área Network) los
cuales son enviados a un bus y escuchados por múltiples nodos.
16
2.2.4. Acceso a bus de datos
Métodos aleatorios mediante los cuales cualquier nodo puede transmitir datos
si el bus parece estar libre. En el método, los nodos pueden intentar usar el bus
simultáneamente tan pronto como parezca estar libre. Existe el riesgo de
colisiones de transmisión utilizando este método. Esto se puede resolver
repitiendo transmisiones después de que se haya detectado una colisión (7).
17
2.2.4.1. Acceso múltiple por división de frecuencia (FDMA)
En este sistema los canales de trasmisión son definidos de acuerdo con la asignación
de frecuencia. Esto quiere decir que todos los nodos se encuentran activo y cada uno
ocupa un segmento del espectro de radio frecuencia (RF). Todos los nodos reciben la
información pero filtran únicamente la frecuencia que les es asignada. En este sistema
el ancho de banda por nodo es simplemente relacionada con la velocidad de los
datos. Así el ancho de banda del sistema es calculado dela siguiente manera (13).
𝐵𝑠 = 𝐾 ∗ (𝐵 + 𝐵𝑔 )
K, es el número de canales.
B, es el ancho de banda de cada canal.
Bg, es tiempo libre de transmisión entre los dos canales.
18
2.2.4.2. Acceso múltiple por división de código (CDMA)
El sistema de acceso múltiple por división de código, similar a la división por frecuencia
divide el espectro en canales ortogonales y así evitar la interferencia entre ellos aun
que los canales no son completamente ortogonales debido a imperfecciones en la
sincronización de tiempo y el filtrado, lo cual puede generar algunas interferencias.
Los sistemas CDMA a diferencia de los sistemas FDMA utilizan un código para definir
sus canales (13).
19
Figura 12 - Comunicación maestro - esclavo
2.2.4.4. Multi-maestro
Si en una red todos los nodos pueden transmitir sin necesidad de ser controlado por
otro nodo siempre y en cuando el bus se encuentre libre se conoce como un sistema
multi-maestro, donde la priorización y la detección de colisiones juegan un papel
importante (7) en el caso que múltiples nodos intenten acceder bus simultáneamente.
Por otro lado este sistema asegura la comunicación directa entre todos los nodos del
sistema por lo tanto la máxima velocidad y confianza posible. En una red multi-
maestro todos los nodos tienen los mismos derechos de transmisión (15).
(CSMA)
Una solución creada para evitar la colisión entre paquetes de información enviados
es permitir que el nodo detecte (escuche) el canal o bus en el cual se encuentra
20
transmitiendo. Cuando un nodo tiene un paquete para transmitir, primero escucha el
canal. Si el canal se detecta inactivo, el paquete se transmite. Si, por otro lado, el
canal está ocupado, la transmisión del paquete se retrasa por un momento. De esta
forma, la posibilidad de colisión de paquetes se reduce en gran medida. Este
esquema se llama Acceso Múltiple con Escucha de Señal Portadora (CSMA). En un
esquema de CSMA, las colisiones de paquetes aún pueden ocurrir (16).
21
2.2.4.4.3. Acceso múltiple con escucha de señal portadora
Debido a que los sistemas CSMA son propensos a accesos simultáneamente de los
nodos, si se produce una colisión de paquetes, la transmisión puede ser abortada
antes de que se complete. De esta forma, la duración del tiempo de colisión puede
acortarse y la utilización del canal puede mejorarse aún más (16). Así cuando una
red se encuentra en reposo y múltiples nodos tratan de acceder un mensaje de
contención es detectado. En ese momento la transmisión es pausada y los nodos se
retiran de la red, después de un determinado tiempo los nodos intentar acceder de
nuevo (17). Este esquema se llama CSMA con detección de colisión (CSMA-CD). A
pesar de que este sistema ayuda a mejorar el rendimiento del canal la cancelación
de envíos decremento la capacidad de la red, donde incluso cuando la transferencia
de datos se encuentra en su punto más alto la red puede quedar totalmente
bloqueada, por tanto este sistema no se vuelve conveniente de utilizar en sistemas de
tiempo real.
22
Figura 14 - Respuesta ante una colisión
23
problemas de equidad que surgen con CSMA / CA, se ha desarrollado una versión
modificada del CSMA con copia de prevención de colisiones (CSMA / CCA) (19).
Este sistema es del tipo predecible donde a un nodo se le asigna un tiempo fijo en
donde se le es permitido transmitir. Este sistema define series de repeticiones en
intervalos fijos llamados ventanas, esta ventana de tiempo es dividida en espacios
(Slots) donde a cada nodo se le es permitido transmitir únicamente durante su espacio
de tiempo, así hasta que una nueva repetición llega. Por lo tanto debe existir una
programación de las trasmisiones y los derechos de transmisión. Normalmente no hay
un suscriptor de comunicación principal que controle el procedimiento de
comunicación por tanto es la comunicación es llevada síncronamente entre todos los
nodos de la red (20).
1 𝑇𝑔
𝑅𝑏 = [ − ] 𝑅 𝑆 𝑏
𝐾 𝑇𝑓
24
Rb, es la tasa de transferencia por usuario.
Rbs, es la tasa de transmisión de bits del sistema.
Tg, es tiempo libre de transmisión.
Tf, es la duración de tiempo de transmisión (ventana).
K, es el número de slots por cada ventana.
2.2.4.1.1. Latencia
25
2.2.5. Modelo de interconexión de sistemas abiertos (OSI)
El modelo OSI se encuentra definido en el estándar ISO/IEC 7498-1 (21), este adopta
un enfoque de capas para el diseño de sistemas de información distribuidos. Cada
capa proporciona un conjunto de servicios. Estos servicios están definidos por
capacidad de hacer alguna forma de comunicación sobre el sistema. Cada servicio
se implementa mediante uno o más procesos, cada uno de los cuales se denomina
una entidad. Las entidades pueden comunicarse con entidades pares en la misma
capa mediante el intercambio de mensajes llamados unidades de protocolo de
datos (PDU) (22).
Modelo de interconexión de sistemas abiertos (OSI) consiste de siete capas. Estas siete
capas pueden se agrupadas de acuerdo con su principal funcionalidad, donde se
encuentra la capa física, capas de comunicación y finalmente la capa de
aplicación.
26
Figura 17 - Modelo OSI
La capa física maneja los datos como bits sin formato. Esto significa que la PDU para
la capa física es un bit. El objetivo de la capa física es proporcionar una transmisión
transparente de bits desde la capa de enlace de datos del emisor a la capa de
enlace de datos del receptor (23).
Los estados binarios en el PDU se pueden representar de maneras diferentes. La
interfaz de serial de una PC utiliza + 12 V y -12 V, los protocolos automotrices como
CAN (Controller Área Network) o LIN (Local Interconnect Network) utilizan voltajes de
0 V y 5 V y medios como la fibra óptica utilizan representaciones visuales como claro
u obscuro. Los voltajes como los de la PC no son adecuados para un bus, ya que
pueden ocurrir cortocircuitos si varios suscriptores desean transmitir estados binarios
simultáneamente (7).
Por lo tanto las principales funciones de la capa física son:
Conexión física.
27
Transmisión de PDUs.
Secuenciación entre la información física y la información enviada a la capa
de enlace.
28
2.3. REDES DE COMUNICACIÓN AUTOMOTRICES
29
Figura 19 - Número de ECU en un vehículo (7)
El uso de sistemas de bus tiene las siguientes ventajas en comparación con una
solución que utiliza un cableado convencional (7):
Esta variable especifica el volumen de datos que se transmiten durante una unidad
de tiempo. La unidad de datos más pequeña es el bit, y la velocidad de transferencia
de datos generalmente se especifica en bits / segundos (7).
32
eléctricas y en equipos sensibles (28). La interferencia no está limitada a escenarios de
comunicación alámbrica. También se observa en redes inalámbricas (29).
En una red automotriz los datos deberían transferirse sin interferencia. Sin embargo,
esto no se puede garantizar en un vehículo de motor debido a los efectos
electromagnéticos. Los requisitos de inmunidad a la interferencia que se establecen
dependen de la relevancia para la seguridad de los sistemas electrónicos en cuestión.
Se necesitan menos requisitos de sistemas de comodidad y conveniencia que el
sistema de frenos antibloqueo (ABS), por ejemplo (7).
Para cumplir con estos requisitos, los mecanismos que detectan errores de transmisión
se incorporan en los protocolos de red. Se puede llevar a cabo una verificación simple
utilizando el bit de paridad, que se calcula en el transmisor y se transmite junto con los
datos útiles. Esto especifica si el primer byte transferido es par o no (7).
33
Otro método es la verificación de suma de verificación (checksum). Si se están
transmitiendo varios bytes de datos, el transmisor calcula un checksum a partir de los
bytes de datos individuales usando una fórmula predefinida y transmite este valor. El
receptor también calcula la suma de verificación de los bytes de datos que se han
recibido y los compara con el checksum. Si se detecta un error de transmisión de
datos, los datos recibidos no se utilizan y se solicita una repetir la transmisión (7).
Los requisitos funcionales de los sistemas en tiempo real se refieren a las funciones que
debe realizar. Se agrupan en requisitos de (25):
Recopilación de datos – registro de sus variables de estado.
Requisitos de control digital directo – Cálculo de puntos de ajuste para
actuadores.
Requisitos de interacción hombre-máquina – Informar al usuario el estado del
objeto controlado.
Los requisitos de los sistemas en tiempo real también pueden ser agrupados
dependiendo de su clasificación (7):
Requisito sistemas en tiempo real suaves: el sistema generalmente se ajusta al
tiempo de respuesta especificado, y si estos tiempos se exceden
ocasionalmente, no produce ningún efecto grave.
34
Requisito sistemas en tiempo real duros: la especificación de tiempo debe
cumplirse estrictamente. Si se excedió podría ocasionar problemas en sistemas
críticos para la seguridad. Por ejemplo, si se excedieran los límites de tiempo en
el sistema ABS, las ruedas se bloquearían.
En una red automotriz las tolerancias de tiempo se deben cumplir estrictamente para
muchas funciones del sistema de gestión del motor. Los retrasos en la transmisión de
las señales de encendido y encendido pueden provocar vibraciones en el motor e
incluso fallas en el encendido. Estas reacciones deben evitarse, ya que representan
un peligro potencial. Por lo tanto, se deben cumplir estrictos requisitos en tiempo real
de estos sistemas (7).
35
2.3.2.1.4. Número de nodos de red
La cantidad máxima de nodos que se integra varía según las diferentes áreas de
operación del vehículo. Varios buses idénticos se pueden usar si es necesario. En 2008
hubo una producción mundial anual de vehículos de aproximadamente de 65-67
millones de vehículos con 10-15 nodos en promedio por vehículo. Este número ha ido
en incremento, en un futuro se estima que en promedio un vehículo contendrá 30-45
nodos (17). La cantidad de nodos conectados a una red dependerá del
equipamiento y la gama del vehículo. Vehículos como el Mercedes clase S ha
incrementado su número de nodos de 5 hasta 55 en un lapso de 14 años.
Los buses activados por eventos se han establecido como un estándar para los
sistemas de control de chasis actuales y la comunicación del tren de potencia en un
vehículo.
La principal ventaja de los sistemas activados por eventos (ET) es su capacidad para
reaccionar rápidamente ante eventos externos asíncronos que no se conocen de
antemano (31). Por lo tanto, muestran un mejor rendimiento en tiempo real en
comparación con los sistemas activados por tiempo. Además, los sistemas activados
36
por eventos poseen una mayor flexibilidad y permiten en muchos casos la adaptación
a la demanda real sin un rediseño del sistema completo (32).
Figura 21 - Control ET
En el muestreo activado por eventos, los eventos de control solo se pueden generar
cuando la red está inactiva (33).
37
2.3.3.2. Comunicación activada por tiempo
Figura 23 - Control TT
38
2.3.4. Clasificación de los sistemas de bus
Como se ha hecho mención a los diferentes requisitos que debe de cumplir un sistema
de bus la Sociedad de Ingenieros Automotrices (SAE) los ha clasificado en cuatro
clases dependiendo sus requisitos y características. A diferencia de la Organización
Internacional de Normalización (ISO) diferencia los sistemas de bus solo en dos tipos:
2.3.4.1. Clase A
Sistemas de bus para aplicaciones simples con velocidades de datos bajas de hasta
10 kbit/s. Los mensajes transmitidos son principalmente cortos y se activan con una
baja velocidad de datos. El área de aplicación es relativamente sensible a los costos
y exige, por lo tanto, una tecnología de interconexión bastante barata.
2.3.4.2. Clase B
Sistemas de bus para aplicaciones con velocidades de datos de 10 kbit/s hasta 125
kbit/s.
2.3.4.3. Clase C
39
2.3.4.4. Clase D
Sistemas de bus para la transmisión de datos de flujos de datos largos con gran ancho
de banda. Estos requisitos prevalecen principalmente en el área de información y
entretenimiento, por ejemplo, para la transmisión de transmisiones de audio / video.
40
Figura 24 - Buses automotrices
41
en múltiples capas del modelo de OSI. Se comunican con una aplicación, establecen
y administran sesiones, traducen datos codificados e interpretan datos de
direccionamiento lógico y físico (34).
Una puerta de enlace se puede comparar con un intérprete que recibe información
de una red, los traduce y los pasa a otra. Una puerta de enlace es un nodo que lee
los datos que transmiten las redes y los convierte a otro formato. El uso de compuertas
de enlace permite, por lo tanto, intercambiar información entre diferentes redes (7).
42
2.4. APLICACIONES EN VEHÍCULOS
Los sistemas de Transmisión y Chasis están asignados a buses clase C, con velocidad
de transferencia de datos de 500 kBaud (high-speed CAN). Estas redes son activadas
por eventos.
Algunos ejemplos son:
Sistema de control electrónico de diésel (EDC)
Sistemas de frenos antibloqueo (ABS)
Programa de estabilidad electrónica (ESP)
Sistemas de control activo del chasis (ABC)
Sistemas de control de crucero adaptativo (ACC)
Los sistemas de interior son sistemas para el confort y comodidad, generalmente clase
B con una velocidad de transferencia de datos de 125Kbits/s (CAN Baja velocidad) o
CAN single-wire a 33 Kbits/s.
Algunos ejemplos son:
Aire Acondicionado (AC)
43
Módulos de memoria para asientos (MSM)
Módulos de las puertas
Módulos climatización de asientos (CSM)
Módulos de Iluminación
Si la velocidad de transferencia caen a menos de 20 kBit / s, el LIN de bajo costo se
usa con mayor frecuencia. Las principales aplicaciones son la transferencia de
información del interruptor o la activación de actuadores.
Los sistemas telemáticos enfocan sus funciones en sistemas multimedia. Debe hacerse
una distinción entre los datos de control y los datos de audio / video en las redes
multimedia. Las tasas de transferencia de hasta 125 Kbit/s son suficientes para las
tareas de control, lo que significa que se puede usar el bus CAN de baja velocidad.
La transmisión directa de datos de audio o video requiere tasas de transferencia
extremadamente altas de más de 10 Mbit/s. El bus MOST o Ethernet se usan para este
propósito.
44
CAN Alta
CAN Baja Velocidad LIN TTP MOST Bus Flexray
Velocidad
Sistemas de
Protocolo de
Red de Área Red de interconexión Transporte
Definición Red de Área Controlada activación por Nombre Propio
Controlada local Orientados a los
tiempo
Medios
Convencional y
Tipo de BUS Convencional Convencional Convencional Óptico Convencional y Óptico
Óptico
Multimedia y
Domino Transmisión Confort Confort Redes de Seguridad Todos los Dominios
Infotainment
Velocidad de
10 kbit/s - 1Mbit/s Max. 125 kbit/s Max. 20 kbit/s 10 Mbit/s Max. 22.5 Mbit/s 10 - 20 Mbit/s
Transferencia
Número
22 (Teóricamente
Máximo de 10 24 16 - 64
hasta 2,048)
Nodos
Número de
Par Cruzado Par Cruzado Cable Simple Par Cruzado Fibra óptica Par Cruzado
Líneas
Especificación del
Protocolo de
Paquete de protocolo del sistema
Estándar ISO 1198 ISO 11 519-2 activación por Especificación MOST
especificaciones LIN de comunicaciones
tiempo TTP / C
FlexRay
Clasificación
Clase C Clase B Clase A - - -
SAE
Tabla 3 - Descripción general de buses
2.5.1. CAN
2.5.1.1. Introducción
45
creado para ellos. Si no, simplemente se descarta el paquete. El nodo destinatario de
los datos los descarga y los procesa (36).
Algunas de estas características hacen la velocidad CAN hasta 1 Mb/s. Esto es muy
útil en sistemas de control mecatrónicos en tiempo real que pueden permitir una
latencia muy baja. Debido a la alta velocidad ofrecida por CAN, se puede lograr una
baja latencia y, por lo tanto, un control eficiente en el tiempo. Los mensajes CAN
tienen una longitud corta por lo tanto hay una demora mínima en la recepción de
mensajes. La combinación de alta velocidad y longitud de mensaje corto da como
resultado un retardo bajo, debido a lo cual CAN se implementa en sistemas de control
mecatrónicos que tienen una tolerancia muy baja para retrasos (37). CAN es
básicamente un mecanismo de protocolo desencadenado por evento (ETP). Esto
significa que la transmisión de datos se inicia sólo cuando se produce un evento
específico. Debido a esta propiedad, el ancho de banda disponible se aprovecha al
máximo debido a la carga mínima en el sistema de bus
El sistema de direccionamiento se basa en identificadores de mensajes en lugar de
en direcciones físicas para nodos. Cada mensaje CAN tiene un identificador único
que asigna una prioridad al mensaje respectivo basado en el valor binario del
identificador. A un valor binario inferior se le asigna una prioridad más alta y viceversa.
Cualquier nodo puede transmitir un mensaje. Todos los demás nodos se preparan para
recibir, los nodos que no tienen uso para el mensaje lo descartan (35).
46
en 1983 Robert Bosch GmbH tomo la decisión de desarrollar un protocolo de
comunicación orientado a sistemas distribuidos que operará en tiempo real, el
desarrollo de CAN había comenzado (17).
47
2003 CAN es utilizado por todas las compañías automotrices.
La producción anual de vehículos es de 65-67 millones con 10-15 nodos de CAN en
2008
promedio.
Tabla 4 - Principales acontecimientos en los primeros 20 años de CAN
2.5.1.3. Aplicaciones
48
Debido a los procesos rápidos involucrados en el área de gestión del motor, la
información se requiere mucho más rápido comparada con el área de comodidad /
conveniencia donde los sistemas. Como resultado de estos requisitos diferentes, se
utilizan buses con diferentes velocidades de datos que ofrecen una relación costo-
beneficio óptima para el campo de aplicación en cuestión. Se hace una distinción
entre los buses CAN de alta velocidad y baja velocidad (7).
49
La capa de enlace de datos consiste en las subcapas de Control de Enlace Lógico
LLC y de Control de Acceso al Medio. La subcapa LLC proporciona todos los servicios
para la transmisión de una secuencia de bits desde una fuente a un destino. En
particular, define (41):
Servicios para transferencia de datos y solicitud remota de datos.
Condiciones en las que se deben aceptar los mensajes recibidos, incluido el
filtrado de mensajes.
Mecanismos para la gestión de la recuperación y el flujo (notificación de
sobrecarga).
50
Figura 26 - Estructura del nodo de CAN
2.5.1.4.3. Mensajes
51
2.5.1.4.4. Enrutamiento de información
En los sistemas CAN, un nodo no utiliza ninguna información sobre la configuración del
sistema (40).
Los nodos se pueden agregar a la red CAN sin requerir ningún cambio en el software
o hardware de ningún nodo o capa de aplicación (40).
2.5.1.4.7. Multidifusión
Dentro de una red CAN se garantiza que un mensaje sea aceptado simultáneamente
por todos los nodos o por ningún nodo. Por lo tanto, la coherencia de los datos es una
propiedad del sistema lograda mediante los conceptos de multidifusión y mediante
el manejo de errores (40).
52
2.5.1.4.10. Prioridades
Al enviar un mensaje remoto, un nodo que requiera datos puede solicitar otro nodo
para enviar el marco de datos correspondiente. El mensaje de datos y el mensaje
remoto correspondiente tienen el mismo identificador (40).
2.5.1.4.12. Multi-maestro
Cuando el bus está libre, cualquier nodo puede comenzar a transmitir un mensaje. El
nodo con el mensaje de mayor prioridad que se transmitirá gana acceso al bus (40).
A diferencia de otras redes, CAN no direcciona los nodos de red individualmente, sino
a los mensajes que se han enviado. Cada mensaje tiene un identificador único. El
identificador clasifica el contenido del mensaje (por ejemplo, la velocidad del motor
o la posición de la ventana de encendido). Por lo tanto, una estación puede transmitir
un mensaje a todas las demás estaciones (método de multidifusión o de difusión).
Estas estaciones leen solo aquellos mensajes cuyos identificadores están
almacenados en su lista de aceptación (filtrado de mensajes). De esta manera, cada
estación decide por sí misma si necesita o no un mensaje enviado en el bus. Con 11
bits en el formato estándar, es posible distinguir entre 2,048 mensajes CAN diferentes;
en el formato extendido, este número asciende a más de 536 millones (7).
La ventaja de este método de direccionamiento es que los nodos de red no requieren
ninguna información sobre la configuración del sistema y, por lo tanto, son libres de
operar de forma totalmente independiente entre sí. Esto da como resultado un
sistema completo altamente flexible, que facilita la administración de las variantes de
los equipos. Si un nodo requiere nueva información que ya está en el bus, todo lo que
53
necesita hacer es llamarla desde el bus. Es posible integrar estaciones adicionales en
el sistema (siempre que sean receptores) sin tener que modificar las estaciones
existentes (7).
2.5.1.4.14. Arbitraje
Cada nodo de una red CAN puede iniciar la transmisión de un mensaje tan pronto
como el bus esté libre (42). Si dos o más nodos comienzan a transmitir mensajes al
mismo tiempo, el conflicto de acceso al bus se resuelve mediante un arbitraje bit a bit
utilizando el identificador (40). Para evitar que los nodos destruyan los datos
transmitidos entre sí, el mensaje con la más alta prioridad de todos los mensajes que
se arbitran simultáneamente se determina en una fase de arbitraje. Al mensaje con el
valor más bajo de identificador de mensaje se le asigna la más alta prioridad (43).
Cada nodo monitorea el nivel de señal en el bus durante la fase de arbitraje. La fase
de arbitraje consiste en la transmisión del identificador de mensaje y del bit de
retransmisión remota (RTR). Si un nodo detecta un nivel de bus dominante, aborta el
proceso de transmisión de inmediato, un mensaje con mayor prioridad se transmite al
mismo tiempo y entra en el estado de recepción (43).
54
Figura 28 - Arbitrariedad de CAN
Los mensajes dañados son marcados por cualquier nodo que detecta un error. Tales
mensajes se cancelan y se retransmiten automáticamente. El tiempo de recuperación
desde la detección de un error hasta el inicio del siguiente mensaje es como máximo
de 29 bits, siempre que no haya más errores (40).
Los nodos CAN son capaces de distinguir entre perturbaciones cortas y fallas
permanentes. Los nodos defectuosos son apagados (40).
56
2.5.1.4.20. Conexiones
El bus consiste en un único canal bidireccional que transporta bits. A partir de estos
datos, la información de re-sincronización se puede derivar (40).
2.5.1.4.23. Reconocimiento
Todos los receptores verifican la consistencia del mensaje que se recibe y confirmará
un mensaje consistente (40).
Los mensajes de datos se utilizan para transmitir información entre un nodo fuente y
uno o más nodos receptores. Los mensajes de datos no usan direccionamiento
explícito para identificar los receptores de mensajes. En cambio, cada nodo receptor
indica los mensajes que se recibirán en función de su contenido de información, el
cual está codificado en el campo Identificador (41).
Hay dos versiones del protocolo de CAN: CAN 2.0A (CAN estándar) con
identificadores de 11 bits y CAN 2.0B (CAN extendido) con identificadores de 29 bits.
Para las comunicaciones en el vehículo, solo se utiliza CAN 2.0A ya que proporciona
un número suficiente de identificadores (46). El protocolo CAN utiliza el identificador
de mensaje como una prioridad para determinar qué mensaje, entre los
contendientes para el bus, se transmitirá a continuación (47).
Los mensajes estándar y extendidos se pueden transmitir en el mismo bus por
diferentes nodos o por el mismo nodo. La parte de arbitraje del protocolo funciona
independientemente de la versión de identificador, permitiendo que los mensajes de
identificador de 29 bits se transmiten en la misma red junto con otros con un
identificador de 11 bits (41).
58
Figura 29 - Formato CAN 2.0A
Este es un bit dominante (0), indica el comienzo de un mensaje (45) y sincroniza todo
participante de la red (48). Un nodo sólo puede iniciar la transmisión cuando el bus
está inactivo. Todos los nodos tienen que sincronizarse con el flanco causado por el
inicio del mensaje del nodo iniciador de la primera transmisión (40).
59
de ID10 a ID0. El bit menos significativo es ID0. Los 7 bits más significativos no deben ser
todos recesivos (40).
El campo de control consta de seis bits. Incluye el código de longitud de datos y dos
bits reservados para futuras expansiones. Los bits reservados deben enviarse como
dominantes. Los receptores aceptan bits dominantes y recesivos en todas las
combinaciones (40).
60
2.5.1.6.1.4. Campo de datos
61
El residuo de esta división de polinomios es la secuencia de CRC transmitida por el bus.
Para implementar esta función, se puede usar un registro de desplazamiento de 15
bits CRC_RG (14: 0). Si NXTBIT denota el siguiente bit del flujo de bits, dado por la
secuencia de bits desechados desde el inicio del cuadro hasta el final del campo de
datos, la secuencia del CRC se calcula de la siguiente manera (40):
CRC_RG = 0 //Inicializa el registro de desplazamiento
REPEAT
CRCNXT = NXTBIT EXOR CRC_RG (14)
CRC_RG (14:1) = CRC_RG (13:0) //Desplazamiento a la izquierda...
CRC_RG (0) = 0 //...Primera posición
IF CRCNXT THEN
CRC_RG (14:0) = CRC_RG (14:0) EXOR (4599 hex)
ENDIF
UNTIL (CRC SEQUENCE starts or there is an ERROR condition)
Después de la transmisión y/o recepción del último bit del campo de datos, CRC_RG
(14: 0) contiene la secuencia de CRC (40).
La Secuencia CRC es seguida por el Delimitador CRC que consiste en un único bit
recesivo (1) (40).
El campo ACK tiene dos bits de longitud y contiene el campo ACK y el delimitador
ACK.
Este campo contiene una señal de confirmación de todos los suscriptores que han
recibido el mensaje correctamente. Un receptor que ha recibido un mensaje válido
informa esto correctamente al transmisor enviando un bit dominante en el ACK Slot
(es decir, envía ACK) (40).
62
1.1.1.1.1.1.3. Campo ACK
Todos los nodos que han recibido la secuencia CRC coincidente informan esto dentro
del campo ACK sobrescribiendo el bit recesivo del transmisor por un bit dominante
(40).
El delimitador ACK es el segundo bit del campo ACK y tiene que ser un bit recesivo.
Como consecuencia, el campo ACK está rodeada por dos bits recesivos (delimitador
CRC y delimitador ACK) (40).
Cada mensaje de datos y mensaje remoto está delimitado por una secuencia de
indicador que consta de siete bits recesivos (40).
63
datos extendido, el mensaje estándar siempre tendrá la prioridad si ambos
mensajes tienen en mismo identificador base (45).
Un nodo que actúa como receptor para ciertos datos puede estimular al nodo fuente
a transmitir los datos enviando un mensaje remoto (40).
Un mensaje remoto se compone de seis campos de bits diferentes (40):
Inicio de mensaje.
Campo de arbitraje.
Campo de control.
Campo de suma de comprobación CRC.
Campo Reconocimiento ACK.
64
Figura 33 - Estructura de un mensaje remoto
2.5.1.8. Mensaje de error
Un mensaje de error consta de dos campos distintos. El primer campo viene dado por
la superposición de banderas de error aportados por diferentes nodos. El segundo
campo es el delimitador de errores (40).
Para terminar un cuadro de error correctamente, un nodo en error puede necesitar
que el bus esté inactivo en el bus durante al menos tres tiempos de bit (40).
65
2.5.1.8.2. Delimitador de error
66
Figura 35 - Formato de un mensaje de sobrecarga
67
de bus ha terminado de enviar su bandera de sobrecarga y todos los nodos
comienzan la transmisión de siete bits recesivos más en coincidencia (40).
Los mensajes de datos y los mensajes remotos están separados de los mensajes
anteriores, por un campo llamado espacio entre mensajes. Por el contrario, los
mensajes de sobrecarga y los mensajes de error no van precedidas de un espacio
entre mensajes y múltiples mensajes de sobrecarga no están separadas por un
espacio entre mensajes. El espacio entre mensajes contiene los campos de bit
Intermisión y bus inactivo (40).
68
2.5.1.9.1. Intermisión (Pausa)
2.5.1.11.1. Transmisor
El mensaje es válido para el transmisor si no hay ningún error hasta el final del mensaje.
Si un mensaje está dañado, la retransmisión seguirá automáticamente y de acuerdo
69
con las reglas de priorización. Para poder competir por el acceso del bus con otros
mensajes, la retransmisión debe comenzar tan pronto como el bus esté inactivo (40).
2.5.1.11.2. Receptor
Los segmentos del inicio del mensaje, campo de arbitraje, campo de control, campo
de datos y secuencia CRC están codificados por el método de relleno de bits.
Cuando un transmisor detecta cinco bits consecutivos de valor idéntico en el flujo de
bits a transmitir, inserta automáticamente un bit complementario en el flujo de bits
transmitido real (40).
Los campos de bits restantes del mensaje de datos o mensaje remoto (delimitador
CRC, campo ACK y fin del mensaje) son de forma fija y no rellenos (40).
El mensaje de error y el mensaje de sobrecarga también son de forma fija y no están
codificados por el método de relleno de bits. El flujo de bits en un mensaje se codifica
de acuerdo con el método no regreso a cero (NRZ) (49). Esto significa que durante el
tiempo de bit total el nivel de bit generado es dominante o recesivo.
El mecanismo de relleno de bits evita que seis bits consecutivos tengan la misma
polaridad al insertar un bit de polaridad opuesta después del quinto bit. Además, el
objetivo principal del mecanismo de relleno de bits se utiliza para sincronizar el
transmisor y el receptor cuando los mismos valores deben transmitirse
consecutivamente (50). Los bits expuestos al mecanismo de relleno de bits son los bits
del SOF a los bits de secuencia. Los bits de relleno del mensaje recibido se eliminan en
el nodo de recepción antes de procesar el mensaje (51).
Según el peor de los casos, la cantidad de bits de un mensaje CAN se encuentra dada
por:
70
𝑔 + 8s − 1
𝑔 + 8𝑠 + 13 +
4
Donde g es 34 para el formato estándar o 54 para el formato extendido, s es la
cantidad de bytes de datos de un mensaje CAN (52).
Un nodo el cual envía un bit en el bus también supervisa el bus. El nodo debe detectar
e interpretar como un error de Bit, la situación donde el valor de bit monitoreado es
diferente del valor de bit que se envía. Una excepción a esto es el envío de un bit
recesivo durante el flujo de bits rellenado del campo de arbitraje o durante el campo
ACK; en este caso, no se produce un error de bit cuando se controla un bit dominante.
Un transmisor que envía un indicador de error-pasivo y detecta un bit dominante no
lo interpreta como un error de bit (40).
71
2.5.1.12.1.2. Error de rellenado
Se debe detectar un error de forma cuando un campo de bit de forma fija contiene
uno o más bits ilegales (40).
Un error de acuse de recibo debe ser detectado por un transmisor siempre que no
monitoree un bit dominante durante la el campo ACK (40).
72
2.5.1.14. Confinamiento de fallas
Con respecto al confinamiento de fallas, un nodo puede estar en uno de tres estados:
error-activo, error-pasivo o desconectado del bus. Un nodo activo de error
normalmente puede participar en la comunicación de bus y envía un indicador de
error activo cuando se ha detectado un error (40).
Un nodo en error-pasivo no debe enviar un indicador de error activo. Participa en la
comunicación de bus, pero cuando se detecta un error, solo se envía un indicador
de error-pasivo. También después de una transmisión, un nodo en error-pasivo
esperará antes de iniciar una transmisión adicional. No se permite que un nodo en el
bus tenga alguna influencia en el bus (40).
Excepción 1:
El contador de errores de transmisión no cambia si:
• El transmisor es un nodo en error-pasivo.
73
• El transmisor detecta un error de acuse de recibo porque no
detecta un ACK dominante.
• El transmisor no detecta un bit dominante mientras envía su
indicador de error pasivo.
Excepción 2:
Contador de errores de recepción no cambia si:
• El transmisor envía un indicador de error porque se produjo un
error de relleno.
• Durante el arbitraje y el bit de relleno debería haber sido recesivo.
• Durante el arbitraje y el bit de relleno se ha enviado como
recesivo, pero se controla como dominante.
4) Un transmisor en error-activo detecta un error de bit mientras envía un indicador
de error activo o un indicador de sobrecarga, el contador de errores de
transmisión se incrementa en 8 (40).
5) Un receptor de error-activo detecta un error de bit mientras envía un indicador
de error activo o un indicador de Sobrecarga, el contador de errores de
recepción se incrementa en 8 (40).
6) Cualquier nodo tolera hasta 7 bits dominantes consecutivos después de enviar
un indicador de error-activo o un indicador de error-pasivo. Después de
detectar el octavo bit dominante consecutivo y después de cada secuencia
de ocho bits dominantes consecutivos, cada transmisor aumenta su contador
de errores de transmisión en 8 y cada receptor aumenta su contador de errores
de recepción en 8 (40).
7) Después de la transmisión exitosa de un mensaje (recibiendo ACK y sin error
hasta que finalice el mensaje), el contador de errores de transmisión se reduce
en 1, a menos que ya sea 0 (40).
8) Después de la recepción exitosa de un mensaje (recepción sin error hasta el
campo ACK), el contador de errores de recepción se reduce en 1, si estaba
entre 1 y 127. Si el contador de errores de recepción era 0, permanece en 0, y
si era mayor que 127, entonces se establecerá en un valor entre 119 y 127 (40).
74
9) Un nodo tiene error-pasivo cuando el contador de errores de transmisión es
igual o superior a 128, o cuando el contador de errores de recepción es igual
o superior a 128 (40).
10) Un nodo se desconecta del bus cuando el contador de errores de transmisión
es mayor o igual a 256 (40).
11) Un nodo en error-pasivo vuelve a activarse por error cuando tanto el contador
de errores de transmisión como el contador de errores de recepción son
menores o iguales a 127 (40).
12) Se permite que un nodo que está desconectado se active, estableciendo sus
contadores de errores a 0 después de que se hayan monitoreado 128
ocurrencias de 11 bits recesivos consecutivos en el bus (40).
75
Figura 40 - Secuencia de tipos de errores
76
El microcontrolador, que ejecuta el programa de aplicación, controla el controlador
CAN, prepara los datos que se enviarán y evalúa los datos recibidos (7).
CAN utiliza dos estados para comunicación, dominante y recesivo, con los cuales se
transmiten los bits de información. El estado dominante representa un 0 binario, el
recesivo es un 1 binario (7).
Cuando recibe mensajes, el transceptor de CAN convierte el nivel de señal a estados
lógicos. En el proceso, un amplificador diferencial resta el nivel CAN_L del nivel CAN_H
(7).
77
2.5.1.15.1.3. Línea de dos cables (CAN DW)
78
2.5.1.15.1.4. Línea de un solo cable (CAN SW)
La especificación de un solo cable SAE J2411 (53) es para aplicaciones de red CAN
con requisitos bajos en cuanto a velocidad de bits y longitud de bus. La comunicación
se realiza a través de una sola línea de bus con una velocidad de datos nominal de
33,3 kbit / s (83,3 kbit / s en modo de alta velocidad para el diagnóstico). Se permiten
hasta 32 nodos por red. El área de aplicación principal de esta capa física se
encuentra en las redes de electrónica de confort en los vehículos de motor (54).
Un cable individual sin blindaje se define como el medio de bus. Una estructura de
topología de bus lineal no es necesaria. El estándar incluye la capacidad de dormir
del nodo selectivo, que permite que la comunicación regular tenga lugar entre varios
nodos, mientras que otros quedan en estado inactivo. Sin embargo, debido a la
comunicación de un solo cable (sin tensión diferencial), la robustez es muy baja. Todos
los suscriptores del bus deben compartir una conexión común a tierra que asumiría la
función de la segunda línea. La versión de un solo cable del bus CAN es, por lo tanto,
solo una opción para un sistema de comunicaciones de dimensiones espaciales
limitadas (7).
La transferencia de datos en la línea de un solo cable es más propensa a la radiación
de interferencia porque no es posible filtrar los impulsos de perturbación como ocurre
con la línea de dos hilos. Por esta razón, se requiere un mayor aumento de nivel en la
línea de bus para mejorar la relación señal / ruido (7).
79
Figura 43 - Niveles de voltaje de CAN de baja velocidad
Mientras tanto los niveles de voltaje de CAN de alta velocidad van de 1.5 V a 2.5 V
para CAN_L y de 2.5 V a 3.5 V para CAN_H (7).
80
En estado recesivo, la CAN de alta velocidad usa una tensión de 2.5 V en ambas
líneas. En el estado dominante, un voltaje de 3.5 V está presente en CAN_H y un voltaje
de 1.5 V está presente en CAN_L (7).
En la CAN de baja velocidad, hay una tensión de 0 V en CAN_H en estado recesivo y
5 V en CAN_L. En el estado dominante, los voltajes de 3.6 V y 1.4 V están presentes en
CAN_H y CAN_L respectivamente (7).
Para amortiguar las reflexiones de las señales eléctricas en los extremos abiertos, las
líneas de bus terminan en cada extremo con una resistencia de 120 Ω (7).
Alternativamente, las resistencias de terminación se pueden integrar en las propias
unidades de control electrónico (7).
81
Figura 45 - Sistema de transmisión de datos CAN
2.5.2. LIN
2.5.2.1. Introducción
82
ser aceptado como ISO 17987 Parte 1-7. El mantenimiento de la identificación del
proveedor LIN será manejado por la ISO.
LIN Fue diseñado especialmente para la comunicación de bajo costo entre sensores
inteligentes y actuadores en aplicaciones automotrices. Las aplicaciones pueden ser
aire acondicionado, asientos, espejos, sensores de lluvia, sensores de luz, cierre de
puertas, ventanas.
83
Figura 47 - LIN Contra otros buses automotrices
LIN provee una solución económica cuando los requisitos de desempeño no son altos.
Así LIN puede ser utilizado donde el ancho de banda o velocidad de transferencia en
la red son bajos y la confianza y robustez encontrados en CAN no son requeridos. Otra
ventaja de LIN es que no existen conflictos de colisiones, el sistema opera con un solo
maestro y múltiples esclavos (17).
84
Auto sincronización sin necesidad de un cristal de cuarzo o cerámica en los
nodos esclavos.
Sistema determinístico de trasmisión con tiempo de propagación de señal
computable por adelantado.
Implementación de un solo cable de bajo costo.
Velocidad de hasta 20 Kbit/s.
Comportamiento predecible.
Re-configurabilidad.
Capa de transporte y soporte de diagnóstico
Un nodo en una red se conecta al cable físico del bus utilizando un transceptor de
mensajes. Los mensajes no son accedidos directamente por la aplicación; una capa
de interacción basada en señal se agrega en el medio. Como complemento, existe
una interfaz de capa de transporte entre la aplicación y el transceptor de mensajes
(56).
85
2.5.2.4. Principio operacional de LIN
2.5.2.4.1. Maestro-esclavo
Una red de LIN consta de una tarea maestra y varias tareas esclavas. Un nodo maestro
contiene la tarea maestra, así como una tarea esclava. Todos los demás nodos
esclavos sólo contienen una tarea esclava. Un nodo puede participar en más de una
red. El término nodo se refiere a una única interfaz de un nodo si el nodo tiene múltiples
interfaces de bus (56). La tarea maestra decide cuándo y qué mensaje se transferirá
al bus. Las tareas esclavas proporcionan los datos transportados por cada mensaje
(56).
2.5.2.4.2. Mensajes
86
identificador se encarga de transmitir la respuesta. La respuesta consiste en un campo
de datos y un cam us LIN se conocen como po de suma de comprobación (56).
Las tareas esclavas interesadas en los datos asociados con el identificador de trama
reciben la respuesta, verifican la suma de comprobación y utilizan los datos
transportados (56).
Esta configuración permite que los sistemas LIN sean flexibles permitiendo la
incorporación de nodos simplemente siendo agregados físicamente al sistema. Así
mismo toda la información transmitida es identificada con un número único y esta
puede ser recibida y utilizada por cualquier nodo que lo desee (56).
87
1. Señales: Son valores escalares o matrices de bytes que se empaquetan en el
campo de datos de un mensaje. Una señal siempre está presente en la misma
posición del campo de datos para todos los mensajes con el mismo
identificador (56).
2. Mensajes de diagnóstico: Se transportan en un mensaje con dos identificadores
reservados. La interpretación del campo de datos depende del campo de
datos en sí, así como del estado de los nodos de comunicación (56).
La tarea maestra (en el nodo maestro) transmite encabezados basados en una tabla
de programación. La tabla de programación específica los mensajes y el intervalo
entre el inicio de inicio transmisión de este y el inicio del siguiente mensaje. La
aplicación maestra puede usar diferentes tablas de programación y seleccionar entre
ellas (56).
Una señal es un valor escalar o una matriz de bytes. Una señal escalar tiene entre uno
y dieciséis bits de longitud. Una señal escalar de un bit se llama señal booleana. Las
señales escalares en el tamaño de dos a dieciséis bits se tratan como enteros sin signo.
Una matriz de bytes es una matriz de entre uno y ocho bytes.
Cada señal tiene un único transmisor pero múltiples nodos pueden suscribirse a la
señal.
Todas las señales tienen valores iniciales. El valor inicial para una señal transmitida es
válido hasta que el nodo escriba un nuevo valor a esta señal (56).
88
2.5.2.5.2. Consistencia de las señales
Nunca debe ser posible que una aplicación reciba un valor de señal que se actualice
parcialmente. Esto también se aplica a las matrices de bytes. Sin embargo, no se
garantiza la coherencia entre las señales (56).
Una señal se transmite primero con el LSB y el MSB. No hay restricciones para
empaquetar señales escalares por encima de los límites de bytes. Se pueden
empaquetar varias señales en un mensaje siempre que no se superpongan entre sí.
La misma señal se puede empaquetar en múltiples mensajes siempre que el transmisor
de la señal sea el mismo. Si un nodo recibe una señal empaquetada en múltiples
mensajes, el último valor de señal recibido es válido. Manejar la misma señal
empaquetada en mensajes diferentes en diferentes está fuera del alcance de LIN
(56).
89
Figura 52- Recepción de una señal
Las entidades que se transfieren en el bus LIN se conocen como mensajes (56).
90
2.5.2.6.1. Estructura de los mensajes
Un mensaje está formado por una serie de campos, comienza con un campo de corte
seguido de cuatro hasta once campos de datos (56).
El tiempo que toma enviar un mensaje es la suma del tiempo para enviar cada byte
más el espacio de respuesta y los espacios entre bytes (56).
El encabezado comienza en el en el flanco de bajada del campo de corte y termina
después del último bit del campo de identificador protegido (PID). La respuesta
comienza al final del último bit del campo PID y finaliza en el último bit del campo de
suma de comprobación (56).
91
Figura 55 - Estructura de los campo de datos
El campo de corte o también conocido como campo de corte se usa para señalar el
comienzo de un nuevo mensaje. Un campo de corte siempre es generado por la tarea
maestra (en el nodo maestro) y debe tener al menos 13 bits de valor dominante,
seguido de un delimitador de corte. El delimitador de salto debe ser al menos un bit
con longitud de un tiempo nominal (56).
Un nodo esclavo usará un umbral de detección de ruptura de 11 tiempos de bit
esclavo local dominante. No es necesario que un nodo esclavo verifique que el
delimitador de corte tenga al menos un bit de longitud del tiempo (56).
92
Figura 57 - Campo de sincronización
Una tarea esclava siempre podrá detectar la secuencia del campo sincronización,
incluso si espera un campo de bytes. Cuando se produce una secuencia de campo
de sincronización, la transferencia en curso se interrumpirá y comenzará el
procesamiento del nuevo mensaje (56).
Seis bits están reservados para el identificador del mensaje, se pueden usar valores en
el rango de 0 a 63. Los identificadores de cuadros se dividen en tres categorías (56):
Los valores de 0 a 59 (0x3B) se utilizan para tramas portadoras de señal.
60 (0x3C) y 61 (0x3D) se utilizan para transportar datos de diagnóstico y
configuración.
62 (0x3E) y 63 (0x3F) están reservados para futuras mejoras de protocolo.
1.1.1.1.1.1.6. Paridad
93
Figura 58 - Campo de identificador protegido
Un mensaje contiene entre uno y ocho bytes de datos. El editor y todos los suscriptores
deberán acordar el número de datos contenidos en un mensaje con un identificador
de mensaje específico. Un byte de datos se transmite como parte de un campo de
bytes (56).
Para entidades de datos de más de un byte, la parte menos significativa (LSB) está
contenida en el byte enviado primero y la parte menos significativa MSB en el byte
enviado en último lugar. Los campos de datos están etiquetados como datos 1, datos
2,... hasta datos máximos 8 (56).
94
comprobación sobre los bytes de datos solo se denomina suma de comprobación
clásica (56).
La suma de ocho bits con acarreo equivale a sumar todos los valores y restar 255 cada
vez que la suma es mayor o igual a 256 (56).
El cálculo de suma de comprobación sobre los bytes de datos y el byte identificador
protegido se denomina suma de verificación mejorada (56).
El uso de la suma de comprobación clásica o mejorada es gestionado por el nodo
maestro y se determina por identificador de cuadro; clásico en la comunicación con
los nodos esclavos LIN 1.x y mejorado en la comunicación con los nodos esclavos LIN
2.x (56).
Los identificadores de trama 60 (0x3C) a 61 (0x3D) siempre usarán la suma de
comprobación clásica (56).
El tipo de mensaje se refiere a las condiciones previas que serán válidas para transmitir
el mensaje. Algunos de los tipos de mensajes sólo se usan para fines específicos. Un
nodo no tiene que admitir todos los tipos de mensajes (56).
Todos los bits no utilizados / definidos en un mensaje serán recesivos (unos).
95
Figura 60 - Transferencia de tres mensajes incondicionales
96
2.5.2.7.2.1. Resolución de colisión
97
Figura 61 - Resolución de colisiones en LIN
98
Si el mensaje incondicional se transmitió con éxito, este ya no estará pendiente de
transmisión hasta que una señal se actualice nuevamente. Solo la tarea maestra sabe
cuándo un mensaje incondicional está pendiente para la transmisión (56).
99
2.5.2.7.5. Mensajes reservados
Una propiedad clave del protocolo LIN es el uso de tablas de planificación. Las tablas
de planificación permiten asegurar que el bus nunca se sobrecargue. También son el
componente clave para garantizar la periodicidad de las señales (56).
El comportamiento determinista es posible por el hecho de que todas las
transferencias en un nodo de LIN son iniciadas por la tarea maestra. Es responsabilidad
del nodo maestro asegurarse de que todos los mensajes relevantes en un modo de
operación tengan suficiente tiempo para ser transferidos (56).
La unidad de tiempo mínima que se utiliza en un nodo LIN es el tiempo base (Tbase). El
tiempo base se implementa en el nodo maestro y se usa para controlar el tiempo de
la tabla de planificación. Por lo general, un tiempo base es de 5 o 10 ms (56).
El punto de inicio del tiempo base se define como la tick del tiempo base. Un espacio
de mensaje siempre comienza en in tick de tiempo base (56).
La fluctuación (jlittler), especifica las diferencias entre la demora máxima y mínima
desde el tick hasta el punto de inicio del envío del encabezado (56).
El espacio entre mensajes, es el tiempo desde el final del mensaje hasta el inicio del
siguiente mensaje. El espacio entre mensajes debe ser no negativo (56).
101
Figura 64 - Máquina de estados de la tarea maestra
Se requiere que una tarea esclava se sincronice al comienzo del campo identificador
protegido de un mensaje. Debe permanecer sincronizado dentro de la tolerancia de
velocidad de bits requerida en todo el resto del mensaje. Para este propósito, cada
mensaje comienza un campo de corte seguido por un campo de sincronización. Esta
secuencia es única en toda la comunicación LIN y proporciona suficiente información
para que cualquier tarea esclava detecte el comienzo de un nuevo mensaje y se
sincronice al comienzo del campo identificador (56).
102
2.5.2.9.2. Procesador de mensaje
Una discrepancia entre la lectura y los datos enviados se detectará a más tardar
después de la finalización del campo de bytes que contiene la falta de coincidencia.
Cuando se detecta una falta de correspondencia, la transmisión se abortará (56).
103
2.5.2.10. Gestión de la red de LIN
La gestión de red en un nodo LIN se refiere a la suspensión y activación del bus de LIN.
2.5.2.10.1.1. Inicializando
2.5.2.10.1.2. Operacional
104
Figura 66 - Maquina de estados de procesamientos de mensajes de la tarea esclava
Cualquier nodo en una red LIN inactiva puede solicitar la activación de la red, al
transmitir una señal de activación. La señal de activación forzar el bus al estado
dominante durante 250 μs a 5 ms, y es válido con el retorno de la señal del bus al
estado recesivo. El nodo maestro puede emitir un campo de corte, emitiendo un
encabezado ordinario ya que el campo de corte actuará como una señal de
activación (en este caso, el maestro debe saber que este mensaje no puede ser
procesado por los nodos esclavos ya que es posible que aún no estén activos y listos
para escuchar los mensajes) (56).
Cada nodo esclavo (conectado a la alimentación) debería detectar la señal de
activación (un pulso dominante de más de 150 μs seguido de un flanco ascendente
de la señal del bus) y estar preparado para escuchar los comandos del bus dentro de
los 100 ms, medidos desde el borde final el pulso dominante. Un umbral de detección
de 150 μs combinado con una generación de pulsos de 250 μs proporciona un
margen de detección que es suficiente para los nodos esclavos no calibrados. Si el
105
nodo que transmitió la señal de activación es un nodo esclavo, estará listo para recibir
o transmitir mensajes inmediatamente. El nodo maestro también se debe activar y,
cuando los nodos esclavos estén listos, comience a transmitir encabezados para
descubrir la causa (usando señales) de la activación (56).
107
La forma normal de configurar el bus para que entre en el estado inactivo es que el
nodo maestro transmita el comando ir a estado inactivo (56).
En caso de inactividad del bus, un nodo esclavo debe poder recibir / transmitir
mensajes durante 4 s (56).
El nodo esclavo debe ingresar automáticamente al modo inactivo entre 4s y 10s de
inactividad del bus. (56).
La inactividad del bus se define como la ausencia de transiciones entre los valores de
bits dominantes recesivos. La actividad del bus es inversa (56).
2.5.2.11.1. Concepto
La gestión del estado en una red central se realiza en el nodo maestro. El nodo
maestro supervisa los informes de estado de cada nodo y filtra / integra los informes
para concluir si uno o más nodos se encuentran en falla (56).
108
response_error Interpretación
Falso el nodo esclavo está funcionando correctamente
Verdadero el nodo esclavo tiene problemas intermitentes
Los valores voltaje correspondiente a los niveles de bits en el bus de LIN son (17):
1. Dominante: ‘0’, Tierra
2. Recesivo: ‘1’, Terminal positiva le la batería.
109
Figura 70 - Diferencia entre fuentes de voltaje
110
La longitud del cable conectado a la red no debe exceder los 40m.
La resistencia del terminador debe ser de 1kΩ para el nodo maestro y 20-47 kΩ
para los nodos esclavos.
La capacitancia del nodo maestro debe ser mayor a la de los nodos esclavos.
111
112
3. PROCEDIMIENTO DE INVESTIGACIÓN
Las presentes secciones tiene como propósito definir las especificaciones funcionales,
no funcionales para el desarrollo del sistema de Automatización de Pruebas de
Pérdida de Comunicación CAN/LIN y Reseteo mediante VT System en sistemas
embebidos, el cual permitirá gestionar la ejecución de casos de prueba basados en
los principios de acceso a los buses de comunicación como a las condiciones de
activación y desactivación de nodos de las redes de comunicación.
113
Nombre Humberto Isaac Flores Bermejo
Rol Analista, diseñador, programador y probador
Categoría Profesional Ingeniero de Pruebas de Sistema
Responsabilidad Análisis de información, diseño y programación
y pruebas
Información de Humberto.Flores@mx.bosch.com
contacto
Tabla 9 - Personal involucrado
3.1.3. Restricciones
114
• Los equipos en cuales se ejecutará el sistema deben cumplir los requisitos de los
programas externos a utilizar.
• Los usuarios del sistema deberá ser personal capacitado con experiencia
en el manejo del equipo de pruebas.
• Los usuarios deberán conocer el lenguaje de programación CAPL1.
• Los usuarios deberán conocer las herramientas CANoe2, VT System3.
ECU individuales.
3 VT System – Módulos de interfaz de entradas y salidas para pruebas de ECU.
115
Figura 72 -Banco de pruebas
[VT_ERS_001]
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de CAN mediante un circuito abierto.
[VT_ERS_002]
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de LIN mediante un circuito abierto.
[VT_ERS_003]
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de CAN mediante un corto a tierra.
[VT_ERS_004]
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de LIN mediante un corto a tierra.
[VT_ERS_005]
116
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de CAN mediante un corto a batería.
[VT_ERS_006]
El sistema debe de generar una pérdida de comunicación por tiempo finito de un
nodo dentro de una red de LIN mediante un corto a batería.
[VT_ERS_007]
El sistema debe de desconectar y conectar la fuente de alimentación de una red de
CAN.
[VT_ERS_008]
El sistema debe de desconectar y conectar la fuente de alimentación de una red de
LIN.
[VT_ERS_009]
El sistema debe ser capaz de activar la red de CAN.
[VT_ERS_010]
El sistema debe ser capaz de activar la red de LIN.
[VT_ERS_011]
El sistema debe ser capaz de desactivar la red de CAN.
[VT_ERS_012]
El sistema debe ser capaz de desactivar la red de LIN.
[VT_ERS_013]
Para todo requisito de CAN el sistema debe de ser capaz de funcionar para CAN SW
y CAN DW
[VT_ERS_014]
Todos lo requerimiento funcional deben implementarse mediante funciones reusables.
[VT_ERS_015]
Todos lo requerimiento funcional deben implementarse mediante una interfaz gráfica.
[VT_ERS_016]
117
La interfaz gráfica debe de seguir los lineamientos de diseño para sistemas interactivos
– ISO 13407-1999 (58)
Con el fin de cumplir con los requisitos establecidos previamente siguiente sección
establece la manera en que el sistema es implementado.
[VT_ERS_001]
La clase Loss_CAN permite realizar la perdida de comunicación en una red de CAN
de dos líneas o una línea. class
Loss_CAN
+ closeCircuit_CAN_H()
- closeCircuit_CAN_L()
+ lossOfCom_CAN_DW(dword): dword
+ lossOfCom_CAN_SW(dword): dword
+ openCircuit_CAN_H()
- openCircuit_CAN_L()
Definición de funciones:
closeCircuit_CAN_H ()
//Descripción función : Cierra circuito en línea CAN_H (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
closeCircuit_CAN_L ()
//Descripción función : Cierra circuito en línea CAN_L CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
lossOfCom_CAN_DW (dword)
//Descripción función : Pérdida de comunicación CAN DW
//Parámetros de entrada : dword i_lossOfCom_time_ms
//Descripción del parámetro : Tiempo en ms de la pérdida de comunicación
//Rango de entrada : 1-4294967295
118
//Parámetros de salida : NA
lossOfCom_CAN_SW (dword)
//Descripción función : Pérdida de comunicación CAN SW
//Parámetros de entrada : dword i_lossOfCom_time_ms
//Descripción del parámetro : Tiempo en ms de la pérdida de comunicación
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
openCircuit_CAN_H ()
//Descripción función : Abre circuito en línea CAN_H (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
openCircuit_CAN_L ()
//Descripción función : Abre circuito en línea CAN_L CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
[VT_ERS_002]
La clase Loss_LIN permite realizar la pérdida de comunicación en una red de LIN de
dos líneas o una línea. class
Loss_LIN
- closeCircuit_LIN()
+ lossOfCom_LIN(dword)
- openCircuit_LIN()
Definición de funciones:
closeCircuit_LIN ()
//Descripción función : Cierra circuito en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
lossOfCom_LIN (dword)
//Descripción función : Perdida de comunicación LIN
//Parámetros de entrada : dword i_lossOfCom_time_ms
//Descripción del parámetro : Tiempo en ms de la pérdida de comunicación
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
openCircuit_LIN ()
//Descripción función : Abre circuito en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
119
[VT_ERS_03]
La clase Short2Ground_CAN permite realizar la un corto a tierra en una red de CAN
de dos líneas o una línea. class
Short2Ground_CAN
- s2g_switchActive_CAN_H()
- s2g_switchActive_CAN_L()
- s2g_switchInactive_CAN_H()
- s2g_switchInctive_CAN_L()
+ shor2Ground_CAN_H(dword)
+ short2Ground_CAN_L(dword)
Definición de funciones:
s2g_switchActive_CAN_H ()
//Descripción función : Activa el corto a tierra en línea CAN_H
// (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2g_switchActive_CAN_L ()
//Descripción función : Activa el corto a tierra en línea CAN_L
// CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2g_switchInactive_CAN_H ()
//Descripción función : Inactiva el corto a tierra en línea CAN_H
// (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2g_switchInactive_CAN_L ()
//Descripción función : Inactiva el corto a tierra en línea CAN_L
// CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
short2Ground_CAN_H (dword)
//Descripción función : Corto a tierra en línea CAN_H
//Parámetros de entrada : dword i_s2g_time_ms
//Descripción del parámetro : Tiempo en ms del corto a tierra
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
short2Ground_CAN_L (dword)
//Descripción función : Corto a tierra en línea CAN_L (CAN DW/SW)
//Parámetros de entrada : dword i_s2g_time_ms
//Descripción del parámetro : Tiempo en ms del corto a tierra
//Rango de entrada : 1-4294967295
120
//Parámetros de salida : NA
[VT_ERS_04]
La clase Short2Ground_LIN permite realizar la un corto a tierra en una red de CAN de
dos líneas o una línea. class
Short2Ground_LIN
- s2g_switchActive_LIN()
- s2g_switchInactive_LIN()
+ short2Ground_LIN(dword)
Definición de funciones:
s2g_switchActive_LIN ()
//Descripción función : Activa el corto a tierra en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2g_switchInactive_LIN ()
//Descripción función : Inactiva el corto a tierra en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
short2Ground_CAN_LIN (dword)
//Descripción función : Corto a tierra en línea LIN
//Parámetros de entrada : dword i_s2g_time_ms
//Descripción del parámetro : Tiempo en ms del corto a tierra
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
[VT_ERS_005]
La clase Short2Battery_CAN permite realizar la un corto a tierra en una red de CAN de
dos líneas o una línea.
121
class
Short2Battery_CAN
- s2b_switchActive_CAN_H()
- s2b_switchActive_CAN_L()
- s2b_switchInactive_CAN_H()
- s2b_switchInactive_CAN_L()
+ short2Battery_CAN_H(dword)
+ short2Battery_CAN_H(dword)
Definición de funciones:
s2b_switchActive_CAN_H ()
//Descripción función : Activa el corto a batería en línea CAN_H
// (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2b_switchActive_CAN_L ()
//Descripción función : Activa el corto a batería en línea CAN_L
// CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2b_switchInactive_CAN_H ()
//Descripción función : Inactiva el corto a batería en línea CAN_H
// (Solo CAN DW)
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2b_switchInactive_CAN_L ()
//Descripción función : Inactiva el corto a batería en línea CAN_L
// CAN SW/CAN DW
//Parámetros de entrada : NA
//Parámetros de salida : NA
short2Battery_CAN_H (dword)
//Descripción función : Corto a batería en línea CAN_H
//Parámetros de entrada : dword i_s2b_time_ms
//Descripción del parámetro : Tiempo en ms del corto a batería
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
short2Battery_CAN_L (dword)
//Descripción función : Corto a batería en línea CAN_L (CAN DW/SW)
//Parámetros de entrada : dword i_s2b_time_ms
//Descripción del parámetro : Tiempo en ms del corto a batería
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
[VT_ERS_006]
La clase Short2Battery_LIN permite realizar la un corto a tierra en una red de LIN.
122
class
Short2Battery_LIN
- s2b_switchActive_LIN()
- s2b_switchInactive_LIN()
+ short2Battery_LIN(dword)
Definición de funciones:
s2b_switchActive_LIN ()
//Descripción función : Activa el corto a batería en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
s2b_switchInactive_LIN ()
//Descripción función : Inactiva el corto a batería en línea LIN
//Parámetros de entrada : NA
//Parámetros de salida : NA
short2Battery_LIN (dword)
//Descripción función : Corto a batería en línea LIN
//Parámetros de entrada : dword i_s2b_time_ms
//Descripción del parámetro : Tiempo en ms del corto a batería
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
[VT_ERS_007] [VT_ERS_008]
La clase Power_Reset permite realizar corte a la alimentación de voltaje o reseteo a
una red de comunicación. class
Pow er_Reset
+ power_reset(dword)
Definición de funciones:
power_reset (dword)
//Descripción función : Reseteo de voltaje de alimentación
//Parámetros de entrada : dword i_pr_time_ms
//Descripción del parámetro : Tiempo en ms del reseteo de alimentación
//Rango de entrada : 1-4294967295
123
//Parámetros de salida : NA
[VT_ERS_009] [VT_ERS_010]
La clase WakeUp permite realizar la activación de comunicación en una red, una vez
y en cuando la red se encuentre desactivada.
class
WakeUp
+ wakeup(dword)
Definición de funciones:
wakeup (dword)
//Descripción función : Activación de comunicación de la red
//Parámetros de entrada : dword i_wakeup_time_ms
//Descripción del parámetro : Tiempo en ms de espera para la activación
// de la red
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
[VT_ERS_011] [VT_ERS_012]
La clase Sleep permite realizar la desactivación de comunicación en una red, una vez
y en cuando la red se encuentre activada.
class
Sleep
+ sleep(dword)
Definición de funciones:
sleep (dword)
//Descripción función : Desactivación de comunicación de la red
//Parámetros de entrada : dword i_sleep_time_ms
//Descripción del parámetro : Tiempo en ms de espera para la desactivación
// de la red
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
124
[VT_ERS_007] [VT_ERS_008] [VT_ERS_009] [VT_ERS_010] [VT_ERS_011] [VT_ERS_012]
La clase TurnOn_VT permite establecer la interface entre el ordenador y el equipo de
pruebas VT System. Necesaria para poder manipular las salidas de voltaje y crank de
una red automotriz.
class
TurnOn_VT
- i_interconnectionMode: int
- i_voltageRef_sup1: int
- i_voltageRef_supInt: int
int i_interconnectionMode
//Descripción del parámetro : Establece el modo para la interconexión de //
las fuentes de alimentación posibles y las //
dos salidas de potencia del módulo de
// potencia VT7001.
//Rango de entrada :
0 - Fuente de alimentación interna (modo supint)
1 - Fuente de alimentación 1 solamente (modo sup1)
2 - Fuente de alimentación 2 solamente (modo sup2)
3 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación interna y fuente de alimentación 1 (modo supint_sup1)
4 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación interna y fuente de alimentación 2 (modo supint_sup2)
5 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación 1 y fuente de alimentación interna (modo sup1_supint)
6 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación 1 y fuente de alimentación 2 (modo sup1_sup2)
7 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación 2 y fuente de alimentación interna (modo sup2_supint)
8 - Dos fuentes de alimentación independientes para OUT1 y OUT2: fuente
de alimentación 2 y fuente de alimentación 1 (modo sup2_sup1)
9 - La fuente de alimentación 1 y la fuente de alimentación 2 están
conectadas en serie (sup_series)
10 - La fuente de alimentación 1 y la fuente de alimentación 2 están
conectadas en paralelo (sup_parallel)
125
int i_voltageRef_sup1
//Descripción del parámetro : Establece el modo para la salida de voltaje
de referencia para controlar el voltaje de
salida de la fuente de alimentación 1.
//Rango de entrada :
0 - Salida de voltaje de referencia no activa
1 - Valor constante
2 - Forma de onda analógica
int i_voltageRef_supInt
//Descripción del parámetro : Establece el modo para la salida de voltaje
de referencia para controlar el voltaje de
salida de la fuente de alimentación interna.
//Rango de entrada :
0 - Salida de voltaje de referencia no activa
1 - Valor constante
2 - Forma de onda analógica
Loss_Common
- closeCircuit()
+ lossOfCom(): dword
- openCircuit()
126
Definición de funciones:
closeCircuit ()
//Descripción función : Cierra circuito
//Parámetros de entrada : NA
//Parámetros de salida : NA
lossOfCom (dword)
//Descripción función : Perdida de comunicación
//Parámetros de entrada : dword i_lossOfCom_time_ms
//Descripción del parámetro : Tiempo en ms de la pérdida de comunicación
//Rango de entrada : 1-4294967295
//Parámetros de salida : NA
openCircuit ()
//Descripción función : Abre circuito
//Parámetros de entrada : NA
//Parámetros de salida : NA
127
CAN DW:
128
CAN SW:
129
Diagrama común:
130
LIN:
131
Diagrama de activación y desactivación de bus:
132
La siguiente tabla muestra las principales reglas a seguir durante el diseño de la
interface HMI.
133
Lenguaje Terminología Se utiliza algún término o vocabulario no
comprensible.
134
Figura 89 - Panel de control
Una vez explicado el diseño e implementación del sistema, esta sección describe el
procedimiento mediante el cual la implementación de la automatización de pruebas
se ha conseguido.
135
característica del proyecto es considerada una unidad de negocio, y esta debe ser
programada y probada de manera independiente. Cada unidad de negocio aparte
de ser probada funcionalmente es sometida a pruebas de no funcionales de:
Reseteo de alimentación
Pérdida de comunicación
Activación y desactivación (Sleep/Wake up)
Cambio de voltaje.
Estos guiones se mi automatizados consistían en guías que describían los pasos que el
probador debería realizar finalmente el guión pregunta al probador si tras realizar los
pasos el resultado obtenido era igual al esperado para finalmente crear un reporte
de todas las pruebas ejecutadas. Es así como los guiones tenían que ser
implementados de manera semi-automatizada y la dependencia del probador era
necesaria en todos los casos.
136
Una vez que el probador se dispone a ejecutar las pruebas basta con que conecte
su equipo de cómputo al sistema VT System el cual se encuentra interconectado a un
banco de pruebas con el ECU a probar (para este caso el panel de instrumentación)
junto al resto de ECUs pertenecientes a su red vehicular, permitiendo así una ejecución
dentro de un ambiente cercano al real.
Si una prueba es detectada como fallida el probador utiliza el panel de control
implementado para validar la certeza de la falla y con esto crear un defecto nuevo
en el sistema.
3.3.4. Medición
137
3. Ejecución de pruebas
138
4. RESULTADOS
139
Pérdida de Comunicación Manual Pérdida de Comunicación Automatizada
Repetición
Preparación Ejecución Preparación Ejecución
manual manual automatización automatizada
1 01:23 01:31 01:23 00:00
2 01:23 03:02 00:00 00:00
3 01:23 04:33 00:00 00:00
4 01:23 06:04 00:00 00:00
5 01:23 07:35 00:00 00:00
6 01:23 09:06 00:00 00:00
7 01:23 10:37 00:00 00:00
8 01:23 12:08 00:00 00:00
9 01:23 13:39 00:00 00:00
10 01:23 15:10 00:00 00:00
Tabla 12 - Reducción de tiempo en pruebas continúas de pérdida de comunicación
Perdida de Comunicación
16:48
14:24
12:00
09:36
07:12
04:48
02:24
00:00
0 2 4 6 8 10 12
140
Activación/Desactivación Manual Activación/Desactivación
Repetición Automatizada
Preparación Ejecución Preparación Ejecución
manual manual automatización automatizada
1 01:23 00:02:43 01:23 00:00
2 01:23 00:05:26 00:00 00:00
3 01:23 00:08:09 00:00 00:00
4 01:23 00:10:52 00:00 00:00
5 01:23 00:13:35 00:00 00:00
6 01:23 00:16:18 00:00 00:00
7 01:23 00:19:01 00:00 00:00
8 01:23 00:21:44 00:00 00:00
Activación/Desactivación
01:40
01:26
01:12
00:57
00:43
00:28
00:14
00:00
0 2 4 6 8 10 12
141
Reseteo de alimentación manual Reseteo de alimentación
Repetición automatizada
Preparación Ejecución Preparación Ejecución
manual manual automatización automatizada
1 01:23 01:04 01:23 00:00
2 01:23 02:08 00:00 00:00
3 01:23 03:12 00:00 00:00
4 01:23 04:16 00:00 00:00
5 01:23 05:20 00:00 00:00
6 01:23 06:24 00:00 00:00
7 01:23 07:28 00:00 00:00
8 01:23 08:32 00:00 00:00
9 01:23 09:36 00:00 00:00
10 01:23 10:40 00:00 00:00
Tabla 16 - Reducción de tiempo en pruebas continúas de reseteo
Reseteo de alimentación
12:00
10:48
09:36
08:24
07:12
06:00
04:48
03:36
02:24
01:12
00:00
0 2 4 6 8 10 12
Las pruebas individuales descritas son ejecutadas en conjunto dentro la misma ronda
de pruebas, así el tiempo ahorrado total es la sumatoria del ahorro de cada una de
ellas. Mientras tanto las pruebas de larga duración son ejecutadas diariamente, para
este cálculo son dejadas fuera debido a que son pruebas implementadas a partir del
desarrollo de la automatización como se verá en las siguientes secciones.
142
𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜
= 𝑇𝑖𝑒𝑚𝑝𝑜 𝑎ℎ𝑜𝑟𝑟𝑜 𝑝𝑟𝑢𝑒𝑏𝑎 𝑑𝑒 𝑟𝑒𝑠𝑒𝑡𝑒𝑜
+ 𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜 𝑝𝑟𝑢𝑒𝑏𝑎 𝑑𝑒 𝑎𝑐𝑡𝑖𝑣𝑎𝑐𝑖ó𝑛
+ 𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜 𝑝𝑟𝑢𝑒𝑏𝑎 𝑑𝑒 𝑝é𝑟𝑑𝑖𝑑𝑎 𝑑𝑒 𝑐𝑜𝑚𝑢𝑛𝑖𝑐𝑎𝑐𝑖ó𝑛
= 1: 04𝑚𝑖𝑛 + 1: 31 + 2.43 = 4: 14 𝑚𝑖𝑛
Actualmente el departamento de pruebas es responsable de probar 85
funcionalidades por lo tanto el ahorro por ejecución de pruebas es:
𝑇𝑖𝑒𝑚𝑝𝑜 𝑎ℎ𝑜𝑟𝑟𝑜 𝑟𝑜𝑛𝑑𝑎 𝑑𝑒 𝑝𝑟𝑢𝑒𝑏𝑎𝑠
= 𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜 ∗ 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑓𝑢𝑛𝑐𝑖𝑜𝑛𝑎𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑝𝑟𝑜𝑏𝑎𝑑𝑎𝑠 = 4: 14 𝑥 ∗ 85
≈ 360 min ≈ 6 ℎ𝑟𝑠
El proyecto del panel de instrumentos contempla 1,434 funcionalidades disponibles
una completa implementación del sistema generaría un ahorro de:
𝑇𝑖𝑒𝑚𝑝𝑜 𝑚á𝑥𝑖𝑚𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜 = 𝑇𝑖𝑒𝑚𝑝𝑜 𝑑𝑒 𝑎ℎ𝑜𝑟𝑟𝑜 ∗ 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑓𝑢𝑛𝑐𝑖𝑜𝑛𝑎𝑙𝑖𝑑𝑎𝑑𝑒𝑠 𝑑𝑖𝑠𝑝𝑜𝑛𝑖𝑏𝑙𝑒𝑠
= 4: 14 𝑥 ∗ 1,434 ≈ 360 𝑚𝑖𝑛 ≈ 6,065 ℎ𝑟𝑠
En el primer caso, las pruebas realizadas al ECU (IPC, panel de instrumentos) se basan
en la desconexión de la herramienta transmisora mediante la cual se simula el bus
completo de CAN o LIN, debido a la generación de esta desconexión se enfrentaban
dos problemas comunes; la simulación perdía su único ECU destinatario produciendo
143
paros en la ejecución, o la reactivación de la transmisión no se podía llevar a cabo
por errores en la herramienta resultado de la desconexión.
Cuando el entorno de la ejecución consistía en una red con ECU fiscos, la única
manera de producir esta pérdida de comunicación era la desconexión del arnés, el
cual incluye todas las entradas al ECU, alimentación redes de comunicación (CAN,
LIN, Ethernet) y sensores externos. Considerando este tipo de procedimientos una
prueba de pérdida de comunicación que afectará únicamente las líneas de
comunicación de CAN o LIN era imposible.
144
e. Corto a tierra de líneas de CAN.
f. Corto a batería de las líneas de CAN.
g. Corto a tierra de líneas de LIN.
h. Corto a batería de las líneas de LIN.
Aunado a las pruebas mencionadas, durante la definición de los requisitos del sistema
se definió este como un sistema abierto que tuviera la capacidad de utilización dentro
de otros protocolos con principios similares. Es así como dentro del diseño se
implementó una sección con funciones comunes sin propósito específico.
Dentro del proyecto del panel de instrumentos (IPC) en el cual la automatización fue
realizada, existen tres protocolos de comunicación utilizados: CAN, LIN y Ethernet, de
este modo dichas funciones generales fueron empleadas en el protocolo de Ethernet,
con ello se logró incluir las siguientes nuevas pruebas:
1) Pérdida continúa de comunicación de Ethernet durante operación normal.
2) Corto a tierra de líneas de Ethernet.
3) Corto a batería de las líneas de Ethernet.
En esta sección se analizará los costos de inversión del equipo VT System y su retorno
de inversión tras el análisis de reducción de tiempos.
Total $5,195.00
Tabla 17 - Costos del equipo VT System
145
Descripción Precio USD
Hora ingeniería $570.00
Total $570.00
Tabla 18 - Costo por hora ingeniería de trabajo
Con los costos del equipo y el costo de hora ingeniería del probador podemos
determinar el tiempo de ejecución automatizada necesaria para recuperar la
inversión.
𝑐𝑜𝑠𝑡𝑜 𝑑𝑒 𝑖𝑛𝑣𝑒𝑟𝑠𝑖𝑜𝑛 $ 5,195
𝑅𝑂𝐼 = = = 9.11ℎ𝑟
ℎ𝑜𝑟𝑎 𝑖𝑛𝑔𝑒𝑛𝑖𝑒𝑟𝑖𝑎 $ 570/ℎ
Considerando una prueba de larga duración el costo se cubriría inmediatamente.
Debido a que estas pruebas fueron introducidas a partir de la aplicación desarrollada
consideraremos únicamente las pruebas individuales para este cálculo.
146
Comunicación de LIN no es establecida después de ciclos de activación y
desactivación.
Códigos de error de pérdida de comunicación no son registrados.
Mecanismo de re-suscripción de Ethernet no son llevados a cabo.
Configuraciones de usuario no son retenidos después de ciclos de activación
y desactivación.
147
148
5. CONCLUSIONES
149
De igual manera ya se ha hecho mención de nuevas pruebas las cuales fueron
posibles de alcanzar, dichas pruebas basadas y descubiertas tras el análisis de las
especificaciones de los protocolos. Es así como las pruebas de cortos a tierra y batería
permiten validar la correcta implementación de los controladores de los protocolos
(CAN y LIN). Mecanismos como el relleno de bits es posible de validar introduciendo
ruido a través de las pruebas cortos a tierra y batería. Este tipo de pruebas también
permiten validar la desactivación de un nodo en caso de entrar en modo de error, y
de esta manera no afectar el funcionamiento de la red.
150
6. RECOMENDACIONES
Esta investigación puede ser utilizada como base para la automatización de más tipos
de pruebas no funcionales. Se recomienda utilizar las bases y los principios estudiados
para la extensión a diferentes protocolos como MOST, FlexRay, Ethernet por
mencionar algunos. Es conveniente continuar con la investigación desarrollada
incluyendo más módulos del equipo VT, actualmente esta investigación considero
únicamente dos módulos de seis posibles.
Por último cabe resaltar que esta investigación ha llamado la atención dentro de la
compañía y el interés de la misma. Esta ha servido como una demostración del
alcance del equipo de pruebas de la localidad y con ellos la atracción de nuevos
proyectos.
151
152
7. REFERENCIAS BIBLIOGRÁFICAS
1. NU. CEPAL. División de Desarrollo Productivo y Empresarial. Informe sobre la industria. Santiago de
Chile : CEPAL, 2005. 9213226934.
4. A. P. Godse, A. O. Mulani. Embedded Systems. Pune : Technical Publications Pune, 2009. 978-818-
431-713-8.
6. Wang, K.C. Embedded and Real-Time Operating Systems. Switzerland : Springer, Cham, 2015. 978-
3-319-51516-8.
7. Robert Bosch GmbH. Bosch Automotive Electrics and Automotive Electronics. Wiesbaden : Springer
Vieweg, 2014. 978-3-658-01783-5.
8. Forouzan, Behrouz. Data communications and networking. New York : McGraw-Hill, 2007. 978-0-
07-296775-3.
11. W Valvano, Jonathan. Embedded Systems: Introduction to ARM Cortex-M Microcontrollers. Texas :
CreateSpace Independent Publishing Platform, 2012. 978-1463590154.
12. Kozierok, Charles M., y otros. Automotive Ethernet - The Definitive Guide. USA : Intrepid Control
Systems, 2014. 978-0990538806.
13. Buehrer, R. Michael. Code Division Multiple Access (CDMA). Virginia : Morgan & Claypool, 2006.
9781598290400.
153
15. Voss, Willfried. A comprehensible guide to controller area network. 2. Greebfield : Copperhill
Media Corporation, 2005. 978-0976511601.
16. Jenq, Yih-Chyun. Theoretical Analysis of Slotted ALOHA, CSMA, and CSMA-CD Protocols. New
York : Springer, 1986. 978-1-4612-9354-5.
17. Paret, Dominic. Multiplexed Network for embedded systems CAN, LIN, Flexray, safe-by-wire...
Paris : John Wily & Sons Ltd, 2007. 978-0-7680-1938-4.
18. St, IEEE. IEEE 802.11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY)
Specifications. 2012.
19. Wang, X. & Giannakis, G.B. J. Wireless Com Network (2006) 2006: 039604. .
[https://doi.org/10.1155/WCN/2006/39604] s.l. : Springer International Publishing, 2006. 1687-1499.
20. H, Omar y W., Zhuang. Time Division Multiple Access For Vehicular Communications. Cham :
Springer, 2014. 978-3-319-09503-5.
21. ISO: Information Technology—Open Systems Interconnection—Basic Reference Model: The Basic
Model. Geneva, Standard ISO/IEC 7498-1(E). 1994.
22. Design of distributed applications based on the OSI model. McBrien, Peter. Berlin : Springer, 1997,
Vol. 1250. 978-3-540-63107-1.
23. Alani, M.M. OSI Model. In: Guide to OSI and TCP/IP Models. Cham : Springer, 2014. 978-3-319-
05151-2.
24. Tadimety, Phani Raj. The OSI Model—A Closer Look. In: OSPF: A Network Routing Protocol. .
Berkeley : Apress, 2015. 978-1-4842-1411-4.
25. Kopetz, Hermann. Real-Time Systems, Design Principles for Distributed Embedded Applications. 0-
792-39894-7 : Kluwer Academic Publishers, 2002. 0-792-39894-7.
26. Limam, Mourad. A New Approach for Gateway-based Automotive Network Architectures.
Dresden : expert-Verlag, 2010. 9-783-816930-297.
27. CAN System Engineering. Reichart G., Leen G., Courmont N., Knüppel R., Schmid C., Brockmann M.
London : Springer, 2013. 978-1-4471-5612-3.
28. Archambeault B., Ramahi O.M., Brench C. Introduction. In: EMI/EMC Computational Modeling
Handbook. Boston : Springer, 1998. 978-1-4757-5126-0.
29. Schubert M., Boche H. Introduction. In: Interference Calculus. Foundations in Signal Processing,
Communications and Networking,. Berlin : Springer, 2012. Vol. 7. 978-3-642-24620-3.
30. Obermaisser, Roman. Time-triggered communication. New York : CRC Press Taylor & Francis
Group, 2012. 97-4398-4662-9.
154
31. Evaluation and Comparison of the Real-Time Performance of CAN and TTCAN. A., Albert y W.,
Gerth. Munich : 9th international CAN in Automation Conference, 2003.
32. Comparison of event-triggered and time-triggered concepts. A., Albert. Nürnberg : Embedded
World Conf. 2004, 2004.
34. Dean, Tamara. Network+ guide to networks. Boston : Course Technology, Cengage Larning, 2013.
978-1-133-60819-6.
35. Electronic control units for automotive electrical power systems: Communication and networks. A
Shrinath, A Emadi. 11, s.l. : Proceedings of the Institution of Mechanical Engineers, Part D: Journal of
Automobile Engineering, Vol. 218.
36. Controller area network [automotive applications]. Navet, N. 4, s.l. : IEEE Potentials , 1998, Vol. 17.
0278-6648.
38. Johansson K.H., Törngren M., Nielsen L. Handbook of Networked and Embedded Control Systems.
s.l. : Birkhäuser Boston, 2005. 978-0-8176-3239-7.
39. H. F. Othman, Y. R. Aji, F. T. Fakhreddin, A. R. Al-Ali. Controller Area Networks: Evolution and
Applications. s.l. : Information and Communication Technologies, 2006. ICTTA '06. 2nd. 0-7803-9521-
2.
40. ISO. ISO-11898-1 Road vehicles — Controller area network (CAN) — Part 1: Data link layer and
physical signalling. 2015.
41. Natale M.D., Zeng H., Giusto P., Ghosal A. The CAN 2.0b Standard. In: Understanding and Using
the Controller Area Network Communication Protocol. New York : Springer, 2012. 978-1-4614-0313-5.
42. Park, Kiejin y Kang, Minkoo. Advanced Bit Stuffing Mechanism for Reducing CAN Message
Response Time, Automation. Korea : InTech, 2012. Kiejin Park and Minkoo Kang.
43. Etschberger, K. Controller Area Network (CAN): Basics, Protocols, Chips, and Applications.
Weingarten : IXXAT Automation GmbH, 2001. 978-3000073762.
44. Implementation of Controller Area Network (CAN) Bus (Building Automation). In: Unnikrishnan S.,
Surve S., Bhoir D. (eds) Advances in Computing, Communication and Control. Communications in
Computer and Information Science. Shweta S.A., Mukesh D.P., Jagdish B.N. s.l. : Springer, Berlin,
Heidelberg, 2011, Vol. 125. 978-3-642-18439-0.
155
45. Controller area network (CAN) for computer integrated manufacturing systems. Journal of
Intelligent Manufacturing. Çenesİz, N. & Esin, M. 4, Gebze-Kocaeli : Kluwer Academic Publishers,
2004, Vol. 15. 0956-5515.
46. Frontiers of Information Technology & Electronic Engineering: Frontiers of Information Technology
& Electronic Engineering. Wu, Y. & Chung, JG. 1, Jeonju : Zhejiang University Press, 14, Vol. 16. 2095-
9184.
47. Real-Time Systems: Robust priority assignment for messages on Controller Area Network (CAN).
Davis, Robert I y Burns, Alan. 2, York : Springer US, 2009, Vol. 41. 0922-6443.
48. Kraft, D. Controller Area Network (CAN), In: Gevatter HJ., Grünhaupt U. (eds) Handbuch der Mess-
und Automatisierungstechnik im Automobil. Berlin : Springer, Heidelberg, 2016. 978-3-540-21205-8.
49. Digital Signal Transmission Using a Multilevel NRZ Coding Technique. In: Shah K., Lakshmi Gorty
V.R., Phirke A. (eds) Technology Systems and Management. Communications in Computer and
Information Science. Kulkarni, V., y otros. Berlin : Springer, 2011, Vol. 145. 978-3-642-20208-7.
50. Using bit-stuffing distributions in CAN analysis, IEEE/IEE Real-Time Embedded Systems Workshop
(RTES’01). Nolte, T., y otros. 2011 : s.n.
51. CAN System Engineering: From Theory to Practical Applications. Wolfhard, L. s.l. : Springer, 1997.
978-0387949390.
52. Probabilistic worst-case response-time analysis for the controller area network, in Real-Time and
Embedded Technology and Applications Symposium. Nolte, T., Hansson, H. y & Norstrom, C. Toronto :
IEEE, 2003. 1545-3421.
53. International., SAE. J2411_200002 - Single Wire Can Network for Vehicle Applications. s.l. : SAE
International., 2000.
54. CiA. SAE J2411 single wire. can-cia.org. [En línea] CAN in Automation., 04 de Febrero de 2018.
[Citado el: 04 de Febrero de 2018.] https://www.can-cia.org/can-knowledge/can/sae-j2411-single-
wire/.
55. Local Interconnect Networking. In: Automotive Mechatronics: Operational and Practical Issues.
Intelligent Systems, Control and Automation: Science and Engineering. Fijalkowski, B. Dordrecht :
Springer, 2011. 978-94-007-0408-4.
56. Consortium, LIN. LIN Specification Package. [www.lin-subbus.org] 2010. Vol. Revision 2.2A.
57. 830-1998 - IEEE Recommended Practice for Software Requirements Specifications. s.l. : IEEE, 1998.
978-0-7381-0448-5.
58. ISO 13407:1999 Human-centred design processes for interactive systems. s.l. : International
Organization for Standardization, 1999.
156
59. Palmer, Stephen R. y Felsing, John M. Practical Guide to Feature-Driven Development. s.l. :
Prentice Hall, 2002. 978-0130676153.
157