Showing posts with label grbl. Show all posts
Showing posts with label grbl. Show all posts

Monday, March 16, 2015

Project 3D-Printer and Project CNC - An Update - FINALLY

My DIY 3D-Printer is fully functional (in case you haven't seen my twitter posts).  If you want to check out recent prints or files you look at my stuff on My Thingiverse Page.
State of printer 3/16/15
Changes and additions I've made to my 3D-Printer since September 2014:
  • PCB heated bed
  • moved from single PSU to 2 PSU's needed a separate one to supply the bed heater
  • Relay board added to switch bed heater on.  Pulled signal from gate pin of MOSFET on RAMPS board and wired to a switching transistor and relay
  • Increased to full size bed (250 x 250 x 300mm)
  • Switched to DRV8825 stepper driver boards (produce less heat as well as handle higher current)
  • Hot End - began with a J-head lite, switched to J-Head, now using the E3DV6.
  • Numerous iterations and re-designs of my direct drive extruder
Changes/additions planned:
  • changing all axis to 1/4" - 16 Acme thread rods (feel like it is more dependable since belts need to be checked a lot to ensure good tension)
CNC is finally rebuilt and running.   GRBL updated to version 0.9, Universal-G-Code-Sender updated to version 1.
CNC rebuild 3/16/15

Work on CNC left to be done:
  • calibrate x, y, and z axii
  • mount skate bearing to hold lead-screws on x and y axii
  • add lateral stabilizing to spindle mount
  • enclose and mount control board and PSU
I am now tutoring/teaching math at the Joliet Montessori  Adolescent House and tutoring math a few days a week at the Plainfield Mathnasium.

Monday, September 15, 2014

Mokena Mini Maker Faire Pictures

I don't have many pictures and I actually didn't think about taking any until everyone was beginning to break down.  Actually, some exhibitors had already packed up and left, along with the crowd we had earlier in the day.

The day turned out to be great, though it started out cold and windy in the morning.  Steadily, more and more people came out to the point of being pretty busy and the day pretty much flew by.  I learned a lot talking to other exhibitors as well as from people who came to my booth.

I can't wait till next year.

Pictures below: (first pic is my little booth, with Callie hidden behind my desktop CNC)









Links for some other articles and websites about the 1st Annual Mokena Mini Maker Faire:
I wish I had gotten more pictures earlier in the day so I could have caught everyone there as well as all the other exhibitors that I missed (you can check out a list here)

Saturday, September 13, 2014

Updates up tomorrow - 3D Printer, Desktop CNC, Maker Faire

I've been so busy, between working and, trying to get my 3D Printer up and running I haven't had any time to post  (other than on Twitter).  I'll be updating on my build progress along with pictures from today's Mokena Mini Maker Faire (where I exhibited my DIY Desktop CNC and 3D Printer builds)

Sunday, August 31, 2014

Project CNC making parts for Project 3D Printer

Successfully installed new lead screws, new bed and new spindle mount on my CNC. Did a rough calibration of the x and y axis, manually leveled the bed and then fine tuned the calibration for all 3 axis.


My top speeds for x and y axis are fairly high but z axis is still the limiting axis. Any faster than about 14in/min and the z-axis stepper squeals and stutters – resulting in a lot of missed steps. After a bit of research I found a few issues that may be causing this:
  1. stepper motor resonance
  2. lead screw (likely to be less of a problem when I change to acme screw on z-axis)
  3. GRBL
Some good links on this issue:

It looks like I won't be able to get faster moves until I finish my rebuild of the frame and spindle mount/carriage (including swapping the z-axis lead screw with an Acme screw). I have tried tweaking the acceleration and max speeds but when I push it a bit for better performance the Z-axis seems to loose steps when retracting resulting in a number of pocket cuts being to deep.

Finally done with both sides of the Z-axis on the 3D Printer and will be cutting out the X-axis shuttle

Cutting X-axis shuttle tonight, tried this afternoon and GRBL stalled (first time ever).  Already re-cut acrylic for mount for extruder out of acrylic.  Lining up printer bed on Y-axis and designing cuts for securing drive belts on X and Y axii.

Monday, August 25, 2014

Project 3D Printer - Challenges with 3D Printer Continue

Challenges continue with cutting out z-axis pieces for 3D Printer Build.

Autodesk's CNC Utility issues:
  • Step Over is opposite in rough cut and finishing
    • 25% Step Over in rough cut = 25% of width of present cut overlaps last cut
    • 25% Step Over in finish cut = 75% of width present cut overlaps last cut
  • Feed rates
    • in inch/sec but actually inch/minute
  • Initial positioning includes cutting diagonal swath through material
    • manually edit out
Current cuts – contoured portions are not cut down to depth or the width that they need to be (about 1mm short for each dimension), even after x-axis finishing cuts (the finishing cut did increase dimensions somewhat but still not to design dimensions).

14.11 after x-finish 13.54mm before (design goal was 15mm, so still a bit small)
7.25 after x-axis finish cut, 6.19 prior to cut (still short of design of 7.5mm)

Profile cuts (all the way through) and “Cut Out” instead of “Carve” cuts (for straight right angle z-axis cuts) seem to be right on.  I really do not know what the problem is but time is short.

Well...its back to MakerCAM for now and I'll have to stick to square pockets instead of contoured ones (I could do nested pockets but I expect that I'd run into others issues if I tried that).

