固定サイクル一覧:G81・G83・G73・G84 などの動きと選び方(マシニング・旋盤)
穴の種類が分かれば、使う固定サイクルは決まるよ。最後の G80 も忘れずに!


穴あけ・タップ・ボーリングのように「同じ動きを何度もくり返す」加工は、1 行で書ける固定サイクルを使います。この記事では、マシニングセンタの G73〜G89 と旋盤の G70〜G76・G90/G92/G94 を動きの図つきで一覧にし、どれを選べばいいか・どこで失敗しやすいかをまとめました。コードの書き方は FANUC 系(G コード体系 A)を基準にしています。
固定サイクルとは:1 行で「早送り→切削→戻り」をまとめる
たとえばドリルで穴をあけるとき、本来は「穴の上まで早送り → 穴底まで切削送り → 早送りで戻る」と 3 行以上書きます。固定サイクルはこの決まった動きを G81 X_ Y_ Z_ R_ F_ の 1 行にまとめたもので、2 つ目以降の穴は X・Y を書くだけで同じ動きをくり返します[1]。最後は必ず G80 で取り消します。
| アドレス | 意味 | 気をつけること |
|---|---|---|
| X・Y | 穴の位置 | ここへ早送りで移ってから穴あけが始まる |
| Z | 穴底の位置 | G90(絶対)なら座標、G91(増分)なら R 点からの距離 |
| R | R 点(切削送りに切り替える高さ) | G91 では初期点からの距離になる。ワーク表面より少し上に置く |
| Q | 1 回の切込み量(G73・G83)/逃げ量(G76・G87) | 符号なしの増分値。0 や負は使えない[8] |
| P | 穴底のドウェル(停止時間) | 単位は機種で違う(秒・ミリ秒、小数点の扱い) |
| F | 切削送り | タップはピッチ×回転数(毎分送り) |
| K(L) | くり返し回数 | G91 と組み合わせて等間隔の穴をあける |
G98 と G99:穴をあけたあと、どの高さで次の穴へ移るか
G98 は初期点(サイクルに入る前の高さ)まで戻り、G99 は R 点で止まったまま次の穴へ移ります。G99 のほうが速いですが、穴と穴の間にクランプや段差があるとぶつかります。障害物をまたぐ穴だけ G98 にするのが定番です。
図解:穴あけのあと、どの高さで次の穴へ移るか
マシニングセンタの固定サイクル早見表
コードを押すと、書き方・メーカーごとの違い・動きの図をまとめた辞典のページに移ります。
| コード | 使いどころ | 切り込み方 | 穴底で | 戻り方 |
|---|---|---|---|---|
| G81 | センタ穴・浅い穴ドリルサイクル(スポットドリル) | 穴底まで一気に切削送り | — | 早送り |
| G82 | 座ぐり・面取り(底をきれいに)ドリルサイクル(カウンタボーリング・穴底ドウェル) | 一気に切削送り | ドウェル(P) | 早送り |
| G73 | 深穴(切りくずを細かく切る)高速深穴ドリルサイクル(チップブレーク・小さく戻る) | Q ずつ。毎回少しだけ戻る | — | 早送り |
| G83 | 深穴(切りくずを穴の外へ出す)深穴ドリルサイクル(ペック・毎回 R 点まで戻る) | Q ずつ。毎回 R 点まで抜く | — | 早送り |
| G84 | 右ねじのタップタッピングサイクル(右ねじ) | 正転で切削送り | 逆転 | 切削送り |
| G74 | 左ねじのタップ逆タッピングサイクル(左ねじタップ) | 逆転で切削送り | 正転 | 切削送り |
| G85 | リーマ・ボーリングボーリングサイクル(切削送りで入って切削送りで戻る) | 切削送り | — | 切削送り(内面をなでて戻る) |
| G89 | 段付き穴の底の仕上げボーリングサイクル(穴底ドウェル・切削送りで戻る) | 切削送り | ドウェル(P) | 切削送り |
| G86 | ボーリング(荒・中仕上げ)ボーリングサイクル(穴底で主軸停止・早送りで戻る) | 切削送り | 主軸停止 | 早送り(刃先の線が残ることあり) |
| G76 | 仕上げボーリング(戻り傷を付けない)ファインボーリングサイクル | 切削送り | 定位置停止 → Q だけ逃げる | 早送り |
| G87 | 裏座ぐり(バックボーリング)バックボーリングサイクル(裏座ぐり) | 下から上へ | — | 刃を逃がして抜く |
| G88 | 手動で抜くボーリング(今はまれ)ボーリングサイクル(穴底でドウェル・主軸停止後、手動で戻す) | 切削送り | ドウェル・主軸停止 | 手動 |
番号の割り当ては FANUC 系で共通ですが、メーカーによって例外があります。たとえば Haas のマシニングでは裏座ぐりが G77 で、G87 は一覧にありません[5]。使う前に自分の機械の説明書で番号を確かめてください。
穴あけ:G81・G82・G73・G83 の違い
いちばん使うのが G81 です。R 点まで早送りし、穴底まで切削送りで一気にあけ、早送りで戻ります。座ぐりや面取りで底をきれいにしたいときは、穴底で P だけ止まる G82 にします。
図解:G81 の動き(横から見た図)
深い穴は「ペック」:G73 は速さ、G83 は切りくずの排出
深い穴を一気にあけると、切りくずが溝に詰まってドリルが折れます。そこで Q ずつ区切って切り込むのがペック加工です。
- G73(高速深穴):Q 切り込むたびに少しだけ戻って切りくずを分断する。穴の外まで出ないので速いが、切りくずを外へ出す力は弱い
- G83(深穴):Q 切り込むたびに R 点まで抜いて切りくずを外へ出し、前の深さの少し手前まで早送りで戻ってから再び切る。時間はかかるが、深い穴・切りくずが詰まりやすい材料に強い
図解:G73 の動き(横から見た図)
図解:G83 の動き(横から見た図)
使い分けのめやす切りくずが「細かく切れれば外へ出てくる」なら G73、「切っても溝に残る・深い」なら G83。戻る量や再接近の手前量(d)は機械側の設定(Haas では Setting 22・52)で決まります[7]。
タップ:G84(右ねじ)・G74(左ねじ)
G84 は主軸正転で切り込み、穴底で逆転して抜きます。送りは回転数 × ピッチ(毎分送りのとき)。たとえば M10×1.5 を 500 min⁻¹ で切るなら F750 です[3]。計算は タップの切削条件の計算機でできます。
図解:G84 の動き(横から見た図)
主軸の回転と送りを同期させるリジッドタップは、FANUC 系では G84 の前に M29 S_ を書く方式が多いですが、切り替え方は機種で違います(M29 の解説)。補正チャック(フロートタップ)を使う古い方式と混ぜないように。タップ中は送りのオーバライドが効かない機種がほとんどです。
リーマ・ボーリング:G85・G86・G89・G76・G87
- G85:入るのも戻るのも切削送り。リーマや荒ボーリングで内面を往復でなでる
- G89:G85 に穴底のドウェルを足したもの。段付き穴の底面を仕上げる
- G86:穴底で主軸を止めて早送りで抜く。速いが、刃先が内面に線を残すことがある
- G76(ファインボーリング):穴底で主軸を定位置停止し、刃先と反対へ Q だけ逃がしてから抜く。仕上げた内面に戻り傷を付けない。逃げる向きは機械の設定で決まり、バイトの刃先の向きと合っていないと内面を削る
- G87(裏座ぐり):刃を逃がした状態で穴を通し、裏側で刃を戻して上向きに削る。R 点が穴の下側になるなど、他のサイクルと考え方が逆
図解:G85 の動き(横から見た図)
図解:G76 の動き(横から見た図)
旋盤の固定サイクル:単一形(G90・G92・G94)と複合形(G70〜G76)
旋盤(G コード体系 A)では、同じ番号でもマシニングとは意味が違います。G90 は絶対値指令ではなく外径切削サイクル、G94 は毎分送りではなく端面切削サイクルです。マシニング用のプログラムを流用するときは特に注意してください[4]。
| コード | 種類 | 意味 |
|---|---|---|
| G90 | 単一形 | 外径・内径切削サイクル(単一形固定サイクル、G コード体系 A) |
| G92 | 単一形 | ねじ切りサイクル(単一形固定サイクル、G コード体系 A) |
| G94 | 単一形 | 端面切削サイクル(単一形固定サイクル、G コード体系 A) |
| G70 | 複合形 | 仕上げサイクル(G71〜G73 で荒取りした形状を仕上げる) |
| G71 | 複合形 | 外径・内径荒削りサイクル(Z 方向に削る) |
| G72 | 複合形 | 端面荒削りサイクル(X 方向に削る) |
| G73 | 複合形 | 閉ループ切削サイクル(形状くり返し・鋳物など素材形状に沿って削る) |
| G74 | 複合形 | 端面突っ切り(溝)サイクル/Z 方向の深穴ペック |
| G75 | 複合形 | 外径・内径溝入れ(突っ切り)サイクル |
| G76 | 複合形 | 複合形ねじ切りサイクル |
単一形は「切込み → 切削 → 逃げ → 戻り」の 4 動作を 1 行で行い、X だけ変えて何行も続けて削ります。複合形は仕上げ形状(P〜Q のブロック)を書いておけば、荒削りの往復を NC が自動で作ります。G71 で荒削りして、同じ P・Q を指定した G70 で仕上げるのが基本の組み合わせです。
図解:G71(旋盤)の削り方
図解(旋盤):G76(旋盤):複合形ねじ切りサイクル
G71 の 2 行の U に注意G71 は 2 ブロック形式で、1 行目の U は切込み量、2 行目の U は X の仕上げ代です。同じアドレスでも意味が違い、取り違えると削りすぎます。G76(ねじ切り)の P・Q・R も 1 行目と 2 行目で意味が変わります。
プログラム例:4 か所に M10 のねじ穴をあける
センタ穴 → 下穴 φ8.5 の深穴(G83)→ M10×1.5 のリジッドタップ(G84)の流れです。間にクランプがある穴だけ G98 で初期点へ戻しています。工具番号・回転数・送り・Q は例なので、実際は工具メーカーの推奨条件と機械に合わせてください。
O1001 (M10 TAP x4) G90 G17 G40 G49 G80 (安全ブロック) G54 T01 M06 (センタドリル) S1500 M03 G00 X20. Y20. G43 Z50. H01 M08 G99 G81 X20. Y20. Z-3. R3. F120 (R 点復帰で次の穴へ) X80. G98 X80. Y60. (この先にクランプ:初期点へ) G99 X20. G80 M09 G91 G28 Z0. T02 M06 (φ8.5 ドリル) S1100 M03 G90 G00 X20. Y20. G43 Z50. H02 M08 G99 G83 X20. Y20. Z-25. R3. Q5. F160 X80. G98 X80. Y60. G99 X20. G80 M09 G91 G28 Z0. T03 M06 (M10x1.5 タップ) G90 G00 X20. Y20. G43 Z50. H03 M08 M29 S500 (リジッドタップ:機種により異なる) G99 G84 X20. Y20. Z-20. R5. F750 (F = 500 x 1.5) X80. G98 X80. Y60. G99 X20. G80 M09 G91 G28 Z0. M30
安全ブロックに G80 を入れる書き方は、大学の実習用プログラムや Haas の例でも定番です[10]。前のプログラムで固定サイクルが残っていても、最初の移動で穴あけが始まりません。
よくある失敗 7 つ
- G80 の書き忘れ:固定サイクルはモーダルなので、次の G00 X_ Y_ でも穴あけが続く
- G99 のままクランプを越える:R 点の高さで横に移って衝突。障害物の手前の穴は G98 に
- G91 で R・Z を絶対値のつもりで書く:増分では R は初期点から、Z は R 点からの距離
- Q に符号や小数点の誤り:Q は符号なし。小数点なしの最小単位で読む機種では Q5 が 0.005 mm になる
- タップの F の計算違い:毎分送りなら回転数 × ピッチ、毎回転送りならピッチそのまま
- G76 の逃げ方向とバイトの向きが逆:仕上げた内面を逃げで削る
- 旋盤でマシニングの感覚の G90・G94:体系 A の旋盤では切削サイクルになる
タップが折れてしまったときの取り方は、加工トラブル事典の「タップの折損」も参考にしてください。
よくある質問
- 固定サイクルでは工具径補正(G41・G42)を使えますか?
- 使えません。固定サイクルの最中は工具径補正をかけない前提です(NIST の RS274NGC の仕様)[8]。G40 で取り消してから使います。
- くり返し回数は K と L のどちらですか?
- 機種によって違います。FANUC 系の多くは K、古い機種や一部のメーカーは L です。
- G73 と G83 はどちらが速いですか?
- G73 です。毎回穴の外まで抜かないぶん空切りが少なくなります。ただし切りくずが外へ出ないので、深い穴・粘い材料では G83 のほうが安全です。
出典・参考資料
- 三菱電機(Mitsubishi Electric)「The Basics of CNC Machining Programming (for Machining center) e-Learning 教材(PDF)」
- 三菱電機(Mitsubishi Electric)「The Basics of CNC Machining Programming (for Lathe) e-Learning 教材(PDF, BNP-C8027-688)」
- Siemens AG「SINUMERIK 802D sl/840D/840D sl/840Di/840Di sl/810D Programming Manual ISO Milling, 04.2007 Edition(6FC5398-7BP10-0BA0)」
- Siemens AG「SINUMERIK 802D sl/840D/840D sl/840Di/840Di sl/810D Programming Manual ISO Turning, 04.2007 Edition」
- Haas Automation, Inc.「Mill Operator's Manual – 17 Mill G-Codes(オンライン版)」
- Haas Automation, Inc.「Lathe Operator's Manual – 16 Lathe G-Codes(オンライン版)」
- Haas Automation, Inc.「G-code, M-code, and Setting(コード別解説ページ)」
- 米国国立標準技術研究所(NIST)「The NIST RS274NGC Interpreter – Version 3(NISTIR 6556, 2000)」
- 厚生労働省 人材開発統括官付 能力評価担当参事官室「3級技能検定の実技試験課題を用いた人材育成マニュアル 数値制御旋盤作業編(平成30年3月)」
- 埼玉大学 工学部 機械工学科 実習「マシニングセンタプログラム2019(実習用 NC プログラム O19-0101、コメント付き)」


