skeinforge_tools.craft_plugins.oozebane ($Date: 2008/21/04 $)
index
/home/enrique/Desktop/backup/babbleold/script/reprap/pyRepRap/skeinforge_tools/craft_plugins/oozebane.py

Previous / Next / Contents


Oozebane is a script to turn off the extruder before the end of a thread and turn it on before the beginning.

The oozebane manual page is at:
http://www.bitsfrombytes.com/wiki/index.php?title=Skeinforge_Oozebane

After oozebane turns the extruder on, it slows the feed rate down where the thread starts. Then it speeds it up in steps so in theory the thread will remain at roughly the same thickness from the beginning.


Operation
Settings
  After Startup Distance
  Early Shutdown Distance
  Early Startup Maximum Distance
  Early Startup Distance Constant
  First Early Startup Distance
  Minimum Distance for Early Shutdown
  Minimum Distance for Early Startup
  Slowdown Startup Steps
Examples

Operation


The default 'Activate Oozebane' checkbox is on. When it is on, the functions described below will work, when it is off, the functions will not be called.

Settings


After Startup Distance

Default is 1.2.

When oozebane reaches the point where the extruder would of turned on, it slows down so that the thread will be thick at that point. Afterwards it speeds the extruder back up to operating speed. The speed up distance is the "After Startup Distance".

Early Shutdown Distance

Default is 1.2.

Defines the distance before the end of the thread that the extruder will be turned off. It is the most important oozebane setting. A higher distance means the extruder will turn off sooner and the end of the line will be thinner.

Early Startup Maximum Distance

Default is 1.2.

Defines the maximum distance before the thread starts that the extruder will be turned on

Early Startup Distance Constant

Default is twenty.

The longer the extruder has been off, the earlier the extruder will turn back on, the ratio is one minus one over e to the power of the distance the extruder has been off over the "Early Startup Distance Constant".

First Early Startup Distance

Default is twenty five.

Defines the distance before the first thread starts that the extruder will be turned off. This value should be high because, according to Marius, the extruder takes a second or two to extrude when starting for the first time.

Minimum Distance for Early Shutdown

Default is zero.

Defines the minimum distance that the extruder has to be off after the thread end for the early shutdown feature to activate.

Minimum Distance for Early Startup

Default is zero.

Defines the minimum distance that the extruder has to be off before the thread begins for the early start up feature to activate.

Slowdown Startup Steps

Default is three.

When oozebane turns the extruder off, it slows the feed rate down in steps so in theory the thread will remain at roughly the same thickness until the end. The "Slowdown Startup Steps" setting is the number of steps, the more steps the smaller the size of the step that the feed rate will be decreased and the larger the size of the resulting gcode file.

Examples


The following examples oozebane the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and oozebane.py.


> python oozebane.py
This brings up the oozebane dialog.


> python oozebane.py Screw Holder Bottom.stl
The oozebane tool is parsing the file:
Screw Holder Bottom.stl
..
The oozebane tool has created the file:
.. Screw Holder Bottom_oozebane.gcode


> python
Python 2.5.1 (r251:54863, Sep 22 2007, 01:43:31)
[GCC 4.2.1 (SUSE Linux)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import oozebane
>>> oozebane.main()
This brings up the oozebane dialog.


>>> oozebane.writeOutput( 'Screw Holder Bottom.stl' )
The oozebane tool is parsing the file:
Screw Holder Bottom.stl
..
The oozebane tool has created the file:
.. Screw Holder Bottom_oozebane.gcode


Previous / Next / Contents


 
Modules
       
__init__
skeinforge_tools.skeinforge_utilities.consecution
skeinforge_tools.skeinforge_utilities.euclidean
skeinforge_tools.skeinforge_utilities.gcodec
skeinforge_tools.skeinforge_utilities.interpret
math
skeinforge_tools.meta_plugins.polyfile
skeinforge_tools.profile
skeinforge_tools.skeinforge_utilities.settings
sys

 
Classes
       
OozebaneRepository
OozebaneSkein

 
class OozebaneRepository
    A class to handle the oozebane settings.
 
  Methods defined here:
__init__(self)
Set the default settings, execute title & settings fileName.
execute(self)
Oozebane button has been clicked.

 
class OozebaneSkein
    A class to oozebane a skein of extrusions.
 
  Methods defined here:
__init__(self)
addAfterStartupLine(self, splitLine)
Add the after startup lines.
addLineSetShutdowns(self, line)
Add a line and set the shutdown variables.
getActiveFeedRateRatio(self)
Get the feed rate of the first active move over the operating feed rate.
getAddAfterStartupLines(self, line)
Get and / or add after the startup lines.
getAddBeforeStartupLines(self, line)
Get and / or add before the startup lines.
getAddShutSlowDownLine(self, line)
Add the shutdown and slowdown lines.
getAddShutSlowDownLines(self, line)
Get and / or add the shutdown and slowdown lines.
getCraftedGcode(self, gcodeText, oozebaneRepository)
Parse gcode text and store the oozebane gcode.
getDistanceAfterThreadBeginning(self)
Get the distance after the beginning of the thread.
getDistanceToExtruderOffCommand(self, remainingDistance)
Get the distance to the word.
getDistanceToThreadBeginning(self)
Get the distance to the beginning of the thread.
getDistanceToThreadBeginningAfterThreadEnd(self, remainingDistance)
Get the distance to the thread beginning after the end of this thread.
getDistanceToThreadEnd(self)
Get the distance to the end of the thread.
getLinearMoveWithFeedRate(self, feedRate, location)
Get a linear move line with the feed rate.
getLinearMoveWithFeedRateSplitLine(self, feedRate, splitLine)
Get a linear move line with the feed rate and split line.
getOozebaneLine(self, line)
Get oozebaned gcode line.
getShutdownFlowRateMultiplier(self, along, numberOfDistances)
Get the shut down flow rate multipler.
getStartupFlowRateMultiplier(self, along, numberOfDistances)
Get the startup flow rate multipler.
isClose(self, location, otherLocation)
Determine if the location is close to the other location.
isCloseToEither(self, location, otherLocationFirst, otherLocationSecond)
Determine if the location is close to the other locations.
isDistanceAfterThreadBeginningGreater(self)
Determine if the distance after the thread beginning is greater than the step index after startup distance.
parseInitialization(self, oozebaneRepository)
Parse gcode initialization and store the parameters.
parseLine(self, line)
Parse a gcode line and add it to the bevel gcode.
setAfterStartupFlowRates(self, afterStartupRatio)
Set the after startup flow rates.
setEarlyShutdown(self)
Set the early shutdown variables.
setEarlyShutdownFlowRates(self, earlyShutdownRatio)
Set the extrusion width.
setEarlyStartupDistance(self, splitLine)
Set the early startup distance.
setExtrusionWidth(self, oozebaneRepository)
Set the extrusion width.

 
Functions
       
getCraftedText(fileName, text, oozebaneRepository=None)
Oozebane a gcode linear move file or text.
getCraftedTextFromText(gcodeText, oozebaneRepository=None)
Oozebane a gcode linear move text.
getNewRepository()
Get the repository constructor.
main()
Display the oozebane dialog.
writeOutput(fileName='')
Oozebane a gcode linear move file.

 
Data
        __author__ = 'Enrique Perez (perez_enrique@yahoo.com)'
__date__ = '$Date: 2008/21/04 $'
__license__ = 'GPL 3.0'
absolute_import = _Feature((2, 5, 0, 'alpha', 1), (2, 7, 0, 'alpha', 0), 16384)

 
Author
        Enrique Perez (perez_enrique@yahoo.com)