www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik CAN die Dritte


Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!
Ich habe noch immer nicht rausbekommen, woher der CAN seinen Ground
bezieht. In den allgemeinen Beschreibungen, die sich irgendwie alle
gleich lesen, steht, es wird ein gnd benötigt, in den
Bedienungsanleitungen der Treiberhersteller ist aber keiner drin oder
ist nicht angeschlossen. Andererseits sind sind die gegenläufigen
Scope-Signale die in den techn. Dokus zu sehen sind, ohne Ground nicht
zu machen, obschon gnd bei den Anschlüssen der Meßtechnik nicht
berücksichtigt ist. Wenn ich auf einer Stecke von 6,3 km alle Systeme
mit einem gemeinsamen GND verbinde hole ch mir doch unvorhersehbare
Störungen ins System?!
Veileicht kann ja mal jemand mit CAN-Erfahrung aus dem Nähkästchen
plaudern...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Standardschaltung in Industriesteuerungen ist eigentlich, daß alle
Teilnehmer über Optokoppler am Bus hängen und der GND des Busses nur an
einer Stelle geerdet ist.

So machen wir es bei unseren Geräten auch.


Peter

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@peter
Über Optokoppler? Schluck! Wie geht das denn? Könntest Du mir bitte
eine kurze Skizze posten, wie das mit den Optokopplern gemeint ist?
Der GND an einer Stelle geerdet ist klar, allerdings hätte ich da
Befürchtungen, dass mir bei der Leitungslänge irre Störungen auf der
Leitung auftreten. Was ich aber mit dem GND garnicht verstehe ist, wo
er angeschlossen wird? In den Beschreibungen steht GND aber der einzige
Dritte Leiter, den ich überhaupt in einer Bustreiberbeschreibung
(Infinion) gefunden habe, war ein VCC und der war noch nicht mal am
Bustreiber angechlossen.
Oder könnte es ein, dass mit GND ein einseitig geerdeter Schirm gemeint
ist?

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Super! Danke Dir.
Teufel ist das kompliziert.
Jetzt wird aber einiges klarer. Der CAN-Bus bekommt seine eigene
Spannungsversorgung und hat somit auch seinen eigenen GND.
Ich habe mir einen SN65HVD230 als Bustreiber rausgesucht der eigentlich
bis 16kV spannungsfest ist. Denkst Du ich kann unter diesen Umständen
auf die galvanische Trennung verzichten?
tex

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nur mal am Rande, falls es jemanden interessiert.
Ich habe zwar noch kein praktisches Ergebnis vorzuliegen, aber nach
Allem was ich bisher an Infos zusammengetragen habe, braucht man nur 2
Adern für den CAN-Bus. Kein GND, aber ein geerdeter Schirm ist von
Vorteil.
Die neueren Bustreiber kommen offenbar ohne die galvanische Trennung
via Optokoppler aus.

Autor: xyz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi @All,

Man nehme ein Multimeter und messe zwischen Can_l und Can_h - man
bekommt ein Ergebnis.

Nur der Treiberbaustein will das definiertes futtern!!
Deswegen CAN_GND

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@xyz
Du redest von GND am Treiberbaustein, also der Versorgungsspannung am
Treiber??
Wenn nicht, werd doch noch mal etwas genauer, bitte.

Autor: xyz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
JA Genau!!

Denn der eine Referenzpunkt der Schaltung, muß nicht gleich dem anderen
entsprechen!

Beispiel:

Wir haben ein Netzteil, welches 10V und 5V liefert! wenn ich jetz die
5V als GND nehme und 10Volt als +5Volt habe ich ja ein 5Volt Netzteil!

Aber bei einem echten welches echt auf GND und ich die beiden
Echten-GND's verbinde habe ich 10 Volt! Hmm - Ich es jetzt klar???

Deswegen Optische trennung und versorgung der Treiber über ein Netzteil
welches dann für alles was mit CAN arbeitet zuständig ist!

Hmm - ich hoffe ich habe es verstänhlich erklährt!?

LG
xyz

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na das ist schon klar. Das ich einen GND für den CAN-Bus brauche ist
auch klar, wenn ich eine separate Spannung für die CAN-Treiber über den
BUS zur Verfügung stelle. Aber warum die galvanische trennung und die
Versorgung über den Bus? Fällt mein Bus-Spannungsnetzteil aus ist die
ganze Busgeschichte ausser Betrieb. Die Treiber haben eine
Spannungsfestigkeit von 16kV. Wenn mir 16kV in die Leitung hauen, hab
ich mehr Problem als einen kaputten Bustreiber?
Wenn ich also jeden Bustreiber aus der Spannung des uC Boards versorge,
kann ich keinen GND mehr haben, weil jedes Board seinen eigenen GND
mitbringt?

