Forum: Mikrocontroller und Digitale Elektronik Stromverlauf eines Schrittmotors mit dem Oszilloskop messen


von Markus H. (traumflug)



Lesenswert?

Ich würde gerne den Stromverlauf durch einen Schrittmotor messen. Wie 
der in der Theorie aussieht, kann man im ersten Bild sehen. Das Ganze 
ist dann noch überlagert von der Strombegrenzung per PWM, siehe zweites 
Bild. Beides aus dem Allegro A4988 Datenblatt.

Mein Treiber ist ein THB7128, der sehr ähnlich arbeitet. Der Motor 
läuft, könnte aber leiser sein. Wie das alles zusammen hängt und warum 
diese Messung relativ wichtig ist, kann man zusammen mit ein paar 
Oszilloskop-Bildern hier sehen:

https://www.youtube.com/watch?v=Wf8rN3bV8XM

Dieser Mensch in dem Video hat teures Gerät, einen Strommess-Tastkopf, 
"in der Firma ausgeliehen". So eine Firma habe ich nicht, also müssen 
Hausmittel her.

Eine gängige Methode, die ich ergoogelt habe, ist eine Strommess-Spule. 
Also habe ich einen alten Print-Übertrager aus der Grabbelkiste 
gefischt, die schwarze Leitung da durchgesteckt und gemessen, siehe 
drittes Bild. Diese Spule liefert auch ein hübsches Signal, rund 8 Volt. 
Nur: das Signal ändert sich weder, wenn man die Stromstärke verändert, 
noch, wenn man die Drehzahl des Motors anders einstellt. Es kommt 
eigentlich immer das gleiche Bild, gleiche Amplitude, gleiche Frequenz. 
Siehe viertes angehängtes Bild.

Die Spannung ohne diese Spule zu messen ist auch kein Problem, da sieht 
man meist ein recht sauberes Rechteck, allerdings überlagert von einem 
schwachen Sinus. Siehe fünftes und sechstes Bild. Immerhin, die 
Amplitude dieses Sinus steigt mit der Stromstärke und dessen Frequenz 
ändert sich mit der Motordrehzahl.

So geht das alles also nicht. Es gibt ja auch noch die Methode mit einem 
Shunt. Dafür mache ich nachher einen zweiten Post.

von Markus H. (traumflug)


Angehängte Dateien:

Lesenswert?

(Fortsetzung)

Also habe ich einen Shunt mit 0,2 Ohm in die Leitung der einen 
Motorspule eingesetzt. Bei 1 A sollten da 200 mV abfallen. Ein 
Metalloxid-Widerstand mit 2W. Da ich auch keinen Differenz-Tastkopf 
habe, habe ich den zweiten Kanal angestöpselt und die Signale addiert, 
eins davon invertiert. Mit einem einzigen Tastkopf geht das ja nicht 
wegen der Masse.

Die Idee ist soweit gut und das hat bei analogen Scopes bestimmt auch 
funktioniert, doch beim DSO machen Einem da die 8 Bit Auflösung einen 
Strich durch die Rechnung. Damit die 12 V überhaupt erfasst werden, 
musste ich auf 2 V/div stellen. Dann bleiben von den 256 möglichen 
Pegeln aber nur noch 5 oder 6 für das eigentliche Signal übrig, die 
berechnete Summe sieht entsprechend aus, siehe erstes Bild.

Also den Übertrager wieder dran. Die eine Spule des Übertragers mit den 
beiden Enden des Shunts verbunden, an den anderen Enden mit einem 
Tastkopf gemessen. Siehe zweites Bild. Auch nix.


An der Stelle bin ich jetzt mit meinem Latein am Ende. Stehe ich 
vielleicht einfach nur auf dem Schlauch? Kann man das anders messen? 
Oder muss ich zusehen, einen Tastkopf mit Hall-Sensor zu bauen?

von idee (Gast)


Lesenswert?

Strom mit Shunt in der Masseleitung der Schaltung messen? Dann braucht 
es keinen differentiellen Tastkopf.

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Hallo Markus,

was ist denn nun eigentlich deine Frage? Am Shunt wirst du den Sinus 
auch nicht sehen, weil da in den Off-Phasen je nach Decay-Mode kein 
Strom fließt. Solche Messungen kann man gut mit einem Hallsensor machen, 
z.B. denen von LEM oder Allegro.

