
本シリーズでは、OSP(オークマ)でのマシニングセンタプログラムを習得するために、初めに覚えることをまとめています。
プログラム習得するには、まずはプログラムの「型」であるテンプレートを理解して覚えることが大切。
本記事は第二弾です。以前の第一弾では固定サイクルを使わないプログラムのテンプレートを解説しました。

今回は、固定サイクルとサブプログラムを使ったプログラムの作り方を解説します。
プログラムを覚えるための全体の流れはこちらを参考にしてください!

固定サイクルプログラムの基本のテンプレート
G15H1
T1M6
G90G0X0Y0T0
G56H1Z100
S2000M3
M8
NCYL G81Z-1.5R2F60
CALL O1
G0Z100M9
M5
M2
O1
X-10Y-10
X10
Y10
RTS
こんな動きをします

上のプログラムは、図のように、3点にセンタ穴をあけるプログラムです。
プログラムの黒字のところは、前回に解説した部分そのままで、赤字の部分だけを変化させればこのプログラムになります。
固定サイクルとサブプログラムさえ追加してしまえばよいわけです。

プログラムの意味を解説します
黒字の部分は前回解説したとおりです。
赤字の部分を解説していきますね。
NCYL G81Z-1.5R2F60→送り60mm/minで、Z2を基準としてZ-1.5まで穴あけサイクルを実行
まずはG81。これは穴あけサイクルで、センタ穴をあける場合など、ステップのない穴あけを行う際に使う固定サイクルです。
Zは穴の終点、Rは切削開始点のZ座標、Fは送り速度を表しています。
NCYLは、現在いる位置ではサイクルを実行しないという意味です。NCYLの直後にはスペースを入力する必要があるため気をつけましょう。
今回固定サイクルを指令する前はX0,Y0の座標にいるため、NCYLがなければX0,Y0にも穴があいてしまいます。
ですがそもそもこれだけでは、どのX,Y座標に穴をあけるかを指令していませんね。これは次の行で指令しています。
CALL O1→O1のサブプログラムを呼び出せ
CALL O1は、O1のサブプログラムを呼び出すコードです。CALLとO1の間のスペースは必須です。
サブプログラムとは、上のプログラムの
O1
X-10Y-10
X10
Y10
RTS
の部分のこと。
O1とRTSで挟んだプログラムが、O1のサブプログラムになります。
ここでようやく、X-10,Y-10、X10,Y-10、X10,Y10の3箇所に穴をあける座標の指示を行うわけです。
O2とする場合でも同様で、O2とRTSで挟んでやればよいです。
このように座標をサブプログラムとしてまとめておくことで、センタ穴あけ→穴あけ→タップなど同じ座標に複数の工具で加工する際に毎回座標を入力する必要がなくなり、大変便利です。
G81固定サイクルの部分の具体的な動き方
具体的にどういう動きをするか、順を追って説明します。工具はセンタドリルとします。
- G81サイクルが実行される前は、X0Y0Z100の座標に刃先がある状態です。
- サブプログラム内の座標、X-10,Y-10に早送りで移動します。Z座標は変わらず100です。
- R2としているため、Z2まで早送りで移動します。
- Z−1.5までF60mm/minの切削送りで穴をあけます。
- R2としているため、Z2まで早送りで戻ります
- サブプログラム内の座標、X10,Y-10に移動します
- Z−1.5までF60mm/minの切削送りで穴をあけます。
- ・・・以上の繰り返して3箇所穴があき、R点に戻った後、次のプログラムを読み込みます。
固定サイクルを入れ替えるだけで、様々な加工が可能
今回つかったのはG81ですが、その固定サイクルの一行を入れ替えるだけで様々な加工が行えます。
固定サイクルで主に使うのはG73でステップのある穴あけサイクル、G83の引き抜きながら穴をあける深穴あけサイクル、G84のタッピングサイクル、G336の真円サイクルといったところです。
例えばG73の深穴あけサイクルの場合、
NCYL G81Z-1.5R2F60
の代わりに
NCYL G73Z-17R2Q2F100
と入力すれば深穴あけサイクルになります。(Z,R,FはG81と同様。Qはステップの切り込み量。)
G73では、Qで指定した距離ごとにステップが入ります。
よく使う固定サイクルの解説
G81 ノンステップ穴あけサイクル
最も基本的な穴あけの固定サイクルです。センタ穴あけや、ステップの必要ない浅い穴あけに使用します。
動きについての解説は先述のとおりですので省略しますね。
例:NCYL G81Z-1.5R2F60
- Z …R点から穴底までの距離
- R …イニシャルレベルからR点までの距離
- F …加工速度
この例であれば、Z2の位置からZ-1.5の位置まで、60mm/minの速さで、ノンステップで穴あけ加工を行います。
G73 高速深穴あけサイクル
ハイスドリルでの穴あけを行うにあたって、最もよく使う固定サイクルです。
例:NCYL G73Z-15R2Q1F100
G81の設定値に加えてQがでてきます。Qは、1ステップあたりの切込み量です。
この例では、Z2の位置からZ-15の位置まで、100mm/minの速さで、1mmずつステップを入れながら穴あけ加工を行います。
G83 深穴あけサイクル
切粉が詰まりそうな深穴や、クーラントを刃先に確実に供給したい場合に使用します。
SUS304の深穴や、SUS304に外部給油でのフラットドリルを使用した穴あけなどで重宝します。
例:NCYL G83Z-30R2Q1F100
この例では、Z2の位置からZ-30の位置まで、100mm/minの速さで、1mmずつ引き抜きながら穴あけ加工を行います。
G84 タッピングサイクル
タップを立てる際に使用する固定サイクルです。
進入時は正転、戻る際は逆転に切り替わります。
例:NCYL G84Z-20R5F250
この例では、Z5の位置からZ-20の位置まで、250mm/minの速さで、タッピング加工を行います。
送り速度は、回転数×ピッチの値に設定しましょう。タップが折れてしまいます。
その他、こちらのページに固定サイクルの一覧が載っていましたので、参考にすれば大抵の固定サイクルは使えると思います。 ↓↓
是非活用してみてください!
G336 真円サイクル

