¿Por qué hay múltiples autobuses CAN en los vehículos?

17

Hay varias preguntas en el bus CAN pero ninguna (por lo que puedo decir) que explique por qué hay varios buses CAN en un vehículo. Por lo que entiendo, se pueden conectar muchos nodos diferentes a un solo bus CAN, por lo que no estoy seguro de por qué necesitaría más de uno. Mis únicos pensamientos son que:

A. hay un límite bastante pequeño para cuántos nodos se pueden conectar a un solo bus CAN. Pero si ese es el caso, me imagino que debe haber alguna conexión entre CAN para que pueda ocurrir el arbitraje y la verificación de errores (CAN SPEC 2.0).

- o -

B. Los nodos tienen prioridad como sistemas primarios, secundarios y terciarios y cada nivel tiene su propio bus CAN y estos niveles solo contienen dispositivos que son independientes entre sí en términos de funcionalidad. Los frenos IE, el control del motor, las luces exteriores y las cerraduras están en el autobús primario. Radio, aire acondicionado, control del asiento, están en el bus secundario, etc.

Si alguien pudiera explicar / aclarar, realmente lo agradecería. Gracias por adelantado.

Moeman69
fuente
1
Es cierto que no sé mucho sobre esto, pero pensé que solo había un bus, ya que solo hay una conexión: el puerto OBDII. ¿Cómo se abordan los autobuses separados? ¿Qué los separa?
JPhi1618
@ JPhi1618 Honestamente, yo mismo no sé mucho, por eso pregunto. Estaba discutiendo con un par de seguridad de vehículos a través del bus CAN después de que él regresó de un evento de Hackathon donde se mencionó y encontramos a varias personas que mencionan que la mayoría de los vehículos tenían múltiples autobuses CAN. Estoy de acuerdo en que la única conexión que conozco es el puerto OBDII. Hay varias publicaciones aquí donde la gente ha mencionado que hay múltiples. ( mechanics.stackexchange.com/questions/8559/obd2-and-can-bus - am6sigma lo menciona en la respuesta).
Moeman69
Encontré esta discusión que dice: Para solicitar datos, debe establecer un apretón de manos con la puerta de enlace CAN, negociar la configuración de conexión, solicitar un conjunto de datos de un dispositivo CAN en particular y leer los datos que se devuelven. Con las solicitudes adecuadas se puede acceder a los datos desde cualquiera de los 3 buses de la conexión - para que su TCC puede solicitar RPM del controlador del motor, odómetro del grupo de instrumentos, Ventana Posición de la puerta delantera derecha del controlador, etc. Así que parece Un "portal" es la clave.
JPhi1618
@ JPhi1618 Ahh, gracias. Nunca vi esa página. También parece que mi pensamiento B era correcto ya que los instrumentos están conectados en grupos a diferentes buses. Sin embargo, la puerta de enlace CAN parece ser exclusiva de los vehículos VW y no necesariamente un estándar. Solo puedo imaginar que otros vehículos tienen un dispositivo y una configuración similares, pero eso es pura especulación. Desearía poder enviar un mensaje a las personas ya que hay personas como las que mencioné que parecen tener conocimiento de primera mano de varios autobuses.
Moeman69

Respuestas:

17

Los autobuses CAN están principalmente separados de

  • manejar la congestión
  • reducir las preocupaciones regulatorias sobre los sistemas críticos de seguridad
  • ejercer más control sobre quién puede acceder a los diferentes autobuses

Los vehículos simples tendrán dos autobuses CAN, uno para el motor y los sistemas de seguridad, y otro para los controles del cuerpo (iluminación, experiencia del usuario, etc.).

Los vehículos complejos tendrán un bus separado para los sistemas que afectan el movimiento del vehículo, por ejemplo, control de crucero asistido por radar, sistemas de estacionamiento, guía de carriles, etc., así como sistemas adicionales para funciones del usuario más allá de los controles simples del cuerpo, como en los sistemas de entretenimiento del vehículo.

Si bien los autobuses podrían compartirse, hay algunas razones para no hacerlo:

Congestión

Incluso los buses CAN de alta velocidad no tienen ancho de banda ilimitado y, de hecho, en comparación con los sistemas de comunicaciones modernos, son muy lentos. Sin embargo, todavía hay una gran cantidad de datos que deben transportar, y la mayoría de ellos son críticos, por lo que mantener una baja utilización permite que los mensajes se entreguen más rápidamente (menos colisiones), lo que significa que los mensajes en tiempo real llegan a tiempo, en lugar de tarde .

