Where do I go from here? Troubleshooting X axis

More
14 Sep 2019 18:43 #145166 by SRcnc
Hello all. I am pulling my hair out troubleshooting my x axis homing issue. First off I bought this machine second hand. It's a HF converted 3 axis mill. I had this issue when I first brought it home but after some fiddling it resolved its self.

The issue is during homing sequence it homes Z and Y perfectly then when it try's to home X the DRO will just keep searching but no movement at table.

Troubleshooting I have done is I replaced all wiring going to X axis. I know the new wiring is correct because if i swap X and Y plugs coming from my controller box the X axis moves and homes like Y axis would and I get no movement from Y axis.

I used a multimeter to test continuity of my parallel port cable and I did not observe any issues even when moving the cable around.

If I check ignore limits I get a no limit switch active message.

I don't understand how this can be since I just milled a part last night. I start it up this morning and boom the issue is back.

Any suggestions for troubleshooting would be awesome. I'm out of ideas.

Thanks.

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

More
14 Sep 2019 21:03 #145175 by bevins

Hello all. I am pulling my hair out troubleshooting my x axis homing issue. First off I bought this machine second hand. It's a HF converted 3 axis mill. I had this issue when I first brought it home but after some fiddling it resolved its self.

The issue is during homing sequence it homes Z and Y perfectly then when it try's to home X the DRO will just keep searching but no movement at table.

Troubleshooting I have done is I replaced all wiring going to X axis. I know the new wiring is correct because if i swap X and Y plugs coming from my controller box the X axis moves and homes like Y axis would and I get no movement from Y axis.

I used a multimeter to test continuity of my parallel port cable and I did not observe any issues even when moving the cable around.

If I check ignore limits I get a no limit switch active message.

I don't understand how this can be since I just milled a part last night. I start it up this morning and boom the issue is back.

Any suggestions for troubleshooting would be awesome. I'm out of ideas.

Thanks.


Start by posting your hal and ini.
Does your X home switch show proper behaviour in hal show?
The following user(s) said Thank You: SRcnc

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

More
14 Sep 2019 23:35 #145186 by tommylight
Can you jog the X axis before homing ?
That all points to a non functional drive inside the controller case, or a miss configuration in the hal file.
The following user(s) said Thank You: SRcnc

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

More
14 Sep 2019 23:41 - 17 Sep 2019 22:14 #145188 by SRcnc
Hey thanks for the reply. I'm not quite sure how to check to see if its working correctly. Maybe with HAL scope? I was looking around in there today through the GUI but couldn't really see any difference between the X, Y or Z sensors. I'm pretty new to this Linux thing. I know how to modify INIT files but that about it.

Here are my INIT and HAL files. Maybe you could see something strange in there but it is just weird that it worked last night.

INIT:
# Generated by stepconf 1.1 at Wed May 15 11:54:56 2019
# If you make changes to this file, they will be
# overwritten when you run stepconf again

[EMC]
MACHINE = SPIRIT001
DEBUG = 0
VERSION = 1.0

[DISPLAY]
DISPLAY = gmoccapy
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 2
DEFAULT_LINEAR_VELOCITY = 0.5
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 1.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in

[KINS]
JOINTS = 3
KINEMATICS = trivkins coordinates=XYZ

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
PROGRAM_EXTENSION = .nc,.tap G-Code File
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
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000

[HAL]
HALFILE = SPIRIT001.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui_call_list.hal

[TRAJ]
COORDINATES =  X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 0.10
MAX_LINEAR_VELOCITY = 1.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_X]
MAX_VELOCITY = 0.95
MAX_ACCELERATION = 30.0
MIN_LIMIT = -0.01
MAX_LIMIT = 9.0

[JOINT_0]
TYPE = LINEAR
HOME = 4.5
MIN_LIMIT = -0.01
MAX_LIMIT = 9.0
MAX_VELOCITY = 0.95
MAX_ACCELERATION = 30.0
STEPGEN_MAXACCEL = 50.0
SCALE = 10000.0
FERROR = 0.05
MIN_FERROR = 0.01
HOME_OFFSET = -0.100000
HOME_SEARCH_VEL = -0.750000
HOME_LATCH_VEL = -0.050000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 3
BACKLASH = 0.006

[AXIS_Y]
MAX_VELOCITY = 0.95
MAX_ACCELERATION = 30.0
MIN_LIMIT = -4.385
MAX_LIMIT = -0.0625

[JOINT_1]
TYPE = LINEAR
HOME = -2.1875
MIN_LIMIT = -4.385
MAX_LIMIT = -0.0625
MAX_VELOCITY = 0.95
MAX_ACCELERATION = 30.0
STEPGEN_MAXACCEL = 50.0
SCALE = 10005
FERROR = 0.05
MIN_FERROR = 0.01
HOME_OFFSET = -0.0500000
HOME_SEARCH_VEL = 0.750000
HOME_LATCH_VEL = 0.050000
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 2
BACKLASH = 0.0085

[AXIS_Z]
MAX_VELOCITY = 0.67
MAX_ACCELERATION = 30.0
MIN_LIMIT = -9.0
MAX_LIMIT = 0.0

