PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotor Treiber ohne zusätzliche Bauteile



mam2508
22.03.2011, 13:57
Hallo!

Ich weiß nicht, wie ich einen Schrittmotor über eine Ausgabegruppe ansteuern kann.
Ich habe bereits in mehreren Foren geguckt, aber bin mir immer noch unsicher. (Ich will nicht bestellen, ehe ich nicht sicher bin.)

Es soll ein Schrittmotor (1A; 0-40/DC) durch eine Ausgabegruppe vom PC (mit Labview programmiert) gesteuert werden. Dazu benötige ich einen Stromtreiber.
Ich möchte jedoch keine weiteren Bauteile benutzen/löten.

Sprich: Aus den digitalen oder analogen Ausgängen der Baugruppe gehe ich mit 4 Leitungen an einen IC und aus 4 Ausgängen davon gehe ich direkt an den Motor. Über das Programm würde ich dann die einzelnen Ausgänge so ansteuern, dass der Motor einen Schritt macht!

Ich suche also einen IC!
Gefunden habe ich bis jetzt L293 oder TMC239 aber ich kann beide nicht wirklich in ihrem Funktionsumfang einordnen.

Vielen Dank für Eure Hilfe!

Gruß

Michel

TobiKa
22.03.2011, 15:01
Bei 1A und 0-40V Spannung kannst du den L293 und den TMC239 schonmal vergessen.

mam2508
22.03.2011, 15:56
OH!

Und was bieten sich denn dann für Möglichkeiten?
Ich habe bei Conrad nicht viele andere Alternative gefunden.

Ein weiteres Problem ist, dass ich leider das notwendige Drehmoment überhaupt nicht einschätzen kann. Evtl. würde mir ein Motor mit weniger Strom reichen.
Der Motor soll ein Drehrad an einem Holzspiel drehen. Das notwendige Moment ist sehr sehr gering. Es ist weniger, als man zum Aufdrehen einer Wasserflasche benötigt, aber ich kann eben keinen Vergleichswert finden und messen kann ich es auch nicht. Vielleicht kann jmd. eine Einschätzung liefern?

Danke

TobiKa
22.03.2011, 16:00
Das könntest du sogar sehr einfach messen, mit nem Holzstab und einer Küchenwaage!

mam2508
22.03.2011, 16:05
hmm?? Könntest du deine Idee genauer ausführen?

TobiKa
22.03.2011, 16:07
Du nimmst einen Stab mit einer bestimmten Länge, das eine Ende befestigst du an dem Ding das gedreht werden soll, gegen das andere Ende drückst du mit einer Küchenwaage. Aus Länge und dem Gewicht das die Waage anzeigt, kannst du das Drehmoment errechnen.

dussel07
22.03.2011, 16:29
Ich würde die 40V überdenken und 36V akzeptieren - schon geht der L293B u. L293E!
Können 1A und Peak bis 2A. Kühlflächen nicht vergessen!
2,25 Reichelt Preis für E
1,20 Preis für B

mam2508
22.03.2011, 19:08
Ja, gut, ich habe eh gelesen, dass die Spannung nur eine etwas untergeordnete Rolle spielt.
Danke für den Tipp mit dem Messen des Drehmomentes. Ich werde versuchen, das morgen oder übermorgen auszuprobieren.

@dussel07: Und es lassen sich zwei Schrittmotoren (Conrad, Bestellt-Nr: 198747 - 62) mit diesem Baustein ohne zusätzliche Beschaltung außerhalb betreiben? Ich finde im Datasheet nur eine Anleitung für "einfache" Motoren und so genau bin ich in der Motoren-Technik nicht drin, um das beurteilen zu können.

Vielen Dank schonmal! Bisher habe die Antworten schon weitergeholfen! =)

Richard
22.03.2011, 19:26
Ja, gut, ich habe eh gelesen, dass die Spannung nur eine etwas untergeordnete Rolle spielt.


Dann hast Du nicht zu Ende gelesen ode etwas nicht richtig verstanden.

Ein Schrittmotor mit 5 V und entsprechend A reicht völlig. ABER jeder Motor ist
auch ein Generator und erzeugt, wenn er dreht eine Spannung die der angelegten Motor Spannung entgegen wirkt. Deshalb werden Schritt Motore Strom gesteuert betrieben. Es wird der momentane Strom gemessen und wenn der sinkt (weil der "Dynamo" Gegenspannung erzeugt)
erhöht man die Motorspannung.

