• Tags
  • Documentation
  • Order
  • Register
  • Login
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.
  • undefined
    CedricE
    last edited by 16 Feb 2021, 17:32

    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
    • undefined
      Phaedrux Moderator
      last edited by 17 Feb 2021, 03:05

      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

      undefined 1 Reply Last reply 17 Feb 2021, 12:02 Reply Quote 1
      • undefined
        OwenD
        last edited by OwenD 17 Feb 2021, 08:28

        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
        • undefined
          CedricE @Phaedrux
          last edited by 17 Feb 2021, 12:02

          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

          undefined undefined 2 Replies Last reply 17 Feb 2021, 15:25 Reply Quote 0
          • undefined
            zapta @CedricE
            last edited by zapta 17 Feb 2021, 15:25

            @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
            • undefined
              bot
              last edited by 17 Feb 2021, 17:09

              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
              • undefined
                OwenD @CedricE
                last edited by 17 Feb 2021, 20:28

                @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
                4 out of 7
                • First post
                  4/7
                  Last post
                Unless otherwise noted, all forum content is licensed under CC-BY-SA