Круглый шнек на токарном станке

Материал из cnc-club
Перейти к навигации Перейти к поиску

  1. <_d> = [34 + 0.25] (диаметр d)
  2. <_d1> = [45 + 0.25] (диаметр D)
  3. <_e> = [[#<_d>-#<_d1>]/2] (e)
  4. <_l> = [42] (шаг)
  5. <_l1> = [6*#<_l>*0+50] (общая длина)
  1. <_step> = 0.2 (шаг реза мм/оборот)
  2. <_astep> = [30] (шаг по углу - в градусах)

G21

  1. <_x_res> = 0

O101 SUB ; Get X at point of rotation #<a> = #1 #<cx> = [#<_e>*SIN[#<a>]] #<cy> = [#<_e>*COS[#<a>]] #<t> = [#<_d>*#<_d>/4 - #<cy>*#<cy>] (DEBUG, #<cx> #<cy> #<a> #<_e>) O102 IF [#<t> GE 0] #<_x_res> = [SQRT[#<t>]+#<cx>] O102 ELSE #<_x_res> = 0 O102 ENDIF O101 ENDSUB


F100 M3 S30 O100 SUB

G0 X[#<_d1> + 10] G0 Z[5] #<x> = #<_x> #<z> = #<_z> O105 WHILE [#<z> GT [0-#<_l1>]]

#<a> = [#<a> + #<_astep>] #<zl> = #<z> #<z> = [ - #<a>/360*#<_step>] #1 = [#<z>-#<zl>] (DEBUG, #1) #<a1> = [#<a> + #<z>/#<_l>*360] O101 CALL [#<a1>] ; Get X #<xl> = #<x> #<x> = #<_x_res> #<dz> = [#<z>-#<zl>] #<dx> = [#<x>-#<xl>] G33 Z#<z> X#<x> K [SQRT[#<dz>*#<dz> + #<dx>*#<dx>]*360/#<_astep>] O105 END WHILE G0 X[#<_d1> + 10]

O100 END SUB

O100 CALL

M2