(57)【特許請求の範囲】
【請求項１】
製品の良否を検査するテストを行うために用いられるテスト用データを記憶するテスト用メモリと、
製品検査用データを記憶する複数の製品検査用メモリと、
検査対象となる製品を撮像した画像データと前記テスト用データと比較して製品の良否を検査するテストをしてテスト用データを何れかの製品検査用メモリに格納するテスト用プログラム、及び、検査対象となる製品を撮像した画像データと何れかの製品検査用メモリに格納された製品検査用データとを用いて製品の良否を検査する製品検査用プログラムを実行する画像処理手段とを備え、
前記画像処理手段は、前記製品検査用プログラムの実行状態時に、前記テスト用プログラムを実行する場合に、前記製品検査用プログラムに従って実行する製品検査タスクの優先度よりも前記テスト用プログラムに従って実行するテストタスクの優先度を低くして、前記製品検査用プログラム及び前記テスト用プログラムを並列処理すること
を特徴とする画像処理装置。
【請求項２】
前記テスト用データを前記製品検査用プログラムが用いる製品検査用データに変更する命令が発生した場合に、前記製品検査用プログラムが使用していない製品検査用データを記憶している一方の製品検査用メモリに前記テスト用データをコピーするデータ通信手段を備え、
前記画像処理手段は、前記データ通信手段によってコピーされたテスト用データを製品検査用データとして用いて製品検査用プログラムを実行することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
複数の検査対象の製品検査用データを格納する記憶部と接続され、前記検査対象を変更する命令が発生した場合に、前記製品検査用プログラムが使用していない製品検査用データを記憶している一方の製品検査用メモリに前記変更された検査対象の製品検査用データをロードするデータ通信手段を備え、
前記画像処理手段は、前記データ通信手段によってロードされた製品検査用データを用いて製品検査用プログラムを実行することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記画像処理手段が前記製品検査用プログラムを実行することによって取得した製品検査結果と、前記画像処理手段が前記テスト用プログラムを実行することによって取得したテスト結果とを表示する表示手段と、
前記テスト結果が前記テスト実行用プログラムを実行することによって取得された場合に、前記製品検査結果に代えて当該テスト結果を表示するように前記表示手段を制御する表示制御手段と
を備えることを特徴とする請求項１乃至請求項３の何れか一項に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像によって製品の良否を検査する画像処理装置に関する。
【背景技術】
【０００２】
従来より、製品の良否判定を画像処理によって行う画像検査システムが知られている。この画像検査システムは、検査精度を向上させるために、実際の検査の前にテストを実施する。このテスト処理においては、製造ライン上の製品を撮像するカメラのパラメータ設定や、当該カメラによって撮像された画像に対する画像処理のパラメータ設定などを行う。したがって、従来の画像検査システムにおいては、製造ラインの製品検査処理の前にテスト処理を行うことが通例となっており、製造ラインの製品検査処理の最中にテスト処理を実施することはできなかった。
【０００３】
また、テスト処理を行う従来の技術としては、下記の特許文献１に記載されたものが知られている。この特許文献１に記載されたテスト実行システムは、組み込み型マイクロコンピュータシステムの制御ソフトウェアのテストを、多角的なビジュアル画面を連動表示させて実施する。このために、テスト実行システムは、装置の形状、入出力に関する情報を定義した装置情報をもとに装置シミュレーションを実施し、装置の制御プログラムをテストする。制御プログラムと装置情報内で定義された装置とは、装置対応テーブルにより対応づけがなされている。シミュレート実行プログラムは、制御プログラムを１ステップ解釈するごとに、その１ステップをプログラムトレース表示としてユーザに提示する。それとともに、装置情報から得られる装置の形状データをグラフィック表現し、制御プログラムの１ステップの実行により変化する装置の状況に合わせてアニメーション表示を行う。
【特許文献１】特開平８−１９４６３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の特許文献１に記載されたテスト実行システムは、テスト時の表示内容をテストの進行と共に提示するものであるが、上述した画像検査システムに応用した場合には、製造ラインを一旦止めてテスト実行を行う必要がある。
【０００５】
また、上述の画像検査システムにおいては、製品検査中には、不良と判定された製品画像の確認、計測値の結果履歴の参照などの検査結果の確認しかできなかった。また、製品検査中にも検査条件や検査閾値の変更はできたものの、その変更内容の妥当性を評価するために、製品検査処理に影響せずにテスト検査を行うことができなかった。したがって、製品検査処理と各種設定とを同時に行うことができず、製品検査処理の条件変更、新たな検査エリアの追加又は調整を行うためには、製品検査処理を停止し且つ製造ラインを停止する必要があった。
【０００６】
また、製品検査処理の設定変更を行う他の手法としては、画像検査システムに対してパーソナルコンピュータを接続して、オンラインで行うことができるものの、この手法であっても、製品検査処理の設定変更中には製造ラインを停止する必要があった。
【０００７】
そこで、本発明は、上述した実情に鑑みて提案されたものであり、製品検査処理中においても当該製品検査処理を中止することなく当該製品検査処理の設定を変更することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る画像検査システムは、製品の良否を検査するテストを行うために用いられるテスト用データを記憶するテスト用メモリと、製品検査用データを記憶する複数の製品検査用メモリと、検査対象となる製品を撮像した画像データと前記テスト用データと比較して製品の良否を検査するテストをしてテスト用データを何れかの製品検査用メモリに格納するテスト用プログラム、及び、検査対象となる製品を撮像した画像データと何れかの製品検査用メモリに格納された製品検査用データとを用いて製品の良否を検査する製品検査用プログラムを実行する画像処理手段とを備える。このような画像検査システムは、上述の課題を解決するために、画像処理手段によって、製品検査用プログラムの実行状態時に、テスト用プログラムを実行する場合に、製品検査用プログラムに従って実行する製品検査タスクの優先度よりもテスト用プログラムに従って実行するテストタスクの優先度を低くして、製品検査用プログラム及びテスト用プログラムを並列処理することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、製品検査用プログラムの実行状態時に、テスト用プログラムを実行する場合に、製品検査用プログラムに従って実行する製品検査タスクの優先度よりもテスト用プログラムに従って実行するテストタスクの優先度を低くして、製品検査用プログラム及びテスト用プログラムを並列処理するので、製品検査処理中においても当該製品検査処理を中止することなく当該製品検査処理の設定を変更することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について図面を参照して説明する。
【００１１】
本発明は、例えば図１に示すように構成された画像検査システムに適用される。この画像検査システムは、主として製造ラインにおいて部品等の品種の識別、異種部品の混入検査、組立作業や製品検査などの自動化のために、部品や製品等の対象物の外観検査に使用される。この画像検査システムは、画像処理の結果が対象物の面積、形状、位置などの測定・認識に用いられ、これにより、対象物の良品、不良品などを判定する。
【００１２】
この画像検査システムは、撮像部１と、検査用画像メモリ２と、検査処理部３と、第１検査用データ記憶部４Ａ及び第２検査用データ記憶部４Ｂと、インライン用入出力制御部５と、表示制御部（表示制御手段）６と、表示部（表示手段）７とを備える。
【００１３】
この画像検査システムは、製品の良否検査をする場合に、撮像部１によって製品を撮像した撮像画像データを作成する。この撮像画像データは、検査用画像メモリ２によって取り込まれて一時記憶され、検査処理部３によって検査対象とされる。
【００１４】
検査処理部３は、図示しないプログラムメモリから製品検査用プログラムを読み込んで、当該製品検査用プログラムの指示に従って演算処理（製品検査タスク）を行うマイクロプロセッサからなる。検査処理部３による製品検査タスクの開始トリガ（検査トリガ）は、図示しない操作入力部によってインライン用入出力制御部５に供給され、インライン用入出力制御部５から検査処理部３に供給される。また、インライン用入出力制御部５は、検査処理部３によって得られた製品検査結果を外部出力する。
【００１５】
検査トリガが供給されると、検査処理部３は、検査用画像メモリ２に記憶された撮像画像データと、第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂに記憶された製品検査用データとを用いて、製品の良否検査を行う。例えば、検査処理部３は、検査用画像メモリ２に記憶された画像データと、第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂに予め記憶されていた良品の撮像画像データとの比較を行って、製品の面積、形状、位置などを測定し、良品又は不良品であるという製品検査結果を作成する。この製品検査結果は、表示制御部６を介して表示部７に表示される。
【００１６】
第１検査用データ記憶部４Ａ、第２検査用データ記憶部４Ｂに記憶されている第１検査用データ、第２検査用データは、後述するテストタスクを行うことによって、テスト用データに切り替えられる。
【００１７】
また、この画像検査システムは、検査処理部３による製品の良否判定の精度を向上させるため、又は、検査処理部３によって検査される検査対象を変更する場合に、製品検査タスクにおいて用いる製品検査用データを更新する。このために、この画像検査システムは、テスト用検査処理部８と、テスト用データを記憶するテスト用メモリであるテスト用データ記憶部９と、テスト用検査処理部８の作業領域となるテスト用画像メモリ１０と、データ通信部１１と、記憶装置１２とを備える。
【００１８】
記憶装置１２は、内部保存用メモリ、外部記憶メディア等の記録再生装置からなる。この記憶装置１２には、テスト用データ記憶部９に格納するテスト用データが記億される。記憶装置１２は、図示しない操作入力部に対する操作に基づく指示によって、テスト用データをデータ通信部１１に供給する。また、記憶装置１２は、検査処理部３によって製品検査をしているときの撮像画像データがデータ通信部１１から供給される。記憶装置１２は、検査用画像メモリ２に記憶した撮像画像データを記憶する処理と、テスト用データをデータ通信部１１を介してテスト用データ記憶部９に出力する処理とを同時に行うように、ファイルのマルチオープンを行う。
【００１９】
データ通信部１１は、記憶装置１２との間でイーサネット（登録商標）等の通信インターフェースによって通信接続される。データ通信部１１は、記憶装置１２に記憶されたテスト用データをテスト用データ記憶部９にロードする処理と、検査用画像メモリ２に記憶された撮像画像データを記憶装置１２に記憶する処理と、テスト用データ記憶部９に記憶されたテスト用データを第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂにコピーして上書きする処理とを並列して行う。
【００２０】
テスト用検査処理部８は、図示しないプログラムメモリからテスト用プログラムを読み込んで、当該テスト実行用プログラムの指示に従って演算処理（テストタスク）を行うマイクロプロセッサからなる。
【００２１】
テスト用検査処理部８は、テスト実施時に、テスト用データをテスト用データ記憶部９から読み出すと共にテストに使用する撮像画像データ（テスト用画像）をテスト用画像メモリ１０から読み出す。このテスト用画像メモリ１０のテスト用画像は、撮像部１によって撮像されて検査用画像メモリ２に記憶されている撮像画像データであっても良い。そして、テスト用検査処理部８は、撮像画像データとテスト用データとを用いて、検査処理部３と同様に製品の面積、形状、位置などを測定して良品又は不良品であるというテスト結果を作成する演算処理を行って、テスト結果を表示制御部６に出力する。
【００２２】
表示制御部６は、テスト用検査処理部８からテスト結果が供給されると共に、検査処理部３から製品検査結果が供給される。表示制御部６は、テスト結果を含むテスト用画像を表示部７に供給してテスト用画面７ａを表示させる状態と、製品検査結果を含む検査用画像を表示部７に供給して検査用画面７ｂを表示させる状態とで切り換える。
【００２３】
このような画像検査システムは、検査処理部３及びテスト用検査処理部８が、撮像画像データとテスト用データとを用いて製品検査をテストしてテスト用データを第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂに格納するテスト用プログラム、及び、撮像画像データと第１又は第２検査用データとを用いて製品の良否を検査する製品検査用プログラムを実行する画像処理手段として機能する。
【００２４】
また、画像検査システムは、検査処理部３によって製品検査タスクを行っている製品検査用プログラムの実行状態時に、テスト用検査処理部８によってテスト用プログラムを実行する場合に、製品検査用プログラムに従って実行する製品検査タスクの優先度よりもテスト用プログラムに従って実行するテストタスクの優先度を低くして、マイクロプロセッサによって、製品検査用プログラム及びテスト用プログラムを並列処理する。すなわち、製品検査タスクによって製品検査結果を表示制御部６に出力して一時的に終了した時に、テストタスクを開始する。
【００２５】
このような画像検査システムは、検査処理部３及びテスト用検査処理部８を構成するマイクロプロセッサによって、図２に示すように、製品検査の実行処理系のタスクである製品検査タスクと、製品検査の設定を行う設定処理系のテストタスクとを並列処理する。なお、この画像検査システムを稼働させた当初は、第１検査用データ記憶部４Ａと第２検査用データ記憶部４Ｂとに同一の製品検査用データが記憶されている。
【００２６】
テスト用検査処理部８による実行処理系の製品検査タスクは、先ずステップＳ１において、検査トリガが入力されると、ステップＳ２において撮像部１によって撮像されている撮像画像データを検査用画像メモリ２に取り込ませる。この検査トリガは、図示しないユーザに操作される操作入力部となる簡易型リモコン等によって発生されて、インライン用入出力制御部５を介してテスト用検査処理部８が検知する。この簡易型リモコンは、方向キー及び決定キーを含む簡易型入力装置であって、マウス等と比較して操作性が乏しいものが挙げられる。
【００２７】
次にテスト用検査処理部８は、データ切替フラグがＯＮとなっているか否かを判定する。このデータ切替フラグは、設定処理系のテストタスクによって製品検査用データの変更が行われて、製品検査タスクに用いる製品検査用データを切り替える必要がある場合に、ＯＮとされ、そうではない場合にはＯＦＦとされる。データ切替フラグがＯＮとなっていない場合には、ステップＳ６に処理を進めて製品検査タスクを実行し、ステップＳ７において製品検査結果を表示制御部６に出力する。
【００２８】
一方、データ切替フラグがＯＮとなっている場合には、ステップＳ４において、製品検査タスクに用いる製品検査用データを第１検査用データと第２検査用データとの間で切り替える。すなわち、現状で製品検査タスクで使用していた製品検査用データが第１検査用データである場合には、製品検査用データを第２検査用データに切り替え、逆に、現状で製品検査タスクで使用していた製品検査用データが第２検査用データである場合には、製品検査用データを第１検査用データに切り替える。
【００２９】
次のステップＳ５においては、テスト用検査処理部８によって、データ切替フラグをＯＦＦに設定して、ステップＳ６及びステップＳ７を行うことによって、表示部７を検査用画面７ｂにして、処理をステップＳ１に戻す。
【００３０】
設定処理系のテストタスクは、当該テストタスクよりも優先度が高い実行処理系の製品検査タスクが一時的に終了した時点において、ステップＳ１１以降の処理が開始される。
【００３１】
ステップＳ１１において、図示しない操作入力部の操作に基づいた指示によって、記憶装置１２に記憶されたテスト用データを、データ通信部１１によってテスト用データ記憶部９にロードする。
【００３２】
次のステップＳ１２においては、テスト用検査処理部８によって、テスト用データ記憶部９に記憶されたテスト用データと、テスト用画像メモリ１０に読み込んだ撮像画像データとを用いて、テスト用画像メモリ１０に記憶された撮像画像データの検査、計測といった処理を行う。ここで、現在製造ラインにおいて製造されている製品の良否判定の精度を向上させるためのテストタスクを実行する場合、テスト用データ記憶部９には、第１検査用データ、第２検査用データとは別のデータであって、良品である製品の製品検査用データがテスト用データとしてロードされる。そして、テスト用検査処理部８は、テスト用データと撮像画像データとを比較して、テスト結果を生成して、表示制御部６を介して表示部７をテスト用画面７ａとする。
【００３３】
次のステップＳ１３においては、テスト用検査処理部８によって、ステップＳ１１にて設定したテスト用データを製品検査用データに変更するか否かを判定する。このとき、テスト用検査処理部８は、テスト用画面７ａを視認確認したユーザによる操作入力部の操作に従って、テスト用データを製品検査用データに変更するか否かを判定する。テスト用データを製品検査用データに変更しない場合、テストタスクを終了して処理を終了する。一方、テスト用データを製品検査用データに変更する場合には、ステップＳ１４に処理を進める。
【００３４】
ステップＳ１４においては、データ通信部１１によって、テスト用データ記憶部９に記憶されたテスト用データを、第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂにコピーする。このとき、データ通信部１１は、テストタスクと並列処理されている製品検査タスクにおいて用いられている製品検査用データが第１検査用データか第２検査用データかを識別するフラグを参照する処理などによって、現在製品検査タスクによって用いられていない製品検査用データをテスト用データに変更する。
【００３５】
次のステップＳ１５においては、データ切替フラグをＯＮに設定して、テストタスクを終了する。
【００３６】
このようにテストタスクを行うことによってＯＮとされたデータ切替フラグは、並列処理されている製品検査タスクのステップＳ３において参照された結果、ＯＮとなっていると判定されて、第１検査用データと第２検査用データとの間で製品検査用データの切替が行われる。これによって、製品検査タスクにおいては、テストタスクによって変更された製品検査用データを用いて撮像画像データの製品検査処理を行うことができ、製品検査処理中においても当該製品検査処理を中止することなく当該製品検査処理の設定を変更することができる。
【００３７】
また、この画像検査システムによれば、製造ライン上の製品の画像データや過去の検査において使用したデータを記憶装置１２に記憶させておき、製品検査を行っている場合であっても、製品の良否を判定する閾値調整やテストを実行することができる。
【００３８】
更に、この画像検査システムによれば、製造ライン上の製品の画像データを複数枚記憶装置１２に記憶させておき、各画像データに対する検査計測値を本体に保存しておき、その後に閾値調整を実施することによって、閾値調整調整前後の製品良否判定や計測値等の検査結果の比較及び検証が可能となる。
【００３９】
更にまた、この画像検査システムによれば、操作性の良いパーソナルコンピュータのツールで検査条件の変更や検査閾値の追い込み、調整を行った後の検査プログラムを製品検査中でもアップロードすることができ、瞬時に製品検査に使用する製品検査用プログラムを切り替えることができる。
【００４０】
更にまた、この画像検査システムは、製品検査用データを変更する場面のみならず、製造ライン上の製品が変更されたことによって検査対象が変更した場合に、検査処理部３が用いる製品検査用データを変更することもできる。
【００４１】
この画像検査システムは、図３に示すように、データ通信部１１が、複数の検査対象の製品検査用データを格納する検査データ群記憶部２０と接続されている。画像検査システムは、図示しない操作入力部の操作に基づいて検査対象を変更する命令が発生した場合に、データ通信部１１によって、検査処理部３の製品検査用プログラムが使用していない製品検査用データを記憶している一方の第１検査用データ記憶部４Ａ又は第２検査用データ記憶部４Ｂに、変更された検査対象の製品検査用データをロードする。そして、検査処理部３は、データ通信部１１によってロードされた製品検査用データを用いて製品検査用プログラムを実行する。
【００４２】
このような画像検査システムは、図４に示すように、図２に示した動作に対して設定処理系のタスクが異なる動作となる。なお、この設定処理系のタスクも、上述した製品検査タスクよりも優先度が低く設定されており、製品検査タスクの終了時に開始される。
【００４３】
この設定処理系のタスクは、ステップＳ２１において、検査対象が変更されるか否かを判定する。このとき、ユーザによる操作入力部の操作や、製造ライン上の製品が変更されたとの信号、又は、予め設定されたスケジュールに従って、検査対象が変更されたか否かを判定する。検査対象を変更しない場合、設定処理系のタスクを終了して処理を終了する。一方、検査対象が変更された場合には、ステップＳ２２に処理を進める。
【００４４】
ステップＳ２２においては、データ通信部１１によって、検査データ群記憶部２０から変更後の検査対象を検査するための製品検査用データを取りだして、第１検査用データ又は第２検査用データとしてロードする。このとき、データ通信部１１は、設定処理系のタスクと並列処理されている製品検査タスクにおいて用いられている製品検査用データが第１検査用データか第２検査用データかを識別するフラグを参照する処理などによって、現在製品検査タスクによって用いられていない製品検査用データをテスト用データに変更する。
【００４５】
次のステップＳ２３においては、データ切替フラグをＯＮに設定して、設定処理系のタスクを終了する。
【００４６】
これによって画像検査システムは、製造ラインにおける検査を中止することなく、検査対象が変更された場合でも、当該変更に従って製品検査用データを切り替えることができる。
【００４７】
なお、上述の実施の形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施の形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【００４８】
【図１】本発明を適用した画像検査システムの構成を示すブロック図である。
【図２】本発明を適用した画像検査システムの動作手順を示すフローチャートである。
【図３】本発明を適用した画像検査システムの他の構成を示すブロック図である。
【図４】本発明を適用した画像検査システムの他の動作手順を示すフローチャートである。
【符号の説明】
【００４９】
１  撮像部
２  検査用画像メモリ
３  検査処理部
４Ａ  第１検査用データ記憶部
４Ｂ  第２検査用データ記憶部
５  インライン用入出力制御部
６  表示制御部
７  表示部
７ａ  テスト用画面
７ｂ  検査用画面
８  テスト用検査処理部
９  テスト用データ記憶部
１０  テスト用画像メモリ
１１  データ通信部
１２  記憶装置
２０  検査データ群記憶部
【図１】
0004462326.tif 000002
【図２】
0004462326.tif 000003
【図３】
0004462326.tif 000004
【図４】
0004462326.tif 000005