Hallo zusammen! Ich suche eine Lösung bei der die CAN-Terminierung von einem IC übernommen wird. Meine Vorstellung wäre ein kleiner Chip, z.B. ein SOT23-5 mit 5V0, Gnd, CAN-High, CAN-LOW und einem Input mit dem man die Terminierung ein- bzw. ausschalten kann. Wenn die Terminierung (durch den GPIO) aktiviert ist, soll der Chip eine CAN-Terminierung gem. dem "Split Termination" Konzept machen (siehe: https://www.ti.com/lit/an/slla270/slla270.pdf - Seite 8). Wäre schön, wenn er seine VREF auch selbst aus den 5 Volt (oder 3V3) macht. Den MLCC pappe ich natürlich extern dran. Das wären zu viel Wünsche auf einmal ;) Gibt es sowas? Wenn ja, eine Teile-Nummer wäre super! Wenn man so eine zuschaltbare Terminierung aus diskreten Bauteilen aufbauen muss, werden das doch recht viele Bauteile für so eine einfache Aufgabe. Danke und Grüße pm
Hallo, ich kann mir ja nicht vorstellen, das es sowas gibt. Es ist einfach kein Anwendungsfall. Der Abschlusswiderstand wird am letzten Gerät/Stecker des Busses aktiviert, und dann nie wieder geändert. So zumindest in 99% der Fälle. Und ja ich kenn auch den Rest, wo man das gerne Konfigurieren/per SW ändern möchte. Vorschlag: - kleines zweipoliges Signalrelais für CAN-H und CAN-L zwischen Bus und Terminierung. Oder einen Schalter. - zwei 60 Ohm Widerstände - ein Kondensator - bei sehr vielen Bustransceivern sind die Vref rausgeführt. Die kann man ja gleich verwenden.
Als fertiges IC kenne ich das nicht. Für eine einfache CAN-Terminierung habe ich mal eine Applikation von Microchip erfolgreich ausprobiert, wo wie den 120Ohm in Reihe mit einem N-Kanal MOSFET gesetzt ist. Das Gate wird dann von einer hohen Gate-Spannung (z.B. 18V) angesteuert. Solange man ein CAN-Netzwerk hat, in dem die Potentiale zueinander einigermaßen identisch sind kann man das so machen, da die Gate-Source Spannung immer genügend hoch über den typischen CAN-Signalen liegt. Mit jeweils zwei N-Kanal MOSFETs in Back-to-Back (z.B. in einem SOT23-6 oder kleiner) in Reihe zu den beiden Split-Widerständen kann man das auch auf Split-Terminierung übertragen. Die hohe Gate-Spannung (meist max. 20V UGS) hat man oder man muss sie sich erzeugen (z.B. MT3608 (SOT23) i.V.m. Spule DFE252012P-4R7M=P2). Über den ON/OFF-Pin des Step-Up hätte man dann gleich die gewünschte Funktion. Gut, es sind drei SOT23+L+C+R, man bleibt aber innerhalb weniger mm². Im MT3608-Design kann man dabei die C sehr klein halten, es handelt sich nur um eine statische Spannung. Wer den MT3608 als asiatisches Bauteil nicht mag kann auch z.B. den TLV61046A nehmen.
:
Bearbeitet durch User
Ich kenne leider kein IC der das fertig kann. Ich sehe aber durchaus Sinn in soetwas. Denn ein Punkt ist bei CAN-Terminierung im Industrial-Bereich immer ein Problem: Stabilität unter dauerhafter Fehlerspannung. Also jemand klemmt die Kabel falsch an und verbindet die 24V-Versorgung aus Versehen mit den CAN-Leitungen. Wenn man die richtigen CAN-Transceiver nimmt, überleben die das auch mit 48V noch ohne Probleme und dauerhaft. Aber die Terminierungswiderstände fackeln bei 24V ratz fatz ab wenn man da nicht vollkommen unpraktisch große Oschis nimmt. So ein Terminierungs-IC könnte da eine integrierte Überspannungs- oder Übertemperaturüberwachung mitbringen und diese Fälle ohne Bauteilgrab einfach abfangen.
https://www.ti.com/lit/ug/tiducf3/tiducf3.pdf?ts=1741942446458 Kein fertiges (einzelnes) Bauteil, aber die Lösungen im Ref-Design + Testing sind sicher trotzdem lesenswert.
Per Software geschaltete Terminierung ist Müll. Szenario 1: Du misst zu kleine Pegel auf dem Bus und vermutest zu viele Terminierungen. Du schaltest alle Geräte aus um den Widerstand zu messen. Die Terminierung wird wirkungslos. Du misst 60 Ohm. Alles ok. Du schaltest die Geräte wieder ein. Du machst ein blödes Gesicht. Scenario2: Du musst das Gerät vom Ende des Busses in die Mitte verschieben und willst die Terminierung abschalten. Du bist aber nicht von dem Hersteller und hast die Konfigurationssoftware nicht. Du machst ein blödes Gesicht. Terminierungen werden in Hardware gemacht, so das jeder Servicetechniker sie setzen/entfernen kann, auch ohne Software!
Ja, gut, wenn es in die Richtung der Sinnhaftigkeit des Vorhabens geht würde ich ebenfalls der Variante elektronisch geschaltete Terminierung widersprechen. - Ausgeschaltet nicht vernüftig messbar (sofern nicht mit bistabilen Relais) - Störung im Gerät, dass die Terminierung machen soll, legt evtl. den ganzen Bus lahm - Bei Versetzung von Komponenten ist die Konfiguration u.U. schwer durchschaubar Aber hey, wenn sich der TE da ausreichend Gedanken gemacht hat gibt es durchaus Möglichkeiten. Meine Schaltung oben benötigt grob 8 Bauteile inkl. Step-Up (exkl. Terminierung selbst)
:
Bearbeitet durch User
Uwe B. schrieb: > Opto MOSFET Relais, dass den Terminierungewiderstand schaltet? Geht. Brauchst aber bei Split-Terminierung zwei Stück. Bei LCSC kostet der oben in der AppNote verwendete TLP175A 59$ct... Okay, Deine Lösung gewinnt ;-) Vlt. nicht ganz vom Platz her, preislich Gleichstand mit meiner Lösung. Edit. TLP175A evtl. etwas hoher Rds on (25..50Ohm). Vlt. etwas Besseres suchen.
:
Bearbeitet durch User
Hallo zusammen! Danke schonmal für eure Antworten. Ich hatte schon irgendwie den Verdacht, dass es für die Aufgabe keine weit-verbreitete, oft genutzte Lösung gibt, die jedem - außer mal wieder mir - bekannt ist. Bei meiner Suche mit Tante Google bin ich da nämlich auch nicht weiter gekommen. Bei RS sind ein paar ICs als CAN-Terminator gelistet, die sich dann bei einem kurzen Blick auf das Datenblatt als USB Terminator ICs entpuppen :o| Warum ich überhaupt gefragt hatte: Ich hatte mal mit einem CAN USB-Dongle von National Instruments gearbeitet. Und bei dem konnte man in den Geräte-Einstellungen die Terminierung über Software zuschalten. Bei einem USB-RS485 von National Instruments kann man ebenfalls im Treiber die Bus-Terminierung zuschalten. Gerade weil der USB-RS485 relativ klein ist - das ist ein (vielleicht max.) 4x4cm Kunststoff-"Knubbel" mit einem USB-Kabel dran - lag die Vermutung nahe, dass es da irgendwas kleines geben muss, dass die Kollegen genutzt haben. Eure Vorschläge - im Besonderen den TLP175A - schau ich mir mal an. Vielen Dank für den Input!
Ein Dual-Analogschalter (DPST) oder vielleicht sogar HF-Switch? Bei HF-Anwendungen mit umschaltbaren Frequenzbändern macht man das ja so ähnlich. Die Widerstände und VREF Erzeugung sind dann natürlich extern.
:
Bearbeitet durch User
Peter M. schrieb: > Gerade weil der USB-RS485 relativ klein ist - das ist ein (vielleicht > max.) 4x4cm Kunststoff-"Knubbel" mit einem USB-Kabel dran - lag die > Vermutung nahe, dass es da irgendwas kleines geben muss, dass die > Kollegen genutzt haben. Das ist ja auch der Fall, selbst die von mir vorgeschlagene Lösung ist auf 10x15mm² bequem umsetzbar, TLP175 bräuchte etwas mehr.
Warum wir es bis jetzt auch noch nicht umgesetzt haben ist folgendes: Die meisten Varianten basieren darauf, dass zumindest eine Versorgungsspannung in vielen Fällen dann auch noch die Software am Gerät verlässlich funktionieren muss. Ansonsten hast du plötzlich den Fall, dass dein CAN Bus nicht funktioniert weil der eine Teilnehmer zB eine fehlerhafte Software hat (Terminierung aus) oder gerade ohne Strom (Sicherung defekt oä.) ist. Wenn du volle Kontrolle über den CAN Bus hast könnte man dies vl. vernachlässigen aber ein Bus mit zig Teilnehmer von mehreren Hersteller sollte HW-mässig terminiert sein. Ansonsten haben wir auch das einmal über das Microchip APP Note erfolgreich getestet.
ja, es spricht sehr viel für die HW-Terminierung. Ich mache das seit 25 Jahren selber so. Die Box mit den 120 Ohm Widerständen ist immer gut gefüllt ... Im Besonderen das Posting von Harald (11 Uhr 30) lässt mich dann wieder ins Grübeln kommen. Sinn dieses (gewünschten) Bauteils war eig. Probleme zu vermeiden, in dem man halt die Terminierung über Software de-/aktivieren kann. Und ja, wenn man es so betrachtet wie Harald, dann ersetzt man das potentielle Problem A durch ein potentielles Problem B. Gewonnen ist dabei nichts, außer dass der Entwickler (ich) schuld ist, wenn es nicht funktioniert. Bei der HW-Terminerung ist der Anwender schuld, wenn es wegen mangelhafter Terminierung nicht funktioniert. Irgendwas ist immer falsch ;o| Scheiss Elektronik :D Ansonsten: ja, die Lösungen mit Relais oder MOSFETs hatte ich mir auch schon mal überlegt. Ich würde in dem Fall allerdings nicht zu der MOSFET-Lösung tendieren, sondern tatsächlich so ein winziges G6K Relais nehmen, das ich mit 5 Volt schalten kann, dann brauch ich nur ein Relais, eine Diode einen 2N7002 und 2 Widerstände. Da ich keinen USB-Dongle bauen will, hätte ich dafür auch genug Platz und ich muss keine separate Spannungs-Versorgung vorsehen. Danke für euren Input!
Peter M. schrieb: > Irgendwas ist immer falsch ;o| > Scheiss Elektronik :D Völlig korrekt! Falls es doch wieder klassische Terminierung werden sollen: Ich nehme immer gerne die Widerstände „2W Metall 120“ von Reichelt, da hat der Kunde ordentlich was in der Hand, die mechanische Stabilität ist hervorragend. Wenn man Split-Terminierung will/muss wird es allerdings etwas unschön.
:
Bearbeitet durch User
die Klassische Terminierung sieht bei mir so aus, dass ich einen 120 Ohm 2512 SMD 1% 1 Watt Widerstand (z.B. https://jlcpcb.com/partdetail/Fojan-FRC2512F1200TS/C2974107 ) auf dem PCB vorsehe und eine RM2.54 Pfostenleiste oder einen Löt-Jumper zum Verbinden dazu baue. Dann kann der Kunde entweder den Jumper schließen oder die Lötbrücke verbinden.
:
Bearbeitet durch User
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.