OSP(オークマ) - プログラムの種類
OSPで使用されるプログラムには、スケジュールプログラム、メインプログラム、サブプログラム、ライブラリプログラムの4種類があります。
スケジュールプログラム
複数のワークを加工するなどの連続加工を行う場合、複数のメインプログラムの繰り返し回数や実行順序を決めるプログラムです。無人運転などの自働化を行う際にも役立ちます。
スケジュールプログラムは他のプログラムと違い、下記5種類のブロックからなり、それ以外のブロックを指令するとアラームとなります。
- PSELECT…メインプログラムを選択し実行
- GOTO…無条件分岐
- IF…条件分岐
- VSET…変数設定
- END…スケジュールプログラム終了
PSELECT メインプログラムの選択・実行
指定したプログラムファイルから、指定したプログラムを選択し実行します。指令形式は下記のようになります。各項目は省略可能です。
PSELECT メインプログラムファイル名 , メインプログラム名 , サブプログラムファイル名 , オプション設定 , 繰り返し回数
- メインプログラムファイル名…[デバイス名:ファイル名.拡張名]で指定します。
- メインプログラム名…[プログラム名]で指定します。
- サブプログラムファイル名…[デバイス名:ファイル名.拡張名]で指定します。
- オプション設定…[;S ] [;A ][;B ]でオプションを設定します。
- S…サブプログラムを選択しない指令です。実行時間を短縮することができます。
- A…通常テープ運転となります。
- B…大容量テープ運転となります。
- 繰り返し回数…[Q=n]で指定します。"n"は回数です。
GOTO 無条件分岐
「GOTO N_」で指令し、指定したシーケンス名へジャンプします。
IF 条件分岐
「IF [条件式] N_」で指令し、条件が満たされた場合は指定したシーケンス名へジャンプします。
VSET 変数設定
「VSET [変数]=[数値] [変数]=[数値]…」で指令し、変数にはコモン変数、システム変数、出力変数が使用出来ます。
END スケジュールプログラムの終了
スケジュールプログラムの終了を表します。スケジュールプログラムの最後は必ず「END」にする必要があります。
メインプログラム
文字通りメインとなるプログラムです。このプログラムを起点として、サブプログラムやマクロなどを呼び出して加工することができます。もちろん、メインプログラムだけで加工を完結させることもできます。
プログラムの先頭には「O」で始まるプログラム名を、プログラムの最後には「M02」または「M30」を入れて終了させます。
サブプログラム
1つのプログラムの中で同じ動きを複数回行わせる場合、その動きをサブプログラムとして記述し、メインプログラムや他のサブプログラムから呼び出して使用します。変数などを使用することで寸法の違いにも対応でき、同一のサブプログラムを他のワークでも使用することができます。
プログラムの先頭には「O」で始まるプログラム名を、プログラムの最後には「RTS」を入れて終了させます。サブプログラムの実行が終了すると、呼び出されたメインプログラムに戻ります。
ライブラリプログラム
使用頻度の多いサブプログラムやGコードマクロなどをライブラリプログラムとして登録しておくと、簡単に呼び出しを行うことができます。
ファイル名と拡張名
OSPではプログラムを登録する際に、ファイル名に続いて拡張名も必要になります。ファイル名の先頭は英字で、16文字以内となります。拡張名は下記の6種類になります。
ファイル名.xxx
- SDF…スケジュールプログラムファイル
- MIN…メインプログラムファイル
- MSB…メーカーサブプログラムファイル
- SSB…システムサブプログラムファイル
- SUB…ユーザーサブプログラムファイル
- LIB…ライブラリプログラムファイル
- 当サイトのPDF版を作成しました。教育資料やリファレンスとして使用して頂ければと思います。
→ NCプログラムの教科書 - 上級編も作成しました。
→ NCプログラム上級編