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

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

締切済み
※ ChatGPTを利用し、要約された質問です(原文:円弧補間について)

円弧補間についての疑問

2023/10/14 06:29

このQ&Aのポイント
  • Gコードの円弧補間について教えて頂きたいことがあります。G02/03の円弧補間指令でRやI、Jを省略した場合どのような動きをするのでしょうか?
  • 入力ミスで気付いた事なのですが、円弧補間のプログラムでRやI、Jを省略すると、違った動きをします。例えば、X-10.の直後にG03 X-15. Y-15.と指定した場合、実際の動きはXに10?の直線移動となります。しかし、このプログラムに径補正が入るとエラーになります。
  • 補完指令にR0の半径指定でNCを動かしてみたところ、R0の場合は直線での移動ではなく、円弧の始点と終点を直径とする円弧で移動することが分かりました。ただし、R指定がない場合に限って直線での移動となるようです。
※ 以下は、質問の原文です

円弧補間について

2005/09/28 23:21

Gコードの円弧補間について教えて頂きたいことがあります。

ちょっとしたプログラムの入力ミスで気付いた事なのですが、G02/03の円弧補間指令でRやI、Jを省略した場合どのような動きをするのでしょうか?

今回、入力間違いをしたプログラムは

 G91 G03 X-15. Y15. R15.
X-10. (G01の入力を忘れた)
 G03 X-15. Y-15. R15.

といった単純なものだったのですが、実際の動きは2行目にXに10?直線で移動しました。ただ、このプログラムに径補正(G41で2?と10mmで確認)が入るとエラーになりました。

この動き方の理由がわからず悩んでます。 初歩的な質問ですみませんがよろしくお願いいたします。

ちなみにNCはFANUC 0-Mを使用しました。


 

「実際の動きは2行目にXに10?直線で・・・」とありますが「Xに-10?」の間違いです。申し訳ありません。

みなさんのアドバイスを参考に、G02/03にR0の半径指定でNCを動かしてみました。

結果、R0は直線での移動はせず、円弧の始点、終点を直径とする円弧で移動しました。やはりR指定がない場合に限って直線での移動となりました。使用するNCによっても違いはあると思うのですが、ますます疑問が深まってしまいました。

今回の件に関して、お分かりになる方がいらっしゃいましたらよろしくご教授願います。

回答 (5件中 1~5件目)

2005/10/09 13:59
回答No.5

R指定がない場合は直線での移動
R0を入れた場合は、円弧の始点、終点を直径とする円弧で移動

R0をいれた場合までは想定していませんでした。
R0を入れた場合は始点、終点の距離の半分の数値aを使って
ROでなくRaとするようですね。NCのプログラムを作る人も、すべての
場合を想定してその対応が大部分の人に納得してもらえるように
作らないといけないので大変だと思います。
ちなみにうちの古いNCは、操作を早く行うとハングアップします。
もう一台は、ストロークエンドを超えると予想外の動きをします。

お礼

2005/10/09 19:42

回答ありがとうございます。

前に回答を頂いてから、仕事のあいまをみていろいろ試してみています。

今回の円弧補間に関してフリーのシミュレーションソフトでも試してみましたが、R0指定時の半径に違いはありましたが、やはりR指定がないと直線で、R0の場合は円弧で移動していたので、何か理由があるのかなと考えてしまっています。

質問者

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

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

質問する
2005/10/09 12:55
回答No.4

このへんのイリーガルな指令による動作は制御機の種類や組み込まれてるソフトのバージョンによって異なります。特にMシリーズ以前と以後では全く異なり、それを利用してトリッキーなプログラムを組むこともできます。例えば3軸動作とオフセットは同時指定出来ないのがマニュアルですが出来る機械もあります。無理やり折れ線でスパイラルデータを作りオフセットを掛けることも出来ます。

お礼

2005/10/09 19:22

回答ありがとうございます。

思いもつかない動きをする場合は多いのですね。 でも逆にそれをうまく利用してプログラムを作ってしまうなんて・・・、いろいろ勉強になります。

質問者
2005/10/04 22:09
回答No.3

Gコードは各グループで分かれています。
グループ1はG00,G01,G02,G03が有り、一度実行されると同じグループのGコードが実行されるまで継続されます。
例)
G91 G01 X10. F100
G91 G01 X5.
G91 G01 X15.

G91 G01
X10. F100
X5.
X15.
でも同じ動作です。

本題
古いNC機は結構、問題有りのまま動作します。(今のNC機では、切り込みすぎを生じます等、アラームを表示します。)
特に径補正(G41,G42)を使用しない場合は雑に動作しますので気をつけてください。

余談ですが
径補正中に2ブロック移動しない行があると補正が切れる時があります。(今はアラームになりますが)
G91 G01 G42 G17 Y10.0 D...(径補正有効)
X10. Y10
;
;
X10.
とか
G91 G01 G42 G17 Y10.0 D...(径補正有効)
X10. Y10
G04 X0.5(ドウェル)
G04 X0.5
X10.

お礼

2005/10/04 22:40

回答ありがとうございます。

>古いNC機は結構、問題有りのまま動作します。
 今回、G03にRやI,Jが抜けたという事でアラームになっていれば特に疑問は持たなかったのですが・・・。やはり今回のケースは古いNCの不思議な動き?ということで考えておいた方がいいのでしょうか。

今度、少し新しいNCでも試してみたいと思います。

質問者
2005/09/29 12:55
回答No.2

補正なしでG1を忘れた場合
 G3モードでRがいくつかわからないのでとりあえずX-10動く

補正有りでG1を忘れた場合
 G3モードでRがわからないのでR0とするらしい
 R0では補正がかけられないというか、計算できないのでエラーになる

G3は次のブロックにG1,G2。G0がないかぎり引き継がれる
R15.はそのブロックのみに有効で引き継がれない。

以上、全くの推測ですが。

お礼

2005/09/29 23:16

ご回答ありがとうございます。

G3がモーダルで次の行に引き継がれているのは確認できていたので、
G3 X-10. と半径指定がない場合の動きに疑問を持ってしまった次第です。
特に今回は補正がかかっているのといないのとで動きに違いがでてしまったのでなおさら分からなくなってしまいました。

R指定がないとR0とするというのは考えつきませんでした。R0と考えれば直線補間するのもわかるような・・・。

ありがとうございました!

質問者
2005/09/29 12:45
回答No.1

このプログラムでは、1行目に切削送り速度が指定されてませんので、
エラーになる筈です。
はじめから、機械はうんともすんとも言わない筈ですが?

お礼

2005/09/29 23:30

ご回答ありがとうございます。

質問させていただいたプログラムは入力間違いをした箇所の前後のみの行を抜粋してしまいましたので、実際には送り速度等は入っていました。

状況の説明が不十分で申し訳ありませんでした。

質問者

お礼をおくりました

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

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