Resistencias de transmisión y terminación CAN

He estado intentando configurar una red CAN usando microcontroladores PIC18F25K80 y un MCP2551 para comunicarme entre ellos. ¿Puedo usar dos cables simples como un bus CAN simplemente conectando el CANL, CANH de los transceptores? ¡Ni siquiera podía transmitir datos con la configuración que hice con dos cables! ¿Debo terminar con alguna resistencia?

Intente usar par trenzado y preferiblemente par trenzado apantallado
Si la longitud del bus es pequeña, podría funcionar, pero siempre es mejor tener una terminación.
@Swanand: No. Terminar la línea es solo una parte del propósito de las resistencias. La otra parte es asegurar el estado pasivo del bus. En este sentido, son como la resistencia pull-up de un bus de colector abierto. Sin la resistencia, el estado pasivo no está definido.

Respuestas (2)

Existe la suposición de un 0V común entre los dos circuitos, o al menos una diferencia entre los 0V de los circuitos dentro del voltaje de diferencia de modo común.

Para una transmisión CAN correcta, necesita

  • cableado continuo entre los dos nodos, CANH a CANH y CANL a CANL. No cruzado, no cortocircuitado, no circuito abierto. El par trenzado no es absolutamente necesario con velocidades de datos más bajas/cables muy cortos, por ejemplo, unos pocos cm a 50 kbaudios en el laboratorio.
  • al menos una resistencia de terminación, no funcionará en absoluto sin una. A medida que aumentan las velocidades de datos/longitud de los cables, debería tener uno en cada extremo, del valor correcto, 120R.
  • al menos un receptor funcionando a la misma velocidad de datos (y otros tiempos de bits) para enviar el pulso ACK; de lo contrario, obtendrá repeticiones infinitas del transmisor del primer mensaje.
  • referencia común de 0V entre todos los nodos
Descubrí que un 0v común es muy importante para velocidades más altas. En un sistema que teníamos, una diferencia de GND de solo 0.3v entre los notados fue suficiente para causar una cantidad significativa de errores de mensajes. Reducir esa diferencia agregando cables más gruesos redujo la cantidad de errores.

El bus CAN requiere una terminación con 120 ohmios.

Ingrese la descripción de la imagen aquí

Utilizo el método de terminación dividida, con un condensador de cerámica bajo (10 nF) en el pin Vref del último dispositivo del bus. Es el pin 5 en el MCP2551 .

La terminación dividida con capacitor a tierra está bien, pero conectar ese capacitor a Vref del MCP2551 no tiene sentido. Está buscando una tierra de CA. En el mejor de los casos, es una fuente de voltaje y funcionará tan bien como una conexión a tierra real, pero ese pin tiene una capacidad de corriente limitada y no está diseñado para absorber transitorios.
Conecta el medio de la división al Vref y el condensador del medio a GND.
Dejé el pin Vref desconectado y usé una terminación estándar con una resolución de 120 ohmios, pero aún no pude comunicarme entre las placas.