# NOTES:
#  1) [JOINT_4]HOME is a small value to avoid a singularity detected by pumakins
#  2) No [JOINT_N] or [AXIS_L] MIN_LIMIT,MAX_LIMIT items are used so that
#     big system defaults apply and allow operation for many conditions that
#     may not be representative of real hardware
#  3) ini vel/accel settings are for convenience and not realistic
#  4) To offset the initial homed position (0,0,0,0,0,0) for the coordinate
#     coordinate system (p0), use coordinate setting commands:
#     g10l2p0 x   450
#     g10l2p0 y   100
#     g10l2p0 z  -495
#     g10l2p0 a   180
#     g10l2p0 b     0
#     g10l2p0 c     0

[JOINT_0]
TYPE = ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0
[JOINT_1]
TYPE = ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0
[JOINT_2]
TYPE = ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0
[JOINT_3]
TYPE= ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0
[JOINT_4]
TYPE = ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0
[JOINT_5]
TYPE = ANGULAR
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 2000.0
HOME_SEQUENCE = 0

[AXIS_X]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_Y]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_Z]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_A]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_B]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_C]
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0

[DISPLAY]
OPEN_FILE = ./puma_cube.ngc
#alternate: OPEN_FILE = ./puma_seam_weld.ngc
DISPLAY = axis
CYCLE_TIME = 0.200
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 2.0
PROGRAM_PREFIX = ../../nc_files
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 1
PYVCP = puma.xml

[EMC]
VERSION = 1.1
MACHINE = puma_cube.ini (pumakins)

[RS274NGC]
    USER_M_PATH = ./mcodes
SUBROUTINE_PATH = ./remap_subs
   HAL_PIN_VARS = 1
          REMAP = M428  modalgroup=10  ngc=428remap
          REMAP = M429  modalgroup=10  ngc=429remap
          REMAP = M430  modalgroup=10  ngc=430remap
PARAMETER_FILE = puma.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
SERVO_PERIOD = 1000000

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[HAL]
HALUI   = halui
HALFILE = LIB:basic_sim.tcl
HALFILE = puma_dh.hal
HALCMD  = loadusr -W pumagui
HALCMD  = net :kinstype-select <= motion.analog-out-03 => motion.switchkins-type
POSTGUI_HALFILE = puma_postgui.hal

[HALUI]
# MDI-COMMANDS 00,01,02 (remapped) do not alter limits when switching:
# M428:pumakins      (kinstype==0 startupDEFAULT)
# M429:identity kins (kinstype==1)
# M430:userk kins    (kinstype==2)
MDI_COMMAND = M428
MDI_COMMAND = M429
MDI_COMMAND = M430
# MDI-COMMANDS 03,04,05 ALTER limits when switching
MDI_COMMAND = M128
MDI_COMMAND = M129
MDI_COMMAND = M130


[TRAJ]
COORDINATES = X Y Z A B C
LINEAR_UNITS = mm
ANGULAR_UNITS = deg
DEFAULT_LINEAR_VELOCITY = 30.0
MAX_LINEAR_VELOCITY = 1000.0
MAX_ANGULAR_VELOCITY = 10
DEFAULT_LINEAR_ACCELERATION = 100.0
MAX_LINEAR_ACCELERATION = 2000.0

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = puma.tbl

[KINS]
KINEMATICS = pumakins
JOINTS = 6
