by cncdrive » Mon Jan 15, 2018 5:27 am
I quickly ran your code with the default settings and I used a logic analyser to see if there is any anomaly in the step/dir signals.
And I do not see any issues, no jumps on the step lines.
I also slowed down the acceleration to a pretty low value to observe it better and the signal is perfect, I do not see any problems.
What I think what happens though is that your machine has backlash and as you mentioned backlash is not enabled in your setup.
Why I think this is because you said that the "jump" happens at 3,6,9,12 hours on the circle/arc and these points are special ones,
because at there points one axis (X or Y) is always changing direction. The direction changes at these exact locations.
What I think happens is your machine has a backlash which means the driving mechanism has a cogging, the nut is wear or just unprecise or if it is adjustabe then it is not adjusted properly.
So, when the axis changes direction then the axis will not move until it defeats the backlash, in other words until it rotates over the backlash distance.
For example the backlash is 0.1mm then when the axis changes direction then the axis will stand still until it moves 0.1mm to the other direction and only then will it start moving again.
The issue with this is that the rotating mechanism (e.g. the ballscrew) will already accelerate up to some level until it reaches the end of the backlash, so when it actually starts moving the axis then the speed is higher than how fast it was when the screw changed the direction, in other words how fast it should be on the direction change. So, you will see a jump on the axis as a result.
I would measure the backlash on the axes using a dial indicator.
Move the axis to one direction with a distance which is sure longer than the backlash.
Then fix the dial indicator to the axis and to a fix point. Then slowly start moving the axis to one direction using the CNC control, e.g. with jog and watch the dial indicator, check when it starts moving.
The distance between the start point and start moving point is the backlash.
If you zero the axis in the UCCNC then you could readout the backlash distance if you stop the movement when the dial indicator starts moving.
And if you see that there is a backlash then if you can adjust it out mechanically then do it, because however the UCCNC has very good backlash compensation, but having backlash is always adisadvantage.
Sometimes, especially if it is small it will not be a serious problem, but if the backlash is high will degrade the overal performance of the machine, so if possible remove it mechanically.
And if it is not possible to remove it then setup the backlash in the UCCNC to the value you measured out.