しかしながら、上述のように、各ビデオカメラから得られる画像をすべて一律に表示させると、これらの画像の中には、工具の先端がワークによって隠れているものもあることから、ワークの加工状況を監視するのにあまり役立たない画像まで表示させることになる。また、表示画面を複数の表示領域に分割して、各ビデオカメラから得られる画像を表示させているので、各表示領域に表示される画像は小さくならざるを得ず、場合によっては、オペレータが細部を確認し難いこともある。更に、各ビデオカメラから得られる画像を工作機械の制御状態とともに表示する場合に、各ビデオカメラから得られる画像の表示領域を広くとると、本来表示させるべき制御状態の表示領域が狭くなり、オペレータは工作機械の制御状態を確認し難くなる。
したがって、複数のビデオカメラを工作機械に設置した場合には、複数のビデオカメラから得られる画像の内、工具の先端がワークによって隠れていない画像、即ち、工具の先端を確認可能な画像を少なくとも1つ表示すれば、表示画像を通して加工状況を監視するのが困難になることもないし、工作機械の制御状態を確認し難くなることもない。
本発明は、以上の実情に鑑みなされたものであって、複数のカメラの中から選択された少なくとも1つのカメラによって生成される、工具の先端がワークにより隠れていない画像を通してオペレータがワークの加工状況を監視することができる加工状況監視装置の提供をその目的とする。
上記目的を達成するための本発明は、
工具及びワークを相対移動させる加工動作機構部と、加工プログラムをそのブロック毎に解析して前記加工動作機構部の動作指令を抽出し、抽出した動作指令を基に前記加工動作機構部の作動を制御する制御手段とを備えた工作機械における加工状況を監視する装置であって、
少なくとも前記工具及びワークを互いに異なる視点から一定時間間隔で撮像してその2次元画像データを順次生成する複数のカメラと、
前記カメラによって生成された2次元画像データを表示する画面表示手段と、
前記複数のカメラについて、その配置位置及び姿勢を示すカメラパラメータをそれぞれ記憶するカメラパラメータ記憶手段と、
前記加工プログラムをそのブロック毎に解析して動作指令を抽出する動作指令抽出部と、前記動作指令抽出部によって抽出された動作指令、並びに前記工具,ワーク及び加工動作機構部の3次元モデルに関するデータを基に、前記加工動作機構部が前記動作指令に従って動作したときの前記工具,ワーク及び加工動作機構部のモデルデータを生成して更新するモデルデータ更新部とを有する加工シミュレーション実行手段と、
前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラを前記加工プログラムのブロック毎に選択するカメラ選択手段と、
前記加工プログラムのブロックと、前記カメラ選択手段によって選択されたカメラとを関連付けて記憶する選択カメラ記憶手段と、
前記制御手段により前記加工プログラムが実行されると、この制御手段から得られる実行ブロックに関するデータと、前記選択カメラ記憶手段に格納されたデータとを基に、前記実行ブロックに対応したカメラを認識し、認識したカメラによって生成される2次元画像データを前記画面表示手段に表示させるカメラ切換手段とを備えてなることを特徴とする加工状況監視装置に係る。
この発明によれば、制御手段によって加工プログラムが実行される前に、即ち、工作機械において実際にワークが加工される前に、以下のようにして、複数のカメラの内、画面表示手段に表示させるべき2次元画像データを生成するカメラが選択,決定される。
まず、動作指令抽出部により、加工プログラムがそのブロック毎に解析されて加工動作機構部の動作指令が抽出されるとともに、抽出された動作指令と、工具,ワーク及び加工動作機構部のモデルデータ(3次元モデルデータ)とを基に、モデルデータ更新部により、加工動作機構部が動作指令に従って動作したときの工具,ワーク及び加工動作機構部のモデルデータが生成されて更新される。
次に、モデルデータ更新部によって更新されたモデルデータと、カメラパラメータ記憶手段に格納されたカメラパラメータとを基に、カメラ選択手段により、複数のカメラの内、少なくともワークによって工具の先端が隠れない2次元画像データ(工具の先端が表示される2次元画像データ)を生成可能なカメラが加工プログラムのブロック毎に選択される。尚、このとき選択されるカメラは2つ以上であっても良い。
そして、加工プログラムのブロック毎にカメラが選択されると、カメラ選択手段により、選択されたカメラと、加工プログラムのブロックとが相互に関連付けられて選択カメラ記憶手段に格納される。このようにして、画面表示手段に表示させるべき2次元画像データを生成するカメラが選択,決定される。
この後、制御手段によって加工プログラムが実行されると、即ち、制御手段により、加工プログラムがそのブロック毎に解析されて加工動作機構部の動作指令が抽出され、抽出された動作指令を基に加工動作機構部が制御されて工具及びワークが相対移動せしめられると、この制御手段から得られる実行ブロックに関するデータと、選択カメラ記憶手段に格納されたデータとを基に、カメラ切換手段により、実行ブロックに対応したカメラが認識され、認識されたカメラによって生成される2次元画像データが画面表示手段に表示される。
斯くして、本発明に係る加工状況監視装置によれば、加工プログラムのブロック毎に選択された少なくとも1つのカメラによって生成される、工具の先端が隠れない2次元画像データを画面表示手段に順次表示させているので、オペレータは、表示画像を通してワークの加工状況を十分に監視することができる。
また、工具の先端が隠れない2次元画像データを表示させているので、加工状況の監視にさほど役立たない画像の表示を省略することができ、更に、一律にすべての画像を表示させていた従来に比べ、表示画像が小さくなることもなく、オペレータは、表示画像を通して加工状況を細部まで確認することができる。また、画面表示手段に工作機械の制御状態をカメラから得られる画像とともに表示させるようにしても、この制御状態の表示領域が必要以上に狭くなることはなく、オペレータは、工作機械の制御状態も十分に確認することができる。また、画面表示手段に表示される画像が自動的に切り換えられるので、オペレータが少なくとも1つの画像を選択して所望の画像に切り換えるといった手間を省くこともできる。
尚、前記加工状況監視装置は、前記複数のカメラ,工具及び少なくともワークの位置関係を認識する位置関係認識手段を備え、前記加工シミュレーション実行手段は、前記動作指令抽出部によって抽出された動作指令を基に前記工具の位置情報を生成する位置情報生成部を更に有し、前記位置関係認識手段は、前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記位置情報生成部によって生成された前記工具の位置情報と、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記位置関係を前記加工プログラムのブロック毎に認識するように構成され、前記カメラ選択手段は、前記位置関係認識手段によって認識された位置関係を基に前記カメラを選択するように構成されていても良い。
このようにすれば、まず、カメラパラメータ記憶手段に格納されたカメラパラメータと、位置情報生成部によって生成された工具位置情報と、モデルデータ更新部によって更新されたモデルデータとを基に、位置関係認識手段により、複数のカメラ,工具及び少なくともワークの位置関係が加工プログラムのブロック毎に認識される。
例えば、複数のカメラについて、前記カメラパラメータから、カメラの撮像面と光軸との交点やカメラのレンズの中心点が認識され、前記工具位置情報から、工具移動前後における工具先端位置が認識され、前記モデルデータから、ワークの配置位置及び形状が認識される。或いは、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動後における工具先端位置と、ワークの配置位置及び形状とが認識される。
次に、位置関係認識手段によって認識された位置関係を基に、カメラ選択手段により、工具の先端が隠れない2次元画像データを生成可能なカメラが判別されてこのカメラが選択される。例えば、まず、複数のカメラについて、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動前後における工具先端位置との3点を結んで形成される3角形状の平面と、ワークの形状との間に交差部があるか否かがそれぞれ確認される。或いは、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動後における工具先端位置との2点を結んだ直線と、ワークの形状との間に交差部があるか否かがそれぞれ確認される。
そして、交差部があると確認されたカメラについては、工具の先端が隠れない2次元画像データを生成可能なカメラではないと判断され、一方、交差部がないと確認されたカメラについては、工具の先端が隠れない2次元画像データを生成可能なカメラであると判断されて、交差部がないと確認されたものの中からカメラが選択される。
このように、3点を結んで形成される3角形状の平面、或いは2点を結んだ直線と、ワークとの間に交差部があるか否かを確認して、どのカメラが、工具の先端が隠れない2次元画像データを生成可能なカメラであるかを判断するようにすれば、比較的簡単な処理で、工具の先端が隠れない2次元画像データを生成可能なカメラを判別することができる。
また、前記加工状況監視装置は、前記位置関係認識手段によって認識された位置関係を基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラをカメラ選択候補として前記加工プログラムのブロック毎に抽出する選択候補抽出手段と、前記加工プログラムのブロックと、前記選択候補抽出手段によって抽出されたカメラ選択候補とを関連付けて記憶する選択候補記憶手段とを備え、前記カメラ選択手段は、前記選択候補記憶手段に格納されたデータを基に、前記加工プログラムの各ブロックについて、前記カメラ選択候補の中から1つのカメラを選択,決定し、決定したカメラと、前記加工プログラムのブロックとを関連付けて前記選択カメラ記憶手段に格納するとともに、前記カメラ選択候補の中から1つのカメラを決定する際には、ブロック毎に前記カメラ選択候補の中から1つのカメラを選択してカメラの組み合わせを複数通り設定し、設定した各組み合わせについてカメラ切換回数を算出した後、最もカメラ切換回数が少ない組み合わせを基に1つのカメラを決定するように構成されていても良い。
このようにすれば、まず、位置関係認識手段によって認識された位置関係を基に、選択候補抽出手段により、工具の先端が隠れない2次元画像データを生成可能なカメラがカメラ選択候補として加工プログラムのブロック毎に抽出される。この抽出処理は、例えば、上述した、位置関係認識手段によって認識された位置関係を基に、カメラ選択手段によってカメラが選択される処理と同様にして行われる。
そして、選択候補抽出手段により、抽出されたカメラ選択候補と、加工プログラムのブロックとが相互に関連付けられて選択候補記憶手段に格納される。この後、選択候補記憶手段に格納されたデータを基に、カメラ選択手段により、加工プログラムの各ブロックについて、カメラ選択候補の中から1つのカメラが選択,決定される。その際には、ブロック毎にカメラ選択候補の中から1つのカメラが選択されてカメラの組み合わせが複数通り設定され、設定された各組み合わせについてカメラ切換回数が算出された後、最もカメラ切換回数が少ない組み合わせを基に1つのカメラが決定される。そして、決定したカメラと、加工プログラムのブロックとが相互に関連付けられて選択カメラ記憶手段に格納される。
このように、最もカメラ切換回数が少ない組み合わせを基に1つのカメラを決定すれば、ワーク加工時におけるカメラ切換回数を少なくすることができる。これにより、工具及びワークを見る方向が頻繁に変わってどの方向から見ているのかが分かり難くなり、却って、加工状況を監視し難くなるのを防止することができる。尚、カメラ切換は、連続するブロック間で、選択されたカメラが異なっているときに行われると判断することができ、また、カメラ切換回数は、前記カメラ切換の回数を積算することで求めることができる。
また、前記カメラ選択手段は、前記加工プログラムの各ブロックについて、前記選択候補抽出手段によって抽出されたカメラ選択候補の中から1つのカメラを選択,決定し、決定したカメラと、前記加工プログラムのブロックとを関連付けて前記選択カメラ記憶手段に格納するとともに、前記カメラ選択候補の中から1つのカメラを決定する際には、決定すべきブロックのカメラ選択候補の中に、このブロックよりも1つ前のブロックについて決定したカメラが含まれているか否かを確認して、含まれていると判断したときには、前記1つ前のブロックと同じカメラに決定するように構成されていても良い。
このようにしても、連続する2つのブロック間で同じカメラを選択してカメラ切換回数を少なくすることができるので、上記と同様の効果を得ることができる。
また、前記加工状況監視装置は、前記選択カメラ記憶手段に格納されたデータを修正する選択カメラ修正手段を備え、前記カメラ選択手段は、前記加工プログラムのブロック毎に前記カメラを1つ選択するように構成され、前記選択カメラ修正手段は、前記選択カメラ記憶手段に格納されたデータを基に、一定数連続したブロックにおけるカメラ切換回数を算出して、算出したカメラ切換回数が予め設定された許容切換回数よりも多いか否かを確認し、多いと判断したときには、前記選択カメラ記憶手段に格納されたデータを修正して、前記一定数連続したブロックの選択カメラを同じカメラに設定するように構成されていても良い。
このようにしても、一定数連続したブロックにおけるカメラ切換回数が予め設定された許容切換回数よりも多いときには、一定数連続したブロックの選択カメラを同じカメラに設定して、カメラ切換回数を少なくすることができるので、上記と同様の効果を得ることができ、また、特に、工具が微小移動を繰り返すような場合に効果的である。尚、前記一定数連続したブロックの選択カメラを同じカメラに設定するに当たっては、例えば、前記一定数連続したブロックの中で1回でも選択されているカメラ、或いは最も選択されているカメラに設定すると良い。
また、前記位置関係認識手段は、少なくとも、前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記位置情報生成部によって生成された前記工具の位置情報と、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記位置関係及び前記工具の移動方向を前記加工プログラムのブロック毎に認識するように構成され、前記カメラ選択手段は、前記位置関係認識手段によって認識された位置関係及び工具の移動方向を基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラであり且つ前記工具の移動方向に応じたカメラを選択するように構成されていても良い。
このようにすれば、カメラ選択手段により、工具の移動方向も考慮してカメラが選択されるので、より適切なカメラを選択することができる。尚、工具の移動方向も考慮した場合の選択カメラとしては、例えば、工具が接近してくる画像を生成可能なカメラや、工具が離れていく画像を生成可能なカメラなどを挙げることができる。
また、本発明は、加工プログラムのブロック毎に、工具の先端が隠れない2次元画像データを生成可能なカメラを選択するのではなく、加工プログラムの実行開始からの、予め設定された経過時間毎に、工具の先端が隠れない2次元画像データを生成可能なカメラを選択するようにしても良い。
この場合、前記加工シミュレーション実行手段は、前記動作指令抽出部によって抽出された動作指令を基に、前記加工プログラムの実行開始からの経過時間を算出する経過時間算出部を備え、前記カメラ選択手段は、前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記経過時間算出部によって算出される経過時間と、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラを予め設定された経過時間毎に選択するように構成され、前記選択カメラ記憶手段は、前記予め設定された経過時間と、前記カメラ選択手段によって選択されたカメラとを関連付けて記憶するように構成され、前記カメラ切換手段は、前記制御手段により前記加工プログラムが実行されると、この制御手段から得られる、前記加工プログラムの実行開始からの経過時間に関するデータと、前記選択カメラ記憶手段に格納されたデータとを基に、前記経過時間に対応したカメラを認識し、認識したカメラによって生成される2次元画像データを前記画面表示手段に表示させるように構成される。
この発明によれば、上記と同様、制御手段によって加工プログラムが実行される前に、以下のようにして、画面表示手段に表示させるべき2次元画像データを生成するカメラが選択,決定される。
まず、動作指令抽出部により、加工プログラムが解析されて加工動作機構部の動作指令が抽出され、抽出された動作指令を基に、経過時間算出部により、加工プログラムの実行開始からの経過時間が算出されるとともに、抽出された動作指令と、工具,ワーク及び加工動作機構部のモデルデータとを基に、モデルデータ更新部により、加工動作機構部が動作指令に従って動作したときの工具,ワーク及び加工動作機構部のモデルデータが生成されて更新される。
次に、経過時間算出部によって算出される経過時間と、モデルデータ更新部によって更新されたモデルデータと、カメラパラメータ記憶手段に格納されたカメラパラメータとを基に、カメラ選択手段により、複数のカメラの内、少なくともワークによって工具の先端が隠れない2次元画像データを生成可能なカメラが予め設定された経過時間毎に選択される。尚、このとき選択されるカメラは2つ以上であっても良い。
そして、予め設定された経過時間毎にカメラが選択されると、カメラ選択手段により、選択されたカメラと、予め設定された経過時間とが相互に関連付けられて選択カメラ記憶手段に格納される。このようにして、画面表示手段に表示させるべき2次元画像データを生成するカメラが選択,決定される。
この後、制御手段によって加工プログラムが実行され、加工動作機構部により工具及びワークが相対移動せしめられると、前記制御手段から得られる、加工プログラムの実行開始からの経過時間に関するデータと、選択カメラ記憶手段に格納されたデータとを基に、カメラ切換手段により、経過時間に対応したカメラが認識され、認識されたカメラによって生成される2次元画像データが画面表示手段に表示される。
斯くして、本発明に係る加工状況監視装置によっても、経過時間毎に選択された少なくとも1つのカメラによって生成される、工具の先端が隠れない2次元画像データを画面表示手段に順次表示させることができるので、上記と同様、オペレータは、表示画像を通してワークの加工状況を十分に監視することができる。
また、工具の先端が隠れない2次元画像データを表示させているので、加工状況の監視にさほど役立たない画像の表示を省略することができ、更に、一律にすべての画像を表示させていた従来に比べ、表示画像が小さくなることもなく、オペレータは、表示画像を通して加工状況を細部まで確認することができる。また、画面表示手段に工作機械の制御状態をカメラから得られる画像とともに表示させるようにしても、この制御状態の表示領域が必要以上に狭くなることはなく、オペレータは、工作機械の制御状態も十分に確認することができる。また、画面表示手段に表示される画像が自動的に切り換えられるので、オペレータが少なくとも1つの画像を選択して所望の画像に切り換えるといった手間を省くこともできる。
尚、前記加工状況監視装置は、前記複数のカメラ,工具及び少なくともワークの位置関係を認識する位置関係認識手段を備え、前記加工シミュレーション実行手段は、前記動作指令抽出部によって抽出された動作指令を基に前記工具の位置情報を生成する位置情報生成部を更に有し、前記位置関係認識手段は、前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記経過時間算出部によって算出される経過時間と、前記位置情報生成部によって生成された前記工具の位置情報と、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記位置関係を前記予め設定された経過時間毎に認識するように構成され、前記カメラ選択手段は、前記位置関係認識手段によって認識された位置関係を基に前記カメラを選択するように構成されていても良い。
このようにすれば、まず、カメラパラメータ記憶手段に格納されたカメラパラメータと、経過時間算出部によって算出される経過時間と、位置情報生成部によって生成された工具位置情報と、モデルデータ更新部によって更新されたモデルデータとを基に、位置関係認識手段により、複数のカメラ,工具及び少なくともワークの位置関係が予め設定された経過時間毎に認識される。
例えば、複数のカメラについて、前記カメラパラメータから、カメラの撮像面と光軸との交点やカメラのレンズの中心点が認識され、前記工具位置情報から、工具移動前後における工具先端位置が認識され、前記モデルデータから、ワークの配置位置及び形状が認識される。或いは、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動後における工具先端位置と、ワークの配置位置及び形状とが認識される。
次に、位置関係認識手段によって認識された位置関係を基に、カメラ選択手段により、工具の先端が隠れない2次元画像データを生成可能なカメラが判別されてこのカメラが選択される。例えば、まず、複数のカメラについて、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動前後における工具先端位置との3点を結んで形成される3角形状の平面と、ワークの形状との間に交差部があるか否かがそれぞれ確認される。或いは、カメラの撮像面と光軸との交点やカメラのレンズの中心点と、工具移動後における工具先端位置との2点を結んだ直線と、ワークの形状との間に交差部があるか否かがそれぞれ確認される。
そして、交差部があると確認されたカメラについては、工具の先端が隠れない2次元画像データを生成可能なカメラではないと判断され、一方、交差部がないと確認されたカメラについては、工具の先端が隠れない2次元画像データを生成可能なカメラであると判断されて、交差部がないと確認されたものの中からカメラが選択される。
このように、上記と同様、3点を結んで形成される3角形状の平面、或いは2点を結んだ直線と、ワークとの間に交差部があるか否かを確認して、どのカメラが、工具の先端が隠れない2次元画像データを生成可能なカメラであるかを判断するようにすれば、比較的簡単な処理で、工具の先端が隠れない2次元画像データを生成可能なカメラを判別することができる。
また、前記加工状況監視装置は、前記位置関係認識手段によって認識された位置関係を基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラをカメラ選択候補として前記予め設定された経過時間毎に抽出する選択候補抽出手段と、前記予め設定された経過時間と、前記選択候補抽出手段によって抽出されたカメラ選択候補とを関連付けて記憶する選択候補記憶手段とを備え、前記カメラ選択手段は、前記選択候補記憶手段に格納されたデータを基に、前記予め設定された各経過時間について、前記カメラ選択候補の中から1つのカメラを選択,決定し、決定したカメラと、前記予め設定された経過時間とを関連付けて前記選択カメラ記憶手段に格納するとともに、前記カメラ選択候補の中から1つのカメラを決定する際には、予め設定された経過時間毎に前記カメラ選択候補の中から1つのカメラを選択してカメラの組み合わせを複数通り設定し、設定した各組み合わせについてカメラ切換回数を算出した後、最もカメラ切換回数が少ない組み合わせを基に1つのカメラを決定するように構成されていても良い。
このようにすれば、まず、位置関係認識手段によって認識された位置関係を基に、選択候補抽出手段により、工具の先端が隠れない2次元画像データを生成可能なカメラがカメラ選択候補として予め設定された経過時間毎に抽出される。この抽出処理は、例えば、上述した、位置関係認識手段によって認識された位置関係を基に、カメラ選択手段によってカメラが選択される処理と同様にして行われる。
そして、選択候補抽出手段により、抽出されたカメラ選択候補と、予め設定された経過時間とが相互に関連付けられて選択候補記憶手段に格納される。この後、選択候補記憶手段に格納されたデータを基に、カメラ選択手段により、予め設定された各経過時間について、カメラ選択候補の中から1つのカメラが選択,決定される。その際には、予め設定された経過時間毎にカメラ選択候補の中から1つのカメラが選択されてカメラの組み合わせが複数通り設定され、設定された各組み合わせについてカメラ切換回数が算出された後、最もカメラ切換回数が少ない組み合わせを基に1つのカメラが決定される。そして、決定したカメラと、予め設定された経過時間とが相互に関連付けられて選択カメラ記憶手段に格納される。
このように、最もカメラ切換回数が少ない組み合わせを基に1つのカメラを決定すれば、ワーク加工時におけるカメラ切換回数を少なくすることができる。これにより、工具及びワークを見る方向が頻繁に変わってどの方向から見ているのかが分かり難くなり、却って、加工状況を監視し難くなるのを防止することができる。尚、カメラ切換は、連続する2つの経過時間で、選択されたカメラが異なっているときに行われると判断することができ、また、カメラ切換回数は、前記カメラ切換の回数を積算することで求めることができる。
また、前記カメラ選択手段は、前記予め設定された各経過時間について、前記選択候補抽出手段によって抽出されたカメラ選択候補の中から1つのカメラを選択,決定し、決定したカメラと、前記予め設定された経過時間とを関連付けて前記選択カメラ記憶手段に格納するとともに、前記カメラ選択候補の中から1つのカメラを決定する際には、決定すべき経過時間のカメラ選択候補の中に、この経過時間よりも1つ前の経過時間について決定したカメラが含まれているか否かを確認して、含まれていると判断したときには、前記1つ前の経過時間と同じカメラに決定するように構成されていても良い。
このようにしても、連続する2つの経過時間で同じカメラを選択してカメラ切換回数を少なくすることができるので、上記と同様の効果を得ることができる。
また、前記加工状況監視装置は、前記選択カメラ記憶手段に格納されたデータを修正する選択カメラ修正手段を備え、前記カメラ選択手段は、前記予め設定された経過時間毎に前記カメラを1つ選択するように構成され、前記選択カメラ修正手段は、前記選択カメラ記憶手段に格納されたデータを基に、一定時間におけるカメラ切換回数を算出して、算出したカメラ切換回数が予め設定された許容切換回数よりも多いか否かを確認し、多いと判断したときには、前記選択カメラ記憶手段に格納されたデータを修正して、前記一定時間における選択カメラを同じカメラに設定するように構成されていても良い。
このようにしても、一定時間におけるカメラ切換回数が予め設定された許容切換回数よりも多いときには、一定時間における選択カメラを同じカメラに設定して、カメラ切換回数を少なくすることができるので、上記と同様の効果を得ることができ、また、特に、工具が微小移動を繰り返すような場合に効果的である。尚、前記一定時間における選択カメラを同じカメラに設定するに当たっては、例えば、前記一定時間の中で1回でも選択されているカメラ、或いは最も選択されているカメラに設定すると良い。
また、前記位置関係認識手段は、少なくとも、前記カメラパラメータ記憶手段に格納されたカメラパラメータと、前記経過時間算出部によって算出される経過時間と、前記位置情報生成部によって生成された前記工具の位置情報と、前記モデルデータ更新部によって更新されたモデルデータとを基に、前記位置関係及び前記工具の移動方向を前記予め設定された経過時間毎に認識するように構成され、前記カメラ選択手段は、前記位置関係認識手段によって認識された位置関係及び工具の移動方向を基に、前記複数のカメラの内、少なくとも前記ワークによって前記工具の先端が隠れない2次元画像データを生成可能なカメラであり且つ前記工具の移動方向に応じたカメラを選択するように構成されていても良い。
このようにすれば、上記と同様、カメラ選択手段により、工具の移動方向も考慮してカメラが選択されるので、より適切なカメラを選択することができる。尚、工具の移動方向も考慮した場合の選択カメラとしては、例えば、工具が接近してくる画像を生成可能なカメラや、工具が離れていく画像を生成可能なカメラなどを挙げることができる。
尚、前記加工動作機構部としては、工作機械がマシニングセンタであるときには、例えば、工具を保持する主軸、ワークが載置されるテーブル、これら主軸及びテーブルを相対移動させる送り機構部などを挙げることができ、工作機械が旋盤であるときには、例えば、工具を保持する刃物台、ワークを保持する主軸、これら刃物台及び主軸を相対移動させる送り機構部などを挙げることができる。
以上のように、本発明に係る加工状況監視装置によれば、オペレータは、複数のカメラの中から選択されたカメラによって生成される、工具の先端がワークにより隠れていない画像を通してワークの加工状況を監視することができるので、ワークの加工状況を正確に把握することができる。また、不要な監視画像の表示を省略して、監視画像や工作機械の制御状態に係る画像が必要以上に小さくなるのを防止することができるので、オペレータの視認性を高めることができる。
以下、本発明の具体的な実施形態について、添付図面に基づき説明する。尚、図1は、本発明の一実施形態に係る加工状況監視装置などの概略構成を示したブロック図であり、図2は、本実施形態の加工状況監視装置が設けられる工作機械の概略構成を示した斜視図である。また、図3は、工作機械に配設された複数のCCDカメラの配置関係を示した平面図である。
図1に示すように、本例の加工状況監視装置1は、複数(本例では4つ)のCCDカメラ11,12,13,14、カメラパラメータ記憶部15、加工シミュレーション実行部16、位置関係認識部21、選択候補抽出部22、選択候補記憶部23、カメラ選択部24、選択カメラ記憶部25、選択カメラ修正部26、カメラ切換部27及び画面表示装置66を備え、例えば、図2に示すような、マシニングセンタと呼ばれる工作機械50に設けられる。
ここで、まず、前記工作機械50について説明する。この工作機械50は、図1及び図2に示すように、ベッド51と、ベッド51に配設され、水平方向且つ前後方向(Y軸方向)に移動自在となった第1サドル52と、第1サドル52に配設され、水平方向且つ左右方向(X軸方向)に移動自在となった第2サドル53と、第2サドル53に支持され、鉛直方向(Z軸方向)に移動自在となった主軸頭54と、軸線がZ軸と平行且つ軸線中心に回転自在に主軸頭54によって支持され、下端部に工具Tが装着される主軸55と、ベッド51に配設され、上面にワークWが載置されるテーブル56と、第1サドル52,第2サドル53及び主軸頭54を各移動方向にそれぞれ移動させるY軸送り機構部57,X軸送り機構部58及びZ軸送り機構部59と、各送り機構部57,58,59の作動を制御する制御装置60と、制御装置60に接続された操作盤65とを備えている。
前記ベッド51は、その左右両側及び奥側に側壁51a,51b,51cが設けられた構造を備えており、左右両側の側壁51a,51bの上部に前記第1サドル52が配設され、奥側の側壁51cに前記テーブル56が配設されている。前記操作盤65には、前記画面表示装置66が設けられており、この画面表示装置66には、制御装置60による制御状態や、前記各CCDカメラ11,12,13,14から得られる画像が表示される。また、操作盤65には、特に図示はしないが、各種信号を入力するための入力装置が設けられている。
前記制御装置60は、予め作成された加工プログラムが格納されるプログラム記憶部61と、プログラム記憶部61に格納された加工プログラムをブロック毎に順次解析して、工具T(各送り機構部57,58,59)の移動位置や送り速度に関する動作指令を抽出するプログラム解析部62と、プログラム解析部62によって抽出された動作指令を記憶する解析結果記憶部63と、解析結果記憶部63に格納された動作指令と、各送り機構部57,58,59から得られるフィードバック信号とを基に各送り機構部57,58,59を制御する駆動制御部64とを備える。
尚、前記第1サドル52,第2サドル53,主軸頭54,主軸55,テーブル56,Y軸送り機構部57,X軸送り機構部58及びZ軸送り機構部59は、特許請求の範囲に言う加工動作機構部として機能する。
次に、前記加工状況監視装置1について説明する。この加工状況監視装置1は、上述のように、CCDカメラ11,12,13,14(第1CCDカメラ11,第2CCDカメラ12,第3CCDカメラ13及び第4CCDカメラ14)、カメラパラメータ記憶部15、加工シミュレーション実行部16、位置関係認識部21、選択候補抽出部22、選択候補記憶部23、カメラ選択部24、選択カメラ記憶部25、選択カメラ修正部26、カメラ切換部27及び画面表示装置66を備えている。
図2及び図3に示すように、各CCDカメラ11,12,13,14は、テーブル56上のワークWを囲むように配置されており、このワークWを四方から撮像可能に構成される。具体的には、前記第1CCDカメラ11及び第2CCDカメラ12は、前記ベッド51の左側壁51aの前側上部及び後側上部にブラケット11a,12aを介してそれぞれ取り付けられ、前記第3CCDカメラ13及び第4CCDカメラ14は、前記ベッド51の右側壁51bの前側上部及び後側上部にブラケット13a,14aを介してそれぞれ取り付けられる。そして、これらのCCDカメラ11,12,13,14は、主軸55に装着された工具T及びテーブル56上のワークWを一定時間間隔で撮像して2次元画像データを順次生成し、生成した2次元画像データを前記カメラ切換部27に出力する。
尚、このとき生成される画像例を図4に示す。図4(a)は、第1CCDカメラ11によって、図4(b)は、第2CCDカメラ12によって、図4(c)は、第3CCDカメラ13によって、図4(d)は、第4CCDカメラ14によって生成された画像データをそれぞれ示している。また、これらの画像には、工具T及びワークWの他、前記ベッド51の一部、主軸頭54の一部、主軸55の一部、テーブル56の一部も含まれている。
前記カメラパラメータ記憶部15には、前記各CCDカメラ11,12,13,14に関する内部パラメータ及び外部パラメータがカメラパラメータとしてそれぞれ格納される。内部パラメータは、各CCDカメラ11,12,13,14に固有のものであり、例えば、主点座標、スケール因子、画像の2軸間の歪みなどが挙げられる。一方、外部パラメータは、工作機械50の座標系における各CCDカメラ11,12,13,14の配置位置及び姿勢を表す。尚、これらのパラメータは、キャリブレーション処理により予め算出される。
前記加工シミュレーション実行部16は、動作指令抽出部17,位置情報生成部18,モデルデータ記憶部19及びモデルデータ更新部20を備える。前記動作指令抽出部17は、前記プログラム記憶部61に格納された加工プログラムを読み出し、読み出した加工プログラムをブロック毎に順次解析して、工具T(各送り機構部57,58,59)の移動位置や送り速度に関する動作指令を抽出する。
前記位置情報生成部18は、前記動作指令抽出部17によって抽出された動作指令と、前記主軸55に装着された工具Tに関する情報(例えば、工具径や工具長さなど)とを基に工具Tの位置情報(工具Tの先端位置に関する情報)をブロック毎に生成する。
前記モデルデータ記憶部19には、予め作成された、工作機械50全体の3次元モデルに関するデータ(モデルデータ)が格納される。この工作機械50全体のモデルデータは、前記ベッド51,第1サドル52,第2サドル53,主軸頭54,主軸55及びテーブル56といった工作機械50の主要な構成要素のモデルデータと、前記主軸55に装着される工具Tのモデルデータと、前記テーブル56上に載置されるワークWのモデルデータとを含み、前記各構成要素,工具T及びワークWの各モデルデータがそれぞれ相互に関連付けられて構成される。
前記モデルデータ更新部20は、前記モデルデータ記憶部19に格納された工作機械50全体のモデルデータと、前記動作指令抽出部17によって抽出された動作指令とを基に、第1サドル52,第2サドル53及び主軸頭54が動作指令に従って移動した状態となるように工作機械50全体のモデルデータをブロック毎に生成し、生成したモデルデータをモデルデータ記憶部19に格納して、このモデルデータ記憶部19内のモデルデータを更新する。尚、第1サドル52,第2サドル53及び主軸頭54を移動させたときに、工具TのモデルデータとワークWのモデルデータとの間で重なり合う部分がある場合には、その重なり合う部分を切削領域として算出し、この切削領域がワークWから削除されるようにワークWのモデルデータを生成して工作機械50全体のモデルデータを更新する。
前記位置関係認識部21は、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記位置情報生成部18によって生成された工具Tの位置情報と、前記モデルデータ更新部20によって更新されたモデルデータとを基に、各CCDカメラ11,12,13,14、工具T及びワークWの位置関係をブロック毎に認識する。
例えば、各CCDカメラ11,12,13,14について、前記カメラパラメータから、CCDカメラ11,12,13,14の撮像面と光軸との交点やCCDカメラ11,12,13,14のレンズの中心点を認識し、前記工具Tの位置情報から、位置関係を認識すべきブロックに係る動作指令の実行前(工具移動前、即ち、当該ブロックよりも1つ前のブロックに係る動作指令の実行後)における工具Tの先端位置と、位置関係を認識すべきブロックに係る動作指令の実行後(工具移動後)における工具Tの先端位置とを認識し、前記モデルデータから、ワークWの配置位置と、位置関係を認識すべきブロックに係る動作指令の実行前若しくは実行後(工具移動前若しくは工具移動後)におけるワークWの形状とを認識する。
前記選択候補抽出部22は、前記位置関係認識部21によって認識された位置関係を基に、各CCDカメラ11,12,13,14の中から、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14をカメラ選択候補としてブロック毎に抽出する。
例えば、図5に示すように、まず、各CCDカメラ11,12,13,14について、CCDカメラ11,12,13,14の撮像面と光軸との交点KやCCDカメラ11,12,13,14のレンズの中心点Kと、工具移動前後における工具Tの先端位置L,M(移動前の先端位置L,移動後の先端位置M)との3点を結んで3角形状の平面Pをそれぞれ形成し、これらの平面PとワークWの形状との間に交差部があるか否かをそれぞれ確認する。そして、交差部があると判断したCCDカメラ11,12,13,14については、工具Tの先端が隠れない2次元画像データを生成可能ではないと認識する一方、交差部がないと判断したCCDカメラ11,12,13,14については、工具Tの先端が隠れない2次元画像データを生成可能であると認識する。この後、交差部がないと判断したCCDカメラ11,12,13,14をカメラ選択候補として認識,抽出する。このとき、交差部がないと判断したCCDカメラ11,12,13,14が存在しない場合には、予め設定されたCCDカメラ11,12,13,14をカメラ選択候補として認識,抽出する。
尚、図5(a)は、第1CCDカメラ11が、工具Tの先端が隠れない2次元画像データを生成可能なものであるか否かを確認するための処理を説明するための説明図であり、図5(b)は、第2CCDカメラ12が、工具Tの先端が隠れない2次元画像データを生成可能なものであるか否かを確認するための処理を説明するための説明図である。この図示例において、第1CCDカメラ11は、前記平面PとワークWとが交差しており、工具Tの先端が隠れない2次元画像データを生成可能なものではなく、一方、第2CCDカメラ12は、前記平面PとワークWとが交差しておらず、工具Tの先端が隠れない2次元画像データを生成可能なものである。
また、選択候補抽出部22は、図6に示すように、加工プログラムのブロックと、前記抽出したカメラ選択候補とを相互に関連付けて前記選択候補記憶部23に格納する。
前記カメラ選択部24は、図7に示すような一連の処理を実行して、前記選択候補記憶部23に格納されたデータを基に、加工プログラムの各ブロックについて、カメラ選択候補の中からそれぞれ1つのCCDカメラ11,12,13,14を選択,決定する。
即ち、カメラ選択部24は、まず、選択候補記憶部23に格納されたデータを読み出して各ブロックのカメラ選択候補を認識し(ステップS1)、ブロック毎にカメラ選択候補の中から1つのCCDカメラ11,12,13,14を選択してCCDカメラ11,12,13,14の組み合わせを複数通り設定する(ステップS2)。例えば、図8(a)に示すように、カメラ選択候補が各ブロック毎に設定されているとすると、図8(b)に示すように、複数通りの組み合わせが設定される。
この後、設定した各組み合わせについて、カメラ切換回数をそれぞれ算出し(ステップS3)、最もカメラ切換回数が少ない組み合わせを認識した後(ステップS4)、認識した組み合わせを基に、各ブロックについて1つのCCDカメラ11,12,13,14を決定する(ステップS5)。尚、カメラ切換は、連続するブロック間で、選択されたCCDカメラ11,12,13,14が異なっているときに行われると判断することができ、また、カメラ切換回数は、前記カメラ切換の回数を積算することで求めることができる。
そして、カメラ選択部24は、図9に示すように、加工プログラムのブロックと、前記選択,決定したCCDカメラ11,12,13,14とを相互に関連付けて前記選択カメラ記憶部25に格納し(ステップS6)、上記一連の処理を終了する。
前記選択カメラ修正部26は、図10に示すような一連の処理を実行して、前記選択カメラ記憶部25に格納されたデータ(選択カメラ情報)を修正する。即ち、選択カメラ修正部26は、まず、選択カメラ記憶部25から前記選択カメラ情報を読み出し(ステップS11)、予め設定された数の連続したブロックにおけるカメラ切換回数を算出して(ステップS12)、算出したカメラ切換回数が予め設定された許容切換回数よりも多いか否かを確認する(ステップS13)。尚、前記カメラ切換回数は、前記カメラ選択部24のステップS3における処理と同様にして算出することができる。
そして、ステップS13で多くないと判断したときには、上記一連の処理を終了し、一方、多いと判断したときには、予め設定された数の連続したブロックの中で最も選択されているCCDカメラ11,12,13,14を認識し(ステップS14)、予め設定された数の連続したブロックの選択カメラを前記認識したCCDカメラ11,12,13,14に修正して同じCCDカメラ11,12,13,14に設定する(ステップS15)。この後、修正後のデータを選択カメラ記憶部25に格納して、この選択カメラ記憶部25内のデータを更新し(ステップS16)、上記一連の処理を終了する。
このようにして前記選択カメラ情報が修正されることで、例えば、図11(a)に示すような選択カメラ情報が図11(b)に示すような選択カメラ情報に修正される。尚、この図示例では、Aが4回、Bが2回、Cが1回選択されており、Aが最も選択されている。したがって、予め設定された数の連続したブロックの選択カメラはAに設定される。
前記カメラ切換部27は、前記駆動制御部64から得られる実行ブロックに関するデータと、前記選択カメラ記憶部25に格納されたデータとを基に、前記実行ブロックに対応したCCDカメラ11,12,13,14を認識し、認識したCCDカメラ11,12,13,14によって生成される2次元画像データを前記画面表示装置66に表示させる。
以上のように構成された本例の加工状況監視装置1によれば、制御装置60によって加工プログラムが実行される前に、即ち、工作機械50において実際にワークWが加工される前に、以下のようにして、複数のCCDカメラ11,12,13,14の内、画面表示装置66に表示させるべき2次元画像データを生成するCCDカメラ11,12,13,14が選択,決定される。
具体的には、図12に示すように、まず、プログラム記憶部61に格納された加工プログラムが動作指令抽出部17により読み出され(ステップS21)、カウンタnが1にセットされた後(ステップS22)、加工プログラムの1ブロック目の動作指令が抽出される(ステップS23)。この後、位置情報生成部18により工具Tの位置情報が生成され(ステップS24)、モデルデータ更新部20によりモデルデータが更新される(ステップS25)。
次に、位置関係認識部21により各CCDカメラ11,12,13,14、工具T及びワークWの位置関係が認識され(ステップS26)、選択候補抽出部22によりカメラ選択候補が抽出されて(ステップS27)、選択候補記憶部23に格納される(ステップS28)。
そして、このような、ステップS23〜ステップS28までの処理が、カウンタnが更新されつつ加工プログラムの全ブロックについて終了するまで実行され(ステップS29,S30)、加工プログラムの全ブロックについて終了すると、即ち、全ブロックについてカメラ選択候補が抽出されると、カメラ選択部24により1つのCCDカメラ11,12,13,14が選択,決定され(ステップS31)、選択カメラ記憶部25に格納される(ステップS32)。尚、選択カメラ記憶部25内のデータは、必要に応じて、選択カメラ修正部26により修正される(ステップS33)。
この後、制御装置60によって加工プログラムが実行されると、即ち、プログラム解析部62により加工プログラムがブロック毎に順次解析されて動作指令が抽出され、抽出された動作指令を基に、駆動制御部64により各送り機構部57,58,59が制御されて工具T及びワークWが相対移動せしめられると、この駆動制御部64から得られる実行ブロックに関するデータと選択カメラ記憶部25内のデータとを基に、カメラ切換部27により、実行ブロックに対応したCCDカメラ11,12,13,14が認識され、認識されたCCDカメラ11,12,13,14に切り換えられる(認識されたCCDカメラ11,12,13,14によって生成される2次元画像データが画面表示装置66に表示される)。
このように、本例の加工状況監視装置1によれば、加工プログラムのブロック毎に選択されたCCDカメラ11,12,13,14によって生成される、工具Tの先端が隠れない2次元画像データを画面表示装置66に順次表示させているので、オペレータは、表示画像を通してワークWの加工状況を十分に監視することができる。
また、工具Tの先端が隠れない2次元画像データを表示させているので、加工状況の監視にさほど役立たない画像の表示を省略することができ、更に、一律にすべての画像を表示させていた従来に比べ、表示画像が小さくなることもなく、オペレータは、表示画像を通して加工状況を細部まで確認することができる。また、画面表示装置66に工作機械50の制御状態とCCDカメラ11,12,13,14から得られる画像とを同時に表示させても、この制御状態の表示領域が必要以上に狭くなることはなく、オペレータは、工作機械50の制御状態も十分に確認することができる。また、画面表示装置66に表示される画像が自動的に切り換えられるので、オペレータが1つの画像を選択して所望の画像に切り換えるといった手間を省くこともできる。
また、カメラ選択候補を抽出する際に、3点を結んで形成される3角形状の平面Pと、ワークWとの間に交差部があるか否かを確認して、どのCCDカメラ11,12,13,14が、工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14であるかを判断しているので、比較的簡単な処理で、工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14を判別することができる。
更に、1つのCCDカメラ11,12,13,14を決定する際に、最もカメラ切換回数が少ない組み合わせを求めて1つのCCDカメラ11,12,13,14を決定しているので、ワークWの加工時におけるカメラ切換回数を少なくすることができる。これにより、工具T及びワークWを見る方向が頻繁に変わってどの方向から見ているのかが分かり難くなり、却って、加工状況を監視し難くなるのを防止することができる。
また、予め設定された数の連続したブロックにおけるカメラ切換回数が予め設定された許容切換回数よりも多いときには、当該予め設定された数の連続したブロックの選択カメラを同じCCDカメラ11,12,13,14に設定しているので、このことによってもカメラ切換回数を少なくすることができ、特に、工具Tが微小移動を繰り返すような場合に効果的である。
以上、本発明の一実施形態について説明したが、本発明の採り得る具体的な態様は、何らこれに限定されるものではない。
前記加工状況監視装置1は、加工プログラムの全ブロックについてカメラ選択候補を抽出した後、1つのCCDカメラ11,12,13,14を選択,決定するように構成されていたが、カメラ選択候補を抽出する度に1つのCCDカメラ11,12,13,14を選択,決定し、これをすべてのブロックについて繰り返すようにしても良い。
この場合、図13に示すように、加工状況監視装置2は構成され、選択候補記憶部23が省略されている点、及びカメラ選択部24に代えてカメラ選択部31が設けられている点で、前記加工状況監視装置1と相違している。これら以外の点については、前記加工状況監視装置1と同じであるため、同一の符号を付してその詳しい説明を省略する。
前記カメラ選択部31は、図14に示すような一連の処理を実行して、前記選択カメラ抽出部22により抽出されたカメラ選択候補を基に、加工プログラムの各ブロックについて、カメラ選択候補の中からそれぞれ1つのCCDカメラ11,12,13,14を選択,決定する。
即ち、カメラ選択部31は、まず、選択カメラ抽出部22によって抽出された、決定すべきブロックのカメラ選択候補を受信してこれを認識し(ステップS41)、このブロックよりも1つ前のブロックについて決定したCCDカメラ11,12,13,14を認識する(ステップS42)。
そして、ステップS41で認識したカメラ選択候補の中に、ステップS42で認識したCCDカメラ11,12,13,14が含まれているか否かを確認し(ステップS43)、含まれていると判断したときには、ステップS42で認識したCCDカメラ11,12,13,14に決定する(ステップS44)。例えば、前記決定すべきブロックのカメラ選択候補がA,B,Cであり、1つ前のブロックについて決定したカメラがAであるとすれば、共通するAに決定される。
一方、ステップS43で含まれていないと判断したときには、ステップS41で認識したカメラ選択候補の中から1つのCCDカメラ11,12,13,14を選択,決定する(ステップS45)。そして、前記決定すべきブロックと、前記選択,決定したCCDカメラ11,12,13,14とを相互に関連付けて前記選択カメラ記憶部25に格納し(ステップS46)、上記一連の処理を終了する。
そして、この加工状況監視装置2によれば、前記加工状況監視装置1と同様、制御装置60によって加工プログラムが実行される前に、以下のようにして、複数のCCDカメラ11,12,13,14の内、画面表示装置66に表示させるべき2次元画像データを生成するCCDカメラ11,12,13,14が選択,決定される。
具体的には、図15に示すように、まず、プログラム記憶部61に格納された加工プログラムが動作指令抽出部17により読み出され(ステップS51)、カウンタnが1にセットされた後(ステップS52)、加工プログラムの1ブロック目の動作指令が抽出される(ステップS53)。この後、位置情報生成部18により工具Tの位置情報が生成され(ステップS54)、モデルデータ更新部20によりモデルデータが更新される(ステップS55)。
次に、位置関係認識部21により各CCDカメラ11,12,13,14、工具T及びワークWの位置関係が認識され(ステップS56)、選択候補抽出部22によりカメラ選択候補が抽出された後(ステップS57)、カメラ選択部31により1つのCCDカメラ11,12,13,14が選択,決定され(ステップS58)、選択カメラ記憶部25に格納される(ステップS59)。
そして、このような、ステップS53〜ステップS59までの処理が、カウンタnが更新されつつ加工プログラムの全ブロックについて終了するまで実行され(ステップS60,S61)、加工プログラムの全ブロックについて終了すると、必要に応じて、選択カメラ記憶部25内のデータが選択カメラ修正部26により修正される(ステップS62)。
この後、プログラム解析部62により加工プログラムがブロック毎に順次解析されて動作指令が抽出され、抽出された動作指令を基に、駆動制御部64により各送り機構部57,58,59が制御されて工具T及びワークWが相対移動せしめられると、この駆動制御部64から得られる実行ブロックに関するデータと選択カメラ記憶部25内のデータとを基に、カメラ切換部27により、実行ブロックに対応したCCDカメラ11,12,13,14が認識され、認識されたCCDカメラ11,12,13,14によって生成される2次元画像データが画面表示装置66に表示される。
斯くして、この加工状況監視装置2によっても、連続する2つのブロック間で同じCCDカメラ11,12,13,14に決定して、ワークWの加工時におけるカメラ切換回数を少なくすることができる他、上記と同様の効果を得ることができる。
また、前記加工状況監視装置1,2では、加工プログラムのブロック毎に、工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14を選択,決定するように構成されていたが、加工プログラムの実行開始からの、予め設定された経過時間毎に、工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14を選択,決定するように構成されていても良い。
この場合、例えば、図16に示すように、加工状況監視装置3は構成され、加工シミュレーション実行部16,位置関係認識部21,選択候補抽出部22,選択候補記憶部23,カメラ選択部24,選択カメラ記憶部25,選択カメラ修正部26及びカメラ切換部27に代えて、加工シミュレーション実行部32,位置関係認識部36,選択候補抽出部37,選択候補記憶部38,カメラ選択部39,選択カメラ記憶部40,選択カメラ修正部41及びカメラ切換部42が設けられている点で、前記加工状況監視装置1と相違している。これら以外の点については、前記加工状況監視装置1と同じであるため、同一の符号を付してその詳しい説明を省略する。
前記加工シミュレーション実行部32は、前記動作指令抽出部17,モデルデータ記憶部19,経過時間算出部33,位置情報生成部34及びモデルデータ更新部35を備える。前記動作指令抽出部17及びモデルデータ記憶部19は、前記加工状況監視装置1と同じである。
前記経過時間算出部33は、前記動作指令抽出部17によって抽出された動作指令を基に、加工プログラムの実行開始からの経過時間を算出する。
前記位置情報生成部34は、前記動作指令抽出部17によって抽出された動作指令と、前記経過時間算出部33によって算出される経過時間と、前記主軸55に装着された工具Tに関する情報(例えば、工具径や工具長さなど)とを基に、予め設定された経過時間毎における工具Tの位置情報(工具Tの先端位置に関する情報)、即ち、例えば、5秒後、10秒後、15秒後といったように5秒間隔で工具Tの位置情報を生成する。
前記モデルデータ更新部35は、前記モデルデータ記憶部19に格納された工作機械50全体のモデルデータと、前記動作指令抽出部17によって抽出された動作指令とを基に、第1サドル52,第2サドル53及び主軸頭54が動作指令に従って移動した状態となるように工作機械50全体のモデルデータをブロック毎に生成し、生成したモデルデータをモデルデータ記憶部19に格納して、このモデルデータ記憶部19内のモデルデータを更新する。また、モデルデータ更新部35は、前記経過時間算出部33によって算出される経過時間を基に、工作機械50全体のモデルデータを予め設定された経過時間毎に前記位置関係認識部36に送信する。尚、第1サドル52,第2サドル53及び主軸頭54を移動させたときに、工具TのモデルデータとワークWのモデルデータとの間で重なり合う部分がある場合には、その重なり合う部分を切削領域として算出し、この切削領域がワークWから削除されるようにワークWのモデルデータを生成して工作機械50全体のモデルデータを更新する。
前記位置関係認識部36は、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記経過時間算出部33によって算出される経過時間と、前記位置情報生成部34によって生成された工具Tの位置情報と、前記モデルデータ更新部35から送信されたモデルデータとを基に、各CCDカメラ11,12,13,14、工具T及びワークWの位置関係を予め設定された経過時間毎に認識する。
例えば、各CCDカメラ11,12,13,14について、前記カメラパラメータから、CCDカメラ11,12,13,14の撮像面と光軸との交点やCCDカメラ11,12,13,14のレンズの中心点を認識し、前記工具Tの位置情報から、位置関係を認識すべき経過時間よりも1つ前の経過時間(工具移動前)における工具Tの先端位置と、位置関係を認識すべき経過時間(工具移動後)における工具Tの先端位置とを認識し、前記モデルデータから、ワークWの配置位置と、位置関係を認識すべき経過時間若しくはこの経過時間よりも1つ前の経過時間におけるワークWの形状とを認識する。
前記選択候補抽出部37は、前記位置関係認識部36によって認識された位置関係を基に、各CCDカメラ11,12,13,14の中から、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14をカメラ選択候補として予め設定された経過時間毎に抽出する。そして、図17に示すように、予め設定された経過時間と、前記抽出したカメラ選択候補とを相互に関連付けて前記選択候補記憶部38に格納する。尚、この抽出処理は、前記選択候補抽出部22と同様にして行うことができる。また、加工プログラムの実行開始直後、即ち、経過時間が0秒のときのカメラ選択候補については、予め設定されたカメラ選択候補が選択候補記憶部38に格納される。
前記カメラ選択部39は、前記カメラ選択部24と同様、図7に示すような一連の処理を実行して、前記選択候補記憶部38に格納されたデータを基に、予め設定された各経過時間について、カメラ選択候補の中からそれぞれ1つのCCDカメラ11,12,13,14を選択,決定する。
即ち、カメラ選択部39は、まず、選択候補記憶部38に格納されたデータを読み出して各経過時間におけるカメラ選択候補を認識し(ステップS1)、経過時間毎にカメラ選択候補の中から1つのCCDカメラ11,12,13,14を選択してCCDカメラ11,12,13,14の組み合わせを複数通り設定する(ステップS2)。例えば、図18(a)に示すように、カメラ選択候補が各経過時間毎に設定されているとすると、図18(b)に示すように、複数通りの組み合わせが設定される。
この後、設定した各組み合わせについて、カメラ切換回数をそれぞれ算出し(ステップS3)、最もカメラ切換回数が少ない組み合わせを認識した後(ステップS4)、認識した組み合わせを基に、各経過時間について1つのCCDカメラ11,12,13,14を決定する(ステップS5)。尚、カメラ切換は、連続する2つの経過時間で、選択されたCCDカメラ11,12,13,14が異なっているときに行われると判断することができ、また、カメラ切換回数は、前記カメラ切換の回数を積算することで求めることができる。
そして、カメラ選択部39は、図19に示すように、予め設定された経過時間と、前記選択,決定したCCDカメラ11,12,13,14とを相互に関連付けて前記選択カメラ記憶部40に格納し(ステップS6)、上記一連の処理を終了する。
前記選択カメラ修正部41は、前記選択カメラ修正部26と同様、図10に示すような一連の処理を実行して、前記選択カメラ記憶部40に格納されたデータ(選択カメラ情報)を修正する。即ち、選択カメラ修正部41は、まず、選択カメラ記憶部40から前記選択カメラ情報を読み出し(ステップS11)、一定時間におけるカメラ切換回数を算出して(ステップS12)、算出したカメラ切換回数が予め設定された許容切換回数よりも多いか否かを確認する(ステップS13)。尚、前記カメラ切換回数は、前記カメラ選択部39のステップS3における処理と同様にして算出することができる。
そして、ステップS13で多くないと判断したときには、上記一連の処理を終了し、一方、多いと判断したときには、前記一定時間の中に含まれる各経過時間で最も選択されているCCDカメラ11,12,13,14を認識し(ステップS14)、前記一定時間の中に含まれる各経過時間の選択カメラを前記認識したCCDカメラ11,12,13,14に修正して同じCCDカメラ11,12,13,14に設定する(ステップS15)。この後、修正後のデータを選択カメラ記憶部40に格納して、この選択カメラ記憶部40内のデータを更新し(ステップS16)、上記一連の処理を終了する。
このようにして前記選択カメラ情報が修正されることで、例えば、図20(a)に示すような選択カメラ情報が図20(b)に示すような選択カメラ情報に修正される。尚、この図示例では、Aが4回、Bが2回、Cが1回選択されており、Aが最も選択されている。したがって、前記一定時間の中に含まれる各経過時間の選択カメラはAに設定される。
前記カメラ切換部42は、前記駆動制御部64から得られる、加工プログラムの実行開始からの経過時間に関するデータと、前記選択カメラ記憶部40に格納されたデータとを基に、前記経過時間に対応したCCDカメラ11,12,13,14を認識し、認識したCCDカメラ11,12,13,14によって生成される2次元画像データを前記画面表示装置66に表示させる。
以上のように構成された本例の加工状況監視装置3によれば、制御装置60によって加工プログラムが実行される前に、以下のようにして、複数のCCDカメラ11,12,13,14の内、画面表示装置66に表示させるべき2次元画像データを生成するCCDカメラ11,12,13,14が選択,決定される。
具体的には、図21及び図22に示すように、まず、プログラム記憶部61に格納された加工プログラムが動作指令抽出部17により読み出された後(ステップS71)、加工プログラムから動作指令がブロック毎に順次抽出され(ステップS72)、経過時間算出部33により加工プログラムの実行開始からの経過時間が算出される(ステップS73)。また、選択候補抽出部37により加工プログラムの実行開始直後におけるカメラ選択候補が選択候補記憶部38に格納される(ステップS74)。
次に、カウンタTが5にセットされた後(ステップS75)、位置情報生成部34により加工プログラムの実行開始から5秒後における工具Tの位置情報が生成され(ステップS76)、モデルデータ更新部35によりモデルデータが更新される(ステップS77)。ついで、位置関係認識部36により各CCDカメラ11,12,13,14、工具T及びワークWの位置関係が認識され(ステップS78)、選択候補抽出部37によりカメラ選択候補が抽出されて(ステップS79)、選択候補記憶部38に格納される(ステップS80)。
そして、このような、ステップS76〜ステップS80までの処理が、カウンタTが更新されつつ加工プログラムが終了するまで実行され(ステップS81,S82)、加工プログラムが終了すると、カメラ選択部39により1つのCCDカメラ11,12,13,14が選択,決定され(ステップS83)、選択カメラ記憶部40に格納される(ステップS84)。尚、選択カメラ記憶部40内のデータは、必要に応じて、選択カメラ修正部41により修正される(ステップS85)。
この後、プログラム解析部62により加工プログラムがブロック毎に順次解析されて動作指令が抽出され、抽出された動作指令を基に、駆動制御部64により各送り機構部57,58,59が制御されて工具T及びワークWが相対移動せしめられると、この駆動制御部64から得られる、加工プログラムの実行開始からの経過時間に関するデータと選択カメラ記憶部40内のデータとを基に、カメラ切換部42により、経過時間に対応したCCDカメラ11,12,13,14が認識され、認識されたCCDカメラ11,12,13,14によって生成される2次元画像データが画面表示装置66に表示される。
このように、この加工状況監視装置3によれば、経過時間毎に選択されたCCDカメラ11,12,13,14によって生成される、工具Tの先端が隠れない2次元画像データを画面表示装置66に順次表示させているので、上記と同様、オペレータは、表示画像を通してワークWの加工状況を十分に監視することができる。また、一定時間におけるカメラ切換回数が予め設定された許容切換回数よりも多いときには、一定時間における選択カメラを同じCCDカメラ11,12,13,14に設定しているので、ワークWの加工時におけるカメラ切換回数を少なくすることができ、特に、工具Tが微小移動を繰り返すような場合に効果的である。この他、前記加工状況監視装置1と同様の効果を得ることができる。
前記加工状況監視装置3は、予め設定されたすべての経過時間についてカメラ選択候補を抽出した後、1つのCCDカメラ11,12,13,14を選択,決定するように構成されていたが、カメラ選択候補を抽出する度に1つのCCDカメラ11,12,13,14を選択,決定し、これをすべての経過時間について繰り返すようにしても良い。
この場合、図23に示すように、加工状況監視装置4は構成され、選択候補記憶部38が省略されている点、及びカメラ選択部39に代えてカメラ選択部43が設けられている点で、前記加工状況監視装置3と相違している。これら以外の点については、前記加工状況監視装置3と同じであるため、同一の符号を付してその詳しい説明を省略する。
前記カメラ選択部43は、前記カメラ選択部39と同様、図14に示すような一連の処理を実行して、前記選択カメラ抽出部37により抽出されたカメラ選択候補を基に、予め設定された各経過時間について、カメラ選択候補の中からそれぞれ1つのCCDカメラ11,12,13,14を選択,決定する。
即ち、カメラ選択部43は、まず、選択カメラ抽出部37によって抽出された、決定すべき経過時間のカメラ選択候補を受信してこれを認識し(ステップS41)、この経過時間よりも1つ前の経過時間について決定したCCDカメラ11,12,13,14を認識する(ステップS42)。
そして、ステップS41で認識したカメラ選択候補の中に、ステップS42で認識したCCDカメラ11,12,13,14が含まれているか否かを確認し(ステップS43)、含まれていると判断したときには、ステップS42で認識したCCDカメラ11,12,13,14に決定する(ステップS44)。例えば、前記決定すべき経過時間のカメラ選択候補がA,B,Cであり、1つ前の経過時間について決定したカメラがAであるとすれば、共通するAに決定される。
一方、ステップS43で含まれていないと判断したときには、ステップS41で認識したカメラ選択候補の中から1つのCCDカメラ11,12,13,14を選択,決定する(ステップS45)。そして、前記決定すべき経過時間と、前記選択,決定したCCDカメラ11,12,13,14とを相互に関連付けて前記選択カメラ記憶部40に格納し(ステップS46)、上記一連の処理を終了する。
そして、この加工状況監視装置4によれば、前記加工状況監視装置3と同様、制御装置60によって加工プログラムが実行される前に、以下のようにして、複数のCCDカメラ11,12,13,14の内、画面表示装置66に表示させるべき2次元画像データを生成するCCDカメラ11,12,13,14が選択,決定される。
具体的には、図24及び図25に示すように、まず、プログラム記憶部61に格納された加工プログラムが動作指令抽出部17により読み出された後(ステップS91)、加工プログラムから動作指令がブロック毎に順次抽出され(ステップS92)、経過時間算出部33により加工プログラムの実行開始からの経過時間が算出される(ステップS93)。また、選択候補抽出部37により加工プログラムの実行開始直後におけるカメラ選択候補が選択候補記憶部38に格納される(ステップS94)。
次に、カウンタTが5にセットされた後(ステップS95)、位置情報生成部34により加工プログラムの実行開始から5秒後における工具Tの位置情報が生成され(ステップS96)、モデルデータ更新部35によりモデルデータが更新される(ステップS97)。ついで、位置関係認識部36により各CCDカメラ11,12,13,14、工具T及びワークWの位置関係が認識され(ステップS98)、選択候補抽出部37によりカメラ選択候補が抽出された後(ステップS99)、カメラ選択部43により1つのCCDカメラ11,12,13,14が選択,決定され(ステップS100)、選択カメラ記憶部40に格納される(ステップS101)。
そして、このような、ステップS96〜ステップS101までの処理が、カウンタTが更新されつつ加工プログラムが終了するまで実行され(ステップS102,S103)、加工プログラムが終了すると、必要に応じて、選択カメラ記憶部40内のデータが選択カメラ修正部41により修正される(ステップS104)。
この後、プログラム解析部62により加工プログラムがブロック毎に順次解析されて動作指令が抽出され、抽出された動作指令を基に、駆動制御部64により各送り機構部57,58,59が制御されて工具T及びワークWが相対移動せしめられると、この駆動制御部64から得られる、加工プログラムの実行開始からの経過時間に関するデータと選択カメラ記憶部40内のデータとを基に、カメラ切換部42により、経過時間に対応したCCDカメラ11,12,13,14が認識され、認識されたCCDカメラ11,12,13,14によって生成される2次元画像データが画面表示装置66に表示される。
斯くして、この加工状況監視装置4によっても、連続する2つの経過時間で同じCCDカメラ11,12,13,14に決定して、ワークWの加工時におけるカメラ切換回数を少なくすることができる他、上記と同様の効果を得ることができる。
また、前記加工状況監視装置1,2,3,4では、前記位置関係認識部21,36が各CCDカメラ11,12,13,14、工具T及びワークWの位置関係を認識するように構成されていたが、この位置関係に加え、工具Tの移動方向も認識するように構成されていても良い。
即ち、前記位置関係認識部21は、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記位置情報生成部18によって生成された工具Tの位置情報と、前記モデルデータ更新部20によって更新されたモデルデータとを基に、或いは、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記位置情報生成部18によって生成された工具Tの位置情報と、前記モデルデータ更新部20によって更新されたモデルデータと、前記動作指令抽出部17によって抽出された動作指令とを基に、各CCDカメラ11,12,13,14、工具T及びワークWの位置関係、並びに工具Tの移動方向をブロック毎に認識する。
尚、工具Tの移動方向については、例えば、位置関係を認識すべきブロックに係る動作指令の実行前(工具移動前、即ち、当該ブロックよりも1つ前のブロックに係る動作指令の実行後)における工具Tの先端位置と、位置関係を認識すべきブロックに係る動作指令の実行後(工具移動後)における工具Tの先端位置とを基に認識する。或いは、動作指令抽出部17によって抽出された動作指令から認識する。
一方、前記位置関係認識部36は、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記経過時間算出部33によって算出される経過時間と、前記位置情報生成部34によって生成された工具Tの位置情報と、前記モデルデータ更新部35から送信されたモデルデータとを基に、或いは、前記カメラパラメータ記憶部15に格納されたカメラパラメータと、前記経過時間算出部33によって算出される経過時間と、前記位置情報生成部34によって生成された工具Tの位置情報と、前記モデルデータ更新部35から送信されたモデルデータと、前記動作指令抽出部17によって抽出された動作指令とを基に、各CCDカメラ11,12,13,14、工具T及びワークWの位置関係、並びに工具Tの移動方向を予め設定された経過時間毎に認識する。
尚、工具Tの移動方向については、上記と同様、位置関係を認識すべき経過時間よりも1つ前の経過時間(工具移動前)における工具Tの先端位置と、位置関係を認識すべき経過時間(工具移動後)における工具Tの先端位置とを基に認識したり、動作指令抽出部17によって抽出された動作指令から認識する。
また、前記選択候補抽出部22,37は、前記位置関係認識部21,36によって認識された位置関係と工具Tの移動方向とを基に、各CCDカメラ11,12,13,14の中から、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14であり且つ工具Tの移動方向に応じたCCDカメラ11,12,13,14をカメラ選択候補としてブロック毎若しくは予め設定された経過時間毎に抽出する。
具体的には、選択候補抽出部22,37は、まず、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14をカメラ選択候補として抽出した後、工具Tの移動方向とカメラパラメータとを基に、前記抽出したカメラ選択候補の中から、工具Tが接近してくる画像を生成可能なCCDカメラ11,12,13,14や、工具Tが離れていく画像を生成可能なCCDカメラ11,12,13,14を更に抽出する。例えば、工具Tが図4のように移動する場合に、工具Tが接近してくる画像を生成可能なCCDカメラ11,12,13,14を抽出するときには、第2CCDカメラ12がカメラ選択候補として抽出され、一方、工具Tが離れていく画像を生成可能なCCDカメラ11,12,13,14を抽出するときには、第4CCDカメラ14がカメラ選択候補として抽出される。
このように、工具Tの移動方向も考慮してカメラ選択候補を抽出すれば、より適切なCCDカメラ11,12,13,14によって生成される2次元画像データを画面表示装置66に表示させることができる。
また、上例では、前記選択候補抽出部22,37が工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14をカメラ選択候補として抽出する際に、各CCDカメラ11,12,13,14の撮像面と光軸との交点KやCCDカメラ11,12,13,14のレンズの中心点Kと、工具移動前後における工具Tの先端位置L,Mとの3点を結んで3角形状の平面Pをそれぞれ形成し、これらの平面PとワークWの形状との間に交差部があるか否かをそれぞれ確認するようにしたが、これに限られるものではなく、各CCDカメラ11,12,13,14の撮像面と光軸との交点KやCCDカメラ11,12,13,14のレンズの中心点Kと、工具移動後における工具Tの先端位置Mとの2点を結んだ直線と、ワークWの形状との間に交差部があるか否かをそれぞれ確認するようにしても良い。
更に、前記選択候補抽出部22,37によって、工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14が存在しないと判断された場合や、クーラントが吐出されているような場合には、画面表示装置66には、シミュレーション画像を表示させるようにしても良い。尚、クーラント吐出量が少量で工具Tの先端を視認可能なときには、シミュレーション画像とせずに、CCDカメラ11,12,13,14から得られる2次元画像データを表示させても良い。
また、前記選択候補抽出部22,37は、カメラ選択候補を抽出する際に、まず、ワークWが工具Tによって加工される領域や、ワークWに対して工具Tが存在する空間を認識した後、認識した領域や空間に近い位置に配置されたCCDカメラ11,12,13,14を認識し、この認識したCCDカメラ11,12,13,14についてのみ、そのCCDカメラ11,12,13,14が、工具Tの先端が隠れない2次元画像データを生成可能であるか否かを判断するようにしても良い。このようにすれば、処理の簡略化を図ることができる。
また、前記選択候補抽出部22,37を省略して、前記カメラ選択部24,31,39,43が、各CCDカメラ11,12,13,14の中から、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14や、ワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14であり且つ工具Tの移動方向に応じたCCDカメラ11,12,13,14を選択,決定するように構成されていても良い。
更に、ワークWをテーブル56に取り付けるに当たっては、通常、取付具が使用されるため、前記選択候補抽出部22,37が、この取付具及びワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14をカメラ選択候補として抽出したり、前記カメラ選択部24,31,39,43が、この取付具及びワークWによって工具Tの先端が隠れない2次元画像データを生成可能なCCDカメラ11,12,13,14を選択,決定するように構成されていても良い。
また、前記カメラ切換部27,42は、CCDカメラ11,12,13,14によって生成された2次元画像データを前記画面表示装置66に表示させるに当たり、すべてのCCDカメラ11,12,13,14によって生成された2次元画像データを画面表示装置66に表示させるとともに、前記選択カメラ記憶部25,40内のデータから認識されるCCDカメラ11,12,13,14によって生成された2次元画像データについては、画面表示装置66の表示画面に大きく表示させ(メイン表示)、それ以外のCCDカメラ11,12,13,14によって生成された2次元画像データについては、画面表示装置66の表示画面の隅部に小さく表示させたり、前記メイン表示の背景画像として表示させるように構成されていても良い。
また、前記位置情報生成部18,34とモデルデータ更新部20,35は、一体的に設けられ、モデルデータを更新することによって工具Tの位置情報を生成するように構成されていても良い。また、モデルデータ更新部20,35は、動作指令ではなく、位置情報生成部18,34によって生成された工具Tの位置情報を基にモデルデータを更新するように構成されていても良い。更に、前記加工状況監視装置1が設けられる工作機械50は、何ら限定されるものではなく、どのような工作機械50であっても良い。例えば、上例のようなマシニングセンタではなく、旋盤などに設けるようにしても良い。