(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】画像解析装置、制御装置、機械システム、画像解析方法、及び画像解析のためのコンピュータプログラム
(51)【国際特許分類】
G05B 19/4063 20060101AFI20231205BHJP
【FI】
G05B19/4063 L
(21)【出願番号】P 2021572726
(86)(22)【出願日】2021-01-18
(86)【国際出願番号】 JP2021001505
(87)【国際公開番号】W WO2021149646
(87)【国際公開日】2021-07-29
【審査請求日】2022-08-19
(31)【優先権主張番号】P 2020008390
(32)【優先日】2020-01-22
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【氏名又は名称】廣瀬 繁樹
(72)【発明者】
【氏名】相澤 智之
(72)【発明者】
【氏名】手塚 淳一
(72)【発明者】
【氏名】猪飼 聡史
【審査官】野口 絢子
(56)【参考文献】
【文献】特開2018-181216(JP,A)
【文献】国際公開第2018/225159(WO,A1)
【文献】特開2013-196309(JP,A)
【文献】特開2010-92405(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18-19/416
G05B 19/42-19/46
(57)【特許請求の範囲】
【請求項10】
画像解析のために、コンピュータを、
産業機械によって加工されたワークの形状と、予め用意された前記ワークの目的形状との誤差の、該ワークにおける発生箇所の第1分布を示す第1の画像データを生成する第1の画像生成部と、
前記ワークを加工するために前記産業機械へ送信された指令と、該指令に対応する、前記産業機械からのフィードバックとの誤差の、前記ワークにおける発生箇所の第2分布を示す第2の画像データを生成する第2の画像生成部と、
前記第1の画像データ及び前記第2の画像データに基づいて、前記第1分布と前記第2分布との相関性を求める相関性取得部、
として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像解析装置、制御装置、機械システム、画像解析方法、及び画像解析のためのコンピュータプログラムに関する。
【背景技術】
【0002】
産業機械の工具の移動軌跡の画像を生成し、位置偏差が生じた軌跡上の位置を画像に表示する装置が知られている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
産業機械によって加工されたワークの形状と該ワークの目的形状との間では、様々な要因により、誤差が生じ得る。従来、このような誤差の発生要因を特定し易くする技術が求められている。
【課題を解決するための手段】
【0005】
本開示の一態様において、画像解析装置は、産業機械によって加工されたワークの形状と、予め用意されたワークの目的形状との誤差の該ワークにおける発生箇所の第1分布を示す第1の画像データを生成する第1の画像生成部と、ワークを加工するために産業機械へ送信された指令と、該指令に対応する、産業機械からのフィードバックとの誤差のワークにおける発生箇所の第2分布を示す第2の画像データを生成する第2の画像生成部と、第1の画像データ及び第2の画像データに基づいて、第1分布と第2分布との相関性を求める相関性取得部とを備える。
【0006】
本開示の他の態様において、画像解析方法は、産業機械によって加工されたワークの形状と該ワークの目的形状との誤差の、該ワークにおける発生箇所の第1分布を示す第1の画像データを生成し、ワークを加工するために産業機械へ送信された指令と、該指令に対応する、産業機械からのフィードバックとの誤差の、ワークにおける発生箇所の第2分布を示す第2の画像データを生成し、第1の画像データ及び第2の画像データに基づいて、第1分布と第2分布との相関性を求める。
【0007】
本開示のさらに他の態様において、コンピュータプログラムは、画像解析のためにコンピュータを、産業機械によって加工されたワークの形状と、予め用意されたワークの目的形状との誤差の該ワークにおける発生箇所の第1分布を示す第1の画像データを生成する第1の画像生成部と、ワークを加工するために産業機械へ送信された指令と、該指令に対応する、産業機械からのフィードバックとの誤差のワークにおける発生箇所の第2分布を示す第2の画像データを生成する第2の画像生成部と、第1の画像データ及び第2の画像データに基づいて、第1分布と第2分布との相関性を求める相関性取得部として機能させる。
【発明の効果】
【0008】
本開示によれば、オペレータは、第1分布と第2分布との相関性を考慮することによって、加工後のワークの形状と目的形状との誤差の発生要因が、指令とフィードバックとの誤差に在る可能性が高いのか否か、判断することができる。したがって、オペレータは、加工後のワークの形状と目的形状との誤差の発生要因を特定し易くなる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る機械システムのブロック図である。
【
図3】
図2に示す産業機械で加工されたワークの例を示す。
【
図4】ワークの目的形状を示すワークモデルの例を示す。
【
図5】産業機械の移動軌跡からなる軌跡モデルの例を示す。
【
図7】
図5に示す軌跡モデル上に、第1の駆動部における指令とフィードバックとの誤差の分布を示した図である。
【
図8】
図5に示す軌跡モデル上に、第2の駆動部における指令とフィードバックとの誤差の分布を示した図である。
【
図9】
図5に示す軌跡モデル上に、第3の駆動部における指令とフィードバックとの誤差の分布を示した図である。
【
図10】
図5に示す軌跡モデル上に、第4の駆動部における指令とフィードバックとの誤差の分布を示した図である。
【
図11】
図5に示す軌跡モデル上に、第5の駆動部における指令とフィードバックとの誤差の分布を示した図である。
【
図12】
図4中の区域S1の2次元画像と、
図7中の区域S1の2次元画像とを並べて表示した図である。
【
図13】
図4に示す画像データに、順序画像データを重ねて表示した図である。
【
図14】
図4に示す画像データに、識別画像データを重ねて表示した図である。
【
図15】他の形態に係る機械システムのブロック図である。
【
図16】他の実施形態に係る画像解析装置のブロック図である。
【発明を実施するための形態】
【0010】
以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、
図1を参照して、一実施形態に係る機械システム10について説明する。機械システム10は、制御装置12、表示装置14、入力装置16、測定装置18、及び産業機械50を備える。
【0011】
制御装置12は、表示装置14、入力装置16、測定装置18、及び産業機械50の動作を制御する。具体的には、制御装置12は、プロセッサ20、メモリ22、及びI/Oインターフェース24を有するコンピュータである。プロセッサ20は、CPU又はGPU等を有し、後述する各種機能を実行するための演算処理を行う。プロセッサ20は、メモリ22及びI/Oインターフェース24とバス26を介して通信可能に接続されている。
【0012】
メモリ22は、ROM又はRAM等を有し、各種データを一時的又は恒久的に記憶する。I/Oインターフェース24は、プロセッサ20からの指令の下、外部機器と通信し、該外部機器からデータを受信するとともに、該外部機器へデータを送信する。本実施形態においては、I/Oインターフェース24には、表示装置14、入力装置16、測定装置18、及び産業機械50が、無線又は有線で通信可能に接続されている。
【0013】
表示装置14は、LCD又は有機ELディスプレイ等を有し、プロセッサ20は、I/Oインターフェース24を介して、表示装置14に画像データを送信し、該表示装置14に画像を表示させる。入力装置16は、キーボード、マウス、又はタッチセンサ等を有し、オペレータが入力した情報を、I/Oインターフェース24を介してプロセッサ20へ送信する。なお、表示装置14及び入力装置16は、制御装置12に一体に設けられてもよいし、制御装置12とは別体として設けられてもよい。
【0014】
測定装置18は、レーザ走査式の3次元スキャナ、又はステレオカメラを有する3次元測定機等であって、後述するワークWのような物体の3次元形状を測定する。測定装置18は、測定した物体の形状の測定データを、I/Oインターフェース24を介してプロセッサ20へ送信する。
【0015】
産業機械50は、ワークWを加工する。以下、
図2を参照して、一実施形態に係る産業機械50について説明する。本実施形態に係る産業機械50は、いわゆる5軸マシニングセンタであって、土台テーブル52、並進移動機構54、支持台56、揺動移動機構58、揺動部材60、回動移動機構62、ワークテーブル64、主軸ヘッド66、ツール68、及び主軸移動機構70を有する。
【0016】
土台テーブル52は、ベースプレート72、及び枢支部74を有する。ベースプレート72は、略矩形の平板状の部材であって、並進移動機構54の上に配置されている。枢支部74は、ベースプレート72の上面72aから上方へ突出するように、該ベースプレート72に一体に形成されている。
【0017】
並進移動機構54は、土台テーブル52を、機械座標系CMのx軸方向及びy軸方向へ往復動させる。具体的には、並進移動機構54は、土台テーブル52をx軸方向へ往復動させるx軸ボールねじ機構(図示せず)と、土台テーブル52をy軸方向へ往復動させるy軸ボールねじ機構(図示せず)と、x軸ボールねじ機構を駆動する第1の駆動部76と、y軸ボールねじ機構を駆動する第2の駆動部78とを有する。
【0018】
第1の駆動部76は、例えばサーボモータであって、制御装置12からの指令に応じて、その回転シャフトを回転駆動する。x軸ボールねじ機構は、第1の駆動部76の出力シャフトの回転動作を、機械座標系CMのx軸に沿う往復動に変換する。同様に、第2の駆動部78は、例えばサーボモータであって、制御装置12からの指令に応じて、その回転シャフトを回転駆動し、y軸ボールねじ機構は、第2の駆動部78の出力シャフトの回転動作を、機械座標系CMのy軸に沿う往復動に変換する。
【0019】
支持台56は、土台テーブル52に固定されている。具体的には、支持台56は、土台部80、及び駆動部収容部82を有する。土台部80は、略四角柱状の中空部材であって、ベースプレート72の上面72aから上方へ突出するように、該上面72aに固定されている。駆動部収容部82は、略半円状の中空部材であって、土台部80の上端部に一体に形成されている。
【0020】
揺動移動機構58は、第3の駆動部84、及び減速機86を有する。第3の駆動部84及び減速機86は、土台部80及び駆動部収容部82の内部に設置されている。第3の駆動部84は、例えばサーボモータであって、制御装置12からの指令に応じて、その出力シャフトを回転駆動する。減速機86は、第3の駆動部84の出力シャフトの回転数を減速し、揺動部材60に伝達する。こうして、揺動移動機構58は、揺動部材60を軸線A1の周りに回動させる。
【0021】
揺動部材60は、支持台56及び枢支部74に軸線A1周りに回動可能に支持されている。具体的には、揺動部材60は、x軸方向に対向配置された一対の保持部88及び90と、該保持部88及び90に固定された駆動部収容部92とを有する。保持部88は、揺動移動機構58(具体的には、第3の駆動部84の出力シャフト)に機械的に連結されている一方、保持部90は、支持シャフト(図示せず)を介して、枢支部74に枢支されている。駆動部収容部92は、略円筒状の中空部材であって、保持部88及び90の間に配置され、該保持部88及び90に一体に形成されている。
【0022】
回動移動機構62は、第4の駆動部94、及び減速機96を有する。第4の駆動部94及び減速機96は、駆動部収容部92の内部に設置されている。第4の駆動部94は、例えばサーボモータであって、制御装置12からの指令に応じて、その出力シャフトを回転駆動する。減速機96は、第4の駆動部94の出力シャフトの回転数を減速し、ワークテーブル64に伝達する。
【0023】
こうして、回動移動機構62は、ワークテーブル64を軸線A2の周りに回動させる。軸線A2は、軸線A1と直交し、揺動部材60とともに軸線A1周りに回転する軸線である。ワークテーブル64は、略円板状の部材であって、軸線A2周りに回動可能に駆動部収容部92の上に配置されている。ワークテーブル64は、回動移動機構62(具体的には、第4の駆動部94の出力シャフト)に機械的に連結され、該ワークテーブル64の上に、治具(図示せず)を介してワークWがセットされる。
【0024】
主軸ヘッド66は、機械座標系CMのz軸方向へ移動可能に設けられ、その先端にツール68が着脱可能に取り付けられる。主軸ヘッド66は、ツール68を軸線A3周りに回転駆動し、回転するツール68によって、ワークテーブル64にセットされたワークWを加工する。軸線A3は、軸線A1と直交する軸線である。
【0025】
主軸移動機構70は、主軸ヘッド66をz軸方向へ往復動させるボールねじ機構98と、該ボールねじ機構98を駆動する第5の駆動部100とを有する。第5の駆動部100は、例えばサーボモータであって、制御装置12からの指令に応じて、その回転シャフトを回転駆動し、ボールねじ機構98は、第5の駆動部100の出力シャフトの回転動作を、機械座標系CMのz軸に沿う往復動に変換する。
【0026】
産業機械50には、機械座標系CMが設定されている。この機械座標系CMは、3次元空間内に固定され、産業機械50の動作を自動制御するときに基準となる直交座標系である。本実施形態においては、機械座標系CMは、そのx軸が、揺動部材60の回転軸線A1と平行であり、そのz軸が鉛直方向と平行となるように、設定されている。
【0027】
産業機械50は、並進移動機構54、揺動移動機構58、回動移動機構62、及び主軸移動機構70によって、ツール68を、ワークテーブル64にセットされたワークWに対して5方向へ相対的に移動させる。したがって、並進移動機構54、揺動移動機構58、回動移動機構62、及び主軸移動機構70は、ツール68とワークWとを相対的に移動させる移動機構102を構成する。
【0028】
図1に示すように、産業機械50は、第1のセンサ104、第2のセンサ106、第3のセンサ108、第4のセンサ110、及び第5のセンサ112をさらに備える。第1のセンサ104は、第1の駆動部76に設けられ、該第1の駆動部76の状態データを検出し、フィードバックFB1として制御装置12へ送信する。
【0029】
例えば、第1のセンサ104は、第1の駆動部76の出力シャフトの回転位置R1(又は、回転角度)を検出する回転検出センサ(エンコーダ、ホール素子等)を有する。この場合、第1のセンサ104は、第1の駆動部76の状態データとして、回転位置R1、及び第1の駆動部76の速度V1を検出する。速度V1は、回転位置R1を時間tで1階微分することで求めることができる(V1=δR1/δt)。第1のセンサ104は、フィードバックFB1として、回転位置R1を示す位置フィードバック、及び速度V1を示す速度フィードバックを、制御装置12へ送信する。
【0030】
また、第1のセンサ104は、第1の駆動部76に流れる電流EC1を検出する電流センサを有する。第1のセンサ104は、第1の駆動部76の状態データとして、電流EC1を検出し、フィードバックFB1として、電流EC1を示す電流フィードバックを、制御装置12へ送信する。
【0031】
同様に、第2のセンサ106は、第2の駆動部78の出力シャフトの回転位置R1を検出する回転検出センサと、第2の駆動部78に流れる電流EC2を検出する電流センサとを有し、該第2の駆動部78の状態データとして、回転位置R2、速度V2(=δR2/δt)、及び電流EC2を検出する。そして、第2のセンサ106は、フィードバックFB2として、回転位置R2の位置フィードバック、速度V2の速度フィードバック、及び電流EC2の電流フィードバックを、制御装置12へ送信する。
【0032】
同様に、第3のセンサ108は、第3の駆動部84の出力シャフトの回転位置R3を検出する回転検出センサと、第3の駆動部84に流れる電流EC3を検出する電流センサとを有し、該第3の駆動部84の状態データとして、回転位置R3、速度V3(=δR3/δt)、及び電流EC3を検出する。そして、第3のセンサ108は、フィードバックFB3として、回転位置R3の位置フィードバック、速度V3の速度フィードバック、及び電流EC3の電流フィードバックを、制御装置12へ送信する。
【0033】
同様に、第4のセンサ110は、第4の駆動部94の出力シャフトの回転位置R4を検出する回転検出センサと、第4の駆動部94に流れる電流EC4を検出する電流センサとを有し、該第4の駆動部94の状態データとして、回転位置R4、速度V4(=δR4/δt)、及び電流EC4を検出する。そして、第4のセンサ110は、フィードバックFB4として、回転位置R4の位置フィードバック、速度V4の速度フィードバック、及び電流EC4の電流フィードバックを、制御装置12へ送信する。
【0034】
同様に、第5のセンサ112は、第5の駆動部100の出力シャフトの回転位置R5を検出する回転検出センサと、第5の駆動部100に流れる電流EC5を検出する電流センサとを有し、該第5の駆動部100の状態データとして、回転位置R5、速度V5(=δR5/δt)、及び電流EC5を検出する。そして、第5のセンサ112は、フィードバックFB5として、回転位置R5の位置フィードバック、速度V5の速度フィードバック、及び電流EC5の電流フィードバックを、制御装置12へ送信する。
【0035】
産業機械50によってワークを加工する場合、プロセッサ20は、加工プログラムWPに従って、第1の駆動部76、第2の駆動部78、第3の駆動部84、第4の駆動部94、及び第5の駆動部100へ、それぞれ、指令CD1、CD2、CD3、CD4、及びCD5を送信する。第1の駆動部76へ送信される指令CD1は、例えば、位置指令CDP1、速度指令CDV1、トルク指令CDτ1、及び電流指令CDE1の少なくとも1つを含む。
【0036】
位置指令CDP1は、第1の駆動部76の出力シャフトの目標回転位置を規定する指令である。速度指令CDV1は、第1の駆動部76の目標速度を規定する指令である。トルク指令CDτ1は、第1の駆動部76の目標トルクを規定する指令である。また、電流指令CDE1は、第1の駆動部76に入力される電流を規定する指令である。
【0037】
同様に、第2の駆動部78へ送信される指令CD2は、例えば、位置指令CDP2、速度指令CDV2、トルク指令CDτ2、及び電流指令CDE2の少なくとも1つを含む。また、第3の駆動部84へ送信される指令CD3は、例えば、位置指令CDP3、速度指令CDV3、トルク指令CDτ3、及び電流指令CDE3の少なくとも1つを含む。
【0038】
また、第4の駆動部94へ送信される指令CD4は、例えば、位置指令CDP4、速度指令CDV4、トルク指令CDτ4、及び電流指令CDE4の少なくとも1つを含む。また、第5の駆動部100へ送信される指令CD5は、例えば、位置指令CDP5、速度指令CDV5、トルク指令CDτ5、及び電流指令CDE5の少なくとも1つを含む。
【0039】
産業機械50は、プロセッサ20からの指令CD1、CD2、CD3、CD4、及びCD5に従って移動機構102(具体的には、並進移動機構54、揺動移動機構58、回動移動機構62、及び主軸移動機構70)を動作させ、ツール68とワークWとを相対的に移動させつつ、ツール68によってワークWを加工する。
図3に、産業機械50によって加工されたワークWの一例を示す。本実施形態においては、ワークWは、略矩形の平板状の土台部120と、該土台部120の上面122から上方へ突出した円柱部124とを有する。
【0040】
加工プログラムWPは、ワークWに対してツール68を配置させるべき複数の目標位置、隣接する2つの目標位置を結ぶ微小線分、又は、ワークWに対するツール68の目標速度等を規定する複数の命令文を含むコンピュータプログラム(例えば、Gコードプログラム)である。
【0041】
加工プログラムWPを生成するとき、オペレータは、CAD等の製図装置を用いて、製品としてのワークWの目的形状をモデル化したワークモデルWMを作成する。
図4に、ワークモデルWMを示す。ワークモデルWMは、3次元のモデルデータであって、土台部120をモデル化した土台部モデル120Mと、円柱部124をモデル化した円柱部モデル124Mを有する。製図装置がモデルを作成する3次元の仮想モデル空間には、モデル座標系CWが設定され、ワークモデルWMは、モデル座標系CWに設定されたコンポーネントモデル(点モデル、線モデル、表面モデル)によって構成されている。
【0042】
次いで、オペレータは、作成したワークモデルWMを、CAM等のプログラム生成装置に入力し、プログラム生成装置は、該ワークモデルWMに基づいて、加工プログラムWPを生成する。こうして、加工プログラムWPは、予め用意されたワークモデルWMに基づいて作成され、メモリ22に予め格納される。
【0043】
産業機械50がワークWを加工した後、オペレータは、加工後のワークWを測定装置18にセットし、測定装置18は、加工後のワークWの形状を測定する。ここで、加工プログラムWPに従って産業機械50が加工したワークWの形状と、予め用意されたワークWの目的形状(すなわち、ワークモデルWM)との間で誤差αが生じ得る。
【0044】
本実施形態においては、プロセッサ20は、ワークWにおける誤差αの発生箇所の分布Dα(第1分布)を示す第1の画像データID1を生成する。具体的には、測定装置18は、ワークモデルWMの入力を受け付けて、該ワークモデルWMと、測定したワークWの形状の測定データとを比較し、誤差αを測定する。なお、測定装置18は、誤差αに所定の閾値を設定し、該閾値以上の誤差αのみを測定するように構成されてもよい。
【0045】
プロセッサ20は、I/Oインターフェース24を介して、ワークモデルWMを取得するとともに、測定装置18から誤差αの測定データを取得し、ワークモデルWM及び測定データに基づいて、
図4に示す第1の画像データID1を生成する。
図4に示す第1の画像データID1においては、ワークモデルWM上に誤差αの発生箇所の分布Dαが示されており、該分布Dαは、視覚的に識別可能に表示された分布領域E1、E2及びE3を含む。
【0046】
分布領域E1、E2及びE3の各々は、測定装置18が測定した誤差αの発生箇所(すなわち、点)の集合体によって構成されており、モデル座標系CWの座標として表される。分布領域E1、E2及びE3の各々は、加工後のワークWの表面が、該表面に対応するワークモデルWMの表面モデルに対して外方へ突出しているか、又は内方へ凹んでいる領域に対応している。なお、プロセッサ20は、分布領域E1、E2及びE3の各々を、特定の色(赤色、青色、黄色)で表示してもよい。
【0047】
このように、本実施形態においては、プロセッサ20は、第1の画像データID1を生成する第1の画像生成部152(
図1)として機能する。なお、プロセッサ20は、生成した第1の画像データID1を、表示装置14に表示させてもよい。この場合において、プロセッサ20は、オペレータの入力装置16の操作に応じて、モデル座標系CWによって規定された仮想モデル空間を見る方向を変化させてもよい。この場合、オペレータは、表示装置14に表示されたワークモデルWM及び分布Dαを、様々な方向から見ることができる。
【0048】
プロセッサ20は、ワークWを加工するために産業機械50(具体的には、第1の駆動部76、第2の駆動部78、第3の駆動部84、第4の駆動部94、第5の駆動部100)へ送信された指令CD(CD1、CD2、CD3、CD4、及びCD5)と、該指令CDに対応する、産業機械50(具体的には、第1のセンサ104、第2のセンサ106、第3のセンサ108、第4のセンサ110、及び第5のセンサ112)からのフィードバックFB(FB1、FB2、FB3、FB4、及びFB5)との誤差βの、ワークWにおける発生箇所の分布Dβ(第2分布)を示す第2の画像データID2を生成する。
【0049】
以下、第2の画像データID2の生成方法の一例について説明する。まず、プロセッサ20は、ワークWの加工中に発信した指令CD、及び、加工中に取得したフィードバックFBの時系列データを取得する。ここで、プロセッサ20は、ワークWの加工中に、指令CD及びフィードバックFBを、時間t(例えば、加工開始からの時間、又は標準時間)と関連づけて、指令CD及びフィードバックFBの時系列データとして、メモリ22に記憶する。プロセッサ20は、第2の画像データID2を生成するときに、メモリ22から指令CD及びフィードバックFBの時系列データを読み出して取得する。したがって、本実施形態においては、プロセッサ20は、時系列データ取得部154(
図1)として機能する。
【0050】
また、プロセッサ20は、ワークWを加工するときの産業機械50の移動軌跡MPを生成する。一例として、プロセッサ20は、加工プログラムWPに規定されている移動軌跡MP1を生成する。この移動軌跡MP1は、加工プログラムWPに規定された微小線分の集合体であって、ワークWに対するツール68(又はTCP)の制御上の移動軌跡である。プロセッサ20は、加工プログラムWPを解析することで、3次元空間における移動軌跡MP1を生成できる。
【0051】
他の例として、プロセッサ20は、加工中に取得したフィードバックFBに基づく産業機械50の移動軌跡MP2を生成してもよい。この移動軌跡MP2は、例えば、加工中にセンサ104、106、108、110、及び112によって検出された位置フィードバックR1、R2、R3、R4及びR5に基づいて演算により求められ得る。この移動軌跡MP2は、ワークWに対するツール68(又はTCP)の実際上の移動軌跡である。
【0052】
こうして、プロセッサ20は、産業機械50の移動軌跡MP(MP1又はMP2)を生成する。したがって、本実施形態においては、プロセッサ20は、移動軌跡MPを生成する軌跡生成部156(
図1)として機能する。
図5に、生成した移動軌跡MPを3次元表示した軌跡モデルPMの例を示す。
図6は、
図5の領域VIの拡大図である。
図6に示すように、軌跡モデルPMは、移動軌跡MPから構成されている。軌跡モデルPMは、ワークモデルWMと略一致する外形のモデルとなる。
【0053】
なお、プロセッサ20は、軌跡モデルPMに対してモデル座標系CW’を設定することができる。ここで、移動軌跡MP(MP1、MP2)は、ワークモデルWMに基づいて作成された加工プログラムWPを実行した結果、得られるものである。よって、プロセッサ20は、
図4に示すワークモデルWMに対するモデル座標系CWの原点位置及び各軸方向の位置関係と同じとなるように、
図5に示す軌跡モデルPMに対してモデル座標系CW’の原点位置及び各軸方向を設定できる。軌跡モデルPMは、モデル座標系CW’において座標化される。
【0054】
次いで、プロセッサ20は、指令CD及びフィードバックFBの時系列データと、移動軌跡MPとに基づいて、指令CDとフィードバックFBとの誤差βが発生した移動軌跡MP上の位置を、該移動軌跡MP上に表示する。例えば、プロセッサ20は、誤差βが発生した移動軌跡MP上の位置を、軌跡モデルPMの移動軌跡MP上に点表示(プロット)する。
【0055】
ここで、移動軌跡MPは、指令CD及びフィードバックFBの時系列データと、時間tを介して、互いに関連付けられている。具体的には、移動軌跡MP1は、加工プログラムWPに規定されているものであり、該加工プログラムWPに従って生成される指令CDの時系列データ、及び該指令CDに対応するフィードバックFBの時系列データと、時間tを介して関連付けられている。また、移動軌跡MP2は、フィードバックFBから生成されるものであって、フィードバックFBの時系列データ、及び該フィードバックFBに対応する指令CDの時系列データと、時間tを介して関連付けられている。
【0056】
したがって、プロセッサ20は、指令CD及びフィードバックFBの時系列データから、誤差βが発生した時間tを特定し、該時間tでの移動軌跡MP上の点を特定できる。このようにして、プロセッサ20は、誤差βが発生した移動軌跡MP上の位置を、軌跡モデルPMの移動軌跡MP上に表示することにより、分布Dβを示す第2の画像データID2を生成する。なお、プロセッサ20は、誤差βに所定の閾値を設定し、該閾値以上の誤差βのみを移動軌跡MP上に表示するように構成されてもよい。
【0057】
図7に、第1の駆動部76への指令CD1と、該指令CD1に対応するフィードバックFB1との誤差β1の発生箇所の分布Dβ1を示す第2の画像データID2_1の例を示す。誤差β1は、例えば、位置指令CDP1と位置フィードバックR1との誤差、速度指令CDV1と速度フィードバックV1との誤差、又は、トルク指令CDτ1(若しくは電流指令CDE1)と電流フィードバックEC1との誤差である。
【0058】
図7に示す第2の画像データID2_1においては、軌跡モデルPM上に誤差β1の発生箇所の分布Dβ1が示されており、該分布Dβ1は、分布領域F1及びF2を含む。分布領域F1及びF2の各々は、移動軌跡MP上に表示(プロット)された誤差β1の発生位置(点表示)の集合体である。
【0059】
図8に、第2の駆動部78への指令CD2と、該指令CD2に対応するフィードバックFB2との誤差β2の発生箇所の分布Dβ2を示す第2の画像データID2_2の例を示す。誤差β2は、例えば、位置指令CDP2と位置フィードバックR2との誤差、速度指令CDV2と速度フィードバックV2との誤差、又は、トルク指令CDτ2(若しくは電流指令CDE2)と電流フィードバックEC2との誤差である。
図8に示す第2の画像データID2_2においては、軌跡モデルPM上に、分布領域G1及びG2を含む分布Dβ2が示されている。
【0060】
図9に、第3の駆動部84への指令CD3と、該指令CD3に対応するフィードバックFB3との誤差β3の発生箇所の分布Dβ3を示す第2の画像データID2_3の例を示す。誤差β3は、例えば、位置指令CDP3と位置フィードバックR3との誤差、速度指令CDV3と速度フィードバックV3との誤差、又は、トルク指令CDτ3(若しくは電流指令CDE3)と電流フィードバックEC3との誤差である。
図9に示す第2の画像データID2_3においては、軌跡モデルPM上に、分布領域H1及びH2を含む分布Dβ3が示されている。
【0061】
図10に、第4の駆動部94への指令CD4と、該指令CD4に対応するフィードバックFB4との誤差β4の発生箇所の分布Dβ4を示す第2の画像データID2_4の例を示す。誤差β4は、例えば、位置指令CDP4と位置フィードバックR4との誤差、速度指令CDV4と速度フィードバックV4との誤差、又は、トルク指令CDτ4(若しくは電流指令CDE4)と電流フィードバックEC4との誤差である。
図10に示す第2の画像データID2_4においては、軌跡モデルPM上に、分布領域I3を含む分布Dβ4が示されている。
【0062】
図11に、第5の駆動部100への指令CD5と、該指令CD5に対応するフィードバックFB5との誤差β5の発生箇所の分布Dβ5を示す第2の画像データID2_5の例を示す。誤差β5は、例えば、位置指令CDP5と位置フィードバックR5との誤差、速度指令CDV5と速度フィードバックV5との誤差、又は、トルク指令CDτ5(若しくは電流指令CDE5)と電流フィードバックEC5との誤差である。
図11に示す第2の画像データID2_5においては、軌跡モデルPM上に、分布領域J3を含む分布Dβ5が示されている。
【0063】
図7~
図11に示すように、第2の画像データID2_1、ID2_2、ID2_3、ID2_4、ID2_5は、駆動部76、78、84、94、100毎に、誤差β1、β2、β3、β4、β5の分布Dβ1、Dβ2、Dβ3、Dβ4、Dβ5を示している。なお、プロセッサ20は、第2の画像データID2として、画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5を個別に生成してもよい。この場合、第2の画像データID2は、計5つの画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5を含むことになる。
【0064】
代替的には、プロセッサ20は、第2の画像データID2を、画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5が1つの画像データに統合された形式の画像データとして生成してもよい。この場合、第2の画像データID2は、軌跡モデルPMと、該軌跡モデルPM上に分布した分布領域F1、F2、G1、G2、H1、H2、I3、及びJ3とを含む画像データとなる。
【0065】
以上のように、本実施形態においては、プロセッサ20は、第2の画像データID2を生成する第2の画像生成部158(
図1)として機能する。なお、プロセッサ20は、生成した第2の画像データID2を、表示装置14に表示させてもよい。この場合において、プロセッサ20は、オペレータの入力装置16の操作に応じて、モデル座標系CW’によって規定された仮想モデル空間を見る方向を変化させてもよい。これにより、オペレータは、表示装置14に表示された軌跡モデルPM及び分布Dβを、様々な方向から見ることができる。また、プロセッサ20は、第1の画像データID1と第2の画像データID2とを、表示装置14に並べて表示させてもよい。
【0066】
プロセッサ20は、第1の画像データID1及び第2の画像データID2に基づいて、第1の画像データID1の分布Dαと、第2の画像データID2の分布Dβとの相関性CRを求める。本実施形態においては、まず、オペレータは、入力装置16を操作して、第1の画像データID1の分布Dαに対し、特定の区域Sを指定する。
【0067】
例えば、オペレータは、
図4に示すように、表示装置14に表示された第1の画像データID1を視認しつつ、入力装置16を操作して、第1の画像データID1において、分布Dαのうちの分布領域E1及びE2を含むように区域S1を指定する。プロセッサ20は、I/Oインターフェース24を介して、入力装置16に入力された入力情報を受け付ける。
【0068】
このように、本実施形態においては、プロセッサ20は、第1の画像データID1において区域S1を指定する入力情報を受け付ける入力受付部160(
図1)として機能する。プロセッサ20は、入力情報に応じて、指定された区域S1に含まれる分布領域E1及びE2を抽出する。
【0069】
次いで、プロセッサ20は、
図7~
図11に示すように、第2の画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5において、第1の画像データID1に指定された区域S1に対応する位置(具体的には、同じ位置)に、区域S1を設定する。
【0070】
上述したように、モデル座標系CWにおけるワークモデルWMの位置関係と、モデル座標系CW’における軌跡モデルPMの位置関係とは、互いに一致している。よって、プロセッサ20は、区域S1の入力情報を基に、第2の画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5において、第1の画像データID1と同じ位置に区域S1を設定できる。
【0071】
そして、プロセッサ20は、
図7に示す第2の画像データID2_1において、分布Dβ1のうち、設定した区域S1に含まれる分布領域F1及びF2を抽出する。また、プロセッサ20は、
図8に示す第2の画像データID2_2において、分布Dβ2のうち、区域S1に含まれる分布領域G1及びG2を抽出する。また、プロセッサ20は、
図9に示す第2の画像データID2_3において、分布Dβ3のうち、区域S1に含まれる分布領域H1及びH2を抽出する。一方、
図10及び
図11に示す第2の画像データID2_4及びID2_5においては、設定した区域S1内に分布Dβ4及びDβ5が含まれていない。
【0072】
そして、プロセッサ20は、
図4に示す区域S1内の分布Dα(分布領域E1及びE2)と、
図7に示す区域S1内の分布Dβ1(分布領域F1及びF2)との相関性CR1_1を求める。以下、相関性CR1_1を求める方法について、説明する。一例として、プロセッサ20は、
図4に示す区域S1内の分布領域E1及びE2を2次元画像データ化する。また、プロセッサ20は、
図7に示すように、
図4でワークモデルWMを見る方向と同じ方向から軌跡モデルPMを見たときの、区域S1内の分布領域F1及びF2を2次元画像データ化する。
【0073】
このような2次元画像データを画像化した例を、
図12に示す。そして、プロセッサ20は、相関性CR1_1を示すパラメータとして、
図12に示すように2次元画像データ化された分布領域E1及びE2の画像(又は形状)と、分布領域F1及びF2の画像との類似度を演算により求める。この類似度は、2つの画像(形状)が類似する度合いを示すパラメータであって、例えば、2つの画像の輝度の相関によるマッチング、又は、各画像に直交変換(フーリエ変換、離散コサイン変換)を施した中間画像間の距離に基づいて、求めることができる。
【0074】
類似度の値が大きい(又は小さい)程、2つの画像(形状)が類似する(すなわち、相関性が高い)ことを示す。よって、相関性CR1_1を類似度として求めた場合、分布領域E1及びE2と、分布領域F1及びF2との類似度が大きい(又は小さい)場合に、これらの相関性が高いことを定量的に示すことになる。
【0075】
相関性CR1_1を求める方法の他の例として、プロセッサ20は、
図12に示すように2次元画像データ化した分布領域E1及びE2と分布領域F1及びF2とを、画像データの外枠が一致するように互いに重ね合わせる。そして、プロセッサ20は、分布領域E1及びE2と分布領域F1及びF2とが重なり合う領域の面積又は画素数を、相関性CR1_1として取得する。この面積又は画素数が大きい程、分布領域E1及びE2と分布領域F1及びF2との相関性が高いことを定量的に示すことになる。
【0076】
相関性CR1_1を求める方法のさらに他の例として、プロセッサ20は、
図7に示すモデル座標系CW’における分布領域F1及びF2を、
図4に示すモデル座標系CWに変換し、該モデル座標系CWにおいて分布領域E1及びE2に重ね合わせる。ここで、第2の画像データID2_1において分布Dβ1を構成する各表示点は、モデル座標系CW’の座標として表される。また、上述したように、モデル座標系CWにおけるワークモデルWMの位置と、モデル座標系CW’における軌跡モデルPMの位置とは、互いに一致している。
【0077】
したがって、
図7中の分布領域F1及びF2のモデル座標系CW’の座標を、
図4中モデル座標系CWにプロットすることによって、該モデル座標系CWにおいて、分布領域E1及びE2と分布領域F1及びF2とを重ね合わせることができる。そして、プロセッサ20は、モデル座標系CWにおいて、分布領域E1及びE2と、変換された分布領域F1及びF2とが重なり合う(又は、所定の距離内に近接する)領域の面積を、相関性CR1_1として取得する。この面積が大きい程、分布Dαと分布Dβ1の相関性が高いことを定量的に示すことになる。以上のような方法を用いて、相関性CR1_1を求めることができる。
【0078】
同様の方法を用いて、プロセッサ20は、
図4中の区域S1内の分布Dα(E1及びE2)と、
図8中の区域S1内の分布Dβ2(G1及びG2)との相関性CR1_2、
図4中の区域S1内の分布Dαと、
図9中の区域S1内の分布Dβ3(H1及びG2)との相関性CR1_3、
図4中の区域S1内の分布Dαと、
図10中の区域S1内の分布Dβ2(存在せず)との相関性CR1_4、及び、
図4中の区域S1内の分布Dαと、
図11中の区域S1内の分布Dβ2(存在せず)との相関性CR1_5をそれぞれ求めることができる。
【0079】
以上のように、プロセッサ20は、第1の画像データID1及び第2の画像データID2に基づいて、分布Dαと分布Dβとの相関性CR1を求める。したがって、プロセッサ20は、相関性CR1を求める相関性取得部162(
図1)として機能する。また、本実施形態においては、プロセッサ20は、分布Dαと、駆動部76、78、84、94、100毎の分布Dβ1、Dβ2、Dβ3、Dβ4、Dβ5との相関性CR1_1、CR1_2、CR1_3、CR1_4、及びCR1_5をそれぞれ求めている。
【0080】
次いで、プロセッサ20は、求めた相関性CR1_1、CR1_2、CR1_3、CR1_4、及びCR1_5が高い順に、第1の駆動部76、第2の駆動部78、第3の駆動部84、第4の駆動部94、及び第5の駆動部100を並べて表示する順序画像データOD1を生成する。順序画像データOD1の画像の例を
図13に示す。
【0081】
図13に示すように、本実施形態においては、プロセッサ20は、順序画像データOD1を、第1の画像データID1に重ねて表示している。本実施形態においては、相関性CR1の高さは、CR1_1>CR1_2>CR1_3>CR1_4=CR1_5=0である。よって、設定された区域S1においては、第1の駆動部76に関する誤差β1の分布領域F1及びF2が、分布Dα(分布領域E1及びE2)と最も高い相関性CR1_1を有し、第2の駆動部78に関する誤差β2の分布領域G1及びG2が、2番目に高い相関性CR1_2を有し、第3の駆動部84に関する誤差β3の分布領域H1及びH2が、3番目に高い相関性CR1_3を有することになる。
【0082】
一方、第4の駆動部94及び第5の駆動部100に関する誤差β4及びβ5の分布Dβについては、分布Dαとの相関性CR1はゼロ(つまり、相関性がない)となっている。よって、
図13に示すように、順序画像データOD1には、第1位に第1の駆動部76、第2位に第2の駆動部78、第3位に第3の駆動部84、第4位に第4の駆動部94及び第5の駆動部100の順で、複数の駆動部76、78、84、94、100が並べて表示されている。
【0083】
また、本実施形態においては、順序画像データOD1は、駆動部76、78、84、94、100の順序とともに、該駆動部を識別する情報(例えば、文字列、識別番号、記号等)を示す識別情報欄Kと、相関性CR1の情報(例えば、数値)を示す相関性情報欄Lとが表示されている。
【0084】
このように、本実施形態においては、プロセッサ20は、順序画像データOD1を生成する第3の画像生成部164(
図3)として機能する。この順序画像データOD1によって、オペレータは、指定した区域S1内の誤差αの分布Dα(E1、E2)と、各々の駆動部76、78、84、94及び100の誤差βの分布Dβとの相関性CR1の順序を、視覚的に認識できる。
【0085】
なお、プロセッサ20は、第3の画像生成部164として機能し、順序画像データOD1の代わりに(又は加えて)、相関性CR1が最も高い駆動部76を識別する識別画像データDD1を生成してもよい。このような識別画像データDD1の例を
図14に示す。
図14に示す例では、識別画像データDD1は、区域S1を指す矢印と、相関性CR1が最も高い第1の駆動部76を識別する記号(具体的には、〇記号内の番号)とから構成され、第1の画像データID1に示されている。識別画像データDD1によって、オペレータは、指定した区域S1内の誤差αの分布Dα(E1、E2)が、第1の駆動部76に関する誤差β1の分布Dβ1(F1、F2)と最も相関性が高いことを、視覚的に認識できる。
【0086】
同様に、オペレータは、
図4に示すように、表示装置14に表示された第1の画像データID1を視認しつつ、入力装置16を操作して、第1の画像データID1において、分布Dαのうちの分布領域E3を含むように区域S2を指定する。プロセッサ20は、入力受付部160として機能して、区域S2を指定する入力情報を受け付け、
図7~
図11に示すように、第2の画像データID2_1、ID2_2、ID2_3、ID2_4、及びID2_5において、第1の画像データID1に指定された区域S2と同じ位置に、区域S2を設定する。
【0087】
そして、プロセッサ20は、相関性取得部162として機能して、上述した方法を用いて、
図4中の区域S2内の分布Dα(E3)と、
図7中の区域S2内の分布Dβ1(存在せず)との相関性CR2_1、
図4中の区域S2内の分布Dαと
図8中の区域S2内の分布Dβ2(存在せず)との相関性CR2_2、
図4中の区域S2内の分布Dαと
図9中の区域S2内の分布Dβ3(存在せず)との相関性CR2_3、
図4中の区域S2内の分布Dαと
図10に示す区域S2内の分布Dβ4(I3)との相関性CR2_4、及び、
図4中の区域S2内の分布Dαと
図11に示す区域S2内の分布Dβ5(J3)との相関性CR2_5をそれぞれ求める。
【0088】
次いで、プロセッサ20は、第3の画像生成部164として機能し、求めた相関性CR2_1、CR2_2、CR2_3、CR2_4、及びCR2_5が高い順に、第1の駆動部76、第2の駆動部78、第3の駆動部84、第4の駆動部94、及び第5の駆動部100を並べて表示する順序画像データOD2(
図13)を生成する。
【0089】
本実施形態においては、相関性CR2の高さは、CR2_4>CR2_5>CR2_1=CR2_2=CR2_3=0である。よって、設定された区域S2においては、第4の駆動部94に関する誤差β4の分布領域I3が、区域S2内の分布Dα(分布領域E3)と最も高い相関性CR2_4を有し、第5の駆動部100に関する誤差β5の分布領域J3が、2番目に高い相関性CR2_5を有することになる。
【0090】
一方、第1の駆動部76、第2の駆動部78及び第3の駆動部84に関する誤差β1、β2及びβ3の分布Dβについては、分布Dαとの相関性CR2はゼロ(つまり、相関性がない)となっている。よって、
図13に示すように、順序画像データOD2には、第1位に第4の駆動部94、第2位に第5の駆動部100、第3位に第1の駆動部76、第2の駆動部78及び第3の駆動部84の順で、複数の駆動部76、78、84、94、100が並べて表示されている。
【0091】
また、プロセッサ20は、第3の画像生成部164として機能し、
図14に示すように、相関性CR2が最も高い駆動部94を識別する識別画像データDD2を生成してもよい。識別画像データDD2は、区域S2を指す矢印と、相関性CR2が最も高い第4の駆動部94を識別する記号とから構成され、第1の画像データID1に示されている。なお、プロセッサ20は、順序画像データOD1及びOD2、又は、識別画像データDD1及びDD2を、第2の画像データID2に重ねて表示してもよいし、又は、第1の画像データID1及び第2の画像データID2とは別の画像データとして表示してもよい。
【0092】
以上のように、本実施形態においては、プロセッサ20は、第1の画像生成部152、第2の画像生成部158、第3の画像生成部164、相関性取得部162、入力受付部160、時系列データ取得部154、及び軌跡生成部156として機能し、これら第1の画像生成部152、第2の画像生成部158、第3の画像生成部164、相関性取得部162、入力受付部160、時系列データ取得部154、及び軌跡生成部156は、画像解析装置150(
図1)を構成する。
【0093】
なお、画像解析装置150は、コンピュータプログラム(すなわち、ソフトウェア)として構成され得る。このコンピュータプログラムは、画像解析のために、コンピュータ(プロセッサ20)を、第1の画像生成部152、第2の画像生成部158、第3の画像生成部164、相関性取得部162、入力受付部160、時系列データ取得部154、及び軌跡生成部156として機能させる。
【0094】
本実施形態によれば、オペレータは、誤差αの分布Dαと、誤差βの分布Dβとの相関性CRを考慮することによって、誤差αの発生要因が、誤差βに在る可能性が高いのか否か、判断することができる。したがって、オペレータは、誤差αの発生要因を特定し易くなる。その結果、産業機械50の加工精度の改善工程、及び、機械システム10の立ち上げ工程の効率化を図ることができる。
【0095】
また、本実施形態においては、プロセッサ20は、駆動部76、78、84、94、100毎の分布Dβ1、Dβ2、Dβ3、Dβ4、Dβ5を示す第2の画像データID2_1、ID2_2、ID2_3、ID2_4、ID2_5を生成し、誤差αの分布Dαと、駆動部76、78、84、94、100毎の分布Dβ1、Dβ2、Dβ3、Dβ4、Dβ5との相関性CR1、CR2をそれぞれ求めている。
【0096】
この構成によれば、オペレータは、誤差αの発生要因が、複数の駆動部76、78、84、94及び100のうちのいずれにある可能性が高いのか、推定し易くなる。例えば、上述の実施形態の場合、オペレータは、
図4中の誤差αの分布Dαのうち、分布領域E1及びE2に関しては、第1の駆動部76に関する誤差β1が要因となっている可能性が高いと推定できる。また、オペレータは、
図4中の誤差αの分布Dαのうち、分布領域E3に関しては、第4の駆動部94に関する誤差β4が要因となっている可能性が高いと推定できる。
【0097】
また、本実施形態においては、プロセッサ20は、区域S1(S2)を指定する入力情報を受け付け、分布Dαのうち区域S1(S2)に含まれる分布領域E1及びE2(E3)と、分布Dβのうち区域S1に含まれる分布領域F1及びF2、G1及びG2、H1及びH2(I3、J3)との相関性CR1(CR2)を求めている。この構成によれば、オペレータは、分布Dαのうちの所望の領域について相関性CRを考慮できるようになり、該所望の領域で発生した誤差αの要因を特定し易くなる。
【0098】
なお、
図1に示す第1の画像生成部152、第2の画像生成部158、第3の画像生成部164、相関性取得部162、入力受付部160、時系列データ取得部154、及び軌跡生成部156の少なくとも1つの機能を、制御装置12の外部機器に設けてもよい。このような形態を、
図15に示す。
【0099】
図15に示す機械システム170は、制御装置12、表示装置14、入力装置16、測定装置18、産業機械50、及び設計支援装置172を備える。設計支援装置172は、例えば、CAD等の製図装置、及びCAM等のプログラム生成装置が統合された装置であって、制御装置12のI/Oインターフェース24に接続されている。
【0100】
本実施形態においては、測定装置18は、第1の画像生成部152として機能し、加工後のワークWの形状を測定するとともに、第1の画像データID1を生成する。また、設計支援装置172は、第2の画像生成部158として機能して、第2の画像データID2を生成する。よって、本実施形態においては、制御装置12のプロセッサ20、測定装置18、及び設計支援装置172が、画像解析装置150を構成する。
【0101】
なお、上述の実施形態においては、プロセッサ20が、区域S1、S2の指定の入力情報を受け付ける入力受付部160として機能する場合について述べた。しかしながら、入力受付部160を省略することもできる。この場合において、プロセッサ20は、第1の画像データID1の分布Dα全体と、第2の画像データID2の分布Dβ(Dβ1、Dβ2、Dβ3、Dβ4、Dβ5)全体との相関性CRを求めてもよい。
【0102】
また、上述の実施形態においては、プロセッサ20は、誤差βが発生した移動軌跡MP上の位置を移動軌跡MP上に表示することにより、第2の画像データID2を生成する場合について述べた。しかしながら、これに限らず、例えば、プロセッサ20は、指令CD、フィードバックFB、及びワークモデルWMに基づいて、ワークモデルWM上に誤差βの分布Dβを示した第2の画像データID2を生成してもよい。この場合、軌跡生成部156を省略できる。
【0103】
また、上述の実施形態においては、プロセッサ20は、指令CD及びフィードバックFBの時系列データを取得する場合について述べた。しかしながら、これに限らず、プロセッサ20は、誤差βを取得可能であれば如何なるデータを用いてもよい。この場合、時系列データ取得部154を省略できる。また、上述の実施形態から第3の画像生成部164を省略し、例えば、プロセッサ20は、求めた相関性CRを、ネットワーク(LAN、インターネット)を介して外部機器(サーバ等)に送信するように構成されてもよい。
【0104】
図16に、他の実施形態に係る画像解析装置180を示す。画像解析装置180は、プロセッサ(CPU、GPU等)及びメモリ(ROM、RAM等)を有するコンピュータ、又は、コンピュータを動作させるコンピュータプログラム(ソフトウェア)から構成され、第1の画像生成部152、第2の画像生成部158、及び相関性取得部162を備える。この実施形態において、上述の入力受付部160、時系列データ取得部154、及び軌跡生成部156、及び第3の画像生成部164の機能は、画像解析装置180の外部機器に設けられてもよい。
【0105】
なお、上述の指令CD1、CD2、CD3、CD4、又はCD5は、駆動部76、78、84、94、又は100によって駆動される被駆動体(例えば、土台テーブル52、揺動部材60、ワークテーブル64、又は主軸ヘッド66)の位置指令又は速度指令を有してもよい。この場合、フィードバックFBは、被駆動体の位置フィードバック又は速度フィードバックを有し、産業機械50は、被駆動体の位置を検出するセンサを有することになる。
【0106】
また、プロセッサ20は、
図4に示す第1の画像データID1において、分布Dαを、誤差αの大きさに応じて異なる色で表示してもよい。同様に、プロセッサ20は、
図7~
図11に示す第2画像データID2において、分布Dβを、誤差βの大きさに応じて異なる色で表示してもよい。
【0107】
また、プロセッサ20(又は測定装置18)は、測定装置18が測定したワークWの形状の測定データに基づいて、測定したワークWの形状をモデル化した測定ワークモデルを生成してもよい。そして、プロセッサ20(又は測定装置18)は、該測定ワークモデル上に誤差αの分布αを示す第1の画像データID1を生成してもよい。また、プロセッサ20は、上述の軌跡モデルPM上に誤差αの分布αを示す第1の画像データID1を生成してもよい。
【0108】
また、上述の実施形態においては、産業機械50が、計5個の駆動部76、78、84、94及び100を有する場合について述べたが、如何なる個数の駆動部を有してもよい。また、産業機械50は、移動機構として、例えば垂直(又は水平)多関節型のロボットを備えてもよい。この場合において、産業機械50は、上述のツール68の代わりに、ロボットの手先に取り付けられたレーザ加工ヘッド等のツールを備え、該ロボットによって該ツールを移動させつつ、該ツールから出射されるレーザ光によってワークをレーザ加工してもよい。
【0109】
以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
【符号の説明】
【0110】
10,170 機械システム
12 制御装置
50 産業機械
68 ツール
102 移動機構
150,180 画像解析装置
152 第1の画像生成部
154 時系列データ取得部
156 軌跡生成部
158 第2の画像生成部
160 入力受付部
162 相関性取得部
164 第3の画像生成部