What's new
What's new

Turning internal Rope thread

Alex_cn

Plastic
Joined
May 20, 2022
Location
Changzhou
Hello guys,

First post on the Forum, so I'll introduce myself first. I'm a Frenchy leaving in China. I recently opened a workshop to produce anchor bars and coupling sleeve to connect the bars together.
I produce the bar on a thread rolling mill and the coupling sleeve on a CNC Lathe SYMG HTC40E with a Fanuc Oi-TF Plus controller (2 axis X and Z one encoder on the spindle).

My first thread on the forum concerns the ways to produce the internal rope thread.

The first way which I'll call the "traditional way" is about to repeat a G32 along the shape of the thread profile.
To achieve that I made a parametric program :

(Be carefull: G code system GSA , Tool compensation parameters has been customized TXXXX -> TXX DXX)
(Stock Parameter)
SETVN500[SL,SOD,SID]
[#SL]=192(Stock lengh)
[#SOD]=42(Stock Outer Diameter)
[#SID]=26(Stock Inner Diameter)
(Finish product Parameter)
SETVN503[PL,PICL,PICA,POCL,POCA,POCR,MSW,GR,XBD,TH,TR1,TR2,TP,TA]
[#PL]=190(Product Lenght)
[#PICL]=2(Product inner chemfer Lenght)
[#PICA]=45(Product inner chemfer angle)
[#POCL]=3(Product outer chemfer Lenght)
[#POCA]=30(Product outer chemfer angle)
[#POCR]=2(Product outer chemfer radius)
[#MSW]=3.5(Middle stop width)
[#GR]=7.924(Groove radius)
[#XBD]=28.485(D1 Boring diameter, 27=min boring diameter of T2)
[#TH]=1.6(H)
[#TR1]=5.5(R1)
[#TR2]=6.0(R2)
[#TP]=12.7(Pitch)
[#TA]=20.57246577(Thread flange angle should be able to be calculated)
[#_MSGSTP]=1(Set Quantity of needed parts in #100 and Insert Stock)
(To do Find parameter to read a natural number and read the input button)
[#_PRTSN]=#100(set number of needed part)
[#_PRTSA]=0(Reset number of turned part)
(T1 parameter Turning tool DWLNL2525M-08JCT_WNMG080408PH_CA525)
SETVN520[TN1,TN1VC,TN1FR,TN1AP,TN1TL]
[#TN1]=01(facing tools number)
[#TN1VC]=220(Facing cuting speed)
[#TN1FR]=0.4(Facing feed rate)
[#TN1AP]=6(Facing rought cuting depth)
([#TN1TL]= to do add tool life parameter)
(T2 parameter boring tool E25T-SCLCL09-27AE_CCMT09T308HQ_PR930)
SETVN525[TN2,TN2VC,TN2FR,TN2AP,TN2TL]
[#TN2]=02(Boring tool number)
[#TN2VC]=90(Boring cuting speed)
[#TN2FR]=0.21(Boring feed rate)
[#TN2AP]=2(Boring cuting depth)
([#TN2TL]=to do add tool life parameter)
(T3 parameter copying tool E20S-SDUCL11-27A_DCMT11T308HQ_PR930)
SETVN530[TN3,TN3R,TN3VC,TN3TVC,TN3FR,TN3AP,TN3TAP,TN3TF,TN3TL]
[#TN3]=03(Copying tool number)
[#TN3R]=0.8(Insert radius)
[#TN3VC]=100(Grooving cuting speed)
[#TN3TVC]=60(Thread cutting speed)
[#TN3FR]=0.2(Grooving feed rate)
[#TN3AP]=1.5(Grooving cuting depth)
[#TN3TAP]=1.6(Threading cuting depth)
[#TN3TF]=0.19(Threading Feed)
([#TN2TL]= to do add tool life parameter)
(Position Variable)
SETVN540[XOC,ZRA,ZRC,ZSA,XRA,XRC,ZTC,XTC]
[#XOC]=1(X over cut during facing)
[#ZRA]=2(Retract amount on Z Approach and tool change)
[#ZRC]=0.5(Retract amount on Z during cycle)
[#ZSA]=[[#SL]-[#PL]]/2(Stock allowance on Z)
[#XRA]=2(Retract amount on X Approach outer diameter)
[#XRC]=0.5(Retract amount on X during cycle inner diameter)
[#ZTC]=320(Tool Change position on Z)
[#XTC]=150(Tool Change position on x)
(Radius adjustment for threading)
[#TR1]=[#TR1]-[#TN3R]
[#TR2]=[#TR2]+[#TN3R]
(Initialisation at first start)
(Retract tail clamp, Start chips belt, ZX plane, Input in mm, Cancel tool nose radius compensation, Cancel tool lenght compensation, Cancel Coordinate system rotation cancel, Cancel canned cycle, Feed per revolution)
M33G18G21G40G49G64G69.1G80G99
M74
G28U0.W0.M19S0(Go to reference position, X,Z and Chuck angle)
M20(Turning Mode)
N10(OP10 FACING)
M34(Chuck max clamping force)
...
N21(Calculation)
#9=[#SID](X Approach point)
#10=[#ZSA]+[#PL]+[#ZRA](Z Approach point)
#11=[#XBD]+[2*[[#PICL]+[#ZRA]*SIN[[#PICA]]]](X point E, *2 due to diameter)
#12=[#XBD](x Point F & G)
#13=[#ZSA]+[#PL]-[#PICL](Z Point F)
#14=[#ZSA]+[[#PL]/2]-[#MSW]-0.5(Z Point G)
(Calcul of Z tool change position)
[#ZTC]=[#ZSA]+[#PL]+[#ZRA]+136(136 difference in Z between T1 and T2)

N31(Calculation)
#15=[#XBD]-[2*[#XRC]](X approach point, H and K, *2 due to diameter)
#16=[#ZSA]+[#PL]+[#ZRA](Z approach point outside the part)
#17=[#ZSA]+[[#PL]/2]+[[#MSW]/2]+12.8+[[#XRC]*COS[30]](Z approach point inside the part & Point H)
#18=[#XBD]+2*[2.438*TAN[30]](X point I & J, *2 due to diameter)
#19=[#ZSA]+[[#PL]/2]+[[#MSW]/2]+12.8-2.438(Z point I)
#20=[#ZSA]+[[#PL]/2]+[[#MSW]/2]+2.438(Z point J)
#21=[#ZSA]+[[#PL]/2]+[[#MSW]/2]-[[#XRC]*COS[30]](Z point K)
(Calcul of Z tool change position)
[#ZTC]=[#ZSA]+[#PL]+[#ZRA]+10(10 difference in Z between T2 and T3)

N32(Tool Change to T3)
G0G40Z[#ZTC](Go to tool change position)
T[#TN3]G43.7D[#TN3](Change to T3)
G96S[#TN3VC]M3(Defined Vc)
G50S4500(Max RPM)
N40(OP40 THREADING ROPE THREAD)
N41(Calculation)
#22=[#XBD]-2*[#XRC](X approach point)
#23=[#ZSA]+[#PL]+[#TP](Z approach point)
#24=[#ZSA]+[[#PL]/2]+[[#MSW]/2]+[12.8/2]-2*[#TN3R](Z Threadin end point)
#25=[1000*[#TN3TVC]]/[[#_PI]*[[#XBD]+[#TH]]](Calcul of Theorical RPM)
(Check of Feed rate and RPM)
IF[#25*[#TP]LT9500]THEN
#25=#25
ELSE
#25=9500/[#TP]
ENDIF
#26=[#XBD](Initialisation of Threading start point in X)
#27=#23(Initialisation of Threading start point in Z and correction de rayon)
#28=#23+2.3895(Z Point A including radius compensation for R0.8)
#29=#23+4.6985(Z point B including radius compensation for R0.8)
#30=#23+8.0015(Z point C including radius compensation for R0.8)
#31=#23+10.3105(Z point D including radius compensation for R0.8)
#32=[#XBD]+2*0.4336(X point A and D including radius compensation for R0.8)
#33=[#XBD]+2*1.3003(X point B and C including radius compensation for R0.8)

N42(Threading)
G97S#25M3(Set RPM)
WHILE[#27LE#28]DO1(Threading to point A)
#27=#27+[#TN3TF]
#26=[#XBD]+2*[#TR2]-2*[#TR2]*COS[ATAN[[#27-#23]/[#TR2]]]
G0X#22Z#23(Go to approach point)
G1X#26Z#27(Go to start point)
G32Z#24F[#TP](Threading)
G1X#22(X retract)
G0Z#23(Back to start point)
END1
WHILE[#27LE#29]DO1(Threading to point B)
#27=#27+[#TN3TF]
#26=#32+2*[#27-#28]*SIN[[#TA]]
G0X#22Z#23(Go to approach point)
G1X#26Z#27(Go to start point)
G32Z#24F[#TP](Threading)
G1X#22(X retract)
G0Z#23(Back to start point)
END1
WHILE[#27LE#30]DO1(Threading to point C)
#27=#27+[#TN3TF]
#26=[#XBD]+2*[#TH]-2*[#TR1]+2*[#TR1]*COS[ATAN[[#23+[#TP]/2-#27]/[#TR1]]]
G0X#22Z#23(Go to approach point)
G1X#26Z#27(Go to start point)
G32Z#24F[#TP](Threading)
G1X#22(X retract)
G0Z#23(Back to start point)
END1
WHILE[#27LE#31]DO1(Threading to point D)
#27=#27+[#TN3TF]
#26=#33-[2*[#27-#30]*SIN[[#TA]]]
G0X#22Z#23(Go to approach point)
G1X#26Z#27(Go to start point)
G32Z#24F[#TP](Threading)
G1X#22(X retract)
G0Z#23(Back to start point)
END1
WHILE[#27LE[#23+[#TP]]]DO1(Threading to point E)
#27=#27+[#TN3TF]
#26=[#XBD]+2*[[#TR2]-[#TR2]*COS[ATAN[[#23+[#TP]-#27]/[#TR2]]]]
G0X#22Z#23(Go to approach point)
G1X#26Z#27(Go to start point)
G32Z#24F[#TP](Threading)
G1X#22(X retract)
G0Z#23(Back to start point)
END1

N50(Flip Stock)
(Calcul of Z tool change position)
[#XTC]=[#SOD]+100(100 allowance in X)
G0X[#XTC](Let space to flip the stock)
M9
M5
(M11 Unclamp the part to add after tool life set up)
M00(Flip the side of the part)
.... (repeat without stock allowance /2)
M11(Unclamp the part)
M00(Stop program Remove part D insert stock)
IF[[#_PRTSA]LE[#_PRTSN]]THEN(Check number of parts turned)
[#_PRTSA]=[#_PRTSA]+1(increment the number of part turned)
(To do stop cycle time and reset)
GOTO10(Return to the begining)
ELSE
[#_PRTSA]=0(reset the numbert of turned part)
ENDIF
M75(Stop chips belt)
M30(Stop program)

This program manage to produce coupling sleeve with relative accuracy due to tool deflection. Unfortunately I cannot use stronger tools due to internal diameter. I manage to use mastercam to create a similar program which is not parametric but I had some roughing passe on the threading. With this roughing passes, the depth of cut is reduce and the accuracy greater.
Anyway this traditional way has some limits for the productivity. It require many passes and the cutting condition lead to some chartering as in threading F is fixed by the pitch of the thread (in this case 12.7mm) and the machine having a maximum cutting speed of 10 000m/min I can't reach a proper cutting speed.

There is other way to produce this thread
The excentric turning as it is done by okuma on external threading
On my machine I got an encoder as it is not an absolute encoder I need to run a M19 S0 to find the 0 position and then I can see in diagnosis 445 the pulse of the encoder and on diagnosis 446 the angle in degree.
The question is how to read the value of the encoder either parameter 445 or parameter 446 that I can program excentric turning.
something like x=[#XBD]+2*1.6*cos[PRM[446]]
Already try that but the machine reject it.
If someone have that little hint, I could finish a parametric program after some mathematics and share it.
This excentric turning is anyway just a step to the next level as it also got some limits for productivity. Acceleration of the machine abuse of the x axis calculation ability of the system Y compensation to be calculated... my machine doesn't have any Y axis. But with the proper tool and being awear of it I should be able to compensate that.

So the final step would be to do an hybrid between the traditional and the excentric.
Some excentric turning with lawer feed and increase the feed in Z with multiple passes maybe F3.175 with 4 passes. the advantage would be to save the X axis from the full excentric turning and save some passes from the traditional way. It should lead to a better accuracy and nicer surface finish.

Thank you in advance for any suggestion or interest on that topics.
 
Not hard to believe that Okuma can doo this.
I wonder if anyone else can?

Okuma was showing a large boring mill at The Tool Show that could synch the spindle to a boring bar tip and not use a boring head, and just interp it. That was 10 yrs ago I'd guess...


----------------

Think Snow Eh!
Ox
 
Good morning Alex_cn:
There is another way to make threads like this, and that is to sinker EDM them.
Although sinker EDM is considered to be a marginal production process for all but specialized applications (it's SLOOOOW), for some things it is worth considering.

In your case the small diameter and deep thread make it marginal to try the eccentric turning your video demonstrates. so you have a fundamental problem with turning it.
You also can't tap it because the large surface area that would be form cutting is way too large for the tap to tolerate, even if you could find someone to make one for you.

So the processes that are left to you are either to 3D metal print it, to investment cast it, to metal injection mold it, or to sinker EDM it if it's truly too long to single point bore it with either G32 and a gazillion passes or the crazy eccentric turning setup on the Okuma.

Have you considered trying to turn it from both ends by flipping it and aligning the workpiece radially between flips?
If you can do that and get an acceptable outcome you can go twice as deep.
Even if you have to relieve it in the middle, could this be workable?

If I had to do this in production for the best price possible, I'd look first at investment casting it.
Then I'd look at turning it from both ends.
Then I'd look at sinker EDM.
Then I'd look at making it in two halves and joining them together...either short lengths that can be turned or split in two halves that can be milled, put together and welded or bolted, or even pressed or furnace brazed into a sleeve.

My decision would be made by the price point I'd need to hit, by the accuracy it needs to have, and by the material choices I get to use.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com

Another thought; could you have them mandrel swaged?
MC
 
Last edited:
Can't tap it?

Does this thread differ much from a re-bar coupler thread?

I quoted a job a cpl months (?) ago that had the concrete thread and I found an outfit that stocked those taps. (they weren't cheap!)

I don't recall who I quoted it to and could spend much time searching for it now, and Google can't seem to find them now either. (not sure what key words I should have used)

But if this thread is only slightly different than that, then I would think that someone would make it?

On the other hand, why would you ever have an app for an "internal" rope thread?
Shirley not for rope...


------------------

Think Snow Eh!
Ox
 
Is this a mass production kind of thing? I've wondered if something like an internal rope thread could be made using a rotary hammer on a mandrel.
 
Thank you all for your reply.
To answer few points rises up.
@ Nmbmcer : it’s mass production. The lathe make those parts 23h/day 6 days/ week. Only this kind of part. The example I gave is one of the most difficult by the internal diameter and by the length. Bigger diameter one are easier to manage with traditional g32.
@implex thanks for all hints edm would be a great choice for accuracy but for mass production I’ll need a lot of edm sinking machine. Then investment casting could be a possibility but I’m not sure I’ll manage to reach the mechanical property requirements. And being in China I’m concern about the scrap rate of the supplier.
Material to process is 40Cr (Chinese equivalent to 41CrMo or for American 5140) quenched and tempered.
The sleeves have a middle stop which allows me to make Alf at one side, flip the stock and make the other Alf. These helps a lot without these not even a small chance to turn it so deep. With carbide tool holder I already get 0.15 mm deflection on 100 mm length.

@ Ox : It is similar to rebar coupler. I’ll check this rotary hammer on mandrel idea.

But still if someone know how to read the spindle angle from diagnosis 445 or 446 I could give a try to eccentric or hybrid turning .
 
D
Good morning Alex_cn:
There is another way to make threads like this, and that is to sinker EDM them.
Although sinker EDM is considered to be a marginal production process for all but specialized applications (it's SLOOOOW), for some things it is worth considering.

In your case the small diameter and deep thread make it marginal to try the eccentric turning your video demonstrates. so you have a fundamental problem with turning it.
You also can't tap it because the large surface area that would be form cutting is way too large for the tap to tolerate, even if you could find someone to make one for you.

So the processes that are left to you are either to 3D metal print it, to investment cast it, to metal injection mold it, or to sinker EDM it if it's truly too long to single point bore it with either G32 and a gazillion passes or the crazy eccentric turning setup on the Okuma.

Have you considered trying to turn it from both ends by flipping it and aligning the workpiece radially between flips?
If you can do that and get an acceptable outcome you can go twice as deep.
Even if you have to relieve it in the middle, could this be workable?

If I had to do this in production for the best price possible, I'd look first at investment casting it.
Then I'd look at turning it from both ends.
Then I'd look at sinker EDM.
Then I'd look at making it in two halves and joining them together...either short lengths that can be turned or split in two halves that can be milled, put together and welded or bolted, or even pressed or furnace brazed into a sleeve.

My decision would be made by the price point I'd need to hit, by the accuracy it needs to have, and by the material choices I get to use.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com

Another thought; could you have them mandrel swaged?
MC
Mandrel swaged would be really hard. I process the same material on bars with the exact same thread but external with a 3 dies thread rolling mill. It requires very high pressure and high torque. Also have some issues with this process, but I managed to produce qualified bars. Maybe I’ll create a topic on that. As I found 60 company producing bars in China and none of them respect the thread profile in order to reduce the required pressure and torque needed. In Europe few company do it but there strength output isn’t really good they use softer material to deal with the pressure and torque issue.
 
Hi again Alex_cn:
Is there maybe a custom machine in your future?
Something like a line boring machine where the boring bar can be supported at both ends and the workpiece rotated and traversed around it.
If you rotate the boring bar too it's almost like thread milling but you can reach a much longer Length to Diameter ratio because of the outboard support for the tool.


If your need is to make as many as you're implying, I'd certainly look into it.
There are a million vendors out there who'd LOVE to build something like this for you.

A place I'd start is with a fellow who posts on here...his Practical Machinist handle is "motion guru"
His company specializes in all sorts of weird and wonderful automation for production processes...I'd definitely knock on his door.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 
Hi again Alex_cn:
Is there maybe a custom machine in your future?
Something like a line boring machine where the boring bar can be supported at both ends and the workpiece rotated and traversed around it.
If you rotate the boring bar too it's almost like thread milling but you can reach a much longer Length to Diameter ratio because of the outboard support for the tool.


If your need is to make as many as you're implying, I'd certainly look into it.
There are a million vendors out there who'd LOVE to build something like this for you.

A place I'd start is with a fellow who posts on here...his Practical Machinist handle is "motion guru"
His company specializes in all sorts of weird and wonderful automation for production processes...I'd definitely knock on his door.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
That might be an interesting solution.
I might consider it in the future.
But still would like to try an hybrid eccentric turning threading.
I go back to the question is there a way to read diagnosis 445 or 446 in fanuc macro to index X axis according to the angle.

Thanks anyway.
 
Hi again Alex_cn:
So help me understand exactly what you're trying to do.
You don't have the Okuma that you reference in the video but you want to make the machine you DO have, move the same way the Okuma is doing?

So you want to read the spindle encoder in real time (what sampling frequency?) and slave it to the X axis servomotor through the control, reading the angular position of the spindle with the encoder and then giving X axis position commands that will constantly change as you both rotate the spindle AND traverse the Z axis.
You want to be able to maintain the synchronicity over a speed range that is appropriate for the material your cutting tool is made of (carbide) and your workpiece is made of.
For a small diameter that's going to be pretty fast, so lots of data to read and to process quickly.

That sounds like a tall order to me...way above my pay grade to try to offer anything useful.

My inclination if confronted with a problem like this would be to just buy the damn Okuma and enjoy that someone else solved the problem for me.
I know that sounds defeatist, but my desire would be to make the parts, not re-invent something already commercially available.

If you can pull this off, my hat will be off to you...I have no idea at all how you might go about this.
I can think of three people on this forum who might be able to take a stab at this.
One is a fellow named angel w whose knowledge of how code and controls work is vast (among other things)
A second guy who's impressed me with the range of his knowledge is someone named vancbiker.
The third is the motion guru I referenced earlier who solves these kinds of problems for a living.

There are others on here too, who are way smarter than me, and may have something to offer, but I expect that most of us have more expertise in how to run the machines conventionally and cut metal with them, than how to modify them to make them do crazy shit, especially this kind of crazy shit.
But who knows...maybe someone will come on here and tell you exactly what you need to do.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 
As Marcus states "That sounds like a tall order to me."

The User Macro is a high level application, with a lot of overhead and the execution speed is way, way too slow to do what you want as a parametric program and would have to be done at the Motion Control level.

Regards,

Bill
 
Last edited:
Hi again Alex_cn:
So help me understand exactly what you're trying to do.
You don't have the Okuma that you reference in the video but you want to make the machine you DO have, move the same way the Okuma is doing?

So you want to read the spindle encoder in real time (what sampling frequency?) and slave it to the X axis servomotor through the control, reading the angular position of the spindle with the encoder and then giving X axis position commands that will constantly change as you both rotate the spindle AND traverse the Z axis.
You want to be able to maintain the synchronicity over a speed range that is appropriate for the material your cutting tool is made of (carbide) and your workpiece is made of.
For a small diameter that's going to be pretty fast, so lots of data to read and to process quickly.

That sounds like a tall order to me...way above my pay grade to try to offer anything useful.

My inclination if confronted with a problem like this would be to just buy the damn Okuma and enjoy that someone else solved the problem for me.
I know that sounds defeatist, but my desire would be to make the parts, not re-invent something already commercially available.

If you can pull this off, my hat will be off to you...I have no idea at all how you might go about this.
I can think of three people on this forum who might be able to take a stab at this.
One is a fellow named angel w whose knowledge of how code and controls work is vast (among other things)
A second guy who's impressed me with the range of his knowledge is someone named vancbiker.
The third is the motion guru I referenced earlier who solves these kinds of problems for a living.

There are others on here too, who are way smarter than me, and may have something to offer, but I expect that most of us have more expertise in how to run the machines conventionally and cut metal with them, than how to modify them to make them do crazy shit, especially this kind of crazy shit.
But who knows...maybe someone will come on here and tell you exactly what you need to do.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
Thanks for the feedback. You got what I’m trying to do.
Going to the okuma lathe isn’t a real economics option. For the price of one okuma in China, I’d get 5 machines as I already have and equipped with robots feeder and unloader. Sure the, SYMG aren’t as accurate and as durable as the okuma but for the accuracy I need it’s far enough.
So far with this one year old SYMG, carbide tools and my traditional programs I’m within 0.05mm tolerance on a 100 pcs. The requirements of the norms for this threads is +-0.125.
Unless okuma allow me to devis processing time by 5, I better keep this way. Which is workable and economic.

Now days we produce around 220 pcs/days working 6days/weeks. I’d like to do what I’m try to do for 3 main raison. As mentioned in my first post. Save some passes to save some cycle time, share the load of work between the x and z axis and increase the surface finish by dealing with the chartering issue.

I would be able to program what I want without synchronization between the spindle angle and the x axis but I’m worry about speed fluctuations. As machine got an encoder on the spindle and I can find it in the diagnosis I’m just wondering how to read in a custom macro this parameter. I went through all manual I got but nothings came back after my search.
I’m pretty sure it’s just a little trick which I miss.

If I go baby step by baby step the first step would be to make a custom macro for eccentric. Then the customs macro for eccentric threading then the customs macro for hybrid threading.
 
As Marcus states "That sounds like a tall order to me."

The User Macro is a hogh level application, with a lot of overhead and the execution speed is way, way too slow to do what you want as a parametric program and would have to be done at the Motion Control level.

Regards,

Bill
Hello Angelw.
The execution speed of the customs macro might be an issue as well as the acceleration deceleration of the machine. The motion contrôle level might be a hint. If you have any rough lead which I can try out I’d appreciate. Once I tried by creating a dummy C axis. I explain my self. The machine doesn’t have any C axis. It’s a fanuc motor who drive the spindle through a belt. The encoder is directly on the spindle. I was able to change the machine parameters that a C axis appear and program it. The system shows the c axis moving even the machine wasn’t. Weird I know. So I went out of this way of trying.
 
Hi again Alex_cn:
Can you capitalize on the fact that you can uncouple the spindle rotation speed from the surface speed you need to machine efficiently?
The obvious way to do that is to mill with a live tool instead of single point boring.
The gain is that the spindle rotation can be slow because the cutting speed is determined by the rotation rate of the live tool instead of the rotation rate of the spindle.
That gives time for the control to process a macro.
It also gains you the ability to use a deeper depth of cut, since the chipload is broken up by the intrinsically discontinuous nature of the milling operation.
Theoretically that would allow you to make the entire finished profile in a single (but slow) pass.
I still don't envy you the challenge, especially since you say your candidate machine doesn't even have a C axis.
May I assume the encoder you have on the spindle is a single count encoder?
Can it interpolate between counts?
How will that part of it work? (It's probably obvious that I know very very little about how these things are set up, so ignore me if I'm way off base)

So conceptually, you are milling a very fine thread (with a pitch similar to what you'd use for turning...maybe 0.010" IPR) in one pass with a live tool, and the pass doesn't follow the thread pitch but changes the X axis position as it refers to the spindle encoder and the Z axis position, to eventually generate the finished thread, (even though the Z axis motion of the tool per spindle rotation is indifferent to the thread pitch you intend to make).
Of course in this scenario, you need to account for the fact that your cutter acts like a small saw because it is spinning continuously, so getting the motion correct to make the geometry correct without gouging it in unexpected places is an additional complication.

If you want to consider doing it this way, do you still think roughing it by single point boring it with successive G32 passes (and a different tool) to clear out the bulk of the material is worthwhile?
I assume that is what you mean when you say "hybrid".

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 
Last edited:
The video below is an example of someone doing eccentric turning using a macro program. This particular application has the advantage of being able to use C and Y. I thought it was relevant, though, because you can see how slow the turning actually occurs. I believe this is due to the processing speed as you can see it do a slight pause on every revolution.

 
Hi again Alex_cn:
Can you capitalize on the fact that you can uncouple the spindle rotation speed from the surface speed you need to machine efficiently?
The obvious way to do that is to mill with a live tool instead of single point boring.
The gain is that the spindle rotation can be slow because the cutting speed is determined by the rotation rate of the live tool instead of the rotation rate of the spindle.
That gives time for the control to process a macro.
It also gains you the ability to use a deeper depth of cut, since the chipload is broken up by the intrinsically discontinuous nature of the milling operation.
Theoretically that would allow you to make the entire finished profile in a single (but slow) pass.
I still don't envy you the challenge, especially since you say your candidate machine doesn't even have a C axis.
May I assume the encoder you have on the spindle is a single count encoder?
Can it interpolate between counts?
How will that part of it work? (It's probably obvious that I know very very little about how these things are set up, so ignore me if I'm way off base)

So conceptually, you are milling a very fine thread (with a pitch similar to what you'd use for turning...maybe 0.010" IPR) in one pass with a live tool, and the pass doesn't follow the thread pitch but changes the X axis position as it refers to the spindle encoder and the Z axis position, to eventually generate the finished thread, (even though the Z axis motion of the tool per spindle rotation is indifferent to the thread pitch you intend to make).
Of course in this scenario, you need to account for the fact that your cutter acts like a small saw because it is spinning continuously, so getting the motion correct to make the geometry correct without gouging it in unexpected places is an additional complication.

If you want to consider doing it this way, do you still think roughing it by single point boring it with successive G32 passes (and a different tool) to clear out the bulk of the material is worthwhile?
I assume that is what you mean when you say "hybrid".

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
Hi Implmex,

Thanks again, You are right the point is to gain efficiency and quality. I didn't have a thought of a live tool which can easily be implemented on the machine. I'll have a deeper look a it and it sounds like a good compromise. the encoder is effectively a single count encoder. anyway theoretically it should be enough. knowing the angle, the feed rate and the Z position I can deduct the number of turn.
"(It's probably obvious that I know very very little about how these things are set up, so ignore me if I'm way off base)" You know already more than the machine manufacturer.

For your understanding of rope threading.

The below picture is the standard dozen passes G32 threading
where the number of tool passes is equal to the pitch divided by the cutting width ae

1653276822746.png

That below one is the eccentric rope threading where a complete thread is machined in one tool pass
1653276869043.png

On this below picture you'll see the passes needed and in which order. and on the c diagram you will see a mixt between eccentric and normal threading, that's is what I call hybrid threading, where a thread is machined in more than one pass but the number of passes required is smaller than that in standard threading

1653277108284.png

sources "The International Journal of Advanced Manufacturing Technology (2019) 104:3343–3360" by Piotr Sitarz1 & Bartosz Powałka1

I hope there is no issue in posting those picture as it is available freely on the web.
 
The video below is an example of someone doing eccentric turning using a macro program. This particular application has the advantage of being able to use C and Y. I thought it was relevant, though, because you can see how slow the turning actually occurs. I believe this is due to the processing speed as you can see it do a slight pause on every revolution.

Hi wmpy,

That is the a good eccentric turning with C and Y axis. It's quite relevant but I don't think it's the macro processing time which cause the slight stop on every turn. I would bet on acceleration and deceleration of the Y axis. Also the eccentricity in that part is quite big so it would be almost impossible without a Y axis or you would turn with the bottom of the insert. Anyway eccentric turning without Y axis is possible on small eccentricity with a suffisant insert side rake angle.
 
but I don't think it's the macro processing time which cause the slight stop on every turn. I would bet on acceleration and deceleration of the Y axis.

Hello Alex,
I'd bet my bottom dollar that it is the Macro processing that is the cause of the pause. At the Y axis velocity, the acceleration/deceleration would be hardly noticeable, in terms of a pause and it would occur at the bottom of the Y axis stroke, which it is not, as well as at the top.

The material appears to be some type of plastic or nylon, certainly not metal. That surface speed alone would be enough to kill the insert in short order in steel; the stop, start in cut would just ensure that it happened sooner.

Forget about trying to turn the Rope Tread using a Macro Program, but milling it, as suggested by Marcus would be doable. If a small button insert would reach into the Major Diameter (Female Thread) of the thread, or as a test, a VNMG insert boring bar with the largest TNR available, would be worth a try.

Regards,

Bill
 
Hello Alex,
I'd bet my bottom dollar that it is the Macro processing that is the cause of the pause. At the Y axis velocity, the acceleration/deceleration would be hardly noticeable, in terms of a pause and it would occur at the bottom of the Y axis stroke, which it is not, as well as at the top.

The material appears to be some type of plastic or nylon, certainly not metal. That surface speed alone would be enough to kill the insert in short order in steel; the stop, start in cut would just ensure that it happened sooner.

Forget about trying to turn the Rope Tread using a Macro Program, but milling it, as suggested by Marcus would be doable. If a small button insert would reach into the Major Diameter (Female Thread) of the thread, or as a test, a VNMG insert boring bar with the largest TNR available, would be worth a try.

Regards,

Bill
For the pause after looking again you are right it's not acceleration trouble. The macro... possible if to huge calculation.

Sure some kind of plastic. With this depth of cut and this speed the insert won't last long in steel.

for know I'll keep doing the standard threading way and look deeper into milling it.

Thank you.

I'll come back to post if I make any progress.
 
Hi All:
Do I infer correctly, that the example of the Doosan in the second video must be using the C axis to control the spindle rotation rather than just turning the spindle and counting encoder pulses.
I believe this to be true because a dumb spindle does not normally behave this way...it just turns at a constant, commanded rate.

Seems to me, if true, that driving the spindle as C axis is fundamentally different from just running the spindle at low RPM and capturing encoder counts.
In the C axis instance, is the spindle motor acting exactly like the X or Z axis motor acts...ie is the spindle motor moving to a commanded angular position governed by what the control is explicitly telling it to do.
If that is so, can a lathe without a C axis capability EVER be made to behave this way?
Would you need to change the spindle encoder to something different, and would you need to change the control to allow it to command the spindle with something more than just "GO" at whatever RPM?
Must you have this to do what Alex wants to do?

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 








 
Back
Top