371 lines
8.6 KiB
INI
371 lines
8.6 KiB
INI
# This config file was created 2015-10-18 15:29:00.438682 by the update_ini script
|
|
# The original config files may be found in the /home/seb/linuxcnc-dev/configs/by_machine/scorbot-er-3/scorbot-er-3.old directory
|
|
|
|
[EMC]
|
|
# The version string for this INI file.
|
|
VERSION = 1.1
|
|
|
|
MACHINE = Scorbot-ER III
|
|
|
|
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
|
#DEBUG = 0x7fffffff
|
|
DEBUG = 0
|
|
|
|
|
|
[DISPLAY]
|
|
DISPLAY = axis
|
|
CYCLE_TIME = 0.100
|
|
HELP_FILE = doc/help.txt
|
|
POSITION_OFFSET = RELATIVE
|
|
POSITION_FEEDBACK = ACTUAL
|
|
|
|
# Highest value that will be allowed for feed override, 1.0 = 100%
|
|
MAX_FEED_OVERRIDE = 2.0
|
|
MAX_SPINDLE_OVERRIDE = 2.0
|
|
|
|
MAX_LINEAR_VELOCITY = 27
|
|
DEFAULT_LINEAR_VELOCITY = 27
|
|
|
|
MAX_ANGULAR_VELOCITY = 27
|
|
DEFAULT_ANGULAR_VELOCITY = 27
|
|
|
|
PROGRAM_PREFIX = ../../../nc_files/
|
|
|
|
INTRO_GRAPHIC = linuxcnc.gif
|
|
INTRO_TIME = 5
|
|
|
|
EDITOR = gvim
|
|
TOOL_EDITOR = gvim
|
|
|
|
INCREMENTS = 10 mm, 1 mm, 0.10 mm, 0.01 mm
|
|
|
|
PYVCP = gripper.xml
|
|
|
|
|
|
[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 = python3
|
|
|
|
|
|
[RS274NGC]
|
|
PARAMETER_FILE = sim.var
|
|
|
|
|
|
[EMCMOT]
|
|
EMCMOT = motmod
|
|
COMM_TIMEOUT = 1.0
|
|
SERVO_PERIOD = 1000000
|
|
|
|
|
|
[TASK]
|
|
TASK = milltask
|
|
CYCLE_TIME = 0.001
|
|
|
|
|
|
[HAL]
|
|
HALFILE = scorbot-er-3.hal
|
|
#HALFILE = ../../common/shuttlexpress.hal
|
|
#HALFILE = shuttlexpress-customization.hal
|
|
POSTGUI_HALFILE = pyvcp.hal
|
|
|
|
HALUI = halui
|
|
|
|
|
|
[HALUI]
|
|
#No Content
|
|
|
|
[TRAJ]
|
|
AXES = 5
|
|
COORDINATES = X Y Z A B
|
|
LINEAR_UNITS = mm
|
|
ANGULAR_UNITS = degree
|
|
#HOME = 0 0 0 0 0
|
|
|
|
# mm/second
|
|
DEFAULT_VELOCITY = 675
|
|
MAX_VELOCITY = 675
|
|
|
|
# mm/second/second
|
|
DEFAULT_ACCELERATION = 5000
|
|
MAX_ACCELERATION = 5000
|
|
|
|
POSITION_FILE = position.txt
|
|
|
|
|
|
#
|
|
# The Scorbot-ER III User's Manual (6th Edition) Appendix E states that
|
|
# motors 1-5 (joints 0-4) use optical encoders with 6 slots/revolution.
|
|
# Experimentally, the Scorbot motor control box reports 6 counts per
|
|
# revolution.
|
|
#
|
|
# The arm motors (joint 0, 1, & 2) have gearboxes with a ratio of 127.7:1.
|
|
# The wrist motors (joints 3 & 4) have gearboxes with a ratio of 65.5:1.
|
|
#
|
|
# 6 counts/motor-rev * 127.7 motor-revs/driveshaft-rev = 766.2 counts/driveshaft-rev
|
|
#
|
|
# 6 counts/motor-rev * 65.5 motor-revs/driveshaft-rev = 393 counts/driveshaft-rev
|
|
#
|
|
# Each motor then has a different transmission to actuate the joint, but
|
|
# they're all 1:1 after the gearbox on the motor.
|
|
#
|
|
|
|
[EMCIO]
|
|
#TOOL_TABLE = sim.tbl
|
|
#TOOL_CHANGE_POSITION = 0 0 0
|
|
#TOOL_CHANGE_QUILL_UP = 1
|
|
|
|
[KINS]
|
|
KINEMATICS = scorbot-kins
|
|
#This is a best-guess at the number of joints, it should be checked
|
|
JOINTS = 5
|
|
|
|
|
|
[AXIS_X]
|
|
HOME = 0.000
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
[JOINT_0]
|
|
|
|
TYPE = ANGULAR
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
# Motor 0 turns a 24 tooth gear that rolls around a 120 tooth gear.
|
|
# 766.2 counts/driveshaft-rev * 1 driveshaft-rev/24 teeth = 31.925 counts/tooth
|
|
# 31.925 counts/tooth * 120 teeth/joint-rev = 3831.0 counts/joint-rev
|
|
# 3831.0 counts/joint-rev * 1 joint-rev/360 degrees = 10.6417 counts/degree
|
|
SCALE = 10.6417
|
|
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
|
|
FERROR = 0.100
|
|
MIN_FERROR = 0.010
|
|
|
|
HOME = 0.000
|
|
HOME_OFFSET = -0.100
|
|
HOME_SEARCH_VEL = -7.500
|
|
HOME_LATCH_VEL = 2.000
|
|
HOME_USE_INDEX = NO
|
|
HOME_IGNORE_LIMITS = YES
|
|
HOME_SEQUENCE = 0
|
|
|
|
|
|
[AXIS_Y]
|
|
HOME = 130.000
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
MAX_VELOCITY = 500
|
|
MAX_ACCELERATION = 5000
|
|
|
|
[JOINT_1]
|
|
|
|
TYPE = ANGULAR
|
|
MAX_VELOCITY = 500
|
|
MAX_ACCELERATION = 5000
|
|
|
|
# Motor 1 turns an 18 tooth gear that rolls around a 72 tooth gear.
|
|
# 766.2 counts/driveshaft-rev * 1 driveshaft-rev/18 teeth = 42.567 counts/tooth
|
|
# 42.567 counts/tooth * 72 teeth/joint-rev = 3064.8 counts/joint-rev
|
|
# 3064.8 counts/joint-rev * 1 joint-rev/360 degrees = 8.513 counts/degree
|
|
SCALE = -8.513
|
|
|
|
MIN_LIMIT = -32
|
|
MAX_LIMIT = 127
|
|
FERROR = 0.100
|
|
MIN_FERROR = 0.010
|
|
HOME = 125.000
|
|
HOME_OFFSET = 127.900
|
|
HOME_SEARCH_VEL = 7.500
|
|
HOME_LATCH_VEL = -2.000
|
|
HOME_USE_INDEX = NO
|
|
HOME_IGNORE_LIMITS = YES
|
|
HOME_SEQUENCE = 2
|
|
|
|
|
|
[AXIS_Z]
|
|
HOME = 0.000
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
[JOINT_2]
|
|
|
|
TYPE = ANGULAR
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
# Motor 2 turns an 18 tooth gear that rolls around a 72 tooth gear.
|
|
# The 72 tooth gear turns a 19(?) tooth timing pulley connected to a 17 tooth timing pulley.
|
|
# 766.2 counts/driveshaft-rev * 1 driveshaft-rev/18 teeth = 42.567 counts/tooth
|
|
# 42.567 counts/tooth * 72 teeth/axle-rev = 3064.8 counts/axle-rev
|
|
# 3064.8 counts/axle-rev * 1 axle-rev/19 timing-teeth = 161.305 counts/timing-tooth
|
|
# 161.305 counts/timing-tooth * 17 timing-teeth/joint-rev = 2742.189 counts/joint-rev
|
|
# 2742.189 counts/joint-rev * 1 joint-rev/360 degrees = 7.617 counts/rev
|
|
SCALE = 7.6171929824561415
|
|
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
FERROR = 0.050
|
|
MIN_FERROR = 0.010
|
|
HOME = 0.000
|
|
HOME_OFFSET = -30.001
|
|
HOME_SEARCH_VEL = -7.500
|
|
HOME_LATCH_VEL = 2.000
|
|
HOME_USE_INDEX = NO
|
|
HOME_IGNORE_LIMITS = YES
|
|
HOME_SEQUENCE = 2
|
|
|
|
|
|
[AXIS_A]
|
|
HOME = 20.0
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
[JOINT_3]
|
|
|
|
TYPE = ANGULAR
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
# Motor 3 turns a 12 tooth timing gear (gear #1) connected by a timing belt
|
|
# to a 23 tooth timing gear (gear #2). Gear #2 is connected by another
|
|
# belt to another 23 tooth timing gear (gear #3). Gear #3 is connected by
|
|
# another timing belt to another 23 tooth timing gear (gear #4).
|
|
# Gear #4 is connected to a differential drive in the wrist.
|
|
# The drive gear (the part of the diff rigidly connected to the timing gear)
|
|
# has 32 teeth. The driven gear also has 32 teeth.
|
|
#
|
|
# FIXME: Since this motor moves the hand in two degrees of freedom, i'm not
|
|
# sure how to think about the units etc here.
|
|
#
|
|
# At the motor:
|
|
# 393 counts/driveshaft-rev * 1 driveshaft-rev/12 teeth = 32.75 counts/timing-tooth
|
|
# Then at the end of the timing belt drive:
|
|
# 32.75 counts/timing-tooth * 32 diff-teeth/23 timing-teeth = 45.56521739130435 counts/diff-tooth
|
|
# 45.56521739130435 counts/diff-tooth * 32 diff-teeth/360 degrees = 4.05024154589372 counts/degree
|
|
# FIXME: i'm not sure it's ok to convert diff-teeth to degrees that way since it's a differential
|
|
|
|
SCALE = 4.05024154589372
|
|
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
FERROR = 0.050
|
|
MIN_FERROR = 0.010
|
|
|
|
HOME = -30.0
|
|
HOME_OFFSET = -56.0
|
|
HOME_SEARCH_VEL = -7.500
|
|
HOME_LATCH_VEL = 2.000
|
|
HOME_USE_INDEX = NO
|
|
HOME_IGNORE_LIMITS = YES
|
|
HOME_SEQUENCE = 1
|
|
|
|
|
|
[AXIS_B]
|
|
HOME = 4.0
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
[JOINT_4]
|
|
|
|
TYPE = ANGULAR
|
|
MAX_VELOCITY = 675
|
|
MAX_ACCELERATION = 5000
|
|
|
|
# Motor 4, same as motor 3
|
|
SCALE = 4.05024154589372
|
|
|
|
MIN_LIMIT = -1000
|
|
MAX_LIMIT = 1000
|
|
FERROR = 0.050
|
|
MIN_FERROR = 0.010
|
|
|
|
HOME = 4.0
|
|
HOME_OFFSET = 0.0
|
|
HOME_SEARCH_VEL = -7.500
|
|
HOME_LATCH_VEL = 2.000
|
|
HOME_USE_INDEX = NO
|
|
HOME_IGNORE_LIMITS = YES
|
|
HOME_SEQUENCE = 0
|
|
|
|
|
|
#[AXIS_5]
|
|
#TYPE = ANGULAR
|
|
#MAX_VELOCITY = 100
|
|
#MAX_ACCELERATION = 500
|
|
|
|
# joint 5
|
|
#SCALE = 5
|
|
|
|
#MIN_LIMIT = -8.0
|
|
#MAX_LIMIT = 0.0001
|
|
#FERROR = 0.050
|
|
#MIN_FERROR = 0.010
|
|
|
|
#HOME = 0.000
|
|
#HOME_OFFSET = 1.0
|
|
#HOME_SEARCH_VEL = 20.0
|
|
#HOME_LATCH_VEL = 20.0
|
|
#HOME_USE_INDEX = NO
|
|
#HOME_IGNORE_LIMITS = NO
|
|
#HOME_SEQUENCE = 0
|
|
|
|
|
|
#[AXIS_6]
|
|
#TYPE = ANGULAR
|
|
#MAX_VELOCITY = 100
|
|
#MAX_ACCELERATION = 500
|
|
|
|
# joint 6
|
|
#SCALE = 5
|
|
|
|
#MIN_LIMIT = -8.0
|
|
#MAX_LIMIT = 0.0001
|
|
#FERROR = 0.050
|
|
#MIN_FERROR = 0.010
|
|
|
|
#HOME = 0.000
|
|
#HOME_OFFSET = 1.0
|
|
#HOME_SEARCH_VEL = 20.0
|
|
#HOME_LATCH_VEL = 20.0
|
|
#HOME_USE_INDEX = NO
|
|
#HOME_IGNORE_LIMITS = NO
|
|
#HOME_SEQUENCE = 0
|
|
|
|
|
|
#[AXIS_7]
|
|
#TYPE = ANGULAR
|
|
#MAX_VELOCITY = 100
|
|
#MAX_ACCELERATION = 500
|
|
|
|
# joint 7
|
|
#SCALE = 5
|
|
|
|
#MIN_LIMIT = -8.0
|
|
#MAX_LIMIT = 0.0001
|
|
#FERROR = 0.050
|
|
#MIN_FERROR = 0.010
|
|
|
|
#HOME = 0.000
|
|
#HOME_OFFSET = 1.0
|
|
#HOME_SEARCH_VEL = 20.0
|
|
#HOME_LATCH_VEL = 20.0
|
|
#HOME_USE_INDEX = NO
|
|
#HOME_IGNORE_LIMITS = NO
|
|
#HOME_SEQUENCE = 0
|
|
|