(57)【要約】【課題】  各種タイプの５軸加工機にも適した干渉チェック機能を有する数値制御装置を得る。【解決手段】  干渉する可能性のある機械部位の形状を直方体で定義する。加工プログラムに基づく移動指令を補間処理して補間後の位置において、２つの機械部位の直方体１ｐ、２ｑが干渉するか否か判定する。その方法は、一方の直方体１ｐの各辺と基準座標系各軸とが平行となるように、直方体１ｐ、２ｑを回転させる。直方体１ｐ内に直方体２ｑのいずれかの頂点が存在し干渉しているかにより干渉を判定する。同様な処理で直方体２ｑ内に直方体１ｐのいずれかの頂点が存在し干渉しているか干渉を判定する。又、直方体１ｐ、２ｑの各辺が干渉するかをＸ−Ｙ，Ｙ−Ｚ，Ｚ−Ｘ平面に分けてそれぞれ判定する、各平面で全て干渉すると判定されたとき、直方体１ｐ、２ｑで干渉すると判定する。補間位置に基づいて干渉を判定するので正確で、計算が少なく５軸加工機に適用できる。【選択図】        図１
2005128686.tif 000002
【特許請求の範囲】
【請求項１】
加工プログラムに基づいて加工機の各軸を駆動制御する数値制御装置において、
前記加工機の機械部位の形状を多面体で定義したデータを記憶するメモリと、
前記加工プログラムを解析し、動作経路に関するデータを生成する指令解析部と、
前記生成されたデータに基づいて、サンプリング周期毎に、動作経路上の位置を出力する補間手段と、
前記補間手段によって生成される各軸位置に応じて前記多面体の形状の位置を求める手段と、
前記求められた多面体の形状の位置における前記多面体の形状同士が干渉するかをチェックする干渉チェック手段と、
を備えた数値制御装置。
【請求項２】
前記機械部位の形状は１以上の多面体の組み合わせで定義されている請求項１に記載の数値制御装置。
【請求項３】
前記多面体は直方体である請求項１又は請求項２に記載の数値制御装置。
【請求項４】
前記干渉チェック手段は、一方の機械部位に属する１つの直方体の頂点が他方の機械部位に属する１つの直方体に干渉するかどうか、および一方の機械部位に属する１つの直方体の辺が他方の機械部位に属する１つの直方体に干渉するかどうかをチェックする請求項３に記載の数値制御装置。
【請求項５】
前記干渉チェック手段で干渉と判定されたとき補間を停止する請求項１乃至４の内いずれか１項に記載の数値制御装置。
【請求項６】
前記加工機の各軸には少なくとも１軸の回転軸を含む請求項１乃至５の内いずれか１項に記載の数値制御装置。
【請求項７】
前記加工機の少なくとも１軸の回転軸によって、工具が傾斜する請求項１乃至６の内いずれか１項に記載の数値制御装置。
【請求項８】
前記加工機の少なくとも１軸の回転軸によってテーブルが回転する請求項１乃至７の内いずれか１項に記載の数値制御装置。
【請求項９】
前記加工機の少なくとも２軸の回転軸によって工具とテーブルが回転する請求項１乃至５の内いずれか１項に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、干渉チェック機能を有する数値制御装置に関する。
【背景技術】
【０００２】
工作機械においてワーク（被加工物）を加工中に工具、テーブル、ワークをクランプする治具、主軸台等、機械の各部位が互いに干渉してはならない。そのため、従来から機械部位同士が干渉しないか干渉チェックが行われている。  
例えば、工具等の干渉するおそれのある機械部位を干渉物としていくつかの立体の組み合わせで定義してメモリに記憶しておき、現在の干渉物の位置と、移動指令を補間処理して軸移動後の干渉物の移動位置を求め、補間前の干渉物の位置から補間後の干渉物の位置への移動において、干渉物を構成する立体形状の干渉しうる領域を干渉判定立体として計算し、この干渉判定立体の組み合わせにより干渉判定領域を設定し、この設定された干渉判定領域に基づいて干渉の有無を判定するようにしたものが知られている（特許文献１参照）。
また、例えば、工具を取り囲む立体領域のデータと進入禁止領域のデータを設定し、加工プログラムに従って工具の軸を移動し、工具の軸の現在位置と工具を取り囲む立体領域のデータから工具の現在の立体領域の位置を演算し、工具の現在の立体領域が進入禁止領域と干渉するか否かを判断するようにしたものが知られている（特許文献２参照）。
【０００３】
【特許文献１】特開平９−２３０９１８号公報
【特許文献２】特開平８−１１５１１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
工作機械において、基本３軸のＸ，Ｙ，Ｚ軸の送り軸以外に、２つの回転軸を備えた５軸加工機が知られている。図１７〜図１９は、この５軸加工機の概要を示す図である。図１７は、２つの回転軸でテーブルが回転する５軸加工機の例で、テーブル１は、直交するＸ，Ｙ軸方向に駆動されると共に、工具２はＸ，Ｙ軸と直交するＺ軸方向に駆動される。さらにテーブル１は、２つの回転軸Ａ、Ｂを有し、Ａ軸回りに回転すると共にＢ軸回りにも回転する構成となっている。なお、符号３は治具、符号４はワークであり、該ワーク４は治具３によってテーブル１に取り付けられている状態を示している。
【０００５】
又、図１８、テーブル１に１つの回転軸Ｂ、工具を傾斜、回転させる回転軸Ｄを備えた５軸加工機の例である。図１７の５軸加工と同様に、テーブル１はＸ，Ｙ軸方向に駆動されると共に工具２はＺ軸方向に駆動される。さらに、テーブル１はＺ軸回りの回転軸Ｂで回転されるように構成され、又、工具２もＹ軸回りの回転軸Ｄによる回転により工具２の軸方向が傾斜するように構成されている。  
図１９は２つの回転軸で工具が回転（傾斜）する５軸加工機の例である。テーブルはＸ，Ｙ軸方向に駆動され、工具２はＺ軸方向と回転軸Ｃ，Ｄにより回転させられるものである。  
以上のように各種タイプの５軸加工機が知られている。
【０００６】
上述した５軸加工機に適した干渉チェック方法、装置は知られていない。前述した特許文献１に記載されたような干渉チェック方法では、補間前の干渉物の位置から補間後の干渉物の位置への移動において、干渉物を構成する立体形状の干渉しうる領域を干渉判定立体として計算するものであるから、この方法を５軸加工機に適用すると複雑な計算となり、５軸加工機には適していない。
また、前述した文献２に記載されたような干渉チェック方法では、工具の軸が移動する場合にしか対応できず、上記のような各種タイプの５軸加工機に対応できない。
【０００７】
一方、５軸加工機は、テーブルや工具が回転、傾斜することから、加工前に工具などの機械部位がどのような位置関係になるのか推定が難しく、加工中に思わぬところで機械部位同士が干渉する場合がある。機械部位同士が干渉すると機械や工具、あるいはワークを損傷させることになる。そのため、５軸加工機にとって、干渉を自動的にチェックすることは重要な課題である。
そこで、本発明の目的は、各種タイプの５軸加工機にも適した干渉チェック機能を有する数値制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明は、加工プログラムに基づいて加工機の各軸を駆動制御する数値制御装置において、前記加工機の機械部位の形状を多面体で定義したデータを記憶するメモリと、前記加工プログラムを解析し、動作経路に関するデータを生成する指令解析部と、前記生成されたデータに基づいて、サンプリング周期毎に、動作経路上の位置を出力する補間手段と、前記補間手段によって生成される各軸位置に応じて前記多面体の形状の位置を求める手段と、前記求められた多面体の形状の位置における前記多面体の形状同士が干渉するかをチェックする干渉チェック手段とを備え、機械部位間の干渉をチェックできるようにしたことに特徴とするものである。また、前記機械部位の形状は１以上の多面体の組み合わせで定義され、さらには、該多面体を直方体とする。また、前記干渉チェック手段は、一方の機械部位に属する１つの直方体の頂点が他方の機械部位に属する１つの直方体に干渉するかどうか、および、一方の機械部位に属する１つの直方体の辺が他方の機械部位に属する１つの直方体に干渉するかどうかをチェックする。さらに、前記干渉チェック手段で干渉と判定されたとき補間を停止するようにする。
【０００９】
前記加工機の各軸には少なくとも１軸の回転軸を含むものとする。少なくとも１軸の回転軸によって工具が傾斜可能となるものを含む。又は、１軸の回転軸によってテーブルが回転するものを含む。さらに、少なくとも２軸の回転軸によって工具とテーブルが回転するものをも含む。
【発明の効果】
【００１０】
加工プログラムに基づいて補間された位置での機械部位の干渉をチェックするようにしたから、機械部位の形状を特定する多面体データを記憶させておけばすむものであり、簡単に干渉を判定することができ、５軸加工機のような工具やテーブルが回転する加工機に対しても干渉チェックが容易にできるものである。
【発明を実施するための最良の形態】
【００１１】
本発明の干渉チェック機能の基本的なアルゴリズムについて説明する。  
本発明は、干渉が発生する機械部位形状を１以上の多面体の組み合わせで定義し、この多面体が他の多面体と干渉するかの判定により干渉チェックを行う。例えば、図１７〜図１９において、破線で示す１ａ、２ａ、３ａは、それぞれテーブル形状、工具形状、治具形状を多面体で定義した機械部位の多面体形状である。そこで、機械部位１と機械部位２との間で干渉チェックを行うものとし、かつ多面体を直方体として、機械部位１は直方体１１〜直方体１ｎで構成され、機械部位２は直方体２１〜直方体２ｍで構成されているものとし、これら各直方体１１〜直方体１ｎと直方体２１〜直方体２ｍが干渉しないかを総当たりでチェックする。
【００１２】
機械部位１の直方体１１〜直方体１ｎの中から任意の１つの直方体１ｐを選び、機械部位２の直方体２１〜直方体２ｍの中から任意の直方体２ｑを選択し、これらが任意に回転／平行移動したときの干渉チェックについて以下説明する。
【００１３】
加工機が動作し直方体１ｐ、直方体２ｑが図１に示すような状態であったとする。直方体１ｐの各頂点を図１に示すようにＶ11，Ｖ12，Ｖ13，Ｖ14，Ｖ15，Ｖ16，Ｖ17，Ｖ18
とする。同様に直方体２ｑの各頂点をＶ21，Ｖ22，Ｖ23，Ｖ24，Ｖ25，Ｖ26，Ｖ27，Ｖ28
とする。
（１）直方体１ｐを基準座標系に合わせる回転
直方体１ｐの各辺が基準座標系（Ｘ，Ｙ，Ｚ軸座標系）の各軸に平行となるように回転変換する変換行列Ｍ１を求め、各頂点の座標値を求める。このときの直方体１ｐを直方体１ｐ'とする。回転変換して求められた直方体１ｐ'の各頂点をＶ11'，Ｖ12'，Ｖ13'，Ｖ14'，Ｖ15'，Ｖ16'，Ｖ17'，Ｖ18'とする。変換行列Ｍ１を次の１式とすれば、例えば、頂点Ｖ11は次の２式の演算を行って頂点Ｖ11'の座標値（ｘ，ｙ，ｚ）が求まる。他の頂点に対しても同様である。
【００１４】
【数１】
2005128686.tif 000003
【００１５】
【数２】
2005128686.tif 000004
【００１６】
また直方体２ｑの各頂点に対しても求めた変換行列Ｍ１を用いて同様に変換し直方体２ｑ'の各頂点Ｖ21'，Ｖ22'，Ｖ23'，Ｖ24'，Ｖ25'，Ｖ26'，Ｖ27'，Ｖ28'の座標値を求める。  図２はこうして直方体１ｐの各辺が基準座標系各軸に平行となるように変換した直方体１ｐ'，２ｑ'の状態を示す。
【００１７】
この状態で、直方体１ｐ'と直方体２ｑ'の干渉チェックを行うが、直方体２ｑ'が直方体１ｐ'に干渉するとは図３に示すように直方体２ｑ'のいずれかの頂点が直方体１ｐ'の内部にあるときと、図４に示すように、直方体２ｑ'の辺の内、少なくとも１つの辺の一部が直方体１ｐ'の内部に存在するときである。
（２）直方体２ｑ'の各頂点が直方体１ｐ'の内部にあるかのチェック
直方体１ｐ'の頂点の内、点α（ｘ１，ｙ１，ｚ１）、点β（ｘ２，ｙ２，ｚ２）において、ｘ１＜ｘ２、ｙ１＜ｙ２、ｚ１＜ｚ２となる点α、βを選択する。上述した直方体１ｐ'の例では、頂点Ｖ13'が点α、頂点Ｖ16'が点βとして選ばれる。直方体２ｑ'の各頂点においてある１つの頂点に着目し、その頂点の座標を（Ｘ０，Ｙ０，Ｚ０）とすると次の条件１が成立すると、その頂点は直方体１ｐ'内にあり、干渉していることを意味する。
【００１８】
条件１：ｘ１≦Ｘ０≦ｘ２、かつ、ｙ１≦Ｙ０≦ｙ２、かつ、ｚ１≦Ｚ０≦ｚ２
直方体２ｑ'における８個の頂点の内、１つでも上記条件１を満たすものがあると、直方体２ｑ'は直方体１ｐ'に干渉していることを意味する。８個の全ての頂点が上記条件１を満たしていないときは、直方体２ｑ'は直方体１ｐ'に干渉しているかどうか不明のためさらにチェックを行う。
（３）直方体２ｑ'の辺が直方体１ｐ'の内部に存在するかのチェック
直方体２ｑ'の各辺の内、ある１つの辺に着目したとき、その辺の両端点（頂点）の座標を（Ｘ１，Ｙ１，Ｚ１）、（Ｘ２，Ｙ２，Ｚ２）とする。
【００１９】
（3-1）Ｘ−Ｙ平面でのチェック
直方体１ｐ'の基準座標系のＸ−Ｙ平面と平行な面（２つ存在するが、Ｘ，Ｙ軸の座標値は同じであるから、図５では頂点Ｖ13',Ｖ14'Ｖ18',Ｖ17'で形成される面を示している）を平面（0,0）とし、この平面（0,0）の各辺を延長してＸ−Ｙ平面を平面（1,1），（1,0），（1,-1），（0,1），（0,-1），（-1,1），（-1,０），（-1,-1）の９つの平面に分割する。なお、図５において頂点Ｖ13'のＸ−Ｙ座標を（ｘ１，ｙ１）、頂点Ｖ18'のＸ−Ｙ座標を（ｘ２，ｙ２）とする。
【００２０】
（3-1-1）１つの端点が平面（0,0）に存在するとき（図６、仮干渉２（3-1-1）参照）
直方体２ｑ'の着目した辺における１つの端点のＸ−Ｙ座標（Ｘ１，Ｙ１）又は（Ｘ２，Ｙ２）のいずれかが平面（0,0）に存在するときは、この端点で形成される辺が平面(0,0)と交差し、少なくともＸ−Ｙ平面からみて、この辺と直方体１ｐが交差する可能性があるものとし、仮干渉２とする。即ち、
ｘ１≦Ｘ１≦ｘ２で、かつ、ｙ１≦Ｙ１≦ｙ２であるとき、
又はｘ１≦Ｘ２≦ｘ２で、かつ、ｙ１≦Ｙ２≦ｙ２であるときは、
端点が平面（0,0）に存在し仮干渉２とする。なお、後述するが、この仮干渉２は、Ｙ−Ｚ平面、Ｚ−Ｘ平面に対しても干渉の判定をし、全ての平面においても仮干渉２と判定されたときに直方体２ｑは直方体１ｐに干渉すると判定する。
【００２１】
（3-1-2）２つの端点が平面（0,0）以外の平面に存在するとき
２つの端点（Ｘ１，Ｙ１）及び（Ｘ２，Ｙ２）に着目し、両方の端点が平面（0,0）以外の同じ平面に存在するときは干渉がないと判定する。
【００２２】
ｘ２＜Ｘ１，Ｘ２、      かつ、ｙ２＜Ｙ１，Ｙ２              平面（1,1）内
ｘ２＜Ｘ１，Ｘ２、      かつ、ｙ１＜Ｙ１，Ｙ２＜ｙ２        平面（1,0）内
ｘ２＜Ｘ１，Ｘ２、      かつ、ｙ１＞Ｙ１，Ｙ２              平面（1,-1）内
ｘ１＜Ｘ１，Ｘ２＜ｘ２  かつ、ｙ２＜Ｙ１，Ｙ２              平面（0,1）内
ｘ１＜Ｘ１，Ｘ２＜ｘ２  かつ、ｙ１＞Ｙ１，Ｙ２              平面（0,-1）内
ｘ１＞Ｘ１，Ｘ２、      かつ、ｙ２＜Ｙ１，Ｙ２              平面（-1,1）内
ｘ１＞Ｘ１，Ｘ２、      かつ、ｙ１＜Ｙ１，Ｙ２＜ｙ２        平面（-1,0）内
ｘ１＞Ｘ１，Ｘ２、      かつ、ｙ１＞Ｙ１，Ｙ２              平面（-1,-1）内
以上のとき、干渉なしと判定する。
【００２３】
（3-1-3）１つの端点が４隅の平面に存在するとき（図６、仮干渉１（3-1-3）参照）
１つの端点のＸ−Ｙ座標（Ｘ１，Ｙ１）又は（Ｘ２，Ｙ２）に着目したとき、その端点が４隅の平面（η，ζ）（＝(1,1)又は(1,-1)又は(-1,-1)又は(-1,1)）に存在するとき、もう１つの端点のＸ−Ｙ座標が平面（η'，ζ'）であるとき、η≠η'かつζ≠ζ'でなければ干渉ではない。干渉でないと判定できないと仮干渉１と判定する。例えば、図６において、１つの端点が平面(1,1)に存在するとき、もう１つの端点が平面(0,-1)、平面(-1,0)、平面(-1,-1)になければ干渉ではない。他のときは仮干渉１とする。この仮干渉１は、その座標平面において干渉する可能性があるというもので、上述した例では、平面(0,0)と辺は交差する場合もあるが交差しない場合もあり、このような場合は仮干渉１とする。
【００２４】
（3-1-4）２つの端点が平面（0,0）の１辺を共有する平面における異なる平面に存在              するとき
１つの端点が平面（0,0）の１辺を共有する１つの平面（η，ζ）に存在し、もう１つの端点が平面（0,0）の１辺を共有する他の平面（η'，ζ'）に存在し、ηとη'、ζとζ'のどちらか一方が変化しないとき、仮干渉２と判定し、他のときは仮干渉１と判定する。例えば、図６において、１つの端点が平面（1,0）にあり、もう１つの端点が平面（-1,0）にあるときは、この辺はＸ−Ｙ座標における平面（0,0）を必ず交差するから仮干渉２（図６、仮干渉２（3-1-4）参照）と判定し、他の場合は交差するときも又は交差しないときもあるので仮干渉１（図６、仮干渉１（3-1-4）参照）と判定する。
【００２５】
（3-1-5）仮干渉１と判定されたときの追加判断
上述した各判定処理で仮干渉１と判定された場合には、さらに、当該座標平面で仮干渉２となるか否かの判定を行う。この処理は、両端点のＸ−Ｙ座標（Ｘ１，Ｙ１）及び（Ｘ２，Ｙ２）を通る直線Ｌを作成し、直方体１ｐ'のＸ−Ｙ座標上での４点の内、１つでもこの直線Ｌ上に存在すれば仮干渉２と判定する。さらに、この直線Ｌに対して直方体１ｐ'のＸ−Ｙ座標の４点が全て一方の側にあれば、干渉でない。そうでなければ仮干渉２と判定する。  
すなわち、直線Ｌに対して直方体１ｐ'のＸ−Ｙ座標の４点が全て一方の側にあれば、Ｘ−Ｙ平面を直線Ｌで分断したとき、平面（0,0）は、分断されることなく、直方体１ｐ'には直線Ｌが通過しないことを意味する。
そこで、直線Ｌは次の３式、４式で定義される。
【００２６】
Ｌ：(Ｘ2−Ｘ1)＊(ｙ−Ｙ1)＝(Ｙ2−Ｙ1)＊(ｘ−Ｘ1)    …（３）
展開して
Ｌ：(Ｙ1−Ｙ2)＊ｘ＋(Ｘ2−Ｘ1)＊ｙ＋(Ｙ2−Ｙ1)＊Ｘ1＋(Ｘ2−Ｘ1)＊Ｙ1＝０
…（４）
直方体１ｐ'のＸ−Ｙ座標の４点をＶ13'(ｘ1，ｙ1),Ｖ14'(ｘ2，ｙ1),Ｖ18'(ｘ2，ｙ2),Ｖ17'(ｘ1，ｙ2)として、これらを４式のｘ，ｙに代入したときの値をＰＨ１，ＰＨ２，ＰＨ３，ＰＨ４とすると、
ＰＨ１＝(Ｙ1−Ｙ2)＊ｘ1＋(Ｘ2−Ｘ1)＊ｙ1＋(Ｙ2−Ｙ1)＊Ｘ1＋(Ｘ2−Ｘ1)＊Ｙ1
ＰＨ２＝(Ｙ1−Ｙ2)＊ｘ2＋(Ｘ2−Ｘ1)＊ｙ1＋(Ｙ2−Ｙ1)＊Ｘ1＋(Ｘ2−Ｘ1)＊Ｙ1
ＰＨ３＝(Ｙ1−Ｙ2)＊ｘ2＋(Ｘ2−Ｘ1)＊ｙ2＋(Ｙ2−Ｙ1)＊Ｘ1＋(Ｘ2−Ｘ1)＊Ｙ1
ＰＨ４＝(Ｙ1−Ｙ2)＊ｘ1＋(Ｘ2−Ｘ1)＊ｙ2＋(Ｙ2−Ｙ1)＊Ｘ1＋(Ｘ2−Ｘ1)＊Ｙ1
値ＰＨ１〜ＰＨ４の内いずれかが「０」であれば、対応する端点Ｖ13',Ｖ14',Ｖ18',Ｖ17'のいずれかが直線Ｌ上に存在することになり仮干渉２と判定する。  
また、値ＰＨ１〜ＰＨ４が全て「０」ではなく、全て同一符号であれば、４つの端点は全て同一側にあり、干渉はない。一方、値ＰＨ１〜ＰＨ４の符号が同一ではなく異なる場合は、仮干渉２と判定する。
【００２７】
（3-2）Ｙ−Ｚ平面でのチェック
上述した（3-1）のＸ−Ｙ平面での干渉チェックと同じように、直方体１ｐ'の基準座標系のＹ−Ｚ平面と平行な面（２つ存在するその内一方で図７では頂点Ｖ13',Ｖ17',Ｖ15',Ｖ11'で形成される面を示している）を平面（0,0）とし、図７に示すように、この平面（0,0）の各辺を延長してＸ−Ｙ平面を平面（1,1），（1,0），（1,-1），（0,1），（0,-1），（-1,1），（-1,０），（-1,-1）の９つの平面に分割する。そして、Ｘ−Ｙ平面で行った干渉チェックと同じ干渉チェックをこのＹ−Ｚ平面に対しても行う。
【００２８】
（3-3）Ｚ−Ｘ平面でのチェック
同様に、図８に示すように、直方体１ｐ'の基準座標系のＺ−Ｘ平面と平行な面（図８では、頂点Ｖ13',Ｖ11',Ｖ12',Ｖ14'で形成される面）を平面（0,0）とし、Ｚ−Ｘ平面を平面（1,1），（1,0），（1,-1），（0,1），（0,-1），（-1,1），（-1,０），（-1,-1）の９つの平面に分割し、Ｘ−Ｙ平面で行った干渉チェックと同じ干渉チェックをこのＺ−Ｘ平面に対しても行う。
【００２９】
（3-4）総合チェック
上述したＸ−Ｙ平面、Ｙ−Ｚ平面、Ｚ−Ｘ平面に対する干渉チェックにおいて全てにおいて仮干渉２と判定されたとき、直方体１ｐと直方体２ｑは干渉すると判定する。
（４）直方体１ｐの各頂点が直方体２ｑの内部にあるかのチェック
（4-1）直方体２ｑを基準座標系に合わせる回転
直方体２ｑの各辺が基準座標系（Ｘ，Ｙ，Ｚ軸座標系）の各軸に平行となるように回転変換する変換行列Ｍ２を求め、各頂点の座標値を求める。このときの直方体２ｑを直方体２ｑ''とする。回転変換して求められた直方体２ｑ''の各頂点をＶ21''，Ｖ22''，Ｖ23''，Ｖ24''，Ｖ25''，Ｖ26''，Ｖ27''，Ｖ28''とする。
【００３０】
【数３】
2005128686.tif 000005
【００３１】
また直方体１ｐの各頂点に対しても求めた変換行列Ｍ２を用いて同様に変換し、直方体１ｐ''の各頂点Ｖ11''，Ｖ12''，Ｖ13''，Ｖ14''，Ｖ15''，Ｖ16''，Ｖ17''，Ｖ18''の座標値を求める。
図９はこうして直方体２ｑの各辺が基準座標の各軸に平行となるように変換した直方体１ｐ''，２ｑ''の状態を示す。
【００３２】
この状態で、直方体２ｑ''の内部に直方体１ｐ''のいずれかの頂点が存在するかの判断を行う。前述した（２）の直方体２ｑ'の各頂点が直方体１ｐ'の内部にあるかのチェックと同様に、直方体２ｑ''の頂点の内、点α（ｘ１，ｙ１，ｚ１）、点β（ｘ２，ｙ２，ｚ２）において、ｘ１＜ｘ２、ｙ１＜ｙ２、ｚ１＜ｚ２となる点α、βを選択する。上述した図９の直方体２ｑ''の例では、頂点Ｖ23''が点α、頂点Ｖ26''が点βとして選ばれる。直方体１ｐ''の各頂点においてある１つの頂点に着目しもその頂点の座標を（Ｘ０，Ｙ０，Ｚ０）とすると、先に述べた条件１と同様な次の条件２が成立すると、その頂点は直方体２ｑ''内にあり、干渉していることを意味する。
【００３３】
条件２：ｘ１≦Ｘ０≦ｘ２、かつ、ｙ１≦Ｙ０≦ｙ２、かつ、ｚ１≦Ｚ０≦ｚ２
直方体１ｐ''における８個の頂点の内１つでも上記条件１を満たすものがあると、直方体１ｐ''は直方体２ｑ''に干渉していることを意味する。８個の全ての頂点が上記条件１を満たしていないときは、直方体１ｐ''は直方体２ｑ''に干渉していない。
【００３４】
なお、直方体２ｑの辺の直方体１ｐに対する干渉チェックは、辺同士のチェックであるから、すでに直方体１ｐの辺の直方体２ｑに対する干渉チェックとして上記（３）で行っているので、行う必要はない。
以上が、本実施形態における干渉チェックのアルゴリズムである。このアルゴリズムの処理を数値制御装置が実施して、加工中に干渉チェックを行うものである。
【００３５】
図１０は、上述した干渉チェックのアルゴリズムを実施する本発明の一実施形態の数値制御装置の要部ブロック図である。  
ＣＰＵ１１は数値制御装置１０を全体的に制御するプロセッサである。プロセッサ１１はバス２３を介してＲＯＭ，ＲＡＭ，不揮発性ＲＡＭ等で構成されるメモリ１２，ＰＭＣ（プログラマブル・マシン・コントローラ）１３、ＣＲＴや液晶等で構成される表示器１４，キーボード等の各種指令やデータを入力するための入力機器１５，外部記憶媒体やホストコンピュータ等に接続されるインタフェース１６，工作機械の各軸制御回路１７（図では５軸分備えた例を示している），スピンドル制御回路２０に接続されている。ＣＰＵ１１は、メモリ１２のＲＯＭに格納されたシステムプログラムを、バス２３を介して読み出し、該システムプログラムに従って数値制御装置全体を制御する。又、本発明に関係し、メモリ１２には、上述した干渉チェックのアルゴリズムを実施する後述する処理のソフトウェアが記憶されていると共に、干渉の可能性のある機械各部位の形状が１以上の多面体（この実施形態では直方体）の組み合わせとして定義されそのデータが記憶されている。
【００３６】
ＰＭＣ１３は、数値制御装置１０に内蔵されたシーケンスプログラムで制御対象物の加工機の補助装置に信号を出力し、又は該補助装置からの信号話入力し制御する。また、数値制御装置で制御される加工機の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、ＣＰＵ１１に渡す。  
各軸（５軸）の軸制御回路１７はＣＰＵ１１から各軸に補間分配された移動指令量を受けて、各軸の指令をサーボアンプ１８に出力する。サーボアンプ１８はこの指令を受けて、工作機械の各軸のサーボモータ１９を駆動する。各軸のサーボモータ１９は位置・速度検出器を内蔵し、この位置・速度検出器からの位置。速度フィードバック信号を軸制御回路１７にフィードバックし、位置・速度のフィードバック制御を行う。なお、図１０では、位置・速度のフィードバックについては省略している。
【００３７】
また、スピンドル制御回路２０は主軸回転指令を受け、スピンドルアンプ２１にスピンドル速度信号を出力する。スピンドルアンプ２１はスピンドル速度信号を受けて、スピンドルモータ２２を指令された回転速度で回転させる。又、ポジションコーダ（図示せず）で主軸の回転速度検出しスピンドル制御回路２０にフィードバックし、速度制御を行う。
【００３８】
上述した数値制御装置１０の構成は、従来の５軸制御の数値制御装置と変わりはなく、相違する点は、上述したようにメモリ１２ないに干渉チェックのアルゴリズムを実施するソフトウェアと機械各部位の形状を定義したデータが記憶されている点で相違するものである。
【００３９】
図１１は、本実施形態における機能ブロック図である。指令解析部３０は、加工プログラムを解析し実行形式に変換し、補間処理部３１で補間処理を行い各軸へ移動指令を出力する。従来はこの移動指令を直接各軸加減速部３４ａ〜３４ｅに出力していたが、本実施形態では、干渉チェック部３２で干渉チェックを行って各軸加減速部３４ａ〜３４ｅに出力するようにしている。各軸加減速部３４ａ〜３４ｅでは移動指令に対して加減速処理を行い、処理後の各軸移動指令に基づきそれぞれサーボ制御３５ａ〜３５ｅを行い位置、速度、電流のフィードバックを行って各軸サーボモータを駆動制御する。  
干渉チェック部３２は、多面体の組み合わせで機械部位の形状特定した記憶している定義３３に基づいて、干渉チェックを行うものである。
【００４０】
図１２〜図１６は、この数値制御装置プロセッサ１１が干渉チェック部３２の機能として実施する干渉チェック処理のフローチャートである。  
図１２は、この干渉チェック処理のメイン処理であり、補間処理によって出力された移動指令位置に基づいて、機械部位１と機械部位２が干渉するか否かの干渉チェックが相対的に移動した機械部位と他の機械部位間でなされる。例えば、図１７〜図１９に示す５軸加工機の場合、工具２と治具３，工具２とテーブル１の間でこの干渉チェックがなされる。
【００４１】
まず機械部位１を定義する複数の直方体の１つを指定する指標ｉと機械部位２を定義する複数の直方体の１つを指定する指標ｊをそれぞれ「１」にセットし（ステップＴ１，Ｔ２）、機械部位の直方体２ｊの各頂点が直方体１ｉの内部にあるかの判断し干渉チェックを行う（ステップＴ３）。即ち、前述したアルゴリズムの（２）の処理を行う。なおこの処理の詳細は図１３で説明する。そして１つの頂点でも直方体１ｉ内に存在すれば、機械部位１と機械部位２は干渉すると判定し、移動指令を加減速処理部３４ａ〜３４ｅに出力せず、補間動作を停止し、機械動作を停止させ表示器１４にアラーム等を表示する（ステップＴ１１）。
【００４２】
一方、全ての頂点が直方体１ｉ内に存在しなければ、ステップＴ４に進み、直方体２ｊの辺が直方体１ｉと干渉するかの判定処理を実行する（ステップＴ４）。この処理は、前述したアルゴリズムの（３）の処理であり、詳細な処理は図１４、図１５で説明する。この処理で干渉すると判定された場合には、ステップＴ１１に進み、前述したように補間を停止し、機械動作を停止してアラーム表示を行う。  
このステップＴ４の判定処理でも干渉しないと判定された場合にはステップＴ５に進み、直方体１ｉの各頂点が直方体２ｊの中に存在するか判断し干渉チェックを行う。即ち、前述したアルゴリズムの（４）の処理であり、詳細は図１６で説明する。
【００４３】
このステップＴ５の処理によっても干渉しないと判定された場合には、指標ｊを１インクリメントし（ステップＴ６）、該指標ｊの値が、機械部位２を定義する直方体の数ｎを超えたか判断し（ステップＴ７）、越えてなければステップＴ３に戻り前述した処理を繰り返す。干渉すると判定されなければ、ステップＴ３からステップＴ７の処理を繰り返し、機械部位１の形状を特定する直方体の中における１つの直方体１ｉに対して機械部位２の形状を定義する全ての直方体２1〜２nが干渉するか否か判定し、干渉しなければ、ステップＴ７からステップＴ８に進み機械部位１の形状を特定する直方体の１つを指定する指標ｉを１インクリメントし、該指標ｉが機械部位１を定義する直方体の数ｍを超えたか判断し（ステップＴ９）、越えてなければステップＴ２に戻り前述した処理を繰り返す。即ち、機械部位１を定義する次の１つの直方体に対して機械部位２の全ての直方体が干渉しないかの判定を行う。以下、干渉と判定されなければ、機械部位１の形状を定義する直方体の数ｍを越えるまでステップＴ２からステップＴ９の処理を繰り返し、機械部位１の全ての直方体と機械部位２の全ての直方体が干渉しないときには、ステップＴ１０で干渉なしと判定し、移動指令を各軸加減速部に出力し、加工機械の動作を実行させる。  
以上の処理を、干渉が発生する可能性のある機械部位間で行う。図１７から図１９の例では工具２とテーブル１、工具２と治具３の間で行う。
【００４４】
図１３は、上述したステップＴ３の処理における機械部位の直方体２ｊの各頂点が直方体１ｉの内部にあるかによる干渉チェックの詳細な処理である。  
直方体１ｉの各辺が基準座標系（Ｘ，Ｙ，Ｚ軸座標系）の各軸に平行となるように回転変換する変換行列Ｍ１を求め、回転変換して求められた直方体１ｐ'の頂点（Ｖ11'，Ｖ12'，Ｖ13'，Ｖ14'，Ｖ15'，Ｖ16'，Ｖ17'，Ｖ18'）の座標値（ｘ，ｙ，ｚ）を求める（ステップＴ３０）。また直方体２ｑの各頂点に対して変換行列Ｍ１を用いて変換し直方体２ｑ'の各頂点（Ｖ21'，Ｖ22'，Ｖ23'，Ｖ24'，Ｖ25'，Ｖ26'，Ｖ27'，Ｖ28'）の座標値（Ｘ，Ｙ，Ｚ）を求める（ステップＴ３１）。
【００４５】
直方体１ｐ'の頂点の内、ｘ１＜ｘ２、ｙ１＜ｙ２、ｚ１＜ｚ２となる点α（ｘ1，ｙ1，ｚ1）、β（ｘ2，ｙ2，ｚ2）を選択する（ステップＴ３２）。そして、直方体２ｊ'の頂点を指定する指標ｋを「１」にセットして（ステップＴ３３）、該指標ｋで示される直方体２ｊ'の頂点Ｖ2k'の座標値（Ｘ０，Ｙ０，Ｚ０）が前述したの条件１が成立するか判断する（ステップＴ３４，Ｔ３５）。
【００４６】
条件１：ｘ１≦Ｘ０≦ｘ２、かつ、ｙ１≦Ｙ０≦ｙ２、かつ、ｚ１≦Ｚ０≦ｚ２
上記条件１を満たすときには、対応する直方体間で干渉が生じているものとし（ステップＴ３９）、メイン処理に戻ってステップＴ１１の処理をして機械動作を停止させる。上記条件１を満たしていないときは、指標ｋ「１」インクリメントし（ステップＴ３６）、該指標ｋの値が頂点の数８を越えたか判断し（ステップＴ３７）、越えてなければステップＴ３４に戻り前述した処理を繰り返し実行し、８個の全ての頂点が上記条件１を満たしていないときは、直方体２ｊ'は直方体１ｉ'に干渉しているとして（ステップＴ３８）、メイン処理に戻りステップＴ４に進む。  
以上の処理によって、機械部位１の各直方体と機械部位２の各直方体間で実施され、機械部位２の何れかの直方体の頂点が、機械部位１のいずれかの直方体の内部に存在するときには干渉すると判定されることになる。
【００４７】
図１４は図１２に示すメイン処理のステップＴ４の直方体１ｉと直方体２ｊの辺同士の干渉チェックの詳細である。  
まず、直方体２ｊの各辺を定義しその端点（頂点）の座標（Ｘ，Ｙ，Ｚ）を記憶する。例えば、直方体２ｊの頂点Ｖ21'−Ｖ22'間の辺をＳ１、頂点Ｖ21'−Ｖ23'間の辺をＳ２のように各辺をＳ１〜Ｓ１２に定義する。そしてその端点の座標（Ｘ，Ｙ，Ｚ）も記憶しておく（ステップＴ４０）。そして、辺を指定する指標ｋを「１」にセットし（ステップＴ４１）、まずＸ−Ｙ平面において、辺Ｓｋは直方体１ｉに干渉する（仮干渉２）か判定する（ステップＴ４２）。なお、この辺Ｓｋは直方体１ｉの干渉判定処理の詳細は図１５で詳細に説明する。
【００４８】
辺Ｓｋは直方体１ｉに干渉すると判定されなければ、ステップＴ４５に進み、干渉する（仮干渉２）と判定されるとステップＴ４３に進んで、Ｙ−Ｚ平面において、辺Ｓｋは直方体１ｉに干渉するか判定し、干渉なしと判定されればステップＴ４５に進み、干渉あり（仮干渉２）と判定されれば、ステップＴ４４に進む。そして、Ｚ−Ｘ平面において、辺Ｓｋが直方体１ｉに干渉するか判定し、干渉なしと判定されればステップＴ４５に進み、干渉あり（仮干渉２）と判定されれば（Ｘ−Ｙ，Ｙ−Ｚ，Ｚ−Ｘの各平面で全て仮干渉２と判定された場合）、ステップＴ４８に進み、直方体２ｊの少なくとも１つの辺が直方体１ｉに干渉するとしてメイン処理に戻りステップＴ１１で前述したように機械動作を停止させアラームを出すようにする。
【００４９】
また、ステップＴ４２，Ｔ４３，Ｔ４４のいずれかの処理で干渉しないと判定されれば、指標ｋを「１」インクリメントし（ステップＴ４５）、該指標が辺の数１２を越えたか判断し（ステップＴ４６）、越えてなければステップＴ４２に戻り、この指標ｋで示す辺Ｓｋが直方体１ｉと干渉するかのステップＴ４２以下の判断を行う。そして指標ｋが１２を越え、全ての辺Ｓ１〜Ｓ12が直方体１ｉと干渉しないと判定されたときには（ステップＴ４７）、図１２のメイン処理に戻りステップＴ５の処理に移行する。
図１５は、図１４におけるステップＴ４２の処理の、直方体２ｊの辺Ｓｋが直方体１ｉにＸ−Ｙ平面で干渉するかの詳細な処理フローである。
【００５０】
まず辺Ｓｋの両端点の座標を（Ｘ１，Ｙ１，Ｚ１）又は（Ｘ２，Ｙ２，Ｚ２）とする。そして、直方体１ｐ'の基準座標系のＸ−Ｙ平面と平行な面を平面（0,0）とし、この平面（0,0）の各辺を延長してＸ−Ｙ平面を平面（1,1），（1,0），（1,-1），（0,1），（0,-1），（-1,1），（-1,０），（-1,-1）の９つの平面に分割する（ステップＴ４２０）。次に辺Ｓｋのどちらかの端点が平面（0,0）に存在するか判断する。この判断方法はすでに（3-1-1）で述べたので詳細は省略する。端点が平面（0,0）に存在すれば、ステップＴ４２９に移行しＸ−Ｙ平面においては干渉（仮干渉２）すると判定する（ステップＴ４２１）。又、両方の端点が共に平面（0,0）に存在しなければ、ステップＴ４２２に進み、両方の端点が共に同じ平面に存在するか判断する。この判断処理は、（3-1-2）で詳細に説明したので、詳細は省略する。両端点が平面（0,0）以外の同じ平面に存在することが判別されると、ステップＴ４３０に移行し、辺Ｓｋは干渉がないと判定する。
【００５１】
両端点が同一平面にないと判断されたときには、ステップＴ４２３に進み、どちらかの端点が４隅の平面(1,1)、平面(1,-1)、平面(-1,-1)、平面(-1,1)に存在しないか判別する。４隅の平面に存在しないときはステップＴ４２５に進み、存在するときには、ステップＴ４２４に進む。ステップＴ４２４では他方の端点が平面(0,0)を横切って到達する可能性がある平面に存在するか判断する。一方の端点が４隅のいずれかの平面（η，ζ）（＝(1,1)又は(1,-1)又は(-1,-1)又は(-1,1)）に存在するとき、もう１つの端点が存在する平面が平面（η'，ζ'）であるとき、η≠η'かつζ≠ζ'であれば、平面(0,0)を横切る可能性があり、このときは、仮干渉１としてステップＴ４２６に進む。また、ηとη'、ζとζ'の少なくともどちらかが一致すれば、平面(0,0)を横切ることはないので、干渉なしとしてステップ４３０に進む。
【００５２】
一方、ステップＴ４２３で、端点が４隅の平面(1,1)、平面(1,-1)、平面(-1,-1)、平面(-1,1)に存在しないときには、ステップＴ４２５に進み、１つの端点が平面（η，ζ）に存在し、もう１つの端点が平面（η'，ζ'）に存在し、ηとη'、ζとζ'のどちらか一方が変化しないとき仮干渉２と判定し、ステップＴ４２９に進む、、他のときは仮干渉１と判定し、ステップＴ４２６に進む。すなわち、確実に平面(0,0)を必ず横切るときは仮干渉２と判定し、横切る可能性もあり、横切らない場合もあるときは仮干渉１とするものである。
【００５３】
ステップＴ４２４、ステップＴ４２５で仮干渉１と判定されたときには、ステップＴ４２６〜ステップＴ４２８の追加の判断を行う。まず、両端点（Ｘ１，Ｙ１）、（Ｘ２，Ｙ２）を通る直線Ｌを作成し、直方体１ｉ'のＸ−Ｙ座標上における４点の内、１つでもこの直線Ｌ上に存在すれば（ステップＴ４２７）、仮干渉２と判定しステップＴ４２９へ移行する。又、直線Ｌ上にはないが、直線Ｌで分割される面の一方側に直方体１ｉ'のＸ−Ｙ座標の４点が全て一方の側にあれば（ステップＴ４２８）、平面（0,0）は分断されることなく、直線Ｌがは直方体１ｉを通過せず干渉なしとしてステップＴ４３０に移行する。又、直方体１ｉ'の４点が直線Ｌの両側に分かれるときは、直線Ｌにより平面(0,0)を横切るものであり、干渉する可能性があることから仮干渉２としてステップＴ４２９に進む。なお、このステップＴ４２７，Ｔ４２８の判断処理の詳細はすでに（3-1-5）で詳細に述べたのでここでは省略する。
【００５４】
そして、ステップＴ４３０に進んで干渉しないと判定されたときには、図１４に示す処理に戻りステップＴ４５に移行する。又、ステップＴ４２９で仮干渉２と判定されたときには、図１４のステップＴ４３に進み、Ｙ−Ｚ平面において、干渉がないか、仮干渉２があるか、の判定を行う。このＹ−Ｚ平面における判定の詳細は省略しているが、図１５に示したＸ−Ｙ平面における判定と同じように行うもので、直方体２ｊの辺がＹ−Ｚ平面の辺となり、その両端の座標が（Ｙ１，Ｚ１），（Ｙ２，Ｚ２）となり、直方体１ｉのＹ−Ｚ平面と平行な面が平面(0,0)となるものであり、他は図１５の処理と同一である。
【００５５】
又、ステップＴ４４の詳細な処理も図１５の処理と同じような処理であり、この場合は、直方体２ｊの辺がＺ−Ｘ平面の辺となり、その両端の座標が（Ｚ１，Ｘ１），（Ｚ２，Ｘ２）となり、直方体１ｉのＺ−Ｘ平面と平行な面が平面(0,0)となるものであり、他は図１５の処理と同一である。
【００５６】
以上のようにして直方体２ｊと直方体１ｉの辺が干渉するか否か判定し、干渉しないと判定されたときは、図１２のステップＴ４からステップＴ５に移行し、直方体１ｉの少なくとも１つの頂点が直方体２ｊないに存在し干渉するか否かの判定処理を行う。この処理の詳細を図１６に示す。この図１６に示す処理は、図１３に示した直方体２ｊの各頂点が直方体１ｉに干渉するかの処理と同様で、直方体２ｊと直方体１ｉが入れ替わっただけであり、又、詳細なアルゴリズムはすでに述べたので、図１６に示す処理の詳細な説明は省略する。
【００５７】
以上のようにして、本実施形態では工作機械での加工中において、補間後の指令位置に基づいて干渉チェックがなされ、干渉が発生するような場合には、補間を停止し、その移動指令は出力されず、機械の動作は停止して、機械部位の干渉発生を防止するものである。  
なお、加工プログラムを実行するが、機械加工を行わないドライラン運転によって、機械部位の干渉が発生するか否かの確認をとるようにしてもよい。さらには、干渉が発生するプログラム位置を表示器１４に表示するようにしてもよい。
【００５８】
なお、上述した実施形態では、機械部位の形状を定義する手段としての多面体を直方体としてその１以上の組み合わせで定義するようにしたが、他の形状でもよいものであり、例えば工具などは３角錐等の形状で定義してもよいものである。
【図面の簡単な説明】
【００５９】
【図１】干渉が発生するように２つの機械部位の形状を構成する直方体の任意の位置、姿勢の状態を示す図である。
【図２】一方の機械部位の形状を構成する直方体の各辺が基準座標系の各軸に平行になるように２つの直方体を回転したしたときの状態を表す図である。
【図３】一方の直方体の中に他方の直方体の頂点が存在し干渉が発生した状態を説明する説明図である。
【図４】２直方体の辺同士が干渉するときの状態を説明する説明図である。
【図５】一方の直方体のＸ−Ｙ平面と平行な面を中心にＸ−Ｙ平面を９分割したときの説明図である。
【図６】直方体の辺同士の干渉を判定するための説明図である。
【図７】一方の直方体のＹ−Ｚ平面と平行な面を中心にＹ−Ｚ平面を９分割したときの説明図である。
【図８】一方の直方体のＺ−Ｘ平面と平行な面を中心にＺ−Ｘ平面を９分割したときの説明図である。
【図９】他方の機械部位の形状を構成する直方体の各辺が基準座標系の各軸に平行になるように２つの直方体を回転したしたときの状態を表す図である。
【図１０】本発明の一実施形態の数値制御装置の要部ブロック図である。
【図１１】同実施形態における機能ブロック図である。
【図１２】同実施形態における２つの機械部位間の干渉をチェックするメイン処理のフローチャートである。
【図１３】同実施形態におけるメイン処理のステップＴ３における直方体２ｊの頂点が直方体１ｉ内にあり干渉するかの判定処理のフローチャートである。
【図１４】同実施形態におけるメイン処理のステップＴ４２における２つの直方体の辺同士の干渉チェックのフローチャートである。
【図１５】同実施形態における図１４の辺同士の干渉チェックにおけるステップＴ４２のＸ−Ｙ平面での干渉チェックのフローチャートである。
【図１６】同実施形態におけるメイン処理のステップＴ５における直方体１ｉの頂点が直方体２ｊ内にあり干渉するかの判定処理のフローチャートである。
【図１７】２つの回転軸を有するテーブルを備えた５軸加工機の概要説明図である。
【図１８】１つの回転軸を有するテーブルと工具が１つの回転軸回りに傾斜する５軸加工機の概要説明図である。
【図１９】工具が２つの回転軸回りの回転をする５軸加工機の概要説明図である。
【符号の説明】
【００６０】
１  テーブル
１ａ  テーブル形状を多面体で定義した多面体形状
１ｐ、１ｉ  機械部位１の直方体
２  工具
２ａ  工具形状を多面体で定義した多面体形状
２ｑ，２ｊ  機械部位２の直方体
３  治具
３ａ  治具形状を多面体で定義した多面体形状
４  ワーク（被加工物）
【図１】
2005128686.tif 000006
【図２】
2005128686.tif 000007
【図３】
2005128686.tif 000008
【図４】
2005128686.tif 000009
【図５】
2005128686.tif 000010
【図６】
2005128686.tif 000011
【図７】
2005128686.tif 000012
【図８】
2005128686.tif 000013
【図９】
2005128686.tif 000014
【図１０】
2005128686.tif 000015
【図１１】
2005128686.tif 000016
【図１２】
2005128686.tif 000017
【図１３】
2005128686.tif 000018
【図１４】
2005128686.tif 000019
【図１５】
2005128686.tif 000020
【図１６】
2005128686.tif 000021
【図１７】
2005128686.tif 000022
【図１８】
2005128686.tif 000023
【図１９】
2005128686.tif 000024