Wie kompliziert ist es Datenstream aus USB 3.0 abzugreifen? Die
Geschwindigkeit geht bis zu 4 GBit/s bzw. 600 MByte/s, wie kann man sie
auslesen und weiterverarbeiten? Man braucht ja so ein Controller?
Moderater Anfänger schrieb:> Wie kompliziert ist es Datenstream aus USB 3.0 abzugreifen?
Für die meisten Menschen so gut wie unmöglich.
Wenn du von diesem Spezialgebiet die notwendige Ahnung hättest, dann
hättest du nicht gefragt.
> wie kann man sie auslesen und weiterverarbeiten?
Mal angenommen du hast den Datenstrom irgendwie vorliegen, dann kommt es
sehr auf die konkrete Anwendung an, was das für Daten sind und wie man
sie verarbeitet. Derartige Bitraten verarbeitet kein Mikrocontroller, da
musst du schon ganz andere Kaliber auffahren.
Moderater Anfänger schrieb:> geht bis zu 4 GBit/s
Da müssen schon die Kabel mitmachen, der Rest natürlich auch. Schon das
Signal sauber zum Verbraucher zu bekommen dürfte interessant werden,
wenn Du etwas abgreifst.
Moderater Anfänger schrieb:> Und wie schaffen die Leute von Raspberry Pi 4 das? Die haben auch USB> 3.0 Port.
Mit Chips, die speziell dafür gemacht sind. Kannst du Mikrochips
designen und herstellen? Auch welche, die im GHz Bereich arbeiten?
Erstmal schnüffelt der Raspberry Pi keinen fremdem Datenstrom mit,
sondern kontrolliert ihn selbst. Damit hat der Chipsatz auf dem
Raspberry Pi die volle Kontrolle darüber, wann wie viele Daten wie
schnell übertragen werden.
Die Maximale Bitrate hält der auch nicht lange durch - wenn überhaupt.
Schließe mal zwei SSD Laufwerke an und kopiere eine Datei, dann siehst
du, wie wenig von der maximalen Übertragungsrate effektiv noch übrig
bleibt.
Das Mitschnüffeln eines bestehenden Streams ist erheblich
anspruchsvoller, weil der Schnüffler jeder bereit sein muss, die
maximale Datenmenge aufzunehmen.
Außerdem hast du danach gefragt, die Daten nicht nur mitzulesen, sondern
auch noch zu verarbeiten.
Moderater Anfänger schrieb:> Sorry, ich meine nicht schnüffeln sondern normal kommunizieren.
Dann nenne es doch nicht "abgreifen"?
USB Geräte senden nicht einfach so einen Datenstrom, den man empfangen
kann. Man muss mit dem Gerät kommunizieren, es steuern.
> aber man darf ihn nicht kommerziell nutzen?
Das gilt für die meisten Evaluation Kits. Um USB Geräte entwickeln zu
dürfen, musst du irgend wo einem elitären Club beitreten (kein Scherz).
Jetzt lass' mal die Katze aus dem Sack: Was hast du geniales vor? Worum
geht es konkret?
Moderater Anfänger schrieb:> Ich will halt tausende Sensoren, Motoren und Servos gleichzeitig> verwalten.
Zum Verwalten benutzt man Büro-Software. Was meinst du mit "verwalten"?
Vermutlich steuern und abfragen. Dafür braucht man aber bei weitem nicht
die Bitrate von USB 3.0. Es sei denn, deine tausenden Sensoren sind
Videokameras.
Hast du einen Plan, wie du deine Sensoren und Motoren an das USB Kabel
anschließen wirst? Auch schon über die Leitungslängen nachgedacht? USB
3.0 muss für die maximale Übertragungsrate ziemlich kurz sein!
Wer viele Sensoren und Aktuatoren ansteuert, tut das überlicherweise mit
einem CAN oder RS485 Bus, eventuell auch mit einer Variante von
Ethernet.
Nochmal: Lass die Katze aus dem Sack! Dann kann man Dir helfen, anstatt
nur blöd um den heißen Brei zu labern.
Ja. Dann mach mal. Die meisten Geraete sind mit USB 1.0 zufrieden.
Dafuer nimmt man vielleicht einen FT232 chip von FTDI, welcher fuer den
Mikrocontroller einen UART darstellt, an einen UART angeschlossen wird.
Controller mit USB integriert sind weniger, gegen Aufpreis.
Auf der PC Seite erscheint das Geraet auch als UART.
Dabei sollte man sich vergewaerrtigen, dass USB strikt fuer Labor/Buero
gedacht ist. Die Leitungslaenge ist auf 5m begrenzt.
Für USB 3.0 gibt es tolle FTDI Chips. Hier brauch man aber noch einen
FPGA, denn woran sind die tausenden Sensoren eigentlich angeschlossen?
Meist ist die Sache per ethernet einfacher zu realisieren, wenn es eh
auf ein Netzwerk hinausläuft.
Na dann nennt doch mal welchen Sensor genau. Oder zumindest welche
Schnittstelle dieser Sensor hat. Das ist sehr wahrscheinlich kein USB.
Sprich du brauchst eine Hardware die die Schnittstelle eines oder
mehrerer Sensoren auf USB übersetzt. Dafür gibt es vielleicht fertige
ICs, vielleicht fertige Platinen, vielleicht musst du da aber auch viel
selber machen. Ist aber unklar solange der Sensor und dessen Interface
nicht bekannt sind.
Eine eigene Frage?
Dieser Thread ist über 6 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.