?
This commit is contained in:
24
configs/sim.axis/README
Executable file
24
configs/sim.axis/README
Executable file
@@ -0,0 +1,24 @@
|
||||
Axis is a modern, GL-based interface coded in python
|
||||
|
||||
The principal Axis gui sim ini files:
|
||||
|
||||
axis.ini basic demo (in)
|
||||
axis_9axis.ini 9 axes
|
||||
axis_mm.ini basic demo (mm)
|
||||
canterp.ini demo for a non-gcode interpreter
|
||||
histogram_demo.ini hal-histogram examples
|
||||
historical_lathe.ini configured with 3 joints (XYZ with Y unused)
|
||||
ini_hal_demo.ini ini hal pins demo
|
||||
lathe.ini lathe demo
|
||||
ldelta.ini linear delta robot
|
||||
ldelta_demo.ini linear delta with jog guis
|
||||
minimal_xyz.ini minimal set of config items
|
||||
profile_axis.ini profiling
|
||||
random_tc.ini random tool changer
|
||||
rdelta.ini rotary delta robot
|
||||
|
||||
Select one of these if you have no functional machine but want to edit some basic configuration stuff or play with one of the LinuxCNC displays.
|
||||
|
||||
Additional configurations are provided in subdirectories.
|
||||
|
||||
These configurations demonstrate LinuxCNC functionality using the axis gui as the interface. (The functionality demonstrated may be available in other guis also)
|
||||
33
configs/sim.axis/README_es
Executable file
33
configs/sim.axis/README_es
Executable file
@@ -0,0 +1,33 @@
|
||||
Axis es una moderna interfaz basada en GL y codificada en Python
|
||||
|
||||
Archivos ini principales de Axis gui sim:
|
||||
|
||||
axis.ini demo básica (in).
|
||||
axis_9axis.ini 9 ejes.
|
||||
axis_mm.ini demo básica (mm).
|
||||
canterp.ini demo de intérprete
|
||||
no-gcode.
|
||||
gantry.ini demo pórtico.
|
||||
gantry_mm.ini demo pórtico (mm).
|
||||
histogram_demo.ini ejemplos
|
||||
hal-histogram.
|
||||
historical_lathe.ini torno, 3 articula-
|
||||
-ciones (XYZ, con Y
|
||||
sin usar).
|
||||
ini_hal_demo.ini demo ini pines hal.
|
||||
lathe.ini demo torno.
|
||||
ldelta.ini robot delta lineal.
|
||||
ldelta_demo.ini robot delta lineal
|
||||
con gui para jog.
|
||||
minimal_xyz.ini conjunto mínimo de
|
||||
configuración.
|
||||
profile_axis.ini perfil.
|
||||
random_tc.ini cambiador aleatorio.
|
||||
de herramientas.
|
||||
rdelta.ini robot delta rotativo.
|
||||
|
||||
Seleccione uno de estos si no tiene una máquina funcional pero desea editar algunas cosas de configuración básica o jugar con una de las pantallas de LinuxCNC.
|
||||
|
||||
Se proporcionan configuraciones adicionales en los subdirectorios.
|
||||
|
||||
Estas configuraciones demuestran la funcionalidad de LinuxCNC utilizando la interfaz Axis. (La funcionalidad demostrada puede estar disponible tambien en otras guis)
|
||||
229
configs/sim.axis/axis.ini
Executable file
229
configs/sim.axis/axis.ini
Executable file
@@ -0,0 +1,229 @@
|
||||
# EMC controller parameters for a simulated machine.
|
||||
|
||||
# General note: Comments can either be preceded with a # or ; - either is
|
||||
# acceptable, although # is in keeping with most linux config files.
|
||||
|
||||
# General section -------------------------------------------------------------
|
||||
[EMC]
|
||||
|
||||
# Version of this INI file
|
||||
VERSION = 1.1
|
||||
|
||||
# Name of machine, for use with display, etc.
|
||||
MACHINE = LinuxCNC-HAL-SIM-AXIS
|
||||
|
||||
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
||||
#DEBUG = 0x7FFFFFFF
|
||||
DEBUG = 0
|
||||
|
||||
# Sections for display options ------------------------------------------------
|
||||
[DISPLAY]
|
||||
|
||||
# Name of display program, e.g., axis
|
||||
DISPLAY = axis
|
||||
|
||||
# Cycle time, in seconds, that display will sleep between polls
|
||||
CYCLE_TIME = 0.100
|
||||
|
||||
# Path to help file
|
||||
HELP_FILE = doc/help.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.2
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
|
||||
MAX_LINEAR_VELOCITY = 5
|
||||
DEFAULT_LINEAR_VELOCITY = .25
|
||||
DEFAULT_SPINDLE_SPEED = 200
|
||||
# Prefix to be used
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
# Introductory graphic
|
||||
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
|
||||
|
||||
# Task controller section -----------------------------------------------------
|
||||
[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.001
|
||||
|
||||
# Part program interpreter section --------------------------------------------
|
||||
[RS274NGC]
|
||||
|
||||
# File containing interpreter variables
|
||||
PARAMETER_FILE = sim.var
|
||||
|
||||
# Motion control section ------------------------------------------------------
|
||||
[EMCMOT]
|
||||
|
||||
EMCMOT = motmod
|
||||
|
||||
# Timeout for comm to emcmot, in seconds
|
||||
COMM_TIMEOUT = 1.0
|
||||
|
||||
# BASE_PERIOD is unused in this configuration but specified in core_sim.hal
|
||||
BASE_PERIOD = 0
|
||||
# Servo task period, in nano-seconds
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
# section for main IO controller parameters -----------------------------------
|
||||
[EMCIO]
|
||||
|
||||
# Name of IO controller program, e.g., io
|
||||
EMCIO = io
|
||||
|
||||
# cycle time, in seconds
|
||||
CYCLE_TIME = 0.100
|
||||
|
||||
# tool table file
|
||||
TOOL_TABLE = sim.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 0
|
||||
TOOL_CHANGE_QUILL_UP = 1
|
||||
|
||||
# Hardware Abstraction Layer section --------------------------------------------------
|
||||
[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 = core_sim.hal
|
||||
HALFILE = sim_spindle_encoder.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALFILE = simulated_home.hal
|
||||
HALFILE = check_xyz_constraints.hal
|
||||
HALFILE = cooling.hal
|
||||
|
||||
# list of halcmd commands to execute
|
||||
# commands are executed in the order in which they appear
|
||||
#HALCMD = save neta
|
||||
|
||||
# Single file that is executed after the GUI has started. Only supported by
|
||||
# AXIS at this time (only AXIS creates a HAL component of its own)
|
||||
#POSTGUI_HALFILE = test_postgui.hal
|
||||
|
||||
HALUI = halui
|
||||
|
||||
# Trajectory planner section --------------------------------------------------
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
MAX_LINEAR_VELOCITY = 4
|
||||
DEFAULT_LINEAR_ACCELERATION = 100
|
||||
MAX_LINEAR_ACCELERATION = 100
|
||||
POSITION_FILE = position.txt
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 3
|
||||
|
||||
# Axes sections ---------------
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -8.0
|
||||
MAX_LIMIT = 0.12
|
||||
|
||||
# Joints sections -------------
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 5
|
||||
MAX_ACCELERATION = 50.0
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
FERROR = 0.050
|
||||
MIN_FERROR = 0.010
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_USE_INDEX = NO
|
||||
HOME_IGNORE_LIMITS = NO
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 5
|
||||
MAX_ACCELERATION = 50.0
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
FERROR = 0.050
|
||||
MIN_FERROR = 0.010
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_USE_INDEX = NO
|
||||
HOME_IGNORE_LIMITS = NO
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.0
|
||||
MAX_VELOCITY = 5
|
||||
MAX_ACCELERATION = 50.0
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -8.0
|
||||
|
||||
# Normally the Z max should be 0.000!
|
||||
# The only reason it's greater than 0 here is so that the splash screen
|
||||
# gcode will run.
|
||||
MAX_LIMIT = 0.12
|
||||
|
||||
FERROR = 0.050
|
||||
MIN_FERROR = 0.010
|
||||
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
|
||||
HOME_IS_SHARED = 1
|
||||
200
configs/sim.axis/axis_9axis.ini
Executable file
200
configs/sim.axis/axis_9axis.ini
Executable file
@@ -0,0 +1,200 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = LinuxCNC-sim-9axis
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
CYCLE_TIME = 0.100
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = ACTUAL
|
||||
MAX_FEED_OVERRIDE = 1.2
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
PROGRAM_PREFIX = ../../nc_files/
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
#EDITOR = geany
|
||||
INCREMENTS = 1 mm, .01 in, .1mm, 1 mil, .1 mil, 1/8000 in
|
||||
GEOMETRY = XYZABCUVW
|
||||
|
||||
[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
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[RS274NGC]
|
||||
PARAMETER_FILE = sim-9axis.var
|
||||
|
||||
[EMCMOT]
|
||||
# joint4 is locked rotary
|
||||
# create hal pins: joint4.unlock, joint.4.is-locked
|
||||
# JOINTS_AXES specify joint4 with mask:
|
||||
EMCMOT = motmod unlock_joints_mask=0x10
|
||||
COMM_TIMEOUT = 1.0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = sim.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 2
|
||||
|
||||
[HAL]
|
||||
HALUI = halui
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
HALFILE = locking_indexer.hal
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z A B C U V W
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.0
|
||||
DEFAULT_LINEAR_ACCELERATION = 20.0
|
||||
DEFAULT_ANGULAR_VELOCITY = 45.0
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_ACCELERATION = 20.0
|
||||
MAX_ANGULAR_VELOCITY = 90.0
|
||||
POSITION_FILE = position9.txt
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 9
|
||||
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
[AXIS_A]
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
[AXIS_B]
|
||||
# JOINTS_AXES specify the joint number
|
||||
# JOINTS_AXES also mask: motmod unlock_joints_mask=0x10
|
||||
LOCKING_INDEXER_JOINT = 4
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
[AXIS_C]
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
[AXIS_U]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
[AXIS_V]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
[AXIS_W]
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_USE_INDEX = 1
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_USE_INDEX = 1
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_USE_INDEX = 1
|
||||
|
||||
[JOINT_3]
|
||||
TYPE = ANGULAR
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[JOINT_4]
|
||||
TYPE = ANGULAR
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 1
|
||||
# joints_axes: for homing
|
||||
LOCKING_INDEXER = 1
|
||||
|
||||
[JOINT_5]
|
||||
TYPE = ANGULAR
|
||||
MAX_VELOCITY = 90.0
|
||||
MAX_ACCELERATION = 1200.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[JOINT_6]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_7]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_8]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 1.2
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
216
configs/sim.axis/axis_mm.ini
Executable file
216
configs/sim.axis/axis_mm.ini
Executable file
@@ -0,0 +1,216 @@
|
||||
# EMC controller parameters for a simulated machine.
|
||||
|
||||
# General note: Comments can either be preceded with a # or ; - either is
|
||||
# acceptable, although # is in keeping with most linux config files.
|
||||
|
||||
# General section -------------------------------------------------------------
|
||||
[EMC]
|
||||
# Version of this INI file
|
||||
VERSION = 1.1
|
||||
|
||||
# Name of machine, for use with display, etc.
|
||||
MACHINE = LinuxCNC-HAL-SIM-AXIS
|
||||
|
||||
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
||||
# DEBUG = 0x7FFFFFFF
|
||||
DEBUG = 0
|
||||
|
||||
# Sections for display options ------------------------------------------------
|
||||
[DISPLAY]
|
||||
|
||||
# Name of display program, e.g., axis
|
||||
DISPLAY = axis
|
||||
|
||||
# Cycle time, in seconds, that display will sleep between polls
|
||||
CYCLE_TIME = 0.100
|
||||
|
||||
# Path to help file
|
||||
HELP_FILE = doc/help.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.2
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
# Prefix to be used
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
# Introductory graphic
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
#EDITOR = geany
|
||||
|
||||
INCREMENTS = 1 mm, .01 in, .1mm, 1 mil, .1 mil, 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
|
||||
|
||||
# Task controller section -----------------------------------------------------
|
||||
[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.001
|
||||
|
||||
# Part program interpreter section --------------------------------------------
|
||||
[RS274NGC]
|
||||
|
||||
# File containing interpreter variables
|
||||
PARAMETER_FILE = sim_mm.var
|
||||
|
||||
# Motion control section ------------------------------------------------------
|
||||
[EMCMOT]
|
||||
|
||||
EMCMOT = motmod
|
||||
|
||||
# Timeout for comm to emcmot, in seconds
|
||||
COMM_TIMEOUT = 1.0
|
||||
|
||||
# BASE_PERIOD is unused in this configuration but specified in core_sim.hal
|
||||
BASE_PERIOD = 0
|
||||
# Servo task period, in nano-seconds
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
# section for main IO controller parameters -----------------------------------
|
||||
[EMCIO]
|
||||
|
||||
# Name of IO controller program, e.g., io
|
||||
EMCIO = io
|
||||
|
||||
# cycle time, in seconds
|
||||
CYCLE_TIME = 0.100
|
||||
|
||||
# tool table file
|
||||
TOOL_TABLE = sim_mm.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 50.8
|
||||
|
||||
# Hardware Abstraction Layer section --------------------------------------------------
|
||||
[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 = core_sim.hal
|
||||
HALFILE = sim_spindle_encoder.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALFILE = simulated_home.hal
|
||||
HALFILE = cooling.hal
|
||||
|
||||
# list of halcmd commands to execute
|
||||
# commands are executed in the order in which they appear
|
||||
#HALCMD = save neta
|
||||
|
||||
# Single file that is executed after the GUI has started. Only supported by
|
||||
# AXIS at this time (only AXIS creates a HAL component of its own)
|
||||
#POSTGUI_HALFILE = test_postgui.hal
|
||||
|
||||
HALUI = halui
|
||||
|
||||
# Trajectory planner section --------------------------------------------------
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z
|
||||
LINEAR_UNITS = mm
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 30.48
|
||||
MAX_LINEAR_VELOCITY = 53.34
|
||||
DEFAULT_LINEAR_ACCELERATION = 508
|
||||
MAX_LINEAR_ACCELERATION = 508
|
||||
POSITION_FILE = position_mm.txt
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 3
|
||||
|
||||
# Axes sections ---------------
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
MIN_LIMIT = -254
|
||||
MAX_LIMIT = 254
|
||||
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
MIN_LIMIT = -254
|
||||
MAX_LIMIT = 254
|
||||
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
MIN_LIMIT = -50.8
|
||||
MAX_LIMIT = 101.6
|
||||
|
||||
# Joints sections -------------
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 157.48
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -254
|
||||
MAX_LIMIT = 254
|
||||
FERROR = 1.27
|
||||
MIN_FERROR = .254
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 127
|
||||
HOME_LATCH_VEL = 25.4
|
||||
HOME_USE_INDEX = NO
|
||||
HOME_IGNORE_LIMITS = NO
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 157.48
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -254
|
||||
MAX_LIMIT = 254
|
||||
FERROR = 1.27
|
||||
MIN_FERROR = .254
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 127
|
||||
HOME_LATCH_VEL = 25.4
|
||||
HOME_USE_INDEX = NO
|
||||
HOME_IGNORE_LIMITS = NO
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.0
|
||||
MAX_VELOCITY = 30.48
|
||||
MAX_ACCELERATION = 508
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 157.48
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -50.8
|
||||
MAX_LIMIT = 101.6
|
||||
FERROR = 1.27
|
||||
MIN_FERROR = .254
|
||||
HOME_OFFSET = 25.4
|
||||
HOME_SEARCH_VEL = 127
|
||||
HOME_LATCH_VEL = 25.4
|
||||
HOME_USE_INDEX = NO
|
||||
HOME_IGNORE_LIMITS = NO
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
114
configs/sim.axis/canterp.ini
Executable file
114
configs/sim.axis/canterp.ini
Executable file
@@ -0,0 +1,114 @@
|
||||
[EMC]
|
||||
MACHINE = Canterp Example
|
||||
VERSION = 1.1
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
INTERPRETER = canterp.so
|
||||
|
||||
[DISPLAY]
|
||||
OPEN_FILE = ./canterp_example.can
|
||||
DISPLAY = axis
|
||||
CYCLE_TIME = 0.100
|
||||
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 = /home/linuxcnc/linuxcnc/nc_files
|
||||
#EDITOR = geany
|
||||
TOOL_EDITOR = tooledit
|
||||
INCREMENTS = 1mm, .1mm
|
||||
|
||||
[RS274NGC]
|
||||
PARAMETER_FILE = canterp.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
COMM_TIMEOUT = 1.0
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[HAL]
|
||||
HALUI = halui
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
|
||||
[TRAJ]
|
||||
NO_FORCE_HOMING = 1
|
||||
COORDINATES = X Y Z
|
||||
LINEAR_UNITS = mm
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 3
|
||||
|
||||
[AXIS_X]
|
||||
HOME = 0.000
|
||||
MIN_LIMIT = -9999.0
|
||||
MAX_LIMIT = 9999.0
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -9999
|
||||
MAX_LIMIT = 9999
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[AXIS_Y]
|
||||
HOME = 0.000
|
||||
MIN_LIMIT = -9999
|
||||
MAX_LIMIT = 9999
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -9999
|
||||
MAX_LIMIT = 9999
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[AXIS_Z]
|
||||
HOME = 0.0
|
||||
MIN_LIMIT = -9999
|
||||
MAX_LIMIT = 9999
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.0
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -9999
|
||||
MAX_LIMIT = 9999
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = sim.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 0
|
||||
TOOL_CHANGE_QUILL_UP = 1
|
||||
30
configs/sim.axis/canterp_example.can
Executable file
30
configs/sim.axis/canterp_example.can
Executable file
@@ -0,0 +1,30 @@
|
||||
xx xxxxx COMMENT(this is a comment)
|
||||
xx xxxxx COMMENT(first two columns are ignored)
|
||||
|
||||
xx xxxxx COMMENT(see canterp.cc for possible commands)
|
||||
|
||||
00 N____ USE_LENGTH_UNITS(CANON_UNITS_MM)
|
||||
00 N____ SET_FEED_REFERENCE(CANON_XYZ)
|
||||
00 N____ MIST_OFF()
|
||||
00 N____ FLOOD_OFF()
|
||||
00 N____ SET_FEED_RATE(50.0)
|
||||
00 N____ SET_SPINDLE_SPEED(0, 3000)
|
||||
00 N____ START_SPINDLE_CLOCKWISE(0)
|
||||
00 N____ STRAIGHT_TRAVERSE( 5 5 5 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_TRAVERSE( 0 0 0 0 0 0 0 0 0)
|
||||
|
||||
00 N____ MIST_OFF()
|
||||
00 N____ FLOOD_OFF()
|
||||
00 N____ SET_FEED_RATE(50.0)
|
||||
00 N____ SET_SPINDLE_SPEED(0, 3000)
|
||||
00 N____ START_SPINDLE_CLOCKWISE(0)
|
||||
|
||||
00 N____ STRAIGHT_FEED(10 00 00 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_FEED(10 10 00 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_FEED(10 10 10 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_FEED(10 10 10 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_FEED(10 10 00 0 0 0 0 0 0)
|
||||
00 N____ STRAIGHT_FEED(10 00 00 0 0 0 0 0 0)
|
||||
|
||||
00 N____ COMMENT(lines below not working)
|
||||
00 N____ COMMENT(ARC_FEED(1.0704, 3.3450, 2.0000, 2.0000, 1, 1.6875)))
|
||||
7
configs/sim.axis/cooling.hal
Executable file
7
configs/sim.axis/cooling.hal
Executable file
@@ -0,0 +1,7 @@
|
||||
# Fake the existence of coolant options
|
||||
loadrt and2 count=3
|
||||
addf and2.0 servo-thread
|
||||
addf and2.1 servo-thread
|
||||
net flood iocontrol.0.coolant-flood => and2.0.in0
|
||||
net mist iocontrol.0.coolant-mist => and2.0.in1
|
||||
net lube iocontrol.0.lube => and2.1.in0
|
||||
136
configs/sim.axis/histogram_demo.ini
Executable file
136
configs/sim.axis/histogram_demo.ini
Executable file
@@ -0,0 +1,136 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
|
||||
MACHINE = ini_hal_demo
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
DISPLAY = axis
|
||||
CYCLE_TIME = 0.100
|
||||
HELP_FILE = doc/help.txt
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = ACTUAL
|
||||
MAX_FEED_OVERRIDE = 2.0
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
DEFAULT_LINEAR_VELOCITY = .25
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 1
|
||||
EDITOR = gedit
|
||||
# use tooltable columns for diam and z only:
|
||||
TOOL_EDITOR = tooledit diam z
|
||||
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
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
COMM_TIMEOUT = 1.0
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[HAL]
|
||||
HALUI = halui
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z
|
||||
#NO_FORCE_HOMING = 1
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_VELOCITY = 1.2345
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = sim.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 2
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 3
|
||||
|
||||
[AXIS_X]
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[AXIS_Y]
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[AXIS_Z]
|
||||
MIN_LIMIT = -800.0
|
||||
MAX_LIMIT = 100.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -800.0
|
||||
MAX_LIMIT = 100.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[APPLICATIONS]
|
||||
# s32 pin using default parameters:
|
||||
APP = hal-histogram -geometry +50+50\
|
||||
--show
|
||||
# float pin
|
||||
APP = hal-histogram -geometry +10+10\
|
||||
--show \
|
||||
--minvalue -1 \
|
||||
--binsize .1 \
|
||||
--nbins 60 \
|
||||
halui.axis.x.pos-commanded
|
||||
10
configs/sim.axis/histogram_demo.txt
Executable file
10
configs/sim.axis/histogram_demo.txt
Executable file
@@ -0,0 +1,10 @@
|
||||
hal-histogram demo
|
||||
|
||||
Axis gui that starts two hal-histogram applications for pins:
|
||||
motion-command-handler.time
|
||||
halui.axis.x.pos-commanded
|
||||
|
||||
More typically, the program hal-histogram would be run from the command line.
|
||||
|
||||
For usage:
|
||||
$ hal-histogram --help
|
||||
10
configs/sim.axis/histogram_demo_es.txt
Executable file
10
configs/sim.axis/histogram_demo_es.txt
Executable file
@@ -0,0 +1,10 @@
|
||||
demo hal-histogram demo
|
||||
|
||||
Gui Axis gui que lanza dos aplicaciones hal-histogram para los pines:
|
||||
motion-command-handler.time
|
||||
halui.axis.x.pos-commanded
|
||||
|
||||
Generalmente, el programa hal-histogram debe correr desde la linea de comandos.
|
||||
|
||||
Para uso, vea:
|
||||
$ hal-histogram --help
|
||||
113
configs/sim.axis/historical_lathe.ini
Executable file
113
configs/sim.axis/historical_lathe.ini
Executable file
@@ -0,0 +1,113 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = Historical-LATHE
|
||||
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
PYVCP = lathe.xml
|
||||
LATHE = 1
|
||||
#EDITOR = geany
|
||||
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
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
[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-lathe.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
COMM_TIMEOUT = 1.0
|
||||
BASE_PERIOD = 50000
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[HAL]
|
||||
HALFILE = core_sim.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALFILE = simulated_home.hal
|
||||
HALFILE = lathe.hal
|
||||
HALFILE = cooling.hal
|
||||
POSTGUI_HALFILE = lathe_postgui.hal
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Z
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.0
|
||||
MAX_LINEAR_VELOCITY = 3.333334
|
||||
DEFAULT_LINEAR_ACCELERATION = 20.0
|
||||
MAX_LINEAR_ACCELERATION = 20.0
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = lathe.tbl
|
||||
TOOL_CHANGE_POSITION = 2 0 1
|
||||
TOOL_CHANGE_WITH_SPINDLE_ON = 1
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins
|
||||
JOINTS = 3
|
||||
|
||||
[AXIS_X]
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
MAX_VELOCITY = 3.333334
|
||||
MAX_ACCELERATION = 20.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.000
|
||||
MAX_VELOCITY = 3.333334
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[AXIS_Z]
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
MAX_VELOCITY = 3.333334
|
||||
MAX_ACCELERATION = 20.0
|
||||
|
||||
[JOINT_1]
|
||||
# JOINT_1: not used, home immediately:
|
||||
HOME_SEARCH_VEL = 0
|
||||
HOME_LATCH_VEL = 0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.0
|
||||
MAX_VELOCITY = 3.333334
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
147
configs/sim.axis/ini_hal_demo.ini
Executable file
147
configs/sim.axis/ini_hal_demo.ini
Executable file
@@ -0,0 +1,147 @@
|
||||
# file modified from emc/configs/sim/axis.ini
|
||||
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
|
||||
MACHINE = ini_hal_demo
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
DISPLAY = axis
|
||||
CYCLE_TIME = 0.100
|
||||
HELP_FILE = doc/help.txt
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = ACTUAL
|
||||
MAX_FEED_OVERRIDE = 2.0
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
DEFAULT_LINEAR_VELOCITY = .25
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 1
|
||||
EDITOR = gedit
|
||||
# use tooltable columns for diam and z only:
|
||||
TOOL_EDITOR = tooledit diam z
|
||||
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
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
COMM_TIMEOUT = 1.0
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[HAL]
|
||||
HALUI = halui
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
POSTGUI_HALFILE = postgui_calib_helper.hal
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z
|
||||
#NO_FORCE_HOMING = 1
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_VELOCITY = 1.2
|
||||
MAX_LINEAR_VELOCITY = 1.2345
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = sim.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 2
|
||||
|
||||
[KINS]
|
||||
# kinstype= both used for testing joint/teleop modes
|
||||
KINEMATICS = trivkins coordinates=xyz kinstype=both
|
||||
JOINTS = 3
|
||||
|
||||
[AXIS_X]
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[AXIS_Y]
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -400.0
|
||||
MAX_LIMIT = 400.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 1
|
||||
|
||||
[AXIS_Z]
|
||||
MIN_LIMIT = -800.0
|
||||
MAX_LIMIT = 100.0
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 40
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -800.0
|
||||
MAX_LIMIT = 100.0
|
||||
HOME = 0.0
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
|
||||
[APPLICATIONS]
|
||||
DELAY= 5
|
||||
APP = sim_pin \
|
||||
ini.traj_arc_blend_enable \
|
||||
ini.traj_arc_blend_optimization_depth \
|
||||
ini.traj_default_velocity \
|
||||
ini.traj_default_acceleration \
|
||||
ini.traj_max_velocity \
|
||||
ini.traj_max_acceleration
|
||||
APP = sim_pin \
|
||||
ini.0.min_limit \
|
||||
ini.0.max_limit \
|
||||
ini.0.max_velocity \
|
||||
ini.0.max_acceleration \
|
||||
ini.x.min_limit \
|
||||
ini.x.max_limit \
|
||||
ini.x.max_velocity \
|
||||
ini.x.max_acceleration
|
||||
3
configs/sim.axis/ini_hal_demo.txt
Executable file
3
configs/sim.axis/ini_hal_demo.txt
Executable file
@@ -0,0 +1,3 @@
|
||||
ini_hal_demo
|
||||
|
||||
Axis gui that starts a sim_pin application to demonstrate how to alter several supported ini values using ini hal pins.
|
||||
3
configs/sim.axis/ini_hal_demo_es.txt
Executable file
3
configs/sim.axis/ini_hal_demo_es.txt
Executable file
@@ -0,0 +1,3 @@
|
||||
ini_hal_demo
|
||||
|
||||
Gui Axis que arranca una aplicacion sim_pin para demostrar como alterar valores ini soportados usando pines hal.
|
||||
97
configs/sim.axis/lathe.ini
Executable file
97
configs/sim.axis/lathe.ini
Executable file
@@ -0,0 +1,97 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = LinuxCNC-HAL-SIM-LATHE
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
PYVCP = lathe.xml
|
||||
LATHE = 1
|
||||
#BACK_TOOL_LATHE = 1 #uncomment for back tool lathe
|
||||
#EDITOR = geany
|
||||
CYCLE_TIME = 0.100
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = ACTUAL
|
||||
MAX_FEED_OVERRIDE = 1.2
|
||||
MAX_SPINDLE_OVERRIDE = 1.0
|
||||
PROGRAM_PREFIX = ../../nc_files/
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
[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-lathe.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
COMM_TIMEOUT = 1.0
|
||||
BASE_PERIOD = 50000
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[HAL]
|
||||
HALUI = halui
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
POSTGUI_HALFILE = lathe_postgui.hal
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Z
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 1.0
|
||||
MAX_LINEAR_VELOCITY = 3.333334
|
||||
DEFAULT_LINEAR_ACCELERATION = 20.0
|
||||
MAX_LINEAR_ACCELERATION = 20.0
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = lathe.tbl
|
||||
TOOL_CHANGE_POSITION = 2 0 1
|
||||
TOOL_CHANGE_WITH_SPINDLE_ON = 1
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = trivkins coordinates=xz
|
||||
JOINTS = 2
|
||||
|
||||
[AXIS_X]
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
MAX_VELOCITY = 3.333333
|
||||
MAX_ACCELERATION = 20.0
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 3.333333
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -10.0
|
||||
MAX_LIMIT = 10.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[AXIS_Z]
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
MAX_VELOCITY = 3.333333
|
||||
MAX_ACCELERATION = 20.0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
MAX_VELOCITY = 3.333333
|
||||
MAX_ACCELERATION = 20.0
|
||||
MIN_LIMIT = -2.0
|
||||
MAX_LIMIT = 4.0
|
||||
HOME_SEARCH_VEL = 5.0
|
||||
HOME_LATCH_VEL = 1.0
|
||||
HOME_SEQUENCE = 1
|
||||
10
configs/sim.axis/lathe.tbl
Executable file
10
configs/sim.axis/lathe.tbl
Executable file
@@ -0,0 +1,10 @@
|
||||
T1 P1 D0.100000 Z+0.100000 I+95.000000 J+155.000000 Q1 ;
|
||||
T2 P2 D0.100000 I+85.000000 J+25.000000 Q2 ;
|
||||
T3 P3 D0.100000 I+275.000000 J+335.000000 Q3 ;
|
||||
T4 P4 D0.100000 I+265.000000 J+205.000000 Q4 ;
|
||||
T5 P5 D0.100000 I+210.000000 J+150.000000 Q5 ;
|
||||
T6 P6 D0.100000 X+0.500000 Z+0.500000 I+120.000000 J+60.000000 Q6 ;
|
||||
T7 P7 D0.100000 I-30.000000 J+30.000000 Q7 ;
|
||||
T8 P8 D0.100000 I+240.000000 J+300.000000 Q8 ;
|
||||
T9 P9 D0.100000 Q9 ;
|
||||
T10 P10 D0. ; demo zero diameter
|
||||
16
configs/sim.axis/lathe.xml
Executable file
16
configs/sim.axis/lathe.xml
Executable file
@@ -0,0 +1,16 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<pyvcp>
|
||||
<vbox>
|
||||
<label>
|
||||
<text>"Spindle speed:"</text>
|
||||
</label>
|
||||
<bar>
|
||||
<halpin>"spindle-speed"</halpin>
|
||||
<max_>5000</max_>
|
||||
</bar>
|
||||
<hbox>
|
||||
<led halpin="spindle-at-speed" on_color="yellow" off_color="black"/>
|
||||
<label text="At Speed"/>
|
||||
</hbox>
|
||||
</vbox>
|
||||
</pyvcp>
|
||||
2
configs/sim.axis/lathe_postgui.hal
Executable file
2
configs/sim.axis/lathe_postgui.hal
Executable file
@@ -0,0 +1,2 @@
|
||||
net spindle-rpm-filtered => pyvcp.spindle-speed
|
||||
net spindle-at-speed => pyvcp.spindle-at-speed
|
||||
137
configs/sim.axis/ldelta.ini
Executable file
137
configs/sim.axis/ldelta.ini
Executable file
@@ -0,0 +1,137 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = Delta-robot-with-linear-joints
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
|
||||
MAX_LINEAR_VELOCITY = 100
|
||||
MAX_FEED_OVERRIDE = 1.2
|
||||
DEFAULT_LINEAR_VELOCITY = 100
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
#EDITOR = geany
|
||||
TOOL_EDITOR = tooledit
|
||||
|
||||
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil
|
||||
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = COMMANDED
|
||||
|
||||
[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
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[RS274NGC]
|
||||
PARAMETER_FILE = sim.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[HAL]
|
||||
HALFILE = sim_ldelta.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALUI = halui
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z A
|
||||
LINEAR_UNITS = mm
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 10
|
||||
MAX_LINEAR_VELOCITY = 10
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = lineardeltakins
|
||||
JOINTS = 4
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_3]
|
||||
TYPE = LINEAR
|
||||
HOME = 0
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 500.0
|
||||
MIN_LIMIT = -1e6
|
||||
MAX_LIMIT = 1e6
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -95
|
||||
MAX_LIMIT = 150
|
||||
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -95
|
||||
MAX_LIMIT = 95
|
||||
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -5
|
||||
MAX_LIMIT = 35
|
||||
|
||||
[AXIS_A]
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 1000
|
||||
MIN_LIMIT = -1e6
|
||||
MAX_LIMIT = 1e6
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.1
|
||||
TOOL_TABLE = sim.tbl
|
||||
184
configs/sim.axis/ldelta_demo.ini
Executable file
184
configs/sim.axis/ldelta_demo.ini
Executable file
@@ -0,0 +1,184 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = Delta-robot-with-linear-joints
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
|
||||
MAX_LINEAR_VELOCITY = 100
|
||||
MAX_FEED_OVERRIDE = 1.2
|
||||
DEFAULT_LINEAR_VELOCITY = 100
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
#EDITOR = geany
|
||||
TOOL_EDITOR = tooledit
|
||||
|
||||
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil
|
||||
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = COMMANDED
|
||||
|
||||
[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
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[RS274NGC]
|
||||
PARAMETER_FILE = sim.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[HAL]
|
||||
HALFILE = sim_ldelta.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALUI = halui
|
||||
|
||||
HALCMD = setp joint.0.jog-enable 1
|
||||
HALCMD = setp joint.1.jog-enable 1
|
||||
HALCMD = setp joint.2.jog-enable 1
|
||||
|
||||
HALCMD = setp axis.x.jog-enable 1
|
||||
HALCMD = setp axis.y.jog-enable 1
|
||||
HALCMD = setp axis.z.jog-enable 1
|
||||
|
||||
HALCMD = setp joint.0.jog-scale 10
|
||||
HALCMD = setp joint.1.jog-scale 10
|
||||
HALCMD = setp joint.2.jog-scale 10
|
||||
|
||||
HALCMD = setp axis.x.jog-scale 10
|
||||
HALCMD = setp axis.y.jog-scale 10
|
||||
HALCMD = setp axis.z.jog-scale 2
|
||||
|
||||
HALCMD = setp halui.joint.jog-speed 2000
|
||||
HALCMD = setp halui.axis.jog-speed 2000
|
||||
|
||||
[APPLICATIONS]
|
||||
|
||||
# tester for joints (FREE) jogging (012 wheel and halui)
|
||||
APP = sim_pin >/dev/null \
|
||||
halui.mode.joint/mode=Pulse \
|
||||
joint.0.jog-counts \
|
||||
joint.1.jog-counts \
|
||||
joint.2.jog-counts \
|
||||
halui.joint.0.plus/mode=Hold \
|
||||
halui.joint.0.minus/mode=Hold \
|
||||
halui.joint.1.plus/mode=Hold \
|
||||
halui.joint.1.minus/mode=Hold \
|
||||
halui.joint.2.plus/mode=Hold \
|
||||
halui.joint.2.minus/mode=Hold
|
||||
|
||||
# tester for axis (TELEOP) jogging (xyz wheel and halui)
|
||||
APP = sim_pin >/dev/null \
|
||||
halui.mode.teleop/mode=Pulse \
|
||||
axis.x.jog-counts \
|
||||
axis.y.jog-counts \
|
||||
axis.z.jog-counts \
|
||||
halui.axis.x.plus/mode=Hold \
|
||||
halui.axis.x.minus/mode=Hold \
|
||||
halui.axis.y.plus/mode=Hold \
|
||||
halui.axis.y.minus/mode=Hold \
|
||||
halui.axis.z.plus/mode=Hold \
|
||||
halui.axis.z.minus/mode=Hold
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z A
|
||||
LINEAR_UNITS = mm
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 10
|
||||
MAX_LINEAR_VELOCITY = 10
|
||||
|
||||
[KINS]
|
||||
JOINTS = 4
|
||||
KINEMATICS = lineardeltakins
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 270
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000.0
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 375
|
||||
HOME_OFFSET = 375
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_3]
|
||||
TYPE = LINEAR
|
||||
HOME = 0
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 500.0
|
||||
MIN_LIMIT = -1e6
|
||||
MAX_LIMIT = 1e6
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -95
|
||||
MAX_LIMIT = 150
|
||||
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -95
|
||||
MAX_LIMIT = 95
|
||||
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 300
|
||||
MAX_ACCELERATION = 5000
|
||||
MIN_LIMIT = -5
|
||||
MAX_LIMIT = 35
|
||||
|
||||
[AXIS_A]
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 1000
|
||||
MIN_LIMIT = -1e6
|
||||
MAX_LIMIT = 1e6
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.1
|
||||
TOOL_TABLE = sim.tbl
|
||||
10
configs/sim.axis/ldelta_demo.txt
Executable file
10
configs/sim.axis/ldelta_demo.txt
Executable file
@@ -0,0 +1,10 @@
|
||||
ldelta_demo
|
||||
|
||||
linear delta kins (Rostock)
|
||||
|
||||
Demo includes simple popups to simulate
|
||||
jogging using HAL pins:
|
||||
|
||||
Joints (FREE) jogging (012 wheel and halui)
|
||||
|
||||
Axis (TELEOP) jogging (xyz wheel and halui)
|
||||
10
configs/sim.axis/ldelta_demo_es.txt
Executable file
10
configs/sim.axis/ldelta_demo_es.txt
Executable file
@@ -0,0 +1,10 @@
|
||||
ldelta_demo
|
||||
|
||||
Cinematica delta lineal (Rostock)
|
||||
|
||||
La demo incluye popups simples para simular
|
||||
jogging usando pines HAL:
|
||||
|
||||
Jogging articular (FREE) (volante 012 y halui)
|
||||
|
||||
Jogging de Ejes (TELEOP) (volante xyz y halui)
|
||||
57
configs/sim.axis/minimal_xyz.ini
Executable file
57
configs/sim.axis/minimal_xyz.ini
Executable file
@@ -0,0 +1,57 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
MAX_LINEAR_VELOCITY = 1
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[RS274NGC]
|
||||
# NoneType object has no attribute 'rfind'
|
||||
PARAMETER_FILE = sim.var
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[HAL]
|
||||
HALFILE = LIB:basic_sim.tcl
|
||||
|
||||
# NOTE: Must have consistent values for
|
||||
# [TRAJ]COORDINATES = LETTERS
|
||||
# [KINS]JOINTS = Number_of_JOINTs
|
||||
# [KINS]KINEMAITICS = trivkins coordinates=LETTERS
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = XYZ
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
|
||||
[KINS]
|
||||
JOINTS = 3
|
||||
KINEMATICS = trivkins coordinates=XYZ
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = LINEAR
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = LINEAR
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = -20.0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME_SEQUENCE = 1
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
174
configs/sim.axis/minimal_xyz_cmds.hal
Executable file
174
configs/sim.axis/minimal_xyz_cmds.hal
Executable file
@@ -0,0 +1,174 @@
|
||||
# Mon Jul 08 16:50:37 CDT 2024
|
||||
#
|
||||
# This file: ./minimal_xyz_cmds.hal
|
||||
# Created by: /usr/share/linuxcnc/hallib/basic_sim.tcl
|
||||
# With options:
|
||||
# From inifile: /home/linuxcnc/linuxcnc/configs/sim.axis/minimal_xyz.ini
|
||||
# Halfiles: LIB:basic_sim.tcl
|
||||
#
|
||||
# This file contains the hal commands produced by basic_sim.tcl
|
||||
# (and any hal commands executed prior to its execution).
|
||||
# ------------------------------------------------------------------
|
||||
# To use ./minimal_xyz_cmds.hal in the original inifile (or a copy of it),
|
||||
# edit to change:
|
||||
# [HAL]
|
||||
# HALFILE = LIB:basic_sim.tcl parameters
|
||||
# to:
|
||||
# [HAL]
|
||||
# HALFILE = ./minimal_xyz_cmds.hal
|
||||
#
|
||||
# Notes:
|
||||
# 1) Inifile Variables substitutions specified in the inifile
|
||||
# and interpreted by halcmd are automatically substituted
|
||||
# in the created halfile (./minimal_xyz_cmds.hal).
|
||||
# 2) Input pins connected to a signal with no writer are
|
||||
# not included in the setp listings herein so must be added
|
||||
# manually
|
||||
#
|
||||
|
||||
# user space components
|
||||
loadusr -W hal_manualtoolchange
|
||||
|
||||
# components
|
||||
#preloaded module: loadrt tpmod
|
||||
#preloaded module: loadrt homemod
|
||||
loadrt trivkins coordinates=XYZ
|
||||
loadrt motmod base_period_nsec=0 servo_period_nsec=1000000 num_joints=3
|
||||
#loadrt __servo-thread (not loaded by loadrt, no args saved)
|
||||
loadrt pid names=J0_pid,J1_pid,J2_pid
|
||||
loadrt mux2 names=J0_mux,J1_mux,J2_mux
|
||||
loadrt ddt names=J0_vel,J0_accel,J1_vel,J1_accel,J2_vel,J2_accel
|
||||
loadrt hypot names=hyp_xy,hyp_xyz
|
||||
loadrt sim_home_switch names=J0_switch,J1_switch,J2_switch
|
||||
loadrt sim_spindle names=sim_spindle
|
||||
loadrt limit2 names=limit_speed
|
||||
loadrt lowpass names=spindle_mass
|
||||
loadrt near names=near_speed
|
||||
loadrt scale names=rpm_rps
|
||||
# pin aliases
|
||||
# param aliases
|
||||
# signals
|
||||
# nets
|
||||
net J0:acc J0_accel.out
|
||||
net J0:enable joint.0.amp-enable-out => J0_pid.enable
|
||||
net J0:homesw J0_switch.home-sw => joint.0.home-sw-in
|
||||
net J0:on-pos J0_pid.output => J0_mux.in1
|
||||
net J0:pos-cmd joint.0.motor-pos-cmd => J0_pid.command
|
||||
net J0:pos-fb J0_mux.out => J0_mux.in0 J0_switch.cur-pos J0_vel.in joint.0.motor-pos-fb
|
||||
net J0:vel J0_vel.out => J0_accel.in hyp_xy.in0 hyp_xyz.in0
|
||||
net J1:acc J1_accel.out
|
||||
net J1:enable joint.1.amp-enable-out => J1_pid.enable
|
||||
net J1:homesw J1_switch.home-sw => joint.1.home-sw-in
|
||||
net J1:on-pos J1_pid.output => J1_mux.in1
|
||||
net J1:pos-cmd joint.1.motor-pos-cmd => J1_pid.command
|
||||
net J1:pos-fb J1_mux.out => J1_mux.in0 J1_switch.cur-pos J1_vel.in joint.1.motor-pos-fb
|
||||
net J1:vel J1_vel.out => J1_accel.in hyp_xy.in1 hyp_xyz.in1
|
||||
net J2:acc J2_accel.out
|
||||
net J2:enable joint.2.amp-enable-out => J2_pid.enable
|
||||
net J2:homesw J2_switch.home-sw => joint.2.home-sw-in
|
||||
net J2:on-pos J2_pid.output => J2_mux.in1
|
||||
net J2:pos-cmd joint.2.motor-pos-cmd => J2_pid.command
|
||||
net J2:pos-fb J2_mux.out => J2_mux.in0 J2_switch.cur-pos J2_vel.in joint.2.motor-pos-fb
|
||||
net J2:vel J2_vel.out => J2_accel.in hyp_xyz.in2
|
||||
net estop:loop iocontrol.0.user-enable-out => iocontrol.0.emc-enable-in
|
||||
net sample:enable motion.motion-enabled => J0_mux.sel J1_mux.sel J2_mux.sel
|
||||
net spindle-at-speed near_speed.out => spindle.0.at-speed
|
||||
net spindle-index-enable sim_spindle.index-enable <=> spindle.0.index-enable
|
||||
net spindle-orient spindle.0.orient => spindle.0.is-oriented
|
||||
net spindle-pos sim_spindle.position-fb => spindle.0.revs
|
||||
net spindle-rpm-filtered spindle_mass.out => near_speed.in2 rpm_rps.in
|
||||
net spindle-rps-filtered rpm_rps.out => spindle.0.speed-in
|
||||
net spindle-speed-cmd spindle.0.speed-out => limit_speed.in near_speed.in1
|
||||
net spindle-speed-limited limit_speed.out => sim_spindle.velocity-cmd spindle_mass.in
|
||||
net tool:change iocontrol.0.tool-change => hal_manualtoolchange.change
|
||||
net tool:changed hal_manualtoolchange.changed => iocontrol.0.tool-changed
|
||||
net tool:prep-loop iocontrol.0.tool-prepare => iocontrol.0.tool-prepared
|
||||
net tool:prep-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
|
||||
net xy:vel hyp_xy.out
|
||||
net xyz:vel hyp_xyz.out
|
||||
# parameter values
|
||||
setp J0_accel.tmax 0
|
||||
setp J0_mux.tmax 0
|
||||
setp J0_pid.do-pid-calcs.tmax 0
|
||||
setp J0_switch.tmax 0
|
||||
setp J0_vel.tmax 0
|
||||
setp J1_accel.tmax 0
|
||||
setp J1_mux.tmax 0
|
||||
setp J1_pid.do-pid-calcs.tmax 0
|
||||
setp J1_switch.tmax 0
|
||||
setp J1_vel.tmax 0
|
||||
setp J2_accel.tmax 0
|
||||
setp J2_mux.tmax 0
|
||||
setp J2_pid.do-pid-calcs.tmax 0
|
||||
setp J2_switch.tmax 0
|
||||
setp J2_vel.tmax 0
|
||||
setp hyp_xy.tmax 0
|
||||
setp hyp_xyz.tmax 0
|
||||
setp limit_speed.tmax 0
|
||||
setp motion-command-handler.tmax 0
|
||||
setp motion-controller.tmax 0
|
||||
setp near_speed.difference 10
|
||||
setp near_speed.scale 1.1
|
||||
setp near_speed.tmax 0
|
||||
setp rpm_rps.tmax 0
|
||||
setp servo-thread.tmax 0
|
||||
setp sim_spindle.scale 0.01666667
|
||||
setp sim_spindle.tmax 0
|
||||
setp spindle_mass.gain 0.07
|
||||
setp spindle_mass.tmax 0
|
||||
# realtime thread/function links
|
||||
addf motion-command-handler servo-thread
|
||||
addf motion-controller servo-thread
|
||||
addf J0_pid.do-pid-calcs servo-thread
|
||||
addf J1_pid.do-pid-calcs servo-thread
|
||||
addf J2_pid.do-pid-calcs servo-thread
|
||||
addf J0_mux servo-thread
|
||||
addf J1_mux servo-thread
|
||||
addf J2_mux servo-thread
|
||||
addf J0_vel servo-thread
|
||||
addf J0_accel servo-thread
|
||||
addf J1_vel servo-thread
|
||||
addf J1_accel servo-thread
|
||||
addf J2_vel servo-thread
|
||||
addf J2_accel servo-thread
|
||||
addf hyp_xy servo-thread
|
||||
addf hyp_xyz servo-thread
|
||||
addf J0_switch servo-thread
|
||||
addf J1_switch servo-thread
|
||||
addf J2_switch servo-thread
|
||||
addf limit_speed servo-thread
|
||||
addf spindle_mass servo-thread
|
||||
addf rpm_rps servo-thread
|
||||
addf near_speed servo-thread
|
||||
addf sim_spindle servo-thread
|
||||
|
||||
# setp commands for unconnected input pins
|
||||
setp J0_pid.FF0 1.0
|
||||
setp J0_pid.Pgain 0
|
||||
setp J0_pid.Dgain 0
|
||||
setp J0_pid.Igain 0
|
||||
setp J0_pid.FF1 0
|
||||
setp J0_pid.FF2 0
|
||||
setp J1_pid.FF0 1.0
|
||||
setp J1_pid.Pgain 0
|
||||
setp J1_pid.Dgain 0
|
||||
setp J1_pid.Igain 0
|
||||
setp J1_pid.FF1 0
|
||||
setp J1_pid.FF2 0
|
||||
setp J2_pid.FF0 1.0
|
||||
setp J2_pid.Pgain 0
|
||||
setp J2_pid.Dgain 0
|
||||
setp J2_pid.Igain 0
|
||||
setp J2_pid.FF1 0
|
||||
setp J2_pid.FF2 0
|
||||
setp J0_switch.hysteresis 0.05
|
||||
setp J0_switch.home-pos 0.10
|
||||
setp J1_switch.hysteresis 0.05
|
||||
setp J1_switch.home-pos 0.10
|
||||
setp J2_switch.hysteresis 0.05
|
||||
setp J2_switch.home-pos 0.10
|
||||
setp sim_spindle.scale 0.01666667
|
||||
setp limit_speed.maxv 5000.0
|
||||
setp spindle_mass.gain .07
|
||||
setp near_speed.scale 1.1
|
||||
setp near_speed.difference 10
|
||||
16
configs/sim.axis/position.txt
Executable file
16
configs/sim.axis/position.txt
Executable file
@@ -0,0 +1,16 @@
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
0.00000000000000000
|
||||
14
configs/sim.axis/postgui_calib_helper.hal
Executable file
14
configs/sim.axis/postgui_calib_helper.hal
Executable file
@@ -0,0 +1,14 @@
|
||||
# postgui_calib_helper.hal
|
||||
# demonstration for calibration with ini hal pins
|
||||
|
||||
# ini hal pins will be recognized by the calibration program (emccalib.tcl)
|
||||
# only if the setp commands are in a postgui hal file, example:
|
||||
# [HAL]POSTGUI_HALFILE = postgui_calib_helper.hal
|
||||
|
||||
setp ini.0.max_velocity [JOINT_0]MAX_VELOCITY
|
||||
setp ini.1.max_velocity [JOINT_1]MAX_VELOCITY
|
||||
setp ini.2.max_velocity [JOINT_2]MAX_VELOCITY
|
||||
|
||||
setp ini.0.max_acceleration [JOINT_0]MAX_ACCELERATION
|
||||
setp ini.1.max_acceleration [JOINT_1]MAX_ACCELERATION
|
||||
setp ini.2.max_acceleration [JOINT_2]MAX_ACCELERATION
|
||||
121
configs/sim.axis/profile_axis.ini
Executable file
121
configs/sim.axis/profile_axis.ini
Executable file
@@ -0,0 +1,121 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = LinuxCNC-HAL-SIM-AXIS
|
||||
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = profile_axis
|
||||
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 = /home/linuxcnc/linuxcnc/nc_files
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
EDITOR = xterm -e vim
|
||||
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
|
||||
|
||||
[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
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = sim.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
|
||||
HOME_IS_SHARED = 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 = 0.0001
|
||||
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 = 0.0001
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
121
configs/sim.axis/random_tc.ini
Executable file
121
configs/sim.axis/random_tc.ini
Executable file
@@ -0,0 +1,121 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = LinuxCNC-HAL-SIM-AXIS
|
||||
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
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 = /home/linuxcnc/linuxcnc/nc_files
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
EDITOR = xterm -e vim
|
||||
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
|
||||
|
||||
[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
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.100
|
||||
TOOL_TABLE = simpockets.tbl
|
||||
TOOL_CHANGE_POSITION = 0 0 2
|
||||
RANDOM_TOOLCHANGER = 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
|
||||
HOME_IS_SHARED = 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 = -4.0
|
||||
MAX_LIMIT = 4.0
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = LINEAR
|
||||
HOME = 0.0
|
||||
MAX_VELOCITY = 4
|
||||
MAX_ACCELERATION = 100.0
|
||||
MIN_LIMIT = -4.0
|
||||
MAX_LIMIT = 4.0
|
||||
HOME_OFFSET = 1.0
|
||||
HOME_SEARCH_VEL = 20.0
|
||||
HOME_LATCH_VEL = 20.0
|
||||
HOME_SEQUENCE = 0
|
||||
HOME_IS_SHARED = 1
|
||||
174
configs/sim.axis/rdelta.ini
Executable file
174
configs/sim.axis/rdelta.ini
Executable file
@@ -0,0 +1,174 @@
|
||||
[EMC]
|
||||
VERSION = 1.1
|
||||
MACHINE = Delta-robot-with-rotary-joints
|
||||
DEBUG = 0
|
||||
|
||||
[DISPLAY]
|
||||
DISPLAY = axis
|
||||
|
||||
MAX_LINEAR_VELOCITY = 10
|
||||
MAX_FEED_OVERRIDE = 1.2
|
||||
DEFAULT_LINEAR_VELOCITY = 10
|
||||
PROGRAM_PREFIX = /home/linuxcnc/linuxcnc/nc_files
|
||||
|
||||
INTRO_GRAPHIC = linuxcnc.gif
|
||||
INTRO_TIME = 5
|
||||
|
||||
#EDITOR = geany
|
||||
TOOL_EDITOR = tooledit
|
||||
|
||||
INCREMENTS = 1 in, 0.1 in, 10 mil, 1 mil
|
||||
|
||||
POSITION_OFFSET = RELATIVE
|
||||
POSITION_FEEDBACK = COMMANDED
|
||||
|
||||
[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
|
||||
|
||||
[TASK]
|
||||
TASK = milltask
|
||||
CYCLE_TIME = 0.001
|
||||
|
||||
[RS274NGC]
|
||||
PARAMETER_FILE = sim.var
|
||||
|
||||
[EMCMOT]
|
||||
EMCMOT = motmod
|
||||
BASE_PERIOD = 0
|
||||
SERVO_PERIOD = 1000000
|
||||
|
||||
[HAL]
|
||||
HALFILE = sim_rdelta.hal
|
||||
HALFILE = axis_manualtoolchange.hal
|
||||
HALUI = halui
|
||||
|
||||
[TRAJ]
|
||||
COORDINATES = X Y Z A B C U V W
|
||||
LINEAR_UNITS = inch
|
||||
ANGULAR_UNITS = degree
|
||||
DEFAULT_LINEAR_VELOCITY = 10
|
||||
MAX_LINEAR_VELOCITY = 10
|
||||
|
||||
[KINS]
|
||||
KINEMATICS = rotarydeltakins
|
||||
JOINTS = 9
|
||||
|
||||
[JOINT_0]
|
||||
TYPE = ANGULAR
|
||||
HOME = 1
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 50.0
|
||||
MIN_LIMIT = -45.0
|
||||
MAX_LIMIT = 90.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_1]
|
||||
TYPE = ANGULAR
|
||||
HOME = 1
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 50.0
|
||||
MIN_LIMIT = -45.0
|
||||
MAX_LIMIT = 90.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_2]
|
||||
TYPE = ANGULAR
|
||||
HOME = 1
|
||||
MAX_VELOCITY = 100
|
||||
MAX_ACCELERATION = 50.0
|
||||
MIN_LIMIT = -45.0
|
||||
MAX_LIMIT = 90.0
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_3]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_4]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_5]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_6]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_7]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[JOINT_8]
|
||||
HOME_SEQUENCE = 0
|
||||
|
||||
[AXIS_X]
|
||||
MAX_VELOCITY = 10
|
||||
MAX_ACCELERATION = 100
|
||||
MIN_LIMIT = -4
|
||||
MAX_LIMIT = 4
|
||||
|
||||
[AXIS_Y]
|
||||
MAX_VELOCITY = 11
|
||||
MAX_ACCELERATION = 110
|
||||
MIN_LIMIT = -4
|
||||
MAX_LIMIT = 4
|
||||
|
||||
[AXIS_Z]
|
||||
MAX_VELOCITY = 12
|
||||
MAX_ACCELERATION = 120
|
||||
MIN_LIMIT = -18
|
||||
MAX_LIMIT = -10
|
||||
|
||||
[AXIS_A]
|
||||
MAX_VELOCITY = 103
|
||||
MAX_ACCELERATION = 1030
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 90
|
||||
|
||||
[AXIS_B]
|
||||
MAX_VELOCITY = 104
|
||||
MAX_ACCELERATION = 1040
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 90
|
||||
|
||||
[AXIS_C]
|
||||
MAX_VELOCITY = 105
|
||||
MAX_ACCELERATION = 1050
|
||||
MIN_LIMIT = 0
|
||||
MAX_LIMIT = 90
|
||||
|
||||
[AXIS_U]
|
||||
MAX_VELOCITY = 16
|
||||
MAX_ACCELERATION = 160
|
||||
MIN_LIMIT = -4
|
||||
MAX_LIMIT = 4
|
||||
|
||||
[AXIS_V]
|
||||
MAX_VELOCITY = 17
|
||||
MAX_ACCELERATION = 170
|
||||
MIN_LIMIT = -4
|
||||
MAX_LIMIT = 4
|
||||
|
||||
[AXIS_W]
|
||||
MAX_VELOCITY = 18
|
||||
MAX_ACCELERATION = 180
|
||||
MIN_LIMIT = -4
|
||||
MAX_LIMIT = 4
|
||||
|
||||
|
||||
[EMCIO]
|
||||
EMCIO = io
|
||||
CYCLE_TIME = 0.1
|
||||
TOOL_TABLE = sim.tbl
|
||||
5
configs/sim.axis/sim.tbl
Executable file
5
configs/sim.axis/sim.tbl
Executable file
@@ -0,0 +1,5 @@
|
||||
T1 P1 D+0.500000 ;1/8 end mill
|
||||
T2 P2 D+0.062500 Z+0.100000 ;1/16 end mill
|
||||
T3 P3 D+0.201000 Z+1.273000 ;#7 tap drill
|
||||
T99999 P99999 Z+0.100000 ;big tool number
|
||||
T4 P4 D+0.005000 ;Added 20131029
|
||||
119
configs/sim.axis/sim.var
Executable file
119
configs/sim.axis/sim.var
Executable file
@@ -0,0 +1,119 @@
|
||||
5161 0.000000
|
||||
5162 0.000000
|
||||
5163 0.000000
|
||||
5164 0.000000
|
||||
5165 0.000000
|
||||
5166 0.000000
|
||||
5167 0.000000
|
||||
5168 0.000000
|
||||
5169 0.000000
|
||||
5181 0.000000
|
||||
5182 0.000000
|
||||
5183 0.000000
|
||||
5184 0.000000
|
||||
5185 0.000000
|
||||
5186 0.000000
|
||||
5187 0.000000
|
||||
5188 0.000000
|
||||
5189 0.000000
|
||||
5210 0.000000
|
||||
5211 0.000000
|
||||
5212 0.000000
|
||||
5213 0.000000
|
||||
5214 0.000000
|
||||
5215 0.000000
|
||||
5216 0.000000
|
||||
5217 0.000000
|
||||
5218 0.000000
|
||||
5219 0.000000
|
||||
5220 1.000000
|
||||
5221 0.000000
|
||||
5222 0.000000
|
||||
5223 0.000000
|
||||
5224 0.000000
|
||||
5225 0.000000
|
||||
5226 0.000000
|
||||
5227 0.000000
|
||||
5228 0.000000
|
||||
5229 0.000000
|
||||
5230 0.000000
|
||||
5241 0.000000
|
||||
5242 0.000000
|
||||
5243 0.000000
|
||||
5244 0.000000
|
||||
5245 0.000000
|
||||
5246 0.000000
|
||||
5247 0.000000
|
||||
5248 0.000000
|
||||
5249 0.000000
|
||||
5250 0.000000
|
||||
5261 0.000000
|
||||
5262 0.000000
|
||||
5263 0.000000
|
||||
5264 0.000000
|
||||
5265 0.000000
|
||||
5266 0.000000
|
||||
5267 0.000000
|
||||
5268 0.000000
|
||||
5269 0.000000
|
||||
5270 0.000000
|
||||
5281 0.000000
|
||||
5282 0.000000
|
||||
5283 0.000000
|
||||
5284 0.000000
|
||||
5285 0.000000
|
||||
5286 0.000000
|
||||
5287 0.000000
|
||||
5288 0.000000
|
||||
5289 0.000000
|
||||
5290 0.000000
|
||||
5301 0.000000
|
||||
5302 0.000000
|
||||
5303 0.000000
|
||||
5304 0.000000
|
||||
5305 0.000000
|
||||
5306 0.000000
|
||||
5307 0.000000
|
||||
5308 0.000000
|
||||
5309 0.000000
|
||||
5310 0.000000
|
||||
5321 0.000000
|
||||
5322 0.000000
|
||||
5323 0.000000
|
||||
5324 0.000000
|
||||
5325 0.000000
|
||||
5326 0.000000
|
||||
5327 0.000000
|
||||
5328 0.000000
|
||||
5329 0.000000
|
||||
5330 0.000000
|
||||
5341 0.000000
|
||||
5342 0.000000
|
||||
5343 0.000000
|
||||
5344 0.000000
|
||||
5345 0.000000
|
||||
5346 0.000000
|
||||
5347 0.000000
|
||||
5348 0.000000
|
||||
5349 0.000000
|
||||
5350 0.000000
|
||||
5361 0.000000
|
||||
5362 0.000000
|
||||
5363 0.000000
|
||||
5364 0.000000
|
||||
5365 0.000000
|
||||
5366 0.000000
|
||||
5367 0.000000
|
||||
5368 0.000000
|
||||
5369 0.000000
|
||||
5370 0.000000
|
||||
5381 0.000000
|
||||
5382 0.000000
|
||||
5383 0.000000
|
||||
5384 0.000000
|
||||
5385 0.000000
|
||||
5386 0.000000
|
||||
5387 0.000000
|
||||
5388 0.000000
|
||||
5389 0.000000
|
||||
5390 0.000000
|
||||
24
configs/sim.axis/sim_mm.tbl
Executable file
24
configs/sim.axis/sim_mm.tbl
Executable file
@@ -0,0 +1,24 @@
|
||||
T1 P1 Z0.511 D3 ;3mm end mill
|
||||
T2 P4 Z0.1 D1.5 ;1.5mm end mill
|
||||
T3 P3 Z1.273 D5 ;5mm tap drill
|
||||
T4 P2 Z10 D16 ;16 mm schaftfräser
|
||||
T5 P5 Z25 D25 ;25'er fräser
|
||||
T6 P6 Z6 D6 ;tool 6
|
||||
T7 P7 Z7 D7 ;7
|
||||
T8 P8 Z8 D8 ;8
|
||||
T9 P9 Z9 D9 ;9
|
||||
T10 P10 Z10 D10 ;10
|
||||
T11 P11 Z11 D11 ;11
|
||||
T12 P12 Z12 D12 ;12
|
||||
T13 P13 Z13 D13 ;13
|
||||
T14 P14 Z14 D14 ;14
|
||||
T15 P15 Z15 D15 ;15
|
||||
T16 P16 Z16 D16 ;16
|
||||
T17 P17 Z17 D17 ;17
|
||||
T18 P18 Z18 D18 ;18
|
||||
T19 P19 Z19 D19 ;19
|
||||
T20 P20 Z20 D20 ;20
|
||||
T21 P21 Z21 D21 ;21
|
||||
T22 P22 Z22 D22 ;22
|
||||
T23 P23 Z23 D23 ;23
|
||||
T24 P24 Z24 D24 ;24
|
||||
16
configs/sim.axis/simpockets.tbl
Executable file
16
configs/sim.axis/simpockets.tbl
Executable file
@@ -0,0 +1,16 @@
|
||||
T0 P0 ;no tool
|
||||
T10 P1 Z-3.406343 ;other big jacobs chuck
|
||||
T16 P3 ;little jacobs chuck
|
||||
T12 P4 Z-4.596806 ;1/2 2fl long em
|
||||
T6 P5 Z-0.950266 ;big jacobs chuck
|
||||
T3 P6 D2.250000 Z-6.595331 ;2-1/4 face mill
|
||||
T1 P7 D0.750000 Z-5.319396 ;3/4 roughing
|
||||
T7 P8 Z-2.979905 ;big albrecht drill chuck .25 drill
|
||||
T11 P9 D0.125000 Z-6.307857 ;1/8 2fl end mill
|
||||
T15 P10 Z-3.730620 ;little albrecht chuck spot drill
|
||||
T2 P11 D0.750000 Z-6.366394 ;3/4 2 flute
|
||||
T14 P12 Z-5.305736 ;
|
||||
T8 P13 Z-7.213145 ;V engraving tool
|
||||
T9 P14 Z-6.163994 ;90 deg 3/8 mill-drill
|
||||
T5 P15 Z-2.825524 ;long ER40 collet chuck
|
||||
T4 P16 D0.375000 Z-5.307185 ;3/8 4fl carbide
|
||||
Reference in New Issue
Block a user