V groves in bar on cnc lathe
16 Jan 2015 08:30 #55065
by nilrods
V groves in bar on cnc lathe was created by nilrods
I was trying to figure out how I would code the following, cutting v grooves in bar stock on a CNC lathe. I looked around all over on the web and couldn't find any examples.
I know it would be easy to program the gcode to just plunge in directly but I was thinking it would be better to do like a threading cycle does and start on one side and slowly slide at an angle to get to full depth. Doesn't look like I can use a threading cycle though since there is no pitch. I am sure there is something simple I am missing.
Any thoughts on how to approach this one? Think of it as a v grooving a pulley, just smaller on say 1/2 bar stock. There would be multiple parallel grooves cut in the bar.
Any insight would be helpful.
Thanks,
Chris
I know it would be easy to program the gcode to just plunge in directly but I was thinking it would be better to do like a threading cycle does and start on one side and slowly slide at an angle to get to full depth. Doesn't look like I can use a threading cycle though since there is no pitch. I am sure there is something simple I am missing.
Any thoughts on how to approach this one? Think of it as a v grooving a pulley, just smaller on say 1/2 bar stock. There would be multiple parallel grooves cut in the bar.
Any insight would be helpful.
Thanks,
Chris
Please Log in or Create an account to join the conversation.
- accuartisans
- Offline
- New Member
Less
More
- Posts: 10
- Thank you received: 0
16 Jan 2015 09:47 #55066
by accuartisans
Replied by accuartisans on topic V groves in bar on cnc lathe
This really depends on your tooling that you are using. In the past I would use a grooving tool, plunging x number of plunges that would cut the complete bottom, then still using the grooving tool plunge each side of the groove angle. Depending on the angle spread (if it's wider that the grooving tool) you may need to do a rough plunge part of the angled sides. There really isn't a "canned" cycle to do this approach that I know of.
km
km
Please Log in or Create an account to join the conversation.
17 Jan 2015 00:14 #55091
by nilrods
Replied by nilrods on topic V groves in bar on cnc lathe
Well the tooling I was going to use was a 60 degree threading tool.
I kind of wondered if there wasn't some easy way since I couldn't find anything online. Oh well sounds like time to break out the rusty trig then or maybe see what Bobcad will produce.
Thanks,
Chris
I kind of wondered if there wasn't some easy way since I couldn't find anything online. Oh well sounds like time to break out the rusty trig then or maybe see what Bobcad will produce.
Thanks,
Chris
Please Log in or Create an account to join the conversation.
17 Jan 2015 00:37 #55094
by andypugh
I would code this by hand using a loop.
The loop would increment the depth.
So, first move is cut in at the taper angle to the first depth increment, then a Z feed to (nearly) the full width, then feed out at the taper angle.
Next cut starts at the same point, plunges a bit deeper, cuts a bit shorter.
Not quite the same thing, but I hand-coded this a few days ago to cut a circular groove:
imagebin.ca/v/1oGV3BuEoYon
Ignore the fact that it is not a semi-circle, I forgot to switch to the XZ plane, and strange results happen in that scenario. It just shows a simple loop to cut a profile.
Replied by andypugh on topic V groves in bar on cnc lathe
I was trying to figure out how I would code the following, cutting v grooves in bar stock on a CNC lathe. I looked around all over on the web and couldn't find any examples.
I would code this by hand using a loop.
The loop would increment the depth.
So, first move is cut in at the taper angle to the first depth increment, then a Z feed to (nearly) the full width, then feed out at the taper angle.
Next cut starts at the same point, plunges a bit deeper, cuts a bit shorter.
Not quite the same thing, but I hand-coded this a few days ago to cut a circular groove:
imagebin.ca/v/1oGV3BuEoYon
Ignore the fact that it is not a semi-circle, I forgot to switch to the XZ plane, and strange results happen in that scenario. It just shows a simple loop to cut a profile.
Please Log in or Create an account to join the conversation.
17 Jan 2015 02:35 #55103
by nilrods
Replied by nilrods on topic V groves in bar on cnc lathe
Andy,
Thanks for the idea. Yeah that is kind of what I was thinking of also. Was just hoping there was an easier way I didn't know.
I will give something like you did a try.
Thanks,
Chris
Thanks for the idea. Yeah that is kind of what I was thinking of also. Was just hoping there was an easier way I didn't know.
I will give something like you did a try.
Thanks,
Chris
Please Log in or Create an account to join the conversation.
17 Jan 2015 15:35 - 17 Jan 2015 15:40 #55120
by Rick G
Replied by Rick G on topic V groves in bar on cnc lathe
You could look at NGCGUI...
linuxcnc.org/docs/html/gui/ngcgui.html
www.linuxcnc.org/index.php/english/forum...broutines-and-ngcgui
The below code is not correct but a quick hack of an existing sub, but it gives you an idea.
linuxcnc.org/docs/html/gui/ngcgui.html
www.linuxcnc.org/index.php/english/forum...broutines-and-ngcgui
The below code is not correct but a quick hack of an existing sub, but it gives you an idea.
(odvcut for lathe from odtaper3)
;Do not use, not a working sub
;concept only
o<odvcut>sub
#<Large_Diam> = #1 (=1.00 Large Diameter)
#<Small_Diam> = #2 (=0.500 Small Diameter)
#<Max_Cut> = #3 (=0.100 Max Depth of Cut)
#<Start_z> = #4 (=0.00 Z Start of Cut)
#<Center_z> = #5 (=-.500 Z Center of Cut)
#<End_z> = #6 (=-1.00 Z End of Cut)
#<Feed> = #7 (=4 Feed IPM)
; #<Final_Cut> = #7 (=.005 Final Cut)
; #<Fin_ Feed> = #8 (=2 Final cut speed)
; #<Spring_Cuts> = #9 (=0 Spring Cuts)
#<Stock_Diam_F> = #<Large_Diam>
#<Start_Diam_F> = #<Small_Diam>
;#<Large_Diam> = [#<Large_Diam> + #<Final_Cut>]
;#<Small_Diam> = [#<Small_Diam> + #<Final_Cut>]
#<Z_Len> = [0 - [#<End_z> - #<Start_z>]] ; length of Z cut
#<Cut_Amount> = [#<Large_Diam> - #<Small_Diam>] ; deepest X cut
#<Cuts> = FUP [[#<Cut_Amount> / #<Max_Cut>]] ; round up the number of passes to reach deepest cut
#<Max_Cut> = [#<Cut_Amount> / #<Cuts>] ; amount to take off X each pass
#<Z_Cut> = [#<Z_Len> / #<Cuts>] ;length of each Z cut
;(DEBUG, Stock_Diam #<Large_Diam>)
;(DEBUG, Target_Amount #<Target_Amount>)
;(DEBUG, Max_Target_Cut #<Max_Target_Cut>)
g18 (xz plane)
g20 (inches)
g40 (cancel cutter radius compensation)
g49 (cancel tool lengthoffset)
g90 (absolute distance mode)
g94 (units/min feedrate)
g54 (Coordinant system 1 default)
g7 (diameter mode)
g64 p.001 q.001
M3 ; spindle cw
G0 X[#<Large_Diam> + .010] Z#<Start_z>
F#<Feed>
G1 X#<Large_Diam>
#<Current-Diameter> = #<Large_Diam>
#<Current-Z> = #<Start_z>
#<X_Target> = #<Large_Diam>
#<Z_Target> = #<Start_z>
;#<Z_Target> = [#<Z_Target> - #<Z_Cut>]
o100 while [#<Cuts> gt 0]
#<Current-Diameter> = [#<Current-Diameter> - #<Max_Cut>]
#<Z_Target> = [#<Z_Target> - #<Z_Cut>]
;G0 X [#<Current-Diameter> + .010]
G1 X #<Current-Diameter> Z #<Center_z>
;G1 X #<Current-Diameter>
G1 X #<Large_Diam> Z #<End_z>
G0 X [#<Large_Diam> + .010]
G0 Z #<Start_z>
#<Cuts> = [#<Cuts> - 1]
o100 endwhile
; add finish cut here
M5 ; stop spindle
G0 Z #<Start_z>
o<odvcut>endsub
Last edit: 17 Jan 2015 15:40 by Rick G.
Please Log in or Create an account to join the conversation.
Time to create page: 0.077 seconds