Showing posts with label settings. Show all posts
Showing posts with label settings. Show all posts

Wednesday, 14 September 2016

Training - Mastering Desktop 3D Printing with Simplify3D - O'Reilly Media

Hello everyone, and many thanks for reading.

I had a short break from blogging and YouTube over the summer months, but I was still very busy with all things 3D Printing - Lots to update you with over the coming weeks, but first -  

I had a rather busy summer planning and recording a training series about 3D Printing for O'Reilly Media - Safari Books Online & Infinite Skills.


The first series of screen-cast training about using Simplify3D has now been released here.


Screen-cast training is essentially using and performing a step by step tutorial of the software package or activity. With this I had to cover both the software and physical aspect of making objects with a 3D printer.


You can also watch this in HD over on Youtube - YouTube Channel RichRap

If you have ever wanted to support me and my ongoing adventures with 3D Printing, then using this training course is a really great way, you may learn something new and any feedback you can give me will help with future content for this and my Blogs & YouTube. 

I don't enable any advertising in any of my 3D Printing blog, YouTube content or file sharing sites, so if you ever feel the desire to support my efforts, using media like this O'Reilly series will allow me to invest more time and effort into all my 3D Printing content and ongoing developments. Thank you.

This was the first time I had adventured into screen-cast training, and it's really quite a challenging but powerful way to demonstrate learning and provide real-world advice about a subject or application.

Okay, I know this is a self-promotional sales pitch, thanks for following my ongoing 3D Printing adventures and I hope this training is useful to you. 

O'Reilly asked me to write and record a 3D Printing training program for their Infinite Skills website. They had very little content on the many processes of 3D Printing. Plenty are already available on 3D modelling, but as we know a 3D model is not always suitable to be 3D Printed.

I decided to first focus on one of the most significant and challenging aspects of successful 3D Printing, and that's the Slicer and it's many settings. After much thought and a a realization that covering all the different open and closed source slicers would be almost impossible, I decided to focus on using Simplify3D. This has been my slicing program of choice for the last year+ and I have been really delighted with the control you get and support the Simplify3D team provide, to both their users and the wider 3D Printing and maker community.

If anyone has seen a screen-cast either live or recorded on YouTube you will often get frustrated watching someone mumble, make mistakes and generally jump around the program interface. That's not what the O'Reilly Infinite skills team expects - they have a very high standard of professional presenting. It was a lot of work, really good fun learning how to plan, script and produce an on-screen training series.

Okay, one last sales pitch + a chance to win a Simplify3D license

You can get my complete 3+ hour Simplify3D training package here - I can tell you this was a lot of work to put together so I hope it is useful and provides some good advice for both using the slicer and with improving your 3D Printing results.

If you want to check out my training style first, then do look at the introduction and setup sections where you can see if this course may help you.

This video should give you a taste of the training style, to see if if may benefit you. I go from a basic understanding to quite a high level of tricks and tips in later lessons

