218 lines
5.1 KiB
INI
218 lines
5.1 KiB
INI
[EMC]
|
|
VERSION = 1.1
|
|
MACHINE = getting-started:demo.ini
|
|
# Debug level, 0 means no messages. See src/emc/nml_intf/debugflags.h for others
|
|
DEBUG = 0
|
|
|
|
[DISPLAY]
|
|
DISPLAY = axis
|
|
OPEN_FILE= ./nc_files/examples.ngc
|
|
CYCLE_TIME = 0.100
|
|
HELP_FILE = doc/help.txt
|
|
POSITION_OFFSET = RELATIVE
|
|
POSITION_FEEDBACK = ACTUAL
|
|
MAX_FEED_OVERRIDE = 1.2
|
|
MAX_SPINDLE_OVERRIDE = 1.0
|
|
MAX_LINEAR_VELOCITY = 1.2
|
|
DEFAULT_LINEAR_VELOCITY = .25
|
|
PROGRAM_PREFIX = ../../nc_files/
|
|
INTRO_GRAPHIC = linuxcnc.gif
|
|
INTRO_TIME = 5
|
|
#EDITOR = geany
|
|
TOOL_EDITOR = tooledit
|
|
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil, 1mm, .1mm, 1/8000 in
|
|
|
|
[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
|
|
SUBROUTINE_PATH = nc_subroutines:../../nc_files/remap_lib/common_nc_subs
|
|
LOG_LEVEL = 0
|
|
|
|
# generalized remapping of RS274NGC codes
|
|
#-----------------------------------------
|
|
# currently only unused M- and G-codes may be activated as per below, plus the
|
|
# T,M6,M61,S and F codes.
|
|
# G: currently supported modal group: 1
|
|
# M:currently supported modal groups: 5,6,7,8,9,10
|
|
# for T,S,F remaps the modal group is fixed and any modalgroup= option is ignored
|
|
|
|
|
|
# An argument specification (keyword 'argspec') describes required and permitted words,
|
|
# and preconditions for that code to execute.
|
|
#
|
|
# It consists of 0-n characters of the class [@A-KMNP-Za-kmnp-z^>] .
|
|
#
|
|
# parameter words:
|
|
# an uppercase letter for each required parameter 'word'
|
|
# a lowercase letter for each optional parameter 'word'
|
|
#
|
|
# Preconditions:
|
|
# an '^' means: speed must be > 0
|
|
# an '>' means: feed must be > 0
|
|
#
|
|
# if calling an NGC oword function (ngc= <funcname>), the parameters are passed
|
|
# as local named parameters which are already set when the function starts
|
|
# optional words are passed if set in the block, and may be tested for existence
|
|
# by # EXISTS(#<..>) .
|
|
#
|
|
# example 1:
|
|
REMAP= M400 modalgroup=10 argspec=Pq ngc=m400
|
|
# see nc_subroutines/m400.ngc
|
|
# to exercise, try:
|
|
# M400
|
|
# M400 P123
|
|
# M400 P123 Q456
|
|
# ---------------
|
|
#
|
|
# Example 2:
|
|
#
|
|
# Calling with traditional positioal parameter lists:
|
|
#
|
|
# To do so, add the '@' character to the argspec.
|
|
# In this case, the arguments (required or optional) will be passed tradional-style
|
|
#
|
|
REMAP= M410 modalgroup=10 argspec=@Pq ngc=m410
|
|
# see nc_subroutines/m410.ngc
|
|
#
|
|
# to exercise, try:
|
|
# M410
|
|
# M410 P123
|
|
# M410 P123 Q456
|
|
#
|
|
# NB: you lose the capability to distinguish more than one optional parameter word!
|
|
# since you can't tell whether Q was passed as 'Q0' or no Q word was set.
|
|
#
|
|
# -------------------------------------------------------------------------
|
|
#
|
|
# up to here you wouldn't need the PYTHON section to be defined since no
|
|
# Python code was used.
|
|
# Examples below refer to Python handlers and hence need the plugin configured.
|
|
#
|
|
# instead of calling an NGC procedure, we call the remap.g886() Python function:
|
|
#
|
|
REMAP= G88.6 modalgroup=1 argspec=XYZp py=g886
|
|
# see python/remap.py function g886
|
|
# to exercise, try:
|
|
# g88.6 x1 y2 z3
|
|
# g88.6 x1 y2 z3 p33 (a comment here)
|
|
|
|
# a more complex example
|
|
# based on nc_files/involute.py example and can it as a G-code
|
|
# all checking is done in the Python procedure by directly accessing interpreter internals
|
|
#
|
|
REMAP= G88.1 modalgroup=1 py=involute
|
|
# see python/remap.py function involute
|
|
#
|
|
#
|
|
# pin wiggling example - equivalent of M62
|
|
# usgage : M462 P<pin-number> Q<0 or 1>
|
|
REMAP= M462 modalgroup=10 argspec=PQ py=m462
|
|
|
|
# pin wiggling example - equivalent of M65
|
|
# usgage : M465 P<pin-number> Q<0 or 1>
|
|
REMAP= M465 modalgroup=10 argspec=PQ py=m465
|
|
|
|
# this is important - read nc_subroutines/on_abort.ngc
|
|
ON_ABORT_COMMAND= O <on_abort> call
|
|
|
|
[EMCMOT]
|
|
EMCMOT = motmod
|
|
COMM_TIMEOUT = 1.0
|
|
SERVO_PERIOD = 1000000
|
|
|
|
[TASK]
|
|
TASK = milltask
|
|
CYCLE_TIME = 0.001
|
|
|
|
[HAL]
|
|
HALUI = halui
|
|
HALFILE = LIB:basic_sim.tcl
|
|
|
|
[TRAJ]
|
|
COORDINATES = X Y Z
|
|
LINEAR_UNITS = inch
|
|
ANGULAR_UNITS = degree
|
|
DEFAULT_LINEAR_VELOCITY = 1.2
|
|
POSITION_FILE = position.txt
|
|
MAX_LINEAR_VELOCITY = 1.2
|
|
NO_FORCE_HOMING = 1
|
|
|
|
[EMCIO]
|
|
TOOL_TABLE = tool.tbl
|
|
TOOL_CHANGE_POSITION = 0 0 0
|
|
TOOL_CHANGE_QUILL_UP = 1
|
|
|
|
[KINS]
|
|
KINEMATICS = trivkins
|
|
JOINTS = 3
|
|
|
|
[AXIS_X]
|
|
MIN_LIMIT = -40.0
|
|
MAX_LIMIT = 40.0
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
|
|
[JOINT_0]
|
|
TYPE = LINEAR
|
|
HOME = 0.000
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
MIN_LIMIT = -40.0
|
|
MAX_LIMIT = 40.0
|
|
HOME_OFFSET = 0.0
|
|
HOME_SEARCH_VEL = 20.0
|
|
HOME_LATCH_VEL = 20.0
|
|
HOME_SEQUENCE = 1
|
|
|
|
[AXIS_Y]
|
|
MIN_LIMIT = -40.0
|
|
MAX_LIMIT = 40.0
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
|
|
[JOINT_1]
|
|
TYPE = LINEAR
|
|
HOME = 0.000
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
MIN_LIMIT = -40.0
|
|
MAX_LIMIT = 40.0
|
|
HOME_OFFSET = 0.0
|
|
HOME_SEARCH_VEL = 20.0
|
|
HOME_LATCH_VEL = 20.0
|
|
HOME_SEQUENCE = 1
|
|
|
|
[AXIS_Z]
|
|
MIN_LIMIT = -8.0
|
|
MAX_LIMIT = 8.00
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
|
|
[JOINT_2]
|
|
TYPE = LINEAR
|
|
HOME = 0.0
|
|
MAX_VELOCITY = 4
|
|
MAX_ACCELERATION = 100.0
|
|
MIN_LIMIT = -8.0
|
|
MAX_LIMIT = 8.00
|
|
HOME_OFFSET = 1.0
|
|
HOME_SEARCH_VEL = 20.0
|
|
HOME_LATCH_VEL = 20.0
|
|
HOME_SEQUENCE = 0
|
|
|
|
[PYTHON]
|
|
PATH_PREPEND= python
|
|
|
|
# import the following Python module
|
|
TOPLEVEL= python/toplevel.py
|
|
|
|
# the higher the more verbose tracing of the Python plugin
|
|
LOG_LEVEL = 8
|