Tuesday, November 8, 2011

Smooth

Smooth

This plugin smooths jagged extruder paths. It takes shortcuts through jagged paths and decreases the feed rate to compensate.

Smooth is based on ideas in Nophead's frequency limit post:
http://hydraraptor.blogspot.com/2010/12/frequency-limit.html:

The main parameter is 'Maximum Shortening over Width', with a default of 1.2. It defines the maximum shortening of the shortcut compared to the original path. Smooth goes over the path and if the shortcut between the midpoint of one line and the midpoint of the second line after is not too short compared to the original and the shortcut is not too long, it replaces the jagged original with the shortcut. If the maximum shortening is too much, smooth will shorten paths which should not of been shortened and will leave blobs and holes in the model. If the maximum shortening is too little, even jagged paths that could be shortened safely won't be smoothed.


Bookend to Alteration

The Bookend plugin is being renamed Alteration. The old parameter values from Bookend should be read by Alteration.

Also, Alteration now removes the alteration prefix tokens from the alteration lines. Alteration lines now have a prefix token so they can go through the craft plugins without being modified. However, the tokens are not recognized by the firmware so they have to be removed before export. The alteration token is:
(<alterationDeleteThisPrefix/>)

Finally, the 'Replace Variable with Setting' option has been added, the default is on. This is based on code from Rob Gisehurt:
http://tinkerin.gs/

If Replace Variable with Setting is selected and there is an alteration line with a setting token, the token will be replaced by the value.

For example, if there is an alteration line like:
M140 S<setting.chamber.BedTemperature>

the token would be replaced with the value and assuming the bed chamber was 60.0, the output would be:
M140 S60.0


Carve and Inset Bridge change

The 'Infill in Direction of Bridge' option was moved from carve to inset. The old parameter values from carve should be read by inset.

Also the 'Bridge Width Multiplier', which was the default of 1.0 in every online settings list I could find, has been deleted. The only remaining bridge parameters and options are:

1) 'Infill in Direction of Bridge' in inset
2) 'Bridge Feed Rate Multiplier' in speed
3) 'Bridge Flow Rate Multiplier' in speed
4) 'Bridge Cool' in cool


Dimension

The 'Maximum E Value before Reset' with a default of 91234.0 was added to dimension.

It defines the maximum E value before it is reset with the 'G92 E0' command line. The reason it is reset only after the maximum E value is reached is because at least one firmware takes time to reset. The problem with waiting until the E value is high before resetting is that more characters are sent. So if your firmware takes a lot of time to reset, set this parameter to a high value, if it doesn't set this parameter to a low value or even zero.


Export

The 'Analyze Gcode' option has been added to export. It just adds an option for those using skeinforge as a command line application.

The default is on. When selected, the penultimate gcode will be sent to the analyze plugins to be analyzed and viewed.


Fill

The 'Surrounding Angle' in fill can now be changed, the default is 60 degrees.

It defines the angle that the surrounding layers around the infill are expanded.

To decide whether or not the infill should be sparse or solid, fill looks at the 'Solid Surface Thickness' surrounding layers above and below the infill. If any of the expanded layers above or below the infill do not cover the infill, then the infill will be solid in that region. The layers are expanded by the height difference times the tangent of the surrounding angle, which is from the vertical. For example, if the model is a wedge with a wall angle less than the Surrounding Angle, the interior layers (those which are not on the bottom or top) will be sparse. If the wall angle is greater than the Surrounding Angle, the interior layers will be solid.

The time required to examine the surrounding layers increases with the Surrounding Angle, so the Surrounding Angle is limited to eighty degrees, regardless of the input value.

If you have an organic shape with gently sloping surfaces; if the Surrounding Angle is set too high, then too many layers will be sparse. If the Surrounding Angle is too low, then too many layers will be solid and the extruder may end up plowing through previous layers:
http://hydraraptor.blogspot.com/2008/08/bearing-fruit.html


Fillet and Speed Multipliers

'Corner Feed Rate over Operating Feed Rate' in fillet has been changed to:
'Corner Feed Rate Multiplier'

'Perimeter Feed Rate over Operating Feed Rate' in speed has been changed to:
'Perimeter Feed Rate Multiplier'

'Perimeter Flow Rate over Operating Flow Rate' in speed has been changed to:
'Perimeter Flow Rate Multiplier'

The old parameter names will automatically be read into the new parameter names, you do not have to do anything. This section if just a heads up.


Question about Perimeter Width and Infill Width

I am planning on replacing 'Perimeter Width' and 'Infill Width' with 'Extrusion Width'. This is to simplify the skeinforge settings and code. The new Extrusion Width would be read from the old Perimeter Width. The Infill versus Perimeter difference would be accommodated with the Perimeter Feed Rate Multiplier in speed.

