AllIn1DC Homing Oscillation
Posted: Tue Jan 24, 2023 3:04 pm
Hi, I am a member of makerspace in Colorado and I have completed an AllIn1DC upgrade to our old Mitek 3-axis bed mill. I re-used the existing Glentek DC servomotors. It has all gone really well except for one issue. I am getting some oscillation/jerkiness during the homing of all 3 axes. I have attached my report.zip file and a link to a video showing the oscillation.
Here is the debug I've done so far. The issue seems to be related to having backlash compensation turned on. There is around 0.006" of backlash in all 3 axes. It is an old machine, and I know the backlash is more than what Centroid recommends, but being a non profit we barely scraped enough money together to do the upgrade. Upgrading the ballscrews isn't in the budget at this time. I am aware of the limitation of fixing backlash in software vs mechanics, but the limitations are good enough for occasional hobbyist use. Anyway, if I turn backlash compensation to zero, the oscillation goes away. If I turn down backlash compensation to 0.001", the oscillation is still there but a lot less noticeable. Also, if I detune the PID loops back to their "defaults" the oscillation amplitude is also reduced. This oscillation is not observed during normal operations running G-code, ONLY during he homing sequence. It seems to me that with backlash compensation turned on, the commanded position is somehow getting an instantaneous step change, sending an impulse into the servo loop causing the oscillation. Basically, a very high acceleration. For now, I've detuned the PID loops to minimize the homing oscillation, but leaving backlash compensation set to the appropriate 0.006"-ish value. Can Centroid verify my findings?
Video link: https://youtu.be/fQA1K_uk4t4
Here is the debug I've done so far. The issue seems to be related to having backlash compensation turned on. There is around 0.006" of backlash in all 3 axes. It is an old machine, and I know the backlash is more than what Centroid recommends, but being a non profit we barely scraped enough money together to do the upgrade. Upgrading the ballscrews isn't in the budget at this time. I am aware of the limitation of fixing backlash in software vs mechanics, but the limitations are good enough for occasional hobbyist use. Anyway, if I turn backlash compensation to zero, the oscillation goes away. If I turn down backlash compensation to 0.001", the oscillation is still there but a lot less noticeable. Also, if I detune the PID loops back to their "defaults" the oscillation amplitude is also reduced. This oscillation is not observed during normal operations running G-code, ONLY during he homing sequence. It seems to me that with backlash compensation turned on, the commanded position is somehow getting an instantaneous step change, sending an impulse into the servo loop causing the oscillation. Basically, a very high acceleration. For now, I've detuned the PID loops to minimize the homing oscillation, but leaving backlash compensation set to the appropriate 0.006"-ish value. Can Centroid verify my findings?
Video link: https://youtu.be/fQA1K_uk4t4