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

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

締切済み
※ ChatGPTを利用し、要約された質問です(原文:計算式の誤差(楕円マクロ))

楕円マクロの計算式の誤差について

2023/10/17 16:40

このQ&Aのポイント
  • 最近作成した楕円マクロにおいて、計算式の誤差が生じています。
  • 楕円マクロを使用して特定の点で角度を求める際、工具半径を考慮する必要があります。
  • 工具半径Dを1として計算した結果、0.02程度の誤差が生じたのですが、これは正常な範囲内でしょうか?
※ 以下は、質問の原文です

計算式の誤差(楕円マクロ)

2009/05/07 18:21

最近楕円のマクロ(ファナック)を作成してみました。内容は楕円公式にのっとって作ったもので、a>b>0、ピッチをx=0.1としa=20b=15の楕円で中心x0y0からy頂点(b)までG01で進み設定した角度j(x-z平面角度)の角度でx頂点(a)まで進み、yマイナス頂点→xマイナス頂点→y頂点といった具合に楕円上に一周まわるといった内容です。何とか動作できたのですが次にこれを
工具半径=Dを考慮したマクロを作成しようとしているのですがこの場合
工具中心をX,Y楕円と工具の交点Xp,Ypとの角度を微分して求め任意の点で角度を求めるマクロを作りたいと思ったのですが、この場合工具半径D=1としたらa=20b=15の場合実際の工具中心はa=19b=14の楕円を描いていくということですよね?なので、微分して求めた傾きを工具半径D=1にSIN,COSで補正量を計算し求めた値Xを楕円公式にあてはめYの値を計算したところ0.02ほどの誤差(a=19,b=14の楕円と比較して)が生じました!このくらいの誤差はでるものなのでしょうか?それとも僕の計算間違いでしょうか?どなたか教えていただければ幸いです。

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

2009/05/09 20:56
回答No.9

回答(5)(7)を撤回します。
a=19、b=14の楕円が証明の基準となったので 明らかに不合理です。
a=20、b=15とでは焦点、離心率も変化しますしね。
当然オーバーカットも起こるでしょう。
質問者の垂線方向の移動による加工ポイントの変化をジックリ検証してマクロを考えてみます。

お礼

2009/05/09 21:05

やはりそうですよね!僕も色々悩みましたが正解はそうだと思います。
検証したあかつきにはまたご指導よろしくお願いします。

質問者

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

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

質問する
2009/05/09 19:53
回答No.8

百聞は一見にしかず、CADで確認してみましょう。

http://mcnc.hp.infoseek.co.jp/cgi-bin/img-box/img20090509194210.jpg

1)a=20・b=15の楕円を描きます。(白)
2)a=19・b=14の楕円を描きます。(シアン)
3)a=19・b=14の楕円上を中心とするR1の円をいくつか描きます。(黄)
4)R1を拡大してみると、

http://mcnc.hp.infoseek.co.jp/cgi-bin/img-box/img20090509194248.jpg

0・90・180・270°以外でオーバーカットとなることが分かります。

お礼

2009/05/09 20:26

回答ありがとうございます。残念ながら添付されたURLへ飛ぶことができませんでした。CADを使える環境にないので確認できませんがMCの描画で確認できるか試してみようと思います。

質問者
2009/05/09 14:21
回答No.7

質問者は『設定した楕円形状を加工する』ことを目的としています。
つまり、a=20、b=15の楕円です。
工具径が絡んだ場合 どのようにしたら内周なり外周なりが a=20、b=15の楕円で加工できるかを問題としている訳です。
工具半径を 1mmとすれば、工具中心は 当然 a=19、b=14の楕円軌跡しか無いですね。
そしてこれが求める a=20、b=15の加工楕円形状なんです。
MCでは加工精度上、微細寸法で補正を掛けたくなるので工具径を加味したプログラミングが必要とされます。

2009/05/09 09:53
回答No.6

----------
(1)質問者さんが微分してうんぬんと言われている、
  a=20・b=15の楕円を内側に1mmオフセットした図形。(楕円ではありません)

(2)a=19・b=14の楕円。
----------
この二つは同じではありません。
マクロとCADで確認してみると、(1)と(2)では0.01mm強の誤差がありました。

φ2(R1)のツールパスとしては、
----------
(1)質問者さんが微分してうんぬんと言われている、
  a=20・b=15の楕円を内側に1mmオフセットした図形。

そのとおりです。
質問者さんの元々の考えで合っています。

お礼

2009/05/09 14:48

回答ありがとうございます!やはりそうですよね?
どれが一番正解なのか改めて考えなおしましたが、
インターネットで検索していると下記のサイトを見つけたました。

http://www.tech.sci.nagoya-u.ac.jp/databook/w1999/w5w.html

サイトの内容ではやはりボールエンドミルの中心を、微分して接線、法線の角度を割り出して求めるという方法です。信憑性の高いものだと思いますが・・。mckazkazさんが
<楕円上のポイントと楕円中心を結んだ線上に工具中心がなければなりません。
とお答え下さった内容は上記のサイトの内容を見るとどちらが正解なのか混乱してきました。
僕の元々の考えでは接線の傾きに直角な線=法線、その法線上にあるのが工具中心であって、楕円の中心からの工具と楕円の接点がなす角度と接線の傾きは直角でないからこそ、微分によって接線の傾き、法線の傾きを求める必要があり、それによって工具中心を割り出すことができると思っていたのですが・・・。だとすると、とくほんさんが言われているようにD=1でa=20,b=15の楕円を描いたときの工具経路はa=19,b=14の楕円と等しくないという事になり、微分して角度を求めた法線の線上にある工具経路をたどることがd=1のときにa=20b=15の楕円を幾何的に一致させることができるという事になりますよね。

質問者
2009/05/08 15:33
回答No.5

工具半径D=1で誤差0.02では、D=5ならば単純に考えて誤差0.1ですから何か変ですね。
私は考え違いだと思います。
質問にある交点は接点ですね。
接点で微分により接線の角度をだし、法線の角度を求めて工具の中心を求めるという考えだと思いますが。

楕円上のポイントは あくまで
x=a*cos(t)
y=b*sin(t)
0<=t<360
です。
つまり、楕円上のポイントと楕円中心を結んだ線上に工具中心がなければなりません。
この条件を満足する法線は 0、90、180、270度の時だけです。
よって法線の角度は使えません。

マクロを考えた場合
角度tを変化させ、上記した式よりx、yを求めます。
xを変化させた時は指令された楕円方程式より yを計算し角度tを求めます。
答えは工具半径Dを加味して
x=x+D*cos(t+180)
y=y+D*sin(t+180)
となります(外側を考えた時は Dは -D)。
WHILE[ ]DO1 ・・・・・・・END1 ルーチンで回せばOKです。

楕円形状の変化に関しては、離心率の問題ですのでネットでチェックして下さい。

お礼

2009/05/08 19:00

回答ありがとうございました。ご指導いただいたやり方で確認したところ、誤差なく正常に動作しました!まだまだ楕円についての知識や計算式を理解できてないようです。これからいろいろなマクロにトライしてみようとおもうのでその際はご指導お願いします!

質問者

お礼をおくりました

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

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