Forum: Mikrocontroller und Digitale Elektronik USB Laufzeitlänge messen


von Svensson (svensson)


Lesenswert?

Liebes Forum,

ich habe einen Aufbau, bei dem ein räumlich weit verzweigtes "USB-Netz" 
aufgebaut wird. Nach folgendem Schema:

PC <-> USB/Kat6-Wandler <-> Kat6-Kabel1 <-> Kat6/USB-Wandler <-> 
USB-Kabel-1m <-> USB-Hub <-> USB/Kat6-Wandler <-> Kat6-Kabel2 
<->Kat6/USB-Wandler <-> USB-Kabel-1m <-> Meßgerät

Das Problem ist, daß es im Laboraufbau funktioniert, wenn das Kabel1 
kurz ist, aber im Feldeinsatz geht es dann leider nicht.
Daher vermute ich, daß es sich um ein Laufzeitproblem handelt. Lt. Norm 
erlaubt USB ca. 5m lange Kabel und fünf Ebenen von USB-Hubs, was einer 
maximalen Länge von 30m entsprechen würde.

*Gibt es eine Möglichkeit die Laufzeit zwischen PC und Endgerät zu 
messen?*

Die Wandler sind erforderlich, weil die Entfernungen zu groß sind. Mit 
den Wandlern sind lt. Hersteller Kabellängen bis 60m überbrückbar; die 
werden hier aber nicht erreicht.

PS: Und bitte keine Diskussion, daß USB nicht geeignet wäre. Mir ist 
schon bewußt, daß es ein grenzwertiger Aufbau ist, aber der ist nun 
einmal leider gewünscht.

Wandler: Digitus 70141
USB-Hub: 64039
von Ulrich (Firma: DC3AX) (uprinz)


Lesenswert?

Meines Erachtens nach kann Dir da keiner helfen, außer der Hersteller 
der USB-CAT Wandler. Die 5m Beschränkung resultiert aus den 1.5ns 
Verzögerung zwischen Daten und ACK/NACK. Diese gilt aber nur auf den 
USB-USB Segmenten, da die Repeater die Pakete als HUBs entgegen nehmen. 
Die ACKen das Paket gegenüber dem Sender und erwarten dann ein ACK von 
dem, der das Paket dann von ihnen entgegen nimmt.

Was spricht gegen echtes USB over Ethernet? Da kannst Du die 300m 
Ethernet voll machen und von 4 USB2.0 bis hin zu 12(?) USB-C Devices 
direkt anschließen. Alles eine Preisfrage.
von Guido K. (Firma: Code Mercenaries GmbH) (thebug)


Lesenswert?

Tja, wenn die Diskussion nicht gewünscht ist, dass das gar nicht geht, 
dann ist es ziemlich sinnlos hier irgend etwas weiter zu schreiben.

Viel Spaß mit dem Abfall. Wenn man den Standard und die Physik 
ignoriert, dann hat man halt Freude.
von Svensson (svensson)


Lesenswert?

Ulrich schrieb:
> Meines Erachtens nach kann Dir da keiner helfen, außer der
> Hersteller
> der USB-CAT Wandler. Die 5m Beschränkung resultiert aus den 1.5ns
> Verzögerung zwischen Daten und ACK/NACK. Diese gilt aber nur auf den
> USB-USB Segmenten, da die Repeater die Pakete als HUBs entgegen nehmen.
> Die ACKen das Paket gegenüber dem Sender und erwarten dann ein ACK von
> dem, der das Paket dann von ihnen entgegen nimmt.
>
> Was spricht gegen echtes USB over Ethernet? Da kannst Du die 300m
> Ethernet voll machen und von 4 USB2.0 bis hin zu 12(?) USB-C Devices
> direkt anschließen. Alles eine Preisfrage.

Ich hatte vermutet, daß die Wandler jeweils auch "Hubs" darstellen. Dann 
wären also tatsächlich 5 Hubs in der Kette, also die Maximalzahl.

USB over Ethernet war auch in der Vorüberlegung. Aber wir brauchen 
(zunächst) 8 USB-Meßgeräte an verschiedenen räumlichen Orten, also würde 
man 8 USB-over-Ethernet-Geräte benötigen. Abgesehen vom Preis ist doch 
die Frage, ob das dann noch mit der vorhandenen Software funktionieren 
würde, die eben alle Geräte als USB erwartet.

