My ini is as follows:
#################
[PRUCONF]
DRIVER=hal_pru_generic
CONFIG=pru=1 num_stepgens=5
PRUBIN=xenomai/pru_generic.bin
[EMC]
# Name of machine, for use with display, etc.
MACHINE = Xylotex
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
#DEBUG = 0x00000003
#DEBUG = 0x00000007
DEBUG = 0
[DISPLAY]
#uncomment the line below if the shuttleexpress is installed
#(JP)GLADEVCP = shuttlexpress.glade
#leave the follwoing two alone
#EMBED_TAB_NAME = GladeVCP demo
#EMBED_TAB_COMMAND = halcmd loadusr -Wn gladevcp
gladevcp -c gladevcp -u shuttlexpress.py -x {XID} shuttlexpress.glade
# Name of display program, e.g., tkemc
DISPLAY = axis
#DISPLAY = gmoccapy_lcd7
#EDITOR = mousepad
# Touchy currently will not work without some hardware buttons/jog-wheel
#DISPLAY = touchy
# Cycle time, in seconds, that display will sleep between polls
CYCLE_TIME = 0.200
# Path to help file
HELP_FILE = tklinucnc.txt
# Initial display setting for position, RELATIVE or MACHINE
POSITION_OFFSET = RELATIVE
# Initial display setting for position, COMMANDED or ACTUAL
POSITION_FEEDBACK = ACTUAL
# Highest value that will be allowed for feed override, 1.0 = 100%
MAX_FEED_OVERRIDE = 1.5
# Prefix to be used
PROGRAM_PREFIX = /home/machinekit/machinekit/nc_files
# Introductory graphic
INTRO_GRAPHIC = machinekit.gif
INTRO_TIME = 2
# Increments for the JOG section
INCREMENTS = 6 1 0.5 0.1 0.05 0.01
# GEOMETRY = -ZYXA
[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python
[TASK]
# Name of task controller program, e.g., milltask
TASK = milltask
# Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME = 0.010
[RS274NGC]
# File containing interpreter variables
PARAMETER_FILE = pru-stepper.var
RS274NGC_STARTUP_CODE = G00 G17 G21 G40 G49 G64 P0.1 Q0.1 G80 G90
[EMCMOT]
EMCMOT = motmod
# Timeout for comm to emcmot, in seconds
COMM_TIMEOUT = 1.0
# Interval between tries to emcmot, in seconds
COMM_WAIT = 0.010
# Servo task period, in nanoseconds
SERVO_PERIOD = 1000000
[HAL]
# The run script first uses halcmd to execute any HALFILE
# files, and then to execute any individual HALCMD commands.
# list of hal config files to run through halcmd
# files are executed in the order in which they appear
HALFILE = Xylotex.hal
#(JP) uncomment the line below if the shuttlexpress jig wheel is used
#HALFILE = ../../../shuttlexpress.hal
# list of halcmd commands to execute
# commands are executed in the order in which they appear
#HALCMD = save neta
HALUI = halui
POSTGUI_HALFILE = Xylotex.postgui.hal
[TRAJ]
AXES = 5
COORDINATES = X Y Z A B
MAX_ANGULAR_VELOCITY = 450.00
DEFAULT_ANGULAR_VELOCITY = 90.00
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 2.0
MAX_LINEAR_VELOCITY = 2.0
NO_FORCE_HOMING = 1
################################################################
[AXIS_0]
#
# Step timing is 40 us steplen + 40 us stepspace
# That gives 80 us step period = 12.5 KHz step freq
#
# Bah, even software stepping can handle that, hm2 doesnt buy you much with
# such slow steppers.
#
# Scale is 200 steps/rev * 5 revs/inch = 1000 steps/inch
#
# This gives a maxvel of 12.5/1 = 12.5 ips
#
TYPE = LINEAR
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 15.0
# Set Stepgen max 20% higher than the axis
STEPGEN_MAX_VEL = 1.2
STEPGEN_MAX_ACC = 18.75
BACKLASH = 0.000
# scale is 200 steps/rev * 8 mirostep * 10 tpi
# C-Beam tpi = 12.7
# if u make scale negative you invert direction of movement
# Lead Screw Diameter ∅ 8 (mm) Pitch 2 (mm) Lead 8 (mm) > (((360/1.8) *
(1/(1/32)))/2h)*(1 / 1)
SCALE = 20392
# 16000 = 32 microsteps > if you want 1/16 microsteps > 8000 etc
MIN_LIMIT = -1100.0
MAX_LIMIT = 1100.3
FERROR = .1
MIN_FERROR = 0.05
HOME = 0.000
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -.1
HOME_LATCH_VEL = 0.2
#HOME_USE_INDEX = YES
#HOME_IGNORE_LIMITS = YES
#HOME_IS_SHARED = 1
#HOME_SEQUENCE = 2
# these are in nanoseconds
DIRSETUP = 200
DIRHOLD = 200
STEPLEN = 1000
STEPSPACE = 1000
# Set to one for active low step pulses
STEP_INVERT = 0
# PID tuning params
DEADBAND = 0
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0
BIAS = 0
MAX_OUTPUT = 0
################################################################
[AXIS_1]
#
# Step timing is 40 us steplen + 40 us stepspace
# That gives 80 us step period = 12.5 KHz step freq
#
# Bah, even software stepping can handle that, hm2 doesnt buy you much with
# such slow steppers.
#
# Scale is 200 steps/rev * 5 revs/inch = 1000 steps/inch
#
# This gives a maxvel of 12.5/1 = 12.5 ips
#
TYPE = LINEAR
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 15.0
# Set Stepgen max 20% higher than the axis
STEPGEN_MAX_VEL = 1.2
STEPGEN_MAX_ACC = 18.75
BACKLASH = 0.000
# scale is 200 steps/rev * 8 mirostep * 10 tpi
SCALE = 20280
MIN_LIMIT = -20.0
MAX_LIMIT = 20.0
FERROR = .1
MIN_FERROR = 0.05
HOME = 0.000
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -.1
HOME_LATCH_VEL = 0.2
#HOME_USE_INDEX = YES
#HOME_IGNORE_LIMITS = YES
#HOME_IS_SHARED = 1
#HOME_SEQUENCE = 2
# these are in nanoseconds
DIRSETUP = 200
DIRHOLD = 200
STEPLEN = 1000
STEPSPACE = 1000
# Set to one for active low step pulses
STEP_INVERT = 0
# PID tuning params
DEADBAND = 0
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0
BIAS = 0
MAX_OUTPUT = 0
################################################################
[AXIS_2]
#
# Step timing is 40 us steplen + 40 us stepspace
# That gives 80 us step period = 12.5 KHz step freq
#
# Bah, even software stepping can handle that, hm2 doesnt buy you much with
# such slow steppers.
#
# Scale is 200 steps/rev * 5 revs/inch = 1000 steps/inch
#
# This gives a maxvel of 12.5/1 = 12.5 ips
#
TYPE = LINEAR
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 15.0
# Set Stepgen max 20% higher than the axis
STEPGEN_MAX_VEL = 1.2
STEPGEN_MAX_ACC = 18.75
BACKLASH = 0.000
# scale is 200 steps/rev * 8 mirostep * 10 tpi
SCALE = 20427
MIN_LIMIT = -20.0
MAX_LIMIT = 20.0
FERROR = .1
MIN_FERROR = 0.05
HOME = 0.000
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -.1
HOME_LATCH_VEL = 0.2
#HOME_USE_INDEX = YES
#HOME_IGNORE_LIMITS = YES
#HOME_IS_SHARED = 1
#HOME_SEQUENCE = 2
# these are in nanoseconds
DIRSETUP = 200
DIRHOLD = 200
STEPLEN = 1000
STEPSPACE = 1000
# Set to one for active low step pulses
STEP_INVERT = 0
# PID tuning params
DEADBAND = 0
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0
BIAS = 0
MAX_OUTPUT = 0
################################################################
[AXIS_3]
#
# Step timing is 40 us steplen + 40 us stepspace
# That gives 80 us step period = 12.5 KHz step freq
#
# Bah, even software stepping can handle that, hm2 doesnt buy you much with
# such slow steppers.
#
# Scale is 200 steps/rev * 5 revs/inch = 1000 steps/inch
#
# This gives a maxvel of 12.5/1 = 12.5 ips
#
TYPE = ANGULAR
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 15.0
# Set Stepgen max 20% higher than the axis
STEPGEN_MAX_VEL = 1.2
STEPGEN_MAX_ACC = 18.75
BACKLASH = 0.000
# scale is 200 steps/rev * 8 mirostep * 10 tpi
SCALE = -4000
MIN_LIMIT = -99999.0
MAX_LIMIT = 99999.0
FERROR = .1
MIN_FERROR = 0.05
HOME = 0.000
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -.1
HOME_LATCH_VEL = 0.2
#HOME_USE_INDEX = YES
#HOME_IGNORE_LIMITS = YES
#HOME_IS_SHARED = 1
#HOME_SEQUENCE = 2
# these are in nanoseconds
DIRSETUP = 200
DIRHOLD = 200
STEPLEN = 1000
STEPSPACE = 1000
# Set to one for active low step pulses
STEP_INVERT = 0
# PID tuning params
DEADBAND = 0
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0
BIAS = 0
MAX_OUTPUT = 0
################################################################
[AXIS_4]
#
# Step timing is 40 us steplen + 40 us stepspace
# That gives 80 us step period = 12.5 KHz step freq
#
# Bah, even software stepping can handle that, hm2 doesnt buy you much with
# such slow steppers.
#
# Scale is 200 steps/rev * 5 revs/inch = 1000 steps/inch
#
# This gives a maxvel of 12.5/1 = 12.5 ips
#
TYPE = ANGULAR
MAX_VELOCITY = 1.0
MAX_ACCELERATION = 15.0
# Set Stepgen max 20% higher than the axis
STEPGEN_MAX_VEL = 1.2
STEPGEN_MAX_ACC = 18.75
BACKLASH = 0.000
# scale is 200 steps/rev * 8 mirostep * 10 tpi
SCALE = 32000
MIN_LIMIT = -99999.0
MAX_LIMIT = 99999.0
FERROR = .1
MIN_FERROR = 0.05
HOME = 0.000
HOME_OFFSET = 0.00
HOME_SEARCH_VEL = -.1
HOME_LATCH_VEL = 0.2
#HOME_USE_INDEX = YES
#HOME_IGNORE_LIMITS = YES
#HOME_IS_SHARED = 1
#HOME_SEQUENCE = 2
# these are in nanoseconds
DIRSETUP = 200
DIRHOLD = 200
STEPLEN = 1000
STEPSPACE = 1000
# Set to one for active low step pulses
STEP_INVERT = 0
# PID tuning params
DEADBAND = 0
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0
BIAS = 0
MAX_OUTPUT = 0
############################
[EMCIO]
# Name of IO controller program, e.g., io
EMCIO = io
# cycle time, in seconds
CYCLE_TIME = 0.100
# tool table file
TOOL_TABLE = tool.tbl
###########################
And a picture of the worm gear is attached...
On Tuesday, July 5, 2016 at 12:56:22 PM UTC+4, Diego Molina wrote:
>
>
> Greating to all,
>
> So I've got a lot of cuts out of my 3 axis machine running on a BBB /
> Xylotex configuration, now I added a 4th axis and am having trouble
> figuring out the values to calibrate it and make it move as expected.
>
> I've based my config around Xylotex.ini and Xylotex.hal example configs,
> but to arrive at the actual distances on my steppers and lead screws I had
> to lower the scale to about 20000. All the axes work as expected with those
> settings.
>
> The thing is, now I've added a 4th axis with a 20-to-1 ratio worm wheel,
> and when I issue a G1 A90 F100 code (I'm assuming this is right to ask for
> 1/4 turn?), for example, with the scale at 20000, it gives me around 10
> turns on the axis. When I try to decrease the scale I get to 400 and it
> moves about right, but really slowly. I've tried to increase speeds after
> that but without success.
>
> Could somebody please point me on which settings to edit, so my other axes
> still work and the 4th can move at a decent speed at the right rate?
>
> All the best,
>
>
> Diego
>
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github:
https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups
"Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.