Pruebas

Los sistemas críticos de seguridad a menudo están separados de otros sistemas, por lo que se reducen las pruebas. Todos los dispositivos conectados al bus crítico de seguridad deben tener un estándar de operación más alto y, por lo tanto, realizar pruebas para asegurarse de que no causarán un problema en un bus crítico de seguridad. Con un bus corporal separado, puede tener estándares ligeramente más bajos, ya que una interrupción no causará un problema de seguridad, por lo tanto, las pruebas se reducen.

En lugar de combinar todo en un autobús y asegurarse de que todo cumpla con los estándares más altos, los autobuses separados permiten a los diseñadores segmentar el autobús y reducir los costos.

Las regulaciones de la industria son difíciles, particularmente debido a problemas de aceleración y otros problemas de transmisión por cable que la industria ha experimentado en el pasado. Al mantener los sistemas críticos separados de los sistemas no críticos, descubrir qué salió mal después del hecho y resolverlo se vuelve mucho más fácil y menos probable, ya que hay menos dispositivos que podrían interferir con el funcionamiento correcto del sistema de seguridad.

Controlar

Una vez que los modders descubrieron que podían alterar la administración del motor y otras computadoras a través de una sola interfaz, los fabricantes de vehículos trabajaron para separar el conector de diagnóstico y su bus del resto de los buses del vehículo, y usar una puerta de enlace para pasar solo aquellos mensajes que permiten acceso de usuario y garaje a. Por lo general, tienen características adicionales que permiten su propio acceso técnico, y muchos incluso agregan otro bus al conector de diagnóstico, pero sin publicar detalles del mensaje, por lo que pueden tener un acceso de mayor velocidad y al mismo tiempo mantener la compatibilidad con las normas de diagnóstico de emisiones.

Sin embargo, la separación de los autobuses les permite ejercer un poco más de control sobre quién tiene fácil acceso a las computadoras a bordo utilizando el conector de diagnóstico simple.

Complejidad adicional

La complejidad introducida por buses adicionales es manejada por un controlador de puerta de enlace. En algunos vehículos, este es el controlador del cuerpo, y a menudo tiene otras conexiones de bus, como LIN. Esto pasa mensajes entre buses para que, cuando se conecta un dispositivo de diagnóstico, por ejemplo, el dispositivo pueda acceder a toda la información de diagnóstico relevante en todo el vehículo.

Adam Davis
fuente
1
Estoy de acuerdo con sus puntos, pero enfatizaría "Seguridad" más que "Pruebas". Los controladores críticos de seguridad están aislados de los demás por la puerta de enlace que filtra y restringe la comunicación entre los buses a un subconjunto definido. El reproductor de DVD no debería ser capaz de controlar los descansos o las bolsas de aire (después de que lo secuestros con una memoria USB bien diseñada) o comprometer accidentalmente su bus CAN, lógica o eléctricamente. La estrategia es la misma que para cualquier LAN con servidores de misión crítica que no exponga a Internet. Las pruebas solo llegan hasta cierto punto; El aislamiento es infalible.
Peter - Restablece a Monica
@ Peter A. Schneider No estoy en desacuerdo con usted, pero trabajé en el módulo de carrocería para vehículos Ford grandes del año modelo 2009, y si bien el resultado deseado puede haber sido mayor o la seguridad verificable, la evidencia estaba probando, y en el caso de este módulo reduciendo el tiempo de prueba. La realidad es que probar un solo módulo complejo solo puede llevar meses en todas sus permutaciones internas, y probar un solo bus de vehículo completo años. Esto puede ser paralelo a un grado con un costo significativo, pero incluso unas pocas semanas es inaceptable. La separación de los autobuses permite pruebas más simples y rápidas.
Adam Davis
@ PeterA.Schneider Esto permite que los módulos y los buses se prueben más completamente, lo que aumenta la seguridad, pero el objetivo principal era reducir el tiempo de desarrollo mientras se mantiene un cierto estándar de seguridad, no aumentar la seguridad. La forma en que se diseñan los módulos y se diseña el mensaje que pasa, hay pocas posibilidades de que un reproductor de DVD re-flasheado en el bus del motor pueda causar un problema. El hardware que conecta el bus evita el ataque de DOS a nivel de silicio, y los microcontroladores que se conectan a este hardware no son programables a través del software.
Adam Davis
@ PeterA.Schneider Quizás esto puede ser semántica, o una distinción sin diferencia, pero si el fabricante exigió un solo autobús, los sistemas pueden diseñarse con el mismo nivel de seguridad que existe en autobuses separados. El tiempo de desarrollo es lo único que realmente sufriría. Afortunadamente, el costo adicional de los autobuses separados es bajo, de lo contrario estaríamos diseñando para un solo autobús si el costo de los autobuses separados fuera demasiado alto.
Adam Davis
8

