Homing / limits - the manual is misleading, possibly wrong
Please Log in or Create an account to join the conversation.
holding on now
C
Please Log in or Create an account to join the conversation.
[JOINT_0]
AXIS = X
MIN_LIMIT = 0 (hard limit min)
MAX_LIMIT = 440 (hard limit max)
HOME = 0 (moves machine to this position after homing )
HOME_OFFSET = -3 (distance to offset machine coordinates by, sets machine 0 at that point)
HOME_SEARCH_VEL = -60 (search towards the min)
HOME_LATCH_VEL = 30 (latch toward positive and back)
HOME_SEQUENCE = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = True
I would just keep lowering :
HOME_OFFSET = -3
till I found the minimum that worked - it should be quite small though
then do the check for maximum travel as I said
If you got 443 for the max, then I would try 442.5 and then test
But like I said - we are almost splitting hairs..
Chris
Please Log in or Create an account to join the conversation.
2. I don't think we are splitting hairs. we are defining a process for dialing getting the max travel which is actually very useful in my opinion.
you have basically let me know I don't need the full 3mm of clearance I allowed for and even .1mm is probably fine. Every CNC machine I have worked on I have always run into a case at some point where I am like .5mm over the max travel and have tor redesign a part so MM matter
Thank You
Calvin
Please Log in or Create an account to join the conversation.
I feel we got the concepts down now so you can figure out whats best for you.
I do want to warn you that after you found your absolute maximums to maybe give your self a little on each ends as the type of switch you are using can certainly be a bit inconsistent particularly if it get dirt under it. how inconstant depends on the switch. others with more experience could advise you. For really consistent homing people use encoder index but that seems overkill for what you are doing.
Lets us know what ended up work for you !
Chris
Please Log in or Create an account to join the conversation.
now time to figure out why I keep getting following errors, but that is going to be a whole new post
Thank you everyone for the help
C
Please Log in or Create an account to join the conversation.
The difference in opinion from some posters may be due to different needs for:
Separate home and limit switches
Combined home and limit switch
With separate home and limits switches:
Home switch is somewhere within the limit switches, and (probably) somewhere within the soft limits
A limit switch is only ever triggered when there is a failure of homing, soft limits, or the axis ends up in a different position than commanded (e.g. missed steps or moved by external force).
With combined home and limit switch:
The machine home [/u]position[/u] must be within the soft limits
If the home (i.e. limit) switch is within the soft limits, the limit switch will be triggered every time the axis goes to max (or min depending)
My example from my router Z axis. I have combined home and limit switch. My ini below works. It is the same setup as the ini I posted for my lathe in the opening post.
#********************
# Axis Z
#********************
[AXIS_Z]
MIN_LIMIT = -195.0
MAX_LIMIT = 0.01
[JOINT_3]
TYPE = LINEAR
HOME = 0.0
MIN_LIMIT = -195.0
MAX_LIMIT = 0.01
HOME_OFFSET = 0.25
HOME_SEARCH_VEL = 30
HOME_LATCH_VEL = -0.25
HOME_FINAL_VEL = 0.000000
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 0
Note that HOME_OFFSET is outside the soft limits. HOME_OFFSET is 0.25, soft limits are -195 to 0.01.
The development documents remain incorrect.
They state: The home switch location, as indicated by the HOME_OFFSET variable, must be strictly within the soft limits. That is, MIN_LIMIT < HOME_OFFSET < MAX_LIMIT.
I believe they should state:
The home location, as indicated by the HOME_OFFSET variable, must be strictly within the soft limits. That is, MIN_LIMIT < HOME_OFFSET < MAX_LIMIT.
(note the only change is to delete 'switch')
HOME_OFFSET tells LinuxCNC where the home switch position is in relation to the soft limits (the joint/axis coordinates)
HOME dictates where the axis moves to as the final part of the homing process.
Please Log in or Create an account to join the conversation.
It doesn't say the home switch must be within soft limits (they must be within hard limits).3.6. HOME_OFFSET
Contains the location of the home switch or index pulse, in joint coordinates. It can also be treated as the distance between the point where the switch or index pulse is latched and the zero point of the joint. After detecting the index pulse, LinuxCNC sets the joint coordinate of the current point to HOME_OFFSET. The default value is zero.
Note - The home switch location, as indicated by the HOME_OFFSET variable, must be strictly within the soft limits. That is, MIN_LIMIT < HOME_OFFSET < MAX_LIMIT.
Home offset is the distance from the home switch to the machine origin.
_Machine origin_ must be inside the soft limits.
It absolutely does say the home switch must be within soft limits
Note - The home switch location, as indicated by the HOME_OFFSET variable, must be strictly within the soft limits. That is, MIN_LIMIT < HOME_OFFSET < MAX_LIMIT.
This is wrong for machines with shared home/limit switch.
Please Log in or Create an account to join the conversation.
Note that HOME_OFFSET is outside the soft limits. HOME_OFFSET is 0.25, soft limits are -195 to 0.01.
I think if you carefully measure, you'll find the home switch is still inside the soft limits - it's your soft limits that aren't where you say they are.
If you lie enough to linuxcnc you can make it work
Chris
Please Log in or Create an account to join the conversation.
It's a shared home / limit switch.
After homing I can jog / move to Z0 without triggering the switch. I.e. I can reach the full extent of the soft limits without triggering the switch.
Please Log in or Create an account to join the conversation.