Forum: Mikrocontroller und Digitale Elektronik CAN Bus Abschlusswiderstand


von Werner (Gast)


Lesenswert?

Hi Leute,
ich habe eine kleine Platinen machen lassen, auf der (natürlich) auch 
die Abschlusswiderstände für den CAN Bus sind.
Standardmäßig habe ich 60.4 Ohm vorgesehen. Leider habe ich jetzt die 
Widerstände in der falschen Bauform bekommen. 0602 auf das 1206 Pad ist 
recht unkomfortabel.
Meine Frage ist nun, wie kritisch ist der Wert 60 Ohm? Kann ich da 
problemlos 56 oder 68 Ohm einlöten? Die hätte ich in der richtigen 
Bauform da.
Besten Dank schonmal
 Werner

von yalu (Gast)


Lesenswert?

Die Abschlusswiderstände sollten 120 Ohm haben, was in E12 enthalten
ist. Vielleicht hast du diesen Wert vorrätig.

von Werner (Gast)


Lesenswert?

Ich habe jeweils 2 Stk. 60 Ohm gegen Ground geschaltet. Aber die 120 
helfen...
Ich werde einfach 2 Parallel schalten.
War zu einfach :-)
Danke

von Gast (Gast)


Lesenswert?

Hä wie jetzt?

Es sollen 120 Ohm sein und du schaltest zei 60er parallel?

von yalu (Gast)


Lesenswert?

Zudem werden die Widerstände nicht gegen GND geschaltet, sondern
zwischen CAN-High und CAN-Low, siehe bspw. Wikipedia:

  http://upload.wikimedia.org/wikipedia/commons/9/9e/CAN-Bus_Elektrische_Zweidrahtleitung.svg

von Werner (Gast)


Lesenswert?

Ich habe jeweils von CAN High und CAN Low eine Widerstand nach CAN GND 
gemacht. Somit passt das mit den 120 Ohm schon

von dc3yc (Gast)


Lesenswert?

Werner,

das ist falsch. An jedem Ende der CAN-Leitung muss zwischen CANH und 
CANL ein 120 Ohm-Widerstand geschaltet werden. CANGnd ist nur als 
Schirmung zu gebrauchen oder zur Spannungszuführung.

Servus,
Helmut.

von Alex (Gast)


Lesenswert?

@ Werner

Du hast recht und der Rest der Poster scheint nur die 
Standardterminierungweise zu kennen.

von Kai R. (kairiek)


Lesenswert?

Hallo Werner,

kann Alex auch zustimmen. Passt so, wie du das hast.

Gruß Kai

von Andreas K. (a-k)


Lesenswert?

Wenn die Widerstände gegen CANGND laufen und diese Leitung ansonsten 
floatet, dann passt das schon. Nur sollte man dann nicht auf die Idee 
kommen, das dann noch an irgendeinem Ende mit GND eines Transceivers zu 
verbinden.

von Werner (Gast)


Lesenswert?

Ok. Dann bin ich beruhigt.
Dann vielleicht nochmal zurück zur Ursprungsfrage. Ist der Wert 
kritisch, oder kann ich vielleicht doch 56 oder 68 Ohm nehmen. Dann 
könnte ich mir das mit der parallelschaltung sparen.

von Kai R. (kairiek)


Lesenswert?

Ich hab gerade noch gelesen, dass du den Mittelabgriff der Widerstände 
nicht einfach so mit GND verbinden sollt, sondern mit einem Kondensator 
(4n7 empfohlen).

von David (Gast)


Lesenswert?

Habe die abschlusswiderstände mal vergessen... lief ohne jegliche 
probleme...

von Andreas K. (a-k)


Lesenswert?

Kai Riek wrote:

> Ich hab gerade noch gelesen, dass du den Mittelabgriff der Widerstände
> nicht einfach so mit GND verbinden sollt, sondern mit einem Kondensator
> (4n7 empfohlen).

Korrekt. Und wenn man das noch ein bischen vereinfacht und den 
Kondensator weglässt, dann sind wir bei den üblichen 120 Ohm zwischen 
CANH und CANL angelangt, und der Streit löst sich in Luft auf ;-).

von Andreas K. (a-k)


Lesenswert?

David wrote:

> Habe die abschlusswiderstände mal vergessen... lief ohne jegliche
> probleme...

