BACKLASH setting not working

More
26 Jul 2017 15:12 #96477 by Cpk_Rbt

So how can you have any idea if the drives are following the commands it receives?


I realized we forgot to address this question of yours. Each drive is locked into an interpolation loop, and if that unlocks, it sends back feedback to LinuxCNC. We have signals set up to disable the LinuxCNC system if any of the drives leaves "ready for motion" state.


In regards to backlash compensation, it is our understanding that it is basically telling the machine how far to move the motor before the mechanics start moving (e.g. when the gear teeth engage). Is that how LinuxCNC treats backlash compensation, or is there something else going on outside the norm of backlash compensation?

Please Log in or Create an account to join the conversation.

More
26 Jul 2017 15:48 - 26 Jul 2017 15:48 #96484 by Todd Zuercher
Duh! I just realized what your problem is and why you are not seeing any backlash compensation applied to the motors. It is an obvious mistake in your hal file that we should have caught straight off when you posted your hal file. I kind of feel bad for not seeing this before.

You are using the pin axis.N.joint-pos-cmd as the source for your command to your drives. This is WRONG. You need to use axis.N.motor-pos-cmd. The reason is right here in the man page for Motion
axis.N.joint-pos-cmd OUT FLOAT
The joint (as opposed to motor) commanded position. There may be several offsets between the joint and motor coordinates: backlash compensation, screw error compensation, and home offsets.

The simplest fix would be to change these 3 lines in your hal file from this:
net pos0_float axis.0.joint-pos-cmd => lcec.0.1.poscommand
net pos1_float axis.1.joint-pos-cmd => lcec.0.0.poscommand
net pos2_float axis.2.joint-pos-cmd => lcec.0.2.poscommand
to this:
net Xpos => lcec.0.1.poscommand
net Ypos => lcec.0.0.poscommand
net Zpos => lcec.0.2.poscommand
Last edit: 26 Jul 2017 15:48 by Todd Zuercher.

Please Log in or Create an account to join the conversation.

More
26 Jul 2017 16:43 #96491 by Cpk_Rbt
Nailed it! Thanks Todd, backlash comp works great now.

Please Log in or Create an account to join the conversation.

More
15 Jun 2021 09:06 #212104 by MRx
Replied by MRx on topic BACKLASH setting not working
I have just tried to set up backlash compensation and it doesn't work at all it seems.
[AXIS_X]
MAX_VELOCITY = 3.01702235772
#1.5085117886
MAX_ACCELERATION = 10
MIN_LIMIT = -40.0
MAX_LIMIT = 30.0
BACKLASH = 0.45
[JOINT_0]
TYPE = LINEAR
HOME = 25.0
MIN_LIMIT = -40.0
MAX_LIMIT = 30.0
MAX_VELOCITY = 3.01702235772
#1.50851117886
MAX_ACCELERATION = 10
STEPGEN_MAXACCEL = 100 <-- 
#12.5
#8.75
SCALE = 3840
#7680.0
FERROR = 1
MIN_FERROR = .25
HOME_OFFSET = 25.0
setp stepgen.0.position-scale [JOINT_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 1
setp stepgen.0.dirhold 35500
setp stepgen.0.dirsetup 35500
setp stepgen.0.maxaccel [JOINT_0]STEPGEN_MAXACCEL
net xpos-cmd joint.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => joint.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir

is there anything I forgot? I'm using the latest linuxcnc git version.

Please Log in or Create an account to join the conversation.

More
15 Jun 2021 09:34 #212105 by phillc54
BACKLASH should be in the [JOINT] section.

Please Log in or Create an account to join the conversation.

More
15 Jun 2021 09:50 - 15 Jun 2021 09:52 #212106 by MRx
Replied by MRx on topic BACKLASH setting not working
I just figured that out yes... it works well! Thank you!

forum.linuxcnc.org/49-basic-configuratio...nc-backslash-problem

all of them mention AXIS_N though ...
Last edit: 15 Jun 2021 09:52 by MRx.

Please Log in or Create an account to join the conversation.

Time to create page: 0.129 seconds
Powered by Kunena Forum