Jump to content

Arc Welder Anti Stutter plugin


ahoeben

Recommended Posts

Posted · Arc Welder Anti Stutter plugin
1 hour ago, brunoosti said:

Now, how do I convert a low poly shape into a curved one?

Preferably not in Cura, but in a 3d modeling package.

1 hour ago, brunoosti said:

But if I configure resolution over 0.07mm, cura won't slice,

This misunderstanding of the parameters will be fixed in the next release. For details, see https://github.com/fieldOfView/Cura-ArcWelderPlugin/issues/12

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin
    6 hours ago, ahoeben said:

    Preferably not in Cura, but in a 3d modeling package.

    Sure, I understand what you mean: for precision and not having the plugin escaping the intended shape. But sometimes it's evident the part would be round if not for the low poly count (besides skipping  treating the model part ). How does the plugin calculate the curved path? Tangent to the original lines?

    • Like 1
    Link to post
    Share on other sites

    • 4 weeks later...
    Posted · Arc Welder Anti Stutter plugin

    It is very possible that the firmware you use does not properly support G2/G3 Arc movements. I don't have your printer, and I don't know what firmware you have installed.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin
    15 hours ago, papasan said:

    the Cura plugin with an Ender 3v2 isn't usable for me.

    Please be more specific than this. The gcode files look ok to me. I don't know what your problem is printing these files, since I can not run your gcode files on your printer, with the version of Marlin you compiled for your printer.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    I'm pretty new at printing, so perhaps there are some nuances that I'm missing about how the GCode is rendered in preview mode on different hardware, but these 2 codes look drastically different on my screen and printer...

     

    Ut7muKf.jpg

     

    FXEtpxc.jpg

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    In the first image you show the part before Arc Welder did it's thing (it is a "Post-Processing" script).  The circles in that image are actually a lot of short line segments and show correctly.  They are G1 moves.

     

    But when you open a gcode file in Cura that was post-processed by Arc Welder, Cura doesn't understand the G2/G3 commands and so it ignores them when it renders the preview of a gcode file.  The G2/G3 moves disappear and you are left with the G1 moves.  It will print fine.  It just doesn't look good in Cura.

    • Like 1
    Link to post
    Share on other sites

    Posted (edited) · Arc Welder Anti Stutter plugin

    it prints exactly like the preview on my Ender3v2 with 2.0.1 firmware via Octoprint.  perhaps it's the last item that's causing the moves to be incorrectly printed?

    Edited by papasan
  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    Then the firmware of your printer doesn't have G2/G3 (arc_support) enabled.  The printer doesn't understand the commands and ignores them.  You won't be able to use Arc Welder unless you alter the firmware.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    I see, thanks for the info.

  • Link to post
    Share on other sites

    Posted (edited) · Arc Welder Anti Stutter plugin

    In Marlin "Configuration_adv.h":

     

    // G2/G3 Arc Support
      //
      #define ARC_SUPPORT // Disable this feature to save ~3226 bytes
      #if ENABLED(ARC_SUPPORT)
      #define MM_PER_ARC_SEGMENT 1 // (mm) Length (or minimum length) of each arc segment

     

    Now I know why they didn't enable them.  3226 bytes is a lot of overhead.

    Edited by GregValiant
  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    I see the beauty of Arc welder but have had mixed results using it in cura. It mostly works great but has caused problems a few times.

    Please see the attached images of 3 prints...the first two are sliced with different setting and using arc welder, the third has Arc welder turned off and the artifact is gone...ill attach the images as well as the G-code (github made me zip it). Is this an issue or do my settings need to change? I'm using settings very close to the defaults.

    Thanks for your time and effort!
    12827760_1-3DBenchyAWD.thumb.jpg.c73a148bcaa31cfe7f80aaf944255981.jpg80315914_1-3DBenchyNoAW.thumb.jpg.49b1fefc95c769cb265385b7341a2109.jpg1986390690_1-3DBenchyAWB.thumb.jpg.d64df715b3dbd51b53abe0728e815491.jpgG-code.zip

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    You can load g-code into cura after arc-welder finishes with it.

    The code generated doesn't seem to get processed properly by cura or the printer.

    But it corresponds closely to my ender3v2 output, which is supposed to have ARC_SUPPORT enabled by default.  At least according to the marlin config file from creality.  It has a 32 bit processor so space for features are not an issue.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    "At least according to the marlin config file from creality".

    Over the course of the last year or so, Creality ran out of various parts and made substitutions.  Among the parts that they substituted were mainboards.  They grabbed what boards they had available, did quicky patches to the firmware, installed the boards and sold the machines.  There were issues and one of them was that G2 / G3 was not enabled.  Another issue was the M0/M1/M117 glitch that killed the ability to use the "Pause at Height" plugin.

    Yes, it's a 32 bit mainboard but memory is memory and I've seen no mention of memory space in regards to any Creality mainboards.  The problem was severe last summer and into the fall.  Since then it seems to have gotten better but other than tracking complaints (like the G2/G3 thing) it's hard to tell.  Creality is quick to blow their own horn in regards to their positives and completely silent about any negatives.

    My Ender 3 Pro with the 8 bit board reads and prints Arc Welded gcode perfectly.  Cura however does not (but I think I read someplace that somebody was working on that).  If your prints look like current Cura previews then G2/G3 is not enabled.

    • Like 2
    Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    Out of interest, how does ArcWelder decide that STL geometry is a curve?

    If an STL file is simply a series of triangles, there must be a point at which ArcWelder might get confused as to whether a surface is not really a curve but a series of facets.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    Magic.

  • Link to post
    Share on other sites

    Posted (edited) · Arc Welder Anti Stutter plugin

    Though I am not the creator of the "magic", my guess is it is as follows: The algorithm takes 3 consecutive points (that are part of an extruding move) and fits a circular arc to them. If an arc is found, it compares the arc to the two linear sections and checks the difference. If the difference is smaller than what is specified in the settings, (and some additional conditions are also met), the arc segment is accepted. Then I am guessing the next point is checked to be on the same curve. If it is not, then a new section of 3 consecutive point is taken.

    Edited by ahoeben
    • Like 2
    Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin
    10 hours ago, ahoeben said:

    ...The algorithm takes 3 consecutive points (that are part of an extruding move) and fits a circular arc to them...


    I thought that must be the way it works too, but I saw a bunch of people on facebook suggesting that it's the way to smooth out a low-poly cylinder (it's what prompted my question).

    I think the facets that make up the numerous flat sides of a Tinkercad cylinder are too rough to be considered a curve by Cura, so by extension Arc Welder wouldn't smooth those faces, although it might arc at the interface from one face to the next.

  • Link to post
    Share on other sites

    Posted (edited) · Arc Welder Anti Stutter plugin

    "...suggesting that it's the way to smooth out a low-poly cylinder."

    That is an interesting question.

    If you take say, 5 points that are each 5mm apart and determine that they are on an arc.  You convert the arc to a G2 move and pass it to the printer.  The printer looks at the arc and finds that its minimum line segment for an arc is 1mm.  So it appears (on the surface) that the resolution goes up from 5mm facets, to 1mm facets.

     

    Here is a shot of a tube that I exported from Acad in low res (FACETRES at 0.25).  Lots of big facets.

    Untitled.thumb.png.e21692fe3e9d318e41f68c2d8e66fac8.png

     

    I sliced it with Arc Welder active.  Within the gcode file are very few G2/G3 moves.  I think the resolution was too low and fell below some threshold that may be present in Arc Welder.

    So I upped the FACETRES to 1.0 and tried again.  I got pretty much the same result as noted above with hardly any G2/G3 moves in the gcode file.  Lastly I exported the STL with FACETRES at the max of 10.0 and Arc Welder came to life filling the gcode file with G2's and G3's.

     

    Here is the final gcode file read into Acad.  The VBA script does turn G2/G3 into arcs and I've copied one arc out to the right.  There is a slight gap in the arc at about 9:00 that is at the Zseam location and I will assume it's where the .1mm wipe is.

    untitled10.thumb.png.080e1d8405753084c5faf823cbbd228b.png

    After all of that, I am pleased to present my astounding conclusion regarding the question "Does Arc Welder increase resolution"?

     

    And my answer is...Maybe, if the file is fairly high-res to start with.  @ahoeben may know the threshold.  In AutoCad it's between 1 and 10 and that's close enough for government work.

     

    Regards,

    Dr. Bunsen Honeydew

    Muppet Labs

    199172_152607244800386_6190830_n.jpg.687fe979f5609f3aec999ea9460824c0.jpg

     

     

    Edited by GregValiant
  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin
    On 5/24/2021 at 11:51 PM, GregValiant said:

    "...suggesting that it's the way to smooth out a low-poly cylinder."

    That is an interesting question.

    If you take say, 5 points that are each 5mm apart and determine that they are on an arc.  You convert the arc to a G2 move and pass it to the printer.  The printer looks at the arc and finds that its minimum line segment for an arc is 1mm.  So it appears (on the surface) that the resolution goes up from 5mm facets, to 1mm facets.

     

    Here is a shot of a tube that I exported from Acad in low res (FACETRES at 0.25).  Lots of big facets....

     

    So it's the export from the modelling software that determines whether it's a circular cylinder. There's no way to put the 0.25 facetres file on the buildplate and change settings in Arc Welder to smooth the results into a circle? (It makes absolute sense that it would work that way, I'm just making sure I've understood correctly.)

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    That's what it looks like to me.  Remember that there are no true circles.  The G2/G3 commands are still faceted and the Marlin firmware "MM_PER_ARC_SEGMENT (Default 1mm)" can be altered when recompiling firmware to give a higher resolution.

    So it looks like it remains up to the settings of the export utility that creates the STL from the CAD model to determine the resolution.  That resolution at some point can be picked up by Arc Welder and turned into G2/G3 moves whose max resolution would be MM_PER_ARC_SEGMENT in the firmware.  If the MM_PER_ARC_SEGMENT were too short you would go back to stuttering as the number of calculations would start to overwhelm the printer/processor again like the extremely short G1 moves were doing in the first place.

    So my best guess is that there is a small window where Arc Welder could possibly increase the resolution of an STL file.  But if someone was to ask me if it increased model resolution I'd tell them "no" which appears to be much closer to being correct than answering "yes".

    • Like 1
    Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    I think I'm getting a problem from the plugin with very steep straight lines. Thought it was the belts on my printer, but found out its software related. Instead of going straight to a point, I get these small zigzags on a few sides. kind of like an old screen trying to make a straight line.

  • Link to post
    Share on other sites

    Posted · Arc Welder Anti Stutter plugin

    Have you tried slicing and printing a simple object like a cylinder? If your firmware does not support arc movements, don't use this plugin.

     

    Other than that it is hard to diagnose what is going on without pictures, screenshots and/or any information about the printer and firmware you use.

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

    • Our picks

      • Introducing Universal Cura Projects in the UltiMaker Cura 5.7 beta
        Strap in for the first Cura release of 2024! This 5.7 beta release brings new material profiles as well as cloud printing for Method series printers, and introduces a powerful new way of sharing print settings using printer-agnostic project files! Also, if you want to download the cute dinosaur card holder featured below, it was specially designed for this release and can be found on Thingiverse! 
          • Like
        • 10 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...