Entweder mit low-speed Transceivern, oder weil die high-speed 
Transceiver intern u.U. ein paar eher hochohmige Widerstände drin haben 
(dokumentiert beispielsweise beim SN65HVD251). Wird aber nur bei 
niedrigen Bitraten und kurzem Kabel funktionieren.

von ch (Gast)


Lesenswert?

Hat schon mal jemand einen Effekt festgestellt, wenn kein 
Abschlusswiderstand vorhanden ist?

von asdf (Gast)


Lesenswert?

ch schrieb:
> Hat schon mal jemand einen Effekt festgestellt, wenn kein
> Abschlusswiderstand vorhanden ist?

Wie Andreas schon sagt, es wird (wenn überhaupt) nur bei kleiner Bitrate 
UND kurzen Buslängen funktionieren. Und auch nur dann, wenn in 
mindestens einem Transceiver integrierte, aber hochohmige Widerstände 
vorhanden sind. Auf jeden Fall ist das außerhalb jeder Spezifikation. Es 
kann gehen, muß aber nicht. Und wenn es geht, darfst du dich nicht 
beschweren, wenn du haufenweise Busfehler hast. Also sollte man nicht 
Bruchteile eines Cent für den Widerstand sparen.

von Thomas (Gast)


Lesenswert?

Der Can soll am Anfang und am Ende des Strang je 120 Ohm haben. Ob Du 
jetzt 56 und 68 -> 124 oder 2 *56 -> 112 oder 2*68 -> 136 nutzt, macht 
der CAN normalerweise mit. Probleme können bei langen Leitungen und 
hohen Bit-Raten auftreten, halte ich aber eher für unwahrscheinlich. In 
der Praxis habe ich schon oft erlebt, dass zwei Teilnehmer am gleichen 
Strang je 120 Ohm hatten und am Start des Strang auch. Trotzdem war die 
Kommunikation fehlerfrei.
Ich würde an deiner Stelle einen 56 und einen 68 Widerstand nutzen, dann 
bist Du gut unterwegs.

Gruß
Thomas

von Johannes O. (jojo_2)


Lesenswert?

Beachte bitte auch, dass Widerstände praktisch nie z.B. 120,000 Ohm 
haben. Je nach Toleranzklasse können die auch schon mal ein paar Ohm 
daneben liegen.
Ist auch gar nicht schlimm, das wird trotzdem funktionieren.

Vermutlich hast du an anderer Stelle eine viel stärkere Abweichung vom 
Optimum: Bei der Leitungsimpedanz. Denn auf diese muss der 
Abschlusswiderstand eigentlich abgestimmt sein. Eine verdrillte 
Zweidrahtleitung hat ETWA 120 Ohm.
Vermutlich ist dieser Wert für den Kabel gar nicht offiziell angegeben, 
noch weniger wirst du ihn selbst nachmessen können.

Viele Leute (und auch ich) setzen für CAN auch gerne Netzwerkkabel ein. 
Die liegen laut ihrer Spezifikation(!) bei 100 Ohm. Da hatte ich nie 
Probleme, hat stets funktioniert, obwohl es da eine Abweichung gibt.

So, nun hast du die passenden Keywords, wenn du dich einlesen willst, 
warum es genau 120 Ohm sein müssen ;-)

Kurz gesagt: Nimm irgendwas, da grob an 120 Ohm herankommt für den 
Abschlusswiderstand. Obs ein paar Ohm mehr oder weniger sind spielt 
voraussichtlich überhaupt keine Rolle.

von asdf (Gast)


Lesenswert?

Johannes O. schrieb:
> noch weniger wirst du ihn selbst nachmessen können.

Warum nicht? Eine RLC-Messbrücke reicht dafür.
Leitung offen lassen -> C zwischen den Adern messen
Leitung an einem Ende kurzschließen -> L am anderen Ende messen

Dann rechnen sqrt(L/C) (in H und F), so kommt man auf die Impedanz.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

