Hallo. Habe einen Motorcontroller, der bisher mit einem PID-Regelkreis eine Lageregelung vornimmt. (fPWM = 20KHz; Regeltakt = 100us; Brushed DC Motor) Möchte jetzt auf Kaskadenregler umstellen. Hab die bisherige Schaltung entsprechend erweitert, dass ich auch den Motorstrom messen kann. ( ACS712 ) Hab jetzt mal per Oszi gemessen: Spannung Motor Phase (PWM Signal) & Motorstrom ( am VIOUT des ACS712 ). Wie zu erwarten, hab ich einen Stromripple. Wie wird normalerweise der Strom für die Stromregelung gemessen ? RC-Tiefpass, Bildung des Durchschnittswertes über eine PWM Phase ? Oder... Pepe.
Ich würde einen Tiefpass verwenden und einen 1000x langsameren Regeltakt.
(Wesentlich) langsameren Regeltakt sehe ich als grenzwertig, da wir recht schnell positionieren mit den Motoren. Fahrten < 100ms dafür ganz kurze Wege.
Das Gefährt würde ich gerne mal sehen, das innerhalb von 100ms anfahren kann, dann geregelt wird und dann anhalten kann. Im Prinzip stimme ich Dir jedoch zu, der Regeltakt sollte zur Anwendung passen.
Ich hab nicht gesagt, dass wir dann sauber an der Zielposition stehen. Die Fahrt ist zwar nach der Zeit "beendet", schwingt dann noch circa 100ms um seine Endlage, bis es dann wirklich ruht. Wir verwenden als Motor einen A-max22 von Maxon, der an der Welle nur einige Gramm an Gewicht bewegen muss. Ist von der Zeit sicherlich grenzwertig, aber wenn's halt sein muss... PS. Vielleicht könnte man die Fahrt auch als Sprung bezeichnen :-)
Messe PWM synchron, z.B. immer wenn die PWM genau in der hälfte des high Taktes ist. Dann misst du im Stromrippel auch immer an der gleichen Stelle und der Rippel interessiert dich nicht mehr.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.