My setup Process confusion
05 Dec 2020 15:38 #191127
by swalts
Replied by swalts on topic My setup Process confusion
.ini file
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# Changes to most things are ok and will be read by the wizard
[EMC]
VERSION = 1.1
MACHINE = config_tool
DEBUG = 0x00000000
[HOSTMOT2]
DRIVER = hm2_eth
IPADDRESS = "10.10.10.10"
BOARD = 7i96
STEPGENS = 3
ENCODERS = 1
SSERIAL_PORT = 1
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
CYCLE_TIME = 0.1
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 0
DEFAULT_LINEAR_VELOCITY = .25
MIN_VELOCITY = .01
MAX_LINEAR_VELOCITY = 1.0
MIN_LINEAR_VELOCITY = .01
OPEN_FILE = ""
PYVCP = config_tool.xml
[KINS]
KINEMATICS = trivkins coordinates=XYZ
JOINTS = 3
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[RS274NGC]
PARAMETER_FILE = config_tool.var
[EMCMOT]
EMCMOT = motmod
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[TRAJ]
COORDINATES = XYZ
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
MAX_LINEAR_VELOCITY = 30
[HAL]
HALFILE = config_tool.hal
HALFILE = io.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
HALUI = halui
[HALUI]
[AXIS_X]
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[AXIS_Y]
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[AXIS_Z]
MIN_LIMIT = 0
MAX_LIMIT = 9
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[JOINT_1]
AXIS = Y
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 27.5
MAX_ACCELERATION = 78.75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[JOINT_2]
AXIS = Z
MIN_LIMIT = 0
MAX_LIMIT = 9
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 9
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[SPINDLE]
SPINDLE_TYPE = False
SCALE =
PWM_FREQUENCY = 20000
MAX_RPM =
MIN_RPM =
DEADBAND =
P =
I =
D =
FF0 =
FF1 =
FF2 =
BIAS =
MAX_ERROR =
[INPUTS]
# DO NOT change the input text
INPUT_0 = Select
INPUT_JOINT_0 = False
INPUT_1 = Select
INPUT_JOINT_1 = False
INPUT_2 = Select
INPUT_JOINT_2 = False
INPUT_3 = Select
INPUT_JOINT_3 = False
INPUT_4 = Select
INPUT_JOINT_4 = False
INPUT_5 = Select
INPUT_JOINT_5 = False
INPUT_6 = Select
INPUT_JOINT_6 = False
INPUT_7 = Select
INPUT_JOINT_7 = False
INPUT_8 = Select
INPUT_JOINT_8 = False
INPUT_9 = Select
INPUT_JOINT_9 = False
INPUT_10 = Select
INPUT_JOINT_10 = False
[OUTPUTS]
# DO NOT change the output text
OUTPUT_0 = Select
OUTPUT_1 = Select
OUTPUT_2 = Select
OUTPUT_3 = Select
OUTPUT_4 = Select
[OPTIONS]
MANUAL_TOOL_CHANGE = True
HALUI = True
PYVCP = True
GLADEVCP = True
LADDER = False
.hal file
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# If you make changes to this file DO NOT run the configuration tool again!
# This file will be replaced with a new file if you do!
# kinematics
loadrt [KINS]KINEMATICS
# motion controller
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
# standard components
loadrt pid num_chan=3
# hostmot2 driver
loadrt hostmot2
loadrt [HOSTMOT2](DRIVER) board_ip=[HOSTMOT2](IPADDRESS) config="num_encoders=[HOSTMOT2](ENCODERS) num_stepgens=[HOSTMOT2](STEPGENS) sserial_port_0=[HOSTMOT2](SSERIAL_PORT)"
setp hm2_[HOSTMOT2](BOARD).0.watchdog.timeout_ns 25000000
# THREADS
addf hm2_[HOSTMOT2](BOARD).0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
setp hm2_[HOSTMOT2](BOARD).0.dpll.01.timer-us -100
setp hm2_[HOSTMOT2](BOARD).0.stepgen.timer-number 1
addf pid.0.do-pid-calcs servo-thread
addf pid.1.do-pid-calcs servo-thread
addf pid.2.do-pid-calcs servo-thread
addf hm2_[HOSTMOT2](BOARD).0.write servo-thread
# Joint 0
# axis enable chain
newsig emcmot.0.enable bit
sets emcmot.0.enable FALSE
net emcmot.0.enable <= joint.0.amp-enable-out
net emcmot.0.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.00.enable pid.0.enable
# position command and feedback
net emcmot.0.pos-cmd joint.0.motor-pos-cmd => pid.0.command
net motor.0.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.00.position-fb joint.0.motor-pos-fb pid.0.feedback
net motor.0.command pid.0.output hm2_[HOSTMOT2](BOARD).0.stepgen.00.velocity-cmd
setp pid.0.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.dirsetup [JOINT_0]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.dirhold [JOINT_0]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.steplen [JOINT_0]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.stepspace [JOINT_0]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.position-scale [JOINT_0]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.maxvel [JOINT_0]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.maxaccel [JOINT_0]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.control-type 1
setp pid.0.Pgain [JOINT_0]P
setp pid.0.Igain [JOINT_0]I
setp pid.0.Dgain [JOINT_0]D
setp pid.0.bias [JOINT_0]BIAS
setp pid.0.FF0 [JOINT_0]FF0
setp pid.0.FF1 [JOINT_0]FF1
setp pid.0.FF2 [JOINT_0]FF2
setp pid.0.deadband [JOINT_0]DEADBAND
setp pid.0.maxoutput [JOINT_0]MAX_OUTPUT
setp pid.0.maxerror [JOINT_0]MAX_ERROR
# Joint 1
# axis enable chain
newsig emcmot.1.enable bit
sets emcmot.1.enable FALSE
net emcmot.1.enable <= joint.1.amp-enable-out
net emcmot.1.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.01.enable pid.1.enable
# position command and feedback
net emcmot.1.pos-cmd joint.1.motor-pos-cmd => pid.1.command
net motor.1.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.01.position-fb joint.1.motor-pos-fb pid.1.feedback
net motor.1.command pid.1.output hm2_[HOSTMOT2](BOARD).0.stepgen.01.velocity-cmd
setp pid.1.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.dirsetup [JOINT_1]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.dirhold [JOINT_1]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.steplen [JOINT_1]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.stepspace [JOINT_1]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.position-scale [JOINT_1]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.maxvel [JOINT_1]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.maxaccel [JOINT_1]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.control-type 1
setp pid.1.Pgain [JOINT_1]P
setp pid.1.Igain [JOINT_1]I
setp pid.1.Dgain [JOINT_1]D
setp pid.1.bias [JOINT_1]BIAS
setp pid.1.FF0 [JOINT_1]FF0
setp pid.1.FF1 [JOINT_1]FF1
setp pid.1.FF2 [JOINT_1]FF2
setp pid.1.deadband [JOINT_1]DEADBAND
setp pid.1.maxoutput [JOINT_1]MAX_OUTPUT
setp pid.1.maxerror [JOINT_1]MAX_ERROR
# Joint 2
# axis enable chain
newsig emcmot.2.enable bit
sets emcmot.2.enable FALSE
net emcmot.2.enable <= joint.2.amp-enable-out
net emcmot.2.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.02.enable pid.2.enable
# position command and feedback
net emcmot.2.pos-cmd joint.2.motor-pos-cmd => pid.2.command
net motor.2.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.02.position-fb joint.2.motor-pos-fb pid.2.feedback
net motor.2.command pid.2.output hm2_[HOSTMOT2](BOARD).0.stepgen.02.velocity-cmd
setp pid.2.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.dirsetup [JOINT_2]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.dirhold [JOINT_2]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.steplen [JOINT_2]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.stepspace [JOINT_2]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.position-scale [JOINT_2]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.maxvel [JOINT_2]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.maxaccel [JOINT_2]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.control-type 1
setp pid.2.Pgain [JOINT_2]P
setp pid.2.Igain [JOINT_2]I
setp pid.2.Dgain [JOINT_2]D
setp pid.2.bias [JOINT_2]BIAS
setp pid.2.FF0 [JOINT_2]FF0
setp pid.2.FF1 [JOINT_2]FF1
setp pid.2.FF2 [JOINT_2]FF2
setp pid.2.deadband [JOINT_2]DEADBAND
setp pid.2.maxoutput [JOINT_2]MAX_OUTPUT
setp pid.2.maxerror [JOINT_2]MAX_ERROR
# Spindle
#setp hm2_7i96.0.pwmgen.00.output-type 0
#setp hm2_7i96.0.pwmgen.00.scale [SPINDLE]MAX_RPM
#setp hm2_7i96.0.pwmgen.pwm_frequency [SPINDLE]PWM_FREQUENCY
# Standard I/O Block - EStop, Etc
# create a signal for the estop loopback
net estop-loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in
# create signals for tool loading loopback
net tool-prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
net tool-change-loop iocontrol.0.tool-change => iocontrol.0.tool-changed
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# Changes to most things are ok and will be read by the wizard
[EMC]
VERSION = 1.1
MACHINE = config_tool
DEBUG = 0x00000000
[HOSTMOT2]
DRIVER = hm2_eth
IPADDRESS = "10.10.10.10"
BOARD = 7i96
STEPGENS = 3
ENCODERS = 1
SSERIAL_PORT = 1
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
CYCLE_TIME = 0.1
INTRO_GRAPHIC = emc2.gif
INTRO_TIME = 0
DEFAULT_LINEAR_VELOCITY = .25
MIN_VELOCITY = .01
MAX_LINEAR_VELOCITY = 1.0
MIN_LINEAR_VELOCITY = .01
OPEN_FILE = ""
PYVCP = config_tool.xml
[KINS]
KINEMATICS = trivkins coordinates=XYZ
JOINTS = 3
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[RS274NGC]
PARAMETER_FILE = config_tool.var
[EMCMOT]
EMCMOT = motmod
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[TRAJ]
COORDINATES = XYZ
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
MAX_LINEAR_VELOCITY = 30
[HAL]
HALFILE = config_tool.hal
HALFILE = io.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
HALUI = halui
[HALUI]
[AXIS_X]
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[AXIS_Y]
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[AXIS_Z]
MIN_LIMIT = 0
MAX_LIMIT = 9
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[JOINT_1]
AXIS = Y
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 27.5
MAX_ACCELERATION = 78.75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[JOINT_2]
AXIS = Z
MIN_LIMIT = 0
MAX_LIMIT = 9
MAX_VELOCITY = 30
MAX_ACCELERATION = 75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 75
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 9
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[SPINDLE]
SPINDLE_TYPE = False
SCALE =
PWM_FREQUENCY = 20000
MAX_RPM =
MIN_RPM =
DEADBAND =
P =
I =
D =
FF0 =
FF1 =
FF2 =
BIAS =
MAX_ERROR =
[INPUTS]
# DO NOT change the input text
INPUT_0 = Select
INPUT_JOINT_0 = False
INPUT_1 = Select
INPUT_JOINT_1 = False
INPUT_2 = Select
INPUT_JOINT_2 = False
INPUT_3 = Select
INPUT_JOINT_3 = False
INPUT_4 = Select
INPUT_JOINT_4 = False
INPUT_5 = Select
INPUT_JOINT_5 = False
INPUT_6 = Select
INPUT_JOINT_6 = False
INPUT_7 = Select
INPUT_JOINT_7 = False
INPUT_8 = Select
INPUT_JOINT_8 = False
INPUT_9 = Select
INPUT_JOINT_9 = False
INPUT_10 = Select
INPUT_JOINT_10 = False
[OUTPUTS]
# DO NOT change the output text
OUTPUT_0 = Select
OUTPUT_1 = Select
OUTPUT_2 = Select
OUTPUT_3 = Select
OUTPUT_4 = Select
[OPTIONS]
MANUAL_TOOL_CHANGE = True
HALUI = True
PYVCP = True
GLADEVCP = True
LADDER = False
.hal file
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# If you make changes to this file DO NOT run the configuration tool again!
# This file will be replaced with a new file if you do!
# kinematics
loadrt [KINS]KINEMATICS
# motion controller
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
# standard components
loadrt pid num_chan=3
# hostmot2 driver
loadrt hostmot2
loadrt [HOSTMOT2](DRIVER) board_ip=[HOSTMOT2](IPADDRESS) config="num_encoders=[HOSTMOT2](ENCODERS) num_stepgens=[HOSTMOT2](STEPGENS) sserial_port_0=[HOSTMOT2](SSERIAL_PORT)"
setp hm2_[HOSTMOT2](BOARD).0.watchdog.timeout_ns 25000000
# THREADS
addf hm2_[HOSTMOT2](BOARD).0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
setp hm2_[HOSTMOT2](BOARD).0.dpll.01.timer-us -100
setp hm2_[HOSTMOT2](BOARD).0.stepgen.timer-number 1
addf pid.0.do-pid-calcs servo-thread
addf pid.1.do-pid-calcs servo-thread
addf pid.2.do-pid-calcs servo-thread
addf hm2_[HOSTMOT2](BOARD).0.write servo-thread
# Joint 0
# axis enable chain
newsig emcmot.0.enable bit
sets emcmot.0.enable FALSE
net emcmot.0.enable <= joint.0.amp-enable-out
net emcmot.0.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.00.enable pid.0.enable
# position command and feedback
net emcmot.0.pos-cmd joint.0.motor-pos-cmd => pid.0.command
net motor.0.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.00.position-fb joint.0.motor-pos-fb pid.0.feedback
net motor.0.command pid.0.output hm2_[HOSTMOT2](BOARD).0.stepgen.00.velocity-cmd
setp pid.0.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.dirsetup [JOINT_0]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.dirhold [JOINT_0]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.steplen [JOINT_0]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.stepspace [JOINT_0]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.position-scale [JOINT_0]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.maxvel [JOINT_0]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.maxaccel [JOINT_0]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.00.control-type 1
setp pid.0.Pgain [JOINT_0]P
setp pid.0.Igain [JOINT_0]I
setp pid.0.Dgain [JOINT_0]D
setp pid.0.bias [JOINT_0]BIAS
setp pid.0.FF0 [JOINT_0]FF0
setp pid.0.FF1 [JOINT_0]FF1
setp pid.0.FF2 [JOINT_0]FF2
setp pid.0.deadband [JOINT_0]DEADBAND
setp pid.0.maxoutput [JOINT_0]MAX_OUTPUT
setp pid.0.maxerror [JOINT_0]MAX_ERROR
# Joint 1
# axis enable chain
newsig emcmot.1.enable bit
sets emcmot.1.enable FALSE
net emcmot.1.enable <= joint.1.amp-enable-out
net emcmot.1.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.01.enable pid.1.enable
# position command and feedback
net emcmot.1.pos-cmd joint.1.motor-pos-cmd => pid.1.command
net motor.1.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.01.position-fb joint.1.motor-pos-fb pid.1.feedback
net motor.1.command pid.1.output hm2_[HOSTMOT2](BOARD).0.stepgen.01.velocity-cmd
setp pid.1.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.dirsetup [JOINT_1]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.dirhold [JOINT_1]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.steplen [JOINT_1]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.stepspace [JOINT_1]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.position-scale [JOINT_1]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.maxvel [JOINT_1]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.maxaccel [JOINT_1]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.01.control-type 1
setp pid.1.Pgain [JOINT_1]P
setp pid.1.Igain [JOINT_1]I
setp pid.1.Dgain [JOINT_1]D
setp pid.1.bias [JOINT_1]BIAS
setp pid.1.FF0 [JOINT_1]FF0
setp pid.1.FF1 [JOINT_1]FF1
setp pid.1.FF2 [JOINT_1]FF2
setp pid.1.deadband [JOINT_1]DEADBAND
setp pid.1.maxoutput [JOINT_1]MAX_OUTPUT
setp pid.1.maxerror [JOINT_1]MAX_ERROR
# Joint 2
# axis enable chain
newsig emcmot.2.enable bit
sets emcmot.2.enable FALSE
net emcmot.2.enable <= joint.2.amp-enable-out
net emcmot.2.enable => hm2_[HOSTMOT2](BOARD).0.stepgen.02.enable pid.2.enable
# position command and feedback
net emcmot.2.pos-cmd joint.2.motor-pos-cmd => pid.2.command
net motor.2.pos-fb <= hm2_[HOSTMOT2](BOARD).0.stepgen.02.position-fb joint.2.motor-pos-fb pid.2.feedback
net motor.2.command pid.2.output hm2_[HOSTMOT2](BOARD).0.stepgen.02.velocity-cmd
setp pid.2.error-previous-target true
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.dirsetup [JOINT_2]DIRSETUP
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.dirhold [JOINT_2]DIRHOLD
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.steplen [JOINT_2]STEPLEN
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.stepspace [JOINT_2]STEPSPACE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.position-scale [JOINT_2]SCALE
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.maxvel [JOINT_2]STEPGEN_MAX_VEL
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.maxaccel [JOINT_2]STEPGEN_MAX_ACC
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.step_type 0
setp hm2_[HOSTMOT2](BOARD).0.stepgen.02.control-type 1
setp pid.2.Pgain [JOINT_2]P
setp pid.2.Igain [JOINT_2]I
setp pid.2.Dgain [JOINT_2]D
setp pid.2.bias [JOINT_2]BIAS
setp pid.2.FF0 [JOINT_2]FF0
setp pid.2.FF1 [JOINT_2]FF1
setp pid.2.FF2 [JOINT_2]FF2
setp pid.2.deadband [JOINT_2]DEADBAND
setp pid.2.maxoutput [JOINT_2]MAX_OUTPUT
setp pid.2.maxerror [JOINT_2]MAX_ERROR
# Spindle
#setp hm2_7i96.0.pwmgen.00.output-type 0
#setp hm2_7i96.0.pwmgen.00.scale [SPINDLE]MAX_RPM
#setp hm2_7i96.0.pwmgen.pwm_frequency [SPINDLE]PWM_FREQUENCY
# Standard I/O Block - EStop, Etc
# create a signal for the estop loopback
net estop-loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in
# create signals for tool loading loopback
net tool-prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
net tool-change-loop iocontrol.0.tool-change => iocontrol.0.tool-changed
Please Log in or Create an account to join the conversation.
05 Dec 2020 16:03 - 05 Dec 2020 16:12 #191130
by PCW
Replied by PCW on topic My setup Process confusion
Some notes:
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30 ## 30 IPS is very fast (that is 1800 IPM)
MAX_ACCELERATION = 75 ## 75 IPS/S is pretty slow for a 30 IPS machine
(0.4 seconds/6 inches to full speed)
TYPE = LINEAR
SCALE = 8128 ## note 8128 steps per inch * 30 IPS = 243.840 KHz which exceeds your
drives capabilities and also is not reachable with STEPLENGTH and STEPSPACE = 2.5 usec
This is why you got the warning, STEPLENGTH and STEPSPACE = 2.5 usec means
the maximum step rate would be 200 KHz.
STEPGEN_MAX_VEL = 15.0 ## This should be ~37.4= 25% larger than MAX_VELOCITY
STEPGEN_MAX_ACC = 75 ## This should be ~93.75= 25% larger than MAX_ACCELERATION
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
Also, is your scaling correct?
The 7I96 (and all of our Ethernet FPGA cards) can generate up to 12.5 MHZ step rates
but of course this requires very short step pulse lengths (40ns,40ns)
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 30 ## 30 IPS is very fast (that is 1800 IPM)
MAX_ACCELERATION = 75 ## 75 IPS/S is pretty slow for a 30 IPS machine
(0.4 seconds/6 inches to full speed)
TYPE = LINEAR
SCALE = 8128 ## note 8128 steps per inch * 30 IPS = 243.840 KHz which exceeds your
drives capabilities and also is not reachable with STEPLENGTH and STEPSPACE = 2.5 usec
This is why you got the warning, STEPLENGTH and STEPSPACE = 2.5 usec means
the maximum step rate would be 200 KHz.
STEPGEN_MAX_VEL = 15.0 ## This should be ~37.4= 25% larger than MAX_VELOCITY
STEPGEN_MAX_ACC = 75 ## This should be ~93.75= 25% larger than MAX_ACCELERATION
FERROR = 0.05
MIN_FERROR = 0.001
DIRSETUP = 100000
DIRHOLD = 100000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
Also, is your scaling correct?
The 7I96 (and all of our Ethernet FPGA cards) can generate up to 12.5 MHZ step rates
but of course this requires very short step pulse lengths (40ns,40ns)
Last edit: 05 Dec 2020 16:12 by PCW.
Please Log in or Create an account to join the conversation.
05 Dec 2020 16:10 #191131
by swalts
Replied by swalts on topic My setup Process confusion
PCW thanks for looking this over.
Steps per inch: This is how i came up with that figure. 1600 microsteps on driver. I believe it is 8*200=1600. the ballscrew i found a figure 5.08TPI.. here is the math that i think should have been used. 5.08*1600=8128
Steps per inch: This is how i came up with that figure. 1600 microsteps on driver. I believe it is 8*200=1600. the ballscrew i found a figure 5.08TPI.. here is the math that i think should have been used. 5.08*1600=8128
Please Log in or Create an account to join the conversation.
05 Dec 2020 16:27 #191132
by swalts
Replied by swalts on topic My setup Process confusion
The pulse input frequency of the driver is 200KHz.
I am thinking that means I cannot exceed that number.
the document also claims that pulse width minimum of 2.5 us.
another claim is minimal direction setup a minimum of 2.5 us.
I am looking at one of the tormach ini files for (reference). Well it looks like i made a soup sandwich!
I am thinking that means I cannot exceed that number.
the document also claims that pulse width minimum of 2.5 us.
another claim is minimal direction setup a minimum of 2.5 us.
I am looking at one of the tormach ini files for (reference). Well it looks like i made a soup sandwich!
Please Log in or Create an account to join the conversation.
05 Dec 2020 16:40 - 05 Dec 2020 16:47 #191134
by PCW
Replied by PCW on topic My setup Process confusion
1800 IPM is not realistic for a step motor/ball screw system.
1. Your motors will not spin that fast (>9000 RPM)
2. If your motors could spin that fast, your ball screws would likely whip you to death
3. 180-300 IPM are more reasonable limits (that's 3 to 5 IPS in the ini file)
1. Your motors will not spin that fast (>9000 RPM)
2. If your motors could spin that fast, your ball screws would likely whip you to death
3. 180-300 IPM are more reasonable limits (that's 3 to 5 IPS in the ini file)
Last edit: 05 Dec 2020 16:47 by PCW.
Please Log in or Create an account to join the conversation.
05 Dec 2020 16:52 #191137
by swalts
Replied by swalts on topic My setup Process confusion
PCW i agree that speed is catastrophic.
I am currently editing .ini file
is 8128 pulses correct, by chance?
If you have any other advise on the timing it would also be well received, also.
Thank you.
I am currently editing .ini file
is 8128 pulses correct, by chance?
If you have any other advise on the timing it would also be well received, also.
Thank you.
Please Log in or Create an account to join the conversation.
05 Dec 2020 19:26 #191153
by swalts
Replied by swalts on topic My setup Process confusion
This seems to work so far. would you mind taking another look at the .ini file.
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# Changes to most things are ok and will be read by the wizard
[EMC]
VERSION = 1.1
MACHINE = config_tool
DEBUG = 0x00000000
[HOSTMOT2]
DRIVER = hm2_eth
IPADDRESS = "10.10.10.10"
BOARD = 7i96
STEPGENS = 3
ENCODERS = 1
SSERIAL_PORT = 1
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
CYCLE_TIME = 0.1
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
MIN_VELOCITY = .01
MAX_LINEAR_VELOCITY = 1.5
MIN_LINEAR_VELOCITY = .01
OPEN_FILE = ""
PYVCP = config_tool.xml
DEFAULT_LINEAR_VELOCITY = 0.25
DEFAULT_ANGULAR_VELOCITY = 0.1
[FILTER]
PROGRAM_EXTENSION = .nc,.NC G-Code file
PROGRAM_EXTENSION = .tap,.TAP G-Code file
PROGRAM_EXTENSION = .txt,.TXT G-Code file
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
PROGRAM_EXTENSION = .py Python Script
py = python
[KINS]
KINEMATICS = trivkins coordinates=XYZ
JOINTS = 3
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[RS274NGC]
PARAMETER_FILE = config_tool.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
BASE_PERIOD = 299503
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[TRAJ]
COORDINATES = X Y Z
MAX_ANGULAR_VELOCITY = 30.00
DEFAULT_ANGULAR_VELOCITY = 3.00
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 0.13
MAX_LINEAR_VELOCITY = 2.25
NO_FORCE_HOMING = 1
[HAL]
HALFILE = config_tool.hal
HALFILE = io.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
HALUI = halui
[HALUI]
[AXIS_X]
MIN_LIMIT = 0.000001
MAX_LIMIT = 18
MAX_VELOCITY = 20
MAX_ACCELERATION = 15.75
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 20
MAX_ACCELERATION = 15.75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[AXIS_Y]
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15.0
[JOINT_1]
AXIS = Y
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[AXIS_Z]
MIN_LIMIT = -9
MAX_LIMIT = 0.000001
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
[JOINT_2]
AXIS = Z
MIN_LIMIT = -9
MAX_LIMIT = 0.000001
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 9
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[SPINDLE]
SPINDLE_TYPE = False
SCALE =
PWM_FREQUENCY = 20000
MAX_RPM =
MIN_RPM =
DEADBAND =
P =
I =
D =
FF0 =
FF1 =
FF2 =
BIAS =
MAX_ERROR =
[INPUTS]
# DO NOT change the input text
INPUT_0 = Select
INPUT_JOINT_0 = False
INPUT_1 = Select
INPUT_JOINT_1 = False
INPUT_2 = Select
INPUT_JOINT_2 = False
INPUT_3 = Select
INPUT_JOINT_3 = False
INPUT_4 = Select
INPUT_JOINT_4 = False
INPUT_5 = Select
INPUT_JOINT_5 = False
INPUT_6 = Select
INPUT_JOINT_6 = False
INPUT_7 = Select
INPUT_JOINT_7 = False
INPUT_8 = Select
INPUT_JOINT_8 = False
INPUT_9 = Select
INPUT_JOINT_9 = False
INPUT_10 = Select
INPUT_JOINT_10 = False
[OUTPUTS]
# DO NOT change the output text
OUTPUT_0 = Select
OUTPUT_1 = Select
OUTPUT_2 = Select
OUTPUT_3 = Select
OUTPUT_4 = Select
[OPTIONS]
MANUAL_TOOL_CHANGE = True
HALUI = True
PYVCP = True
GLADEVCP = True
LADDER = False
Thanks!
# This file was created with the 7i96 Wizard on Dec 03 2020 05:33:47
# Changes to most things are ok and will be read by the wizard
[EMC]
VERSION = 1.1
MACHINE = config_tool
DEBUG = 0x00000000
[HOSTMOT2]
DRIVER = hm2_eth
IPADDRESS = "10.10.10.10"
BOARD = 7i96
STEPGENS = 3
ENCODERS = 1
SSERIAL_PORT = 1
[DISPLAY]
DISPLAY = axis
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
CYCLE_TIME = 0.1
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in
MIN_VELOCITY = .01
MAX_LINEAR_VELOCITY = 1.5
MIN_LINEAR_VELOCITY = .01
OPEN_FILE = ""
PYVCP = config_tool.xml
DEFAULT_LINEAR_VELOCITY = 0.25
DEFAULT_ANGULAR_VELOCITY = 0.1
[FILTER]
PROGRAM_EXTENSION = .nc,.NC G-Code file
PROGRAM_EXTENSION = .tap,.TAP G-Code file
PROGRAM_EXTENSION = .txt,.TXT G-Code file
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
PROGRAM_EXTENSION = .py Python Script
py = python
[KINS]
KINEMATICS = trivkins coordinates=XYZ
JOINTS = 3
[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl
[RS274NGC]
PARAMETER_FILE = config_tool.var
[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
BASE_PERIOD = 299503
SERVO_PERIOD = 1000000
[TASK]
TASK = milltask
CYCLE_TIME = 0.010
[TRAJ]
COORDINATES = X Y Z
MAX_ANGULAR_VELOCITY = 30.00
DEFAULT_ANGULAR_VELOCITY = 3.00
LINEAR_UNITS = inch
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 0.13
MAX_LINEAR_VELOCITY = 2.25
NO_FORCE_HOMING = 1
[HAL]
HALFILE = config_tool.hal
HALFILE = io.hal
HALFILE = custom.hal
POSTGUI_HALFILE = postgui.hal
HALUI = halui
[HALUI]
[AXIS_X]
MIN_LIMIT = 0.000001
MAX_LIMIT = 18
MAX_VELOCITY = 20
MAX_ACCELERATION = 15.75
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 20
MAX_ACCELERATION = 15.75
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[AXIS_Y]
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15.0
[JOINT_1]
AXIS = Y
MIN_LIMIT = 0
MAX_LIMIT = 7
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 0
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[AXIS_Z]
MIN_LIMIT = -9
MAX_LIMIT = 0.000001
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
[JOINT_2]
AXIS = Z
MIN_LIMIT = -9
MAX_LIMIT = 0.000001
MAX_VELOCITY = 2.75
MAX_ACCELERATION = 15
TYPE = LINEAR
SCALE = 8128
STEPGEN_MAX_VEL = 15.0
STEPGEN_MAX_ACC = 15.75
FERROR = 0.05
MIN_FERROR = 0.01
DIRSETUP = 26000
DIRHOLD = 45000
STEPLEN = 2500
STEPSPACE = 2500
DEADBAND = 0
P = 1000
I = 0
D = 0
FF0 = 0
FF1 = 1
FF2 = 0.00013
BIAS = 0
MAX_OUTPUT = 0
MAX_ERROR = 0.0005
HOME = 9
HOME_USE_INDEX = False
HOME_IGNORE_LIMITS = False
[SPINDLE]
SPINDLE_TYPE = False
SCALE =
PWM_FREQUENCY = 20000
MAX_RPM =
MIN_RPM =
DEADBAND =
P =
I =
D =
FF0 =
FF1 =
FF2 =
BIAS =
MAX_ERROR =
[INPUTS]
# DO NOT change the input text
INPUT_0 = Select
INPUT_JOINT_0 = False
INPUT_1 = Select
INPUT_JOINT_1 = False
INPUT_2 = Select
INPUT_JOINT_2 = False
INPUT_3 = Select
INPUT_JOINT_3 = False
INPUT_4 = Select
INPUT_JOINT_4 = False
INPUT_5 = Select
INPUT_JOINT_5 = False
INPUT_6 = Select
INPUT_JOINT_6 = False
INPUT_7 = Select
INPUT_JOINT_7 = False
INPUT_8 = Select
INPUT_JOINT_8 = False
INPUT_9 = Select
INPUT_JOINT_9 = False
INPUT_10 = Select
INPUT_JOINT_10 = False
[OUTPUTS]
# DO NOT change the output text
OUTPUT_0 = Select
OUTPUT_1 = Select
OUTPUT_2 = Select
OUTPUT_3 = Select
OUTPUT_4 = Select
[OPTIONS]
MANUAL_TOOL_CHANGE = True
HALUI = True
PYVCP = True
GLADEVCP = True
LADDER = False
Thanks!
Please Log in or Create an account to join the conversation.
05 Dec 2020 20:46 #191166
by PCW
Replied by PCW on topic My setup Process confusion
I would change all the joint/axis velocity and accel limits to
AXIS_X]
MAX_VELOCITY = 3
MAX_ACCELERATION = 30
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 3
MAX_ACCELERATION = 30
STEPGEN_MAX_VEL = 4
STEPGEN_MAX_ACC = 40
AXIS_X]
MAX_VELOCITY = 3
MAX_ACCELERATION = 30
[JOINT_0]
AXIS = X
MIN_LIMIT = 0
MAX_LIMIT = 18
MAX_VELOCITY = 3
MAX_ACCELERATION = 30
STEPGEN_MAX_VEL = 4
STEPGEN_MAX_ACC = 40
Please Log in or Create an account to join the conversation.
05 Dec 2020 21:08 #191169
by swalts
Replied by swalts on topic My setup Process confusion
well it works so far...after the recommendation. Thanks! Out of curiousity. How did you come up with those numbers?
And installing the touch probe.
And tool offset touch pad.
And installing the touch probe.
And tool offset touch pad.
Please Log in or Create an account to join the conversation.
05 Dec 2020 21:36 #191171
by PCW
Replied by PCW on topic My setup Process confusion
1. The stepgen velocity and acceleration values should be about 25% greater than the
axis and joint values.
2, The Axis and Joint values need to be reasonable for step/dir+ball screw machine
3 IPS=180 IPM is a good value to start, The acceleration value was chosen for 0.1 second
acceleration to full speed, a good rule-of thumb for mills and lathes. Note that your
overall velocity limit of 2.25 IPS (135 IPM) is what will limit velocity.
You can of course raise these values to get better performance or lower them
if you get stalls or drive faults, but when you adjust them make sure the stepgen
values are always larger by about 25% than the axis and joint values.
axis and joint values.
2, The Axis and Joint values need to be reasonable for step/dir+ball screw machine
3 IPS=180 IPM is a good value to start, The acceleration value was chosen for 0.1 second
acceleration to full speed, a good rule-of thumb for mills and lathes. Note that your
overall velocity limit of 2.25 IPS (135 IPM) is what will limit velocity.
You can of course raise these values to get better performance or lower them
if you get stalls or drive faults, but when you adjust them make sure the stepgen
values are always larger by about 25% than the axis and joint values.
Please Log in or Create an account to join the conversation.
Time to create page: 0.194 seconds