View Single Post
  #14   Spotlight this post!  
Unread 27-09-2016, 10:42
philso philso is offline
Mentor
FRC #2587
 
Join Date: Jan 2011
Rookie Year: 2011
Location: Houston, Tx
Posts: 938
philso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond reputephilso has a reputation beyond repute
Re: Can I branch the CAN to go to two separate places?

Quote:
Originally Posted by wireties View Post
1Mb/s but the actual throughput may vary. CANbus uses NRZ encoding and bit stuffing etc so realized throughput is usually in the 850kb/s range.

one implies the other (but not really sure what you mean by edge rate)
Where does this 1 Mbps figure come from?

Most of the CAN transceiver chips, like the ones I am using at work, are rated by their manufacturers for operation up to a maximum data-rate of 1 Mbps but that does not mean the system they are installed in are running at that data-rate.

Data-rate is a measure (bits per second) of the instantaneous rate at which the data is transmitted over the bus, when there is data. One can also measure the average data-rate taking into account the time when the bus is inactive (unused) and any error correction made necessary due to noise or other problems (resending of packets).

Edge-rate is a measure (volts per microsecond) of how fast the high-to-low and low-to-high state transitions take place. It is the high frequency energy contained in fast transitions that causes reflections. It is possible to have a CAN bus system with a low data-rate (say 1 bit per second) that has significant reflections because there are impedance mismatches AND the edge-rate is very high (the parts I am using have a spec of 35 nsec. minimum).

Once a CAN Bus system is assembled, the line lengths, actual line characteristic impedances, actual termination resistance values, impedance mismatches and actual edge-rates are what determine what the peak voltage and the duration of the reflections will be. The characteristics of the reflections will generally remain constant unless the system is changed in some way.

The CAN Bus receivers are connected to a circuit (usually incorporated in the microprocessor) that roughly synchronizes with the bit edges. The state of each bit is sampled in the middle of the bit period, often multiple times. As long as the reflections after a bit transition has died down by the middle of the bit period, the detected state of the bit will be accurate. This technique was developed a long time ago to make it easier for communication systems like CAN Bus to minimize the effects of reflections in the system.

Many of the CAN transceiver chips can be set to produce lower edge-rates, often using an external resistor. This allows the system/circuit designer to reduce the energy in the reflections (and hence their peak voltage and duration) in the system based on his/her knowledge of the length of the transmission lines (bus length), the amount of impedance mismatch expected and the maximum data-rate required.

The long and the short of it is that the CAN Bus standards were set up with the ability to tolerate some amount of reflections since the people developing the standards understood that the world is not perfect and that the systems will not be manufactured and installed perfectly. Therefore, while it is best to avoid using the star configuration since it is non-ideal, it is not "certain death" to use a star configuration or to add a branch as long as one is taking some simple precautions. Because of the inherent robustness, CAN Bus systems have found many applications outside of the original intended use in cars.

Last edited by philso : 27-09-2016 at 11:01. Reason: missed a few words
Reply With Quote