(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023128220
(43)【公開日】2023-09-14
(54)【発明の名称】移動型撮像ロボットシステム及びその制御方法
(51)【国際特許分類】
B25J 13/08 20060101AFI20230907BHJP
【FI】
B25J13/08 A
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022032423
(22)【出願日】2022-03-03
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】久保 陽
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS09
3C707CS08
3C707CY31
3C707HS27
3C707KS03
3C707KS17
3C707KS40
3C707KT01
3C707KT05
3C707LT06
3C707MT05
3C707WA14
3C707WA17
(57)【要約】
【課題】移動中においても、安定した視野を得ることができる移動型撮像ロボットシステムを提供する。
【解決手段】本発明の移動型撮像ロボットシステムは、周囲を撮影し撮像データを出力する撮像部50と、手先に撮像部を搭載し、手先位置を調整するロボットアーム40と、ロボットアームを搭載し移動する移動部60と、撮像部の撮像画像における所定のターゲットの位置のトラッキング軌跡に基づいて、移動部の重心移動または接地時の衝撃によるロボットアームの手先の振動が生じないようにロボットアームを制御するロボットアーム制御部10と、を備えるようにした。
【選択図】
図2
【特許請求の範囲】
【請求項1】
周囲を撮影し撮像データを出力する撮像部と、
手先に前記撮像部を搭載し、手先位置を調整するロボットアームと、
前記ロボットアームを搭載し移動する移動部と、
前記撮像部の撮像画像における所定のターゲットの位置のトラッキング軌跡に基づいて、前記移動部の重心移動または接地時の衝撃による前記ロボットアームの手先の振動が生じないように前記ロボットアームを制御するロボットアーム制御部と、
を備えたことを特徴とする移動型撮像ロボットシステム。
【請求項2】
請求項1に記載の移動型撮像ロボットシステムにおいて、
前記ロボットアーム制御部は、
前記撮像画像により前記移動部の移動に伴う前記ロボットアームの手先位置の変化を取得するターゲットトラッキング部と、
前記ロボットアームの手先位置の時系列データを周波数解析する周波数解析部と、
前記周波数解析部の解析結果に基づいてロボットアームの手先位置の振動に関する支配的な周波数及びその振幅を求める周波数・振幅判定部と、
前記周波数・振幅判定部で求めた前記周波数及びその振幅に基づいて、移動部の移動によるロボットアームの手先位置の振動を相殺する動作を前記ロボットアームに行わせる動作指令を作成する振動補償制御部と、
前記動作指令に基づいてロボットアーム駆動モータの回転を制御するロボットアーム動作制御部と、
を備えることを特徴とする移動型撮像ロボットシステム。
【請求項3】
請求項2に記載の移動型撮像ロボットシステムにおいて、
前記振動補償制御部は、前記周波数・振幅判定部が同一の支配的な周波数及びその振幅を所定時間求めた時に、前記動作指令を生成する
ことを特徴とする移動型撮像ロボットシステム。
【請求項4】
請求項2に記載の移動型撮像ロボットシステムにおいて、
前記周波数・振幅判定部は、
前記移動部が多脚ロボット型の場合には、歩行周期を前記支配的な周波数とし、
前記移動部が無限軌道型の場合には、ベルト部の回転周波数またはベルト部を駆動するモータの回転周波数に基づいて前記支配的な周波数を求める
ことを特徴とする移動型撮像ロボットシステム。
【請求項5】
請求項2に記載の移動型撮像ロボットシステムにおいて、
前記ロボットアーム制御部は、さらに、
前記移動部の移動範囲における前記移動部の位置情報を取得する位置情報取得部と、
前記周波数解析部の解析結果に基づいて前記移動部の接地面の凹凸若しくは段差または障害物によるロボットアームの手先位置の振動の周波数及びその振幅を求める接地面データ作成部と、を備え、
前記ロボットアームの手先の振動が生じないように前記ロボットアームを制御する
ことを特徴とする移動型撮像ロボットシステム。
【請求項6】
請求項5に記載の移動型撮像ロボットシステムにおいて、
前記接地面データ作成部は、
前記ロボットアームが移動によるロボットアームの手先位置の振動を相殺する動作を行っている際に、前記移動部の接地面の凹凸または段差によるロボットアームの手先位置の振動の周波数及びその振幅を求める
ことを特徴とする移動型撮像ロボットシステム。
【請求項7】
請求項5に記載の移動型撮像ロボットシステムにおいて、
前記接地面データ作成部は、
移動部の接地面の凹凸または段差との衝突によるロボットアームの手先位置の単発パルス的振動を検知した場合には、前記移動部の移動によるロボットアームの手先位置の振動の周波数及びその振幅の取得と並行して、前記移動部の接地面の凹凸または段差によるロボットアームの手先位置の振動の周波数及びその振幅を求める
ことを特徴とする移動型撮像ロボットシステム。
【請求項8】
周囲を撮影し撮像データを出力する撮像部と、手先に前記撮像部を搭載し、手先位置を調整するロボットアームと、前記ロボットアームを搭載し移動する移動部と、を有する移動型撮像ロボットシステムの制御方法であって、
前記撮像部の撮像画像における所定のターゲットの位置のトラッキング軌跡を取得し、
前記トラッキング軌跡に基づいて前記移動部の重心移動または接地時の衝撃による前記ロボットアームの手先の振動の周波数に関する支配的な周波数及びその振幅を求め、
前記周波数及びその振幅に基づいて前記ロボットアームの手先の振動を相殺する動作を前記ロボットアームに行わせる
ことを特徴とする移動型撮像ロボットシステムの制御方法。
【請求項9】
請求項8に記載の移動型撮像ロボットシステムの制御方法において、
前記ロボットアームが移動によるロボットアームの手先位置の振動を相殺する動作を行っている際に、前記移動部の接地面の凹凸または段差によるロボットアームの手先位置の振動の周波数及びその振幅を求め、
前記移動部の重心移動または接地時の衝撃、及び前記移動部の接地面の凹凸または段差による前記ロボットアームの手先の振動を相殺する動作を前記ロボットアームに行わせる
ことを特徴とする移動型撮像ロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動型撮像ロボットシステム及びその制御方法に関する。
【背景技術】
【0002】
多脚ロボットなどの移動型ロボットに、人が立ち入り辛い場所や広大な敷地内での在庫管理、外観検査、形状測定等の作業を行わせるニーズが存在する。その際、ロボットは撮像装置により取得した撮像データを用いて作業を行う。ここで言う撮像装置とは、カメラまたはLiDAR(light detection and ranging)センサなど、周囲環境の二次元または三次元のイメージを得るための装置、またはそれらをフュージョンさせた装置である。
【0003】
移動型ロボットの実際の在庫管理やロジスティクス、保守分野への適用においては、撮像対象を動かすのではなくロボットの視点自体を柔軟に動かすことで、キズや異物、商品の個数などを確認し、必要に応じてピックアンドプレイスなどエンドエフェクタによる作業を行うことも多い。その際、商品陳列棚の間やメンテナンス中の車両の床下などの狭いスペースでマニュピュレータ動かし、視点を多角的に変える場面が存在する。
【0004】
このため、移動型ロボットの撮像装置は、移動体そのものではなく、搭載したロボットアームの手先位置に取り付けられている。これにより、特に広大な敷地内での外観検査を行う場合、移動をしながら精度よく撮像ができると、俯瞰的に視点を動かしつつ、異常を認められれば移動またはカメラズームによる精査ができ、作業をスムーズに行うことができる上に、衝突回避などのロボットの行動決定にも撮像データを活かすことができる。
【0005】
例えば、特許文献1には、移動部に搭載したロボットアームにおいて、移動部が所定の場所に移動した後にワークの位置ずれやアームの位置ずれが起こった場合、カメラ画像を用いた状態監視によって、アームの軌道計画を生成してズレを補償する技術が記載されている。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
移動型ロボットの撮像装置の移動部が静止した状態ではなく、移動中に撮像を行う場合において、搭載されたロボットアームの手先位置は、移動部が移動する路面の溝や段差等の凹凸による振動以外に、移動に伴う移動部の重心移動や接地時の衝撃による外乱を受けて、振動する。
【0008】
このため、撮像データによる物体認識自体の精度が下がる問題がある。特に、移動型ロボットや、移動型ロボットに搭載されているロボットアームの行動決定(衝突回避、検査におけるカメラのズームイン、ズームアウトなど)への活用が期待されている小型のMEMS式LiDARセンサによる撮像は、定点観測でないと距離や角度の測定精度が下がる。
【0009】
また、人が遠隔地からロボットの操作を行う場合、画像が振動するとオペレータの疲労は増大してしまう。このように、撮像装置の振動の問題が及ぶ範囲は、測定精度の問題に限らない。
【0010】
上記の先行技術では、移動型撮像ロボットが移動中に撮像を行うことは考慮されていない。
【0011】
本発明の目的は、移動中においても、安定した視野を得ることができる移動型撮像ロボットシステムを提供することにある。
【課題を解決するための手段】
【0012】
前記課題を解決するため、本発明の移動型撮像ロボットシステムは、周囲を撮影し撮像データを出力する撮像部と、手先に前記撮像部を搭載し、手先位置を調整するロボットアームと、前記ロボットアームを搭載し移動する移動部と、前記撮像部の撮像画像における所定のターゲットの位置のトラッキング軌跡に基づいて、前記移動部の重心移動または接地時の衝撃による前記ロボットアームの手先の振動が生じないように前記ロボットアームを制御するロボットアーム制御部と、を備えるようにした。
【発明の効果】
【0013】
本発明によれば、移動型撮像ロボットの移動中の撮像の視界を安定させることができる。
【図面の簡単な説明】
【0014】
【
図1】実施例1の移動型撮像ロボットシステムの構成図である。
【
図2】実施例1のロボットアーム制御部の構成図である。
【
図3A】ロボットアームと多脚ロボットによる移動部から構成されている形態を示す図である。
【
図3B】ロボットアームと多脚ロボットによる移動部から構成されている形態を示す図である。
【
図4】実施例1の移動型撮像ロボットシステムの処理のフロー図である。
【
図6】振動補償制御指令の作成について説明する図である。
【
図7】振動補償制御指令の作成について説明する図である。
【
図8】実施例2のロボットアーム制御部の構成図である。
【
図9】実施例2の移動型撮像ロボットシステムの処理のフロー図である。
【
図10A】周波数解析部の解析結果を示す図である。
【
図10B】周波数解析部の解析結果を示す図である。
【
図10C】接地面マップ上での位置情報を示す図である。
【
図11】本実施例のロボットアーム40の振動補償動作を説明する制御ブロック図である。
【
図12】振動データと接地面データを同時に作成する場合の処理フロー図である。
【
図13】周波数解析部の時間周波数解析結果を示す図である。
【発明を実施するための形態】
【0015】
以下、本発明の移動型撮像ロボットシステムの実施形態について、図面を参照しながら詳細に説明する。
【実施例0016】
図1は、本実施例の移動型撮像ロボットシステムの構成図である。
移動型撮像ロボットシステムは、手先に周囲を撮像する撮像部50を備えるロボットアーム40と、ロボットアーム40を搭載する移動部60と、データ収集、データ表示用のコンピュータ30と、ロボットアーム40を制御するロボットアーム制御部10と、を備え、ロボットアーム制御部10とコンピュータ30とロボットアーム40とをネットワーク20を介して接続して構成する。
【0017】
移動部60は、ロボットアーム40を搭載し、移動部駆動モータ61により自律移動可能に構成する。
【0018】
ロボットアーム40は、不図示の回転角度情報センサ群を有し、ロボットアーム駆動モータ41によって手先位置を調整可能に駆動する。ロボットアーム40は、その手先に撮像部50を備える。そして、撮像部50は手先の向きに応じた方向の撮像を行う。
【0019】
ロボットアーム制御部10は、ロボットアーム40及びコンピュータ30との入出力データの遣り取りを行う入出力部11と、撮像装置の機能を実行するための演算部12と、撮像ロボットの使用者が入力するデータ及び演算部12の抽出したデータが記憶される記憶部13を備える。ロボットアーム制御部10の構成は、
図2により詳細に説明する。
【0020】
図2は、移動型撮像ロボットシステムのロボットアーム制御部10の構成図である。
ロボットアーム制御部10の演算部12は、ターゲット選定部120と、ターゲットトラッキング部121と、周波数解析部122と、周波数・振幅判定部123と、振動補償制御部124と、ロボットアーム動作制御部125とを備える。記憶部13は、振動データ130と、振動補償制御データ131と、を備える。以下、各構成要素を詳細に説明する。
【0021】
ターゲット選定部120は、移動部60が停止している状態における撮像部50の周囲の撮像データから、静止している所定の物体をトラッキング(追跡)するターゲットとして選定する。撮像データは、ネットワーク20を介して入出力部11により入力する。
【0022】
ターゲットトラッキング部121は、移動部60が移動している状態において、撮像データによりターゲット選定部120が選定したターゲットをトラッキングし、ターゲットとロボットアーム40(撮像部50)との鉛直方向の相対位置の変化を取得する。
すなわち、ターゲットトラッキング部121は、移動部60の移動に伴うロボットアーム40の手先位置の変化を取得する。
【0023】
周波数解析部122は、撮像データのフレーム毎のターゲット位置の時系列データを、ロボットアームの手先位置の時系列データとして、周波数解析を行う。
【0024】
周波数・振幅判定部123は、周波数解析部122の出力結果を用いて、移動に関するロボットアーム40の手先位置の振動について支配的な周波数及びその振幅を算出する。
【0025】
振動補償制御部124は、周波数・振幅判定部123によって算出された振動に基づき移動部60の移動によるロボットアーム40の手先位置(撮像部50)の振動を相殺する動作をロボットアーム40に行わせるための動作指令を生成する。
【0026】
ロボットアーム動作制御部125は、振動補償制御部124が作成した動作指令に基づき、ロボットアームの少なくとも一つの関節を駆動するロボットアーム駆動モータ41の回転を制御する。
【0027】
振動データ130は、周波数・振幅判定部123が判定した移動部の移動が起因の揺れに関するデータであり、記憶部13に記憶される。また、振動データ130は、ロボットアーム40をキャリブレーションし直した後や、未知の地面を歩行する際や、ロボットアーム40のハード部分あるいは制御ソフトに更新があった場合に、必要と予測される振動補償制御を作成するために参照することができる。
【0028】
振動補償制御データ131は、移動部60の移動動作によるロボットアームの手先位置の振動を相殺するための、ロボットアームの振動補償制御データであり、振動データ130と紐づけて記憶部13に格納する。振動補償制御データ131は、移動部60の移動速度や、移動部60のハードが変更された際は、新規の振動データ130と共に新たに生成される。
【0029】
具体的には、ロボットアーム制御部10は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、入出力I/F(Interface)、通信I/F及びメディアI/Fを有する情報処理装置で実現される。
【0030】
演算部12は、CPUがROMまたはHDDに記憶するプログラムを実行することで、ターゲット選定部120とターゲットトラッキング部121と周波数解析部122と周波数・振幅判定部123と振動補償制御部124とロボットアーム動作制御部125と振動データ130と振動補償制御データ131の機能を実現する。
【0031】
記憶部13は、HDDにより実現され、振動データ130と振動補償制御データ131とを記憶する。
入出力部11は、入出力I/Fまたは通信I/Fにより実現し、ネットワーク20を介して、撮像部50とロボットアーム40と移動部60と接続し、データを授受する。
【0032】
ここで、本実施例の移動型撮像ロボットシステムにおけるロボットアーム40と撮像部50と移動部60の形態を、
図3Aと
図3Bにより説明する。
【0033】
図3Aは、手先に撮像部50が取り付けられたロボットアーム40と、多脚ロボットによる移動部60から構成されている形態例である。
図3Bは、手先にエンドエフェクタと撮像部50が取り付けられたロボットアーム40と、無限軌道型の移動部60から構成されている形態例である。
【0034】
つぎに、本実施例の移動型撮像ロボットシステムの処理を、
図4のフロー図により説明する。
【0035】
S101で、ロボットアーム制御部10は、撮像部50による周囲の撮像データの取得を開始する(撮像の開始)。
【0036】
ステップS102で、ターゲット選定部120は、移動部60が停止している状態で撮像されている範囲において、特定の物体をトラッキングするターゲットとして選定する。
【0037】
ステップS103で、ターゲット選定部120は、ステップS102で選定したターゲットが静止中であるか否かを判定する。静止中であれば(S103のYES)、ステップS104に進み、静止中でなければ(S103のNO)ステップS102に戻る。静止中であるか否かの判定は、例えば、数フレーム分の撮像データにおいて、ターゲットの位置が一定であるか否かによって判定する。
【0038】
ステップS104で、ターゲットトラッキング部121は、撮像データのターゲットのトラッキングを開始する。
【0039】
ステップS105で、ロボットアーム制御部10は、移動部60の移動を許可し、移動部駆動モータ61が動作を開始することにより移動部60の移動が開始される。
【0040】
ステップS106で、ターゲットトラッキング部121は、移動部60の移動中におけるターゲットのフレーム毎の位置をトラッキング軌跡として取得する。
【0041】
ステップS107で、周波数解析部122は、ステップS106で取得されたトラッキング軌跡とフレームレートから、移動部60の移動によって生じるロボットアームの手先位置の振動に関する支配的な周波数を決定するための周波数解析を行う。周波数解析部122が解析する周波数は、移動部60の重心移動や接地時の衝撃による外乱の周波数である。なお、詳細は、
図5により別途説明する。
【0042】
特に、支配的な周波数は、移動部60が多脚ロボット型の場合(
図3A)は、歩行周期によって決まる値であり、無限軌道型の場合(
図3B)はベルト部の回転周波数またはベルト部を駆動するモータの回転周波数によって決まる。つまり、移動部60の運動学的ふるまいによって決まる周波数であり、段差または凹凸のない平地でも避けられない振動である。
【0043】
周波数解析部122は、周波数解析に、フーリエ変換を使ってもよいし、ウェーブレット変換等の時間周波数解析方法を用いてもよいし、ピーク検出や自己相関関数を用いて導出してもよい。また、解析する振動の方向は、移動の進行方向に対して垂直に交わる平面内のどの方向を選定してもよい。
【0044】
ステップS108で、周波数・振幅判定部123は、ステップS107の周波数解析で所定値の振幅強度の周波数を得られた場合に、移動部60の移動に起因するものである仮定する。また、移動部60への制御信号、または移動部60を駆動する移動部駆動モータ61のうち少なくとも一つに対する制御信号の周期性の情報と周波数比較して、一致する場合に移動部60の移動に起因するとしてもよい。
【0045】
周波数・振幅判定部123は、移動部60の移動に起因するものであると仮定した場合に、ステップS107の周波数解析の結果であるロボットアーム40の手先位置の振動に関する支配的な周波数と振幅を振動データ130とする。
【0046】
なお、振動データ130の振幅は、位置や寸法の測量機能を持つカメラやLiDARセンサによってターゲットを直接測定して求めてもよい。
また、求めた振動と逆位相かつ特定の振幅でロボットアーム40を振動させることによって相殺される撮像部50の視界内でのターゲットの変位量から間接的に推定してもよい。
【0047】
ステップS109で、周波数・振幅判定部123は、ステップS107の周波数解析の結果が移動部60の移動に起因するものであるとの仮定が、所定時間継続したかを判定する。継続した場合には(S109のYES)、振動データ130が移動部60の移動に起因するものとして確定してステップS110に進み、継続しなかった場合には(S109のNO)、ステップS106に戻る。
【0048】
ステップS110で、振動補償制御部124は、振動データ130の周波数と逆位相、かつ振動データ130の振幅と同一の振幅で撮像部50を予測的に動かすことで、撮像されるターゲットの振動が相殺されるように、ロボットアーム40の制御情報(振動補償動作指令)を作成する。なお、詳細は、
図6により別途説明する。
【0049】
ステップS111で、振動補償制御部124は、振動データ130を記憶部13に格納する。
なお、ステップS110とステップS111はいずれが先に行われてもいいし、同時に行われてもよい。
【0050】
ステップS112で、ロボットアーム動作制御部125は、ステップS110で作成したロボットアーム40の制御情報(振動補償動作指令)をロボットアーム40に通知して、ロボットアームの振動補償制御を開始する。
【0051】
ステップS113で、ロボットアーム動作制御部125は、ターゲットトラッキング部121によりトラッキング軌跡を取得して、ロボットアームの振動補償制御によってターゲットの揺れが許容範囲内であるか否かを判定する。許容範囲内である場合には(S113のYES)、ステップS114に進み、許容範囲内でない場合には(S113のNO)、ステップS106に戻る。
【0052】
ステップS114で、ロボットアーム動作制御部125は、ステップS112でロボットアーム40に通知した制御情報(振動補償動作指令)を、振動補償制御データ131として記憶部13に振動データ130と紐づけて格納する。振動データ130との紐づけにより、同様の振動が撮像部50によって検知された際に、ロボットアーム40の振動補償に使用することができる。
【0053】
つぎに、
図5により、
図4のステップS107の周波数解析について説明する。
図5は、
図4のステップS106で、ターゲットトラッキング部121が取得したトラッキング軌跡の一例を示す図である。
【0054】
周波数解析部122は、トラッキング軌跡として取得されたターゲットの位置の時系列データ(点線の曲線)において、ターゲットが最大ピーク位置をとる時刻t1からつぎに最大ピーク位置をとる時刻t2までの時間t2-t1を周期Tとし、その逆数として周波数Fを決定して、ターゲットの振動の周波数情報を抽出する。
さらに、ターゲットの最大ピーク位置と最小ピーク位置の差分を求め、振幅Aを決定する。
【0055】
周波数解析部122は、周波数Fと振幅Aは、それぞれ1サンプルから決定しても、複数サンプルの平均値から決定してもよい。もしくは周波数解析部122は、フーリエ変換のような周波数変換処理を介して算出してもよい。
【0056】
つぎに、
図6と
図7により、
図4のステップS110の振動補償制御指令の作成について説明する。
図6は、ロボットアーム40の手先(撮像部50)の予測される振動(実線)と、振動補償制御指令の通知によるロボットアーム40の手先(撮像部50)の動作(破線)との関係を示す図である。
【0057】
振動補償制御部124は、振動データ130をロボットアーム40の手先(撮像部50)の予測される振動(実線)とする。そして、振動補償制御部124は、ロボットアーム40の手先の動作に、振動データ130に対して逆位相かつ同一の振幅の動作を付加するように、ロボットアーム40の振動補償制御指令を作成する。
【0058】
これにより、
図7の振動補償制御が行われた後のターゲットのトラッキング軌跡を示す図のように、移動部60の移動に起因するロボットアーム40の手先(撮像部50)の振動は補償され、撮像部50の視界を安定させることができる。
【0059】
図7の撮像部50のターゲットのトラッキングの結果の表示は必ずしも必要ではなく、振動データや振動補償データを記憶部13に保持しておくか、入出力部11を通じてコンピュータ30に出力するのみでもよい。
実施例1では、実施形態のロボットアーム制御部10が、移動部60の重心移動や接地時の衝撃によるロボットアーム40の手先の振動が収まるようにロボットアーム40を制御して、振動補償することを説明したが、実施例2では、上記の振動に加えて、接地面の凹凸若しくは段差による振動が加わる場合について説明する。
実施例2のロボットアーム制御部10は、まず、移動部60の重心移動や接地時の衝撃による振動と、接地面の凹凸若しくは段差による振動とを切り分け、つぎに、同一地点を移動する際に、双方の振動を補償するようにロボットアーム40の制御を行い、撮像部50の視界を安定させる。
接地面データ作成部127は、振動補償制御部124により移動部60の重心移動や接地時の衝撃による振動補償制御を行っている際に、周波数解析部122によりロボットアーム40の手先(撮像部50)の振動が検知された場合に、移動部60の接地面の凹凸若しくは段差、または障害物による振動が生じたと判定する。そして、接地面データ作成部127は、周波数解析部122で求めた周波数と振幅とを接地面データ133として接地面マップ132に移動部60の位置情報により紐づけて記憶部13に格納する。既存の接地面データ133が記憶部13にある場合、接地面データ133を更新する。
接地面マップ132は、移動部60が移動する範囲の形状や間取りに関する情報である。接地面マップ132は、あらかじめ既知のマップとして入出力部11から設定していてもよいし、移動部60がマッピング機能を持っている場合、移動部60が作成したマップを接地面マップとしてとして記憶部13に同期または入力してもよい。
接地面データ133は、接地面マップ132に紐づけられて記憶部13に格納される。新規作成または更新された接地面データ133は、今後、移動部60が同一の場所を移動する際に、撮像部50が振動しないようにロボットアーム40の振動補償制御を行うために格納される。
ステップS116で、振動補償制御部124は、振動補償制御を行っているにも関わらず、ロボットアーム40の手先(撮像部50)の振動(特に、振幅)が許容範囲を逸脱しているかどうかを判定する。振動が許容範囲を逸脱していない場合には(S116のNO)、ステップS115に戻り、振動が許容範囲を逸脱している場合には(S116のYES)、ステップS117に進む。
ステップS117で、位置情報取得部126は、移動部60の移動範囲における移動部60の位置情報を取得する。そして、位置情報取得部126は、この位置情報を接地面マップ132に記憶する。
ステップS118で、接地面データ作成部127は、ステップS116で振動が許容範囲を逸脱していると判定した位置情報に対応する接地面データ133があるか否かを判定する。接地面データ作成部127は、あると判定した場合には(S118のYES)、ステップS120に進み、ないと判定した場合には(S118のNO)、ステップS119に進む。
ステップS119で、接地面データ作成部127は、周波数解析部122において新たに検知された接地面起因の振動の周波数と振幅とを、接地面マップ132におけるステップS117で得た位置情報に紐づけて接地面データ133として記憶部13に格納し、処理を終了する。
ステップS120で、接地面データ作成部127は、周波数解析部122において新たに検知された接地面起因の振動の周波数と振幅とを、ステップS117で得た位置情報に対応する既存の接地面データ133に追記して更新し、処理を終了する。
このように、実施例2のロボットアーム制御部10は、移動部60の重心移動や接地時の衝撃による振動を補償するようにロボットアーム40を制御して移動する状態で、トラッキング軌跡から接地面の凹凸若しくは段差または障害物による振動を検出するので、所定位置の接地面データ133を切り分けて取得できる。
ロボットアーム40は、移動部60が移動している限り、恒常的に生じる振動を相殺するために振動データ130を振動補償制御に加え、接地面マップ132上の特定の位置において一時的に発生する地形起因の振動を相殺するように、接地面データ133を振動補償制御に加える。これにより、既知のマップ上で撮像部50が振動しないように振動補償制御を変更することができる。本実施例でのロボットアーム40の振動補償制御は、振動データ130と接地面データ133の位相をそれぞれ反転し足し合わせることで作成する。
ステップS121は、ステップS107の周波数解析の結果が、単発パルス的な振動を検知したか否かを判定している。これは、接地面の凹凸若しくは段差または障害物との衝突による振動は、周期的な振動になる移動部の重心移動や接地時の衝撃と異なり、単発パルス的な振動になることに基づいている。
本実施例によれば、移動型撮像ロボットが撮った撮像データを用いて、撮像装置付きロボットアームの制御を行うことにより、移動による揺れを予測、相殺し、視界を安定させることができるので、移動中の撮像の視界を安定させることができる。
本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。上記の実施例は本発明で分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。