Originally, skeinforge used Extrusion width. Then someone asked for a way to change Perimeter Width and Infill Width independently, which was added. Then someone else asked for a way to change the Perimeter Feed Rate and Perimeter Flow Rate independently, and that was added also. However, once there was a way of changing Perimeter Feed Rate and Perimeter Flow Rate, there was no longer any need to set Infill Width independently, because the effective width could be changed by changing the feed rate. So Infill Width became redundant, which I just noticed recently.

Before making this change I'd just like to know; is there is a good reason why Infill Width should not be removed?


Raft and Speed, Object First Layer

All the 'Object First Layer..' feed rate and flow rate options have been moved from raft to speed. This was done to fix a flow rate bug. The old parameter values from raft should be read by speed, but it's a good idea to check that they were.


Skin

The number of divisions on the skinned surfaces can now be set.

====Horizontal Infill Divisions====
Default: 2

Defines the number of times the skinned infill is divided horizontally.

====Horizontal Perimeter Divisions====
Default: 1

Defines the number of times the skinned perimeters are divided horizontally.

====Vertical Divisions====
Default: 2

Defines the number of times the skinned infill and perimeters are divided vertically.


Download, Documentation and Forum

The stable skeinforge version is at:
http://fabmetheus.crsndoo.com/

The unstable skeinforge is on my website at:
http://members.axion.net/~enrique/reprap_python_beanshell.zip

The documentation is at:
http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge

The forum is at:
http://forums.reprap.org/list.php?154

Saturday, September 24, 2011

Skin

Skin

Skin is a script to smooth the surface skin of an object by replacing the perimeter surface with a surface printed at half the carve
height, and replacing the top infill with half width offset infill. It was made with help from James Blackwell.

Skin gives the impression that the object was carved at a much thinner height giving a high-quality finish, but still prints in a relatively short time. The latest process has some similarities with a description at:
http://adventuresin3-dprinting.blogspot.com/2011/05/skinning.html


Bookend / Preface

The start and end alterations files are now added by bookend, instead of preface. Bookend is called just before export which means that the start and end commands will no longer be modified by any of the other tools. If you are using start and end files, you will have to move their name settings from preface to bookend.


Clairvoyance

Clairvoyance is an analyze plugin to open the gcode file with an outside program.

If the 'Gcode Program' is set to webbrowser, the gcode file will be sent to the default browser to be opened. If the 'Gcode Program' is set to a program name, the gcode file will be sent to that program to be opened. A good gcode viewer is Pleasant3D, at:
http://www.pleasantsoftware.com/developer/pleasant3d/index.shtml


Cool

The 'Orbital Outset' feature has been added to cool.

When the orbit cool type is selected, the orbits will be outset around the largest island by 'Orbital Outset' millimeters. If 'Orbital Outset' is negative, the orbits will be inset instead.


Dimension

The 'Retract Within Island' feature has been added to dimension, the default is off.

When selected, retraction will work even when the next thread is within the same island. If it is not selected, retraction will only work when crossing a boundary.

Note, in a recent version of skeinforge this was called Retract When Crossing Boundary or something, with the opposite value of 'Retract Within Island'. So if you're using Dimension, you must set 'Retract Within Island', even if you want the default. Otherwise because dimension would read the profile, it would be set on.


Faster than Light

If neutrinos really can travel faster than the speed of light through the earth, this may be because of the Scharnhorst effect in a solid.

The hypothetical Scharnhorst effect is extremely tiny between two parallel plates. If the plates are closer together, the effect increases. In a solid, it is as if the plates were touching, so the effect is greater still. This effect is unoticeable with light because the electromagnetic index of refraction swamps the Scharnhorst effect. However, neutrinos are not slowed by the electromagnetic index of refraction, so the Scharnhorst effect in a solid for neutrinos is noticeable and could boost their speed slightly above c.


Limit / Speed

The 'Maximum Z Feed Rate' has been moved from limit to speed. If you are using limit, you will have to move the 'Maximum Z Feed Rate' to speed.

The 'Maximum Z Feed Rate' now also defines the speed of a vertical hop, like the infill hop in skin.


Multiply

The 'Reverse Sequence every Odd Layer' option has been added to multiply. Multiply has always reversed the sequence on every odd layer so that the tool would travel less. The problem is that the builds would be made with different amount of time to cool, so some would be too hot and some too cold, which is why the default is off. With the option off, the sequence is the same on every layer.


Printrun / Pronterface

Printrun consists of printcore, pronsole and pronterface, and a small collection of helpful scripts. It is pure Python 3d printing host software:
https://github.com/kliment/Printrun

