(57)【要約】【課題】  アーム等が物体に接触した後にアームが停止した場合に、接触時点での位置姿勢にアームの位置姿勢を戻すことで、オーバーランを補正するロボット、ロボットシステム、制御装置及び制御方法等を提供すること。【解決手段】  ロボット５０は、エンドエフェクター３０を備えるアーム２０と、力覚センサー１０を含み、エンドエフェクター３０が把持する把持物、エンドエフェクター３０及びアーム２０のいずれかが物体と接触した後、アーム２０が移動し、停止した後、アームの位置姿勢を物体との接触時点のアーム２０の位置姿勢に戻す。【選択図】      図１
2015085492.tif 000002
【特許請求の範囲】
【請求項１】
エンドエフェクターを備えるアームと、
力覚センサーと、
を含み、
前記エンドエフェクターが把持する把持物、前記エンドエフェクター及び前記アームのいずれかが物体と接触した後、前記アームが移動し、停止した後、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に戻す、
ことを特徴とするロボット。
【請求項２】
請求項１において、
前記力覚センサーの出力と所与の閾値とを比較することによって、前記アームを停止させるか否かを判定し、
前記力覚センサーの出力の変化量に基づいて、前記物体と接触したか否かを判定する、
ことを特徴とするロボット。
【請求項３】
請求項１又は２において、
前記接触時点は、前記力覚センサーの出力が上昇を開始したと判定される上昇開始タイミングであり、
前記接触時点の前記アームの位置姿勢は、前記上昇開始タイミングでの前記アームの位置姿勢である、
ことを特徴とするロボット。
【請求項４】
請求項３において、
前記力覚センサーの出力の変化量に基づいて、前記上昇開始タイミングであるか否かを判定することを特徴とするロボット。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記力覚センサーの出力に対して平滑化処理を行い、前記平滑化処理後の前記力覚センサーの出力に基づいて、前記アームを停止させるか否かを判定することを特徴とするロボット。
【請求項６】
エンドエフェクターを備えるアームと、力覚センサーとを含むロボットを含み、
前記ロボットは、
前記エンドエフェクターが把持する把持物、前記エンドエフェクター及び前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させることを特徴とするロボットシステム。
【請求項７】
エンドエフェクターを備えるアームと、力覚センサーとを含むロボットを動作させる制御装置であって、
前記ロボットに、前記エンドエフェクターが把持する把持物、前記エンドエフェクター及び前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させることを特徴とする制御装置。
【請求項８】
エンドエフェクターを備えるアームと、力覚センサーとを含むロボットの制御方法であって、
前記ロボットに、前記エンドエフェクターが把持する把持物、前記エンドエフェクター及び前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット、ロボットシステム、制御装置及び制御方法等に関する。
【背景技術】
【０００２】
作業用ロボットにおいて、力覚センサーを備えたアームが、ワークや作業環境との干渉を検知し、予め教示された力覚センサーの閾値に基づいて自律的に動作を停止するという手法が用いられている。しかし、その閾値は力覚センサーにとって不可避となるノイズを考慮して大きめに設定する必要があるため、干渉地点から閾値到達点までのタイムラグによってオーバーランが生じる。
【０００３】
これに対して特許文献１には、ツール把持位置にズレが生じた場合、ロボットアームに備え付けられた力覚センサーの荷重は、ズレが無い場合に比べて大きくなるとの考えに基づくオーバーランの補正手法が開示されている。特許文献１では、力覚センサーの荷重が小さくなる方向に位置を補正し、以降は補正後の位置を基準にランタイム実行する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−６２４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、指定された作業が、ツールスタンド上に設置されたツールを把持するケースに限定されている。また、位置ズレが大きいほど荷重がかかる事を前提として、低荷重方向に収束させる手法であるため、干渉する対象ツールの弾性が高いものでなければ位置補正に対応できない。
【課題を解決するための手段】
【０００６】
本発明の一態様は、エンドエフェクターを備えるアームと、力覚センサーと、を含み、前記エンドエフェクターが把持する把持物、前記エンドエフェクター、前記アームのいずれかが物体と接触した後、前記アームが移動し、停止した後、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に戻す、ロボットに関係する。
【０００７】
本発明の一態様では、アーム等が物体と接触した後、さらにアームが移動してから停止した場合に、ロボットはアームの位置姿勢を接触時点での位置姿勢に戻す。よって、オーバーランが発生した場合にも、適切にオーバーランを補正すること等が可能になる。
【０００８】
また、本発明の一態様では、前記力覚センサーの出力と所与の閾値とを比較することによって、前記アームを停止させるか否かを判定し、前記力覚センサーの出力の変化量に基づいて、前記物体と接触したか否かを判定してもよい。
【０００９】
これにより、力覚センサーの出力と閾値との比較によりアームを停止させる判断を行うこと、及び力覚センサーの出力の変化量により接触時点を特定する判断を行うこと等が可能になる。
【００１０】
また、本発明の一態様では、接触時点は、前記力覚センサーの出力が上昇を開始したと判定される上昇開始タイミングであり、前記接触時点の前記アームの位置姿勢は、前記上昇開始タイミングでの前記アームの位置姿勢であってもよい。
【００１１】
これにより、接触時点を力覚センサーの出力の上昇開始タイミングとすること等が可能になる。
【００１２】
また、本発明の一態様では、力覚センサーの出力の変化量に基づいて、前記上昇開始タイミングであるか否かを判定してもよい。
【００１３】
これにより、上昇開始タイミングを力覚センサーの出力の変化量から判定すること等が可能になる。
【００１４】
また、本発明の一態様では、力覚センサーの出力に対して平滑化処理を行い、前記平滑化処理後の前記力覚センサーの出力に基づいて、前記アームを停止させるか否かを判定してもよい。
【００１５】
これにより、平滑化処理後の力覚センサーの出力に基づいて、アームの停止判定を行うこと等が可能になる。
【００１６】
また、本発明の他の態様は、エンドエフェクターを備えるアームと、力覚センサーとを含むロボットを含み、前記ロボットは、前記エンドエフェクターが把持する把持物、前記エンドエフェクター、前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させるロボットシステムに関係する。
【００１７】
本発明の他の態様では、アーム等が物体と接触した後、さらにアームが移動してから停止した場合に、ロボットはアームの位置姿勢を接触時点での位置姿勢に戻す。よって、オーバーランが発生した場合にも、適切にオーバーランを補正すること等が可能になる。
【００１８】
また、本発明の他の態様は、エンドエフェクターを備えるアームと、力覚センサーとを含むロボットを動作させる制御装置であって、前記ロボットに、前記エンドエフェクターが把持する把持物、前記エンドエフェクター、前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させる制御装置に関係する。
【００１９】
本発明の他の態様では、アーム等が物体と接触した後、さらにアームが移動してから停止した場合に、制御装置は、ロボットにアームの位置姿勢を接触時点での位置姿勢に戻す動作を行わせる。よって、オーバーランが発生した場合にも、適切にオーバーランを補正すること等が可能になる。
【００２０】
また、本発明の他の態様は、エンドエフェクターを備えるアームと、力覚センサーとを含むロボットの制御方法であって、前記ロボットに、前記エンドエフェクターが把持する把持物、前記エンドエフェクター、前記アームのいずれかが物体と接触した後、前記アームが停止した場合には、前記アームの位置姿勢を前記物体との接触時点の前記アームの位置姿勢に移動させる制御方法に関係する。
【００２１】
本発明の他の態様では、アーム等が物体と接触した後、さらにアームが移動してから停止した場合に、ロボットはアームの位置姿勢を接触時点での位置姿勢に戻す。よって、オーバーランが発生した場合にも、適切にオーバーランを補正すること等が可能になる。
【００２２】
また、本発明の他の態様は、力覚センサーからのセンサー情報を取得するセンサー情報取得部と、ロボットを制御する制御部と、を含み、前記制御部は、前記センサー情報に基づいて、前記ロボットのアームの動作を停止するか否かを判定する停止判定処理を行い、前記アームの動作を停止すると判定した場合には、前記アームの動作を停止させ、前記アームの動作を停止した停止タイミングよりも前の過去タイミングにおける、前記アームの位置姿勢を特定する位置姿勢情報を読み出して、前記アームの前記位置姿勢を、前記過去タイミングにおける前記位置姿勢に移行させるロボットに関係する。
【００２３】
本発明の他の態様では、停止判定処理によりアームの動作を停止した場合には、停止タイミングよりも前の過去タイミングでのアームの位置姿勢情報を用いて、アームの位置姿勢を過去タイミングでの位置姿勢に移行させる。よって、オーバーランが発生した場合にも、過去の状態にアームを戻すことで容易にオーバーランを補正すること等が可能になる。その際、オーバーラン自体を高精度で抑止する必要性が低いため、停止判定処理における判定基準の設定を容易にすること等も可能である。
【００２４】
また、本発明の一態様では、前記センサー情報と前記位置姿勢情報のログデータを記憶する記憶部を更に含み、前記制御部は、前記記憶部から読み出された前記過去タイミングにおける前記位置姿勢情報に基づいて、前記アームの前記位置姿勢を、前記過去タイミングにおける前記位置姿勢に移行させてもよい。
【００２５】
これにより、記憶部に記憶されたセンサー情報と位置姿勢情報のログデータを用いて、アームを制御すること等が可能になる。
【００２６】
また、本発明の一態様では、前記過去タイミングは、前記アーム、又は前記アームに取り付けられるエンドエフェクター、又は前記エンドエフェクターにより把持される把持物と物体とが接触したと判定される接触タイミングであってもよい。
【００２７】
これにより、アームの位置姿勢を、接触タイミングでのアームの位置姿勢とする制御等が可能になる。
【００２８】
また、本発明の一態様では、前記制御部は、前記記憶部から読み出した前記センサー情報に基づいて、前記アーム又は前記エンドエフェクター又は前記把持物と、前記物体との接触を判定する接触判定処理を行い、前記接触判定処理により前記接触タイミングと判定されたタイミングでの前記位置姿勢情報を前記記憶部から読み出して前記アームの前記位置姿勢を制御してもよい。
【００２９】
これにより、記憶部から読み出されたセンサー情報による接触判定処理を行って、接触タイミングを判定すること等が可能になる。
【００３０】
また、本発明の一態様では、前記制御部は、前記センサー情報と所与の閾値との比較処理に基づいて、前記停止判定処理を行い、前記センサー情報の変化量に基づいて、前記接触判定処理を行ってもよい。
【００３１】
これにより、センサー情報と閾値との比較処理により停止判定処理を行うこと、及びセンサー情報の変化量を用いた処理により接触判定処理を行うこと等が可能になる。
【００３２】
また、本発明の一態様では、前記過去タイミングは、前記センサー情報により表される力覚センサー値が上昇を開始したと判定される上昇開始タイミングであってもよい。
【００３３】
これにより、アームの位置姿勢を、上昇開始タイミングでのアームの位置姿勢とする制御等が可能になる。
【００３４】
また、本発明の一態様では、前記制御部は、前記記憶部から読み出した前記センサー情報に基づいて、前記力覚センサー値の上昇の開始を判定する上昇開始判定処理を行い、前記上昇開始判定処理により前記上昇開始タイミングと判定されたタイミングでの前記位置姿勢情報を前記記憶部から読み出して前記アームの前記位置姿勢を制御してもよい。
【００３５】
これにより、記憶部から読み出されたセンサー情報による上昇開始判定処理を行って、上昇開始タイミングを判定すること等が可能になる。
【００３６】
また、本発明の一態様では、前記制御部は、前記センサー情報と所与の閾値との比較処理に基づいて、前記停止判定処理を行い、前記センサー情報の変化量に基づいて、前記上昇開始判定処理を行ってもよい。
【００３７】
これにより、センサー情報と閾値との比較処理により停止判定処理を行うこと、及びセンサー情報の変化量を用いた処理により上昇開始判定処理を行うこと等が可能になる。
【００３８】
また、本発明の一態様では、前記制御部は、前記センサー情報に対して平滑化処理を行い、前記平滑化処理後の前記センサー情報に基づいて、前記停止判定処理を行ってもよい。
【００３９】
これにより、平滑化処理を行うことで停止判定処理の精度を向上させること等が可能になる。
【００４０】
また、本発明の一態様では、前記センサー情報と前記位置姿勢情報のログデータを記憶する記憶部を更に含み、前記制御部は、前記ロボットの前記アームを動作させる動作制御を開始し、前記動作制御の開始後に、前記停止判定処理として前記センサー情報と所与の閾値との比較処理を行い、前記比較処理により前記センサー情報により表される値が前記所与の閾値を超えた場合には、前記アームの動作を停止する停止制御を行い、前記停止制御後に、前記記憶部に記憶された前記動作制御中の前記センサー情報を読み出して、前記センサー情報により表される値が上昇を開始した上昇開始タイミングを特定し、前記記憶部に記憶された前記動作制御中の前記位置姿勢情報のうち、前記上昇開始タイミングでの前記位置姿勢情報を読み出し、読み出した前記位置姿勢情報に基づいて、前記アームの前記位置姿勢の制御を行ってもよい。
【００４１】
これにより、一連の処理を順次行うことでオーバーランを補正すること等が可能になる。
【００４２】
また、本発明の他の態様は、力覚センサーからのセンサー情報を取得するセンサー情報取得部と、ロボットを制御する制御部として、コンピューターを機能させ、前記制御部は、前記センサー情報に基づいて、前記ロボットのアームの動作を停止するか否かを判定する停止判定処理を行い、前記アームの動作を停止すると判定した場合には、前記アームの動作を停止させ、前記アームの動作を停止した停止タイミングよりも前の過去タイミングにおける、前記アームの位置姿勢を特定する位置姿勢情報を読み出して、前記アームの前記位置姿勢を、前記過去タイミングにおける前記位置姿勢に移行させるプログラムに関係する。
【００４３】
本発明の他の態様では、停止判定処理によりアームの動作を停止した場合には、停止タイミングよりも前の過去タイミングでのアームの位置姿勢情報を用いて、アームの位置姿勢を過去タイミングでの位置姿勢に移行させる制御をコンピューターに実行させる。よって、オーバーランが発生した場合にも、過去の状態にアームを戻すことで容易にオーバーランを補正すること等が可能になる。その際、オーバーラン自体を高精度で抑止する必要性が低いため、停止判定処理における判定基準の設定を容易にすること等も可能である。
【００４４】
このように、本発明の幾つかの態様によれば、アーム等が物体に接触した後にアームが停止した場合に、接触時点での位置姿勢にアームの位置姿勢を戻すことで、オーバーランを補正するロボット、ロボットシステム、制御装置及び制御方法等を提供することができる。
【図面の簡単な説明】
【００４５】
【図１】本実施形態に係るロボットの構成例。
【図２】本実施形態に係るロボットの詳細な構成例。
【図３】本実施形態に係る制御装置及びロボットシステムの構成例。
【図４】本実施形態に係るロボットの具体的な構成例。
【図５】本実施形態に係るロボットの他の具体的な構成例。
【図６】本実施形態に係る制御装置等をサーバーシステムで構成する例。
【図７】図７（Ａ）〜図７（Ｄ）はオーバーランの補正処理の説明図。
【図８】力覚センサー値の時間的な変化を説明する図。
【図９】本実施形態の処理を説明するフローチャート。
【図１０】平滑化処理前後の力覚センサー値の時間的な変化を説明する図。
【図１１】ロボットによる回転動作が行われるダイヤルの例。
【図１２】ダイヤル操作時の力覚センサー値の時間的な変化を説明する図。
【発明を実施するための形態】
【００４６】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００４７】
１．本実施形態の手法
まず本実施形態の手法について説明する。作業用ロボットを用いた作業においては、ロボットのアームやエンドエフェクター、或いはエンドエフェクターにより把持される把持物（ワークや工具等）と、他の物体との干渉（衝突、接触）を抑止することが求められる。なぜなら、干渉が起きた場合には、アーム、エンドエフェクター、把持物（以下、本明細書では「アーム等」と表記する）、及びそれらが衝突した他の物体が損傷する可能性があるためである。アームやエンドエフェクターが損傷すれば、例えば当該アーム等が変形することで所望の位置への高精度での移動ができなくなる等、ロボット制御に支障を来す。また、把持物や他の物体は剛性の低い繊細な物体である可能性もあり、干渉による損傷が非常に大きな問題となり得る。
【００４８】
それに対して、アーム等に力覚センサーを設けておき、当該力覚センサーからのセンサー情報（狭義には力覚センサー値）に基づいて、干渉を検知する手法が知られている。干渉が発生していない状況では、力覚センサーには重力等の一定の力が加わるのに対して、干渉発生時には当該干渉による力も加わる。そのため、干渉発生時には力覚センサーからの力覚センサー値が、干渉の非発生時よりも大きくなるため、その差異を検出することで干渉の有無を判定することが可能である。具体的には、力覚センサー値についての閾値を設定し、力覚センサー値が当該閾値を超えた場合に干渉が発生したと判定すればよい。
【００４９】
しかし、小さな力を判定するケースにおいては、オーバーランを回避するための精緻な調整が必須となり、スキルをもった人材による長時間の試行が不可避である。ここでのオーバーランとは、図７（Ａ）に示したようなアームによる把持物の移動動作において、図７（Ｂ）に示した干渉発生時点の位置でアーム等を停止することができず、さらにアーム等が干渉対象である物体側へ移動して図７（Ｃ）に示した位置へ移動する状態をいう。オーバーランを高精度で回避しようとすれば、図７（Ｂ）に示したように干渉を開始し始めた時点での力覚センサー値を検出しなければならないが、これは一般的に小さい値であることが多い。
【００５０】
図８に力覚センサーからの力覚センサー値の時間変化を示す。図８のＡ１が図７（Ｂ）に対応する干渉発生タイミング及びその際の力覚センサー値を表す点である。図８の例では、Ａ１よりも前のタイミングでは干渉は発生していない。しかし図８の例からもわかるように、干渉発生タイミングでの力覚センサー値と、干渉発生タイミング前の力覚センサー値には、その大きさに明確な差がない。Ａ１を干渉発生タイミングと判定するには、０．４〜０．５Ｎ（ニュートン）程度の閾値を設定しなければならないところ、干渉が発生していないタイミング（例えば図８のｔ＝１００前後のタイミング）でも力覚センサー値が当該閾値を超えてしまう。つまり、０．４〜０．５Ｎ程度の閾値では、干渉が発生していないにもかかわらず、干渉が発生したと誤判定するおそれがある。
【００５１】
また、そもそも力覚センサー値の閾値を設定するには専門的な知識が求められる。例えば、アーム等が他の物体に衝突したら、アームにはこの方向に何Ｎの力が加わるはず、この軸まわりには何Ｎのモーメントが発生するはずといった物理的な知識が必要である。さらに、アーム等の材質（例えば剛性の高低）、衝突対象となり得る他の物体（木材なのかプラスチックなのか等）によっても発生する力が異なることから、物体の特性に関する知識も求められる。それに加えて、実際にロボットを動作させることで、アーム等と他の物体との衝突時に発生する力覚センサー値を実験的に求める際には、ロボット制御に関する知識も必要である。
【００５２】
従来、上記の閾値の設定は、ロボット購入者であるユーザー自身が行うことは難しく、専門家により行われることが一般的であった。しかし、ロボットによる作業内容が変われば、把持物や衝突の対象となり得る物体（例えば作業台上に配置されるワークや治具等）も変化するため、作業内容ごとに閾値を設定する必要があり、ユーザーフレンドリーの観点から好ましくない。
【００５３】
そこで本出願人は、図７（Ｃ）に示したオーバーランの発生はある程度許容しつつ、オーバーランが発生してしまった場合には、自動的に位置を修正し、図７（Ｄ）に示したように、干渉発生時（図７（Ｂ）に示した状態）に対応する位置姿勢までアームを移動させる手法を提案する。
【００５４】
具体的には、本実施形態に係るロボット５０はエンドエフェクター３０を備えるアーム２０と、力覚センサー１０とを含む。そして、エンドエフェクター３０が把持する把持物、エンドエフェクター３０及びアーム２０のいずれかが物体と接触した後（例えば図７（Ｂ）に対応）、アーム２０が移動し停止した後（例えば図７（Ｃ）に対応）、アーム２０の位置姿勢を物体との接触時点のアームの位置姿勢に戻す（例えば図７（Ｄ）に対応）。この動作は例えば、図１を用いて後述する制御部１２０の制御により実現できる。
【００５５】
ここで力覚センサーとは、例えば３軸での並進力と、各軸周りでのモーメントを検出する６軸力覚センサーであるが、これには限定されず、種々の力覚センサーを広く用いることが可能である。また、エンドエフェクター３０とは、アーム２０の（狭義にはアーム２０の先端の）エンドポイントに接続されるパーツである。エンドエフェクター３０は、ハンドのような把持部であってもよいし、ドライバー等の工具であってもよい。また、把持物とは、物体の把持が可能なエンドエフェクター３０（上述したハンド等）により把持される物体であり、例えば組み付け等の作業対象となるワークである。また、ドライバー等の工具がアーム２０に直接接続されるのではなく、アーム２０に接続されたエンドエフェクター３０により把持されるケースも考えられる。その場合の工具等は、把持物に含まれることになる。
【００５６】
これにより、接触後にオーバーランが生じてからアーム２０が停止した場合に、アーム２０の位置姿勢を、接触タイミングでのアーム２０の位置姿勢に戻す（接触タイミングでのアーム２０の位置姿勢を再現する）ことが可能になる。この場合、接触タイミングでのアーム２０の位置姿勢に戻せるのであるから、停止判定処理では図７（Ｂ）に示したような接触の瞬間、或いはそれに近い状態を検出する必要はない。例えば、図７（Ｃ）に示したように、ある程度オーバーランをしたところでアーム２０を停止するとの判定を行えば充分である。一度オーバーランはしてしまうものの、その後、過去タイミングとして図７（Ｂ）のタイミングを特定すれば、当該オーバーランを補正して、図７（Ｄ）の状態とする、すなわち図７（Ｂ）の状態を再現することが可能になる。過去のアーム状態の再現は、例えば、過去タイミングでのアーム２０の位置姿勢情報を読み出して、当該位置姿勢情報に対応する位置姿勢をアーム２０に取らせることで実現可能である。ここで、位置姿勢情報とはアーム２０の位置姿勢を特定する情報である。例えば、アーム２０にＮ個の関節が含まれる場合、各関節の関節角の値を設定することで、Ｎ個の関節角値を決定すれば、当該Ｎ個の関節角値を用いることで、フォワードキネマティクス等によりアーム２０の姿勢は特定できる。よって例えば、位置姿勢情報とは関節角の値の組であるが、これには限定されず各関節を駆動させるモーター（広義にはアクチュエーター）の駆動量を位置姿勢情報として用いてもよい。
【００５７】
本実施形態の手法であれば、停止判定処理に用いる判定基準値（閾値）は、厳密に設定する必要はない。図８の例であれば３Ｎ程度の値を設定すればよいため、専門的な知識がない一般的なユーザーであっても閾値を設定することができる。図８の例であれば、干渉の非発生時の力覚センサー値とは明確に区別できる程度に大きく、且つ干渉時に発生しても把持物等の損傷のおそれがない程度に小さい力覚センサー値を閾値とすればよい。
【００５８】
なお、特許文献１にも、ツール把持位置のズレを力覚センサーを用いて補正する手法が開示されており、これを応用することでオーバーランの補正が可能とも考えられる。しかし、特許文献１は、位置ズレが大きいほど荷重がかかる事を前提として、低荷重方向に収束させる手法である。特許文献１においては、適切でない位置へずれてしまった場合（狭義にはオーバーランが発生した場合）には、より適切な位置（狭義にはオーバーランの発生していない位置）を、その都度求める必要がある。本実施形態では、停止すべき状況であったにもかかわらず、そのタイミングの検出が困難である等の理由で、停止できなかった状況を想定している。つまり、過去のどこかのタイミングにおいて、アーム２０が適切な位置姿勢を取っていた、ということが前提である。そうであれば、オーバーランをしたときにわざわざ新たに適切な位置を、ロボットを動かしながら（力覚センサー値を調べながら）探索する必要性は薄い。具体的には、過去に取っていたであろう適切な位置姿勢を特定し、特定後に当該適切な位置姿勢となるようなロボット制御を行えばよく、適切な位置姿勢の探索においてロボット制御を行う必要はない。つまり、本実施形態の手法は過去の状態を再現することで、特許文献１に比べて軽い処理負荷でオーバーラン補正を行うことが可能である。また、特許文献１では、位置ズレが大きいほど荷重がかかる事を前提としているため、干渉する対象ツールの弾性が高いものでなければ位置補正に対応できないという課題もある。
【００５９】
さらに、特許文献１の手法はツールスタンド上に設置されたツールを把持するケースに限定されている。しかしアーム等と他の物体との干渉及びオーバーランは、特許文献１で想定しているケース以外にも種々発生するものであり、特許文献１ではそれらに対応できないが、本実施形態の手法であれば状況を限定するものではない。更にいえば、本実施形態の手法を広く捉えた場合、本実施形態に係るロボット３０は、エンドエフェクター３０を備えるアーム２０と、力覚センサー１０とを含み、エンドエフェクター３０が把持する把持物、エンドエフェクター３０及びアーム２０に対する荷重が目標状態となった後、前記アームが移動し、停止した後、前記アームの位置姿勢を前記目標状態となった時点の前記アームの位置姿勢に戻すロボットであると考えることができる。この場合、力覚センサー１０を用いて検出する対象は接触や衝突に限定されるものではない。
【００６０】
例えば図１１に示したように非連続的に（段階的に）回転するダイヤルをロボットのエンドエフェクター３０（例えばハンド）により回転させる作業を考える。このようなダイヤルでは、ある程度の力を加えるまではダイヤルが回転しないため、ロボット制御ではエンドエフェクター３０により加える力を大きくしていく必要がある。一方、所与の力を超えてダイヤルが回転を始めた場合、スタート時の停止点Ｂ１の次の停止点Ｂ２までの回転（図１１のＢ４に示した範囲の回転）には力を要しないため、ある程度の勢いを持って次の停止点Ｂ２まで移動してしまう。そのため、本来はＢ２に停止させることが目的であったにもかかわらず、更に先の停止点Ｂ３やその先まで回転するように過剰に回転をさせてしまうケースが発生しうる。このような場合でも、本実施形態であればオーバーランを自律的に補正可能である。ここでのオーバーランとは、Ｂ２で止めたいのにＢ３やそれ以降まで回転してしまった状態、或いはＢ２で止まってはいるが、Ｂ３へ回転する方向へ力を加えてしまっている状態を表す。
【００６１】
具体的には、ダイヤルを回転させることが可能な程度に大きな力を閾値として停止判定処理を行う。ただし、この判定だけでは勢いが付きすぎてオーバーランしているかもしれないので、Ｂ２で止まったときの状態を再現する。具体的には、力覚センサー値は図１２のＣ１等に示したように停止点ごとに値が大きくなる波形となるため、図１２のＣ２に示したように、停止点Ｂ２に到達し、Ｂ２からＢ３への回転のために力が加わり始めた点を探索すればよい。Ｃ２はダイヤルがＢ２へ到達しており、過剰な力も加わっていない状態であるから、アーム２０にその状態を再現させれば、ダイヤルを所望量だけ回転させる制御が可能になる。
【００６２】
このように、本実施形態の手法は種々の状況で発生するオーバーランを補正することが可能である。つまり、本実施形態は広義には、アーム２０の停止後に、アーム２０の位置姿勢を、過去タイミングにおけるアーム２０の位置姿勢に戻すものと考えることができる。ただし以下では図７（Ａ）〜図７（Ｄ）に示したような衝突、接触を例にとって説明を行う。
【００６３】
衝突、接触に関する場合とは、具体的には、過去タイミングが、アーム２０、又はアーム２０に取り付けられるエンドエフェクター３０、又はエンドエフェクター３０により把持される把持物と、物体とが接触したと判定される接触タイミングである場合に対応する。
【００６４】
このような場合、通常状態では接触していない複数の物体を対象として、力が加わりすぎるような過剰な干渉を抑止しつつ、図７（Ｂ）に示したように接触した状態とすることが可能になる。よって、干渉をそもそも避けるべき状況であれば、アーム２０の制御における限界点を設定することができるため、その後の制御において干渉の可能性を抑止できる。また、治具に把持物等を接触させることで位置決めを行う状況であれば、本実施形態の手法は接触しつつ、且つ過剰な力が加わらない状態を容易に知ることができるため利点が大きい。
【００６５】
以下、本実施形態に係るロボット５０及び制御装置１００等の詳細なシステム構成例について説明した後、具体的な処理の流れについて説明する。
【００６６】
２．システム構成例
図１に示したように、本実施形態に係るロボット５０は、力覚センサー１０と、アーム２０と、エンドエフェクター３０に加えて、アーム２０やエンドエフェクター３０の制御を行う制御部１２０含んでもよい。この場合、制御部１２０は、接触後にアームを停止させる制御（この時点では図７（Ｃ）に示したようにオーバーランしている）、及びアーム２０の位置姿勢を接触時点の位置姿勢に戻す制御を行うことになる。ただし、ロボット５０は図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００６７】
また、アーム２０の位置姿勢を接触時点での位置姿勢に戻すことを考慮すれば、本実施形態に係るロボット５０は、図２に示したように、力覚センサー１０と、アーム２０と、エンドエフェクター３０と、制御部１２０に加えて、記憶部１３０を含んでもよい。
【００６８】
記憶部１３０は、制御部１２０等のワーク領域となるもので、その機能はＲＡＭ等のメモリーやＨＤＤ（ハードディスクドライブ）などにより実現できる。記憶部１３０は、センサー情報と位置姿勢情報のログデータを記憶する。ここでのログデータとは、ロボットの動作中の、センサー情報と位置姿勢情報を、時系列に取得、記憶したデータのことである。
【００６９】
本実施形態の手法では、後述するようにセンサー情報のログデータに基づいて、過去タイミング（狭義には接触タイミング）を判定する接触判定処理を行う。つまり、記憶部１３０は、接触判定処理用に、センサー情報のログデータを記憶する必要がある。また、本実施形態の手法では、過去タイミングでのアーム２０の位置姿勢を再現する必要があり、それには過去タイミングを特定するだけでは足らず、過去タイミングでの位置姿勢情報も必要となる。つまり、記憶部１３０は、ロボット動作中の各タイミングにおいて、センサー情報と位置姿勢情報を対応付けて記憶することになる。
【００７０】
記憶部１３０が上述したログデータを記憶しておけば、制御部１２０は、記憶部１３０から読み出された過去タイミングにおける位置姿勢情報に基づいて、アーム２０の位置姿勢を、過去タイミングにおける位置姿勢に移行させる制御を行うことで、図７（Ｂ）に示したように、接触タイミングでのアーム２０の位置姿勢を再現することが可能になる。
【００７１】
また本実施形態の手法は、図３に示したように、エンドエフェクター３０を備えるアーム２０と、力覚センサー１０とを含むロボット５０を動作させる制御装置１００であって、ロボット５０に、エンドエフェクター３０が把持する把持物、エンドエフェクター３０及びアーム２０のいずれかが物体と接触した後、アーム２０が停止した場合には、アーム２０の位置姿勢を物体との接触時点のアーム２０の位置姿勢に移動させる制御装置１００に適用できる。
【００７２】
この場合、制御装置１００は、例えば図３に示したように、センサー情報取得部１１０と、制御部１２０を含んでもよい。センサー情報取得部１１０は、ロボット５０の力覚センサー１０から、力覚センサー１０の出力（センサー情報）を取得する。制御部１２０は、力覚センサー１０の出力に基づいて、アーム２０の停止制御及びアーム２０を接触時点での位置姿勢に戻す制御を行う。なお、図３には不図示であるが、制御装置１００は図２のロボット５０と同様に、センサー情報と位置姿勢情報のログデータを記憶する記憶部を含んでもよい。
【００７３】
また、本実施形態の手法は、エンドエフェクター３０を備えるアーム２０と、力覚センサー１０とを含むロボット５０を含み、ロボット５０は、エンドエフェクター３０が把持する把持物、エンドエフェクター３０及びアーム２０のいずれかが物体と接触した後、アーム２０が停止した場合には、アーム２０の位置姿勢を物体との接触時点のアーム２０の位置姿勢に移動させるロボットシステムに適用できる。ここでのロボットシステムとは、図３の全体に相当するシステムであってもよく、ロボット５０と、ロボット５０の制御を行う制御装置１００を含んでもよい。或いは、ロボット５０の制御で撮像画像を用いる場合には、ロボットシステムは、当該撮像画像を撮像する撮像装置を含んでもよい。この場合、ロボットシステムは、ロボット５０と、ロボット５０以外に設けられる（例えば作業台上に配置される）撮像装置とを含むものとなる。その他、ロボットシステムに含まれるロボット５０以外の構成は、種々の変形実施が可能である。
【００７４】
ここでのロボットとは、図４に示したように、ＰＣ等の装置２００と、ロボット本体３００と、を含むロボットであってもよい。図４の構成であれば、装置２００に図１等の制御部１２０が含まれる、或いは装置２００が図３に示した制御装置１００に対応することになる。そしてロボット本体３００は、アーム２０と、エンドエフェクター３０を含む。
【００７５】
なお、本実施形態に係るロボットの構成例は図４に限定されない。例えば、図５に示したように、ロボットは、ロボット本体３００と、ベースユニット部３５０を含んでもよい。本実施形態に係るロボットは図５に示したように双腕ロボットであってもよく、頭部や胴体に相当する部分に加え、第１のアーム２０−１と第２のアーム２０−２を含む。図５では第１のアーム２０−１は、関節２１，２３と、関節の間に設けられるフレーム２５，２７から構成され、第２のアーム２０−２についても同様のものとしたがこれに限定されない。なお、図５では２本のアームを有する双腕ロボットの例を示したが、本実施形態のロボットは３本以上のアームを有してもよい。
【００７６】
ベースユニット部３５０は、ロボット本体３００の下部に設けられ、ロボット本体３００を支持する。図５の例では、ベースユニット部３５０には車輪等が設けられ、ロボット全体が移動可能な構成となっている。ただし、ベースユニット部３５０が車輪等を持たず、床面等に固定される構成であってもよい。図５のロボットシステムでは、ベースユニット部３５０に図４に示した装置２００が格納されることで、ロボット本体３００と装置２００とが一体として構成される。
【００７７】
或いは、ＰＣ等の装置２００のように、特定の制御用の機器を設けることなく、ロボットに内蔵される基板（更に具体的には基板上に設けられるＩＣ等）により、上記の制御部１２０を実現するとともに、ロボット制御を実行するロボットが考えられる。
【００７８】
また、図６に示すように、制御装置１００やロボットの制御部１２０等（以下制御装置等）の機能は、有線及び無線の少なくとも一方を含むネットワーク４００を介して、ロボットと通信接続されたサーバー５００により実現されてもよい。
【００７９】
或いは本実施形態では、本発明の制御装置等の処理の一部を、サーバー５００側の制御装置等が行ってもよい。この場合には、ロボット側に設けられた制御装置等との分散処理により、当該処理を実現する。
【００８０】
そして、この場合に、サーバー５００側の制御装置等は、本発明の制御装置等における各処理のうち、サーバー５００の制御装置等に割り当てられた処理を行う。一方、ロボットに設けられた制御装置等は、本発明の制御装置等の各処理のうち、ロボットの制御装置等に割り当てられた処理を行う。
【００８１】
例えば、本発明の制御装置等が第１〜第Ｍ（Ｍは整数）の処理を行うものであり、第１の処理がサブ処理１ａ及びサブ処理１ｂにより実現され、第２の処理がサブ処理２ａ及びサブ処理２ｂにより実現されるように、第１〜第Ｍの各処理が複数のサブ処理に分割できる場合を考える。この場合、サーバー５００側の制御装置等がサブ処理１ａ、サブ処理２ａ、・・・サブ処理Ｍａを行い、ロボット側に設けられた制御装置等がサブ処理１ｂ、サブ処理２ｂ、・・・サブ処理Ｍｂを行うといった分散処理が考えられる。この際、本実施形態に係る制御装置等、すなわち、第１〜第Ｍの処理を実行する制御装置等とは、サブ処理１ａ〜サブ処理Ｍａを実行する制御装置等であってもよいし、サブ処理１ｂ〜サブ処理Ｍｂを実行する制御装置等であってもよいし、サブ処理１ａ〜サブ処理Ｍａ及びサブ処理１ｂ〜サブ処理Ｍｂの全てを実行する制御装置等であってもよい。更にいえば、本実施形態に係る制御装置等は、第１〜第Ｍの処理の各処理について、少なくとも１つのサブ処理を実行する制御装置等である。
【００８２】
これにより、例えばロボット側の端末装置（例えば図３の制御装置１００）よりも処理能力の高いサーバー５００が、処理負荷の高い処理を行うこと等が可能になる。さらに、サーバー５００が各ロボットの動作を一括して制御することができ、例えば複数のロボットに協調動作をさせること等が容易になる。
【００８３】
また近年は、多品種少数の部品を製造することが増えてきている。そして、製造する部品の種類を変更する場合には、ロボットが行う動作を変更する必要がある。図６に示すような構成であれば、複数のロボットの各ロボットへ教示作業をし直さなくても、サーバー５００が一括して、ロボットが行う動作を変更すること等が可能になる。さらに、各ロボットに対して一つの制御装置１００等を設ける場合に比べて、制御装置１００等のソフトウェアアップデートを行う際の手間を大幅に減らすこと等が可能になる。
【００８４】
３．処理の詳細
次に図９のフローチャートを用いて本実施形態の処理の流れを説明する。図９では接触判定の例について説明するが、本実施形態の手法が接触に限定されないことは上述したとおりである。
【００８５】
この処理が開始されると、まずロボットのアーム２０を動作させる（Ｓ１０１）。例えば、事前に求められているロボットの軌道情報に従ってアーム２０を制御すればよい。アームの動作中には、記憶部１３０に、動作中の位置姿勢情報（狭義にはジョイント角、関節角）と、センサー情報を記憶する（Ｓ１０２）。位置姿勢情報はロボット本体３００のエンコーダーからの情報等により求めることができる。また、センサー情報はセンサー情報取得部１１０が力覚センサー１０から取得した情報を記憶すればよい。
【００８６】
そして、センサー情報（広義には力覚センサー１０の出力）と所与の閾値との比較処理に基づいて、アーム２０を停止させるか否かの停止判定処理を行う（Ｓ１０３）。ここでの停止判定処理は、図８でいう３Ｎ程度の閾値、すなわち専門的な知識を有さないユーザーであっても容易に設定可能な閾値を用いた処理である。力覚センサーからの力覚センサー値が閾値を超えていない場合には、接触は起きていないものとして、Ｓ１０３でＮｏとなり、Ｓ１０１に戻りアーム２０の動作が継続される。一方、力覚センサー値が閾値を超えた場合には、接触が起きたとしてＳ１０３でＹｅｓとなり、アーム２０の動作が停止される（Ｓ１０４）。上述したように、Ｓ１０３の閾値が厳密に求めた値ではないため、Ｓ１０４の停止時点では図７（Ｃ）に示したようにオーバーランが発生していることが想定される。
【００８７】
よってＳ１０４の後は、接触が発生したタイミングを特定して、オーバーランを補正する。具体的には、制御部１２０は、記憶部１３０から読み出したセンサー情報に基づいて、アーム２０又はエンドエフェクター３０又は把持物と、物体との接触を判定する接触判定処理を行い、接触判定処理により接触タイミングと判定されたタイミングでの位置姿勢情報を記憶部１３０から読み出してアーム２０の位置姿勢を制御する。
【００８８】
このようにすれば、センサー情報に基づく接触判定処理により接触タイミングを特定し、特定された接触タイミングにおけるアーム２０の位置姿勢、すなわち図７（Ｂ）に示したようにアーム等と物体が接触した状態での、アーム２０の位置姿勢を再現することが可能になる。具体的な流れがＳ１０５〜Ｓ１１０となる。
【００８９】
まずＳ１０５では、記憶部１３０に記憶された力覚センサー値を読み出す。図８のＡ２が停止タイミングであるとすれば、取得されている力覚センサー値はＡ２以前のものであるから、読み出される力覚センサー値もＡ２以前のものとなる。読み出しは時系列の過去方向（時間軸の降順）で行えばよい。具体的には、時間軸の降順で力覚センサー値を読み出し、力覚センサー値が上昇を開始した点を接触タイミングとして探索する。Ｓ１０６〜Ｓ１０８のループを繰り返すことで、力覚センサー値の上昇開始点が見つかるまで、時間軸の降順で力覚センサー値を読み出して、処理が継続されることになる。図８の例であれば、Ａ２の点から力覚センサー値を横軸左方向に順次読み出していき、上昇を開始した点としてＡ１が見つかるまで探索を行うことになる。
【００９０】
力覚センサー値が上昇を開始した点は、例えば、力覚センサー値の増減が逆転する点、或いは力覚センサー値の差分が変化する点を用いればよい。広義には、制御部１２０は、センサー情報の変化量に基づいて、物体との接触を判定する接触判定処理（接触タイミングを判定する接触判定処理）を行えばよい。
【００９１】
接触判定処理により接触タイミングが特定された場合には、Ｓ１０８のループを抜けて、Ｓ１０９、Ｓ１１０により接触タイミングでのアーム２０の位置姿勢を再現する動作が行われる。具体的には、接触タイミングでの位置姿勢情報（上昇開始点のジョイント角）を記憶部１３０から読みだし（Ｓ１０９）、読み出した位置姿勢情報に対応する位置姿勢となるように、アーム２０を動作させる（Ｓ１１０）。上述したように、記憶部１３０には、力覚センサー値と位置姿勢情報が対応付けて記憶されているため、接触タイミングが特定されれば、当該接触タイミングに対応する姿勢情報も特定することができる。
【００９２】
以上の処理を行うことで、図７（Ｃ）のようにオーバーランが発生した場合にも、図７（Ｂ）の状態であった接触タイミングを特定し、図７（Ｄ）に示したようにアーム２０の位置姿勢を図７（Ｂ）と同様の位置姿勢とする制御が可能になる。
【００９３】
なお、以上では接触という観点から本実施形態における制御部１２０の処理を説明したが、具体的な処理内容を別観点から捉えることも可能である。具体的には、本実施形態の目標となるアーム２０の位置姿勢（図７（Ｂ）の位置姿勢）を特定する際に、力覚センサー値の上昇開始点を基準としている。つまり、過去タイミングとは、センサー情報により表される力覚センサー値が上昇を開始したと判定される上昇開始タイミングであると考えてもよい。
【００９４】
力覚センサー値の上昇開始とは、それまで以上に大きな力が加わったという状況であり、ロボットの作業状態に何らかの変化が起きた場合と推測される。例えば、図１１、図１２を用いて上述したダイヤルの例であっても、特定すべき過去タイミングは力覚センサー値の上昇開始タイミングであることからもわかるように、本来かけるべきでない力が加わってしまった場合に、当該力が加わらない状態に戻すという制御は有用である場面が多い。つまり、接触タイミングとは別観点として、力覚センサー値の上昇開始タイミングを考慮するとよい。尚上述してきたように、狭義には接触時点（接触タイミング）は、力覚センサー１０の出力が上昇を開始したと判定される上昇開始タイミングであり、接触時点のアーム２０の位置姿勢は、上昇開始タイミングでのアーム２０の位置姿勢である。
【００９５】
この場合、制御部１２０は、記憶部１３０から読み出したセンサー情報に基づいて、力覚センサー値の上昇の開始を判定する上昇開始判定処理を行い、上昇開始判定処理により上昇開始タイミングと判定されたタイミングでの位置姿勢情報を記憶部１３０から読み出してアーム２０の位置姿勢を制御する。その際、制御部１２０は、センサー情報の変化量に基づいて、上昇開始判定処理を行う。つまり、処理内容自体は、接触判定処理により接触タイミングを特定する場合と同様に考えることが可能である。
【００９６】
なお、以上の説明では省略していたが、制御部１２０は、力覚センサーからのセンサー情報に対して平滑化処理を行い、平滑化処理後のセンサー情報に基づいて、停止判定処理を行ってもよい。
【００９７】
図１０に平滑化処理前のセンサー情報Ｓ１及び、平滑化処理後のセンサー情報Ｓ２を示す。図１０のＳ１からわかるように、平滑化処理を行わないと、センサー情報の値は高周波での変動が非常に大きく、閾値との比較処理を行う停止判定処理を精度よく行うことができない。それに対して、平滑化処理を行うことで、センサー情報はＳ２に示したように高周波での変動が抑制され、比較的低周波での変動が識別容易となる。一般的に、接触等により生じる力は低周波での変動に寄与するため、平滑化処理を行うことで力覚センサー値を用いた判定を高精度で行うことが可能になる。なお、図８では説明していなかったが、図８の波形も平滑化処理後のセンサー情報を表す。また、ここでは停止判定処理について説明したが、センサー情報の変化量に基づいて行われる接触判定処理（上昇開始判定処理）においても、平滑化処理は有効である。つまり、制御部１２０は、力覚センサーからのセンサー情報に対して平滑化処理を行い、平滑化処理後のセンサー情報に基づいて、接触判定処理（又は上昇開始判定処理）を行ってもよい。
【００９８】
以上で説明したように、制御部１２０は、ロボットのアーム２０を動作させる動作制御を開始し、動作制御の開始後に、停止判定処理としてセンサー情報と所与の閾値との比較処理を行い、比較処理によりセンサー情報により表される値が所与の閾値を超えた場合には、アームの動作を停止する停止制御を行い、停止制御後に、記憶部１３０に記憶された動作制御中のセンサー情報を読み出して、センサー情報により表される値が上昇を開始した上昇開始タイミングを特定し、記憶部１３０に記憶された動作制御中の、アームの位置姿勢を表す位置姿勢情報のうち、上昇開始タイミングでの位置姿勢情報を読み出し、読み出した位置姿勢情報に基づいて、アーム２０の位置姿勢の制御を行う。
【００９９】
このように、動作制御中はセンサー情報と位置姿勢情報のロギングを行い（Ｓ１０２）、停止判定処理により停止（Ｓ１０４）後には、力覚センサー値のログデータから上昇開始タイミングの特定（Ｓ１０５〜Ｓ１０８）、さらに特定された上昇開始タイミングの位置姿勢情報の再現（Ｓ１０９〜Ｓ１１０）という一連の処理を行うことで、オーバーランの自律補正処理が可能になる。
【０１００】
なお、本実施形態のロボット５０の制御部１２０や制御装置１００等は、その処理の一部または大部分をプログラムにより実現してもよい。この場合には、ＣＰＵ等のプロセッサーがプログラムを実行することで、本実施形態のロボット５０の制御部１２０や制御装置１００等が実現される。具体的には、非一時的な情報記憶媒体に記憶されたプログラムが読み出され、読み出されたプログラムをＣＰＵ等のプロセッサーが実行する。ここで、情報記憶媒体（コンピューターにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＤＶＤ、ＣＤ等）、ＨＤＤ（ハードディスクドライブ）、或いはメモリー（カード型メモリー、ＲＯＭ等）などにより実現できる。そして、ＣＰＵ等のプロセッサーは、情報記憶媒体に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち、情報記憶媒体には、本実施形態の各部としてコンピューター（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピューターに実行させるためのプログラム）が記憶される。
【０１０１】
なお、以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。またロボット５０や制御装置１００等の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１０２】
１０  力覚センサー、２０  アーム、２１，２３  関節、２５，２７  フレーム、
３０  エンドエフェクター、５０  ロボット、１００  制御装置、
１１０  センサー情報取得部、１２０  制御部、１３０  記憶部、２００  装置、
３００  ロボット本体、３５０  ベースユニット部、４００  ネットワーク、
５００  サーバー
【図１】
2015085492.tif 000003
【図２】
2015085492.tif 000004
【図３】
2015085492.tif 000005
【図４】
2015085492.tif 000006
【図５】
2015085492.tif 000007
【図６】
2015085492.tif 000008
【図７】
2015085492.tif 000009
【図８】
2015085492.tif 000010
【図９】
2015085492.tif 000011
【図１０】
2015085492.tif 000012
【図１１】
2015085492.tif 000013
【図１２】
2015085492.tif 000014