Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Slicer-adjustment, script or something else?

    Scheduled Pinned Locked Moved
    Third-party software
    5
    7
    501
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • CedricEundefined
      CedricE
      last edited by

      Hey together,

      I’m developing a metal 3D printer using WAAM (wire and arc AM) process.

      https://www.mdpi.com/materials/materials-12-01121/article_deploy/html/images/materials-12-01121-g001-550.jpg Thats a graphic of WAAM process.

      First, I had problems to get my torch started, but it works now πŸ™‚

      Now I’m looking for a slicer where I can get a special form of g code. Or a special form of the extrusion parameter.

      G1 F900 X220 Y736 E25.443
      G1 F900 X222.5 Y819 E23.912
      G1 F900 X225 Y830 E12.322
      G0 X230 Y769
      

      This is out of slicer. It means it will extrude in the lines with G1 an amount of filament.

      But I want to get gcode like this:

      G1 F900 X220 Y736 E1
      G1 F900 X222.5 Y819
      G1 F900 X225 Y830 E1
      G0 X230 Y769
      

      In first sentence of a β€œto print line” the printer has to start to extrude, with just E1. In last sentence where it hast to extrude, just E1, too. In the sentences between, no E!
      It's needed, because my machine only needs β€œon” at beginning of a line and β€œoff” (means 1, too) at an end of the line. The process between β€œon with E1” and the β€œE1 to go off” my machine does itself.

      I hope you understand my problem and you can help me!

      Thank you!

      Cedric

      1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator
        last edited by

        Sounds like a job for a post processor. Both cura and prusa slicer have pretty powerful find and replace scripting capabilities.

        Z-Bot CoreXY Build | Thingiverse Profile

        CedricEundefined 1 Reply Last reply Reply Quote 1
        • OwenDundefined
          OwenD
          last edited by OwenD

          You can just select laser mode using M452
          https://duet3d.dozuki.com/Wiki/Gcode#Section_M452_Select_Laser_DeviceMode

          Use the pin defined in the P parameter to control a relay which in turn can be wired to your torch trigger.

          Your image appears to depict tig or plasma cold wire.
          this is a poor choice for WAAM using a printer base as you have no way of keeping the wire in the correct orientation with regards to the arc and direction of travel.

          The best process is CMT (Cold Metal Transfer)
          This is being used by several commercial WAAM systems.

          1 Reply Last reply Reply Quote 3
          • CedricEundefined
            CedricE @Phaedrux
            last edited by

            Hey,

            thank you for your answers!

            @Phaedrux said in Slicer-adjustment, script or something else?:

            Sounds like a job for a post processor. Both cura and prusa slicer have pretty powerful find and replace scripting capabilities.

            Thats sounds good!

            I took a look to Cury scripting button before, but I don't understand something 😰

            Do you have a tip for me to get into scripting with Cura?

            I'd start with this:

            https://github.com/Ultimaker/Uranium/wiki/Creating-plugins

            but maybe you have a better site how to start πŸ™‚

            @OwenD said in Slicer-adjustment, script or something else?:

            You can just select laser mode using M452
            https://duet3d.dozuki.com/Wiki/Gcode#Section_M452_Select_Laser_DeviceMode

            Use the pin defined in the P parameter to control a relay which in turn can be wired to your torch trigger.

            Your image appears to depict tig or plasma cold wire.
            this is a poor choice for WAAM using a printer base as you have no way of keeping the wire in the correct orientation with regards to the arc and direction of travel.

            The best process is CMT (Cold Metal Transfer)
            This is being used by several commercial WAAM systems.

            I work with M571 in usual printing mode actually.
            This way I got here:

            https://forum.duet3d.com/topic/20997/extruder-feed-just-0-1

            I'll take my new information into this thread at weekend maybe.

            Because the printer is running now, with M571 and a MIG/MAG torch.
            With TIG you're right, that would give some problems with wire orientation. But the graphic was the best I found πŸ˜‰

            CMT would be a dream, I'm working with an 25 year old TPS330 atm πŸ‘

            My next step is using 4 tact welding mode to fill the end crater at an end of the line. I thought to use a dwell time, but I think if I do it with the welding electric, I will get better quality.

            And thats why I have to modify the g code πŸ™‚

            If you have other ideas, it would be wonderful to hear them!

            Cedric

            zaptaundefined OwenDundefined 2 Replies Last reply Reply Quote 0
            • zaptaundefined
              zapta @CedricE
              last edited by zapta

              @CedricE said in Slicer-adjustment, script or something else?:

              I'd start with this:
              https://github.com/Ultimaker/Uranium/wiki/Creating-plugins

              It doesn't have to be a 'plugin', can be just a post processing program in your language of choice that reads the gcode file and generates a replacement one.

              If I got your requirements correctly, I would load the gcode lines into memory, classify each one of them as one of these cases:

              • First extrusion in a sequence.
              • Extrusion within a sequence.
              • Last extrusion in a sequence.
              • Other

              And them output the each line with a modification based on its classification.

              BTW, in the last extrusion line in your example, did you intend to have E1 or E0 (turn off)?

              1 Reply Last reply Reply Quote 0
              • botundefined
                bot
                last edited by

                IceSL slicer does this with simple lua scripting. All G-Code is generated by a user-editable lua script. There are several ways to accomplish what you want to to, it's very flexible.

                Also, PrusaSlicer is easy to modify. I could point you to the area you'd need to modify. Likely, other open source slicers are easy to modify too, but I've no experience with them so I can't say for sure.

                If you wanna try IceSL or PrusaSlicer, I'd be happy to offer any help or advice.

                *not actually a robot

                1 Reply Last reply Reply Quote 0
                • OwenDundefined
                  OwenD @CedricE
                  last edited by

                  @CedricE said in Slicer-adjustment, script or something else?:

                  Hey,

                  thank you for your answers!

                  My next step is using 4 tact welding mode to fill the end crater at an end of the line. I thought to use a dwell time, but I think if I do it with the welding electric, I will get better quality.

                  And thats why I have to modify the g code πŸ™‚

                  If you have other ideas, it would be wonderful to hear them!

                  Cedric

                  With regards to end craters, if you have a Fronius TPS3200 you can set a start and end current time.
                  Hold down the store key and press one of the arrows under the trigger selection LEDs.
                  Use the arrows to scroll through- start current, end current, start time, end time.
                  It's all in the manual (you've read the manual right? πŸ˜‰
                  You should probably leave the trigger made to 2x
                  If you use then you must issue both a high and low signal at the start and end of each line.
                  Running 2x trigger mode will simplify things.
                  You will need to add a delay at the end of each line to ensure the torch stays in place until after both the end time and the post gas flow.
                  This could be done by a post processing script adding G4 S*

                  Alternatively you could add a robot interface and insert conditional g-code which checked for the process active signal going low before proceeding to the next line.
                  You'd still need post processing to do this and whilst you could then adjust settings on the welder without re-slicing, it's much more expensive.

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post
                  Unless otherwise noted, all forum content is licensed under CC-BY-SA