My main issue with Inkscape to MakerCAM is that shape dimensions in Inkscape end up slightly smaller when imported to MakerCAM (and I don't mean the settings for SVG import resolution – I already encountered and found the simple solution to that issue – change to 90px/inch). When I go the alternate route of OpenSCAD to Autodesk's CNC utility – a cut out 9mm square is actually 9mm. The result is that I have to run test cut dimensions to find correct dimensions for what I design in Inkscape. Does anyone else have this problem??? For me, at least, this seems to be an issue with the SVG file since the cut depths that I enter into MakerCAM do measure out as what I entered in.

On the bright side, at least I already have the Inkscape files for the parts I'm cutting out (since I made and used them to cut the same parts from wood). I still need to re-do all the tool paths in MakerCAM.

It's taken me awhile to get the tool paths correct - first issue was that I had forgotten to include pockets for the  X-axis guide rods, then I did not comprehensively preview an operation in OpenSCAM and missed the drill holes being set to 0.75" instead of 0.5" (extra stress on the Z-axis stepper and burned off half the collar on my endmill).


Test Cuts Autodesk CNC Utility

Test Concave Cut Autodesk CNC Utility

Test Cut Size Check With Inkscape/MakerCAM

This is what I'm aiming for


First Test from Autodesk CNC Utility
A few of my trials from Inkscape/MakerCAM
 After all this work it seems the bed of my CNC is not level, like it used to be - depth of cuts is not consistent across pieces.  Since I need to put a new sacrificial bed on the CNC and add some additional anchor points to hold it down better - I figured that I'd also finally change out my Lead Screw's.  I've had new Acme Thread (single start) 1/4" lead screws for well over a month but put off installing them. 
Old Lead Screws with Anti-Backlash

New Lead Screw- gluing Anti-Backlash
 I decided to change out my lead screws so that I can speed up my cutting procedures - currently the top speed that my CNC travels is 14"/min.  This is because the threaded rods I was using for lead screws had 24 turns per inch - my new acme screws are 14 turns per inch.  My GBRL settings for the threaded rods were about 200 steps per mm - potentially very high precision (current configuration not stiff enough though) but this meant that I could max out stepper speed fairly quickly.  In the future - if I can come across some reasonably priced multi - start acme screws I will have to pick them up.

After I get these screws in tonight, along with a new bed - I'll get the machine re-calibrated for the X and Y axis then route the bed to make it level.


Wednesday, August 20, 2014

Project CNC and Project 3D Printer - challenge using CNC to make parts for 3D Printwer


I am trying to produce some 3D (or at least 2.5D) cuts on my home-built desktop CNC router with the goal of producing better (tighter tolerances) machined parts for my 3D printer.

So far I have primarily used Inkscape (for drawing out parts), Makercam (for generating tool-paths), OpenSCAM  (for previewing cuts) and MS Notepad (to edit the Gcode).

Currently my main issue is that I cannot produce contoured cuts into material using Makercam. I am comfortable designing this type of object in Sketchup but have not been successful in generating gcode and toolpaths from my resulting diagrams.

I've worked through a good number of tutorials for Autodesk's 123D-Design and TinkerCAD, as well as FreeCAD and FreeMill but have not quite found what I want.

My main issues:
  • difficulty or inability to position parts/shapes with precision
  • learning curve too steep and/or online instruction to sparse
  • unclear how to generate gcode for router tool-paths from files generated (can do this with Autodesks 123D CNC Utility but not for other CAD programs)

My current approach:
  1. design parts in OpenSCAD export rendered files as “.stl” and save on computer (be sure to save the openSCAD file for future editing).
  2. In browser open Autodesk 123D CNCUtility
  3. Click on “Start New Project”
  4. Sign in (free to create account)
  5. Select Browse Computer
  6. Open STL file
  7. (opening an STL from your own computer seems to be more reliable and faster than opening file in 123D-Design, saving to “My Projects” in Autodesk's native format and then opening in the CNC Utility or importing directly to the CNC Utility from 123D-Design).
  8. set units to mm (bottom right corner of screen)
  9. In Bottom Menu set:
    1. Under the crossed wrench/screwdriver symbol
      1. Machine to “Shopbot Desktop”
      2. Stock (change this to what you are actually using – may need to use the “add” portion of pull down menu) – change Operation to “Cutout” (instead of “Carve”), add Margin (I change units to mm and make a 5mm margin) -  correction use "Carve" since "Cutout" will not do pockets (only outlines them).
      3. Add “Tabs” to secure part
    2. Under the Drill symbol
      1. choose tool size/type you are using and then choose “add” under “Feeds”
      2. in feeds you need to adjust feed and plunge rates – the utility states the rates in in/sec but is actually in in/min
  10. position part – snap to bottom of stock material (“underlined down arrow” in icons in upper left of screen)
  11. In the last tab on the bottom you can preview cuts
  12. Once you are satisfied with how it all looks click the far upper left file tool and select export tool paths and select folder to save them in (file will be saved with a “.g” extension). - using the "Carve" operation use the rough.g file that is generated.
  13. Preview in OpenSCAM, you will have to open folder and set to view all files (not just gcode files) and select the “.g” file. Examine result carefully – all of my files seem to begin with a 3D diagonal to the deepest point and then back up. To eliminate this open the “.g” file in a text editor and delete the “Z” portion of the first X Y Z move.
 Below is a the start of a ".g" file created from Autodesk 123D CNC Utility Online.  The highlighted area is what you need to delete to correct the file.

;Toolpaths generated with Autodesk 123D CNC Utility Online(Version 1.3.0)
;
;
;Rough Pass Settings:
; Tool parameters :
; Type : End Mill
; Name : 1/8 in Straight (13728)
; Diameter : 0.125 in
; Pass Parameters :
; StepOVer : 70
; Pass Depth : 0.05 in
; Jog Height : 0.25 in
; Feed Rate : 14 in/sec
; Plunge Rate : 14 in/sec
; Jog Rate : 14 in/sec
; Spindle Speed : 20000 rpm
;
;
%%
G17
G21
G40
G49
G54
G80
G90
G94
F330.2
S20000
G00Z6.35
M03
G04 P1
G00X30.34Y31.6929Z-6.35 (DELETE THIS PORTION)
G01Z10F330.2
F330.2

Un-Corrected G-Code

Corrected G-Code
Over the weekend I was able to calibrate my Desktop CNC Mill and tighten up parts of the frame and gantry to make everything stiffer and more accurate/consistent.

Saturday, August 16, 2014

The Countdown to Mokena Mini Maker Faire Begins!!!

3D-Printer Build at Present
After finding out that the Mokena MiniMaker Faire is on for September 13, 2014 I decided that I really needed to attend as an exhibitor.  So... I thought it would be great idea to exhibit the 2 things that I have been working on for most of this year: my desktop CNC machine and my 3D-printer. Both of these machines are home built home fabrication machines which is why I thought my exhibit should be called “Making Machines that Make”.

I figure that signing up for this will provide the extra motivation for me to finish up the 3D Printer and add improvements/fixes to my CNC machine – since there is a definite deadline and people will be expecting to see what I've done. In addition, it should help push me to document my progress, pitfalls, solutions etc. to help others who want to attempt these type of projects.

Wish me luck!

Wednesday, June 25, 2014

Project CNC and Project 3D Printer - New supports for Y-Axis guide rods (CNC machine)

I originally planned on using the initial supports that I cut for my 3D Printer (Y-axis also) but they were just a bit to short.  My choices were either cut out a pocket for the stepper motor in the base board, add spacers under the supports or just cut new ones.  Well... I just decided to cut new ones, its quick and just as important it'll look a lot nicer.

Both supports (old and new-just cut) were cut from 1/2" thick HDPE kitchen cutting board.  I like the material since is cuts and drills fairly easily, is non reactive to most chemicals, not electrically conductive, and does not shrink or expand with temperature or humidity changes (at least not to any significant extent).

Here is a picture of both supports - the new one on the left and the old one (originally meant for the 3D Printer) on the right.
Both are unfinished.  They both still show the "tab's" added to hold pieces in place while cutting, as well as left over flakes from being cut out.  Even with that it is easy to see the difference in height for the guide rod holes.  In addition, I squared off how the top meets the base to make more room for the mounting scews.


Monday, June 23, 2014

Project CNC and Project 3D Printer - Pictures of current Works in Progress

Progress pictures on CNC mill:
Planning changes in configuration of CNC mill:
     A.) Secure Y-axis directly to base
          1.) designed supports in Inkscape
          2.) need to finish in Makercam and cut out the new pieces from HDPE cutting board
     B.)  Change "waste board" to Poplar board leveled to machine with T-Slot rails for securing
           work pieces, will need to route areas for the rails to fit flush to the leveled board.
 
