(57)【要約】【課題】タッチパネル上で正確且つ簡便に位置指定することが可能な位置情報表示システムを提供する。【解決手段】本発明は、制御装置１５０と変換情報算出装置１００と画像情報制御装置２００とを備え、変換情報算出装置１００は、産業用機械４００の各軸の座標値を変数として、第２の座標系における第１の座標系の位置及び／又は姿勢を表す変換情報を計算する変換情報計算部１１１を備え、画像情報制御装置２００は、変換情報と各軸の座標値を用いて、第２の座標系における位置及び／又は姿勢を計算する座標情報変換部２１１と、表示装置３００における第３の座標系で第１の座標系における位置及び／又は姿勢を視覚的に表示させるための位置情報の計算用データを設定する位置情報計算用データ設定部２１２と、位置情報の計算用データを用いて位置情報の表示用データを計算する位置情報表示用データ計算部２１３とを備える。【選択図】図１
2019212040.tif 000002
【特許請求の範囲】
【請求項１】
産業用機械の制御装置と、異なる座標系の間での変換情報を算出する変換情報算出装置と、タッチパネルを有する表示装置に位置情報を表示させる画像情報制御装置と、を備える位置情報表示システムであって、
前記制御装置は、
前記産業用機械の各軸の座標値を前記画像情報制御装置に通知する座標情報通知部を備え、
前記変換情報算出装置は、
前記産業用機械の各軸の座標値を変数として、第２の座標系における第１の座標系の位置及び／又は姿勢を表す変換情報を計算する変換情報計算部と、
前記変換情報を前記画像情報制御装置に通知する変換情報通知部を備え、
前記画像情報制御装置は、
前記変換情報と前記各軸の座標値を用いて、第２の座標系における第１の座標系の位置及び／又は姿勢を計算する座標情報変換部と、
前記表示装置における第３の座標系で、前記第１の座標系における位置及び／又は姿勢を前記タッチパネルに視覚的に表示させるための、位置情報の計算用データを設定する位置情報計算用データ設定部と、
前記位置情報の計算用データを用いて、前記表示装置への前記位置情報の表示用データを計算する位置情報表示用データ計算部と、
前記位置情報の表示用データを前記表示装置に通知する位置情報表示用データ通知部を備える、位置情報表示システム。
【請求項２】
前記位置情報はグリッドを含み、
前記位置情報計算用データ設定部は、
前記タッチパネルからの入力に基づいて前記表示装置に表示する前記グリッドの線を指定するグリッド線指定部と、
前記タッチパネルからの入力に基づいて前記表示装置に表示する前記グリッドの間隔を指定するグリッド間隔指定部とを備え、
前記位置情報計算用データ設定部は、前記グリッド線指定部によって指定された線、及び、前記グリッド間隔指定部によって指定された間隔を、前記位置情報を計算するためのデータとして設定する、請求項１に記載の位置情報表示システム。
【請求項３】
前記画像情報制御装置は、
前記タッチパネルにおいてオペレータによってタッチされた位置を判定する画面上位置判定部と、
前記タッチパネルにおいて、前記位置情報に含まれるグリッドの交点のうち、オペレータによってタッチされた位置に最も近い交点を判定するグリッド交点判定部と、
前記交点の前記第１の座標系における座標値を計算する座標値変換部と、
前記座標値を前記制御装置に通知する座標値通知部とを備える、請求項２に記載の位置情報表示システム。
【請求項４】
前記位置情報はドットを含み、
前記位置情報計算用データ設定部は、
前記タッチパネルからの入力に基づいて前記表示装置に表示する前記ドットの間隔を指定するドット間隔指定部を備え、
前記位置情報計算用データ設定部は、前記ドット間隔指定部によって指定された間隔を、前記位置情報を計算するためのデータとして設定する、請求項１に記載の位置情報表示システム。
【請求項５】
前記画像情報制御装置は、
前記タッチパネルにおいてオペレータによってタッチされた位置を判定する画面上位置判定部と、
前記タッチパネルにおいて、前記位置情報に含まれるドットのうち、オペレータによってタッチされた位置に最も近いドットであるタッチドットを判定するタッチドット判定部と、
前記タッチドットの前記第１の座標系における座標値を計算する座標値変換部と、
前記座標値を前記制御装置に通知する座標値通知部とを備える、請求項４に記載の位置情報表示システム。
【請求項６】
前記座標値通知部は前記座標値を前記表示装置に通知し、前記表示装置は通知された座標値を表示する、請求項３又は５に記載の位置情報表示システム。
【請求項７】
前記変換情報算出装置は、
前記産業用機械の機械構成を示す、ノードで構成されるグラフを生成するグラフ生成部と、
前記グラフに制御点及び座標系を挿入する制御点座標系挿入部と、
座標系として選択できるノード情報を前記画像情報制御装置に通知するノード情報通知部とを備え、
前記画像情報制御装置は、
表示する座標系に対応するノードを選択するノード選択部と、
選択されたノードを前記変換情報算出装置の前記変換情報計算部に通知する選択ノード通知部とを備え、
前記変換情報計算部は、選択したノードに対応する座標系における前記位置及び／又は位置を表す変換情報を計算する、請求項１〜４６のいずれか１項に記載の位置情報表示システム。
【請求項８】
前記グラフ生成部によって生成されるグラフにはカメラに対応するノードが含まれ、
前記変換情報は、カメラに対応するノードから表示対象のノードへの前記グラフにおける経路上の制御軸ノードの座標値を変数として含み、前記グラフを元に、カメラ座標系における、表示対象の各ノードの位置及び／又は姿勢を計算する変換情報である、請求項５７に記載の位置情報表示システム。
【請求項９】
前記グラフ生成部によって生成されるグラフにはマーカに対応するノードが含まれ、
前記変換情報は、マーカに対応するノードから表示対象のノードへの前記グラフにおける経路上の制御軸ノードの座標値を変数として含み、前記グラフを元に、マーカ座標系における、表示対象の各ノードの位置及び／又は姿勢を計算する変換情報である、請求項５７に記載の位置情報表示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置情報表示システムに関する。
【背景技術】
【０００２】
オペレータが数値制御装置に対して位置情報を指定する方法として、数値制御装置に備わるＭＤＩキー等を用いて座標値を入力する方法がある。
マニュアル操作で軸を操作する場合、ＭＤＩ運転や手動での数値指令によって、座標値を入力することで、数値制御装置に軸の移動先等を教示する。
ただし、直接数値を入力する方法は、直感的な操作ではないため使い勝手が悪い。
【０００３】
そのため、位置情報を指定せずに軸を操作する方法として、ジョグ送りやハンドル送り等の方法がある。これらの方法においては、工作機械の加工エリアと数値制御装置の画面に表示される座標値とを確認することによる、直感的な操作が可能である。
【０００４】
しかしながら、加工エリアと数値操作画面を交互に確認する必要がある点や、そもそも加工エリアが離れている場合に操作できない点等の問題がある。
【０００５】
この問題に関して、特許文献１では、機械内を撮影するカメラ画像を表示したタッチパネル上でのタッチ操作による軸操作が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−１５７４００号公報
【非特許文献】
【０００７】
【非特許文献１】「マーカー追跡に基づく拡張現実感システムとそのキャリブレーション」、［ｏｎｌｉｎｅ］、［平成２８年１１月２７日検索］、インターネット〈ＵＲＬ：http://intron.kz.tsukuba.ac.jp/tvrsj/4.4/kato/p-99_VRSJ4_4.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に開示される技術により、タッチパネル上での直感的な操作が可能になるが、正確な位置を指定して移動させることが難しかったり、例えば画面上でジョグ送りする際、長押しが必要である等、操作が簡便ではなかったりする問題がある。また、ワークが移動する機械におけるワーク座標系等の、カメラとの位置関係が変化する座標系での位置指定はできなかった。
【０００９】
本発明は、産業用機械を制御する際、タッチパネル上で正確且つ簡便に位置指定することが可能な位置情報表示システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
（１）  本発明に係る位置情報表示システムは、産業用機械（例えば、後述の「工作機械４００」）の制御装置（例えば、後述の「数値制御装置１５０」）と、異なる座標系の間での変換情報を算出する変換情報算出装置（例えば、後述の「変換情報算出装置１００」）と、タッチパネルを有する表示装置に位置情報を表示させる画像情報制御装置（例えば、後述の「画像情報制御装置２００」）とを備える位置情報表示システム（例えば、後述の「位置情報表示システム１０」）であって、前記制御装置は、前記産業用機械の各軸の座標値を前記画像情報制御装置に通知する座標情報通知部（例えば、後述の「座標情報通知部１６１」）を備え、前記変換情報算出装置は、前記産業用機械の各軸の座標値を変数として、第２の座標系における第１の座標系の位置及び／又は姿勢を表す変換情報を計算する変換情報計算部（例えば、後述の「変換情報計算部１１１」）と、前記変換情報を前記画像情報制御装置に通知する変換情報通知部（例えば、後述の「変換情報通知部１１２」）を備え、前記画像情報制御装置は、前記変換情報と前記各軸の座標値を用いて、第２の座標系における第１の座標系の位置及び／又は姿勢を計算する座標情報変換部（例えば、後述の「座標情報変換部２１１」）と、前記表示装置における第３の座標系で、前記第１の座標系における位置及び／又は姿勢を前記タッチパネルに視覚的に表示させるための、位置情報の計算用データを設定する位置情報計算用データ設定部（例えば、後述の「位置情報計算用データ設定部２１２」）と、前記位置情報の計算用データを用いて、前記表示装置への前記位置情報の表示用データを計算する位置情報表示用データ計算部（例えば、後述の「位置情報表示用データ計算部２１３」）と、前記位置情報の表示用データを前記表示装置に通知する位置情報表示用データ通知部（例えば、後述の「位置情報表示用データ通知部２１４」）を備える。
【００１１】
（２）  （１）の位置情報表示システムにおいて、前記位置情報はグリッドを含み、前記位置情報計算用データ設定部は、前記タッチパネルからの入力に基づいて前記表示装置に表示する前記グリッドの線を指定するグリッド線指定部（例えば、後述の「グリッド線指定部２１２ａ」）と、前記タッチパネルからの入力に基づいて前記表示装置に表示する前記グリッドの間隔を指定するグリッド間隔指定部（例えば、後述の「グリッド間隔指定部２１２ｂ」）とを備え、前記位置情報計算用データ設定部は、前記グリッド線指定部によって指定された線、及び、前記グリッド間隔指定部によって指定された間隔を、前記位置情報を計算するためのデータとして設定してもよい。
【００１２】
（３）  （２）の位置情報表示システムにおいて、前記画像情報制御装置は、前記タッチパネルにおいてオペレータによってタッチされた位置を判定する画面上位置判定部（例えば、後述の「画面上位置判定部２１５」）と、前記タッチパネルにおいて、前記位置情報に含まれるグリッドの交点のうち、オペレータによってタッチされた位置に最も近い交点を判定するグリッド交点判定部（例えば、後述の「グリッド交点判定部２１６」）と、前記交点の前記第１の座標系における座標値を計算する座標値変換部（例えば、後述の「座標値変換部２１７」）と、前記座標値を前記制御装置に通知する座標値通知部（例えば、後述の「座標値通知部２１８」）とを備えてもよい。
【００１３】
（４）  （１）の位置情報表示システムにおいて、前記位置情報はドットを含み、前記位置情報計算用データ設定部は、前記タッチパネルからの入力に基づいて前記表示装置に表示する前記ドットの間隔を指定するドット間隔指定部（例えば、後述の「ドット間隔指定部２１２ｃ」）を備え、前記位置情報計算用データ設定部は、前記ドット間隔指定部によって指定された間隔を、前記位置情報を計算するためのデータとして設定してもよい。
【００１４】
（５）  （４）の位置情報表示システムにおいて、前記画像情報制御装置は、前記タッチパネルにおいてオペレータによってタッチされた位置を判定する画面上位置判定部と、前記タッチパネルにおいて、前記位置情報に含まれるドットのうち、オペレータによってタッチされた位置に最も近いドットであるタッチドットを判定するタッチドット判定部（例えば、後述の「タッチドット判定部２１６ｃ」）と、前記タッチドットの前記第１の座標系における座標値を計算する座標値変換部と、前記座標値を前記制御装置に通知する座標値通知部とを備えてもよい。
【００１５】
（６）  （３）及び（５）の位置情報表示システムにおいて、前記座標値通知部は前記座標値を前記表示装置に通知し、前記表示装置は通知された座標値を表示してもよい。
【００１６】
（７）  （１）〜（６）の位置情報表示システムにおいて、前記変換情報算出装置は、前記産業用機械の機械構成を、ノードで構成されるグラフを生成するグラフ生成部（例えば、後述の「グラフ生成部１１３」）と、前記グラフに制御点及び座標系を挿入する制御点座標系挿入部（例えば、後述の「制御点座標系挿入部１１４」）と、座標系として選択できるノード情報を前記画像情報制御装置に通知するノード情報通知部（例えば、後述の「ノード情報通知部１１５」）とを備え、前記画像情報制御装置は、表示する座標系に対応するノードを選択するノード選択部（例えば、後述の「ノード選択部２１９」）と、選択されたノードを前記変換情報算出装置の前記変換情報計算部に通知する選択ノード通知部（例えば、後述の「選択ノード通知部２２０」）とを備え、前記変換情報計算部は、選択したノードに対応する座標系における前記位置及び／又は位置を表す変換情報を計算してもよい。
【００１７】
（８）  （７）の位置情報表示システムにおいて、前記グラフ生成部によって生成されるグラフにはカメラに対応するノードが含まれ、前記変換情報は、カメラに対応するノードから表示対象のノードへの前記グラフにおける経路上の制御軸ノードの座標値を変数として含み、前記グラフを元に、カメラ座標系における、表示対象の各ノードの位置及び／又は姿勢を計算する変換情報であってもよい。
【００１８】
（９）  （７）の位置情報表示システムにおいて、前記グラフ生成部によって生成されるグラフにはマーカに対応するノードが含まれ、前記変換情報は、マーカに対応するノードから表示対象のノードへの前記グラフにおける経路上の制御軸ノードの座標値を変数として含み、前記グラフを元に、マーカ座標系における、表示対象の各ノードの位置及び／又は姿勢を計算する変換情報であってもよい。
【発明の効果】
【００１９】
本発明によれば、産業用機械を制御する際、タッチパネル上で正確且つ簡便に位置指定することが可能な位置情報表示システムを提供することが可能となる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１実施形態に係る位置情報表示システムの全体構成を示す図である。
【図２】本発明の第１実施形態に係る位置情報表示システムに含まれる位置情報計算用データ設定部の構成を示す図である。
【図３Ａ】本発明の第１実施形態に係る位置情報表示システムの動作を示すフローチャートである。
【図３Ｂ】本発明の第１実施形態に係る位置情報表示システムの動作を示すフローチャートである。
【図４Ａ】本発明の第１実施形態に係る位置情報表示システムにおけるワーク座標系、カメラ座標系、スクリーン座標系の対応関係を示す図である。
【図４Ｂ】本発明の第１実施形態に係る位置情報表示システムにおけるワーク座標系、カメラ座標系、スクリーン座標系の対応関係を示す図である。
【図５】本発明の第１実施形態に係る位置情報表示システムにおける表示画面の例を示す図である。
【図６】本発明の第２実施形態に係る位置情報表示システムの全体構成を示す図である。
【図７】本発明の第２実施形態における機械構成木の生成方法の説明図である。
【図８】本発明の第２実施形態における機械構成木の生成方法の説明図である。
【図９】本発明の第２実施形態における機械構成木の生成方法の説明図である。
【図１０】本発明の第２実施形態における機械構成木の生成方法を示すフローチャートである。
【図１１Ａ】本発明の第２実施形態における機械の構成要素の親子関係の説明図である。
【図１１Ｂ】本発明の第２実施形態における機械の構成要素の親子関係の説明図である。
【図１２Ａ】ユニットを機械構成木に挿入する方法の説明図である。
【図１２Ｂ】ユニットを機械構成木に挿入する方法の説明図である。
【図１２Ｃ】ユニットを機械構成木に挿入する方法の説明図である。
【図１３】本発明の第２実施形態に係る機械構成の例を示す図である。
【図１４Ａ】機械構成木の生成対象となる機械の例を示す図である。
【図１４Ｂ】機械構成木の生成対象となる機械に対応する機械構成木の例を示す図である。
【図１５】本発明の第２実施形態において、機械の各ノードに座標系及び制御点が挿入された例を示す図である。
【図１６】本発明の第２実施形態における、座標系及び制御点が挿入された機械構成木の例を示す図である。
【図１７Ａ】本発明の第２実施形態において、各ノードにオフセット及び姿勢マトリクスが挿入される機械の例を示す図である。
【図１７Ｂ】本発明の第２実施形態において、機械の各ノードにオフセット及び姿勢マトリクスが挿入された例を示す図である。
【図１８】本発明の第２実施形態において、機械構成木に制御点を挿入する動作を示すフローチャートである。
【図１９】本発明の第２実施形態における、座標系及び制御点が挿入された機械構成木の例を示す図である。
【図２０】本発明の第２実施形態において、変換情報を生成する際に用いる情報の例を示す図である。
【図２１】本発明の第２実施形態において、変換情報を生成する際に用いる情報の例を示す図である。
【図２２Ａ】本発明の第２実施形態に係る、位置情報表示方法の動作フローを示す図である。
【図２２Ｂ】本発明の第２実施形態に係る、位置情報表示方法の動作フローを示す図である。
【図２３】本発明の第２実施形態における、カメラノードを含む機械構成木の例を示す図である。
【図２４】本発明の第３実施形態に係る位置情報表示システムの全体構成を示す図である。
【図２５】本発明の第３実施形態において、変換情報を生成する際に用いる情報の例を示す図である。
【図２６】本発明の第３実施形態において、変換情報を生成する際に用いる情報の例を示す図である。
【図２７Ａ】本発明の第３実施形態に係る、位置情報表示方法の動作フローを示す図である。
【図２７Ｂ】本発明の第３実施形態に係る、位置情報表示方法の動作フローを示す図である。
【図２８】本発明の第３実施形態に係る、マーカノードを含む機械構成木の例を示す図である。
【図２９】マーカ座標系及びカメラ座標系と変換情報との関係を示す図である。
【図３０Ａ】本発明の第３実施形態におけるマーカの付加位置の例を示す図である。
【図３０Ｂ】本発明の第３実施形態においてマーカノードが追加された機械構成木の例を示す図である。
【図３１Ａ】本発明の第３実施形態におけるマーカの付加位置の例を示す図である。
【図３１Ｂ】本発明の第３実施形態においてマーカノードが追加された機械構成木の例を示す図である。
【図３２】マーカ座標系が複数ある場合のマーカ座標系及びカメラ座標系と変換情報との関係を示す図である。
【発明を実施するための形態】
【００２１】
＜１  第１実施形態＞
＜１．１  位置情報表示システムの構成＞
次に、本発明の第１実施形態について図面を参照して詳細に説明する。まず、図１を参照して本実施形態全体の構成について説明をする。
【００２２】
本実施形態に係る位置情報表示システム１０は、変換情報算出装置１００、数値制御装置１５０、画像情報制御装置２００、表示装置３００及び工作機械４００を備える。
【００２３】
変換情報算出装置１００は、工作機械４００の各軸の座標値を変数として、カメラ座標系における、工作機械４００内のワークや工具等の位置及び／又は姿勢を表す変換情報を計算し、画像情報制御装置２００に通知する。変換情報算出装置１００は、この変換情報として例えば変換行列を算出してもよい。
変換情報算出装置１００の詳細な構成については、以下の＜１．２  変換情報算出装置の構成＞で後述する。
【００２４】
数値制御装置１５０は、一般的な数値制御装置としての機能を備え、工作機械４００と通信可能に接続されている。そして、数値制御装置１５０は、数値制御装置１５０自身に組み込まれた加工プログラムに基づいて出力される各制御軸の移動量により工作機械４００を制御して、ワークを加工する。
【００２５】
また、数値制御装置１５０は、画像情報制御装置２００に対して、加工プログラムに基づいて出力される各制御軸の座標値を出力する。
数値制御装置１５０の詳細な構成については、以下の＜１．３  数値制御装置の構成＞
で後述する。
【００２６】
画像情報制御装置２００は、座標系とグリッドを含む位置情報の表示位置及び表示姿勢を算出することにより、後述の表示装置３００に、位置情報を表示させるための制御を行う。
画像情報制御装置２００の詳細な構成については、以下の＜１．４  画像情報制御装置の構成＞で後述する。
【００２７】
表示装置３００は、タッチパネルを有する一般的な表示装置であり、座標系とグリッドを含む位置情報と、その表示位置及び表示姿勢を、画像情報制御装置２００から取得する。そして、この取得した情報に基づいて、表示装置３００自身が備えるスクリーン画面としてのタッチパネルに位置情報を表示する。この取得した情報は、後述の工作機械４００に備わるカメラ４１０を基準とする、カメラ座標系に対応したものとなっている。
また、表示装置３００にはタッチパネルが備わり、オペレータによるタッチパネルからの入力値によって指定されるグリッド線、グリッドの間隔、グリッド上でのタッチ位置等が、画像情報制御装置２００に出力される。
【００２８】
工作機械４００は、一般的な工作機械であり、数値制御装置１５０から出力される各制御軸の移動量に応じて各制御軸を移動・回転させる。工作機械４００は、例えば、旋盤、フライス盤、放電加工機、研削盤、マシニングセンタ、レーザー加工機等であってよい。
【００２９】
また、工作機械４００はカメラ４１０を備え、撮像により取得した情報を画像情報制御装置２００に対して出力する。
【００３０】
本実施形態では、このような構成により、表示装置３００のスクリーン画面としてのタッチパネルにグリッドが描画され、描画されるグリッド線をオペレータが選択したり、グリッド間隔をオペレータが入力したりすることが可能となる。更に、表示装置３００のタッチパネル上でオペレータによってタッチされた位置に最も近いグリッド交点の座標値を表示し、この座標値を、画像情報制御装置２００から数値制御装置１５０に通知することが可能となる。これにより、オペレータはワークや工具の正確な位置を直感的に指定できるようになる。
【００３１】
なお、図１に示した構成はあくまで一例である。例えば、表示装置３００は、数値制御装置１５０に組み込まれて一体化されていてもよく、あるいはタブレット型の端末により実現するようにしてもよい。また、変換情報算出装置１００の機能の一部又は全部を数値制御装置１５０や画像情報制御装置２００に搭載するようにしてもよい。また、画像情報制御装置２００の機能の一部又は全部を数値制御装置１５０や表示装置３００に搭載するようにしてもよい。また、画像情報制御装置２００は、単独の装置により実現してもよいが複数の装置の組み合わせにより実現してもよい。また、画像情報制御装置２００は、数値制御装置１５０や工作機械４００の近傍に設置されている装置により実現してもよいが、数値制御装置１５０や工作機械４００とネットワークを介して遠距離に設置されているサーバ装置等で実現してもよい。更に、各通信接続は有線接続であっても無線接続であってもよい。例えば、図中では、変換情報算出装置１００、数値制御装置１５０、及び画像情報制御装置２００の通信接続がイーサネット(Ｅｔｈｅｒｎｅｔ（登録商標））に準拠して有線接続により行われる例を記載しているが、かかる接続は無線接続であってもよい。
【００３２】
＜１．２  変換情報算出装置の構成＞
変換情報算出装置１００は、制御部１１０を備え、制御部１１０は、変換情報計算部１１１、及び変換情報通知部１１２を備える。
【００３３】
制御部１１０は、変換情報算出装置１００を全体的に制御するプロセッサである。この制御部１１０は、ＲＯＭ（不図示）に格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、該システムプログラム及びアプリケーションプログラムに従って、制御部１１０が備える変換情報計算部１１１、及び変換情報通知部１１２の機能を実現する。
【００３４】
変換情報計算部１１１は、工作機械４００の各軸の座標値を変数として、カメラ座標系における位置及び／又は姿勢を表す変換情報を計算する。なお、この変換情報は、マトリクス形式であってもよく、ベクトル形式であってもよく、ロール・ピッチ・ヨー形式であってもよい。
【００３５】
変換情報通知部１１２は、変換情報計算部１１１が計算した変換情報を、画像情報制御装置２００の座標情報変換部２１１に通知する。
【００３６】
＜１．３  数値制御装置の構成＞
数値制御装置１５０は制御部１６０を備え、制御部１６０は座標情報通知部１６１とサーボモータ制御部１６２をと備える。
【００３７】
制御部１６０は、数値制御装置１５０を全体的に制御するプロセッサである。この制御部１６０は、ＲＯＭ（不図示）に格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、該システムプログラム及びアプリケーションプログラムに従って、制御部１６０が備える座標情報通知部１６１、及びサーボモータ制御部１６２の機能を実現する。
【００３８】
座標情報通知部１６１は、稼働中の工作機械４００の座標情報を、画像情報制御装置２００の座標情報変換部２１１に通知する。この通知は定期的に実施されてもよい。
サーボモータ制御部１６２は、制御部１６０からの各軸の移動指令量を受けて、各軸の指令をサーボモータ（不図示）に出力する。
【００３９】
なお、数値制御装置１５０は、工作機械４００を数値制御するために、通常の数値制御装置が備えるその他の構成要素も備えるが、その説明は省略する。
【００４０】
＜１．４  画像情報制御装置の構成＞
画像情報制御装置２００は制御部２１０を備え、制御部２１０は、座標情報変換部２１１、位置情報計算用データ設定部２１２、位置情報表示用データ計算部２１３、位置情報表示用データ通知部２１４、画面上位置判定部２１５、グリッド交点判定部２１６、座標値変換部２１７、及び座標値通知部２１８を備える。
【００４１】
制御部２１０は、画像情報制御装置２００を全体的に制御するプロセッサである。この制御部２１０は、ＲＯＭ（不図示）に格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、該システムプログラム及びアプリケーションプログラムに従って、制御部２１０が備える座標情報変換部２１１、位置情報計算用データ設定部２１２、位置情報表示用データ計算部２１３、位置情報表示用データ通知部２１４、画面上位置判定部２１５、グリッド交点判定部２１６、座標値変換部２１７、及び座標値通知部２１８の機能を実現する。
【００４２】
座標情報変換部２１１は、変換情報算出装置１００から受け取った変換情報と、数値制御装置１５０から定期的に通知される各制御軸の座標値から、座標系とグリッドを含む位置情報の、カメラ座標系での位置及び／又は姿勢を計算する。すなわち、座標情報変換部２１１は、数値制御装置１５０から通知された各制御軸の座標値から、カメラ座標系での位置及び／又は姿勢を計算する。
【００４３】
位置情報計算用データ設定部２１２は、表示装置３００のスクリーン画面としてのタッチパネルで、カメラ座標系における、座標系とグリッドを含む位置情報の位置及び／又は姿勢を視覚的に表示させるための計算用データを設定する。
【００４４】
図２は、位置情報計算用データ設定部２１２の構成を示す。位置情報計算用データ設定部２１２は、グリッド線指定部２１２ａとグリッド間隔指定部２１２ｂを備える。
【００４５】
グリッド線指定部２１２ａは、表示装置３００のタッチパネルからの入力に基づいて、表示装置３００に表示するグリッドの線を指定する。具体的には、例えばオペレータがＸＹ軸平面の表示を選択した場合には、グリッド線指定部２１２ａはＸ軸及びＹ軸を指定する。オペレータがＹＺ軸平面の表示を選択した場合には、グリッド線指定部２１２ａはＹ軸及びＺ軸を指定する。オペレータがＸＺ軸平面の表示を選択した場合には、グリッド線指定部２１２ａはＸ軸及びＺ軸を指定する。
【００４６】
グリッド間隔指定部２１２ｂは、表示装置３００のタッチパネルからの入力に基づいて、表示装置３００に表示するグリッドの間隔を指定する。
【００４７】
位置情報表示用データ計算部２１３は、表示装置３００のスクリーン画面としてのタッチパネルに描画する位置情報としての座標系とグリッドを表示させるための表示用データを計算する。
【００４８】
位置情報表示用データ通知部２１４は、位置情報としての座標系とグリッドを表示させるための表示用データを表示装置３００に通知する。この位置情報表示用データには、座標系とグリッドを含む位置情報の形状等と、この位置情報のスクリーン座標系の座標値に変換された表示位置及び表示姿勢等が含まれる。
【００４９】
画面上位置判定部２１５は、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置を判定する。
【００５０】
グリッド交点判定部２１６は、表示装置３００のスクリーン画面としてのタッチパネルに表示された位置情報に含まれるグリッドの交点のうち、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置に最も近い交点を判定する。
【００５１】
座標値変換部２１７は、グリッド交点判定部２１６によって判定された交点の、ワーク座標系における座標値を計算する。
【００５２】
座標値通知部２１８は、座標値変換部２１７によって計算された座標値を、数値制御装置１５０に通知する。
更に、座標値通知部２１８は、上記の座標値を表示装置３００にも出力する。表示装置３００は、表示装置３００のスクリーン画面としてのタッチパネルに表示されたグリッドにおいて、オペレータによってタッチされた位置に最も近い交点が、上記の座標値を有することを表示する。
【００５３】
＜１．５  位置情報表示システムの動作＞
図３Ａ及び図３Ｂは、位置情報表示システム１０の動作を示すフローチャートである。
【００５４】
ステップＳ１において、変換情報算出装置１００（変換情報計算部１１１）は、工作機械４００の各軸の座標値を変数として、カメラ座標系における位置情報の位置及び／又は姿勢を表す変換情報を計算する。
【００５５】
ステップＳ２において、変換情報算出装置１００（変換情報通知部１１２）は、変換情報算出装置１００（変換情報計算部１１１）が計算した変換情報を、画像情報制御装置２００（座標情報変換部２１１）に通知する。
【００５６】
ステップＳ３において、数値制御装置１５０（座標情報通知部１６１）は、稼働中の工作機械４００の座標情報を、リアルタイムで画像情報制御装置２００（座標情報変換部２１１）に通知する。図３Ａ内ではこの通知は１回のみ実行されることが示されているが、定期的に実行されてもよい。
【００５７】
ステップＳ４において、画像情報制御装置２００（座標情報変換部２１１）は、変換情報算出装置１００から受け取った変換情報と、数値制御装置１５０から定期的に通知される各制御軸の座標値から、座標系とグリッドを含む位置情報の、カメラ座標系での位置及び／又は姿勢を計算する。すなわち、画像情報制御装置２００（座標情報変換部２１１）は、ワーク座標系での位置及び／又は姿勢をカメラ座標系での位置及び／又は姿勢に変換する。
【００５８】
ステップＳ５において、オペレータは、表示装置３００のタッチパネルから、表示すべきグリッドの線を選択し、グリッド線の間隔を入力する。
【００５９】
ステップＳ６において、画像情報制御装置２００（位置情報計算用データ設定部２１２）は、表示装置３００のスクリーン画面としてのタッチパネルで、カメラ座標系における、座標系とグリッドを含む位置情報の位置及び／又は姿勢を視覚的に表示させるための計算用データを設定する。
【００６０】
ステップＳ７において、画像情報制御装置２００（位置情報表示用データ計算部２１３）は、表示装置３００のスクリーン画面としてのタッチパネルに描画する座標系とグリッドを含む位置情報を表示させるための表示用データを計算する。
【００６１】
ステップＳ８において、画像情報制御装置２００（位置情報表示用データ通知部２１４）は、座標系とグリッドを含む位置情報を表示させるための表示用データを表示装置３００に通知する。
【００６２】
ステップＳ９において、表示装置３００は、画像情報制御装置２００から取得した表示用データに基づいて、座標系とグリッドを含む位置情報を表示する。
図４Ａは、表示装置３００のスクリーン画面としてのタッチパネルにおける座標系とグリッドの描画の例を示す。カメラ座標系におけるワーク座標系の位置／姿勢が分かるので、スクリーン画面としてのタッチパネル上に座標系とグリッドを含む位置情報を描画することが可能となる。
【００６３】
ステップＳ１０において、オペレータは表示装置３００が備えるタッチパネル上の任意の点をタッチする。
【００６４】
ステップＳ１１において、画像情報制御装置２００（画面上位置判定部２１５）は、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置を判定する。
【００６５】
ステップＳ１２において、画像情報制御装置２００（グリッド交点判定部２１６）は、表示装置３００のスクリーン画面としてのタッチパネルに表示された位置情報に含まれるグリッドの交点のうち、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置に最も近い交点を判定する。
【００６６】
ステップＳ１３において、画像情報制御装置２００（座標値変換部２１７）は、グリッド交点判定部２１６によって判定された交点の、ワーク座標系における座標値を計算する。
【００６７】
ステップＳ１４において、画像情報制御装置２００（座標値通知部２１８）は、画像情報制御装置２００（座標値変換部２１７）によって計算された座標値を、数値制御装置１５０と表示装置３００に通知する。
【００６８】
ステップＳ１５において、表示装置３００は、表示装置３００のスクリーン画面としてのタッチパネルに表示されたグリッドにおいて、オペレータによってタッチされた位置に最も近い交点が、上記の座標値を有することを表示する。
図４Ｂは、表示装置３００のスクリーン画面としてのタッチパネルにおけるグリッド交点の例を示す。スクリーン座標系でタッチ位置に最も近いグリッド交点を求め、求めたグリッド交点のワーク座標系での座標値が分かるので、この座標値を数値制御装置１５０に通知することが可能となる。
【００６９】
なお、上記ステップＳ１〜Ｓ１５の順序は、必要に応じて適宜入れ替えることが可能である。
【００７０】
上記のステップＳ４において、画像情報制御装置２００は、ワーク座標系における位置・姿勢から、カメラ座標系での位置・姿勢を求める。より具体的には、画像情報制御装置２００は、ワーク座標系からカメラ座標系への変換情報を求める処理を行い、この変換情報により、座標系とグリッドを含む位置情報の位置・姿勢をワーク座標系からカメラ座標系の値へ変換する。位置情報表示用データは、ここで求めたワーク座標系及びカメラ座標系の位置・姿勢に加え、座標系とグリッドを含む位置情報の形状等のデータを含む。位置情報表示用データは表示装置３００に出力され、出力されたデータを用いることにより、表示装置３００は適切な位置に座標系とグリッドを含む位置情報を描画することが可能となる。
【００７１】
＜１．６  位置情報表示システムの表示例＞
図５は、表示装置３００での画面表示の例を示す。図５の例においては、ワークが表示され、このワークを基準とするワーク座標系のうち、ＸＹ座標のグリッドが表示される。画面右下には、現在表示されている座標系がワーク座標系であることが明示される。また、「ＸＹ」の表示によって、表示グリッドが「ＸＹ座標系」であることが示され、「Ｚ２０」の表示によって、どの座標値の平面が表示されているかが示される。また、「間隔１０．」の表示によって、グリッド線の間隔が１０であることが示される。
なお、「ＸＹ  Ｚ２０．」の欄にオペレータがタッチすることにより、表示グリッドを選択し、表示する平面を指定することが可能である。また、「間隔１０．」の欄にオペレータがタッチすることにより、グリッドの間隔を入力することが可能である。
更に、画面の左上には、オペレータによってタッチされた位置に最も近い交点が、座標値（−２０．，０．，２０．）を有することが表示される。
【００７２】
＜１．７  第１実施形態が奏する効果＞
第１実施形態に係る位置情報表示システム１０において、画像情報制御装置２００は、変換情報と工作機械の各軸の座標値を用いて、カメラ座標系における位置及び／又は姿勢を計算する座標情報変換部２１１と、表示装置３００におけるスクリーン座標系における位置及び／又は姿勢を視覚的に表示させるための位置情報の計算用データを設定する位置情報計算用データ設定部２１２と、表示装置３００への位置情報の表示用データを計算する位置情報表示用データ計算部２１３と、位置情報の表示用データを表示装置３００に通知する位置情報表示用データ通知部２１４を備える。
これにより、表示装置３００の画面上に座標系とグリッドを描画することが可能となる。延いては、表示装置３００のタッチパネル上で、正確且つ簡便に位置指定することにより、直感的な操作で数値制御装置に正確な座標値を指令することが可能となる。また、手動運転と組み合わせることで、直感的且つ正確な軸操作が可能となる。
【００７３】
また、位置情報表示システム１０において、位置情報計算用データ設定部２１２は、タッチパネルからの入力に基づいて表示装置３００に表示するグリッドの線を指定したり、グリッド線の間隔を指定したりする。
これにより、オペレータは、表示するグリッド線を選択したりグリッド間隔を入力したりすることが可能となる。
【００７４】
また、位置情報表示システム１０において、画像情報制御装置２００は、タッチパネルにおいてオペレータによってタッチされた位置を判定し、グリッドの交点のうち、オペレータによってタッチされた位置に最も近い交点を判定し、この交点のワーク座標系における座標値を計算し、計算した座標値を数値制御装置１５０に通知する。
これにより、オペレータがタッチパネル上でタッチされた位置に最も近いグリッド交点の座標値を数値制御装置１５０に通知することが可能となる。延いては、数値制御装置１５０が、通知された座標値を手動運転の移動終点にする等の応用も可能となる。
【００７５】
＜２  第２実施形態＞
＜２．１  位置情報表示システムの構成＞
次に、本発明の第２実施形態について図面を参照して詳細に説明する。
図６は、本発明の第２実施形態に係る位置情報表示システム１０Ａの全体構成を示す。なお、以下では、位置情報表示システム１０Ａが備える構成要素のうち、第１実施形態に係る位置情報表示システム１０と同一の構成要素については同一の符号を用いて示すと共にその説明は省略し、主として位置情報表示システム１０と相違する構成要素について説明する。
【００７６】
なお、本発明の第２実施形態に係る位置情報表示システム１０Ａは、後述の機械構成木を利用することにより、表示装置３００のタッチパネルにおいて、オペレータが任意の座標系を選択できる態様である。この機能を実現するため、位置情報表示システム１０Ａは、位置情報表示システム１０が備える構成要素に加えて、更なる構成要素を備える。
【００７７】
＜２．２  変換情報算出装置の構成＞
変換情報算出装置１００Ａは制御部１１０Ａを備え、制御部１１０Ａは、第１実施形態に係る制御部１１０が備える構成要素に加えて、グラフ生成部１１３、制御点座標系挿入部１１４、ノード情報通知部１１５を備え、グラフ生成部１１３はノード追加部１１６を備える。また、制御部１１０Ａは、変換情報計算部１１１の代わりに変換情報計算部１１１Ａを備える。
【００７８】
グラフ生成部１１３は、カメラ４１０を含む工作機械４００の機械構成をグラフ形式で生成する。更に、グラフ生成部１１３が有するノード追加部１１６は、生成したグラフにノードを追加する。それらの詳細な動作については、以下の＜２．４  機械構成木の生成＞で詳述する。
【００７９】
制御点座標系挿入部１１４は、機械構成のグラフに対し、制御点及び座標系を挿入する。その詳細な動作については、以下の＜２．５  制御点と座標値の自動挿入＞で詳述する。
【００８０】
ノード情報通知部１１５は、画像情報制御装置２００Ａに対し、座標系として選択できるノードの情報を通知する。
【００８１】
変換情報計算部１１１Ａは、後述のように、画像情報制御装置２００Ａの選択ノード通知部２２０から、表示装置３００で表示する座標系に対応するノードを通知された後、カメラノードから表示対象のノードへの経路上の制御軸ノードの座標値を変数として含む変換情報であって、上記のグラフを元に、カメラノードの座標系における、各表示対象のノードの位置及び／又は姿勢を計算するための変換情報を計算する。変換情報計算部１１１Ａによる具体的な変換情報計算方法は、以下の＜２．６  変換情報の計算＞で説明する。
なお、上記の変換情報は、マトリクス形式であってもよく、ベクトル形式であってもよく、ロール・ピッチ・ヨー形式であってもよい。
【００８２】
＜２．３  画像情報制御装置の構成＞
画像情報制御装置２００Ａは制御部２１０Ａを備え、制御部２１０Ａは、第１実施形態に係る制御部２１０が備える構成要素に加えて、ノード選択部２１９及び選択ノード通知部２２０を備える。
【００８３】
ノード選択部２１９は、表示装置３００で表示する座標系に対応するノードを選択する。
選択ノード通知部２２０は、ノード選択部２１９によって選択されたノードを変換情報算出装置１００Ａの変換情報計算部１１１に通知する。
【００８４】
なお、ノード選択部２１９、選択ノード通知部２２０、座標情報変換部２１１Ａ、位置情報計算用データ設定部２１２、位置情報表示用データ計算部２１３、位置情報表示用データ通知部２１４による、座標系とグリッドを含む位置情報の表示方法については、以下の＜２．７  位置情報の表示方法＞で詳述する。
【００８５】
＜２．４  機械構成木の生成＞
本発明の実施形態に係る変換情報算出装置１００Ａは、最初に、機械構成を表すグラフを生成する。グラフの一例として機械構成木を生成する生成方法について、図７〜図１３を参照しながら詳述する。
【００８６】
例として、図７に示す機械の構成を表現する機械構成木の生成方法について説明する。図７の機械においては、Ｚ軸に対して垂直にＸ軸が設定され、Ｘ軸には工具１が設置され、Ｚ軸には工具２が設置されているとする。一方で、Ｙ軸上にＢ軸が設定され、Ｂ軸上にＣ軸が設定され、Ｃ軸にはワーク１とワーク２が設置されているとする。この機械構成を機械構成木として表現する方法は、以下の通りである。
【００８７】
まず、図８に示すように、原点２０１とノード２０２Ａ〜２０２Ｉのみを配置する。この段階では、原点２０１とノード２０２、及びノード２０２間でのつながりは持たず、原点及びノードの各々の名称も設定されていない。
【００８８】
次に、各軸の軸名称（軸型）、各工具の名称、各ワークの名称、各原点の名称、各軸の物理軸番号（軸型）を設定する。次に、各軸の親ノード（軸型）、各工具の親ノード、各ワークの親ノードを設定する。最後に、各軸の交叉オフセット（軸型）、各工具の交叉オフセット、各ワークの交叉オフセットを設定する。その結果、図９に示す機械構成木が生成される。
【００８９】
なお、機械構成木の各ノードは、上記の各情報に限られず、例えば、識別子（名称）、自身の親ノードの識別子、自身を親とする全ての子ノードの識別子、親ノードに対する相対オフセット（交叉オフセット）、親ノードに対する相対座標値、親ノードに対する相対移動方向（単位ベクトル）、ノード種別（直線軸／回転軸／ユニット（後述）／制御点／座標系／原点等）、物理軸番号、直交座標系と物理座標系の変換式に係る情報を有してもよく、あるいは、有さなくてもよい。
【００９０】
このように各ノードに値を設定していくことにより、変換情報算出装置１００Ａ内に機械構成木状のデータ構造を有するデータを生成する。更に、別の機械（又はロボット）を追加する場合も、原点を追加し、更にノードを追加することができる。
【００９１】
上記の機械構成木生成方法、とりわけ各ノードへの各値の設定方法を一般化したフローチャートを図１０に示す。
【００９２】
ステップＳ２１において、グラフ生成部１１３は、ノードに対して設定するパラメータの値を受け取る。
ステップＳ２２において、設定されたパラメータの項目が「自身の親ノード」の場合（Ｓ２２：ＹＥＳ）には、処理はステップＳ２３に移行する。「自身の親ノード」ではない場合（Ｓ２２：ＮＯ）には、処理はステップＳ２７に移行する。
【００９３】
ステップＳ２３において、パラメータが設定されるノードに、既に親ノードが設定されている場合（Ｓ２３：ＹＥＳ）には、処理はステップＳ２４に移行する。親ノードが設定されていない場合（Ｓ２３：ＮＯ）には、処理はステップＳ２５に移行する。
【００９４】
ステップＳ２４において、グラフ生成部１１３は、パラメータが設定されるノードの、現在の親ノードが持つ「子ノード」の項目から、自身の識別子を削除し、機械構成木を更新する。
【００９５】
ステップＳ２５において、グラフ生成部１１３は、パラメータを設定するノードの該当項目に値を設定する。
【００９６】
ステップＳ２６において、グラフ生成部１１３は、親ノードに対し、「子ノード」の項目に自身の識別子を追加し、機械構成木を更新した後、フローを終了する。
【００９７】
ステップＳ２７において、グラフ生成部１１３は、パラメータを設定するノードの該当項目に値を設定した後、フローを終了する。
【００９８】
上記の機械構成木状のデータ構造を有するデータの生成方法を用いることにより、機械の構成要素同士の親子関係を設定することが可能である。
ここで親子関係とは、例えば図１１Ａのように、２つの回転軸ノード５０４、５０５があったとき、一方のノード５０４の座標値の変化が、他方のノード５０５の幾何的状態（典型的には、位置・姿勢）に対して一方的に影響を及ぼすような関係のことである。この場合ノード５０４、５０５は親子関係にあると呼び、ノード５０４を親、ノード５０５を子と呼ぶ。
しかし、例えば図１１Ｂに示すように、２つの直線軸ノード５０２、５０３と４つのフリージョイント５０１により構成された機械構成においては、ノード５０２、５０３の一方の座標値（長さ）が変わることにより、他方の幾何的状態だけでなく、自身の幾何的状態も変わるような、相互に影響を及ぼす機構が存在する。このような場合は、互いに親であり子、すなわち親子関係が双方向であるとみなすことができる。
【００９９】
このように、あるノードの変化が他のノードに互いに影響し合うような機構については、利便性の観点から、１つのユニットとして捉え、このユニットを機械構成木に挿入することにより全体の機械構成木を生成する。ユニットは、図１２Ａのように二つの接続点５１０及び接続点５２０を持っており、ユニットが図１２Ｂのように機械構成木に挿入された場合、図１２Ｃのように、親ノードは接続点５２０に接続され、また、子ノードは接続点５１０に対して接続される。また、ユニットは、接続点５２０から接続点５１０への変換マトリクスを持っている。この変換マトリクスは、ユニットに含まれる各ノードの座標値によって表される。例えば図１３のような機械構成の場合、接続点５２０における位置・姿勢を表す同次マトリクスをＭＡとし、接続点５１０における位置・姿勢を表す同次マトリクスをＭＢとすると、それらのマトリクス間の変換式はユニットに含まれる各直線軸ノードの座標値ｘ１、ｘ２を用いて以下のように表される。
【数１】
2019212040.tif 000003
【０１００】
この機械構成を表すユニットは上記の［数１］の数式中のＴのような同次変換マトリクスを持つ。同次マトリクスとは、以下の［数２］の数式のように位置・姿勢をまとめて表現できる４×４マトリクスのことである。
【数２】
2019212040.tif 000004
【０１０１】
また、親子関係が相互でない場合であっても、計算処理や設定を簡単にするために、ある複数のノードを予め１つにまとめたユニットを定義し、機械構成木中に構成してもよい。
【０１０２】
上記のように、本実施形態においては、機械構成のグラフは、複数の軸をまとめて１つにしたユニットを構成要素として含むことができる。
【０１０３】
＜２．５  制御点と座標値の自動挿入＞
機械構成上の様々な位置を、制御点として指定すると共に、機械構成上の様々な箇所の座標系を設定するため、上記の＜２．４  機械構成木の生成＞で生成された機械構成木を用いて、以下の方法を実施する。
【０１０４】
例えば、図１４Ａに示すロータリインデックスマシン３５０においては、Ｚ１軸に対して垂直にＸ１軸が設定され、Ｘ１軸に工具１が設置されている。また、Ｚ２軸に対して垂直にＸ２軸が設定され、Ｘ２軸上に工具２が設置されている。更に、テーブルにおいては、Ｃ軸上にＣ１軸とＣ２軸が並列に設定され、Ｃ１軸とＣ２軸の各々にワーク１とワーク２が設置されているとする。この機械構成を機械構成木で表わすと、図１４Ｂに示す機械構成木となる。
【０１０５】
各ワークから機械原点に連なる一連のノードを例に取ると、図１５に示すように、機械原点、Ｃ軸、Ｃ１軸、Ｃ２軸、ワーク１、ワーク２の各々に座標系と制御点を自動挿入する。これを、テーブルに対してのみならず、各工具から機械原点に連なる一連のノード、すなわちＸ１軸、Ｘ２軸、Ｚ１軸、Ｚ２軸、工具１、工具２のすべてに対して実施する。その結果、図１６に示すように、機械構成木を構成するすべてのノードに対して、各々に対応する制御点と座標系が自動挿入される。通常、加工を行う場合にはワークに座標系、工具を制御点として指定する。これにより、例えば、ワーク自身を所定の位置へ移動させるために、ワークに制御点を指定したい場合や、ある工具で別の工具を研磨するために、工具自身に座標系を設定したい場合といった様々な場合に対応することも可能となる。
【０１０６】
また、図１７Ａに示すように、各制御点及び座標系は、オフセットを有する。そのため、ノード中心から離れた点を制御点や座標系原点にすることも可能である。更に、各制御点及び座標系は姿勢マトリクスを持つ。この姿勢マトリクスは、制御点の姿勢マトリクスである場合、制御点の姿勢（向き、傾き）を表し、座標系の姿勢マトリクスの場合、座標系の姿勢を表わす。図１７Ｂに示す機械構成木においては、オフセット及び姿勢マトリクスは、各々が対応するノードに紐づく形で表現される。更に、各制御点及び座標系は、機械構成木のルートまでの経路上に存在するノードの「移動」及び「交叉オフセット」それぞれを加味するか／しないかの情報を持っており、それらを設定できる。
【０１０７】
上記の制御点の自動挿入方法を一般化したフローチャートを図１８に示す。このフローチャートは、詳細には、チャートＡとチャートＢとを含み、後述のように、チャートＡの途中でチャートＢが実行されるという構成となっている。
【０１０８】
まず、チャートＡについて説明する。
ステップＳ３１において、グラフ生成部１１３は、機械構成木を設定する。
ステップＳ３２において、チャートＢを実行し、チャートＡのフローを終了する。
【０１０９】
次に、チャートＢについて説明する。
チャートＢのステップＳ４１において、ノードは制御点・座標系を挿入済である場合（Ｓ４１：ＹＥＳ）には、フローを終了する。ノードに制御点・座標系を挿入済でない場合（Ｓ４１：ＮＯ）には、処理はステップＳ３２に移行する。
【０１１０】
ステップＳ４２において、制御点座標系挿入部１１４は、ノードに制御点・座標系を挿入し、変数ｎを１つスタックする。また、ｎ＝１とする。
【０１１１】
ステップＳ４３において、ノードにｎ番目の子ノードが存在する場合（Ｓ４３：ＹＥＳ）には、処理はステップＳ４４に移行する。ノードにｎ番目の子ノードが存在しない場合（Ｓ４３：ＮＯ）には、処理はステップＳ４６に移行する。
【０１１２】
ステップＳ４４において、ｎ番目の子ノードについて、チャートＢ自身を再帰的に実行する。
【０１１３】
ステップＳ４５において、ｎを１だけインクリメントする。すなわちｎ＝ｎ＋１とし、処理はステップＳ４３に戻る。
【０１１４】
ステップＳ４６において、変数ｎを１つポップし、チャートＢのフローを終了する。
【０１１５】
上記の方法により、制御点座標系挿入部１１４は、機械構成のグラフの各ノードに対し、制御点及び座標系をノードとして挿入する。なお、上記では、制御点及び座標系をノードとして追加する場合の実施例を示したが、図１９に示すように、制御点座標系挿入部１１４は、機械構成のグラフの各ノードに対し、制御点及び座標系を情報として持たせる実施形態も同様に可能である。
【０１１６】
＜２．６  変換情報の計算＞
上記のように、変換情報計算部１１１Ａは、カメラノードから表示対象のノードへの経路上の制御軸ノードの座標値を変数として含む変換情報であって、上記のグラフを元に、カメラノードの座標系における、各表示対象のノードの位置及び／又は姿勢を計算するための変換情報を計算する。この変換情報の計算方法について、図２０〜図２１を参照して詳述する。
【０１１７】
例えば、図２０に示すように、軸ｘ１の上に軸ｘ２が設定され、軸ｘ２の上に軸ｘ３が設定され、以下同様にＮ個のノードが連なり、その末端が軸ｘＮであるとする。更に、軸ｘＮ上の制御点に座標系とグリッドを含む位置情報を表示するものとする。同様に、軸ｙ１の上に軸ｙ２が設定され、軸ｙ２の上に軸ｙ３が設定され、以下同様にＬ個のノードが連なり、その末端が軸ｙＬであるとする。更に、軸ｙＬ上にカメラが設置されているとする。ここで、ｘｉ，ｙｊはノード名称だが、同時に各ノードの座標値も表わすこととする。
【０１１８】
更に、各ノードには図２０に示すオフセット、ノード種別（直線／回転／ユニット／制御点／座標系）、軸方向、姿勢マトリクス、座標値が与えられているとする。
【０１１９】
この時、図２１に示すように、ルート（機械原点）に対する位置情報を表示したい座標系とグリッドを含む位置情報の現在位置・姿勢を表す同次マトリクスＭｏｂｊは、以下の式で求められる。
【数３】
2019212040.tif 000005
ただし、記号の意味は、以下の通りである。
Ｓｘｉ：各ノードによる同次変換マトリクス；
Ｎ：機械構成木のルートから位置情報を表示したい座標系に対応するノードまで連なる一連のノード個数；
Ｍｃｔｒｌ：位置情報を表示したい座標系に対応するノードの親ノードに対する相対オフセット・姿勢の同次マトリクスであり、位置情報を表示したい座標系に対応するノードに定義されたオフセットベクトル・姿勢マトリクスから、上記の［数２］に従って定義される。
【０１２０】
同時変換マトリクスＳｘｉはノードの種別によって変わり、例えば、直線軸の場合は以下のように表される。
【数４】
2019212040.tif 000006
ただし、記号の意味は、以下の通りである。
ｘｉ：ノードｘｉの座標値；
ｏｆｓｘｉ：ノードｘｉの親ノードに対する相対オフセットベクトル；
ｖｘｉ：ノードｘｉの移動方向ベクトル
【０１２１】
また、回転軸の場合は以下のように表される。
【数５】
2019212040.tif 000007
ただし、記号の意味は、以下の通りである。
ｖ１：ノードｘｉの回転軸方向ベクトルの第１成分；
ｖ２：ノードｘｉの回転軸方向ベクトルの第２成分；
ｖ３：ノードｘｉの回転軸方向ベクトルの第３成分
【０１２２】
この時、カメラ座標系上における、位置情報を表示したい座標系とグリッドを含む位置情報の現在位置・姿勢を表す同次マトリクスＸＣは、Ｍｏｂｊを用いて以下の式で求められる。
【数６】
2019212040.tif 000008
ただし、記号の意味は、以下の通りである。
Ｌ：機械構成木のルートからカメラノードまで連なる一連のノード個数；
Ｍｃｏｏｒｄ：カメラの親ノードに対する相対オフセット・姿勢の同次マトリクスであり、カメラノードに定義されたオフセットベクトル・姿勢マトリクスから、上記の［数２］の数式に従って定義される。
【０１２３】
なお、グラフ生成部１１３、ノード情報通知部１１５、変換情報計算部１１１Ａ、変換情報通知部１１２による、座標系とグリッドを含む位置情報の表示方法については、以下の＜２．７  位置情報の表示方法＞で詳述する。
【０１２４】
＜２．７  位置情報の表示方法＞
図２２Ａ及び図２２Ｂは、座標系とグリッドを含む位置情報を表示する際の動作フローを示す。最初に、各ステップの概略について述べる。
【０１２５】
ステップＳ４１において、変換情報算出装置１００Ａ（ノード追加部１１６）は、図２３に示すように、機械構成木に新規ノードとしてカメラノードを追加する。
【０１２６】
ステップＳ４２において、画像情報制御装置２００Ａ（制御部２１０Ａ）は、変換情報算出装置１００Ａから、座標系として選択できるノードの情報を取得する。
【０１２７】
ステップＳ４３において、画像情報制御装置２００Ａ（ノード選択部２１９）は、位置情報を表示する座標系に対応するノードを選択し、画像情報制御装置２００Ａ（選択ノード通知部２２０）は、選択したノードを変換情報算出装置１００Ａに通知する。
【０１２８】
ステップＳ４４において、変換情報算出装置１００Ａ（変換情報計算部１１１Ａ）は、工作機械４００の各軸の座標値を変数として、カメラ座標系における位置情報の位置及び／又は姿勢を求める変換情報を計算する。
【０１２９】
ステップＳ４５において、変換情報算出装置１００Ａ（変換情報通知部１１２）は、変換情報算出装置１００Ａ（変換情報計算部１１１Ａ）が計算した変換情報を、画像情報制御装置２００（座標情報変換部２１１Ａ）に通知する。
【０１３０】
ステップＳ４６において、数値制御装置１５０（座標情報通知部１６１）は、稼働中の工作機械４００の座標情報を、リアルタイムで画像情報制御装置２００Ａ（座標情報変換部２１１Ａ）に通知する。図２２Ａ内ではこの通知は１回のみ実行されることが示されているが、定期的に実行されてもよい。
【０１３１】
ステップＳ４７において、画像情報制御装置２００Ａ（座標情報変換部２１１Ａ）は、変換情報算出装置１００Ａから受け取った変換情報と、数値制御装置１５０から定期的に通知される各制御軸の座標値から、座標系とグリッドを含む位置情報の、カメラ座標系での位置及び／又は姿勢を計算する。
【０１３２】
ステップＳ４８において、画像情報制御装置２００Ａ（位置情報計算用データ設定部２１２）は、カメラ座標系における位置及び／又は姿勢から、座標系の変換により、スクリーン座標系での位置及び／又は姿勢を求める。
【０１３３】
ステップＳ４９において、オペレータは、表示装置３００のタッチパネルから、表示すべきグリッドの線を選択し、グリッド線の間隔を入力する。
【０１３４】
ステップＳ５０において、画像情報制御装置２００Ａ（位置情報計算用データ設定部２１２）は、表示装置３００のスクリーン画面としてのタッチパネルで、スクリーン座標系における、座標系とグリッドを含む位置情報の位置及び／又は姿勢を視覚的に表示させるための計算用データを設定する。
【０１３５】
ステップＳ５１において、画像情報制御装置２００Ａ（位置情報表示用データ計算部２１３）は、表示装置３００のスクリーン画面としてのタッチパネルに描画する座標系とグリッドを含む位置情報を表示させるための表示用データを計算する。
【０１３６】
ステップＳ５２において、画像情報制御装置２００Ａ（位置情報表示用データ通知部２１４）は、座標系とグリッドを含む位置情報を表示させるための表示用データを表示装置３００に通知する。
【０１３７】
ステップＳ５３において、表示装置３００は、画像情報制御装置２００から取得した表示用データに基づいて、座標系とグリッドを含む位置情報を表示する。
【０１３８】
ステップＳ５４において、オペレータは表示装置３００が備えるタッチパネル上の任意の点をタッチする。
【０１３９】
ステップＳ５５において、画像情報制御装置２００（画面上位置判定部２１５）は、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置を判定する。
【０１４０】
ステップＳ５６において、画像情報制御装置２００（グリッド交点判定部２１６）は、表示装置３００のスクリーン画面としてのタッチパネルに表示された位置情報に含まれるグリッドの交点のうち、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置に最も近い交点を判定する。
【０１４１】
ステップＳ５７において、画像情報制御装置２００（座標値変換部２１７）は、グリッド交点判定部２１６によって判定された交点の、ワーク座標系における座標値を計算する。
【０１４２】
ステップＳ５８において、画像情報制御装置２００（座標値通知部２１８）は、画像情報制御装置２００（座標値変換部２１７）によって計算された座標値を、数値制御装置１５０と表示装置３００に通知する。
【０１４３】
ステップＳ５９において、表示装置３００は、表示装置３００のスクリーン画面としてのタッチパネルに表示されたグリッドにおいて、オペレータによってタッチされた位置に最も近い交点が、上記の座標値を有することを表示する。
【０１４４】
なお、上記ステップＳ４１〜Ｓ５９の順序は、必要に応じて適宜入れ替えることが可能である。
【０１４５】
また、位置情報を表示するノードの、カメラ座標系における位置・姿勢を変換情報算出装置１００Ａで求め、位置・姿勢それ自体を示す値を画像情報制御装置２００Ａに通知してもよい。
【０１４６】
上記のステップＳ４７において、画像情報制御装置２００Ａは、カメラ座標系における位置・姿勢から、スクリーン座標系での位置・姿勢を求める。より具体的には、画像情報制御装置２００Ａは、カメラ座標系からスクリーン座標系への変換情報を求める処理を行い、この変換情報により、座標系とグリッドを含む位置情報の位置・姿勢をカメラ座標系からスクリーン座標系の値へ変換する。位置情報表示用データは、ここで求めたカメラ座標系及びスクリーン座標系の位置・姿勢に加え、座標系とグリッドを含む位置情報の形状等のデータを含む。位置情報表示用データは表示装置３００に出力され、出力されたデータを用いることにより、表示装置３００は適切な位置に座標系とグリッドを含む位置情報を描画することが可能となる。
【０１４７】
＜２．８  第２実施形態が奏する効果＞
第２実施形態に係る位置情報表示システム１０Ａにおいて、変換情報算出装置１００Ａは、産業用機械の機械構成に対応した、ノードで構成される機械構成木を生成すると共に、この機械構成木にカメラのノードを追加する。
【０１４８】
機械構成木上にノードとしてカメラを含むことで、機械構成木上の全てのノードについて、カメラ座標系における位置／姿勢が分かる。
例えば、ワーク座標系とそのグリッドを表示する場合は、カメラ座標系におけるワークノードの位置及び／又は姿勢と、入力された表示情報を元に、スクリーン座標系で描画を行うため、カメラに対してワークが動く場合でも問題なく描画することができる。
【０１４９】
また、機械構成木を用いることで、オペレータは任意の座標系を選択することが出来る。この任意の座標系として、マシン座標系、ワーク座標系以外に、例えば工具の座標系を選択してもよい。工具の座標系においては、工具位置が原点として表示されるため、グリッド間隔がそのまま移動量となり、現在の工具位置からの移動量が選択しやすい。
【０１５０】
＜３  第３実施形態＞
＜３．１  位置情報表示システムの構成＞
次に、本発明の第３実施形態について図面を参照して詳細に説明する。
図２４は、本発明の第３実施形態に係る位置情報表示システム１０Ｂの全体構成を示す。なお、以下では、位置情報表示システム１０Ｂが備える構成要素のうち、第２実施形態に係る位置情報表示システム１０Ａと同一の構成要素については同一の符号を用いて示すと共に、その説明は省略し、主として位置情報表示システム１０Ａと相違する構成要素について説明する。
【０１５１】
位置情報表示システム１０Ｂにおいては、工作機械４００とカメラ４１０とが別体となっており、カメラ４１０は工作機械４００に固定されていない。また、工作機械４００にはマーカ４２０が付加されている。
更に、位置情報表示システム１０Ａにおいては、カメラ４１０は、撮像により取得した画像を、無線装置５００を介して画像情報制御装置２００Ｂに対して出力する。これにより、カメラ４１０が工作機械４００に固定されず、且つ、画像情報制御装置２００Ｂから遠距離にある場合でも、撮像により取得した画像を画像情報制御装置２００Ｂに対して出力することが可能となる。
【０１５２】
なお、本発明の第３実施形態に係る位置情報表示システム１０Ｂは、上記の機械構成木に加えて、工作機械４００に付加されたマーカ４２０を利用することにより、カメラ４１０が工作機械４００に固定されてなくても、第２実施形態に係る位置情報表示システム１０Ａと同様の機能を実現するものである。この機能を実現するため、位置情報表示システム１０Ｂは、位置情報表示システム１０Ａが備える構成要素とは異なる構成要素を備える。
【０１５３】
＜３．２  変換情報算出装置の構成＞
変換情報算出装置１００Ｂは制御部１１０Ｂを備え、制御部１１０Ｂは、第２実施形態に係る制御部１１０Ａが備える変換情報計算部１１１Ａの代わりに、変換情報計算部１１１Ｂを備える。
【０１５４】
変換情報計算部１１１Ｂは、画像情報制御装置２００Ｂの選択ノード通知部２２０から、表示装置３００で表示する座標系に対応するノードを通知された後、マーカノードから表示対象のノードへの経路上の制御軸ノードの座標値を変数として含む変換情報であって、上記のグラフを元に、マーカノードの座標系における、各表示対象のノードの位置及び／又は姿勢を計算するための変換情報を計算する。
なお、上記の変換情報は、マトリクス形式であってもよく、ベクトル形式であってもよく、ロール・ピッチ・ヨー形式であってもよい。その詳細な動作については、以下の＜３．４  変換情報の計算＞で詳述する。
【０１５５】
なお、グラフ生成部１１３、制御点座標系挿入部１１４、ノード情報通知部１１５、変換情報計算部１１１Ｂ、変換情報通知部１１２の詳細な動作については、以下の＜３．５  位置情報の表示方法＞で詳述する。
【０１５６】
＜３．３  画像情報制御装置の構成＞
画像情報制御装置２００Ｂは制御部２１０Ｂを備え、制御部２１０Ｂは、制御部２１０Ａが備える座標情報変換部２１１Ａの代わりに座標情報変換部２１１Ｂを、位置情報表示用データ計算部２１３の代わりに位置情報表示用データ計算部２１３Ｂを備える。
【０１５７】
座標情報変換部２１１Ｂは、表示装置３００で表示する座標系での位置及び／又は姿勢をマーカ座標系での位置及び／又は姿勢に変換する。
位置情報表示用データ計算部２１３Ｂは、マーカ座標系での位置及び／又は姿勢をカメラ座標系での位置及び／又は姿勢に変換した上で、表示装置３００のスクリーン画面としてのタッチパネルに描画する位置情報としての座標系とグリッドを表示させるための表示用データを計算する。
【０１５８】
＜３．４  変換情報の計算＞
上記のように、変換情報計算部１１１Ｂは、マーカノードから表示対象のノードへの経路上の制御軸ノードの座標値を変数として含む変換情報であって、上記のグラフを元に、マーカノードの座標系における、各表示対象のノードの位置及び／又は姿勢を計算するための変換情報を計算する。この変換情報の計算方法について、図２５〜図２６を参照して詳述する。
【０１５９】
例えば、図２５に示すように、軸ｘ１の上に軸ｘ２が設定され、軸ｘ２の上に軸ｘ３が設定され、以下同様にＮ個のノードが連なり、その末端が軸ｘＮであるとする。更に、軸ｘＮ上の制御点に座標系とグリッドを含む位置情報を表示するものとする。同様に、軸ｙ１の上に軸ｙ２が設定され、軸ｙ２の上に軸ｙ３が設定され、以下同様にＬ個のノードが連なり、その末端が軸ｙＬであるとする。更に、軸ｙＬ上にマーカが設置されているとする。ここで、ｘｉ，ｙｊはノード名称だが、同時に各ノードの座標値も表わすこととする。
【０１６０】
更に、各ノードには図２５に示すオフセット、ノード種別（直線／回転／ユニット／制御点／座標系）、軸方向、姿勢マトリクス、座標値が与えられているとする。
【０１６１】
この時、図２６に示すように、ルート（機械原点）に対する位置情報を表示したい座標系とグリッドを含む位置情報の現在位置・姿勢を表す同次マトリクスＭｏｂｊは、以下の式で求められる。
【数７】
2019212040.tif 000009
ただし、記号の意味は、以下の通りである。
Ｓｘｉ：各ノードによる同次変換マトリクス；
Ｎ：機械構成木のルートから位置情報を表示したい座標系に対応するノードまで連なる一連のノード個数；
Ｍｃｔｒｌ：位置情報を表示したい座標系に対応するノードの親ノードに対する相対オフセット・姿勢の同次マトリクスであり、位置情報を表示したい座標系に対応するノードに定義されたオフセットベクトル・姿勢マトリクスから、上記の［数２］に従って定義される。
【０１６２】
この時、マーカ座標系上における、位置情報を表示したい座標系とグリッドを含む位置情報の現在位置・姿勢を表す同次マトリクスＸｍは、第２実施形態における同次マトリクスＸＣと同様に、Ｍｏｂｊを用いて以下の式で求められる。
【数８】
2019212040.tif 000010
ただし、記号の意味は、以下の通りである。
Ｌ：機械構成木のルートからマーカノードまで連なる一連のノード個数；
Ｍｃｏｏｒｄ：マーカの親ノードに対する相対オフセット・姿勢の同次マトリクスであり、マーカノードに定義されたオフセットベクトル・姿勢マトリクスから、上記の［数２］の数式に従って定義される。
【０１６３】
＜３．５  位置情報の表示方法＞
図２７Ａ及び図２７Ｂは、座標系とグリッドを含む位置情報を表示する際の動作フローを示す。最初に、各ステップの概略について述べる。
【０１６４】
ステップＳ６１において、変換情報算出装置１００Ｂ（ノード追加部１１６）は、図２６に示すように、機械構成木に新規ノードとしてマーカノードを追加する。
【０１６５】
ステップＳ６２において、画像情報制御装置２００Ｂ（制御部２１０Ｂ）は、変換情報算出装置１００Ｂから、座標系として選択できるノードの情報を取得する。
【０１６６】
ステップＳ６３において、画像情報制御装置２００Ｂ（ノード選択部２１９）は、位置情報を表示する座標系に対応するノードを選択し、画像情報制御装置２００Ｂ（選択ノード通知部２２０）は、選択したノードを変換情報算出装置１００Ｂに通知する。
【０１６７】
ステップＳ６４において、変換情報算出装置１００Ｂ（変換情報計算部１１１Ｂ）は、工作機械４００の各軸の座標値を変数として、マーカ座標系における位置情報の位置及び／又は姿勢を求める変換情報を計算する。
【０１６８】
ステップＳ６５において、変換情報算出装置１００Ｂ（変換情報通知部１１２）は、変換情報算出装置１００Ｂ（変換情報計算部１１１Ｂ）が計算した変換情報を、画像情報制御装置２００（座標情報変換部２１１Ｂ）に通知する。
【０１６９】
ステップＳ６６において、数値制御装置１５０（座標情報通知部１６１）は、稼働中の工作機械４００の座標情報を、リアルタイムで画像情報制御装置２００Ｂ（座標情報変換部２１１Ｂ）に通知する。図２５Ａ内ではこの通知は１回のみ実行されることが示されているが、定期的に実行されてもよい。
【０１７０】
ステップＳ６７において、画像情報制御装置２００Ｂ（座標情報変換部２１１Ｂ）は、変換情報算出装置１００Ｂから受け取った変換情報と、数値制御装置１５０から定期的に通知される各制御軸の座標値から、座標系とグリッドを含む位置情報の、マーカ座標系での位置及び／又は姿勢を計算する。
【０１７１】
ステップＳ６８において、画像情報制御装置２００Ｂ（位置情報計算用データ設定部２１２）は、マーカ座標系における位置及び／又は姿勢から、座標系の変換により、カメラ座標系での位置及び／又は姿勢を求める。
【０１７２】
ステップＳ６９において、画像情報制御装置２００Ｂ（位置情報計算用データ設定部２１２）は、カメラ座標系における位置及び／又は姿勢から、座標系の変換により、スクリーン座標系での位置及び／又は姿勢を求める。
【０１７３】
ステップＳ７０において、オペレータは、表示装置３００のタッチパネルから、表示すべきグリッドの線を選択し、グリッド線の間隔を入力する。
【０１７４】
ステップＳ７１において、画像情報制御装置２００Ｂ（位置情報計算用データ設定部２１２）は、表示装置３００のスクリーン画面としてのタッチパネルで、スクリーン座標系における、座標系とグリッドを含む位置情報の位置及び／又は姿勢を視覚的に表示させるための計算用データを設定する。
【０１７５】
ステップＳ７２において、画像情報制御装置２００Ｂ（位置情報表示用データ計算部２１３Ｂ）は、表示装置３００のスクリーン画面としてのタッチパネルに描画する座標系とグリッドを含む位置情報を表示させるための表示用データを計算する。
【０１７６】
ステップＳ７３において、画像情報制御装置２００Ｂ（位置情報表示用データ通知部２１４）は、座標系とグリッドを含む位置情報を表示させるための表示用データを表示装置３００に通知する。
【０１７７】
ステップＳ７４において、表示装置３００は、座標系とグリッドを含む位置情報を表示する。
【０１７８】
ステップＳ７５において、オペレータは表示装置３００が備えるタッチパネル上の任意の点をタッチする。
【０１７９】
ステップＳ７６において、画像情報制御装置２００（画面上位置判定部２１５）は、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置を判定する。
【０１８０】
ステップＳ７７において、画像情報制御装置２００（グリッド交点判定部２１６）は、表示装置３００のスクリーン画面としてのタッチパネルに表示された位置情報に含まれるグリッドの交点のうち、表示装置３００のタッチパネルにおいて、オペレータによってタッチされた位置に最も近い交点を判定する。
【０１８１】
ステップＳ７８において、画像情報制御装置２００（座標値変換部２１７）は、グリッド交点判定部２１６によって判定された交点の、ワーク座標系における座標値を計算する。
【０１８２】
ステップＳ７９において、画像情報制御装置２００（座標値通知部２１８）は、画像情報制御装置２００（座標値変換部２１７）によって計算された座標値を、数値制御装置１５０と表示装置３００に通知する。
【０１８３】
ステップＳ８０において、表示装置３００は、表示装置３００のスクリーン画面としてのタッチパネルに表示されたグリッドにおいて、オペレータによってタッチされた位置に最も近い交点が、上記の座標値を有することを表示する。
【０１８４】
なお、上記ステップＳ６１〜Ｓ８０の順序は、必要に応じて適宜入れ替えることが可能である。
【０１８５】
また、位置情報を表示するノードの、マーカ座標系における位置・姿勢を変換情報算出装置１００Ａで求め、位置・姿勢それ自体を示す値を画像情報制御装置２００Ａに通知してもよい。
【０１８６】
上記のステップＳ６８及びＳ６９において、画像情報制御装置２００Ｂは、非特許文献１に記載の方法等の公知の方法を用いて、マーカ座標系における位置・姿勢から、カメラ座標系での位置・姿勢を求め、カメラ座標系における位置・姿勢から、スクリーン座標系での位置・姿勢を求める。より具体的には、座標系とグリッドを含む位置情報表示の基準座標となるマーカの３次元位置をカメラ４１０によって得られる画像情報から検出し、マーカ座標系からカメラ座標系への変換情報を求める処理を行う。この変換情報により、座標系とグリッドを含む位置情報の位置・姿勢をマーカ座標系からカメラ座標系の値へ変換する。更に、カメラ座標系からスクリーン座標系への変換情報を求める処理を行い、この変換情報により、座標系とグリッドを含む位置情報の位置・姿勢をカメラ座標系からスクリーン座標系の値へ変換する。位置情報表示用データは、ここで求めたカメラ座標系及びスクリーン座標系の位置・姿勢に加え、座標系とグリッドを含む位置情報の形状等のデータを含む。位置情報表示用データは表示装置３００に出力され、出力されたデータを用いることにより、表示装置３００は適切な位置に座標系とグリッドを含む位置情報を描画することが可能となる。
【０１８７】
なお、図２９に示すように、マーカ座標系での位置姿勢マトリクスをＸｍ、カメラ座標系での位置姿勢マトリクスをＸＣ、マーカ座標系からカメラ座標系への変換マトリクスをＭｍｃとすると、
【数９】
2019212040.tif 000011
となる。
【０１８８】
上記の方法により、カメラ座標系における座標系とグリッドを含む位置情報の位置姿勢マトリクスＸＣを求めることができるので、ディスプレイ上で、任意のノードに対して、座標系とグリッドを含む位置情報を表示することができる。
【０１８９】
＜３．６  第３実施形態が奏する効果＞
第３実施形態に係る位置情報表示システム１０Ｂにおいて、変換情報算出装置１００Ｂは、産業用機械の機械構成に対応する、ノードで構成される機械構成木を生成すると共に、この機械構成木にマーカのノードを追加する。
機械構成木上にノードとしてマーカを含むことで、機械構成木上の全てのノードについて、マーカ座標系における位置／姿勢が分かる。
これにより、最初にカメラ座標系におけるマーカの位置／姿勢を認識し、次に、機械構成木よりマーカ座標系におけるワーク座標系の位置及び／又は姿勢が求まり、最後に、カメラ座標系におけるワーク座標系の位置及び／又は姿勢が分かるので、スクリーン画面としてのタッチパネル上に座標系とグリッドを描画することが可能となる。
この方法で表示したグリッド交点からワーク座標系位置を割出して、数値制御装置１５０に通知することで、工作機械４００に固定されていないカメラ４１０を用いても、第２実施形態に係る位置情報表示システム１０Ａと同様の機能を実現できる。
【０１９０】
＜４  変形例＞
＜４．１  変形例１＞
第１実施形態〜第３実施形態に係る位置情報表示システム１０〜１０Ｂにおいては、数値制御装置１５０が工作機械４００を制御するが、これには限定されない。例えば、工作機械４００の代わりにロボット等の産業用機械を備え、数値制御装置１５０に代わる制御装置がロボット等の産業用機械を制御する構成としてもよい。
【０１９１】
＜４．２  変形例２＞
第１実施形態〜第３実施形態に係る位置情報表示システム１０〜１０Ｂにおいては、オペレータが表示装置３００のタッチパネルから、グリッドの線を選択し、グリッド線の間隔を入力するが、これには限定されない。例えば、表示装置３００の画面の拡大・縮小に応じて、グリッド線の間隔を自動的に変更してもよい。あるいは、オペレータの手動操作によって選択した軸に応じて、表示するグリッド線を自動的に変更してもよい。
【０１９２】
＜４．３  変形例３＞
第１実施形態〜第３実施形態に係る位置情報表示システム１０〜１０Ｂにおいては、表示装置３００が位置情報としてグリッド線を表示するとしたが、これには限定されない。例えば、表示装置３００はグリッド線の代わりに、２次元平面において所定の間隔で整列するドットを表示してもよい。
より詳細には、本変形例において、画像情報制御装置２００〜２００Ｂは、グリッド間隔指定部２１２ｂの代わりに、タッチパネルからの入力に基づいて表示装置３００に表示するドットの間隔を指定するドット間隔指定部２１２ｃ（不図示）を、グリッド交点判定部２１６の代わりに、位置情報に含まれるドットのうち、オペレータによってタッチされた位置に最も近いドットであるタッチドットを判定するタッチドット判定部２１６ｃ（不図示）を備え、座標値変換部２１７は、タッチドットの第１の座標系における座標値を計算することにより、グリッド線の代わりにドットを用いることが可能となる。
【０１９３】
＜４．４  変形例４＞
第３実施形態に係る位置情報表示システム１０Ｂにおいて、マーカは、視点の位置によって、見えたり見えなかったりする場合が考えられる。そこで、マーカが見えない場合を防止するため、図３０Ａに示すように、工作機械４００に複数のマーカを設定すると共に、図３０Ｂに示すように、複数のマーカノードをグラフに設定してもよい。その場合には、複数のマーカのうち、いずれか利用可能なものを基準として、座標系とグリッドを含む位置情報の位置・姿勢が計算できる。
また、複数のマーカを同時に使用し、各々のマーカにおける位置・姿勢の平均値を利用して、座標系とグリッドを含む位置情報の位置・姿勢を計算することが可能である。あるいは、例えば、視点からの距離に応じて、各々のマーカにおける位置・姿勢に重みづけをすることにより、座標系とグリッドを含む位置情報の位置・姿勢を計算することも可能である。
【０１９４】
更に、図３１Ａ及び図３１Ｂに示すように、任意に決めた位置にベースマーカノードを設定し、各マーカノードを、ベースマーカノードの子として登録することが可能である。この場合には、変換情報算出装置１００Ｂは、画像情報制御装置２００Ｂに対し、ベースマーカを原点とするベースマーカ座標系における各位置情報の変換情報と、各マーカ座標系からベースマーカ座標系への変換情報を送信する。
前者の変換情報は、どのマーカを用いる場合も変わらない。画像情報制御装置２００は、認識したマーカに従って、後者の変換情報を用いて、各マーカの位置・姿勢からベースマーカの位置・姿勢を求め、更に、ベースマーカ座標系からカメラ座標系への変換情報を求める。
【０１９５】
ここで、図３２に示すように、カメラ座標系での位置姿勢マトリクスをＸＣ、マーカ座標系１での位置姿勢マトリクスをＸｍ１、マーカ座標系２での位置姿勢マトリクスをＸｍ２、ベースマーカ座標系での位置姿勢マトリクスをＸｍｂとする。また、ベースマーカ座標系からカメラ座標系への変換マトリクスをＭｍｃｂ、マーカ座標系１からカメラ座標系への変換マトリクスをＭｍｃ１、マーカ座標系２からカメラ座標系への変換マトリクスをＭｍｃ２、マーカ座標系１からベースマーカ座標系への変換マトリクスをＭｍｂ１、マーカ座標系２からベースマーカ座標系への変換マトリクスをＭｍｂ２とする。
この場合において、以下の数式が成立する。
【数１０】
2019212040.tif 000012
なお、ｋは、マーカの重みを決める係数で、例えば、双方のマーカを用いる場合には０．５、マーカ１のみを用いる場合には１、マーカ２のみを用いる場合には０の値をとる。
複数マーカを扱う処理が、ベースマーカノードの位置・姿勢を求める処理と、ベースマーカノード座標系からカメラ座標系への変換情報を求める処理に集約され、それ以外は単一マーカを用いた場合と同じ処理となることにより、複数マーカの扱いが容易となる。
【０１９６】
＜４．５  変形例５＞
グラフデータは、変換情報算出装置１００Ａ〜１００Ｂの図示しない記憶部に格納されていてもよいが、これには限定されない。例えば、画像情報制御装置２００Ａ〜２００Ｂに格納されてもよく、位置情報表示システム１０Ａ〜１０Ｂとネットワークを介して接続するサーバ上に格納されてもよい。画像情報制御装置２００Ａ〜２００Ｂや、サーバ上に機械構成木データを格納できるようにすることで、古い工作機械に対しても、本発明の適用が可能となる。なお、この場合には、上記のステップＳ４１〜Ｓ４３までの処理、及びステップＳ５１〜Ｓ５３までの処理は実行せず、ステップＳ４４及びステップＳ５４は、画像情報制御装置２００Ａ〜２００Ｂ側で実行する。
【０１９７】
＜４．６  変形例６＞
また、変換情報算出装置１００〜１００Ｂは、数値制御装置１５０に組み込まれて一体化されていてもよい。あるいは、変換情報算出装置１００〜１００Ｂは、クラウド上に存在してもよい。
【０１９８】
なお、上記の変換情報算出装置、数値制御装置、拡張情報制御装置、及び工作機械のそれぞれは、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記の変換情報算出装置、数値制御装置、拡張情報制御装置、及び工作機械の協働により行われるシミュレーション方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【０１９９】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ(Read Only Memory)、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ(Programmable ROM)、ＥＰＲＯＭ(Erasable PROM)、フラッシュＲＯＭ、ＲＡＭ(random access memory）)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【０２００】
１０  １０Ａ  １０Ｂ  位置情報表示システム
１１１  変換情報計算部
１１２  変換情報通知部
１１３  グラフ生成部
１１４  制御点座標系挿入部
１５０  数値制御装置
１６１  座標情報通知部
２００  画像情報制御装置
２１１  座標情報変換部
２１２  位置情報計算用データ設定部
２１２ａ  グリッド線指定部
２１２ｂ  グリッド間隔指定部
２１３  位置情報表示用データ計算部
２１４  位置情報表示用データ通知部
２１５  画面上位置判定部
２１６  グリッド交点判定部
２１７  座標値変換部
２１８  座標値通知部
２１９  ノード選択部
２２０  選択ノード通知部
３００  表示装置
４００  工作機械
【図１】
2019212040.tif 000013
【図２】
2019212040.tif 000014
【図３Ａ】
2019212040.tif 000015
【図３Ｂ】
2019212040.tif 000016
【図４Ａ】
2019212040.tif 000017
【図４Ｂ】
2019212040.tif 000018
【図５】
2019212040.tif 000019
【図６】
2019212040.tif 000020
【図７】
2019212040.tif 000021
【図８】
2019212040.tif 000022
【図９】
2019212040.tif 000023
【図１０】
2019212040.tif 000024
【図１１Ａ】
2019212040.tif 000025
【図１１Ｂ】
2019212040.tif 000026
【図１２Ａ】
2019212040.tif 000027
【図１２Ｂ】
2019212040.tif 000028
【図１２Ｃ】
2019212040.tif 000029
【図１３】
2019212040.tif 000030
【図１４Ａ】
2019212040.tif 000031
【図１４Ｂ】
2019212040.tif 000032
【図１５】
2019212040.tif 000033
【図１６】
2019212040.tif 000034
【図１７Ａ】
2019212040.tif 000035
【図１７Ｂ】
2019212040.tif 000036
【図１８】
2019212040.tif 000037
【図１９】
2019212040.tif 000038
【図２０】
2019212040.tif 000039
【図２１】
2019212040.tif 000040
【図２２Ａ】
2019212040.tif 000041
【図２２Ｂ】
2019212040.tif 000042
【図２３】
2019212040.tif 000043
【図２４】
2019212040.tif 000044
【図２５】
2019212040.tif 000045
【図２６】
2019212040.tif 000046
【図２７Ａ】
2019212040.tif 000047
【図２７Ｂ】
2019212040.tif 000048
【図２８】
2019212040.tif 000049
【図２９】
2019212040.tif 000050
【図３０Ａ】
2019212040.tif 000051
【図３０Ｂ】
2019212040.tif 000052
【図３１Ａ】
2019212040.tif 000053
【図３１Ｂ】
2019212040.tif 000054
【図３２】
2019212040.tif 000055