The entire table of contents is shown below, feel free to ask me any questions about it.

  1. Introduction
    1. Welcome To The Course 01m  26s 
    2. About The Author 01m  40s 
    3. How To Access Your Working Files01m  15s 
  2. Setup And Configuration
    1. Setup And Orientation For Simplify3D 08m  05s 
    2. Using The Configuration Assistant 05m  17s 
    3. Setting Machine Size And 3D Printer Profile04m  49s 
    4. Setting The Machine Firmware Type05m  49s 
    5. Machine Control Panel Interface05m  08s 
  3. Importing And Preparing 3D Models For Printing
    1. Importing 3D Models, Positioning, Scaling, And Rotation05m  48s 
    2. 3D Model Errors And Types Of Model Repair05m  00s 
    3. Rotating Parts For Strength, Mirroring, And Infill Levels06m  29s 
    4. Models Imports For Dual Extrusion 3D Printing06m  10s 
  4. Configuration Of Essential Print Process Settings
    1. Manufacturing Process Settings06m  13s 
    2. Setup Of The Extruder And 3D Printing Tool Head12m  20s 
    3. Layer Heights, Perimeters, And First Layer08m  25s 
    4. Additions And Settings05m  23s 
    5. Infill And Settings06m  03s 
    6. Support - Using Support Material06m  39s 
  5. Configuration Of Further Print Process Settings
    1. Temperature And Settings05m  29s 
    2. Cooling And Settings07m  17s 
    3. G-code And Machine Configuration Settings04m  06s 
    4. Script Settings And Examples04m  54s 
    5. Other Settings09m  22s 
    6. Advanced Settings07m  02s 
  6. Dual Extruder Machine Settings
    1. Setting Up Dual Extruders - Multiple Material 3D Printing04m  47s 
    2. Additions And Infill08m  09s 
    3. Support Material Settings04m  33s 
    4. Temperature And Tool Change04m  13s 
    5. Advanced Settings05m  08s 
  7. Generating 3D Print Files, Verification, And 3D Printing
    1. Generating G-code For Single Extruder04m  02s 
    2. Generating G-code For Dual Extruder02m  03s 
    3. Support Structures For Single And Dual Extruder Printing05m  05s 
    4. Viewing The Tool Path And Various Print Features02m  59s 
    5. Using The Machine Control Panel Interface For 3D Printing09m  43s 
  8. Thank You
    1. Wrap Up01m  30s



While this training does focus on using Simplify3D as an application, it covers many aspects of setting up your 3D Printer, what to watch out for before, during and after printing. Improving settings and using different materials for both single and dual 3D Printing. Even if you don't currently use Simplify3D you can still get a lot of useful advice and information to improve your 3D printing skills, whatever slicing package you currently use.

If you are not interested in the training, you can also donate directly to me via my paypal.me, if you would like. I really appreciate any support you can give, even if that's just reading the blog and being happy enough to come back for more next time.

Win a Simplify3D License - 

The wonderful people at Simplify3D are also providing some software license giveaways - This is in conjunction with E3D. All you need to do is Follow E3D and Also Simplify3D on Twitter and then send out a tweet to both of them saying what you want to do with 3D Printing, or what project you are working on that involves 3D printing. That's it and you may win a Simplify3D License.

While I remember - Daniel Noree - is having a competition - if you miss out, then check back with me for more chances to win a Simplify3D license.