The contributors page is at:
https://github.com/kliment/Printrun/contributors

* printcore.py is a library that makes writing reprap hosts easy
* pronsole.py is an interactive command-line host software with tabcompletion goodness
* pronterface.py is a graphical host software with the same functionality as pronsole


Skirt

The convex feature has been added to skirt, the default is on.

When selected, the skirt will be convex, going around the model with only convex angles. If convex is not selected, the skirt will hug the model, going into every nook and cranny.


Sprinter Firmware

The leading developers of Sprinter are currently Kliment and caru, though many others contribute with their patches:
https://github.com/kliment/Sprinter

This is a firmware for RAMPS and other reprap single-processor electronics setups. It supports printing from SD card, active heatbed control, and ATmega internal pullups.


Synopsis & Export

Synopsis is an analyze plugin to export the profile from a skeinforge gcode file as a csv or zip file. It is based on Gary Hodgson's code:
http://garyhodgson.com/reprap/2011/06/hacking-skeinforge-export-module/

The related functions to add extensions to the file name are in export and follow below.

When 'Add Descriptive Extension' is selected, key profile values will be added as an extension to the gcode file. For example:
test.04hx06w_03fill_2cx2r_33EL.gcode

When 'Add Profile Extension' is selected, the current profile will be added to the file extension. For example:
test.my_profile_name.gcode

When 'Add Timestamp Extension' is selected, the current date and time is added as an extension in format YYYYmmdd_HHMMSS (so it is sortable if one has many files). For example:
test.my_profile_name.20110613_220113.gcode


Version and Search

The version information has been moved from the main panel to the help panel.

The search buttons have been removed from the main panel, but are still on the help panel.


Download

The stable skeinforge version at the time of this writing is at:
http://fabmetheus.crsndoo.com/files/43_reprap_python_beanshell.zip

The latest stable cached skeinforge is the latest file at:
http://fabmetheus.crsndoo.com/

The unstable skeinforge is on my website at:
http://members.axion.net/~enrique/reprap_python_beanshell.zip

There is no longer a subversion version.

Wednesday, February 23, 2011

Bitcoin

Bitcoin

The bitcoin project, is a an open source way of saving and transferring currency without paying fees. From the bitcoin wiki:
https://en.bitcoin.it/wiki/Main_Page

"Bitcoin is a digital currency created in 2009 by Satoshi Nakamoto.
..
It is designed around the idea of using computed solutions to mathematical problems as money, independent of any central issuing authority."

With bitcoin, reprappers could buy printed parts without paying Paypal fees and/or currency exchange fees. Reprappers could also offer printed parts for sale on a bitcoin auction site:
http://www.biddingpond.com/

without paying Ebay fees. The site is small, but you've got to start somewhere.


Dimension

Filament settings have been added to dimension. This is very loosely based on Rob Giseburt's Volumetric 5D plugin:
http://tinkerings.posterous.com/volumetric-5d

The 'Filament Diameter' should simply be set to the measured filament diameter in millimeters.

The tricky setting is the 'Filament Packing Density'. The default is 0.85, this is for ABS.

The default value is so low for ABS because ABS is relatively soft and with a pinch wheel extruder the teeth of the pinch dig in farther, so it sees a smaller effective diameter. With a hard plastic like PLA the teeth of the pinch wheel don't dig in as far, so it sees a larger effective diameter, so feeds faster, so for PLA the value should be around 0.97. This is with Wade's hobbed bolt. The effect is less significant with larger pinch wheels.

Overall, you'll have to find the optimal effective 'Filament Packing Density' by experiment.


License

The license is being changed from the GLP 3 to the more restrictive GNU Affero General Public License:
http://www.gnu.org/licenses/agpl.html

The major difference is that the GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public.

The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version.


Object First Layer

The first layer in raft has been changed so that now you can set the first layer infill flow rate & perimeter flow rate independently.

If your 'Object First Layer' flow rate setting is not default, you must update your 'Object First Layer' settings accordingly.


Skirt

Skirt is a script to give the extruder some extra time to begin extruding properly before beginning the object, and to put a baffle around the model in order to keep the extrusion warm.

It is loosely based on Lenbook's outline plugin:
http://www.thingiverse.com/thing:4918

it is also loosely based on the outline that Nophead sometimes uses:
http://hydraraptor.blogspot.com/2010/01/hot-metal-and-serendipity.html

and also loosely based on the baffles that Nophead made to keep corners warm:
http://hydraraptor.blogspot.com/2010/09/some-corners-like-it-hot.html

If you want only an outline, set 'Layers To' to one. This gives the extruder some extra time to begin extruding properly before beginning your object, and gives you an early verification of where your object will be extruded.

