User avatar
rflulling
Posts: 63
Joined: Thu Sep 28, 2017 10:03 pm

Warm, Purge, Print, Purge, Retract, Cool, Wipe

I need to ask for a complex feature. Perhaps even this requires several features that can be used together.
*It has been recommended that I use slicers other than Cura or S3D. But have chosen to stick to this path for the time.

I currently use Dual Direct J-Head. In the software T0, and T1 are represented. I have addressed two profiles to each tool. The profiles adjust flow rate and diameter. One material in use is rubber like, and chemical resistant with a 210 melt temp. The second is strong enough to make tow cables, and has a melt temp of 225. The test setup uses 3 of the 4 available profiles. The goal, is to remain in constant motion, no stop. The head not in use must be Retracted, and cleared, and or cooled. Then warmed before it is primed for a layer.

I believe that it is is possible to take advantage of the layer, retraction, and tool change script options to make this possible. Cleaned up and further edited by the Post Processing. An additional tweak is that scripts and options set within each profile are respected differently based on how the code engine is activated. Right now there are two ways. Everything is sliced as one. Or separate objects respected by a defined height.

I have added the script that allows for one head to cool while the other is warming and this is useful. But not nearly enough. Being able to warm up, cool down, and perform wipe with retract in a well coordinated way so that the head never needs to stop. That is a quality improvement tool.
I have been looking for a way to make this happen with scripting but so far com up with few tools.

This is for all intensive purposes an expectation of how this should go down.

Key:
T0(a) Z0.1, T0(b) Z0.05, T1(a) Z0.1, T1(b) Z0.05

>Slicer Defined action
>>Inserted action
<Post Process
Object1: CORE
Object2: INFILL
Object3: Flex Shell

Print File:

Code: Select all

[layer1 0.1]
>>Print Purge T0a square (north)
>Retract T0
>>Print Iron T0a square (north)
>>CoolDown T0
>skirt no boundary T1a
>>Purge T1a square (south)
>Print Object1 with T1a
>Print Object2 with T1a
>Print Object3 with T1a
[layer2 0.15]
>>Print Purge T1b "Coast at End"
>>Print Object1 with T1b "Coast at End"
>>Print Purge T1b square (south)
>>Retract T1
>>WarmUp T0
>>Print Iron T1b square (south)
>>CoolDown T1
>Restore T0
>>Print Purge T0b "Coast at End"
>>Print Object3 with T0b "Coast at End"
>>Print Purge T0b "Coast at End"
>Retract T0
>>WarmUp T1
>>Print Iron T0b square (north)
>>CoolDown T0
[layer3 0.20]
>Restore T1
>>Print Purge T1b "Coast at End"
>>Print Object1 with T1b "Coast at End"
>>Print Object2 with T1b "Coast at End"
>>Print Purge T1b square (south)
>>Retract T1
>>WarmUp T0
>>Print Iron T1b square (south)
>>CoolDown T1
>Restore T0
>>Print Purge T0b "Coast at End"
>>Print Object3 with T0b "Coast at End"
>>Print Purge T0b "Coast at End"
>Retract T0
>>WarmUp T1
>>Print Iron T0b square (north)
>>CoolDown T0
[layer4 0.25]
>Restore T0
>>Print Purge T1b "Coast at End"
>>Print Object1 with T1b "Coast at End"
>>Print Purge T1b square (south)
>>Retract T1
>>WarmUp T0
>>Print Iron T1b square (south)
>>CoolDown T1
>Restore T0
>>Print Purge T0b "Coast at End"
>>Print Object3 with T0b "Coast at End"
>>Print Purge T0b "Coast at End"
>Retract T0
>>WarmUp T1
>>Print Iron T0b square (north)
>>CoolDown T0
[layer3 0.30]
>Restore T1
>>Print Purge T1b "Coast at End"
>>Print Object1 with T1b "Coast at End"
>>Print Object2 with T1b "Coast at End"
>>Print Purge T1b square (south)
>>Retract T1
>>WarmUp T0
>>Print Iron T1b square (south)
>>CoolDown T1
>Restore T0
>>Print Purge T0b "Coast at End"
>>Print Object3 with T0b "Coast at End"
>>Print Purge T0b "Coast at End"
>Retract T0
>>WarmUp T1
>>Print Iron T0b square (north)
>>CoolDown T0
Attachments
S3D DUAL EXTRUSION COMPLEX.JPG
Last edited by rflulling on Wed Dec 11, 2019 8:37 am, edited 1 time in total.
User avatar
rflulling
Posts: 63
Joined: Thu Sep 28, 2017 10:03 pm

