Showing posts with label 3D printing. Show all posts
Showing posts with label 3D printing. Show all posts

Thursday, October 1, 2015

makeup for 3D printed parts

yes, among the many things yours truly could do: 3D prints, 3D scans, CNC mill; but his lack in the department of aesthetics is severe. Same as everything pretty, makeup must be applied for aesthetics reasons.

If you recalled many full moons ago, yours truly http://shin-ajaran.blogspot.sg/2015/03/seal-deal-digitally-fabricated-personal.html  created a personal seal using only digital fabrication techniques.  The 3D printer of choice is still the ultimaker2, materials of choice is PLA, and 3D prints at 100micron layer height. 100 micron seems to be pushing the envelop for desktop based 3D printers. This choice of layer height and without makeup is good enough to ornate yours truly office. Assuming the 3D printed object need to be used to handle other materials with "fine" particles as the by product of the material, it falls short. The grooves between each layer of prints could possibly habours dirt, or worst, sickness inducing bacteria. Hence, there were some suggestions on the Internet on how to do post treatment to PLA 3D printed parts  aka makeup to achieve water tight, smooth finish, and the pinnacle of all post treatment/makeup: food safe grade, i.e food debris will not be caught in-between the layers and prohibits bacteria growth on 3D printed parts.

The suggestions for post treatment aka makeup for 3D printed parts. Some suggested to use food grade PLA, but the grooves between the layers are still a nuisance to human health, and boon to bacteria. Sandblasting on the 3D printed parts to get a smooth matt finish, doable, but access to machine might be prohibitive. Coating the 3D printed parts with food safe resin, definitely doable. your truly have not got the chance to do any of the above, yet.

So, the adventure begins at bangkok mini maker faire and yours truly chance upon "solution X aka solution 555" (5 in thai language rhymes with ha) for post treatment of 3D printed parts, by one of the makers presented there.


Saw the makeup demo on PLA 3D printed parts, and was quite intrigue at the speed of the post production of 3D printed parts; yours truly can't wait to get his paws on them. unfortunately, he is such as cheapo and bought the cheapest air ticket without check-in luggage. Of course you know the airport security is very tight and will not allow liquid > 100ml per bottle on board. tough luck. yours truly struck a deal with native partners, co sharing 400g and 500g bottles of "solution 555" into smaller bottles < 100ml . yours truly could not sleep, due to the fact of the access to 120ml worth of solution 555 makes him keep waking up at night. Yes, yours truly is an impulsive buyer, buying things that caught the cat's curiosity. He walked away with the last set of solution 555 kit available for sale on that rainy day, without means to bring it back to aiur.

Social capital plays a big part in how yours truly manage the issue of getting it back without paying extra for check-in luggage, nor breaking any laws. The rest was history.

the full kit: 500g of grey and 400g of white. yes, instructions is in thai language.

The first victim to be applied with solution 555 makeup. 3D printed lion head from a previous project: ultimaker2, 100micron layer height, PLA
closeup: sorry for the lousy picture quality. yours truly used a 2year old phone camera for this.
mix 3 part from grey bottle and 1 part from white bottle. gettin ready to makeup with the mixture.
can you tell which is with makeup and which is without makeup?
ooops... yours trully missed a spot.

conclusion: money well spent on "solution 555". after the first layer of makeup, the visible lines along the layers smoothed, it has a glossy look, and definitely would be better with more layers of makeup. The 3D printed part earned the permission to be relocated in the house from his missus. 



Wednesday, February 4, 2015

3D printer with Cloud computing for one touch 3D printing over the cloud

3D printer with Cloud computing for one touch 3D printing over the cloud

Some time back, yours truly wrote about how to prepare a rep rap 3D printer for 3D printing over the cloud computing infrastructure. the  details of cloudify the rep rap 3D printer url here: http://shin-ajaran.blogspot.sg/2014/05/cloudify-setup-reprap-3d-printer-with.html

"The process to 3D print a 3D model can be quite an obstacle, i.e need to have physical access to the 3D printer and a SD card handy, power hog, heat emission, UFP emission. What if we can remotely send a 3D model (in *.STL) to be 3D printed on a 3D printer and also observe the 3D printing process over the Internet? Definitely it is going to be convenient as everything can be done at the fingertips; godsend piece of technology for those can’t wait for the 3D printers to be locked down in a facility equipped with exhaust and medical grade filter that is capable of filtering Ultra Fine Particles (UFP) in the range of 100 nanomether that is much finer than PM2.5. The purpose of this article is to share a step by step guide of setting up 3D printer to print remotely."

