Monday, March 29, 2010

opencamlib problems

I found a problem with opencamlib on this cone example this morning and I added an "issue" on opencamlib, hoping to fix it myself tonight, however Anders has already fixed it now.
This was what it looked like before:

This is what it looked like after:

Thursday, March 25, 2010

More Zigzag

Added material allowance and made start_depth, final_depth and step_down work.

Monday, March 22, 2010

PathDropCutterFinish


I changed the ZigZag operation in HeeksCNC to use the new PathDropCutterFinish class that I wrote in opencamlib. This takes samples every 0.1mm along the path and the refines the results so that the final number of moves is reduced within a deviation of 0.1mm. This means that the number of lines of NC code are less, making backplotting faster. In the example pictured, post-processing took about 1 second and then backplotting took about 3 seconds.

BallCutter


I tested Anders's new BallCutter class from opencamlib. I did a simple sphere. The picture on the right is where I have moved the sphere down by the tool radius, to show that the toolpath is a sphere.

Friday, March 19, 2010

ZigZag with opencamlib

I made the ZigZag operation in HeeksCNC work a bit better with the opencamlib option. This machining library has lots of potential.

Thursday, March 18, 2010

Grain the other way

This time I rotated the wood 90 degrees and did the same test again (roughing and finishing for both "conventional" and "climb" ).
This time: CV ( conventional ): x width = 19.93mm y width = 19.99mm
CB ( climb ): x width = 20.00mm y width = 20.00mm

So, the grain direction makes a difference. I feel ready for machining the Delrin that I am waiting for.

I have attached some videos to show the difference bewteen roughing and finishing. I guess the noise is indicative of inaccuracy.
video video

Roughing and Finishing

No picture, because it would look just like the last one.
This time I did the same test, but duplicated the operations.
I set the original operations to have "extra offset" = 0.2.
I measured the parts at 5mm down from the top.
CV ( conventional ):
x width = 19.99mm
y width = 19.94mm
CB ( climb ):
x width = 20.01mm
y width = 19.98mm

Conclusion: Doing roughing pass, then finishing makes for much better accuracy.
Also: My machine seems to cut smaller in Y, than in X. I wonder if the direction of the grain has any effect? ( I can think of a way to test this ).

Bigger tags

I did the same test of "conventional" vs "climb", but with bigger tags. These were programmed as "tag width" = 10mm, so the tags should have been 5mm deep. I measure one, it was 4.97mm deep.
The following measured at about 5mm below the top:
CV
x width = 19.82mm
y width = 19.83mm
CB
x width = 20.09mm
y width = 19.97mm

conventional vs climb

I made two profile operations with tags. I notice these tags don't hold the part in very firmly, partly because I made the program assuming the wood is 20mm thick, but it is 19.6mm thick. The tags were set to be only 2.5mm thick, but they turned out to be 2.1mm thick. I could feel a significant amount of wobble in the parts before I broke them out of the block.
I have written CV and CB on them to remind me which was done with conventional milling and which was done with climb milling; for CV the tool went anticlockwise around the square, for CB the tool went clockwise. I used horizontal feedrate of 400 and vertical feedrate of 200.
Measurement taken at a depth of about 5mm below the top.
CV measured:
x width = 19.77mm
y width = 19.82mm
CB measured:
x width = 20.11mm
y width = 20.01mm

This demonstrates how the tool get pulled towards the part with "conventional" but gets pushed away from the part with "climb".

opencamlib

I have been trying opencamlib ( http://code.google.com/p/opencamlib/ ). It seems to work OK with a couple of tests. It took 15 seconds to make the NC file for the 10,000 points in the picture. The model made 4084 triangles. It took 25 seconds more to backplot the NC file to see the toolpath in HeeksCNC. I need to change my script to have rapid moves to the clearance plane, before this is useful.

Tuesday, March 16, 2010

Tags for profile operation


I have added the option to program tags in HeeksCNC for the profile operation, by ramping up and down over the tag while cutting the profile.
You can specify the width, angle and number of tags.
They are simply spaced evenly around the length of the profile.
I tested the toolpath by cutting a 20mmx20mm square in some wood.
I was able to cut through the tags with my penknife.
The first video shows a mistake. I had set z = 0 to be at the bottom of the block, instead of at the top of the block as programmed.
video video

Monday, March 8, 2010

More clamping room

I need to implement tags on the last cut, so that the part can be held in place.
This part separated when I wasn't expecting it.
It didn't break the tool, luckily.
I have enough done to experiment with drilling the holes on the side.
I have now got a 6mm slot drill, which will quarter the cutting time.

Delrin parts

I have been given some step files from someone who wants some parts making from Delrin.
He wants 8 of this part. The first thing is to cut the circle out of the middle.
I haven't got the Delrin, yet, so I am having a go with some wood that I have found in the workshop.
video
Next to clear the lower level with a pocket operation.
I made the shapes to cut by doing Edge to Sketch, on some circular edges, then making circles with "centre" and "end" ticked in "digitizing". Then I made the circles to sketches, then to faces. Then I subtracted one face from another and made another face from a sketch across the middle, and subtractacted that. Finally I did Face to Sketch to get me the sketches I wanted.
I am doing it all with my 3mm slot drill, so I don't have to set the z height of the tool again. This does mean a lot of tool path, though.