Re: Warm, Purge, Print, Purge, Retract, Cool, Wipe

Slowly but surely I have begun to unravel the complex process in which S3D sequences generated cGode. The result is a arduous and daunting but ultimately slightly rewarding result. I have uncovered some nuisance behavior in Prime Pillars and learned to work around it to get the results I want. I have added code published both by S3D and various users for the point of switching temps more effectively during a print. But ultimately this was not enough and now work with a unique Extruder, with its own unique temp settings, bound to the tool that it needs to effect. Scripting was not needed, cleverness is required. I would enjoy still being able manipulate this mess to a greater degree but I feel I have come very close to what I desire in terms of results. To fight the ooze, to directly regulate flow exactly as titled. To maintain multiple simultaneous events allowing one to warm and one to cool, even while printing continue uninterrupted. Allowing a much shorter print time than if I had to literally stop and wait every time temp changed. Allowing the extruder heads to NOT be directly over a printed part during a warm up, only cooled heads float over an active work space.

Still I hope that S3D is able to find a way to adopt and incorporate a more advanced system than this into the code.
S3D-Jake
Posts: 1052
Joined: Wed Jun 20, 2018 12:45 pm

Re: Warm, Purge, Print, Purge, Retract, Cool, Wipe

You're actually already able to include toolchange cooling / heating by using M109/M104 commands in your toolchange scripts in the scripting tab of your FFF settings. Have you tried using the scripting tab to better control your temperature changes?
"A bird does not sing because it has an answer. It sings because it has a song."
User avatar
rflulling
Posts: 63
Joined: Thu Sep 28, 2017 10:03 pm

Re: Warm, Purge, Print, Purge, Retract, Cool, Wipe

Yes and I do as much as I am clever enough to implement right now. As specified in both previous comments I did briefly use the Code specified in the help docs and on several user sites. Old Tool, New tool. Though I was able to move away from that (it conflicted), when I started using an extra tool template.

However there is so much more functionality that I cannot include and only by being very clever is it working at all.

The tool should warm up at the previous tool is cooling down. This should happen as the previous tool is performing a purge and wipe. Currently there is no way to direct the software to do a purge and wipe, as an instruction. Well a purge and temp changes yes, a purge as a Extrude Tower, no. Not without an extra object, and a whole lot more tinkery, and assumptions of the sequence objects are printed.

If we gain the ability to fully determine the sequence that Processes are executed, or objects are generated. Then I might be able to make this work.

When I refer to a wipe, I am not referring to the fast hard jerky motion that happens now. I am referring to an idea that the head actually traces part of the previous extrusion for enough time that any remaining ooze has stopped. With luck the temp change insures no further ooze.

Currently i have this all working very good. But i have two distinct issues.

1) after a purge tower, a small amount of material is dragged and this creates wiskars that protrude through the other layers.
2) Since ironing is not part of the system I have the a tool profile set up with a 0.02 extrusion rate. I cannot make a tool with a disabled extruder. So as the software directs the tool to extrude very slowly with a head that is cooled or cooling the filament strips inside the extruder and will refuse to extrude on the next layer. This only effects larger jobs.

Happy to provide real world examples.

Return to “Feature Requests”