Autor: xyz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Tex,


nächstes Schlagwort Brummmschleife!!!

Achja, und die 16kV werden durch die optische trennung im Bus
gehalten!! Deine Sensieblen Geräte am ADC von einer dezentralisierten
SPS haben es überlebt!! Wenn nicht Optisch iso. dann möchte ich nicht
wissen was noch alles im arsch währe!?

LG
xyz

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine letzte SPS ist schon ne Weile her und analoge Eingänge hatte die
auch nicht. Wenn ich das so lese, dann schreibt ihr mir, das die 16kV
Isolierung durch die Optokoppler erreicht werden. In den
Treiberbeschreibungen steht aber, das die Treiber bis 16kV isolieren?
Ja watt denn nu?

Autor: mmerten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Treiber ist nur bis 16 kV ESD fest, maximal verkraftet er kurzzeitig
noch +-25 Volt für ein paar µs mit begrenztem Strom. Also ohne
Optokoppler und vollständige galvanische Trennung sind wäre mir das
Risiko für Schäden an den dahinterliegen Schaltungen in rauher
Industrieumgebung viel zu gross. Im Vergleich zu den eh erforderlichen
Schutzmaßnahmen gegen Überspannung fällrn zusätzliche Optokoppler kaum
noch ins Gewicht und erhöhen die Betriebssicherheit beträchtlich.
Ebenso kriegt man so das Problem der Potentialdifferenzen sicher in den
Griff.

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist eine gesunde Einstellung aber das Layot ist schon fertig und ich
kann jetzt nicht nochmal vom Anfang anfangen. Ich werde für die Rev2
darüber nachdenken.

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

für einfach Geräte ist eine galvanische Trennung überflüssig. Ich würde
sie also nur "einbauen", wenn sie im konkreten Fall auch wirklich
benötigt wird, denn die galvanische Trennung ist nicht gerade billig.
Pro CAN-Kanal kannst du ganz grob mit ca. 20 Euro Mehrkosten rechnen
(DC-DC Wandler, schnelle Optokoppler, evtl. noch einen Spannungsregler,
Kleinteile etc.). Das kann im Vergleich zur restlichen Hardware ganz
schön viel sein. Dazu kommt noch, daß du ca. 3mm isolierung um die
galvanische Inseln vorsehen musst. Das und die zusätzlichen Bauteile
vergrößern unter Umständen Deine Platine, was zu  noch höheren Kosten
führt.
Der Sinn der galvanischen Trennung besteht darin, die Hardware
"dahinter" vollkommen elektrisch vom CAN-Bus zu trennen. Es ist also
nicht nur mit Optokopplern getan, sondern die Stromversorgung der
Optokoppler/Treiber muß/sollte ebenfalls galvanisch getrennt werden
(DC-DC Wandler). Wenn deine Hardware in der Industrie verwendet werden
soll, dann wirst du um die galvanische Trennung nicht herum kommen,
ansonsten ist deine Hardware nämlich uninteressant. Für "einfache"
Anwendungen ist es unter Umständen rausgeschmissenes Geld.
Für den reinen CAN Betrieb ist die galvanische Trennung jedenfalls
nicht notwendig. Dazu genügen die beiden Leitung CANL und CANH (oder
nur eine Leitung mit entsprechendem Treiber).
Wenn es in Deiner Anwendung keine rieseigen Potentialunterschiede gibt,
solltest du keine Probleme bekommen. Aber das musst Du selbst
entscheiden ;)

Gruß,
 Klaus

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kleiner Nachtrag noch:

Der DC-DC Wandler ist nicht erforderlich, wenn deine "galvanische
Insel"  von aussen verorgt wird. Wichtig ist nur, daß keine
elektrische Verbindung zum Rest deiner Hardware besteht.
Willst du aber auch die Stromversorgung in deiner Hardware haben, dann
kommst du um einen DC-DC Wandler nicht herum (das würde ich bevorzugen,
auch wenns teurer ist).

Gruß,
 Klaus

