PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : USB Motorsteuerung ohne PWM



haraldstegen
24.06.2005, 16:06
Hallo,
habe ein Problem. Ich möchte über ein USB Board Gleichstrommotoren mittels Delphi steuern. Das Board liefert mir genügend Ausgänge. Nur mit der Drehzahlregelung habe ich ein Problem. Alle 4 Motoren (a' 6A)sollen gleichzeitig mit verschiedenen Geschwindigkeiten laufen. Das USB Board stellt eine variable TTL-Spannung 0..5 Volt zur Verfügung. Damit könnte man ja schon mal etwas anfangen. Aber leider nur für ein Motor.
Normalerweise kann man dies alles elegant über PWM regeln. Nur - die Software würde (wenn überhaupt) nur ein einziges einigermassen korrektes PWM-Signal liefern.
Einen PWM-Generator kann man (meines Wissens) ja nur über RS232 ansteuern, ich möchte aber nur bei USB bleiben.

Kann mir da irgendeiner bei helfen?

uwegw
24.06.2005, 16:18
wieviel ausgänge hat dein board? du könntest zb einen externen PWM generator (mit NE555 oder ähnlichen schaltungen) mit mehreren ports pro kanal auf verscheidene stufen schalten...

direkt an rs232 kann man eigentlich auch nur eine mikrocontroller anschließen, der kommandos entgegennimmt und die signale für die motoren erzeugt. das könntest du natürlich auch mit deinem usb board machen, indem du dir einfach nen eigenes bussystem definierts und darüber den controlelr ansteuerst...

haraldstegen
24.06.2005, 16:52
8 Ausgänge, das Board ist von Conrad und läßt sich noch erweitern.
Wie wird der NE555 angesteuert?

talentraspel_kai
24.06.2005, 16:53
Hallo,

wenn du das direkt mit dem USB-Board versuchst, gibt es vermultich nur Ärger. Die USB-Schnittstelle ist definitiv nicht für solche Echzeitanwendungen gedacht.

Wie wär es mit USB->I2C und dann ein I2C-PWM Modul (egal welches).

Du könntest versuchen, auf deinem USB-Board das I2C-Protokoll zu implementieren. Da es sich um die Masterseite handelt, ist das Tempo beim Timing unkritisch und das Protokoll bekommt man relativ einfach hin.

Und dann überlässt du die zeitkritische Aufgabe einer Mehrkanal-PWM-Steuerung einfach einem eigenen Subsystem, das über I2C angesteuert wird. Da nimmst du dann einfach was Fertiges.

Bei dem Ansatz kannst du dann auch noch mehr an den Bus hängen und richtig Spass haben ...


Grüße,
Kai.

haraldstegen
24.06.2005, 16:58
Hallo Kai, danke für die schnelle Antwort, hast Du konkret ein Vorschlag für ein USB->I2C und ein I2C-PWM Modul?

Bräuchte ja dann wohl 1 USB>I2C und 4 PWM Module oder?

talentraspel_kai
24.06.2005, 17:08
USB->I2C kann man für teures Geld als Industrieteil kaufen. Diese Lösung wird dir aber nicht gefallen ... ;-)

Ich selbst habe zu dem Thema noch keine fertige Lösung in der Schublade liegen. Hier müsstest du dich also mal in das I2C-Protokoll einlesen und eine Implementierung selbst versuchen. Oder einen der Profis hier dazu bringen ... vielleicht gibt es an anderer Stelle ja schon einen Thread dazu.

Auf der PWM-Seite reicht ein einzelnes Modul, das mindestens 4 Motoren ansteuert. Hiwer solltest du mal googeln nach "I2C PWM". Ich hab zwar eine Lösung gebaut (http://www.talentraspel.de/portal/index.php?id=228). Die hilft dir aber nur, wenn du dich mit ATMEL-AVR-Mikrocontrollern und WinAVR C auskennst. Mindestens solltest du aber einen AT90S2313 und Motortreiber wie L293 oder L298 kennen und im Einsatz haben.

Grüße,
Kai.

haraldstegen
24.06.2005, 17:18
Na, villeicht denke ich ja auch zu kompliziert. Villeicht reichen ja auch 4 Dimmer, die man über Taster steuert. Die Tastfunktionen können durch das USB-Board geregelt werden.
Wie verhält sich das mit der Kraft des Motors, wenn ich über einen Dimmer regele?

Marco78
24.06.2005, 19:54
4 Dimmer die man mit Tastern steuert kosten aber auch schon ein paar Mark.
Um was für Motoren handelt es sich denn überhaupt? Gleich oder Wechselstrom? Wenn Wechselstrom würden Dimmer geh'n, aber auch nur welche, die für Motoren ausgelegt sind. Und die sind dann wieder richtig teuer als Tastdimmer.

Ich würd es anders machen. Ein FT232. Ein Wandler von USB auf RS232. Auf der HP von www.ftdichip.com findest du schonmal ein wenig Infos und Software dazu.

Und dann den RS232 in ein AVR leiten und die Befehle auswerten und denn mit Reglern (je nach Motor) die Drehzahl ändern.

haraldstegen
25.06.2005, 07:22
Hört sich schon gut an. Den FT232C habe ich schon gefunden, jetzt muss nur ein passender AVR her. Kann mir da jemand helfen?

haraldstegen
25.06.2005, 08:14
So, ich glaube damit könnte es gehen:
ATMEL AT89C5131-RDTIL (VQFP-64) USB-Controller

Der soll in der Lage sein, 5xPWM auszugeben und läüsst sich von ebay aus ansteuern.

haraldstegen
25.06.2005, 08:41
Meinte natürlich delphi.
Hat jemand Erfahrung damit? Habe gelesen, dass wenn er läuft alles gut ist, nur ihn anzusprechen ist nicht ganz einfach.

BlackBox
28.06.2005, 13:20
FTDI hat auch eine Treiber-DLL. Damit kannst Du den Chip problemlos auch von Ebay :-s aus ansteuern.

Dokumentation und Beispiele findest Du ebenfalls auf der Homepage von FTDI.