エンドミルを使って、公差穴を仕上げる固定サイクルです。
指令した位置を中心に、指定した半径の円をエンドミルがぐるっと回って仕上げてくれます。
非常に便利なのでぜひ活用しましょう。
G336 Z R I A D F
(穴位置のX・Y座標)
G300
- Z:刃物のZ座標を表します。このZ座標で円を描いて切削します。
- R:G81などの穴あけサイクルのR点と同様です。開始、終了時にR点に戻ります。
- I:切削したい円の半径です。
- A:アプローチ円の半径です。アプローチ円は、【切削したい円の半径✕0.8】という計算で求めればOKです。
- D:工具径補正番号。
- F:送り速度。
- G300:サイクルのキャンセル指令です。これを入れ忘れると、同じ場所で何度も回り続けます。
例:
G336Z-12R2I18.8A15.04D7F400
X0Y0
G300
R2を起点にZ-12まで切り込み、半径15.04のアプローチ円を描いてアプローチし、X0Y0を中心とした半径18.8の円を400mm/minの速さで加工します。エンドミルの工具径補正はD7を使用します。
まとめ
今回は、OSPのマシニングセンタにおける固定サイクルとサブプログラムを活用したプログラム作成法を解説しました。
一見難しそうに見えますが、プログラムの「型(テンプレート)」さえ覚えてしまえば、赤字の部分を書き換えるだけであらゆる穴あけ・タップ・真円加工に対応できるようになります。
今回の重要ポイント
- 基本パターンを使い回す:ベースとなるテンプレートに、加工に応じた固定サイクルを当てはめるだけでOK。
- サブプログラム(
CALL O1)で作業効率アップ:位置座標を1箇所にまとめることで、センタ揉み・下穴・タップなど複数の工具で同じ座標を使い回せる。 - 用途に合わせたサイクルの使い分け:
- G81:センタ穴・浅穴加工
- G73:高速深穴加工(ステップ付き)
- G83:SUS材や切粉が詰まりやすい深穴加工
- G84:タッピング加工(送り速度=回転数×ピッチ)
- G336:エンドミルでの真円仕上げ加工(
G300でサイクルキャンセルを忘れずに!)
まずは基本のコードをコピーして、現場の図面に合わせて座標や数値を打ち替えるところから試してみてください。繰り返し使うことで自然と手が動くようになりますよ!







コメント