Forum: Mikrocontroller und Digitale Elektronik DRV8825 Stepper-Driver. Wie stelle ich das Poti ein?


von Roth (Gast)


Angehängte Dateien:

Lesenswert?

Der DRV8825 ist ein Schrittmotor-Treiber.

Darauf ist ein Poti, mit dem man wohl die Strombegrenzung einstellen 
kann kann. Ist das nun ein KANN, oder ein MUSS ?

Ich habe nur einen winzigen Schrittmotor anzusteuern, der wohl keinen 
nenneswerten Strom braucht. Diesen hier: 
http://www.xenone.de/Schrittmotoren/Schrittmotor-91255008-fuer-VDO-Kombiinstrument-VW-Audi-Seat-Skoda::1153.html

My Inglisch is leider net so gud :) folglich aus dem Datenblatt ich 
nicht so recht schlau werde, was ich tun soll ? Vielleicht kann mir 
jemand einen Tipp geben.

Diese Infos habe ich

Im Anschlussplan/Beschreibung habe ich nichts zum Poti gefunden 
https://www.instructables.com/id/Controll-a-Stepper-Motor-With-the-DRV8825/

Hier das Datenblatt
http://www.ti.com/lit/ds/symlink/drv8825.pdf

Schonmal DANKE :-)

von Wolfgang (Gast)


Lesenswert?

Roth schrieb:
> Darauf ist ein Poti, mit dem man wohl die Strombegrenzung einstellen
> kann kann. Ist das nun ein KANN, oder ein MUSS ?

Das ist keine Strombegrenzung, sondern damit legt man den Sollwert für 
die Stromregelung fest. Wenn das zu zu niedrig eingestellt ist, hat der 
Motor kein vernünftiges Drehmoment und wenn das zu hoch eingestellt ist, 
raucht der Motor im Stand ab.

von Johannes S. (Gast)


Lesenswert?

z.B. im RepRap Wiki findet man eine Einstellanleitung:
https://reprap.org/wiki/Pololu_stepper_driver_board
https://reprap.org/wiki/A4988_vs_DRV8825_Chinese_Stepper_Driver_Boards
das DRV8825 Board sollte zwei 0,1 Ohm Shut Widerstand haben (einen etwas 
dickeren mit Aufdruck R100), das sollte man kontrollieren weil es auch 
andere gibt. Man stellt eine Spannung am Poti Schleifer ein und vom R 
hängt dann der Motorstrom ab.
Die Treiber sind für 3D Drucker, da arbeitet man mit ca. 1 A Motorstrom, 
das ist aber viel zu viel für dein Motörchen, der wird eher 0,1 A max. 
vertragen, eher noch weniger. Also muss die Spannung am Poti nicht 0,5 V 
sondern 0,05 V eingestellt werden. Das ist aber knapp über min und wird 
sich nicht ordentlich einstellen lassen, wenn du die SMD löten kannst 
würde ich den R am Poti vergrössern und einen grösseren Shunt von 1R 
statt 0R1 verwenden.
Aber eigentlich reicht für so Motörchen auch eine einfache H-Brücke. 
Vielleicht ist der sogar Unipolar, hat der 4 oder mehr Anschlusskabel?

von Egon D. (Gast)


Lesenswert?

Roth schrieb:

> Darauf ist ein Poti, mit dem man wohl die
> Strombegrenzung einstellen kann kann. Ist das
> nun ein KANN, oder ein MUSS ?

Im Regelfall ein MUSS.

Die Ausnahme: Du hast einen Motor mit hohem
Wicklungswiderstand und hoher Nennspannung.

Wenn Du den Treiber dann einfach mit dieser
Motornennspannung betreibst und die Strom-
regelung auf Anschlag drehst, bekommt der Motor
trotzdem nie zuviel Strom -- das geht ja auch
gar nicht.

von Roth (Gast)


Lesenswert?

Hab mal gemessen: Der Spulenwiderstand ist etwa 150 Ohm.

Wolfgang schrieb:
> Wenn das zu zu niedrig eingestellt ist, hat der
> Motor kein vernünftiges Drehmoment und wenn das zu hoch eingestellt ist,
> raucht der Motor im Stand ab.

Wieso soll der Motor zuviel Strom ziehen können? Verstehe ich nicht .. 
Der Motor ist meines Wissens für 12V ausgelegt, und die Spannung 
beträgt auch nur 12V

Egon D. schrieb:
> Wenn Du den Treiber dann einfach mit dieser
> Motornennspannung betreibst und die Strom-
> regelung auf Anschlag drehst, bekommt der Motor
> trotzdem nie zuviel Strom -- das geht ja auch
> gar nicht.
Das meine ich ja auch.


Johannes S. schrieb:
> Aber eigentlich reicht für so Motörchen auch eine einfache H-Brücke.
> Vielleicht ist der sogar Unipolar, hat der 4 oder mehr Anschlusskabel?

Gibt es eine Typenbezeichnung? Was für einen Chip kann man da nehmen?

von Roth (Gast)


Lesenswert?

Ich hab mal auf gut Glück angeschlossen. Strom am Netzteil auf 250mA 
begrenzt. Also laufen tut das Teil.