Until next time (and that won't be long) Thank you all.

Richard.


Wednesday, 11 January 2012

Slic3r is Nicer - Part 2 - filament and printing

This is Part 2 of my getting started with Slic3r and 3D printing.


In Part 1 we looked at Print settings and calibrating your extruder.


In this Part 2 will setup the printer, filament and print speeds and then do some printing.


After more settings it's going to get into some level of combining Gcode and optimising print speeds, so any questions, do ask.


Lets take a look at the second Slic3r screen and settings, here are the defaults you will see.


Printer - Nozzle diameter:  Slic3r needs to know what nozzle size you have so it can help calculate the width of each path for the selected layer height along with filament diameter (see below) it can then best work out where to place the extrusion paths to get correct infill and perimeters. Your most likely to have a 0.5mm, 0.4mm or 0.35mm nozzle.


Print Center: Your object is placed in the middle of the bed by default, so Slic3r needs to know where that is, some machines have offsets for wider carriages, for a standard Prusa mendel machine 100,100 should be correct. I have a wider X and smaller Y so I use 115, 85.


Use Relative E Distances: Some Firmwares use relative positioning, this makes the Gcode different by stating the distance to the next point from where you are now. Absolute positioning always states the end point regardless of where you are. unless you know your firmware is using Relative do not tick this box.


Z Offset: With this you can set a starting point for your Z axis, you may do this if you use a glass surface for some prints (PLA) and maybe remove the glass for ABS printing, the Z offset for PLA would be the thickness of the glass plate. - I use 0 and set-up my machine to be at the surface of whatever print bed I'm using, this gives you the maximum print height.

Filament - Diameter:  This is really important to get correct, Slic3r needs to accurately know what volume of plastic is being fed into the extruder, so you need to measure the filament really well. Be aware that it may well change from supplier and by batch, and if you are really unlucky by the meter!


Also be aware that 'normal' 3mm filament is usually around 2.75mm but it's also still quite common to get 2.9 from American suppliers and 3.0 or 3.1mm from Chinese sourced suppliers, so it's worth checking what you have and how consistent it is.


Use a digital calliper and don't measure it at the very tip, use the bigger middle section as in the photo.


You want to be entering this value to two decimal points into Slic3r.


For good filament you are looking for a deviation of +/- 0.1mm or less along a good length of the coil or reel. You don't want it to be 2.75mm then 2.9mm at a different point as that will just mess up your prints. 


Also when you do this check that the filament is round and not oval, In my opinion badly oval filament is not worth the bother of trying to use it, reject it back to your supplier. 


I have been supplied '3mm' Chinese sourced filament as big as 3.55mm and as small as 2.6mm. Over 3.2mm could block your extruder but the 2.6mm is still usable in a 3mm extruder.


If you are using 1.75mm filament, then it's exactly the same principle as above.


Extrusion multiplier: This is another fudge value, changing it from 1 alters the value you have just entered into the filament Diameter. Some people use this to compensate for different (Soft/Hard) plastic materials sinking into the extruder hobbed bolt more or less, but really your calibrated extruder from Part 1 and the filament diameter is all you need to get correct, so leave this set to 1.


Temperature: Slic3r will add this value into the Gcode so at the start it will wait for the extruder hot-end to warm up to this value before starting the print process, you can still change this value in pronterface at any time during the print. For PLA 185 is a good value, but you may need to increase this depending on your hot-end configuration or if you are printing very fast.


Print Speed - Perimeters (mm/s):  This is the speed that outer shell of the part will be printed at, I use 65 for 'normal' printing, 80 for 'fast' printing and below 50 for 'slow'.


Small Perimeters (mm/s):  Small islands in a print or holes in a part can be have a different speed ascociated with printing their shells, usually slower than normal perimeters. - I use 55 for 'normal' printing, 65 for 'fast' printing and below 30 for 'slow'.


Infill (mm/s):  This is the speed of all the other infill of the object, you can normally go a little faster when doing this, but make sure the filament strands are not breaking apart if you go really fast - I use 80 for 'normal' printing, 130 for 'fast' printing and below 60 for 'slow'. 


Solid Infill (mm/s):  This is the speed of the any soild infill layers (apart from the very first layer) and you normally go slightly slower than the infill speed. - I use 70 for 'normal' printing, 100 for 'fast' printing and below 60 for 'slow'. 


Bridges (mm/s):  This is the speed when you a 'bridge' or span filaments across a gap in free-air. It needs testing as temperature, nozzle, and Plastic material makes a big difference to the ability to 'span' gaps.
I use between 35 and 70 here.


An example of some quite extreme bridging of filament, a slight bow-down but after 3 layers it's flat.

Other speed settings - Travel (mm/s):  This is the speed that the machine will accelerate upto when positioning itself before printing and also any in-air moves to a new point before extrusion again.
The maximum speed of your machine will depend on weight of each axis and how much torque the motor can deliver, what bearings you have and how your acceleration speeds have been setup in firmware.
With a low weight print bed and a Bowden extruder machines can run at 300mm/sec
For a Linear bearing Prusa with normal Nema17 Extruder and a heated PCB print bed you can run at 200mm/sec (I use 195mm/sec all the time)
If you have a big metal heated bed on your Y axis or are using PLA bushings then stick to travel speeds lower than 150mm/sec.

Bottom layer speed ratio:  This allows you to slow down the very first layer by a factor to help make it stick to the print bed and get a good clean start before part building goes higher.
For my 'normal' speed settings detailed above I use a bottom layer speed ratio of 0.35, this makes things 35% of the speeds you have specified in Perimeter, infill and solid infill for this first print layer.

But how do I know if my print is stuck down well to the print bed?

It depends on what surface you are printing on, I can highly recommend heated Glass as the very best surface I have used for PLA printing and heated Kapton or PET for ABS printing

Top Tip - I use 4mm temperature resistant glass, you can get sheets 200mm x200mm with nice ground rounded edges sold in the many 'home shops' up and down the country, they glass trivets to stand hot pans on and are sold for £1-2 each and withstand 200+ degrees C, perfect for our use and they fit very well on a Prusa heated PCB. Some people use plain window glass, but that can shatter or crack easily when hot.

(Old Photo) Temperature resistant glass plate 200mm x 200mm

The rounded corners on the glass allow a Prusa heated PCB to be screwed down flat and you can fix the glass in place by using bulldog clips or I use PET tape at the corners.

Top Tips for glass printing - 
  • Allow your glass to expand, most people use clips or tape the glass down.
  • If you can try to keep the glass fixed to the heated bed, you should not need to remove it.
  • Keep your Glass finger print free. - try not to touch the glass, ever.
  • I use supermarket brand nail polish remover, just a quick wipe while it's warm keeps it clean.
  • Other people use window cleaner or acetone.
  • If you don't let the parts or bed to cool and try to lever them off they will bend.
  • If you let the parts cool after printing they will pop off the glass all by themselves.


Getting your first layer to stick - 
Below are some examples of what the bottom layer of a print should look like, and what to look for when getting the first layer height stuck correctly down to the print bed - 

First make sure your bed is level and at 90 degrees to your X carriage bars so things build up straight and true.

I'm currently making the transition to not using springs on my heated bed, even with really hard and tight springs I still believe they are not a good idea for perfect printing quality - More on this in a future post.

An example of a very over-squashed first layer, this will stick really well but will give you a pronounced ridge on the bottom of your printed object.

Still slightly over-squashed, but fine and a lot of people like this look.

This is hardly stock down at all and popped off the print bed half way into the print.

same print just on an angle so you can see the poor adhesion

This print is a about perfect for first layer adhesion and minimal distortion.

And another print that I would consider to be perfect adhesion and no bottom layer distortion, this also matches a lot more like all the other sides of the object when printed.

Wow! we got there, all those settings. Now lets take a quick look at Start/End Gcode and then do some printing - 

Here is the Start Gcode I use - (Suitable for a Prusa with heated bed)

G28                 ; home all axes
G92 E0 ;reset extruder
G1 E3 F1200 ;Prime extruder 3mm
G1 E2 F1200 ;retract extruder 1mm
G92 E0 ;reset extruder

And my End Gcode - 

G1 X12.0 F4000       ; home (almost) x - stops extruder crashing into frame if at very top of Z height
G1 Y170 F4000        ; move the print to the front.
M104 S0                   ; make sure the extuder is turned off.
M140 S0                   ; make sure the bed is turned off.
M84                          ; shut down motors.

The only other tab is the Advanced section in here you can specify a Width over Height ratio, but if this is 0 then Slic3r calculates it (very well) for you. So lets' not mess with that.

Remember to save and load your configurations and call them some helpful names, I have a 'draft' (very Quick, little infill) 'normal' ( fast and solid), 'fine' (Lower layer and slower) and a setting for 'hollow pots'
During this test process I have also now another configuration called 'lift' I'll explain that a little more later.

Let's Print !
I'm not going to use any normal calibration objects like the hollow pyramid as some of them show up an issue with Slic3r and the fact it does not yet have a minimum layer time (yet) - I'll explain below - 

With just my calibration done and speed settings to 65mm/sec perimeter and 80mm/sec infill, prints of most things come out very well,- 
 This is a Prusa Z motor bracket at 0.3mm layer height, nice and smooth.

You should now be able to start using Slic3r, everything below here goes a little deeper into printing and optimising printing.

I have selected a few parts that we can analyse how best to print and also this is where we can look at some of the present limitations with Slic3r and how we can get around them, and I hope a few tricks here and there.

One nice object to try printing is this simple poly cup by WickedAndy, it will help you check you have good layer alignment and it's a nice big but hollow object, quick to slice and print, very satisfying.
These were printed with two perimeters, 25% infill, concentric fill pattern and 0.3mm layer height.
Perimeter speed was 65mm/sec and infill was 80mm/sec.

Another nice and easy to slice object is the little stone house by Whistler this is quite a small but detailed building.
Perimeter at 65mm/sec and infill at 80mm/sec - 0.2mm layer height (0.5mm nozzle)
All the normal settings are the same, just the layer height was changed to 0.2mm.


This matt grey PLA is great for seeing defects, it shows every indent and casts a shadow with every bump, any PLA that's shiny or semi-transparent tends to hide defects.

The infill is 10% and as you can see I'm printing it a little too fast so a few infill filaments are breaking.
I'm also using 3 perimeters, two would have been just fine.

Close-up on the left front window it's (only about 7mm wide) - with a smaller nozzle size the edges of the window will be less curved and have more horizontal detail.




Little video of the house printing - Watch is in Hi-Def Here

Now I'm going to jump straight into a little problem with Slic3r on the next part to print.
The very nice  http://www.thingiverse.com/thing:10330  is one of my favourite objects to print, I'm currently printing one in every colour I have.

My links are scales up to 1.75x the size of normal on thingiverse. I print one set of links at a time at 80mm/sec with Skeinforge. This is still very fast for such a small object,  but Skeinforge automatically reduces the time to print per layer so it always takes a minimum of 12 seconds to do layers (that's quite slow with such a small part). So it prints the link 'body' very quickly doing 65mm/sec perimeter and 80mm/sec infill, then as it moves up the part and it has less to print so layers slow down and you still get a nice print, by the time it gets to the top it's doing both the perimeter and infill slowly.

Slicer can have a slower 'small perimeter' setting, but it will still do the infill as fast as you set it. When you try to print this object with Slic3r at 80mm/sec it does the body fine but as it moves onto the 'prongs' of the link it's just a total mess of hot plastic being placed much too quickly the object ends up unusable.

Solutions - 
You can just slow the whole print down to 20mm/sec, but I don't like waiting for parts especially when I know they can be printed faster with no loss of quality.

So we take advantage of the fact that Slic3r can produce Gcode in just 2.2 seconds for this link and we slice it with different speeds and then combine the gcode at different layer points to get a mixed-gcode-speed printed object. - Don't worry I'll explain how to do that in the next example.

The basic idea is to end up with Gcode at different speeds for the different layers that is compatible with the object you are printing.
In the picture I print the base at 80mm/sec and then the middle at 40mm/sec and the 'prongs' at just 20mm/sec, this produces a very nice print and much faster than if we had printed the whole thing at 20mm/sec.

This method of combining Gcode from Slic3r becomes really important when trying to print other things like the Tardis! below - 

For the Parametric Tardis by Gossamer we have a similar problem, but also we can see other things that would benefit from completely different Gcode as the model changes in height.

My scaled Tardis model is 69mm High, if I print with a 25% infill it takes 1 hour 30mins to print and makes a mess of the top because it's printing too fast, the light on top is no where to be seen. - 

This is the same model but successful printed with the same layer height in just 45 mins print time.
This was done by combining Gcode and doing the following - 
  • The base section (5mm) needs infill to support the middle section and give support for the slope, if you print this part hollow the base will look very poor.
  • The middle section (45mm) can be hollow with no infill at all, just 2 perimeters, this makes if very fast to print and the main reason that this print is half the print time.
  • The top part again needs to be printed slower than the body or base and needs infill (25%) to make the top look good and help support the final light on top
  • The light needs to be printed very slowly or it will not build.
The point of showing you how to do this is that even when Slic3r does have a minimum time per layer setting you may well still want to combine Gcode for different reasons, like having sections of hollow and solid layers in the same object.


You can 'measure' a model very easily using the basic free version of Netfabb - 
This will tell you at what height the parts of the model you are interested in begin (the base line here is showing  5.31mm)

The middle section has already been hollowed out but still has quite an area that would be filled if we sliced it with 25% of infill that we need on the base. It works perfectly well with just a hollow perimeter outline.

With the different 'sets' of Gcode you have generated, you just need to open them up in an editor (I use Textpad) and search for the change in layers - G1 Z

The start of the Gcode is a handy reminder as to the settings you used - 

; generated by Slic3r 0.5.7 on 2012-00-08 at 12:09:38
; layer_height = 0.2
; perimeters = 3
; solid_layers = 3
; fill_density = 0.10
; nozzle_diameter = 0.5
; filament_diameter = 2.79
; perimeter_speed = 65
; infill_speed = 80
; travel_speed = 195
; extrusion_width_ratio = 0
; scale = 1

If you search in the Gcode for G1 Z5 


you will get to a section of Gcode like this - 

G1 F1800.000 E6.50116
G92 E0
G1 Z5.000 F11700.000
G1 X84.707 Y81.055
G1 F1800.000 E1.00000

Everything above the  G1 Z5.000  is the object up to 5mm in height, everything below is the rest of the object.

If you replace the Gcode below the G1 Z5.000 with the same objects Gcode but sliced at a different speed or infill then your object will print the original Gcode to 5mm and then the alternative Gcode after that.
You can combine Gcode however you like but for starters I recommend doing it by layer.

In Part 3 of this guide we will combine Gcode with different layer heights, this is another very handy thing when you start to print with very low layers, as you can print the first few at a 'normal height' (0.3mm) to help get a good bond to the bed and level our the surface then switch over to lower height Gcode for the rest of the object. Skeinforge has a setting in 'Skin' to do a similar job of ignoring skin on the first X layers. 


Maybe you would not go to this effort for printing one thing, but the next time you think your printing too fast, check if you can selectively slow down some layers or vary the infill of layers to both minimise print time and also maximise print quality.

So hopefully you get the idea, it's good to know more about Gcode, you can find more commands on the Reprap Wiki pages here - 

I just wanted to show one more printed object and say how it was printed, as it's a brand new test and technique for me and so far has produced some of the best results I have ever made. 

Some of my favourite things on thingiverse are the MakAlot pots and objects, but they are actually quite hard to print, especially if you print them small, you need a well calibrated machine and if you want to print them fast you run the risk of making a mess of your print or it becoming detached from the bed.

I had two prints fail by getting knocked off the bed due to a very tiny surface area (1mm) on the first layer.
they were also a little bumpy (red one on the left)

I tried to print the MakeAlot Link bracelet quite fast and both times it got knocked off the bed about 1/3 into the print, the quality was a little poor and I was about to slow-down the print when I thought this would be a perfect object to test the Z axis 'Lift' setting in Slic3r, I had not tried this before believing that the Prusa mendel Z axis would be too slow and may end up adding extra 'artefacts 'of plastic to the print, I also have my Z axis limited to 4.1mm/sec in Firmware so I was expecting worse results using 'lift'... I was so wrong.

Just using my normal settings for a standard 0.3mm layer height but also a 0.3mm 'lift' on the Z axis.
The print came off the printer as smooth as glass, I'm really impressed with the 'lift' setting, do try it!

I think that I may now be able to print this object the size of a ring, maybe a smaller nozzle would also help.

Thanks to Nophead for pointing out that the Mendel Z axis is fast enough to 'toggle' and use the 'Lift' setting. What I didn't think was that it would help produce such amazing prints, I'm going to try some more of the really complicated MakeAlot pots...


Watch it in Hi-Def Here - 

That's all for Part 2, I hope this was useful and if you do nothing else, experiment with a glass bed and the 'lift' setting.

In Part 3 we will experiment with low layer heights using Slic3r.


Thanks for reading.


Rich.