¿Puedo conectar un nodo CAN con 250 kbit/s a un bus CAN que funcione a 500 kbit/s?

Estoy tratando de conectar una caja de cambios automática de automóvil que usa el bus CAN a 250 kbit/s al automóvil con una velocidad de bus de 500 kbit/s.

  1. ¿Es posible tener nodos con diferentes velocidades en el bus CAN?

  2. Si no es posible tener diferentes velocidades, ¿hay alguna forma de lograr lo que quiero hacer? De todos modos, un punto de partida sería genial.

1) No. 2) Improbable.
Bueno, podría lanzar una MCU en el medio, con dos interfaces CAN (una para cada velocidad) que harían el puente.
@dim Funcionará solo si el dispositivo y el tráfico general tienen un ancho de banda bajo. De lo contrario, solo perderá paquetes.
@EugeneSh. Por supuesto. Supuse que una caja de cambios no envía/recibe comandos a una velocidad alta, lo que puede estar mal. Además, incluso si OP logra hacer que esa parte funcione, no estoy seguro de que pueda cambiar las partes del automóvil de esa manera con la esperanza de que cada nodo en la red CAN aún se comunique felizmente entre sí y con el nuevo hardware.
@dim, ¿entonces no es posible hacer eso? Me encantaría probar cualquier producto comercial o de código abierto si lo conoce, el costo no importa aquí. Gracias
@Dmitry Grigoryev, he leído esa publicación que trata sobre la conexión de una lata de alta velocidad a un autobús de baja velocidad, que es lo opuesto a lo que estoy tratando de hacer.
@sDev Bueno, puedo estar equivocado porque, aunque sé CAN, no sé cómo lo usan en un automóvil. Pero CAN especifica las capas inferiores del protocolo, pero no existe un estándar que indique qué tramas se envían cuando, por ejemplo, se produce el cambio de marcha. Entonces, si coloca una caja de cambios que proviene de otra marca / modelo de automóvil, ciertamente no funcionará mejor que simplemente no conectarle el bus CAN. Necesitaría que todo el automóvil sea de código abierto (y la caja de cambios) para solucionarlo.

Respuestas (1)

El protocolo CAN básico no admite nodos que se ejecutan a diferentes velocidades de bits:

La velocidad de CAN puede ser diferente en diferentes sistemas. Sin embargo, en un sistema dado, la tasa de bits es uniforme y fija.

La versión más nueva del protocolo, llamada CAN FD , brinda soporte para velocidad de datos flexible, como sugiere su nombre. El hardware CAN heredado es compatible con las redes CAN FD, sin embargo, todavía tiene que ejecutarse a una tasa de bits fija determinada.

Creo que tu única opción es comprar un enrutador. Aquí hay un ejemplo de un enrutador CAN que admite 4 canales con configuración de tasa de bits independiente.

Gracias por la información, voy a comprar uno cuando esté disponible.
@sDev Le aconsejo que busque un enrutador por su cuenta, puede terminar encontrando un producto más adecuado y/o más barato, disponible de inmediato. Literalmente escribí "can router" en el cuadro de búsqueda e hice clic en el primer enlace relevante, solo para mostrarles cómo se ven esos enrutadores. Tómese su tiempo, compare, lea las especificaciones antes de pagar $700 por él.
Me temo que está perdiendo el tiempo. Si tiene una tasa de bits diferente, es probable que la información no sea compatible, ya que el producto está diseñado para una red diferente. Incluso si pones una puerta de enlace propuesta corrigiendo la velocidad... los mensajes probablemente no tendrán sentido y no funcionarán.