Jump to content
Ultimaker Community of 3D Printing Experts
  • Sign Up


Popular Content

Showing content with the highest reputation on 05/12/2019 in all areas

  1. 1 point
    When I began to work on PostProcessingPlugIns, it was a pain as there is no way to debug the script No message, even sometimes my plug in not appearing in the list. So I tried to install a standalone Python with debugger and work on it. This is what this post is about ... I Have windows 7 64 bit, Cura 4.0 and Python 3.7 with IDLE I build two configuration, one for the Cura script folder (for me in \AppData\Roaming\cura\4.0\scripts) and one in the script folder for Cura in Python (for me in \AppData\Local\Programs\Python\Python37-32\Scripts\Cura) The basic logic is I create a superClass MyScript derived from tje script class of Cura, in which I put all the stuff to manage the scrip, leaving only in the script the variables and settings definition, and the formulas working to modify the GCode It gives a feel & look for all the scripts, gives more information to the user in the GCode, and also manage the way to debug a script in Python To debug in Python, you have the same superclass, a DEBUG_SCRIPT script to prepare the GCode for debugging, a tKinter Window class to run the script in python, and a mini script class having only the functions necessary to do like the one in Cura (but only for debugging purpose) In the file below you'll find the two configuration you have only t extract them in the corresponding folders and then restart Cura and deiscover ... As PostProcessingplugIns you'll find 1 DEBUG_SCRIPT : to prepare the GCode for debugging a new script 2 Comment : a script only to add a comment a the begining of the Gcode (you can use it several times in one slicing process) 3 Remaining printing Time : to send to the printer LCD at each layer the time remaining up to the end 4 Lower Tiny holes printinting speed on 1st layer : to hav a better printing without filament dragging effect 5 LiftHead without annoying too large Z movement : to have a better quality for small layers Now look at this scenario : I insert all these scripts (number 1 to 8 to follow the result below), a few of them which will give an error that is handled Here are the resulting pieces of GCode 1) Start of GCode GCode during the 1st layer within a tiny Hole, speed reduced from 1800 to 600 end of a layer with information from several scripts Now if I want to debug a script on the resulting Gcode file i have a the end of the slicing in Cura to save it in the IDLE scripts for Cura folder. Then I go in Python's IDLE and run a script I want to debug It appears a window to select the GCode file Then the next window is to enter the settings for the script if I close the window, result in IDLE Or if I enter the correct params If there were errors the IDLE debugger will give you a lot of information to modify your script InCuraScriptFojder.zip InIDLEscriptFolderForCura.zip
  2. 1 point
    I think the problem (besides flowrate values) is due to the added technique of 3D printing. 1) look at the theorical movement in Cura : I sliced a 20mm cube with a cubic hole in xy plane of 10mm Below is the Gcode for the outside outer wall We see that the movement is correct the center of the nozzle(here 0.4mm) is 0.2 mm inside the square perimeter Now for the inside square hole Here also the movement is correct, 0.2 mm outside the square perimeter 2) Now what is maybe happening When you are printing a perimeter (either a square, a circle )you can look at the filament of 2 sides, the interior side of the perimeter, and the exterior one. Between the 2 sides there is a length difference the interior side is smaller (2PI x nozzleDiameter for a circle, for a square the diference is concentrated in the corners). So the plastic in excess will tend to move toward the inside. Furthemore, every change of direction will have a slight dragging effect on the filament toward the interior, adding to the former phenomenon (the higher the speed, the higher the drag) I think this explain the problem of the hole dimensions
This leaderboard is set to Amsterdam/GMT+02:00
  • Create New...