「モーダル」と「ワンショット」

NCプログラムのGコードは「モーダル」と「ワンショット」に分類されます。

「ワンショット」とは、そのブロックのみに影響のあるGコードのことです。
例えば、「G04」主軸を一定時間停止する、ドウェル機能などが該当します。
これについては、特に問題ありません。
一行にしか影響がないので、いちいち、このGコードはワンショット…と考える必要がないのです。
Gコードの意味を理解していけば、自然と身につくと思います。


問題は「モーダル」と呼ばれるタイプです。
感覚的にわかりにくいので、私は理解するのに苦労しました。

「モーダル」は、いくつかのGコードがグループになっていて、必ずいずれかの状態が保持されるタイプのGコードです。
座標の指定モードを決める「G90」「G91」や主軸の移動方法を指定する「G00」〜「G03」などが該当します。

例えば「G90」(アブソリュート)と「G91」(インクレメンタル)は、NCプログラムが実行されている間、今どちらのモードで動くか、マシニングセンターに情報が保存されています。

この時、「G90」と「G91」は、一つのグループと見なすことが出来ます。
同じように、「G00」〜「G03」は、XYZなどの座標指令が行なわれた時、どのように動くのか?というグループになります。
「G80」〜の、穴あけ用の固定サイクルは、全て同じグループです。

これを理解するには、インターネットのアンケートで見かける、ラジオボタンをイメージすると、わかりやすいように思います。

G90 (アブソリュート)
G91 (インクレメンタル)
G00 (早送り)
G01 (切削送り)
G02 (円弧切削右回り)
G03 (円弧切削左回り)


上のように、同じグループの中で、必ずひとつだけが選択された状態にあります。
もし、この状態で、「G91G01」というプログラムが読まれると、以降はその状態が続くのです。

G90 (アブソリュート)
G91 (インクレメンタル)
G00 (早送り)
G01 (切削送り)
G02 (円弧切削右回り)
G03 (円弧切削左回り)


このように、「モーダル」タイプのGコードは、一度宣言すれば、その後は同じグループのGコードが読まれない限り、状態が維持されます。
つまり、最初に「G90G00」と入力すれば、その後はブロック毎に「G90」や「G00」を入れなくても、同じように動くのです。

G90G00Z10.
X100.Y50.
Z0.

←→
同じ動き
G90G00Z10.
G90G00X100.Y50.
G90G00Z0.


上の二つは、同じ動きになります。
どちらでもプログラム上は問題ありません。
しかし、左の方が、見た目がスッキリして、見やすいプログラムになります。
また、プログラムの容量にも影響するので、なるべく省略した記述を、目指したほうがよいでしょう。

ここで注意しなければならないのは、一度読んだモーダルタイプのGコードは、その後も変更されないことです。
一時的に「G91」のインクレメンタルを使用した時や、円弧切削の「G03」を使用した時は、特に注意が必要です。
この状態で、「G90」や「G01」のつもりでXYZの座標指令をしてしまうと、とんでもない動きになります。
慣れてくると、よくやるミスなので、忘れずにチェックしましょう。
加工の開始と終わりに、「G90G00」を入れる癖を付けておくと、ミスが減ります。

G90G00

X100.Y100.
Z10.

G91G01Z-10.F250.
X100.
G03Y20.R10.
G01X-100.
G03Y-20.R10.
G01Z10.

G90G00
Z300.
posted by center drill at 18:12 | Comment(3) | NCプログラム
この記事へのコメント
毎日のようにCAMソフトは触ってるんですが、基本、補正はコンピュータ側で行う設定になってます。実際の現場では、補正はどのようにする事が多いでしょうか?あと、機械で対話のように入力する方法もあるようですが、どんな風にするのかご存知でしたらお願いします。
欲張りにいろんな事聞いてすみません、知っている範囲内でお願いします。 m(__)m
Posted by 岡chan at 2010年02月10日 15:41
>岡chan さん
補正というのは、精度の厳しい加工をする場合の
調整でよろしいでしょうか?

私の職場の場合、2次元ですむような加工パスは、
径補正(G41、G42)で出力させています。
使用しているCAMソフトの表現だと、
「コントロール」という補正タイプです。
これなら、マシニングセンター側に設定した
工具径の値を増減させることで、現場で調整できます。

簡単な3次元加工なら、アプローチ点(参照点)を用意し、
加工パスをG91で出力することもあります。
加工のスタート位置を微調整することで、
寸法を出す方法です。
(調整しやすいよう、パスを工夫する必要があります)

複雑な3次元加工の場合は、
機械側の調整は無理なので、実際に削ってみて、
調整が必要だったら、CAMで補正して
まるごとNCプログラムを出力し直す…という
作業をしてます。

機械による対話形式は、すみません、
わかりません。
他の方の意見が聞けると、私も助かります。
Posted by center drill at 2010年02月10日 21:03
ありがとうございます!またお忙しい中、素早いお返事に感謝です。現場でのイメージが掴めてきました。今後とも宜しくお願いします。
Posted by 岡chan at 2010年02月15日 11:31
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。