PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Alternative zu l297/l299 Schrittmotoransteuerung?



IRQ
03.05.2007, 14:37
Hi,

Ich bastle gerade in Eagle an einem Platinenlayout für die Ansteuerung von zwei Schrittmotoren mit Hilfe der allseits bekannten l297, l298. Ich bin schon fast fertig und bis jetzt habe ich auch nur zwei Drahtbrücken, aber langsam wird es verdammt haarig... Außerdem muss ich sehr sparsam mit dem Platz umgehen, wenn ich alleine die Steuerung (!) auf eine halbe Euro-Platine bringen will.

Irgendwie ist das schon sehr kompliziert. Eine Doppelseitige Platine will ich nicht machen, daher habe ich mal nach ICs geschaut, die eine Kombination aus l297 & l298 darstellen. Bin dabei auf den hier gestoßen:

TA8435HQ (http://www.motionstep.de/start.php?d_MS_IC3540_DP_Schrittmotor_Treiber_IC_3 _5A441.php)

Der Preis beträgt pro Treiber dann 10€, macht 20€, was natürlich schon ein Stück teuerer ist. Kann mir jemand eine Alternative empfehlen?

Die beiden Schrittmotoren sind nur sehr kleine (genauen Typ weiß ich noch nicht), aber wahrscheinlich werde ich sie aus Floppy Laufwerken o.Ä. ausbauen.

Vielen Dank!

sousuke
03.05.2007, 15:46
Wie wärs mit dem IMT-902 von nanotec (www.nanotec.com). Hab selber noch keine Erfahrung damit. Plane aber ein paar zu bestellen. Damit kannst du zwei Motoren mit einem Treiber steuern (der IMT-901 kann nur einen). Kostet auch ca. 10€.

Yossarian
03.05.2007, 16:27
Hallo
z.B PBL3717,PBL3771,A3952,A3959,A3977, LM18245, LM18200, L6203,L6204,L6205,L292;

Schau bei Siemens(Infinion), ST,Motorola(freescale),Microchip,Trinamic,NS,ON,IR F,Intersil,Apex,Allegro...
Fast jeder Hersteller hat etwas im Programm, um die Automobilbranche beliefern zu können.
Für solch kleine Motoren(unipolar?) können auch ULN 2803 o.ä verwendet werden.Auch diskrete Lösungen machen keinen großen Aufwand.
Mit freundlichen Grüßen
Benno

IRQ
04.05.2007, 21:39
Vielen Dank für die Antworten. Habe etwas gestöbert und das Richtige für mich gefunden (wie ich meine):

Der L6219 von ST.

Allerdings ist mir noch nicht 100% klar, wie ich ihn mit dem µC ansteuere. Die Inputs I01,I02 sowie I11,I12 sind für die Schrittweite. Ich denke die werde ich jumpern und auf Low/Low setzen, da mir Vollschrittbetrieb reicht. Phase1/2 ist für die Drehrichtung des Motors - auch kein Problem.

Was mir noch nicht ganz klar ist: Wie sage ich dem Treiber, dass er den Motor um einen Schritt bewegen soll? Geht das über die Eingänge RC? Im Manual steht da irgendwas von


A parallel RC network connected to this pin sets the OFF time of the
higher power transistors. The pulse generator is a monostable triggered
by the output of the comparators (toff = 1.1 RT CT).

Oder doch über COMP1/2? :-s Bahnhof!

Vielen Dank!

PS: Ich hab eine Eagle-Lib für den l6219 erstellt, wenn ich sie etwas verfeinert habe, kann ich sie ja hier mal anhängen.

Yossarian
04.05.2007, 22:27
Hallo

..dass er den Motor um einen Schritt bewegen soll
durch sinniges Schalten von I01,I11,Ph1 und deren Pendants.
Siehe Funktionsbeschreibung und Bild 2.
Mit freundlichen Grüßen
Benno

darwin.nuernberg
04.05.2007, 23:11
Wie wärs mit einem quasi intellignten Treiber?
Willst du den Schrittmotor permanent drehen oder so wie im Sinne des Erfinders zum positionieren verwenden?

Dann könnte der TMC222 sehr gute Dienste leisten,
wird über I2C gesteuert und du brauchst nur die Zielposition angeben, die Beschleunigung, Verzögeruung und Geschwindigkeit werden dann, wenn einmal eingestellt, automatisch berücksichtigt ebenso wie max. Strom und vieles weitere. Maximal bis 800mA (das sollte für kleine bis mittelstarke Motoren reichen)

Schau dir doch mal mein Projekt dazu an: PROTOBED StepM – TMC222 RN (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=21730)

Dein Prozessor ist während der Motor dreht nicht mit der Steuerung desselben beschäfigt, da alles vom TMC222 erledigt wird und Du kannst andere Routinen zwischenzeilich ausführen (oder auf Ereignísse reagieren während der Motor unbeeinflusst konstant weiter läuft).