The process mentioned in the earlier post of using octoprint and slic3r is still not transparent to the end user details here: http://shin-ajaran.blogspot.sg/2014/05/operate-3d-printing-on-reprap-3d.html
user still have to process the gcode and submit it via octoprint.

 thanks to the good work rendered by FEW cloud FYP members Fahadh, Ehan, Wei quan, now we can 3D print over the cloud with a single click. Check out the youtube video. For best effect, please choose HD for video settings.

Friday, July 4, 2014

3D printing with wood filament

3D printing with wood filament
This week the wood filament by laywood is explored for 3D printing using makerbot replicator2. 3D printing in wood offers a new range of application.  Experimentation with this new medium to explore the possibilities of what can it used for. The beauty of this wood filament, it can be post treated as per the usual wood working, sanding included.
Loading of the wood filament into makerbot replicator2 for 3D printing is a breeze. Check out the previous post of modifying the loading mechanism http://shin-ajaran.blogspot.sg/2014/04/3d-printing-using-ninjaflex-with.html
Standard PLA setting from makerware is used, but the temperature is set to 180degC instead of the usual 210degC to explore the texture and colour of the 3D printed parts. “Oozing” is observed from the 3D printed parts. Oozing in this context refers to the web of fine threads hanging from wall to wall of the model akin to a spider web. It has a term for it: “oozing while printing”.
Further refinement of the speed of filament extrusion/retraction, speed while extruding, and speed while travelling need to be tweaked to achieved a “cleaner” 3D printed parts.
A challenging model to print without support, due to the overhangs that are spiralling up.

This is the final output is plague with “oozing while printing”. Mentioned earlier, tweaking of the movement speeds of the 3 parameters are still waiting to be tweaked to perfection.

This website http://reprage.com/post/37966750340/how-do-i-stop-plastic-from-oozing-when-3d-printing/ offers some suggestions such as lowering the temperature of the hot end, reducing the movement speed, and increasing the retraction length. All the above requires time to discover the best settings!

Saturday, May 24, 2014

Operate 3D printing on reprap 3D printer with octoprint and slic3r

Operate 3D printing on reprap with octoprint and slic3r
Generically, 3D printing is a process to realise an object physically from a digital copy. The digital copy of an object, can be created using CAD tools such as autodesk inventor, 123D, tinkercad, Sketchup, Maya, Rhino3D, and many more. The 3D model to be 3D printed usually comes in *.STL, and it needs to be translated to a format where the 3D printer can understand: GCODE (for reprap based 3D printers), X3G (for makerbots). Regardless of the file extension, the 3D printer only understands instructions in the form of X , Y, Z axis movement, and amount of filament to extrude.
So, what is the GCODE consist of? The following is a snippet of GCODE
[CODE]
; generated by Slic3r 1.0.0 on 2014-05-20 at 21:07:43
; layer_height = 0.2
; perimeters = 3
; top_solid_layers = 3
; bottom_solid_layers = 3
; fill_density = 1
; perimeter_speed = 30
; infill_speed = 60
; travel_speed = 130
; nozzle_diameter = 0.35
; filament_diameter = 1.75
; extrusion_multiplier = 1
; perimeters extrusion width = 0.35mm
; infill extrusion width = 0.52mm
; solid infill extrusion width = 0.52mm
; top infill extrusion width = 0.52mm
; support material extrusion width = 0.35mm
; first layer extrusion width = 0.60mm
G21 ; set units to millimeters
M107
M190 S40 ; wait for bed temperature to be reached
M104 S175 ; set temperature
G28 ; home all axes
G1 Z5 F5000 ; lift nozzle
M109 S175 ; wait for temperature to be reached
G90 ; use absolute coordinates
G92 E0
M82 ; use absolute distances for extrusion
G1 F1800.000 E-10.00000
G1 Z0.400 F7800.000
G92 E0
G1 X58.780 Y66.400 F7800.000
G1 Z0.200 F7800.000
G1 E10.00000 F1800.000
G1 X59.740 Y65.610 E10.05427 F540.000
G1 X60.840 Y65.020 E10.10876
G1 X62.030 Y64.660 E10.16304
[/CODE]
To create GCODE from STL file, one of the available software is Slic3r http://www.slicer.org/ an open source software. The generic steps to generate GCODE using Slic3r is as follow
  1. Setup Slic3r on local computer
  2. Setup configs for 3D printer on Slic3r. I reckon 3D printers suffer from individualism, each of them requires some form of tuning or calibration to achieve the best effect. I have uploaded the configs to my 3D printer here. Just got to file-> load configs
    Note: Step 1 & 2 need to be done once only.
  3. Select an *.STL by clicking on the “Add” button
    Note: the model in the *STL needs to be position on the platform, otherwise, need to manually position in Slic3r.
  4. There is a default mode in Slic3r, presumably works on most 3D printer. Press on the button “Generate GCODE” to complete this process. For the sake of simplicity, the tabs on Print, Filament, Printer settings can be save/load as config to save the grace

  5. There will be a popup box asking for the directory to save the GCODE. Observe the path to the directory and click “OK” to complete.
