Git Product home page Git Product logo

Comments (11)

kefeur avatar kefeur commented on May 28, 2024

G code Optimisation:
In an example of a 50mm*50mm picture that has a 20mm wide figure in the middle and has 15mm of empty space the laser travels that empty space as well but does nothing. It would be better if it would skip these empty spaces and empty lines entirely.

White skipped the purpose / work transcends time and unnecessary abbreviations Movement
It would be good if it would skip the white parts during the work process to shorten the time and prevent useless movement.
Thank you.

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

When it starts the burning the M3 instruction is omitted in the first line.

If so, it's a bug. I will investigate as soon as possible.

At the end of each line M5 switches off, then when it starts coming back M3 switches back on. Consecutively, both of them are unnecessary.

This is necessary and by design.

sample

Take a look at this image, made line by line by horizontal strokes. The horizontal line must have the laser on, the vertical line exchange must ensure that the laser is switched off. Otherwise it would be marked a vertical line to the left and right edges of the image.

It's true that in cases where at the end of the line laser is already off (S0) this M5-M3 seems superfluous, but it is not true in all other cases.

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

In an example of a 50mm*50mm picture that has a 20mm wide figure in the middle and has 15mm of empty space the laser travels that empty space as well but does nothing. It would be better if it would skip these empty spaces and empty lines entirely.

White skipped the purpose / work transcends time and unnecessary abbreviations Movement
It would be good if it would skip the white parts during the work process to shorten the time and prevent useless movement.

Yes, a lot of improvements can be made in this direction.
All leading / trailing white lines may be skipped. Also avoid arriving at the end of line but move directly to the next line. Something like this:

path4172

In the past I tried to insert optimizations such these, but the line generation algorithm became too complicated so i abandoned this way.

from lasergrbl.

kefeur avatar kefeur commented on May 28, 2024

It's true that in cases where at the end of the line laser is already off (S0) this M5-M3 seems superfluous, but it is not true in all other cases

Many other g code generator did not use the M3-M5 is anything but start and end. Use S0 instruction .The problem to quickly turn off and then turn the engine driver, and because the micro step is clapping, jumping and noisy. sometimes jumps one step it is a lot . (1 step = 64 micro step)
Im Isolating the engine driver enable input from the GRBL.

from lasergrbl.

kefeur avatar kefeur commented on May 28, 2024

M3 error.
G code first line:

G90
F400
G0 X0 Y0
M5 S255
G1 F350
G91
G0 F400 X2.6 S0
G1 F350 X.1 S255
G0 F400 X2.1 S0
G1 F350 X.1 S255
G0 F400 X.5 S0
G1 F350 X.1 S255
G0 F400 X2.3 S0

This is correct:

G90
F400
G0 X0 Y0
M5 S255
G1 F350
G91
M3<<<<<<It can not generate it
G0 F400 X2.6 S0
G1 F350 X.1 S255
G0 F400 X2.1 S0
G1 F350 X.1 S255
G0 F400 X.5 S0
G1 F350 X.1 S255
G0 F400 X2.3 S0

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

If you are able to checkout sourcecode and compile, the last commit has a fix for this bug.
N.B. I have not had a chance to test it because I do not have laser engraver available at this time

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

GCode optimization was added in development roadmap (when I have time...)

from lasergrbl.

kefeur avatar kefeur commented on May 28, 2024

Very clever man.
Thank you.

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

Last commit contains GCode optimization (skip consecutive blank lines and move directly to next mark)

from lasergrbl.

arkypita avatar arkypita commented on May 28, 2024

About the problem you tell me about dithering, of sparse small dots

image

It not depends on a bug in the dithering alghoritm but it depends by the source image. If the source image has not a perfect white background (ie. for jpg compression artefacts) dithering try to represent this non pure white areas/points with small scattered dots.

If the image has a true white background this problem disappear

image

Maybe I could add some kind of "white thresholds" to clean dirty background in image preprocessing, for now I suggest you to preprocess images with Photoshop or similar to clean background.

from lasergrbl.

kefeur avatar kefeur commented on May 28, 2024

The G-code optimization has been very good.
This is a very nicely developing project.
Thank you.

from lasergrbl.

Related Issues (20)

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.