Inconsistent homing
19 Aug 2013 12:09 - 19 Aug 2013 12:13 #37829
by dan9831
Inconsistent homing was created by dan9831
Hi everyone,
I'm having trouble with the 'home all' sequence. I have a 3 axis milling machine, setup to home in the ZXY order. All 3 homing switches share the same parallel port input. Z axis homes fine every time. X & Y axis home inconsistently. The usual problem is that the X homing sequence begins, reaches and toggles the homing switch, backs off till the homing switch is OFF again, and then starts the slow search for homing switch ON. At some random point before it toggles the homing switch, it just stops. All movement ceases, and X & Y axis are unhomed, Z axis is homed. This seems to happen 9/10 times. Additionally, once it decided to stop in the middle of the X homing sequence while the homing switch was still ON. I took a few samples of the X position when linuxcnc decided to stop, so as you can see it looks random. Note that X home_offset=0 and home=1.
X stops at:
.0125
.0198
.0288
-.0250 (homing switch was still depressed)
.0232
.0094
.0303
Other trivia: LinuxCNC 2.5.3 on Ubuntu 10.04
I have included my .ini file below:
# Generated by stepconf at Sun Aug 18 20:34:38 2013
# If you make changes to this file, they will be
# overwritten when you run stepconf again
[EMC]
MACHINE = krmx02
DEBUG = 0
[DISPLAY]
DISPLAY = axis
EDITOR = sublime
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 1
PROGRAM_PREFIX = /home/dan/linuxcnc/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
OPEN_FILE = ""
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 78535
SERVO_PERIOD = 1000000
[HAL]
HALUI = halui
HALFILE = krmx02.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
HALFILE = xbox.hal
[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.67
MAX_LINEAR_VELOCITY = 6.67
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_0]
TYPE = LINEAR
HOME = 1.0
MAX_VELOCITY = 6.33372173958
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 1909.8593171
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.1
MAX_LIMIT = 26.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.0
HOME_LATCH_VEL = -0.008
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
[AXIS_1]
TYPE = LINEAR
HOME = 1.0
MAX_VELOCITY = 6.33372173958
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 1909.8593171
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.1
MAX_LIMIT = 22.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.0
HOME_LATCH_VEL = -0.008
HOME_SEQUENCE = 2
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
[AXIS_2]
TYPE = LINEAR
HOME = 4.0
MAX_VELOCITY = 1.667
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 4010.004
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = 0.0
MAX_LIMIT = 7.1
HOME_OFFSET = 7.000000
HOME_SEARCH_VEL = 1.0
HOME_LATCH_VEL = 0.008
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
With enough retries, I can get it to home all 3 axes. Because it works sometimes and fails other times, I'm not sure how to proceed with debugging.
Let me know if there's any other information I can supply to assist debugging. Thanks for your help,
Daniel
I'm having trouble with the 'home all' sequence. I have a 3 axis milling machine, setup to home in the ZXY order. All 3 homing switches share the same parallel port input. Z axis homes fine every time. X & Y axis home inconsistently. The usual problem is that the X homing sequence begins, reaches and toggles the homing switch, backs off till the homing switch is OFF again, and then starts the slow search for homing switch ON. At some random point before it toggles the homing switch, it just stops. All movement ceases, and X & Y axis are unhomed, Z axis is homed. This seems to happen 9/10 times. Additionally, once it decided to stop in the middle of the X homing sequence while the homing switch was still ON. I took a few samples of the X position when linuxcnc decided to stop, so as you can see it looks random. Note that X home_offset=0 and home=1.
X stops at:
.0125
.0198
.0288
-.0250 (homing switch was still depressed)
.0232
.0094
.0303
Other trivia: LinuxCNC 2.5.3 on Ubuntu 10.04
I have included my .ini file below:
# Generated by stepconf at Sun Aug 18 20:34:38 2013
# If you make changes to this file, they will be
# overwritten when you run stepconf again
[EMC]
MACHINE = krmx02
DEBUG = 0
[DISPLAY]
DISPLAY = axis
EDITOR = sublime
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 1
PROGRAM_PREFIX = /home/dan/linuxcnc/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
OPEN_FILE = ""
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[RS274NGC]
PARAMETER_FILE = linuxcnc.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 78535
SERVO_PERIOD = 1000000
[HAL]
HALUI = halui
HALFILE = krmx02.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
HALFILE = xbox.hal
[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.67
MAX_LINEAR_VELOCITY = 6.67
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[AXIS_0]
TYPE = LINEAR
HOME = 1.0
MAX_VELOCITY = 6.33372173958
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 1909.8593171
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.1
MAX_LIMIT = 26.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.0
HOME_LATCH_VEL = -0.008
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
[AXIS_1]
TYPE = LINEAR
HOME = 1.0
MAX_VELOCITY = 6.33372173958
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 1909.8593171
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.1
MAX_LIMIT = 22.0
HOME_OFFSET = 0.000000
HOME_SEARCH_VEL = -1.0
HOME_LATCH_VEL = -0.008
HOME_SEQUENCE = 2
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
[AXIS_2]
TYPE = LINEAR
HOME = 4.0
MAX_VELOCITY = 1.667
MAX_ACCELERATION = 20.0
STEPGEN_MAXACCEL = 25.0
SCALE = 4010.004
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = 0.0
MAX_LIMIT = 7.1
HOME_OFFSET = 7.000000
HOME_SEARCH_VEL = 1.0
HOME_LATCH_VEL = 0.008
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
HOME_IGNORE_LIMITS = YES
VOLATILE_HOME = 1
With enough retries, I can get it to home all 3 axes. Because it works sometimes and fails other times, I'm not sure how to proceed with debugging.
Let me know if there's any other information I can supply to assist debugging. Thanks for your help,
Daniel
Last edit: 19 Aug 2013 12:13 by dan9831.
Please Log in or Create an account to join the conversation.
19 Aug 2013 12:36 - 19 Aug 2013 13:34 #37831
by dan9831
Replied by dan9831 on topic Inconsistent homing
I think I figured out what's up. The fix was to set abs-x-flat=6000 in my custom hal file for my xbox controller. I don't know why, but having a nonzero x position was bad for the homing sequence, even though halui.jog-speed was 0 the whole time. Seems like questionable behavior to me, especially since I never got any error message from LinuxCNC when it halted the homing sequence.
Cheers,
Daniel
Cheers,
Daniel
Last edit: 19 Aug 2013 13:34 by dan9831.
Please Log in or Create an account to join the conversation.
Time to create page: 0.086 seconds