Als Industrieroboter arbeitete ich die meiste Zeit mit Robotern und Maschinen, die bürstenlose Gleichstrommotoren oder Linearmotoren verwendeten. Daher habe ich viel Erfahrung mit der Einstellung der PID-Parameter für diese Motoren.
Jetzt mache ich Hobby-Robotik mit Schrittmotoren (ich baue meinen ersten RepRap ). Ich frage mich, was ich anders machen muss.
Natürlich muss ich ohne Encoder-Feedback bei Anfragen an den Motor viel konservativer vorgehen und sicherstellen, dass ich immer im Rahmen des Möglichen bleibe, aber wie finde ich heraus, ob meine Abstimmung optimal, suboptimal oder (im schlimmsten Fall) ist? geringfügig instabil?
Natürlich muss ich für eine bestimmte Last (in meinem Fall den Extruderkopf) Stufenimpulsfolgen erzeugen, die eine geforderte Beschleunigung und Geschwindigkeit verursachen, die der Motor bewältigen kann, ohne dass Schritte fehlen.
Mein erster Gedanke ist, einige Testsequenzen zu machen, zum Beispiel:
- Heimmotor genau auf dem Heimsensor.
- Bewegen Sie langsam von zu Hause weg.
- Bewegen Sie mit einem konservativen Bewegungsprofil von zu Hause weg.
- Bewegen Sie Schritte mit dem Testbeschleunigungs- / Geschwindigkeitsprofil.
- Move tritt mit einem konservativen Bewegungsprofil zum Beginn der Testbewegung zurück.
- Move tritt mit einem konservativen Move-Profil nach Hause zurück.
- Bewegen Sie langsam zurück zum Ausgangssensor und überprüfen Sie, ob der Sensor an der richtigen Position ausgelöst wurde.
- Wiederholen Sie diesen Vorgang für eine Vielzahl von , , Beschleunigungs- / Geschwindigkeits- und Lastprofilen.M.
Dies sollte verlässliche Schritte in der Bewegung des Testprofils zuverlässig erkennen, aber es scheint ein furchtbar großer Raum zum Testen zu sein, daher frage ich mich, welche Techniken entwickelt wurden, um die Parameter der Schrittmotorsteuerung zu optimieren.
quelle
Antworten:
Die "mathematische" Möglichkeit, dies zu tun, besteht darin, eine Drehzahl- / Drehmomentkurve für Ihren Stepper bei der angegebenen Spannung zu erstellen und die maximale Kraft zu bestimmen, die auf das in Bewegung befindliche Objekt ausgeübt wird (in diesem Fall ist wahrscheinlich die größte Kraft Beschleunigung).
Beachten Sie, dass die meisten Hobby-3D-Drucker so schwach sind, dass das Biegen des Rahmens unter Beschleunigung die Druckqualität beeinträchtigt, lange bevor Sie beginnen, Schritte zu verpassen. In diesem Fall können Sie die Durchbiegung des Rahmens unter Last modellieren.
Nach meiner Erfahrung werden 90% der fehlenden Schritte durch mechanische oder Softwareprobleme wie das Binden der Achsen oder das Fehlen von Impulsen verursacht. Bewegen Sie alles von Hand, um zu überprüfen, ob es glatt ist.
Übermäßig aggressive Geschwindigkeiten und Beschleunigungen sollten auf einem 3D-Drucker lange vor dem Abwürgen der Stepper sichtbar (und hörbar) sein.
Im Allgemeinen führt ein einzelner versäumter Schritt auch dazu, dass die nächsten Schritte ebenfalls übersehen werden (da der Motor jetzt noch härter arbeiten muss, um aufzuholen), und Sie erhalten ein paar Sekunden Brummen anstelle von Bewegung.
quelle