3d Printer Torture Test
by takigama, published
A model and 3 perl scripts for pushing the limits of your printer.
Caution: know and understand what your doing before attempting to use any of these.
This is a simple printer torture test designed to achieve a simple goal: how fast, how hot and how quick.
The model will take a long time to slice in slic3r, however you need not necessarily use my model, any model with some height should be sufficient.
each of these scripts tests the printer in the same way, as the printer goes up in the Z axis, all scripts ignore the first layer and all perl scripts work directly with gcode files.
Caution: DO NOT set one of these up and then walk away, you should be paying attention here as there is a very good possibility of pushing your printer past some acceptable limits.
The three scripts are:
speedup.pl - increases print speed using M220 as Z increases (default starts at 30% and increases by 3% at every layer change. At the top of the 50mm model your printer will be going around 500% faster then its current settings
tempup.pl - increases temperature of prints starting at T-10 and going to T+10 (where T is default print temperature it finds in the gcode file)
Accelup.pl - increases acceleration (starting at 500 and ramping up by 10 at every layer change), it uses M201 and M204 to do this.
How do you use them
First you'll need perl, i havent bothered making compiled versions.
perl speedup.pl input.gcode output.gcode [start] [increment]
start is the M220 modifier at layer 2, increment is how much it changes each layer. For eg:
perl speedup.pl input.gcode output.gcode 200 1
would mean "modify the input.gcode file, output to output.gcode with a starting speed scale of 200, incrementing 1 after every layer change"
After you finish this print, make sure you issue a M220 S100 to revert back to normal speeds.
perl tempup.pl input.gcode output.gcode MAXTEMP [start] [layers] [increment]
I've put MAXTEMP in a required argument so you think about what temp you really want your extruder running at. This script will never exceed MAXTEMP.
start is the starting temperature (print temp minus 10 by default)
layers is how many layers between changes
increment is how many degrees to increase the temp at each change
For eg: perl tempup.pl input.gcode output.gcode 210 180 10 2
means, modify input.gcode into output.gcode with a MAXTEMP of 210, a starting temp of 180, change temperature every 10 layers by 2 degrees. (this uses M104 to modify temperature)
perl accelup.pl input.gcode output.gcode [start] [incrememnt]
Does the same as speedup.pl, however modifies acceleration using M201 and M204
start - the acceleration at start (500 by default)
increment - per-layer incremental change (10 by default)
Note with this one: know what your acceleration values are prior to using it as in some firmwares, M201 and M204 are permanent changes