Mit freundlichen Grüßen
Thorsten Ostermann

von spess53 (Gast)


Lesenswert?

Hi

>An der Stelle bin ich jetzt mit meinem Latein am Ende. Stehe ich
>vielleicht einfach nur auf dem Schlauch? Kann man das anders messen?
>Oder muss ich zusehen, einen Tastkopf mit Hall-Sensor zu bauen?

Warum misst du nicht einfach die Spannung über der Shuntwiderstand? 
Allerdings fehlt da die Richtungsinfomation.

MfG Spess

von Markus H. (traumflug)


Lesenswert?

idee schrieb:
> Strom mit Shunt in der Masseleitung der Schaltung messen?

Das wäre schön. Keine der vier Strippen zum (bipolaren) Schrittmotor ist 
mit Masse verbunden. Da fliessen Ströme in beide Richtungen, je nach 
Motorstellung.


Thorsten Ostermann schrieb:
> Am Shunt wirst du den Sinus
> auch nicht sehen, weil da in den Off-Phasen je nach Decay-Mode kein
> Strom fließt.

Ich hoffe doch, dass immer ein Strom fliesst, sonst würde der Motor sein 
Drehmoment bzw. seine Halteposition verlieren. Selbst angehalten fliesst 
immer noch Strom.

von Markus H. (traumflug)


Lesenswert?

spess53 schrieb:
> Warum misst du nicht einfach die Spannung über der Shuntwiderstand?

Würde ich gerne tun, doch keines der vier Enden der Motorspulen ist mit 
Masse verbunden, daher kann ich die Masse des Tastkopfs nirgendwo 
anklemmen.

In einem schwachen Moment hatte ich das sogar an einem anderen Treiber 
(Allegro A4983) so gemacht. Jetzt habe ich einen durchgebrannten Treiber 
mehr. :-/ Wobei der THB7128 aber kurzschlussfest sein soll.

von spess53 (Gast)


Lesenswert?

Hi

>Würde ich gerne tun, doch keines der vier Enden der Motorspulen ist mit
>Masse verbunden, daher kann ich die Masse des Tastkopfs nirgendwo
>anklemmen.

An jeder H-Brücke befindet sich ein Shuntwiderstand (Rs1/Rs2) am 
Anschluss Sense1/Sense2. Und über den fließt der Motorstrom.

MfG Spess

von Markus H. (traumflug)


Angehängte Dateien:

Lesenswert?

spess53 schrieb:
> An jeder H-Brücke befindet sich ein Shuntwiderstand (Rs1/Rs2) am
> Anschluss Sense1/Sense2. Und über den fließt der Motorstrom.

Stimmt, solche Widerstände gibt's. Also habe ich das mal gemessen, siehe 
Bild. Immerhin sieht man den Sinus.

Der ist aber ziemlich abgehackt. Ich vermute mal, dass das mit der 
Strombegrenzung zu tun hat.

von Markus H. (traumflug)


Angehängte Dateien:

Lesenswert?

Mit ein bisschen suchen habe ich ein Bild gefunden, das diese 
Decay-Modes beschreibt.

Es gibt da zwei Möglichkeiten, den Strom auszuschalten, wenn der 
Soll-Strom erreicht ist. Die Eine ist, den Strom aus der Spule nach 
Masse abzuleiten. Das wird Fast Decay genannt. Gern über den 
Strommess-Widerstand. Dabei fällt der Strom relativ schnell ab. Der 
Nachteil ist, dass dabei der Strom zwischen An und Aus stark schwankt 
und damit der Motor eher lauter wird.

Die andere Möglichkeit ist, die beiden Enden der Spule zusammen zu 
legen. Dann fällt der Strom deutlich langsamer ab, das nennt man Slow 
Decay. Dabei gibt es keine Masseverbindung. Damit ist der Motor 
leiser, allerdings fällt bei etwas höheren Drehzahlen der Strom nicht 
mehr schnell genug ab, so dass es zu unerwünschten Artefakten kommt, die 
man im Video im ersten Post sieht.

