(57)【特許請求の範囲】
【請求項１】
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測システムであって、
前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信部と、
前記センサーにより得られる前記計測データを受信するセンサー情報受信部と、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定し、特定した前記ロボット動作データの示す位置情報を計測開始時のセンサー位置として計測結果を生成する計測結果生成部と、を備え、
前記センサーは、センサーから計測対象物の表面までの距離を計測する距離センサーであり、
前記計測結果生成部は、前記距離センサーによる計測データと、生成した前記計測開始時のセンサー位置と、予め設定された前記距離センサーによる計測位置間隔と、に基づいて計測対象物の表面の三次元座標を計測結果として生成する計測システム。
【請求項２】
請求項１に記載の計測システムであって、
前記ロボットはロボットアームであり、
前記ロボットを制御するロボット制御部は、前記センサーが計測を開始する前に前記ロボットアームの動作を開始して、前記ロボットに搭載された前記センサーを予め設定されたセンシング開始位置に移動させ、
前記センサーは、前記ロボットに搭載された前記センサーの位置が前記センシング開始位置に到達した場合に計測を開始する計測システム。
【請求項３】
請求項１又は２に記載の計測システムであって、
前記ロボット制御部から前記ロボットに送信されるロボット駆動信号を取得し、前記ロボット駆動信号に前記センサーに計測を開始させる計測開始指令が含まれる場合に、前記センサーの計測動作を開始させるトリガとなるセンサー駆動信号を生成する計測処理部を備え、
前記ロボット駆動信号は、前記ロボット及び前記計測処理部の双方に入力される計測システム。
【請求項４】
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測方法であって、
前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信ステップと、
前記センサーにより得られる前記計測データを受信するセンサー情報受信ステップと、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定するステップと、
特定した前記ロボット動作データの示す位置情報を計測開始時のセンサー位置として計測結果を生成する計測結果生成ステップと、を備え、
前記センサーは、センサーから計測対象物の表面までの距離を計測する距離センサーであり、
前記計測結果生成ステップは、前記距離センサーによる計測データと、生成した前記計測開始時のセンサー位置と、予め設定された前記距離センサーによる計測位置間隔と、に基づいて計測対象物の表面の三次元座標を計測結果として生成するステップである計測方法。
【請求項５】
請求項４に記載の計測方法であって、
前記ロボットはロボットアームであり、
前記センサーが計測を開始する前に前記ロボットアームの動作を開始して、前記ロボットに搭載された前記センサーを予め設定されたセンシング開始位置に移動させるステップと、
前記ロボットに搭載された前記センサーの位置が予め設定された前記センシング開始位置に到達した場合に計測を開始するステップを更に備える計測方法。
【請求項６】
請求項４又は５に記載の計測方法であって、
前記ロボット制御部から前記ロボットに送信されるロボット駆動信号を取得するステップと、
前記ロボット駆動信号に前記センサーに計測を開始させる計測開始指令が含まれる場合に、前記センサーの計測動作を開始させるトリガとなるセンサー駆動信号を生成するステップと、を備え、
前記ロボット駆動信号は、前記ロボット及び前記センサー駆動信号を生成する計測処理部の双方に入力される計測方法。
【請求項７】
センサーから計測対象物の表面までの距離を計測する距離センサーがロボットに搭載され、ロボットに搭載された前記距離センサーにより得られる計測データに基づいて計測処理を行う計測方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、前記計測方法として、
前記ロボットに搭載された前記距離センサーの位置情報を示すロボット動作データを受信するロボット動作受信ステップと、
前記距離センサーにより得られる前記計測データを受信するセンサー情報受信ステップと、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定するステップと、
特定した前記ロボット動作データの示す位置情報を計測開始時の距離センサー位置として計測結果を生成する計測結果生成ステップと、をコンピュータに実行させ、
前記計測結果生成ステップは、前記距離センサーによる計測データと、生成した前記計測開始時のセンサー位置と、予め設定された前記距離センサーによる計測位置間隔と、に基づいて計測対象物の表面の三次元座標を計測結果として生成するステップであるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測システム、計測方法、プログラムに関する。
【背景技術】
【０００２】
従来から、ロボットに装着されたセンサーを利用した計測作業が行われていた（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２０３２７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このようなロボットを用いた計測作業は、センサーとロボットの組み合わせを変更することで様々な計測用途に用いることが可能である。一方で、計測作業の計測精度を向上させるには、センサーの計測動作とロボットの動作を同期させることが求められる。しかし、センサーとロボットの組み合わせを任意に選択する場合には、センサーとロボットの動作を同期させて正確な計測データを取得可能な計測システムを構築することは容易ではなかった。
【０００５】
特許文献１では、ロボットのモーターへ出力するモーター駆動信号に同期信号を組み込むことが開示されているものの、モーター駆動信号を生成するロボット側のプログラム変更が必要となるという課題があった。
【０００６】
本発明はこのような背景を鑑みてなされたものであり、センサーとロボットの動作タイミングを考慮してより正確な計測データを取得する計測システムの構築をより容易に実現することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本発明の主たる発明は、ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測システムであって、前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信部と、前記センサーにより得られる前記計測データを受信するセンサー情報受信部と、前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定し、特定した前記ロボット動作データの示す位置情報を計測開始位置として計測結果を生成する計測結果生成部と、を備える計測システムである。
【０００８】
その他本願が開示する課題やその解決方法については、発明の実施形態の欄及び図面により明らかにされる。
【発明の効果】
【０００９】
本発明によれば、センサーとロボットの動作タイミングを考慮してより正確な計測データを取得する計測システムの構築を容易に実現することができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の計測システム１００の一例を示す図である。
【図２】本実施形態の計測システム１００の各構成要素の機能を示す図である。
【図３】本実施形態の計測システムの制御フローチャートを示す図である。
【図４】本実施形態における計測システムで計測対象の外観形状を計測する場合の一例を示す図である。
【図５】本実施形態において図４に示す方法で丸穴が空いた計測対象物を計測した場合の計測データとXY平面上におけるセンサー位置の情報を示すグラフである。
【図６】本実施形態の計測システムで取得する計測データの一例を示す図である。
【図７】本実施形態の計測システムで取得する動作データの一例を示す図である。
【図８】本実施形態の実施例２における計測システム１００の一例を示す図である。
【図９】本実施形態の実施例２における計測システム１００の各構成要素の機能を示す図である。
【図１０】本実施形態において計測処理部でセンサー駆動信号を生成する方法の一例を示す図である。
【図１１】本実施形態において計測処理部でセンサー駆動信号を生成する他の方法の一例を示す図である。
【図１２】本実施形態の実施例３における計測システム１００の一例を示す図である。
【図１３】本実施形態の実施例３における計測システム１００の各構成要素の機能を示す図である。
【発明を実施するための形態】
【００１１】
本発明の実施形態の内容を列記して説明する。本発明は、たとえば以下のような構成を備える。
【００１２】
[項目１]    
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測システムであって、
前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信部と、
前記センサーにより得られる前記計測データを受信するセンサー情報受信部と、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定し、特定した前記ロボット動作データの示す位置情報を計測開始位置として計測結果を生成する計測結果生成部と、を備える計測システム。
[項目２]  
項目１に記載の計測システムであって、
前記センサーは、センサーから計測対象物の表面までの距離を計測する距離センサーであり、
前記計測結果生成部は、前記距離センサーによる計測データと、予め設定された前記距離センサーによる計測位置間隔に基づいて計測対象物の表面の三次元座標を計測結果として生成する計測システム。
[項目３]  
項目１又は２に記載の計測システムであって、
前記センサーは、前記ロボットに搭載された前記センサーの位置が予め設定された計測開始位置に到達した場合にロボット制御部により生成される計測開始指令に基づいて計測を開始する計測システム。
[項目４] 
項目１に記載の計測システムであって、
前記ロボットを制御するロボット制御部からロボットに送信される前記ロボット駆動信号を取得し、前記ロボット駆動信号に前記センサーに計測を開始させる計測開始指令が含まれる場合に、前記センサーの計測動作を開始させるトリガとなるセンサー駆動信号を生成するセンサー駆動信号生成部を備える計測システム。
[項目５]  
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測方法であって、
前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信ステップと、
前記センサーにより得られる前記計測データを受信するセンサー情報受信ステップと、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定するステップと、
特定した前記ロボット動作データの示す位置情報を計測開始位置として計測結果を生成する計測結果生成ステップと、を備える計測方法。
[項目６]  
項目５に記載の計測方法であって、
前記センサーは、センサーから計測対象物の表面までの距離を計測する距離センサーであり、
前記計測結果生成ステップは、前記距離センサーによる計測データと、予め設定された前記距離センサーによる計測位置間隔に基づいて計測対象物の表面の三次元座標を計測結果として生成するステップである計測方法。
[項目７]
項目５又は６に記載の計測方法であって、
前記ロボットに搭載された前記センサーの位置が予め設定された計測開始位置に到達した場合にロボット制御部により生成される計測開始指令に基づいて計測を開始するステップを更に備える計測方法。
[項目８]
項目５に記載の計測方法であって、
前記ロボットを制御するロボット制御部からロボットに送信される前記ロボット駆動信号を取得するステップと、
前記ロボット駆動信号に前記センサーに計測を開始させる計測開始指令が含まれる場合に、前記センサーの計測動作を開始させるトリガとなるセンサー駆動信号を生成するステップと、を備える計測方法。
[項目９]
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測方法をコンピュータに実行させるためのプログラムであって、
前記プログラムは、前記計測方法として、
前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信ステップと、
前記センサーにより得られる前記計測データを受信するセンサー情報受信ステップと、
前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定するステップと、
特定した前記ロボット動作データの示す位置情報を計測開始位置として計測結果を生成する計測結果生成ステップと、
をコンピュータに実行させるプログラム。
【００１３】
＜実施の形態の詳細＞
本発明の一実施形態に係る情報処理システム１００の具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、添付図面において、同一または類似の要素には同一または類似の参照符号及び名称が付され、各実施形態の説明において同一または類似の要素に関する重複する説明は省略することがある。また、各実施形態で示される特徴は、互いに矛盾しない限り他の実施形態にも適用可能である。
【００１４】
＜実施例１＞
＜計測システムの全体構成＞
図１は、本実施形態の計測システム１００の一例を示す図である。図１に示されるように、本実施形態の計測システム１００では、端末１、１０、ロボット制御装部１０２、センサー制御部１０３、計測処理部１０４、ロボット２を有している。ロボット２は、例えば、複数のモーターにより複数リンクが構成される多関節ロボットアームで構成されており、アーム２１にはセンサー２３が設けられる。センサー２３としては、あらゆる計測装置が適用可能であるが、本実施形態では、一例として対象物のとの距離を計測する距離計測センサーを用いた例を説明する。
【００１５】
端末１とロボット制御部１０２は、有線または無線により互いに通信可能に接続され、例えば端末１の入力部を介してユーザが入力した計測開始指令がロボット制御部１０２に送信される。また、端末１０と計測処理部１０４は、有線または無線により互いに通信可能に接続され、例えば計測処理部１０４により生成された計測結果の情報は、端末１０に送信されて端末の表示部に表示される。ここで、図１では端末１と端末１０を分けて記載しているが、これらは同一の装置に実装することも可能である。計測処理部１０４は、更にロボット制御部１０２とセンサー制御部１０３にそれぞれ通信可能に接続されている。ロボット制御部１０２から計測処理部１０４にロボットの動作実績に関する情報が送信される。またセンサー制御部１０３から計測処理部１０４には、センサー２３で検出された計測データに関する情報が送信される。ロボット制御部１０２は、更にロボット２とセンサー制御部１０３と通信可能に接続されており、ロボットを駆動させるためのロボット駆動信号がロボット制御部１０２からロボット２及びセンサー制御部１０３に送信される。ロボット制御部はロボット駆動信号にセンサーの動作指令に関する情報を併せて送信することによりセンサー制御部１０３を介してセンサーによる計測動作を開始させる。センサー制御部１０３はロボット制御部１０２から受信した動作指令をセンサー２３に送信する。なお、図１は例示にすぎず、図示の構成に限定されない。
【００１６】
図１に示す、端末１、１０、ロボット制御装部１０２、センサー制御部１０３、計測処理部１０４は、例えば、プロセッサ、メモリ、送受信部等のハードウェアを有する汎用コンピュータで構成してもよいし、或いはクラウド・コンピューティングによって論理的に実現されてもよい。
【００１７】
＜計測システムの機能＞
図２は、本実施形態の計測システム１００の各構成要素の機能を示す図である。
【００１８】
ロボット制御部１０２は、駆動信号生成部１０２１と信号出力部１０２２を備えている。ロボット駆動信号生成部１０２１は、端末から動作開始指令を受信するとロボット駆動信号をロボット２及びセンサー制御部１０３に送信する。ここで、ロボット駆動信号は、ロボット２を搭載されたモーターの動作開始時にHigh信号となるパルス信号で合っても良いし、モーターの駆動期間中にHighとLowが繰り返し発生する周期的なパルス信号であっても良い。ロボット２は、受信したロボット駆動信号に従って、モーターを駆動することにより、センサー２３が搭載されたアーム２１を動作させる。
【００１９】
信号出力部は、ロボット２が動作した実績に関する動作データを受信して、動作データをロボット駆動信号生成部１０２１と計測処理部１０４のロボット動作受信部１０４１に送信する。また、ロボット駆動信号生成部１０２１は信号出力部１０２２から受信した動作データが予め設定された計測開始位置に到達したことを示す場合に、ロボット駆動信号にセンサーによる計測開始信号を追加又は重畳して出力する。
【００２０】
センサー制御部１０３は、信号出力部１０３１と計測データ受信部１０３２を備えている。信号出力部１０３１は、受信したロボット駆動信号に計測開始信号が含まれている場合にセンサー駆動信号をセンサー２３に送信する。計測データ受信部１０３２は、センサー２３により計測された計測データを受信して計測処理部１０４のセンサ情報受信部１０４２に送信する。
【００２１】
計測処理部１０４は、ロボット動作受信部１０４１とセンサ情報受信部１０４２と計測結果生成部１０４３を備えている。ロボット動作受信部１０４１は、ロボット制御部１０２から受信したロボットの動作データを計測結果生成部１０４３に送信する。センサ情報受信部１０４２は、センサー制御部１０３から受信した計測データを計測結果生成部１０４３に送信する。ここで、計測結果生成部１０４３に送信される動作データと計測データには各データに対して時刻情報（Time Stamp）が付されている。
【００２２】
計測結果生成部１０４３は、受信した計測データの計測開始データに対応する時刻情報に基づいて、当該時刻と同時刻又は略同一時刻の動作データを計測開始時におけるセンサーの位置座標を示すデータとして特定することにより、計測開始された際のセンサー位置座標を推定する。さらに、センサーの計測スキャン周波数とロボットの直線動作速度の情報に基づいて、スキャン位置のピッチ間隔が予め設定されている。推定した計測開始された際のセンサー位置座標を基準として、ピッチ間隔毎に計測データの計測値を並べることにより三次元の計測結果データが生成される。生成された計測結果データは、端末１０に送信されて表示装置に表示される、または端末１０の記憶装置に記憶される。
【００２３】
＜計測システムの制御フローチャート＞
図３は、本実施形態における計測システムの制御フローチャートを示す図である。図３は、端末１から計測開始指令を受信したロボット駆動信号生成部１０２１がロボット駆動信号を送信する場合を、フローチャートのスタートと定義した場合の図を示している。ロボット駆動信号生成部１０２１は、端末１から計測開始指令を受信した場合に、ロボット駆動指令を生成する（ステップ３０１）。次に、ロボット駆動信号生成部１０２１は、ロボット駆動信号をロボット２及びセンサー制御部１０３に送信する（ステップ３０２）。ロボット２は受信したロボット駆動信号に従いロボットに搭載された複数のモーターを駆動する。ロボット制御部１０２の信号出力部１０２２は、駆動を開始したロボットから動作データの取得を開始する（ステップ３０３）。ステップ３０２でロボットの駆動が開始された後、ロボット制御部１０２は、ロボットのアーム位置（センサの装着位置）が予め設定された計測開始地点に到達したことを判断する（ステップ３０４）。ロボットのアーム位置（センサの装着位置）が予め設定された計測開始地点に到達したと判断した場合には、ロボット駆動信号生成部は計測開始指令を生成してセンサー制御部１０３に送信することで、センサーによる計測動作を開始する（ステップ３０５）。センサー制御部１０３の計測データ受信部１０３２は、計測動作を開始したセンサーから計測データの取得を開始する（ステップ３０６）。
【００２４】
ステップ３０５でセンサーによる計測動作が開始された後、ロボット制御部１０２は、ロボットのアーム位置（センサの装着位置）が予め設定された計測終了地点に到達したことを判断する（ステップ３０７）。ロボットのアーム位置（センサの装着位置）が予め設定された計測終了地点に到達したと判断した場合には、ロボット駆動信号生成部は計測終了指令を生成してセンサー制御部１０３に送信することで、センサーによる計測動作を終了する（ステップ３０８）。ロボット制御部１０２の信号出力部１０２２は、ロボットから動作データの取得を終了する（ステップ３０９）。
【００２５】
次に、計測結果生成部１０４３は、計測データの最初の計測値に対応付けられたタイムスタンプの時刻情報に基づいて、略同一時刻のタイムスタンプを有する動作データを特定する。そして当該特定した動作データに示される位置座標を計測開始された際のセンサーの位置であると推定する（ステップ３１０）。計測結果生成部１０４３は、センサーの計測スキャン周波数とロボットの直線動作速度の情報に基づいて予め設定されているスキャン位置のピッチ間隔を用いて、推定した計測開始時のセンサー位置座標を基準位置として、ピッチ間隔毎に計測データの計測値を並べることにより三次元の計測結果データを生成する（ステップ３１１）。このように計測開始時刻に基づいて計測データと動作データの対応付けを行うことにより、計測データを構成する複数の検出値と、当該検出値を取得したときのセンサーの位置座標情報、速度情報、もしくは姿勢の情報を対応付けて取得することができ、計測対象のより正確な三次元形状を計測することが可能となる。
【００２６】
＜計測方法＞
図４は、本実施形態における計測システムで計測対象の外観形状を計測する場合の一例を示す図である。図４に示す例では、ロボットアームに設置された距離計測センサーで鉛直方向（Z軸方向）下方の計測対象物までの距離を所定周期でセンシングしながら、ロボットアームを駆動して距離計測センサーを予め設定されたXY平面上の移動ルート（図中の矢印）に沿って移動させることで、計測対象の３次元形状を計測する例を示している。図４における点は周期的にセンシングされる各センシング位置を示している。
【００２７】
計測を開始する際、ロボット制御部によりロボットアームの駆動を開始して、距離計測センサーをXY平面上で図４のセンシング開始位置（黒色の点）よりも下側のセンシング位置の外側から予め設定されたセンシング開始位置に移動させる。距離計測センサーがセンシング開始位置に到達したときに、ロボット駆動信号生成部からセンサー駆動信号が出力されるとセンサー駆動信号がセンサーに入力されて、センサーによるスキャンが開始される。図４に示す例では、中央部に丸穴が空いた計測対象物を計測しているため、丸穴の位置をセンシングした場合の計測データ（Z軸方向のセンサーと計測対象物間の距離）は、丸穴が空いていない位置の計測データよりも大きな値となる。センシング走査ルートの終点までセンシング動作を実行することで、各センシング位置における計測データを取得することができるため、図４に示す通り、丸穴が空いている領域と空いていない領域を特定することができ、更にこれらの情報に基づいて、丸穴の中心座標値を演算により得ることが可能である。
【００２８】
＜計測データと動作データ＞
図５は、本実施形態において図４に示す方法で丸穴が空いた計測対象物を計測した場合の計測データとXY平面上におけるセンサー位置（動作データ）の情報を示すグラフの模式図である。図５の上段のグラフは、各時刻における計測データを示すグラフ、中央のグラフは、各時刻におけるX軸方向のセンサー位置を示すグラフ、下段のグラフは、各時刻におけるY軸方向のセンサー位置を示すグラフである。計測データのグラフにおいて、丸穴の位置を計測した時刻では、計測データが相対的に大きくなっている。また、センサーが図４に示すようなセンシング走査ルートを移動する場合には、X軸方向のセンサー位置は、図５中央のグラフに示す通り階段状に増加する。また、Y軸方向のセンサー位置は図５下段のグラフに示す通りノコギリ状に増減を繰り返す。
【００２９】
図６は、センサーにより計測された計測データを表形式で示したものである。図６に示す通り、計測データは、複数のスキャン情報で構成されており、各スキャン情報は、データナンバー、センサーの計測値（Z軸方向の計測距離）、時刻情報であるタイムスタンプ（例えばエポック時間）及び予め定められてた間隔で変化するセンサーの移動方向の座標（Y座標）を含んでる。ここで、センサーY座標の間隔は、センサーのセンシング周波数とロボットアームの移動速度に基づいて予め定めることができる。
【００３０】
図７は、ロボットアームの動作実績を示す動作データを表形式で示したものである。動作データは、データナンバー、センサー位置のＸ座標、Ｙ座標、Ｚ座標、スキャン開始指令、及び時刻情報であるタイムスタンプ（例えばエポック時間）を含んでいる。ここで、スキャン開始指令は、ロボット駆動信号と共にスキャン開始指令が出力されていない場合に「０」となり、スキャン開始指令が出力された場合に「１」となる。データＮｏ１１５３において、スキャン開始指令が「１」に変化しているため、エポック時刻「****6691」でスキャン開始指令がロボット制御部から出力されたことが分かる。一方で、図６に示す通り、計測データの最初のデータのエポック時刻は「****6698」となっているため、計測開始指令の出力を行うタイミングと、計測データの取得開始のタイミングには誤差が生じていることが分かる。本実施形態においては計測結果生成部において、図６に示す計測データから得られる計測開始時刻を利用して図７に示す動作データから同時刻（または略同一時刻）におけるセンサー位置のＸＹＺの三次元座標情報を取得することができる。
【００３１】
上述したように、本実施形態では、計測データの最初の計測値に対応付けられたタイムスタンプの時刻情報に基づいて、略同一時刻のタイムスタンプを有する動作データを特定することで、特定した当該動作データに示される位置座標を計測開始された際のセンサーの位置であると推定することができる。また、センサーの計測スキャン周波数とロボットの直線動作速度の情報に基づいて予め設定されているスキャン位置のピッチ間隔を用いて、推定した計測開始時のセンサー位置座標を基準位置として、ピッチ間隔毎に計測データの計測値を並べることにより、計算コストを掛けずに正確な三次元の計測結果データを生成することができる。
【００３２】
＜実施例２＞
実施例１では、ロボット制御部からセンサー制御部へ計測開始指令を送信する例を示したが、本実施形態では、計測処理部２０４がロボット制御部から計測開始指令を受信した場合に、センサー駆動信号を生成してセンサー制御部へ送信する実施形態を説明する。本実施例において実施例１と同じ符号で表記される機能部は、同一動作を行うものとする。
【００３３】
＜計測システムの全体構成＞
図８は、実施例２の計測システム１００の一例を示す図である。図８に示されるように、計測処理部２０４は、ロボット動作受信部１０４１、センサ情報受信部１０４２、計測結果生成部１０４３に加えて、更に信号検出部１０４４、センサー駆動信号生成部１０４５を備える。
【００３４】
信号検出部１０４４は、受信したロボット駆動信号に計測開始指令を示す信号が含まれていることを検出し、計測開始指令を示す信号が含まれている場合には、センサー動作開始信号を送信する。センサー駆動信号生成部１０４５は、センサー動作開始信号を受信すると、センサー駆動信号を生成してセンサー制御部１０３に送信する。ここで、センサー駆動信号は、例えば、センサー２３のセンシング動作期間中にHigh信号とLow信号が繰り返し発生する周期的なパルス信号であっても良い。この場合、センサー２３は、High信号を受信したタイミングでセンシングを行い、センサー駆動信号のパルス信号周期に従って、センシング周期が変更可能となるように構成しても良い。センサー制御部１０３は、信号出力部１０３１と計測データ受信部１０３２を備えている。信号出力部１０３は、受信したセンサー駆動信号をセンサー２３に送信する。
【００３５】
＜計測システムの制御フローチャート＞
図９は、本実施形態における計測システムの制御フローチャートを示す図である。図９は、ロボット制御部１０２がロボット動作指令と共に計測開始指令を送信する場合を、フローチャートのスタートと定義した場合の図を示している。ロボット駆動信号生成部１０２１は、端末１からロボット動作指令を受信した場合に、ロボット駆動指令を生成する（ステップ３０１）。次に、ロボット駆動信号生成部１０２１は、ロボット駆動信号をロボット２及び計測処理部１０４に送信する（ステップ３０２）。ロボット２は受信したロボット駆動信号に従いロボットに搭載された複数のモーターを駆動する（ステップ３０３）。ロボット制御部１０２の信号出力部１０２２は、ロボット２から動作実績に関する情報を含む動作データを取得する（ステップ３０４）。
【００３６】
計測処理部１０４の信号検出部１０４１は、ステップ３０２においてロボット駆動信号生成部１０２１から受信したロボット駆動信号に計測開始指令が含まれているか否かを検出する（ステップ３０５）。信号検出部１０４４が上記指令がロボット駆動信号に含まれていると判断した場合に、センサー駆動信号生成部１０４５はセンサー駆動信号を生成して、センサー制御部１０３の信号出力部に送信する（ステップ３０６）。センサー２３は、信号出力部１０３１を介して受信したセンサー駆動信号に従ってセンサーを駆動してセンシングを実施する（ステップ３０７）。センサー制御部１０３の計測データ受信部１０３２は、センサー２３から計測データを取得する（ステップ３０８）。
＜センサー駆動信号の生成方法＞
図１０は、本実施形態において計測処理部で生成されるセンサー駆動信号の一例を示す図である。図１０の上段からロボット駆動信号、センサー動作開始信号、センサー動作停止信号、センサー駆動信号、センサーの実動作をそれぞれ示している。ロボット駆動信号はロボット制御部１０２のロボット駆動信号生成部１０２１で生成される信号であり、駆動開始を指示するパルス信号と駆動終了を指示するパルス信号を有する信号である。
【００３７】
センサー動作開始信号とセンサー動作停止信号とセンサー駆動信号は、計測処理部１０４内のセンサー駆動信号生成部１０４５で生成される信号である。センサー動作開始信号は、センサーの動作開始を指示するパルス信号を含む信号であり、計測処理部内の信号検出部が取得したロボット駆動信号内に駆動開始のパルス信号を検出すると、即座にセンサー動作開始信号としてセンサーの動作開始を指示するパルス信号が生成される。同様に、センサー動作停止信号は、センサーの動作停止を指示するパルス信号を含む信号であり、計測処理部内の信号検出部が取得したロボット駆動信号内に駆動終了のパルス信号を検出すると、即座にセンサー動作開始信号としてセンサーの動作停止を指示するパルス信号が生成される。ロボット駆動信号内に駆動開始パルス信号や駆動終了パルス信号が発生してからセンサー動作開始信号やセンサー動作停止信号にパルス信号が生成されるまでには若干の遅延時間が生じることがある。
【００３８】
センサー駆動信号生成部１０４５は、センサー動作開始信号に動作開始のパルス信号を生成すると同時に、HighとLowを周期的に繰り返すセンサー駆動信号を生成する。そのため、センサー動作開始信号の動作開始パルス信号の立ち上がりタイミングと、センサー駆動信号のパルス信号の立ち上がりタイミングはほぼ同時となる。センサー駆動信号のHigh側信号はセンサーにセンシング動作を行う指示であり、Low側信号はセンサーにセンシング動作を指示しない信号であるため、センサーの実動作はセンサー駆動信号のHighとLowのタイミングでセンシング動作実行とセンシング動作停止を繰り返し実施することになる。
【００３９】
なお、センサー駆動信号生成部は、任意のタイミングでパルスが立ち上がり、かつ任意の周期のパルス信号をセンサー駆動信号として生成できるように構成することができる。つまり、内部クロックと同期した基準パルス信号を予め準備しておいて当該基準パルス信号のパルス立ち上がりのタイミングでセンサー駆動信号のパルスを立ち上げるのではなく、ロボット駆動信号の駆動開始のパルス信号を受信した際に即座に立ち上がるパルス信号を生成することにより、ロボット駆動信号の駆動開始信号立ち上がりからセンサー駆動信号の立ち上がりまでの遅延時間のばらつきを低減することができ、また演算処理能力の十分に高いハードウェアを用いる場合には、パルス生成の処理時間に起因する遅延時間を無視できるレベルまで低減して実質ゼロにすることも可能である。
【００４０】
上述したように、ロボットを駆動させるための信号を取得してセンサーが駆動を開始するトリガとなる信号を生成する計測処理部を備えることにより、ロボットとセンサーの同期を行うために、ロボット制御部のソフトウェア等の変更を不要もしくは少なくすることができる。更には、任意のロボットと任意のセンサーの組み合わせに対して同期処理を行う際にも、センサーの駆動開始に関する指令を生成する計測処理部を適切に設計すれば、ロボット制御部やセンサー制御部のソフトウェア変更を加える必要なくなる、又は加える変更の量を少なくすることが可能となる。
【００４１】
図１１は、本実施形態において計測処理部でセンサー駆動信号を生成する他の方法の一例を示す図であり、特にエンコーダパルス信号に基づいてセンサー駆動信号を生成する例を示す図である。図１０では、計測処理部が、ロボットの駆動開始を指示するパルス信号と駆動終了を指示するパルス信号を有する信号を取得する例を示したが、図７では、モーターの駆動期間中にHighとLowが繰り返し発生する周期的なパルス信号（例えばエンコーダパルス信号）を取得する例を説明する。この場合、計測処理部の信号検出部１０４１は、ロボット駆動信号のパルスの立ち上がりを検出して、センサー駆動信号生成部でセンサー動作開始信号を生成することができる。また、駆動開始時と同様に、駆動終了時においても、ロボット駆動信号のパルスが所定時間以上出現しないことを検出して、センサー駆動信号生成部でセンサー動作停止信号を生成することができる。
【００４２】
＜実施例３＞
図１２は、本実施形態においてロボットの動作データに基づいてセンサーを同期させる場合の各構成要素の機能を示す図である。図２では、計測処理部が、ロボット制御部からロボットに送信されるロボット駆動信号を取得して、当該ロボット駆動信号に基づいてセンサー駆動信号を生成する例を説明したが、図１２では、ロボットから取得した動作データに基づいて、センサー駆動信号を生成する例を説明する。以下に、図１２に示す変形例の図２とは異なる部分について説明する。
【００４３】
ロボットから出力される動作データは、ロボットの動作実績に関する情報であって、例えば、ロボットの動作開始に関する情報を含む情報とすることができる。この場合には、計測処理部５０４内の信号検出部５０４１は、動作データを取得して、ロボットが動作を開始したことを示す情報を含む場合に、センサー動作開始信号を生成してセンサー駆動信号生成部に送信する。
【００４４】
動作データの他の例として、センサーの位置座標情報を含む情報とすることができる。この場合には、信号検出部５０４１は、動作データを取得して、センサーの位置座標が事前に設定した位置に達したことを示す情報を含む場合に、センサー動作開始信号を生成してセンサー駆動信号生成部に送信する。
【００４５】
動作データの更に他の例として、センサーの速度情報を含む情報とすることができる。センサーの速度情報としては、モーターの電流又は電圧又はこれらの組合せの情報であっても良い。この場合には、信号検出部５０４１は、動作データを取得して、センサーの速度が事前に設定した値に達したことを示す情報を含む場合に、センサー動作開始信号を生成してセンサー駆動信号生成部に送信する。
【００４６】
上記した動作データを受信して、信号検出部５０４１がセンサー動作開始信号を生成してセンサー駆動信号生成部に送信すると、センサー駆動信号生成部はセンサー駆動信号を生成して、センサー制御部にセンサー駆動信号を送信する。
【００４７】
また、センサー駆動信号の周期を任意の値に変更することができるようにセンサー駆動信号生成部を構成する場合には、受信した動作データが予め定められた条件を満たすか否かを信号検出部で検出することにより、センサー駆動信号の周期を変更するようにしても良い。例えば、センサーの位置が、他エリアよりも高い精度でセンシングを行いたいエリアに進入したことをセンサーの位置座標情報により検出して、他エリアよりもセンサー駆動信号の周期を短くすることで、計測対象エリアの中で任意のエリアについて高精度な計測を行うことが可能となる。また、他の例として、センサーの位置センシング走査ルート上の折り返しエリアに位置することをセンサーの位置座標情報により検出して、他エリアよりもセンサー駆動信号の周期を短くすることで、ロボットアームが直線動作ではない複雑な動作を行う期間について高精度な計測を行うことが可能となる。更に他の例として、センサーの移動速度が、所定速度よりも高くなった場合に、センサー駆動信号の周期を短くすることで、速度変化によるセンシングの位置間隔のばらつきを低減することが可能となる。
【００４８】
図１３は、本実施形態における計測システムの他の制御フローチャートの一例を示す図である。図１３は、端末１から計測開始指令を受信したロボット動作指令部１０１１がロボット動作指令を送信する場合を、フローチャートのスタートと定義した場合の図を示している。ロボット駆動信号生成部１０２１は、ロボット動作指令を受信した場合に、ロボット駆動指令を生成する（ステップ１３０１）。次に、ロボット駆動信号生成部１０２１は、ロボット駆動信号をロボット２に送信する（ステップ１３０２）。ロボット２は受信したロボット駆動信号に従いロボットに搭載された複数のモーターを駆動する（ステップ１３０３）。ロボット２は、ロボット２の動作実績に関する情報を含む動作データを計測処理部の信号検出部５０４１及びロボット制御部の信号出力部１０２２に送信する（ステップ１３０４）ロボット制御部１０２の信号出力部１０２２は、ロボット２から動作実績に関する情報を含む動作データを取得する（ステップ１３０５）。
【００４９】
計測処理部５０４の信号検出部５０４４は、ステップ１３０４においてロボット２から送信された動作データが所定の条件を満たしているか否かを検出する。例えば、動作データがロボットの動作が開始されたことを示す情報を含む、又はセンサーの位置座標が事前に設定した位置に達したことを示す情報を含む、又はセンサーの速度が事前に設定した値に達したことを示す情報を含む場合には、これを検出する（ステップ１３０６）。信号検出部５０４４により動作データが所定の条件を満たしていると判断した場合に、センサー駆動信号生成部５０４５はセンサー駆動信号を生成して、センサー制御部１０３の信号出力部に送信する（ステップ１３０７）。センサー２３は、信号出力部１０３１を介して受信したセンサー駆動信号に従ってセンサーを駆動してセンシングを実施する（ステップ１３０８）。センサー制御部１０３の計測データ受信部１０３２は、センサー２３から計測データを取得する（ステップ１３０９）。
【００５０】
計測結果生成部１０１２は、ロボット制御部１０２の信号出力部１０２２から動作データを、計測データ受信部１０３２から計測データをそれぞれ取得して、計測結果データを生成する。ここで、計測結果生成部１０１２は、計測データに含まれる計測開始時刻の情報と、動作データに含まれる動作開始時刻の情報を対応づけることにより、計測対象に関する計測結果データを生成する。このように計測開始時刻に基づいて計測データと動作データの対応付けを行うことにより、計測データを構成する複数の検出値と、当該検出値を取得したときのセンサーの位置座標情報、速度情報、もしくは姿勢の情報を対応付けて取得することができる。
【００５１】
以上、本実施形態について説明したが、上記実施形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【符号の説明】
【００５２】
１、１０        端末
２        ロボット
２１      アーム
２３      センサー
１００    計測システム
１０２    ロボット制御部
１０３    センサー制御部
１０４、２０４、５０４    計測処理部
１０１１  ロボット動作指令部
１０１２  計測結果生成部
１０２１  ロボット駆動信号生成部
１０２２  信号出力部
１０３１  信号出力部
１０３２  計測データ受信部
１０４１  ロボット動作受信部
１０４２  センサ情報受信部
１０４３  計測結果生成部
【要約】
【課題】ロボットアームの先端に搭載されたセンサーを用いた計測作業において、計測作業の計測精度を向上させるには、センサーの計測動作とロボットの動作を同期させることが求められる。しかし、センサーとロボットの組み合わせを任意に選択する場合には、センサーとロボットの動作を同期させるための計測システムを構築することは容易ではなかった。
【解決手段】
ロボットに搭載されたセンサーにより得られる計測データに基づいて計測処理を行う計測システムであって、前記ロボットに搭載された前記センサーの位置情報を示すロボット動作データを受信するロボット動作受信部と、前記センサーにより得られる前記計測データを受信するセンサー情報受信部と、前記ロボット動作データおよび前記計測データにそれぞれ含まれる時刻情報に基づいて、最初の計測データが得られた時刻と一致する又は略同一時刻の前記ロボット動作データを特定し、特定した前記ロボット動作データの示す位置情報を計測開始位置として計測結果を生成する計測結果生成部と、を備える計測システムである。
【選択図】図１【図１】
0006964917.tif 000002
【図２】
0006964917.tif 000003
【図３】
0006964917.tif 000004
【図４】
0006964917.tif 000005
【図５】
0006964917.tif 000006
【図６】
0006964917.tif 000007
【図７】
0006964917.tif 000008
【図８】
0006964917.tif 000009
【図９】
0006964917.tif 000010
【図１０】
0006964917.tif 000011
【図１１】
0006964917.tif 000012
【図１２】
0006964917.tif 000013
【図１３】
0006964917.tif 000014