T-Slot pieces with 1/4" screws and Thumb nuts for workholding
Progress on 3D-Printer Build:
Left side of Z-axis

Left side of Z-axis with stepper and linear bearings

Top is Lft, side of Z-axis, middle is X-axis shuttle, bottom is Rt. side of Z-axis
Overall Frame
Cuts made in bottom of frame to allow travel of Y-axis and Y-axis belt
Cuts in frame, in above picture were done by hand with a Pull Saw (sawdust from cuts still visible).

Left side is initial test cut, Right side is corrected dimensions
 In trying to design a direct drive feed to my printer hot end I ended up having to take an experimental approach.  Initially I designed and cut what I thought I needed (using Inkscape and my CNC machine) and after test fitting and a few redesigns I came up with the part on the right (3 separate layers fused together with M.E.K.)
With bearing attached


Showing path cut for feeding Filament
 My objective was to have a hole drilled through this piece for filament but due to clearances, stepper shaft length, length of fitting for stepper shaft, bearing size... etc, I ended up having to mill a path through the top layer of the piece deep enough for the filament and then fuze a layer of acrylic over top of the piece.

Showing thickness of piece



How PLA filament feeds through



Bolt ground down to fit against stepper motor



Saturday, May 17, 2014

Project CNC - New Spindle - keep forgetting to post picture

