Hallo liebe Leser, ich habe da etwas gebaut, das funktioniert, aber wahrscheinlich nur durch Glück... Ich weiß, ihr liebt diesen Satz bestimmt. ;-D Ein XMEGA32A4U (3.3V) triggert einige Signale im µs Bereich. Darunter ist auch eine Kamera, die mit einem langen (4 Meter) 50 Ohm Koax Kabel verbunden ist. Das Signal vom µC schicke ich an ein Levelshifter-Breakout (siehe Bild im Anhang). Dann kommt das lange Kabel, dann die Kamera. Zu dem Kameratriggereingang finde ich im Datenblatt leider nur diese Aussage "trigger input signals software / TTL level". Ich messe dort einen Widerstand (Signal zu GND) von 1kOhm. (alle anderen Triggersignale sind kein Problem, da kein Levelshifter verwendet werden muss, und die Kabel extrem kurz sind). Ich habe nun die Pegel und die Form der steigenden Flanke (nur diese wird ausgewertet) mit dem Oszilloskop an verschiedenen Stellen vermessen (siehe Bilder im Anhang). Folgendes fällt auf und ich würde es gerne mit eurer Hilfe verstehen: * Nach dem Levelshifter ist die Flanke deutlich weniger steil (3 µs rise vs. 50 ns rise direkt am Pin). Wie kann ich diese Flanke steiler bekommen? * Nach dem Kabel ist die rise time nochmal 5 mal länger. * Wird nun die Kamera angesteckt, so sinkt der Pegel auf 2.5 V und die rise time liegt wieder bei ca. 100 ns Wie gesagt, das ganze funktioniert zum Glück so. Aber was kann ich tun um den Pegel mit angesteckter Kamera zu erhöhen (mind. 3.3V) und trotzdem die Flanke steil zu haben? Der XMEGA kann 20 mA am Ausgang liefern, bei dem verwendeten Levelshifter habe ich leider kein Datenblatt. Vielen Dank für eure Hilfe!!
William T. schrieb: > Nach dem Levelshifter ist die Flanke deutlich weniger steil (3 µs rise > vs. 50 ns rise direkt am Pin). Wie kann ich diese Flanke steiler > bekommen? Den Pull-Up Widerstand auf der Ausgangsseite des Pegelwandler verringern. Das bleibt aber trotzdem nur eine halbgare Notlösung. Kläre, welche Spannung die Kamera braucht und verwende ein IC dass diese Spannung aktiv treibt (im Einfachsten Fall ein Logik Gatter). Wenn das Kabel lang ist (viele Meter) brauchst du eventuell sogar einen Treiber, dessen Ausgangswiderstand zum Wellenwiderstand des Kabels passt und einen passenden Abschlusswiderstand am Ende des Kabels.
Stefan ⛄ F. schrieb: > Kläre, welche Spannung die Kamera braucht und verwende ein IC dass diese > Spannung aktiv treibt (im Einfachsten Fall ein Logik Gatter). Hallo Stefan, danke für deine Antwort. Du meinst einen IC statt dem Levelshifter? Wäre dieser hier geeignet? http://www.mikrocontroller.net/part/74HCT125 Die Kamera erwartet 5V Pegel, funktioniert glücklicherweise aber auch noch mit 2.6 V. Aber wer weiß ob unter allen Umweltbedingungen... Deswegen wäre es am besten, wenn 5V mit möglichst steiler Flanke an der Kamera ankommt. Ist das wohl mit dem 74HCT125 machbar?
William T. schrieb: > Wäre dieser 74HCT125 hier geeignet? Ja, wahrscheinlich. Zur Leitungslänge hast du ja nichts gesagt. Den Oszillogramm lässt mich vermuten, dass es um relativ kurze Leitungen geht.
William T. schrieb: > Ein XMEGA32A4U (3.3V) triggert einige Signale im µs Bereich. Darunter > ist auch eine Kamera, die mit einem langen (4 Meter) 50 Ohm Koax Kabel > verbunden ist. Das Signal vom µC schicke ich an ein > Levelshifter-Breakout (siehe Bild im Anhang). Die sind Murks, weil hochohmig und langsam. OK, damit hast du keine Reflektionsprobleme auf langen Kabeln ;-) > Dann kommt das lange > Kabel, dann die Kamera. Zu dem Kameratriggereingang finde ich im > Datenblatt leider nur diese Aussage "trigger input signals software / > TTL level". Ich messe dort einen Widerstand (Signal zu GND) von 1kOhm. Das könnte ein interner Pull-Down Widerstand sein. > * Nach dem Levelshifter ist die Flanke deutlich weniger steil (3 µs rise > vs. 50 ns rise direkt am Pin). Wie kann ich diese Flanke steiler > bekommen? Mit einem gescheiten Pegelwandler. 74HCTirgendwas. > * Nach dem Kabel ist die rise time nochmal 5 mal länger. > * Wird nun die Kamera angesteckt, so sinkt der Pegel auf 2.5 V und die Weil du einen Spannungsteiler aus dem Pull-Up Widerstand deines Pegelwandlers und dem Pulldown in der Kamera hast. > rise time liegt wieder bei ca. 100 ns Wie das? > Wie gesagt, das ganze funktioniert zum Glück so. Aber was kann ich tun > um den Pegel mit angesteckter Kamera zu erhöhen (mind. 3.3V) und Wozu dann der Pegelwandler? Dein AVR spuckt 3,3V direkt aus. GGf noch eine Serienterminierung von vielleicht 22-33Ohm, fertig. Was sind das für komische Oszilloskopbilder? Die Skalierung ist vollkommener Unsinn, die Messung vermutlich auch.
4 Meter ist die Kabellänge, und sie wird sich im Extremfall nur verdoppeln. Ich habe noch diesen IC gefunden: TXB0104 http://dlnmh9ip6v2uc.cloudfront.net/datasheets/BreakoutBoards/txb0104.pdf Den gibt es auch als breakout, und die Verzögerungen von Input zu Output sind in wenigen ns angegeben.
Falk B. schrieb: >> rise time liegt wieder bei ca. 100 ns > Wie das? Kapazitive last in Kombination mit dem schwachen Pull-Up Widerstand auf dem Pegelwandler-Board.
Falk B. schrieb: > Wozu dann der Pegelwandler? Dein AVR spuckt 3,3V direkt aus. GGf noch > eine Serienterminierung von vielleicht 22-33Ohm, fertig. Ok, das versuche ich gleich mal... > Was sind das für komische Oszilloskopbilder? Die Skalierung ist > vollkommener Unsinn, die Messung vermutlich auch. Das kommt aus der Rhode&Schwarz RTC1002 Oszi-Software so raus... ("InstrumentView").
William T. schrieb: > 4 Meter ist die Kabellänge, und sie wird sich im Extremfall nur > verdoppeln. Dann versuche mal den 74HCT125. 4 Meter ist noch kurz genug dass Reflexionen kaum eine Rolle spielen. > Ich habe noch diesen IC gefunden Das ist doch schon wieder bidirektional. Unnötig komplex und vermutlich auch mit unnötigen Seiteneffekten behaftet.
William T. schrieb: > Ich habe noch diesen IC gefunden: > TXB0104 > http://dlnmh9ip6v2uc.cloudfront.net/datasheets/BreakoutBoards/txb0104.pdf Vergiss den. Nimm einen 74HCT125 oder was ähnliches. Gibt es auch als Einzelgatter.
Stefan ⛄ F. schrieb: > Kapazitive last in Kombination mit dem schwachen Pull-Up Widerstand auf > dem Pegelwandler-Board. Dadurch wird die Anstiegszeit KÜRZER? Ne. https://www.mikrocontroller.net/attachment/501230/Nach_Levelshifter___langes_Kabel.png Hier sieht man 2 Vorgänge. Die relativ schnelle Flanke auf ca. 2,5V und danach einen 10us Bananenflanke. Vermutlich weil dort der "Pegelwandler" nicht mehr aktiv nachschiebt bzw. nur noch sehr schwach.
Falk B. schrieb: > Dadurch wird die Anstiegszeit KÜRZER? Ne. Nein Länger. Hat er etwa "kürzer" geschrieben? Ich muss mir nochmal Bilder anschauen, der Text it etwas wirr..... tatsächlich, das ist ja komisch. Es sieht so aus, als ob die Kamera das Signal nach 2,5V hin ziehen würde.
So sieht das Signal aus ohne den Levelshifter mit langem Kabel und an die Kamera angeschlossen. Ich habe einen 100 Ohm Widerstand in das Signal gelötet. Der Pegel steigt auf 2.86V, die Flanke ist aber etwas weniger steil (rise time ca. 300 ns).
Wie steil muss die Flanke denn sein? Nicht dass wir da etwas mit beträchtlichem Aufwand optimieren, was längst völlig OK ist.
William T. schrieb: > Zu dem Kameratriggereingang finde ich im > Datenblatt leider nur diese Aussage "trigger input signals software / > TTL level". TTL level heisst eigentlich dass alles > 2,0V als "high" erkannt wird.
Stefan ⛄ F. schrieb: > Wie steil muss die Flanke denn sein? > > Nicht dass wir da etwas mit beträchtlichem Aufwand optimieren, was > längst völlig OK ist. Bei der Kamera werden Doppelbilder getriggert die einen Abstand von 2 Mikrosekunden haben. Das ganze wird mit einem Puls-Laser synchronisiert. Wenn die Flanke verschmiert ist, könnte sich das Timing verschieben. Daher hätte ich gerne eine Flanke, die ca. 10x steiler ist als 2 Mikrosekunden. Also fehlt da nicht wirklich viel... Kann man noch an Pullup/Down/Serienwiderstand den letzten Rest herausholen?
William T. schrieb: > Also fehlt da nicht wirklich viel... Dann nimm das Logikgatter. Sollte es zu störenden Reflexionen in der Leitung kommen, machst du noch einen Widerstand zwischen Logikgatter und Leitung. Der optimale Wert hängt vom Kabel ab, vermutlich irgendwo zwischen 20 und 120 Ohm.
William T. schrieb: > So sieht das Signal aus ohne den Levelshifter mit langem Kabel und an > die Kamera angeschlossen. Ich habe einen 100 Ohm Widerstand in das > Signal gelötet. Wo denn? 100 Ohm sind zuviel, als Serienterminierung reichen 22-33 Ohm. > Der Pegel steigt auf 2.86V, die Flanke ist aber etwas weniger steil > (rise time ca. 300 ns). Das ist zu lahm, wenn das Signal aus dem AVR kommt, sollten da nicht viel mehr als 20ns Anstiegszeit rauskommen. Mißt du auch richtig? Mit welchem Tastkopf? Bandbreitenfilter am Oszi eingeschaltet? Außerdem sollte der Pegel bis knapp 3,3V gehen. Da fehlen noch ca. 400mV. Außerdem mißt man die Anstiegszeit von 10-90%, manchmal auch von 20-80%. Nicht von 0-99%. Wenn man das bei dem Signal macht, kommen ca. 100ns Anstiegszeit raus. Naja, immer noch lahm, aber keine 300ns. Und tu dir und dem Rest der Welt einen Gefallen und stell diese dämliche Skalierung ordentlich ein! 0, 2, 4, 6V etc.!
Stefan ⛄ F. schrieb: > Dann nimm das Logikgatter. Sein Logikgatter heißt AVR und hat genug Geschwindigkeit als auch Treiberstärke.
Falk B. schrieb: > (der) AVR hat genug Geschwindigkeit als auch Treiberstärke. Ja, aber er will es halt noch besser als nötig haben. Mit dem Logikgatter kann er die Flanken nochmal deutlich steiler und die Spannung höher machen. Ich halte das für einen günstigen Kompromiss bevor man da das ganz große Fass mit speziellen Leitungstreibern und einstelligen ns auf macht.
Stefan ⛄ F. schrieb: > Ja, aber er will es halt noch besser als nötig haben. > > Mit dem Logikgatter kann er die Flanken nochmal deutlich steiler Nö, der AVR IST schnell UND stark! Die meisten Gatter sind NICHT besser! > und die > Spannung höher machen. Braucht er nicht, 3,3V reichen, wenn es denn WIRKLICH TTL-Pegel sind.
Entschuldigt meine analoge Unwissenheit. Ich hatte auf 100 Ohm gesetzt (direkt am Pin) um den Ausgang zu schützen. Aber wenn ich nochmal drüber nachdenke muss der Pin ja maximal gegen den Pulldown an der Kamera (1k) kämpfen, da brauche ich also nichts schützen. Mit nur 10 Ohm Widerstand ist die Flanke nun trotz Kabel so steil wie die Triggersignale mit den kurzen Kabeln. D.h. es ist kein wirklicher Zeitversatz mehr zu erwarten. Ich habe jetzt eine rise time (90%) von 60 ns. Die anderen Ausgänge haben 32 ns. Der Pegel ist auf 3.25 V gestiegen, also müsste jetzt alles gut sein. Danke für eure ganze Hilfe!
William T. schrieb: > Entschuldigt meine analoge Unwissenheit. Musst du nicht. > Ich hatte auf 100 Ohm gesetzt > (direkt am Pin) um den Ausgang zu schützen. Aber wenn ich nochmal drüber > nachdenke muss der Pin ja maximal gegen den Pulldown an der Kamera (1k) > kämpfen, da brauche ich also nichts schützen. Der Widerstand ist kein Schutz, sondern eine Anpassung an den Wellenwiderstand des Kabels, damit es keine Reflektionen gibt. > Mit nur 10 Ohm Widerstand > ist die Flanke nun trotz Kabel so steil wie die Triggersignale mit den > kurzen Kabeln. Kann sein. > D.h. es ist kein wirklicher Zeitversatz mehr zu erwarten. > Ich habe jetzt eine rise time (90%) von 60 ns. Die anderen Ausgänge > haben 32 ns. Und wie sieht das Signal aus? Alles sauber? Ohne Überschwingen und Klingeln? > Der Pegel ist auf 3.25 V gestiegen, also müsste jetzt alles gut sein. Scheint so.
Ja, das Signal sieht nun sauber aus (Anhang: "10_ohm.jpg"). Testweise habe ich ein sehr langes Kabel genommen, dort sieht man wahrscheinlich die angesprochenen Reflektionseffekte. Aber so ein langes Kabel werde ich nicht verwenden.
Ein Schutz gegen Kurzschluss ist natürlich keine falsche Idee. Wenn du wirklich beides haben willst (steile Flanken und Kurzschluss-Schutz) brauchst du starke Treiber die mit weniger Ohm im Kurzschlussfall noch heile bleiben. Im Falle von 8bit AVR ergibt sich das von alleine. Deren Ausgänge sind ohnehin kurzschlussfest, sofern man nicht zu viele Ausgänge gleichzeitig kurzschließt (ist eine thermische Frage). Ob die Ausgänge von deinem XMEGA32A4U ebenfalls (einzeln) kurzschlussfest sind, weiß ich nicht.
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.