• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:傾斜穴のマクロプログラムを作る)

傾斜穴のマクロプログラム作成

このQ&Aのポイント
  • 角度、開始点、送り速度、逃げ位置、深さなどのデータを入力するだけで傾斜穴を加工するマクロプログラムを作成する方法を教えてください。
  • マクロ経験がなくどうすれば良いかわからないのですが、一回あたりの切り込み量を指定してステップ送り(G83)のプログラムを作成したいです。
  • ファナックの20iを使用して、立ひざ型のNCフライス盤にアングルヘッドを装着し傾斜穴加工をする際のマクロプログラム作成方法を教えてください。

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

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

三角関数は大丈夫ですね? ・アングルヘッドがXマイナス方向(正面向かって左)に向いている ・穴加工位置をワーク座標系G54(X,Y,Z)=(0,0,0) ・アングルヘッドの曲げ角度 #101 ・主軸ゲージラインからアングルヘッド曲げ中心までの長さ #102 ・アングルヘッド曲げ中心からコレットチャック先端までの長さ #103 ・ドリルの突き出し長さ #104 ・ワーク端面からR点までの斜め線軸上の距離 #105 ・穴深さ #106 ・主軸回転速度 #111 ・送り速度   #112 として、各々のコモン変数に任意の値を入力します。 ワーク座標系G54において、 穴加工位置から斜め線上50mm上方の座標(最初の位置決め位置)は (X,Y,Z) =([#103+#104+50]*COS[#101],0,[#102+[#103+#104+50]*SIN[#101]) R点の座標は (X,Y,Z) =([#103+#104+#105]*COS[#101],0,[#102+[#103+#104+#105]*SIN[#101]) 穴底位置は (X,Y,Z) =(-[[#105+#106]*COS[#101]],0,-[[#105+#106]*SIN[#101]) となります(たぶん)。 XYZ原点からスタートするとして、 S[#111]M03; G90G54F[#112]; G00X[[#103+#104+50]*COS[#101]],Y0,Z[[#102+[#103+#104+50]*SIN[#101]]; G00X[[#103+#104+#105]*COS[#101]],Y0,Z[[#102+[#103+#104+#105]*SIN[#101]]; M08; G01X-[[#105+#106]*COS[#101]],Y0,Z-[[#105+#106]*SIN[#101]]; G04X1.; G00X[[#103+#104+#105]*COS[#101]],Y0,Z[[#102+[#103+#104+#105]*SIN[#101]]; M09; G00X[[#103+#104+50]*COS[#101]],Y0,Z[[#102+[#103+#104+50]*SIN[#101]]; とすれば、 ワーク50mm上方→R点→クーラントON→穴底までノンステップF送り →1秒ドウェル→R点→クーラントOFF→ワーク50mm上方 と動くハズです。 ここまでが初級編。 さらに、ドリルにステップ加工させようとすると、WHILE-DO/END文を 用いた演算マクロが必要となります。 このマクロを作るのは楽しそうですが一寸時間がかかるので、次の回答 者さんにお任せします。 寝ぼけているので、間違っていたらお許しを。 実は、最初R点戻しをG01F1000にしようと思ったのですが、 Z軸穴あけではG00の方が一般的であろうと思い、G00で 回答いたしました。 回答(2)(3)さんのご指摘の通り、XZ同時のG00でのR点戻し は危険ですので、G01が正解ですね。 >>やりがいがあります マクロを覚えると、結構マニアックなことができるので、 楽しみながら頑張ってください。

noname#230358
質問者

お礼

早速詳細な回答有難う御座いました。三角関数は基礎は判りますので、この計算式を何度も見返し理解してみます。頭の中を現役の学生時代に戻さねばならず大変そうですが、やりがいがあります。 回答有難う御座いました。参考にさせて頂きます。

その他の回答 (2)

noname#230359
noname#230359
回答No.3

とりあえず http://www.mech.tohoku-gakuin.ac.jp/rde/contents/course/robotics/coordtrans.html 即は自分で作ってください ※デスマ2週間で頭回ってません G00 は先に延べてあるように 不具合があるので 気をつけたほうがいいです

noname#230358
質問者

お礼

早速の回答有難う御座いました。参考にさせて頂きます。

noname#230359
noname#230359
回答No.2

老婆心ながら 戻すときの早送り G00 は G01F10000 と置き換えたた方が賢明です。 同時3軸指令では G00 は G01 と同じ動きをせず、XY同量 → 残量 → Z または逆順の動きになる。パラメータの設定により G01 と同じにすることもできるが、工具交換動作などで相違する危険もある。 >次の回答者さんにお任せします

noname#230358
質問者

お礼

早速の回答有難う御座います。仰る通りパラメータの設定によりG00をG01と同様の動きに出来ることは後に知り早速変更しました。でも、安全の為戻す時はG01の方が得策の様ですね。参考にさせて頂きます。