Hallo,
direkt über den µC wird schwierig
Schrittmotoren benötigen üblicherweise eine viel höhere Leistung als die Ports eines Controllers liefern können. Zumindest benötigt man deshalb noch einen Treiber. Je nach Motor reichen 1 Transistor pro Strang (unipolar) oder eben 1 Vollbrücke (bipolar). Die Bipolaren sind heute eher üblich.
Wenn man den Konstantspannungsbetrieb wählt, die Motoren haben üblicherweise eine höhere Nennspannung sowie eine große Induktivität und Wicklungswiderstand, benötigt man eigendlich nur den Treiber, den man dann entsprechend ansteuern muss. Die Konstantspannungsbetriebsart hat aber den Nachteil, dass das Drehmoment bei höheren Drehzahlen recht schnell nachlässt. Deshalb haben sich sich die Konstantstrombetriebenen eher durchgesetzt.
Die Motoren für Konstantstrombetrieb haben üblicherweise eine niedrige Nennspannung und kleine Induktivität und Wicklungswiderstände. Zum Betreiben der Motoren in dieser Betriebsart benötigt man noch eine Stromregelung. Man kann dann den Motor mit einer Betriebsspannung weit über der Nennspannung betreiben, was für eine weitaus bessere Dynamik und eine höhere Drehfrequenz sogt (Drehmoment beibt über einen weiten Bereich annähernd konstant)
Dann ist da noch die Sache mit der Schrittauflösung. Übliche Motoren haben Schritte von 1,8° pro Schritt. Dies ist aber auch noch ziemlich viel, was sich durch rauen Lauf bemerkbar macht. Um Resonanzen zu verringern und den Lauf zu verbessern wird nun über entsprechende Ansteuerung des Stromreglers der Strom einem Sinusverlauf angeglichen. Neuere Endstufen lösen den einzelnen Schritt schon sehr hoch auf.
Soo, kurz bis auf den Treiber kann man fast alles mit einem "Controller" machen (neuere Endstufen basieren häufig auf DSPs). Wenn man es einfach haben möchte ohne den Controller nur für den Motor voll auszureizen würde ich auf ein fertiges IC zurückgreifen z.B. von Toshiba oder Allegro. Da ist schon alles mit drin, gibts auch recht klein in SMD und man benötigt im einfachsten Fall (Enable und so mal außen vor) 2 Pins des µC um dem Schrittmotortreiber Takt und Richtung vorzugeben.
MfG
Manu
Edit: War etwas langsam, hätte doch erst zuende schreiben sollen und dann Essen
Edit 2: Sowas sollte z.B. gut gehen
http://de.rs-online.com/web/p/motion...ntrol/0428287/
Lesezeichen