The following steps describe the process of 3D printing using Octoprint with a pre-existing GCODE file.

  1. With a browser such as Firefox or Safari, browse to the ip address of the octoprint. If this is the first time connecting, the serial port and baudrate need to be set. Otherwise, it will automatically connect.
  2. Locate the upload button on the lower RHS of the GUI, and press upload.
  3. Select the corresponding *.GCODE to be printed and then click “OK” to confirm. Wait for the upload to complete.
  4. Locate the printer button next to the file uploaded and click on it. This will initiate the printing. Once the extruder and heated bed temperature reached the desire temperature, printing will starts by itself.
  5. Printing related diagnostic data such as time, material and progress can be observed on the LHS
  6. Clicking on the GCODE viewer tab will yield the visualization of the current line of instruction in GCODE
  7. Clicking on the controls tab will yield the streaming of the 3D printing process
  8. All needed now is time for the 3D printing to complete.

Cloudify: setup reprap 3D printer with octoprint, mjpg_streamer on raspberry pi

Cloudify: setup reprap 3D printer with octoprint, mjpg_streamer on raspberry pi
The process to 3D print a 3D model can be quite an obstacle, i.e need to have physical access to the 3D printer and a SD card handy, power hog, heat emission, UFP emission. What if we can remotely send a 3D model (in *.STL) to be 3D printed on a 3D printer and also observe the 3D printing process over the Internet? Definitely it is going to be convenient as everything can be done at the fingertips; godsend piece of technology for those can’t wait for the 3D printers to be locked down in a facility equipped with exhaust and medical grade filter that is capable of filtering Ultra Fine Particles (UFP) in the range of 100 nanomether that is much finer than PM2.5. The purpose of this article is to share a step by step guide of setting up 3D printer to print remotely.
Raspberry Pi is acting as the “brain”, wirelessly receiving GCODE (instructions for the 3D printer to work by processing a 3D model file in STL using software such as Slic3r http://slic3r.org/ ) from the front end that is interfacing between human and 3D printer via OctoPrint http://octoprint.org/ providing minute control over the 3D printer; feedback to human by streaming 3D printing process via MJPG_streamer http://sourceforge.net/projects/mjpg-streamer/ . Most 3D printers in the market have only 1 MCU, e.g 1 brain. Usually 3D printing is done by inserting a SD card that contains the GCODE and to be read by the 3D printer. Having a second brain opens up more opportunity to build computing capacity for the 3D printer. Cloudify, refers to scaling up this computing methodology to support more users and more 3D printers.
A quick note: Raspberry Pi is sensitive to power drop, especially when there are a few components drawing substantial amount of power to operate. One of the tell-tale sign is when a keyboard is plugged in to console the raspberry pi, the keystrokes appear to be non-responsive.
Another not so quick note: Throughout this process of setting up, yours truly learnt that apparently not all USB webcamera out there work out of the box on the raspberry pi. The details steps of configuring and observations done are recorded at the end of this article.
Parts needed
  1. RepRap 3D printer or equivalent, known baud rate of the 3D printer e.g 250000
  2. Powered USB hub, preferably 5V 1A; (tested with Belkin F4U020)
  3. USB webcam (tested both Creative VF0220; A1 pro M035 ); list of tested USB webcam on raspberry pi is here http://elinux.org/RPi_USB_Webcams
  4. Raspberry Pi as the controller/brain;
  5. WiFi adapter;
  6. WiFi Access Point; IFF necessary
Steps required
  1. If there is an existing pi setup and reflash the SD card image is not an option, build octoprint on your raspberry pi https://github.com/foosel/OctoPrint/wiki/Setup-on-a-Raspberry-Pi-running-Raspbian. Alternatively, download octopi image https://github.com/guysoft/OctoPi; it is a custom fit raspbian with the goodies such as octoprint, mjpg_streamer, and more!
  2. Setup WiFi access for the raspberry pi. Depending on the WiFi network connected to, the wpa_supplicant.conf will vary. Here are 2 examples of configuration http://shin-ajaran.blogspot.sg/2013/06/raspberry-pi-connecting-to-wifi-in-ucl.html ; http://shin-ajaran.blogspot.sg/2013/06/a-poor-lads-guide-to-install-raspberry.html
  3. Wire the parts according to the following picture that describes the wiring connection
 
  1. Turn on the powered USB hub, the reprap3D printer, the WiFi Access Point (If used)
  2. Console in via SSH using Putty or equivalent;
  3. Issue the command “lsusb” to verify the devices are mounted accordingly to raspberry pi
  4. Navigate to the ip-address using firefox or safari and be presented with the GUI of OctoPrint. On the upper LHS select the appropriate interface where reprap3D printer is connected e.g ttyUSB0 and the corresponding baud rate e.g 250000. Failure in doing so, the reprap 3D printer will not be interfaced. The following diagram describes the reprap 3D printer that is connected to octoprint

  5. Determine the control between the OctoPrint and reprap 3D printer by setting the temperature and observe the temperature over time. The following diagram describes the temperature recorded over time
  6. Click on the control tab. If the webcamera work out of the box, there should be a live feed in this tab as describe in the following picture. Otherwise, refer to the appendix on configuring USB webcams/troubleshooting
  7. Streaming of the 3D printing process can be observed from a browser pointing to http://IP-address/webcam/?action=stream
    D:\eee tech lead\octoprint reprap\wa3.PNG
  8. The GCODE viewer tab is a visualization of GCODE used in progress. The following diagram depicts the progress of printing an Arduino Yun Bumper. The step by step guide to 3D print with this computing methodology is available here
Appendix: troubleshooting the webcam for streaming
Finding the right USB webcamera (model/make), the right picture format (JPEG;YUY2), the right resolution (640x320, etc), and the right frame per second (fps) for mjpg_streamer on Raspberry pi is a tedious process. Getting the usb webcam to work is a little bit trickier than expected. Having a usb webcam that is not listed on the supported webcam on raspberry pi doesn’t help either. So yours truly is left on his own to conduct a few rounds of A/B tests.
The location to configure the webcam daemon that uses mjpg_streamer included in octopi is available at “ /home/pi/scripts/” the parameters associated with the webcam can be modified in the script “webcamDaemon” available in that directory. After completing the changes, save the file and execute the script. If this screen is encountered, a reboot of the raspberry pi is required.
The following describes the parameters used to determine the best output with Creative VF0220
##VF0220
#YUY2 320x240 @10fps = green
#YUY2 320x240 @25fps = green, hang after a while
#JPEG 320x240 @10fps = varying colour according to light. hang after awhile;cannot boot complete
#JPEG 320x240 @15fps = partial works with varying colour
#JPEG 320x240 @25fps=same as above with more frames of lights
#JPEG 320x240 @1fps = cant open cam; cannot boot complete;hang.
#JPEG 640x480 @15fps = varying colour then hangs very fast
#JPEG 640x480 @1fps = varying colour then hangs afte a while; then throw 503
#JPEG 352x288 @8fps= throws 503
#YUY2 352x288 @8fps= throws 503
This is the best can be achieved with VF0220


Courtesy of TSO Mark, yours truly get to use an USB webcam that is marketed locally as A1 pro, but recognised as M035 on raspberry pi.

The following observations are recorded
##M035
#JPEG 352x288 @15fps = no disp
#YUY2 352x288 @15fps = ok; hang if move camera too often.
#YUY2 352x288 @8fps= ok; no hang