GithubHelp home page GithubHelp logo

highvoltageengineering / grbl-plotter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from svenhb/grbl-plotter

0.0 0.0 0.0 148.36 MB

A GCode sender for up to two GRBL controller. SVG, DXF, HPGL import. 6 axis DRO.

License: GNU General Public License v3.0

nesC 0.90% C# 98.63% HTML 0.19% JavaScript 0.28%

grbl-plotter's Introduction

GRBL-Plotter

README deutsch
A GCode sender for GRBL under windows, using DotNET 4.0 (should also work with Windows XP)
Written in C# VisualStudio 2015.
If you like GRBL-Plotter, show it to me with a small donation :-) Donate

Check History

Check the Wiki for further information

Program is free and you can use it at your own risk,
as you understand there is no warranty of any kind

Zip folder contains ClickOnce application setup. Exe can be found in sub-folder GRBL-Plotter/bin/release.

Requirements for compiling

  • VisualStudio 2015
  • DotNET 4.0

Feature list:

Import/Export:

  • Several options to translate Pen Up/Down
    • controlling a Z axis
    • controlling a servo
    • controlling a laser
    • user defined commands
    • Create GCode absolute or relative (for further use as subroutine)
  • Ruler and import units can be switched between mm or inch
  • GCode import via file load, drag & drop or copy & paste
    • Loading GCode with optional replacement of M3 / M4 commands (helpful for 'Laser Mode' $32=1)
  • SVG graphics import via file load, drag & drop (also URL) or copy & paste - tested with Inkscape generated SVGs
    • optional resize to fixed size
    • optional output of nodes only (generating drill holes for string art Video 'String Art' )
    • optional sorting of paths by used color
    • optional tool change
    • if text needs to be imported, convert text into path first
  • DXF graphics import via file load, drag & drop (also URL) - tested with LibreCAD generated DXFs
    • few entities are missing
  • Drag tool compensation
  • HPGL graphics import via file load, drag & drop
  • Drill file import via file load, drag & drop
  • Image import via file load or drag & drop
  • GCode can be edited and saved
  • Recent File List (Files and URLs)
  • Export / import machine specific settings (Joystick, Buttons)

GCode creation:

  • Create Text
  • Create simple shapes
  • Create GCode via tool extensions

GCode manipulation:

  • Transformation of GCodes (scale, rotation, mirror, zero-Offset)
    any A,B,C,U,V,W commands will stay in place.
  • Transformation via camera teaching
  • Axis Substitution for Rotary Axis
  • Radius compensation
  • Create Code for Tangential axis

Machine control:

  • Height map, auto leveling
  • Probing dialog
  • Individual commands via user defined Buttons
  • Joystick like control in user interface
  • support of no-name USB GamePad / Joystick
  • Optional usage of a WebCam with separate coordinate system: graphics overlay of the current GCode, set zero point, measure angle, zoom, teaching
    • Shape recognition for easier teach-point (fiducial) assignment
    • Transforming GCode with camera aid, to match drill file with PCB view Wiki 'PCB drilling'

Flow control:

  • Supporting subroutines M98, M99 Sub-Program Call (P, L)
  • Internal variable to support probing, e.g.:
    • G38.3 Z-50 (probe toward tool length sensor, stop on contact - because of deceleration stop-pos. is not trigger-pos.)
    • G43.1 Z@PRBZ (Offset Tool with value stored on trigger of sensor switch)
    • examine SerialForm.cs for implementation

GRBL:

  • Automatic reconnect on program start
  • Supporting GRBL 1.1 (and 0.9 also)
  • Check for 30 kHz max. step-pin frequency
  • Supporting new GRBL 1.1 features
    • Jogging
    • Feed rate override
    • Spindle speed override
    • real time display GRBL states (in COM CNC window)
  • Check limits of GRBL setup - max. STEP frequency and min. FEED rate in COM CNC window
  • Controlling a 2nd GRBL-Hardware
  • Supports 4th axis (A, B, C, U, V or W). Status and control (special GRBL version needed)

My test bed

On my german homepage: my XYZ platform

GRBL-Plotter in tool change action

Import an image

Screenshots

Main GUI GRBL-Plotter GUI

Separate serial COM window(s) - one for the CNC, one for the tool changer (or 4th axis)
GRBL-Plotter COM interface 2nd GRBL control

Setup import / GCode conversion
GRBL-Plotter Setup1.1 Setup import / GCode conversion
GRBL-Plotter Setup1.2 Setup import / GCode conversion
GRBL-Plotter Setup1.3 Setup import / GCode conversion
GRBL-Plotter Setup1.4

Setup main tool table
GRBL-Plotter Setup2

Setup tool change configuration
GRBL-Plotter Setup3

Setup flow control configuration
GRBL-Plotter Setup4

Setup program control configuration
GRBL-Plotter Setup5

Setup user defined buttons
GRBL-Plotter Setup6

Setup GamePad
GRBL-Plotter Setup7

Setup virtual Joystick
GRBL-Plotter Setup8

Setup Hot-Keys
GRBL-Plotter Setup9

Setup shape recogniton for fiducial camera
GRBL-Plotter Setup10

Text import
GRBL-Plotter Text

Picture import
GRBL-Plotter Image

Different scaling options
GRBL-Plotter Scaling

Feed rate overrid for Version 0.9 and 1.1
GRBL-Plotter Override GRBL-Plotter Override

grbl-plotter's People

Contributors

svenhb avatar rasyidf avatar robzeilinga 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.