> > > The problem is that the PID loop makes bogus velocity corrections because > of > position sample time jitter (which may be as high as a few hunderd usec on > RPI4 Ethernet) > > I suspect that you are not using the DPLL, or that it is not setup > properly. > For a RPI4 I would suggest these settings: > > setp hm2_7i76e.0.dpll.01.timer-us -200 > setp hm2_7i76e.0.stepgen.timer-number 1 > > These should reduce the stepgenb position sampling jitter to a > fraction of 1 usec. >
DPLL was not configured. Adding those two lines fixed it. Thanks! Attached are the configuration files, if anyone still wants to see them.
# Generated by PNCconf at Mon Jan 31 21:56:39 2022 # Using LinuxCNC version: 2.8 # If you make changes to this file, they will be # overwritten when you run PNCconf again [EMC] MACHINE = Router DEBUG = 0 VERSION = 1.1 [DISPLAY] DISPLAY = gmoccapy POSITION_OFFSET = RELATIVE POSITION_FEEDBACK = ACTUAL MAX_FEED_OVERRIDE = 2.000000 MAX_SPINDLE_OVERRIDE = 1.000000 MIN_SPINDLE_OVERRIDE = 0.500000 INTRO_GRAPHIC = linuxcnc.gif INTRO_TIME = 5 PROGRAM_PREFIX = /home/pi/linuxcnc/nc_files INCREMENTS = .1in .01in .001in POSITION_FEEDBACK = ACTUAL DEFAULT_LINEAR_VELOCITY = 2 MAX_LINEAR_VELOCITY = 2.000000 MIN_LINEAR_VELOCITY = 0.016670 DEFAULT_ANGULAR_VELOCITY = 12.000000 MAX_ANGULAR_VELOCITY = 180.000000 MIN_ANGULAR_VELOCITY = 1.666667 EDITOR = gedit GEOMETRY = xy [FILTER] PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image PROGRAM_EXTENSION = .py Python Script png = image-to-gcode gif = image-to-gcode jpg = image-to-gcode py = python [TASK] TASK = milltask CYCLE_TIME = 0.010 [RS274NGC] PARAMETER_FILE = linuxcnc.var [EMCMOT] EMCMOT = motmod COMM_TIMEOUT = 1.0 SERVO_PERIOD = 1000000 [HMOT] CARD0=hm2_7i96.0 [HAL] HALUI = halui HALFILE = Router.hal HALFILE = custom.hal POSTGUI_HALFILE = postgui_call_list.hal SHUTDOWN = shutdown.hal [HALUI] [KINS] JOINTS = 2 KINEMATICS = trivkins coordinates=XY [TRAJ] COORDINATES = XY LINEAR_UNITS = inch ANGULAR_UNITS = degree DEFAULT_LINEAR_VELOCITY = 0.17 MAX_LINEAR_VELOCITY = 1.67 NO_FORCE_HOMING = 1 [EMCIO] EMCIO = io CYCLE_TIME = 0.100 TOOL_TABLE = tool.tbl #****************************************** [AXIS_X] MAX_VELOCITY = 1.66666666667 MAX_ACCELERATION = 50.0 MIN_LIMIT = -0.001 MAX_LIMIT = 4.0 [JOINT_0] TYPE = LINEAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.05 MAX_VELOCITY = 1.66666666667 MAX_ACCELERATION = 50.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 2.08 STEPGEN_MAXACCEL = 62.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 3144.7618 MIN_LIMIT = -0.001 MAX_LIMIT = 4.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -0.050000 HOME_LATCH_VEL = -0.016667 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO #****************************************** #****************************************** [AXIS_Y] MAX_VELOCITY = 1.66666666667 MAX_ACCELERATION = 50.0 MIN_LIMIT = -0.001 MAX_LIMIT = 8.0 [JOINT_1] TYPE = LINEAR HOME = 0.0 FERROR = 0.5 MIN_FERROR = 0.05 MAX_VELOCITY = 1.66666666667 MAX_ACCELERATION = 50.0 # The values below should be 25% larger than MAX_VELOCITY and MAX_ACCELERATION # If using BACKLASH compensation STEPGEN_MAXACCEL should be 100% larger. STEPGEN_MAXVEL = 2.08 STEPGEN_MAXACCEL = 62.50 P = 1000.0 I = 0.0 D = 0.0 FF0 = 0.0 FF1 = 1.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 0.0 # these are in nanoseconds DIRSETUP = 10000 DIRHOLD = 10000 STEPLEN = 5000 STEPSPACE = 5000 STEP_SCALE = 3144.7618 MIN_LIMIT = -0.001 MAX_LIMIT = 8.0 HOME_OFFSET = 0.000000 HOME_SEARCH_VEL = -0.050000 HOME_LATCH_VEL = -0.016667 HOME_FINAL_VEL = 0.000000 HOME_USE_INDEX = NO #******************************************
Router.hal
Description: Binary data
_______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users