Forum: Mikrocontroller und Digitale Elektronik Schrittmotor Treiberplatine


von Max (Gast)


Lesenswert?

Hallo Leute!

Ich möchte mir gerne einen Schrittmotor-Treiberplatine bauen wo ich die 
Strombegrenzung digital einstellen kann. Also je nach Typ Schrittmotor 
soll der Strom eingens einstellbar sein. Zur zeit mache ich es so dass 
ich den Widerstand wechsle. Könnt ihr mir weiterhelfen wie ich das lösen 
könnte?

Als Treiber benutze ich den A4982SLPTR-T

Danke lg
MAX

von Thomas (Gast)


Lesenswert?

Der Treiber richtet sich natürlich nach dem maximal erforderlichen 
Strom. Für kleinere Motoren bietet sich z.B. der A3967. Der max. Strom 
wird in Form einer Referenzspannung vorgegeben und die kann natürlich 
auch per PWM mit TP vom µC kommen.

von MaWin (Gast)


Lesenswert?

>  wie ich das lösen könnte?

Da der A4982 schon einen DAC hat um Mikroschritte zu können,
ist eine weitere Reduktion der Sense Spannung nicht sinnvoll.

In Schritten:

Mehrere Sense Widerstaände (2 Ohm, 4 Ohm, 8 Ohm) parallel
und die jeweils benötigten mit einem MOSFET an Masse schalten.

Analog:

Zwischen den Schritten kann man dann durch Variation der Vref
von 1V auf 2V präziser vorgeben. Aber es ist nicht sinnvoll,
VRef unter 1V zu setzen, zumindest so lange man Mikroschritte
haben will. Ansonsten könnte man die Stufen der Mikroschritte
auch gleich als "eingebaute Stufen" mitverwenden.

Ein OpAmp an einem immer gleichen shunt dessen verstärkung
man z.B. mit einem Digitalpoti verstellt wäre auch möglich,
es wird aber um so unpräziser je geringer die Spannung wird.

von Stefan (Gast)


Lesenswert?

Hallo,

der A4982 hat einen Vref Eingang.

Vref zusammen mit der Dimesionierung des Sense-Widerstandes ergibt den 
maximalen Strom.
Vref kann in weiten Grenzen gändert werden (siehe Datenblatt) und damit 
fast jeder beliebige Strom eingestellt werden.
Ich habe das mit einem 4-Bit DAC (aus Widerständen) in einer meiner 
Schaltungen so gemacht.

Es ist aber nicht ratsam Vref während des Betriebs zu ändern.

Ich fahre am Anfang einer Ansteuerung dem DAC hoch (je nach 
Schrittmotor),
steuere dann den Schrittmotor, und am Ende (nach dem letzten Schritt) 
gehts wieder runter so dass der Schrittmotor gerade noch seine Position 
halten kann. Quasi Ruhestellung bei geringstem Strom!

Gruss Stefan

von Thomas (Gast)


Lesenswert?

MaWin schrieb:
> Da der A4982 schon einen DAC hat um Mikroschritte zu können,
> ist eine weitere Reduktion der Sense Spannung nicht sinnvoll.

Und wozu gibt das Datenblatt für V_Ref dann einen Bereich von 0..4V an. 
Bei der Stromregelung kommt es nun wirklich nicht auf das letzte % an 
und der Sinn ist die Skalierung des DAC Outputs..

von MaWin (Gast)


Lesenswert?

> Und wozu gibt das Datenblatt für V_Ref dann einen Bereich von 0..4V an

Weil er so viel verträgt ohne kaputt zu gehen,
aber das noch lange nicht sagt, daß der Bereich sinnvoll ist.

Die Spannung an VRef ist auch die Spannung am Shunt,
und bei 2A wären 4V schon 8 Watt pro shunt.

Man will keine 4V :-(

Bei 2V ist aber der Fehler im 33% Mikroschritt schon 15%,
man will also auch nicht 1V oder weniger, weil dann der
Fehler wohl über 50% geht.

Die 2V nominal von Allegro sind schon ein Zugeständnis
an die miese Präzision, denn 4 Watt am shunt sind heftig,
andere Schrittmotortreiber kommen mit 0.5V aus.

Daher halte ich einen Bereich von 1V bis 2V für möglich,
insbesondere wenn man auf Mikroschritt verzichtet,
aber 0.4V bis 4V, wie er für 1:10 notwendig wäre, ist
nur mit VRef nicht zu schaffen.

von Stefan (Gast)


Lesenswert?

Hallo,

MaWin schrieb:
> Die Spannung an VRef ist auch die Spannung am Shunt,
> und bei 2A wären 4V schon 8 Watt pro shunt.

Nicht ganz, ALEGRO teilt (in weiser Voraussicht) Vref vor dem Vergleich 
durch 8.

Also bei Vref = 4V und einem Sense von 0,25 Ohm hat man 2A (gleich 
0,5Watt am Shunt)

Aber ein ändern von Vref im Betrieb (d.h mikrostepping mit Vref) macht, 
wie MaWin schon sagte, keinen Sinn da der A4982 schon 1/16 Schritt 
microstepping selbst macht und für eine weitere Abstufung müsste man 
sich schon was besonderes einfallen lassen.

Gruss Stefan

von Stefan (Gast)


Lesenswert?

Hallo, noch mal

ich hab mich verrechnet, also

Vref = 4V d.h. 1/8 am Shunt = 0,5V
bei 0,25 Ohm folglich 2A
und das ergibt natürlich 1Watt

von Uwe (Gast)


Lesenswert?

Wenn du nur ein IC möchtest nimm doch sowas 
http://www.trinamic.com/tmc/render.php?sess_pid=289
oder die neuen die können noch mehr. Wenn du mehr Strom brauchst dann 
die mit externen Powertransistoren

von m.n. (Gast)


Lesenswert?

Uwe schrieb:
> Wenn du nur ein IC möchtest nimm doch sowas

Das ist ein schlechter Vorschlag, da der A4982 deutlich besser ist :-)

Für einfache Stromabsenkung reicht ein 4bit R2R Netzwerk an vier 
Prozessor-Pins. Eine höhere Auflösung ginge per PWM, bringt aber nur 
etwas, wenn man I/O Pins sparen muß.
Die Mikroschritte sind ganz nett, um die Laufgeräusche zu reduzieren. 
Zur exakten Positionierung taugen sie in der Regel nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.