4th Axis indexed - Workflow

161 views
Skip to first unread message

abendrot...@googlemail.com

unread,
Dec 5, 2015, 5:24:52 AM12/5/15
to blender CAM forum


Dear Vilem,

fist of all - big respect and many thanks for the great development of blendercam.

According to your recommendation in a former post I have setup Version 0.8.0 with current Downlad Version of addon (1.dec 2015) from github.
My Intention: Test Basic Workflow of 4th Axis features.


CNC Machine (image):

- WIN-PC-NC for Control ( http://www.lewetz.de/de/sample-sites-2/winpc-nc/uebersicht )

- Stepcraft 420 with rotary unit as 4th axis. ( https://www.stepcraft-systems.com/ )




I have already managed to test sucessfully the 4 th axis Strategies:
1.) Parallel around 1st rotary axis
2.) Parallel along 1st rotary axis
3.) Helix around 1st rotary axis

I get a failure feedback from Blender (Console) that comes with "Cross Strategy"


Now my Question:

I didnt get the point how the worklflow of "indexed 3d axis" should work?
I assume that you have a specific angle  (e.g. in G-code: A 0 ) to start an operation that mills in 3 axis the upper part of the workpiece.
than you turn the workpiece upside down ((e.g. in G-code: A 180 ) to mill the opposite part of the workpiece ( of course you should be able to set values in between e.g A45, A 30, A 270,.. for different mill-planes.)

How can this be setup in blendercam?
- by turning the geometry itself?
- setup the angle by defining it manually somewhere?
- Or should this be fully automated?

In didn´t notice any field the enter a value for the specific angle?

Alfter calculating the paths the according output in blender viewport shows only toolpaths for the "upper" segments of the workpiece. (?)


I have helped myself in the past by calculating the toolpaths with "3-Axis Strategies" for a specific angle of a mill-plane in separate files.

I chained them together and inserted the angle of the millplane as g-code command (e.g. A 180 ) manually into the chained file.



Other things that draw my attention:


1.) If you are going back from indexed Strategy to (e.g.) Parallel along 1st rotary axis. The user face didin´t update correctly. Instead of showing the entry field: "Outlines count - experimental" the UI stays with the entry field of the last chosen Strategy from the indexed Option

.

2.) I don´t see any effect when using: Inside, Outside or Online (but am not sure if I understood this correctly?)


3.) Ambient limits seems to have no effect to me


4.) I always set "operation depth start" to a greater value than the radius of the workpiece (e.g. 20mm ODS when the workpiece will have a radius of 15mm). I think this is correct.


5.) If depth from object is activated I experienced some strange toolpath generations going throug the center of workpiece to the other side. But you can prevent this by setting the value to something grater than 0.


6.) Regarding the feedrate of the forth axis. At present I have to set this in the Controlls of the mill (WIN-PC-NC). Maybe it is more convenient to have the option to set this as a separat value. Especially for the Strategy " Parallel along 1st rotary axis"


7.) Sometimes I expecienced some strage "Spikes" in the generated toolpaths.


Many thanks

Cheers

Daniel





Daniel Abendroth

unread,
Dec 10, 2015, 6:55:20 AM12/10/15
to blender CAM forum

Hello again,

 first of all I have to apologize for all the typing errors in the first post. I couldn´t figure out to re-edit my post when published (maybe I don´t have the permission?)



Anyway – in between I just got ahead a little bit myself rotating the X-Axis within “4th axis”  –>  “Indexed 3 Axis” -> “Parallel” around  “X-Axis”.

I am still not sure if the following is the intended workflow, especially because the G-Code doesn’t represent the expected A-axis:

1st I entered a new operation name and file

2nd I selected “parallel” and “X-Axis” from the dropdown menu. The “Operation-Orientation” Object is generated automatically.

3rd – Rotate the “Operation-Orientation” Object to the required angle of the mill-plane (e.g. 130°)

4th – Calculate the paths – hurray – it seems to work! – At least in the blender view port.

But looking at the generated G-Code I found the related X-Axis Angle assigned to Letter B.  And not assigned to Letter A as expected. (E.g. see “Parallel around 1st rotary axis”)

On top I found the A-Letter used as well at the end of the G-Code defining very small movement

(N700G01X4.878Y8.4Z7.015A0.279B0.481)?

I don´t know if this is by purpose or a bug?

 

I have uploaded the blend file and a screen shot

Version: Blendercam 0.8.0 with Addon updated to

I have tried this with “WIN-PNC-NC” and “ISO” Post Processor.

 

Cheers Daniel



151210_002_cam_4th_axis_da.blend2

Jeff Doyle

unread,
Jan 8, 2016, 9:40:17 PM1/8/16
to blender CAM forum
Just got my 4th axis built and working a few days ago and started playing with Blendercam 4th-axis calculations.  Based on what I see in the code and the experimentation I have done, there is still some work to be done.  I could not find any code that dealt with rotating the axis when doing indexing and as you noted there is nothing in the UI to setup indexing ie step angle etc.

I think it would be best to raise the issues on Github so that we can track the problems.

I have only used Blendercam for cam software so have no experience as to how the work flow should be for 4th-axis but I am making some changes to my fork of Blendercam to make it a little easier for me to use.  When I get something usable I will post back and hopefully others can try it out. 

Jeff Doyle

unread,
Jan 8, 2016, 9:55:56 PM1/8/16
to blender CAM forum
Ok, found the section of code that does the A axis stuff.  Not sure how I missed it but it is there.  Need to do some more experimentation.

Jeff Doyle

unread,
Jan 8, 2016, 11:37:53 PM1/8/16
to blender CAM forum
Found the trouble for where A,B axis seem to get mixed up when doing the G-code generation.

In function rotTo2axes() in utils.py the return values seem to be in the wrong order.  if x is the A axis then it should be

return (aangle, cangle)

By making that change I now get the proper gcode generation.

Hopefully Vilem can comment on this.  I will do a pull request on github after I check a few more conditions to make sure its working for all scenarios.

I am working on the spurious data at the end of the gcode that is spitting out both A and B axis rotations.

Jeff Doyle

unread,
Jan 8, 2016, 11:40:58 PM1/8/16
to blender CAM forum
I will open an issue on github since this is definitely a bug.

blenderCAM developer

unread,
Jan 16, 2016, 2:36:47 AM1/16/16
to blender CAM forum
Hi, if you can - just post a patch regarding this change.
I don't have still a 4axis machine, thus I could never test if things work. 
It's best if you have such machine, tune things so that they work. 
The idea - I guess you understand, was for the user to be able to configure his machine, with assigning axes himself...
Reply all
Reply to author
Forward
0 new messages