Und wir hatten den Hersteller natürlich vorher gefragt, ob er eine 
solche Lösung für denkbar halten würde. Antwort: ja. Und wie gesagt, es 
funktioniert im Testaufbau ja auch, aber irgendwie ist die 
Kabelgesamtlänge dann in der Summe wohl doch irgendwie zu hoch.

Und natürlich haben die Kollegen das Zeugs natürlich schon gekauft. ;-)

Plan B wäre, den PC direkt mit dem Hub zu verbinden, dann würden 
wenigstens 2 der 5 Hubs entfallen.
: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Svensson schrieb:
> Das Problem ist, daß es im Laboraufbau funktioniert, wenn das Kabel1
> kurz ist, aber im Feldeinsatz geht es dann leider nicht.
Und was ist, wenn beim Laboraufbau das Kabel 1 ebenfalls lang ist?

Nicht, dass da im Feld einfach nur sowas "Simples" wie Störungen oder 
eine Potentialverschiebung reinfunken...
: Bearbeitet durch Moderator
von Guido K. (Firma: Code Mercenaries GmbH) (thebug)


Lesenswert?

Vermuten hilft leider nicht.

Ein USB->Kat6-Wandler und zurück bedeutet, dass es nur mit ganz wenigen 
Geräten funktionieren kann, für die der Hersteller von diesem 
Schwachsinn seinen Mülladapter speziell hingebogen hat.

Die Umwandlung in ein anderes Format bedeutet eine deutliche 
Verzögerung, die verhindert, dass die Zeiten für die Signalisierung auf 
dem Bus eingehalten werden können. Darum tun diese Mülladpater i.d.R. 
so, als wenn sie der Host oder das Gerät wären und übertragen die 
Datenpakete mit deutlicher Verzögerung.

Ist völlig egal was irgend jemand davon hält, eingekauft hat, glaubt 
oder seine Großmutter für eine Schuhgröße hat, sobal man mit diesen 
Dingern versucht etwas zu betreiben, das nur ein Bisschen anders ist, 
als der Hersteller geträumt hat, geht nichts mehr.

Die einzige saubere Option den USB weg vom Rechner zu verlegen ist der 
USB-Server, also ein Gerät in dem der Hostcontroller drin ist und dieser 
über Ethernet angesprochen wird. Das ist auch auf der Softwareseite 
kompatibel, weil die Software einfach nur das USB-Device sieht und sich 
nicht darum kümmern muss, wie der Hostcontroller angesprochen wird, das 
machen die drunter liegenden Treiber.
von Frank K. (fchk)


Lesenswert?

Svensson schrieb:

> Das Problem ist, daß es im Laboraufbau funktioniert, wenn das Kabel1
> kurz ist, aber im Feldeinsatz geht es dann leider nicht.
> Daher vermute ich, daß es sich um ein Laufzeitproblem handelt. Lt. Norm
> erlaubt USB ca. 5m lange Kabel und fünf Ebenen von USB-Hubs, was einer
> maximalen Länge von 30m entsprechen würde.

Hast Du das originale USB 2.0 Standarddokument tätsächlich gelesen und 
verstanden? Nicht irgendwelche Sekundärliteratur, sondern den originalen 
Standard? Dann wüsstest Du, dass da an keine Stelle etwas von 5m drin 
steht. Das einzige, was definiert ist, sind die maximalen Laufzeiten 
(721 Bitzeiten roundtrip delay) und die maximale Dämpfung.

> *Gibt es eine Möglichkeit die Laufzeit zwischen PC und Endgerät zu
> messen?*

Mit einem passenden Oszi und geeigneten Tastköpfen mit wenig 
Eingangskapazität geht das schon.

> Die Wandler sind erforderlich, weil die Entfernungen zu groß sind. Mit
> den Wandlern sind lt. Hersteller Kabellängen bis 60m überbrückbar; die
> werden hier aber nicht erreicht.

Diese Wandler sind aus meiner Erfahrung heraus nicht wirklich 
langzeitstabil. Erfolgversprechender ist eine andere Lösung: USB Device 
Server. Die werden in der unmittelbaren Nähe des USB Devices 
positioniert und per LAN angesteuert, und ein Treiber auf dem Host 
bindet den als USB Hostcontroller ein. Die kritische USB-Strecke kann 
dadurch kur bleiben, und beim LAN gibt es keine ernsthaften 
Längenbeschränkungen. Über Glasfaser bekommst Du Kilometer an Strecke 
hin.