[JOINT_2]
TYPE = LINEAR
HOME = -0.05
MIN_LIMIT = -9.0
MAX_LIMIT = 0.0
MAX_VELOCITY = 0.67
MAX_ACCELERATION = 30.0
STEPGEN_MAXACCEL = 50.0
SCALE = 10003
FERROR = 0.05
MIN_FERROR = 0.01
HOME_OFFSET = 0.02
HOME_SEARCH_VEL = 0.166
HOME_LATCH_VEL = 0.083
HOME_IGNORE_LIMITS = YES
HOME_SEQUENCE = 1
BACKLASH = 0.0005
HAL:
# Generated by stepconf 1.1 at Wed May 15 11:54:56 2019
# If you make changes to this file, they will be
# overwritten when you run stepconf again
loadrt [KINS]KINEMATICS
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hal_parport cfg="0 out"
setp parport.0.reset-time 1000
loadrt stepgen step_type=0,0,0
loadrt charge_pump
net estop-out charge-pump.enable iocontrol.0.user-enable-out
net charge-pump <= charge-pump.out
loadrt pwmgen output_type=1

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf charge-pump base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread

addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
addf pwmgen.update servo-thread

net spindle-cmd-rpm => pwmgen.0.value
net spindle-on <= motion.spindle-on => pwmgen.0.enable
net spindle-pwm <= pwmgen.0.pwm
setp pwmgen.0.pwm-freq 100.0
setp pwmgen.0.scale 6000.0
setp pwmgen.0.offset 0.0
setp pwmgen.0.dither-pwm true
net spindle-cmd-rpm     <= motion.spindle-speed-out
net spindle-cmd-rpm-abs <= motion.spindle-speed-out-abs
net spindle-cmd-rps     <= motion.spindle-speed-out-rps
net spindle-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
net spindle-at-speed    => motion.spindle-at-speed
net spindle-cw <= motion.spindle-forward

net probe-in => motion.probe-input

net spindle-on      => parport.0.pin-01-out
net xstep           => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net xdir            => parport.0.pin-03-out
net ystep           => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
setp parport.0.pin-05-out-invert 1
net ydir            => parport.0.pin-05-out
net zstep           => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
setp parport.0.pin-07-out-invert 1
net zdir            => parport.0.pin-07-out
net spindle-cw      => parport.0.pin-14-out
net spindle-pwm     => parport.0.pin-16-out
net charge-pump     => parport.0.pin-17-out
net estop-ext       <= parport.0.pin-10-in-not
net min-home-x      <= parport.0.pin-11-in-not
net max-home-y      <= parport.0.pin-12-in-not
net max-home-z      <= parport.0.pin-13-in-not
net probe-in        <= parport.0.pin-15-in-not

setp stepgen.0.position-scale [JOINT_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 15200
setp stepgen.0.dirsetup 15200
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
net xenable joint.0.amp-enable-out => stepgen.0.enable
net min-home-x => joint.0.home-sw-in
net min-home-x => joint.0.neg-lim-sw-in

setp stepgen.1.position-scale [JOINT_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 15200
setp stepgen.1.dirsetup 15200
setp stepgen.1.maxaccel [JOINT_1]STEPGEN_MAXACCEL
net ypos-cmd joint.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => joint.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable joint.1.amp-enable-out => stepgen.1.enable
net max-home-y => joint.1.home-sw-in
net max-home-y => joint.1.pos-lim-sw-in

setp stepgen.2.position-scale [JOINT_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 15200
setp stepgen.2.dirsetup 15200
setp stepgen.2.maxaccel [JOINT_2]STEPGEN_MAXACCEL
net zpos-cmd joint.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => joint.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable joint.2.amp-enable-out => stepgen.2.enable
net max-home-z => joint.2.home-sw-in
net max-home-z => joint.2.pos-lim-sw-in

net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in

loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
Attachments:
Last edit: 17 Sep 2019 22:14 by andypugh. Reason: POST HAL AND INIT IN POST INSTEAD OF ATTACHMENTS

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

More
14 Sep 2019 23:46 #145189 by SRcnc
No, I can't. The only way I can get X axis to move is to swap X and Y connectors at the controller. Then X axis moves and homes and Y is completely dead. So problem follows.

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

More
14 Sep 2019 23:55 #145191 by tommylight
That is the controller, one of the drives is not working.
You will have to open it and check if all the drives have their lights on.

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

More
16 Sep 2019 13:11 #145321 by SRcnc
Okay. I opened it up and they are gecko 251 drives. All have red lights constantly on. I observed them during homing and the led does not change. I guess I will try to swap the X and Y drives to see if the problem follows the drive. Also it uses a pmdx 126 board.

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

More
16 Sep 2019 21:39 - 16 Sep 2019 21:41 #145341 by SRcnc
So today I swapped X and Y axis drives. The problem is still present. I did notice on my PMDX-126 there is an led on the J4 connector Pin 3 that outputs to the X drive. J4 Pin 3 is fed by parallel port cable pin 3. I retested my parallel port cable and it still seems to be fine. all pins have less than and OHM. I watched the LED's while the machine was homing. My homing sequence is Z, Y, X. I watched some LED's on the connector for Z axis turn on and off during homing. I did the same for Y axis. Then when X tries to home it does nothing but the LED stays lit. Any ideas?

Attached is a picture of the LED.
Attachments:
Last edit: 16 Sep 2019 21:41 by SRcnc.

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

More
16 Sep 2019 23:32 #145347 by tommylight
Disconnect the wires going to the X axis drive and check that LED again.

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

More
17 Sep 2019 00:40 #145360 by SRcnc
Okay I disconnected wires to X axis drive and the light is still on. I tested voltage at the STEP and DIRECTION wires out of the PMDX into the drives. Y and Z step and direction wires have 12mv. Step and direction for X have 0V and 12V. I don't know if this is because its not hooked up to the drive or what. I'll test the voltage tomorrow when it's hooked up to the drive.

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

Time to create page: 0.130 seconds
Powered by Kunena Forum