mirror of
https://github.com/teachingtechYT/teachingtechYT.github.io.git
synced 2024-08-30 18:23:26 +00:00
Merge pull request #41 from petersmythe/petersmythe-spelling-mistakes
Fixing spelling mistakes & grammar
This commit is contained in:
@ -70,7 +70,7 @@
|
||||
<h5>When required:</h5>
|
||||
<p>Any time the frame or mechanical components have been disassembled or replaced.</p>
|
||||
<h5>Tools:</h5>
|
||||
<p>Basic spanners, allen keys, etc.</p>
|
||||
<p>Basic spanners, Allen keys, etc.</p>
|
||||
</div>
|
||||
<p>It would be easy to use the techniques elsewhere on this page to try and fix problems that were actually caused by a problem with the physical components, so we will eliminate this possibility first.</p>
|
||||
<p>Many of these procedures are covered in this video: <a href="https://youtu.be/T-Z3GmM20JM" target="_blank">Complete beginner's guide to 3D printing - Assembly, tour, slicing, levelling and first prints</a></p>
|
||||
@ -87,7 +87,7 @@
|
||||
<h4>PTFE Tube</h4>
|
||||
<p>If your printer has PTFE tube, such as a bowden tube setup for the extruder/hot end, it is essential to make the tube is fully inserted and seated in the coupler. Also ensure the coupler is properly tightened. You may wish to use a small retaining clip on the coupler to prevent the tube working loose: <a href="https://www.thingiverse.com/thing:4268489" target="_blank">Creality PTFE clip by morfidesign</a>.</p>
|
||||
<h4>Nozzle</h4>
|
||||
<p>It is worth heating up the nozzle and pushing some filament through to see if it is exiting the nozzle properly. If the diameter is inconsistent or the extruded plastic shoots to one side, it may indicate a partial blockage in the nozzle that will be a pain in the future. It is also worth checking if the nozzle is properly tightened. Only do this when it is hot or you may break it.</p>
|
||||
<p>It is worth heating up the nozzle and pushing some filament through to see if it is exiting the nozzle properly. If the diameter is inconsistent or the extruded plastic shoots to one side, it may indicate a partial blockage in the nozzle that will be a pain in the future. It is also worth checking if the nozzle is properly tightened. Only do this when it is hot, or you may break it.</p>
|
||||
<h4>Belts</h4>
|
||||
<p>Ensure all belts are properly aligned and tensioned sufficiently. Also check the grub screws are tight on the pulleys that connect the belts to the stepper motors.</p>
|
||||
<h4>Fans</h4>
|
||||
@ -102,7 +102,7 @@
|
||||
<h5>Aim:</h5>
|
||||
<p>To ensure the heating of the 3D printer nozzle and bed are safe, stable and consistent.</p>
|
||||
<h5>When required:</h5>
|
||||
<p>Any time the hot end is changed, including addng/removing a silicone sock or altering part cooling fan/ducts. Any time the bed is changed, such as adding a glass/mirror plate, magnetic spring steel sheet and/or under bed insulation.</p>
|
||||
<p>Any time the hot end is changed, including adding/removing a silicone sock or altering part cooling fan/ducts. Any time the bed is changed, such as adding a glass/mirror plate, magnetic spring steel sheet and/or under bed insulation.</p>
|
||||
<h5>Tools:</h5>
|
||||
<p>Terminal software such as <a href="https://www.pronterface.com/" target="_blank">Pronterface</a> or <a href="https://octoprint.org/" target="_blank">Octoprint</a>.</p>
|
||||
</div>
|
||||
@ -117,7 +117,7 @@
|
||||
<pre>M303 E-1 S60 U1</pre>
|
||||
<p>The bed is selected with <ib>E-1</b>, and the temp set to 60 degrees. Substitute as necessary for your normal printing bed temperature. Once again save to EEPROM afterwards with:</p>
|
||||
<pre>M500</pre>
|
||||
<p>It may be preferable to have the printer as close to printing conditions as possible during these tuning prodecures. That means having filament loaded and the part cooling fan on for PLA temperatures.</p>
|
||||
<p>It may be preferable to have the printer as close to printing conditions as possible during these tuning procedures. That means having filament loaded and the part cooling fan on for PLA temperatures.</p>
|
||||
</div>
|
||||
|
||||
<div id="baseline">
|
||||
@ -143,7 +143,7 @@
|
||||
<label>Hot end temperature (deg C): <input type="number" name="hotendtemp" value="200" min="160" max="450"></label>
|
||||
<label>Bed temperature (deg C): <input type="number" name="bedtemp" value="60" min="5" max="150"></label><br />
|
||||
<h4>Part Cooling Fan</h4>
|
||||
<p>Printing with PLA typically has the part cooling fan come on from layer 2. Alter this default bahaviour here:</p>
|
||||
<p>Printing with PLA typically has the part cooling fan come on from layer 2. Alter this default behaviour here:</p>
|
||||
<label for="pc">Select part cooling fan behaviour:</label>
|
||||
<select name="pc">
|
||||
<option value="0">100% fan from layer 2</option>
|
||||
@ -200,7 +200,7 @@
|
||||
<p><a href="https://marlinfw.org/docs/gcode/G000-G001.html" target="_blank">G1</a> sends a move command to the printer, in this case asking the extruder to advance 100mm at a speed of 100mm/sec.</p>
|
||||
<p>The filament will then slowly go through the extruder and hot end. Once the extrusion finishes, we measure the distance between the mark and the entry to the extruder.</p>
|
||||
<img src="img/mark2.jpg" />
|
||||
<p>Ideally, 20mm remains, which means exactly 100mm was extruded. If your distance is anything other that this, complete the form below to calculate the correct E-steps:</p>
|
||||
<p>Ideally, 20mm remains, which means exactly 100mm was extruded. If your distance is anything other than this, complete the form below to calculate the correct E-steps:</p>
|
||||
<form name="estepsForm" onsubmit="return false;">
|
||||
<p><label>Previous E-steps as reported by M92: <input type="number" name="oldSteps" value="93" step="0.01"></label></p>
|
||||
<p><label>Measurement between extruder entry and mark on filament (mm): <input type="number" name="remainingFil" value="20" step="0.01"></label></p>
|
||||
@ -214,7 +214,7 @@
|
||||
<p>You may wish to repeat this test with the new E-steps value to verify.</p>
|
||||
</div>
|
||||
</form>
|
||||
<p>Although starting a new print or power cycling will achieve this, it may be safer to put the printer back into absolute position mode after completing this calinration by sending:</p>
|
||||
<p>Although starting a new print or power cycling will achieve this, it may be safer to put the printer back into absolute position mode after completing this calibration by sending:</p>
|
||||
<pre>G90</pre>
|
||||
</div>
|
||||
|
||||
@ -226,9 +226,9 @@
|
||||
<h5>When required:</h5>
|
||||
<p>Base calibration, as well as any time there has been a change to the extruder/hot end.</p>
|
||||
<h5>Tools:</h5>
|
||||
<p>Your favourite slicer. Accurate vernier calipers (two decimal places is much more prefferable to a set with only one).</p>
|
||||
<p>Your favourite slicer. Accurate vernier callipers (two decimal places is much more preferable to a set with only one).</p>
|
||||
</div>
|
||||
<p>Our E-steps are now correct in the firmware, so we will move on to calibrating the slicer. Each slicer has a setting to control the overall amount of filament extruded by the printer. If the flow rate is increased, more filament will be extruded. If the flow rate is descreased, less filament will be extruded.</p>
|
||||
<p>Our E-steps are now correct in the firmware, so we will move on to calibrating the slicer. Each slicer has a setting to control the overall amount of filament extruded by the printer. If the flow rate is increased, more filament will be extruded. If the flow rate is decreased, less filament will be extruded.</p>
|
||||
<p>In Simplify3D and PrusaSlicer, this is called <b>Extrusion Multiplier</b>. Cura calls it <b>Flow</b>.</p>
|
||||
<p>My method of determining the correct flow rate is to print a hollow, single wall cube with a specified wall thickness, then measure the actual thickness of the wall and adjust the flow rate in the slicer to suit.</p>
|
||||
<p>Unfortunately, I can't provide pre-sliced gcode for this process. It is vital to use gcode generated by <i>YOUR</i> slicer. Setting up your slicer to print the cube in the right way should be simple by following these steps:</p>
|
||||
@ -289,7 +289,7 @@
|
||||
</table>
|
||||
<p>Now slice and print!</p>
|
||||
<h2>Interpreting Results:</h2>
|
||||
<p>Use vernier calipers to measure the outer wall thickness of the hollow cube. Take measurements in multiple places/sides and average them.</p>
|
||||
<p>Use vernier callipers to measure the outer wall thickness of the hollow cube. Take measurements in multiple places/sides and average them.</p>
|
||||
<a href="#" data-featherlight="img/measurecube.jpg"><img class="thumb" src="img/measurecube.jpg" /></a>
|
||||
<p>If your measurement is <i>significantly</i> off, the following calculator can then be used to calculate the new flow rate:</p>
|
||||
<table>
|
||||
@ -342,7 +342,7 @@
|
||||
<h5>Aim:</h5>
|
||||
<p>To set the correct amount of current supplied to the stepper motors of the printer. This is set with the stepper motor drivers, located on the mainboard.</p>
|
||||
<h5>When required:</h5>
|
||||
<p>If steps are being skipped/missed. If the stepper motors are too hot to touch. When significant changes are made to the motion system (eg. heavier bed, conversion to direct drive from bowden tube).</p>
|
||||
<p>If steps are being skipped/missed. If the stepper motors are too hot to touch. When significant changes are made to the motion system (e.g. heavier bed, conversion to direct drive from bowden tube).</p>
|
||||
<p>If your 3D printer is running fine without hot stepper motors, you may skip this step.</p>
|
||||
<h5>Tools:</h5>
|
||||
<p>For newer, 'smart' stepper motor drivers: terminal software such as <a href="https://www.pronterface.com/" target="_blank">Pronterface</a> or <a href="https://octoprint.org/" target="_blank">Octoprint</a>.</p>
|
||||
@ -358,11 +358,11 @@
|
||||
</div>
|
||||
<p>Unfortunately, sometimes a stepper motor may be running hot and still missing steps. The following may apply in these cases:</p>
|
||||
<ul>
|
||||
<li>In the case of the extruder stepper motor, there may be an obstruction such as a partially blocked nozzle, PTFE tube unseated, hot end temprature too low (increased resistance to melting/flow) and/or first layer too close (nozzle jammed against bed, no where for plastic to exit).</li>
|
||||
<li>For X, Y and Z, the stepper motor may be undersized for the mass it is pushing. This can occur when increasing the size of the printer (eg. Ender Extender kit), adding something heavier to the bed (eg. glass/mirror plate), and/or converting from bowden tube to a heavy direct drive extruder.</li>
|
||||
<li>In the case of the extruder stepper motor, there may be an obstruction such as a partially blocked nozzle, PTFE tube unseated, hot end temperature too low (increased resistance to melting/flow) and/or first layer too close (nozzle jammed against bed, nowhere for plastic to exit).</li>
|
||||
<li>For X, Y and Z, the stepper motor may be undersized for the mass it is pushing. This can occur when increasing the size of the printer (e.g. Ender Extender kit), adding something heavier to the bed (e.g. glass/mirror plate), and/or converting from bowden tube to a heavy direct drive extruder.</li>
|
||||
<li>If there is some sort of mechanical misalignment that makes movement a lot harder. This may be a V-roller that is far too tight or a misaligned Z axis leadscrew causing the Z axis to bind.</li>
|
||||
<li>The acceleration/jerk and printing speeds are too aggressive for the stepper motors.</li>
|
||||
<li>Each stepper motor driver has a rated current, if this is too high it will run very hot and potentially cause missed steps. Active cooling can help this but the current should still be still within the safe specifications for that driver.</li>
|
||||
<li>Each stepper motor driver has a rated current, if this is too high it will run very hot and potentially cause missed steps. Active cooling can help this, but the current should still be still within the safe specifications for that driver.</li>
|
||||
</ul>
|
||||
<p>If tuning the stepper driver current is unable to find a sweet spot, the good news is you can upgrade to a larger stepper motor easily in most cases. Nema17 steppers have the same mounting pattern and output shaft diameter, however you should still check your machine to ensure there is enough room for a longer stepper before any purchase. With all else being equal, a longer stepper motor will be capable of more torque and handling higher current.</p>
|
||||
|
||||
@ -376,7 +376,7 @@
|
||||
</div>
|
||||
<h2>Peak Current and Sense Resistor Value</h2>
|
||||
<p>Setting stepper driver current accurately relies on knowing two values: the peak current that the stepper motor is rated for and the sense resistor value on the stepper motor driver.</p>
|
||||
<p>For newer TMC drivers, the sense resistor value is already known. For older drivers, methods for determining this are seen in the following snippet. Methods for determing the stepper motor peak current are shown too:</p>
|
||||
<p>For newer TMC drivers, the sense resistor value is already known. For older drivers, methods for determining this are seen in the following snippet. Methods for determining the stepper motor peak current are shown too:</p>
|
||||
<iframe width="480" height="360" src="https://www.youtube.com/embed/H41hIXdB6js?start=307&end=359" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
<h2>1. Physical</h2>
|
||||
<p>I have covered this in detail before, so please use the embedded video below (queued to the correct time) to see how to set the VREF. The process is essentially the same for any driver.</p>
|
||||
@ -387,10 +387,10 @@
|
||||
<li>Set multimeter to DC voltage, max 2V range.</li>
|
||||
<li>Connect black/negative multimeter probe to ground. This can be a negative terminal or the top of the USB connector.</li>
|
||||
<li>Connect the red/positive probe to the trim pot on top of the driver to measure VREF.</li>
|
||||
<li>Turn the trim pot <i>SLOWLY</i> with a screw driver, then remeasure.</li>
|
||||
<li>Turn the trim pot <i>SLOWLY</i> with a screwdriver, then remeasure.</li>
|
||||
<li>Repeat for each stepper motor driver.</li>
|
||||
</ol>
|
||||
<p>Alternatively, you can use an aligator clip wire between the red probe and the metal shaft of the screwdriver, so that a VREF reading is available as you turn the screwdriver. This procedure is shown in this snippet:</p>
|
||||
<p>Alternatively, you can use an alligator clip wire between the red probe and the metal shaft of the screwdriver, so that a VREF reading is available as you turn the screwdriver. This procedure is shown in this snippet:</p>
|
||||
<iframe width="480" height="360" src="https://www.youtube.com/embed/H41hIXdB6js?start=389&end=438" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
<p>The VREF formulas for drivers I have tested are as follows:</p>
|
||||
<h4>A4988</h4>
|
||||
@ -411,7 +411,7 @@
|
||||
<p>The process is then the same as for A4988s as shown in the video above.</p>
|
||||
<h4>LV8729</h4>
|
||||
<p>There are mainly two kinds of stepper driver boards with this driver.</p>
|
||||
<p>One has a resistor labeled R100 on the bottom, and on the other the resistor is labeled R220. Which formula you use is based off of this resistor</p>
|
||||
<p>One has a resistor labelled R100 on the bottom, and on the other the resistor is labelled R220. Which formula you use is based off of this resistor</p>
|
||||
<p>The process is then mostly the same as for A4988s as shown in the video above, but with the correct formula for your driver board.</p>
|
||||
<p>R100:</p>
|
||||
<pre>VREF = max current / 2</pre>
|
||||
@ -449,7 +449,7 @@
|
||||
<h5>Tools:</h5>
|
||||
<p>Gcode generator on this page.</p>
|
||||
</div>
|
||||
<p>FDM works by melting plastic filament and extruding it accurately one layer at a time to build up 3D geometry. By its nature, the plastic will continue to ooze and drip out of the nozzle even when not pushed by the extruder. To combat this, our slicers use retraction, where the filament is withdrawn from the hot end, aleviating pressure and minimising ooze. When properly tuned, this has the effect of removing stringing, the unwanted oozing of plastic between two points of the model.</p>
|
||||
<p>FDM works by melting plastic filament and extruding it accurately one layer at a time to build up 3D geometry. By its nature, the plastic will continue to ooze and drip out of the nozzle even when not pushed by the extruder. To combat this, our slicers use retraction, where the filament is withdrawn from the hot end, alleviating pressure and minimising ooze. When properly tuned, this has the effect of removing stringing, the unwanted oozing of plastic between two points of the model.</p>
|
||||
<p>An example of fine stringing can be seen in the following image. It appears like cobwebs:</p>
|
||||
<a href="#" data-featherlight="img/stringing.jpg"><img class="thumb" src="img/stringing.jpg" /></a>
|
||||
<div class="exp">
|
||||
@ -480,7 +480,7 @@
|
||||
<td>Printer settings > Extruder 1 > Retraction > Retraction Speed</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Extra restart distance: The retraction distance will be reveresed when the travel (non-extruding) movement is over. This is typicaly zero, but you can opt for extra filament to be extruded (a positive value) or less than than what was retracted (a negative value). Also measured in mm.</td>
|
||||
<td>Extra restart distance: The retraction distance will be reversed when the travel (non-extruding) movement is over. This is typically zero, but you can opt for extra filament to be extruded (a positive value) or less than what was retracted (a negative value). Also measured in mm.</td>
|
||||
<td>Travel > Retraction extra prime amount</td>
|
||||
<td>Extruder > Extra restart distance</td>
|
||||
<td>Printer settings > Extruder 1 > Retraction > Extra length on restart</td>
|
||||
@ -497,7 +497,7 @@
|
||||
<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>
|
||||
</ul>
|
||||
</div>
|
||||
<p>The following form will create a retraction tower to conveniently test back to back parameters in the same print. Of the three available parameters, it is best to change only one per test print. For example, keep the retraction speed and exta restart distance the same, but vary the retraction distance over each segment. Changing more than one parameter makes is hard to tell what made the difference. The print is quick, so repeat the test varying other parameters until you are happy with them all.</p>
|
||||
<p>The following form will create a retraction tower to conveniently test back to back parameters in the same print. Of the three available parameters, it is best to change only one per test print. For example, keep the retraction speed and extra restart distance the same, but vary the retraction distance over each segment. Changing more than one parameter makes is hard to tell what made the difference. The print is quick, so repeat the test varying other parameters until you are happy with them all.</p>
|
||||
<p>Here is the STL if you would like to slice a similar test yourself: <a href="files/retractiontest.stl">retractiontest.stl</a></p>
|
||||
<form name="retractionForm" id="retractionForm" onsubmit="return false;">
|
||||
<h4>Bed dimensions</h4>
|
||||
@ -510,7 +510,7 @@
|
||||
<label>Hot end temperature (deg C): <input type="number" name="hotendtemp" value="200" min="160" max="450"></label>
|
||||
<label>Bed temperature (deg C): <input type="number" name="bedtemp" value="60" min="5" max="150"></label><br />
|
||||
<h4>Part Cooling Fan</h4>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter this default bahaviour here:</p>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter this default behaviour here:</p>
|
||||
<label for="pc">Select part cooling fan behaviour:</label>
|
||||
<select name="pc">
|
||||
<option value="0">100% fan from layer 2</option>
|
||||
@ -528,7 +528,7 @@
|
||||
<option value="5">Unified Bed Leveling - Load Saved Mesh then 3 Probe Tilt </option>
|
||||
</select>
|
||||
<h4>Retraction</h4>
|
||||
<p>For intial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. Vary either side of this for each segment.</p>
|
||||
<p>For initial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. Vary either side of this for each segment.</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
@ -584,7 +584,7 @@
|
||||
<p><input type="button" onclick="processRetraction()" value="Download Gcode"></p>
|
||||
</form>
|
||||
<h2>Interpreting Results:</h2>
|
||||
<p>Inspect your finished print. Hopefully there will be a clear difference between the segments that reflect the settings you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), the retraction distance varied from 0.4 up to 1.4mm in 0.2mm increments. Segments A and B have the least stringing. Based on this, I would assume that a retraction distance of 0.4 - 0.6 is best for this printer. this is consistant with linear advance being enabled.</p>
|
||||
<p>Inspect your finished print. Hopefully, there will be a clear difference between the segments that reflect the settings you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), the retraction distance varied from 0.4 up to 1.4mm in 0.2mm increments. Segments A and B have the least stringing. Based on this, I would assume that a retraction distance of 0.4 - 0.6 is best for this printer. this is consistent with linear advance being enabled.</p>
|
||||
<p>I would then repeat the test, setting the same retraction distance for each segment and instead altering the retraction speed to dial that in. A third test could then take place to test extra restart distance.</p>
|
||||
<a href="#" data-featherlight="img/retractionresults.jpg"><img class="thumb" src="img/retractionresults.jpg" /></a>
|
||||
</div>
|
||||
@ -620,7 +620,7 @@
|
||||
<p>For the bed, typical PLA temperature is 60, PETG 80, ABS 100, and TPU 5 (effectively off).</p>
|
||||
<label>Bed temperature (deg C): <input type="number" name="bedtemp" value="60" min="5" max="150"></label><br />
|
||||
<h4>Part Cooling Fan</h4>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter this default bahaviour here:</p>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter this default behaviour here:</p>
|
||||
<label for="pc">Select part cooling fan behaviour:</label>
|
||||
<select name="pc">
|
||||
<option value="0">100% fan from layer 2</option>
|
||||
@ -638,7 +638,7 @@
|
||||
<option value="5">Unified Bed Leveling - Load Saved Mesh then 3 Probe Tilt </option>
|
||||
</select>
|
||||
<h4>Retraction</h4>
|
||||
<p>For intial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. If you are following this guide in order, you should already know your ideal retraction values.</p>
|
||||
<p>For initial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. If you are following this guide in order, you should already know your ideal retraction values.</p>
|
||||
<label>Retraction distance (mm): <input type="number" name="retdist" value="5" min="0" max="20"></label>
|
||||
<label>Retraction speed (mm/sec): <input type="number" name="retspeed" value="40" min="5" max="150"></label><br />
|
||||
<h4>Hot end temperature</h4>
|
||||
@ -680,10 +680,10 @@
|
||||
<p><input type="button" onclick="processTemperature()" value="Download Gcode"></p>
|
||||
</form>
|
||||
<h2>Interpreting Results:</h2>
|
||||
<p>Inspect your finished print. Hopefully there will be a clear difference between the segments that reflect the temperatures you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), the hot end temperature varied from 185 to 225 in 10 degree increments"</p>
|
||||
<p>Inspect your finished print. Hopefully, there will be a clear difference between the segments that reflect the temperatures you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), the hot end temperature varied from 185 to 225 in 10 degree increments"</p>
|
||||
<a href="#" data-featherlight="img/temperatureresults.jpg"><img class="thumb" src="img/temperatureresults.jpg" /></a>
|
||||
<p>For the first layer, there was some extruder clicking as the extruder struggled to push the filament through the cooler nozzle. As expected, surface becomes more glossy as the temperature increases. What was unexpected, was surface rippling either being more prominent or at least more obvious as the temperature went up. Underhangs and bridges all look good on this test.</p>
|
||||
<p>My previous hot end temperature was 200 degrees for this printer, but I will consider lowring it to 190 degrees after this test.</p>
|
||||
<p>My previous hot end temperature was 200 degrees for this printer, but I will consider lowering it to 190 degrees after this test.</p>
|
||||
<p>You may also wish to conduct some destructive testing to evaluate part strength. In many cases this is more important than the appearance of the part.</p>
|
||||
</div>
|
||||
|
||||
@ -693,33 +693,33 @@
|
||||
<h5>Aim:</h5>
|
||||
<p>To find the right compromise between printing speed and quality, specifically related to surface artefacts such as ghosting.</p>
|
||||
<h5>When required:</h5>
|
||||
<p>Initial calibration, when significant changes are made to the motion system (eg. heavier bed, conversion to direct drive from bowden tube).</p>
|
||||
<p>Initial calibration, when significant changes are made to the motion system (e.g. heavier bed, conversion to direct drive from bowden tube).</p>
|
||||
<h5>Tools:</h5>
|
||||
<p>Terminal software such as <a href="https://www.pronterface.com/" target="_blank">Pronterface</a> or <a href="https://octoprint.org/" target="_blank">Octoprint</a>.</p>
|
||||
<p>Gcode generator on this page.</p>
|
||||
</div>
|
||||
<p>We set a feedrate or movement speed in our slicer, but the printer does not instantly reach these speeds. Like a motor vehicle, it needs time to accelerate. If the distance of the movement is short, it may not even have time to reach the specified speed. This can determined with the handy <a href="https://blog.prusaprinters.org/calculator/" target="_blank">acceleration calculator</a>, available on the Prusa website.</p>
|
||||
<p>Complementary to acceleration we have jerk, replaced by junction deviation in newer versions of Marlin. These settings have differences, but both are essentially reponsible for making sure the printer does not come to a complete stop between each movement, but rather decelerates an appropriate amount deending on the angle of the next 'corner'.</p>
|
||||
<p>Complementary to acceleration we have jerk, replaced by junction deviation in newer versions of Marlin. These settings have differences, but both are essentially responsible for making sure the printer does not come to a complete stop between each movement, but rather decelerates an appropriate amount depending on the angle of the next 'corner'.</p>
|
||||
<p>We will be tuning both of these parameters with another tower. The aim is to have a reasonably fast print time without inducing excessive ringing/ghosting. An example of bad ghosting is seen below. The features of the model are repeated across the surfaces due to vibration of the printer components:</p>
|
||||
<a href="#" data-featherlight="img/ghosting.jpg"><img class="thumb" src="img/ghosting.jpg" /></a>
|
||||
<p>I have previously made a detailed video guide on this subject, complete with many diagrams explaining the concepts. The tuning process depicted will be improved upon here with an easier to use calculator and custom gcode generator below.</p>
|
||||
<iframe width="480" height="360" src="https://www.youtube.com/embed/Mnvj6xCzikM" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
<div class="exp">
|
||||
<h5>Rule of thumb:</h5>
|
||||
<p>Higher acceleration and jerk wil result in a faster print time, as the printer reaches top speed faster and maintains a higher speed when corning. This is harder on the printer, and may result in reduced lifespan of components and the need for more regular maintenance. It also introduces more surface defects such as ringing/ghosting.</p>
|
||||
<p>Higher acceleration and jerk will result in a faster print time, as the printer reaches top speed faster and maintains a higher speed when corning. This is harder on the printer, and may result in reduced lifespan of components and the need for more regular maintenance. It also introduces more surface defects such as ringing/ghosting.</p>
|
||||
<p>Lower acceleration and jerk will result in a slower print time, as the printer reaches top speed more gradually and corners at a lower velocity. This is easier on the printer, with potentially increased component lifespan and less need for regular maintenance. It reduces surface artefacts such as ringing/ghosting, unless it is far too conservative, in which case it may introduce bulging in corners.</p>
|
||||
</div>
|
||||
<h2>Calculating maxmimum feedrate - optional</h2>
|
||||
<p>One strategy is to calculate the fastest your 3D printer can move while while extruding cleanly, set this feedrate in the slicer, and then tune acceleration to meet this speed. If you are not interested in printing as fast as possible, skip to the next section.</p>
|
||||
<h2>Calculating maximum feedrate - optional</h2>
|
||||
<p>One strategy is to calculate the fastest your 3D printer can move while extruding cleanly, set this feedrate in the slicer, and then tune acceleration to meet this speed. If you are not interested in printing as fast as possible, skip to the next section.</p>
|
||||
<p><i>This part of the guide and calculator is adapted from <a href="https://grabcad.com/tutorials/dialing-in-a-filament-and-specifying-the-max-volumetric-e-xtrusion-value"target="_blank">Martin Pirringer's tutorial</a>. Please consider supporting him and his robotics team through <a href="paypal.me/DudeWithaPulse" target="_blank">paypal</a> or you can also donate to team 1989 through their <a href="www.vernonrobotics.com" target="_blank">Team 1989 Web Site</a></i></p>
|
||||
<p>The following calculator will assist you in determing the maximum feedrate your printer/extruder/hot end is capable of.</p>
|
||||
<p>The following calculator will assist you in determining the maximum feedrate your printer/extruder/hot end is capable of.</p>
|
||||
<form id="maxExtrusion" name="maxExtrusion">
|
||||
<ol>
|
||||
<li>Clear debris from hobbed gear, bring nozzle up to normal printing temp and load filament.</li>
|
||||
<li>Enter the following into pronterface. This will set movement to relative and then extrude 50mm of filament at a feedrate of 2mm/sec:</li>
|
||||
<pre>G91</pre>
|
||||
<pre>G1 E50 F120</pre>
|
||||
<li>Inspect extuded filament for consistency. If all is well, keep repeating with higher feedrate F, until extrusion is inconsistent, extruder stepper skips steps and/or hobbed gear starts eating into filament.<br />
|
||||
<li>Inspect extruded filament for consistency. If all is well, keep repeating with higher feedrate F, until extrusion is inconsistent, extruder stepper skips steps and/or hobbed gear starts eating into filament.<br />
|
||||
The following are examples of increasing the extruder feed rate by 1mm/sec each time, although you should stop when the extrusion becomes problematic. You may have more or less steps than this:</li>
|
||||
<pre>G1 E50 F180</pre>
|
||||
<pre>G1 E50 F240</pre>
|
||||
@ -766,11 +766,11 @@
|
||||
<p>The only thing you need to know before this test is whether your firmware is set up for jerk (older) or junction deviation (newer). Entering <b>M503</b> via terminal will give a list of printer variables:</p>
|
||||
<ul>
|
||||
<li>If the <b>M205</b> line contains the letters <b>X, Y & Z</b>, your printer is running jerk. The numbers after the X,Y & Z are your current jerk values for each axis.</li>
|
||||
<li>If the <b>M205</b> contains the letter <b>J</b>, your printer is running junction deviation. The number after the J is your current junction devation value.</li>
|
||||
<li>If the <b>M205</b> contains the letter <b>J</b>, your printer is running junction deviation. The number after the J is your current junction deviation value.</li>
|
||||
</ul>
|
||||
<p>The image below shows an example of each of these scenarios:</p>
|
||||
<a href="#" data-featherlight="img/m205.jpg"><img class="thumb" src="img/m205.jpg" /></a>
|
||||
<p>Use the following form to customise the gcode to you liking:</p>
|
||||
<p>Use the following form to customise the gcode to your liking:</p>
|
||||
<form name="accelerationForm" id="accelerationForm" onsubmit="return false;">
|
||||
<h4>Bed dimensions</h4>
|
||||
<p>Inputting the correct number will attempt to move the print into the centre of the bed. If the centre button is checked, the bed size is irrelevant. Please check the gcode to ensure it will fit on your bed.</p>
|
||||
@ -782,7 +782,7 @@
|
||||
<label>Hot end temperature (deg C): <input type="number" name="hotendtemp" value="200" min="160" max="450"></label>
|
||||
<label>Bed temperature (deg C): <input type="number" name="bedtemp" value="60" min="5" max="150"></label><br />
|
||||
<h4>Part Cooling Fan</h4>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter thi default bahaviour here:</p>
|
||||
<p>PLA typically has the part cooling fan come on from layer 2. Alter the default behaviour here:</p>
|
||||
<label for="pc">Select part cooling fan behaviour:</label>
|
||||
<select name="pc">
|
||||
<option value="0">100% fan from layer 2</option>
|
||||
@ -800,7 +800,7 @@
|
||||
<option value="5">Unified Bed Leveling - Load Saved Mesh then 3 Probe Tilt </option>
|
||||
</select>
|
||||
<h4>Retraction</h4>
|
||||
<p>For intial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. If you are following this guide in order, you should already know your ideal retraction values.</p>
|
||||
<p>For initial tests, you can leave the retraction speed at 40 mm/sec. For a bowden tube printer, 6mm is a likely retraction distance. For direct drive, a starting value of 1mm may be suitable. If you are following this guide in order, you should already know your ideal retraction values.</p>
|
||||
<label>Retraction distance (mm): <input type="number" name="retdist" value="5" min="0" max="20"></label>
|
||||
<label>Retraction speed (mm/sec): <input type="number" name="retspeed" value="40" min="5" max="150"></label><br />
|
||||
<h4>Base feedrate/speed</h4>
|
||||
@ -811,7 +811,7 @@
|
||||
<label>Jerk: <input type="radio" value="jerk" name="selector" checked="checked" onchange="toggleJ()"></label>
|
||||
<label>Junction deviation: <input type="radio" value="jd" name="selector" onchange="toggleJ()"></label>
|
||||
<p>Based on the values you saw from <b>M503</b>, enter variables around this below.</p>
|
||||
<p>Junction deviation requires a single value, where as jerk has separate values for X and Y. You can leave them the same or enter independent values.</p>
|
||||
<p>Junction deviation requires a single value, whereas jerk has separate values for X and Y. You can leave them the same or enter independent values.</p>
|
||||
<p>You should only change either acceleration or jerk/junction deviation for each test print, otherwise it will be impossible to know which parameter is responsible for any changes.</p>
|
||||
<table>
|
||||
<thead>
|
||||
@ -873,10 +873,10 @@
|
||||
<p><input type="button" onclick="processAcceleration()" value="Download Gcode"></p>
|
||||
</form>
|
||||
<h2>Interpreting Results:</h2>
|
||||
<p>Inspect your finished print. Hopefully there will be a clear difference between the segments that reflect the acceleration values you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), acceleration varied from 300 to 800 in 100 mm/sec/sec increments. Junction deviation was left at the default 0.08. The difference between each segment is subtle, but there is increased ghosting around the letter Y on the higher segments. The previous value was 500, but a small increase in quality may be achieved from lowering the value to 400.</p>
|
||||
<p>Inspect your finished print. Hopefully, there will be a clear difference between the segments that reflect the acceleration values you entered. In the example below (Ender 3 direct drive, PLA, linear advance enabled), acceleration varied from 300 to 800 in 100 mm/sec/sec increments. Junction deviation was left at the default 0.08. The difference between each segment is subtle, but there is increased ghosting around the letter Y on the higher segments. The previous value was 500, but a small increase in quality may be achieved from lowering the value to 400.</p>
|
||||
<a href="#" data-featherlight="img/accelerationresults.jpg"><img class="thumb" src="img/accelerationresults.jpg" /></a>
|
||||
<p></p>
|
||||
<p>One you have a value you are happy with, you can update with:</p>
|
||||
<p>Once you have a value you are happy with, you can update with:</p>
|
||||
<pre>M204 P400</pre>
|
||||
<p>where <b>400</b> is the value of the acceleration with the best compromise based on the tower test print. We can store the value to EEPROM by sending:</p>
|
||||
<pre>M500</pre>
|
||||
@ -894,13 +894,13 @@
|
||||
<div class="exp">
|
||||
<h2>Linear Advance Tuning</h2>
|
||||
<h5>Aim:</h5>
|
||||
<p>To tune the timing of the extrusion with the aim of reducing swolen corners and thinner walls. This results in a more consistent extrusion and a reduction in surface artefacts.</p>
|
||||
<p>To tune the timing of the extrusion with the aim of reducing swollen corners and thinner walls. This results in a more consistent extrusion and a reduction in surface artefacts.</p>
|
||||
<h5>When required:</h5>
|
||||
<p>Initial calibration, when changing the extruder/hot end (especially if changing from bowden tube to direct drive), when trying new filaments.</p>
|
||||
<h5>Tools:</h5>
|
||||
<p><a href="https://marlinfw.org/tools/lin_advance/k-factor.html" target="_blank">Marlin Linear Advance Pattern Generator</a></p>
|
||||
</div>
|
||||
<p>In a 3D printer, due to the pressure required to push the molten filament through the small opening of the nozzle, there is a small time delay from when the extruder pushes the filament to when it actually comes out the nozzle. Traditionally the movement of the extruder is matched to XY movements of the printer, so this means the start of a line will be undedextruded and the end of the line will be overextruded. Linear advance unsynchronises the extruder movements from the XY movements, changing the timing of the extruder so the thin and thick sections are significantly reduced.</p>
|
||||
<p>In a 3D printer, due to the pressure required to push the molten filament through the small opening of the nozzle, there is a small time delay from when the extruder pushes the filament to when it actually comes out the nozzle. Traditionally the movement of the extruder is matched to XY movements of the printer, so this means the start of a line will be under-extruded and the end of the line will be over-extruded. Linear advance unsynchronises the extruder movements from the XY movements, changing the timing of the extruder so the thin and thick sections are significantly reduced.</p>
|
||||
<p>The concept and how to tune linear advance is explained in much more detail here:</p>
|
||||
<iframe width="480" height="360" src="https://www.youtube.com/embed/n3yK0lJ8TWM" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
<div class="exp">
|
||||
@ -916,7 +916,7 @@
|
||||
<h2>Linear Advance Pattern Generator</h2>
|
||||
<p>Marlin has excellent <a href="https://marlinfw.org/docs/features/lin_advance.html" target="_blank">linear advance documentation</a> and a test gcode generator already made, so there is no point recreating a competitor here. An example of how to use it is shown in the video above, and it can be found here: <a href="https://marlinfw.org/tools/lin_advance/k-factor.html" target="_blank">Marlin Linear Advance Pattern Generator</a></p>
|
||||
<p>The parameter we tune for linear advance is called the <b>K factor</b>. The K factor relates to the amount of flex or compression in the filament and the length of the path between the extruder and hot end.</p>
|
||||
<p>A higher K value suits a bowden tube and/or flexible filaments. This is because the filament can flex sideways in the tube inbetween the extruder and hot end, adding to the extrusion time delay. A good starting point for a bowden extruder is a K value of <b>1.0</b>.</p>
|
||||
<p>A higher K value suits a bowden tube and/or flexible filaments. This is because the filament can flex sideways in the tube in between the extruder and hot end, adding to the extrusion time delay. A good starting point for a bowden extruder is a K value of <b>1.0</b>.</p>
|
||||
<p>A lower K value suits a direct drive extruder and more rigid filaments. With these characteristics, the transfer of filament between extruder and hot end is more direct with less time delay. A good starting point for a direct drive extruder is <b>0.2</b>.</p>
|
||||
<p>The above video takes you through how to use the pattern generator, which basically involves inputting printer and slicer parameters, before clicking to download the gcode file.</p>
|
||||
<p>Using the suggested starting K values above, you would then pick an upper and lower limit either side of this for a preliminary test.</p>
|
||||
@ -926,13 +926,13 @@
|
||||
<a href="#" data-featherlight="img/linearadvanceresults.jpg"><img class="thumb" src="img/linearadvanceresults.jpg" /></a>
|
||||
<p>Some of the horizontal lines should have obvious thick and thin portions, and some may even have large gaps. You are looking for the line with the most consistent extrusion width from left to right. The K value for this line will be printed to the right of the line. At this point, as shown in the video, you may wish to repeat the test with a narrower range of values either side of this best K value. This will help determine the best value by using a 'higher resolution'.</p>
|
||||
<h2>Saving the K Factor</h2>
|
||||
<p>With many of the parameters we have tuned so far, we can permanently save them to either the firmware and EEPROM. As the linear advance K factor is filament dependent, this may not be the best solution if you print with varied filaments, and instead you may prefer to save using your slicer profile. All methods are covered below.</p>
|
||||
<p>With many of the parameters we have tuned so far, we can permanently save them to either the firmware or EEPROM. As the linear advance K factor is filament dependent, this may not be the best solution if you print with varied filaments, and instead you may prefer to save using your slicer profile. All methods are covered below.</p>
|
||||
<p>The K factor can be set by using the <a href="https://marlinfw.org/docs/gcode/M900.html" target="_blank">M900</a> gcode:</p>
|
||||
<pre>M900 K0.11</pre>
|
||||
<p>It can be permanently stored EEPROM by following up with:</p>
|
||||
<pre>M500</pre>
|
||||
<p>Both the setting and saving of the K factor can also be achieved using the LCD menu.</p>
|
||||
<p>You may prefer to use the <b>M900</b> gcode command in your start gcode instead, particularly if your slicer supports different start gcodes for different materials. In the event that you use start gcode, unless an <b>M500</b> follows, the setting of the K factor will be temporary. When the printer is next restarted the value stored in the EEPROM will be restored. When new print starts the value given it its start gcode will oberwrite the previously set value.</p>
|
||||
<p>You may prefer to use the <b>M900</b> gcode command in your start gcode instead, particularly if your slicer supports different start gcodes for different materials. In the event that you use start gcode, unless an <b>M500</b> follows, the setting of the K factor will be temporary. When the printer is next restarted the value stored in the EEPROM will be restored. When new print starts the value given it its start gcode will overwrite the previously set value.</p>
|
||||
<p>Linear advance can be temporarily be disabled by setting the K factor to 0:</p>
|
||||
<pre>M900 K0</pre>
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user