Core XY high speed closed loop tuning
-
Hi,
i need help tuning my XY motors on my corexy, i want to run them in closed loop. I want to run 250mm/s 10K-20Kmm² for printing and 800-1000mm/s 50K-60K for travel with 3000 Jerk. The problem now is that the pid tune for printing moves isns't good for travel moves. For now i use a p therm off 30 should i increase it or is it better to increase the A and V therm?
-
@Tech_Sam03 please post the plots from the closed loop plugin using your current PID values, showing the number of steps, the PID terms and the total error; at both your print speed and proposed travel speed.
Are you using 48V power to the motors?
-
Yes, i run them at 48V!
This is X axis print speed:
(X-Print)51_2025-03-18_13.50.50.csvY axis print speed:
(Y-Print)50_2025-03-18_13.51.00.csvX axis travel speed:
(X-Travel)51_2025-03-18_13.51.10.csvY axis travel speed:
(Y-Travel)50_2025-03-18_13.51.14.csvThis is in open loop:
-
I wanted to get in touch again. I've put the closed loop project on hold for a while and now I want to get back to it. My main problem is the big error when accelerating and decelerating.
-
@Tech_Sam03 what amount of error are you are getting when accelerating and decelerating, and is it during printing moves, travel moves, or both?
-
About */-~1.5 Steps of error in the closed Loop Tuning Plugin. I have set my error boundary to E2:3. I don't get any messages while printing, but I do get them when traveling.
-
@Tech_Sam03 thank you. Is this with the Pid A term optimised for travel moves or for printing moves? What acceleration are you using for travel moves?
-
@dc42
I use a travel acceleration of 40k mm/s. I tuned it between travel and printing Speed. -
I did a quick, rough tuning to see if I was making any mistakes.
Step 1 Speed and Accels
Speed too low
Speed OkStep 2 A therm
A too low (A30.000)
A therm is ok(A40.000)
A too heigh odd spikes in P therm(A50.000)Step 3 V therm
V too low(V300)
V ok(V400)
V too high(V500)Step 4 D therm
D ok(D0.1)
D better but to loud(D0.2)Step 5 I therm
P20 A40.000 V400 D0.1 I0 Current tune no steady error. Do i even need a I therm because i dont really have a steady-state error?
I500
I1000
I1500System specs:
-Version 3.6.0-RC3
-LDO 42STH48-2504AC i pressed in a longer shaft in the rotor to fit an encoder to the back
-48V
-2500A for the motors
-AMT10E3 encoder 2000PPR -
@Tech_Sam03 before you added the D ter you had a lot of ringing in the P term. You would also have seen this in the Current Error had you plotted it. That's an indication that the P term is too large. A small amount of ringing can be countered by adding a small D term, but as you discovered, larger D terms make the motor noisier.
-
This is the plot befor adding the D therm
Should i use 30-50% off the current P therm and test again?