asdf schrieb:
> Wie Andreas schon sagt, es wird (wenn überhaupt) nur bei kleiner Bitrate
> UND kurzen Buslängen funktionieren. Und auch nur dann, wenn in
> mindestens einem Transceiver integrierte, aber hochohmige Widerstände
> vorhanden sind. Auf jeden Fall ist das außerhalb jeder Spezifikation. Es
> kann gehen, muß aber nicht. Und wenn es geht, darfst du dich nicht
> beschweren, wenn du haufenweise Busfehler hast. Also sollte man nicht
> Bruchteile eines Cent für den Widerstand sparen.

 Um es richtig zu machen und innerhalb der Spezifikation zu bleiben,
 muss man die genaue Anzahl der Busteilnehmer wissen.
 Alles andere ist nur "ungefahr" und "in etwa".
 Aber es funktioniert in 99.99% der Falle.
 Und wenn es nicht funktioniert, ist es EMI oder ahnliches. Wir hatten
 mal einen Fall wo eine defekte Neonrohre das ganze Netz lahmlegte.

 Man soll es nicht ubertreiben, CAN funktioniert fast immer, auch mit
 "ungefahr" und "in etwa".
 Wikipedia-Fachmanner werden jetzt das Gegenteil behaupten, aber...

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

ch schrieb:
> Hat schon mal jemand einen Effekt festgestellt, wenn kein
> Abschlusswiderstand vorhanden ist?
Muss man dafür einen 8 Jahre alten Thread artfremd herausklauben?

Und natürlich hat schon mal jemand einen Effekt festgestellt. Den 
nämlich, dass es ohne Widerstand unter Umständen nicht oder schlecht 
geht.

Sieh dir einfach den Artikel zum Wellenwiderstand an. Dort ist auch 
die Terminierung erklärt. Und wenn man dann noch weiß, dass die 
angenommenen 120 Ohm des Kabels eben auch nur ein grober Richtwert sind, 
dann wird klar, dass es (annähernd) genauso gut mit 100 Ohm oder 150 Ohm 
gehen wird.

Oder Andersrum: wenn dein CAN-Bus mit "fehlerhaften" 150 Ohm 
Terminnierung Fehler bringt, dann hast du irgendwo noch ein Problem, das 
mit einem 120 Ohm Widerstand allein nicht behoben ist...

von asdf (Gast)


Lesenswert?

Marc V. schrieb:
> asdf schrieb:
>> Wie Andreas schon sagt, es wird (wenn überhaupt) nur bei kleiner Bitrate
>> UND kurzen Buslängen funktionieren. Und auch nur dann, wenn in
>> mindestens einem Transceiver integrierte, aber hochohmige Widerstände
>> vorhanden sind. Auf jeden Fall ist das außerhalb jeder Spezifikation. Es
>> kann gehen, muß aber nicht. Und wenn es geht, darfst du dich nicht
>> beschweren, wenn du haufenweise Busfehler hast. Also sollte man nicht
>> Bruchteile eines Cent für den Widerstand sparen.
>
>  Um es richtig zu machen und innerhalb der Spezifikation zu bleiben,
>  muss man die genaue Anzahl der Busteilnehmer wissen.
>  Alles andere ist nur "ungefahr" und "in etwa".
>  Aber es funktioniert in 99.99% der Falle.
>  Und wenn es nicht funktioniert, ist es EMI oder ahnliches. Wir hatten
>  mal einen Fall wo eine defekte Neonrohre das ganze Netz lahmlegte.
>
>  Man soll es nicht ubertreiben, CAN funktioniert fast immer, auch mit
>  "ungefahr" und "in etwa".
>  Wikipedia-Fachmanner werden jetzt das Gegenteil behaupten, aber...

Meine Antwort bezog sich auf die Frage von "ch". Was passiert, wenn der 
Bus ÜBERHAUPT NICHT abgeschlossen ist? Da würde ich nicht sagen "CAN 
funktioniert fast immer". Wenn du die ursprüngliche Frage des TO meinst, 
ob die 120R genau einzuhalten sind, gebe ich dir recht. Da kommt es auf 
ein paar Ohm nicht an. Aber ganz ohne? Das ist sehr fragwürdig.

Und was meinst du mit "muss man die genaue Anzahl der Busteilnehmer 
wissen."? Der Bus wird einmal am Anfang und einmal am Ende mit jeweils 
120R abeschlossen. Das einzige, was zu beachten ist, dass die maximale 
Anzahl Busteilnehmer nicht überschritten wird. Aber warum muss man die 
genaue Anzahl kennen? Die Busteilnehmer sind doch (bis auf den ersten 
und letzten) hochohmig. Könntest du das mal bitte erläutern?

von ch (Gast)


Lesenswert?