So sieht das aus.
https://www.silextechnology.com/connectivity-solutions/usb-network-connectivity/ds-700

fchk
von Gerd E. (robberknight)


Lesenswert?

Guido K. schrieb:
> Die einzige saubere Option den USB weg vom Rechner zu verlegen ist der
> USB-Server, also ein Gerät in dem der Hostcontroller drin ist und dieser
> über Ethernet angesprochen wird. Das ist auch auf der Softwareseite
> kompatibel, weil die Software einfach nur das USB-Device sieht und sich
> nicht darum kümmern muss, wie der Hostcontroller angesprochen wird, das
> machen die drunter liegenden Treiber.

Das ist nicht der einzige Weg.

Der Hostcontroller muss vor Ort hin, in kurzer Entfernung zum 
USB-Device. Das ist klar, ansonsten kriegst Du das nicht zuverlässig 
gelöst und es geht nur manchmal.

Wie der Hostcontroller dort angebunden wird ist flexibel. Es gibt z.B. 
auch Lösungen die PCIe über Glasfaser übertragen, ohne Umweg über 
Ethernet:
https://www.adnaco.biz/collections/s3b

Vorteil im Vergleich zu Netzwerk-basierten Lösungen ist die deutlich 
niedrigere Latenz.
: Bearbeitet durch User
von Guido K. (Firma: Code Mercenaries GmbH) (thebug)


Lesenswert?

Gerd E. schrieb:
> Wie der Hostcontroller dort angebunden wird ist flexibel. Es gibt z.B.
> auch Lösungen die PCIe über Glasfaser übertragen, ohne Umweg über
> Ethernet

Ja, Korinthe voll mittig getroffen ;)

Klar, es ist für diese Methode ziemlich egal was für ein 
Kommunikationsmedium bis zum Hostcontroller benutzt wird. Wichtig ist 
der Punkt, dass der Hostcontroller bei den Devices ist.

Ich frage mich immer, warum so viele Leute den USB mit einem LAN 
verwechseln.
von Svensson (svensson)


Lesenswert?

Frank K. schrieb:
> Hast Du das originale USB 2.0 Standarddokument tätsächlich gelesen und
> verstanden? Nicht irgendwelche Sekundärliteratur, sondern den originalen
> Standard? Dann wüsstest Du, dass da an keine Stelle etwas von 5m drin
> steht. Das einzige, was definiert ist, sind die maximalen Laufzeiten
> (721 Bitzeiten roundtrip delay) und die maximale Dämpfung.

Natürlich nicht, ich bin doch kein Masochist.

> Diese Wandler sind aus meiner Erfahrung heraus nicht wirklich
> langzeitstabil. Erfolgversprechender ist eine andere Lösung: USB Device
> Server.

Das muß auch nicht langzeitstabil sein, sind eher temporäre 
Versuchsaufbauten.
Also mit USB-Printservern habe ich jede Menge schlechter Erfahrungen 
gemacht. Von wegen geräteunabhängige Treiber...

Lothar M. schrieb:
> Nicht, dass da im Feld einfach nur sowas "Simples" wie Störungen oder
> eine Potentialverschiebung reinfunken...

Ich werde morgen das alles noch einmal durchmessen. Allerdings 
funktioniert es ja, wenn ich den PC direkt an den USB-Hub anschliesse; 
daher vermute ich schon, daß die Leitungen selbst in Ordnung sind.

Gerd E. schrieb:
> Der Hostcontroller muss vor Ort hin, in kurzer Entfernung zum
> USB-Device.

Das geht eben nicht, weil die Räume nicht für PCs geeignet sind (üble 
Salzwasser Atmosphäre). Möglich wäre jedoch den PC in das Rack mit dem 
USB-Hub zu verlegen, dann würde man sich eine Strecke und zwei Wandler 
sparen.

Guido K. schrieb:
> Ich frage mich immer, warum so viele Leute den USB mit einem LAN
> verwechseln.

