(57)【要約】【課題】アクチュエータ制御の高性能化が可能なアクチュエータ制御システムを提供する。【解決手段】１回の撮像（Ｓ１）に対して、前記センサ出力演算部は、第１の精度で対象物体の位置を検出する第１位置検出処理と、前記第１の精度よりも高い精度で対象物体の位置を検出する第２位置検出処理と、の両方を実行し、転送制御部は、第１位置検出処理による検出結果である中間データ（Ｓ２）と第２位置検出処理による検出結果である最終データ（Ｓ４）との両方を転送し、指令値演算部は、中間データおよび最終データに基づいてアクチュエータを駆動するための指令値（Ｓ５）と、中間データに基づいてアクチュエータを予備的に駆動させるための予備指令値（Ｓ３）と、の両方を演算する。【選択図】図７
2020110916.tif 000002
【特許請求の範囲】
【請求項１】
センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御システムであって、
前記センサ出力信号に対して演算を行うセンサ出力演算部と、
前記センサ出力演算部による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御部と、
前記転送制御部が転送した前記中間データおよび前記最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算部とを備えており、
前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、
前記センサ出力演算部は、１回の撮像に対して、
第１の精度で前記対象物体の位置を検出する第１位置検出処理と、
前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、
の両方を実行し、
前記中間データは、前記第１位置検出処理による検出結果であり、
前記最終データは、前記第２位置検出処理による検出結果であり、
前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、
１回の撮像に対して、
前記転送制御部は、前記中間データと前記最終データとの両方を転送し、
前記指令値演算部は、前記指令値と前記予備指令値との両方を演算することを特徴とするアクチュエータ制御システム。
【請求項２】
前記センサ出力信号が、前記対象物体を複数の角度から撮像して得られた複数の撮像画像の信号であり、
前記センサ出力演算部は、
前記第１位置検出処理として、前記複数の画像のそれぞれから前記対象物体を二次元座標として検出し、
前記第２位置検出処理として、複数の前記二次元座標に基づいて前記対象物体の三次元座標を検出することを特徴とする請求項１に記載のアクチュエータ制御システム。
【請求項３】
センサ出力信号に基づいてアクチュエータの駆動を制御するためのセンサ装置であって、
前記センサ出力信号に対して演算を行うセンサ出力演算部と、
前記センサ出力演算部による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御部と、を備えており、
前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、
前記センサ出力演算部は、１回の撮像に対して、
第１の精度で前記対象物体の位置を検出する第１位置検出処理と、
前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、
の両方を実行し、
前記中間データは、前記第１位置検出処理による検出結果であり、
前記最終データは、前記第２位置検出処理による検出結果であり、
前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、
１回の撮像に対して、前記転送制御部は、前記中間データと前記最終データとの両方を転送することを特徴とするセンサ装置。
【請求項４】
前記センサ出力信号が、前記対象物体を複数の角度から撮像して得られた複数の撮像画像の信号であり、
前記センサ出力演算部は、
前記第１位置検出処理として、前記複数の画像のそれぞれから前記対象物体を二次元座標として検出し、
前記第２位置検出処理として、複数の前記二次元座標に基づいて前記対象物体の三次元座標を検出することを特徴とする請求項３に記載のセンサ装置。
【請求項５】
センサ出力信号に基づいてアクチュエータの駆動を制御するための制御装置であって、
前記センサ出力信号に対する演算の中間データおよび最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算部を備えており、
前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、
前記中間データは、第１の精度で前記対象物体の位置を検出する第１位置検出処理による検出結果であり、
前記最終データは、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理による検出結果であり、
１回の撮像に対して、前記指令値演算部は、前記指令値と前記予備指令値との両方を演算することを特徴とする制御装置。
【請求項６】
センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御方法であって、
前記センサ出力信号に対して演算を行うセンサ出力演算工程と、
前記センサ出力演算工程による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御工程と、
前記転送制御工程において転送された前記中間データおよび前記最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算工程とを含んでおり、
前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、
前記センサ出力演算工程は、１回の撮像に対して、
第１の精度で前記対象物体の位置を検出する第１位置検出処理と、
前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、
の両方を実行し、
前記中間データは、前記第１位置検出処理による検出結果であり、
前記最終データは、前記第２位置検出処理による検出結果であり、
前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、
１回の撮像に対して、
前記転送制御工程は、前記中間データと前記最終データとの両方を転送し、
前記指令値演算工程は、前記指令値と前記予備指令値との両方を演算することを特徴とするアクチュエータ制御方法。
【請求項７】
請求項１または２に記載のアクチュエータ制御システムとしてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
【請求項８】
請求項７に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクチュエータ制御システム、センサ装置、制御装置、アクチュエータ制御方法、情報処理プログラム、および記録媒体に関する。
【背景技術】
【０００２】
従来、センサ出力信号に基づいてアクチュエータを駆動させるシステムの開発が進んでいる。
【０００３】
特許文献１、および特許文献２では、センサによるワーク（物体）の検出時間の短縮化により、アクチュエータ駆動完了までの期間の短縮を実現している。特許文献３では、ワーク（物体）の移送失敗回数を減らすことにより、上記期間の短縮を実現している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２３７１８８号公報（２０１４年１２月１８日公開）
【特許文献２】特開２０１１−１３３２７３号公報（２０１１年７月７日公開）
【特許文献３】特開２００８−８７０７４号公報（２００８年４月１７日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１〜３のいずれにおいても、下記の問題（１）および（２）に起因して、システム制御の性能が不十分であるという問題が発生する。
【０００６】
（１）物体の情報の取得が完了した後にアクチュエータの駆動が開始される。換言すれば、アクチュエータの駆動開始タイミングが遅い。このことが、物体の情報の取得からアクチュエータの駆動完了までの期間の短縮の妨げとなっていた。
【０００７】
（２）一般に、物体の情報の取得に用いられるセンサおよびアクチュエータは所定の制御周期で制御が行われている。このため、センサでの検出タイミングと、アクチュエータでの駆動タイミングとにはタイムラグが生じるため、アクチュエータの高精度な制御ができなかった。
【０００８】
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、アクチュエータ制御の高性能化が可能なアクチュエータ制御システム、センサ装置、および制御装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明のアクチュエータ制御システムは、センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御システムであって、前記センサ出力信号に対して演算を行うセンサ出力演算部と、前記センサ出力演算部による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御部と、前記転送制御部が転送した前記中間データおよび前記最終データに基づいて、前記アクチュエータを駆動するための指令値を演算する指令値演算部とを備えていることを特徴としている。
【００１０】
上記の構成において、センサ出力演算部は、演算内容によっては最終データの演算完了までに時間がかかることがある。これに対して、上記の構成によれば、指令値演算部は、最終データの受信よりも前のタイミングで中間データを受信することが可能となる。よって、指令値演算部は、センサ出力演算部における最終データの演算完了より前に取得した中間データに基づく演算を行うことが可能となる。したがって、アクチュエータの制御をより高速に、または、より高精度に行うことが可能となる。
【００１１】
また、前記指令値演算部は、前記中間データに基づいて前記アクチュエータを予備的に駆動させるための予備指令値を演算することが好ましい。
【００１２】
上記の構成によれば、中間データに基づく予備指令値によってアクチュエータを予備的に駆動させることが可能となる。すなわち、センサ出力演算部における最終データの演算完了より前の時点から、アクチュエータの駆動制御を開始することが可能となり、制御の高速化を実現できる。
【００１３】
また、本発明のアクチュエータ制御システムは、前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、前記センサ出力演算部は、第１の精度で前記対象物体の位置を検出する第１位置検出処理と、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、を実行し、前記中間データは、前記第１位置検出処理による検出結果であることが好ましい。
【００１４】
上記の構成では、第１位置検出処理において、比較的精度の低い位置検出を高速に行った後に、第２位置検出処理において、より精度の高い位置検出を行っている。よって、最初から高い精度で位置検出を行うよりも、高速に位置検出を行うことができる。
【００１５】
また、第１位置検出処理の結果を中間データとして予備指令値が算出され、センサ出力演算部における最終データの演算完了より前の時点から、アクチュエータの駆動制御を開始することが可能となる。すなわち、比較的精度の低い位置検出結果に基づいてアクチュエータの駆動を開始させ、その後精度の高い位置検出結果に基づいて精確な位置へのアクチュエータの駆動を完了させることができるので、高精度の制御を高速に行うことが可能となる。
また、本発明のアクチュエータ制御システムは、センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御システムであって、前記センサ出力信号に対して演算を行うセンサ出力演算部と、前記センサ出力演算部による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御部と、前記転送制御部が転送した前記中間データおよび前記最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算部とを備えており、前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、前記センサ出力演算部は、１回の撮像に対して、第１の精度で前記対象物体の位置を検出する第１位置検出処理と、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、の両方を実行し、前記中間データは、前記第１位置検出処理による検出結果であり、前記最終データは、前記第２位置検出処理による検出結果であり、前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、１回の撮像に対して、前記転送制御部は、前記中間データと前記最終データとの両方を転送し、前記指令値演算部は、前記指令値と前記予備指令値との両方を演算することを特徴としてもよい。
【００１６】
また、本発明のアクチュエータ制御システムは、前記センサ出力信号が、前記対象物体を複数の角度から撮像して得られた複数の撮像画像の信号であり、前記センサ出力演算部は、前記第１位置検出処理として、前記複数の画像のそれぞれから前記対象物体を二次元座標として検出し、前記第２位置検出処理として、複数の前記二次元座標に基づいて前記対象物体の三次元座標を検出することが好ましい。
【００１７】
上記の構成によれば、第１位置検出処理によって対象物体を検出した時点でアクチュエータの駆動を開始し、その後、第２位置検出処理による三次元座標に基づいて、三次元位置に関するアクチュエータの精確な駆動を完了させることができる。ここで、第２位置検出処理における三次元座標の算出は比較的演算時間が長くかかるものであるが、第１位置検出処理結果に基づいてアクチュエータの駆動を開始させることによって、制御の高速化を実現することができる。
【００１８】
また、前記中間データは、前記センサ出力信号が出力された時刻の情報であり、前記指令値演算部は、前記時刻の情報を参照して前記指令値を演算することが好ましい。
【００１９】
上記の構成によれば、センサ出力信号が出力された時点と、アクチュエータの駆動時点とでタイムラグがあったとしても、これを考慮して指令値演算部は指令値を演算することが可能となる。よって、より精度の高いアクチュエータの制御を実現することができる。
【００２０】
また、センサの出力とアクチュエータの制御との同期をとるために、これらを有線により接続する構成も考えられるが、上記の構成によれば、このような有線接続のための配線を設ける必要はない。よって、設備を簡素化することができるとともに、各設備の配置の自由度を向上させることができる。
また、本発明のセンサ装置は、センサ出力信号に基づいてアクチュエータの駆動を制御するためのセンサ装置であって、前記センサ出力信号に対して演算を行うセンサ出力演算部と、前記センサ出力演算部による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御部と、を備えており、前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、前記センサ出力演算部は、１回の撮像に対して、第１の精度で前記対象物体の位置を検出する第１位置検出処理と、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、の両方を実行し、前記中間データは、前記第１位置検出処理による検出結果であり、前記最終データは、前記第２位置検出処理による検出結果であり、前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、１回の撮像に対して、前記転送制御部は、前記中間データと前記最終データとの両方を転送することを特徴としている。
また、本発明のセンサ装置は、前記センサ出力信号が、前記対象物体を複数の角度から撮像して得られた複数の撮像画像の信号であり、前記センサ出力演算部は、前記第１位置検出処理として、前記複数の画像のそれぞれから前記対象物体を二次元座標として検出し、前記第２位置検出処理として、複数の前記二次元座標に基づいて前記対象物体の三次元座標を検出することが好ましい。
また、本発明の制御装置は、センサ出力信号に基づいてアクチュエータの駆動を制御するための制御装置であって、前記センサ出力信号に対する演算の中間データおよび最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算部を備えており、前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、前記中間データは、第１の精度で前記対象物体の位置を検出する第１位置検出処理による検出結果であり、前記最終データは、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理による検出結果であり、１回の撮像に対して、前記指令値演算部は、前記指令値と前記予備指令値との両方を演算することを特徴としている。
【００２１】
また、本発明のアクチュエータ制御方法は、センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御方法であって、前記センサ出力信号に対して演算を行うセンサ出力演算工程と、前記センサ出力演算工程による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御工程と、前記転送制御工程において転送された前記中間データおよび前記最終データに基づいて、前記アクチュエータを駆動するための指令値を演算する指令値演算工程とを含んでいることを特徴としている。
【００２２】
上記の構成によれば、本発明のアクチュエータ制御システムと同様の効果を奏するアクチュエータ制御方法を実現することができる。
また、本発明のアクチュエータ制御方法は、センサ出力信号に基づいてアクチュエータの駆動を制御するアクチュエータ制御方法であって、前記センサ出力信号に対して演算を行うセンサ出力演算工程と、前記センサ出力演算工程による演算の最終結果である最終データを転送すると共に、前記最終データの送信よりも前に中間データを転送する転送制御工程と、前記転送制御工程において転送された前記中間データおよび前記最終データに基づいて、前記中間データと前記最終データとの差に応じて、前記アクチュエータを駆動するための指令値を演算すると共に、前記中間データに基づいて、前記アクチュエータを予備的に駆動させるための予備指令値を演算する指令値演算工程とを含んでおり、前記センサ出力信号が、対象物体を撮像して得られた撮像画像の信号であり、前記センサ出力演算工程は、１回の撮像に対して、第１の精度で前記対象物体の位置を検出する第１位置検出処理と、前記第１の精度よりも高い精度で前記対象物体の位置を検出する第２位置検出処理と、の両方を実行し、前記中間データは、前記第１位置検出処理による検出結果であり、前記最終データは、前記第２位置検出処理による検出結果であり、前記中間データと前記最終データとは、互いに同じセンサ出力信号の演算結果であり、１回の撮像に対して、前記転送制御工程は、前記中間データと前記最終データとの両方を転送し、前記指令値演算工程は、前記指令値と前記予備指令値との両方を演算することを特徴としてもよい。
【００２３】
なお、本発明のアクチュエータ制御システムとしてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラムについても、本発明の範疇に含まれる。また、当該情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体についても、本発明の範疇に含まれる。
【発明の効果】
【００２４】
本発明は、アクチュエータ制御の高性能化が可能であるという効果を奏する。
【図面の簡単な説明】
【００２５】
【図１】本発明のアクチュエータ制御システムを備えたシステムの一例を示す概略図である。
【図２】本発明のアクチュエータ制御システムを備えたシステムの別の例を示す概略図である。
【図３】本発明のアクチュエータ制御システムを備えたシステムのさらに別の例を示す概略図である。
【図４】本発明の一実施形態に係るアクチュエータ制御システムのブロック図である。
【図５】センサ出力演算部による演算の一例を示す図であり、（ａ）は高速かつ低精度の演算を示しており、（ｂ）は低速かつ高精度の演算を示している。
【図６】経過時間に対する、アクチュエータの駆動対象の対象物体方向への移動速度の関係を示すグラフである。
【図７】図４に示すアクチュエータ制御システムの動作の流れを示すタイミングチャートである。
【図８】図４に示すアクチュエータ制御システムの動作の流れを示す別のタイミングチャートである。
【図９】本発明の別の実施形態に係るアクチュエータ制御システムのブロック図である。
【図１０】図９に示すアクチュエータ制御システムの動作の流れを示すタイミングチャートである。
【図１１】本発明のさらに別の実施形態に係るアクチュエータ制御システムのブロック図である。
【図１２】（ａ）〜（ｃ）は、ＩＬＯ統合コンポの適用による利点を説明するイメージ図である。
【発明を実施するための形態】
【００２６】
以下、本発明を実施するための形態について、図１〜図１２を参照して説明する。なお、説明の便宜上、先の説明にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００２７】
図１は、アクチュエータ制御システム１００を備えたシステム１０００を示す概略図である。システム１０００は、アクチュエータ制御システム１００、アクチュエータ４、アクチュエータの駆動対象５（以下、単に「駆動対象５」と称する）、ＨＭＩ６、およびコンベヤ７を備えている。アクチュエータ制御システム１００は、センサ部１ａおよび１ｂ（但し、後述する物体情報取得部２２は除く）、制御装置２、ならびに駆動回路３を備えている。なお、システム１０００において、駆動対象５は、対象物体８を掴んで移動させるロボット５ａである。
【００２８】
センサ部１ａおよび１ｂはそれぞれ、対象物体８の位置や形状を検出するセンサヘッド、およびその周辺回路によって構成されている。なお、後述するように、当該センサヘッドと当該周辺回路とは、別体で設けられていてもよい。システム１０００において、センサ部１ａは、対象物体８が目の前を通過したかどうかを検出しており、センサ部１ｂは、対象物体８が目の前を通過したことをセンサ部１ａが検出したことをトリガーとして、撮像を行う。
【００２９】
制御装置２は、例えばＰＬＣ（Programmable Logic Controller）によって構成されている。制御装置２は、センサ部１ａおよび１ｂから供給されたデータに基づいて、アクチュエータ４の駆動を制御するための指令値を演算し、駆動回路３に供給するものである。
【００３０】
駆動回路３は、制御装置２から供給された指令値に基づいて、アクチュエータ４の駆動を制御するものである。アクチュエータ４は、駆動回路３によって駆動され、駆動対象５に動力を与えるものである。駆動対象５は、アクチュエータ４によって機械的に動作されるものであり、システム１０００においては上述したとおり対象物体８を掴んで移動させるロボット５ａである。ＨＭＩ６は、タッチパネル式の表示入力装置であり、ユーザは、ＨＭＩ６を介して制御装置２を操作したり、制御装置２の動作状態を確認したりすることができる。コンベヤ７は、制御装置２によって駆動され、自身に載せられた対象物体８を輸送するものである。
【００３１】
図２は、アクチュエータ制御システム１０１を備えたシステム１００１を示す概略図である。システム１００１は、アクチュエータ制御システム１０１、アクチュエータ４、駆動対象５、チップ突き上げ部材９、およびチップ取得ヘッド１０を備えている。アクチュエータ制御システム１０１は、センサ部１（但し、後述する物体情報取得部２２は除く）、制御装置２、および駆動回路３を備えている。なお、システム１００１において、駆動対象５は、アクチュエータ４によって機械的に動作されるステージ５ｂである。
【００３２】
センサ部１は、ウエハ１１に形成された、対象物体８（ここでは、取得対象チップ）の位置や形状を検出するものである。制御装置２は、センサ部１から供給されたデータに基づいて、アクチュエータ４の駆動を制御するための指令値を演算し、駆動回路３に供給するものである。システム１００１においては、対象物体８をチップ取得ヘッド１０の直下に導き、チップ取得ヘッド１０の直下に導かれた対象物体８を、チップ突き上げ部材９によって下方から突き上げる。チップ取得ヘッド１０は、自身の直下にて突き上げられた対象物体８を取得するものである。
【００３３】
なお、ステージ５ｂは、図２のＸｗ軸、Ｙｗ軸、Ｚｗ軸、およびθｗ軸の４軸に沿って移動する。また、図２には、チップ突き上げ部材９が移動する軸であるＰｗ軸、およびチップ取得ヘッド１０が移動する軸の１つであるＸｓ軸を併せて示している。
【００３４】
図３は、アクチュエータ制御システム１０２を備えたシステム１００２を示す概略図である。システム１００２は、アクチュエータ制御システム１０２、アクチュエータ４、および駆動対象５を備えている。アクチュエータ制御システム１０２は、センサ部１（但し、後述する物体情報取得部２２は除く）、制御装置２、および駆動回路３を備えている。なお、システム１００２において、駆動対象５は、対象物体８を掴んで移動させるロボット５ａである。
【００３５】
センサ部１は、センサ部１が撮像した画像から対象物体８を検出し、対象物体８の三次元座標を検出することができるものである。つまり、センサ部１が撮像した複数の画像（対象物体を複数の角度から撮像して得られた複数の撮像画像）のそれぞれから対象物体８を二次元座標として検出し、これら複数の二次元座標に基づいて対象物体８の三次元座標を検出することができる。
【００３６】
図４は、アクチュエータ制御システム２００のブロック図である。アクチュエータ制御システム２００は、アクチュエータ制御システム１００およびアクチュエータ制御システム１０２のいずれかとして特に好適に利用可能である。
【００３７】
アクチュエータ制御システム２００は、センサ部２１（但し、後述する物体情報取得部２２は除く）、制御装置２、および駆動回路３を備えている。
【００３８】
センサ部２１は、センサ部１、または、センサ部１ａおよび１ｂによって構成されている。センサ部２１は、物体情報取得部２２、センサ出力演算部２３、および転送制御部２４を備えている。
【００３９】
物体情報取得部２２は、対象物体８（図１参照）の情報を取得する。具体的に、物体情報取得部２２は、対象物体８を撮像し、対象物体８の撮像画像の信号を取得する。アクチュエータ制御システム２００においては、当該信号を、センサ出力信号として用いている。
【００４０】
センサ出力演算部２３は、物体情報取得部２２から対象物体８の撮像画像の信号が供給される。センサ出力演算部２３は、自身に供給された当該信号に対して演算を行う。
【００４１】
ここで、センサ出力演算部２３の演算の一例について、図５を参照して説明する。図５は、センサ出力演算部２３による演算の一例を示す図である。
【００４２】
図５の（ａ）には、第１位置検出処理としてのラフサーチを示している。ラフサーチにおいては、撮像画像３１から第１の精度で対象物体８の位置を検出する。具体的に、このラフサーチにおいては、撮像画像３１を複数の領域に分割（図５の（ａ）では１６分割）し、当該複数の領域のうち対象物体８の中心位置を含む領域３２を検出する。このラフサーチは、対象物体８の位置を大まかに検出することを目的としており、検出が比較的高速である一方、第１の精度自体は比較的低い。ここでは、ラフサーチによって得られた対象物体８の位置の座標を（ｘ１，ｙ１）とする。
【００４３】
図５の（ｂ）には、第２位置検出処理としてのファインサーチを示している。ファインサーチにおいては、撮像画像３１から第２の精度で対象物体８の位置を検出する。具体的に、このファインサーチにおいては、領域３２を複数の領域に分割（図５の（ｂ）では１６分割）し、対象物体８の中心位置がどの領域に含まれるかを認識することにより、対象物体８の位置を正確に検出する。このファインサーチは、対象物体８の位置をラフサーチより正確に検出することを目的としており、第２の精度自体は第１の精度より高い一方、ラフサーチと比較して検出が低速である。ここでは、ファインサーチによって得られた対象物体８の位置の座標を（ｘ２，ｙ２）とする。
【００４４】
その他、ラフサーチの方法として、画像を圧縮して小さくして処理をすることも可能である。この場合、ラフサーチの際には、圧縮した小さな画像に対して処理を行い、ファインサーチの際には、圧縮前の画像に対して処理を行う。
【００４５】
また、その他、ファインサーチの方法として、パターンマッチングする際のパターン数を多くするということも可能である。ラフサーチでは少ない数のパターンとマッチングを行い、ファインサーチではより多くの数のパターンとマッチングを行うことで精度が向上する。
【００４６】
転送制御部２４は、センサ出力演算部２３による演算の最終結果である最終データを転送すると共に、この最終データの送信よりも前に中間データを転送する。ここでは、中間データは、ラフサーチによる検出結果である座標（ｘ１，ｙ１）を示すデータであり、最終データは、ファインサーチによる検出結果である座標（ｘ２，ｙ２）を示すデータであるものとする。
【００４７】
制御装置２は、指令値演算部２５、および記憶部２６を備えている。記憶部２６には、中間データ演算プログラム２７、および最終データ演算プログラム２８が格納されている。
【００４８】
指令値演算部２５は、例えばＣＰＵによって構成されており、転送制御部２４が転送した中間データおよび最終データに基づいて、アクチュエータ４を駆動するための指令値を演算する。
【００４９】
具体的に、座標（ｘ１，ｙ１）を示す中間データが供給されると、指令値演算部２５は、記憶部２６から中間データ演算プログラム２７を読み出す。そして、指令値演算部２５は、当該中間データに基づいて、アクチュエータ４を予備的に駆動させるための予備指令値を演算する。この予備指令値は、駆動対象５を、上記座標（ｘ１，ｙ１）と対応する位置に移動させる指令値である。指令値演算部２５は、この予備指令値を駆動回路３に供給し、駆動回路３は、供給された予備指令値に基づいてアクチュエータ４の駆動を制御する。
【００５０】
その後、座標（ｘ２，ｙ２）を示す最終データが供給されると、指令値演算部２５は、記憶部２６から最終データ演算プログラム２８を読み出す。そして、指令値演算部２５は、上記中間データおよび当該最終データに基づいて、アクチュエータ４を駆動させるための指令値を演算する。この指令値は、上記予備指令値に基づいて既に実行されたアクチュエータ４の駆動制御を考慮した上で、駆動対象５を、上記座標（ｘ２，ｙ２）と対応する位置に移動させる指令値である。この指令値は、上記座標（ｘ１，ｙ１）と上記座標（ｘ２，ｙ２）との差に応じて、駆動対象５の状態（位置、速度、加速度）を変化させ得るものであり、差が小さければ低速で、差が大きければ高速で駆動対象５を動かすように、アクチュエータ４の駆動を制御する。指令値演算部２５は、この指令値を駆動回路３に供給し、駆動回路３は、供給された指令値に基づいてアクチュエータ４の駆動を制御する。
【００５１】
センサ出力演算部２３は、演算内容によっては最終データの演算完了までに時間がかかることがある。これに対して、指令値演算部２５は、最終データの受信よりも前のタイミングで中間データを受信することが可能となる。よって、指令値演算部２５は、センサ出力演算部２３における最終データの演算完了より前に取得した中間データに基づく演算を行うことが可能となる。したがって、アクチュエータ４の制御をより高速に、または、より高精度に行うことが可能となる。
【００５２】
また、アクチュエータ制御システム２００においては、中間データに基づく予備指令値によってアクチュエータ４を予備的に駆動させることが可能となる。すなわち、センサ出力演算部２３における最終データの演算完了より前の時点から、アクチュエータ４の駆動制御を開始することが可能となり、制御の高速化を実現できる。
【００５３】
また、アクチュエータ制御システム２００においては、ラフサーチにおいて、比較的精度の低い位置検出を高速に行った後に、ファインサーチにおいて、より精度の高い位置検出を行っている。よって、最初から高い精度で位置検出を行うよりも、高速に位置検出を行うことができる。
【００５４】
また、ラフサーチの結果を中間データとして予備指令値が算出され、センサ出力演算部２３における最終データの演算完了より前の時点から、アクチュエータ４の駆動制御を開始することが可能となる。すなわち、比較的精度の低い位置検出結果に基づいてアクチュエータ４の駆動を開始させ、その後精度の高い位置検出結果に基づいて精確な位置へのアクチュエータ４の駆動を完了させることができるので、高精度の制御を高速に行うことが可能となる。
【００５５】
図６は、経過時間に対する、駆動対象５の対象物体８方向への移動速度の関係を示すグラフである。
【００５６】
時刻ｔ１は、予備指令値に基づくアクチュエータ４の駆動制御が開始したタイミングである。時刻ｔ２は、指令値に基づくアクチュエータ４の駆動制御が開始したタイミングである。時刻ｔ３は、アクチュエータ４の駆動制御が終了したタイミングである。
【００５７】
アクチュエータ４は、時刻ｔ１から駆動対象５の移動を開始し、駆動対象５の移動速度が所定の速度ｖａに到達するまで、一定の加速度で駆動対象５を加速させる。図６において、駆動対象５の移動速度が速度ｖａに到達したタイミングは、時刻ｔａである。
【００５８】
アクチュエータ４は、時刻ｔａから時刻ｔ２までの間、一定の速度（すなわち、速度ｖａ）で駆動対象５を移動させる。
【００５９】
アクチュエータ４は、時刻ｔ２から駆動対象５の移動を加速させ、駆動対象５の移動速度が所定の速度ｖｂに到達するまで、一定の加速度で駆動対象５を加速させる。図６において、駆動対象５の移動速度が速度ｖｂに到達したタイミングは、時刻ｔｂである。
【００６０】
アクチュエータ４は、時刻ｔｂから時刻ｔｃまでの間、一定の速度（すなわち、速度ｖｂ）で駆動対象５を移動させる。
【００６１】
アクチュエータ４は、時刻ｔｃから駆動対象５の移動を減速させ、駆動対象５の移動速度が０に到達するまで、一定の加速度で駆動対象５を減速させる。図６において、駆動対象５の移動速度が０に到達したタイミングは、時刻ｔ３である。
【００６２】
図７は、アクチュエータ制御システム２００の動作の流れを示すタイミングチャートである。なお、センサ部２１および制御装置２における具体的な処理の流れについては、図４を参照して説明したとおりであるため、ここでは省略している。また、駆動回路３の動作の内容については、アクチュエータ４の駆動制御の内容に直接的に影響を及ぼすものではないので、図７においては駆動回路３についての図示を省略している。
【００６３】
まず、制御装置２は、センサ部２１に対して撮像指示を送信する（ステップＳ１）。続いて、センサ部２１は、制御装置２に対して中間データを転送する（ステップＳ２）。続いて、制御装置２は、当該中間データに基づいて予備指令値を演算し、この予備指令値に基づいてアクチュエータ４の駆動を予備的に制御する（ステップＳ３）。続いて、センサ部２１は、制御装置２に対して最終データを転送する（ステップＳ４）。続いて、制御装置２は、上記中間データおよび当該最終データに基づいて指令値を演算し、この指令値に基づいてアクチュエータ４の駆動を制御する（ステップＳ５）。最後に、アクチュエータ４は、駆動完了の旨、制御装置２に通知する（ステップＳ６）。
【００６４】
ここで、センサ部２１がセンサ部１ａおよび１ｂによって構成されている場合の、アプリケーションの具体例について説明する。
【００６５】
センサ部１ａおよび１ｂという２つのセンサ部を用いる場合、ラフサーチによる検出結果として、対象物体８の二次元座標である座標（ｘ１，ｙ１）の他、対象物体８の三次元座標（ｘ１，ｙ１，ｚ１）、および対象物体８の姿勢が挙げられる。座標（ｘ１，ｙ１）は、主に対象物体８の有無を判定するためのものである。三次元座標（ｘ１，ｙ１，ｚ１）は、主に駆動対象５としてのロボット５ａにより対象物体８を掴む場所を大まかに決定するためのものである。対象物体８の姿勢は、主にロボット５ａにより対象物体８を掴む方法を大まかに決定するためのものである。アクチュエータ制御システム２００においては、座標（ｘ１，ｙ１）のデータ、三次元座標（ｘ１，ｙ１，ｚ１）のデータ、対象物体８の姿勢のデータ、またはこれらのうち２つ以上の組み合わせを、中間データとして用いることができる。
【００６６】
図８は、アクチュエータ制御システム２００の動作の流れを示す別のタイミングチャートである。図８は、上記アプリケーションの具体例に係るタイミングチャートの一例であると言える。なお、センサ部２１および制御装置２における具体的な処理の流れについては、図４を参照して説明したとおりであるため、ここでは省略している。また、駆動回路３の動作の内容については、アクチュエータ４の駆動制御の内容に直接的に影響を及ぼすものではないので、図８においては駆動回路３についての図示を省略している。
【００６７】
図８に示すタイミングチャートにおいては、センサ部２１による対象物体８の撮像、ラフサーチ、およびファインサーチが、この順に行われている。そして、駆動対象５としてのロボット５ａにより対象物体８を掴むことに関する一連の作業であるピッキングの開始タイミングが、ラフサーチの終了直後となっている。これは、アクチュエータ制御システム２００による予備指令値に基づくアクチュエータ４の駆動制御によって、ラフサーチの終了直後に、ロボット５ａを対象物体８に向けて移動させることができるためである。ピッキングは、ファインサーチの完了後、アクチュエータ制御システム２００による指令値に基づくアクチュエータ４の駆動制御が完了するまで続く。その後、対象物体８を所定の位置に運ぶ一連の作業であるプレイスが行われる。
【００６８】
図８に示すタイミングチャートによれば、上記アプリケーションの具体例に係るアクチュエータ制御システム２００においては、ファインサーチとピッキングとが同時に行われるタイミングが存在している。このため、ファインサーチ時間とピッキング時間との合計を小さくすることができるため、アクチュエータ４を高速に制御することができる。
【００６９】
図９は、アクチュエータ制御システム３００のブロック図である。アクチュエータ制御システム３００は、アクチュエータ制御システム１０１として特に好適に利用可能である。
【００７０】
アクチュエータ制御システム３００は、センサ部２１（但し、物体情報取得部２２は除く）、制御装置２ａ、および駆動回路３を備えている。
【００７１】
制御装置２ａは、指令値演算部２５ａ、および記憶部２６ａを備えている。記憶部２６ａには、最終データ演算プログラム２８、および同期プログラム２９が格納されている。
【００７２】
指令値演算部２５ａは、例えばＣＰＵによって構成されており、転送制御部２４が転送した中間データおよび最終データに基づいて、アクチュエータ４を駆動するための指令値を演算する。
【００７３】
具体的に、アクチュエータ制御システム３００において、中間データは、物体情報取得部２２から対象物体８の撮像画像の信号（センサ出力信号）が出力された時刻（撮像時刻）の情報のデータである。そして、当該中間データ、および、アクチュエータ４から供給されるアクチュエータ４の制御情報が供給されると、指令値演算部２５ａは、記憶部２６ａから同期プログラム２９を読み出す。なお、アクチュエータ４の制御情報には、駆動対象５の現在位置を示す情報、およびアクチュエータ４が信号を保持するラッチ時刻が含まれている。そして、指令値演算部２５ａは、当該中間データおよび当該制御情報に基づいて、センサ部２１とアクチュエータ４との同期をとる。
【００７４】
その後、座標（ｘ２，ｙ２）を示す最終データが供給されると、指令値演算部２５ａは、記憶部２６ａから最終データ演算プログラム２８を読み出す。指令値演算部２５ａが記憶部２６ａから最終データ演算プログラム２８を読み出した後の動作は、指令値演算部２５が記憶部２６から最終データ演算プログラム２８を読み出した後の動作と同様である。
【００７５】
アクチュエータ制御システム３００においては、物体情報取得部２２から対象物体８の撮像画像の信号が出力された時点と、アクチュエータ４の駆動時点とでタイムラグがあったとしても、これを考慮して指令値演算部２５ａは指令値を演算することが可能となる。よって、より精度の高いアクチュエータ４の制御を実現することができる。
【００７６】
また、センサ部２１の出力とアクチュエータ４の制御との同期をとるために、これらを有線により接続する構成も考えられるが、アクチュエータ制御システム３００においては、このような有線接続のための配線を設ける必要はない。よって、設備を簡素化することができるとともに、各設備の配置の自由度を向上させることができる。
【００７７】
図１０は、アクチュエータ制御システム３００の動作の流れを示すタイミングチャートである。なお、センサ部２１および制御装置２ａにおける具体的な処理の流れについては、図９を参照して説明したとおりであるため、ここでは省略している。また、駆動回路３の動作の内容については、アクチュエータ４の駆動制御の内容に直接的に影響を及ぼすものではないので、図１０においては駆動回路３についての図示を省略している。
【００７８】
まず、制御装置２ａは、センサ部２１に対して撮像指示を送信する（ステップＳ１ａ）。このとき、制御装置２ａは、アクチュエータ４からアクチュエータ４の制御情報（現在位置、ラッチ時刻）を取り込む（ステップＳ１１）。続いて、センサ部２１は、制御装置２ａに対して中間データを転送する（ステップＳ２ａ）。このとき、制御装置２ａは、アクチュエータ４からアクチュエータ４の制御情報（現在位置、ラッチ時刻）を取り込む（ステップＳ２１）。続いて、センサ部２１は、制御装置２ａに対して最終データを転送する（ステップＳ４ａ）。このとき、制御装置２ａは、アクチュエータ４からアクチュエータ４の制御情報（現在位置、ラッチ時刻）を取り込む（ステップＳ３１）。続いて、制御装置２ａは、上記中間データおよび当該最終データに基づいて指令値を演算し、この指令値に基づいてアクチュエータ４の駆動を制御する（ステップＳ５ａ）。最後に、アクチュエータ４は、駆動完了の旨、駆動回路３を介して制御装置２ａに通知してもよい。
【００７９】
ステップＳ１１、ステップＳ２１、およびステップＳ３１は、所定の制御周期に従って行われている。そして、ステップＳ１ａ、ステップＳ２ａ、およびステップＳ４ａが、それぞれ、ステップＳ１１、ステップＳ２１、およびステップＳ３１と同期している。ここで、制御装置２ａは、ステップＳ２ａおよびステップＳ２１のタイミングで、撮像時刻の情報と、アクチュエータ４の現在位置およびラッチ時刻の情報を得ることができるので、ステップＳ４ａおよびステップＳ３１のタイミングよりも前から指令値の演算を開始することができる。よって、処理の高速化を図ることができる。
【００８０】
図１１は、アクチュエータ制御システム４００のブロック図である。アクチュエータ制御システム４００は、アクチュエータ制御システム１００およびアクチュエータ制御システム１０２のいずれかとして特に好適に利用可能である。
【００８１】
アクチュエータ制御システム４００は、ＩＬＯ統合コンポ４１を備えている。
【００８２】
センサヘッド４０は、物体情報取得部２２を備えている。ＩＬＯ統合コンポ４１は、センサ出力演算部２３、転送制御部２４、制御装置２、および駆動回路３を備えている。つまり、アクチュエータ制御システム４００においては、センサヘッド４０を構成する物体情報取得部２２と、センサヘッド４０の周辺回路を構成するセンサ出力演算部２３および転送制御部２４とが、互いに別体で設けられている。
【００８３】
ＩＬＯ統合コンポ４１を構成して、制御ロジックの統合および再構築が図られたアクチュエータ制御システム４００においては、装置サイズの小型化、ならびに制御の高速、高精度、および簡単化が可能となる。特に、アクチュエータ制御システム４００においては、スループットの高速化、非同期制御の同期化、および上述した中間データの共有化等を期待することができる。
【００８４】
なお、アクチュエータ制御システム４００は、アクチュエータ制御システム２００に対して、物体情報取得部２２と、センサ出力演算部２３および転送制御部２４とが、互いに別体で設けられている構成を適用したものである。アクチュエータ制御システム３００に対しても同様に、物体情報取得部２２と、センサ出力演算部２３および転送制御部２４とが、互いに別体で設けられている構成を適用することができる。
【００８５】
図１２の（ａ）〜（ｃ）は、ＩＬＯ統合コンポ４１の適用による利点を説明するイメージ図である。
【００８６】
図１２の（ａ）のシステム５００は、アクチュエータ制御システム２００または３００を搭載したシステムの一例である。この場合、駆動対象５であるロボット５ａの移動速度を考慮した結果、ロボット５ａは４台必要となるものとする。
【００８７】
図１２の（ｂ）のシステム５０１は、システム５００に対して、制御装置２、および制御装置２の動作に直接的に関連する部材を１つの集積回路に設けた例である。この場合、駆動対象５であるロボット５ａの移動速度を考慮した結果、ロボット５ａが２台あれば、システム５００と同等の速度での作業が可能であると考えられる。
【００８８】
図１２の（ｃ）のシステム５０２は、アクチュエータ制御システム４００を搭載したシステムの一例である。この場合、駆動対象５であるロボット５ａの移動速度を考慮した結果、ロボット５ａが１台あれば、システム５００と同等の速度での作業が可能であると考えられる。
【００８９】
なお、中間データを用いた技術として、下記も考えられる。
【００９０】
すなわち、従来、ファイバセンサの受光量に対する閾値を人手で調整していたので、環境（明るさ）が変化したときに再調整が必要であるという課題があった。そこで、ファイバセンサの受光量を中間データとして使用し、これを制御装置で活用することで、閾値の自動調整を行うことができる。これにより、閾値調整の自動化（フィードバックで提供）、環境変動へのロバスト性向上、ファイバセンサの故障を設備予兆によって早期検出する、といった効果が期待できる。受光量を制御装置や表示装置によって見える化すれば、当該設備予兆による早期検出が可能となる。
【００９１】
アクチュエータ制御システム２００、３００、および４００の制御ブロックは、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【００９２】
後者の場合、アクチュエータ制御システム２００、３００、および４００は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【００９３】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【００９４】
２、２ａ  制御装置
４  アクチュエータ
８  対象物体
２３  センサ出力演算部
２４  転送制御部
２５、２５ａ  指令値演算部
３１  撮像画像
１００、１０１、１０２、２００、３００、４００  アクチュエータ制御システム
【図１】
2020110916.tif 000003
【図２】
2020110916.tif 000004
【図３】
2020110916.tif 000005
【図４】
2020110916.tif 000006
【図５】
2020110916.tif 000007
【図６】
2020110916.tif 000008
【図７】
2020110916.tif 000009
【図８】
2020110916.tif 000010
【図９】
2020110916.tif 000011
【図１０】
2020110916.tif 000012
【図１１】
2020110916.tif 000013
【図１２】
2020110916.tif 000014