本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

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

サブプログラムについて

2023/09/07 04:21

このQ&Aのポイント
  • サブプログラムには座標系を指定しないほうが都合が良いですが、複数の加工をする場合にどのような動きになるか分かりません。
  • 通常は一個だけの加工を行う場合はG54座標系を使用しますが、G55座標系に対する動きを理解していません。
  • 質問者はサブプログラムをメインプログラムとして使い、G54やG55座標系を適切に戻しておくことができるのか疑問に思っています。
※ 以下は、質問の原文です

サブプログラムについて

2016/03/06 18:45

メインプログラムにG54等の座標系を指定すれば、他の座標系が指定されない限りモーダルで動くのでしょうか。
だとすれば、メインプログラムで座標系を変えて、サブプロはG90で座標系指定のないプログラムとして、一つだけにしてよいのでしょか。

例)
O0001
G54G9OGOXOYOZ100.
M98P0002
G55G9OGOXOYOZ100.
M98P0002
M30

O0002
G80G40G49 
G91G28G0Z0
T1
M6
G90G0X0Y0 ←座標系を設定しない



M99

それとも、サブプロにも座標系を入れて、別々にしないといけないのでしょうか。
そうすると、同じプログラムなのに加工する個数ぶん必要になってしまいますが・・・

もしG54、G55・・・がモーダルなら、つぎに使用するときにG54を指定して戻しておかないとないとG55のままになっているということでしょか。

普段は、サブプロをメインプロとして単品加工をし、夜間に無人加工するために部品を2~3個セットして、メインプロを別に設定してO0002をサブプロとして呼び出して使用したいというのがねらいです。
そのために、サブプロにG54等の座標系を入力しておかないほうが、都合が良いからです。
プロ編集なしでO0002をG54でもG55としてでも使用したからです。

通常は一個だけなので芯だしはG54で行います。
O0002に座標系を入力しなければG54中心で動きますが、G55を使用したことがないため、以上のような2個以上の加工をしようとすると、どのような動きになるのか分かりません。

わかるかたいましたら、教えてください。

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

ベストアンサー
2016/03/06 19:15
回答No.1

> メインプログラムにG54等の座標系を指定すれば、
> 他の座標系が指定されない限りモーダルで動くのでしょうか。

Yes

> だとすれば、メインプログラムで座標系を変えて、
> サブプロはG90で座標系指定のないプログラムとして、一つだけにしてよいのでしょか。

Yes

お考えの方法で問題無いと思いますよ。

> O0001
> G54G9OGOXOYOZ100.
> M98P0002
> G55G9OGOXOYOZ100.
> M98P0002
> M30

メインプログラムの G54G9OGOXOYOZ100.
の部分はちょっと気になりますね。
工具長補正が基本的にかかっていないので、
Z100.で干渉しなければ良いのですが...


サブプロの中身を見ると、メインプログラムでの G9OGOXOYOZ100. 無くても問題無いと思います。
従って

O0001
G54
M98P0002
G55
M98P0002
M30

の方が安全でしょう。

実機を使って確認出来るようでしたら、実際に思い通りに動くか試してみて下さい。

こうやってまた迷信が広まっていくのかなぁ。

パラメータ設定次第で如何ようにも動作が変わってくる物を、
そのパラメータも確認せずに機能の違いを説いた所で
実際にそうなるかどうか、分からないでしょうに。

たまたまそういう機械が有ったとしても、他の人の機械がそうだとは限らない。

例えばFANUC系の機械の場合、N3404#5が1になっている場合に
プログラムエンドをM02にしているとリワインドされない為に
一々手動操作にてリセット&リワインド信号を送らねばならず面倒。

同様にM30の場合もパラメータ設定次第ではM02と同じ事になる。

一般的にはM30ではリワインドするようにするが、M02は機械によってばらばら。
ある機械はリワインドしないし、別の機械ではM30と同じ扱いになっている。
主流がどちらなのかは、そこまで沢山の機械を扱っていないので不明。

何れにしてもこの業界には迷信・都市伝説が多すぎて辟易する。

お礼

2016/03/06 21:34

御指導ありがとうございます。
さっそくテストしてみます。

質問者

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する

その他の回答 (2件中 1~2件目)

2016/03/06 20:14
回答No.2

(1)さんのご回答で問題は完璧に解決済ですね

あと、これは好き好きにもなりますが、小生はメインプログラムの
お終いはM02にしています
なんかの拍子にオートリスタートの機能がオンしていると、M30の後に
再度プログラムが走ってしまうからです
(これで何回かイタイ思いをしました)

ちょっと蛇足まで

M02 プログラム終了
文字通りプログラムが終了し機械は停止し、その状態を維持します
自動起動ボタンを押しても動きません
従って、加工→ワーク交換→加工→...の連続作業の場合、毎回
プログラムを呼び出してから自動起動する必要があります
自動電源遮断機能がONの場合、電源が落ちます


M30 リセット&リワインド
リセットボタンを押したのと同じ効果で、モーダルは解除され初期状態
に戻ります(うろ覚えなので間違っていたらごめんなさい)
また、プログラムの先頭に巻戻りますので、自動起動ボタンを押したら、
始めから再スタートします
従って、加工→ワーク交換→加工→...の連続作業の場合、いちいち
プログラムを呼び出す必要がありません
また上述の通り、オートリスタート機能がONであれば、自動的に再スタート
しますので、横形マシニングセンタにおいてAPCしてワークを入れ替えて
連続加工するときにも用います

またゼロさんに叱られた...

パラメータで如何様にもなるとすれば、M02とM30の使い分けは
混乱の極みで、却ってユーザは困惑するような気がしますが、
工作機械メーカは業界で標準化することを極端に嫌うから致し方
ないのでしょうか。
都市伝説や風説の流布のつもりは毛頭ありませんが、古い知識で
余計な回答をしてはいけませんね、以後気を付けます。

質問者さん)
混乱させて申し訳ございません

お礼

2016/03/06 21:37

M02とM30の使い分け方をご存知でしたら教えて頂けませんでしょうか。
お願いします。

質問者

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。