× Forum Header

Need Help Setting up: Sherline Mill + XS-3525/8S-4 + Mystery Stepper

More
16 May 2017 14:36 #93262 by big wave
Hi everybody. Bit of a noob here.

I got a second-hand Sherline 5400 mill with a Xylotex XS-3525/8S-4 controller and unmarked stepper motors. The calibration is off by about 50% [test travel for 1" only goes .5"]. The setup in Stepconf is using 200 Steps/Revolution, and 2 microsteps on each axis. I verified the lead screw thread pitch on the Sherline at 20 tpi with a direct 1:1 connection.
When I try testing the motor at 400 Steps/Rev and 2-Microsteps the Z-Axis works but X-stalls and generally complains. It seems like it's not going a full 1" but that may be an error in my observation while the axis is in motion- I'll do a more accurate measurement tomorrow.

I'm using the "Other" settings for the controller type and have set the timing to 1000, 1000, 200, 200 for Step Time, Step Space Direction Hold and Direction Setup, respectively. That seems to match the data on this site and the datasheet.

A few questions to the community:

Should the number of micro steps change the number of radians/degrees traversed if the steps per revolution is constant [e.g. 200 steps/rev set with (2, 4, or 8 micro steps) should be the same degrees traversed]? - I think not since micro steps should be incremental between a full step -- again, i 'm a bit of a noob wrt Steppers in general so please forgive my ignorance.

Also, how do you jog in single-step increments to test movement in absolute steps? -- I set the TPI on the Z-Axis to one and used the "Test this axis" GUI to "Run" with a "Test Area" of +-1" thinking that should traverse one full revolution if the calibration is correct. It seems close to one full rev when i set SPI to 400.

Any recommendations for setting up accurately given this setup with an unknown motor?

Thanks,
Dave

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

More
16 May 2017 15:59 #93267 by big wave
Update: after setting the max velocity to .2 from the default 1 its, things seems to smooth out and run accurately.
200 x 8 micro steps velocity .2 IPS acceleration 5 ip s2. Much more than .2 and the motors howl .. stalling. but I'm getting different behavior for the X versus Z -- Z axis seems a bit more tolerant at .4 ips. I'm still not getting why the micro steps are changing how may degrees of travel the motor is turning.

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

More
16 May 2017 17:05 #93270 by tommylight
Can you please post your hal and ini file so we can have a look?

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

More
17 May 2017 01:10 #93289 by big wave
Thanks,
Here are the files. I've got the IPS set at .2 and this seems to be smooth.
# Generated by stepconf 1.1 at Tue May 16 09:25:09 2017
# If you make changes to this file, they will be
# overwritten when you run stepconf again
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hal_parport cfg="0x378 out"
setp parport.0.reset-time 1000
loadrt stepgen step_type=0,0,0
loadrt pwmgen output_type=1

addf parport.0.read base-thread
addf stepgen.make-pulses 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 1166.66666667
setp pwmgen.0.offset 0.114285714286
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 estop-out       => 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
net ydir            => parport.0.pin-05-out
net zstep           => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
net zdir            => parport.0.pin-07-out
net astep           => parport.0.pin-08-out
setp parport.0.pin-08-out-reset 1
net adir            => parport.0.pin-09-out
net spindle-cw      => parport.0.pin-14-out
net spindle-pwm     => parport.0.pin-16-out
net xenable         => parport.0.pin-17-out

setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 21200
setp stepgen.0.dirsetup 21200
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable

setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 21200
setp stepgen.1.dirsetup 21200
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable

setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 21200
setp stepgen.2.dirsetup 21200
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable

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

net tool-number <= iocontrol.0.tool-prep-number
net tool-change-loopback iocontrol.0.tool-change => iocontrol.0.tool-changed
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
dave@gmuncher:~/Desktop/sherline_Xylotex3525_8S4$ 
# Generated by stepconf 1.1 at Tue May 16 09:25:09 2017
# If you make changes to this file, they will be
# overwritten when you run stepconf again

[EMC]
MACHINE = sherline_Xylotex3525_8S4
DEBUG = 0

[DISPLAY]
DISPLAY = axis
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 = 1.2
DEFAULT_LINEAR_VELOCITY = 0.10
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 0.20
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/dave/linuxcnc/nc_files
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
PYVCP = custompanel.xml

