Forum: Mikrocontroller und Digitale Elektronik CAN - High-Speed to Low-Speed


von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hallo zusammen!

Ich möchte ein Gerät, welches einen Low-Speed-CAN erwartet an einen 
High-Speed CAN-Bus anschließen.

Die übertragungsraten beider Busse liegen bei 50kbit/s.

Nun ist meine Frage, ob ich eine Art "Brücke" dazwischen hängen kann. 
Diese Brücke besteht im Idealfall nur aus zwei CAN-Transceivern (1x 
High-Speed, 1x Low-Speed) die miteinander verbunden sind (siehe 
Abbildung).

Kann man auf diese Art und Weise zwei CAN-Busse miteinander verbinden?

Über Tipps & Anregungen würde ich mich sehr freuen!

Gruß,
Alex

von (prx) A. K. (prx)


Lesenswert?

Alex Bürgel schrieb:

> Kann man auf diese Art und Weise zwei CAN-Busse miteinander verbinden?

Nein.

Gleiches Problem wie bei den immer wieder auftauchenden Ideen eines 
CAN-Bus Repeaters. Die Transceiver nageln "dominant" aufgrund positiver 
Rückkopplung fest und speichern diesen Zustand unbegrenzt.

von Sebi (Gast)


Lesenswert?

Warum verwendet man einen Highspeed-CAN und einen Lowspeed-CAN bei der 
gleichen Datenrate?

von Fabian B. (fabs)


Lesenswert?

Wenn beide 2-Draht-CAN benutzen solltest du sie einfach direkt koppeln 
können.

Gruß
Fabian

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

Hallo Fabian,

>Wenn beide 2-Draht-CAN benutzen solltest du sie einfach direkt koppeln
>können.

Hast du vielleicht "zuverlässige" Quellen dafür?

In der Tat ist es so, dass wir die beiden Geräte aus "Unwissenheit" 
miteinander verbunden haben und sie sich auch gegenseitig verstehen. Es 
kam uns nur als "unsaubere" Lösung vor, da wir nicht wirklich wissen, 
warum es klappt...

von Sebi (Gast)


Lesenswert?

Warum unsauber? Lowspeed oder Highspeed sagt ja nur was über die 
Geschwindigkeit aus. Wenn beide vom gleichen Typen sind z. Bsp. 2.0A 
dann sind die Frames gleich und dann sollte es auch keine Probleme 
geben. Aber ich verstehe noch immer nicht, warum man einen Highspeed-CAN 
mit 50 KBit/s nutzt. Der wird normalerweise mit 500 kBit/ oder 1 MBit/s 
genutzt.

von TestX .. (xaos)


Lesenswert?

Alex Bürgel schrieb:
> Hallo Fabian,
>
>>Wenn beide 2-Draht-CAN benutzen solltest du sie einfach direkt koppeln
>>können.
>
> Hast du vielleicht "zuverlässige" Quellen dafür?
>
> In der Tat ist es so, dass wir die beiden Geräte aus "Unwissenheit"
> miteinander verbunden haben und sie sich auch gegenseitig verstehen. Es
> kam uns nur als "unsaubere" Lösung vor, da wir nicht wirklich wissen,
> warum es klappt...

bei 2 geräten und gleicher baud ist das kein problem...
bei lowspeed wird jedes gerät terminiert, bei highspeed nur anfang und 
ende des busses.
da ihr aber eher ne direkt verbindung habt ist das kein problem. ihr 
solltet den bus aber auf jedenfall beim highspeed gerät mit 120ohm 
terminieren.

http://digital.ni.com/public.nsf/allkb/84210794086E9C0886256C1C006BE6AE

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

>Lowspeed oder Highspeed sagt ja nur was über die
>Geschwindigkeit aus.

Das ist meines Wissens nach nicht richtig. Zumal sich die 
Übertragungsraten wohl überschneiden:

Meines Wissens nach ist:

0 - 125kbit/s   = Low-Speed
40 - 1000kbit/s = High-Speed