>Der Bus wird einmal am Anfang und einmal am Ende mit jeweils
>120R abeschlossen

Hmmm, was ist wenn der Bus T-förmit ist? Also z.B. so


device1
|
|
|
|
--------------device2
|
|
|
|
device3

Wo gehören da die beiden Widerstände hin?

von asdf (Gast)


Lesenswert?

ch schrieb:
>>Der Bus wird einmal am Anfang und einmal am Ende mit jeweils
>>120R abeschlossen
>
> Hmmm, was ist wenn der Bus T-förmit ist? Also z.B. so
> [..]
> Wo gehören da die beiden Widerstände hin?

An 1 und 3. Allerdings ist die maximale Länge einer Stichleitung (wie 
bei device2) begrenzt. Hängt von der Bitrate des Busses ab. Dafür gibts 
Tabellen in der Spezifikation.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

asdf schrieb:
> Und was meinst du mit "muss man die genaue Anzahl der Busteilnehmer
> wissen."? Der Bus wird einmal am Anfang und einmal am Ende mit jeweils
> 120R abeschlossen. Das einzige, was zu beachten ist, dass die maximale
> Anzahl Busteilnehmer nicht überschritten wird. Aber warum muss man die
> genaue Anzahl kennen? Die Busteilnehmer sind doch (bis auf den ersten
> und letzten) hochohmig. Könntest du das mal bitte erläutern?

 Ich meinte die Haarspalterei.

 Wie Lothar M. schon schrieb:
> Oder Andersrum: wenn dein CAN-Bus mit "fehlerhaften" 150 Ohm
> Terminnierung Fehler bringt, dann hast du irgendwo noch ein Problem, das
> mit einem 120 Ohm Widerstand allein nicht behoben ist...

Oder ch:
> Hmmm, was ist wenn der Bus T-förmit ist? Also z.B. so

 Also, um es ganz richtig zu machen muss man die Anzahl der Teilnehmer
 wissen und auch die genaue Topologie.
 Da das meistens unmoglich ist, wird mit "etwa" gearbeitet und das
 funktioniert meistens ohne Probleme.

: Bearbeitet durch User
von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

ch schrieb:
> Hmmm, was ist wenn der Bus T-förmit ist? Also z.B. so
>
> device1
> |
> |
> |
> |
> --------------device2
> |
> |
> |
> |
> device3
>
> Wo gehören da die beiden Widerstände hin?

 Normalerweise wird in so einem Fall die Verbindung von Device1 zur
 Device3 aufgetrennt, Device3 wird mit Device2 verbunden und die beiden
 Widerstande gehen an Device1 und Device3.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

ch schrieb:
> Hmmm, was ist wenn der Bus T-förmit ist?
So einen "Bus" mit Stichleitungen machst du besser gleich gar nicht 
(denn hastdunichtgesehen hat schon einer den "Stich" um 30m 
verlängert...), sondern wenn schon, dann so einen:
1
device1
2
|
3
|
4
|
5
|____________
6
 ____________>device2
7
|
8
|
9
|
10
|
11
device3
Dann ist auch das klar:
> Wo gehören da die beiden Widerstände hin?

: Bearbeitet durch Moderator
von asdf (Gast)


Lesenswert?

Marc V. schrieb:
>
>  Ich meinte die Haarspalterei.
Welche Haarspalterei denn? In meinen Augen ist es schon ein Unterschied, 
ob ein Teilnehmer abgeschlossen ist oder nicht.
Meine Frage war nur, wozu man die Anzahl der Teilnehmer wissen muss, 
wenn bis auf den ersten und letzten alle Teilnehmer sowieso hochohmig 
sind?
>
>  Wie Lothar M. schon schrieb:
>> Oder Andersrum: wenn dein CAN-Bus mit "fehlerhaften" 150 Ohm
>> Terminnierung Fehler bringt, dann hast du irgendwo noch ein Problem, das
>> mit einem 120 Ohm Widerstand allein nicht behoben ist...
Da stimme ich vollumfänglich zu.

von user01 (Gast)


Lesenswert?

Ich möchte eine CAN Nachricht vom einem CAN Port1 zu einem anderen CAN 
Port2 versenden und empfangen. Die beide CANPorts will ich mit einem CAN 
Kabel verbinden. Soll in diese CAN Brücke einen 120 Ohm Wiederstand 
eingeschlossen werden?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.