Dadurch kann es passieren das ein 5 V Motor mit 50 V (Theoretisches Beispiel) betrieben werden
muss um die Motorleistung egal bei welcher Drehzahl, halbwegs konstant zu halten.

Die üblichen Motortreiber haben Sromsense Eingänge und können die Spannung entsprechend regeln. siehe auch.....
http://www.rn-wissen.de/index.php/Stepmotore_und_deren_Ansteuerung

Gruß Richard

dussel07
22.03.2011, 19:31
Du brauchst einen L293X für einen bipolaren 2Phasen Schrittmotor -
dieser benötigt ohne zusätzliche Elektronik (Kondensator ausgenommen) vier Signalleitungen. Schaltest Du einen L297 davor braucht es nur noch 2 Signalleitungen (Tackt und Richtung) und ist viel einfacher zu händeln.
Warum immer Conrad? Klar, ist um die Ecke aber: Schau mal hier (http://www.reichelt.de/Schrittmotoren/QSH4218-51-049/index.html?;ACTION=3;LA=2;ARTICLE=62654;GROUPID=32 99;SID=26f49BV6wQARoAABuWaoY4a0e55658a692ce491c768 202495444c)
Die liefern sehr schnell und bei drei Motoren hast Du einen gratis!


Ahrgl - Habe vergessen das die L293E und L293B noch Dioden (http://robotics.home.sapo.pt/l293e.gif) brauchen!
Bitte um Gnade - - - -

mam2508
22.03.2011, 19:55
hmm... also ich habe generell kein Problem mit dem Verständnis von Dioden oder Transistoren. Auch das Löten ist theoretisch kein Problem... allerdings wollte ich das vermeiden, da das ganze nur eine Nebensächlichkeit für ein Problem ist, mit dem ich mich nicht unnötig aufhalten wollte. Zumal die Zeit langsam knapp wird.
Ich hatte daher gehofft, dass es bereits fertige Lösungen gibt, aber es sieht nicht ganz danach aus.

Conrad wäre vorteilhaft, da da eine Kooperation besteht.
Zwei Motoren genügen. ;) Aber danke für den Tipp!

Die Frage ist nun: gibt es eine Lösung, die das macht, was ich möchte? Ansonsten hilft wohl nichts und ich muss an den Lötkolben. Ehrlich gesagt ist der Aufwand ja relativ gering.

dussel07
22.03.2011, 19:59
Wenn Der Motor nicht dauerhaft drehen/ unter Spannung stehen soll (auch im Stillstand zieht er seinen Strom) würde ich den L293D nehmen - der kann auch bis 1,2A Peak?

mam2508
22.03.2011, 20:26
Im Normalfall dreht sich der Motor für ca. 2 bis 5 Minuten lang abwechselnd in beide Richtungen für jeweils relativ kurze Zeitabschnitte (ca. 0,5 bis 1 sekunden). Ganze Umdrehungen sind nicht notwendig. Er dreht sich nur ca. +- 180°

sthiemt21
22.03.2011, 22:57
Hi.
Wenn du die möglichkeit hast es über eine Firma zu beziehen oder Student bist und mal nett nachfragst, dann gibt es natürlich den NANOTEC Treiber (http://de.nanotec.com/schrittmotor_steuerungen_smc11.html). Qualitativ sehr hochwertig! Oder auch bei ROBOTIKHARDWARE (RN-Stepp297 Schrittmotoransteuerung (Fertigmodul)) den Bausatz mit dem IC 298
Um das Trägheitmoment zu reduzieren solltest du Flache Rampen fahren. Da ja die statische Last in Axialrichtung wirkt muss der Motor kein großes Haltemoment aufnehmen, d.h. du kannst den Strom sehr stark absenken oder den Motor ganz ausmachen.

ABER dein Problem ist die Anteuerung. Ich weiss nicht wie du es mit Labview Antellen willst. Wenn du den Motor per Richtung / Takt (schrittimpuls) steuern willst, muss dir klar sein, dass eine digitaler I/O deinem Schrittmotor nie eine so gleichmäßige Frequenz (Taktrate) geben kann, dass eine wirklich saubere Drehbewegung entsteht. Das liegt einfach daran, dass Windows keine Echtzeit Umgebung ist.

Ich weiss nicht genau was du machen willst, aber wenn du keine Winkelgenau Positionierung benötigst, dann bist du mit einem einfachen Getriebemotor und z.B. dieser süßen Steuerung (http://http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=206) besser aufgehoben. Diese kannst du dann mit LabView deutlich besser ansteuern.

Gruß

mam2508
23.03.2011, 08:29
Guten Morgen!

Ersteinmal: vielen Dank für die vielen Antworten!
Ich bin jetzt jedoch gerade wieder auf dem Weg der Verwirrung! ;)

Es hat sich jetzt wohl rauskristallisiert, dass vermutlich ca. 700mA für meine Anwendung reichen. Ich werde aber heute versuchen dem Tipp von "TobiKa" nachzugehen und das Drehmoment bestimmen.

Noch habe ich nicht ganz herausgefunden, was denn nur der einfachste Aufbau (am besten ohne zusätzliche Bauteile) ist.

Nocheinmal zusammengefasst:
Zwei Schrittmotoren sollen die beiden Achsen eines Holzspiels ansteuern: http://www.jawoll.de/media/Spielwaren/Spiele/holzlabyrinth-250.jpg
Das notwendige Moment ist recht klein.
Eine Echtzeitanforderung seitens Windows ist nicht notwendig. So schnell muss die Anwendung nicht sein.
Eine Optionsbaugruppe für den PC wird analog und digital über Labview versorgt. Die Ausgänge möchte ich im Idealfall nur mit einem IC (keine sonstigen Bauteile) an die beiden Motoren anschließen.
Es ist für mich nicht wichtig, ob ich über Labview an den 4 ANschlüssen für die Schritte sorgen muss, oder ob eine Logik das schrittweise ansteuern übernimmt und ich lediglich die Schrittimpulse ausgebe.

Ich stehe leider immer noch auf dem Schlauch, welche Möglichkeit nun die sinnvollste ist.
Eine Investition von ca. 100€ bis 150€ für Motoren und die Steuerung wäre durchaus ok!

Vielen Dank!

Grüße

Richard
23.03.2011, 08:48
Guten Morgen!

Ersteinmal: vielen Dank für die vielen Antworten!
Ich bin jetzt jedoch gerade wieder auf dem Weg der Verwirrung! ;)

Es hat sich jetzt wohl rauskristallisiert, dass vermutlich ca. 700mA für meine Anwendung reichen. Ich werde aber heute versuchen dem Tipp von "TobiKa" nachzugehen und das Drehmoment bestimmen.

Noch habe ich nicht ganz herausgefunden, was denn nur der einfachste Aufbau (am besten ohne zusätzliche Bauteile) ist.

Nocheinmal zusammengefasst:
Zwei Schrittmotoren sollen die beiden Achsen eines Holzspiels ansteuern: http://www.jawoll.de/media/Spielwaren/Spiele/holzlabyrinth-250.jpg
Das notwendige Moment ist recht klein.
Eine Echtzeitanforderung seitens Windows ist nicht notwendig. So schnell muss die Anwendung nicht sein.
Eine Optionsbaugruppe für den PC wird analog und digital über Labview versorgt. Die Ausgänge möchte ich im Idealfall nur mit einem IC (keine sonstigen Bauteile) an die beiden Motoren anschließen.
Es ist für mich nicht wichtig, ob ich über Labview an den 4 ANschlüssen für die Schritte sorgen muss, oder ob eine Logik das schrittweise ansteuern übernimmt und ich lediglich die Schrittimpulse ausgebe.

Ich stehe leider immer noch auf dem Schlauch, welche Möglichkeit nun die sinnvollste ist.
Eine Investition von ca. 100€ bis 150€ für Motoren und die Steuerung wäre durchaus ok!

Vielen Dank!

Grüße

Das http://www.rn-wissen.de/index.php/Schrittmotoren dürfte eine einfache Lösung sein. Viel aufwändiger wird die Steuerung der Motoren (bei diesem Spiel), davon würde ich später gerne einmal ein Video sehen. :-)

Gruß Richard

mam2508
23.03.2011, 19:18
Hallo an alle!

Ich habe heute "gemessen" mit einem 61 cm langen Stab war ein "Gewicht" von ca. 25 bis 30g aufzubringen. Meiner Rechnung nach: (0,03kg*10N/kg)*0,61m = 0,183 Nm.

Hat dazu jmd. eine Empfehlung des Schrittmotors?
Ich tendiere damit jetzt zu:
http://www.conrad.de/ce/de/product/198747/42MM-SCHRITTMOTOR-18-1A-049-NM/SHOP_AREA_17346&promotionareaSearchDetail=005
http://www.reichelt.de/Schrittmotoren/QSH4218-51-049/index.html?;ACTION=3;LA=444;GROUP=C39;GROUPID=3299 ;ARTICLE=62654;START=0;SORT=artnr;OFFSET=100;SID=1 1TYVBIH8AAAIAABBeGhUeb3068baba65799e52f19907b7d32e 20
http://www.reichelt.de/Schrittmotoren/QSH4218-40-033/index.html?;ACTION=3;LA=444;GROUP=C39;GROUPID=3299 ;ARTICLE=62653;START=0;SORT=artnr;OFFSET=100;SID=1 1TYVBIH8AAAIAABBeGhUeb3068baba65799e52f19907b7d32e 20


Als Treiber habe ich mir jetzt den L6205N von http://www.rn-wissen.de/index.php/Schrittmotoren ausgesucht. Benötigt der unbedingt die Beschaltung, um ihn herum oder können die Pins 3,8,12,14,17 und 19 unbeschaltet bleiben?

Vielen Dank!

Wir stehen kurz vor der Lösung!! :)