After my last spindle failure (bearing freeze up with Harbour Freight Cutout Tool) I knew that I had to splurge and get a better quality tool.  I ended up deciding on a Porter Cable Laminate Trimmer.
PCLT 7310 with included mount
Bare PCLT 7310

It's a bit dirty in this picture but that's because I've been using it in my CNC mill.  It is single speed (30,000 rpm - with no load) but that is fine with me right now.  In the future I'll look at options for speed control.

My only issue with it has been that it only comes with a 1/4" collet (so it can only take bits/endmills with a 1/4" shank - my good endmills are all 1/8" shank).  After a lot of searching I found a company that sells a 1/8" collet for this specific tool: Elaire Corporation.  So far this collet has worked perfectly for my endmills.  For some reason I could not find mention of this collet or company on any of the CNC sites I have looked at.  Also it took looking 4-5 pages in on searches to find this company (when searching for collets for the Porter Cable Laminate Trimmer 7310).  The cost of the collet, with shipping, ended up being around $27, so the router plus the collet was close to $90 after taxes.  If I had gone with the Porter Cable Palm Router it would have been about $120 plus tax but would have included both collets.  It would be nice to know if Porter Cable uses the same specs for collet's for all their routers.

Project CNC - back up and a new computer

I cleaned old glue off of the motor axle and re-glued it after my last post.  Yesterday I mounted the motor/lead screw and spindle to the machine.

Brown area is where the Z-axis failed

Between pipe clamp and motor tubing came off
 When the tubing connecting the Z-axis to the lead screw separated the spindle dropped down to its lowest limit and the X-axis continued to drag the spindle (I watched it happen and it took me a few seconds to understand what happened and shut off the power).

The parts I was cutting were supports for the Y-axis guide rods for the 3D Printer I'm building.  Initially I designed and cut them out of a white HDPE (plastic) Kitchen cutting board but I did not take the stepper motor dimensions into account and they were to short.
Initial guide rod mounts

