Hallo, bzgl. dem Abschlusswiderstand beim CANbus bin ich mir nicht ganz sicher. Der Master-Controller (RPi + PiCAN2-Shield) hat 120 Ohm. Am Bus sind min. 2 Sensoren (Slaves), welche keinen integrierten Abschlusswiderstand besitzen. Benötige ich hier einen weiteren Abschlusswiderstand (120 Ohm) am "Ende" der CANbus Leitung? Also am weitesten entfernen Sensor bzgl. dem Master. Als Kabel benutze ich: https://www.phoenixcontact.com/online/portal/us/?uri=pxc-oc-itemdetail:pid=1507560&library=usen&pcck=P-10-01-01&tab=1&selectedCategory=ALL Danke.
suprL schrieb: > Benötige ich hier einen weiteren Abschlusswiderstand (120 Ohm) am "Ende" > der CANbus Leitung? Ja
suprL schrieb: > Benötige ich hier einen weiteren Abschlusswiderstand (120 Ohm) am "Ende" > der CANbus Leitung? Ja! Bedenke dass der auch entsprechend Leistung abkönnen muss! Also bei 1MBit ca 10Watt. Bei 2MBit ca 20 (besser 25) Watt.
suprL schrieb: > Nur einen am Ende oder für jeden Sensor einzeln? An jedem Leitungsende des Bus einen
suprL schrieb: > Nur einen am Ende oder für jeden Sensor einzeln? Der CAN-Bus hat nur zwei Enden. An jedes Ende kommt einer. (s. z.B. Controller Area Network Physical Layer Requirements, TI Application Report SLLA270 im Kap. 4.5.1 Standard Termination) https://www.ti.com/lit/an/slla270/slla270.pdf
suprL schrieb: > bzgl. dem Abschlusswiderstand beim CANbus Es heisst: bzgl. des Abschlusswiderstandes suprL schrieb: > Also am weitesten entfernen Sensor bzgl. dem Master. Es heisst: bzgl. des Masters Bedauernswerter Genitiv!
Route 6. schrieb: > Bedauernswerter Genitiv! Du bist aber spitzfindig. Sei lieber froh, das "Widerstand" richtig geschrieben ist ;-)
anbei eine Skizze meines Aufbaus. Oben: ohne 120Ohm Abschlusswiderstand am Ende. Unten: wäre mit 120Ohm. Das zusätzliche T-Stück mit Abschlusswiderstand ist also notwendig? Ein "offenes" Ende habe ich ja eigentlich nicht...
An beiden Enden jeweils 120 Ohm. Die Sensoren selbst benötigen keinen Abschlusswiderstand. Die Stichleitung zum Bus sollte aber möglichst kurz sein.
suprL schrieb: > anbei eine Skizze meines Aufbaus. > > Oben: ohne 120Ohm Abschlusswiderstand am Ende. > Unten: wäre mit 120Ohm. > > Das zusätzliche T-Stück mit Abschlusswiderstand ist also notwendig? > Ein "offenes" Ende habe ich ja eigentlich nicht... Entweder 120 Ohm am T-Stück oder 120 im Sensor 2. Bei keinem von beidem ist der Bus am Ende dennoch offen.
MaWin schrieb: > suprL schrieb: >> Benötige ich hier einen weiteren Abschlusswiderstand (120 Ohm) am "Ende" >> der CANbus Leitung? > > Ja! Bedenke dass der auch entsprechend Leistung abkönnen muss! Also bei > 1MBit ca 10Watt. Bei 2MBit ca 20 (besser 25) Watt. auf diesen entzückenden Blödsinn muß man auch erst einmal kommen :-) Danke für die Anregung!
Die Stichleitung ist max. 1 Meter. Also Variante 2 mit 120 Ohm am letzten T-Stück ist richtig. Danke. Beide Sensoren senden mit Event-Timer = 1ms. Baudrate ist auf 500ksps eingestellt. ID: 2 und 3. Mein eigentliches Problem ist, dass Sensor 1 nach einer Weile nicht mehr z.B. über das CANopen Protokoll ansprechbar ist und auch keine Messwerte sendet. Sprich "tot" ist. Die Sensoren werden bei jeder Messung vom Zustand "Stop" in den Zustand "Operational" (paar Sekunden) und wieder in "Stop" geschaltet. Diese Routine ca. alle Stunde 1x. Die Abschlusswiderstände sollten passen (Variante 2 im Bild oben) Jemand eine Idee an was es sonst liegen könnte?
P. S. schrieb: > Die Stichleitung zum Bus sollte aber möglichst kurz sein. Unfug. Die muss nur so kurz sein, dass es bei der verwendeten Übertragungsrate keine Probleme gibt. Bei NMEA2000 (250 kbit/s) darf eine Stichleitung z.B. 6m lang sein
Wolfgang schrieb: > P. S. schrieb: >> Die Stichleitung zum Bus sollte aber möglichst kurz sein. > > Unfug. > > Die muss nur so kurz sein, dass es bei der verwendeten Übertragungsrate > keine Probleme gibt. Bei NMEA2000 (250 kbit/s) darf eine Stichleitung > z.B. 6m lang sein Das funktioniert aber nur dann wirklich, wenn die Treiber entsprechend der niedrigen Bitrate auch große, sprich langsame Anstiegszeiten haben. Ein CAN-Master, der mit 1 Mbit/s betrieben werden kann, hat das im Allgemeinen nicht. https://de.wikipedia.org/wiki/Controller_Area_Network#Topologie Laut dem Artikel sind bei 500kbit/s bis zu 100m Buslänge möglich, da sollte 1m Stichleitung noch OK sein. Hier ist die Rede von bis zu 5m bei 500kbit/s https://infosys.beckhoff.com/index.php?content=../content/1031/bx9000/2521750667.html&id=
Möglicherweise eine dumme Frage, trotzdem: Verwendenbeide Sensoren unterschiedliche Messages bzw unterschiedliche Ids? Falls mehrfach die gleiche Message-Id mit unterschiedlichen Daten kommt, schaltet ein Knoten auf Nur-lesen um und schließlich auf komplett stumm. Nach dem Aus- und wieder einschalten geht es dann wieder, bis der error counter wieder überläuft ...
MiWi schrieb: > auf diesen entzückenden Blödsinn muß man auch erst einmal kommen :-) Welch näckischer Mummenschanz...
Sensor 1: ID 3 Sensor 2: ID 4 Daher sollte Sensor 1 die höhere Priorität haben, da die ID niedriger ist. Oder meinst du evtl. etwas anderes?
Wenn Du reines CANopen verwendest sollte es reichen, wenn die IDs unterschiedlich sind. Falls Du teilweise auf Layer 2 arbeitest, gilt folgendes : Es darf nicht passieren, dass die gleiche Message mit unterschiedlichen Daten kommt. Die automatische Arbitrierungung gilt nur für den Identifier, wenn Daten kollidieren ist das ein Fehler, der zur Abschaltung von Knoten führt.
:
Bearbeitet durch User
Die Sensoren arbeiten nach dem Canopen DS404 Protocol und SocketCAN. Ich verstehe nicht ganz was du mit "gleiche Message" meinst.
Reiner Gast schrieb: > suprL schrieb: >> Nur einen am Ende oder für jeden Sensor einzeln? > > An jedem Leitungsende des Bus einen An jedem der beiden Leitungsenden. Nur zur Klarstelleung, dass nicht jemand auf die Idee kommt, den Bus sternförmig zu verkabeln und dann ein Dutzend Abschlusswiderstände zu verteilen. MiWi schrieb: >> Ja! Bedenke dass der auch entsprechend Leistung abkönnen muss! Also bei >> 1MBit ca 10Watt. Bei 2MBit ca 20 (besser 25) Watt. > > auf diesen entzückenden Blödsinn muß man auch erst einmal kommen :-) > > Danke für die Anregung! Das gilt aber nur für den Powertrain-CAN. Wie der Name schon sagt, braucht de so viel Power, dass einem die Trainen kommen.
Lynuxschlau schrieb: > MiWi schrieb: >> auf diesen entzückenden Blödsinn muß man auch erst einmal kommen :-) > > Welch näckischer Mummenschanz... sorry, aber das mit der Terminierung steht in der weiterführenden Literatur, die bei jedem Transceiver als “ISO 11898" oder Nachfolger erwähnt wird.
Achtung Scherz **** Hier der Standard 120 Ohm 20 Watt Abschlusswiderstand :-D
suprL schrieb: > Die Sensoren arbeiten nach dem Canopen DS404 Protocol und SocketCAN. Dann sollte das funktionieren und mein Einwand trifft nicht zu. Das, was ich geschrieben habe betrifft den Layer 2. Wenn Du eine funktionierende Canopen Implementierung verwendest, hast Du das Problem nicht. > Ich verstehe nicht ganz was du mit "gleiche Message" meinst. Gleicher Identifier auf Layer 2. Sorry, es ist länger her, dass ich CAN gemacht habe. Wenn zwei Knoten gleichzeitig (als Reaktion auf das gleiche Ereignis, zB andere CAN Nachricht) den gleichen Identifier mit unterschiedlichen Daten Inhalten losschicken, dann wird ein Knoten nach einiger Zeit abschalten. Bei einer korrekten Canopen Implementierung werden die Layer 2 Identifier kollisionsfrei aus der Objekt-Id gebildet, dann kann das von mir beschriebene Problem nicht auftreten.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.