Autor: mmerten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@klaus
Warum DC/DC Wandler ist nur eine Möglichkeit. Spannungsversorgung
(Netzteil) mit mehreren galvanisch getrennten Ausgängen ist auch ne
Möglichkeit. Kommt immer auf das Gesamtkonzept des Gerätes und der
Platzverhältnisse an. Im Bereich Industrie-Elektronik gibt`s ja da auch
einschlägige Vorschriften was z.B. Isolation, Luft- und Kriechstrecken
und Störsicherheit angeht. Ging ja hier um ein CAN System über 6,3 km.
Für einfache Systeme in "sauberer" Büroumgebung kann man sich die
galvanische Trennung mit Sicherheit sparen.

Autor: peter dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Spanungsfestigkeit des Treibers ist irrelevant.

Du willst doch, das auch Daten übertragen werden und das geht bei den
meisten Treibern nur, wenn zwischen den einzelnen GND nur max +/-5V
Unterschied sind.

Bei 10..100m dürfte das auch kein Problem sein, aber bei 6300m würde
ich das als illusorisch einstufen.

Bei 6300m sollte mindestens eine Seite mit Optokopplern getrennt sein.

Die 2-adrige Verbindung reicht in der Tat aus, allerdings dürfte die
Störempfindlichkeit mit GND-Leitung wesentlich geringer sein.

Wir benutzen einen 5-adrigen Anschluß, ähnlich Devicenet. Kleinere
Geräte werden dann mit aus den 24V versorgt, benötigen also kein
eigenes Netzteil.


Peter

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da werden wir das Layout in Rev2 wohl noch mal überarbeiten müssen. Die
Nummer mit den DCDC-Kopplern ist wohl nicht die prickelndste, schon
wegen der Kosten nicht. Wer will schon in Umweltprojekte investieren?
Wenn der bus extern gespeist wird ist er natürlich tot, wenn das
Netzteil den Geist aufgibt. Ich werd mir das mal mit meiner jetzigen
Technik anschauen und mal versuchen ein Can-Zeichen zu übertrgen. Wenn
ich dann den CAN-Bus hinbekommen habe mache ich mir nochmal Gedanken
zur Galvanischen Entkopplung. Wenn ich schon einen
Schnittstellentreiber dran habe, kann ich dann nochmal mit der
galvanisch getrennten Stufe nach Peter an das System ran? Also
praktisch ein zweimal getriebener Can-Bus?

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vergiss nicht, wenn du ein "Can-Zeichen" übertragen möchtest, daß du
nur ne handvoll kbits/s übertragen können wirst. Also nicht
grössenwahnsinnig werden :-)


Ich weiss nicht, ob ich dich richtig verstanden habe, was das "kann
ich dann nochmal mit der
galvanisch getrennten Stufe nach Peter an das System ran?" betrifft.

Meinst Du damit, daß ein Controller mit zwei Transceivern verbunden
ist? Oder meinst Du damit, daß drei Teilnehmer am CAN-Bus hängen
sollen?

Klaus

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na ich werde mal versuchen den Wahnsinn in Worte zu fassen.
Ich habe jetzt einen 90CAN128 und an den CAN - Ports einen SN65HVD230D
als Treber (also wie in den Schaltungsvorgaben des Manuals). Somit
sollten sich zumindest kurze Strecken problemlos über 2 Drähte meistern
lassen.
Wenn ich nun an die 6,3 km gehe und feststelle, dass die Störungen zu
groß werden ...
Kann ich dann an die beiden Ausgänge meines SN65HVD230 die galvanisch
getrennte Endstufe aus Peters posting dranhängen? Klar, der SN65HVD230
- Treiber der direkt hinter meinem 90CAN128 kommt, ist dann ein
bisschen sinnlos, aber ich müßte das Layout nicht nochmal ändern. Der
Aufbau wäre dann also nicht uC -> Optokoppler -> CAN-Treiber -> Bus,
sondern uC -> CAN-Treiber -> Optokoppler -> CAN-Treiber -> Bus.

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke, daß du damit mehr Erfolg haben wirst:

 -----------------
|µC -> CAN-Treiber| -> CAN-Treiber -> Optokoppler -> CAN-Treiber ->
Bus.
 -----------------
^^^^^^^^^^^^^^^^^^
Deine Hardware


Gruß,
 Klaus

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ups. Wozu dient der Can-Treiber nach dem Can-Treiber?

Autor: Klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst den Optokoppler nicht mit CANH und CANL füttern und das
Ergebnis an die TXD und RXD Pins des nachfolgenden Optokoppler
weitergeben, denn was aus dem Treiber kommt, ist ein differtielles
Signal, während die Eingänge des Treibers etwas digitales ("1" und
"0") wollen.

Der CAN Treiber nach dem CAN-Treiber wandelt also das differentielle
Signal in etwas um, was der nachfolgende Treiber (der nach dem
Optokoppler) dann auch verstehen kann.

Ausserdem ist CANL und CANH (also beide zusammen) zum senden und
empfangen...da hättest du mit Optokopplern ganz schön zu kämpfen ;)

Gruß,
 Klaus

Autor: tex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem differentiellen Signal ist mir aufgefallen, als ich den
letzten Kommentar geschrieben habe.
Ich hab nur gerade wegen des Treibers auf dem Schlauch gestanden, aber
der funktioniert ja in beiden Richtungen. Alles klar. Danke Dir.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.