mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USB ICs


Autor: r.jantzen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Welche ICs kann mann benutzen, um auf den USB-Port zuzugreifen ?

1. Also Ich habe bereits einiges darüber gelesen, werde aber nicht ganz
schlau daraus. Auf meinem bereits existierenden USB-Bausatz ist ein PIC
16C745 /sp, der wohl als USB-Gerät angesteuert wird. Hier möchte ich
abere einen Flash-IC einsetzen. Wonach muss ich suchen ?

2. Dann würde ich gerne 20 analoge Eingänge überwachen. Dazu muss ich
sicherlich weitere ICs auf das Bord löten. Wie muss ich das Aufbauen,
um z.B. die Eingänge von IC 2 oder von IC 3 zu ermitteln (OK, den
USB-Treiber werde ich wohl schreiben müssen und natürlich müssen die
ICs auch programmiert werden.) Ich habe soetwas jedoch noch nicht
gemacht und bin über Hilfe echt dankbar.

Ich habe etwas über I2C gelesen. Kann ich über diesen Bus den
Datenaustausch realisieren ?

PS : Vielleicht sind hier ja bereits USB-Fahige ICs drauf ?

http://www.sprut.de/electronic/pic/typen.htm

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1. MassstorageDevice
2. ADC mit der Entsprechenden Eingangsanzahl nehmen oder mehrere.
Je nach gewünschter Samplefrequenz wirst du unterschiedliche
Ansteuerformen finden (I2C,SPI,parallel,Differentiell)
Die kommunikation ließe sich als USB Device machen. Dazu solltest du
aber ein USB Buch gelesen haben, um die USB Klassen zu verstehen.
Dann brauchst du auf der Windows/Linux Seite keinen Treiber mehr
schreiben,sondern musst nur noch die Klasse auf Mikrocontrollerseite
implementieren.
Die einfachste Form wäre ein virtueller COMPort mit dem FT232
Du schließt nur noch den Mikrocontroller mit der seriellen
Schnittstelle an den Chip an und mußt nichts von USB verstehen.
Allerdings natürlich die serielle Schnittstelle.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: r.jantzen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK,

Wenn ich das richtig verstanden habe, dann benötige ich einen FT232.
Den hänge ich an den USB drann und mein 16F876 dann an den FT232.
Windows :-) initialisiert den File_Device_Seriel_Port für USB und dann
könnte ich über z.B. VB.Net mit den Klassen für Serielle Ports das Ding
auslesen, oder?

Autor: Manos (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Da wärst du schon bei 17 Eingängen:
http://www.obdev.at/products/avrusb/hidkeys.html";

Er meinte aber 20 ANALOGE Eingänge :)

Autor: r.jantzen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm,

was wenn später noch mehr Eingänge angeschlossen werden sollen, z.B. 40
oder 50 ?

Eigentlich sollte das doch alles über die Serielle-Schnittstelle
machbar sein, oder?

Autor: r.jantzen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch Etwas!

Ich habe vor, mit den analogen Eingängen die Winkel eines Roboterarms
aus zu messen. Dazu werden an dem Roboterarm an jeder Achse
Potentiometer angeschlossen, die bei 360 Grad voll aufgedreht sind und
bei 0 Grad eben aus sind. Dieser Poti soll dann an einen Eingang
angeschlossen werden. Der Poti soll die USB-Spannung bekommen.
Dementsprechend wollte ich dann ausrechnen wie denn gerade der Arm
Steht.

Dabei entsteht aber bestimmt eine gewisse ungenauigkeit. Wie kann mann
das besser lösen ?
Gibt es Bauteile, die das Digital können und am besten die Gradzahl
zurückgeben ?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, so etwas heißt Winkelencoder. In ganz edel gibt es sowas von der
Firma Heidenhain (http://www.heidenhain.de/), sowas lässt sich aber
auch mit mehreren Reflexlichtschranken und einer mit Gray-Code
bedruckten Schreibe selbst realisieren.

Wenn keine Absolutpositionsbestimmung erforderlich ist, sondern eine
inkrementelle Positionierung ausreicht, dann kann auch die Elektronik
aus einer (Kugel-) Maus verwendet werden; der Roboterarm muss dann halt
eine Referenzposition anfahren, in der beispielsweise ein Nulltaster
sitzt. Ab da kann fleißig gezählt werden ... nur keine Zählimpulse
auslassen.

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht auch mit Potis durchaus genau. Ich hab in der Firma auch noch
einen Roboterarm der so vor 20Jahren entwickelt wurde und zur
positionierung 10Gang Potis verwendet. Der hat eine
Wiederholgenaugikeit von 1/10mm auf einer Strecke von 500mm.

Die Potiloesung ist am einfachsten und billigsten. Allerdings
verschleissen die Potis bei haeufiger Verwendung. Dann bekommt dein
Roboter den tatterig. :-)

Alle anderen Loesungen gehen richtig ins Geld! So eine Einheit aus
Motor, Getriebe und Winkelencoder kostet schnell mal 200Euro und mehr.


Olaf

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.