(57)【特許請求の範囲】
【請求項１】
検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラから上記カメラ画像を取得して当該カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、
上記プログラム作成装置が、画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって、フローチャートを生成するフローチャート生成手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する検査支援システムに用いられる上記画像処理コントローラにおいて、
上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、
上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、
上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、
上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、
上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記プログラム作成装置へ転送する履歴情報転送手段とを備えたことを特徴とする画像処理コントローラ。
【請求項２】
上記第１履歴情報蓄積手段が、予め指定された処理ユニットにおける上記検査対象物の判定結果に基づいて、履歴情報を抽出することを特徴とする請求項１に記載の画像処理コントローラ。
【請求項３】
上記履歴情報の蓄積数の上限を決定する蓄積条件決定手段を備え、
上記第１及び第２履歴情報蓄積手段が、上記蓄積数の上限に基づいて、古くなった履歴情報に新たに抽出した履歴情報を上書きすることを特徴とする請求項１に記載の画像処理コントローラ。
【請求項４】
検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラによって表示制御され、上記計測結果を表示するためのディスプレイと、上記画像処理コントローラを操作するための操作ユニットと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、
上記プログラム作成装置が、パラメータが変更可能な画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって、フローチャートを生成するフローチャート生成手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する検査支援システムに用いられる上記画像処理コントローラにおいて、
上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、
上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、
上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、
上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、
上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記ディスプレイ上に表示する履歴表示手段とを備え、
上記履歴表示手段が、上記操作ユニットの操作によって選択された上記処理ユニットについて、この処理ユニットに関連付けて保持されている上記計測結果を当該処理ユニットの上記パラメータに基づいて上記カメラ画像上に表示することを特徴とする画像処理コントローラ。
【請求項５】
検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、
上記プログラム作成装置が、パラメータが変更可能な画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって生成されたフローチャートを編集画面上に表示するフローチャート表示手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する検査支援システムにおいて、
上記画像処理コントローラが、上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、
上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、
上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、
上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、
上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記プログラム作成装置へ転送する履歴情報転送手段とを備え、
上記プログラム作成装置が、上記画像処理コントローラから転送された上記履歴情報を保持する履歴情報記憶手段と、
上記履歴情報を上記編集画面上に表示する履歴表示手段とを備え、
上記履歴表示手段が、上記フローチャート上で選択された処理ユニットに関連付けられている上記計測結果を当該処理ユニットの上記パラメータに基づいて上記カメラ画像上に表示することを特徴とする検査支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理コントローラ及び検査支援システムに係り、さらに詳しくは、検査対象物を撮影して得られるカメラ画像に基づいて判定信号を出力する画像処理コントローラの改良に関する。
【背景技術】
【０００２】
検査対象物を撮影して得られるカメラ画像を画像処理し、検査対象物の形状、位置、カメラ画像に基づく判定結果を示す判定信号などを処理結果として出力する画像処理コントローラには、一連の処理手順を変更可能なものが知られている（例えば、特許文献１）。通常、一連の処理手順をこの様な画像処理コントローラに実行させるための制御プログラムは、ＰＣ（パーソナルコンピュータ）などの情報処理端末上で動作するエディタ（ソフトウェア）を用いて作成される。ユーザは、作成した制御プログラムを画像処理コントローラに転送することにより、検査対象物に対して所望の検査を行うことができる。
【０００３】
一般に、画像処理の結果として、検査対象物に異常や不具合があると判定された場合に、画像処理が正常に行われたか否かを検証するには、当該画像処理時のカメラ画像や計測結果を確認する必要がある。上述した画像処理コントローラには、制御プログラムの実行時に取得したカメラ画像や計測結果を履歴情報として保持する機能が従来から設けられている。この様な履歴情報をディスプレイ上に表示させることにより、制御プログラム実行時のカメラ画像や計測結果を確認することができる。ところが、カメラ画像と計測結果とは別個の情報として蓄積されるので、計測結果をカメラ画像上にグラフィカルに表示させようとすると、カメラ画像から計測結果を得るために、計測を再度実行させ、カメラ画像に基づいて計測値を再計算させる必要があった。つまり、従来の画像処理コントローラでは、制御プログラムを再度実行させることなく、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示することができなかった。しかも、計測結果をカメラ画像上にグラフィカルに表示させようとすると、制御プログラムを再度実行させる必要があることから、運転を一旦停止させなければならないという問題があった。また、ＰＣ上で計測結果をカメラ画像上にグラフィカルに表示させるには、画像処理をシミュレーションする必要があった。
【０００４】
さらに、制御プログラムを再度実行させる場合、制御プログラムが繰返し実行されるごとに時系列で変化する変数（カウンタなど）の状態は反映されないので、実際の計測結果と再計算結果との間にずれが生じてしまい、履歴を正確に再現できないという問題があった。また、外部入力を参照して画像処理を行う制御プログラムの場合には、さらに、外部入力の状態が変化してしまうという問題があった。
【特許文献１】特開平９−２８８５６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上述した通り、従来の画像処理コントローラでは、制御プログラムを再度実行させることなく、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示することができないという問題があった。しかも、計測結果をカメラ画像上にグラフィカルに表示させようとすると、制御プログラムを再度実行させる必要があることから、運転を一旦停止させなければならないという問題もあった。また、ＰＣ上で計測結果をカメラ画像上にグラフィカルに表示させるには、画像処理をシミュレーションする必要があるという問題もあった。
【０００６】
本発明は、上記の事情に鑑みてなされたものであり、制御プログラムに基づく一連の画像処理の過程を忠実に再現することができる画像処理コントローラ及び検査支援システムを提供することを目的とする。特に、制御プログラムを再度実行させることなく、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる画像処理コントローラを提供することを目的とする。また、運転を停止させることなく、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる画像処理コントローラを提供することを目的とする。また、プログラム作成装置上で画像処理をシミュレーションさせることなく、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる検査支援システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の本発明による画像処理コントローラは、検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラから上記カメラ画像を取得して当該カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、上記プログラム作成装置が、画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって、フローチャートを生成するフローチャート生成手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する検査支援システムに用いられ、上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記プログラム作成装置へ転送する履歴情報転送手段とを備えて構成される。
【０００８】
この画像処理コントローラでは、制御プログラムの実行時に、処理ユニットごとの計測結果と、カメラから取得したカメラ画像とが計測周期ごとの履歴情報として抽出保持され、必要に応じてプログラム作成装置へ転送される。その際、履歴情報として抽出された計測結果が処理ユニットに関連付けて保持されるので、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。特に、制御プログラム実行時の計測結果及びカメラ画像が履歴情報として抽出され、いずれも計測周期に関連付けて保持されるので、この様にして履歴情報として蓄積された計測結果を表示させれば、制御プログラムを再度実行させることなく、計測結果をカメラ画像上にグラフィカルに表示させることができる。従って、制御プログラムに基づく一連の画像処理の過程を忠実に再現することができる。また、履歴情報として蓄積された計測結果を表示させるだけであって、カメラ画像から計測結果を得るための再計算を必要としないので、運転を停止させることなく、計測結果をカメラ画像上に表示させることができる。
【０００９】
第２の本発明による画像処理コントローラは、上記構成に加え、上記第１履歴情報蓄積手段が、予め指定された処理ユニットにおける上記検査対象物の判定結果に基づいて、履歴情報を抽出するように構成される。この様な構成によれば、予め指定された処理ユニットの判定結果に基づいて履歴情報が抽出されるので、検査対象物の良否の判定結果に応じて所望の履歴情報を蓄積させることができる。
【００１０】
第３の本発明による画像処理コントローラは、上記構成に加え、上記履歴情報の蓄積数の上限を決定する蓄積条件決定手段を備え、上記第１及び第２履歴情報蓄積手段が、上記蓄積数の上限に基づいて、古くなった履歴情報に新たに抽出した履歴情報を上書きするように構成される。
【００１１】
第４の本発明による画像処理コントローラは、検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラによって表示制御され、上記計測結果を表示するためのディスプレイと、上記画像処理コントローラを操作するための操作ユニットと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、上記プログラム作成装置が、パラメータが変更可能な画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって、フローチャートを生成するフローチャート生成手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する検査支援システムに用いられ、上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記ディスプレイ上に表示する履歴表示手段とを備え、上記履歴表示手段が、上記操作ユニットの操作によって選択された上記処理ユニットについて、この処理ユニットに関連付けて保持されている上記計測結果を当該処理ユニットの上記パラメータに基づいて上記カメラ画像上に表示するように構成される。
【００１２】
第５の本発明による検査支援システムは、検査対象物を撮影してカメラ画像を生成するカメラと、上記カメラ画像から計測結果を抽出し、この計測結果に基づいて上記検査対象物の良否を判定して判定信号を出力する画像処理コントローラと、上記画像処理コントローラの制御プログラムを作成するプログラム作成装置とからなる検査支援システムであって、上記プログラム作成装置が、パラメータが変更可能な画像処理を示す２以上の処理ユニットを保持する処理ユニット記憶手段と、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に上記処理ユニットを配置することによって生成されたフローチャートを編集画面上に表示するフローチャート表示手段と、上記フローチャートに基づいて、上記画像処理コントローラの制御プログラムを生成するプログラム生成手段と、上記制御プログラムを上記画像処理コントローラへ転送するプログラム転送手段とを有する。そして、上記画像処理コントローラが、上記プログラム作成装置から転送された上記制御プログラムを保持するプログラム記憶手段と、上記フローチャート上のスタートシンボルからエンドシンボルまでを計測周期として、上記制御プログラムを繰返し実行するプログラム実行手段と、上記プログラム実行手段によって実行された上記処理ユニットごとの上記計測結果を上記計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段と、上記制御プログラムの実行中に上記プログラム実行手段によって上記カメラから取得された上記カメラ画像を上記計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段と、上記第１履歴情報蓄積手段及び上記第２履歴情報蓄積手段に保持されている履歴情報を上記プログラム作成装置へ転送する履歴情報転送手段とを備え、上記プログラム作成装置が、上記画像処理コントローラから転送された上記履歴情報を保持する履歴情報記憶手段と、上記履歴情報を上記編集画面上に表示する履歴表示手段とを備え、上記履歴表示手段が、上記フローチャート上で選択された処理ユニットに関連付けられている上記計測結果を当該処理ユニットの上記パラメータに基づいて上記カメラ画像上に表示するように構成される。
【００１３】
この検査支援システムでは、制御プログラムの実行時に、処理ユニットごとの計測結果と、カメラから取得したカメラ画像とが計測周期ごとの履歴情報として抽出保持され、必要に応じてプログラム作成装置へ転送される。その際、履歴情報として抽出された計測結果が処理ユニットに関連付けて保持される。プログラム作成装置では、履歴情報を編集画面上に表示する際、フローチャート上で選択された処理ユニットに関連付けられている計測結果をカメラ画像上に表示させるので、画像処理をシミュレーションさせることなく、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。その際、処理ユニットのパラメータに基づいて表示を行うので、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる。
【発明の効果】
【００１４】
本発明による画像処理コントローラ及び検査支援システムによれば、履歴情報として抽出された計測結果が処理ユニットに関連付けて保持されるので、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。特に、制御プログラム実行時の計測結果及びカメラ画像が履歴情報として抽出され、いずれも計測周期に関連付けて保持されるので、この様にして履歴情報として蓄積された計測結果を表示させれば、実際の計測結果との間でずれを生じさせることなく、計測結果をカメラ画像上に表示させることができる。従って、制御プログラムに基づく一連の画像処理の過程を忠実に再現することができる。また、履歴情報として蓄積された計測結果を表示させるだけであって、カメラ画像から計測結果を得るための再計算を必要としないので、運転を停止させることなく、計測結果をカメラ画像上に表示させることができる。また、処理ユニットのパラメータに基づいて表示を行うので、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる。
【発明を実施するための最良の形態】
【００１５】
<検査支援システム>
図１は、本発明の実施の形態による検査支援システムの一構成例を示した斜視図である。この検査支援システムは、検査対象物の搬送ライン上に配置される画像処理装置１と、この画像処理装置１の制御プログラムを生成するＰＣ（パーソナルコンピュータ）２とからなる。
【００１６】
画像処理装置１は、画像処理コントローラ１１、カメラ１２、ディスプレイ１３ａ及び操作ユニット１３ｂからなり、検査対象物から得られたカメラ画像に基づいて判定信号を出力するセンサー装置である。この判定信号は、図示しないＰＬＣ（Programmable Logic Controller：プログラマブルコントローラ）などへ入力され、画像処理装置１は、ＦＡ（Factory Automation）センサーとして使用される。
【００１７】
カメラ１２は、被写体を撮影して画像データを生成し、カメラ画像として出力する撮像装置であり、画像処理コントローラ１１に着脱可能に接続される。カメラ１２は、検査対象物が搬送される搬送ライン上に配置され、検査対象物を被写体として撮影が行われる。
【００１８】
ディスプレイ１３ａは、検査対象物を撮影して得られたカメラ画像やカメラ画像に基づく画像処理結果を表示するための出力装置である。このディスプレイ１３ａは、画像処理コントローラ１１によって表示制御され、通常、画像処理コントローラ１１の近傍に配置される。つまり、このディスプレイ１３ａは、画像処理コントローラ１１が運転中である場合に、画像処理コントローラ１１の動作状態をユーザに確認させるための表示装置となっている。操作ユニット１３ｂは、ディスプレイ１３ａ上でフォーカス位置を移動させたり、メニュー項目を選択するための入力装置である。
【００１９】
画像処理コントローラ１１は、カメラ１２からのカメラ画像を取り込んで処理し、カメラ画像に基づいて行った判定結果を示す判定信号を処理結果として出力する画像処理装置１の本体ユニットである。カメラ画像の取得動作は、例えば、ＰＬＣなどの外部機器から入力される制御信号であって、カメラ画像を取り込むタイミングを規定する撮像トリガ信号に基づいて行われる。
【００２０】
この画像処理コントローラ１１には、最大で４台のカメラ１２が接続され、これらのカメラ１２から取得したカメラ画像に基づいて画像処理が行われる。画像処理コントローラ１１から出力される判定信号は、製品の良否などの判定結果を示す信号として生成される。
【００２１】
また、画像処理コントローラ１１には、ディスプレイ１３ａ及び操作ユニット１３ｂが接続されており、ＰＣ２を接続しなくても、操作ユニット１３ｂを入力装置とし、ディスプレイ１３ａを出力装置として動作させることができる。
【００２２】
ＰＣ２は、画像処理コントローラ１１の制御プログラムを作成するプログラム作成装置であり、ＰＣ２上で動作するエディタ（ソフトウェア）によって制御プログラムが生成される。画像処理コントローラ１１の制御プログラムを作成する際、ＰＣ２上でシミュレーションして動作確認することができる。
【００２３】
ＰＣ２では、画像処理コントローラ１１によるディスプレイ１３ａ上の表示態様を規定するレイアウト情報が作成される。このレイアウト情報もエディタによってＰＣ２における編集画面上で作成され、制御プログラム及びレイアウト情報からなる検査設定データが生成される。
【００２４】
ＰＣ２と画像処理装置１の画像処理コントローラ１１とは、イーサネット（Ethernet：登録商標）などの通信ネットワークを介して接続される。ＰＣ２には、複数の画像処理コントローラ１１が着脱可能に接続される。ＰＣ２上で作成した検査設定データを画像処理コントローラ１１に転送することにより、画像処理コントローラ１１内の検査設定データを書き換えることができる。また、画像処理コントローラ１１内の検査設定データを取り込んでＰＣ２上で編集することもできる。このＰＣ２は、通常、画像処理装置１のメンテナンス時に画像処理コントローラ１１が接続される。
【００２５】
この検査支援システムでは、画像処理コントローラ１１の運転中にカメラ１２から取得したカメラ画像や、カメラ画像から抽出した計測結果が履歴情報として蓄積され、必要に応じてディスプレイ１３ａやＰＣ２上に表示させることができる。
【００２６】
<システム構成>
図２は、図１の検査支援システムのシステム構成の一例を示したブロック図である。この検査支援システム１００は、１台のＰＣ２と、通信ネットワーク３を介してＰＣ２に接続された複数の画像処理装置１により構成される。ＰＣ２上で作成された制御プログラムは、検査設定データ２２としてメモリ２１内に格納される。
【００２７】
ＰＣ２上で作成された検査設定データ２２は、通信ネットワーク３を介して画像処理コントローラ１１に転送される。このとき、転送先を指定して検査設定データ２２を転送することにより、所望の画像処理コントローラ１１について、メモリ１４内の検査設定データ１５を更新し、或いは、メモリ１４内に新たな検査設定データを追加することができる。
【００２８】
この画像処理コントローラ１１では、フラッシュメモリなどのメモリ１４内に複数の検査設定データ１５が保持されている。各検査設定データ１５は、処理手順や検査内容が異なる制御プログラムからなり、ユーザ操作に基づいて実行対象とする検査設定データ１５を変更することができる。
【００２９】
ＰＣ２では、通信ネットワーク３によって接続されている画像処理コントローラ１１から検査設定データ１５を取得して編集する動作が行われる。
【００３０】
<エディタ画面>
図３は、図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、検査設定データ２２を作成するためのエディタ画面４０が示されている。エディタ画面４０は、ＰＣ２上で検査設定データを新たに作成し、或いは、画像処理コントローラ１１から取得した検査設定データを編集するための編集画面であり、ＰＣ２上に表示される。
【００３１】
このエディタ画面４０は、それぞれ表示位置や表示範囲が変更可能な複数のウィンドウ画面からなる。具体的には、システムビューウィンドウ４１、パーツリストウィンドウ４２、ユニットプロパティウィンドウ４３、ビジョンビューウィンドウ４４及びリザルトビューウィンドウ４５からなる。
【００３２】
システムビューウィンドウ４１は、システム構成や編集対象とする検査設定データを一覧表示するためのウィンドウ画面であり、コントローラ一覧画面４１ａ及びワークスペース一覧画面４１ｂからなる。
【００３３】
コントローラ一覧画面４１ａは、ＰＣ２に接続されている画像処理コントローラ１１を一覧表示するための画面であり、画像処理コントローラ１１を示すアイコンや、画像処理コントローラ１１内に保持されている検査設定データ１５を示すアイコンが表示されている。
【００３４】
画像処理コントローラ１１や検査設定データ１５を示す各アイコンは、ツリー形式で表示されている。すなわち、画像処理コントローラ１１を上階層とし、この画像処理コントローラ１１内に保持されている検査設定データ１５を下階層として、検査設定データ１５がどの画像処理コントローラ１１に保持されているのかが識別可能なように表示されている。
【００３５】
ワークスペース一覧画面４１ｂは、編集対象とする検査設定データを一覧表示するための画面であり、画像処理コントローラ１１ごとに設けられるメモリ２１上の作業領域を示すアイコンや、検査設定データを示すアイコンが表示されている。画像処理コントローラ１１ごとに設けられるメモリ２１上の作業領域は、該当する画像処理コントローラ１１に関連付けられており、ワークスペースとして表示されている。つまり、ＰＣ２上には、検査設定データが画像処理コントローラ１１ごとに保持され、画像処理コントローラ１１ごとのワークスペースにおいて編集が行われる。
【００３６】
この様な作業領域を示すアイコンや検査設定データを示すアイコンは、ツリー形式で表示されている。すなわち、画像処理コントローラ１１に対応するワークスペースを上階層とし、このワークスペース内の検査設定データを下階層として、検査設定データがどのワークスペースに存在するのかが識別可能なように表示されている。
【００３７】
コントローラ一覧画面４１ａの見出し欄に配置されている更新ボタン（アイコン）を操作すれば、画像処理コントローラ１１から新たに検査設定データが取得され、ＰＣ２上に保持されている検査設定データやシステム構成が最新のものに更新される。また、登録ボタンを操作すれば、ＰＣ２上で作成された検査設定データが画像処理コントローラ１１に転送される。
【００３８】
ワークスペース一覧画面４１ｂの見出し欄に配置されている更新ボタン（アイコン）を操作すれば、画像処理コントローラ１１から取得された検査設定データによって、編集対象とする検査設定データが更新される。また、追加ボタンを操作すれば、新たな作業領域が設けられ、検査設定データを示すアイコンが追加される。
【００３９】
パーツリストウィンドウ４２は、検査設定データを作成する際に選択可能な処理ユニットをユニット一覧として表示するためのウィンドウ画面である。処理ユニットは、パラメータが変更可能な処理を示すシンボルであり、画像処理を示す画像処理ユニット、撮像処理を示す撮像ユニット、フロー制御処理を示す制御ユニット、及び、出力処理を示す出力ユニットなどが処理ユニットとして設けられている。この様な処理ユニットを後述するフロービューウィンドウ内のフローチャート上に配置することによって、所望のフローシーケンスからなる制御プログラムが作成される。
【００４０】
パーツリストウィンドウ４２内には、複数の処理ユニットが表示される。この例では、処理の種類によって処理ユニットが８つのカテゴリーに区分され、各カテゴリーを示すアイコンが表示されている。具体的には、「画像入力」、「計測」、「制御」、「演算」、「タイミング」、「表示」、「出力」及び「コマンド出力」のカテゴリーに区分されている。
【００４１】
「画像入力」は、撮像に関する処理ユニットが属するカテゴリーであり、カメラ画像を取り込む撮像ユニットが属している。撮像ユニットには、シャッタースピード、カメラ感度、フラッシュ遅延時間、フラッシュオン時間、撮像対象カメラ、フラッシュ端子及びトリガ端子を指定するためのパラメータがプロパティとして関連付けられている。
【００４２】
「計測」は、計測に関する処理ユニットが属するカテゴリーであり、パターンサーチユニット、エッジ位置検出ユニット、ブロブ検出ユニット、色検査ユニットなどの画像処理ユニットが属している。
【００４３】
パターンサーチは、カメラ画像上のサーチ領域内を走査して予め登録されたパターン画像と一致する位置を検出する処理である。エッジ位置検出は、カメラ画像上の計測領域について、検出方向に垂直な方向の平均濃度を求め、検出方向の濃度変化からエッジの位置を検出する処理である。
【００４４】
ブロブ検出は、カメラ画像を２値化し、同一濃度を有する画素の塊をブロブとして抽出して、計測領域内に存在するブロブの数、面積、重心位置を検出する処理である。色検査は、検査領域内の色を測定する処理であり、色に対応する数値が計測結果として抽出される。
【００４５】
この様な計測に関する画像処理では、検査対象物の形状、サイズ、カメラ画像内における位置などが検知され、その計測値が画像処理結果として出力される。また、計測値と、ユーザが予め指定したパラメータとを比較し、この比較結果に基づいて検査対象物の良否、例えば、不具合や異常の有無を判定し、その判定結果が画像処理結果として出力される。
【００４６】
「制御」は、制御に関する処理ユニットが属するカテゴリーであり、繰返しユニット、バイパスユニット、エンドシンボルなどの制御ユニットが属している。繰返しユニットは、実行フローを繰り返す際の始点を示す繰返し開始ユニットと、終点を示す繰返し終了ユニットとからなる処理ユニットであり、所定の条件が満たされるまで開始ユニット及び終了ユニット間の実行フローを繰り返させる処理を示す。
【００４７】
バイパスユニットは、実行フローを２つの枝フローに分岐させる分岐ユニットと、この分岐ユニットによって分岐された枝フローを合流させる合流ユニットとからなる処理ユニットであり、所定の条件で実行フローを分岐させる処理を示す。エンドシンボルは、１回のフローシーケンスを終了させるための表示オブジェクトである。
【００４８】
「演算」は、演算に関する処理ユニットが属するカテゴリーであり、数値演算ユニット及び位置補正ユニットの画像処理ユニットが属している。「タイミング」は、フロー遷移の停止動作に関する処理ユニットが属するカテゴリーであり、ウェイトユニット、イベント待ちユニットなどの制御ユニットが属している。ウェイトユニットは、所定時間だけフロー遷移を停止させる処理を示す。イベント待ちユニットは、端子入力や変数値が所定の状態となるまでフロー遷移を停止させる処理を示す。
【００４９】
「表示」は、表示に関する処理ユニットが属するカテゴリーであり、グラフィック表示ユニットなどの画像処理ユニットが属している。グラフィック表示ユニットは、他の処理ユニットを参照し、当該処理ユニットの処理結果をグラフィカルに表示する処理を示す。
【００５０】
「出力」は、出力に関する処理ユニットが属するカテゴリーであり、端子出力ユニット、結果出力ユニット、画像出力ユニットなどの出力ユニットが属している。端子出力ユニットには、参照先ユニット、判定結果及び判定結果の出力先端子を指定するためのパラメータがプロパティとして関連付けられている。結果出力ユニットには、参照先ユニット、処理結果を示す数値データ、数値データを出力する際のデータ形式（テキスト形式又はバイナリ形式）、及び、数値データの出力先を指定するためのパラメータがプロパティとして関連付けられている。画像出力ユニットには、参照先ユニット、カメラ画像、画像データを出力する際のデータ形式、及び、画像データの出力先を指定するためのパラメータがプロパティとして関連付けられている。
【００５１】
「コマンド出力」は、コマンド出力に関する処理ユニットが属するカテゴリーであり、コマンド発行ユニット、表示パターン切替ユニット及びダイアログ表示ユニットの出力ユニットが属している。コマンド発行ユニットは、画像登録、検査設定の切替え、リセットなどのコマンドを発行する処理を示す。
【００５２】
ユニットプロパティウィンドウ４３は、コントローラ一覧画面４１ａ、ワークスペース一覧画面４１ｂ又はフロービューウィンドウ上で選択された処理ユニットのプロパティを表示するためのウィンドウ画面である。
【００５３】
ビジョンビューウィンドウ４４は、コントローラ一覧画面４１ａ、ワークスペース一覧画面４１ｂ又はフロービューウィンドウ上で選択された処理ユニットに関連付けられているカメラ画像を表示するためのウィンドウ画面である。
【００５４】
リザルトビューウィンドウ４５は、コントローラ一覧画面４１ａ、ワークスペース一覧画面４１ｂ又はフロービューウィンドウ上で選択された処理ユニットのパラメータと、シミュレーション結果とを表示するためのウィンドウ画面である。
【００５５】
このエディタ画面４０では、システムビューウィンドウ４１の下部に配置されているフロービューボタン４１ｃを操作すれば、上述したシステムビューウィンドウ４１に代えて、フロービューウィンドウを表示させることができる。フロービューウィンドウは、画像処理コントローラ１１に実行させる処理手順をフローチャートとして表示するウィンドウ画面であり、ワークスペース一覧画面４１ｂ上で選択された検査設定データが表示される。
【００５６】
また、リザルトビューウィンドウ４５の下部に配置されている抽出一覧ボタン４５ａを操作すれば、リザルトビューウィンドウ４５に代えて、抽出一覧ウィンドウを表示させることができる。抽出一覧ウィンドウは、リザルトビューウィンドウ４５上で選択されたパラメータ及び処理結果を抽出して処理ユニットごとの抽出結果を一覧表示するためのウィンドウ画面である。
【００５７】
<フロービューウィンドウ>
図４は、図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、フロービューウィンドウ４６が表示されたエディタ画面４０が示されている。フロービューウィンドウ４６は、検査設定データの制御プログラムを新たに作成し、或いは、画像処理コントローラ１１から取得した制御プログラムを編集するために、処理手順を示すフローチャート４７を表示するウィンドウ画面である。
【００５８】
フロービューウィンドウ４６には、複数の処理ユニット４８を配列することによって構成されたフローチャート４７が表示されている。フローチャート４７には、スタートシンボル「Ｓ」において開始し、エンドシンボル「Ｅ」において終了する実行フロー上で時系列に実行される処理ユニットが表されている。ユーザは、この様な実行フロー上に処理ユニット４８を配置することによって所望の制御プログラムを構成することができる。
【００５９】
つまり、画像処理コントローラ１１に行わせる一連の画像処理は、処理ユニットとしてブロック化されており、ユーザは、処理ユニットをフロービューウィンドウ４６内の実行フロー上に配置するだけで、当該処理ユニットが直前の処理ユニットの処理結果に基づいて所定の処理を行うフローシーケンスを作成することができる。
【００６０】
フロービューウィンドウ４６の下部に配置されているシステムビューボタン４６ａを操作すれば、このフロービューウィンドウ４６に代えて、システムビューウィンドウ４１を表示させることができる。
【００６１】
フロービューウィンドウ４６上で選択されている処理ユニットは、フォーカス表示され、ユニットプロパティウィンドウ４３内にそのプロパティが表示される。ユニットプロパティウィンドウ４３内には、編集ボタン４３ａが配置され、編集ボタン４３ａを操作すれば、処理ユニットのプロパティを編集するためのプロパティ編集画面が表示される。プロパティ編集画面は、ユーザ操作に基づいて処理ユニットのパラメータを指定し、或いは、既に指定されているパラメータを変更するための編集画面である。
【００６２】
<フローチャート>
図５は、図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、フロービューウィンドウ４６内のフローチャート４７の一例が示されている。このフローチャート４７は、スタートシンボル６１ａで開始し、エンドシンボル６１ｂで終了する実行フロー上に複数の処理ユニットが配置されている。
【００６３】
フロービューウィンドウ４６上でフローチャート４７を作成編集する場合、パーツリストウィンドウ４２を用いて作業が行われる。例えば、フローチャート４７内に処理ユニットを挿入する際には、パーツリストウィンドウ４２上で所望の処理ユニットを選択し、マウスポインタなどで実行フロー上の位置を指定することによって挿入される。
【００６４】
この例では、フローチャート４７が、分岐ユニット６２ａ、撮像ユニット、色検査ユニット、数値演算ユニット、合流ユニット６２ｂ、ブロブ検出ユニット、繰返し開始ユニット６５ａ、エッジ位置検出ユニット、パターンサーチユニット、繰返し終了ユニット６５ｂ及びグラフィック表示ユニットをこの順序で実行フロー上に配置することによって構成されている。
【００６５】
分岐ユニット６２ａ及び合流ユニット６２ｂは、バイパスユニットを構成する制御ユニットであり、実行フロー上にバイパスユニットを挿入する際には、常に分岐ユニット６２ａ及び合流ユニット６２ｂを対にして挿入される。
【００６６】
この例では、スタートシンボル６１ａからの実行フローが分岐ユニット６２ａにより２つの枝フロー６３に分岐され、この分岐ユニット６２ａで分岐された枝フローが合流ユニット６２ｂにおいて合流されている。その際、一方の枝フロー６３は、撮像ユニット、色検査ユニット及び数値演算ユニットを経て合流ユニット６２ｂに達しているのに対して、他方の枝フロー６３は、撮像ユニットを経て合流ユニット６２ｂに達するバイパス経路（迂回路）となっている。
【００６７】
繰返し開始ユニット６５ａ及び繰返し終了ユニット６５ｂは、繰返しユニットを構成する制御ユニットであり、実行フロー上に繰返しユニットを挿入する際にも、繰返し開始ユニット６５ａ及び繰返し終了ユニット６５ｂを対にして挿入される。
【００６８】
この例では、繰返し開始ユニット６５ａ及び繰返し終了ユニット６５ｂ間にエッジ位置検出ユニット及びパターンサーチユニットが配置されており、実行時にはエッジ位置検出ユニット及びパターンサーチユニットの処理が繰り返される。
【００６９】
フローチャート４７内の分岐ユニット６２ａ及び繰返し開始ユニット６５ａには、折畳みアイコン６４ａが配置されている。この折畳みアイコン６４ａは、制御ユニット間の実行フローを省略してフローチャート４７を表示させるためのアイコンであり、処理ユニットに隣接させて表示される。
【００７０】
また、フローチャート４７上で選択されている処理ユニットは、フォーカス表示され、ユニットプロパティウィンドウ４３内に当該処理ユニットのプロパティを表示させ、或いは、編集対象として当該処理ユニットのプロパティを変更することができる。
【００７１】
<履歴蓄積>
図６は、図２の検査支援システム１００における画像処理コントローラ１１の構成例を示したブロック図であり、画像処理コントローラ１１内の機能構成の一例が示されている。この画像処理コントローラ１１は、メモリ１４、プログラム実行部１６、履歴蓄積制御部１７、蓄積条件決定部１８、履歴情報転送部１９及び表示制御部２０により構成される。メモリ１４は、ＰＣ２から転送された検査設定データ１５を保持する制御プログラムの記憶手段である。
【００７２】
プログラム実行部１６は、メモリ１４内に保持されている制御プログラムを読み出して実行し、一連の画像処理を行う処理部である。このプログラム実行部１６では、計測対象とするカメラ画像を撮像トリガ信号に基づいてカメラ１２から取得する際の取得サイクルを計測周期として、制御プログラムが繰返し実行される。
【００７３】
制御プログラムを繰返し実行する際の周期（計測周期）は、当該制御プログラムに対応するフローチャート４７によって規定されるものとする。すなわち、フローチャート４７上のスタートシンボル（ユニット）からエンドシンボルまでのフローシーケンスを１周期分の画像処理として、計測周期が定められる。従って、フローチャート４７上に１つの撮像ユニットが配置されている場合には、１つのカメラ画像を計測対象として取得するごとに、カメラ画像に基づいて１回の計測が行われ、当該カメラ画像から計測結果が抽出されることとなる。
【００７４】
メモリ１４内に複数の検査設定データ１５が保持されている場合には、ユーザが実行対象として選択指定した検査設定データに基づいて画像処理が行われる。
【００７５】
履歴蓄積制御部１７は、履歴バッファ１７ａ及び１７ｂを有し、制御プログラムの実行時に得られる計測結果及びカメラ画像を履歴情報として抽出し、履歴バッファ１７ａ及び１７ｂ内に格納する動作を行っている。
【００７６】
履歴バッファ１７ａは、プログラム実行部１６によって実行された処理ユニットごとの計測結果を計測周期ごとの履歴情報として抽出し、処理ユニット及び計測周期に関連付けて保持する第１履歴情報蓄積手段であり、バッファメモリからなる。この履歴バッファ１７ａには、例えば、計測周期ごとの計測結果データＡ１１と、この計測結果データＡ１１を処理ユニットに関連付けるためのユニット識別情報Ａ１２とが履歴情報として保持されている。
【００７７】
履歴バッファ１７ｂは、制御プログラムの実行中にプログラム実行部１６によってカメラ１２から取得されたカメラ画像を計測周期ごとの履歴情報として抽出し、計測周期に関連付けて保持する第２履歴情報蓄積手段であり、バッファメモリからなる。この履歴バッファ１７ｂには、例えば、計測周期ごとのカメラ画像データＡ２１が履歴情報として保持されている。
【００７８】
制御プログラムに基づく画像処理の結果から計測結果やカメラ画像を履歴情報として抽出する際の抽出方法には、全抽出、判定抽出などがある。この全抽出は、処理ユニットごとに得られる計測結果や計測周期ごとのカメラ画像を全て履歴情報として抽出させる方法である。
【００７９】
一方、判定抽出は、ユーザによって予め指定された処理ユニットにおける検査対象物の判定結果に基づいて、履歴情報を抽出させる方法であり、当該処理ユニットの判定結果に応じて履歴情報として抽出するか否かが決定される。
【００８０】
ここで、処理ユニットの判定結果に基づいて履歴情報を抽出させる際に抽出対象とする処理ユニットは、当該処理ユニットを含む全ての処理ユニットであるものとする。つまり、処理ユニットの判定結果が所定値である場合には、当該処理ユニットを含む全ての処理ユニットの計測結果が履歴情報として抽出される。この様な履歴情報の抽出方法は、検査設定データ１５ごとに指定することができる。
【００８１】
蓄積条件決定部１８は、履歴蓄積制御部１７が履歴情報を履歴バッファ１７ａ，１７ｂ内に蓄積する際の蓄積数の上限を決定する動作を行っている。この蓄積数の上限の決定は、ユーザ操作に基づいて行われ、例えば、計測周期ごとに履歴情報を蓄積させる際の最大蓄積数が蓄積数の上限として予め定められる。
【００８２】
履歴蓄積制御部１７では、蓄積条件決定部１８によって決定された蓄積数の上限に基づいて、古くなった履歴情報に新たに抽出した履歴情報を上書きする動作が行われる。すなわち、履歴バッファ１７ａ，１７ｂ内に保持されている履歴情報の蓄積数が、蓄積条件決定部１８によって定められた最大蓄積数に達すると、新たに抽出した履歴情報を上書き保存させる動作が行われる。この場合、各履歴バッファ１７ａ，１７ｂは、リングバッファとして動作することとなる。
【００８３】
ここでは、履歴バッファ１７ａ，１７ｂ上の履歴情報は、実行対象とする制御プログラムが変更されると、消去されるものとする。
【００８４】
履歴情報転送部１９は、履歴バッファ１７ａ及び１７ｂ内に保持されている履歴情報をＰＣ２へ転送する動作を行っている。表示制御部２０は、履歴バッファ１７ａ，１７ｂ内の履歴情報をディスプレイ１３ａ上に表示する動作を行っている。この履歴情報の表示は、ユーザ操作に基づいて行われ、処理ユニットごとの計測結果がカメラ画像上にグラフィカルに表示される。
【００８５】
すなわち、この画像処理コントローラ１１では、処理ユニットごとの計測結果Ａ１１と、カメラ１２から取得したカメラ画像Ａ２１とが計測周期ごとの履歴情報として保持されるので、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。その際、計測結果Ａ１１及びカメラ画像Ａ２１がいずれも計測周期に関連付けて保持されるので、制御プログラムを再度実行させることなく、計測結果Ａ１１をカメラ画像Ａ２１上にグラフィカルに表示させることができる。従って、他の検査設定データを実行中であっても、計測結果をカメラ画像上にグラフィカルに表示させて履歴を再現させることができる。
【００８６】
また、制御プログラムが繰返し実行されるごとに時系列で変化する変数（カウンタなど）の状態は計測結果Ａ１１に反映されているので、計測結果Ａ１１及びカメラ画像Ａ２１を計測周期に関連付けて保持することによって、履歴を正確に再現することができる。さらに、外部入力を参照して画像処理を行う制御プログラムの場合にも、外部入力の状態の変化は計測結果Ａ１１に反映されているので、履歴を正確に再現することができる。
【００８７】
計測結果Ａ１１のグラフィカル表示は、例えば、検査設定データ１５から処理ユニットのパラメータを抽出するとともに、履歴情報から計測結果Ａ１１を抽出することによって行われ、計測領域や検出位置を示す図形がカメラ画像Ａ２１上に表示される。
【００８８】
一方、ＰＣ２上では、画像処理コントローラ１１から転送された履歴情報を、ユーザ操作に基づいてエディタ画面４０上に表示する動作が行われる。その際、計測結果Ａ１１及びカメラ画像Ａ２１が計測周期ごとの履歴情報として保持されるので、制御プログラムをシミュレーションすることなく、計測結果Ａ１１をカメラ画像Ａ２１上にグラフィカルに表示させることができ、制御プログラムに基づく一連の画像処理の過程をＰＣ２上で再現させることができる。
【００８９】
<エディタの機能構成>
図７は、図２の検査支援システム１００におけるＰＣ２の構成例を示したブロック図であり、画像処理コントローラ１１の制御プログラムを作成するエディタの機能構成の一例が示されている。このＰＣ２は、メモリ２１、処理ユニット記憶部２３、フローチャート表示部２４、プログラム生成部２５、プログラム転送部２６、操作入力部２７、履歴表示部２８及び履歴情報記憶部２９により構成される。
【００９０】
処理ユニット記憶部２３には、撮像ユニットや計測ユニットなどの処理ユニットが保持されている。フローチャート表示部２４は、スタートシンボルにおいて開始し、エンドシンボルにおいて終了する実行フロー上に処理ユニットを配置することによって生成されたフローチャート４７をエディタ画面４０のフロービューウィンドウ４６上に表示する動作を行っている。
【００９１】
プログラム生成部２５は、ユーザがフロービューウィンドウ４６上で作成したフローチャート４７を実行形式に変換することにより、画像処理コントローラ１１の制御プログラムを生成する動作を行っている。
【００９２】
メモリ２１には、プログラム生成部２５により生成された制御プログラムが検査設定データ２２として保持される。プログラム転送部２６は、メモリ２１内の検査設定データ２２を画像処理コントローラ１１へ転送する動作を行っている。
【００９３】
履歴情報記憶部２９には、画像処理コントローラ１１から転送された計測周期ごとの履歴情報２９ａが保持されている。この履歴情報２９ａは、メモリ２１内の検査設定データ２２に関連付けて保持される。
【００９４】
履歴表示部２８は、履歴情報記憶部２９内に保持されている履歴情報２９ａをエディタ画面４０上に表示する動作を行っている。この履歴表示部２８では、例えば、フローチャート４７上でユーザが選択した処理ユニットについて、履歴情報２９ａを表示する動作が行われる。すなわち、ユーザが選択した処理ユニットに関連付けられている履歴情報を抽出し、抽出した履歴情報の計測結果がカメラ画像上に表示される。
【００９５】
計測結果をカメラ画像上に表示する際に、当該処理ユニットのパラメータを参照することによって、計測結果をグラフィカルに表示させることができる。つまり、画像処理コントローラ１１の運転中にディスプレイ１３ａ上に表示されるのと同じように、計測結果をＰＣ２上に表示させることができる。
【００９６】
<蓄積条件設定画面>
図８は、図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、履歴情報を蓄積させる際の蓄積条件を定めるための蓄積条件設定画面７０が示されている。この蓄積条件設定画面７０は、画像処理コントローラ１１が履歴情報を蓄積する際の蓄積条件をＰＣ２上で設定するための入力画面であり、ユーザ操作に基づいてエディタ画面４０上に表示される。
【００９７】
蓄積条件設定画面７０には、蓄積方法として、蓄積単位を指定するための入力欄７１と、シリーズ内世代数を指定するための入力欄７２と、蓄積回数を指定するための入力欄７３と、蓄積モードを指定するための入力欄７４と、蓄積対象を指定するための入力欄７５とが設けられている。
【００９８】
蓄積単位は、計測周期ごとに履歴情報を蓄積保存させる際の処理単位であり、１周期を単位とする「シングル履歴」と、複数周期を単位とする「シリーズ履歴」とが選択可能となっている。シリーズ内世代数は、１周期を１世代とする世代数であり、シリーズ履歴として蓄積保存させる世代数を選択指定することができる。
【００９９】
蓄積回数は、履歴情報を蓄積保存させる際の蓄積数の上限である。蓄積モードは、履歴情報を蓄積保存させる際のメモリへの書込み方法であり、上書きモード又は非上書きモードのいずれかを選択することができる。
【０１００】
蓄積対象の入力欄７５では、蓄積対象とするカメラ画像を選択指定し、或いは、計測結果を蓄積させるか否かを選択することができる。
【０１０１】
蓄積条件設定画面７０上で選択指定された入力情報を画像処理コントローラ１１へ転送することによって、履歴情報を所望の蓄積条件で蓄積させることができる。
【０１０２】
<履歴再現>
図９は、図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、ビジョンウィンドウ４４及びユーザウィンドウ４９内に履歴情報が表示されたエディタ画面４０が示されている。ビジョンウィンドウ４４及びユーザウィンドウ４９は、カメラ画像を表示するためのウィンドウ画面である。
【０１０３】
ビジョンウィンドウ４４やユーザウィンドウ４９内に履歴情報を表示させる履歴再現モードでは、ビジョンウィンドウ４４内に、フロービューウィンドウ４６上で選択されている処理ユニットについて、画像処理に使用されたカメラ画像が履歴情報として表示される。なお、カメラ画像を表示する際の表示方法としては、スルー画像又はフィルタ処理後画像のいずれかを選択することができる。表示方法として、スルー画像を選択した場合は、履歴情報として保持されたカメラ画像であって、フローチャート上で選択されている処理ユニットにおける画像処理に使用されたカメラ画像がそのまま表示される。一方、フィルタ処理後画像を選択した場合には、処理ユニットにおける画像処理に使用されたカメラ画像であって、計測結果を求める処理の前処理として行われたフィルタ処理後の画像データからなるカメラ画像が表示される。
【０１０４】
この例では、色検査ユニットにおける色検査処理に使用されたカメラ画像（スルー画像）が表示されている。このカメラ画像上には、検査対象とする画像領域を示す図形、すなわち、円形状の枠５０がグラフィカル表示されている。
【０１０５】
一方、ユーザウィンドウ４９には、フロービューウィンドウ４６上でユーザが選択した複数の処理ユニットの履歴情報が同時に表示されている。この例では、色検査ユニット及びエッジ位置検出ユニットにおける画像処理に使用されたカメラ画像上に、色検査の検査領域を示す円形状の枠５０と、エッジ位置検出で検出されたエッジを示す線分５２及びエッジ位置検出の計測領域を示す矩形形状の枠５１とが表示されている。
【０１０６】
また、リザルトビューウィンドウ４５内には、フロービューウィンドウ４６上で選択されている処理ユニットのパラメータと、履歴情報としての計測結果とが表示されている。このリザルトビューウィンドウ４５内には、処理ユニットのプロパティ編集時に、編集ダイアログ上でユーザが指定したパラメータが一覧表示されている。
【０１０７】
本実施の形態によれば、履歴情報として抽出された計測結果が処理ユニットに関連付けて保持されるので、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。特に、制御プログラム実行時の計測結果及びカメラ画像が履歴情報として抽出され、いずれも計測周期に関連付けて保持されるので、この様にして履歴情報として蓄積された計測結果を表示させれば、制御プログラムを再度実行させることなく、計測結果をカメラ画像上にグラフィカルに表示させることができる。従って、制御プログラムに基づく一連の画像処理の過程を忠実に再現することができる。また、履歴情報として蓄積された計測結果を表示させるだけであって、カメラ画像から計測結果を得るための再計算を必要としないので、画像処理コントローラ１１の運転を停止させることなく、計測結果をカメラ画像上に表示させることができる。
【０１０８】
また、ＰＣ２では、履歴情報をエディタ画面４０上に表示する際、フローチャート４７上で選択された処理ユニットに関連付けられている計測結果をカメラ画像上に表示させるので、画像処理をシミュレーションさせることなく、制御プログラムに基づく一連の画像処理の過程を処理ユニット単位で再現させることができる。その際、処理ユニットのパラメータに基づいて表示を行うので、履歴情報として蓄積された計測結果をカメラ画像上にグラフィカルに表示させることができる。
【図面の簡単な説明】
【０１０９】
【図１】本発明の実施の形態による検査支援システムの一構成例を示した斜視図である。
【図２】図１の検査支援システムのシステム構成の一例を示したブロック図である。
【図３】図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、検査設定データ２２を作成するためのエディタ画面４０が示されている。
【図４】図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、フロービューウィンドウ４６が表示されたエディタ画面４０が示されている。
【図５】図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、フロービューウィンドウ４６内のフローチャート４７の一例が示されている。
【図６】図２の検査支援システム１００における画像処理コントローラ１１の構成例を示したブロック図であり、コントローラ１１内の機能構成の一例が示されている。
【図７】図２の検査支援システム１００におけるＰＣ２の構成例を示したブロック図であり、エディタの機能構成の一例が示されている。
【図８】図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、蓄積条件を定めるための蓄積条件設定画面７０が示されている。
【図９】図２の検査支援システム１００におけるＰＣ２の動作の一例を示した図であり、履歴情報が表示されたエディタ画面４０が示されている。
【符号の説明】
【０１１０】
１  画像処理装置
２  ＰＣ
３  通信ネットワーク
１１  画像処理コントローラ
１２  カメラ
１３ａ  ディスプレイ
１３ｂ  操作ユニット
１４，２１  メモリ
１５，２２  検査設定データ
１６  プログラム実行部
１７  履歴蓄積制御部
１８  蓄積条件決定部
１９  履歴情報転送部
２０  表示制御部
２３  処理ユニット記憶部
２４  フローチャート表示部
２５  プログラム生成部
２６  プログラム転送部
２７  操作入力部
２８  履歴表示部
２９  履歴情報記憶部
４０  エディタ画面
４６  フロービューウィンドウ
４７  フローチャート
４８  処理ユニット
１００  検査支援システム
【図１】
0005060677.tif 000002
【図２】
0005060677.tif 000003
【図６】
0005060677.tif 000004
【図７】
0005060677.tif 000005
【図３】
0005060677.tif 000006
【図４】
0005060677.tif 000007
【図５】
0005060677.tif 000008
【図８】
0005060677.tif 000009
【図９】
0005060677.tif 000010