How many resistor on CAN Bus?

Hi,

I'm working with a CAN bus based on CANOPEN protocol. My bus lenght is about 200m and the speed is 250Kb/s. I have 10 nodes on this bus, the master is at one end of the bus, on the other end I've got the resistance of 120 Ohm. The system works in a curious mode. Sometimes the master receives messages with RTR bit at 1, when it should be 0, for example in SDO messages, and sometimes not. Even if I reduce the speed at 125, the same thing happens! So, I don't think is a speed problem. I made a test, and it works: if I put a resistance also on the second last node, I do not receive unexpected RTR bit at 1, and the bus works correctly from the first to the last node. Can somebody explain this to me?

Giulia

Reply to
ciani.giulia
Loading thread data ...

Your wiring isn't the impedance you think it is, or you don't have resistors at each end of the line???

Reply to
James Beck

I know nothing about the CAN bus, but 120 ohms seems a highly peculiar line termination value. 70, or 100 ohms is more likely. Check it. Do you have both ends of the bus terminated?

--
 Chuck F (cbfalconer at maineline dot net)
   Available for consulting/temporary embedded and systems.
Reply to
CBFalconer

There are three distinct issues.

  1. CAN must be terminated at each end of the main bus.

  1. There is a maximum stub length to each device.

  2. The controller does not sit at the 'end' of the bus in a multidrop system.

Violate any of the above and your CAN bus may not operate as advertised. The max speed depends on the length of the system.

Cheers

PeteS

Reply to
PeteS

That's the usual termination value. The original description appears to be of a bus with only a single terminator.

It's also worth noting that there is no master on a CAN bus.

Robert

--
Posted via a free Usenet account from http://www.teranews.com
Reply to
Robert Adsett

There should be a resistor at BOTH ends of the bus.

Meindert

Reply to
Meindert Sprang

This morning I insert a resistor at the other side of the bus, near the master, and it works! Thank you!

Reply to
ciani.giulia

That's nastily close to the absolute maximum of 250m at that bit rate. It's right on the rule-of-thumb limit of 50e6 (m*bit)/s. You will have to be quite careful about cabling, transceivers and oscillator tolerances to make that work reliably.

There is no such thing as "the" master on a CAN bus. CAN is a multi-master bus.

Bad. Stretching the bus length this close to the limit, you absolutely need terminators at both ends.

Reply to
Hans-Bernhard Bröker

In the original post Giulia mentioned that she is using CANopen on top of CAN, CANopen has an master. It is called Network Management (NMT) master. It's only a a logical behavior, of course no influence of the physical and Data Link Layer protocol as such.

Heinz

Reply to
Heinz-Jürgen Oertel

Ah, Missed that.

Robert

--
Posted via a free Usenet account from http://www.teranews.com
Reply to
Robert Adsett

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.