def create_alignment_drill(params): prog = gcode_cmd.GCodeProg() prog.add(gcode_cmd.GenericStart()) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.FeedRate(params['stockcut']['feedrate'])) thickness = params['stockcut']['thickness'] overcut = params['stockcut']['overcut'] drill_step = params['stockcut']['drill_step'] start_dwell = params['start_dwell'] safe_z = params['safe_z'] start_z = 0.0 param = { 'centerX': 0.0, 'centerY': 0.0, 'startZ': start_z, 'stopZ': start_z - (thickness + 2 * overcut), 'safeZ': safe_z, 'stepZ': drill_step, 'startDwell': start_dwell, } drill = cnc_drill.PeckDrill(param) prog.add(drill) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.End(), comment=True) return prog
def create_stockcut_drill(params): prog = gcode_cmd.GCodeProg() prog.add(gcode_cmd.GenericStart()) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.FeedRate(params['stockcut']['feedrate'])) thickness = params['stockcut']['thickness'] overcut = params['stockcut']['overcut'] diam_tool = params['stockcut']['diam_tool'] step_size = params['stockcut']['step_size'] start_dwell = params['start_dwell'] drill_step = params['stockcut']['drill_step'] drill_inset = params['stockcut']['drill_inset'] safe_z = params['safe_z'] start_z = 0.0 pocket_data = get_stockcut_pocket_data(params) for data in pocket_data: for i in (-1, 1): for j in (-1, 1): cx = data['x'] + 0.5 * data['w'] + i * (0.5 * data['w'] - drill_inset) cy = data['y'] + 0.5 * data['h'] + j * (0.5 * data['h'] - drill_inset) param = { 'centerX': cx, 'centerY': cy, 'startZ': start_z, 'stopZ': start_z - (thickness + overcut), 'safeZ': safe_z, 'stepZ': drill_step, 'startDwell': start_dwell, } drill = cnc_drill.PeckDrill(param) prog.add(drill) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.End(), comment=True) return prog
def createNGCFile(display=False): motorParam = param['motorDrill'] prog = gcode_cmd.GCodeProg() prog.add(gcode_cmd.GenericStart()) prog.add(gcode_cmd.Space()) # Motor mount holes for x0, y0 in param['partPos']: prog.add(gcode_cmd.Comment('-' * 60)) prog.add( gcode_cmd.Comment('Motor mount holes, partPos = ({0},{1})'.format( x0, y0))) prog.add(gcode_cmd.Comment('-' * 60)) prog.add(gcode_cmd.FeedRate(motorParam['feedRate'])) for i in (-1, 1): x = x0 + i * 0.5 * motorParam['holeSpacing'] drillDict = { 'centerX': x, 'centerY': y0, 'startZ': motorParam['startZ'], 'stopZ': motorParam['stopZThru'], 'safeZ': motorParam['safeZ'], 'stepZ': motorParam['stepZ'], 'startDwell': motorParam['startDwell'], } drill = cnc_drill.PeckDrill(drillDict) prog.add(drill) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.End(), comment=True) baseName, ext = os.path.splitext(__file__) fileName = '{0}.ngc'.format(baseName) if display: print(prog) else: print('creating: {0}'.format(fileName)) prog.write(fileName)
def createNGCFile(display=False): standoffParam = param['standoffDrill'] prog = gcode_cmd.GCodeProg() prog.add(gcode_cmd.GenericStart()) prog.add(gcode_cmd.Space()) # Standoff holes prog.add(gcode_cmd.Comment("Standoff holes")) prog.add(gcode_cmd.FeedRate(standoffParam['feedRate'])) for x0, y0 in param['partPos']: for i in (-1, 1): for j in (-1, 1): x = x0 + i * 0.5 * standoffParam['holeSpacing'] y = y0 + j * 0.5 * standoffParam['holeSpacing'] drillDict = { 'centerX': x, 'centerY': y, 'startZ': standoffParam['startZ'], 'stopZ': standoffParam['stopZThru'], 'safeZ': standoffParam['safeZ'], 'stepZ': standoffParam['stepZ'], 'startDwell': standoffParam['startDwell'], } drill = cnc_drill.PeckDrill(drillDict) prog.add(drill) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.End(), comment=True) baseName, ext = os.path.splitext(__file__) fileName = '{0}.ngc'.format(baseName) if display: print(prog) else: print('creating: {0}'.format(fileName)) prog.write(fileName)
stopZ = -0.24 feedrate = 2.0 startDwell = 2.0 holeSpacing = params['block2fixture_hole_spacing'] prog = gcode_cmd.GCodeProg() prog.add(gcode_cmd.GenericStart()) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.FeedRate(feedrate)) for i in (-1, 1): xPos = i * 0.5 * holeSpacing yPos = 0.0 drillDict = { 'centerX': xPos, 'centerY': yPos, 'startZ': startZ, 'stopZ': stopZ, 'safeZ': safeZ, 'stepZ': stepZ, 'startDwell': startDwell, } drill = cnc_drill.PeckDrill(drillDict) prog.add(drill) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.Space()) prog.add(gcode_cmd.End(), comment=True) print(prog) prog.write('block2fixture_center_drill.ngc')