#RMC Rev7.3 - Add Probe Basic GUI connections: axis load bars, side-panel indicator lights, edit air-safety removed blink #RMC Rev7.2 - Edited for new version of probe basic # - carousel_eth edit - comp now forces a slow move to pocket #1 at startup and if LCNC machine-on is deasserted. # - edited m10, m11, m12 ATC subroutines for carousel-homed check # - edited m26 to keep carousel retract cyl energized until extend is commanded # - edited xml file: removed home-offset pin. Added digital-out enable pins (need both enable and on/off to trigger) # - INI: restored automatic MDI call for m13 (home carousel) triggered at axes is-homed # - INI: set joint homing to home-in-place values w/ no offset #RMC Rev7.1 - Jogged all axes to hard stops and set home using drive software. Adjusted travel limits based on hard stops - not using limit switches. #RMC Rev7 - Replace carousel.comp/pid.atc/mux2.atc chain with carousel_eth.comp #RMC Rev6 - Switch to Stepperonline A6 ethercat servos (X/Y/Z/A/ATC) with 17-bit absolute encoders #Retained Mesa 7i76E for spindle control and IO #ATC control attempt 1: Add PID loop between carousel and cia402 connection to drive #RMC Rev5.1.8 - Switch to LCNC Master, switch to PB Develop version; update INI for user_buttons #LOWERED RAPIDS ALL AXES DUE TO COLD TEMPS [EMC] MACHINE = PBATC REV6.0 #DEBUG = 0x7FFFFF DEBUG = 0x10 VERSION = 1.1 [DISPLAY] DISPLAY = probe_basic #DISPLAY = axis OPEN_FILE = ~/linuxcnc/nc_files/pb_examples/blank.ngc CONFIRM_EXIT = False CONFIG_FILE = custom_config.yml FULLSCREEN = true MAXIMIZE = false POSITION = 0x0 LOG_FILE = sim.log LOG_LEVEL = DEBUG PREFERENCE_FILE = sim.pref PROGRAM_PREFIX = ~/linuxcnc/nc_files POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 1.500000 MIN_FEED_OVERRIDE = 0.000000 MAX_SPINDLE_OVERRIDE = 1.100000 MIN_SPINDLE_OVERRIDE = 0.500000 DEFAULT_SPINDLE_SPEED = 500 INTRO_GRAPHIC = pbsplash.png INTRO_TIME = 2 INCREMENTS = JOG .01in .001in .0001in DEFAULT_LINEAR_VELOCITY = 0.250000 MAX_LINEAR_VELOCITY = 1.666 MIN_LINEAR_VELOCITY = 0.010 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 150.000000 MIN_ANGULAR_VELOCITY = 1.000 DEFAULT_JOG_ANGULAR_VELOCITY = 10 MAX_JOG_ANGULAR_VELOCITY = 50 GEOMETRY = xyza ### PROBE BASIC ITEMS ### # REQUIRED Setting for Probe Basic, Options: xyz, xyza, xyzab, xyzac, xyzbc, user # ATC tab display options, 0 = no atc tab displayed, 1 = Carousel atc display, 2 = rack atc display THEME_COLOR = dark ATC_TAB_DISPLAY = 1 USER_BUTTONS_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/probe_basic/user_buttons/ USER_TABS_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/probe_basic/user_tabs/ USER_ATC_BUTTONS_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/probe_basic/user_atc_buttons/ USER_DROS_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/probe_basic/user_dro_display/ DRO_DISPLAY = user KEYBOARD_JOG = false [PYTHON] PATH_PREPEND = python TOPLEVEL = /home/mill/linuxcnc/configs/MILL_ETH_1.4/python/toplevel.py PATH_APPEND = /home/mill/linuxcnc/configs/MILL_ETH_1.4/python/ LOG_LEVEL = 1000 [FILTER] PROGRAM_EXTENSION = .nc,.txt,.tap Other NC files PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image png = image-to-gcode gif = image-to-gcode jpg = image-to-gcode py = python [TASK] TASK = milltask CYCLE_TIME = 0.010 [RS274NGC] INI_VARS=1 ORIENT_OFFSET=-116.0 PROGRAM_PREFIX = ~/linuxcnc/nc_files PARAMETER_FILE = linuxcnc.var OWORD_NARGS = 1 NO_DOWNCASE_OWORD = 1 SUBROUTINE_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/subroutines/ USER_M_PATH = /home/mill/linuxcnc/configs/MILL_ETH_1.4/m_codes/ REMAP=M6 modalgroup=6 prolog=change_prolog ngc=toolchange epilog=change_epilog REMAP=M10 modalgroup=6 argspec=p ngc=m10 REMAP=M11 modalgroup=6 argspec=p ngc=m11 REMAP=M12 modalgroup=6 argspec=p ngc=m12 REMAP=M13 modalgroup=6 ngc=m13 REMAP=M21 modalgroup=6 ngc=m21 REMAP=M22 modalgroup=6 ngc=m22 REMAP=M23 modalgroup=6 ngc=m23 REMAP=M24 modalgroup=6 ngc=m24 REMAP=M25 modalgroup=6 ngc=m25 REMAP=M26 modalgroup=6 ngc=m26 REMAP=M27 modalgroup=6 ngc=m27 REMAP=M28 modalgroup=6 ngc=m28 REMAP=M29 modalgroup=6 ngc=m29 REMAP=M31 modalgroup=6 ngc=m31 REMAP=M32 modalgroup=6 ngc=m32 REMAP=M33 modalgroup=6 ngc=m33 REMAP=M34 modalgroup=6 ngc=m34 REMAP=M35 modalgroup=6 ngc=m35 REMAP=M36 modalgroup=6 ngc=m36 REMAP=M37 modalgroup=6 ngc=m37 ON_ABORT_COMMAND= O call RS274NGC_STARTUP_CODE = F10 S100 G17 G20 G40 G49 G54 G64 P0.001 G80 G90 G91.1 G92.1 G94 G97 G98 ;F10 SET FEED TO 10IPM ;S0 SET SPINDLE TO 0RPM ;G17 SET PLANE TO XY ;G20 SET UNITS TO INCHES ;G40 CANCEL CUTER COMP ;G49 CANCEL TOOL LENGTH ;G54 SET WCS TO G54 ;G64 P0.001 SET PATH BLENDING WITH 0.001" TOLERANCE ;G80 CANCEL CANNED CYCLES ;G90 SET ABSOLUTE DISTANCE MODE ;G91.1 SET ARC DISTANCE MODE TO INCREMENTAL ;G92.1 CANCEL G92 OFFSETS & CLEARS PARAMETERS 5211-5219 ;G94 SET IPM MODE ;G97 SET SPINDLE TO RPM MODE ;G98 SET CANCED CYCLE INITIAL PLANE MODE [EMCMOT] EMCMOT = motmod COMM_TIMEOUT = 1.0 COMM_WAIT = 0.010 SERVO_PERIOD = 1000000 [HMOT] CARD0=hm2_7i76e.0 [HAL] HALUI = halui HALFILE = hallib/01_MAIN.hal HALFILE = hallib/02_atc.hal HALFILE = hallib/03_io.hal HALFILE = hallib/04_spindle.hal HALFILE = hallib/05_ladder.hal HALFILE = hallib/06_mpg.hal POSTGUI_HALFILE = hallib/07_postgui.hal #SHUTDOWN = shutdown.hal TWOPASS = on [HALUI] MDI_COMMAND = M13 MDI_COMMAND = G53 G0 Z0 X8 Y8.75 MDI_COMMAND = G53 G0 Z0 X8 Y1 #RMC [APPLICATIONS] APP = halshow /home/mill/linuxcnc/configs/MILL_ETH_1.4/Halshow/ETH_IO.halshow #COMMENT OUT AFTER TESTING [KINS] JOINTS = 4 KINEMATICS = trivkins coordinates=XYZA [TRAJ] COORDINATES = XYZA MAX_ANGULAR_VELOCITY = 400 DEFAULT_ANGULAR_VELOCITY = 20 LINEAR_UNITS = inch ANGULAR_UNITS = degree DEFAULT_LINEAR_VELOCITY = 0.10 MAX_LINEAR_VELOCITY = 3.0 NO_FORCE_HOMING = 0 #NO_FORCE_HOMING = 1 SPINDLES = 1 AXES = 4 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl TOOL_CHANGE_QUILL_UP = 1 RANDOM_TOOLCHANGER = 0 #****************************************** [AXIS_X] MAX_VELOCITY = 2.0 MAX_ACCELERATION = 20.0 MIN_LIMIT = 0 MAX_LIMIT = 17.625 [JOINT_0] TYPE = LINEAR MAX_VELOCITY = 2.0 MAX_ACCELERATION = 20.0 MIN_LIMIT = 0 MAX_LIMIT = 17.625 #PULSES_PER_IN determined by encoder PPR (131072) and ballscrew pitch (5mm) #REVS/IN = 5.08; 131072 * 5.08 = 665845.76 PULSES_PER_IN = 665845.76 FERROR = 0.5 MIN_FERROR = 0.05 HOME_ABSOLUTE_ENCODER = 2 HOME = 8.8125 HOME_OFFSET = 0 HOME_SEQUENCE = 0 HOME_SEARCH_VEL = 0 HOME_LATCH_VEL = 0 HOME_IGNORE_LIMITS = YES # only for initial homing #HOME = 0 #HOME_SEQUENCE = 2 #HOME_SEARCH_VEL = 1 #HOME_LATCH_VEL = 0.1 #HOME_USE_INDEX = NO #HOME_IGNORE_LIMITS = YES #CIA402_HOMING_ENABLED = 1 #CIA402_HOMING_METHOD = 35 #CIA402_HOMING_SEARCH_VEL = 0 #CIA402_HOMING_LATCH_VEL = 0 #CIA402_HOMING_ACCEL = 0 # HOMING_METHOD=35: "current position is used as home" (no motion) #****************************************** [AXIS_Y] MAX_VELOCITY = 2.0 MAX_ACCELERATION = 20.0 MIN_LIMIT = 0 MAX_LIMIT = 9.9 [JOINT_1] TYPE = LINEAR MAX_VELOCITY = 2.0 MAX_ACCELERATION = 20.0 MIN_LIMIT = 0 MAX_LIMIT = 9.9 #PULSES_PER_IN determined by encoder PPR (131072) and ballscrew pitch (5mm) #REVS/IN = 5.08; 131072 * 5.08 = 665845.76 PULSES_PER_IN = 665845.76 FERROR = 0.5 MIN_FERROR = 0.05 HOME_ABSOLUTE_ENCODER = 2 HOME = 8.75 HOME_OFFSET = 0 HOME_SEQUENCE = 0 HOME_SEARCH_VEL = 0 HOME_LATCH_VEL = 0 HOME_IGNORE_LIMITS = YES # only for initial homing #HOME = 0 #HOME_SEQUENCE = 1 #HOME_SEARCH_VEL = 1 #HOME_LATCH_VEL = 0.1 #HOME_USE_INDEX = NO #HOME_IGNORE_LIMITS = YES #CIA402_HOMING_ENABLED = 1 #CIA402_HOMING_METHOD = 35 #CIA402_HOMING_SEARCH_VEL = 0 #CIA402_HOMING_LATCH_VEL = 0 #CIA402_HOMING_ACCEL = 0 # HOMING_METHOD=35: "current position is used as home" (no motion) #****************************************** [AXIS_Z] MAX_VELOCITY = 2. MAX_ACCELERATION = 20.0 MIN_LIMIT = -14.0 MAX_LIMIT = 0.0001 [JOINT_2] TYPE = LINEAR MAX_VELOCITY = 2. MAX_ACCELERATION = 20.0 MIN_LIMIT = -14 MAX_LIMIT = 0.0001 #PULSES_PER_IN determined by encoder PPR (131072) and ballscrew pitch (5mm) #REVS/IN = 5.08; 131072 * 5.08 = 665845.76 PULSES_PER_IN = 665845.76 FERROR = 0.5 MIN_FERROR = 0.05 HOME_ABSOLUTE_ENCODER = 2 HOME = 0 HOME_OFFSET = 0 HOME_SEQUENCE = 0 HOME_SEARCH_VEL = 0 HOME_LATCH_VEL = 0 HOME_IGNORE_LIMITS = YES # only for initial homing #HOME = 0 #HOME_SEQUENCE = 0 #HOME_SEARCH_VEL = 1 #HOME_LATCH_VEL = 0.1 #HOME_USE_INDEX = NO #HOME_IGNORE_LIMITS = YES #CIA402_HOMING_ENABLED = 1 #CIA402_HOMING_METHOD = 35 #CIA402_HOMING_SEARCH_VEL = 0 #CIA402_HOMING_LATCH_VEL = 0 #CIA402_HOMING_ACCEL = 0 # HOMING_METHOD=35: "current position is used as home" (no motion) #****************************************** [AXIS_A] MAX_VELOCITY = 90 MAX_ACCELERATION = 3000.0 MIN_LIMIT = -1e99 MAX_LIMIT = 1e99 [JOINT_3] TYPE = ANGULAR MAX_VELOCITY = 90 MAX_ACCELERATION = 3000.0 MIN_LIMIT = -1e99 MAX_LIMIT = 1e99 #PULSES_PER_DEG determined by encoder PPR (131072) and harmonic ratio (51:1) #131072 / 360 = 364.0888 PPD (input); 364.0888 * 51 = 18568.5333 PPD (output) PULSES_PER_DEG = 18568.5333 FERROR = 0.5 MIN_FERROR = 0.05 HOME_ABSOLUTE_ENCODER = 2 HOME = 0 HOME_OFFSET = 0 HOME_SEQUENCE = 0 HOME_SEARCH_VEL = 0 HOME_LATCH_VEL = 0 HOME_IGNORE_LIMITS = YES # only for initial homing #HOME = 0 #HOME_SEQUENCE = 3 #HOME_SEARCH_VEL = 45 #HOME_LATCH_VEL = 5 #HOME_USE_INDEX = NO #HOME_IGNORE_LIMITS = YES #CIA402_HOMING_ENABLED = 1 #CIA402_HOMING_METHOD = 35 #CIA402_HOMING_SEARCH_VEL = 0 #CIA402_HOMING_LATCH_VEL = 0 #CIA402_HOMING_ACCEL = 0 # HOMING_METHOD=35: "current position is used as home" (no motion) #****************************************** [ATC] # CAROUSEL_ETH.COMP SETTINGS ALIGNED = 1 POCKETS = 18 STEP_TIME = 75 ENCODER_COUNTS = 131072.0 GEAR_RATIO = 5 REGULAR_RPM = 50.0 REGULAR_ACCEL = 200.0 JOG_RPM = 50.0 JOG_ACCEL = 200.0 ALIGN_RPM = 0.5 ALIGN_ACCEL = 1.0 POS_DEADBAND = 100 MOVE_TIMEOUT = 5 RECOVERY_RPM = 10.0 RECOVERY_ACCEL = 20.0 RECOVERY_TIMEOUT = 30 VOLATILE_HOME = 1 # CAROUSEL HOMING FOR STEPPERONLINE A6 HOMING_METHOD = 35 HOMING_HIGH_VEL = 0 HOMING_LOW_VEL = 0 HOMING_ACCEL = 0 # HOMING_METHOD=35: "current position is used as home" (no motion) # HOMING VEL/ACCEL are set to drive defaults. Not used by Method 35 # Z-AXIS SPEED/LOCATION FOR ATC (TESTING) ZHIGH = -0.001 ZMED = -0.5 ZLOW = -0.75 ZFAST = 20 ZSLOW = 10 # Z-AXIS SPEED/LOCATION FOR ATC (PRODUCTION) #ZHIGH = -0.001 #ZMED = -2.8 ##ZLOW = -3.152 #ZLOW = -3.484 #ZFAST = 180 #ZSLOW = 30 #TOOLCHANGE TABLE POSITION TOOLCHANGE_X = 8.5 TOOLCHANGE_Y = 8.0 #TOOLCHANGE_A = 0 #****************************************** [SPINDLE_0] P = 0 I = 0 D = 0 FF0 = 1 FF1 = 0 FF2 = 0 BIAS = 0 DEADBAND = 0.0 MAX_OUTPUT = 8000.0 ENCODER_SCALE = 4096.0 OUTPUT_SCALE = 8000 OUTPUT_MIN_LIMIT = 0 OUTPUT_MAX_LIMIT = 8000 [SPINDLE_ORIENT] P = 2000 I = 0 D = 160 FF0 = 0 FF1 = 0 FF2 = 0 BIAS = 0 DEADBAND = 0.004 MAX_OUTPUT = 250.0