Low-Speed = keine Terminierung (?)
High-Speed = Terminierung von 2x 120 Ohm an beiden Enden

Low-Speed funktioniert auch noch, wenn eine der beiden Leitungen 
durchtrennt wird. High-Speed nicht.

Das sind alles Angaben ohne Gewähr...

von Fabian B. (fabs)


Lesenswert?

Es ist ja so, dass CAN-HighSpeed und -LowSpeed sich primär in der 
maximal zulässigen Bitrate unterscheiden: 125kBit für LS und 1Mbit für 
HS. Ausserdem hat der LS noch den FailSafe-Betrieb mit nur einem Kabel 
(also nichtdifferentielle Übertragung).
Wobei die offizielle CAN-Spec von Bosch diese Unterscheidung zwischen HS 
und LS gar nicht kennt.
Solange also die Nutzungsparameter (Bitrate, Übertragungsweg, usw.) 
bekannt und identisch sind geht das. Die PHY-Spezifikation von CAN ist 
eh sehr vage und lässt viele Freiheiten, das Protokoll mit Arbitrierung 
usw. ist aber für LS und HS identisch.

edit: die Terminierung würde ich trotzdem High-Speed-Typisch mit 2x120R 
vorsehen. Es schadet nix.

Gruß
Fabian

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

@Andi (xaos)

Den Link, den du gepostet hast, habe ich auch gefunden. Dort steht 
(leider):

>Note: Due to the different types of termination, one cannot use
>high speed and low speed/fault tolerant CAN devices in the same
> network.

von Fabian B. (fabs)


Lesenswert?

Du kannst keine individuell terminierten LS-Geräte in ein HS-Netz 
einbinden ohne Probleme zu bekommen, das ist richtig. Aber bei 50kBit 
könntest du sogar auf eine Terminierung verzichten, wenn die 
Leitungslänge klein ist...
Trotzdem funktioniert ein LS-Gerät ohne individuelle Terminierung in 
einem korrekt terminierten HS-Netz einwandfrei, sofern 
Zweidraht-Übertragung genutzt wird (also der LS-Transceiver nicht nur 
Eindraht-Ü unterstützt). Die Terminierung soll ja nur Reflexionen auf 
dem Bus unterbinden.
Selbst ein HS-Netz ohne Terminierung funktionert bei kurzen Leitungen 
und 250kBit noch einwandfrei (getestet).

Wie gesagt, falls du den FailSafe-Modus (Rückfall auf eine unipolare 
Leitung) nicht benötigst und korrekt nach HS-Manier terminierst, 
funktioniert das.

Gruß
Fabian

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

>Selbst ein HS-Netz ohne Terminierung funktionert bei kurzen Leitungen
>und 250kBit noch einwandfrei (getestet).

Das kann ich bestätigen ;-)

Und wie gesagt, die beiden Geräte kommunizieren auch problemlos 
miteinander, nur war mir bisher nicht klar, warum...

Dann werde ich es wohl einfach so belassen... Vielen Dank!

von Sebi (Gast)


Lesenswert?

Stimmt die CAN-Spec unterscheidet nicht zwischen Highspeed und Lowspeed. 
Ich muss mich korrigieren. Wir nutzen halt den Highspeed mit einer 
Datenrate von 500 kBit/s im Bereich Motorsteuergerät und ich kenne 
gerade keine Highspeed Anwendung darunter aber es ist möglich, dass es 
sie gibt.

von TestX .. (xaos)


Lesenswert?

Fabian B. schrieb:
> Wie gesagt, falls du den FailSafe-Modus (Rückfall auf eine unipolare
> Leitung) nicht benötigst und korrekt nach HS-Manier terminierst,
> funktioniert das.

exakt. solange es nur 2 geräte sind geht das ganze problemlos. das HS 
gert trotzdem mit 120ohm terminieren :D
wenn das ganze in einem can bus!!! (n geräte) hängt ist es was anderes..

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.