Hallo zusammen,
Weiss einer wie man einen "durchflussverstärker" realisiert? Ich habe 4
Segmente die jeweils 40 Taster drann haben. Ein Segment stecke ich
direkt an den PC, ein anderes an das am PC angeschlossene usw. bis ich
diese 4 aneinander habe.
Bis aber das Signal des letzten Tasters angekommen ist, ist es schon
lange unlesbar. Also brauche ich irgend eine kleine Schaltung die ich
immer an den Eingang des einen Segmentes anbringen kann die das Signal
"aufbereitet"
Denke das geht mit einem OP und ein paar Widerstände oder einem Smith
Trigger, weiss bloss nicht wie ich das realisieren kann...
Weiss mir da jemand zu helfen?
gruss Ralph
@ Ralph (Gast)
>Weiss einer wie man einen "durchflussverstärker" realisiert?
Keine Ahnung.
> Ich habe 4>Segmente die jeweils 40 Taster drann haben.
Was für Segmente? Siehe Netiquette.
>Bis aber das Signal des letzten Tasters angekommen ist, ist es schon>lange unlesbar. Also brauche ich irgend eine kleine Schaltung die ich>immer an den Eingang des einen Segmentes anbringen kann die das Signal>"aufbereitet"
Du redest Kauderwelsch, siehe oben bzw. Forum-Fragenformulierung>Denke das geht mit einem OP und ein paar Widerstände oder einem Smith>Trigger, weiss bloss nicht wie ich das realisieren kann...
Und was hat das mit USB zu tun?
MFG
Falk
Fals das mit USB was zu tun hat:
Grundlagenwissen: Maximale Kabellänge zwischen 2 Geräten 5 Meter. Als
"zwischenverstärker" kann ein USB-Hub dazwischen geschaltet werden, der
die Kabellänge um weitere 5 Meter verlängern kann. Das ganze kann bis zu
einer Maximalen Kabellänge von 30 Metern betrieben werden. Danach ist
schluss.
Das "Segment" ist eine grosse Platine die 40 kleine Steckerbuchsen hat.
Auf je eine dieser Steckerbuchsen kommt ein "Modul". Dieses Modul ist
einfach ein Taster mit einem Microcontroller der bei Tastendruck die
programmierten Namen und Nummer auf das Mainboard ausgibt.
Das Mainboard leitet diese Signale dann einfach dem Computer weiter.
Jedes "Segment" hat dann einen Ein- und einen Ausgang (USB). So kann ich
Segment1 an den PC anschliessen und Segment2 an Segment1. Alle vier
zusammen ergeben dann wie eine Kette bei der das Signal von ganz hinten
bis zum PC durch muss.
Durch die lange Strecke wird das Signal aber möglicherweise unlesbar,
also brauch ich irgend eine Art Verstäcker den ich jeweils am Ausgang
eines Segmentes noch in das Schema der Platine miteinbeziehen kann.
Dieser sollte einfach alle Signale der transmit und receive Leitung der
USB Schnittstelle verstärken.
hoffe das ist jetzt verständlich :)
gruss Ralph
> Jedes "Segment" hat dann einen Ein- und einen Ausgang (USB). So kann ich> Segment1 an den PC anschliessen und Segment2 an Segment1.
Nein, das kannst Du so nicht. USB ist kein Bus, sondern nur eine
Punkt-zu-Punkt-Verbindung zwischen exakt zwei Geräten.
Deinen Aufbau könntest Du nur realisieren, wenn jedes "Segment" einen
USB-Hub enthielte. Allerdings ist die Anzahl der kaskadierbaren
(hintereinanderschaltbaren) USB-Hubs beschränkt.
@ Michael Graf
Danke für deine Antwort!
Die Kabellänge ist nur etwa 50cm, höchstens. Da aber die "Segmente"
aneinander sein müssen, kann ich da kein USB-Hub zwischenschalten. Also
brauch nur "etwas" das die Signale hebt, dass ich eben ins Schema mit
einbeziehen kann.
Ralph
Danke Rufus t. Firefly,
Dann bräuchte ich also eine "Hubschaltung" die ich in das Schema des
Mainboards integrieren kann.
Wegen der Anzahl, es wären vier solche Boards. Wäre das möglich?
Ralph
@ Ralph (Gast)
>Das "Segment" ist eine grosse Platine die 40 kleine Steckerbuchsen hat.>Auf je eine dieser Steckerbuchsen kommt ein "Modul". Dieses Modul ist
Ich nehme an, die hast du nicht selber gebaut.
>Segment1 an den PC anschliessen und Segment2 an Segment1. Alle vier>zusammen ergeben dann wie eine Kette bei der das Signal von ganz hinten>bis zum PC durch muss.
Klingt nach einfachen USB-Hubs.
>Durch die lange Strecke wird das Signal aber möglicherweise unlesbar,
Nöö, da klemmt was anderes.
>also brauch ich irgend eine Art Verstäcker den ich jeweils am Ausgang>eines Segmentes noch in das Schema der Platine miteinbeziehen kann.
Nöö, du brauchst ne saubere USB-Verbindung.
>Dieser sollte einfach alle Signale der transmit und receive Leitung der>USB Schnittstelle verstärken.
Vergiss es. Das Problem liegt woanders. Teste mal deine Segmente einzeln
am PC. Und dann nur zwei, dann nur drei etc.
@ Rufus t. Firefly (rufus) (Moderator)
>Nein, das kannst Du so nicht. USB ist kein Bus,
Nein? Wofür steht dann USB ?
> sondern nur eine>Punkt-zu-Punkt-Verbindung zwischen exakt zwei Geräten.
Logisch gesehen teilweise. Elektrisch auch teilweise.
>Die Kabellänge ist nur etwa 50cm, höchstens. Da aber die "Segmente">aneinander sein müssen,
Wer sagt das? Glaub ich nicht. Wen die Dinger HALBWEGS sinnvoll gebaut
sind, kan man die direkt an einen USB-HUB anschleissen.
> kann ich da kein USB-Hub zwischenschalten. Also>brauch nur "etwas" das die Signale hebt, dass ich eben ins Schema mit>einbeziehen kann.
Käse. Du weist nicht wovon du redest.
MFG
Falk
@ Ralph (Gast)
>Dann bräuchte ich also eine "Hubschaltung" die ich in das Schema des>Mainboards integrieren kann.>Wegen der Anzahl, es wären vier solche Boards. Wäre das möglich?
Geht in den Laden ud kauf dir einen USB-Hub. Fertig.
MFG
Falk
Nein die Segmente müssen aneinandersteckbar sein, da sie so
zugeschnitten werden das man sie hochkant sowie quer miteinander
verbinden kann also Seitenverhältnis 2:1. Also kann ich auch ein Segment
hochkant stellen und die zwei anderen Segmente beide mit der kurzen
Seite an die Lange des hochgestellten. Das soll aber nur EIN USB Kabel
dran haben ohne Hub.
Bis jetzt ist erst ein Prototyp vorhanden mit 4 Schalter der ganz normal
über USB verbunden ist, der auch funktioniert. Ob dieser jetzt 4 oder 40
Taster hat ist egal ausser das man bei dem 40ziger noch eine Externe
Stromversorgung anschliessen muss über Minijack.
Ich bin derjenige, der die ganze elektronik aufbauen soll ab Schema. Das
heisst das ich nur ätzen, bestücken löten usw machen muss. Ausser das
ich jetzt den Auftrag habe herauszufinden wie man diese Segmente
verbinden kann mit nur einem USB Kabel und natürlich der externen
Stromversorgung.
Ralph
@ Ralph (Gast)
>Seite an die Lange des hochgestellten. Das soll aber nur EIN USB Kabel>dran haben ohne Hub.
Dann müssen die Segmente einen USB-HUB enthalten. Oder anderweitig mit
dem "Hauptsegment" kommunizieren, welches dann per USB mit dem PC
verbunden ist.
>Ich bin derjenige, der die ganze elektronik aufbauen soll ab Schema. Das>heisst das ich nur ätzen, bestücken löten usw machen muss.
Hmm.
> Ausser das>ich jetzt den Auftrag habe herauszufinden wie man diese Segmente>verbinden kann mit nur einem USB Kabel und natürlich der externen>Stromversorgung.
Bei deinem Wissen bist du damit wohl ein wenig überfordert. Lass das mal
schön den Entwickler der Boards machen.
MFG
Falk
Ralph wrote:
> Nein die Segmente müssen aneinandersteckbar sein, da sie so> zugeschnitten werden das man sie hochkant sowie quer miteinander> verbinden kann also Seitenverhältnis 2:1. Also kann ich auch ein Segment> hochkant stellen und die zwei anderen Segmente beide mit der kurzen> Seite an die Lange des hochgestellten. Das soll aber nur EIN USB Kabel> dran haben ohne Hub.
An einem USB-Port kann genau ein USB Device angeschlossen werden, da
helfen auch keine "Verstärker" und kein Voodoo und kein gut Zureden.
Wenn du mehr als ein Device anschließen willst, und/oder mehr als 5 m
überbrücken willst, MUSST du einen Hub dazwischen bauen. Und mehr als
4 Hubs geht auch nicht, weil der interne Root-Hub im PC auch schon
zählt. Wenn du also die Module kaskadierbar machen willst, muss auf
jedes Modul ein 2-fach USB Hub. Und es gehen dann maximal 4 Module "in
Reihe". Fertig basta aus, was anderes funktioniert mit USB einfach
nicht.
Christian R. hats wunderschön zusammengefasst. da gibts nichts zu
rütteln (ausser vielleicht mit der anzahl HUBs - jenachdem, ob der
controller im PC auch schon einen drinnen hat oder nicht). aber USB ist
nicht ein bus, im herkömmlichen sinn, bei dem du einfach ein langes
"kabel" hast und beliebig viele geräte ranhängen kannst. du kannst also
nicht das USB-signal durch deine sigmente durchschlaufen und das fürs
entsprechende segment mitbenutzen, dazu ist USB nicht fähig.
also entweder ein richtigies bus-system benutzen, bei dem du deine
segmente beliebig irgendwo an deinen bus reinhängen kannst oder wenn es
USB sein muss, dann muss es anders gelösst werden ..oder du schreibst
USB spezifikation 4.0, wo es dann möglich ist (zumindest bis 3.0 geht's
nicht).
Michael Graf wrote:
> sind das nicht 5 hubs?>> siehe hier> http://compliance.usb.org/index.asp?UpdateFile=Interoperability&Format=Standard
Kommt drauf an, ob die USB Ports am Rechner direkt am Hostcontroller
hängen oder nicht. Meist sind 2 Ports an einem Root-Hub. Mein Gigabyte
Board z.B. hat 12 USB Ports und 6 Root-Hubs. Zeigt ein Blick in USBView
oder in den Gerätemanager. Der Root-Hub zählt mit. Wir haben es auf
Arbeit auch ausprobiert, bei mehr als 4 externen Hubs gibts ganz lustige
Effekte. Da werden sogar Geräte nicht mehr erkannt, die weiter vorne in
der Strecke hängen. Das fiese an den Root-Hubs ist, dass sich auch dann
immer die 2 externen Ports die 40MB/s teilen müssen.
Hi,
Wie dem auch sei, das ist der offizelle golden tree aufbau, der
verwendet werden muss, wenn man ein usb gerät zertifizieren will.
Meines wissens sind maxima 30 Meter mit 5 Hubs möglich. Die roothubs
sind in den chips ja fest integriert, dadurch würde z.B. ja auch Intel
(der ja auch an USB massgeblich beteiligt ist) den usern die ersten 5
Meter klauen.
habt ihr vorne oder hinten angeschlossen? vorne ist noch mal ein halber
meter zusätzlich dazwischen mit einer sehr miserablen anbindung.
kommt auch sicher immer auf die verwendete hubs und kabel an. Buspowerd
funktioniert das ganze sicher nicht mehr. Maximal 500 mA, je hub 100mA,
...
gruss.
Wir hatten 4 externe Qualitäts-Hubs hintereinander mit jeweils externem
Netzteil am Rechner, das ging alles wunderbar. Insgesamt mit Root-Hub
dann 5 Hubs in einer Kette immer. Beim Anschluss des 5. externen Hubs an
den letzten wurde ständig der komplette Bus enumeriert, die Geräte
wurden nicht mehr eindeutig zugeordent und es ging dann gar nix mehr.
Hubs, Kabel und Geräte alle OK. Lag definitiv an der Menge der Hubs
hintereinander. Aber das ist in den meisten Fällen ja unnötig. Mit
insgesamt 10 bis 15 Hubs und 60 bis 70 USB Geräten klappt es jedenfalls
wunderbar.
Das Problem mit den 5 Hubs liegt wohl eher beim Betriebssystem, Windows
ist ziemlich unterirdisch was USB betrifft und bei Linux sind Teile der
Implementierung auch im Argen, da in erster Linie HID.
Und für Ralph noch mal zum Mitschreiben: USB ist logisch ein Bus,
physikalisch eine Punkt-zu-Punkt Verbindung. Jedes Gerät braucht einen
eigenen Port um angeschlossen zu werden. Hubs sind Geräte die Ports
vervielfachen. Wenn man Hubs kaskadiert muss mindestens jeder zweite
eine eigene Stromversorgung haben.
Es ist hilfreich von Datenblättern und Spezifikationen nicht nur das
Titelblatt zu lesen...
Guido Körber wrote:
> Das Problem mit den 5 Hubs liegt wohl eher beim Betriebssystem, Windows> ist ziemlich unterirdisch was USB betrifft und bei Linux sind Teile der> Implementierung auch im Argen, da in erster Linie HID.
Totaler Unfug. Das mit den fünf Hubs ("five non-root hubs maximum can be
supported in a communication path between the host and any device.") ist
laut Spec. nunmal für die Topologie des Busses so definiert.
> Es ist hilfreich von Datenblättern und Spezifikationen nicht nur das> Titelblatt zu lesen...
Dito.
>Totaler Unfug.
Meine Bemerkung bezog sich auf das beschriebene Problem, dass fünf Hubs
nicht erreicht werden. Mehr als fünf Hubs in Reihe gehen nicht laut
Spezifikation, aber bis zu fünf sollten gehen, nur ist halt der USB
Stack von Windows nicht gerade gut.
Nun, Christian schrieb ja, daß es mit 5 Hubs funktioniert, erst beim
sechsten traten Probleme auf:
> Wir hatten 4 externe Qualitäts-Hubs hintereinander mit jeweils> externem Netzteil am Rechner, das ging alles wunderbar.> Insgesamt mit Root-Hub dann 5 Hubs in einer Kette immer.> Beim Anschluss des 5. externen Hubs ...
(Hervorhebung von mir).
Der Root-Hub wird mitgezählt, das ist betriebssystemunabhängig.
Wobei das nicht eindeutig spezifiziert ist. In der USB Spec steht drin,
dass der Root-Hub nicht zählt. 5-Hub ebenen unterhalb des
Host-Controller bzw. Root-Hubs steht da wörtlich. Was auch immer das
ist....
Es könnte auch damit zusammenhängen, daß die Spannung zu sehr einbricht,
und dadurch die Abschlußwiederstände, welche zur Enumerierung gebraucht
werden, außer Spezifikation sind, und so eine neue Enumerierung
hardwäremäßig erzwungen wird. Man sollte die Spannungen nachmessen,
sowie die Spannungseinbrüche und eventuell zumindest teilweise
self-powered Hubs nehmen.
> und eventuell zumindest teilweise self-powered Hubs nehmen.
Das hat Christian sowieso getan :
> Wir hatten 4 externe Qualitäts-Hubs hintereinander mit jeweils> externem Netzteil am Rechner, das ging alles wunderbar.
"Hub mit externem Netzteil" == "self-powered hub"
USB ist kein "Bus".
An einem Bus (z.b. I2C) schaltet man alle Geräte parallell.
USB-Geräte darf man nicht parallell schalten, man muss Hubs verwenden.
Ein USB-Hub hat immer 4 Ports.
Die "7-Port-Hubs" sind eigentlich zwei 4-Port-Hubs in einem Gehäuse.
Ein USB-Kabel darf maximal 5m lang sein.
Im Handel sind "aktive USB-Kabel" bzw. "USB-Repeater" erhältlich.
Diese verstärken das Signal, ein Kabel kann daher länger sein.
An einem USB-Port können bis zu 127 Geräte angeschlossen werden.
Diese dürfen jedoch nicht parallell geschaltet werden, sondern müssen
über Hubs verbunden werden, wobei jeder Hub auch als ein Gerät zählt.
Noch Fragen?