(57)【要約】【課題】エンドエフェクターの可動部を容易に動作させることができるロボット制御装置を提供すること。【解決手段】第１可動部を備えるエンドエフェクターと、力検出部とを備えたロボットを制御するロボット制御装置であって、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボット制御装置。【選択図】図３
2019030935.tif 000002
【特許請求の範囲】
【請求項１】
第１可動部を備えるエンドエフェクターと、力検出部と、を備えたロボットを制御するロボット制御装置であって、
前記力検出部が検出した外力に応じて前記第１可動部を動かす、
ロボット制御装置。
【請求項２】
前記力検出部は、６軸の力センサーである、
請求項１に記載のロボット制御装置。
【請求項３】
前記力検出部は、トルクセンサーである、
請求項１に記載のロボット制御装置。
【請求項４】
前記エンドエフェクターは、第２可動部を更に備え、
前記力検出部が検出した前記外力が第１方向に加えられた外力であった場合、前記第１可動部と前記第２可動部とを近づける、
請求項１から３のうちいずれか一項に記載のロボット制御装置。
【請求項５】
前記力検出部が検出した前記外力が前記第１方向と異なる第２方向に加えられた外力であった場合、前記第１可動部と前記第２可動部とを遠ざける、
請求項４に記載のロボット制御装置。
【請求項６】
動作モードとして、前記ロボットに予め決められた動作を行わせる第１モード、前記ロボットの動作のオンライン教示を行う第２モード、前記ロボットの動作の直接教示を行う第３モード、前記力検出部が検出した外力に応じて前記第１可動部を動かす第４モードを有する、
請求項１から５のうちいずれか一項に記載のロボット制御装置。
【請求項７】
第１可動部を備えるエンドエフェクターと、力検出部と、を備え、
前記力検出部が検出した外力に応じて前記第１可動部を動かす、
ロボット。
【請求項８】
第１可動部を備えるエンドエフェクターと、力検出部と、を備えたロボットと、
前記ロボットを制御するロボット制御装置と、
を備え、
前記ロボット制御装置は、
前記力検出部が検出した外力に応じて前記第１可動部を動かす、
ロボットシステム。
【請求項９】
第１可動部を備えるエンドエフェクターと、力検出部と、を備えたロボットを制御するロボット制御方法であって、
前記力検出部が検出した外力に応じて前記第１可動部を動かす、
ロボット制御方法。
【請求項１０】
第１可動部を備えるエンドエフェクターと、力検出部と、を備えたロボットを制御するロボット制御装置であって、
プロセッサーを備え、
前記プロセッサーは、
前記力検出部が検出した外力に応じて前記第１可動部を動かす、
ロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ロボット制御装置、ロボット、ロボットシステム、及びロボット制御方法に関する。
【背景技術】
【０００２】
ロボットが備えるエンドエフェクターにドライバー等のツールを保持させ、当該ツールを用いた作業をロボットに行わせる技術についての研究や開発が行われている。
【０００３】
これに関し、ロボットを制御するロボット制御装置に対してロボットの動作を示す情報である教示情報を記憶させる（教示する）教示装置であって、エンドエフェクターにツールの保持又は解放を行わせるスイッチを備える教示装置が知られている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０９−４７９８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、指部、爪部、吸着部等のエンドエフェクターが備える可動部を動かす場合、ユーザーの両手のうち少なくとも片方の手が教示装置の操作に用いられてしまうため、当該可動部の動きに応じて行う必要のある作業をユーザーが上手く行うことができないことがあった。例えば、教示装置が備えるスイッチの押下によってエンドエフェクターにツールの保持又は解放を行わせる場合、エンドエフェクターに保持される前のツール、又はエンドエフェクターから解放された後のツールを支持する作業をユーザーが上手く行うことができないことがあった。また、このような場合、教示装置の大きさ、重量等が、当該作業を行うユーザーにとって負担になることがあった。
【０００６】
ここで、このような問題を解決するため、エンドエフェクターが備える可動部を動かすスイッチをエンドエフェクター自体に設ける方法が考えられている。しかし、このような方法では、当該スイッチに関する配線がロボットに増えてしまうだけではなく、当該スイッチを設ける空間がエンドエフェクターに必要となってしまう。これらのことは、ロボットの製造コストの増大、ロボットの大型化に繋がり得る。また、当該スイッチは、全方位から見えるわけではない。このため、当該方法では、ユーザーの作業領域が制限されてしまう場合があるとともに、ユーザーの手が当該スイッチに届かない場合もあり得る。
【課題を解決するための手段】
【０００７】
上記課題の少なくとも一つを解決するために本発明の一態様は、第１可動部を備えるエンドエフェクターと、力検出部とを備えたロボットを制御するロボット制御装置であって、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボット制御装置である。
この構成により、ロボット制御装置は、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置は、エンドエフェクターの可動部を容易に動作させることができる。
【０００８】
また、本発明の他の態様は、ロボット制御装置において、前記力検出部は、６軸の力センサーである、構成が用いられてもよい。
この構成により、ロボット制御装置は、６軸の力センサーが検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置は、６軸の力センサーが検出した外力に基づいて、エンドエフェクターの可動部を容易に動作させることができる。
【０００９】
また、本発明の他の態様は、ロボット制御装置において、前記力検出部は、トルクセンサーである、構成が用いられてもよい。
この構成により、ロボット制御装置は、トルクセンサーが検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置は、トルクセンサーが検出した外力に基づいて、エンドエフェクターの可動部を容易に動作させることができる。
【００１０】
また、本発明の他の態様は、ロボット制御装置において、前記エンドエフェクターは、第２可動部を更に備え、前記力検出部が検出した前記外力が第１方向に加えられた外力であった場合、前記第１可動部と前記第２可動部とを近づける、構成が用いられてもよい。
この構成により、ロボット制御装置は、力検出部が検出した外力が第１方向に加えられた外力であった場合、第１可動部と第２可動部とを近づける。これにより、ロボット制御装置は、エンドエフェクターに物体の把持を容易に行わせることができる。
【００１１】
また、本発明の他の態様は、ロボット制御装置において、前記力検出部が検出した前記外力が前記第１方向と異なる第２方向に加えられた外力であった場合、前記第１可動部と前記第２可動部とを遠ざける、構成が用いられてもよい。
この構成により、ロボット制御装置は、力検出部が検出した外力が第１方向と異なる第２方向に加えられた外力であった場合、第１可動部と第２可動部とを遠ざける。これにより、ロボット制御装置は、エンドエフェクターに物体の解放を容易に行わせることができる。
【００１２】
また、本発明の他の態様は、ロボット制御装置において、動作モードとして、前記ロボットに予め決められた動作を行わせる第１モード、前記ロボットの動作のオンライン教示を行う第２モード、前記ロボットの動作の直接教示を行う第３モード、前記力検出部が検出した外力に応じて前記第１可動部を動かす第４モードを有する、構成が用いられてもよい。
この構成により、ロボット制御装置は、動作モードとして、ロボットに予め決められた動作を行わせる第１モード、ロボットの動作のオンライン教示を行う第２モード、ロボットの動作の直接教示を行う第３モード、力検出部が検出した外力に応じて第１可動部を動かす第４モードを有する。これにより、ロボット制御装置は、第４モードにおいて、エンドエフェクターの可動部を容易に動作させることができる。
【００１３】
また、本発明の他の態様は、第１可動部を備えるエンドエフェクターと、力検出部とを備え、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボットである。
この構成により、ロボットは、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボットは、エンドエフェクターの可動部を容易に動作させることができる。
【００１４】
また、本発明の他の態様は、第１可動部を備えるエンドエフェクターと、力検出部とを備えたロボットと、前記ロボットを制御するロボット制御装置と、を備え、前記ロボット制御装置は、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボットシステムである。
この構成により、ロボットシステムは、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボットシステムは、エンドエフェクターの可動部を容易に動作させることができる。
【００１５】
また、本発明の他の態様は、第１可動部を備えるエンドエフェクターと、力検出部とを備えたロボットを制御するロボット制御方法であって、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボット制御方法である。
この構成により、ロボット制御方法は、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボット制御方法は、エンドエフェクターの可動部を容易に動作させることができる。
【００１６】
また、本発明の他の態様は、第１可動部を備えるエンドエフェクターと、力検出部とを備えたロボットを制御するロボット制御装置であって、プロセッサーを備え、前記プロセッサーは、前記力検出部が検出した外力に応じて前記第１可動部を動かす、ロボット制御装置である。
この構成により、ロボット制御装置は、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置は、エンドエフェクターの可動部を容易に動作させることができる。
【００１７】
以上により、ロボット制御装置、ロボット、ロボットシステム、及びロボット制御方法は、力検出部が検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置、ロボット、ロボットシステム、及びロボット制御方法は、エンドエフェクターの可動部を容易に動作させることができる。
【図面の簡単な説明】
【００１８】
【図１】実施形態に係るロボットシステム１の構成の一例を示す図である。
【図２】複数の情報処理装置によってロボット制御装置３０が構成される場合におけるロボット制御装置３０のハードウェア構成の一例である。
【図３】ロボット制御装置３０の機能構成の一例を示す図である。
【図４】第１力検出部Ｃ１が検出した外力に応じて、第１エンドエフェクターＥ１が備える複数の可動部Ｈ１をロボット制御装置３０が動かす処理の流れの一例を示す図である。
【図５】実施形態の変形例に係るロボットシステム２の一例を示す構成図である。
【発明を実施するための形態】
【００１９】
＜実施形態＞
以下、本発明の実施形態について、図面を参照して説明する。
【００２０】
＜ロボットシステムの概要＞
ロボットシステム１の概要について説明する。図１は、実施形態に係るロボットシステム１の構成の一例を示す図である。
【００２１】
ロボットシステム１は、例えば、ユーザーからの操作に応じて、ロボットが備えるエンドエフェクターによるツールの保持又は解放をロボットに行わせる。当該ツールは、例えば、電動ドライバーである。なお、当該ツールは、電動ドライバーに代えて、スパナ、ケーブル、治具等の他の道具であってもよい。例えば、ロボットシステム１は、ユーザーからの操作に応じて、ロボットが備えるエンドエフェクターによるツールの保持をロボットに行わせる。そして、ロボットシステム１は、当該ツールによる作業をロボットに行わせる。また、当該作業をロボットに行わせた後、ロボットシステム１は、ユーザーからの操作に応じて、ロボットが備えるエンドエフェクターによるツールの解放をロボットに行わせる。
【００２２】
ここで、ロボットシステム１と異なるロボットシステムＸ（例えば、従来のロボットシステム）では、ロボットを制御するロボット制御装置にロボットの動作を示す情報である教示情報を記憶させる（教示する）教示装置が備えるスイッチに対する操作によって、ユーザーは、エンドエフェクターが備える可動部を動かす場合がある。この場合、ロボットシステムＸでは、ユーザーの両手のうち少なくとも片方の手が教示装置の操作に用いられてしまうため、当該可動部の動きに応じて行う必要のある作業をユーザーが上手く行うことができないことがあった。例えば、教示装置が備えるスイッチの押下によってエンドエフェクターにツールの保持又は解放を行わせる場合、エンドエフェクターに保持される前のツール、又はエンドエフェクターから解放された後のツールを支持する作業をユーザーが上手く行うことができないことがあった。また、このような場合、教示装置の大きさ、重量等が、当該作業を行うユーザーにとって負担になることがあった。
【００２３】
このような問題を解決するため、エンドエフェクターが備える可動部を動かすスイッチをエンドエフェクター自体に設ける方法が考えられている。しかし、このような方法では、当該スイッチに関する配線がロボットに増えてしまうだけではなく、当該スイッチを設ける空間がエンドエフェクターに必要となってしまう。これらのことは、ロボットの製造コストの増大、ロボットの大型化に繋がり得る。また、当該スイッチは、全方位から見えるわけではない。このため、当該方法では、ユーザーの作業領域が制限されてしまう場合があるとともに、ユーザーの手が当該スイッチに届かない場合もあり得る。
【００２４】
そこで、ロボットシステム１は、可動部を備えるエンドエフェクターと、力検出部とを備えたロボットと、当該ロボットを制御するロボット制御装置と、を備える。そして、ロボット制御装置は、力検出部が検出した外力に応じて可動部を動かす。これにより、ロボットシステム１は、エンドエフェクターの可動部を容易に動作させることができる。なお、ロボットシステム１において、ロボットは、ロボット制御装置を内蔵する構成であってもよく、外付けのロボット制御装置と無線又は有線によって互いに通信可能に接続される構成であってもよい。
【００２５】
以下では、ロボットシステム１の構成と、ロボットシステム１が行う処理のうち、力検出部が検出した外力に応じて、エンドエフェクターが備える可動部を動かす処理とについて説明する。
【００２６】
＜ロボットシステムの構成＞
まず、ロボットシステム１の構成について説明する。
図１は、実施形態に係るロボットシステム１の構成の一例を示す図である。ロボットシステム１は、上記のロボットの一例であるロボット２０と、上記の教示装置の一例である教示装置４０を備える。また、ロボット２０は、上記のロボット制御装置の一例であるロボット制御装置３０を内蔵する。なお、ロボットシステム１は、教示装置４０を備えない構成であってもよい。また、ロボット制御装置３０は、教示装置４０と一体に構成されてもよい。
【００２７】
ロボット２０は、第１アームＡ１と、第２アームＡ２と、第１アームＡ１及び第２アームＡ２を支持する支持台Ｂと、支持台Ｂの内側にロボット制御装置３０を備える双腕ロボットである。なお、ロボット２０は、双腕ロボットに代えて、３本以上のアームを備える複腕ロボットであってもよく、１本のアームを備える単腕ロボットであってもよい。また、ロボット２０は、スカラ（水平多関節）ロボット、直交座標ロボット、円筒型ロボット等の他のロボットであってもよい。直交座標ロボットは、例えば、ガントリロボットである。
【００２８】
支持台Ｂは、ロボット２０が設置された設置面に直交する方向に沿って２つの部分に分割されている。なお、支持台Ｂは、分割されていない構成であってもよく、３つ以上の部分に分割されている構成であってもよい。当該２つの部分のうち当該設置面から遠い方の部分は、当該２つの部分のうち当該設置面から近い方の部分に対して回動可能である。当該遠い方の部分が回動する場合の回動面は、例えば、当該設置面に対して平行である。なお、当該回動面は、当該設置面に対して非平行であってもよい。
【００２９】
第１アームＡ１は、第１エンドエフェクターＥ１と、第１マニピュレーターＭ１と、第１力検出部Ｃ１を備える。
【００３０】
第１エンドエフェクターＥ１は、物体を保持するエンドエフェクターである。この一例において、第１エンドエフェクターＥ１は、第１エンドエフェクターＥ１の可動部として１以上の可動部Ｈ１を備える。以下では、一例として、第１エンドエフェクターＥ１が複数の可動部Ｈ１を備える場合について説明する。可動部Ｈ１のそれぞれは、例えば、第１エンドエフェクターＥ１の指部である。第１エンドエフェクターＥ１は、可動部Ｈ１同士を近づけて物体を挟んで持つことにより、当該物体を保持する。なお、可動部Ｈ１のそれぞれは、これに代えて、空気の吸引により物体を持ち上げる吸着部等の何らかの動作を行うことが可能な他の可動部であってもよい。なお、この一例において、保持するとは、物体を持ち上げることが可能な状態にすることを意味する。
【００３１】
第１エンドエフェクターＥ１は、ケーブルによってロボット制御装置３０と通信可能に接続されている。これにより、第１エンドエフェクターＥ１は、ロボット制御装置３０から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ（Universal  Serial  Bus）等の規格によって行われる。また、第１エンドエフェクターＥ１は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００３２】
第１マニピュレーターＭ１は、７つの関節と、第１撮像部２１を備える。また、当該７つの関節のそれぞれは、図示しないアクチュエーターを備える。すなわち、第１マニピュレーターＭ１を備える第１アームＡ１は、７軸垂直多関節型のアームである。第１アームＡ１は、支持台Ｂと、第１エンドエフェクターＥ１と、第１マニピュレーターＭ１と、当該７つの関節それぞれのアクチュエーターとによる連携した動作によって７軸の自由度の動作を行う。なお、第１アームＡ１は、６軸以下の自由度で動作する構成であってもよく、８軸以上の自由度で動作する構成であってもよい。
【００３３】
第１アームＡ１が７軸の自由度で動作する場合、第１アームＡ１は、６軸以下の自由度で動作する場合と比較して取り得る姿勢が増える。これにより第１アームＡ１は、例えば、動作が滑らかになり、更に第１アームＡ１の周辺に存在する物体との干渉を容易に回避することができる。また、第１アームＡ１が７軸の自由度で動作する場合、第１アームＡ１の制御は、第１アームＡ１が８軸以上の自由度で動作する場合と比較して計算量が少なく容易である。
【００３４】
第１マニピュレーターＭ１が備える７つのアクチュエーターはそれぞれ、ケーブルによってロボット制御装置３０と通信可能に接続されている。これにより、当該アクチュエーターは、ロボット制御装置３０から取得される制御信号に基づいて、第１マニピュレーターＭ１を動作させる。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。また、第１マニピュレーターＭ１が備える７つのアクチュエーターのうちの一部又は全部は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００３５】
第１撮像部２１は、例えば、ＣＣＤ（Charge  Coupled  Device）、ＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）等の、集光された光を電気信号に変換する撮像素子を備えたカメラである。この一例において、第１撮像部２１は、第１マニピュレーターＭ１の一部に備えられる。そのため、第１撮像部２１は、第１マニピュレーターＭ１の動きに応じて移動する。また、第１撮像部２１が撮像可能な範囲は、第１アームＡ１の動きに応じて変化する。第１撮像部２１は、当該範囲の二次元画像を撮像する。なお、第１撮像部２１は、当該範囲の静止画像を撮像する構成であってもよく、当該範囲の動画像を撮像する構成であってもよい。
【００３６】
また、第１撮像部２１は、ケーブルによってロボット制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、第１撮像部２１は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００３７】
第１力検出部Ｃ１は、第１エンドエフェクターＥ１と第１マニピュレーターＭ１の間に備えられる。第１力検出部Ｃ１は、例えば、力センサーである。第１力検出部Ｃ１は、第１エンドエフェクターＥ１に作用した外力、又は第１エンドエフェクターＥ１により保持された物体に作用した外力を検出する。当該外力には、第１エンドエフェクターＥ１を並進させる並進力、又は当該物体を並進させる並進力が含まれる。また、当該外力には、第１エンドエフェクターＥ１を回転させる回転モーメント（トルク）、又は当該物体を回転させる回転モーメント（トルク）が含まれる。より具体的には、第１力検出部Ｃ１は、第１力検出部Ｃ１に対応付けられた第１力検出座標系におけるＸ軸、Ｙ軸、Ｚ軸、Ｕ軸、Ｖ軸、Ｗ軸のそれぞれに沿った方向に作用した当該外力を検出する。ここで、Ｕ軸は、当該Ｘ軸周りの回転における回転角を示す軸のことである。また、Ｖ軸は、当該Ｙ軸周りの回転における回転角を示す軸のことである。また、Ｗ軸は、当該Ｚ軸周りの回転における回転角を示す軸のことである。すなわち、当該Ｘ軸に沿った方向に作用した外力は、当該Ｘ軸に沿った方向に第１エンドエフェクターＥ１又は当該物体を並進させる並進力のことである。また、当該Ｙ軸に沿った方向に作用した外力は、当該Ｙ軸に沿った方向に第１エンドエフェクターＥ１又は当該物体を並進させる並進力のことである。また、当該Ｚ軸に沿った方向に作用した外力は、当該Ｚ軸に沿った方向に第１エンドエフェクターＥ１又は当該物体を並進させる並進力のことである。また、当該Ｕ軸に沿った方向に作用した外力は、当該Ｕ軸に沿った方向（すなわち、当該Ｘ軸周り）に第１エンドエフェクターＥ１又は当該物体を回転させる回転モーメントのことである。また、当該Ｖ軸に沿った方向に作用した外力は、当該Ｖ軸に沿った方向（すなわち、当該Ｙ軸周り）に第１エンドエフェクターＥ１又は当該物体を回転させる回転モーメントのことである。また、当該Ｗ軸に沿った方向に作用した外力は、当該Ｗ軸に沿った方向（すなわち、当該Ｚ軸周り）に第１エンドエフェクターＥ１又は当該物体を回転させる回転モーメントのことである。このように、第１力検出部Ｃ１は、６軸（すなわち、当該Ｘ軸、当該Ｙ軸、当該Ｚ軸、当該Ｕ軸、当該Ｖ軸、当該Ｗ軸）の力センサーである。第１力検出部Ｃ１は、検出した外力の大きさを示す値を出力値として含む情報である第１外力情報を通信によりロボット制御装置３０へ出力する。
【００３８】
第１外力情報は、ロボット制御装置３０による第１アームＡ１の制御のうちの第１外力情報に基づく力制御である第１力制御に用いられる。第１力制御は、第１外力情報が示す外力が予め決められた条件である第１終了条件を満たす状態を実現するように第１マニピュレーターＭ１を動作させる制御である。第１終了条件は、第１力制御による第１マニピュレーターＭ１の動作をロボット制御装置３０が終了させるための条件である。例えば、第１力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
【００３９】
なお、第１力検出部Ｃ１は、５軸以下の力センサーであってもよく、７軸以上の力センサーであってもよい。また、第１力検出部Ｃ１は、トルクセンサー等の第１エンドエフェクターＥ１に作用した外力、又は第１エンドエフェクターＥ１により保持された物体に作用した外力を検出する他のセンサーであってもよい。また、第１力検出部Ｃ１は、第１エンドエフェクターＥ１と第１マニピュレーターＭ１の間に備えられる構成に代えて、ロボット２０の他の部位に備えられる構成であってもよい。この場合、第１力検出部Ｃ１は、当該部位に作用する外力を検出する。
【００４０】
第１力検出部Ｃ１は、ケーブルによってロボット制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、第１力検出部Ｃ１とロボット制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００４１】
第２アームＡ２は、第２エンドエフェクターＥ２と、第２マニピュレーターＭ２と、第２力検出部Ｃ２を備える。
【００４２】
第２エンドエフェクターＥ２は、物体を保持するエンドエフェクターである。この一例において、第２エンドエフェクターＥ２は、第２エンドエフェクターＥ２の可動部として１以上の可動部Ｈ２を備える。以下では、一例として、第２エンドエフェクターＥ２が複数の可動部Ｈ２を備える場合について説明する。可動部Ｈ２のそれぞれは、例えば、第２エンドエフェクターＥ２の指部である。第２エンドエフェクターＥ２は、可動部Ｈ２同士を近づけて物体を挟んで持つことにより、当該物体を保持する。なお、可動部Ｈ２のそれぞれは、これに代えて、空気の吸引により物体を持ち上げる吸着部等の何らかの動作を行うことが可能な他の可動部であってもよい。
【００４３】
第２エンドエフェクターＥ２は、ケーブルによってロボット制御装置３０と通信可能に接続されている。これにより、第２エンドエフェクターＥ２は、ロボット制御装置３０から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。また、第２エンドエフェクターＥ２は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００４４】
第２マニピュレーターＭ２の構成は、第１マニピュレーターＭ１の構成と同様であるため、説明を省略する。ただし、第２マニピュレーターＭ２が備える撮像部は、第１撮像部２１に代えて、第２撮像部２２である。第２撮像部２２の構成は、第１撮像部２１の構成と同様の構成であるため、説明を省略する。
【００４５】
第２力検出部Ｃ２の構成は、第１力検出部Ｃ１の構成と同様の構成であるため、説明を省略する。第２力検出部Ｃ２は、第２エンドエフェクターＥ２と第２マニピュレーターＭ２の間に備えられる。第２力検出部Ｃ２は、第２エンドエフェクターＥ２に作用した外力、又は第２エンドエフェクターＥ２により保持された物体に作用した外力を検出する。第２力検出部Ｃ２は、検出した外力の大きさを示す値を出力値として含む情報である第２外力情報を通信によりロボット制御装置３０へ出力する。
【００４６】
第２外力情報は、ロボット制御装置３０による第２アームＡ２の制御のうちの第２外力情報に基づく力制御である第２力制御に用いられる。第２力制御は、第２外力情報が示す外力が予め決められた条件である第２終了条件を満たす状態を実現するように第２マニピュレーターＭ２を動作させる制御である。第２終了条件は、第２力制御による第２マニピュレーターＭ２の動作をロボット制御装置３０が終了させるための条件である。例えば、第２力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
【００４７】
また、ロボット２０は、第３撮像部２３と、第４撮像部２４を備える。
第３撮像部２３は、例えば、ＣＣＤ、ＣＭＯＳ等の、集光された光を電気信号に変換する撮像素子を備えたカメラである。第３撮像部２３は、第４撮像部２４が撮像可能な範囲を第４撮像部２４とともにステレオ撮像可能な部位に備えられる。第３撮像部２３は、ケーブルによってロボット制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、第３撮像部２３は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００４８】
第４撮像部２４は、例えば、ＣＣＤ、ＣＭＯＳ等の、集光された光を電気信号に変換する撮像素子を備えたカメラである。第４撮像部２４は、第３撮像部２３が撮像可能な範囲を第３撮像部２３とともにステレオ撮像可能な部位に備えられる。第４撮像部２４は、ケーブルによって通信可能にロボット制御装置３０と接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、第４撮像部２４は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【００４９】
上記で説明したロボット２０が備える各機能部は、この一例において、ロボット２０に内蔵されたロボット制御装置３０から制御信号を取得する。そして、当該各機能部は、取得した制御信号に基づいた動作を行う。なお、ロボット２０は、ロボット制御装置３０を内蔵する構成に代えて、外部に設置されたロボット制御装置３０により制御される構成であってもよい。また、ロボット２０は、第１撮像部２１、第２撮像部２２、第３撮像部２３、第４撮像部２４のうちの一部又は全部を備えない構成であってもよい。
【００５０】
ロボット制御装置３０は、少なくとも１つのプロセッサーと、少なくとも１つのメモリーとによって構成される。ロボット制御装置３０において、当該少なくとも１つのプロセッサーは、１つの情報処理装置に備えられる構成であってもよく、複数の情報処理装置に分散されて備えられている構成であってもよい。また、ロボット制御装置３０において、当該少なくとも１つのメモリーは、１つの情報処理装置に備えられる構成であってもよく、複数の情報処理装置に分散されて備えられている構成であってもよい。
【００５１】
図１に示した例では、ロボット制御装置３０は、情報処理装置ＰＣ１に備えられた１つのプロセッサーであるプロセッサー３１と、情報処理装置ＰＣ１に備えられた１つのメモリーであるメモリー３２とによって構成されている。なお、情報処理装置ＰＣ１は、プロセッサー３１に加えて、他のプロセッサーを備える構成であってもよく、メモリー３２に加えて、他のメモリーを備える構成であってもよい。
【００５２】
情報処理装置ＰＣ１は、例えば、ワークステーション、デスクトップＰＣ（Personal  Computer）、ノートＰＣ、タブレットＰＣ、多機能携帯電話端末（スマートフォン）、通信機能付きの電子書籍リーダー、ＰＤＡ（Personal  Digital  Assistant）等である。
【００５３】
プロセッサー３１は、例えば、ＣＰＵ（Central  Processing  Unit）である。なお、プロセッサー３１は、ＦＰＧＡ（Field-Programmable  Gate  Array）等の他のプロセッサーであってもよい。プロセッサー３１は、ロボット制御装置３０が備えるメモリーに格納された各種の指令を実行する。また、プロセッサー３１は、他の装置のメモリーに格納された各種の指令を実行する。
【００５４】
メモリー３２は、例えば、ＨＤＤ（Hard  Disk  Drive）、ＳＳＤ（Solid  State  Drive）、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read−Only  Memory）、ＲＯＭ（Read−Only  Memory）、ＲＡＭ（Random  Access  Memory）等を含む。すなわち、メモリー３２は、一時的な記憶装置と、非一時的な記憶装置とを含む。なお、メモリー３２は、情報処理装置ＰＣ１に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。メモリー３２は、プロセッサー３１又は他の装置のプロセッサーが処理する各種の情報、指令３２１、３２２等のコンピューターにより実行可能な各種の指令（例えば、プログラム、コード等）、各種の画像等を格納する。
【００５５】
指令３２１及び指令３２２はそれぞれ、プロセッサー３１がロボット制御装置３０を構成するためにプロセッサー３１が実行する複数の指令（すなわち、コンピューターにより実行可能な複数の指令）のうちの一部である。
【００５６】
また、ロボット制御装置３０は、他の装置と通信を行うため、ハードウェア機能部として通信部３４を備える。
通信部３４は、ＵＳＢ等のデジタル入出力ポート、イーサネット（登録商標）ポート等を含んで構成される。
【００５７】
なお、ロボット制御装置３０は、１つのプロセッサー３１と、１つのメモリー３２とを備える情報処理装置ＰＣ１に代えて、図２に示したように、複数の情報処理装置のうちの一部又は全部によって構成されてもよい。図２は、複数の情報処理装置によってロボット制御装置３０が構成される場合におけるロボット制御装置３０のハードウェア構成の一例である。
【００５８】
図２に示した情報処理装置ＰＣ２は、１つのプロセッサーであるプロセッサー４１と、１つのメモリーであるメモリー４２と、通信部４４を備える。なお、情報処理装置ＰＣ２は、プロセッサー４１に加えて、他のプロセッサーを備える構成であってもよい。また、情報処理装置ＰＣ２は、メモリー４２に加えて、他のメモリーを備える構成であってもよい。
【００５９】
情報処理装置ＰＣ２は、例えば、ワークステーション、デスクトップＰＣ、ノートＰＣ、タブレットＰＣ、多機能携帯電話端末（スマートフォン）、通信機能付きの電子書籍リーダー、ＰＤＡ等である。なお、情報処理装置ＰＣ２は、教示装置４０であってもよい。
【００６０】
プロセッサー４１は、ＣＰＵである。なお、プロセッサー４１は、ＦＰＧＡ等の他のプロセッサーであってもよい。プロセッサー４１は、メモリー３２に格納された各種の指令を実行する。また、プロセッサー４１は、他の装置のメモリーに格納された各種の指令を実行する。
【００６１】
メモリー４２は、例えば、ＨＤＤ、ＳＳＤ、ＥＥＰＲＯＭ、ＲＯＭ、ＲＡＭ等を含む。すなわち、メモリー４２は、一時的な記憶装置と、非一時的な記憶装置とを含む。なお、メモリー４２は、情報処理装置ＰＣ２に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。メモリー４２は、プロセッサー４１又は他の装置のプロセッサーが処理する各種の情報、コンピューターにより実行可能な各種の指令（例えば、プログラム、コード等）、各種の画像等を格納する。
【００６２】
通信部４４は、ＵＳＢ等のデジタル入出力ポート、イーサネット（登録商標）ポート等を含んで構成される。
【００６３】
図２に示した情報処理装置ＰＣ３は、１つのプロセッサーであるプロセッサー５１と、１つのメモリーであるメモリー５２と、通信部５４を備える。なお、情報処理装置ＰＣ３は、プロセッサー５１に加えて、他のプロセッサーを備える構成であってもよい。また、情報処理装置ＰＣ３は、メモリー５２に加えて、他のメモリーを備える構成であってもよい。
【００６４】
情報処理装置ＰＣ３は、例えば、ワークステーション、デスクトップＰＣ、ノートＰＣ、タブレットＰＣ、多機能携帯電話端末（スマートフォン）、通信機能付きの電子書籍リーダー、ＰＤＡ等である。
【００６５】
プロセッサー５１は、ＣＰＵである。なお、プロセッサー５１は、ＦＰＧＡ等の他のプロセッサーであってもよい。プロセッサー５１は、メモリー５２に格納された各種の指令を実行する。また、プロセッサー５１は、他の装置のメモリーに格納された各種の指令を実行する。
【００６６】
メモリー５２は、例えば、ＨＤＤ、ＳＳＤ、ＥＥＰＲＯＭ、ＲＯＭ、ＲＡＭ等を含む。すなわち、メモリー５２は、一時的な記憶装置と、非一時的な記憶装置とを含む。なお、メモリー５２は、情報処理装置ＰＣ３に内蔵されるものに代えて、ＵＳＢ等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。メモリー５２は、プロセッサー５１又は他の装置のプロセッサーが処理する各種の情報、コンピューターにより実行可能な各種の指令（例えば、プログラム、コード等）、各種の画像等を格納する。
【００６７】
通信部５４は、ＵＳＢ等のデジタル入出力ポート、イーサネット（登録商標）ポート等を含んで構成される。
【００６８】
図２に示した例では、情報処理装置ＰＣ１と、情報処理装置ＰＣ２とが無線又は有線によって互いに通信可能に接続されている。また、当該例では、情報処理装置ＰＣ１と、情報処理装置ＰＣ３とがＬＡＮ（Local  Area  Network）を介して無線又は有線によって互いに通信可能に接続されている。また、当該例では、情報処理装置ＰＣ２と、情報処理装置ＰＣ３とがＬＡＮを介して無線又は有線によって互いに通信可能に接続されている。
【００６９】
図２に示した例では、ロボット制御装置３０は、プロセッサー３１と、プロセッサー４１と、プロセッサー５１のうちの少なくとも１つと、メモリー３２と、メモリー４２と、メモリー５２のうちの少なくとも１つとによって構成される。プロセッサー３１と、プロセッサー４１と、プロセッサー５１のうちの２つ以上によってロボット制御装置３０が構成される場合、ロボット制御装置３０を構成する当該２つ以上のプロセッサーは、通信部による通信を行うことにより、連携してロボット制御装置３０の機能を実現する。また、当該場合、当該２つ以上のプロセッサーは、メモリー３２と、メモリー４２と、メモリー５２のうちの少なくとも１つに格納された指令に基づいて、ロボット制御装置３０の機能による処理を実行する。
【００７０】
なお、図２に示した例のように、ロボット制御装置３０が複数の情報処理装置によって構成される場合、教示装置４０は、当該複数の情報処理装置の少なくとも１つと通信可能に接続される。
【００７１】
図１に戻る。ロボット制御装置３０は、ロボット２０を制御する。例えば、ロボット制御装置３０は、第１力検出部Ｃ１が検出した外力に応じて可動部Ｈ１を動かす。これにより、ロボット制御装置３０は、第１エンドエフェクターＥ１の可動部Ｈ１を容易に動作させることができる。また、ロボット制御装置３０は、第２力検出部Ｃ２が検出した外力に応じて可動部Ｈ２を動かす。これにより、ロボット制御装置３０は、第２エンドエフェクターＥ２の可動部Ｈ２を容易に動作させることができる。
【００７２】
また、ロボット制御装置３０は、この一例において、動作モードとして、ロボット２０に予め決められた動作を行わせる第１モード、ロボット２０の動作のオンライン教示を行う第２モード、ロボット２０の動作の直接教示を行う第３モード、力検出部（この一例において、第１力検出部Ｃ１、第２力検出部Ｃ２）が検出した外力に応じて可動部（この一例において、可動部Ｈ１、可動部Ｈ２）を動かす第４モードを有する。オンライン教示は、教示装置４０を介して受け付けた操作（例えば、ジョグ操作）に応じてロボット制御装置３０がロボット２０を動かし、ロボット２０の動作を示す教示情報をロボット制御装置３０に記憶させる（教示する）ことを意味する。オンライン教示については、既知の方法によって行われてもよく、これから開発される方法によって行われてもよい。教示情報は、例えば、ロボット２０の制御点（例えば、ＴＣＰ（Tool  Center  Point）等）を経由させる１以上の教示点を示す情報を含む情報のことである。なお、教示情報は、これに代えて、ロボット２０の動作を示す他の情報であってもよい。直接教示は、ユーザーが手動で第１マニピュレーターＭ１と第２マニピュレーターＭ２とのいずれか一方又は両方を動かし、教示情報をロボット制御装置３０に記憶させる（教示する）ことを意味する。直接教示については、既知の方法によって行われてもよく、これから開発される方法によって行われてもよい。なお、第１モードでは、第２モード又は第３モードによって記憶された教示情報が示す動作を、予め決められた動作としてロボット制御装置３０がロボット２０に行わせる。また、この一例において、第４モードでは、ロボット制御装置３０は、第１マニピュレーターＭ１及び第２マニピュレーターＭ２を動作させない。これは、第１エンドエフェクターＥ１の可動部Ｈ１、第２エンドエフェクターＥ２の可動部Ｈ２の少なくとも一方に対して作業を行うユーザーの安全性を確保するためである。なお、第４モードでは、ロボット制御装置３０は、第１マニピュレーターＭ１と第２マニピュレーターＭ２とのいずれか一方又は両方を動かす構成であってもよい。ロボット制御装置３０は、ユーザーから受け付けた操作に応じて、又は教示装置４０から受け付けた要求に応じて、動作モードを第１モード、第２モード、第３モード、第４モードのいずれかに切り替える。
【００７３】
なお、図１に示した例では、ロボット制御装置３０は、教示装置４０を介してユーザーからの操作を受け付ける。ここで、ロボット制御装置３０は、図示しない入力装置と、図示しない表示装置とのそれぞれと無線又は有線によって互いに通信可能に接続される構成であってもよい。当該入力装置は、キーボード、マウス、タッチパッド等のことである。当該表示装置は、液晶ディスプレイパネル、有機ＥＬ（ElectroLuminescence）ディスプレイパネル等のディスプレイパネルを備えた装置のことである。この場合、ロボット制御装置３０は、当該入力装置を介して、ユーザーから操作を受け付ける。
【００７４】
教示装置４０は、例えば、ティーチングペンダントである。ユーザーから受け付けた操作に応じて、教示動作をロボット制御装置３０に教示する（記憶させる）。また、教示装置４０は、ユーザーから受け付けた操作に応じて、ロボット制御装置３０の動作モードを第１モード、第２モード、第３モード、第４モードのいずれかに切り替える要求をロボット制御装置３０に出力する。
【００７５】
ここで、教示装置４０は、タッチパネルＴＰを備える。
タッチパネルＴＰは、液晶ディスプレイパネル、有機ＥＬディスプレイパネル等のディスプレイパネルを備えた表示装置と一体に構成された入力装置であり、ユーザーからの操作を受け付ける。なお、教示装置４０は、タッチパネルＴＰに代えて、表示装置と入力装置とを別体として備える構成であってもよい。この場合、入力装置は、キーボード、マウス、タッチパッド等である。また、教示装置４０は、タッチパネルＴＰに加えて、１以上のハードウェアキーを備える。ハードウェアキーには、例えば、イネーブルスイッチ、ロボット２０の緊急停止ボタン、専用の鍵を差し込んで回すことによりロボット２０の動作モードを切り替えるロータリースイッチ等が含まれる。
【００７６】
教示装置４０は、ケーブルによってロボット制御装置３０と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。なお、教示装置４０とロボット制御装置３０とは、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によって接続される構成であってもよい。
【００７７】
＜ロボット制御装置の機能構成＞
以下、図３を参照し、ロボット制御装置３０の機能構成について説明する。図３は、ロボット制御装置３０の機能構成の一例を示す図である。
【００７８】
ロボット制御装置３０は、メモリー３２と、通信部３４と、制御部３６を備える。
【００７９】
制御部３６は、ロボット制御装置３０の全体を制御する。制御部３６は、操作受付部３６１と、外力情報取得部３６３と、動作モード切替部３６５と、エンドエフェクター制御部３６７と、マニピュレーター制御部３６９を備える。制御部３６が備えるこれらの機能部は、例えば、プロセッサー３１が、メモリー３２に記憶された指令３２１、３２２等の各種の指令を実行することにより実現される。また、当該機能部のうちの一部又は全部は、ＬＳＩ（Large  Scale  Integration）、ＡＳＩＣ（Application  Specific  Integrated  Circuit）等のハードウェア機能部であってもよい。
【００８０】
操作受付部３６１は、図示しない入力装置がロボット制御装置３０と通信可能に接続されている場合、当該入力装置を介してユーザーからの操作を受け付ける。また、操作受付部３６１は、他の装置（例えば、教示装置４０）からの要求をロボット制御装置３０に対する操作として受け付ける。
【００８１】
外力情報取得部３６３は、第１力検出部Ｃ１からの出力値を含む外力情報を第１力検出部Ｃ１から取得する。また、外力情報取得部３６３は、第２力検出部Ｃ２からの出力値を含む外力情報を第２力検出部Ｃ２から取得する。
【００８２】
動作モード切替部３６５は、操作受付部３６１が受け付けた操作に応じて、ロボット制御装置３０の動作モードを、第１モード、第２モード、第３モード、第４モードのいずれかに切り替える。
【００８３】
エンドエフェクター制御部３６７は、第１エンドエフェクターＥ１が備える１以上の可動部Ｈ１と、第２エンドエフェクターＥ２が備える１以上の可動部Ｈ２とのそれぞれを動作させる。
【００８４】
マニピュレーター制御部３６９は、第１マニピュレーターＭ１と、第２マニピュレーターＭ２とのそれぞれを動作させる。
【００８５】
＜エンドエフェクターが備える可動部をロボット制御装置が動かす処理＞
以下、図４を参照し、第１力検出部Ｃ１が検出した外力に応じて、第１エンドエフェクターＥ１が備える複数の可動部Ｈ１をロボット制御装置３０が動かす処理について説明する。図４は、第１力検出部Ｃ１が検出した外力に応じて、第１エンドエフェクターＥ１が備える複数の可動部Ｈ１をロボット制御装置３０が動かす処理の流れの一例を示す図である。なお、第２力検出部Ｃ２が検出した外力に応じて、第２エンドエフェクターＥ２が備える複数の可動部Ｈ２をロボット制御装置３０が動かす処理についての説明は、以下の説明を、第１力検出部Ｃ１、第１外力情報、可動部Ｈ１のそれぞれを、第２力検出部Ｃ２、第２外力情報、可動部Ｈ２のそれぞれに読み替えた説明と同様であるため、説明を省略する。
【００８６】
動作モード切替部３６５は、ロボット制御装置３０の動作モードを第４モードに切り替える操作を操作受付部３６１が受け付けるまで待機する（ステップＳ１１０）。ここで、ロボット制御装置３０の動作モードの切り替えについて説明する。
【００８７】
ロボット制御装置３０は、動作モードが意図しない操作によって切り替わった場合、ロボット２０に意図しない動作を行わせてしまうことがある。このため、動作モード切替部３６５は、予め決められた条件が満たされなければロボット制御装置３０の動作モードを切り替えない。例えば、教示装置４０は、教示装置４０が備えるロータリースイッチに鍵が差し込まれてから第４モードを示す位置まで回された場合、ロボット制御装置３０の動作モードを第４モードに切り替える要求をロボット制御装置３０に出力する。操作受付部３６１は、ロボット制御装置３０が教示装置４０から当該要求を取得した場合、当該要求を、当該動作モードを第４モードに切り替える操作として受け付ける。この場合、当該予め決められた条件は、当該ロータリースイッチに鍵が差し込まれてから第４モードを示す位置まで回されることである。また、例えば、教示装置４０は、タッチパネルＴＰに予め表示された動作モード切替画面においてユーザーから当該動作モードを第４モードに切り替える操作を受け付けた後、タッチパネルＴＰにパスワード入力画面を表示させる。そして、教示装置４０は、タッチパネルＴＰに表示させたパスワード入力画面に予め決められたパスワードが入力された場合、当該要求をロボット制御装置３０に出力する。この場合、当該予め決められた条件は、タッチパネルＴＰに表示されたパスワード入力画面において予め決められたパスワードが入力されたことである。また、例えば、ロボット制御装置３０に図示しない入力装置及び表示装置が接続されている場合、ロボット制御装置３０は、当該表示装置に予め表示された動作モード切替画面においてユーザーから当該動作モードを第４モードに切り替える操作を受け付けた後、当該表示装置にパスワード入力画面を表示させる。そして、操作受付部３６１は、当該表示装置に表示させたパスワード入力画面に予め決められたパスワードが入力された場合、動作モード切替部３６５は、ステップＳ１１０において、ロボット制御装置３０の動作モードを第４モードに切り替える操作を操作受付部３６１が受け付けたと判定する。この場合、当該予め決められた条件は、当該表示装置に表示されたパスワード入力画面において予め決められたパスワードが入力されたことである。なお、当該予め決められた条件は、他の条件であってもよい。
【００８８】
ロボット制御装置３０の動作モードを第４モードに切り替える操作を操作受付部３６１が受け付けたと判定した場合（ステップＳ１１０−ＹＥＳ）、動作モード切替部３６５は、ロボット制御装置３０の動作モードを第４モードに切り替える。そして、外力情報取得部３６３は、第１力検出部Ｃ１から第１外力情報を取得する（ステップＳ１２０）。
【００８９】
次に、エンドエフェクター制御部３６７は、ステップＳ１２０において外力情報取得部３６３が第１力検出部Ｃ１から取得した第１外力情報が示す外力が、第１方向に向かって作用した外力である第１方向外力か否かを判定する（ステップＳ１３０）。第１方向は、第１力検出座標系におけるＸ軸、Ｙ軸、Ｚ軸、Ｕ軸、Ｖ軸、Ｗ軸のいずれかに沿った方向のうちの正方向又は負方向のことである。以下では、一例として、当該Ｚ軸の正方向が、第１エンドエフェクターＥ１から第１マニピュレーターＭ１に向かう方向のうち、第１マニピュレーターＭ１が備える関節のうち第１エンドエフェクターＥ１に最も近い関節の回動軸に沿った方向と一致している場合について説明する。また、以下では、一例として、第１方向が、Ｗ軸の正方向である場合について説明する。すなわち、この一例において、第１方向は、当該回動軸に沿って第１エンドエフェクターＥ１を見た場合における時計回りの方向（当該Ｚ軸の正方向に向かって第１エンドエフェクターＥ１を見た場合における時計回りの方向）である。
【００９０】
ステップＳ１２０において外力情報取得部３６３が第１力検出部Ｃ１から取得した第１外力情報が示す外力が第１方向外力であると判定した場合（ステップＳ１３０−ＹＥＳ）、エンドエフェクター制御部３６７は、第１エンドエフェクターＥ１が備える複数の可動部Ｈ１に保持動作を行わせる（ステップＳ１４０）。ここで、保持動作は、当該複数の可動部Ｈ１同士を近づける動作のことである。なお、エンドエフェクター制御部３６７は、保持動作に代えて、他の動作をステップＳ１４０において当該複数の可動部Ｈ１に行わせる構成であってもよい。また、エンドエフェクター制御部３６７は、ステップＳ１３０において、当該外力が第１方向外力であり、且つ、当該外力の大きさが予め決められた閾値である第１閾値以上であるか否かを判定する構成であってもよい。また、エンドエフェクター制御部３６７は、ステップＳ１３０において、当該外力が、当該外力に応じた他の条件を満たすか否かを判定する構成であってもよい。
【００９１】
次に、エンドエフェクター制御部３６７は、ロボット制御装置３０の動作モードを第４モードから他の動作モードに切り替える操作、すなわち、第４モードを終了させる操作を操作受付部３６１が受け付けたか否かを判定する（ステップＳ１５０）。第４モードを終了させる操作を操作受付部３６１が受け付けたと判定した場合（ステップＳ１５０−ＹＥＳ）、エンドエフェクター制御部３６７は、処理を終了する。一方、第４モードを終了させる操作を操作受付部３６１が受け付けていないとエンドエフェクター制御部３６７が判定した場合（ステップＳ１５０−ＮＯ）、外力情報取得部３６３は、ステップＳ１２０に遷移し、第１力検出部Ｃ１から第１外力情報を再び取得する。
【００９２】
一方、ステップＳ１２０において外力情報取得部３６３が第１力検出部Ｃ１から取得した第１外力情報が示す外力が第１方向外力ではないと判定した場合（ステップＳ１３０−ＮＯ）、エンドエフェクター制御部３６７は、当該外力が、第２方向に向かって作用した外力である第２方向外力か否かを判定する（ステップＳ１６０）。第２方向は、第１方向と異なる方向であって第１力検出座標系におけるＸ軸、Ｙ軸、Ｚ軸、Ｕ軸、Ｖ軸、Ｗ軸のいずれかに沿った方向のうちの正方向又は負方向のことである。以下では、一例として、第２方向が、Ｗ軸の負方向である場合について説明する。すなわち、この一例において、第２方向は、当該Ｚ軸の正方向に向かって第１エンドエフェクターＥ１を見た場合における反時計回りの方向である。
【００９３】
ステップＳ１２０において外力情報取得部３６３が第１力検出部Ｃ１から取得した第１外力情報が示す外力が第２方向外力であると判定した場合（ステップＳ１６０−ＹＥＳ）、エンドエフェクター制御部３６７は、第１エンドエフェクターＥ１が備える複数の可動部Ｈ１に解放動作を行わせる（ステップＳ１７０）。ここで、解放動作は、当該複数の可動部Ｈ１同士を遠ざける動作のことである。なお、エンドエフェクター制御部３６７は、解放動作に代えて、他の動作をステップＳ１７０において当該複数の可動部Ｈ１に行わせる構成であってもよい。また、エンドエフェクター制御部３６７は、ステップＳ１６０において、当該外力が第２方向外力であり、且つ、当該外力の大きさが予め決められた閾値である第２閾値以上であるか否かを判定する構成であってもよい。また、エンドエフェクター制御部３６７は、ステップＳ１３０において、当該外力が、当該外力に応じた他の条件を満たすか否かを判定する構成であってもよい。
【００９４】
ステップＳ１７０の処理が行われた後、エンドエフェクター制御部３６７は、ステップＳ１５０に遷移し、第４モードを終了させる操作を操作受付部３６１が受け付けたか否かを判定する。
【００９５】
一方、ステップＳ１２０において外力情報取得部３６３が第１力検出部Ｃ１から取得した第１外力情報が示す外力が第２方向外力ではないとエンドエフェクター制御部３６７が判定した場合（ステップＳ１６０−ＮＯ）、外力情報取得部３６３は、ステップＳ１２０に遷移し、第１力検出部Ｃ１から第１外力情報を再び取得する。
【００９６】
以上のように、ロボット制御装置３０は、第１力検出部Ｃ１が検出した外力に応じて可動部Ｈ１を動かす。これにより、ロボット制御装置３０は、第１エンドエフェクターＥ１の可動部Ｈ１を容易に動作させることができる。また、ロボット制御装置３０は、図４に示した処理と同様の処理によって、第２力検出部Ｃ２が検出した外力に応じて可動部Ｈ２を動かす。これにより、ロボット制御装置３０は、第２エンドエフェクターＥ２の可動部Ｈ２を容易に動作させることができる。
【００９７】
なお、ロボット制御装置３０は、上記において説明した処理であって第１エンドエフェクターＥ１が備える可動部Ｈ１をロボット制御装置３０が動かす処理を、第１モード〜第３モードのいずれかにおいて実行する構成であってもよい。この場合、ロボット制御装置３０は、動作モードとして第４モードを有さなくてもよい。また、当該場合、ロボット制御装置３０は、当該処理の実行を、第１マニピュレーターＭ１の動作が停止している場合において実行することが望ましい。これは、可動部Ｈ１の動きに応じて行う必要のある作業をユーザーが安全に行うことができるようにするためである。
【００９８】
また、ロボット制御装置３０は、第１エンドエフェクターＥ１が複数の可動部Ｈ１を備える場合、ステップＳ１４０とステップＳ１７０の少なくとも一方において、複数の可動部Ｈ１の一部を動作させる構成であってもよい。例えば、ロボット制御装置３０は、第１エンドエフェクターＥ１が複数の可動部Ｈ１として、４つの指部と、１つの掌部とを備える場合、ステップＳ１４０とステップＳ１７０の少なくとも一方において、当該４つの指部と、当該掌部とのいずれか動作させる構成であってもよい。
【００９９】
また、上記において説明したエンドエフェクター制御部３６７は、ロボット制御装置３０と別体の装置が備えるプロセッサーが実現している機能であってもよい。この場合、ロボット制御装置３０は、当該装置を制御し、上記の説明においてエンドエフェクター制御部３６７が行う処理を当該装置に行わせる。また、当該場合、当該装置は、ロボット制御装置３０とともにロボット２０に内蔵される構成であってもよく、ロボット２０の外部に設置され、ロボット２０と無線又は有線によって互いに通信可能に接続される構成であってもよい。
【０１００】
また、上記において説明した第１力検出部Ｃ１は、第１エンドエフェクターＥ１の自重等の重力の影響をキャンセルする調整が行われている構成であってもよく、当該調整が行われていない構成であってもよい。
【０１０１】
また、上記において説明した第１力検出部Ｃ１は、第１エンドエフェクターＥ１と第１マニピュレーターＭ１の間以外の如何なる位置に設けられてもよい。また、上記において説明した第２力検出部Ｃ２は、第２エンドエフェクターＥ２と第２マニピュレーターＭ２の間以外の如何なる位置に設けられてもよい。
【０１０２】
＜実施形態の変形例＞
以下、図５を参照し、実施形態の変形例について説明する。なお、実施形態の変形例では、実施形態と同様な構成部に対して同じ符号を付して説明を省略する。
【０１０３】
図５は、実施形態の変形例に係るロボットシステム２の一例を示す構成図である。実施形態の変形例では、ロボットシステム２は、単腕ロボットであるロボット２０ａと、ロボット２０ａと別体のロボット制御装置３０と、教示装置４０を備える。そして、ロボット制御装置３０は、ロボット２０ａと無線又は有線によって互いに通信可能に接続される。なお、ロボットシステム２は、教示装置４０を備えない構成であってもよい。また、ロボット制御装置３０は、教示装置４０と一体に構成されてもよい。また、ロボットシステム２では、ロボット制御装置３０は、ロボット２０ａに内蔵される構成であってもよい。
【０１０４】
＜ロボットシステムの構成＞
以下、図５を参照し、ロボットシステム２の構成について説明する。
【０１０５】
ロボット２０ａは、第３アームＡ３と、第３アームＡ３を支持する支持台Ｂ３を備える単腕ロボットである。
【０１０６】
第３アームＡ３は、第３エンドエフェクターＥ３と、第３マニピュレーターＭ３と、第３力検出部Ｃ３を備える。
第３エンドエフェクターＥ３は、物体を保持するエンドエフェクターである。この一例において、第３エンドエフェクターＥ３は、第３エンドエフェクターＥ３の可動部として１以上の可動部Ｈ３を備える。以下では、一例として、第３エンドエフェクターＥ３が複数の可動部Ｈ３を備える場合について説明する。可動部Ｈ３のそれぞれは、例えば、第３エンドエフェクターＥ３の指部である。第３エンドエフェクターＥ３は、可動部Ｈ３同士を近づけて物体を挟んで持つことにより、当該物体を保持する。なお、可動部Ｈ３のそれぞれは、これに代えて、空気の吸引により物体を持ち上げる吸着部等の何らかの動作を行うことが可能な他の可動部であってもよい。
【０１０７】
第３エンドエフェクターＥ３は、ケーブルによってロボット制御装置３０と通信可能に接続されている。これにより、第３エンドエフェクターＥ３は、ロボット制御装置３０から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）、ＵＳＢ等の規格によって行われる。また、第３エンドエフェクターＥ３は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【０１０８】
第３マニピュレーターＭ３は、６つの関節を備える。また、６つの関節はそれぞれ、図示しないアクチュエーターを備える。すなわち、第３マニピュレーターＭ３を備える第３アームＡ３は、６軸垂直多関節型のアームである。なお、第３アームＡ３は、これに代えて、６軸水平多関節型のアームであってもよい。第３アームＡ３は、支持台Ｂ３と、第３エンドエフェクターＥ３と、第３マニピュレーターＭ３と、第３マニピュレーターＭ３が備える６つの関節それぞれのアクチュエーターとによる連携した動作によって６軸の自由度の動作を行う。なお、第３アームＡ３は、５軸以下の自由度で動作する構成であってもよく、７軸以上の自由度で動作する構成であってもよい。
【０１０９】
第３マニピュレーターＭ３が備える６つの（関節に備えられた）アクチュエーターはそれぞれ、ケーブルによってロボット制御装置３０と通信可能に接続されている。これにより、当該アクチュエーターは、ロボット制御装置３０から取得される制御信号に基づいて、第３マニピュレーターＭ３を動作させる。なお、ケーブルを介した有線通信は、例えば、イーサネット（登録商標）やＵＳＢ等の規格によって行われる。また、第３マニピュレーターＭ３が備える６つのアクチュエーターのうちの一部又は全部は、Ｗｉ−Ｆｉ（登録商標）等の通信規格により行われる無線通信によってロボット制御装置３０と接続される構成であってもよい。
【０１１０】
第３力検出部Ｃ３の構成は、第１力検出部Ｃ１の構成と同様の構成であるため、説明を省略する。第３力検出部Ｃ３は、第３エンドエフェクターＥ３と第３マニピュレーターＭ３の間に備えられる。第３力検出部Ｃ３は、第３エンドエフェクターＥ３に作用した外力、又は第３エンドエフェクターＥ３により保持された物体に作用した外力を検出する。第３力検出部Ｃ３は、検出した外力の大きさを示す値を出力値として含む情報である第３外力情報を通信によりロボット制御装置３０へ出力する。
【０１１１】
第３外力情報は、ロボット制御装置３０による第３アームＡ３の制御のうちの第３外力情報に基づく力制御である第３力制御に用いられる。第３力制御は、第３外力情報が示す外力が予め決められた条件である第３終了条件を満たす状態を実現するように第３マニピュレーターＭ３を動作させる制御である。第３終了条件は、第３力制御による第３マニピュレーターＭ３の動作をロボット制御装置３０が終了させるための条件である。例えば、第３力制御は、インピーダンス制御等のコンプライアントモーション制御のことである。
【０１１２】
ロボットシステム２では、ロボット制御装置３０は、第３力検出部Ｃ３が検出した外力に応じて可動部Ｈ３を動かす。すなわち、前述の外力情報取得部３６３は、第３力検出部Ｃ３が検出した外力の大きさを示す値を出力値として含む情報である第３外力情報を第３力検出部Ｃ３から取得する。また、エンドエフェクター制御部３６７は、第３エンドエフェクターＥ３が備える１以上の可動部Ｈ３を動かす。これにより、ロボット制御装置３０は、第３エンドエフェクターＥ３の可動部Ｈ３を容易に動作させることができる。
【０１１３】
なお、上記において説明した複数の可動部Ｈ１のうちの１つは、第１可動部の一例である。また、当該複数の可動部Ｈ１のうち第１可動部の一例と異なる可動部Ｈ１は、第２可動部の一例である。
また、上記において説明した複数の可動部Ｈ２のうちの１つは、第１可動部の一例である。また、当該複数の可動部Ｈ２のうち第１可動部の一例と異なる可動部Ｈ２は、第２可動部の一例である。
また、上記において説明した複数の可動部Ｈ３のうちの１つは、第１可動部の一例である。また、当該複数の可動部Ｈ３のうち第１可動部の一例と異なる可動部Ｈ３は、第２可動部の一例である。
【０１１４】
以上のように、ロボット制御装置３０は、力検出部（この一例において、第１力検出部Ｃ１、第２力検出部Ｃ２、第３力検出部Ｃ３のそれぞれ）が検出した外力に応じて第１可動部（この一例において、可動部Ｈ１、可動部Ｈ２、可動部Ｈ３のそれぞれ）を動かす。これにより、ロボット制御装置３０は、エンドエフェクター（この一例において、第１エンドエフェクターＥ１、第２エンドエフェクターＥ２、第３エンドエフェクターＥ３のそれぞれ）の可動部を容易に動作させることができる。
【０１１５】
また、ロボット制御装置３０は、６軸の力センサーが検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置３０は、６軸の力センサーが検出した外力に基づいて、エンドエフェクターの可動部を容易に動作させることができる。
【０１１６】
また、ロボット制御装置３０は、トルクセンサーが検出した外力に応じて第１可動部を動かす。これにより、ロボット制御装置３０は、トルクセンサーが検出した外力に基づいて、エンドエフェクターの可動部を容易に動作させることができる。
【０１１７】
また、ロボット制御装置３０は、力検出部が検出した外力が第１方向に加えられた外力であった場合、第１可動部と第２可動部（この一例において、可動部Ｈ１、可動部Ｈ２、可動部Ｈ３のそれぞれ）とを近づける。これにより、ロボット制御装置３０は、エンドエフェクターに物体の把持を容易に行わせることができる。
【０１１８】
また、ロボット制御装置３０は、力検出部が検出した外力が第１方向と異なる第２方向に加えられた外力であった場合、第１可動部と第２可動部とを遠ざける。これにより、ロボット制御装置３０は、エンドエフェクターに物体の解放を容易に行わせることができる。
【０１１９】
また、ロボット制御装置３０は、動作モードとして、ロボット（この一例において、ロボット２０、ロボット２０ａのそれぞれ）に予め決められた動作を行わせる第１モード、ロボットの動作のオンライン教示を行う第２モード、ロボットの動作の直接教示を行う第３モード、力検出部が検出した外力に応じて第１可動部を動かす第４モードを有する。これにより、ロボット制御装置は、第４モードにおいて、エンドエフェクターの可動部を容易に動作させることができる。
【０１２０】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
【０１２１】
また、以上に説明した装置（例えば、ロボット制御装置３０、教示装置４０）における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、ＯＳ（Operating  System）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ（Compact  Disk）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１２２】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１２３】
１、２…ロボットシステム、２０、２０ａ…ロボット、２１…第１撮像部、２２…第２撮像部、２３…第３撮像部、２４…第４撮像部、３０…ロボット制御装置、３１、４１、５１…プロセッサー、３２、４２、５２…メモリー、３４、４４、５４…通信部、４０…教示装置、３２１、３２２…指令、３６１…操作受付部、３６３…外力情報取得部、３６５…動作モード切替部、３６７…エンドエフェクター制御部、３６９…マニピュレーター制御部、Ａ１…第１アーム、Ａ２…第２アーム、Ａ３…第３アーム、Ｂ、Ｂ３…支持台、Ｃ１…第１力検出部、Ｃ２…第２力検出部、Ｃ３…第３力検出部、Ｅ１…第１エンドエフェクター、Ｅ２…第２エンドエフェクター、Ｅ３…第３エンドエフェクター、Ｈ１、Ｈ２、Ｈ３…可動部、Ｍ１…第１マニピュレーター、Ｍ２…第２マニピュレーター、Ｍ３…第３マニピュレーター、ＴＰ…タッチパネル、ＰＣ１、ＰＣ２、ＰＣ３…情報処理装置
【図１】
2019030935.tif 000003
【図２】
2019030935.tif 000004
【図３】
2019030935.tif 000005
【図４】
2019030935.tif 000006
【図５】
2019030935.tif 000007