- Configuring LinuxCNC
- Advanced Configuration
- Dual PID loops and appropriate pins for feedback to the Trajectory Planner et al
Dual PID loops and appropriate pins for feedback to the Trajectory Planner et al
- Becksvill
- Away
- Elite Member
-
Less
More
- Posts: 206
- Thank you received: 101
27 Jun 2026 03:56 #347359
by Becksvill
Replied by Becksvill on topic Dual PID loops and appropriate pins for feedback to the Trajectory Planner et al
hey guys
just wanted to report back on this dual feedback thread
I have a large cnc with 0.1mm backlash on the z axis. so i put a scale on it and the results are awesome
i have accuracy within 0.002mm (compared to the scale accuracy at least assuming that is good)
i tried both 1 PID loop and 2 PID loops that have the outputs summed together.
with the single loop i had the velocity PID input coming from the motor rotary encoder and the final position from the linear encoder. and it worked but was really rough and kept bouncing back and forth with the 0.1mm backlash
the two summed loops are really smooth and awesome the trick is the first loop has the high resolution encoder on servo drive and that has really good performance and of course no backlash. and I can change all the normal PID values except Integral and the 2nd PID loop only has the linear encoder input. and only PID setting is Integral. so i get nice and smooth motor but still backlash from first loop and then once the axis gets close the Integral moves the last 0.1mm over a second or so.
so by the time i am cutting the machine is perfectly where it should be. this is probably not so good for high speed surfacing stuff for that you need to remove the physical backlash. but for a slightly slower machine its awesome.
have a look at this thread where i show some more photos of it. its working most days now and running hard in production.
forum.linuxcnc.org/show-your-stuff/58689...ing-running-linuxcnc
cheers
just wanted to report back on this dual feedback thread
I have a large cnc with 0.1mm backlash on the z axis. so i put a scale on it and the results are awesome
i have accuracy within 0.002mm (compared to the scale accuracy at least assuming that is good)
i tried both 1 PID loop and 2 PID loops that have the outputs summed together.
with the single loop i had the velocity PID input coming from the motor rotary encoder and the final position from the linear encoder. and it worked but was really rough and kept bouncing back and forth with the 0.1mm backlash
the two summed loops are really smooth and awesome the trick is the first loop has the high resolution encoder on servo drive and that has really good performance and of course no backlash. and I can change all the normal PID values except Integral and the 2nd PID loop only has the linear encoder input. and only PID setting is Integral. so i get nice and smooth motor but still backlash from first loop and then once the axis gets close the Integral moves the last 0.1mm over a second or so.
so by the time i am cutting the machine is perfectly where it should be. this is probably not so good for high speed surfacing stuff for that you need to remove the physical backlash. but for a slightly slower machine its awesome.
have a look at this thread where i show some more photos of it. its working most days now and running hard in production.
forum.linuxcnc.org/show-your-stuff/58689...ing-running-linuxcnc
cheers
Please Log in or Create an account to join the conversation.
- Configuring LinuxCNC
- Advanced Configuration
- Dual PID loops and appropriate pins for feedback to the Trajectory Planner et al
Time to create page: 0.062 seconds