Cuando se habla específicamente de CAN, la respuesta no es ninguna de las anteriores.

En un sistema CAN, los nodos no se comunican directamente entre sí, sino que el sistema se basa en mensajes. Cada mensaje tiene una prioridad basada en su dirección y eso determina quién puede hablar. Quien tiene el mensaje de prioridad transmite el mensaje a todos y quien lo necesite lo lee.

Hay algunos límites para la cantidad de nodos que se pueden tener, pero ese límite es eléctrico y no es una función del bus real.

La razón es que el CAN de alta velocidad es muy complicado eléctricamente debido a su velocidad. (Puedo continuar con las líneas de transmisión, la integridad de la señal, los resguardos y la terminación, pero esto va mucho más allá de lo que necesita esta respuesta) Esto complica el diseño y hace que los módulos que lo usan sean más caros. Además, no todo necesita la velocidad de ruptura del cuello de la CAN de alta velocidad. El sistema de bus CAN generalmente se divide en tres buses, baja velocidad, velocidad media y alta velocidad.

  • CAN de alta velocidad conecta todos los sistemas importantes. Motor, ABS, bolsa de aire, transmisión, carrocería. La computadora del cuerpo sirve entonces como puerta de enlace entre los otros autobuses.
  • La CAN de velocidad media generalmente se usa para funciones de automóviles como iluminación exterior, cerraduras eléctricas, espejos eléctricos, etc.
  • La baja velocidad CAN recoge el resto de los sistemas no críticos. Estos pueden incluir iluminación interior, entretenimiento, etc.

Como se mencionó anteriormente, el bus CAN utiliza direcciones de mensajes en lugar de direcciones de nodo. Por ejemplo, la velocidad del vehículo sería un mensaje. Este mensaje se transmite por la unidad ABS y tiene una prioridad bastante alta. El motor, la bolsa de aire, la transmisión y el cuerpo están interesados ​​en el mensaje y lo leen. Después de recibir el mensaje, el cuerpo retransmite el mensaje a través de los otros autobuses. Los autobuses de baja velocidad generalmente no necesitan actualizaciones tan frecuentes como el autobús de alta velocidad, por lo que el Cuerpo solo los actualiza ocasionalmente.

Si un módulo necesita información que no se transmite comúnmente, un módulo puede solicitar información. El diseño del bus es tal que cuando se solicitan datos, el módulo que tiene la información solo sabe que la información es necesaria y no quién la necesita.

La puerta de enlace no tiene que ser el Cuerpo, podría ser el Grupo de instrumentos o alguna otra computadora.

vini_i
fuente
Gracias por la respuesta sólida. Estoy bastante familiarizado con los mensajes CAN y el arbitraje de mensajes. Supongo que la pregunta que realmente estoy buscando es si hay mensajes en una CAN (digamos la CAN no crítica de baja velocidad) que ven los nodos conectados en otra CAN (como la CAN de los sistemas críticos de alta velocidad). Me imagino que el sistema podría funcionar perfectamente bien si todos los dispositivos estuvieran conectados a una sola CAN ya que el sistema de arbitraje manejaría inherentemente la prioridad del mensaje. O incluso si las diferentes CAN se conectaran entre sí. ¿Es solo una cuestión de necesidad y gasto que estén separados?
Moeman69
@ Moeman69 Sí. Podría haber más de cien nodos diferentes en un automóvil. Equiparlos a todos con CAN de alta velocidad sería un costo prohibitivo. También congestionaría el bus y daría muchos más puntos de falla en el sistema crítico.
vini_i
2

Una de las razones se resume muy bien en esta caricatura de 2003:

ingrese la descripción de la imagen aquí

("Nuevo dispositivo encontrado: Airbus A310. ¿Iniciar configuración automática? [Inicio] [Cancelar]")

Ataques similares han sido reportados recientemente. Tener los componentes críticos de seguridad en un bus separado al que solo se puede acceder a través de una puerta de enlace bien configurada reduce en gran medida la probabilidad de problemas inadvertidos como el anterior, y hace que la piratería sea mucho más difícil.

Peter - Restablece a Monica
fuente