• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:OSPサブプログラムについて)

OSPサブプログラムについて

このQ&Aのポイント
  • 転職に伴いOSP5020を使用することになりましたが、メインプログラムから違うプログラムへの飛ばし方が分かりません。
  • FUNACでは「M98P-」を使用していましたが、OSPでは「CALL?」,「MODIN?」,「GOTO?」などが使われるようです。
  • どのようにして異なるプログラムに移動するのか、教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#230359
noname#230359
回答No.1

3種類のサブプログラムを順番に実行する場合は、例えば下記のようになります。 ---------- CALL O1 CALL O2 CALL O3 ---------- マシニングセンタはサブプログラムが標準仕様で使えますが、旋盤は特別仕様「ユーザタスク2」が必要です。 3種類のメインプログラムを順番に実行する場合は、スケジュールプログラムを使います。 旋盤はスケジュールプログラムが標準仕様で使えますが、マシニングセンタは特別仕様「スケジュールプログラム」が必要です。 >1つのプログラム内にO1,O2,O3を入れなければならないのでしょうか? サブプログラムはひとつのファイルにまとめるのがOSPらしい使い方です。 そして、サブプログラム群を別ファイル(.SUB)にすることもできますが、メインプログラム(.MIN)の下に書いてしまうほうが一般的です。 (例) WORK-1.MIN(←メインプログラムのファイル名) CALL O1 CALL O2 CALL O3 M2 O1 G4F1 RTS O2 G4F1 RTS O3 G4F1 RTS どうしてもサブプログラムを別々のファイルにしたい場合は、システムサブプログラム(.SSB)にします。 (例) WORK-1.MIN(←メインプログラムのファイル名) CALL O1 CALL O2 CALL O3 M2 O1.SSB(←システムサブプログラムのファイル名) O1 G4F1 RTS O2.SSB(←システムサブプログラムのファイル名) O2 G4F1 RTS O3.SSB(←システムサブプログラムのファイル名) O3 G4F1 RTS 一般的には、共用するサブプログラムのみをシステムサブプログラムにします。 >単独のプログラム O1.MIN ➝ O2.MIN ➝ O3.MINに飛ばすには、特別仕様 >「スケジュールプログラム」のオプションが入ってなければ無理なんで >しょうか? そのとおりです。 (例) O1-O2-O3.SDF(←スケジュールプログラムのファイル名) N1 PSELECT O1.MIN N2 PSELECT O2.MIN N3 PSELECT O3.MIN N4 END MCV-Aなら「スケジュールプログラム」の仕様が付いているかもしれません。

noname#230358
質問者

お礼

丁寧なご回答ありがとうございました。 本日、試してみた所「スケジュールプログラム」はオプションで 付いておりませんでした。2例目の「O1.NIN」を「O1.SSB」に 変更して作成しました所、思い通りに動きました。プログラムを 繋げる事無く3種類の異形状のワークを加工できるのは無人化に つながり他の仕事も落ち着いて出来ます。 本当にありがとうございました。

noname#230358
質問者

補足

迅速なご回答、ありがとうございます。 使用機械は門型マシニングMCV-A、OSP5020です。 ---------- CALL O1 CALL O2 CALL O3 ---------- の通りすると「サブプログラムがありません」のエラーがでます。 1つのプログラム内にO1,O2,O3を入れなければならないのでしょうか? 単独のプログラム O1.MIN ➝ O2.MIN ➝ O3.MINに飛ばすには、特別仕様 「スケジュールプログラム」のオプションが入ってなければ無理なんで しょうか? お手数ですがお教えいただけると幸いです。

関連するQ&A