Knurling w/ threading tool using G33 - Emco 120P
- tome
 - Offline
 - Premium Member
 - 
				
			 
		Less
		More
		
			
	
		- Posts: 116
 - Thank you received: 11
 
			
	
						14 Sep 2015 00:14				#62521
		by tome
	
	
		
			
	
	
			 		
													
	
				Knurling w/ threading tool using G33 - Emco 120P was created by tome			
			
				Here is a video of our G33 knurling routine running.  Pretty cool.  I’m sure we aren’t the first to do this, but since I haven’t seen it before I will pretend like it 
  BTW, this knurl is only about 5 thou deep, deeper ones will follow.
Here is the code:
G8
G53 G0 X0
G53 G0 Z0
M6 T3 G43
#<workpieceDia> = 0.700
#<workpieceRad> = [#<workpieceDia>/2]
#<safeXOffset> = 0.025
#<safeX> = [#<workpieceRad> + #<safeXOffset>]
#<knurlStartZ> = 0.000
#<knurlLen> = 0.25
#<knurlLeadIn> = 0.010
#<knurlDepth> = 0.002
#<knurlPerDia> = 28
#<knurlAngle> = 30
#<knurlEndZ> = [#<knurlStartZ> - #<knurlLen>]
#<rpm> = 100
#<pi> = 3.142
; The surface is the circumference of the workpiece
#<workSurface> = [#<pi> * #<workpieceDia>]
; Given a knurl angle, calculate Z feed given <workSurface>
#<feedPerRev> = [TAN[#<knurlAngle>] * #<workSurface>]
#<feedPerMin> = [#<feedPerRev> * #<rpm>]
(debug, feed per revolution: #<feedPerRev>; per min: #<feedPerMin>)
; thread _width_ is equal to distance traveled in one rev, i.e. <feedPerRev>
#<threadWidth> = #<feedPerRev>
; Thus, TPI will be 1/<threadWidth>
#<tpi> = [1/#<threadWidth>]
; To do a n-start thread, we need to start each thread
; <threadWidth>/n further back (Z+) than the prior thread
#<nStartZOffset> = [#<threadWidth>/#<knurlPerDia>]
M3 S#<rpm>
#100 = #<knurlPerDia>
#110 = [[#<knurlPerDia> * #<nStartZOffset>] + #<knurlStartZ> + #<knurlLeadIn>]
(debug, knurl lead in: #110)
G0 Z#110
G0 X[#<workpieceRad> - #<knurlDepth>]
O100 WHILE [#100 GT 0]
(debug, start Z: #110; feed: #<feedPerRev>)
(calculate the lead in for the knurl AFTER this one)
#105 = #110
#110 = [#110 - #<nStartZOffset>]
;G33 Z#110 K#<feedPerRev>
;G1 Z#<knurlEndZ> F#<feedPerMin>
;G1 Z#105 F#<feedPerMin>
G33 Z#<knurlEndZ> K#<feedPerRev>
G33 Z#105 K#<feedPerRev>
;G0 X#<safeX>
G0 Z#110
;G0 X[#<workpieceRad> - #<knurlDepth>]
#100 = [#100 - 1]
O100 ENDWHILE
					Here is the code:
G8
G53 G0 X0
G53 G0 Z0
M6 T3 G43
#<workpieceDia> = 0.700
#<workpieceRad> = [#<workpieceDia>/2]
#<safeXOffset> = 0.025
#<safeX> = [#<workpieceRad> + #<safeXOffset>]
#<knurlStartZ> = 0.000
#<knurlLen> = 0.25
#<knurlLeadIn> = 0.010
#<knurlDepth> = 0.002
#<knurlPerDia> = 28
#<knurlAngle> = 30
#<knurlEndZ> = [#<knurlStartZ> - #<knurlLen>]
#<rpm> = 100
#<pi> = 3.142
; The surface is the circumference of the workpiece
#<workSurface> = [#<pi> * #<workpieceDia>]
; Given a knurl angle, calculate Z feed given <workSurface>
#<feedPerRev> = [TAN[#<knurlAngle>] * #<workSurface>]
#<feedPerMin> = [#<feedPerRev> * #<rpm>]
(debug, feed per revolution: #<feedPerRev>; per min: #<feedPerMin>)
; thread _width_ is equal to distance traveled in one rev, i.e. <feedPerRev>
#<threadWidth> = #<feedPerRev>
; Thus, TPI will be 1/<threadWidth>
#<tpi> = [1/#<threadWidth>]
; To do a n-start thread, we need to start each thread
; <threadWidth>/n further back (Z+) than the prior thread
#<nStartZOffset> = [#<threadWidth>/#<knurlPerDia>]
M3 S#<rpm>
#100 = #<knurlPerDia>
#110 = [[#<knurlPerDia> * #<nStartZOffset>] + #<knurlStartZ> + #<knurlLeadIn>]
(debug, knurl lead in: #110)
G0 Z#110
G0 X[#<workpieceRad> - #<knurlDepth>]
O100 WHILE [#100 GT 0]
(debug, start Z: #110; feed: #<feedPerRev>)
(calculate the lead in for the knurl AFTER this one)
#105 = #110
#110 = [#110 - #<nStartZOffset>]
;G33 Z#110 K#<feedPerRev>
;G1 Z#<knurlEndZ> F#<feedPerMin>
;G1 Z#105 F#<feedPerMin>
G33 Z#<knurlEndZ> K#<feedPerRev>
G33 Z#105 K#<feedPerRev>
;G0 X#<safeX>
G0 Z#110
;G0 X[#<workpieceRad> - #<knurlDepth>]
#100 = [#100 - 1]
O100 ENDWHILE
		The following user(s) said Thank You: phillc54, joekline9, Boogie, sharpshooterser, Dinuka_Shehan 	
			Please Log in or Create an account to join the conversation.
- Dinuka_Shehan
 - 
				
											 - Offline
 - Platinum Member
 - 
				
			 
		Less
		More
		
			
	
		- Posts: 333
 - Thank you received: 26
 
			
	
						18 Oct 2019 21:43				#148228
		by Dinuka_Shehan
	
	
		
			
	
			
			 		
													
	
				Replied by Dinuka_Shehan on topic Knurling w/ threading tool using G33 - Emco 120P			
			
				Can you post the actual code without tags			
					Please Log in or Create an account to join the conversation.
- cmorley
 - Offline
 - Moderator
 - 
				
			 
		Less
		More
		
			
	
		- Posts: 7230
 - Thank you received: 2106
 
			
	
						18 Oct 2019 22:53				#148231
		by cmorley
	
	
		
			
	
			
			 		
													
	
				Replied by cmorley on topic Knurling w/ threading tool using G33 - Emco 120P			
			
				If you mean 'tags' like this : #<workpieceDia>
Those are variables and make it easy to change the parameters of the program.
They are ugly but necessary
Chris
					Those are variables and make it easy to change the parameters of the program.
They are ugly but necessary
Chris
Please Log in or Create an account to join the conversation.
- tommylight
 - 
				
											 - Away
 - Moderator
 - 
				
			 
		Less
		More
		
			
	
		- Posts: 20860
 - Thank you received: 7115
 
			
	
						18 Oct 2019 23:24				#148236
		by tommylight
	
	
		
			
	
			
			 		
													
	
				Replied by tommylight on topic Knurling w/ threading tool using G33 - Emco 120P			
			
				# is not a tag, it is just miss used as one, it is a numbered parameter.			
					Please Log in or Create an account to join the conversation.
- Dinuka_Shehan
 - 
				
											 - Offline
 - Platinum Member
 - 
				
			 
		Less
		More
		
			
	
		- Posts: 333
 - Thank you received: 26
 
			
	
						21 Oct 2019 06:28		 -  21 Oct 2019 06:30		#148443
		by Dinuka_Shehan
	
	
		
			
	
	
			 		
													
	
				Replied by Dinuka_Shehan on topic Knurling w/ threading tool using G33 - Emco 120P			
			
				Thanks for information
How can I post this code with custom values.
If i want to cut 25 tpi in 1inch stock.
If a metric based machine work with this?
Any ideas?
					How can I post this code with custom values.
If i want to cut 25 tpi in 1inch stock.
If a metric based machine work with this?
Any ideas?
		Last edit: 21 Oct 2019 06:30  by Dinuka_Shehan.			
			Please Log in or Create an account to join the conversation.
		Time to create page: 0.066 seconds