Gコードを使用しない座標回転

実際にNCプログラムで使用することはほとんどないと思いますが、Gコードを使わない座標回転の計算方法を紹介したいと思います。

座標回転計算

まずZ軸周りの回転について考えてみます。回転させる前の現在の座標を(X1,Y1)とし、角度θで回転させた後の座標を(X2,Y2)とします。回転中心(0,0)から(X1,Y1)までの直線距離をr、その角度はθ0とします。

このときのX2の座標を求める式はこのようになります。

X2 = r cos(θ+θ0)

しかし、これでは回転させるたびに r と θ0 を求めなければならないので、式を変換していきます。

X2 = r cos(θ+θ0)
  = r cosθ0 cosθ - r sinθ0 sinθ
  = X1 cosθ - Y1 sinθ

2番目の式への変換は加法定理を用います。(cos(α+β) = cosα cosβ - sinα sinβ)

2番目の式で r cosθ0 というのが出てきますが、これは X1 の座標を求める式と同じですので X1 と置き換えることが出来ます。同様に、r sinθ0 も Y1 と置くことが出来ます。

Y座標も同様です。

Y2 = r sin(θ+θ0)
  = r sinθ cosθ0 + r cosθ sinθ0
  = X1 sinθ + Y1 cosθ

Z軸の座標は変わらないので、Z2 = Z1 となります。

X軸周りの回転もY軸周りの回転も、同じプロセスで式を求めることができ、まとめると下記のようになります。

Z軸周りの回転

X軸周りの回転

Y軸周りの回転

当サイトのPDF版を作成しました

教育資料やリファレンスとして使用して頂ければと思います。NCプログラムの教科書


メニュー
NC旋盤
サブメニュー
OSP(オークマ)
雑学
NCプログラマの為の数学