Welcome! Log In Create A New Profile

Advanced

an idea to share for out of order layer deposition

Posted by James Villeneuve 
Theory of Quadrant temp cycling for 3d printing.


This is a gcode parser tool in the works.

I am in the process of upgrading my 3d printing code with the following algorithm. Let me know what you think.

The idea is to compensate for my high speed mode. The mode lays down huge amounts of plastic and that causes a lot of heat energy to go into the previous layer. It causes warping and sometimes loss of support structure.

I can do the simple way and just wait each layer a maximum time turn fan on, ect.
I like simple, but i like faster better.... so..

What i am doing is allowing for slow down of extruder and feed rate to allow for more time to cool an area. but since that does not always lead to better performance, i am also implementing a 4 5mmx5mm processing buffer step processing queue that remembers all areas that need to be processed and move them around till the area has cooled.

I have a way to avoid the layers from warping, and it basically is this. Out of order processing of layer. I would modify the g code to do that area last to allow for more cool time. If the cool time required to safely do that layer has not been reached even with out of order layering then the extruder would raise 5mm in z and wait the required time.

The algorithm involves breaking down the printing area into 5mm square array of temp zones. Each one of those zones has a count time for how long the extruder is in that zone. All areas not extruded will decrease by 1 each second until at zero. a print job cannot print in that area until it is at zero. (so time controls it), it can however go over that area for bridging and for jogs.

Each zone behaves identical. If the extruder is printing in one zone, then all the other zones decrease by 1 value and the current zone you are in increases by one value each second.

After in the area of 5mm x5mm for 15 seconds the area of interest starts slowing down speed and extruder rate to allow cooling to happen at a faster rate than extrusion. The other zones are cooling in this time still and approaching a near cool temp. Basically i move tool head over a smaller range, and extruder less material so the rest of area where extruder is going and has not been yet has more time to cool.

If the 5mm x5mm zone continues to be printed in for after 30 seconds then the zone stops being processed, and is stored in a memory queue. That zone cannot be processed again until it again is at zero process time. (each second temp zones not ebing printed in decrease by 1). when that area has been processed finally it leaves the queue. (the queue is the gcode remaining for that area.)

Up to 4 queues are stored, if more than 4 queues or the other zone of 5mm x5mm area are processed then the tool head goes up 5mm in z and waits the time required for any remaining zone to go to zero to finish processing of that area.

once a process becomes queued all other processes are run first. then the queued processes are ran.


The idea is to basically do out of order layer processing when thermal heat would normally cause you to wait before doing an area. This method allows bigger prints to run about 8 times quicker because only the area of 5mm x 5mm xspace that has been processed for 45 seconds will require a tool stop as it is an area that has been overheated to near a point of warpage.

The current standard method is to pause each layer for up to a minute or more. my 3d_simple application needs the faster method to make its draft and normal modes faster as it's heat build up is so great that i can only do 10 layers of a build unless a temp calibration test is ran each build.


THe above method of out of order layer processing allows a higher operating temp and reduces stress on extruder while allowing for higher operating speeds.


the current method i am testing has the area of the table into 4 sections y+/y- x+.x- with zero being the crossover point to what section. this is too restrictive as many times a part prints a larger struture to the left or right of zero and it does nothing for a tiny section being built up with z. such as a small cylinder to the right will overheat still and warp.

thought to share it with everyone and get my thoughts collected.


James
Sorry, only registered users may post in this forum.

Click here to login