先端は球状で、途中がくぼむイヤらしい形状。

$MAZAK FAN's Web ブログ-片持ちで細長いシャフト加工

さて、あなたならどうする?

先端はR6.35の球状、続いてφ8.0、φ6.0、φ8.0、φ14.0と続く。
先端の球状部以外、ほとんどがφ8.0で中央付近がわずかφ6.0という細さ。
先端から根本付近のφ8.0までは130mmもの長さで、φ14.0までを含めると145mmの長さ。
(根本はφ20.0程度)

片持ちでこれを加工しました。

旋削加工で最も難しい部類に入る、細くて長い「ただまっすぐ」な形状、どーんと来い!



等加速度法(等加速度運動)を使ってG34のKとFを求める手順@MAZAK FAN's Web

■加速ねじ(不等ピッチねじ)のG34指令のK値を算出(F値はfo)

0~-100mm(LD:100mm)の範囲でリード10(初速度fo)からリード15(到達速度fn)まで加速する場合で考える。
ここは初級。

巻き数n:n = 2*LD/[fn+fo] = 2*100/[15+10] = 200/25 = 8

fn=fo+n*K より fn-fo=n*K, K=[fn-fo]/n
加速係数K:K = [fn-fo]/n = [15-10]/8 = 0.625

10~0をG32, 0~-100をG34とした場合:
G00 Z10.
G32 Z0. F10.
G34 Z-100. F10. K0.625

■入口に等加速度運動のクリアランスを追加したい
入口に等加速度運動のままクリアランス距離をとる場合、foが変わる。
foが小さくなり、G34のF値が変わる。加速係数Kは変わらない。(中級)

初速度 fo = √{fn^2 - (2*LD*K)} = √[15^2-(2*105*0.625)] = 9.682458

10~5をG32, 5~-100をG34とした場合:
G00 Z10.
G32 Z5. F9.6825
G34 Z-100. F9.6825 K0.625

■出口に等加速度運動のクリアランスを追加したい
出口に等加速度運動のままクリアランス距離をとる場合、fnが変わる。
fnが大きくなるがfoは変わらないのでG34のF値も変化なし。加速係数Kは変わらない。

到達速度 fn = √{(2*LD*K) + fo^2} (プログラムには関係ない)

10~0をG32, 0~-110をG34とした場合:
G00 Z10.
G32 Z0. F10.
G34 Z-110. F10. K0.625

10~5をG32, 5~-100をG34とした場合:
G00 Z10.
G32 Z5. F9.6825
G34 Z-110. F9.6825 K0.625

ここまで読んでも分からない大手企業の生産技術担当者はねもうね会社辞めてくださいホントにね。
お忙しい中小の方はね、サイトよりプログラムを自動生成するエクセルファイルをダウンロードして下さい。失敗したらゴメンなさい。自己責任で。
長期出張から自宅に戻りました。(ずいぶんと前に)

で、メインのパソコンの電源を入れることなく三ヶ月以上が経過。(笑)

その間に数万通のメールを受信。

迷惑メールではなくサーバに残されたものだけで数千通。

やっと先週末にメールをローカルに保存しました。

何かしらをお待ちいただいている方々、

もすこしお待ちを。。。

管理者
Acceleration Screw


こんなんどうでしょ?

この件、質問にはお一切お答えしません。
プログラム貼り付けるけど、理解できないだろうから使わない方が無難。
アラーム項目から解析する技量があり、解析に自信があればどうぞ。
すべては自己責任にて。
解析する技量と時間があれば、作った方が早いな。(笑)

問題があって大幅に(ってか、ほとんどだな)作り直したので、前のゴミが含まれているけど、問題はない。って誰に言ってる? -> 自身の備忘録として。

O0002(Sub Routine for O0001)
(Programmed for INTEGREX-IV series with MATRIX control only.)
(Copyright [C] 2007 Mazak Fans Web All Rights Reserved.)