If you also want an insulating skirt around the entire object, set 'Layers To' to a huge number, like 9876554321. This will additionally make an insulating baffle around the object; to prevent moving air from cooling the object, which increases warping, especially in corners.


Thread Sequence

Fill has been changed so that the thread sequence for the first layer is now 'Perimeter > Loops > Infill'. The thread sequence for the second and higher layers is as before.

You do not need to alter any settings because of this change.


The stable cached skeinforge is the latest file at:
http://fabmetheus.crsndoo.com/

the unstable skeinforge is on my website at:
http://members.axion.net/~enrique/reprap_python_beanshell.zip

the infrequently updated subversion version is at:
https://reprap.svn.sourceforge.net/svnroot/reprap/trunk/old_files/miscellaneous/python-beanshell-scripts/

Tuesday, January 4, 2011

Gear

Gear

You can now use xml to define a gear. The gear script can generate a spur gear couple, a bevel gear couple, a ring gear couple and a rack & pinion couple.

A helix pattern can be added to each gear type. All the gear types have a clearance and all the teeth can be beveled. A keyway, shaft and lightening holes can be added to all the round gears, and rack holes can be added to the rack. The script can output solid gears or only the gear profiles. Both gears of the couple can be generated or just one.

You can experiment by opening xml files in the models/xml_models/creation/gear folder. To see xml files in the file chooser, make sure that the 'Files of Type' pop up menu is set to either All, All Readable or XML files.

Gear options and examples are described at:
http://fabmetheus.crsndoo.com/wiki/index.php/Fabmetheus_Creation_Gear

One common gear type is the spur herringbone gear, the slice file for which is at:
http://members.axion.net/~enrique/fabmetheus_model_creation_gear_spur_herringbone.xml



Bridge

The 'Bridge Thickness Multiplier' has been removed, now all layers are the same thickness.

'Bridge Cool' has been added to the cool tool. If the layer is a bridge layer, then cool will lower the temperature by 'Bridge Cool' degrees Celcius.



Export Replace

Export now deletes any empty lines from a replace operation. So now if you have a line like:
M101

in the replace.csv file, all lines which have only M101 will be deleted. There is no longer a need to replace gcode commands with placeholder commands like M105.



Global Settings

The remaining global setting tools have been changed to profile setting tools. This means that you should check the settings in any global setting tool where you've changed the default settings. The remaining global attribute tools were:
home, lash, unpause, all the analyze tools & all the export plugins.



Granule Extruder
This has nothing to do with skeinforge, but someone made a small granule extruder:
http://web4deb.blogspot.com/2010/12/plastic-extruder-for-growing-media.html

The Web4Deb Extruder is a functional auger based granular extruder that produces perforated HDPE strips for use in aquaponics. A video of the extruder in action is at:
http://www.youtube.com/watch?v=anqKC0i0a7Y

More information is on the reprap wiki at:
http://reprap.org/wiki/Web4Deb_extruder

Note, this produces strips rather than round filament. But the die can be changed so someone could add cooled grooved rollers to finally make home built filament for reprap.



Infill Interior Density over Exterior Density

The 'Infill Interior Density over Exterior Density' setting has been removed. It was originally added to prevent the problem of excessive plastic when extruding cones:
http://hydraraptor.blogspot.com/2008/08/bearing-fruit.html

However, it led to the problem of incorrect deposition on some other shapes:
http://hydraraptor.blogspot.com/2010/12/tip-top-top-layer-tip.html

So the 'Infill Interior Density over Exterior Density' setting has been removed along with a different interior density. To prevent the problem of excessive plastic, the infill algorithm now looks around with a double cone at 45 degrees rather than a pillar. There is no setting to control the new algorithm.



Start From Choice

There is now a choice or where to start the layer from in fill. The default is the lower left.

When 'Lower Left' is selected the layer will start from the lower left corner. This is to extrude in round robin fashion so that the first extrusion will be deposited on the coolest part of the last layer. The reason for this is described at:
http://hydraraptor.blogspot.com/2010/12/round-robin.html

When 'Nearest' is selected the layer will start from the nearest point to the end of the last layer. This leads to less stringing, but the first extrusion will be deposited on the hottest part of the last layer which leads to melting problems. So this option is deprecated, eventually this option will be removed and the layers will always start from the lower left.



The stable cached skeinforge is the latest file at:
http://fabmetheus.crsndoo.com/

the unstable skeinforge is on my website at:
http://members.axion.net/~enrique/reprap_python_beanshell.zip

the infrequently updated subversion version is at:
https://reprap.svn.sourceforge.net/svnroot/reprap/trunk/old_files/miscellaneous/python-beanshell-scripts/


Enrique