SHINXの木工NCを1年ほど導入しました。Gコード質問しても、ほどよい回答を得られず

このQ&Aのポイント
  • 初めて投稿します。よろしくお願い致します。
  • 困っているのは、丸ノコで凹面の削り出しを試みているのですが、X方向に2mmつづ、100回動かしたいのです。
  • ぜひ、繰り返しの方法教えて下さい。
回答を見る
  • 締切済み

繰り返しの方法を教えて下さい

初めて投稿します。 よろしくお願い致します SHINXの木工NCを1年ほど導入しました。 自動プロというもので書いて動かすが基本となっており、 Gコード質問しても、ほどよい回答を得られずです。 困っているのは、丸ノコで凹面の削り出しを試みているのですが、 下記のように1本はなんとかできたのですが、 これをX方向に2mmつづ、100回動かしたいのです。 ぜひ、繰り返しの方法教えて下さい //////////////////////////////// O0100 N000001 M06 O0100 N000002 G53 O0100 N000003 G90 G00 Z 0.000 O0100 N000000 M92 O0100 N000001 G90 G00 Z 0.000 O0100 N000002 T9 O0100 N000003 M23 O0100 N000004 M03 O0100 N000005 S3600 O0100 N000006 G04 X1.0 O0100 N000007 M09 O0100 N000008 G61 O0100 N000009 G90 G00 G40 X-1205.110 Y-708.450 O0100 N000010 G92 X 100.000 Y 1900.000 O0100 N000010 M21 O0100 N000011 G90 G00 Z 83.000 O0100 N000012 G91 G01 Z-30.000 F2000 O0100 N000013 G01 Y-90.000 Z-13.000 F5000 O0100 N000019 G01 Y-90.000 Z-5.000 F5000 O0100 N000025 G01 Y-90.000 Z-4.000 F5000 O0100 N000031 G01 Y-90.000 Z-2.000 F5000 O0100 N000037 G01 Y-90.000 Z-2.000 F5000 O0100 N000043 G01 Y-90.000 Z-2.000 F5000 O0100 N000049 G01 Y-90.000 Z-1.000 F5000 O0100 N000055 G01 Y-90.000 Z-1.000 F5000 O0100 N000055 G01 Y-90.000 Z-0.000 F5000 O0100 N000055 G01 Y-90.000 Z-0.000 F5000 O0100 N000055 G01 Y-90.000 Z-0.000 F5000 O0100 N000055 G01 Y-90.000 Z-0.000 F5000 O0100 N000085 G01 Y-90.000 Z 1.000 F5000 O0100 N000091 G01 Y-90.000 Z 1.000 F5000 O0100 N000097 G01 Y-90.000 Z 2.000 F5000 O0100 N000103 G01 Y-90.000 Z 2.000 F5000 O0100 N000109 G01 Y-90.000 Z 2.000 F5000 O0100 N000115 G01 Y-90.000 Z 4.000 F5000 O0100 N000121 G01 Y-90.000 Z 5.000 F5000 O0100 N000127 G01 Y-90.000 Z 13.000 F5000 O0100 N000128 G90 G00 Z 83.000 O0100 N000129 G64 O0100 N000130 G218 O0100 N000131 S0 T100 O0100 N000132 G90 G00 Z 0.000 O0100 N000133 G219 O0100 N000134 G04 X2.0 O0100 N000135 M05 O0100 N000136 M92 M95 O0100 N000137 G65 P9900 L1 O0100 N000138 G53 O0100 N000139 G90 G00 Y 0.000 O0100 N000140 M07 O0100 N000138 M30 ///////////////////////////////// なんだか、場違いのところに質問したようで、申し訳ないです。

noname#230358
noname#230358

みんなの回答

noname#230359
noname#230359
回答No.5

