(57)【特許請求の範囲】
【請求項１】
工作機械に取り付けた工具に対する指令を前記工作機械の軸への指令に変換する座標変換部を備えた数値制御装置において、
前記軸はＸＹＺ方向の直動軸が直交して連続してつながるとともに、直動軸の間に回転軸が入ることがなく、
工具の姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系を設定することによって、工作機械による違いを定数の違いのみであるようにした順運動学と逆運動学を持つ共通座標変換部を備えたことを特徴とする、複数種類の工作機械に適用可能な座標変換部を持つ数値制御装置。
【請求項２】
工作機械に取り付けた工具に対する指令を工作機械の軸への指令に変換する座標変換部を備えた数値制御装置において、
前記軸はＸＹＺ方向の直動軸が直交して連続してつながるとともに、直動軸の間に回転軸が入ることがなく、
数値制御工作機械の標準座標系での指令を座標系における姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系での指令に変換する指令座標系変換部と、工具の姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系を設定することによって、工作機械による違いを定数の違いのみであるようにした順運動学と逆運動学を持つ共通座標変換部とからなる座標変換部を備えたことを特徴とする、複数種類の工作機械に適用可能な座標変換部を持つ数値制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、工作機械やロボットなどに使われる座標変換処理を行う数値制御装置に関する。
【０００２】
【従来の技術】
従来は、工作機械に適用する数値制御装置では、数値制御装置を適用しようとする工作機械に特有の運動学および逆運動学の解を計算する式をあらかじめ求め、数値制御装置の座標変換処理では、数値制御装置を適用しようとする全ての種類の工作機械について求めた運動学および逆運動学の解を計算する式の中からいずれかを適用して使用していた。
【０００３】
【発明が解決しようとする課題】
ところが従来技術では、数値制御装置はある工作機械に特化した座標変換部を持つため、その工作機械で使用していた数値制御装置を異なる工作機械へ適用する場合には、その異なる工作機械に特有の運動学および逆運動学の解を計算する処理を、数値制御装置を適用しようとする工作機械の全てについて求めた運動学および逆運動学の解を計算する式の中から適当なものと入れ替えるか、あるいは運動学および逆運動学の解を計算する式を求めたことがない別の工作機械の場合は、その別の工作機械に特有の運動学および逆運動学の解を計算する式を新たに求めなければならないという問題があった。
そこで本発明が解決しようとする課題は、座標変換処理を持つ数値制御装置の、複数種類の工作機械への適用を簡単にすることにある。
【０００４】
【課題を解決するための手段】
上記問題を解決するための第１の手段は、工作機械に取り付けた工具に対する指令を前記工作機械の軸への指令に変換する座標変換部を備えた数値制御装置において、前記軸はＸＹＺ方向の直動軸が直交して連続してつながるとともに、直動軸の間に回転軸が入ることがなく、工具の姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系を設定することによって、工作機械による違いを定数の違いのみであるようにした順運動学と逆運動学を持つ共通座標変換部を備えたものである。また、第２の手段は、工作機械に取り付けた工具に対する指令を工作機械の軸への指令に変換する座標変換部を備えた数値制御装置において、前記軸はＸＹＺ方向の直動軸が直交して連続してつながるとともに、直動軸の間に回転軸が入ることがなく、数値制御工作機械の標準座標系での指令を座標系における姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系での指令に変換する指令座標系変換部と、工具の姿勢角が各軸の回転角に一致するように座標軸を取った内部座標系を設定することによって、工作機械による違いを定数の違いのみであるようにした順運動学と逆運動学を持つ共通座標変換部とからなる座標変換部を備えたものである。
【０００５】
【発明の実施の形態】
以下、本発明の実施の形態を、実施例に基づいて説明する。
＜実施例１＞
図１は本発明の第１の手段の実施例における装置の構成図である。
数値制御装置を適用する工作機械としてマシニングセンタを例に挙げると、ＸＹＺ方向の直動３軸に姿勢変化の２軸を加え、回転工具で加工を行う５軸マシニングセンタが、座標変換処理を行う数値制御装置を必要とする。５軸マシニングセンタでは、ＸＹＺ方向の直動３軸は連続してつながっていて間に回転軸が入ることがないとすると、次の３種類の軸構成のものが存在する。
１．ＲＲｐｐｐ
２．ＲｐｐｐＲ
３．ｐｐｐＲＲ
ここでＲはマシニングセンタの回転軸を、ｐは直動軸を表しており、テーブルから工具取付位置までリンクをたどる順番で並べて軸構成を表している。より一般的にして、非回転工具を用いる６軸マシニングセンタを構成しようとすると、前記３種類の軸構成で主軸部分を位置制御軸にする方法が自然である。図５は数値制御装置を適用しようとする工作機械の軸構成の例であり、６軸横型マシニングセンタである。軸構成は次の３種類が考えられる。
１．ＲＲｐｐｐＲ
２．ＲｐｐｐＲＲ
３．ｐｐｐＲＲＲ
図５の６軸横形マシニングセンタはＲＲｐｐｐＲの軸構成である。通常のマシニングセンタは軸が互いに直交しているので、リンク座標系の取り方により、姿勢の変換を表す回転行列を共通にすることができる。共通にするためには、指令値を定義する座標系における３つの姿勢角（例えばＺＹＸオイラー角）が各軸の回転角に一致するように、テーブルに近い回転軸から（Ｚ．Ｙ．Ｘの順番になるように）座標軸を取れば良い。このように取った座標系を内部座標系（５１）とする。
【０００６】
まず共通座標変換部（１１）について説明する。共通座標変換部（１１）には先に挙げた３種類の軸構成に対応する３種類の順運動学と逆運動学を持たせる。すなわち、図１のように共通座標変換部（１１）は共通逆運動学部（１２）と共通順運動学部（１３）からなる。内部座標系（５１）での指令（０３）が内部座標系から見た工具先端座標系（５３）の位置姿勢として書かれているとすると、0ＸEd、0ＹEd，0ＺEdを各軸方向の位置、0αEd、0βEd、0γEdをＺＹＸオイラー角での姿勢として次のように表される。
0ｒEd＝［0ＸEd 0ＹEd 0ＺEd 0γEd 0βEd 0αEd］T
ここでＴは行列の転置を表す。0ｒEdは列ベクトルである。内部座標系（５１）での指令0ｒEdを逆運動学によって変換して求められる軸指令（０１）は、回転軸指令をθ1d、θ2d、θ3d、直動軸指令をｌxd，ｌyd、ｌzdとする
ｑd＝［θ1d θ2d θ3d ｌxd ｌyd ｌzd］T
で表す。軸の現在位置（０２）は
ｑ＝［θ1 θ2 θ3 ｌx ｌy ｌz］T
で表し、前記軸の現在位置ｑを順運動学によって変換して求められる内部座標系（５１）から見た工具先端位置（０４）は
0ｒE＝［0ＸE 0ＹE 0ＺE 0γE 0βE 0αE］T
で表す。
【０００７】
以下に示す変換行列で、θ1，θ2、θ3は回転軸変数、ｌx，ｌy，ｌzは直動軸変数であり、ＲZ（θ1）はＺ軸まわりにθ1回転する回転行列、ＲY（θ2）はＹ軸まわりにθ2回転する回転行列、ＲX（θ3）はＸ軸まわりにθ3回転する回転行列、Ｌ1x、Ｌ1y、Ｌ1z、Ｌ7x，Ｌ7y，Ｌ7z，Ｌ8x，Ｌ8y、Ｌ8zは回転軸間オフセット、Ｌpx、Ｌpy、Ｌpzは直動軸方向オフセットを意味する。また、行列中では
Ｓ1＝ｓｉｎθ1, Ｃ1＝ｃｏｓθ1
という略記を用いている。３種類の順運動学のための同次変換行列0Ｔ6はそれぞれ次のようになる。
【０００８】
１．ＲＲｐｐｐＲ
【数１】
0004291482.tif 000002
【０００９】
２．ＲｐｐｐＲＲ
【数２】
0004291482.tif 000003
【００１０】
３．ｐｐｐＲＲＲ
【数３】
0004291482.tif 000004
【００１１】
ここで回転行列は３種類とも全て同じ
【数４】
0004291482.tif 000005
である。式１，式２，式３は内部座標系（１１）から見た工具取付座標系（５２）を軸位置の成分で表している。順運動学における、軸の現在位置（０２）
ｑ＝［θ1 θ2 θ3 ｌx ｌy ｌz］T
から、内部座標系（５１）での工具取付座標系（５２）の現在位置
0ｒ6＝［0Ｘ6 0 Ｙ6 0Ｚ6 0γ6 0β6 0α6］T
への変換が0Ｔ6である。さらに内部座標系（１１）から見た工具先端の現在位置（２６）
0ｒE＝［0ＸE 0 ＹE 0ＺE 0γE 0βE 0αE］T
を知りたい場合は次式
【数５】
0004291482.tif 000006
で求められる。ここで、工具を取り付ける位置に設定した工具取付座標系（５２）から見た工具先端位置を
［6ＬEx 6ＬEy 6ＬEz］T
で表している。工具取付座標系（５２）の姿勢は工具先端座標系（５３）の姿勢に一致しているものとする。式５の0ＲEは内部座標系（５１）における工具姿勢を表しており、この0ＲEは式４に示した共通の回転行列ＲZYXになる。従ってＲZYXより、姿勢角は次のようになる。
【数６】
0004291482.tif 000007
【００１２】
次に３種類の逆運動学について示す。回転軸についての解は３種類とも次のようになる．
【数７】
0004291482.tif 000008
直動軸についての解は次の３種類となる。
１．ＲＲｐｐｐＲ
【数８】
0004291482.tif 000009
２．ＲｐｐｐＲＲ
【数９】
0004291482.tif 000010
３．ｐｐｐＲＲＲ
【数１０】
0004291482.tif 000011
【００１３】
式８，式９，式１０の中で0Ｘ6d、0Ｙ6d、0Ｚ6dは内部座標系（１１）から見た工具取付座標系（５２）の位置を表しており、内部座標系（５１）での指令
0ｒEd＝［0ＸEd 0 ＹEd 0ＺEd 0γEd 0βEd 0αEd］T
を用いて次のように表される。
【００１４】
【数１１】
0004291482.tif 000012
【００１５】
共通座標変換部（１１）の共通順運動学部（１３）は順運動学の解を計算するための式１、式２、式３、式５、式６を持ち、共通逆運動学部（１２）は逆運動学の解を計算するための式７、式８、式９、式１０、式１１を持つ。順運動学および逆運動学の解を計算するための式を３軸、４軸など６軸以下のマシニングセンタヘ適用する場合は、使用しない回転軸ｉの成分をθi＝０、あるいは使用しない直動軸ｊの成分をｌj＝０とすればよい。
図１に示す装置の処理の流れを図５に示す横型マシニングセンタを例として説明する。まず、軸構成から、ＲＲｐｐｐＲ用の順運動学（式１、式５、式６）および逆運動学（式７、式８、式１１）を使用することが決まる（ステップ１）。回転軸間距離Ｌ1を次のように代入する（ステップ２）。
Ｌ1x＝０，Ｌ1y＝０，Ｌ1z＝−Ｌ1              （式１２）
直動軸を直動軸方向オフセットＬpx、Ｌpy、ＬpzにＬ2、Ｌ4、Ｌ5、Ｌ6を次のように代入する（ステップ３）。
Ｌpx＝−Ｌ4＋Ｌ6
Ｌpy＝０
Ｌpz＝−Ｌ2＋Ｌ5                            （式１３）
工具取付座標系（５２）から見た工具先端位置
6ＬE＝［6ＬEX 6ＬEy 6ＬEz］T
を代入する（ステップ４）。
【００１６】
共通座標変換部（１１）のうち共通逆運動学部（１２）は、内部座標系（５１）での指令（０３）
0ｒEd＝［0ＸEd 0ＹEd 0ＺEd 0γEd 0βEd 0αEd］T
を入力し、軸指令（０１）
ｑd＝［θ1d θ2d θ3d ｌxd ｌyd ｌzd］T
に変換して出力する（ステップ５）。共通順運動学部（１３）は、軸位置（０２）
ｑ＝［θ1 θ2 θ3 ｌx ｌy ｌz］T
を入力し、内部座標系（５１）での工具位置（０４）
0ｒE＝［0ＸE 0ＹE 0Ｚ 0γE 0βE 0αE］T
に変換して出力する（ステップ６）。以後、ステップ５、ステップ６を繰り返す。ステップ１からステップ４は初期設定であり、工作機械が図５の６軸マシニングセンタ以外のものに交換されたときには、ステップ１から４を行ってから５、６を繰り返し、工具（５０）のみが交換されたときにはステップ４を行ってからステップ５とステップ６を繰り返す。
【００１７】
また、３次元空間で姿勢を決めるための回転軸の組み合わせとして、６軸マシニングセンタでは同方向の２つの回転軸が間に別方向の回転軸を１つ挟んでつながっている軸構成が可能である。図６は例であり、そのような場合は図６のように初期姿勢を定義することによって、回転軸の異なる３軸の組み合わせとみなすことができる。図６では回転軸２（５５）を−９０°にした姿勢を初期姿勢としている。つまり、軸位置成分のθ2に０が指令されたときにこの位置になるようにする。この初期姿勢に対して先に述べた方法で図６のように内部座標系（５１）を取ればよい。
以上の構成によれば、初期設定で必要な定数を工作機械ごとに用意しておけば、工作機械に対する数値制御装置の自動的な設定が可能となる。さらに、本実施例では６軸マシニングセンタを考えたが、先に述べたように順運動学および逆運動学の解を計算するための式を３軸、４軸など６軸以下のマシニングセンタへ適用する場合は、使用しない回転軸ｉの成分をθi＝０、あるいは使用しない直動軸ｊの成分をｌj＝０とすればよいだけなので、３軸、４軸などの６軸以下のマシニングセンタにも同じ座標変換部を使用することが可能となる。
【００１８】
＜実施例２＞
次に、本発明の第２の手段の実施例を図に基づいて説明する。図２は本実施例における装置の構成図であり、共通座標変換部（２１）と指令座標系変換部（２２）からなる座標変換部（２３）を示している。数値制御工作機械の座標系はＪＩＳで定められた取り方があり、指令座標系変換部（２２）はＪＩＳで定められた座標系のような標準座標系（７１）で書かれた指令（０５）を内部座標系（５１）での指令（０３）に変換するものである。なお、ここでの共通座標変換部（２１）の入出力は実施例１と異なり、内部座標系指令（０３）は内部座標系（５１）から見た工具取付座標系（５２）の位置姿勢を表す指令
0ｒ6d＝［0Ｘ6d 0 Ｙ6d 0Ｚ6d 0γ6d 0β6d 0α6d］T
とし、工具位置（０４）は内部座標系（５１）から見た工具取付座標系の位置姿勢を表す
0ｒ6＝［0Ｘ6 0 Ｙ6 0Ｚ6 0γ6 0β6 0α6］T
であるとする。軸指令（０１）と軸位置（０２）は実施例１のものと同じである。
【００１９】
例として図７の６軸横型マシニングセンタで、標準座標系（７１）はＪＩＳで定められたものであるとすると、指令座標系変換部（２２）は標準座標系（７１）での指令（０５）を内部座標系（５１）での指令（０３）に変換するために次のような変換行列0ＴSを持ち、
【数１２】
0004291482.tif 000013
内部座標系（５１）から見た位置を標準座標系（７１）から見た位置に変換するために次のような変換行列SＴ0を持つ。
【数１３】
0004291482.tif 000014
また、指令座標系変換部（２２）では、工具先端座標系（５３）も標準座標系（７１）と同じ姿勢に合わせるため、工具取付座標系から見た次のような変換行列6ＴEとその逆行列EＴ6も持つ。
【数１４】
0004291482.tif 000015
【数１５】
0004291482.tif 000016
式１６は、工具取付座標系（１３）から
［6ＬEX 6ＬEy 6ＬEz］T
だけ並進し、Ｚ軸まわりに−９０°回転し、その結果のＸ軸まわりに９０°回転したものが工具先端座標系（５３）であることを表している。
【００２０】
標準座標系（７１）で書かれた指令（０５）
SｒEd＝［SＸEd SＹEd SＺEd SγEd SβEd SαEd］T
を次のようにして内部座標系（５１）での指令（０３）
0ｒ6d＝［0Ｘ6d 0Ｙ6d 0Ｚ6d 0γ6d 0β6d 0α6d］T
へ変換する。
【数１６】
0004291482.tif 000017
ここで0Ｐ6dは
【数１７】
0004291482.tif 000018
である。式１８，式１９より、内部座標系での指令のうち位置は
【数１８】
0004291482.tif 000019
となり、姿勢は次のようになる。
【数１９】
0004291482.tif 000020
【００２１】
また、内部座標系（５１）から見た工具取付座標系（５２）の位置（０４）
0ｒ6＝［0Ｘ6 0Ｙ6 0Ｚ6 0γ6 0β6 0α6］T
を次のようにして標準座標系（７１）から見た工具先端座標系（５３）の位置（０６）
SｒE＝［SＸE SＹE SＺE SγE SβE SαE］T
へ変換する。
【数２０】
0004291482.tif 000021
ここでSＰEは
【数２１】
0004291482.tif 000022
である。式２２，式２３より、内部座標系（５１）での工具先端座標系（５３）の位置は、
【数２２】
0004291482.tif 000023
となり、内部座標系（１１）での工具先端座標系（５３）の姿勢を表すＺＹＸオイラー角は次のようになる。
【数２３】
0004291482.tif 000024
【００２２】
すなわち、指令座標系変換部（２２）は標準座標系（７１）での指令（０５）
SｒEd＝［SＸEd SＹEd SＺEd SγEd SβEd SαEd］T
を入力し、（式１８）と（式２２）を用いて内部座標系（５１）での指令（０３）
0ｒ6d＝［0Ｘ6d 0Ｙ6d 0Ｚ6d 0γ6d 0β6d 0α6d］T
に変換して共通座標変換部（２１）へ出力する。また、内部座標系（５１）から見た工具取付座標系（５２）の位置（０４）
0ｒ6＝［0Ｘ6 0Ｙ6 0Ｚ6 0γ6 0β6 0α6］T
を入力し、（式２２）と（式２５）を用いて標準座標系（７１）から見た工具先端座標系（５３）の位置（０６）
SｒE＝［SＸE SＹE SＺE SγE SβE SαE］T
に変換して出力する。この指令座標系変換部（２２）が使用する行列SＴ0、0ＴS、6ＴE、およびEＴ6は工作機械の軸構成ごとに異なるので数値制御装置を適用しようとする工作機械の全てについて用意する必要があるが、前記行列SＴ0、0ＴS、6ＴE、およびEＴ6の要素は定数のみであるため、数値制御装置を適用しようとする全ての工作機械について工作機械特有の順運動学および逆運動学を求めるよりも簡単である。
【００２３】
＜実施例３＞
本発明の第２の手段において、入力形式が異なる場合の実施例を説明する。図３は本実施例の応用として考えられる装置の構成図であり、共通座標変換部（２１）と指令座標系変換部（２２）と指令形式変換部Ａ（３１）からなる座標変換部（３２）を示している。指令形式変換部Ａ（３１）は特定形式指令（０７）、例えば標準座標系（７１）での工具先端の位置ベクトルと、工具軸方向を表す方向ベクトル
SＩ＝［Sｉ Sｊ Sｋ］T
と、工具の刃方向を表す方向ベクトル
SＧ＝［Sｆ Sｇ Sｈ］T
とで与えられる指令（０７）
Sｕd＝［SＸEd SＹEd SＺEd Sｉd Sｊd Sｋd Sｆd Sｇd Sｈd］T
を、標準座標系（７１）での指令（０５）
SｒEd＝［SＸEd SＹEd SＺEd SγEd SβEd SαEd］T
に変換して指令座標系変換部（２２）へ出力する処理を行う。また、標準座標系（７１）から見た現在の工具先端座標系（５３）の位置（０６）
SｒE＝［SＸE SＹE SＺE SγE SβE SαE］T
を、特定形式指令（０７）と同様の形式で表した工具座標位置（０８）
Sｕ＝［SＸE SＹE SＺE Sｉ Sｊ Sｋ Sｆ Sｇ Sｈ］T
に変換して出力する処理を行う。
別の応用として、標準座標系（７１）での指令（０５）および標準座標系（７１）での工具位置（０６）を介さずに、図４のように特定形式指令（０７）を内部座標系（５１）での指令（０３）へ変換し、工具先端位置も内部座標系（５１）での工具位置（０４）から特定形式（０８）へ変換するような指令形式変換部Ｂ（４１）を持つ座標変換部（４２）も考えられる。
【００２４】
【発明の効果】
以上述べたように、本発明の第１の手段によれば、工作機械ごとに異なる順運動学と逆運動学の解を計算する式を工作機械が変わるたびに求めて座標変換部を入れ替える必要がなく、複数種類の工作機械に適用が可能な数値制御装置となるという効果がある。また、工作機械の違いを定数の違いとしたので、数値制御装置を適用しようとする工作機械に特有な定数を用意しておけば、工作機械に対する数値制御装量の自動的な設定が可能となるという効果がある。また、座標変換部を変えることなく６軸以下の工作機械にも適用可能な数値制御装置となるという効果がある。
さらに第２の手段によれば、共通座標変換部を備えた座標変換部で、ＪＩＳなどの標準座標系での指令を使用することができ、指令座標系変換部で指令の変換に用いる同次変換行列の要素も定数のみなので、指令座標系変換部で指令の変換に用いる同次変換行列を複数の工作機械について用意しても、数値制御装置を適用しようとする全ての工作機械についての順運動学および逆運動学の解を計算する式を持つ座標変換部を用意するよりも簡単になるという効果がある。
【図面の簡単な説明】
【図１】  本発明の実施例１における装置の構成図である。
【図２】  本発明の実施例２における装置の構成図である。
【図３】  本発明の実施例３における装置の構成図（その１）である。
【図４】  本発明の実施例３における装置の構成図（その２）である。
【図５】  ６軸横型マシニングセンタの軸構成図（内部座標系の設定）である。
【図６】  ６軸立型マシニングセンタの軸構成図（内部座標系の設定）である。
【図７】  ６軸横型マシニングセンタの軸構成図（標準座標系の設定）である。
【符号の説明】
０１：軸指令
０２：軸位置
０３：内部座標系指令
０４：工具位置（内部座標系）
０５：標準座標系指令
０６：工具位置（標準座標系）
０７：特定形式指令
０８：工具位置（特定形式）
１１：共通座標変換部
１２：共通逆運動学部
１３：共通順運動学部
２１：共通座標変換部
２２：指令座標系変換部
３１：指令形式変換部Ａ
３２：座標変換部
４１：指令形式変換部Ｂ
４２：座標変換部
５０：工具
５１：内部座標系
５２：工具取付座標系
５３：工具先端座標系
５４：回転軸１
５５：回転軸２
５６：回転軸３
５７：直動軸ｘ
５８：直動軸ｙ
５９：直動軸ｚ
７１：標準座標系
【図１】
0004291482.tif 000025
【図２】
0004291482.tif 000026
【図３】
0004291482.tif 000027
【図４】
0004291482.tif 000028
【図５】
0004291482.tif 000029
【図６】
0004291482.tif 000030
【図７】
0004291482.tif 000031