mirror of
https://github.com/teachingtechYT/teachingtechYT.github.io.git
synced 2024-08-30 18:23:26 +00:00
Teweak accel test- full feedrate control
This commit is contained in:
@ -710,7 +710,7 @@
|
|||||||
<br />Wipe moves the nozzle back towards the recently printed geometry to wipe ooze off. If you are having trouble reducing stringing, it may be a good option.
|
<br />Wipe moves the nozzle back towards the recently printed geometry to wipe ooze off. If you are having trouble reducing stringing, it may be a good option.
|
||||||
<br />Both coast and wipe are turned off in the gcode generator below.</li>
|
<br />Both coast and wipe are turned off in the gcode generator below.</li>
|
||||||
<li>Maximum extruder feedrate: Your firmware may have a hard limit imposed on extruder movement that is below the retraction speed values you are attempting to use with the form above. You may need to use <a href="https://marlinfw.org/docs/gcode/M203.html" target="_target">M203</a> to raise the extruder feedrate limit to try higher values for retraction speed. This potentially needs to be saved with <b>M500</b> if you want it to be permanent.</li>
|
<li>Maximum extruder feedrate: Your firmware may have a hard limit imposed on extruder movement that is below the retraction speed values you are attempting to use with the form above. You may need to use <a href="https://marlinfw.org/docs/gcode/M203.html" target="_target">M203</a> to raise the extruder feedrate limit to try higher values for retraction speed. This potentially needs to be saved with <b>M500</b> if you want it to be permanent.</li>
|
||||||
<li>Travel feedrate: A travel move is one where the printer moves to a new location without extruding. The slower this move is, the more time filament will have to ooze from the nozzle and add to stringing. The feedrate is set to 100mm/sec in the gcode generator above. Matching this in your slicer is advised if these tests look better than your own slicer results.</li>
|
<li>Travel feedrate: A travel move is one where the printer moves to a new location without extruding. The slower this move is, the more time filament will have to ooze from the nozzle and add to stringing. The default feedrate is set to 100mm/sec in the gcode generator above, and increases or decreases based on the user feedrate input. Matching this in your slicer is advised if these tests look better than your own slicer results.</li>
|
||||||
<li>Travel acceleration: This test does not manipulate travel acceleration but increasing its value may help reduce stringing. You can change travel acceleration with <a href="https://marlinfw.org/docs/gcode/M204.html" target="_blank">M204</a> and the <b>T</b> argument.</li>
|
<li>Travel acceleration: This test does not manipulate travel acceleration but increasing its value may help reduce stringing. You can change travel acceleration with <a href="https://marlinfw.org/docs/gcode/M204.html" target="_blank">M204</a> and the <b>T</b> argument.</li>
|
||||||
<li>Linear advance: Linear advance, covered later in this guide, can drastically improve the accuracy of our extrusion. It has a significant impact of retraction (reducing the need), so after configuring linear advance you may need to revisit retraction.</li>
|
<li>Linear advance: Linear advance, covered later in this guide, can drastically improve the accuracy of our extrusion. It has a significant impact of retraction (reducing the need), so after configuring linear advance you may need to revisit retraction.</li>
|
||||||
<li>Slicer differences: The gcode generated below was originally sliced by Simplify3D. The settings you establish should translate to your slicer quite well but there may be idiosyncrasies. For instance, Cura measures extra restart distance in volume rather than length.</li>
|
<li>Slicer differences: The gcode generated below was originally sliced by Simplify3D. The settings you establish should translate to your slicer quite well but there may be idiosyncrasies. For instance, Cura measures extra restart distance in volume rather than length.</li>
|
||||||
|
@ -238,8 +238,9 @@ var feedrate = `<h4>Feedrate</h4>
|
|||||||
`;
|
`;
|
||||||
|
|
||||||
var accel = `<h4>Base feedrate/speed</h4>
|
var accel = `<h4>Base feedrate/speed</h4>
|
||||||
<p>You can specify the feedrate for X and Y movements. The inner perimeter will be set to this speed and the outer perimeter 50% of this speed. It is recommend to follow the process above to calculate safe limits for feedrate.</p>
|
<p>You can specify the feedrate for X and Y movements. Both the inner and outer perimeter speed can be specified. It is recommend to follow the process above to calculate safe limits for feedrate.</p>
|
||||||
<label>Base feedrate (mm/sec): <input type="number" name="feedrate" value="60" min="20" max="500"></label>
|
<p><label>Inner perimeter feedrate (mm/sec): <input type="number" name="innerFeedrate" value="60" min="5" max="1000" step="1"></label></p>
|
||||||
|
<p><label>Outer perimeter feedrate (mm/sec): <input type="number" name="outerFeedrate" value="60" min="5" max="1000" step="1"></label></p>
|
||||||
<h4>Acceleration and jerk/junction deviation</h4>
|
<h4>Acceleration and jerk/junction deviation</h4>
|
||||||
<p>After entering <b>M503</b>, I have determined my 3D printer firmware uses:</p>
|
<p>After entering <b>M503</b>, I have determined my 3D printer firmware uses:</p>
|
||||||
<label>Jerk: <input type="radio" value="jerk" name="jerk_or_jd" checked="checked" onchange="toggleJ()"></label>
|
<label>Jerk: <input type="radio" value="jerk" name="jerk_or_jd" checked="checked" onchange="toggleJ()"></label>
|
||||||
|
@ -216,7 +216,8 @@ function processGcode(formName) {
|
|||||||
}
|
}
|
||||||
// collect acceleration inputs
|
// collect acceleration inputs
|
||||||
if(name == "accelerationForm"){
|
if(name == "accelerationForm"){
|
||||||
var feed = formName.feedrate.value*60;
|
var inner = formName.innerFeedrate.value*60;
|
||||||
|
var outer = formName.outerFeedrate.value*60;
|
||||||
var jerk_or_jd = formName.jerk_or_jd.value;
|
var jerk_or_jd = formName.jerk_or_jd.value;
|
||||||
var a1 = formName.accel_a1.value;
|
var a1 = formName.accel_a1.value;
|
||||||
var a2 = formName.accel_a2.value;
|
var a2 = formName.accel_a2.value;
|
||||||
@ -401,7 +402,7 @@ function processGcode(formName) {
|
|||||||
gcode = gcodeArray.join("\n");
|
gcode = gcodeArray.join("\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// experimental feedrate change
|
// feedrate change
|
||||||
if(name != "accelerationForm"){
|
if(name != "accelerationForm"){
|
||||||
if(feedMod != 1){
|
if(feedMod != 1){
|
||||||
var gcodeArray = gcode.split(/\n/g);
|
var gcodeArray = gcode.split(/\n/g);
|
||||||
@ -422,9 +423,9 @@ function processGcode(formName) {
|
|||||||
// changes for acceleration test
|
// changes for acceleration test
|
||||||
if(name == "accelerationForm"){
|
if(name == "accelerationForm"){
|
||||||
// edit feedrates
|
// edit feedrates
|
||||||
gcode = gcode.replace(/F3600/g, "F"+feed+" ; custom feedrate - full");
|
gcode = gcode.replace(/F3600/g, "F"+outer+" ; custom outer perimeter feedrate");
|
||||||
gcode = gcode.replace(/F2880/g, "F"+feed+" ; custom feedrate - full");
|
gcode = gcode.replace(/F2880/g, "F"+outer+" ; custom outer perimeter feedrate");
|
||||||
gcode = gcode.replace(/F2160/g, "F"+feed/2+" ; custom feedrate - half");
|
gcode = gcode.replace(/F2160/g, "F"+inner+" ; custom inner perimeter feedrate");
|
||||||
// add acceleration segments
|
// add acceleration segments
|
||||||
gcode = gcode.replace(/;process Process-1/, "M201 X50000 Y50000 Z50000; custom raise acceleration limits\nM204 P"+a1+" ; custom acceleration - A\n;j1");
|
gcode = gcode.replace(/;process Process-1/, "M201 X50000 Y50000 Z50000; custom raise acceleration limits\nM204 P"+a1+" ; custom acceleration - A\n;j1");
|
||||||
gcode = gcode.replace(/;process Process-2/, "M204 P"+b1+" ; custom acceleration - B\n;j2");
|
gcode = gcode.replace(/;process Process-2/, "M204 P"+b1+" ; custom acceleration - B\n;j2");
|
||||||
|
Reference in New Issue
Block a user