(57)【要約】【課題】ティーチングの複数のモードを容易に選択できる技術を提供する。【解決手段】制御装置は、ロボットの教示において、力検出部により検出された力に応じて連続的に可動部を移動させる第１制御モードと、力検出部により検出された力に応じて、ユーザーが入力した移動量で可動部を移動させる第２制御モードと、で可動部を制御する。制御部は、力検出部により検出された力の時間変化と、力の大きさと、の一方又は両方に応じて第１制御モード又は第２制御モードを選択する。【選択図】図９
2019202364.tif 000002
【特許請求の範囲】
【請求項１】
可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置であって、
前記ロボットの教示において、前記力検出部により検出された力に応じて連続的に前記可動部を移動させる第１制御モードと、前記力検出部により検出された力に応じて、ユーザーが入力した移動量で前記可動部を移動させる第２制御モードと、で前記可動部を制御する制御部を備え、
前記制御部は、前記力検出部により検出された力の時間変化と、前記力の大きさと、の一方又は両方に応じて前記第１制御モード又は前記第２制御モードを選択する、制御装置。
【請求項２】
請求項１に記載の制御装置であって、
前記制御部は、前記力の大きさが力閾値以上である時間の長さに応じて前記第１制御モード又は前記第２制御モードを選択する、制御装置。
【請求項３】
請求項２に記載の制御装置であって、
前記制御部は、前記力の大きさが前記力閾値以上である継続時間が０より大きく継続時間閾値未満の場合には前記第２制御モードを選択し、前記継続時間が前記継続時間閾値以上の場合には前記第１制御モードを選択する、制御装置。
【請求項４】
請求項３に記載の制御装置であって、
前記制御部は、前記力の大きさが前記力閾値以上である継続時間が最小時間閾値に達するまでは前記第２制御モードを選択せず、前記継続時間が前記最小時間閾値に達した後に前記第２制御モードを選択する、制御装置。
【請求項５】
請求項４に記載の制御装置であって、
前記最小時間閾値は、５０ｍｓ以上５００ｍｓ以下の範囲に設定される、制御装置。
【請求項６】
請求項２〜４のいずれか一項に記載の制御装置であって、
前記力閾値は、第１の値と、前記第１の値よりも大きい第２の値を含み、
前記制御部は、前記第２制御モードにおいて、前記力の大きさが前記第１の値以上前記第２の値未満である場合には第１移動量で前記可動部を移動させ、前記力の大きさが前記第２の値以上である場合には前記第１移動量よりも大きな第２移動量で前記可動部を移動させる、制御装置。
【請求項７】
請求項２〜６のいずれか一項に記載の制御装置であって、
前記力閾値の入力をユーザーから受け付ける入力受付部を備える、制御装置。
【請求項８】
請求項１に記載の制御装置であって、
前記制御部は、前記力の大きさが第１の値以上第２の値未満である場合には前記第２制御モードを選択し、前記力の大きさが前記第２の値以上である場合には前記第１制御モードを選択する、制御装置。
【請求項９】
可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットと、
請求項１〜８のいずれか一項に記載の制御装置と、
を備えるロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの制御装置及びロボットシステムに関する。
【背景技術】
【０００２】
ロボットの教示作業を簡単に行うためのモードとして、ロボットの手先を教示者が直接保持してロボットの手先位置を操作するダイレクトティーチモードが知られている。ダイレクトティーチモードにおいて連続的に大きくロボットを動かすことが可能だが、連続的に動かすだけでは微小な位置決めを行うことは難しい。そこで、本願の出願人により開示された特許文献１には、外力に応じてロボットを所定方向に所定量だけ移動させるモードを利用して微小な位置決めを行う技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１６４８７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、モードを切り替える際に、ティーチングペンダントで切り替えの指示を行う必要が有り、手間がかかるという問題があった。
【課題を解決するための手段】
【０００５】
本発明の一形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記ロボットの教示において、前記力検出部により検出された力に応じて連続的に前記可動部を移動させる第１制御モードと、前記力検出部により検出された力に応じて、ユーザーが入力した移動量で前記可動部を移動させる第２制御モードと、で前記可動部を制御する制御部を備える。前記制御部は、前記力検出部により検出された力の時間変化と、前記力の大きさと、の一方又は両方に応じて前記第１制御モード又は前記第２制御モードを選択する。
【図面の簡単な説明】
【０００６】
【図１】ロボットシステムの一例の斜視図。
【図２】複数のプロセッサーを有する制御装置の一例を示す概念図。
【図３】複数のプロセッサーを有する制御装置の他の例を示す概念図。
【図４】ロボットと制御装置の機能ブロック図。
【図５】第２制御モードにおける並進力と移動量の関係を示す説明図。
【図６】第２制御モードにおける回転力と回転量の関係を示す説明図。
【図７】ロボットシステムの他の例の斜視図。
【図８】ロボットシステムの他の例の斜視図。
【図９】第１実施形態における力の変化の一例を示すグラフ。
【図１０】第１実施形態における教示処理のフローチャート。
【図１１】第２実施形態における力の変化の例を示すグラフ。
【図１２】第３実施形態における力の変化の例を示すグラフ。
【図１３】第４実施形態における制御モード選択部の機能ブロック図。
【図１４】第４実施形態における教示処理のフローチャート。
【図１５】第４実施形態における第１制御モードと第２制御モードの選択例を示すタイミングチャート。
【図１６】第５実施形態における制御モード選択部の機能ブロック図。
【図１７】第５実施形態における力データ記録処理のフローチャート。
【図１８】第５実施形態における制御モード判定処理のフローチャート。
【図１９】第５実施形態における第１制御モードと第２制御モードの選択例を示すタイミングチャート。
【図２０】閾値の設定画面の一例を示す説明図。
【図２１】閾値の設定画面の他の例を示す説明図。
【発明を実施するための形態】
【０００７】
A.第１実施形態：
図１は、ロボットシステムの一例を示す斜視図である。このロボットシステムは、ロボット１００と、制御装置２００と、教示装置３００とを備えている。制御装置２００は、ロボット１００及び教示装置３００とケーブル又は無線を介して通信可能に接続される。
【０００８】
ロボット１００は、基台１１０と、アーム１２０とを備えている。アーム１２０の先端には力検出部１９０が設置されており、力検出部１９０の先端側にはエンドエフェクター１３０が装着されている。エンドエフェクター１３０としては、任意の種類のエンドエフェクターを使用可能である。図１の例では、図示の便宜上、エンドエフェクター１３０を単純な形状で描いている。アーム１２０は複数の関節を備える。アーム１２０の先端近傍の位置を、ツールセンターポイント（ＴＣＰ）として設定可能である。ＴＣＰは、エンドエフェクター１３０の位置の基準として使用される位置であり、任意の位置に設定可能である。本明細書では、アーム１２０とエンドエフェクター１３０とを併せて「可動部」と呼ぶ。
【０００９】
制御装置２００は、プロセッサー２１０と、メインメモリー２２０と、不揮発性メモリー２３０と、表示制御部２４０と、表示部２５０と、Ｉ／Ｏインターフェース２６０とを有している。これらの各部は、バスを介して接続されている。プロセッサー２１０は、例えばマイクロプロセッサー又はプロセッサー回路である。制御装置２００は、Ｉ／Ｏインターフェース２６０を介してロボット１００と教示装置３００に接続される。なお、制御装置２００をロボット１００の内部に収納してもよい。
【００１０】
なお、制御装置２００の構成としては、図１に示した構成以外の種々の構成を採用することが可能である。例えば、プロセッサー２１０とメインメモリー２２０を図１の制御装置２００から削除し、この制御装置２００と通信可能に接続された他の装置にプロセッサー２１０とメインメモリー２２０を設けるようにしてもよい。この場合には、当該他の装置と制御装置２００とを合わせた装置全体が、ロボット１００の制御装置として機能する。他の実施形態では、制御装置２００は、２つ以上のプロセッサー２１０を有していてもよい。更に他の実施形態では、制御装置２００は、互いに通信可能に接続された複数の装置によって実現されていてもよい。これらの各種の実施形態において、制御装置２００は、１つ以上のプロセッサー２１０を備える装置又は装置群として構成される。
【００１１】
図２は、複数のプロセッサーによってロボットの制御装置が構成される一例を示す概念図である。この例では、ロボット１００及びその制御装置２００の他に、パーソナルコンピューター４００，４１０と、ＬＡＮなどのネットワーク環境を介して提供されるクラウドサービス５００とが描かれている。パーソナルコンピューター４００，４１０は、それぞれプロセッサーとメモリーとを含んでいる。また、クラウドサービス５００においてもプロセッサーとメモリーを利用可能である。これらの複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１２】
図３は、複数のプロセッサーによってロボットの制御装置が構成される他の例を示す概念図である。この例では、ロボット１００の制御装置２００が、ロボット１００の中に格納されている点が図２と異なる。この例においても、複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１３】
教示装置３００は、ロボット１００の作業のための制御プログラム（教示データ）を作成する際に利用される。教示装置３００は、「ティーチングペンダント」とも呼ばれる。ティーチングペンダントの代わりに、教示処理のアプリケーションプログラムをインストールしたパーソナルコンピューターを用いることも可能である。教示処理の際には、制御装置２００と教示装置３００が「制御装置」として機能する。なお、教示装置３００を用いずに、制御装置２００のみを用いて教示処理を行うようにしてもよい。
【００１４】
力検出部１９０は、エンドエフェクター１３０に加えられる外力を計測する６軸の力覚センサーである。力検出部１９０は、固有の座標系であるセンサー座標系Σｆにおいて互いに直交する３つの検出軸Ｘ，Ｙ，Ｚを有し、各検出軸に平行な力の大きさと、各検出軸回りのトルク（力のモーメント）の大きさとを検出する。各検出軸に平行な力を「並進力」と呼ぶ。また、各検出軸回りのトルクを「回転力」と呼ぶ。本明細書において、「力」という用語は、並進力と回転力の両方を含む意味で使用される。
【００１５】
力検出部１９０は、６軸の力を検出するセンサーである必要はなく、より少ない方向の力を検出するセンサーを使用してもよい。また、力検出部１９０をアーム１２０の先端に設ける代わりに、アーム１２０のいずれか１つ以上の関節に力検出部としての力センサーを設けても良い。なお、「力検出部」は、力を検出する機能を有していればよい。すなわち、「力検出部」は、力覚センサーのように直接的に力を検出する装置でもよく、或いは、ＩＭＵ（Inertial Measurement Unit，慣性計測装置）や、アーム１２０のアクチュエーターの電流値から力を検出する装置のように、間接的に力を求める装置でもよい。また、「力検出部」は、ロボット１００に外付けされてもよく、ロボット１００に内蔵されていてもよい。
【００１６】
図４は、ロボット１００と制御装置２００の機能を示すブロック図である。ロボット１００は、上述した力検出部１９０の他に、複数の関節を駆動するための複数のアクチュエーター１７０を有している。制御装置２００のプロセッサー２１０は、不揮発性メモリー２３０に予め格納されたプログラム命令２３２を実行することにより、可動部制御部２１２と、制御モード選択部２１４と、入力受付部２１６の機能を実現する。可動部制御部２１２は、アクチュエーター１７０を制御することによって、アーム１２０を移動させる。制御モード選択部２１４は、力検出部１９０により検出された力の時間変化に応じて、後述する第１制御モード又は第２制御モードを選択する。第１制御モードや第２制御モードにおけるアーム１２０の制御は、可動部制御部２１２によって実行される。可動部制御部２１２と制御モード選択部２１４の機能を実行するプロセッサー２１０は、「制御部」に相当する。教示処理によって作成された教示データ２３４は、不揮発性メモリー２３０に格納される。なお、可動部制御部２１２と制御モード選択部２１４と入力受付部２１６の機能の一部又は全部をハ―ドウェア回路で実現しても良い。
【００１７】
教示処理では、以下に説明する第１制御モードと第２制御モードを含む複数の制御モードを利用可能である。
＜第１制御モード＞
第１制御モードは、力検出部１９０により検出された力に応じて連続的にアーム１２０を移動させるモードである。この第１制御モードは、いわゆるダイレクトティーチと呼ばれるモードであり、ユーザーがエンドエフェクター１３０を保持した状態で力を掛けると、アーム１２０がその力に応じてスムーズに移動する。このとき、制御装置２００は、力制御の一種であるコンプライアンス制御を実行してアーム１２０を移動させる。第１制御モードによる移動を「連続移動」とも呼ぶ。ダイレクトティーチで用いられるコンプライアンス制御は、予め決められた力制御パラメーター（運動方程式の質量Ｍ、粘性係数Ｄ，及び弾性係数Ｋ）に基づいて、アームを移動させる制御である。
＜第２制御モード＞
第２制御モードは、力検出部１９０により検出された力に応じて予め決められた移動量でアーム１２０を移動させるモードである。この第２制御モードでは、ユーザーがエンドエフェクター１３０を軽く叩いたり、軽く引いたり、軽く捻ったりすることによって、予め定められた閾値以上の力が検出されたときに、所定の移動量だけアーム１２０が移動する。この移動量は、並進力に対しては例えば０．１ｍｍから１ｍｍの微小な並進量（並進移動量）に設定され、回転力に対しては例えば０．１度から３度の微小な回転角（回転移動量）に設定される。こうすれば、エンドエフェクター１３０やＴＣＰの位置を微調整することが可能である。第２制御モードによる移動を「定量移動」とも呼ぶ。
【００１８】
第１実施形態では、力検出部１９０により検出された力の時間変化に応じて第１制御モードと第２制御モードのいずれかが選択される。なお、教示処理におけるロボット１００のユーザーを「教示者」とも呼ぶ。
【００１９】
図５は、第２制御モードにおける並進力と移動量の関係を示す説明図である。この例では、ユーザーがエンドエフェクター１３０に対してＹ軸方向に微小な並進力Ｆｙを加えており、この並進力Ｆｙに応じて、アーム１２０とエンドエフェクター１３０を含む可動部がＹ軸方向に予め決められた微小な移動量ΔＬだけ移動する。
【００２０】
図６は、第２制御モードにおける回転力と移動量の関係を示す説明図である。この例では、ユーザーがエンドエフェクター１３０に対してＸ軸回りに微小な回転力Ｍｘを加えており、この回転力Ｍｘに応じて、アーム１２０とエンドエフェクター１３０を含む可動部が、Ｘ軸回りの回転方向に沿って予め決められた微小な回転量ΔＲだけ回転する。回転量ΔＲは、広義の「移動量」に含まれる。なお、第２制御モードにおける回転は、例えばＴＣＰを中心とした回転とすることが好ましい。
【００２１】
第２制御モードにおいて、閾値以上の複数の並進力や複数の回転力が同時に検出された場合には、その移動方法について以下のような選択肢が存在する。制御装置２００は、教示処理の設定画面において、２つの選択肢Ａ１，Ａ２のいずれを採用するかをユーザーが選択できるように構成されていることが好ましい。選択肢Ｂ１，Ｂ２の選択、及び、選択肢Ｃ１，Ｃ２の選択についても同様である。
＜複数方向の並進力が同時に検出された場合の移動方法の選択肢＞
・Ａ１：並進力が検出された複数の方向に、それぞれ所定の移動量ΔＬだけ移動する。
・Ａ２：並進力が検出された複数の方向のうち、力のピークが最も大きな方向のみに所定の移動量ΔＬだけ移動する。
＜複数の軸回りの回転力が同時に検出された場合の移動方法の選択肢＞
・Ｂ１：回転力が検出された複数の軸の回りに、それぞれ所定の回転量ΔＲだけ回転する。
・Ｂ２：回転力が検出された複数の軸のうち、力のピークが最も大きな軸回りのみに所定の回転量ΔＲだけ回転する。
＜並進力と回転力が同時に検出された場合の移動方法の選択肢＞
・Ｃ１：並進力に応じた移動は行わず、回転力が検出された軸の回りに所定の回転量ΔＲだけ回転する。
・Ｃ２：並進力が検出された方向に所定の移動量ΔＬだけ移動するとともに、回転力が検出された軸の回りに所定の回転量ΔＲだけ回転する。
【００２２】
なお、図６に示したようにエンドエフェクター１３０を捻ったときには、回転力と共に並進力も検出される場合が多い。従って、回転力と並進力が同時に検出される場合には、ユーザーが並進方向の移動を意図していない可能性がある。上記選択肢Ｃ１では、このような場合を考慮して、並進力に応じた移動を行わないものとしている。
【００２３】
図７は、ロボットシステムの他の例を示している。この例では、エンドエフェクター１３０が図１に比べて小さく細い形状を有している。このようにエンドエフェクター１３０のサイズが小さい場合には、第１制御モードや第２制御モードを選択するための力をエンドエフェクター１３０に加えにくい。そこで、この例では、力検出部１９０にハンドル１５０を取付け、このハンドル１５０に力を加えることによって、第１制御モードや第２制御モードを選択しながら教示処理を実行できるようにしている。なお、ハンドル１５０に加えられた力を正確に検出するために、ハンドル１５０は力検出部１９０の先端側に設けることが好ましい。
【００２４】
図８は、ロボットシステムの更に他の例を示している。この例では、ロボット１００の基台１１０の下に力検出部１９０が設置されている。この構成では、アーム１２０の途中の部位に力を加えた場合にも、第１制御モードや第２制御モードでアーム１２０を制御することが可能になる。この例から理解できるように、ロボット１００の可動部のうち、力検出部１９０よりも先端側の任意の部位に加えられる力に応じて、第１制御モードや第２制御モードによる制御を実行することができる。
【００２５】
図９は、力検出部１９０で検出される力Ｆの変化の一例を示すグラフである。この例では、ピークが力閾値Ｆth以上となる２つの並進力Ｆ１，Ｆ２が検出されている。第１の並進力Ｆ１は、力閾値Ｆth以上の継続時間が継続時間閾値Ｔth以上である。このような並進力Ｆ１が検出された場合には、第１制御モードが選択され、並進力Ｆ１の方向に沿ってエンドエフェクター１３０の連続的な移動が実行される。すなわち、エンドエフェクター１３０は、ユーザーに把持された状態でユーザーが力を掛ける方向にスムーズに移動する。第２の並進力Ｆ２は、力閾値Ｆth以上の継続時間がゼロより大きく継続時間閾値Ｔth未満であるパルス状の変化を示している。このようなパルス状の並進力Ｆ２は、例えばユーザーがエンドエフェクター１３０を軽く叩く（タップする）ことによって生じる。このようなパルス状の並進力Ｆ２が検出された場合には、第２制御モードが選択されて、並進力Ｆ２の方向に沿って所定の移動量ΔＬだけエンドエフェクター１３０の移動が実行される。回転力に関しても同様に、制御モードの選択と移動が実行されるが、回転力についての説明は省略する。以下で説明する他の例でも同様である。
【００２６】
図９から理解できるように、第１実施形態において、制御モード選択部２１４は、力検出部１９０により検出された力Ｆの時間変化に応じて第１制御モード又は第２制御モードを選択する。より具体的には、力Ｆの大きさが力閾値Ｆth以上である時間の長さに応じて第１制御モード又は第２制御モードが選択される。従って、ユーザーがロボット１００の可動部に加える力の時間変化に応じて、制御モードを容易に切り替えることが可能である。なお、図９において、力が検出されていない状態の制御モードは、第１制御モードと第２制御モードのいずれに設定されていてもよく、また、他の制御モードに設定されていてもよい。いずれの場合にも、力が検出されていないので、第１制御モードにおける連続移動や、第２制御モードにおける定量移動が実行されない点では同じである。
【００２７】
図１０は、第１実施形態における教示処理のフローチャートである。この教示処理は、教示装置３００によってロボット１００が教示モードに設定された状態で、制御装置２００の可動部制御部２１２と制御モード選択部２１４により実行される。
【００２８】
ステップＳ１１１では、力検出部１９０によって力が検出されまで待機し、力が検出されるとステップＳ１１２に進む。ステップＳ１１２では、制御モード選択部２１４が、制御モードの判定と選択を実行する。具体的には、図９で説明したように、力検出部１９０により検出された力の時間変化に応じて第１制御モード又は第２制御モードが選択される。ステップＳ１１２において第１制御モードが選択された場合には、ステップＳ１１３に進み、可動部制御部２１２が第１制御モードによる連続移動を実行する。第１制御モードは、次のステップＳ１１４において第１制御モードによる連続移動が終了したと判定されるまで継続された後に、ステップＳ１１６に進む。なお、第１制御モードは、例えば図９に示したように、力が力閾値Ｆth未満になったときに終了するものと判定してもよい。但し、終了判定用の力閾値として、制御モード選択用の力閾値Ｆthと異なる値を用いても良い。ステップＳ１１２において第２制御モードが選択された場合には、ステップＳ１１５に進み、可動部制御部２１２が第２制御モードによる定量移動を実行した後に、ステップＳ１１６に進む。なお、ステップＳ１１１において検出された力が力閾値Ｆthを越えない場合には、ステップＳ１１２において第１制御モードと第２制御モードのいずれも選択されずにステップＳ１１６に進む。ステップＳ１１６では、教示処理が終了したか否かが判定され、終了していない場合にはステップＳ１１１に戻る。なお、教示処理の終了の指示は、例えばユーザーが教示装置３００を用いて行うことができる。
【００２９】
以上のように、第１実施形態では、力検出部１９０により検出された力の時間変化に応じて第１制御モード又は第２制御モードが選択される。より具体的には、力Ｆの大きさが力閾値Ｆth以上である時間の長さに応じて第１制御モード又は第２制御モードが選択される。従って、ユーザーがロボット１００の可動部に加える力の時間変化に応じて、制御モードを容易に切り替えることが可能である。
【００３０】
なお、上述した第１実施形態では、力Ｆの大きさが力閾値Ｆth以上である継続時間がゼロより大きく継続時間閾値Ｔth未満の場合には第２制御モードを選択し、継続時間が継続時間閾値Ｔth以上の場合には第１制御モードを選択していたが、これ以外の方法で第１制御モードと第２制御モードのいずれかを選択するようにしてもよい。例えば、力Ｆの時間変化に関する以下のような特徴量のいずれかを用いて、第１制御モード又は第２制御モードを選択することが可能である。
＜力の時間変化に関する特徴量の例＞
（ａ）力が力閾値以上となる時間の長さ
（ｂ）力の時間変化の周波数、特に、力の時間変化の周波数スペクトルのピーク周波数
（ｃ）力の微分値、特に、力の微分値のピークの大きさ
（ｄ）力の時間変化と予め設定された力変化パターンとのパターンマッチングによる一致度
【００３１】
上述した第１実施形態では、上記特徴量（ａ）を用いていると考えることができる。このように、力Ｆの時間変化に関する予め定められた特徴量を利用して、第１制御モード又は第２制御モードを選択することが可能である。この場合には、その特徴量に適した閾値が予め設定される。
【００３２】
B.第２実施形態：
図１１は、第２実施形態において力検出部１９０で検出される力の変化の例を示すグラフである。第２実施形態は、制御モードの判定方法が第１実施形態と異なるだけであり、装置構成や処理手順は第１実施形態と同じである。
【００３３】
図１１の第１の並進力Ｆ１と第２の並進力Ｆ２は、第１実施形態の図９に示したものと同じである。図１１において、力閾値としては、図９に示した力閾値Ｆthに等しい第１の値Ｖ１と、第１の値Ｖ１よりも大きな第２の値Ｖ２とを用いている。上述した第１実施形態と同様に、第１の並進力Ｆ１と第２の並進力Ｆ２のピークは、いずれも第１の値Ｖ１（＝Ｆth）以上であり、その継続時間の違いによって第１制御モードと第２制御モードのいずれかが選択されて実行される。第３の並進力Ｆ３も第２の並進力Ｆ２と同様に、第１の値Ｖ１（＝Ｆth）以上である継続時間がゼロより大きく継続時間閾値Ｔth未満なので、第２制御モードが選択されて実行される。但し、第２の並進力Ｆ２のピークは第１の値Ｖ１以上第２の値Ｖ２未満であり、第３の並進力Ｆ３のピークは第２の値Ｖ２以上である。この場合に、第２の並進力Ｆ２に応じて実行される第２制御モードでは、所定の移動量ΔＬ１だけエンドエフェクター１３０の移動が実行される。また、第３の並進力Ｆ３に応じて実行される第２制御モードでは、並進力Ｆ３の方向に沿って所定の移動量ΔＬ２だけエンドエフェクター１３０の移動が実行される。第３の並進力Ｆ３に応じた移動量ΔＬ２は、第２の並進力Ｆ２に応じた移動量ΔＬ１よりも大きな値に設定される。例えば、第１の移動量ΔＬ１は０．１ｍｍに設定され、第２の移動量ΔＬ２は１ｍｍに設定される。
【００３４】
図１１のように、第２制御モードに関して複数の閾値Ｖ１，Ｖ２を設定しておき、力Ｆのピークがそのうちのいずれの閾値以上となるかに応じた異なる移動量ΔＬ１，ΔＬ２で移動を実行するようにすれば、ユーザーが、より粗い微調整とより細かい微調整を容易に使い分けることが可能である。
【００３５】
なお、図１１の例では、力Ｆが第１の値Ｖ１（＝Ｆth）以上である継続時間が継続時間閾値Ｔth以上の場合に第１制御モードが選択されているが、この代わりに、力Ｆが第２の値Ｖ２以上である継続時間が継続時間閾値Ｔth以上の場合に第１制御モードが選択されるようにしてもよい。
【００３６】
以上のように、第２実施形態では、力Ｆの時間変化と、力Ｆの大きさと、の両方に応じて第１制御モード又は第２制御モードが選択されるので、ユーザーが制御モードを容易に切り替えることができる。
【００３７】
C.第３実施形態：
図１２は、第３実施形態において力検出部１９０で検出される力の変化の例を示すグラフである。第３実施形態も、制御モードの判定方法が第１実施形態と異なるだけであり、装置構成や処理手順は第１実施形態と同じである。
【００３８】
図１２の例において、力閾値として第１の値Ｖ１と第２の値Ｖ２が使用される。これらの値Ｖ１，Ｖ２は、図１１に示した値とは異なる値を使用可能である。第３実施形態において、力Ｆの大きさは、一定の周期Ｐｄ毎に判定され、第１実施形態で使用した継続時間閾値Ｔthは使用しない。各周期Ｐｄの始点で力Ｆが第１の値Ｖ１以上になると、第２制御モードが選択されて所定の移動量ΔＬで定量移動が実行される。また、各周期Ｐｄの始点で力Ｆが第２の値Ｖ２以上になると、第１制御モードが選択されて連続移動が実行される。例えば、第１の並進力Ｆ１が加えられると、第１の値Ｖ１以上となった時点から第２制御モードで２回の定量移動が実行され、その後、第２の値Ｖ２以上に達した時点から第１制御モードで連続移動が実行される。一方、第２の並進力Ｆ２が加えられると、第１の値Ｖ１以上になった時点で第２制御モードで１回の定量移動が実行される。
【００３９】
以上のように、第３実施形態では、力Ｆの大きさに応じて第１制御モード又は第２制御モードを選択している。こうすれば、ユーザーがロボット１００の可動部に加える力の大きさに応じて制御モードを容易に切り替えることができる。
【００４０】
D.第４実施形態：
図１３は、第４実施形態における制御モード選択部２１４の機能ブロック図である。第４実施形態は、ロボットシステムの全体構成は第１実施形態と同じであり、制御モード選択部２１４の構成と、教示処理の処理手順が第１実施形態と異なっている。
【００４１】
制御モード選択部２１４は、２つの比較器２７１，２７２と、並進力カウンター２７３と、回転力カウンター２７４と、モード判定部２７５とを有している。力検出部１９０で検出された並進力Ｆは、第１の比較器２７１に入力されて力閾値Ｆthと比較される。この力閾値Ｆthは、図９に示した力閾値Ｆthと同じである。第１の比較器２７１の比較結果を示す２値の判定値Ｆｂは、並進力カウンター２７３に入力され、判定値Ｆｂの値が１である回数がカウントされる。一方、力検出部１９０で検出された回転力Ｍは、第２の比較器２７２に入力されて力閾値Ｍthと比較される。第２の比較器２７２の比較結果を示す２値の判定値Ｍｂは、回転力カウンター２７４に入力され、判定値Ｍｂの値が１である回数がカウントされる。並進力カウンター２７３のカウント値Ｆｃと回転力カウンター２７４のカウント値Ｍｃは、モード判定部２７５に入力される。モード判定部２７５は、判定値Ｆｂ，Ｍｂとカウント値Ｆｃ，Ｍｃから、第１制御モードと第２制御モードのいずれを選択するかの判定を実行する。
【００４２】
図１４は、第４実施形態における教示処理のフローチャートであり、図１５は、そのタイミングチャートである。図１５に示すように、比較器２７１，２７２における比較は所定の周期Ｐｄ毎に実行され、それらの比較結果を示す判定値Ｆｂ，Ｍｂも周期Ｐｄ毎にカウントされてカウント値Ｆｃ，Ｍｃが生成される。
【００４３】
図１４のステップＳ２１１では、モード判定部２７５が、カウント値Ｆｃ，Ｍｃの少なくとも一方が、予め設定された閾値以上であるか否かを判定する。この閾値は、第１制御モードか否かを判定するための閾値である。図１５の例では、閾値は５に設定されている。カウント値Ｆｃ，Ｍｃの少なくとも一方が閾値以上である場合には、ステップＳ２２１に進み、第１制御モードによる連続移動が実行される。第１制御モードは、ステップＳ２２２において比較器２７１，２７２の判定値Ｆｂ，Ｍｂがゼロになるまで継続される。図１５の例では、時刻ｔ６〜ｔ７において、第１制御モードによる連続移動が実行されている。第１制御モードが終了すると、ステップＳ２２３においてカウンター２７３，２７４がゼロにリセットされてステップＳ２１５に進む。
【００４４】
ステップＳ２１１において、カウント値Ｆｃ，Ｍｃの両方が閾値未満である場合には、ステップＳ２１２に進み、回転力が検出されているか否かが判定される。この判定は、回転力の比較器２７２の判定値Ｍｂが１か否かの判定である。回転力が検出されている場合には、ステップＳ２３１に進み、第２制御モードが選択されるとともに、検出された回転力に応じて定量回転が実行される。図１５の例では、時刻ｔ３及び時刻ｔ８において、第２制御モードによる定量回転が実行されている。定量回転が一度実行されるとステップＳ２３２に進み、カウンター２７４のカウント値Ｍｃがインクリメントされた後にステップＳ２１５に進む。
【００４５】
ステップＳ２１２において、回転力が検出されていない場合には、ステップＳ２１３に進み、並進力が検出されているか否かが判定される。この判定は、並進力の比較器２７１の判定値Ｆｂが１か否かの判定である。並進力が検出されている場合には、ステップＳ２４１に進み、第２制御モードが選択されるとともに、検出された並進力に応じて定量並進が実行される。図１５の例では、時刻ｔ１，ｔ２，ｔ４及び、時刻ｔ５〜ｔ６の期間において、第２制御モードによる定量並進が実行されている。定量並進が一度実行されるとステップＳ２４２に進み、カウンター２７３のカウント値Ｆｃがインクリメントされた後にステップＳ２１５に進む。
【００４６】
ステップＳ２１３において、並進力が検出されていない場合には、ステップＳ２１４に進み、カウンター２７３，２７３のカウント値Ｆｃ，Ｍｃがゼロにリセットされた後にステップＳ２１５に進む。ステップＳ２１５では、教示処理が終了したか否かが判定され、終了していない場合にはステップＳ２１１に戻る。
【００４７】
図１５の例において、時刻ｔ３及び時刻ｔ８では、並進力と回転力の両方が検出されており、これに応じて第２制御モードの定量回転が実行されている。すなわち、この例では、並進力と回転力が同時に検出された場合の移動方法として、並進力に応じた移動は行わなず、回転力が検出された軸の回りに所定の回転量だけ回転する方法が採用されている。この移動方法は、第１実施形態で説明した選択肢Ｃ１に相当する。この代わりに、選択肢Ｃ２を使用してもよい。
【００４８】
また、図１５の例において、時刻ｔ５〜ｔ６の間は並進力Ｆが連続的に検出されているが、並進力カウンター２７３のカウント値Ｆｃが閾値（＝５）に達するまでは第２制御モードによる定量移動が４回実行され、カウント値Ｆｃが閾値に達した時刻ｔ６以降に第１制御モードによる連続移動が実行されている。カウント値Ｆｃが閾値に達するまでの時間は、図９に示した継続時間閾値Ｔthと等価である。すなわち、第４実施形態においても、第１実施形態と同様に、力Ｆの大きさが力閾値Ｆth以上である継続時間が継続時間閾値未満の場合には第２制御モードを選択し、継続時間が継続時間閾値以上の場合には第１制御モードを選択する。但し、図９で説明したように、第１実施形態では、力Ｆの大きさが力閾値Ｆth以上となってから継続時間閾値Ｔthが経過するまでの期間は、第２制御モードによる定量移動は実行されない。一方、図１５に示すように、第４実施形態では、力Ｆの大きさが力閾値Ｆth以上となってから継続時間閾値が経過するまでの期間（すなわち、カウント値が閾値に達するまでの期間）は、第２制御モードによる定量移動が実行される。いずれの場合も、力検出部１９０で検出される力の時間変化に応じて第１制御モード又は第２制御モードが選択される点では共通している。従って、ユーザーがロボット１００に可動部に加える力の時間変化に応じて制御モードを容易に切り替えることができる。
【００４９】
E.第５実施形態：
図１６は、第５実施形態における制御モード選択部２１４の機能ブロック図である。第５実施形態は、ロボットシステムの全体構成は第１実施形態及び第４実施形態と同じであり、制御モード選択部２１４の構成と、教示処理の処理手順が第１実施形態及び第４実施形態と異なっている。
【００５０】
制御モード選択部２１４は、２つの比較器２７１，２７２と、モード判定部２７５と、カウンター２７６と、記憶部２７７とを有している。第５実施形態の制御モード選択部２１４は、図１３に示した第４実施形態の制御モード選択部２１４からカウンター２７３，２７４を省略し、カウンター２７６と記憶部２７７を追加した構成を有している。比較器２７１，２７２は、閾値としてプラスの閾値＋Ｆth，＋Ｍthとマイナスの閾値−Ｆth，−Ｍthの両方を使用して３値（−１，０，＋１）の判定値Ｆｂ，Ｍｂを生成する点でも第４実施形態と異なっている。なお、並進力Ｆのプラスの力閾値＋Ｆthは、順方向（例えば＋Ｘ方向）の力閾値を意味しており、マイナスの力閾値−Ｆthは、逆方向（例えば−Ｘ方向）の力閾値を意味している。プラスとマイナスの力閾値±Ｆthは、並進力Ｆの方向を判定するために使用される。この場合に、「力の大きさが力閾値以上」か否かは、力Ｆと力閾値±Ｆthの絶対値との比較によって判定される。回転力Ｍも同様である。
【００５１】
２つの比較器２７１，２７２の３値の判定値Ｆｂ，Ｍｂは、モード判定部２７５に入力される。モード判定部２７５は、２つの判定値Ｆｂ，Ｍｂを記憶部２７７に記録するとともに、記憶部２７７に記録された判定値Ｆｂ，Ｍｂの履歴を参照して、第１制御モードと第２制御モードのいずれを選択するかの判定を実行する。カウンター２７６は、モード判定部２７５による処理周期を決めるために使用される。
【００５２】
図１７は、第５実施形態における力データ記録処理のフローチャートである。この処理は、モード判定部２７５によって実行される。ステップＳ３１１では、カウンター２７６のカウント値ＣＮＴがゼロでない初期値に設定される。ステップＳ３１２では、カウント値ＣＮＴがゼロか否かが判定され、ゼロで無ければステップＳ３１３に進み、カウント値ＣＮＴが１つデクリメントされてステップＳ３１２に戻る。ステップＳ３１２において、カウント値ＣＮＴが０に達すると、ステップＳ３１４に進む。ステップＳ３１４では、比較器２７１，２７２が力検出部１９０から力Ｆ，Ｍを取得して、それぞれの力閾値±Ｆth，±Ｍthと比較する。ステップＳ３１５では、モード判定部２７５が、比較器２７１，２７２の判定値Ｆｂ，Ｍｂを記憶部２７７に記録して、ステップＳ３１１に戻る。このように、図１７の処理では、カウント値ＣＮＴの初期値に相当する一定の周期毎に、ステップＳ３１４，Ｓ３１５の処理が繰り返して実行される。
【００５３】
図１８は、第５実施形態における制御モード判定処理のフローチャートであり、図１９は、そのタイミングチャートである。この処理も、モード判定部２７５によって実行される。図１８の処理も、図１７の処理と同様に、カウント値ＣＮＴの初期値に相当する一定の周期毎に実行されているが、カウント値ＣＮＴの処理については図示が省略されている。図１９には、力Ｆと、判定値Ｆｂと、第１制御モード及び第２制御モードの実行状態が描かかれている。図１９の黒丸は、一定の周期Ｐｄ毎の値をプロットした点を示す。周期Ｐｄは、例えば１０ｍｓ〜３０ｍｓの範囲に設定される。なお、回転力は、図示が省略されている。
【００５４】
モード判定部２７５は、図１８のステップＳ３２１で記憶部２７７から判定値Ｆｂ，Ｍｂの履歴を読み出し、ステップＳ３２２で制御モードの判定と選択を実行する。例えば、並進力の判定値Ｆｂが＋１又は−１で継続している継続時間が継続時間閾値Ｔth以上の場合には第１制御モードが選択されてステップＳ３２３に進み、連続移動が実行される。第１制御モードは、ステップＳ３２４において判定値Ｆｂがゼロになるまで継続される。一方、ステップＳ３２２において、判定値Ｆｂが＋１又は−１で継続している継続時間が継続時間閾値Ｔth未満で最小時間閾値Ｔmin以上の場合には第２制御モードが選択されてステップＳ３２５に進み、定量移動が実行される。また、ステップＳ３２２において、判定値Ｆｂが＋１又は−１で継続している継続時間が最小時間閾値Ｔmin未満の場合には、第１制御モードと第２制御モードのいずれも選択されることなく、ステップＳ３２６に進む。これらの処理は、回転力についても同様である。ステップＳ３２６では、教示処理が終了したか否かが判定され、終了していない場合にはステップＳ３２１に戻る。
【００５５】
図１９の例では、時刻ｔ１１〜ｔ１２の期間において判定値Ｆｂが−１で継続している。時刻ｔ１２では、その継続時間が最小時間閾値Ｔminに達しているので第２制御モードが選択されて、定量移動が実行されている。また、時刻ｔ１３〜ｔ１４の期間も同様に、判定値Ｆｂが＋１で継続している。時刻ｔ１４では、その継続時間が最小時間閾値Ｔminに達しているので第２制御モードが選択されて、定量移動が実行されている。但し、時刻ｔ１２における定量移動と、時刻ｔ１４における定量移動は、力Ｆの方向が逆なので、定量移動も逆方向に行われている。時刻ｔ１４から一周期Ｐｄが経過した時刻ｔ１５では、判定値Ｆｂが＋１で継続している継続時間が継続時間閾値Ｔthに達しているので、第１制御モードが選択されて、時刻ｔ１６まで連続移動が開始されている。
【００５６】
このように、第５実施形態においても、力検出部１９０で検出される力の時間変化に応じて第１制御モード又は第２制御モードが選択されている。従って、ユーザーがロボット１００に可動部に加える力の時間変化に応じて制御モードを容易に切り替えることができる。
【００５７】
図２０は、第５実施形態で使用される閾値の設定画面の一例を示す説明図である。この例では、図１６の比較器２７１，２７２で使用する力閾値Ｆth，Ｍthを設定するための第１ウィンドウＷ１と、図１９に示した最小時間閾値Ｔminを設定するための第２ウィンドウＷ２の例が示されている。２つのウィンドウＷ１，Ｗ２には、それぞれ複数の選択肢が表示されている。複数の選択肢は、「敏感な設定」と「標準設定」と「鈍感な設定」の３つを含んでいる。ユーザーが各ウィンドウＷ１，Ｗ２内の複数の選択肢のうちの１つを選択すると、その入力が入力受付部２１６によって受付られ、これに応じてテーブルＴ１，Ｔ２に示されている閾値がそれぞれ設定される。
【００５８】
第１のテーブルＴ１には、６軸方向に関する力閾値がそれぞれ設定されている。「敏感な設定」では、並進力の閾値Ｆｘ，Ｆｘ，Ｆｚが１．５Ｎに設定され、回転力の閾値Ｍｘ，Ｍｙ，Ｍｚが０．７Ｎ・ｍに設定される。「標準設定」では、並進力の閾値Ｆｘ，Ｆｘ，Ｆｚが５．０Ｎに設定され、回転力の閾値Ｍｘ，Ｍｙ，Ｍｚが１．５Ｎ・ｍに設定される。「鈍感な設定」では、並進力の閾値Ｆｘ，Ｆｘ，Ｆｚが８．０Ｎに設定され、回転力の閾値Ｍｘ，Ｍｙ，Ｍｚが２．２Ｎ・ｍに設定される。なお、並進力に対する力閾値は、０．５Ｎ以上１０Ｎ以下の範囲に設定されることが好ましい。また、回転力に対する力閾値は、０．０５Ｎ・ｍ以上３Ｎ・ｍ以下の範囲に設定されることが好ましい。これらの好ましい範囲は、上述した他の実施形態でも同様である。
【００５９】
第２のテーブルＴ２には、６軸方向の力に対する最小時間閾値Ｔminがそれぞれ設定されている。「敏感な設定」では、６軸方向の力に対する最小時間閾値ＴＦｘ，ＴＦｘ，ＴＦｚ，ＴＭｘ，ＴＭｙ，ＴＭｚがいずれも１００ｍｓに設定される。「標準設定」では、６軸方向の力に対する最小時間閾値がいずれも１５０ｍｓに設定される。「鈍感な設定」では、６軸方向の力に対する最小時間閾値がいずれも４００ｍｓに設定される。なお、最小時間閾値Ｔminは、５０ｍｓ以上５００ｍｓ以下の範囲に設定されることが好ましい。
【００６０】
このように、複数の選択肢を含む設定画面であるウィンドウＷ１，Ｗ２を用いてユーザーの設定入力を受け付けるようにすれば、ユーザーが簡単に閾値の設定を行うことが可能である。なお、図１９で使用した継続時間閾値Ｔthも最小時間閾値Ｔminと同様にして設定してもよい。テーブルＴ１，Ｔ２を表示部に表示する必要は無いが、ウィンドウＷ１，Ｗ２と共に表示部に表示するようにしてもよい。
【００６１】
図２１は、第５実施形態で使用される閾値の設定画面の他の例を示す説明図である。この例では、図１６の比較器２７１，２７２で使用する閾値Ｆth，Ｍthを設定するための第１ウィンドウＷ１ａと、図１９に示した最小時間閾値Ｔminを設定するための第２ウィンドウＷ２ａの別の例が示されている。２つのウィンドウＷ１ａ，Ｗ２ａのそれぞれは、数値を入力又は表示するためのフィールドＦＬと、数値を選択するためのスライドバーＳＢとを含んでいる。ユーザーがスライドバーＳＢを用いて値を設定した場合には、その値がフィールドＦＬに表示される。一方、ユーザーがフィールドＦＬに値を直接入力した場合には、その値がスライドバーＳＢに反映される。図２１の例では、力閾値と最小時間閾値とを、６つの軸に関してそれぞれ個別に設定できるので、図２０の例に比べてより適切な値を設定できるという利点がある。一方、図２０の例は、図２１の例に比べて設定が容易であるという利点がある。
【００６２】
図２０及び図２１に示したような画面は、上述した種々の実施形態で使用した各種のパラメーターの入力や設定に使用するようにしてもよい。例えば、教示処理の設定画面において、第２制御モードにおける移動量をユーザーが任意に設定できることが好ましい。このように、第１制御モード又は第２制御モードの選択と実行に使用するパラメーターとして、力閾値を含むパラメーターの入力をユーザーから受け付けるようにすれば、ユーザーの好みのパラメーターを用いて制御モードを選択したり実行したりすることが可能となる。
【００６３】
以上のように、第５実施形態においても、力の大きさが力閾値以上である時間の長さに応じて第１制御モード又は第２制御モードが選択されている。従って、ユーザーがロボット１００の可動部に加える力の時間変化に応じて制御モードを容易に切り替えることができる。また、第５実施形態では特に、力の大きさが力閾値以上である継続時間が最小時間閾値Ｔminに達するまでは第２制御モードを選択せず、継続時間が最小時間閾値Ｔminに達した後に第２制御モードを選択している。こうすれば、チャタリング等の不安定な力の発生時には第２制御モードを選択しないので、第２制御モードによる制御を正しく実行できるという利点がある。
【００６４】
F.他の実施形態：
本発明は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本発明は、以下の形態（aspect）によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本発明の課題の一部又は全部を解決するために、あるいは、本発明の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【００６５】
（１）本発明の第１の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記ロボットの教示において、前記力検出部により検出された力に応じて連続的に前記可動部を移動させる第１制御モードと、前記力検出部により検出された力に応じて、ユーザーが入力した移動量で前記可動部を移動させる第２制御モードと、で前記可動部を制御する制御部を備える。前記制御部は、前記力検出部により検出された力の時間変化と、前記力の大きさと、の一方又は両方に応じて前記第１制御モード又は前記第２制御モードを選択する。
この制御装置によれば、力検出部により検出された力の時間変化と力の大きさの一方又は両方に応じて制御モードを容易に切り替えることができる。
【００６６】
（２）上記制御装置において、前記制御部は、前記力の大きさが力閾値以上である時間の長さに応じて前記第１制御モード又は前記第２制御モードを選択するものとしてもよい。
この制御装置によれば、ユーザーが可動部に加える力の時間変化に応じて制御モードを容易に切り替えることができる。
【００６７】
（３）上記制御装置において、前記制御部は、前記力の大きさが前記力閾値以上である継続時間が０より大きく継続時間閾値未満の場合には前記第２制御モードを選択し、前記継続時間が前記継続時間閾値以上の場合には前記第１制御モードを選択するものとしてもよい。
この制御装置によれば、ユーザーが可動部に加える力の時間変化に応じて制御モードを容易に切り替えることができる。
【００６８】
（４）上記制御装置において、前記制御部は、前記力の大きさが前記力閾値以上である継続時間が最小時間閾値に達するまでは前記第２制御モードを選択せず、前記継続時間が前記最小時間閾値に達した後に前記第２制御モードを選択するものとしてもよい。
この制御装置によれば、チャタリング等の不安定な力の発生時には第２制御モードを選択しないので、第２制御モードによる制御を正しく実行できる。
【００６９】
（５）上記制御装置において、前記最小時間閾値は、５０ｍｓ以上５００ｍｓ以下の範囲に設定されるものとしてもよい。
この制御装置によれば、チャタリング等の不安定な力の発生時に第２制御モードを選択しないので、第２制御モードによる制御を正しく実行できる。
【００７０】
（６）上記制御装置において、前記力閾値は、第１の値と、前記第１の値よりも大きい第２の値を含み、前記制御部は、前記第２制御モードにおいて、前記力の大きさが前記第１の値以上第２の値未満である場合には第１移動量で前記可動部を移動させ、前記力の大きさが前記第２の値以上である場合には前記第１移動量よりも大きな第２移動量で前記可動部を移動させるものとしてもよい。
この制御装置によれば、第２制御モードにおいて、ユーザーが可動部に加える力の大きさに応じて可動部の移動量を切り替えることができる。
【００７１】
（７）上記制御装置において、前記力閾値の入力をユーザーから受け付ける入力受付部を備えるものとしてもよい。
この制御装置によれば、ユーザーから力閾値を含むパラメーターの入力を受け付けるので、ユーザーの好みのパラメーターを用いて制御モードを選択したり実行したりすることができる。
【００７２】
（８）上記制御装置において、前記制御部は、前記力の大きさが第１の値以上第２の値未満である場合には前記第２制御モードを選択し、前記力の大きさが前記第２の値以上である場合には前記第１制御モードを選択するものとしてもよい。
この制御装置によれば、ユーザーが可動部に加える力の大きさに応じて制御モードを容易に切り替えることができる。
【００７３】
（９）本発明の第２の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットと、上述のいずれかの制御装置と、を備えるロボットシステムが提供される。
このロボットシステムによれば、力検出部により検出された力の時間変化と力の大きさの一方又は両方に応じて制御モードを容易に切り替えることができる。
【００７４】
本発明は、上記以外の種々の形態で実現することも可能である。例えば、ロボットとロボット制御装置とを備えたロボットシステム、ロボット制御装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した一時的でない記録媒体（non-transitory storage medium）等の形態で実現することができる。
【符号の説明】
【００７５】
１００…ロボット、１１０…基台、１２０…アーム、１３０…エンドエフェクター、１５０…ハンドル、１７０…アクチュエーター、１９０…力検出部、２００…制御装置、２１０…プロセッサー、２１２…可動部制御部、２１４…制御モード選択部、２１６…入力受付部、２２０…メインメモリー、２３０…不揮発性メモリー、２３２…プログラム命令、２３４…教示データ、２４０…表示制御部、２５０…表示部、２６０…Ｉ／Ｏインターフェース、２７１，２７２…比較器、２７３…並進力カウンター、２７４…回転力カウンター、２７５…モード判定部、２７６…カウンター、２７７…記憶部、３００…教示装置、４００…パーソナルコンピューター、５００…クラウドサービス
【図１】
2019202364.tif 000003
【図２】
2019202364.tif 000004
【図３】
2019202364.tif 000005
【図４】
2019202364.tif 000006
【図５】
2019202364.tif 000007
【図６】
2019202364.tif 000008
【図７】
2019202364.tif 000009
【図８】
2019202364.tif 000010
【図９】
2019202364.tif 000011
【図１０】
2019202364.tif 000012
【図１１】
2019202364.tif 000013
【図１２】
2019202364.tif 000014
【図１３】
2019202364.tif 000015
【図１４】
2019202364.tif 000016
【図１５】
2019202364.tif 000017
【図１６】
2019202364.tif 000018
【図１７】
2019202364.tif 000019
【図１８】
2019202364.tif 000020
【図１９】
2019202364.tif 000021
【図２０】
2019202364.tif 000022
【図２１】
2019202364.tif 000023