Ich habe mir das schwieriger vorgestellt mit den 4 Kabeln. Hab ja keinen 
anschlussplan für den Motor. Ich habe nur ein Kabelpaar umgepolt, dann 
lief er gleich.

Was mir aufgefallen ist:

Der Motor hat einen Anschlag. Schätze mal 300° (kein voller Kreis) , 
dann läuft er nicht weiter. Ist aber für ein Instrument, da dürfte das 
richtig sein.

In etwa drei Minuten wurde er schon deutlich warm. Hoffe, dass das ok 
ist.

Wenn ich eine H-Brücke verwenden könnte, die ohne Strombegrenzung 
abbeitet, wäre mir das wirklich lieber.

Der Treiberbaustein ist sonst nicht schlecht. Vor allem kinderleicht 
ansteuerbar.
1
int steps=52;
2
int dir =53;
3
int stepTime=100;
4
5
6
7
void setup() {
8
  
9
  pinMode(steps, OUTPUT);
10
  pinMode(dir, OUTPUT);
11
}
12
13
14
void loop() {
15
  digitalWrite(dir, HIGH);
16
  digitalWrite(steps, HIGH);   
17
  delay(stepTime);                      
18
  digitalWrite(steps, LOW);    
19
  delay(stepTime);                       
20
}

von Johannes S. (Gast)


Lesenswert?

Mit H-Brücken wird es schon mehr Bastelei. Die speziellen Treiber machen 
dir schon die Mikroschritte, sind billig und kompakt. Hast du das Poti 
auf so wenig wie möglich eingestellt? Da solche Motoren ja nicht für 
Lasten gedacht sind reicht evtl. auch einfach ein Vorwiderstand je 
Spule.

von Roth (Gast)


Lesenswert?

@Johannes S.
Ich habe den Poti erstmal so gelassen. Ich will nicht drehen, bevor ich 
es verstehehe ;)

Der DRV8825 kann laut Datenblatt auch (32) Mikroschritte. Wie kann man 
einen Schritt eigentlich unterteilen? Dreht sich bei 1/32 Mikroschritt 
der Motor auch nur 1/32 Schritt weiter?  Danke für die Info. Hatte 
übrigens vorher noch nie mit Schrittmotoren zu tun :D

von Egon D. (Gast)


Lesenswert?

Roth schrieb:

> Wolfgang schrieb:
>> Wenn das zu zu niedrig eingestellt ist, hat der
>> Motor kein vernünftiges Drehmoment und wenn das
>> zu hoch eingestellt ist, raucht der Motor im
>> Stand ab.
>
> Wieso soll der Motor zuviel Strom ziehen können?
> Verstehe ich nicht ..

Weil das...

> Der Motor ist meines Wissens für 12V ausgelegt,
> und die Spannung beträgt auch nur 12V

... zwar technisch möglich, aber sehr unüblich ist.

Normalerweise legt man an die ENDSTUFE eine sehr
deutlich höhere Spannung an; die Endstufe regelt
dann den Motorstrom so, dass der Motor nicht
überlastet wird.
Die MOTORSPANNUNG stellt sich dann drehzahlabhängig
passend ein und ist auch deutlich höher als die
Nennspannung; trotzdem wird der Motor nicht überlastet,
wenn die Stromregelung korrekt eingestellt ist.
Schwarze Magie :)


> Egon D. schrieb:
>> Wenn Du den Treiber dann einfach mit dieser
>> Motornennspannung betreibst und die Strom-
>> regelung auf Anschlag drehst, bekommt der Motor
>> trotzdem nie zuviel Strom -- das geht ja auch
>> gar nicht.
> Das meine ich ja auch.

Das stimmt ja auch -- aber es ist eben sehr unüblich.
Konstantspannungsbetrieb wird selten angewendet.

von Egon D. (Gast)


Lesenswert?

Roth schrieb:

> Der DRV8825 kann laut Datenblatt auch (32)
> Mikroschritte. Wie kann man einen Schritt
> eigentlich unterteilen?

Das geht vernünftig nur im stromgeführten Betrieb
(Stromchopperbetrieb), also mit höherer Spannung
an der Endstufe und aktiver Stromregelung.

Es geht auch anders -- aber das ist ECHTES
Gebastel.


> Dreht sich bei 1/32 Mikroschritt der Motor auch
> nur 1/32 Schritt weiter?

Klar. Hätte ja wenig Sinn sonst. Die Positionier-
genauigkeit lässt sich trotzdem nicht BELIEBIG
steigern :)

von Roth (Gast)


Lesenswert?

Egon D. schrieb:
> Das stimmt ja auch -- aber es ist eben sehr unüblich.
> Konstantspannungsbetrieb wird selten angewendet.

Also könnte es sein, dass der Motor für weniger als 12V ausgelegt ist? 
Ich habe die Daten nicht. An ein Datenblatt braucht man gar nicht zu 
denken. Es ist ein Kreuz mit VDO, aber die rücken absolut nichts raus.