Die schlauen Treiberhersteller sind dann noch auf die Idee gekommen, die 
beiden zu mischen, erst langsam, dann auf schnell umschalten. Das nennen 
sie Mixed Decay. Ganz neu in Mode ist, den Anteil des Slow Decay von der 
Stellung des Schrittmotors abhängig zu machen.

Daneben gibt es noch ein paar mehr Phasen, denn im Slow Decay kann man 
natürlich den Strom nicht messen.

tl;dr:

Der Motorstrom geht nur teilweise über den Shunt des Treibers auf Masse. 
Zumindest, wenn ich das mit dem Decay richtig verstanden habe.

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Hallo Markus,

> Mit ein bisschen suchen habe ich ein Bild gefunden, das diese
> Decay-Modes beschreibt.
...
> Der Motorstrom geht nur teilweise über den Shunt des Treibers auf Masse.
> Zumindest, wenn ich das mit dem Decay richtig verstanden habe.

Das war das, was ich dir mit meinem letzten Post mitteilen wollte...

Mit freundlichen Grüßen
Thorsten Ostermann

von Markus H. (traumflug)


Lesenswert?

Thorsten Ostermann schrieb:
> Das war das, was ich dir mit meinem letzten Post mitteilen wollte...

Jetzt verstehe ich. :-) Im zweiten Post hatte ich allerdings einen 
zusätzlichen Shunt direkt in die Leitung zwischen Treiber-Chip und 
Motorspule eingelötet.

von Martin C. (Gast)


Lesenswert?

Hallo,

Die Firma Sensitec bietet magnetorestriktive Sensoren zur 
potenzialfreien Strommessung an.
Sie haben eine deutlich höhere Grenzfrequenz als Hallsensoren.

Erfahrungen habe ich mit den Bausteinen aber noch keine.

Hier ein Testboard mit 5A Messbereich:

http://de.rs-online.com/web/p/entwicklungskits-power-management/7918517/

Gruß,
Martin Cibulski

von Markus H. (traumflug)


Lesenswert?

Martin C. schrieb:
> Die Firma Sensitec bietet magnetorestriktive Sensoren zur
> potenzialfreien Strommessung an.

Hui, fast 100 Euro :-)

Irgendwie schreit die ganze Situation doch danach, dass ich da ein 
kleines Open Source Projekt auflege. Das sollte für 15 Euro machbar 
sein. Seltsam, dass das noch niemand gemacht hat.

von spess53 (Gast)


Lesenswert?

Hi

Was erhoffst du eigentlich von den Messungen?

MfG Spess

von Klaus (Gast)


Lesenswert?

Markus H. schrieb:
> Also habe ich einen Shunt mit 0,2 Ohm in die Leitung der einen
> Motorspule eingesetzt. Bei 1 A sollten da 200 mV abfallen. Ein
> Metalloxid-Widerstand mit 2W. Da ich auch keinen Differenz-Tastkopf
> habe, habe ich den zweiten Kanal angestöpselt und die Signale addiert,
> eins davon invertiert. Mit einem einzigen Tastkopf geht das ja nicht
> wegen der Masse.

Nur wenn man unbedingt seine Schrittmotoransteuerung erden muß. Wenn man 
die Schaltung zum Messen erdfrei am Labornetzteil betreibt, sehe ich da 
kein Problem. Und da der Treiber ja den Strom steuert, kann der 
Widerstand auch größer sein, der Strom bleibt der gleiche.

MfG Klaus

von Thorsten O. (Firma: mechapro GmbH) (ostermann) Benutzerseite


Lesenswert?

Hallo Spess,

>
> Was erhoffst du eigentlich von den Messungen?

Ich weiss nicht was der OP damit vorhat, aber man kann damit z.B. ganz 
gut beurteilen, wie gut die Stromregelung so funktioniert.

Mit freundlichen Grüßen
Thorsten Ostermann

von Markus H. (traumflug)


Lesenswert?

Thorsten Ostermann schrieb:
> man kann damit z.B. ganz
> gut beurteilen, wie gut die Stromregelung so funktioniert.

Genau. Einen Schrittmotor ruhig laufen zu lassen ist bei näherer 
Betrachtung eine ziemlich komplizierte Sache, das sollte man sich schon 
mal anschauen.

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.