IF [#1 EQ 1] GOTO 1000
IF [#1 EQ 2] GOTO 2000
#3000=34 (_Sub-Routine_Select_Failure)
M30

N1000
#530=#131
#514=0
#515=#514-[#517*SIN[#518]]
#531=SQRT[2*[-#515]*#134+#131*#131]
#516=#135*720*[#514-#515]/[#531+#530]
IF [ABS[#515] LE #102] GOTO 1900
#515=-#102
#531=SQRT[2*[-#515]*#134+#131*#131]
#516=#135*720*[#514-#515]/[#531+#530]

N1900
M99

N2000
M212
G00Z[#136]C[#506]
M[#178]
G00X[#511+#117]
G01X[#511]F[#169]
G01H[#507]W[#509]F[#536]
F[#501]
IF [#172 EQ 99] GOTO 2100
M[#172]

N2100
WHILE [ABS[#515] LE #102] DO 3
G01Z[#508+#515+#504]H[#516]
IF [ABS[#515] EQ #102] GOTO 2900
#514=#515

N2200
#530=SQRT[[2*[-#515]*#134]+[#131*#131]]
#518=ATAN[[SQRT[[2*[-#515]*#134]+[#131*#131]]]/[3.14159*#108]]
#515=#514-[#517*COS[#518]]
#531=SQRT[2*[-#515]*#134+#131*#131]
#516=#135*720*[#514-#515]/[#531+#530]
IF [ABS[#515] LE #102] GOTO 2800
#515=-#102
#531=SQRT[2*[-#515]*#134+#131*#131]
#516=#135*720*[#514-#515]/[#531+#530]
GOTO 2100

N2800
END 3

N2900
#519=#135*[[#508+#515]-[#113-#151/2-#115]]*360/#132
IF [#172 EQ 99] GOTO 2920
M[#172]

N2920
G01Z[#113-#151/2-#115]H[#519]F[#501]
G00X[#118+#116]

N2990
M99

O0001(Acceleration Screw Macro Ver.070227)
(Programmed for INTEGREX-IV series with MATRIX control only.)
(Copyright [C] 2007 Mazak Fans Web All Rights Reserved.)

N1000
#535=9029
#170=#0
#142=#3
G65P[#1]
G65P[#2]K[#6]

N1100
IF [#172 EQ 99] GOTO 1102
IF [#172 EQ 0] GOTO 1102
IF [#172 EQ 1] GOTO 1102
IF [#172 NE #0] GOTO 99901
#172=99

N1102
IF [#173 EQ 99] GOTO 1104
IF [#173 EQ 0] GOTO 1104
IF [#173 EQ 1] GOTO 1104
IF [#173 NE #0] GOTO 99901
#173=99

N1104
IF [#178 EQ 211] GOTO 1106
IF [#178 EQ 212] GOTO 1106
GOTO 99908

N1106
IF [#179 EQ 211] GOTO 1108
IF [#179 EQ 212] GOTO 1108
GOTO 99908

N1108
IF [#180 EQ 211] GOTO 1110
IF [#180 EQ 212] GOTO 1110
GOTO 99908

N1110
IF [#150 EQ 0] GOTO 1112
IF [#150 EQ 3] GOTO 1112
IF [#150 EQ 4] GOTO 1112
IF [#150 EQ 5] GOTO 1112
IF [#150 EQ 6] GOTO 1112
IF [#150 EQ 7] GOTO 1112
IF [#150 EQ #0] GOTO 1112
GOTO 99907

N1112
IF [#151 LE 0] GOTO 99901
IF [#152 LT 0] GOTO 99901
IF [#153 LT 0] GOTO 99901
IF [#154 LE 0] GOTO 99901
IF [#155 LE 0] GOTO 99901
IF [#156 LE 0] GOTO 99901
IF [#157 LE 0] GOTO 99901
IF [#158 LE 0] GOTO 99901
IF [#159 LE 0] GOTO 99901
IF [#160 LE 0] GOTO 99901
IF [#161 LE 0] GOTO 99901
IF [#162 LE 0] GOTO 99901
IF [#163 LE 0] GOTO 99901
IF [#164 LE 0] GOTO 99901
IF [#165 LE 0] GOTO 99901
IF [#166 LE 0] GOTO 99901
IF [#167 LE 0] GOTO 99901
IF [#168 LE 0] GOTO 99901
IF [#169 LE 0] GOTO 99901
IF [#171 LE 0] GOTO 99901
IF [#174 LE 0] GOTO 99901
IF [#174 LE 0] GOTO 99901
IF [#175 LE 0] GOTO 99901
IF [#176 LE 1] GOTO 99901
IF [#177 LE 0] GOTO 99901

N1114
IF [#151 LT #156] GOTO 99909
IF [#151 LT #160] GOTO 99909
IF [#151 LT #161] GOTO 99909
IF [#151 LT #168] GOTO 99909

N1200
IF [#100 LE 0] GOTO 99902
IF [#101 LE 0] GOTO 99902
IF [#102 LE 0] GOTO 99902
IF [#103 LE 0] GOTO 99902
IF [#104 LE 0] GOTO 99902
IF [#105 LE 0] GOTO 99902
IF [#106 LE 0] GOTO 99902
IF [#107 LE 0] GOTO 99902
IF [#108 LE 0] GOTO 99902
IF [#109 LE 0] GOTO 99902
IF [#114 LT 0] GOTO 99902
IF [#115 LT 0] GOTO 99902
IF [#116 LE 0] GOTO 99902
IF [#117 LT 0] GOTO 99902

N1202
IF [#110 EQ 1] GOTO 1204
IF [#110 EQ 2] GOTO 1204
GOTO 99912

N1204
IF [#105 GT #106] GOTO 99910
IF [#107 LE #109] GOTO 99911
IF [#118 LT #107] GOTO 99911
IF [#112 LE #113] GOTO 99913
IF [#113 GT #112-[#101+#102+#106/2]] GOTO 99905

N1900
#131=#101/#100
#132=#104/#103
#133=2*#102/[#132+#131]
#134=[#132-#131]/#133
#135=-1
IF [#110 EQ 1] GOTO 1920
IF [#110 NE 2] GOTO 99902
#135=1

N1920
#136=#112+#114+#151/2
#137=#100*360*#135
#138=ATAN[#131/[3.14159*#108]]
#139=[[#151/2]/[COS[#138]]]-[#151/2]
#140=ATAN[#132/[3.14159*#108]]
#141=[[#151/2]/[COS[#140]]]-[#151/2]
#145=#109+2*#153
#146=[#105-#151]-#152-#139

N1922
IF [#151+2*#139 GT #105-2*#152] GOTO 99903
IF [#151+2*#141 GT #106-2*#152] GOTO 99906

N2000
#500=#157
#501=#158
#536=#158
#503=#171
#517=#154
#518=#138

N2010
#520=#107-2*#159
IF [#520 GE #145] GOTO 4000
#520=#145

N4000
#504=0
#505=#112+#504-#136
#506=#505*360/#131*#135
#507=#137-#506
#508=#112-#101
#509=#508-#136
#511=#107-2*#503

N4100
G65 P[#535] A1

N8000
G50H[#142]

N8020
#170=3
IF [#150 EQ 4] GOTO 40000
IF [#150 EQ 6] GOTO 40000
IF [#150 EQ 7] GOTO 40000
#170=4
IF [#150 EQ 5] GOTO 50000
#170=#0

N9000
G97G98G00
M212
M200
G00C[#506]

N9100
M901 M203 S[#500]
G00Z[#136]
G00X[#107+#116]

N10000
WHILE [#511 GE #145] DO 1
#170=1
#500=#157
#501=#158
S[#500]

N11000
G65 P[#535] A2

N18000
IF [#511 EQ #145] GOTO 20000
#511=#511-2*#503
G65 P[#535] A1
END 1
#511=#145
G65 P[#535] A1
GOTO 10000

N20000
#170=2
#500=#181
#501=#182
#536=#182
#502=-#156
#503=#159
#517=#154
#518=#138
S[#500]

N20100
#510=0
#504=#502
IF [ABS[#504] LE #146] GOTO 20120
#504=-#146

N20120
#505=#112+#504-#136
#506=#505*360/#131*#135
#507=#137-#506
#508=#112-#101
#509=#508-#136+#504
#511=#107-2*#503

N20200
G65 P[#535] A1

N21000
WHILE [ABS[#504] LE #146] DO 4

N22000
WHILE [#511 GE #145] DO 5

N25000
G65 P[#535] A2

N28000
IF [#511 EQ #145] GOTO 29000
#511=#511-2*#503
G65 P[#535] A1
END 5
#511=#145
G65 P[#535] A1
GOTO 22000

N29000
IF [ABS[#504] EQ #146] GOTO 30000
#504=#504+#502
G65 P[#535] A1
END 4
#504=-#146
G65 P[#535] A1
GOTO 21000

N30000
#170=3
#500=#183
#501=#184
#536=#184
#502=#156
#503=#159
#517=#154
#518=#138
S[#500]

N30100
#510=0
#504=#502
IF [ABS[#504] LE #146] GOTO 30120
#504=#146

N30120
#505=#112+#504-#136
#506=#505*360/#131*#135
#507=#137-#506
#508=#112-#101
#509=#508-#136+#504
#511=#107-2*#503

N30200
G65 P[#535] A1

N31000
WHILE [ABS[#504] LE #146] DO 6

N32000
WHILE [#511 GE #145] DO 7

N35000
G65 P[#535] A2

N38000
IF [#511 EQ #145] GOTO 39000
#511=#511-2*#503
G65 P[#535] A1
END 7
#511=#145
G65 P[#535] A1
GOTO 32000

N39000
IF [ABS[#504] EQ #146] GOTO 40000
#504=#504+#502
G65 P[#535] A1
END 6
#504=-#146
G65 P[#535] A1
GOTO 31000

N40000

N90000
G28U0 M212
G00Y0
G50H[-#142]
#170=#0
M901 M205 S0
M99

N99901
#3000=21 (_Cutting_Data_Variable_Failure)
M30

N99902
#3000=22 (_Figure_Data_Variable_Failure)
M30

N99903
#3000=23 (_Tool_Too_Large_For_Entrance)
M30

N99904
#3000=24 (_Macro_Internal_Error)
M30

N99905
#3000=25 (_End-Point-Z_Error)
M30

N99906
#3000=26 (_Tool_Too_Large_For_Exit)
M30

N99907
#3000=27 (_#150_Failure)
M30

N99908
#3000=28 (_C-axis_Brake_Select_Failure)
M30

N99909
#3000=29 (_Width_of_Cut_Too_Large)
M30

N99910
#3000=30 (_Width_of_Groove_Failure)
M30

N99911
#3000=31 (_Diameter_Failure)
M30

N99912
#3000=32 (_Screw_Thread_CW/CCW_???)
M30

N99913
#3000=33 (_Z-Coordinates_Failure)
M30

N99914
#3000=34 (_Sub-Routine_Select_Failure)
M30

(Copyright [C] 2007 Mazak Fans Web All Rights Reserved.)