Long unwind of 4th axis when going from live turning back to 3+1
Hello,
I have a Tormach pcnc1100
I'm running the microARC 4th axis on the -x.
And I am using fusion360 for my programing.
So after running a long rotary tool path in fusion360 (where the tool moves up the part as the A axis keeps turning) the A axis by the end of the operation is often at a very large value, like 99,999 because it keeps counting up in degrees, rather than staying within 360 degrees. Now, if you were to do drilling or any 3+1 work after this operation, the tormach post for fusion360 will output an A value in the 0-360 degree range and thus the A axis will have to spin thousands of times back to return to that range.
I'm interested if anyone else has run into this problem and how to solve this in post or if it can be solved in post. (looking for a permeant fix instead of having to edit each program). Because rotary is an expensive extension in fusion360 I do not think the issue is getting the attention it should be getting. There is a lot of math available for tormach and even the ability to zero the A axis via code but to implement a solution in way where you can go rotary to 3+1 and back to rotary...etc, seems difficult.
Re: Long unwind of 4th axis when going from live turning back to 3+1
Quote:
Originally Posted by
leeCNC
Hello,
I have a Tormach pcnc1100
I'm running the microARC 4th axis on the -x.
And I am using fusion360 for my programing.
So after running a long rotary tool path in fusion360 (where the tool moves up the part as the A axis keeps turning) the A axis by the end of the operation is often at a very large value, like 99,999 because it keeps counting up in degrees, rather than staying within 360 degrees. Now, if you were to do drilling or any 3+1 work after this operation, the tormach post for fusion360 will output an A value in the 0-360 degree range and thus the A axis will have to spin thousands of times back to return to that range.
I'm interested if anyone else has run into this problem and how to solve this in post or if it can be solved in post. (looking for a permeant fix instead of having to edit each program). Because rotary is an expensive extension in fusion360 I do not think the issue is getting the attention it should be getting. There is a lot of math available for tormach and even the ability to zero the A axis via code but to implement a solution in way where you can go rotary to 3+1 and back to rotary...etc, seems difficult.
You could install the A-axis homing capability if you don't already have that. Then a simple A-axis home could be used to reset your A-axis without unwinding forever. Similarly, a pause after moving the A-axis to any exact multiple of 360 degrees would allow you to manually zero the A-axis, etc.
Re: Long unwind of 4th axis when going from live turning back to 3+1
From what I can tell, it's not the post processor but fusion's toolpath. If you watch the simulation, you'll see the A-axis unwind every degree that it has turned. I've tried a bunch of different post processor tweaks but they all result in the same motion, just different code to get there. If the toolpath is commanding that much rotation, the post isn't going to be able to correct for it. Unfortunately, I've yet to see an option in Fusion to minimize that unwinding.
1 Attachment(s)
Re: Long unwind of 4th axis when going from live turning back to 3+1
Can you manually insert some code with a G92 to reset your position? I ran a manually coded routine to cut a helical gear with my 4th. It ended up doing a rotation of 466 degrees in my routine. It was a 12-tooth gear, so I indexed the A-axis by 30 degrees for each tooth. After each tooth, the A-axis was at 466 degrees. I did a G0 A390 to move the A from 466 to 390 instead of moving to 30 to save a complete rotation of the A. Then did a G92 A0 to set the A-axis back to 0 degrees before cutting the next tooth. Photo of the part and my routine are below.
Bruce
https://www.cnczone.com/forums/attac...d=465224&stc=1
;Using G59 offset
;use the 4th axis set at a 45 degree angle
;use a 1/2" steel rod with a 90 on the end for coordinate set up
;touch either side of the rod to find Y
;mount the involute cutter and adjust Z until the cutter is centered on the tip, ZERO Z
;jog X until a piece of paper is pinned to the set up tool. ZERO X
;move off center on Y and adjust X more negative by the radius of the involute cutter.
;X and Z will move together for a 45 degree move along the gear blank.
;NOTE: Cutting a 12-tooth gear ONLY. Need to modify the REPEAT command for a different
;number of teeth. ALSO, the 4th is rotated to the next gear position in the A100 subroutine.
;This is currently set to 390 or 30 degrees advanced from the previous cut. The advance should
;be 360/number of teeth.
;NOTE that 390 was used because of the helix angle of 466 degrees. The 4th could be returned
;to ZERO or 30 (for the next tooth of a 12-tooth gear), but that's an extra rotation of the table.
;If the helix angle is less than 180, do a move directly to the next tooth.
(tool 4 gear cutter)
G59 G90 G94 G91.1 G40 G49 G17 G80 G92.1
G20 G90
G17 G90
G20 G59
#100 = -1.00 (Y-axis coordinate to engage cutter into the gear blank)
#101 = 466 (axis rotation on the A-axis during the programmed X/Z move)
T4 M6 G43
S2000 M3 (spindle on)
M9 (coolant off)
G94 F8 (feed rate 8 ipm)
(subroutine for gear cutting)
O100 sub
G1 Y [#100 -0.2]
G0 X1.5 Z1.5
G1 Y #100
G1 X0 Z0 A #101
G0 Y [#100 -0.2]
G0 A390 (index 4th axis to next tooth)
G92 A0 (Zero 4th axis)
G0 X1.5 Z1.5
O100 endsub
(Start of MAIN PROGRAM)
(Loop 12 times to cut 12 teeth)
G92 A0 (make sure A-axis / 4th is at ZERO)
G0 Z 4 (make sure Y/X are clear first)
G0 X 3 (make sure Y is still clear)
G0 Y [#100 - 0.2] (move Y to 0.2" from the gear blank)
G0 X 1.5 Z 1.5 (move to starting location of X and Z)
O110 repeat [12]
O100 call
O110 endrepeat
M5 (spindle off)
G0 X 4
G0 Y 1
M30