- 前ページ
- 次ページ
等加速度法(等加速度運動)を使って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
ここまで読んでも分からない大手企業の生産技術担当者はねもうね会社辞めてくださいホントにね。
お忙しい中小の方はね、サイトよりプログラムを自動生成するエクセルファイルをダウンロードして下さい。失敗したらゴメンなさい。自己責任で。
エキスパート資料のページを追加。
現在のコンテンツは下記です。
「EIA G34 不等ピッチねじ切り資料(加速ねじ切り, 不等リードねじ切り)」
「EIA G34 不等ピッチねじ切りプログラム自動生成エクセルファイル(フリー!!)」
MAZAK FAN's Web
長期出張から自宅に戻りました。(ずいぶんと前に)
で、メインのパソコンの電源を入れることなく三ヶ月以上が経過。(笑)
その間に数万通のメールを受信。
迷惑メールではなくサーバに残されたものだけで数千通。
やっと先週末にメールをローカルに保存しました。
何かしらをお待ちいただいている方々、
もすこしお待ちを。。。
管理者
で、メインのパソコンの電源を入れることなく三ヶ月以上が経過。(笑)
その間に数万通のメールを受信。
迷惑メールではなくサーバに残されたものだけで数千通。
やっと先週末にメールをローカルに保存しました。
何かしらをお待ちいただいている方々、
もすこしお待ちを。。。
管理者

こんなんどうでしょ?
この件、質問にはお一切お答えしません。
プログラム貼り付けるけど、理解できないだろうから使わない方が無難。
アラーム項目から解析する技量があり、解析に自信があればどうぞ。
すべては自己責任にて。
解析する技量と時間があれば、作った方が早いな。(笑)
問題があって大幅に(ってか、ほとんどだな)作り直したので、前のゴミが含まれているけど、問題はない。って誰に言ってる? -> 自身の備忘録として。
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.)