>なんだか、場違いのところに質問したようで、申し訳ないです。 (爆) NCVCついて、 サブプログラムは素のままで使えます。 カスタムマクロもあれやこれやすれば使えます。 回答(4)さんのプログラム例は2点ともNCVCでシミュレーション可能で、 下記の間違いも発見できました。 ---------- WHILE[#100GT0]DO1→WHILE[#1GT0]DO1 ---------- 後記が参考になれば幸いです。 これ以上のことは、NCVCのサポート掲示板で訊いたほうが良いかもです。 サブプログラムのプログラム例のシミュレーション ----- https://kie.nu/2BYi ----- カスタムマクロのプログラム例のシミュレーション ----- https://kie.nu/2BYk ----- カスタムマクロのプログラム例(シミュレーションするために編集) ----- % O0100 N000001 M06 N000002 G53 N000003 G90 G00 Z0.000 N000004 M92 N000005 G90 G00 Z0.000 N000006 T9 N000007 M23 N000008 M03 N000009 S3600 N000010 G04 X1.0 N000011 M09 N000012 G61 N000013 G90 G00 G40 X-1205.110 Y-708.450 N000014 G92 X100.000 Y1900.000 N000015 M21 N000016 #1=100. N000017 WHILE[#1GT0]DO1 N000018 G90 G00 Z83.000 N000019 G91 G01 Z-30.000 F2000 N000020 G01 Y-90.000 Z-13.000 F5000 N000021 G01 Y-90.000 Z-5.000 F5000 N000022 G01 Y-90.000 Z-4.000 F5000 N000023 G01 Y-90.000 Z-2.000 F5000 N000024 G01 Y-90.000 Z-2.000 F5000 N000025 G01 Y-90.000 Z-2.000 F5000 N000026 G01 Y-90.000 Z-1.000 F5000 N000027 G01 Y-90.000 Z-1.000 F5000 N000028 G01 Y-90.000 Z-0.000 F5000 N000029 G01 Y-90.000 Z-0.000 F5000 N000030 G01 Y-90.000 Z-0.000 F5000 N000031 G01 Y-90.000 Z-0.000 F5000 N000032 G01 Y-90.000 Z1.000 F5000 N000033 G01 Y-90.000 Z1.000 F5000 N000034 G01 Y-90.000 Z2.000 F5000 N000035 G01 Y-90.000 Z2.000 F5000 N000036 G01 Y-90.000 Z2.000 F5000 N000037 G01 Y-90.000 Z4.000 F5000 N000038 G01 Y-90.000 Z5.000 F5000 N000039 G01 Y-90.000 Z13.000 F5000 N000040 G90 G00 Z83.000 N000041 G90 G0 Y1900. N000042 G91 X2. N000043 #1=#1-1. N000044 END1 N000045 G64 N000046 G218 N000047 S0 T100 N000048 G90 G00 Z0.000 N000049 G219 N000050 G04 X2.0 N000051 M05 N000052 M92 M95 N000053(G65 P9900 L1) N000054 G53 N000055 G90 G00 Y0.000 N000056 M07 N000057 M30 % ----- 質問者さんへ 承知しました。 回答(1)さんへ >興味ありますが、習得にはちょっとね・・・ 私のお勧めのマクロシミュレータは下記です。(安価な順) ◇Lance for Windows ◇ナスカ・プロETMビュー ◇FANUC NCガイド NCVCを含めていずれを選択しても、 「一芸に秀でる者は多芸に通ず」と思います。

noname#230358
質問者

補足

そのままでは、できませんでしたので NCVCのサポート掲示板の方で尋ねてみます。 ありがとうございました

noname#230359
noname#230359
回答No.4

無知な外野が多いのはまぁご愛嬌なので笑ってやって下さい。 繰り返しはマクロを使う方法と、サブプロを使う方法があります。 この機械だとマクロが使えるようなので、下記のように N00016~00017,および00041~00044を追加すれば良いです。 //////////////////////////////// O0100 N000001 M06 O0100 N000002 G53 O0100 N000003 G90 G00 Z 0.000 O0100 N000004 M92 O0100 N000005 G90 G00 Z 0.000 O0100 N000006 T9 O0100 N000007 M23 O0100 N000008 M03 O0100 N000009 S3600 O0100 N000010 G04 X1.0 O0100 N000011 M09 O0100 N000012 G61 O0100 N000013 G90 G00 G40 X-1205.110 Y-708.450 O0100 N000014 G92 X 100.000 Y 1900.000 O0100 N000015 M21 O0100 N000016 #1=100. O0100 N000017 WHILE[#100GT0]DO1 O0100 N000018 G90 G00 Z 83.000 O0100 N000019 G91 G01 Z-30.000 F2000 O0100 N000020 G01 Y-90.000 Z-13.000 F5000 O0100 N000021 G01 Y-90.000 Z-5.000 F5000 O0100 N000022 G01 Y-90.000 Z-4.000 F5000 O0100 N000023 G01 Y-90.000 Z-2.000 F5000 O0100 N000024 G01 Y-90.000 Z-2.000 F5000 O0100 N000025 G01 Y-90.000 Z-2.000 F5000 O0100 N000026 G01 Y-90.000 Z-1.000 F5000 O0100 N000027 G01 Y-90.000 Z-1.000 F5000 O0100 N000028 G01 Y-90.000 Z-0.000 F5000 O0100 N000029 G01 Y-90.000 Z-0.000 F5000 O0100 N000030 G01 Y-90.000 Z-0.000 F5000 O0100 N000031 G01 Y-90.000 Z-0.000 F5000 O0100 N000032 G01 Y-90.000 Z 1.000 F5000 O0100 N000033 G01 Y-90.000 Z 1.000 F5000 O0100 N000034 G01 Y-90.000 Z 2.000 F5000 O0100 N000035 G01 Y-90.000 Z 2.000 F5000 O0100 N000036 G01 Y-90.000 Z 2.000 F5000 O0100 N000037 G01 Y-90.000 Z 4.000 F5000 O0100 N000038 G01 Y-90.000 Z 5.000 F5000 O0100 N000039 G01 Y-90.000 Z 13.000 F5000 O0100 N000040 G90 G00 Z 83.000 O0100 N000041 G90 G0 Y1900. O0100 N000042 G91 X2. O0100 N000043 #1=#1+1. O0100 N000044 END1 O0100 N000045 G64 O0100 N000046 G218 O0100 N000047 S0 T100 O0100 N000048 G90 G00 Z 0.000 O0100 N000049 G219 O0100 N000050 G04 X2.0 O0100 N000051 M05 O0100 N000052 M92 M95 O0100 N000053 G65 P9900 L1 O0100 N000054 G53 O0100 N000055 G90 G00 Y 0.000 O0100 N000056 M07 O0100 N000057 M30 //////////////////////////////// サブプロを使う方法としては、加工部分を別のO番号を振ったサブプログラムに分けて メインプログラムの方では所定の位置に位置決めしたあと、 M98 P○○ L△△ として、サブプロを数回コールすれば良いです。 〇〇がサブプロ番号、 △△ が繰り返し回数です。 (繰り返し回数はLではなくKで指令する機械もありますので要確認) //////////////////////////////// O0100 N000001 M06 O0100 N000002 G53 O0100 N000003 G90 G00 Z 0.000 O0100 N000004 M92 O0100 N000005 G90 G00 Z 0.000 O0100 N000006 T9 O0100 N000007 M23 O0100 N000008 M03 O0100 N000009 S3600 O0100 N000010 G04 X1.0 O0100 N000011 M09 O0100 N000012 G61 O0100 N000013 G90 G00 G40 X-1205.110 Y-708.450 O0100 N000014 G92 X 100.000 Y 1900.000 O0100 N000015 M21 O0100 N000016 M98 P0101 L100 O0100 N000017 G64 O0100 N000018 G218 O0100 N000019 S0 T100 O0100 N000020 G90 G00 Z 0.000 O0100 N000021 G219 O0100 N000022 G04 X2.0 O0100 N000023 M05 O0100 N000024 M92 M95 O0100 N000025 G65 P9900 L1 O0100 N000026 G53 O0100 N000027 G90 G00 Y 0.000 O0100 N000028 M07 O0100 N000029 M30 O0101 N000001 G90 G00 Z 83.000 O0101 N000002 G91 G01 Z-30.000 F2000 O0101 N000003 G01 Y-90.000 Z-13.000 F5000 O0101 N000004 G01 Y-90.000 Z-5.000 F5000 O0101 N000005 G01 Y-90.000 Z-4.000 F5000 O0101 N000006 G01 Y-90.000 Z-2.000 F5000 O0101 N000007 G01 Y-90.000 Z-2.000 F5000 O0101 N000008 G01 Y-90.000 Z-2.000 F5000 O0101 N000009 G01 Y-90.000 Z-1.000 F5000 O0101 N000010 G01 Y-90.000 Z-1.000 F5000 O0101 N000011 G01 Y-90.000 Z-0.000 F5000 O0101 N000012 G01 Y-90.000 Z-0.000 F5000 O0101 N000013 G01 Y-90.000 Z-0.000 F5000 O0101 N000014 G01 Y-90.000 Z-0.000 F5000 O0101 N000015 G01 Y-90.000 Z 1.000 F5000 O0101 N000016 G01 Y-90.000 Z 1.000 F5000 O0101 N000017 G01 Y-90.000 Z 2.000 F5000 O0101 N000018 G01 Y-90.000 Z 2.000 F5000 O0101 N000019 G01 Y-90.000 Z 2.000 F5000 O0101 N000020 G01 Y-90.000 Z 4.000 F5000 O0101 N000021 G01 Y-90.000 Z 5.000 F5000 O0101 N000022 G01 Y-90.000 Z 13.000 F5000 O0101 N000023 G90 G00 Z83.000 O0101 N000024 G90 G00 Y1900. O0101 N000025 G91 G00 X2. O0101 N000025 M99 //////////////////////////////// 最初のマクロのプログラムで間違いが有ったので訂正致します。 誤  O0100 N000043 #1=#1+1. 正  O0100 N000043 #1=#1-1. きちんとチェックしていなくて申し訳ありません。 諸注意ですが 1パス加工が終わったら、Y軸を元の位置(Y1900.)に戻してX2.ずらす動作をします。 最後の繰り返しの時にもこの動作をしてから後続の動きに移るので Y軸の位置が異なるのと、Xの位置が加工した所から1ピッチずれていますので、 その後の動作に支障がないか等、確認して下さい。 すみません、急いでいたので変数間違えました。 回答(5)さん、ありがとうございます。 NCVCの使い方に関してはアドバイスできるような 知見がありませんのでご容赦下さい。

noname#230358
質問者

お礼

ここ写真が貼れないようですが、10回に変更しましたが加工できました。 ここ1ヶ月ほど、ああだこうだとしてましたので、とても助かりました。 シミュレータでは NCVCでは、上のは×、下のは○ NC Viewr(体験版) 上のは×、下のも× それで、本体NCで、下のでシミュレートしたら、OK。 材料乗せずに可動。バッチシ その後材料乗せてテスト加工。 プログラムをよく検証して、次に供えたいと思います。 ありがとうございました。

noname#230358
質問者

補足

ありがとうございます。 のちほど、NCVC、また、本体NCで検証してみます。 NCVCでは、シミュレートできません(^^;)。 どこが違っているのか?NCVCになにか設定が必要なのか? 折角なら、両方で試してみたいものでm(__)m O0100 N000016 #1=100. O0100 N000017 WHILE[#1GT0]DO1 O0100 N000018 G90 G00 Z 83.000 O0100 N000019 G91 G01 Z-30.000 F2000 O0100 N000020 G01 Y-90.000 Z-13.000 F5000        <中略>    O0100 N000039 G01 Y-90.000 Z 13.000 F5000 O0100 N000040 G90 G00 Z 83.000 O0100 N000041 G90 G0 Y1900. O0100 N000042 G91 X2. O0100 N000043 #1=#1-1. O0100 N000044 END1

noname#230359
noname#230359
回答No.3

G90になってるので G91に変更して 最後のM30をM99に変更しメインで呼び出すか 座標系をかえるか ↑ 理解してればここに質問せず自分で作ってる (作る気はしない) 急ぎなら座標系を切り替えて主導でやる 後はマニュアルを熟読 >>なんだか、場違いのところに質問したようで、申し訳ないです。 場違いというより あなたのレベルが低すぎなのです 1+1をようやく理解した人に 因数分解を教えることは不可能です G54を宣言していないことで座標系のこともわかってないようですし 繰り返しするならG91で作ってないことでも 素人丸出しってことがわかります マニュアルを熟読して とりあえずレベルを上げてください こんなところで質問するより早くプログラムが作れるようになるでしょう しろうとあつかいされちゃった ぐすん G53ね

noname#230358
質問者

補足

理解不可能(^^;)

noname#230359
noname#230359
回答No.2

このサイトの常連のnatsuoさんのサイト http://www.natuo.com/mcnozitusagilyouhure-mu.htm 残念ながら木工機ではなくて普通の金属加工のMCがメインですが 初心者に優しいGコードの解説

noname#230358
質問者

補足

natsuoさんのサイト、みてみます、 ありがとうございました

noname#230359
noname#230359
回答No.1

  SHINXの木工NC   自動プロというもので書いて動かすが基本となっており、   Gコード質問しても、ほどよい回答を得られずです。 NC装置がファナック製など標準的なものであればweb上でも解説してるところや参考本もありますが、此処の独自みたいで、その仕様が判らないと無理です。 ほどよい回答はともかく仕様書・マニュアルを要求すべき。 読破/完全理解に及ばずとも、ファナックとほぼ同じとかが判れば前に進めます。 下から5行目   O0100 N000137 G65 P9900 L1 ファナックでいう マクロ呼出し指令 なので互換性有りな可能性あります。   http://www.ai-sols.co.jp/product/macro_kihon07.htm マクロのいろは のすべて8項と機械マニュアルを対比して読むと判ります。 一々解説するのも重箱重ね。知らぬ機械のこと、サンプル作るのも危なっかしいので。   壊れる心配はありません のがマクロを使い高度な便利なテクを使うと心配が生じます。よく効く薬は使い方を誤るととんでも副作用。まずそこに誤解あります。   NCVCでシミュレート   http://s-gikan2.maizuru-ct.ac.jp/xcl/ これですか? マクロは使えないです。ソフト作成が面倒で商用ソフトでもバグが出がちな機能。 紹介する順番が不適切でした。そのサイトの最初から読む   マクロのいろは 基本編 1 「マクロの概要と種類」 具体的なやりかたはこれ   マクロのいろは 基本編 4 「分岐と繰り返し 1」 これもイキナリここだけ読んでも無理です。   本体NCでシミュレート これやれば間違いないでしょ   回答(5)   NCVC カスタムマクロもあれやこれやすれば使えます 興味ありますが、習得にはちょっとね・・・

noname#230358
質問者

お礼

ご忠告ありがとうございます。 小心者ですから、NC本体を稼働際は、緊急停止ボタンに手を添えてます(^^;)

noname#230358
質問者

補足

NCVCでシミュレートと、さらに、本体NCでシミュレートと、その上で、材料をおかずに空で起動。それから、材料乗せて加工やってますので、壊れる心配はありません。 下記みましたけど、チンプンカンプン(^^;) http://www.ai-sols.co.jp/product/macro_kihon07.htm

関連するQ&A

  • 順列・数え上げ

    よろしくお願いします。 ここに下のような390個の文字があります。 (A,B,C,D,E,F,G,H,I,J,K,L,M がそれぞれ10個ずつ、 N,O,P,Q,R,S,T,U,V,W,X,Y,Z がそれぞれ20個ずつあります。) この390個の文字から235文字を選んで一列に並べる方法は全部で何通りありますか。 A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M A B C D E F G H I J K L M N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z N O P Q R S T U V W X Y Z 以下、私が考えたことを書きます。 この390個の文字から235個の文字を選ぶ組み合わせの総数は、 (Σ[k=0~10]x^k)^13*(Σ[k=0~20]x^k)^13 を展開したときのx^235の係数ですから、 23463540513956137996043929988 通りだということは分かります。 この23463540513956137996043929988 通りのそれぞれについて235個の文字 の順列(同種のものを含む順列)を数え上げれば答えは出ると思いますが、これは あまりにも大変な作業です。 何かよい知恵はないでしょうか。

  • NCデータの切削条件書き換え方法

    下記のような加工データを工具がT1の場合に回転数S1803をS2000に、送りF59をF300に変換したいのですが、良い方法はないでしょうか ようするにCAMで作ったNCデータを秀丸エディターまたは安価なシュアウエアーで工具別に切削条件を書き換えたいのですが、宜しくお願いします。 T1                工具がT1の場合 M06 (CENT DIA=3 T=1 H=1) N1 G15H1 G90G00X15.Y15.S1803       回転数S1803をS2000に変換 G56Z100.H1M03 M08 G71Z50. NCYL G81Z-3.R2.F59M53      F59をF300に変換 CALL O1 G80 G00Z100. X210.Y15. NCYL G81Z-3.R2.M53 CALL O2 G80 M09 G00Z100.M05 以下同じような内容のデータが続くと考えます

  • G91による位置決め方法が知りたいです。

    最近、オークマの機械(OSP)で加工する事になったのですが、ファナックで操作出来たプログラム機械が動きません。 ファナックの時のプログラムを書きますので、アドバイスお願いします。 メインプログラム(ファナックの時のプログラム) G91G28Z0T1 M16M6 G90G0G54X0Y0T2 G43Z2.H1 S2500M3M8 G81R2.Z-1.F160K0 M98P22 G91G28Z0T2 M16M6 G90G0G54X0Y0T3 G43Z10.H2 S600M3M8 G73R2.Q5.Z-20.F60K0 M98P22 G91G28Z0T3 M16M6 G90G0G54X0Y0T4 G43Z2.H3 S600M3M8 G81R2.Z-2.75F120K0 M98P22 G91G28Z0T4 M16M6 G90G0G54X0Y0T1 G43Z5.H4 M00 M29S200 G84R5.Z-15.F160K0 M98P22 G91G28Y0Z0T#100 M30 サブプログラム(問題の位置決め) G90X10Y-20 G91X10 X10 X20K5(このX20を5回繰り返すのも、出来ないです) Y-20K10 X-20K5 M99 G90G0G54X0Y0 → G15 H1にする G43Z5.H4 → G56 H1にするとか、何とかOSP用に覚え直す事が出来たのですが、サブで位置決め「G91」使用では、思い通りに動きません。 面倒でも「G90」で座標を入力すると思い通りに動きます 単品の部品加工が主なので、G90でXY座標も入力出来るのですが、 出来ればG91を使用し、簡単に組みたいです。

  • ユーザーマクロについて。

    初めてユーザーマクロを使ってみようと思い、 CAMで出力したポストをもとに作ってみました。 円の一部を2本の工具を使い加工するだけのパスです。 刃物はΦ6のエンドミル2本を使用しています。 変数として Aを加工する物の直径 Bをその半径 O100 G65P100A100. O200 #2=#1/2 (** P100**) T99 T01 (** 6H-A H01 D01 **) G54G00 G80G91G40G28Z0 G49G28X0Y0M05 M06 T02 G90G00X0Y0 G43Z50.H01 M03S3500 M50 X25.Y-[#2+1.] Z20. Z1. G01Z-1.F150 X-25.F500 G00Z20. Z50. X25. M09 (** 6H-S H02 D02 **) G80G91G40G28Z0 G49G28X0Y0M05 M06 T01 G90G00X0Y0 G43Z50.H02 M03S3500 M50 X25.Y-[#2+1.] Z20. Z1. G01Z-1.F30 X-25.F100 G00Z20. Z50. M09 (** End of tape **) G80G91G28Z0 G49G28X0Y0M05 M06 G90 M30 シミュレーションしてみるとエラーが出てしまいました。 どのようにすればイイですか? プログラム前半部分、訂正 (誤り) O100 G65P100A100. (正) O100 G65P200A100. 下記の皆様の回答をもとにこのようなプログラムで動かしてみました。 今回使用する機械にはファナック(M-18) 手打ちではなく下記のプログラムをコピーして機械に転送しております。 % O100 #1=100. #2=[#1]/2 (** P100**) T99 T01 (** 6H-A H01 D01 **) G54G00 G80G91G40G28Z0 G49G28X0Y0M05 M06 T02 G90G00X0Y0 G43Z50.H01 M03S3500 M50 X25.Y-[#2+1.] Z20. Z1. G01Z-1.F150 X-25.F500 G00Z20. Z50. X25. M09 (** 6H-S H02 D02 **) G80G91G40G28Z0 G49G28X0Y0M05 M06 T01 G90G00X0Y0 G43Z50.H02 M03S3500 M50 X25.Y-[#2+1.] Z20. Z1. G01Z-1.F30 X-25.F100 G00Z20. Z50. M09 (** End of tape **) G80G91G28Z0 G49G28X0Y0M05 M06 G90 M30 % しかし #2=[#1]/2 の場所で「009エラー」 と出ました。 アドレス関係のエラーのようです。 わかる方いましたらよろしくお願いします。 ファナック(M-16)で使用した結果 正常に動作いたしました。 改めて調べた結果 ファナック(M-18)の方にカスタムマクロを付けていなかったそうです。 マクロを使う以前の問題でした。 おさわがせしてもうしわけありませんでした。 今回初めてマクロを使用することになり ここで回答をいただいただけでも 大変ためになりました。

    • ベストアンサー
    • CAM
  • MCプログラムです。間違い等をご指摘・ご指導くだ…

    MCプログラムです。間違い等をご指摘・ご指導ください。 よろしくお願いいたします。 以下のプログラムで アクリル板にφ3,4のエンドミルで描画しようとしています。 日立 立形マシニングセンタ MACCMATIC-406Vを使用します。 間違っている、不要(無駄)な命令や 1行にできる、また1行にできない等々の命令がありましたら どうかご教授ください。 % O1234 N001 G28 G91 X0 Y0 Z0 N002 G54 N003 T03 N004 M06 N005 G00 G90 X31.0 Y36.24 N006 G43 Z30.0 H03 N007 S3000 M03 N008 G00 Z5.0 M08 N009 G01 Z-1.0 F50 N010 G02 I19.0 J-6.24 N011 G02 X20.0 Y60.0 R40.0 N012 G02 X44.0 Y49.16 R40.0 N013 G00 Z5.0 N014 G00 X38.0 Y46.0 N015 G01 Z-1.0 F50 N016 G03 X20.0 Y60.0 R40.0 N017 G00 Z5.0 N018 G00 X56.0 Y49.16 N019 G01 Z-1.0 F50 N020 G02 X80.0 Y60.0 R40.0 N021 G02 X69.0 Y36.24 R40.0 N022 G00 Z5.0 N023 G00 X62.0 Y46.0 N024 G01 Z-1.0 F50 N025 G02 X80.0 Y60.0 R40.0 N026 G00 Z5.0 N027 G00 X65.0 Y30.0 N028 G01 Z-1.0 F50 N029 G03 X55.0 Y25.0 R12.0 N030 G00 Z5.0 N031 G00 X45.0 Y25.0 N032 G01 Z-1.0 F50 N033 G03 X35.0 Y30.0 R12.0 N034 G00 Z5.0 N035 G00 X25.0 Y29.0 N036 G01 Z-1.0 F50 N037 X42.0 Y20.0 N038 G00 Z5.0 N039 G00 X41.0 Y17.0 N040 G01 Z-1.0 F50 N041 X27.0 N042 G00 Z5.0 N043 G00 X30.0 Y10.0 N044 G01 Z-1.0 F50 N045 X42.0 Y13.0 N046 G00 Z5.0 N047 G00 X46.0 Y12.0 N048 G01 Z-1.0 F50 N049 G03 X50.0 Y16.0 R4.0 N050 G02 I-1.0 J1.0 N051 G02 I1.0 J1.0 N052 G03 X54.0 Y12.0 R4.0 N053 G00 Z5.0 N054 G00 X58.0 Y13.0 N055 G01 Z-1.0 F50 N056 X70.0 Y10.0 N057 G00 Z5.0 N058 G00 X73.0 Y17.0 N059 G01 Z-1.0 F50 N060 X59.0 N061 G00 Z5.0 N062 G00 X58.0 Y20.0 N063 G01 Z-1.0 F50 N064 X75.0 Y29.0 N065 G00 Z5.0 M09 N070 M05 N071 G28 G91 X0 Y0 Z0 N072 G49 N073 T04 N074 M06 N075 G00 G90 X35.0 Y75.0 N076 G43 Z30.0 H04 N077 G00 Z5.0 M08 N078 G01 Z-1.0 F50 N079 G02 X15.0 Y75.0 R10.0 N080 G01 Y80.0 N081 G02 X35.0 Y80.0 R10.0 N082 G00 Z5.0 N083 G00 X40.0 Y65.0 N084 G01 Z-1.0 N085 X50.0 Y90.0 N086 X60.0 Y65.0 N087 G00 Z5.0 N088 G00 X43.6 Y74.0 N089 G01 Z-1.0 N090 X56.4 N091 G00 Z5.0 N092 G00 X65.0 Y90.0 N093 G01 Z-1.0 N094 X85.0 N091 G00 Z5.0 N092 G00 X75.0 N093 G01 Z-1.0 N094 Y65.0 N095 G00 Z5.0 M09 N096 M05 N097 G28 G91 X0 Y0 Z0 N098 G49 N099 M30 % どうかよろしくお願いいたします。。

  • 変数で切込み量追加

    Z0の平面切削で (#100=素材の幅) (#101=素材の奥行) (#110=工具直径) (#120=T番号) (#130=回転数) (#131=送り) #100=200. #101=100. #110=20. #120=01 #130=2000. #131=800. N0001 T#120M06 G90G00G54X0Y0 G43H#120Z100000 S#130 M03 WHILE[#101GE0]DO1 G90 G00X-[#100/2+#110]Y#101 Z2.0 G01Z0.F500 X[#100/2+#110]F#131 Z2.0F500 #101=[#101-#110/2] END1 G00Z100000 X0Y0 G90G49G53Z0 M05 M09 M30 % これだとZ0の高さだけの切削ですが Z0より上に取り代がついていて、 切込み量を加えたい場合はどうすればいいでしょうか

  • コンタリング加工で 一方向位置決めをしたら すご…

    コンタリング加工で 一方向位置決めをしたら すごい動きに 制御装置0MCで 一方向位置決めがワンショットでG60なため 入力が面倒なので、 Excelのマクロで XY軸の動きのあるところに 全部入るようにしました。 しかし コンタリング加工でも一方向位置決めの動きが起こったのか とんでもない動きを穴の中でしました。 ワークも油圧バイスから 外れました。 Φ26の穴をΦ27にする加工の時でした。 以下のプログラムですが、 どんな動きが 起こったのでしょうか? どのような動きになったと思われるか 解説いただけないでしょうか? ( D20KON ) N556 T35 M06 N558 G17 G00 G90 X297. Y-100.G60 N560 G43 Z50. H35 M0 N562 S290 M03 N564 Z10. N566 G01 Z-26. F30. N568 X298.75 Y-98.25 F70.G60 N570 G03 X297. Y-96.5 R1.75G60 N572 Y-103.5 R3.5G60 N574 Y-96.5 R3.5G60 N576 X295.25 Y-98.25 R1.75G60 N578 G01 X297. Y-100.G60 N580 Z10. F200. N582 G00 Z50. N584 X53.G60 N586 Z10. N588 G01 Z-26. F30. N590 X54.75 Y-98.25 F70.G60 N592 G03 X53. Y-96.5 R1.75G60 N594 Y-103.5 R3.5G60 N596 Y-96.5 R3.5G60 N598 X51.25 Y-98.25 R1.75G60 N600 G01 X53. Y-100.G60 N602 Z10. F200. N604 G00 Z50. N606 G91 G28 G00 Z0 M05 N608 G49 N610 M01 N612

  • フーリエ係数の求め方を教えてください。

    本屋にいってもさらに抽象化して直交関数で展開している場合と、 1次元のことしか書いていない本しかなく、困っています。 以下のことについて教えてください。 (Q1) フーリエ級数の定義は以下の内容でいいですか? F(x,y,z) ={\sum}^{∞}_{m1=-∞,m2=-∞,m3=-∞}[A(m1,m2,m3)*exp(<G(m1,m2,m3)|(x1,x2,x3)>)] 要は、 [A(m1,m2,m3)*exp(i<G(m1,m2,m3)|(x1,x2,x3)>)] を全てのm1,m2,m3にわたって和した級数で、<|>はEuclid内積、*はスカラー積,iは虚数単位 但し、簡単のためFが3変数実数値(複素数値でもいい?)とし、A(m1,m2,m3)は、 それぞれ複素定数、その他G(波数)やT(周期)等の個々の記号詳細な定義は、 以下に記載の通り (Q2) A(m1,m2,m3)の計算法は、以下の内容でいいですか? A(m1,m2,m3)={\int}_{V}[F(x,y,z)*exp(i<G(m1,m2,m3)|(x1,x2,x3)>]dxdydz 但し、Vは、以下の定義式で定まる領域 V={s1*{T}_{1}+s2*{T}_{2}+s3*{T}_{3}|0≦s1≦1,0≦s2≦1,0≦s3≦1} であり、要は、 F(x,y,z)*exp(i<G(m1,m2,m3)|(x1,x2,x3)>)を V(ユニットセル)上で3重積分したもの。 (Q3) F(x,y,z)が二乗可積分で、{T}_{1}, {T}_{2},{T}_{3}がFの周期であるとき、 Fは、フーリエ級数展開可能ですか? 注)少なくとも、 K=(k1,k2,k3)と、L=({l}_{1},{l}_{2},{l}_[3})が、 <K|L>=2zπ (zは実数)であるとき、 Lは exp i(K*X)の周期であるので、右辺が、周期T(m1,m2,m3)を持つことは 確認したつもりなので、この逆が成り立ちますか? (Q4) どうも周期には2つの種類があるような気がします。片方を 普通の周期、もう片方を半自明な周期とでも呼ぶことにします。即ち、   *半自明な周期:    TがFの周期であり、かつ、任意の”実数”λに対して、λTもFの周期である。       *普通の周期: TがFの周期であり、かつ任意の整数zに対してzTが周期であり、かつ、Tは半自明な周期でない。 上記は勝手に定義しただけですが(まともな言い方があったら教えてください)、 例えば、ベクトルa=(a1,a2,a3)に対し、 <a|K>=0 ⇒ aは、exp i(K*X)の半自明な周期 <a|K>\neq 0⇒ (\frac{2\pi a}{|a|} は、普通の周期 となります。 さて、例えば、{T}_{1}, {T}_{2},{T}_{3}のうち{T}_{3}のみが上の意味で半自明だと とします。このとき、 F(x,y,z) ={\sum}^{∞}_{m1=-∞,m2=-∞}[A(m1,m2)*exp(<G(m1,m2,m3)|(x1,x2,x3)>)] のように、縮減できませんか? 【記号の詳細な定義】 但し、関数 F(x1,x2,x3,...,xn) は、実数値関数又は複素数値関数で、実n変数関数とする。 また、 GとTはn次実正方行列で、(ベクトル積を使うのが面倒なので) G=(gij) T=(tij) は、 G*T=2πE (但し、Eは単位行列)で、 をみたすとする。(gij)等ダブルサフィックスと考える Tj=(t1j,t2j,t3j,...,tnj):行列Tの第j列ベクトル Gi=(gi1,gi2,gi3,...,gin):行列Gの第i行ベクトル また、但し、{m}_{1},...,{m}_{k}は、いずれも整数。 T({m}_{1},...,{m}_{k})=Σ{m}_{k}{T}_{k} G({m}_{1},...,{m}_{k})=Σ{m}_{k}{T}_{k}

  • アルミ(ADC12、A5056)の穴あけ加工につ…

    アルミ(ADC12、A5056)の穴あけ加工について 加工歴1年程度の者です。 アルミ(ADC12、A5056)の穴あけ加工について質問です。 ドリル前のセンター(90°Vポイントミル)を、G83でステップさせることによって位置ズレが起きることはあるのでしょうか?また、そうすることによって何のメリットがあるのでしょうか?会社の先輩が組んだプログラムが全部G83になっており、本人曰く「面にバリが出なくなるから」だそうです。以下がそのプログラムです。ちなみに機械はファナックのロボドリルαT21i-Eeです。 N1T01M06(3.0 CENTER-MILL) G90G54G00X20.Y20. G43Z5.0H01 M03S10000 M08 G98G83Z-1.5Q1.R3.0F250 G80 M09 M05 G91G80G28Z0 G49 N2T02M06(1.53 DRILL) G90G54G00X20.Y20. G43Z5.0H02 M03S8000 M08 G98G83Z-5.Q1.5R3.0F250 G80 M09 M05 G91G80G28Z0 G49 N3T03M06(M1.7*0.35 ROLL-TAP) G90G54G00X20.Y20. G43Z5.0H03 M03S5000 M08 M29 G98G84Z-4.4R3.0F1750 G80 M09 M05 G91G80G28Z0 G49 G28Y0 M30 % あと、加工時間を短縮したいのですが、上記の切削条件は限界でしょうか?ドリルは超硬(ノンコート)です。穴あけ加工(M1.7やM2)が多い会社ですので、時間短縮につながるような切削条件など教えていただけるとうれしいです。よろしくお願いします。

  • G17,G18について。

    近々、アングルヘッドを導入するみたいです。 5面加工機に近い加工が出来るかもと言う事で。 プログラミングガイドを、参照しましたが、抽象的にしか説明がされて無く、 具体的な、指令を指南頂ければと思います。 固定サイクルと、長穴加工など。 機械は、オークマOSP2000Mです。 普段使ってるプログラム例です。 T1 M6 G15 H1 X0 Y0 G56 Z100 H1 S1200 M3 M8 G71 Z80 NCYL G81 R5 Z-2.5 P1 F78 M53 CALL OM6 G80 Z500 M9 M5 G15 H11 X0 Y600 M01 G15 H1 M63 M6 M2 / T1 M6 G15 H1 X0 Y0 G56 Z100 H1 S1200 M3 M8 MODIN O16 CALL ON16 MODOUT GO Z500 M9 M5 G15 H11 X0 Y600 M01 G15 H1 M63 M6 M2 / OM6 X15 Y15 RTS / ON16 X150 Y150 RTS / O16 G0 Z1 G1 Z-2.5 F500 G91 G41 G1 Y-8 F140 D21 G1 X70 G3 X8 Y8 R8 G3 X-8 Y8 R8 G1 X-140 G3 X-8 Y-8 R8 G3 X8 Y-8 R8 G1 X70 G40 G1 Y8 G90 G0 Z100 RTS / このような加工で、G17,G18の指令は、どの行に入れれば良いのでしょうか? それと、キャンセルのG19の指令を入れる適切な、プログラミングを指南、下さい。 宜しく、お願いします。 アングルヘッドの場合、90度で向いてますが、 オプション機能が無い場合、工具長補正は、X,Y軸に対して加工面を0で出せますが、工具径補正を行う場合、アングルヘッドの底から、アングル軸の中心を0に設定すると言う感じでしょうか? Z平面だと、Z軸は工具長で、XY軸は工具径です。 アングルヘッドの軸芯は、やはり、底から軸の差で設定するのでしょうか?