[EMC] VERSION = 1.1 MACHINE = Sim-5Axis Bridge Mill (xyzbcw) DEBUG = 0 [DISPLAY] GEOMETRY = XYZCBW OPEN_FILE = ./5axisgui.ngc INCREMENTS = 10 mm, 1 mm, .1 mm JOG_AXES = XYZC GEOMETRY = XYZCBW 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 = 5 TOOL_EDITOR = tooledit z diam #EDITOR = geany PYVCP = 5axis.xml [RS274NGC] 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 = 5axis.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 = 5axisgui.hal HALCMD = net :kinstype-select <= motion.analog-out-03 => motion.switchkins-type POSTGUI_HALFILE = 5axis_postgui.hal [HALUI] # M428:bridgemill (kinstype==0 startupDEFAULT) # M429:identity kins (kinstype==1) # M430:userk kins (kinstype==2) MDI_COMMAND = M428 MDI_COMMAND = M429 MDI_COMMAND = M430 [TRAJ] COORDINATES = XYZBCWY LINEAR_UNITS = mm ANGULAR_UNITS = degree MAX_ANGULAR_VELOCITY = 360.0 DEFAULT_LINEAR_VELOCITY = 200.0 MAX_LINEAR_VELOCITY = 346.0 MAX_LINEAR_ACCELERATION = 800.0 DEFAULT_LINEAR_ACCELERATION = 800.0 MAX_ANGULAR_VELOCITY = 360 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = 5axis.tbl [KINS] # Note: Supported coordinates are XYZBCW but the W coordinate # motion is incorporated into the X,Y,Z axes. # Use of the W coordinate requires a joint (5) # in order to allow display of W values. # Use immediate homing for this joint (JOINT_5) # Note: 5axiskins is misnomer # (xyzbcw uses 6 joints) # (xyzbcwy uses 7 joints) # xyzbcw # type0:5axiskins, type1:identity, type2:userk # x:joint0,y:joint1,z:joint2,b:joint3,c:joint4,w:joint5 # JOINTS = 6 # KINEMATICS = 5axiskins # illustraed below is complex example with duplicate # coord letters for y, 7 joints total): # type0:5axiskins, type1:identity, type2:userk # x:joint0 # y:joint1 AND joint6 # z:joint2 # b:joint3 # c:joint4 # w:joint5 JOINTS = 7 KINEMATICS = 5axiskins coordinates=xyzbcwy [AXIS_X] MIN_LIMIT = -500 MAX_LIMIT = 500 MAX_VELOCITY = 200 MAX_ACCELERATION = 800 [AXIS_Y] MIN_LIMIT = -500 MAX_LIMIT = 500 MAX_VELOCITY = 200 MAX_ACCELERATION = 800 [AXIS_Z] MIN_LIMIT = -500 MAX_LIMIT = 100 MAX_VELOCITY = 200 MAX_ACCELERATION = 800 # B is one-to-one to JOINT_3 [AXIS_B] MIN_LIMIT = -120 MAX_LIMIT = 120 MAX_VELOCITY = 60 MAX_ACCELERATION = 200 # C is one-to-one to JOINT_4 [AXIS_C] MIN_LIMIT = -36000 MAX_LIMIT = 36000 MAX_VELOCITY = 60 MAX_ACCELERATION = 200 # W motion is incorporated in Z motion # but a joint (JOINT_5) must be configured # to support display of W values [AXIS_W] MIN_LIMIT = -100 MAX_LIMIT = 500 MAX_VELOCITY = 200 MAX_ACCELERATION = 800 [JOINT_0] TYPE = LINEAR MAX_VELOCITY = 200 MAX_ACCELERATION = 800 MIN_LIMIT = -500 MAX_LIMIT = 500 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = 0 [JOINT_1] TYPE = LINEAR MAX_VELOCITY = 200 MAX_ACCELERATION = 800 MIN_LIMIT = -500 MAX_LIMIT = 500 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = -1 # joints 1 and 6 used for y [JOINT_6] TYPE = LINEAR MAX_VELOCITY = 200 MAX_ACCELERATION = 800 MIN_LIMIT = -500 MAX_LIMIT = 500 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = -1 [JOINT_2] TYPE = LINEAR MAX_VELOCITY = 200 MAX_ACCELERATION = 800 MIN_LIMIT = -500 MAX_LIMIT = 100 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = 0 [JOINT_3] TYPE = ANGULAR MAX_VELOCITY = 60 MAX_ACCELERATION = 200 MIN_LIMIT = -120 MAX_LIMIT = 120 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = 0 [JOINT_4] TYPE = ANGULAR MAX_VELOCITY = 60 MAX_ACCELERATION = 200 MIN_LIMIT = -36000 MAX_LIMIT = 36000 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = 0 # immediate homing for JOINT_5 (w coordinate) [JOINT_5] TYPE = LINEAR MIN_LIMIT = -100 MAX_LIMIT = 500 MAX_VELOCITY = 200 MAX_ACCELERATION = 800 HOME_SEARCH_VEL = 0 HOME_SEQUENCE = 0