sthiemt21
23.03.2011, 19:54
Cooles Projekt, das video musst du mal posten.
Ich habe ein wenig Erfahrung mit LabView und Schrittmotorsteuerung: Ich kann dir sagen das im du bei einer direkten Ansteuerung sofort auf das Echtzeitproblem stößt. (vgl. LabView Forum (http://www.labviewforum.de/Thread-Workaround-fuer-Schrittmotorsteuerung-mit-NI-6008)). Warum kannst du da nachlesen.

Aber Ansteuerung hin oder her selbst wenn du die Logik auslagerst hast du das Problem welches Schrittmotoren bei kleiner Drehzahl nunmal haben: Der Motor wird nicht "sauber Rundlaufen".
Das liegt im Prinzip daran, dass bei Schrittmotoren bedingt durch ihre Antriebsgeometrie bei geringen Drehzahlen hohe Rastmomente auftreten. Praktisch bedeutet das für dich, dass dein Spielbrett durch das abwechselnde Beschleunigen und Verzögern anfängt zu schwingen (Man könnte es als ruckeln bezeichnen). So wie ich das Spiel kenne ist eine schwingendes ruckartig bewegendes Spielfeld nicht wünschenswert. Sind die Drehzahlen höher dann "glättet" die Masse des Ankers die ganze Bewegung und es wird ruhiger.

Um diesem Problem zu begegnen könnte ich mir zwei Lösungen vorstellen:
1
Treib die beiden Stellräder am Spiel mit einem Riemen an und wähle den Durchmesser der Riemenscheibe am Motor min 6-8 mal kleiner als den Riemen am Spiel Riemenscheiben un Riemen gibt's bei Conrad. Bei der Ansteuerung solltest du dann trotzdem nicht bei deiner Methode bleiben (Schrittimpulse selber geben), da du mit Labview nur Frequenzen eingeben kannst die ganzzahlige Periodendauern haben (in ms). Heisst im Klartext 1kHz (1ms) 500Hz (2ms) 333Hz (3ms) -> kein sanftes anfahren.

2
Du könntest auch wie gesagt DC-Getriebemotoren mit hoher Übersetzung wählen. Über deine analogen Ausgänge kannst du die Spannung steuern (natürlich auch mit zwischengeschalteten Treiber).

Da du die Schrittmotoren bereits gibt es noch ein kleines Workaround: gebe die Frequenzen mit der Soundkarte. Genau daran arbeite ich auch gerade, weil ich hier ohne Budget ein kleines Nebenprojekt zum laufen bringen muss (vgl. LabView Forum (http://www.labviewforum.de/Thread-Workaround-fuer-Schrittmotorsteuerung-mit-NI-6008)). Wenn du dir dann noch einen Schrittmotortrieb ähnlich dem oben erwähnten Nanotec Treiber besorgt und im 1/16 Mikroschrittbetrieb arbeitest (wichtiges Zauberwort) dann könnte das ganze klappen.

Gruß
sthiemt

dussel07
23.03.2011, 19:57
Du rechnest ein Moment von 0,183Nm aus und willst einen schwer zu beschaffenden L6205 nutzen?
Hä??
Wie ich schon geschrieben hab:
Nimm einen L293D, der reicht völlig, ist viiiiel billiger, einfacher zu bekommen und benötigt nur einen Kondensator.
Die Idee mit dem Riemen würde ich in jedem Fall aufgreifen!
Da bekommst Du den "Mikroschritt" gratis, ein mehrfaches an Drehmoment und eine einfache Anbindung "Motor - Anwendung".
Geschwindigkeit (Drehzahl) brauchst Du auch keine für dein Projekt, eher feinfühliges Bewegen.