(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6962858
(24)【登録日】2021年10月18日
(45)【発行日】2021年11月5日
(54)【発明の名称】画像管理装置
(51)【国際特許分類】
G06T 1/00 20060101AFI20211025BHJP
B25J 19/04 20060101ALI20211025BHJP
【FI】
G06T1/00 200D
B25J19/04
【請求項の数】10
【全頁数】13
(21)【出願番号】特願2018-87628(P2018-87628)
(22)【出願日】2018年4月27日
(65)【公開番号】特開2019-192161(P2019-192161A)
(43)【公開日】2019年10月31日
【審査請求日】2019年9月11日
【前置審査】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】110001151
【氏名又は名称】あいわ特許業務法人
(72)【発明者】
【氏名】並木 勇太
(72)【発明者】
【氏名】藁科 文和
【審査官】
村松 貴士
(56)【参考文献】
【文献】
特開2017−045166(JP,A)
【文献】
国際公開第2007/060980(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00
G06T 7/00 − 7/90
G06F 12/00
B25J 19/04
(57)【特許請求の範囲】
【請求項1】
製造機械が設置された環境において視覚センサで撮像された撮像対象の画像データを管理する画像管理装置において、
前記視覚センサにより撮像された画像データを取得する画像データ取得部と、
前記製造機械及び前記視覚センサから、前記画像データが撮像された際の撮像条件を取得する撮像条件取得部と、
前記画像データ及び前記撮像条件に基づいてアーカイブデータを作成するアーカイブデータ作成部と、
前記アーカイブデータを記憶するアーカイブデータ記憶部と、
を備え、
前記アーカイブデータ作成部は、前記撮像条件をファイルに記録してからアーカイブデータを作成し、
前記アーカイブデータは、少なくとも前記製造機械の制御プログラムから指定可能な情報である、
画像管理装置。
【請求項2】
前記アーカイブデータ作成部は、1回の検出単位で得られた1乃至複数の画像データ、及び該画像データの撮像条件に基づいて1つのアーカイブデータを作成する、
請求項1に記載の画像管理装置。
【請求項3】
前記アーカイブデータは、1つのフォルダ内に前記画像データと、前記撮像条件を保存したものである、
請求項1又は2に記載の画像管理装置。
【請求項4】
前記アーカイブデータは、1つの圧縮ファイル内に前記画像データと、前記撮像条件を保存したものである、
請求項1又は2に記載の画像管理装置。
【請求項5】
前記撮像条件は、前記画像データを撮像した時の前記視覚センサの前記撮像対象に対する相対的な位置乃至向きを特定可能な情報、光学的な拡大/縮小率、ビニングレベル、撮像範囲、露光時間、照明の強度の少なくとも1つを含む、
請求項1〜4のいずれか1つに記載の画像管理装置。
【請求項6】
前記アーカイブデータ作成部は、プログラムにより指令された任意のタイミングでアーカイブデータを作成する、
請求項1〜5のいずれか1つに記載の画像管理装置。
【請求項7】
前記アーカイブデータ作成部は、プログラムにより指令された任意のファイル名でアーカイブデータを作成する、
請求項1〜6のいずれか1つに記載の画像管理装置。
【請求項8】
前記アーカイブデータ記憶部に記憶されたアーカイブデータに格納された画像データ及び撮像条件を取り出し、取り出した画像データ及び撮像条件に基づいた画像処理を行う画像処理部を更に備える、
請求項1〜7のいずれか1つに記載の画像管理装置。
【請求項9】
前記画像処理部は、プログラムにより指令された任意のタイミングでアーカイブデータに格納された画像データ及び撮像条件を取り出し、取り出した画像データ及び撮像条件に基づいた画像処理を行う、
請求項8に記載の画像管理装置。
【請求項10】
製造機械が設置された環境において視覚センサにより撮像された画像データを管理する画像管理方法において、
前記視覚センサにより撮像された画像データを取得する第1ステップと、
前記製造機械及び前記視覚センサから、前記画像データが撮像された際の撮像条件を取得する第2ステップと、
前記画像データ及び前記撮像条件に基づいてアーカイブデータを作成する第3ステップと、
前記アーカイブデータを記憶する第4ステップと、
を実行する画像管理方法であって、
前記第3ステップにおいて、前記撮像条件はファイルに記録し、
前記アーカイブデータは、少なくとも前記製造機械の制御プログラムから指定可能な情報である、
画像管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像管理装置に関し、特に工場の現場で取得された製造機械に係る画像データの管理を行う画像管理装置に関する。
【背景技術】
【0002】
工場等の製造現場では、産業用視覚センサを備えたロボット等の産業機械により、搬送されてきた搬送物を検出したり、加工したワークの検査をしたりすることが行われている。産業用視覚センサで撮像された撮像対象の画像に対して画像処理を行う際に、撮像した画像を不揮発性メモリ等に記録しておくことが必要になる場合がある。例えば、撮像した画像および検出結果を記録しておくことで、搬送物の検出に失敗した時や、ワークの検査で不良品を発見した時に、何が原因でそのようなことが起きたのか、改めて画像データを取得した際の状況を再現して確認する等して調査することができる。
【0003】
この様な、製造現場で取得された画像データの管理に係る従来技術として、例えば特許文献1には、画像データや該画像データに対する検出結果を補助記憶装置に記憶することで、後にその画像データを使って画像処理を行ったときの状態を再現して画像処理を行うことを可能とした画像処理方法が開示されている。
【0004】
一般に、搬送物の検出やワークの検査を行う為に画像処理を行った際の状態を再現するためには、単一の画像ファイルだけでは足りず、以下のように種々の情報が必要となることがある。
1)ロボットの手先にカメラを設置してワークの検出を行い得られた画像座標系における対象物の位置からロボットの座標系から見た対象物の位置を計算するためには、撮像時のカメラの位置が必要になる。また、ロボットがハンドで把持しているワークのハンド内での位置ずれを計算するためには、撮像時のロボットの位置が必要となる。
【0005】
2)一つのビジョンプログラム(搬送物の検出やワーク検査をするために産業機械及び産業用視覚センサを制御して画像を取得して処理するための制御用プログラム)で検出や検査を行う際に必要な複数の画像を撮像することがある。例えば、一つの画像では露光時間を長くし、もう一つの画像では露光時間を短くすることで、明るさの異なる画像を撮像することができる。それぞれの画像を異なる検出/検査アルゴリズムで使用することで、それぞれに適した画像を使用することができる。また、露光時間を変えるだけでなく、視野内の中のどの部分の範囲の画像を撮像するか、どのような画像縮小率で画像を撮像するかも変えて複数の画像を撮像することができる。
【0006】
3)上記のように、画像縮小率や撮像範囲を変える場合、その画像をどのような縮小率や撮像範囲で撮像したのかという情報が必要となる(例えば、産業用視覚センサのキャリブレーションを最大の撮像範囲で縮小率なしの画像で行ったとすると、同じ産業用視覚センサのキャリブレーションを使用して、検出値を画像座標からロボット座標に変更するためにはこのような情報が必要となる)。
【0007】
それぞれの画像データについて、該画像データを取得したときの産業用視覚センサによる撮像条件を再現するためには、上記したような種々の情報が必要となる。このように種々の情報を記録するための従来技術として、例えば特許文献2では、画像をファイルとして保存し、データベースに上記のような関連情報および画像へのパスを記録するという方法が提案されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特許第2921718号公報
【特許文献2】特許第6205757号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、従来技術で開示される画像データの管理方法では、専用のソフトウェアがインストールされたPC等が無いと該当する画像データ及び該画像データに関連する情報を探しだすことが難しいという問題がある。また、ある一つのビジョンプログラム実行するために必要な情報を得るためには、画像データと、該画像データに関連する情報を集める必要があるが、集めた情報の中から画像データに関連する必要な情報(上記したロボットの位置や露光時間、縮小率等)を抜き出すことが難しく、それ故に必要な情報だけを別の場所に転送したり、必要な情報だけを保存しておくことが困難である。この様な問題は、工場等の製造現場のような、専門の情報処理装置が設置されていない環境において顕著となる。また、一度のビジョンプログラムの実行で複数の画像を撮像する時には、複数の画像ファイル及びそれぞれの撮像条件を集めるのは更に煩雑な作業になる。
【0010】
そこで本発明の目的は、製造機械に取付けられた視覚センサによる撮像された画像データ及び該画像データの撮像条件を容易に再利用することが可能な画像管理装置を提供することである。
【課題を解決するための手段】
【0011】
本発明の画像管理装置は、以下の方法により上記課題を解決する。
・産業用視覚センサで取得した画像データは一つ一つファイルとして保存する。
・画像データに関連する情報はテキストファイル等の容易に閲覧可能なファイルに記録する。画像データ内に記録しても良いが、テキストファイル等の閲覧するために特別なソフトを必要としないファイルであることが望ましい。
・これらの情報を一つのフォルダ、又は、圧縮ファイルに格納してまとめる。
・これらの情報は一回の検出単位または一回の撮像単位で保存する。
【0012】
そして、本発明の一態様は、製造機械が設置された環境において視覚センサ
で撮像
された撮像対象の画像データを管理する画像管理装置において、前記視覚センサにより撮像された画像データを取得する画像データ取得部と、前記製造機械及び前記視覚センサから、前記画像データが撮像された際の撮像条件を取得する撮像条件取得部と、前記画像データ及び前記撮像条件に基づいてアーカイブデータを作成するアーカイブデータ作成部と、前記アーカイブデータを記憶するアーカイブデータ記憶部と、を備え、前記アーカイブデータ作成部は、前記撮像条件を
ファイルに記録してからアーカイブデータを作成し、前記アーカイブデータは、少なくとも前記製造機械の制御プログラムから指定可能な情報である、画像管理装置である。
【0013】
本発明の他の態様は、製造機械
が設置された環境において視覚センサにより撮像された画像データを管理する画像管理方法において、前記視覚センサにより撮像された画像データを取得する第1ステップと、前記製造機械及び前記視覚センサから、前記画像データが撮像された際の撮像条件を取得する第2ステップと、前記画像データ及び前記撮像条件に基づいてアーカイブデータを作成する第3ステップと、前記アーカイブデータを記憶する第4ステップと、を実行する画像管理方法であって、前記第3ステップにおいて、前記撮像条件
はファイルに記録し、前記アーカイブデータは、少なくとも前記製造機械の制御プログラムから指定可能な情報である、画像管理方法である。
【発明の効果】
【0014】
本発明により、アーカイブデータから画像データ及び該画像データを撮像した際の撮像条件を容易に取り出して現場の制御装置等で参照することが可能となり、特別なソフトウェアを用いることなく撮像条件の再現確認等ができるようになる。
【図面の簡単な説明】
【0015】
【
図1】一実施形態による画像管理装置の概略的なハードウェア構成図である。
【
図2】一実施形態による画像管理装置の概略的な機能ブロック図である。
【
図6】撮像条件を記録するテキストファイルの例を示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態を図面と共に説明する。
図1は本発明の一実施形態による画像管理装置の要部を示す概略的なハードウェア構成図である。画像管理装置1は、ロボットや工作機械等の製造機械を制御する制御装置として実装することができる。また、画像管理装置1は、製造機械を制御する制御装置と併設されたパソコンや、制御装置とネットワークを介して接続されたセルコンピュータ、ホストコンピュータ、クラウドサーバ等のコンピュータとして実装することが出来る。
図1は、視覚センサを備えた製造機械(ロボット)を制御する制御装置として画像管理装置1を実装した場合の例を示している。
【0017】
本実施形態による画像管理装置1が備えるCPU11は、画像管理装置1を全体的に制御するプロセッサである。CPU11は、ROM12に格納されたシステム・プログラムをバス22を介して読み出し、該システム・プログラムに従って画像管理装置1全体を制御する。RAM13には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【0018】
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされるなどして、画像管理装置1の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ14には、インタフェース15を介して外部機器72から読み込まれた制御用プログラムや表示器/MDIユニット70を介して入力された制御用プログラム、画像管理装置1の各部や製造機械、センサ等から取得された各種データが記憶される。不揮発性メモリ14に記憶された制御用プログラムや各種データは、実行時/利用時にはRAM13に展開されても良い。また、ROM12には、公知の解析プログラムなどの各種のシステム・プログラムがあらかじめ書き込まれている。
【0019】
インタフェース15は、画像管理装置1とアダプタ等の外部機器72と接続するためのインタフェースである。外部機器72側からは制御用プログラムや各種パラメータ等が読み込まれる。また、画像管理装置1内で編集した制御用プログラムや各種パラメータ、データ等は、外部機器72を介して外部記憶手段に記憶させることができる。PMC(プログラマブル・マシン・コントローラ)16は、画像管理装置1に内蔵されたシーケンス・プログラムで製造機械にI/Oユニット17を介して信号を出力し制御する。また、製造機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、CPU11に渡す。
【0020】
表示器/MDIユニット70はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース18は表示器/MDIユニット70のキーボードからの指令,データを受けてCPU11に渡す。インタフェース19は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤71に接続されている。
【0021】
製造機械が備える軸を制御するための軸制御回路30はCPU11からの軸の移動指令量を受けて、軸の指令をサーボアンプ40に出力する。サーボアンプ40はこの指令を受けて、製造機械が備える軸を移動させるサーボモータ50を駆動する。軸のサーボモータ50は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路30にフィードバックし、位置・速度のフィードバック制御を行う。なお、
図1のハードウェア構成図では軸制御回路30、サーボアンプ40、サーボモータ50は1つずつしか示されていないが、実際には制御対象となる製造機械に備えられた軸の数だけ用意される。
【0022】
図2は、一実施形態による画像管理装置1の概略的な機能ブロック図である。
図2に示した各機能ブロックは、
図1に示した画像管理装置1が備えるCPU11が、それぞれのシステム・プログラムを実行し、画像管理装置1の各部の動作を制御することにより実現される。
【0023】
本実施形態の画像管理装置1は、制御用プログラム200及びビジョンプログラム210に基づいて製造機械2及び視覚センサ3を制御する制御部100、視覚センサ3が撮像した画像データを取得する画像データ取得部110、画像データ取得部110が取得した画像データに対して画像処理を行う画像処理部120、製造機械2及び視覚センサ3から画像データを撮像した際の撮像条件を取得する撮像条件取得部130、画像データ取得部110が取得した画像データ、撮像条件取得部130が取得した撮像条件、及び、制御部100の制御状況に基づいて1乃至複数の画像データと撮像条件とをまとめたアーカイブデータを作成し、不揮発性メモリ14等のメモリ上に確保されたアーカイブデータ記憶部220へと記憶するアーカイブデータ作成部140を備える。
【0024】
制御部100は、不揮発性メモリ14から読み出した制御用プログラム200及びビジョンプログラム210に基づいて、1乃至複数の撮像対象の画像を撮像するように製造機械2を制御する機能手段である。制御部100は、制御用プログラム200により指令される軸駆動指令等に基づいて製造機械2を制御することで撮像対象と視覚センサの相対的位置や撮像対象に対する視覚センサの向きを調整すると共に、ビジョンプログラム210による指令に基づいて視覚センサ3の撮像時の露光時間や光学的な拡大/縮小率、ビニングレベル、撮像範囲等の調整等を行いつつ1乃至複数の画像を撮像する。また、制御部100は、画像データ取得部110が取得した画像データに対して、ビジョンプログラム210により指令される画像処理を施すように画像処理部120に対して指令する。
【0025】
制御部100が制御する製造機械2は、典型的には多関節ロボットであり、その場合、視覚センサ3を取り付け可能なロボットで有ればロボットの種類は問わない。また、製造機械2は、視覚センサ3を取り付け可能な工作機械や該工作機械の周辺装置、各種加工機、コンベア等の撮像対象の搬送装置等、工場に設置される機械であって、視覚センサの撮像対象と関り得る機械であればどのようなものを対象としても良い。製造機械2は、視覚センサ3と撮像対象との相対位置や撮像対象に対する視覚センサ3の向きが調整できるものであることが望ましい。
【0026】
また、制御部100が制御する視覚センサ3は、典型的にはカメラとなるが、3次元センサ等であってもよい。視覚センサ3は、撮像の際に露光時間や光学的な拡大/縮小率(又は焦点距離)、ビニングレベル、撮像範囲等を調整可能なものであって良い。視覚センサ3は、製造機械2の固定部に固定的に取付けられていても良いし、製造機械2の稼働部に(例えば、ロボットのハンド等)に取り付けられていても良い。なお、視覚センサ3が製造機械2に固定的に取り付けられていたとしても、撮像対象の位置や向きを制御可能であれば、視覚センサ3と撮像対象との相対位置の調整、及び撮像対象に対する視覚センサ3の向きの調整は可能である。
【0027】
画像データ取得部110は、制御部100が制御することで視覚センサ3が撮像した画像のデータを視覚センサ3から取得する。画像データ取得部110が視覚センサ3から取得する画像データは、通常のラスタデータであっても良く、また、JPEG形式やTIFF形式、PNG形式等の所定の画像フォーマット形式の画像データであっても良い。
【0028】
画像処理部120は、画像データ取得部110が取得した画像データ、又はアーカイブデータ記憶部220に記憶されているアーカイブデータから取り出された画像データに対して画像処理を施す機能手段である。画像処理部120が行う画像処理は、例えば画像データに対してエッジ強調、平滑化、シェーディング等の公知の画像のフィルタ処理であって良く、また、エッジ検出やパターンマッチ等の公知の画像の検出処理や、距離測定、明度測定等の公知の画像の測定処理、複数の画像の合成処理や1つの画像から複数の画像へと分割する処理であっても良い。画像処理部120は、ビジョンプログラム210に含まれる画像処理指令に基づく制御部からの指令を受けて、画像データ取得部110が取得した画像データに対して画像処理を施す。画像処理部120は、必要に応じて撮像条件取得部130が取得した撮像条件を画像処理に利用しても良い。
なお、画像処理部120は、画像処理した結果を、例えば表示器/MDIユニット70に表示するようにしても良く、また、不揮発性メモリ14に記憶する、又は、外部機器72に出力する等しておき、後で作業者が利用できるようにしても良い。
【0029】
撮像条件取得部130は、製造機械2及び視覚センサ3から、撮像対象の撮像時の撮像条件を取得する機能手段である。撮像条件取得部130は、製造機械2から撮像対象と視覚センサの相対的位置や撮像対象に対する視覚センサの向き等の条件を特定可能な情報を取得すると共に、視覚センサ3から、撮像時の露光時間や光学的な拡大/縮小率、ビニングレベル、撮像範囲、照明の強度等の条件を特定可能な情報を取得する。ここで言うところの条件を特定可能な情報は、当該条件を直接的/間接的に特定可能な情報を含み、例えば、視覚センサに係る位置や向きの条件としては、視覚センサそのものの位置や向きのみではなく、該視覚センサが取付けられている製造機械2の各軸の位置等であっても良い。撮像条件取得部130は、上記条件を特定可能な情報を制御部100による製造機械2及び視覚センサ3の制御指令から取得するようにしても良い。また、例えば環境温度や環境湿度、輝度等の、その他の撮像に影響を与える物理量を図示しない他のセンサから取得するようにしても良い。撮像条件取得部130が取得する撮像条件は、取得した画像データの撮像状態を後に再現するために必要とされる条件を含み得る。例えば、後述するように1つの検出単位で複数の画像を撮像している場合等には、何れの撮像条件が、何れの画像に関するものであるのかを明確にするために、副次的な要素として、画像ファイルを一意に特定し得る情報(例えば、画像ファイルのファイル名等)を撮像条件に加えるようにしても良い。
【0030】
アーカイブデータ作成部140は、画像データ取得部110が取得した画像データと、撮像条件取得部130が取得した撮像条件とをまとめたアーカイブデータを作成し、アーカイブデータ記憶部220へと記憶する機能手段である。アーカイブデータ作成部140は、制御用プログラム200及びビジョンプログラム210により指令されて撮像された1回の検出単位(撮像単位)で取得される1セットの画像データ及び該画像データの撮像条件から1つのアーカイブデータを作成する。例えば、制御用プログラム200及びビジョンプログラム210により、撮像対象を1回撮像することが1回の検出単位として指令されている場合には、1つの画像データと1つ撮像条件から1つのアーカイブデータが作成され、また、制御用プログラム200及びビジョンプログラム210により、1つのワークについて露光時間を変えて2回撮像することが1回の検出単位として指令されている場合には、2つの画像データと2つ撮像条件から1つのアーカイブデータが作成される。更に、1つのワークを複数の角度から撮像することが1回の検出単位として指令されている場合には、複数の画像データ及び複数の撮像条件から1つのアーカイブデータを作成する。
【0031】
アーカイブデータ作成部140が作成するアーカイブデータは、例えば1乃至複数の画像データ及び1乃至複数の撮像条件が1つのフォルダに格納されたデータであって良い。また、アーカイブデータ作成部140が作成するアーカイブデータは、例えば1乃至複数の画像データ及び1乃至複数の撮像条件が1つ圧縮ファイルに格納されたデータであって良く、この場合、該圧縮ファイルは工場に設置される制御装置等で標準的にサポートされている圧縮形式の圧縮ファイル(典型的には、ZIP形式等)であることが望ましい。アーカイブデータ作成部140は、典型的には、撮像条件をXML形式やJSON形式等の1つ乃至複数のテキストファイルに記録した上でアーカイブデータに格納するが、アーカイブデータ作成部140は、閲覧に特別なソフトウェアを必要としないデータ形式や制御装置等でサポートされている形式のファイルに撮像条件を記録してアーカイブデータに格納するようにしても良い。アーカイブデータ作成部140は、画像データ毎に1つの撮像条件のファイルを作成しても良いが、例えば撮像条件を上記したXML形式やJSON形式のテキストファイルに記録する場合には、複数の画像データに対して1つのファイルとして撮像条件として記録することも可能である。
【0032】
以下では、上記した画像管理装置1の一動作例を示す。
図3に例示されるように、画像管理装置1が、ロボットとしての製造機械2及び視覚センサ3を制御して、テーブル上に設置された撮像対象であるワークの位置計測用の画像データを取得する状況を考える。撮像対象であるワークには、
図4に例示するようにワーク上面に特徴的な形状である特徴1,2が設けられており、これらの特徴に基づいて撮像対象であるワークの位置を特定することができる。この様な状況において、例えば
図4に例示される製造機械2の制御用プログラム200を実行することを考える。
図4において、1行目のプログラム指令MOVE_TOは指定した位置P1へとロボットハンドを移動させる指令である。また、2行目のプログラム指令VISION_FINDは、ビジョンプログラムVP1を実行する指令であり、これにより撮像対象の撮像、画像データの取得、取得した画像に対する画像処理が行われる。3行目のプログラム指令VISION_SAVEは、ビジョンプログラムVP1を実行することにより得られた画像データと撮像条件とがアーカイブデータ「/log/00001.zip」に保存する指令である。
【0033】
ここで、ビジョンプログラムVP1は異なる露光時間で撮像した複数の画像を撮像するように構成されているとする。具体的にはビジョンプログラムVP1では、以下の動作を行うように指令されている。
動作1)位置1に移動して、露光時間1で画像1を撮像する。
動作2)位置2に移動して、露光時間2で画像2を撮像する。
動作3)画像1から撮像対象の特徴1を検出する。
動作4)画像2から撮像対象の特徴2を検出する。
動作5)特徴1の画像上での位置からロボットの座標系における特徴1の3次元位置を求める。これは視覚センサ3があらかじめキャリブレーションされていれば容易に計算可能である。
動作6)特徴2の画像上での位置からロボットの座標系における特徴2の3次元位置を求める。
動作7)特徴1と特徴2のロボットの座標系における3次元位置から撮像対象の3次元位置を求める。例えば、特徴1と特徴2の中点を撮像対象の3次元位置とすれば良い。
【0034】
上記した動作の流れの中で、画像データ取得部110は、視覚センサ3から画像1の画像データと画像2の画像データをそれぞれ取得する。また、撮像条件取得部130は、画像1,2のそれぞれを撮像した際の製造機械2の位置(ロボットハンドの位置)と視覚センサ3の設定を撮像条件として取得する。そして、アーカイブデータ作成部140が、取得された複数の画像データ(画像1、画像2)を、一つのアーカイブデータ/log/00001.zipに格納して、アーカイブデータ記憶部220に記憶する。この時、アーカイブデータ作成部140は、撮像条件を例えば
図5に例示するJSON形式のテキストファイルに記録してアーカイブデータに格納する。
図5に例示する撮像条件を記録するテキストファイルは、複数の画像の撮像条件を1つのテキストファイルとして記録するものであるが、アーカイブデータ作成部140は、撮像条件を画像データ毎に作成したテキストファイルにそれぞれ記録するようにしても良い。
【0035】
これらの処理は、制御用プログラム200又はビジョンプログラム210による指令に従って行われる。制御用プログラム200又はビジョンプログラム210に基づいて上記動作を指令できるようにすることで、例えばアーカイブデータの名称を撮像対象となるワークの品番等で任意に指定して管理したり、任意のロジックを組んで保存したり(例えば、検出に失敗したときのみ画像を保存する等)する等、作業者の目的に応じた応用が可能となる。なお、アーカイブデータの記憶は、制御用プログラム200ではなくビジョンプログラム210から指令できるようにしても良い。
【0036】
この様にしてアーカイブデータ記憶部220に記憶されたアーカイブデータは、作業者から見た場合、ファイルシステムに保存されている単一のファイル(/log/00001.zip)として認識されるので、これを取り出して任意の場所にコピーしたり、中身を閲覧したりすることが可能である。
【0037】
更に、
図7に例示される制御用プログラム200を作成することで、アーカイブデータ記憶部220に記憶されたアーカイブデータから任意のタイミングで画像データ及び撮像条件を取り出して、取り出した画像データ及び撮像条件に基づく画像処理を行わせるようにしても良い。
図7において、1行目の2行目のプログラム指令VISION_LOADは、ビジョンプログラムVP1に対する画像の取得先としてアーカイブデータ「/log/00001.zip」に格納されている画像ファイルと撮像条件を読み出して用いることを指令するものである。また、2行目のプログラム指令VISION_FINDは、ビジョンプログラムVP1を実行する指令であり、これによりアーカイブデータ「/log/00001.zip」から読み出された画像ファイル及び撮像条件を入力として画像データに対する画像処理が行われる。この時、ビジョンプログラムVP1で使用するロボットの位置は、も現在のロボットの位置ではなくアーカイブデータ「/log/00001.zip」から読み出されたロボットの位置が用いられる。
この様にして、以前に撮像した画像データを必要な撮像条件と共に読み込むことで、問題発生時にその時の状況を再現したり、撮像時間を無駄にすることなく一つのビジョンプログラムで撮像した画像を別のビジョンプログラムで任意のタイミングで再利用したり、することができる。
【0038】
なお、上記した動作例以外にも、視覚センサ3を用いた撮像対象の撮像動作としては様々なものが考えられる。例えば、
図3の例において、製造機械2としてのロボットに複数の視覚センサを所定の位置となるように取付けて、撮像対象の画像を同時に複数撮像する構成とし、これら複数の画像の撮像を1回の検出単位として、該複数の画像を同じアーカイブデータに格納するようにしても良い。また、
図8に例示されるように、撮像対象となるワークに対して視覚センサ3を備えた複数の製造機械2としてのロボットを配置し、これら複数の製造機械2としてのロボットを画像管理装置1で同時に制御して、ワークを撮像する例が考えられる。この様な構成とした場合、上記した動作1と動作2をそれぞれの製造機械2としてのロボットを制御することで同時に行い、ワークの撮像時間を短縮することが可能である。2台の製造機械2としてのロボットにより撮像された画像は、1回の検出単位内で撮像された画像として、同じアーカイブデータに格納される。無論、それぞれのロボット2で、撮像条件を変更しながらそれぞれ複数の撮像対象の画像を撮像し、複数のロボット2及び視覚センサ3を制御して得られた複数の画像を1回の検出単位で得られた画像群として同じアーカイブデータに格納するようにしても良い。
また、製造機械2としてのロボットに撮像対象となるワークを把持させて、該ロボットを制御することで視覚センサ3に対するワークに位置や向きを変化させながら撮像する場合にも、本発明を適宜対応させることが可能である。
【0039】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【符号の説明】
【0040】
1 画像管理装置
2 製造機械
3 視覚センサ
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
15 ,18,19,20 インタフェース
17 I/Oユニット
22 バス
30 軸制御回路
34 制御部
40 サーボアンプ
50 サーボモータ
70 表示器/MDIユニット
71 操作盤
72 外部機器