PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Suche passenden Schrittmotortreiber



darxon
04.08.2005, 17:02
Hallo an alle Fachleute, die sich mit Schrittmotoransteuerungen auskennen.
Ich habe mirfür mein teleskop einen Steuerbaren Fokusierer mit einem Schrittmotor gebaut. http://www.astrohome.info/LXFocuser.htm
In der Schaltung habe ich einen UCN5804 eingesetzt.
Der hat den Vorteil, daß er die Steuerlogik und den Treiber zusammen gleich integiert hat. Nachteilig ist allerdings, daß er nur unipolare Schrittmotoren ansteuern kann. Das möchte ich ändern und habe mich bereits umgeschaut. Die Kombination aus L297 und L298 ist durch den zusätzlichen IC mir einfach zu groß. Außerdem braucht diese kombination noch zusätzliche Widerstände und Kondensatoren. Selbst die Kombination aus L297 und dem kleineren L293 ist nicht weniger aufwendig.
Sie ist also gänzlich ungeeignet, da ich maximal 500mA Phasenstrom brauche und damit den L298 nie aureizen würde.
Gibt es einen Ansteuer IC für bipolare Motoren, der dem UCN5804 ähnelt und auch Ansteuerlogik und Treiber in einem IC vereinigt. Beschaffbar muß das Teil allerdings auch sein.
Ich bin für jeden Rat dankbar.

darxon
05.08.2005, 08:49
Hat keiner ne Idee oder gibts da keine Alternative?

SprinterSB
05.08.2005, 08:58
Schon mal den L6219 von ST angeschaut? Gibt's beim Reichelt.
Um externe Komplenten für Strombegrenzung, PWM-Einstellung, und nen Controller zur Ansteuerung kommst du aber nicht rum.

darxon
05.08.2005, 10:38
OK der vereinigt ja schon mal die Ansteuerlogik mit einem treiber. Allerdings komme ich nicht so recht mit der Beschaltung klar. Wie sag ich dem teil, wie es zu arbeiten hat. Beim L297 bzw beim UCN8504 ist das ja denkbar simpel. Man legt an einem pin die Richtung fest, Am anderen Pin sagt man, ob man Full- oder HAlfstep haben will und dann taktet man das Teil einfach und kann damit die geschwindigkeit festlegen. Wie aber soll das bei dem Gehen. So richtig habe ich das mit den Eingängen I01, I11,I01,I12, Phase1,Phase2 nicht ganz geschnallt.

SprinterSB
05.08.2005, 11:55
I0x I1x Strom
H H keiner: 0
L H klein: 1/3 I max
H L mittel: 2/3 I max
L L voll: I max

PHASEx=1: OUTxA = +, OUTxB = -
PHASEx=0: OUTxA = -, OUTxB = +

I0x, I1x ist also die binäre Codierung des Strangstromes x und PHASEx codiert dessen Richtung.
Laufrichtung kann man keine vorgeben, die beiden Treiberstufen arbeiten unabhängig voneinander.
Für eine einfache Ansteuerung kannst du alle Ixy zusammen auf 1 hängen. Der Motor dreht sich dann duch das Signal an PHASE und kein Strang ist je stromlos:

PHASE1: ...001100110011...
PHASE2: ...011001100110...

oder anders rum:
PHASE1: ...110011001100...
PHASE2: ...011001100110...

Dabei sind immer beide Windungen bestromt:
1: ++--++--++--
2: +--++--++--+
bzw
1: --++--++--++
2: +--++--++--+

Eine andere Ansteuerung wäre (0 steht für stromfrei, also I0x=I1x=0)

1: +0-0+0-0+0
2: 0+0-0+0-0+
bzw
1: -0+0-0+0-0
2: 0+0-0+0-0+

oder

1: 0+++0---0+++0---0+++
2: --0+++0---0+++0---0+

etc- Leider gibt's hier kein FixedFont, so daß die Zeichen nicht genau untereinander stehen.

Weitere Ansteuerungen kannst du dir überlegen; mit Teilbestromung lassen sich weitere Zwischenschritte anfahren.

Frank
05.08.2005, 12:01
Doch gibts. Für Fixfont den Code-Befehl nutzen! (siehe oben)

darxon
06.08.2005, 10:40
Aha, Also ist es hier nicht einfach mit Takten getan. Man muß also einen Teil der Logik die der UCN5804 mach im Microcontoller erledigen und quasi nach dem genannten Schema die Spulen ansteuern.
Danke erst mal für die Antworten. Ich muß noch mal drüber nachdenken, welche Lösung ich nun implementiere.