CAN Resistencias de transmisión y terminación

8

He estado tratando de configurar una red CAN utilizando 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 algo de resistencia?

Arun Shekhar R
fuente
Trate de usar par trenzado y preferiblemente apantallado de par trenzado
Andy aka
Si la longitud del bus es pequeña, entonces podría funcionar, pero siempre es mejor tener una terminación.
Swanand
2
@Swanand: No. Terminar la línea es solo una parte del propósito de las resistencias. La otra parte es garantizar el estado pasivo del autobús. En este sentido, son como la resistencia pullup de un bus colector abierto. Sin la resistencia, el estado pasivo no está definido.
Olin Lathrop

Respuestas:

5

Se supone 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 en cortocircuito, no circuito abierto. El par trenzado no es absolutamente necesario a velocidades de datos más bajas / cables muy cortos, por ejemplo, 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 / longitudes de cable, realmente debe 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 0 V entre todos los nodos
Martín
fuente
He descubierto 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 lo observado fue suficiente para causar un número significativo de errores de mensaje. La reducción de esa diferencia al agregar cables más gruesos redujo el número de errores.
Rocketmagnet
5

El bus CAN requiere terminar con 120 ohmios.

Ingrese la descripción de la imagen aquí

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

raaymaan
fuente
1
La terminación dividida con capacitor a tierra está bien, pero conectar ese capacitor a Vref del MCP2551 no tiene sentido. Estás buscando una tierra de CA. En el mejor de los casos, es una fuente de voltaje y funcionará tan bien como la tierra real, pero ese pin tiene una capacidad de corriente limitada y no está destinado a absorber transitorios.
Olin Lathrop
2
Adjunta el medio de la división al Vref, y el condensador del medio a GND.
Rocketmagnet
Dejé el pin Vref desconectado, y usé la terminación estándar usando 120ohm res, pero aún no podía comunicarme entre las placas.
Arun Shekhar R