(57)【要約】【課題】  可動部を有する設備又は装置が異常発生した場合に、その異常発生原因の究明に有用な監視制御装置、及び監視制御方法を提供する。【解決手段】  可動部を有する設備又は装置を撮影する撮像部１１０と、撮像部１１０から取得した画像データに基づいて、可動部の位置情報を取得し、且つその位置情報が所定の条件を満たしているか否かを判定する制御部１２０と、制御部１２０が前記の所定の条件を満たしていると判定した場合、画像データを保存するデータ記録部１３０とを備えるように監視制御装置を構成した。【選択図】      図１
2006228029.tif 000002
【特許請求の範囲】
【請求項１】
可動部を有する設備又は装置を撮影する撮像部と、
前記撮像部から取得した画像データに基づいて、前記可動部の位置情報を取得し、且つ当該位置情報が所定の条件を満たしているか否かを判定する制御部と、
前記制御部が前記の所定の条件を満たしていると判定した場合、前記画像データを保存するデータ記録部と、
を有することを特徴とする監視制御装置。
【請求項２】
前記可動部は、前記位置情報を特定するための少なくとも１つの検出マークを有する請求項１に記載の監視制御装置。
【請求項３】
前記位置情報は、前記画像データにおける前記検出マークの重心であり、且つ前記所定の条件を満たしているか否かの判定は、前記重心と予め定められた基準位置との距離が予め定められた閾値以下の場合、条件を満たすと判定する請求項２に記載の監視制御装置。
【請求項４】
前記位置情報は、前記可動部の動作終了後の位置情報である請求項１〜３の何れか一項に記載の監視制御装置。
【請求項５】
前記位置情報は、前記可動部の動作開始前の位置情報である請求項１〜３の何れか一項に記載の監視制御装置。
【請求項６】
前記制御部は、前記画像データの一部に関心領域を設定し、当該関心領域に含まれる画像データのみに基づいて前記位置情報を取得する請求項１〜５の何れか一項に記載の監視制御装置。
【請求項７】
前記画像データは、静止画である請求項１〜６の何れか一項に記載の監視制御装置。
【請求項８】
前記データ記録部は、前記の可動部を有する設備又は装置の最新の状態から予め定められた動作ステップ数だけ以前の状態の範囲に含まれる動作ステップに対応する画像データのみを保存する請求項１〜７の何れか一項に記載の監視制御装置。
【請求項９】
前記制御部は、さらに前記の可動部を有する設備又は装置の動作中の異常が発生したか否かを判定する請求項１〜８の何れか一項に記載の監視制御装置。
【請求項１０】
前記の異常が発生したか否かの判定は、前記画像データに基づいて判定する請求項９に記載の監視制御装置。
【請求項１１】
前記データ記録部に保存された画像データを表示する表示部をさらに有し、
前記表示部は、前記画像データと前記画像データに対応する前記位置情報を表示する請求項１〜１０の何れか一項に記載の監視制御装置。
【請求項１２】
前記制御部は、前記位置情報が前記の所定の条件を満たすと判定した場合に前記可動部を起動させるための制御信号を出力し、
且つ前記表示部は、表示する画像データとともに、当該画像データに対応する前記制御信号を表示する請求項１１に記載の監視制御装置。
【請求項１３】
前記制御部は、前記データ記録部に保存された画像データと、当該画像データに対応する理想状態の画像データとの間で画素毎に差分絶対値を計算し、且つ当該差分絶対値を画素値とする差分画像データを作成し、
前記表示部は、前記のデータ記録部に保存された画像データ、前記理想状態の画像データ、及び前記差分画像データを表示する請求項１１又は１２に記載の監視制御装置。
【請求項１４】
可動部を有する設備又は装置を撮影する撮影するステップと、
前記撮影ステップで撮影した画像データに基づいて、前記可動部の位置情報を取得するステップと、
前記位置情報が所定の条件を満たしているか否かを判定するステップと、
前記の所定の条件を満たしていると判定した場合、前記画像データを保存するステップと、
を有することを特徴とする監視制御方法。
【請求項１５】
前記位置情報は、前記可動部の動作終了後の位置情報である請求項１４に記載の監視制御方法。
【請求項１６】
前記位置情報は、前記可動部の動作開始前の位置情報である請求項１４に記載の監視制御方法。
【請求項１７】
前記可動部は、位置情報を特定するための少なくとも１つの検出マークを有し、
前記位置情報を取得するステップは、前記画像データにおける前記検出マークの重心を検出し、
前記の判定ステップは、前記重心と予め定められた基準位置との距離が予め定められた閾値以下の場合、条件を満たすと判定する請求項１４〜１６の何れか一項に記載の監視制御方法。
【請求項１８】
前記位置情報を取得するステップは、前記画像データの一部に関心領域を設定し、当該関心領域に含まれる画像データのみに基づいて前記位置情報を取得する請求項１４〜１７の何れか一項に記載の監視制御方法。
【請求項１９】
さらに前記の可動部を有する設備又は装置の動作中の異常が発生したか否かを、前記画像データに基づいて判定するステップを有する請求項１４〜１８の何れか一項に記載の監視制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可動部を有する設備又は装置を制御する監視制御装置及び監視制御方法に関するものであり、より詳しくは、設備の各動作ステップを撮影した画像データを保存して設備の動作異常に対する保守作業を容易にする、又はその画像データを用いて設備の動作異常を検知する監視制御装置、及び監視制御方法に関する。
【背景技術】
【０００２】
近年、様々な機械、装置の製造工程や検査工程において、自動化が益々進展し、様々な自動組み立て装置や自動検査装置といった設備が使用されるに至っている。例えば自動組み立て装置では、搬送されてくる部品を捕捉し、捕捉した部品を所定の組み立て位置へ搬送し、そして組み立て位置へ搬送された部品に、別の部品を組み込み、出来上がったものを排出するといった動作を行う。このようなそれぞれの動作を行うために、搬送ユニット、組み立てユニットといった複数の可動部が存在し、それらが所定の位置へ向けて、所定のタイミングで正確に動作することが求められる。
【０００３】
こうした設備が正常に動作しているか否かを監視し、故障等の異常を検知するために監視カメラ等で設備の画像データを取得し、また異常発生時の原因解析用にその画像データを保存することが知られている（特許文献１、２参照）。
【０００４】
例えば、特許文献１に記載された監視制御装置では、故障検知時の画像データをデータベース化して保存する。また、特許文献２に記載されたトラブル解析支援装置では、トラブルを発生する設備の有無を人が予め判断し、トラブルが発生すると分かっている設備に対して、トラブル発生前後の一定期間、動画像、音声、制御情報を保存する。そしてその保存したデータを用いて、シミュレーションによりトラブルを解析する。
【０００５】
さらに、機械装置の状態遷移を逐次記録し、その記録及び状態遷移図とコンピュータグラフィック画像を用いて、故障発生時のシミュレーションを行う装置が知られている（特許文献３参照）。
【０００６】
設備の異常発生時の様子を適切に把握するためには、故障発生時からその直前の一定期間の稼動状況が分かる画像データが保存されていることが望ましい。しかし、この一定期間の画像データを動画像として保存すると、データ量が膨大となってしまう。一方、静止画として保存する場合には、適切なタイミングで取得された画像を保存しなければ、異常発生時の様子をうまく捉えることができず、異常の原因を特定することが困難となってしまう。そこで、画像データの保存に必要な記憶容量を減らしつつ、適切なタイミングの画像データを確実に保存できる監視制御装置及び監視制御方法の開発が望まれている。
【０００７】
【特許文献１】特開２００３−２０８２１８号公報
【特許文献２】特開２０００−２５０７７５号公報
【特許文献３】特開平１１−２５９１２０号公報
【特許文献４】特開２０００−３２６０８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記の問題点に鑑み、本発明は、可動部を有する設備または装置について、異常発生時の設備または装置の状況を画像データとして保存し、事後的に再現可能な監視制御装置、又は監視制御方法を提供することを目的とする。
【０００９】
また本発明の別の目的として、可動部を有する設備又は装置が異常発生した場合に、異常発生原因を突き止めるために有効な監視制御装置、又は監視制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明に係る監視制御装置は、可動部を有する設備又は装置を撮影する撮像部と、撮像部から取得した画像データに基づいて、可動部の位置情報を取得し、且つ位置情報が所定の条件を満たしているか否かを判定する制御部と、制御部がその所定の条件を満たしていると判定した場合、画像データを保存するデータ記録部と、を有することを特徴とする。
【００１１】
ここで可動部は、位置情報を特定するための少なくとも１つの検出マークを有することが好ましい。
【００１２】
さらに、位置情報は、画像データにおける検出マークの重心であり、且つ上記の所定の条件を満たしているか否かの判定は、検出マークの重心と予め定められた基準位置との距離が予め定められた閾値以下の場合、条件を満たすと判定することが好ましい。位置情報を、より正確に取得するためである。
【００１３】
また位置情報は、可動部の動作開始前、または動作終了後の位置情報であることが好ましい。動作開始前、または動作終了後であれば、可動部は静止状態であり、保存する画像データを事後的に観察する際、視認が容易で問題点を発見し易いためである。
【００１４】
さらに制御部は、画像データの一部に関心領域を設定し、関心領域に含まれる画像データのみに基づいて位置情報を取得することが好ましい。位置情報取得の際に扱うデータ量が少なくて済み、高速な処理が可能となるためである。
【００１５】
なお画像データは、静止画であることが好ましく、またデータ記録部は、可動部を有する設備又は可動部を有する装置の最新の状態から予め定められた動作ステップ数だけ以前の状態の範囲に含まれる動作ステップに対応する画像データのみを保存することが好ましい。メモリに保存するデータ量を減らすことが可能となり、監視制御装置のコスト増大を防止できるためである。
【００１６】
また、制御部は、可動部を有する設備又は装置の動作中の異常が発生したか否かの判定も行うことが好ましく、その異常が発生したか否かの判定は、画像データに基づいて判定することが好ましい。
【００１７】
さらに、本発明に係る監視制御装置は、データ記録部に保存された画像データを表示する表示部をさらに有し、その表示部は、画像データと画像データに対応する位置情報を表示することが好ましい。同様に、制御部は、位置情報が所定の条件を満たすと判定した場合に可動部を起動させるための制御信号を出力し、且つ表示部は、表示する画像データとともに、画像データに対応する制御信号も表示することがさらに好ましい。
【００１８】
監視対象の設備または装置に異常が発生した場合、表示された画像データ及び位置情報を参照することにより、異常の発生原因を特定するために有用だからである。
【００１９】
さらに、制御部は、データ記録部に保存された画像データと、その画像データに対応する理想状態の画像データとの間で画素毎に差分絶対値を計算し、且つその差分絶対値を画素値とする差分画像データを作成し、表示部は、そのデータ記録部に保存された画像データ、理想状態の画像データ、及び差分画像データを表示することが好ましい。
【００２０】
監視対象の設備または装置に異常が発生した場合、理想状態の画像、異常が発生した画像、及びその差を表す画像を表示することにより、異常の発生位置を容易に特定できるためである。
【００２１】
また、本発明に係る監視制御方法は、可動部を有する設備又は装置を撮影する撮影するステップと、撮影ステップで撮影した画像データに基づいて、可動部の位置情報を取得するステップと、位置情報が所定の条件を満たしているか否かを判定するステップと、上記の所定の条件を満たしていると判定した場合、画像データを保存するステップと、を有することを特徴とする。
【００２２】
また位置情報は、可動部の動作開始前、または動作終了後の位置情報であることが好ましい。
【００２３】
さらに、可動部は、位置情報を特定するための少なくとも１つの検出マークを有し、位置情報を取得するステップは、画像データにおける検出マークの重心を検出し、上記の判定ステップは、重心と予め定められた基準位置との距離が予め定められた閾値以下の場合、条件を満たすと判定することが好ましい。
【００２４】
また位置情報を取得するステップは、画像データの一部に関心領域を設定し、関心領域に含まれる画像データのみに基づいて位置情報を取得することが好ましい。
【００２５】
さらに、可動部を有する設備又は装置の動作中の異常が発生したか否かを、画像データに基づいて判定するステップを有することが好ましい。
【発明の効果】
【００２６】
本発明によれば、可動部を有する設備または装置について、異常発生時の設備または装置の状況を画像データとして保存し、事後的に再現可能な監視制御装置、又は監視制御方法を提供することが可能となる。
【００２７】
また、可動部を有する設備または装置が異常発生した場合に、異常発生原因を突き止めるために有効な監視制御装置、又は監視制御方法を提供することが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下、図面を参照しつつ本発明に係る監視制御装置について詳細に説明する。
【００２９】
図１に、本発明に係る監視制御装置１００の構成ブロック図を示す。
【００３０】
本発明に係る監視制御装置１００は、カメラ１１０、コントローラ１２０、メモリ１３０、及びモニタ１４０を備える。
【００３１】
カメラ１１０は、撮像部として機能し、監視制御装置１００の監視対象となる設備全体を撮影する。またカメラ１１０は、１台若しくは複数のカメラで構成し、設備に含まれる全ての可動部は、何れかのカメラで撮影されるように構成する。また、設備の可動部の移動を、画像上の位置の変化として捉えられるように、撮影対象である各可動部の動作平面から離れたところにカメラ１１０を配置することが好ましい。
【００３２】
また、カメラ１１０は、設備の可動部の動作を逐次捉えられるように、連続的に撮影可能であることが好ましく、例えばビデオレート（３０Ｈｚ）で撮影を行う。撮影した画像は、コントローラ１２０へ送信する。
【００３３】
コントローラ１２０は制御部として機能し、カメラ１１０から受信した画像データを解析し、必要と認める画像データをメモリ１３０に保存する。詳しくは、監視対象の設備について、その設備の各動作ステップの終了後に、その動作ステップで移動した可動部の位置を上述の画像データから特定し、その可動部が動作終了後の所定位置にいると判定した場合、その解析に用いた画像データをメモリ１３０に保存する。若しくは、設備の次の動作ステップの開始前に、その動作ステップで移動する可動部の位置を上述の画像データから特定し、その可動部が動作開始前の所定位置にいると判定した場合、その解析に用いた画像データをメモリ１３０に保存する。一方、解析した画像データでは、着目する可動部が動作終了後の所定位置、若しくは動作開始前の所定位置にいないと判定される場合（例えばその可動部が動作中の場合）、コントローラ１２０は、解析に使用した画像データを廃棄する。
【００３４】
このように、可動部が動作開始前、又は動作終了後に所定の位置にいる場合の画像データを保存しておくことにより、可動部が動作中の画像データを保存せずとも、設備に異常が発生した場合、後から保存されている画像データを調べることによって異常原因の特定は十分可能であり、保存するデータの量を必要最小限に抑えることが可能である。
【００３５】
着目する可動部が所定の位置にいるか否かの判定は、以下に説明する方法で行うことができる。
【００３６】
まず、解析対象の画像データから、着目する可動部中の特定部分を認識する。
【００３７】
次に、認識された特定部分の画像データ上の位置と、理想状態にある設備を撮影した画像データ等から求められた基準位置との距離が、予め定められた許容範囲内にあるか否かを判定する。
【００３８】
その距離が許容範囲内に収まる場合、着目する可動部は所定の位置にいると判定する。  なお、着目する可動部中の特定部分の認識は、例えば可動部中の特徴ある部分について、２値化処理でその特徴ある部分に相当する画素だけを抽出し、抽出された画素の重心等を求めることで実行できる。また、２値化処理の代わりに、エッジ検出処理を行って、上記部分の境界に相当するエッジ画素を抽出し、エッジ画素の重心等を求めてもよい。さらに、上記の２値化処理やエッジ検出処理を、着目する可動部が写っている部分を含む、一部の領域（関心領域）に限定して行ってもよい。このように関心領域に限定して処理を行えば、処理に使用するデータ量を減ずることができるため、高速な処理が可能となる。
【００３９】
上述した判定方法の代わりとして、理想状態にある設備を撮影した画像データと、解析対象となっている画像データとのマッチング処理を行い、マッチングの結果を表す相関度が所定の閾値以上の場合、着目する可動部が所定の位置にいると判定する判定方法を用いてもよい。この判定方法を用いる場合においても、上述した関心領域に限定して処理を行うことが好ましい。
【００４０】
なお、コントローラ１２０は、設備の駆動制御を併せて行うことも可能であり、特に、着目した可動部が所定の位置にあると判定した場合に、設備に対して次の動作を行うよう、同期信号を出力するようにしてもよい。このような構成とすることで、カメラ１１０が可動部の位置を確認するセンサの役割を果たすため、他にセンサを準備する必要がなくなり、設備の簡略化及び省スペース化が可能となり、さらにメンテナンスの容易性を向上できる。
【００４１】
またコントローラ１２０は、監視対象である設備に異常が発生したか否かを、カメラ１１０から受信した画像データを解析する等により判定し、異常が発生したと判定した場合、設備を停止する。
【００４２】
異常発生の判定を以下に説明する。
【００４３】
まず、監視対象設備の各動作ステップについて、正常動作中の設備の各動作ステップの開始前、若しくは終了後の画像データを参照画像データとして予め取得する。そして、参照画像データに基づいて、その予め解析を行う関心領域を設定する。例えば、部品組み立て装置や部品検査装置では、動作ステップ毎に決まった位置に、特定の種類の部品が存在するはずである。そこで、画像データ上において、そのような部品が存在すべき場所に関心領域を設定する。
【００４４】
設備の監視中においては、各動作ステップの開始前、若しくは終了後の画像データを取得する。そして、対応する参照画像と、関心領域内の画像データ間でマッチングを行う。マッチングの結果を例えば両画像データ間の対応する画素値の絶対平均偏差として求め、その絶対平均偏差が所定の閾値より大きい場合、異常が発生したと判定する。なお、各動作ステップの開始前、若しくは終了後に相当する画像データとして、上述した方法により動作ステップの開始前、若しくは終了後と判断され、メモリ１３０に保存される画像データを用いればよい。
【００４５】
代わりの異常判定方法としては、以下の方法がある。
【００４６】
まず、コントローラ１２０は、設備が正常動作している場合における各動作ステップの所要時間を予め記憶しておく。
【００４７】
設備の監視中においては、各動作ステップの動作開始前の時間（若しくは、前動作ステップが終了した判定された時間）を逐次記録しておき、その動作ステップが終了したと判定された時間との経過時間を算出する。算出した経過時間が、予め記憶しておいた所要時間と比較して相当余分な時間を要している場合、例えば経過時間が上記所要時間の数倍（例えば２倍、５倍、１０倍）以上要している場合、異常が発生したと判定する。また、上記所要時間の数倍の時間が経過しても、動作終了と判定されない場合も、コントローラ１２０は異常が発生したと判定してもよい。
【００４８】
さらに別の異常判定方法としては、例えば設備の可動部を動かすモータに送る電流値を監視しておき、その電流値が、モータの過負荷状態を示すような値にまで増大した場合、異常が発生したと判定することができる。
【００４９】
メモリ１３０は、データ記録部として機能し、コントローラ１２０により保存する指示を受けた画像を保存する。メモリ１３０には、常に最新の動作ステップから、複数ステップ前の動作ステップまでの各動作ステップに相当する画像データまでを保存しておくことが好ましく、最新の動作ステップから、設備の稼動サイクル数回分（例えば３サイクル分）前の全ての動作ステップまでに相当する画像データを保存しておくことがさらに好ましい。また、保存される画像データと関連付けて、当該画像データにおいて認識された可動部の位置情報や撮影された時間も併せて保存することが好ましい。
【００５０】
なお、コントローラ１２０及びメモリ１３０は、市販のパーソナルコンピュータ及び内蔵プログラムとして構成することができる。また、専用のハードウェアやファームウェアとして構成してもよい。
【００５１】
モニタ１４０は、画像データを表示する表示部として機能し、主として設備の異常解析等のために動作の再現を行う際、メモリ１３０に保存された画像データ、その画像データにおいて着目された設備の可動部の位置認識結果等を表示する。
【００５２】
以下に、本発明に係る監視制御装置を組み立て装置に実装した場合について説明する。
【００５３】
図２に、本発明に係る監視制御装置を実装した組み立て装置２００の構成ブロック図を示す。また図３に、組み立て装置２００の概略上面図を示す。図４に、図３のＣＣＤカメラ１１０から見た組み立て装置２００の概略斜視図を示す。
【００５４】
本実施形態に係る組み立て装置２００は、一例として、直径５０ｍｍ、高さ５０ｍｍの円筒形をした基幹部品（ワーク）の中心に、直径２０ｍｍ、高さ１０ｍｍの円筒形の部品を上方から嵌め込んで完成品を製造するものである。また、本実施形態に係る監視制御装置１００は、組み立て装置２００の各動作ステップの終了時点での画像データを３サイクル分保存するとともに、併せて組み立て装置２００の駆動制御も行うものとする。
【００５５】
組み立て装置２００は、搬送ユニット２１０、上下ユニット２２０、ワーク搬入部２３０、部品投入部２４０、組み立て部２５０及びワーク排出部２６０を備え、ＣＣＤカメラ１１０、コントローラ１２０、メモリ１３０及びモニタ１４０とで監視制御装置１００を構成する。
【００５６】
本実施形態に係る組み立て装置２００では、図３及び図４に示すように、ワーク２０２は、ワーク搬送路２０１に沿ってワーク搬入部２３０から搬入され、ワーク排出部２６０により排出される。一方、部品２０３は、部品投入部２４０により、ワーク搬入部２３０と略直交する方向から投入され、ワーク搬入部２３０とワーク排出部２６０の中間にある組み立て部２５０で、ワーク２０２に組み付けられる。
【００５７】
ワーク搬入部２３０は、前工程から送られてきたワークを連続的に組み立て装置２００に搬入可能なように、ワークを載せて運ぶベルトコンベアで構成する。部品投入部２４０は、部品投入側から組み立て部２５０側へ緩やかな下降傾斜路であって、振動により、投入された部品２０３が徐々に組み立て部２５０側へ搬送される。ワーク排出部２６０は、ワーク搬入部２３０同様、ベルトコンベアで構成する。そして、搬送ユニット２１０が部品組み付け済みのワーク（完成品）２０４を組み立て部２５０側に最も近いワーク排出部２６０の出口２６１に排出すると、その完成品を載せて次工程へ搬送する。
【００５８】
搬送ユニット２１０は、ワーク搬送路２０１と略平行に取り付けられ、ワーク搬入部２３０の終端付近の入口２３１にあるワーク２０２を捕捉し、ワーク排出部２６０の方へ平行移動して組み立て部２５０へ搬送する。さらに部品組み付け済みのワーク（完成品）２０４をワーク排出部２６０に存在する出口２６１へと搬送する。組み立て部２５０に配置した上下ユニット２２０は、上部ユニット２２１が部品２０３を捕捉して上下運動し、下部ユニット２２２がワーク２０２を固定することにより、ワーク２０２に部品２０３を組み付けて完成品２０４を製造する。
【００５９】
搬送ユニット２１０は、ワーク搬送方向と略並行方法の長さ１５０ｍｍ、略垂直方向の幅５０ｍｍからなる部材２１１と、部材２１１の下部に取り付けられたグリッパ２１２及び駆動用のサーボモータを備える。グリッパ２１２は、ワーク搬送方向にワークの幅とほぼ等しい間隔で配置した２本の爪で構成し、同時に２つのワークを保持可能なように、ワーク搬送路２０１に沿って２セット配置する。
【００６０】
また搬送ユニット２１０は、ワーク搬送路２０１の存在する平面内で、ワーク搬送路２０１と直交する方向、及びワーク搬送路２０１と平行方向に移動可能である。また搬送ユニット２１０の原点位置を、搬送ユニット２１０がワーク搬送路２０１上にあるワーク２０２と接触しないよう、ワーク搬送路２０１から約３０ｍｍ後方に離れた位置に設定する。そして、原点位置にある搬送ユニット２１０に送り動作を指示すると、ワーク搬送路２０１に沿って、ワーク排出方向へ向けて約７０ｍｍ移動する（この移動先を便宜上送り位置と呼ぶ）。さらに、送り位置にある搬送ユニット２１０に、戻り動作が指示されると、原点位置へ戻るように、ワーク搬送路２０１に沿って、ワーク搬入方向に約７０ｍｍ移動する。一方、原点位置若しくは送り位置にある搬送ユニット２１０に前進動作が指示されると、搬送ユニット２１０は、ワーク搬送路２０１上にあるワーク２０２又は完成品２０４を捕捉するため、若しくは保持しているワーク２０２又は完成品２０４をワーク搬送路２０１上にリリースするため、ワーク搬送路２０１に近づく方向に約３０ｍｍ移動する。逆に、ワーク搬送路２０１に近接した位置にある搬送ユニット２１０に対し、後退動作が指示されると、搬送ユニット２１０はワーク搬送路２０１から離れる方向に約３０ｍｍ移動する。
【００６１】
上下ユニット２２０は、上部ユニット２２１、及び下部ユニット２２２で構成される。下部ユニット２２２は組み立て部２５０へ搬送されてきたワーク２０２を固定する。一方、上部ユニット２２１は、開閉可能な爪からなるワークチャック２２３、及びワークチャック２２３が取り付けられるチャックシリンダ２２４、及びこれらを駆動するサーボモータを備えている。
【００６２】
上部ユニット２２１は、初期状態では、組み立て部２５０に搬送されてくるワーク２０２、部品２０３と衝突しないように、組み立て部２５０の上方に退避しておく。組み立て部２５０に部品２０３が来ると、上部ユニット２２１を下降させ、ワークチャック２２３を閉じて部品２０３を保持する。部品２０３を保持すると、上部ユニット２２１は上方に移動する。その後ワーク２０２が組み立て部２５０へ搬送されてくると、再び上部ユニット２２１は下降し、ワーク２０２に部品２０３を挿入し、組み付ける。部品の組み付けが終わると、ワークチャック２２３は開いて部品をリリースし、再び上部ユニット２２１は上方に移動する。この上下方向の移動距離は、組み立て部２５０にワーク２０２が存在する場合、約１０ｍｍであり、ワーク２０２が存在しない場合約６０ｍｍである。
【００６３】
本実施形態によると、監視及び駆動制御される対象である可動部に検出マークが形成される。すなわち、搬送ユニット２１０の部材２１１の搬入部２３０側端部の上面に検出マーク２１３を、及び排出部２６０側端部の上面に検出マーク２１４を取り付ける。検出マーク２１３及び２１４は、直径５ｍｍの赤い円形シールであり、ＣＣＤカメラ１１０で撮影する画像において、搬送ユニット２１０がどの位置にあっても、どちらかの検出マークが写り込むようになっている。なお、検出マーク２１３及び２１４は上記のものに限られるわけではなく、画像上で明確に判別可能なものであればよく、部材２１１自体の特有の形状等で代用することも可能である。
【００６４】
また、上下ユニット２２０の上部ユニット２２１においても、チャックシリンダ２２４の上面に検出マーク２２５、及びワークチャック２２３の上面に検出マーク２２６が取り付けられている。検出マーク２２５、２２６は、搬送ユニットに取り付けた検出マーク同様、直径５ｍｍの赤い円形シールである。さらに、ＣＣＤカメラ１１０で撮影する画像において、上部ユニット２２１が如何なる位置にあっても、またチャックの開閉によらず、検出マーク２２５、２２６が写り込むよう構成されている。なお、検出マーク２２５、２２６は、検出マーク２１３、２１４と同じマークである必要は無く、画像上で明確に判別可能なものであればよい。
【００６５】
また、監視制御装置１００の構成要素であるＣＣＤカメラ１１０は、上述した組み立て部２５０の斜め上方、部品投入部側に約３０°の方向に配置する。そして、搬送ユニット２１０、上下ユニット２２０、ワーク搬入部２３０、部品投入部２４０、ワーク排出部２６０を全て１枚の画像に収めるとともに、搬送ユニット２１０、上下ユニット２２０の各部の動作範囲も全て収めることができる。コントローラ１２０は、ＣＣＤカメラ１１０からの画像信号を受信して、所定の条件を満たす画像データをメモリ１３０に保存する。また、コントローラ１２０は、組み立て装置２００の駆動制御も行うため、搬送ユニット２１０、上下ユニット２２０それぞれのサーボモータへ制御信号を送信する。
【００６６】
コントローラ１２０及びメモリ１３０は、本実施形態においては、パーソナルコンピュータ（ＰＣ）に内蔵のプログラム、メモリ、ＲＳ２３２Ｃといった外部出力ポート等によって構成する。また、本実施形態においては、コントローラ１２０は組み立て装置２００の駆動制御も行うため、組み立て装置２００の可動部（搬送ユニット２１０、上下ユニット２２０）のサーボモータを制御するモータドライバを内蔵する。なお、コントローラ１２０及びメモリ１３０はこれに限られるものではなく、専用のハードウェア、ファームウェア等で構成してもよい。また、コントローラ１２０及びメモリ１３０と、モータドライバを、別個のハードウェアとして構成し、互いに通信可能な構成としてもよい。例えば、コントローラ１２０及びメモリ１３０をＰＣ及び内蔵プログラムで構成し、モータドライバをプログラマブルロジックコントローラ（ＰＬＣ）で構成してもよい。
【００６７】
ＣＣＤカメラ１１０は、組み立て装置２００の作動中、搬送ユニット２１０、上下ユニット２２０、及び搬送されてくるワークや部品、排出される組み立て済みワークを全て１枚の画像に収めた静止画を、ビデオレート（３０Ｈｚ）で連続して取得し、コントローラ１２０へ送信する。この目的のため、ＣＣＤカメラ１１０として、１／４インチ４１万画素ＣＣＤ、焦点距離４．３ｍｍ（画角６９．８°）、２４ビット（ＲＧＢ各８ビット）出力のものを用いる。しかし、ＣＣＤカメラ１１０としては、これに限られるものではなく、組み立て装置２００の各部を１枚の画像に収めることが可能で、且つ検出マーク等の判別ができるものであればよい。
【００６８】
またコントローラ１２０は、ＣＣＤカメラ１１０から画像データを受信すると、検出マークの動きによる位置の変化を示す変化後の画像データを解析し、搬送ユニット２１０や上下ユニット２２０等の位置を認識し、認識結果に応じて内蔵のモータドライバを経て、搬送ユニット２１０又は上下ユニット２２０に内蔵されたサーボモータに対して制御信号を送信する。このようにして、本実施形態によれば、検出マークの位置の変化により、組み立て装置２００をシーケンス動作させることができる。
【００６９】
さらに、搬送ユニット２１０や上下ユニット２２０の各動作ステップ終了時の位置を検出マークの位置により認識し、その動作ステップ終了時に相当する画像データをメモリ１３０に保存する。その他、コントローラ１２０は、上記の動作ステップ終了時に相当する画像データ、各動作ステップの所要時間、及び搬送ユニット２１０等のサーボモータ駆動電流値のモニタによる過負荷の発生有無に基づいて、組み立て装置２００の作動中、異常を発生したか否かの監視を行う。
【００７０】
以下、フローチャート及びタイミングチャートを参照して、監視制御装置１００及び組み立て装置２００の動作について説明する。
【００７１】
図５及び図６に、本実施形態に係る組み立て装置２００の動作のフローチャートを示す。また図７に、組み立て装置２００の可動部である搬送ユニット２１０、上下ユニット中の上部ユニット２２１について動作のタイミングチャートを示す。
【００７２】
図７において、上部に示したＳ０２等の記号５０１は、後述する組み立て準備完了、若しくは各可動部の動作終了判定ステップの実行タイミングを示す。また、各可動部の動作を横欄毎に示し、タイミングチャート線５０２がその横欄に存在する場合、各可動部はその横欄の左側欄５０３に示された動作を行うことを表す。どちらの動作を示す欄にも属さず、中間線上にタイミングチャート線５０２が存在する場合、その可動部は動作を行わず、その前状態を保持し続けることを表す。
【００７３】
まず、組み立て準備完了か否かを判定する（ステップＳ００）。この判定は、コントローラ１２０が行う。以下（ｉ）〜（ｉｉｉ）の３条件全てを満たす場合、準備完了と判定する。
【００７４】
（ｉ）ワーク搬入部２３０の入口２３１にワーク２０２が存在すること
（ｉｉ）ワーク排出部２６０の出口２６１に完成品２０４が存在しないこと
（ｉｉｉ）部品投入部２４０に部品２０３が存在すること
ワークや部品等の存在の有無は、以下の手順により調べることができる。
【００７５】
まず、事前準備として、ＣＣＤカメラ１１０を通じてワーク２０２、部品２０３及び完成品２０４が入口２３１等に存在する場合、及び存在しない場合の画像データをそれぞれ取得する。図８に示すように、取得した画像データを参照し、入口２３１や出口２６１の位置、部品の存在有無を調べる位置を特定し、関心領域００１〜００３としてその画像上の位置（例えば関心領域の左上端座標と右下端座標）をメモリ１３０に保存しておく。次に、関心領域００１〜００３にワーク２０２、部品２０３又は完成品２０４が存在する場合、存在しない場合のそれぞれについて、各関心領域内の平均信号値を求める。そして、各関心領域について、ワーク２０２、部品２０３又は完成品２０４が存在する場合の平均信号値と、存在しない場合の平均信号値との平均値を算出し、閾値Thd001〜Thd003とする。その閾値Thd001〜Thd003を予めメモリ１３０に保存しておく。
【００７６】
組み立て装置２００の動作時においては、ＣＣＤカメラ１１０から送られてくる画像データに対し、メモリ１３０に保存した関心領域００１〜００３の位置に基づいて、関心領域００１内の平均信号値AVG001、関心領域００２内の平均信号値AVG002、関心領域００３内の平均信号値AVG003をそれぞれ算出する。メモリ１３０から上述した閾値Thd001〜Thd003を呼び出し、平均信号値AVG001〜AVG003とそれぞれ比較する。平均信号値AVG001〜AVG003が、閾値Thd001〜Thd003より、ワーク２０２、部品２０３又は完成品２０４が存在する場合の参照画像データにおける平均信号値に近い場合、ワーク２０２、部品２０３又は完成品２０４が存在すると判定する。
【００７７】
なお、判定方法は上記の方法に限られるものではなく、別の方法を用いてもよい。例えば、上記と同様、事前にワーク２０２、部品２０３又は完成品２０４が存在する参照画像データを取得してメモリ１３０に保存しておく。また、上記同様に関心領域００１〜００３を設定する。
【００７８】
そして、組み立て装置２００の動作時において、ＣＣＤカメラ１１０から受信した画像データと参照画像データとの間で、関心領域００１〜００３内の各画素で差分信号値の絶対値を算出し、その平均信号値（平均絶対偏差）を算出する。その平均絶対偏差が所定の許容範囲内であれば、ワーク２０２、部品２０３又は完成品２０４が存在する（または存在しない）と判定する。なお、上記の許容範囲は、組み立て装置が設置された場所の照明など環境条件によって左右される可能性があるため、実験的に決定しておくことが好ましい。
【００７９】
上記の判定方法に基づき、ＣＣＤカメラ１１０から連続的に受信した画像データに対し、逐次判定を行う。いずれかの条件を満たさない場合、コントローラ１２０は組み立て準備が完了していないと判断し、組み立て装置２００のアイドル状態を維持する。また、受信した画像データは廃棄する。
【００８０】
一方、ある時点で、受信した画像データについて上記（ｉ）〜（ｉｉｉ）の全ての条件を満たすと、コントローラ１２０は組み立て準備完了と判断する。そしてコントローラ１２０は、その画像データをメモリ１３０に保存するとともに、内蔵のモータドライバを通じて搬送ユニット２１０にワーク搬送路２０１に近づくよう前進動作させる制御信号を送信する。その制御信号に基づいて、搬送ユニット２１０がワークを掴むために前進動作する（ステップＳ０１）。
【００８１】
次に、搬送ユニット２１０の前進動作が終了したか否か、及び組み立て装置２００にワーク２０２や部品２０３の転落、位置ずれといった異常が発生していないかどうかを判定する（ステップＳ０２）。
【００８２】
説明の便宜のため、まず搬送ユニット２１０の前進動作が終了したか否かの判定手順について説明し、その後異常発生の有無に関する判定について説明する。
【００８３】
係る判定は、搬送ユニット２１０に付された検出マーク２１３の重心位置及び面積が所定の条件を満たすか否かを判定することによって行う。以下にその方法を詳述する。
【００８４】
事前準備として、搬送ユニット２１０の前進動作終了時点に相当する参照画像データを取得する。図８に示すように、取得した参照画像データから、搬送ユニット２１０の前進動作終了時点における検出マーク２１３の存在すべき位置を含む関心領域１０１を設定し、メモリ１３０にその位置・範囲を記憶させておく。ここで関心領域１０１は、検出マーク２１３の位置検出に使用する領域であるため、正確な位置認識を行うために検出マーク２１３を完全に収めることができる大きさであることが好ましい。一方、位置認識の処理に必要な計算時間を減らすため、関心領域１０１は狭い方が好ましい。具体的には、関心領域１０１は、検出マーク２１３の画像上における面積の５倍〜１００倍程度の大きさに設定することが好ましい。さらに参照画像データに基づいて、搬送ユニット２１０の前進動作終了時点における検出マーク２１３を示す画素の重心位置、画像中の面積をそれぞれ基準重心Ｇorg、基準面積Ｄorgとして算出する。そして基準重心Ｇorg、基準面積Ｄorgを予めメモリ１３０に記憶させておく。
【００８５】
図９に、ステップＳ０２の動作手順のフローチャートを示す。
【００８６】
組み立て装置２００の稼動時においては、コントローラ１２０がＣＣＤカメラ１１０から受信した画像について、関心領域１０１のみに限定して検出マーク２１３の重心位置Ｇ・面積Ｄを調べ、基準重心、基準面積との比較で動作が完了したか否かを判定する。まず、関心領域の位置、範囲、及び基準重心Ｇorg、基準面積Ｄorgをメモリ１３０から取得する（ステップＳ２０１）。次に、判定を行う画像データを取得する（ステップＳ２０２）。その後、関心領域１０１内の画像データを、検出マークとそれ以外に分離可能なように２値化する（ステップＳ２０３）。２値化の閾値は組み立て装置２００の設置環境等を勘案して経験的に設定する。
【００８７】
本実施形態では、１画素あたりのデータが赤（Ｒ）、緑（Ｇ）、青（Ｂ）各８ビットで表される。そこで関心領域１０１中の任意の画素の値Ｐ（＝（Ｒ, Ｇ, Ｂ））とし、対応する２値化画像の任意の画素値をＰbinとすると、検出マーク２１３は赤色であることから、例えば
Ｐbin  ＝  １  （Ｒ≧１２８、Ｇ＜３２、Ｂ＜３２）（検出マーク２１３に相当）
Ｐbin  ＝  ０  （上記以外のとき）
とすることができる。
【００８８】
２値化が終了すると、検出マーク２１３に相当する（Ｐbin＝１）画素の重心Ｇ、画素数の合計（面積）Ｄを算出する（ステップＳ２０４）。次に、重心Ｇと、メモリ１３０に記憶された基準重心Ｇorgとの距離ΔＧ（＝((Ｇx−Ｇorgx)2+(Ｇy−Ｇorgy)2)1/2）を求める（ただし、Ｇx、Ｇyはそれぞれ重心Ｇの水平座標、垂直座標であり、一方Ｇorgx、Ｇorgyはそれぞれ基準重心Ｇorgの水平座標、垂直座標である）。同様に、面積Ｄと、基準面積Ｄorgとの面積の差の絶対値ΔＤ（＝｜Ｄ−Ｄorg｜）を求める（ステップＳ２０５）。ΔＧ、ΔＤそれぞれについて許容誤差範囲（例えば１画素以内）か否か判定する（ステップＳ２０６）。共に許容誤差範囲内であれば、搬送ユニット２１０は正常に前進動作（Ｓ０１）を終了したと判定する。この場合、コントローラ１２０は、モータドライバを通じて、次の動作を実行させるための制御信号となる、同期信号を出力する（ステップＳ２０７）。
【００８９】
また、搬送ユニット１０の前進動作が終了したと判定された画像データをメモリ１３０に保存する（ステップＳ２０８）。その際、保存される画像データが、どの動作ステップに対応するか判るよう、画像データに対して動作ステップに対応する名称を付ける。また、複数サイクル分の画像データを保存するため、サイクルの差異も名称に反映する。この実施形態では、画像名称を３桁の数値＋拡張子で表す。最初の１桁目（最も左側の数値）をサイクル番号、残りの２桁をステップ番号とする。拡張子は、画像データの形式（.jpg,.bmp等）を示す。例えば、画像データの形式をＪＰＥＧとすると、２サイクル目のステップＳ０２で保存された画像データの名称は、”202.jpg”と表される。なお、サイクル番号については、１から順に保存するサイクル数（本実施形態では３）までの番号を以下のように繰り返して用いる。
【００９０】
１→２→３→１→２→３→１→・・・
さらに、保存する画像データと関連付けて、動作終了と判定された時間、検出マークの重心Ｇ、面積Ｄ、制御信号の詳細等をメモリ１３０に保存する。
【００９１】
一方、ΔＧ、ΔＤのどちらか一方でも、許容誤差範囲を超えた場合、搬送ユニット２１０の前進動作は完了していないと判断し、判定に使用した画像データを廃棄するとともに、次にＣＣＤカメラ１１０から送られてくる画像に対して同様の判定手順を繰り返す。
【００９２】
次に、本実施形態に係る組み立て装置２００に異常が発生していないかどうか判定について説明する。
【００９３】
異常発生の判定は、動作終了との判定が所定時間内に得られない場合、又はワーク２０２や部品２０３の配置に異常があるか否かを判定することにより行う。（ステップＳ２０９、ステップＳ２１０）。
【００９４】
搬送ユニット２１０や上部ユニット２２１といった可動部が、一動作に必要とする時間は予め予測できる。そのため、その予測できる時間を超えても、動作終了の判定ができない場合には、何らかの異常が発生していると考えられる。
【００９５】
画像データの取得（Ｓ２０２）後において、準備完了判定ステップ（Ｓ００）の条件が満たされてからの経過時間と、予め定められた閾値との比較を行う。閾値よりも経過時間が多い場合、許容時間内に動作終了と判定できず、異常発生と判定する（ステップＳ２０９）。上記閾値は、正常動作時に必要な所要時間の数倍〜数十倍程度が好ましい。例えば、搬送ユニット２１０の前進動作の所要時間が１秒の場合、上記閾値は５秒、１０秒等の値とする。なお、ＣＣＤカメラ１１０の撮影間隔は一定のため、１動作期間内に取得された画像データの枚数をカウントし、その合計に撮影間隔の時間を乗ずることにより、その動作期間中の経過時間を知ることができる。したがって、動作終了判定を行った画像の枚数を経過時間の代わりの指標として用いてもよい。
【００９６】
異常発生と判定された場合、最後に解析を行った画像データをメモリ１３０に保存し（ステップＳ２１１）、監視制御装置１００は、組み立て装置２００を停止する（ステップＳ２１２）。
【００９７】
また、経過時間から異常が検出されない場合でも、ワークや部品が所定の位置に存在しているか否かにより、異常発生の有無を判定する（ステップＳ２１０）。この判定は、搬送部２１０の動作が終了し、組み立て装置２００が静止状態となった時点で行う。搬送ユニット２１０が未だ前進動作中に判定を行っても、その後の動作でワーク２０２や部品２０３が転落するといった異常が発生する可能性があるためである。そこで、ステップ２１０は、ステップＳ２０６の後、動作が終了したと判定された画像データに基づいて、ステップＳ００の稼動準備が整ったか否かの判定と同様の方法により実施する。すなわち、組み立て装置２００が正常動作している場合、各動作ステップの終了時点において、ワークや部品は、それぞれ所定の位置に存在しているはずである。ステップＳ０２では、ワーク２０２がワーク搬入路２３０の入口２３１に存在し、部品２０３が部品投入部２４０に存在しているはずである。そこで、搬入ユニット２１０の前進動作が終了したと判定された画像データに対し、ステップＳ００と同様、正常動作時にワーク２０２や部品２０３が存在しているはずの位置に関心領域を設定し、その関心領域内の信号値を調べて、ワーク等が存在しているか否かを調べる。そして、ワーク２０２、部品２０３がそれぞれ所定位置に存在していると判定されれば、異常無と判定する。一方、ワーク２０２、若しくは部品２０３のどちらか一方でも存在しない場合、異常発生と判定し、判定に使用した画像データをメモリ１３０に保存し（ステップＳ２１１）、組み立て装置２００を停止する（ステップＳ２１２）。
【００９８】
なお、装置の停止とともに、装置の操作者に対して警告を発生するよう構成してもよい。係る警告は、装置の作動状態を監視するモニタ１４０上への警告表示、又は警告音の発生等で行うことが可能である。
【００９９】
上述した動作終了判定方法及び異常発生有無の判定方法は、以下に述べるステップＳ０４、Ｓ０６等、組み立て装置２００の可動部の各動作終了判定ステップにおいても同様に使用する。ただし、着目する検出マーク、設定する関心領域、及び基準となる重心位置Ｇorg、面積Ｄorgは、各動作終了判定ステップについて最適化する。この最適化についても、上述した事前準備と同様の方法で、動作終了判定を行う可動部の動作終了時を示す参照画像データを予め取得しておき、その参照画像データから着目する検出マークの重心、面積を調べておけばよい。
【０１００】
このように、検出マークの重心位置、及び面積を検出し、理想状態におけるそれらと比較することにより、その検出マークが付された可動部について正確な位置決定が可能となり、装置の信頼性を向上させることが可能である。
【０１０１】
コントローラ１２０が、搬送ユニット２１０の前進動作は終了したと判定した場合、コントローラ１２０は、モータドライバを通じて搬送ユニット２１０のサーボモータに搬送ユニット２１０を後退動作させるよう制御信号を送信する。その制御信号に基づいて、搬送ユニット２１０はワークを保持したまま後退動作を行う（ステップＳ０３）。なお、この後退動作に伴って、ワーク２０２に取り付ける部品２０３が、部品投入部より組み立て部２５０に移動する。
【０１０２】
次に、搬送ユニット２１０の後退が終了したか否かを判定する（ステップＳ０４）。
【０１０３】
その判定方法はステップＳ０２と同様である。即ち、予め設定した関心領域内で検出マーク２１３の重心位置と面積を算出し、事前に求められているそれらの値との差異が許容範囲内に収まるか否かで判定する。また、ステップＳ０２と同様に、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存する。異常発生の有無判定も同様に実施する。
【０１０４】
コントローラ１２０が、搬送ユニット２１０の後退動作は終了したと判定した場合、モータドライバ１４０に対し、上部ユニット２２１を下降させる指令を出す。モータドライバ１４０は、係る指令を受け取ると、上部ユニット２２１のサーボモータに制御信号を送信する。その制御信号に基づいて、上部ユニット２２１が下降する（ステップＳ０５）。
【０１０５】
その後、上部ユニット２２１の下降動作が終了したか否かを判定する（ステップＳ０６）。その判定方法はステップＳ０２と同様である。即ち、予め設定した関心領域内で検出マーク２２５の重心位置と面積を算出し、事前に求められているそれらの値との差異が許容範囲内に収まるか否かで判定する。また、ステップＳ０２と同様に、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存する。
【０１０６】
本実施形態では、ＣＣＤカメラ１１０を、組み立て部２５０の直上でなく、斜め３０°の方向に配置したことにより、上部ユニット２２１の上下運動も、画像上で位置の変化として捉えることを可能としたので、複数のＣＣＤカメラを用いることを要しない。なお、正確に可動部の位置を把握するために、ＣＣＤカメラ１１０で撮影した画像上において、全ての可動部の動作距離が、１０画素以上となるように配置することがさらに好ましい。
【０１０７】
コントローラ１２０が、上部ユニット２２１の下降動作は終了したと判定した場合、次の動作として、ワークチャック２２３を閉じるよう、モータドライバを通じて上部ユニット２２１のサーボモータに制御信号を送信する。その制御信号に基づいて、ワークチャック２２３が閉じて組み立て部２５０にある部品２０３を捕捉する（チャック動作）（ステップＳ０７）。
【０１０８】
その後、ワークチャック２２３のチャック動作が終了したか否かを判定する（ステップＳ０８）。なお判定方法はステップＳ０２と同様であり、予め設定された関心領域内でワークチャック２２３に付された検出マーク２２６の重心位置、面積を調べて判定する。また、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様である。
【０１０９】
コントローラ１２０が、ワークチャック２２３のチャック動作は終了したと判定した場合、コントローラ１２０は、モータドライバを通じて上部ユニット２２１のサーボモータに上部ユニット２２１を上昇させるよう制御信号を送信する。その制御信号に基づいて、上部ユニット２２１は部品を保持したまま上昇する（ステップＳ０９）。
【０１１０】
その後、上部ユニット２２１の上昇動作が終了したか否かを判定する（ステップＳ１０）。この判定は、上部ユニット２２１に付された検出マーク２２５を用いる他、上記Ｓ０２と同様に実施する。また、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様である。
【０１１１】
コントローラ１２０が、上部ユニット２２１の上昇動作は終了したと判定した場合、次の動作として、搬送ユニット２１０を送り動作させ、その後前進動作させるよう、モータドライバを通じて搬送ユニット２１０のサーボモータに制御信号を送信する。その制御信号に基づいて、搬送ユニット２１０はワーク２０２を組み立て部２５０に搬送するため、部品を保持したままワーク搬送路２０１に沿って送り動作し、その後前進動作する（ステップＳ１１）。
【０１１２】
ステップＳ０２と同様の判定方法により、搬送ユニット２１０の移動が完了したか否かを判定する（ステップＳ１２）。同様に、搬送ユニット２１０の移動が完了したと判定された画像データを保存し、それ以外の画像データの廃棄も同様に実施する。ただし、搬送ユニット２１０がワーク排出部側へ移動したことにより、ワーク搬入部側の検出マーク２１３が、上部ユニット２２１に隠れて見えなくなるため、ワーク排出部側の検出マーク２１４を用いて判定を行い、関心領域も検出マーク２１４の存在位置を含むように設定しておく。
【０１１３】
コントローラ１２０は、搬送ユニット２１０の移動は終了したと判定した場合、次の動作として、上部ユニット２２１を下降させるよう、モータドライバを通じて上部ユニット２２１のサーボモータに制御信号を送信する。その制御信号に基づいて、上部ユニット２２１が下降し、組み立て部２５０にあるワーク２０２に、部品２０３を取り付ける（ステップＳ１３）。この時、下部ユニット２２２は、ワーク２０２を固定する。
【０１１４】
ステップＳ０４と同様の判定方法により、上部ユニット２２１の下降動作が終了したか否か、判定する（Ｓ１４）。判定に用いる検出マークも同様であり、また、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様である。
【０１１５】
コントローラ１２０は、上部ユニット２２１の下降動作は終了したと判定した場合、次の動作として、搬送ユニット２１０に後退動作させ、その後戻り動作をさせる。同時に、ワークチャック２２３に対し、部品２０３をリリースするよう開く動作（アンチャック動作）を行わせる。そのため、コントローラ１２０は、モータドライバを通じて、搬送ユニット２１０のサーボモータに制御信号を送信する。その制御信号に基づき、搬送ユニット２１０がワーク２０２をリリースして後退し、その後戻り動作して原点位置に復帰する。同様に、上部ユニット２２１のサーボモータに制御信号を送信する。その制御信号に基づき、ワークチャック２２３はアンチャック動作を行う（ステップＳ１５）。
【０１１６】
次に、搬送ユニット２１０の移動が完了し、原点位置に復帰したか否かを判定する。同時に、ワークチャック２２３のアンチャック動作が完了したか否か判定する（ステップＳ１６）。
【０１１７】
搬送ユニット２１０の移動完了、アンチャック動作の完了は、それぞれ上述してきた判定方法と同様の方法で行われるが、ステップＳ１６では、それらを同一の画像上で同時に実行することが可能である。即ち、搬送ユニット２１０の検出マーク２１３の重心位置、面積を調べるための関心領域と、ワークチャック２２３に付された検出マーク２２６の重心位置、面積を調べるための関心領域をそれぞれ設定し、関心領域毎に判定を行う。
【０１１８】
それぞれの判定の結果、搬送ユニットの移動完了、アンチャック動作の完了とも確認できると、コントローラ１２０は、次の動作として、上部ユニット２２１を上昇させるよう、モータドライバを通じて上部ユニット２２１のサーボモータに制御信号を送信する。その制御信号に基づき、上部ユニット２２１は上昇する（ステップＳ１７）。
【０１１９】
その後、ステップＳ１０と同様に、上部ユニット２２１の上昇動作が終了したか否かを判定する（ステップＳ１８）。また、動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様に行う。
【０１２０】
コントローラ１２０が、上部ユニット２２１の上昇動作は終了したと判定した場合、次の動作として、部品組み付け済みのワーク（完成品）２０４を捕捉するため、搬送ユニット２１０を前進させる。そのため、コントローラ１２０は、モータドライバを通じて搬送ユニット２１０のサーボモータに対して制御信号を送信する。その制御信号に基づいて、搬送ユニット２１０は前進動作する（ステップＳ１９）。
【０１２１】
ステップＳ１９で搬送ユニット２１０の前進が終了したか否か判定する（ステップＳ２０）。動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様に行う。
【０１２２】
ステップＳ２０で、搬送ユニット２１０の前進が終了したと判定された場合、コントローラ１２０は、モータドライバを通じて搬送ユニット２１０のサーボモータに対して後退動作をさせる制御信号を送信する。その制御信号に基づいて、搬送ユニット２１０は完成品２０４を保持したまま後退する（ステップＳ２１）。
【０１２３】
そして、搬送ユニットの後退を確認する（ステップＳ２２）。動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様に行う。
【０１２４】
ステップＳ２２で、搬送ユニット２１０の後退が終了したと判定された場合、コントローラ１２０は、モータドライバを通じて、搬送ユニット２１０のサーボモータに対して送り動作及び前進動作をさせる制御信号を送信する。その制御信号に基づき、搬送ユニット２１０は完成品２０４をワーク排出部２６０へ排出するために、完成品２０４を保持したまま、送り動作し、その後前進する（ステップＳ２３）。
【０１２５】
次に、ステップＳ２３の搬送ユニット２１０の前進が終了したか否か判定する（ステップＳ２４）。動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様に行う。
【０１２６】
ステップＳ２４で、搬送ユニット２１０の前進終了を確認すると、完成品２０４がワーク排出部２６０のワーク出口２６１に排出される。そして、コントローラ１２０は、モータドライバを通じて搬送ユニット２１０のサーボモータに対して、搬送ユニット２１０が、後退動作した後、戻り動作を行うよう制御信号を送信する。そしてその制御信号に基づき、搬送ユニット２１０は原点位置に復帰する（ステップＳ２５）。
【０１２７】
最後に、搬送ユニット２１０が原点位置に復帰したか否かを確認する（ステップＳ２６）。ステップＳ２６では、搬送ユニット２１０に付された検出マーク２１３を用いて、他のステップＳ１６同様に判定する。動作終了判定基準を満たさない画像データは廃棄し、判定基準を満たした画像データはメモリ１３０に保存することも同様に行う。
【０１２８】
上記のように、ＣＣＤカメラにより撮像された動画を処理するのではなく、動作終了時点での静止画を用い、また画像全域を用いずに、関心領域のみを対象として判定処理を行うことで、高速に処理を行うことが可能となり、若しくは安価なプロセッサを用いて処理することが可能となる。また上述したように、画像データを解析し、各可動部の位置を確認することで、他のセンサがなくとも、原点位置確認やオーバーラン検知を行うことが可能となり、且つ各部の動作完了を判定した後に、次の動作を行うよう指令を出すことで、誤動作を防止することが可能となる。さらに、検出マークの重心位置、面積を判定に用いることで、各可動部の位置を精密に評価することが可能となり、誤動作の防止をより確実に行うことができる。また、ステップＳ０２〜Ｓ２６の各動作終了判定ステップにおいて、各可動部の動作完了と判定した画像データを保存することにより、事後的にそれらの画像を参照することで組み立て装置２００の動作解析を簡便に行うことが可能となり、特に異常発生時における原因の究明を容易に行うことが可能となる。さらに各可動部の動作未了と判定した画像データを廃棄することにより、保存するデータ量を減らすことができる。
【０１２９】
次に、メモリ１３０に保存した画像データから、組み立て装置２００の動作状態の再現を行う場合の動作について説明する。
【０１３０】
図１０に、動作再現時のモニタ１４０の画面の概略構成図を示す。
画像表示部１４１は、メモリ１３０に保存された画像データを表示する。データ表示部１４２は、画像表示部１４１に表示された画像に関連する情報（例えば、時間、動作終了判定対象可動部についての位置認識結果等）を表示する。また、操作部１４３は、表示する画像データを時間的に連続表示させたり、特定の画像データを呼び出して表示するといった機能をユーザに提供する。また、呼び出した画像データに基づいて、上述したステップＳ０２、Ｓ０４等の動作終了判定処理を模擬的に行わせる機能も提供する。
【０１３１】
ユーザは、異常発生時の画像データを表示させ、関連情報を確認したり、異常発生までの数サイクル分の各動作ステップ終了後の画像を連続的に表示させること等により、容易に異常発生原因を突き止めることができる。
【０１３２】
また、異常発生箇所を検知し易くするため、上述した異常判定方法におけるステップＳ２１０と同様の処理を行い、その結果を表示するようにしてもよい。具体的には、以下のような処理を行う。
【０１３３】
各動作終了判定ステップ（Ｓ０２、Ｓ０４、Ｓ０６等）に相当する状態において、入口２３１、部品投入部２４０及び出口２６１等に、ワーク２０２や部品２０３等が本来存在すべきところにのみ存在する参照画像データを事前に取得し、メモリ１３０に保存しておく。この参照画像データは、各動作終了判定ステップにおける、組み立て装置２００の理想状態を示すものである。
【０１３４】
そして、組み立て装置２００の動作監視中に保存された画像データと、対応する動作ステップの参照画像データとの間で、各画素間の差分絶対値を算出し、その差分絶対値を画素値とした差分画像を作成する。なお、差分画像は、上述したステップＳ２１０で設定される関心領域に限定して、差分絶対値を計算してもよい。さらに、差分画像は、差分絶対値が予め定めた閾値を超える画素の値を１とし、その他の画素の値を０とする２値画像で表してもよい。
【０１３５】
このように差分画像を作成すると、差分画像は、異常が全く生じていない動作ステップでは、ほぼ全画素について画素値が０となる。一方、異常を生じた動作ステップでは、異常が生じた場所に相当する画素値が０以外の値を取るようになる。
【０１３６】
そして、画像表示部１４１には、参照画像データ、保存された画像データ、及び差分画像を並べて表示させる。このようにして、異常発生時の数ステップ前から、異常発生が検知されて組み立て装置２００が停止した時点まで、ステップ毎に上記の３種類の画像を並べて表示することで、どのステップから異常が生じ始めたのかが容易に把握できる。
【０１３７】
また、保存されている画像データが、各動作の終了時の画像であるため、各可動部も静止して状態で写っており、画像上ではっきりと視認可能となり、上記動作解析において問題箇所を発見することが容易である。さらに、参照するデータ数も最小限で済み、ユーザの負担を軽減することが可能となる。
【０１３８】
なお、上述してきた実施形態は、本発明を説明するためのものであり、本発明は、これらの実施形態に限定されるものではない。
【図面の簡単な説明】
【０１３９】
【図１】本発明に係る監視制御装置の構成ブロック図である。
【図２】本発明に係る監視制御装置を実装した組み立て装置の構成ブロック図である。
【図３】本発明に係る監視制御装置を実装した組み立て装置の概略上面図である。
【図４】本発明に係る監視制御装置を実装した組み立て装置の概略斜視図である。
【図５】本発明に係る監視制御装置を実装した組み立て装置のフローチャートである。
【図６】本発明に係る監視制御装置を実装した組み立て装置のフローチャートである。
【図７】本発明に係る監視制御装置を実装した組み立て装置のタイミングチャートである。
【図８】関心領域の設定範囲、及び検出マークの重心の概要を示す図である。
【図９】本発明に係る監視制御装置による、組み立て装置の各可動部の動作終了判定方法のフローチャートである。
【図１０】動作再現時のモニタ画面の概略構成図である。
【符号の説明】
【０１４０】
１００    監視制御装置
１１０    カメラ
１２０    コントローラ
１３０    メモリ
１４０    モニタ
２００    組み立て装置
２１０    搬送ユニット
２２０    上下ユニット
２１３、２１４、２２５、２２６    検出マーク
１０１    関心領域
【図１】
2006228029.tif 000003
【図２】
2006228029.tif 000004
【図３】
2006228029.tif 000005
【図４】
2006228029.tif 000006
【図５】
2006228029.tif 000007
【図６】
2006228029.tif 000008
【図７】
2006228029.tif 000009
【図８】
2006228029.tif 000010
【図９】
2006228029.tif 000011
【図１０】
2006228029.tif 000012