Ich verwechsele gar nichts. :-) Wir haben auch eine Lösung über TCP/IP, 
aber die soll hier eben nicht verwendet werden. :-(
von Jens M. (schuchkleisser)


Lesenswert?

Svensson schrieb:
> Allerdings
> funktioniert es ja, wenn ich den PC direkt an den USB-Hub anschliesse;
> daher vermute ich schon, daß die Leitungen selbst in Ordnung sind.

Du änderst bei deinen Versuchen mehrere Parameter gleichzeitig, und 
Parameter A löst dein Problem, du meinst aber das es Parameter B sei -> 
bumm.

Dein Laboraufbau muss in der exakt gleichen Konstellation sein wie im 
Produktivbetrieb, d.h. gleiche Kabel, gleiche Längen, gleiche Geräte.
Und wenn das dann auf einem sauberen Tisch funktioniert, schön alles 
nebeneinander liegend, dann weißt du: dein Aufbau ist scheiße.

also: Strippen in den Schrank legen, aber alles andere bleibt aus.
Tut immer noch?
OK, jetzt mal eine Maschine einschalten... Tut immer noch?
Dann die nächste...
So lange bis es nicht mehr geht.
Dann weißt du: die Kabellänge ist ok, es sind die Störungen.

Oder: es geht schon auf dem Tisch nicht mehr. Da sind es die 
hochqualitativen Adapter auf nicht vorgesehene Medien. Aber das merkst 
du natürlich nicht, weil du ja andere, kürzere Kabel benutzt oder die 
Adapter gar nicht erst verwendest.

That said:
Es gibt unter dem Namen VirtualHere eine Lösung, die dir zumindest zum 
Testen kostenlos einen USB-LAN-Adapter spendiert, wenn du irgendwo z.B. 
einen RPi oder ein vergleichbares Gerät (Odroid, Nanopi, Bananapi) 
liegen hast.
Es gibt auch einen Client für Windows, und es funktioniert hinreichend 
gut auch mit "komischen" Geräten, und auch via WLAN.
Wenn das dann funktioniert, kannst du über einen professionellen 
USB-Deviceserver nachdenken, z.B. von W&T 
https://www.wut.de/e-53www-15-inde-000.php
von Svensson (svensson)


Lesenswert?

Jens M. schrieb:
> Dein Laboraufbau muss in der exakt gleichen Konstellation sein wie im
> Produktivbetrieb, d.h. gleiche Kabel, gleiche Längen, gleiche Geräte.
> Und wenn das dann auf einem sauberen Tisch funktioniert, schön alles
> nebeneinander liegend, dann weißt du: dein Aufbau ist scheiße.

Das geht nicht, da Kat6-Kabel1 und Kabel2 fest verlegte 
Netzwerkverkabelung ist, die ich natürlich nicht simulieren kann.

> also: Strippen in den Schrank legen, aber alles andere bleibt aus.
> Tut immer noch?
> OK, jetzt mal eine Maschine einschalten... Tut immer noch?
> Dann die nächste...
> So lange bis es nicht mehr geht.
> Dann weißt du: die Kabellänge ist ok, es sind die Störungen.

Auch das ist unmöglich, da es sich um eine Umgebung handelt, in der 
andere Maschinen immer laufen müssen. Und ja, die Umgebung ist 
sicherlich "störungsverseucht", denn es handelt sich nicht nur um eine 
Art Industriegebiet, sondern wir selbst haben noch jede Menge Technik.

Die Geräte von WuT wären sicherlich ganz interessant, aber das wäre dann 
keine Plug'n'Play-Lösung mehr...
von Hans W. (hanswieland)


Lesenswert?

Svensson schrieb:
> Ich hatte vermutet, daß die Wandler jeweils auch "Hubs" darstellen.

Ist es denn so?
von Gerd E. (robberknight)


Lesenswert?

Svensson schrieb:
>> Der Hostcontroller muss vor Ort hin, in kurzer Entfernung zum
>> USB-Device.
>
> Das geht eben nicht, weil die Räume nicht für PCs geeignet sind (üble
> Salzwasser Atmosphäre).

Der USB-Hostcontroller muss eben nicht im PC selbst eingebaut sein. 
Siehe die Netzwerklösung von Frank oder die PCIe-over-Fiber-Lösung von 
mir oben.

Der USB-Hostcontroller muss aber nah beim USB-Device sein wenn es 
zuverlässig sein soll.
von Christian R. (supachris)


Lesenswert?

Welche USB CAT Wandler setzt ihr ein? Da gibt's massive Unterschiede. 
Sehr gut aber teuer sind die von Icron. Lindy ist eher so lala, NewNex 
klappt auch gut. Neulich haben wir mal den AV Access U3EX100 gekauft, 
geht auch erstaunlich gut.
Der ganze billige Kram für unter 150€ taugt eigentlich gar nix.
USB Netzwerk Server geht auch mit dem Raspi, je nach Endgerät kann das 
gut klappen.
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.