× Forum Header

Homing Z wants to home X first.

More
28 Apr 2019 22:09 #132199 by allistar
Hi all,
I am running LinuxCNC build from source from the git repo (off the master branch, fresh as of 29 April 2019). I have home switches for X and Y and I home Z manually. The homing configuration in the ini file is: (I have removed lines not related to homing):
[KINS]
JOINTS = 3
KINEMATICS = trivkins coordinates=XYZ

[AXIS_X]
MIN_LIMIT = -0.001
MAX_LIMIT = 612.0

[JOINT_0]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -0.001
MAX_LIMIT = 612.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -6
HOME_LATCH_VEL = 1
HOME_SEQUENCE = 1

[AXIS_Y]
MIN_LIMIT = -0.001
MAX_LIMIT = 522.0

[JOINT_1]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -0.001
MAX_LIMIT = 522.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -6
HOME_LATCH_VEL = 1
HOME_SEQUENCE = 0

[AXIS_Z]
MIN_LIMIT = -50.0
MAX_LIMIT = 75.0

[JOINT_2]
TYPE = LINEAR
MIN_LIMIT = -50.0
MAX_LIMIT = 75.0
HOME_OFFSET = 0.0
HOME_SEQUENCE = -1

X and Y home well. It homes Y first and then X. I do this by clicking on the "Home all" button in the AXIS UI. The issue is that when I manually home Z (by going to menu "Machine -> Homing -> Home Z Axis") it automatically homes X first (by bumping up to the X home switch). I don't want it to do this as not only is it dragging the bit on the spoil board (but only about .3mm) it means I cannot home Z anywhere but X=0.

Any help is appreciated.
Thanks,
Allistar.

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

More
28 Apr 2019 23:36 - 28 Apr 2019 23:37 #132205 by PCW
Replied by PCW on topic Homing Z wants to home X first.
Homing is a mysterious beast... I suspect that you have gotten bitten by a change in homing in master which says that homing of matching positive and negative sequence numbers is synchronized:

github.com/LinuxCNC/linuxcnc/blob/master...onfig/ini-homing.txt

I think that you may simply want to leave the Z axis home sequence undefined
Last edit: 28 Apr 2019 23:37 by PCW.

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

More
28 Apr 2019 23:44 #132209 by allistar
Thanks for pointing that out! It seems that the meaning of a negative HOME_SEQUENCE has changed. This is easy enough for me to fix.

Now if only if the step conf wouldn't keep removing my homing settings from the ini file.

Thanks again.

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

More
29 Apr 2019 00:20 #132212 by rodw
You can specify the order of homing in master branch. A Negative HOME_SEQUENCE is used to represent a joint axis (eg. a Gantry)
See : linuxcnc.org/docs/devel/html/config/ini-....html#_home_sequence

I would set it up per the first example like this
[JOINT_0]HOME_SEQUENCE =  0
[JOINT_1]HOME_SEQUENCE =  0

This will home X & Y at the same time
The docs above say:
If HOME_SEQUENCE is not specified then the joint will not be homed by the HOME ALL sequence (but may be homed by individual joint-specific homing commands).

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

More
29 Apr 2019 00:29 #132213 by allistar
Thanks for the tip. On my machine the Y axis must be homed before X can be homed (if X homes without Y being homed it will crash the gantry). X and Y homing is all good at the moment, the issue was with Z. Now I understand what a negative sequence means I can fix this.
Thanks again..

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

More
29 Apr 2019 00:41 #132216 by rodw
Yes, you can change the sequence to suit.
Your ini file did not seem to be set up for a gantry. If you have two motors on one axis, in master you will be better off running them as separate joints with something like:
KINEMATICS = trivkins coordinates=XYZY

and add another joint

Then set your home sequence to be -1 for both joints of the gantry.

The advantage of this config will be that the gantry will automatically square on homing and you can adjust squareness by changing the HOMING_OFFSET for each side.

The whole point of the new joint axis code is to separate joint config from axis config. The KINEMATICS statement defines which joint belongs to which axis. V 2.7 had hard coded mapping X, Y & Z axes to joints 0,1,2

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

More
29 Apr 2019 00:44 #132217 by allistar
My machine has one stepper per axis. The Y axis is driven by dual lead screws connected by a belt to a single stepper. I think XYZ is appropriate for my setup.
Thanks again.
The following user(s) said Thank You: rodw

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

More
29 Apr 2019 00:58 #132218 by tommylight
You can not have a homing sequence of -1 for the Z axis if it has just one motor, that is for gantry type machines that use two separate motors for the same axis, as Rod mentioned.
For any normal machine with 3 axis and 3 motors ( or Joints as refered to in the 2.8 version of Linuxcnc ) it is mandatory to have the Z axis home first ( home_sequence = 0 ) and the other 2 axis ( X and Y ) can be both set to 1 or 2 or as you see fit.
This is to avoid moving the X and Y axis while the Z axis is low and could hit something.

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

More
05 May 2019 08:59 #132823 by allistar
I have confirmed that this works well. Setting the homing sequence to Z=0, Y=1, X=2 works for my setup. The online documentation still says that to stop an axis from participating in homing it should have a negative sequence. I suppose this will be updated whenever the current master branch is officially released.

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

More
05 May 2019 09:52 #132829 by rodw

I have confirmed that this works well. Setting the homing sequence to Z=0, Y=1, X=2 works for my setup. The online documentation still says that to stop an axis from participating in homing it should have a negative sequence. I suppose this will be updated whenever the current master branch is officially released.


I'm sure you are reading the wrong docs. Here are the correct docs for homing linuxcnc.org/docs/devel/html/config/ini-....html#_home_sequence

Be sure you follow the link from the main linuxcnc page and select the correct branch for master. note the .../docs/devel/... in the URL above

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

Time to create page: 0.087 seconds
Powered by Kunena Forum