# EMC controller parameters for generic controller. Make these what you need # for your system. # 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 = $Revision$ # Name of machine, for use with display, etc. #MACHINE = LinuxCNC-UNIVPWM-RATROD LATHE MACHINE = Scot_Lathe1 # Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others DEBUG = 0 # DEBUG = 0x00000007 # DEBUG = 0x7FFFFFFF # Sections for display options ------------------------------------------------ [DISPLAY] # Name of display program, e.g., xemc DISPLAY = axis LATHE = 1 LATHE = TRUE # DISPLAY = usrmot # DISPLAY = tkemc # Cycle time, in seconds, that display will sleep between polls CYCLE_TIME = 0.100 # Path to help file HELP_FILE = tklinucnc.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.000000 MIN_SPINDLE_OVERRIDE = 0.500000 # Prefix to be used PROGRAM_PREFIX = /home/scot/linuxcnc/nc_files INCREMENTS = .1in .05in .01in .005in .001in .0005in .0001in DEFAULT_LINEAR_VELOCITY = 0.250000 MAX_LINEAR_VELOCITY = 5.000000 MIN_LINEAR_VELOCITY = 0.010000 DEFAULT_ANGULAR_VELOCITY = .250000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 0.010000 EDITOR = gedit GEOMETRY = xyz # Introductory graphic INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 2 # Enable popup balloon help BALLOON_HELP = 1 OPEN_FILE = "" # 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.010 # Part program interpreter section -------------------------------------------- [RS274NGC] #xz plane, inch mode, ABS mode, dia mode, exact stop mode. STARTUP_CODE = G18 G20 G90 G7 G61 # File containing interpreter variables PARAMETER_FILE = univpwm.var # Motion control section ------------------------------------------------------ [EMCMOT] EMCMOT = motmod # Timeout for comm to emcmot, in seconds COMM_TIMEOUT = 1.0 # Interval between tries to emcmot, in seconds COMM_WAIT = 0.010 # Servo task period, in nanoseconds SERVO_PERIOD = 1000000 # 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 = Scot_Lathe1_univpwm_load.hal HALFILE = Scot_Lathe1_univpwm_servo.hal HALFILE = Scot_Lathe1_univpwm_motion.hal HALFILE = Scot_Lathe1_univpwm_io.hal #uncomment the following line to enable the pendant function #HALFILE = pendant.hal #uncomment the following line to enable the spindle speed display #POSTGUI_HALFILE = spindle.hal #You need to remove axis 3 or provide another path for a spindle encoder to #feed into EMC for this to work. # Trajectory planner section -------------------------------------------------- [TRAJ] AXES = 3 COORDINATES = X Z HOME = 0 0 LINEAR_UNITS = inch ANGULAR_UNITS = degree CYCLE_TIME = 0.010 DEFAULT_VELOCITY = .25 MAX_VELOCITY = 5 DEFAULT_ACCELERATION = 20.0 MAX_ACCELERATION = 10.0 # Axes sections --------------------------------------------------------------- # Scaling: The OUTPUT_SCALE should be the speed # in UNITS/second (inches/sec or mm/sec) that would be # reached if the PWM duty cycle was 100%. It depends on # the power supply voltage, motor RPM/Volt factor, and # gearing/screw pitch. For example: # # Power supply voltage 50V # Motor RPM/V 1000RPM/24V # Gearing: 2 motor revs per 1 screw rev # Screw pitch: 0.2" per turn # # Max motor speed = 50V * 1000RPM/24V = 2083 RPM # Max screw speed = 2083RPM * 1(screw)/2(motor) = 1041RPM # Max table speed = 1041RPM * 0.2"/turn = 208 in/min # Max table speed = 208 in/min / 60 seconds = 3.47 inches/sec # # Since max speed is reached at 100% duty cycle, OUTPUT_SCALE # should be 3.47 # ****************** # Axis X # ****************** [AXIS_0] TYPE = LINEAR HOME = 0.0 MAX_VELOCITY = 5.0 MAX_ACCELERATION = 80.0 PID_MAX_VEL = 1.5 BACKLASH = 0.00 INPUT_SCALE = -25400 OUTPUT_SCALE = -1 MIN_LIMIT = -0.15 MAX_LIMIT = 8.1 FERROR = 0.010 MIN_FERROR = 1 HOME_OFFSET = .250 HOME_SEARCH_VEL = 1 HOME_LATCH_VEL = -0.2 HOME_USE_INDEX = NO HOME_SEQUENCE = 1 HOME_IGNORE_LIMITS = YES DEADBAND = 0.000126 P = 24.75 I = 0 D = 0.545 BIAS = 0 FF0 = 0 FF1 = 0.135 FF2 = 0.001104011 # ****************** # Axis Z # ****************** [AXIS_2] TYPE = LINEAR HOME = 5 MAX_VELOCITY = 8 MAX_ACCELERATION = 80.0 PID_MAX_VEL = 1.5 BACKLASH = 0.00 INPUT_SCALE = 25400 OUTPUT_SCALE = 1 MIN_LIMIT = -.15 MAX_LIMIT = 5.1 FERROR = 0.010 MIN_FERROR = 1 HOME_OFFSET = 5.0 HOME_SEARCH_VEL = 1 HOME_LATCH_VEL = 0.2 HOME_USE_INDEX = NO HOME_SEQUENCE = 0 HOME_IGNORE_LIMITS = YES DEADBAND = 0.000126 P = 24.75 I = 0 D = 0.545 BIAS = 0 FF0 = 0 FF1 = 0.135 FF2 = 0.001104011 [EMCIO] # Name of IO controller program, e.g., io EMCIO = io # cycle time, in seconds CYCLE_TIME = 0.100 # tool table file TOOL_TABLE = univpwm.tbl