(58)【調査した分野】(Int.Cl.,DB名)
前記工作機械内における前記部位の位置は、前記第2駆動部による前記部位の駆動プログラムを解析することによって認識される、請求項2〜4のいずれか1項に記載の工作機械。
前記部位は、前記ワークの加工用の工具のサイズを計測するためのセンサと、前記ワークに関する物理量を計測するためのセンサと、前記工作機械内に設けられているカメラと、前記工作機械に設けられている主軸の表面と、ドライ加工によって加工されるワークとの少なくとも1つを含む、請求項1〜5のいずれか1項に記載の工作機械。
【発明を実施するための形態】
【0018】
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【0019】
<A.工作機械100の外観>
図1を参照して、実施の形態に従う工作機械100について説明する。
図1は、工作機械100の外観を示す図である。
【0020】
本明細書でいう「工作機械」とは、ワークを加工する機能を備えた種々の装置を包含する概念である。本明細書では、工作機械100の一例として、横形のマシニングセンタを例に挙げて説明を行うが、工作機械100は、これに限定されない。たとえば、工作機械100は、縦形のマシニングセンタであってもよい。あるいは、工作機械100は、旋盤であってもよいし、付加加工機であってもよいし、その他の切削機械や研削機械であってもよい。
【0021】
図1に示されるように、工作機械100は、カバー130と、操作盤140とを含む。
カバー130は、スプラッシュガードとも呼ばれ、工作機械100の外観をなすとともに、ワークWの加工エリアAR(
図2参照)を区画形成している。
【0022】
操作盤140は、汎用のコンピュータであり、加工に関する各種情報を表示するためのディスプレイ142を有する。ディスプレイ142は、たとえば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、またはその他の表示機器である。また、ディスプレイ142は、タッチパネルで構成されており、工作機械100に対する各種操作をタッチ操作で受け付ける。
【0023】
<B.工作機械100の内部構成>
次に、
図2および
図3を参照して、工作機械100の内部構成について説明する。
図2は、工作機械100内の様子を表わす図である。
図3は、
図2とは異なる方向から工作機械100内の様子を表わす図である。
【0024】
図2および
図3に示されるように、工作機械100は、その内部に、カメラ120A,120Bと、クーラントの吐出機構125A,125B(第1、第2吐出部)と、切り屑の回収機構127と、主軸頭131と、工具134と、テーブル136とを含む。主軸頭131は、主軸132と、ハウジング133とを含む。
【0025】
説明の便宜のために、以下では、主軸132の軸方向を「Z軸方向」とも称する。重力方向を「Y軸方向」とも称する。Y軸方向およびZ軸方向の両方に直交する方向を「X軸方向」と称する。
【0026】
また、以下では、カメラ120A,120Bを特に区別しない場合には、カメラ120A,120Bのいずれか1つをカメラ120ともいう。また、吐出機構125A,125Bを特に区別しない場合には、吐出機構125A,125Bのいずれか1つを吐出機構125ともいう。
【0027】
カメラ120は、その視野に、ワークの加工エリアARを含むように配置される。カメラ120は、たとえば、カバー130の一側面や天井面などに設けられる。カメラ120は、CCD(Charge Coupled Device)カメラであってもよいし、赤外線カメラ(サーモグラフィ)であってもよいし、その他の種類のカメラであってもよい。
【0028】
吐出機構125は、工作機械100内に設けられている。吐出機構125は、たとえば、カバー130の一側面や天井面などに設けられる。吐出機構125は、クーラントの貯蔵タンク、配管、クーラントのポンプ、および、クーラントノズル(吐出口)などで構成される。配管の一端はポンプに繋がれ、配管の他端はクーラントノズルに繋がれる。ポンプは、クーラントを貯蔵タンクから吸い上げ、当該クーラントをクーラントノズルに送る。これにより、クーラントが加工エリアARに吐出される。クーラントの吐出により、ワークWの加工により生じた切り屑が回収機構127に回収される。回収機構127は、コンベアや回収部などで構成され、ワークWの切り屑をコンベアによって回収部に搬出する。
【0029】
主軸132は、ハウジング133の内部に設けられる。主軸132には、被加工物であるワークWを加工するための工具が装着される。
図2および
図3の例では、ワークWのミーリング加工に用いられる工具134が主軸132に装着されている。
【0030】
なお、上述では、2つのカメラ120A,120Bが工作機械100内に設けられている例について説明を行ったが、カメラの数は、必ずしも2つである必要はなく、1つでもよいし、3つ以上でもよい。
【0031】
また、上述では、2つの吐出機構125A,125Bが工作機械100内に設けられている例について説明を行ったが、吐出機構の数は、必ずしも2つである必要はなく、1つでもよいし、3つ以上でもよい。
【0032】
<C.吐出禁止部位>
次に、本明細書で用いる用語「吐出禁止部位」の定義について説明する。本明細書では、クーラントの付着により故障する可能性がある部位を「吐出禁止部位」と称する。吐出禁止部位は、工作機械100内の一部品であってもよいし、当該一部品の一部分であってもよい。
【0033】
一例として、吐出禁止部位は、ワークWの加工で用いられる工具のサイズを計測するためのセンサ(以下、「工具用センサ」ともいう。)である。当該サイズは、工具の径、工具の長さ、および、工具の摩耗量などを含む概念である。工具用センサは、たとえば、工作機械100内に設けられ、ワークの加工前や加工後において工具のサイズを計測する。工具用センサは、たとえば、光学式の距離センサ、超音波式の距離センサ、工具のサイズを計る接触式の測定装置などである。
【0034】
他の例として、吐出禁止部位は、ワークに関する物理量を計測するためのセンサ(以下、「ワーク用センサ」ともいう。)である。当該物理量は、ワークの高さ、ワークの横幅、ワークの縦幅、ワーク面の荒さ、ワークの温度などを含む概念である。ワーク用センサは、たとえば、工作機械100内に設けられ、加工前のワーク、加工中のワーク、加工後のワークの物理量を計測する。ワーク用センサは、たとえば、光学式の距離センサ、超音波式の距離センサ、ワークのサイズを計る接触式の測定装置、サーモグラフィなどの温度センサである。
【0035】
他の例として、吐出禁止部位は、工作機械100内に設けられているカメラである。工作機械100内には、上述のカメラ120A,120Bだけでなく、種々のカメラが設けられる。一例として、当該カメラは、ワークWの加工を監視するためのカメラや、工具の状態を監視するためのカメラや、ワークWの切り屑を検知するためのカメラやなどを含む。
【0036】
他の例として、吐出禁止部位は、上述の主軸132の軸方向(すなわち、Z軸方向)に延びる主軸132の表面を含む。主軸132とハウジング133との間にクーラントが入り込むと、主軸頭131が故障する可能性がある。このことを防ぐために、主軸132およびハウジング133の接続部分にはラビリンス構造が採用される。主軸132とハウジング133との間にクーラントが侵入することをより確実に防ぐためには、当該ラビリンス構造に当たる主軸132の表面部分にクーラントを付着させないことが好ましい。そのため、当該ラビリンス構造に当たる主軸132の表面部分は、吐出禁止部位の一例となる。
【0037】
他の例として、吐出禁止部位は、ドライ加工によって加工されるワークを含む。ドライ加工とは、クーラントをワークに付着させずに行う加工方法の一種である。このようなドライ加工で用いられるワークは、クーラントを付着させないことが好ましい。そのため、ドライ加工で用いられるワークは、吐出禁止部位の一例となる。加工方法がドライ加工であるか否かは、たとえば、加工プログラムに規定される命令コードなどに基づいて判断される。
【0038】
以下の説明では、吐出禁止部位として、主軸132の表面を例に挙げて説明を行うが、吐出禁止部位は、主軸132の表面に限定されず、上述の他の例であってもよい。
【0039】
<D.工作機械100の駆動機構>
次に、
図4を参照して、工作機械100における各種の駆動機構について説明する。
図4は、工作機械100における駆動機構の構成例を示す図である。
【0040】
図4に示されるように、工作機械100は、制御装置50と、モータドライバ111A,111Bと、サーボドライバ111R,111X〜111Zと、ステッピングモータ112A1,112A2,112B1,112B2と、サーボモータ112R,112X〜112Zと、移動体113と、吐出機構125A,125Bと、主軸頭131と、工具134と、テーブル136とを含む。
【0041】
本明細書でいう「制御装置50」とは、工作機械100を制御する装置を意味する。制御装置50の装置構成は、任意である。制御装置50は、単体の制御ユニットで構成されてもよいし、複数の制御ユニットで構成されてもよい。
図4の例では、制御装置50は、PLC(Programmable Logic Controller)としてのCPUユニット20と、CNCユニット30とで構成されている。CPUユニット20およびCNCユニット30は、通信経路B(たとえば、フィールドバスやLANケーブルなど)を介して互いに通信を行う。
【0042】
CPUユニット20は、予め設計されているPLCプログラムに従って、制御装置50を構成する各種ユニットを制御する。当該PLCプログラムは、たとえば、ラダープログラムで記述されている。CPUユニット20は、当該PLCプログラムに従ってモータドライバ111Aを制御し、吐出機構125Aによるクーラントの吐出や吐出機構125Aの回転駆動を制御する。また、CPUユニット20は、当該PLCプログラムに従ってモータドライバ111Bを制御し、吐出機構125Bによるクーラントの吐出や吐出機構125Bの回転駆動を制御する。
【0043】
CNCユニット30は、CPUユニット20からの加工開始指令を受けたことに基づいて、予め設計されている加工プログラムの実行を開始する。当該加工プログラムは、たとえば、NC(Numerical Control)プログラムで記述されている。CNCユニット30は、当該加工プログラムに従ってサーボドライバ111R,111X〜111Zを制御し、テーブル136に固定されているワークWを加工する。
【0044】
図4の例では、モータドライバ111Aは、2軸一体型のドライバとして示されている。モータドライバ111Aは、ステッピングモータ112A1の目標回転速度の入力と、ステッピングモータ112A2の目標回転速度の入力とのそれぞれをCPUユニット20から受け、ステッピングモータ112A1,112A2のそれぞれを制御する。
【0045】
ステッピングモータ112A1は、モータドライバ111Aからの出力電流に従って吐出機構125Aによるクーラントの吐出口を回転駆動し、X軸方向を回転軸とした回転方向(すなわち、A軸方向)にクーラントの吐出方向を変える。
【0046】
ステッピングモータ112A2は、モータドライバ111Aからの出力電流に従って吐出機構125Aによるクーラントの吐出口を回転駆動し、Z軸方向を回転軸とした回転方向(すなわち、C軸方向)にクーラントの吐出方向を変える。
【0047】
このように、モータドライバ111Aは、ステッピングモータ112A1によるA軸方向の回転駆動と、ステッピングモータ112A2によるC軸方向の回転駆動とを個別に制御することで、加工エリアARに向けて任意の方向にクーラントを吐出する。
【0048】
モータドライバ111Bは、2軸一体型のドライバである。モータドライバ111Bは、ステッピングモータ112B1の目標回転速度の入力と、ステッピングモータ112B2の目標回転速度の入力とのそれぞれをCNCユニット30から受け、ステッピングモータ112B1,112B2のそれぞれを制御する。モータドライバ111Bによるステッピングモータ112B1,112B2の制御方法は、モータドライバ111Aと同様であるので、その説明については繰り返さない。
【0049】
サーボドライバ111Rは、CNCユニット30から目標回転速度の入力を逐次的に受け、サーボモータ112Rを制御する。サーボモータ112Rは、Z軸方向を中心として主軸132を回転駆動する。
【0050】
より具体的には、サーボドライバ111Rは、サーボモータ112Rの回転角度を検知するためのエンコーダ(図示しない)のフィードバック信号からサーボモータ112Rの実回転速度を算出し、当該実回転速度が目標回転速度よりも小さい場合にはサーボモータ112Rの回転速度を上げ、当該実回転速度が目標回転速度よりも大きい場合にはサーボモータ112Rの回転速度を下げる。このように、サーボドライバ111Rは、サーボモータ112Rの回転速度のフィードバックを逐次的に受けながらサーボモータ112Rの回転速度を目標回転速度に近付ける。
【0051】
サーボドライバ111Xは、CNCユニット30から目標位置の入力を逐次的に受け、サーボモータ112Xを制御する。サーボモータ112Xは、主軸頭131が取り付けられている移動体113をボールネジ(図示しない)を介して送り駆動し、X方向の任意の位置に主軸132を移動する。サーボドライバ111Xによるサーボモータ112Xの制御方法は、サーボドライバ111Rと同様であるので、その説明については繰り返さない。
【0052】
サーボドライバ111Yは、CNCユニット30から目標位置の入力を逐次的に受け、サーボモータ112Yを制御する。サーボモータ112Yは、主軸頭131が取り付けられている移動体113をボールネジ(図示しない)を介して送り駆動し、Y方向の任意の位置に主軸132を移動する。サーボドライバ111Yによるサーボモータ112Yの制御方法は、サーボドライバ111Rと同様であるので、その説明については繰り返さない。
【0053】
サーボドライバ111Zは、CNCユニット30から目標位置の入力を逐次的に受け、サーボモータ112Zを制御する。サーボモータ112Zは、主軸頭131が取り付けられている移動体113をボールネジ(図示しない)を介して送り駆動し、Z方向の任意の位置に主軸132を移動する。サーボドライバ111Zによるサーボモータ112Zの制御方法は、サーボドライバ111Rと同様であるので、その説明については繰り返さない。
【0054】
なお、上述では、吐出禁止部位(上述の例では、主軸132)と吐出機構125との間の相対位置を変える駆動機構(以下、「第1駆動部」ともいう。)として、吐出禁止部位を駆動するサーボモータ112X〜112Zを例に挙げたが、第1駆動部による駆動対象は、吐出禁止部位に限定されない。一例として、当該第1駆動部は、吐出禁止部位ではなく吐出機構125を送り駆動ことで上記相対位置を変えてもよいし、吐出禁止部位と吐出機構125との両方を送り駆動することで上記相対位置を変えてもよい。吐出機構125が送り駆動される場合には、吐出機構125を回転駆動するためのステッピングモータ112A1,112A2,112B1,112B2(以下、「第2駆動部」ともいう。)に加えて、または、当該第2駆動部の代わりに、吐出機構125を送り駆動するためのサーボモータ(図示しない)が上記第1駆動部として工作機械100に設けられる。この場合、吐出機構125は、たとえば、工作機械100の天井に設けられるレール(図示しない)に沿って駆動される。
【0055】
また、上述では、上記第1駆動部が3つのサーボモータ112X〜112Zで構成されている例について説明を行ったが、当該第1駆動部は、吐出禁止部位または吐出機構125を送り駆動するための1つ以上の駆動機構(たとえば、サーボモータ)で構成されればよい。
【0056】
また、上述では、上記第2駆動部が2つのステッピングモータ112A1,112A2(または、112B1,112B2)で構成されている例について説明を行ったが、当該第2駆動部は、1つ以上の駆動機構(たとえば、ステッピングモータまたはサーボモータ)で構成されればよい。
【0057】
<E.工作機械100の機能構成>
次に、
図5〜
図10を参照して、工作機械100の機能構成について説明する。
図5は、工作機械100の機能構成の一例を示す図である。
【0058】
工作機械100は、主要なハードウェア構成として、制御装置50と、記憶装置160とを含む。制御装置50は、機能構成として、位置認識部152と、切り屑認識部154と、クーラント制御部156とを含む。これらの機能構成は、上述のCPUユニット20(
図4参照)に実装されてもよいし、上述のCNCユニット30(
図4参照)に実装されてもよい。
【0059】
以下では、位置認識部152、切り屑認識部154、およびクーラント制御部156のの機能構成について順に説明する。
【0060】
(E1.位置認識部152)
まず、
図6を参照して、位置認識部152の機能について説明する。
【0061】
位置認識部152は、吐出機構125と、吐出禁止部位との内の移動対象について、工作機械100内における位置を認識する。以下では、位置認識部152が吐出禁止部位の位置を認識する例について説明を行うが、吐出機構125が駆動可能に構成される場合には、位置認識部152は、吐出機構125の位置を認識する。以下で説明する吐出禁止部位の位置の認識方法は、吐出機構125の位置の認識にも応用され得る。
【0062】
(a)吐出禁止部位の位置の認識方法1
吐出禁止部位の位置は、たとえば、上述のカメラ120から得られた画像に基づいて認識される。この場合、カメラ120は、その視野に吐出禁止部位を含むように配置される。
【0063】
図6は、カメラ120から得られた画像60を示す図である。位置認識部152は、所定の画像処理を実行することで、画像60から吐出禁止部位の位置を認識する。
【0064】
一例として、吐出禁止部位の位置は、学習済みモデルを用いて認識される。学習済みモデルは、学習用データセットを用いた学習処理により予め生成されている。学習用データセットは、吐出禁止部位が写っている複数の学習用画像を含む。各学習用画像には、吐出禁止部位が写っているか否かを示すラベル(あるいは、吐出禁止部位の種別を示すラベル)が関連付けられる。学習済みモデルの内部パラメータは、このような学習用データセットを用いた学習処理により予め最適化されている。
【0065】
学習済みモデルを生成するための学習手法には、種々の機械学習アルゴリズムが採用され得る。一例として、当該機械学習アルゴリズムとして、ディープラーニング、コンボリューションニューラルネットワーク(CNN)、全層畳み込みニューラルネットワーク(FCN)、サポートベクターマシンなどが採用される。
【0066】
位置認識部152は、画像60を複数の領域に区分し、各区分の部分画像を学習済モデルに入力する。その結果、当該学習済モデルは、入力された部分画像に吐出禁止部位が含まれている確率を出力する。位置認識部152は、当該確率が所定値を超えた部分画像の位置を吐出禁止部位の位置P1として認識する。吐出禁止部位170の位置P1は、たとえば、吐出禁止部位170を表わす領域内の代表点(たとえば、吐出禁止部位170の中心点)で規定される。認識された位置P1は、クーラント制御部156に出力される。
【0067】
なお、吐出禁止部位の位置の認識方法は、学習済モデルを用いた上述の方法に限定されず、ルールベースに基づく画像処理が採用されてもよい。一例として、位置認識部152は、吐出禁止部位を表わす基準画像を予め保持しておき、当該規準画像を画像60内で走査することで、画像60内の各領域について基準画像との類似度を算出する。そして、位置認識部152は、当該類似度が所定値を超えた領域を吐出禁止部位の位置P1として認識する。
【0068】
また、本実施形態において、位置認識部152は、単一のアルゴリズムを用いて吐出禁止部位の位置P1を認識しているが、この構成に限定されるものではなく、複数のアルゴリズムによって吐出禁止部位の位置P1が認識されてもよい。
【0069】
(b)吐出禁止部位の位置の認識方法2
他の例として、吐出禁止部位の位置は、吐出禁止部位への駆動命令を規定している加工プログラム322に基づいて認識される。加工プログラム322は、たとえば、上述のサーボドライバ111X〜111Z(
図4参照)の駆動命令などを規定している。
【0070】
典型的には、加工プログラム322は、吐出禁止部位の移動先を指定するための命令コードを含む。位置認識部152は、加工プログラム322において現在実行されている命令コードを認識し、当該命令コードに含まれている吐出禁止部位の移動先を、吐出禁止部位の位置P1として認識する。認識された吐出禁止部位の位置P1は、クーラント制御部156に出力される。
【0071】
(E2.切り屑認識部154)
次に、
図7を参照して、切り屑認識部154の機能について説明する。
【0072】
切り屑認識部154は、工作機械100内にある切り屑の位置を認識する。切り屑の位置は、任意の方法で認識され得る。一例として、切り屑の位置は、上述のカメラ120から得られた画像に基づいて認識される。
【0073】
一例として、切り屑の位置は、学習済みモデルを用いて認識される。学習済みモデルは、学習用データセットを用いた学習処理により予め生成されている。学習用データセットは、切り屑が写っている複数の学習用画像を含む。各学習用画像には、切り屑が写っているか否かを示すラベル(あるいは、切り屑の種別を示すラベル)が関連付けられる。学習済みモデルの内部パラメータは、このような学習用データセットを用いた学習処理により予め最適化されている。
【0074】
学習済みモデルを生成するための学習手法には、種々の機械学習アルゴリズムが採用され得る。一例として、当該機械学習アルゴリズムとして、ディープラーニング、コンボリューションニューラルネットワーク(CNN)、全層畳み込みニューラルネットワーク(FCN)、サポートベクターマシンなどが採用される。
【0075】
当該学習済モデルは、カメラ120から得られた画像の入力を受けて、画像内に写る切り屑の位置P2を出力する。
図7は、
図6に示される画像60から認識された切り屑の領域を示す図である。
【0076】
より具体的には、切り屑認識部154は、画像60を複数の領域に区分し、各区分の部分画像を学習済モデルに入力する。その結果、当該学習済モデルは、入力された部分画像に切り屑が含まれている確率を出力する。切り屑認識部154は、当該確率が所定値を超えた部分画像の位置を切り屑の位置P2として認識する。認識された位置P2は、クーラント制御部156に出力される。
【0077】
なお、切り屑の位置の認識方法は、学習済モデルを用いた上述の方法に限定されず、ルールベースに基づく画像処理が採用されてもよい。一例として、切り屑が多い部分画像ほど、当該部分画像に含まれる周波数成分が多くなる傾向がある。そこで、切り屑認識部154は、高速フーリエ変換(FFT:Fast Fourier Transform)などの周波数解析を実行し、各部分画像についてスペクトル画像を取得する。当該スペクトル画像の各画素値は、各周波数の波形との相関値を表わす。切り屑認識部154は、所定の高周波数帯域における当該画素値が所定値を超える部分画像の領域を切り屑の位置P2として認識する。
【0078】
また、本実施形態において、切り屑認識部154は、単一のアルゴリズムを用いて切り屑の位置P2を認識しているが、この構成に限定されるものではなく、複数のアルゴリズムによって切り屑の位置P2が認識されてもよい。
【0079】
(E3.クーラント制御部156)
次に、クーラント制御部156の機能について説明する。
【0080】
クーラント制御部156は、位置認識部152によって認識された吐出禁止部位の位置P1(
図6参照)に基づいて、吐出禁止部位にクーラントが吐出されないように、吐出機構125によるクーラントの吐出を制御する。これにより、クーラントが吐出禁止部位に付着することを防ぐことができる。
【0081】
より具体的な処理として、クーラント制御部156は、カメラ120を基準とする座標系(以下、「第1座標系」ともいう。)から、上述の加工エリアAR(
図2,
図3参照)内における座標系(以下、「第2座標系」ともいう。)に変換するための予め定められた座標変換行列に基づいて、第1座標系で示される位置P1を第2座標系に変換する。次に、クーラント制御部156は、予め定められた設置位置情報324から吐出機構125の位置を取得する。吐出機構125の位置は、たとえば、第2座標系で示される。クーラント制御部156は、第2座標系で示される吐出禁止部位の位置P1と、第2座標系で示される吐出機構125の位置とに基づいて、吐出機構125によるクーラントの吐出除外角度を算出する。その後、クーラント制御部156は、当該算出した吐出除外角度を除くように、吐出機構125によるクーラントの吐出方向を制御する。クーラントの吐出方向は、上述のステッピングモータ112A1,112A2,112B1,112B2を制御することで変えられる。
【0082】
好ましくは、クーラント制御部156は、切り屑認識部154によって認識された切り屑の位置P2(
図7参照)の各々に基づいて、吐出機構125によるクーラントの洗浄経路Rを作成する。典型的には、クーラント制御部156は、切り屑の位置P2の各々を通過するように洗浄経路Rを作成する。
図8は、吐出機構125による洗浄経路Rを示す図である。
【0083】
その後、クーラント制御部156は、作成した洗浄経路Rに従って吐出機構125によるクーラントの吐出方向を制御する。このとき、クーラント制御部156は、吐出禁止部位の位置P1を避けるように洗浄経路Rを作成する。あるいは、クーラント制御部156は、吐出機構125におけるクーラントの吐出口が吐出禁止部位の位置P1の方向に向いたときにクーラントの吐出をオフにしてもよい。
【0084】
図9を参照して、クーラント制御部156の機能についてさらに説明する。
図9は、吐出機構125Aと、吐出禁止部位170と、ワークの切り屑Gとの位置関係を説明するための図である。
【0085】
図9に示されるように、吐出禁止部位170が吐出機構125Aと切り屑Gとの間に位置することがある。この場合、吐出機構125Aが切り屑Gに向けてクーラントを吐出すると、吐出禁止部位170にクーラントが付着してしまう。そのため、工作機械100の制御装置50は、吐出機構125Aと切り屑Gとの間に吐出禁止部位170が位置している場合には、吐出機構125Aと切り屑Gとの間に吐出禁止部位170が位置しないように吐出禁止部位170を移動し、当該移動後に吐出機構125Aによるクーラントの吐出を開始する。
図9の例では、クーラント制御部156は、吐出禁止部位170をX方向に移動した後に、クーラントCを切り屑Gに向けて吐出している。
【0086】
より具体的な処理として、クーラント制御部156は、吐出禁止部位170の位置P1を上述の位置認識部152から取得する。さらに、クーラント制御部156は、切り屑Gの位置P2を切り屑認識部154から取得する。さらに、クーラント制御部156は、吐出機構125Aの位置(以下、「位置P3」ともいう。)を示す情報を取得する。
【0087】
その後、クーラント制御部156は、吐出禁止部位170の位置P1と、切り屑Gの位置P2と、吐出機構125Aの位置P3とに基づいて、吐出禁止部位170が切り屑Gと吐出機構125Aとの間に位置しているか否かを判断する。一例として、クーラント制御部156は、吐出機構125Aの位置P3から吐出禁止部位170の位置P1に向かう第1方向と、吐出機構125Aの位置P3から切り屑Gの位置P2に向かう第2方向とを算出する。その後、クーラント制御部156は、当該第1方向と当該第2方向との間の角度を算出し、当該算出した角度が所定角度以下(たとえば、10度以下)である場合に、吐出禁止部位170が切り屑Gと吐出機構125Aとの間に位置していると判断する。この場合、クーラント制御部156は、吐出禁止部位170を駆動した後にクーラントCの吐出を開始する。これにより、クーラント制御部156は、吐出禁止部位170へのクーラントCの吐出を防ぎながら切り屑Gを除去することができる。
【0088】
図10を参照して、クーラント制御部156の機能についてさらに説明する。
図10は、吐出機構125A,125Bと、吐出禁止部位170と、ワークの切り屑Gとの位置関係を説明するための図である。
【0089】
図10に示されるように、複数の吐出機構125(たとえば、吐出機構125A,125B)が工作機械100内に設けられている場合、クーラント制御部156は、吐出禁止部位170にクーラントが吐出されないように、吐出機構125A(第1吐出部)によるクーラントの吐出と、吐出機構125B(第2吐出部)によるクーラントの吐出とを選択的に制御する。
【0090】
より具体的には、クーラント制御部156は、吐出機構125Aの位置P3Aから吐出禁止部位170の位置P1に向かう方向と、吐出機構125Aの位置P3Aから切り屑Gの位置P2に向かう方向との間の角度を算出する。当該角度が所定角度以下(たとえば、10度以下)である場合に、クーラント制御部156は、吐出機構125Aによるクーラントの吐出を禁止する。
【0091】
同様に、クーラント制御部156は、吐出機構125Bの位置P3Bから吐出禁止部位170の位置P1に向かう方向と、吐出機構125Bの位置P3Bから切り屑Gの位置P2に向かう方向との間の角度を算出する。当該角度が所定角度(たとえば、10度)よりも大きい場合に、クーラント制御部156は、切り屑Gの位置P2に向くように吐出機構125Bの吐出口の角度を制御し、吐出機構125Bによるクーラントの吐出を実行する。吐出機構125Bの吐出口の角度は、上述のステッピングモータ112B1,112B2を駆動制御することにより調整される。
【0092】
以上のように、クーラント制御部156は、吐出禁止部位170にクーラントが吐出されないように、吐出機構125A,125Bのそれぞれについて、クーラントの吐出のオンオフとクーラントの吐出方向との少なくとも一方を制御する。これにより、クーラント制御部156は、吐出禁止部位170を駆動せずに切り屑Gを除去することができる。
【0093】
<F.制御装置50のハードウェア構成>
次に、
図11を参照して、
図4に示される制御装置50のハードウェア構成について説明する。
図11は、制御装置50のハードウェア構成の一例を示す図である。
【0094】
図11に示されるように、制御装置50は、CPUユニット20と、CNCユニット30とを含む。CPUユニット20およびCNCユニット30は、たとえば、通信経路Bを介して接続されている。
【0095】
以下では、CPUユニット20のハードウェア構成と、CNCユニット30のハードウェア構成とについて順に説明する。
【0096】
(F1.CPUユニット20のハードウェア構成)
CPUユニット20は、プロセッサ201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、通信インターフェイス204,205と、補助記憶装置220とを含む。これらのコンポーネントは、内部バス209に接続される。
【0097】
プロセッサ201は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのGPU(Graphics Processing Unit)、少なくとも1つのASIC(Application Specific Integrated Circuit)、少なくとも1つのFPGA(Field Programmable Gate Array)、またはそれらの組み合わせなどによって構成され得る。
【0098】
プロセッサ201は、制御プログラム222などの各種プログラムを実行することでCPUユニット20の動作を制御する。制御プログラム222は、工作機械100内の各種装置を制御するための命令を規定している。プロセッサ201は、制御プログラム222の実行命令を受け付けたことに基づいて、補助記憶装置220またはROM202からRAM203に制御プログラム222を読み出す。RAM203は、ワーキングメモリとして機能し、制御プログラム222の実行に必要な各種データを一時的に格納する。
【0099】
通信インターフェイス204は、LAN(Local Area Network)ケーブル、WLAN(Wireless LAN)、またはBluetooth(登録商標)などを用いた通信を実現するのインターフェイスである。一例として、CPUユニット20は、通信インターフェイス305を介してモータドライバ111A,111Bなどの外部機器との通信を実現する。
【0100】
通信インターフェイス205は、フィールドバスに接続される各種ユニットとの通信を実現するためのインターフェイスである。当該フィールドバスに接続されるユニットの一例として、CNCユニット30やI/Oユニット(図示しない)などが挙げられる。
【0101】
補助記憶装置220は、上述の記憶装置160(
図5参照)の一例である。補助記憶装置220は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置220は、制御プログラム222などを格納する。制御プログラム222の格納場所は、補助記憶装置220に限定されず、プロセッサ201の記憶領域(たとえば、キャッシュメモリ)、ROM202、RAM203、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0102】
制御プログラム222は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う各種の処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う制御プログラム222の趣旨を逸脱するものではない。さらに、制御プログラム222によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが制御プログラム222の処理の一部を実行する所謂クラウドサービスのような形態でCPUユニット20が構成されてもよい。
【0103】
(F2.CPUユニット20のハードウェア構成)
引き続き
図11を参照して、CNCユニット30のハードウェア構成について説明する。
【0104】
CNCユニット30は、プロセッサ301と、ROM302と、RAM303と、通信インターフェイス305と、通信インターフェイス305と、補助記憶装置320とを含む。これらのコンポーネントは、内部バス309に接続される。
【0105】
プロセッサ301は、たとえば、少なくとも1つの集積回路によって構成される。集積回路は、たとえば、少なくとも1つのCPU、少なくとも1つのASIC、少なくとも1つのFPGA、またはそれらの組み合わせなどによって構成され得る。
【0106】
プロセッサ301は、加工プログラム322などの各種プログラムを実行することでCNCユニット30の動作を制御する。加工プログラム322は、ワーク加工を実現するためのプログラムである。プロセッサ301は、加工プログラム322の実行命令を受け付けたことに基づいて、ROM302からRAM303に加工プログラム322を読み出す。RAM303は、ワーキングメモリとして機能し、加工プログラム322の実行に必要な各種データを一時的に格納する。
【0107】
通信インターフェイス305は、LAN、WLAN、またはBluetoothなどを用いた通信を実現するのインターフェイスである。一例として、CNCユニット30は、通信インターフェイス305を介してCPUユニット20との通信を実現する。また、CNCユニット30は、通信インターフェイス305または他の通信インターフェイスを介して、ワーク加工のための各種駆動ユニット(たとえば、サーボドライバ111R,111X〜111Zなど)との通信を実現する。
【0108】
補助記憶装置320は、たとえば、ハードディスクやフラッシュメモリなどの記憶媒体である。補助記憶装置320は、加工プログラム322や各種の設置位置情報324などを格納する。
【0109】
加工プログラム322は、たとえば、NCプログラムで記述される。加工プログラム322は、たとえば、X〜Z方向における主軸132の移動先を指定するための命令コードや、上述の吐出機構125によるクーラントの吐出方向を指定するための命令コードや、上述の吐出機構125によるクーラントの吐出のオンオフを指定するための命令コードなどを含む。
【0110】
設置位置情報324は、工作機械100内における各種機器の位置情報などを含む。一例として、設置位置情報324は、上述の吐出機構125の位置情報や、上述のカメラ120の位置情報(図示しない)などを含む。
【0111】
加工プログラム322や設置位置情報324の格納場所は、補助記憶装置320に限定されず、プロセッサ301の記憶領域(たとえば、キャッシュメモリ)、ROM302、RAM303、外部機器(たとえば、サーバー)などに格納されていてもよい。
【0112】
加工プログラム322は、単体のプログラムとしてではなく、任意のプログラムの一部に組み込まれて提供されてもよい。この場合、本実施の形態に従う各種の処理は、任意のプログラムと協働して実現される。このような一部のモジュールを含まないプログラムであっても、本実施の形態に従う加工プログラム322の趣旨を逸脱するものではない。さらに、加工プログラム322によって提供される機能の一部または全部は、専用のハードウェアによって実現されてもよい。さらに、少なくとも1つのサーバーが加工プログラム322の処理の一部を実行する所謂クラウドサービスのような形態でCNCユニット30が構成されてもよい。
【0113】
<G.制御装置50の制御構造>
図12を参照して、クーラント制御に関するフローチャートについて説明する。
図12は、クーラント制御の一例を示すフローチャートである。
図12に示される処理は、たとえば、工作機械100の制御装置50によって実行される。
【0114】
ステップS110において、制御装置50は、上述の位置認識部152(
図5参照)として機能し、工作機械100内における吐出禁止部位の位置P1を認識する。なお、位置認識部152の機能については上述の通りであるので、その説明については繰り返さない。ステップS110の時点では、認識された吐出禁止部位の位置P1は、カメラ120を基準とする座標系(すなわち、第1座標系)で表わされる。
【0115】
ステップS112において、制御装置50は、上述の切り屑認識部154(
図5参照)として機能し、工作機械100内におけるワークの切り屑Gの位置P2を認識する。切り屑認識部154の機能については上述の通りであるので、その説明については繰り返さない。ステップS112の時点では、認識された切り屑の位置P2は、カメラ120を基準とする座標系(すなわち、第1座標系)で表わされる。
【0116】
ステップS114において、制御装置50は、工作機械100内における吐出機構125の位置P3を取得する。典型的には、吐出機構125の位置P3は、上述の設置位置情報324(
図11参照)に規定されている。吐出機構125の位置P3は、たとえば、加工エリアAR(
図2,
図3参照)内における座標系(すなわち、第2座標系)で示される。
【0117】
ステップS116において、制御装置50は、上述のクーラント制御部156(
図5参照)として機能し、クーラントが吐出禁止部位に付着しないように吐出機構125を制御する。より具体的には、制御装置50は、第1座標系から第2座標系に変換するための予め定められた座標変換行列に基づいて、ステップS112で認識した吐出禁止部位の位置P1と、ステップS114で認識した切り屑の位置P2とを、第1座標系から第2座標系に変換する。次に、制御装置50は、クーラント制御部156は、第2座標系で示される吐出禁止部位の位置P1と、第2座標系で示される切り屑の位置P2と、第2座標系で示される吐出機構125の位置P3とに基づいて、クーラントが吐出禁止部位に付着しないように吐出機構125を制御する。
【0118】
<H.まとめ>
以上のようにして、本実施の形態に従う工作機械100は、吐出禁止部位の位置を認識し、当該吐出禁止部位にクーラントが吐出されないように、吐出機構125によるクーラントの吐出を制御する。これにより、工作機械100は、位置が都度変わるような吐出禁止部位にクーラントが付着することを防ぐことができる。
【0119】
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【解決手段】ワークを加工することが可能な工作機械は、ワークの切り屑を除去するためのクーラントを吐出する第1吐出部と、工作機械内にある、クーラントを吐出すべきでない部位と、第1吐出部と部位との少なくとも一方を移動することで、第1吐出部と部位との間の相対位置を変えるための第1駆動部と、工作機械を制御するための制御部とを備える。制御部は、第1吐出部と部位との内の第1駆動部による移動対象について、工作機械内における位置を認識する処理と、認識する処理で認識された位置に基づいて、部位にクーラントが吐出されないように、第1吐出部によるクーラントの吐出を制御する処理とを実行する。