[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 = 100000
SERVO_PERIOD = 1000000

[HAL]
HALUI = halui
HALFILE = sherline_Xylotex3525_8S4.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal

[HALUI]
# add halui MDI commands here (max 64) 

[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 0.10
MAX_VELOCITY = 0.20

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

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 0.2
MAX_ACCELERATION = 15.0
STEPGEN_MAXACCEL = 18.75
SCALE = 32000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.01
MAX_LIMIT = 9.0
HOME_OFFSET = 0.0

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 0.2
MAX_ACCELERATION = 5.0
STEPGEN_MAXACCEL = 6.25
SCALE = 32000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -0.01
MAX_LIMIT = 4.0
HOME_OFFSET = 0.0

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 0.2
MAX_ACCELERATION = 5.0
STEPGEN_MAXACCEL = 6.25
SCALE = 32000.0
FERROR = 0.05
MIN_FERROR = 0.01
MIN_LIMIT = -9.0
MAX_LIMIT = 0.01
HOME_OFFSET = 0.0
dave@gmuncher:~/linuxcnc/configs/sherline_Xylotex3525_8S4$ 

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

More
17 May 2017 09:23 #93293 by tommylight
At a glance it all looks good. What drives? Xylotex or something else? Check the motor current on the drives, if they are nema 17 up to 1Amp should be ok, some can do more. Check if the motors get warm after 5 to 10 minutes of work or siting idle but locked, they should just start to get warm in that time frame. Can you turn the motors or screws by hand? Try that with motors off to check for binding, and with motors on to see how much torque they have at stand stil.
Regards,
Tom

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

More
18 May 2017 05:14 #93325 by big wave

At a glance it all looks good. What drives? Xylotex or something else? Check the motor current on the drives, if they are nema 17 up to 1Amp should be ok, some can do more. Check if the motors get warm after 5 to 10 minutes of work or siting idle but locked, they should just start to get warm in that time frame. Can you turn the motors or screws by hand? Try that with motors off to check for binding, and with motors on to see how much torque they have at stand stil.
Regards,
Tom


Thanks Tom!. Things seem to be well behaved now. Last night, I was able to home the thing and dry run the Linux Logo program.
I had to reverse the Y and Z direction pins to the so the tool path directions aligned to the displayed coordinate system. At .2IPS everything seems to be working. I'm not sure what the steppers are.

-D

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

More
21 May 2017 00:39 #93411 by andypugh
The only real unknowns with mystery steppers is the wiring, the steps per rev (but anything other than 200 would be very unusual) and the current rating.

They turn, so the wiring is right, they go the right distance, so steps per rev is right, that just leaves current. You can increase the current setting until they get hot, then stop. Steppers get hotest when moving slowly (actually when stopped, but some drives reduce current when stopped). If the steppers don't actually burn you, then they are OK. But you might want to run a bit below that level if you don't need the performance.

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

More
21 May 2017 16:47 #93441 by big wave
Thanks Andy,

Everything seems to be working but the feed rate seems quite slow or else the motors stall. I have the speed set at .2 ips. Lead screw on the Sherline is 20 turns/inch. Does that sound normal? The stepper motors look pretty beefy like they could handle more - but I cannot find any specs for these. The Xilotex controller specifies a max output of 2.5A at 35 volts max.



-Dave
Attachments:

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

More
22 May 2017 14:28 #93478 by andypugh

Everything seems to be working but the feed rate seems quite slow or else the motors stall. I have the speed set at .2 ips. Lead screw on the Sherline is 20 turns/inch.


So, the motors stall at 240 rpm? That is slightly low. (I had a machine that would only run to 300rpm). What supply voltage are you using for the drives?
You seem to have 4-wire steppers, so there is no scope for swapping to parallel wiring.

The slow speed is mainly due to the fine pitch of the screws, I think. Ballscrew machines tend to use 5 TPI or thereabouts.

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

More
22 May 2017 15:28 #93483 by big wave

Everything seems to be working but the feed rate seems quite slow or else the motors stall. I have the speed set at .2 ips. Lead screw on the Sherline is 20 turns/inch.


So, the motors stall at 240 rpm? That is slightly low. (I had a machine that would only run to 300rpm). What supply voltage are you using for the drives?
You seem to have 4-wire steppers, so there is no scope for swapping to parallel wiring.

The slow speed is mainly due to the fine pitch of the screws, I think. Ballscrew machines tend to use 5 TPI or thereabouts.


Not sure, I will check later this eve. I got the controller already built with a power supply and assumed if was fine. I've seen a couple youtube videos showing a Sherline moving quite a bit faster than that.

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

Time to create page: 0.142 seconds
Powered by Kunena Forum