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.

Reply via email to