Mother's Day Present (still working on it...)
Prior to this equipment failure, and subsequent repair,  I was able to do a bit of glass etching with my desktop cnc.  My goal was to make an etched glass edge lit display/sign for my wife for her new Nut Free Bakery (Callie's Cuties).
  1. I did the initial design in Inskape converting image files of the logo etc. (to keep it simple I made sure to use inches for units in Inskape - more on this in step 5).  These then I resized and then used "Trace Bitmap", located under the "Path" tab.  After making sure that everything was converted to a "Path" I saved the file.
  2. After opening a web browser window I went to MakerCAM.  
  3. Before opening my Inkscape ".svg" file in MakerCAM I clicked in "Edit - Edit Preferences".
  4. In the "SVG Import Default Resolution Box" I changed it from "72" to "90"
  5. I then clicked on the "File - Open SVG" and selected the file I wanted on my computer (to keep it as simple and straightforward as possible keep the settings set to inch, in the upper right of the MakerCAM window - if you must use mm you will need a Python extension to truncate the measurements from Inkscape to 4 decimal places, this is automatic in inches, because GRBL cannot handle more decimal places than that).
  6. After my file was imported I did some additional editing (mainly cutting out unwanted parts).
  7. Time to select each object (left click/hold and drag) and then select "CAM - Follow Path"
  8. For each of these I set my depth to 0.01" with a pass depth of 0.01" and plunge and feed speeds at 14.  
  9. After it all looks good select "Calculate All" under the "CAM" menu.
  10. Now it is time to export the G-Code.  Select "Export G-Code" under the CAM tab and save your file.
  11. IMPORTANT: Open your exported file in a text editor and add "%" at the beginning and end of the file (this is not done by MakerCAM but is needed if you plan to use Universal GCode Sender)
  12. The bit I used was a diamond coated dremel bit for glass etching/engraving.  To keep things cool I used a spray bottle filled with water  and sprayed the bit as it cut.
First test piece
 On my first test piece (above), I was checking for an optimal depth with star, square, ellipse and circles for test shapes. The bottom cut was 0.01" one pass, next up was 0.02" in two passes and finally 0.03" in three passes (each pass was 0.01" deep).  In these tests I was using feed speed of 13.  The Cup Cake Character was my next test (using the same piece) and this was made initially from an image imported into Inkscape.  The depth was still jut 0.01" but each line was done with 10 passes, each slightly offset (Inkscape's "Trace Bitmap" has options that result in additional closely spaced lines).


After my initial tests I tried to cut my complete design:
Came out very well, a few traces in the lettering were a bit shallow.  So, testing how it came out with edge lighting I found that I need to etch the image on the BACKSIDE of the glass not the front.  This meant I needed to go back to the images in Inkscape, reverse/mirror them and then run them through MakerCAM again.

In an attempt to make things a little easier I tried building a clay dam around the area to be etched and filling this with water to keep the bit and the glass cool:





Below is my best run, which was messed up by my poor skill in glass cutting (I only taught myself  how to cut glass last week).
After these trials I decided to revert to using Lexan to cut the display out off, instead of glass (the glass never really got bright enough and Lexan is supposed to have better light transmission).


Wednesday, April 16, 2014

Project CNC - Recalibration of CNC X and Y axis

Using a ruler secured the cutting table and an engraving bit in the spindle (90 degree angle 0.1mm carbide bit)
Same type of bit I used (difficult to photograph)

Running the machine with 200mm linear movements in the X and Y axis, I adjusted the settings in GRBL and re-ran tests until I could confirm that settings are as accurate as I can make them with my current equipment.
Finally I thought everything is set up the way it needs to be so I figured I could do some cutting for new stepper mounts for 3-D Printer.  Cuts came out perfect, finally everything came out the way I intended.  But, once I really looked at how I was planning to set everything up, I realized that my mounts would need to be wider (to allow for supports), include screw holes to secure to supports, allow for room/space for the slide bearings on the X-axis.
OpenSCAM rendering of new stepper mount for 3D Printer

I set the machine up, secured the piece to be cut, checked all electrical connections and double checked everything.  Ready...Set...Go... crap!  New Problem - now X axis stepper losing steps in positive direction and motors seem to be squealing and getting hot (especially the X axis motor.