Ich versuche einen Stromregler für einen Bürsten DC-Motor zu
implementieren.
Eckdaten:
Batteriebetrieben
24V 15A Motor 3300 U/min Leerlauf
20kHz PWM
Strommessung per Hallsensor mit TP 1. Ordnung bei 1kHz in der Zuleitung
Regelschleife soll mit 1 kHz laufen.
Diagramme aufgenommen bei 10% Duty Cycle
Das ganze scheitert jetzt aber schon daran, dass die Stromaufnahme bei
konstanter Spannung und Leerlauf alles andere als konstant ist, so wie
ich das erwarten würde.
Auf dem oberen Diagramm sieht man deutlich, dass der Motorstrom sich
nach dem Anlauf nicht auf einen Wert einpendelt sondern stark mit einer
bestimmten Frequenz schwankt (ca. 150-160 Hz wenn ich das Diagramm nicht
falsch deute).
Das untere Diagramm zeigt die Stromaufnahme unter selben Bedingungen,
aber mit von Hand blockiertem Motor.
Nun hatte ich den Verdacht, dass das Magnetfeld des Motors auf den
Hallsensor einkoppelt und so einen Messfehler verursacht.
Dagegen spricht jedoch:
- Die Frequenz passt nicht zur Drehzahl, die bei 10% DC <10
Umdr./Sekunde liegen dürfte
- Der Messwert bewegt sich kein bisschen von der 0 weg, wenn man den
Motor im Leerlauf von Hand andreht.
- Den Hallsensor in eine Stahlblechdose stecken ändert nichts.
Ich bin ratlos. Messe ich Mist? Schwankt der Strom wirklich? Ist das
normal? Wie soll man da einen schnellen Regler implementieren?
Ist das ein Versuchsaufbau mit geklemmten Verbindungen oder alles fest
verlötet und verschraubt? So Schwankungen sieht man oft bei wackeligen
Versuchsaufbauten.
Vielleicht ist die momentane Leistung eine bessere Regelgröße.
student schrieb:> Strommessung per Hallsensor mit TP 1. Ordnung bei 1kHz in der Zuleitung
Und was für einen Tiefpass beim Messen?
Wer weiss was das für Aliasing Effekte sind.
student schrieb:> Ich bin ratlos. Messe ich Mist? Schwankt der Strom wirklich?
Dann mess den tatsächlichen Strom doch mal über einen Shunt und ein
Oszi.
Udo S. schrieb:> Und was für einen Tiefpass beim Messen?> Wer weiss was das für Aliasing Effekte sind.
Wie gesagt TP 1. Ordnung mit fg = 1kHz, dann wird mit 5kHz abgetastet.
Hallsensor -> TP -> ADC
Oder was meinst du?
Udo S. schrieb:> Dann mess den tatsächlichen Strom doch mal über einen Shunt und ein> Oszi.
Würde ich gerne, aber ich kann mit meinem Oszi nicht gleichzeitig
- schnell genug samplen, um bei den 20kHz PWM keine Aliasing-Probleme zu
bekommen und
- lang genug, um den ganzen Verlauf auf dem Schirm zu haben.
Also hier nochmal aufgenommen mit Shunt, 1 kHz RC-Tiefpass und USB-Oszi.
Strom schwankt also wohl tatsächlich so stark, bleibt für mich die Frage
wie man sowas regeln soll.
Vor 40 Jahren wurden die Plattenspieler schon über die EMK geregelt.
Warum sollte das hier nicht auch gehen? Da gabs auch mal ein einfaches
Spezial-IC von Telefunken. Aber ich hab längst vergessen wie das hieß.
Frag mal hinz, Dieter oder MaWin.
Abdul K. schrieb:> Vielleicht gibts einen Zusammenhang mit der Polzahl? Oder ein> Softwareproblem, Interrupts gesperrt oder so.
Dachte ich auch erst. Aber in dem Strom zeit Diagramm sieht man den
Anlauf des Motors mit einem hohen Anlaufstrom am Anfang. Der Stromripple
ändert aber seine Frequenz nicht wirklich stark. Die Schwankungen
müssten am Anfang viel stärker sein.
@TO: Bist du sicher, dass das nicht der Ripple des Netzteils ist? Was
ist das für ein Netzteil.
Bei dem neuen Bild sieht es anders aus. Da könnte der Ripple vom
Kommutator kommen, man sieht deutlich wie er immer höherfrequenter wird.
student schrieb:> Wie gesagt TP 1. Ordnung mit fg = 1kHz, dann wird mit 5kHz abgetastet.
Ja aber wo. In der Zuleitung zwischen Netzteil und Motor oder vor dem
Messeingang?
Wenn der Ripple zu stark ist, dann musst du für die Regelung halt ein
Filter 2. - 4. Ordnung nehmen.
Abdul K. schrieb:> Vor 40 Jahren wurden die Plattenspieler schon über die EMK geregelt.> Warum sollte das hier nicht auch gehen?
Plattenspieler: so wenig Drehmoment wie möglich als Störgröße und
möglichst hohe Masse des Tellers.
Da ist die Zeitkonstante der Störungen im Sekundenbereich.
Er will aber eine regelung mit 1kHz Abtastrate also vermutlich mit einer
Ausregelzeit im 10-20ms Bereich.
Ob das sinnvoll ist ist eine Frage was er mit der regelung machen will.
Udo S. schrieb:> @TO: Bist du sicher, dass das nicht der Ripple des Netzteils ist? Was> ist das für ein Netzteil.
Keines, wie gesagt batteriebetrieben, 4Ah LiPo.
Udo S. schrieb:> Bei dem neuen Bild sieht es anders aus. Da könnte der Ripple vom> Kommutator kommen, man sieht deutlich wie er immer höherfrequenter wird.
Das liegt wohl daran, dass der Motor im ersten Diagramm praktisch
unmittelbar seine Drehzahl erreicht, während das bei der Messung mit
Oszi wegen des Spannungsabfalls am (~1 Ohm) Shunt etwas dauert. Daher
ist auch der Anlaufstrom-Peak nicht so ausgeprägt.
Ich habe auch noch einmal mit unterschiedlichen duty cycles (==
Drehzahlen) aufgezeichnet, die Frequenz der Stromschwankungen korreliert
auf jeden Fall mit der Drehzahl.
(Zum TP):
Udo S. schrieb:> Ja aber wo. In der Zuleitung zwischen Netzteil und Motor oder vor dem> Messeingang?
Der Tiefpass filtert natürlich das Messignal das aus dem Hallsensor
rauspurzelt, NICHT den Motorstrom.
student schrieb:> Hallsensor -> TP -> ADC
Ich weiß nicht wie ich's noch anders ausdrücken soll oder wo die
Unklarheit liegt.
regler schrieb:> Welchen Zweck hat denn ein Stromregler?>> Willst Du Drehzahl, Position, Rampen regeln?
Ja. Der Stromregler soll der erste Baustein einer Kaskadenregelung
werden.
Drehzahl- und Positionsregler brauch ich aber garnicht in Angriff
nehmen, wenn der Stromregler schon nicht funktioniert.
Abdul K. schrieb:> Vor 40 Jahren wurden die Plattenspieler schon über die EMK geregelt.> Warum sollte das hier nicht auch gehen?
Die Diskussion brauchen wir nicht führen, ich versuche hier einen ganz
normalen Kaskadenregler (Strom, Drehzahl, Position) aufzubauen, ich
suche keine Speziallösungen.
Udo S. schrieb:> Wenn der Ripple zu stark ist, dann musst du für die Regelung halt ein> Filter 2. - 4. Ordnung nehmen.
Der Ripple ist deutlich niederfrequenter als mein Stromregelkreis sein
soll, das kann ich leider nicht einfach wegfiltern.
Für mich sieht das also so aus, als wäre ein Stromregler (der schnell
genug für eine brauchbare Kaskadenregelung ist) also einfach mit diesem
Motor nicht machbar? Kann doch nicht sein :(
student schrieb:> Also hier nochmal aufgenommen mit Shunt, 1 kHz RC-Tiefpass und USB-Oszi.> Strom schwankt also wohl tatsächlich so stark, bleibt für mich die Frage> wie man sowas regeln soll.
Diese beiden senkrechten weißen Markerlinien. Welcher Abstand besteht
dazwischen? Irgendein Zusammenhang mit dem Polwechsel am Kommutator?
Man könnte einen steilen Tiefpaß hier das glattbügeln lassen. Allerdings
müßte dessen Grenzfrequenz immer nachgeführt werden. Bei einem breiten
Drehzahlbereich etwas schwierig. Die Frequenz vonn SC-Filter kann man
gut steuern. LTC bietet diverse an, oder hat zumindest.
Abdul K. schrieb:> Keiner mehr Lust, das liegt an der Art wie du auf die Vorschläge> eingehst. Sorry
Auf exotische Vorschläge zu einem - wie mir scheint - Standardproblem
kann ich nicht sinnvoll eingehen.
Abdul K. schrieb:> Man könnte einen steilen Tiefpaß hier das glattbügeln lassen. Allerdings> müßte dessen Grenzfrequenz immer nachgeführt werden.
Nein, denn die Grenzfrequenz müsste dazu wie die Drehzahl bis auf 0
gehen können, das hatten wir doch schon.
20kHz 10% PWM sieht irgendwie schon ziemlich passend aus, die 20kHz
kommen zwar nicht so ganz hin aber wer weiß ob die angegebene Zahl
stimmt.
Einfach mal an Gleichspannung (ohne PWM) laufen lassen oder einfach den
Dutycycle ändern und schauen was passiert.
Peter schrieb:> 20kHz 10% PWM sieht irgendwie schon ziemlich passend aus,
Passend wozu jetzt?
Peter schrieb:> die 20kHz kommen zwar nicht so ganz hin aber wer weiß ob die angegebene> Zahl stimmt.
Welche Zahl? Die Frequenz des Stromrippels? kannst du ja aus dem
Oszillogramm ablesen, time/div steht am oberen Rand. Von den 20kHz sieht
man da definitiv nichts.
Peter schrieb:> Einfach mal an Gleichspannung (ohne PWM) laufen lassen
Selbes ergebnis.
Peter schrieb:> Dutycycle ändern und schauen was passiert.
Die Frequenz des Stromrippels ändert sich dann mit der Drehzahl.
Fakt ist, daß bei jedem Übergang der Kohlen am Kommutator von einem
Spulenpolpaar zum nächsten immer kurz 2 statt 1 Spule bestromt werden,
bzw. je nach Kohlenbreite n und n+1.
Ich habe mir das noch nie so an einem Oszi angesehen aber dass da der
Strom mit der Kommutation schwankt dürfte durchaus normal sein.
Die Frage ist also wie schnell muss die Stromregelung sein, bzw. wie
schnell kann man sie sinnvollerweise mit einem kommutierten Motor
machen.
Antworten kann ich dir ad hoc leider keine zu den Fragen geben, bzw, die
Frage nach der benötigten Geschwindigkeit der Ausregelung musst du
selbst beantworten.
Aber ich denke mal:
wenn eine schnelle Stromregelung die Schwankungen durch die Kommutierung
ausgleicht ist das prinzipiell erst mal kein Problem.
Hast du eigentlich eine Last am Motor? Im Leerlauf ist das bei
DC-Motoren nicht so ungewöhnlich....
Das Bürstenfeuer mit Kondensatoren direkt am Motor zu entstören könnte
auch helfen.
Ansonsten Positiv bleiben. So kannst du mit der Strommessung direkt auf
die Drehzahl schließen und sparst dir den Drehzahlsensor ;)
Sly_marbo schrieb:> Hast du eigentlich eine Last am Motor?
Nein, hier nicht. Allerdings treibt dieser Motor mal ein Fahrzeug an,
daher kann die Last durchaus mal 0 oder "negativ" sein (bergab) und der
Regler muss ich da funktionieren.
Sly_marbo schrieb:> Ansonsten Positiv bleiben. So kannst du mit der Strommessung direkt auf> die Drehzahl schließen und sparst dir den Drehzahlsensor ;)
Das stimmt wohl, dazu findet man vor allem im Kontext von elektrischer
Sitzverstellung im Auto einiges. Magnetencoder ist aber leider schon
vorhanden :)
Ist ja lustig, ich habe gerade gesehen das das kleine feige "-1"
Schweinchen gestern abend hier im Thread unterwegs war.
Falls es nochmal wiederkommt: Hast du nicht mal die Eier anonym zu sagen
was dich an Postings (oder vieleicht eher den Postenden) stört? Aber
dazu fehlen wahrscheinlich Argumente ;)
Irgendwo wird man sich mit einer maximalen Regelgeschwindigkeit
zufrieden geben müssen. Ich habe mit Motoren nicht genug Erfahrung. Aber
wenn es ein Standardproblem ist, dann findet sich dazu auch Literatur.
Vielleicht gibts da auch Defekte in der Mechanik wie Unwucht. Man könnte
zur Fehlersuche noch akustisch arbeiten und da dann ne FFT.
Viel Glück!
Was du als exotisch definierst, muß für andere nicht so sein. Manche
hier sind alte Hasen. Denk drüber nach.
Udo S. schrieb:> Ist ja lustig, ich habe gerade gesehen das das kleine feige "-1"> Schweinchen gestern abend hier im Thread unterwegs war.> Falls es nochmal wiederkommt: Hast du nicht mal die Eier anonym zu sagen> was dich an Postings (oder vieleicht eher den Postenden) stört? Aber> dazu fehlen wahrscheinlich Argumente ;)
Interessant. Schau mal wie oft -1 auftaucht. Da müßten ja noch andere
Werte erscheinen, aber die -1 ist erstaunlich oft da. Zumindest gerade
jetzt.
Arbeiten da mehrere Schweine koordiniert?
Stefan ⛄ F. schrieb:> Abdul K. schrieb:>> Schau mal wie oft -1 auftaucht.>> Das heiß gar nichts. Irgendwer verteilt die mit der Gießkanne.
Gestern stand mein erster Post auf +1 und der Rest war noch unbewertet,
weil ja doch zu frisch. Jetzt stehen viele auf -1 und dieser meiner auch
auf -1. Da bekommt man den Eindruck, eine Gruppe Schweine tickert so
lange alles runter bis es negativ genug ist. Können jedenfalls nur
eingeloggte User sein.
Ist halt oft so, daß einer alles negativ bewertet was er entweder nicht
auf Anhieb versteht oder er den Poster hasst und seinem Spezi immer
wieder eine reinwirken will.
Abstrus ist auch, daß die originale Frage mit -1 bewertet wurde. Die
Frage von student war ja inhaltlich vollkommen in Ordnung.
Das Bewertungssystem ist einfach recht untauglich.
Schön wäre es, wenn man so auf interessante Threads gestoßen würde.
Länger Dienende langweilen sich doch oft im Forum, weil immer wieder die
gleichen Fragen kommen. Längst beantwortet und man lernt nix mehr hinzu.
Abdul K. schrieb:> Aber> wenn es ein Standardproblem ist, dann findet sich dazu auch Literatur.
Ich nehme auch Hinweise auf Literatur dankend an, ich selbst finde zum
Thema "Regelung von Bürsten DC Motoren" nämlich nichts, was auf diese
Schwankungen eingeht.
Abdul K. schrieb:> Was du als exotisch definierst, muß für andere nicht so sein. Manche> hier sind alte Hasen. Denk drüber nach.
"Exotisch" heißt für mich, dass ich keinerlei Hinweise darauf finde,
dass das irgendwo so gemacht wird. Ich bin offen dafür, aber ohne
Referenzen/Beispiele/Literatur kann ich das nicht umsetzen.
student schrieb:> Abdul K. schrieb:>> Aber>> wenn es ein Standardproblem ist, dann findet sich dazu auch Literatur.>> Ich nehme auch Hinweise auf Literatur dankend an, ich selbst finde zum> Thema "Regelung von Bürsten DC Motoren" nämlich nichts, was auf diese> Schwankungen eingeht.
Vermutlich weil das Internet zu Hochzeiten der Bürstenmotoren noch in
den Windeln lag? Heutzutage werden doch bevorzugt brushless Motoren
verwendet.
Schonmal auf Englisch gesucht?
>> Abdul K. schrieb:>> Was du als exotisch definierst, muß für andere nicht so sein. Manche>> hier sind alte Hasen. Denk drüber nach.>> "Exotisch" heißt für mich, dass ich keinerlei Hinweise darauf finde,> dass das irgendwo so gemacht wird. Ich bin offen dafür, aber ohne> Referenzen/Beispiele/Literatur kann ich das nicht umsetzen.
Ich schreibe also Mist? Muß ja keine Lösung sein, aber bei den
Altvorderen nachzuschauen wie die das machten, kann Erkenntnis bringen.
student schrieb:> 24V 15A Motor 3300 U/min Leerlauf> 20kHz PWM> Strommessung per Hallsensor mit TP 1. Ordnung bei 1kHz in der Zuleitung> Regelschleife soll mit 1 kHz laufen.
Im Leerlauf macht der Motor in einer mS etwa eine zwanzigstel Umdrehung.
Bei Belastung entsprechend weniger.
So eine hibbelige Regelung ist doch gar nicht nötig.
student schrieb:> Abdul K. schrieb:>> Aber>> wenn es ein Standardproblem ist, dann findet sich dazu auch Literatur.>> Ich nehme auch Hinweise auf Literatur dankend an, ich selbst finde zum> Thema "Regelung von Bürsten DC Motoren" nämlich nichts, was auf diese> Schwankungen eingeht.>
Dann suchst du falsch!
Hab mal kurz gesucht. Da müßte man aber erstmal die richtigen
Suchbegriffe rausschälen. Eine Fleißaufgabe, derer ich ohne Geld nicht
fröhnen möchte. Da fahr ich jetzt lieber Eisessen...
Appendix C in
https://scholar.uwindsor.ca/cgi/viewcontent.cgi?article=1116&context=etd
und darin erwähnt das Patent US4744041
Mit diesen Begriffen bekommt man zumindest mal einen guten Sucheinstieg:
regulation of "brushed" "motor" "current noise"