Also kann ich nur ausprobieren. Wenns zu heiß wird, Poti etwas nach 
links ... "ich liebe sowas" :(

von Egon D. (Gast)


Lesenswert?

Roth schrieb:

> Egon D. schrieb:
>> Das stimmt ja auch -- aber es ist eben sehr unüblich.
>> Konstantspannungsbetrieb wird selten angewendet.
>
> Also könnte es sein, dass der Motor für weniger als 12V
> ausgelegt ist?

Du willst darauf hinaus, dass die Bordspannung zwar 12V
hat, der Motor aber im Stromchopperbetrieb bei niedrigerer
Spannung läuft?

Ja, theoretisch könnte das sein.


> Ich habe die Daten nicht. An ein Datenblatt braucht man
> gar nicht zu denken. Es ist ein Kreuz mit VDO, aber die
> rücken absolut nichts raus.
>
> Also kann ich nur ausprobieren.

Falls Du ein vernünftiges stellbares Netzteil hast, kannst
Du das verwenden. Einfach beide Motorwicklungen parallel-
schalten, ans Netzteil anklemmen, Spannung (wenig!) anlegen
und Temperatur überwachen.

von Johannes S. (Gast)


Lesenswert?

Voltmeter an den Testpunkt/Schleifer vom Poti. Drehen und sehen in 
welche Richtung es weniger wird. Dann fast auf Null drehen und testen ob 
der Motor noch läuft, das sollte reichen.
Die Mikroschritte macht der Treiber  selber, über Hardwarepins lässt 
sich der Modus einstellen, siehe Beschreibung vom Treiber.

von Roth (Gast)


Lesenswert?

Egon D. schrieb:
> Du willst darauf hinaus, dass die Bordspannung zwar 12V
> hat, der Motor aber im Stromchopperbetrieb bei niedrigerer
> Spannung läuft?

Ja, genau.

> Falls Du ein vernünftiges stellbares Netzteil hast, kannst
> Du das verwenden. Einfach beide Motorwicklungen parallel-
> schalten, ans Netzteil anklemmen, Spannung (wenig!) anlegen
> und Temperatur überwachen.

mhh. Geht das mit zwei Spulenwiderständen nicht einfacher? Widerstand 
solange größer machen, bis Motor nicht mehr läuft. Dann Widerstand 
wieder etwas kleiner und fertig. Oder ist das zu viel gefrickel?

Johannes S. schrieb:
> Voltmeter an den Testpunkt/Schleifer vom Poti. Drehen und sehen in
> welche Richtung es weniger wird. Dann fast auf Null drehen und testen ob
> der Motor noch läuft, das sollte reichen.
> Die Mikroschritte macht der Treiber  selber, über Hardwarepins lässt
> sich der Modus einstellen, siehe Beschreibung vom Treiber.

Steht im Datenblatt nichts drin, wie man den Poti ohne "fühlen und 
probieren" einstellt? Wenn ich die Stelle wüßte, könnte ich mich mit dem 
Englisch anfreunden. Aber ich weiß ja noch nicht mal, wonach (engl. 
Bezeichnung) ich suchen soll .. :(

von Egon D. (Gast)


Lesenswert?

Roth schrieb:

>> Falls Du ein vernünftiges stellbares Netzteil hast, kannst
>> Du das verwenden. Einfach beide Motorwicklungen parallel-
>> schalten, ans Netzteil anklemmen, Spannung (wenig!) anlegen
>> und Temperatur überwachen.
>
> mhh. Geht das mit zwei Spulenwiderständen nicht einfacher?
> Widerstand solange größer machen, bis Motor nicht mehr
> läuft. Dann Widerstand wieder etwas kleiner und fertig.
> Oder ist das zu viel gefrickel?

Das geht natürlich auch -- aber damit bekommst Du nicht
heraus, was der Motor MAXIMAL aushält, sondern mit
welcher MINIMALEN Spannung er gerade noch läuft. Das
ist nicht ganz dasselbe :)

von Wolfgang (Gast)


Lesenswert?

Roth schrieb:
> Wieso soll der Motor zuviel Strom ziehen können? Verstehe ich nicht ..
> Der Motor ist meines Wissens für 12V ausgelegt, und die Spannung
> beträgt auch nur 12V

Für so einen Motor brauchst du keinen Schrittmotortreiber mit 
Stromregelung. Wenn die Nennspannung mit der Betriebsspannung überein 
stimmt, kommt die Stromregelung des Treibers nicht zum Tragen und das 
Poti ist egal.

von Roth (Gast)


Lesenswert?

Das Thema Schrittmotor ist mir jetzt viel klarer. Danke allerseits :-)

von Pat P. (tsag)


Lesenswert?

Du kannst dir mal für deinen Arduino die Schrittmotor Bibliothek 
anschauen, sie heißt (soweit ich weiss) Accelstepper. Eventuell findest 
Du auch erklärungen auf Deutsch, ist aber alles recht simpel. Diese 
unterstützt dann auch deinen Microsteps. Ich habe bisher für Instrumente 
immer die Juken Swiss X27.168 genutzt. Diese kosten 3€ und lassen sich 
mit dem Arduino auch direkt ansteuern (5V direkt über die Ports ohne 
Motortreiber oder H-Brücke) .

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.