GithubHelp home page GithubHelp logo

jes1510 / pypocketer Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 132 KB

A python script for generating G-CODE for cutting pockets with a CNC machine. It uses a simple GUI written in wxPython

Python 100.00%

pypocketer's Introduction

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.


The programm will generate G-Code that will mill in the positive directions for X and Y.  The position of the tool is decremented for a pocket mill so it is assumed that the tool will move in the negative direction for the Z axis.  The top of the workpiece is assumed to be the zero position.

units:	
Units of measurement.  Either Imperial (USA) or metric (Rest of the world)

X Dimension:
X Dimension of area to be milled

Y Dimension:
Y Dimension of area to be milled

Tool Diameter:
Diameter of tool to be used for milling

Overlap %:
Amount each pass should overlap the previous pass.  Expressed in percentages.  0 in this box will use no overlap.  Use more overlap for cleaner cuts

Z Liftoff Height:
Height to lift Z axis that will clear entire work area

Final depth:
Final depth of milled pocket. If this value is less than the Max Step Depth then only one pass will be generated

Max Step Depth:
Amount to decrement the Z axis for the milling motion

Feed Rate:
Feedrate per minute per a standard "F" code.  Imches per minute for Imperial and mm per minute for metric

Preferred Direction:	The program will generate code that will move on one long axis and increment on the shorter axis.  It is assumed that for a rectangular work area that the direction preference should be on the longer axis and is calculated by the "Auto" value.  It can be overridden by directly selecting an axis in the box.  Keep in mind that this may not be particularly efficient but it may be desirable in some circumstances.

Use Tool Offset:
Calculates all moves so that the outside edge of the tool is within the specified X and Y coordinates.  If checked, the first move will be in the preferred direction for a distance equal to the radius of the tool.  The tool will then be lowered into the workpiece.  This means that the outside edge of the pocket will be underneath the center of the cutting tool when the G-Code is ran so zero will be at the edge of the pocket If this option is not checked then an absolute tool path will be calculated that does not take the tool size into account.  This will cause the pocket to be larger than the specified dimensions by a quantity equal to the tool diameter.

Use Pocketing:
If not checked then the tool will just mill a square to the defined depth.  This may be useful for just cutting squares.  If checked then the tool will run a complete pocketing operation.

Output Filename: 
Name of file to be written

"Write to file button":
Takes all values and generates the G-Code which is then written to the file

pypocketer's People

Contributors

jes1510 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.