[KINS] JOINTS = 4 KINEMATICS = trivkins coordinates=XYZY kinstype=BOTH # Notes: # KINEMATICS coordinates=value MUST agree with [TRAJ]COORDINATES # # X: JOINT_0 # Y: JOINT_1 and JOINT_3 # Z: JOINT_2 # # kinstype=BOTH specifies non-identity kinematics # # HOME ALL sequence: # HOME_SEQUENCE 0 (first) JOINT_0 (coordinate X) # HOME_SEQUENCE -1 (second) JOINT_1 and JOINT_3 (coordinate Y) # HOME_SEQUENCE 2 (third) JOINT_2 (coordinate Z) # The negative (-1) sequence indicates synchronization of # the final move for all joints in the sequence [EMC] VERSION = 1.1 MACHINE = LinuxCNC-GANTRY-SIM-qtvcp # Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others DEBUG = 0 [DISPLAY] DISPLAY = qtvcp -d qtaxis PREFERENCE_FILE_PATH = WORKINGFOLDER/qtaxis_gantry.pref CYCLE_TIME = 0.100 MAX_FEED_OVERRIDE = 1.2 PROGRAM_PREFIX = ../../nc_files/ INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 INCREMENTS = 0.100 in, 0.010 in, 0.001 in, 0.0001 in GEOMETRY = XYZ [FILTER] PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image PROGRAM_EXTENSION = .dxf 3D Polygon Model PROGRAM_EXTENSION = .py Python Script png = image-to-gcode.py gif = image-to-gcode.py jpg = image-to-gcode.py dxf = toolpaths.py 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 = gantrysim.hal HALFILE = sim_spindle_encoder.hal HALFILE = simulated-gantry-home.hal [TRAJ] # These two variables are a bit weird for gantry machines. # The gantry machine that this sim config describes has only three axes (X, # Y, and Z), but it uses two joints to implement the Y axis. # The [TRAJ]COORDINATES variable only lists the axis names # that are accepted in incoming G-code, and duplicate names here have no # effect. COORDINATES = XYZY LINEAR_UNITS = inch ANGULAR_UNITS = degree DEFAULT_LINEAR_VELOCITY = 1.0 MAX_LINEAR_VELOCITY = 58 MAX_LINEAR_VELOCITY = 58 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = sim.tbl [AXIS_X] MIN_LIMIT = -0.01 MAX_LIMIT = 50.0 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 [JOINT_0] TYPE = LINEAR MIN_LIMIT = -0.01 MAX_LIMIT = 50.0 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 HOME = 0 HOME_SEQUENCE = 0 HOME_SEARCH_VEL = -10 HOME_LATCH_VEL = 5 HOME_OFFSET = -0.1 HOME_IS_SHARED = 1 [AXIS_Y] MIN_LIMIT = -0.01 MAX_LIMIT = 50.0 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 [JOINT_1] TYPE = LINEAR MIN_LIMIT = -0.01 MAX_LIMIT = 50.0 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 HOME = 0.0 HOME_SEQUENCE = -1 HOME_SEARCH_VEL = -0.1 HOME_LATCH_VEL = 0.05 HOME_OFFSET = -0.1 HOME_IS_SHARED = 0 [AXIS_Z] MIN_LIMIT = -50.0 MAX_LIMIT = 0.01 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 [JOINT_2] TYPE = LINEAR MIN_LIMIT = -50.0 MAX_LIMIT = 0.01 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 HOME = 0.0 HOME_SEQUENCE = 2 HOME_SEARCH_VEL = 0.1 HOME_LATCH_VEL = -0.05 HOME_OFFSET = 0.1 HOME_IS_SHARED = 1 [JOINT_3] TYPE = LINEAR MIN_LIMIT = -0.01 MAX_LIMIT = 50 MAX_VELOCITY = 39 MAX_ACCELERATION = 120.0 HOME = 0.0 HOME_SEQUENCE = -1 HOME_SEARCH_VEL = -0.1 HOME_LATCH_VEL = 0.05 HOME_OFFSET = -0.1 HOME_IS_SHARED = 0