(57)【要約】【課題】力制御の実行中に動作を停止した場合に停止中に力検出部の基準出力値がずれて正確な力制御ができなくなることを防止する技術を提供する。【解決手段】制御装置は、力制御において可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に可動部を停止させ、可動部の停止後に予め定められた再開条件を満たした場合には、対象物から可動部を離間させる離間制御を実行した後に力検出部のリセットを実行し、リセットの実行後に前記力制御を再開する。他の形態では、制御装置は、力制御において可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に、対象物から可動部を離間させる離間制御をした後に可動部を停止させ、可動部の停止後に予め定められた再開条件を満たした場合には、力検出部のリセットを実行した後に力制御を再開する。【選択図】図５
2020028938.tif 000002
【特許請求の範囲】
【請求項１】
可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置であって、
前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、
前記制御部は、
前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記力制御を停止させ、
前記可動部の停止後に予め定められた再開条件を満たした場合、前記対象物から前記可動部を離間する離間制御を実行した後に前記力検出部のリセットを実行し、前記リセットの実行後に前記力制御を再開する、制御装置。
【請求項２】
可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置であって、
前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、
前記制御部は、
前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記対象物から前記可動部を離間する離間制御をした後に前記可動部を停止させ、
前記可動部の停止後に予め定められた再開条件を満たした場合、前記力検出部のリセットを実行した後に前記力制御を再開する、制御装置。
【請求項３】
請求項１又は２に記載の制御装置であって、
前記力制御の実行中に前記可動部の位置を記憶する記憶部を備え、
前記離間制御は、前記記憶部に記憶された前記可動部の位置に従って離間する、制御装置。
【請求項４】
請求項１又は２に記載の制御装置であって、
前記離間制御は、予め教示された退避動作に基づいて離間する、制御装置。
【請求項５】
請求項１又は２に記載の制御装置であって、
前記離間制御は、前記可動部が離間する方向に対して垂直な方向の目標力が、前記離間する方向の目標力よりも小さく設定する力制御である、制御装置。
【請求項６】
請求項１〜５のいずれか一項に記載の制御装置であって、
前記ロボットの作業シーケンスは複数の作業を含み、
前記制御装置は、前記複数の作業のそれぞれに対して、前記離間制御において前記可動部を離間させる位置の設定を受け付ける受付部を備える、制御装置。
【請求項７】
可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットと、
請求項１〜６のいずれか一項に記載の制御装置と、
を備えるロボットシステム。
【請求項８】
ロボットであって、
力を検出する力検出部と、
力検出部の出力に応じて力制御される可動部と、
を備え、
前記可動部は、
前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に、動作を停止し、
前記可動部の停止後に予め定められた再開条件を満たした場合には、前記対象物から前記可動部を離間し、前記離間の後に前記力検出部のリセットが実行された後に前記力制御が再開される、ロボット。
【請求項９】
ロボットであって、
力を検出する力検出部と、
力検出部の出力に応じて力制御される可動部と、
を備え、
前記可動部は、
前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に、前記対象物から離間した後に動作を停止し、
前記可動部の停止後に予め定められた再開条件を満たした場合に、前記力検出部のリセットが実行された後に、前記力制御が再開される、ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの制御装置、ロボットシステム、及び、ロボットに関する。
【背景技術】
【０００２】
ロボットとして、力検出部を使用して力制御を行うロボットが知られている。一般に、力制御を行う際には、力制御の開始前に力検出部をリセットすることによって、力検出部の基準出力値を初期化する動作が実行される。特許文献１には、力制御の実行中に中断指令を受けたときに直ちに動作を停止する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−５６５４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、本願の発明者は、力制御の実行中に動作を停止した場合には、停止中に力検出部の基準出力値がずれてしまい、その後に動作を再開しても正確な力制御ができない場合があることを見出した。
【課題を解決するための手段】
【０００５】
本発明の一形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、前記制御部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記力制御を停止させ、前記可動部の停止後に予め定められた再開条件を満たした場合、前記対象物から前記可動部を離間する離間制御を実行した後に前記力検出部のリセットを実行し、前記リセットの実行後に前記力制御を再開する。
【０００６】
本発明の他の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、前記制御部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記対象物から前記可動部を離間する離間制御をした後に前記可動部を停止させ、前記可動部の停止後に予め定められた再開条件を満たした場合、前記力検出部のリセットを実行した後に前記力制御を再開する。
【図面の簡単な説明】
【０００７】
【図１】ロボットシステムの構成例の説明図。
【図２】ロボットと制御装置の機能ブロック図。
【図３Ａ】複数のプロセッサーを有する制御装置の一例を示す概念図。
【図３Ｂ】複数のプロセッサーを有する制御装置の他の例を示す概念図。
【図４】ロボットの作業手順を示すフローチャート。
【図５】第１実施形態における停止・再開制御の詳細手順を示すフローチャート。
【図６】第２実施形態における停止・再開制御の詳細手順を示すフローチャート。
【図７】第３実施形態における停止・再開制御の詳細手順を示すフローチャート。
【発明を実施するための形態】
【０００８】
A. 第１実施形態：
図１は、ロボットシステムの一例を示す説明図である。このロボットシステムは、ロボット１００と、制御装置２００と、を備える。ロボット１００は、トレイ３１０に収納されている第１ワークＷＫ１を把持して、テーブル３２０上の第２ワークＷＫ２の凹部に第１ワークＷＫ１を挿入する嵌め込み作業を実行する。ロボット１００の作業領域の周囲は、安全柵ＣＧで囲われている。安全柵ＣＧには、人が出入り可能な安全扉ＤＲが設けられている。安全扉ＤＲの開閉状態を示す信号は、制御装置２００に供給されている。図１には、互いに垂直な３つの方向Ｘ，Ｙ，Ｚが示されている。Ｘ方向とＹ方向は水平方向であり、Ｚ方向は鉛直方向である。他の図においても必要に応じてこれらの方向を図示している。
【０００９】
ロボット１００は、アーム１１０と、基台１２０とを備えている。アーム１１０は、６つの関節で順次接続されている。アーム１１０の先端部であるアームエンド１１２には、力検出部１４０と、エンドエフェクターとしてのハンド１５０が装着されている。ハンド１５０は物体を把持するグリッパ−である。本実施形態では６軸ロボットを例示しているが、１個以上の関節を有する任意のアーム機構を有するロボットを用いることが可能である。本明細書では、アーム１１０とハンド１５０を併せた機構を「可動部」とも呼ぶ。或いは、アーム１１０とハンド１５０に加えて、ハンド１５０に把持されたワークを含む部分を「可動部」と呼ぶことも可能である。
【００１０】
力検出部１４０は、エンドエフェクターとしてのハンド１５０に加えられる外力を計測する６軸の力覚センサーである。力検出部１４０は、固有の座標系であるセンサー座標系において互いに直交する３つの検出軸を有し、各検出軸に平行な力の大きさと、各検出軸回りのトルク（力のモーメント）の大きさとを検出する。各検出軸に平行な力を「並進力」と呼ぶ。また、各検出軸回りのトルクを「回転力」と呼ぶ。本明細書において、「力」という用語は、並進力と回転力の両方を含む意味で使用される。
【００１１】
力検出部１４０は、６軸の力を検出するセンサーである必要はなく、より少ない方向の力を検出するセンサーを使用してもよい。また、力検出部１４０をアーム１１０の先端に設ける代わりに、アーム１１０のいずれか１つ以上の関節に力検出部としての力センサーを設けても良い。なお、「力検出部」は、力を検出する機能を有していればよい。すなわち、「力検出部」は、力覚センサーのように直接的に力を検出する装置でもよく、或いは、ＩＭＵ（Inertial Measurement Unit，慣性計測装置）や、アーム１１０のアクチュエーターの電流値から力を検出する装置のように、間接的に力を求める装置でもよい。また、「力検出部」は、ロボット１００に外付けされてもよく、ロボット１００に内蔵されていてもよい。
【００１２】
基台１２０には、ロボット１００に接近する物体を検出する物体検出部１６０が設置されている。物体検出部１６０としては、例えばミリ波レーダーやライトカーテンなどの近接センサーを使用可能である。物体検出部１６０は、予め定められた距離閾値以下に物体が接近すると、物体が接近したことを示す出力信号を制御装置２００に発生する。物体検出部１６０は、ロボット１００の任意の箇所に任意の個数設置するようにしてもよい。例えば、ロボット１００の周囲を３６０度の全範囲にわたって物体の接近を検出するように、物体検出部１６０を複数個設けることが好ましい。
【００１３】
図２は、ロボット１００と制御装置２００の機能を示すブロック図である。ロボット１００のアーム１１０には、複数の関節を駆動するための複数のアクチュエーター１１４が設けられている。各アクチュエーター１１４には、図示しないエンコーダーが設けられている。
【００１４】
制御装置２００は、プロセッサー２１０と、メモリー２１２と、軌道計画部２２１と、エンコーダー読み取り部２２２と、アーム１１０を制御するアーム制御部２２３と、ハンド１５０を制御するハンド制御部２２４と、力検出部１４０を制御する力検出制御部２２５と、物体検出部１６０を制御する物体検出制御部２２６と、人に対する報知を行う報知部２３０と、作業者の入力を受け付ける受付部２４０とを有している。エンコーダー読み取り部２２２とアーム制御部２２３は、アクチュエーター１１４を制御することによって、アーム１１０を移動させる。
【００１５】
各部２２１〜２２６の機能を実行する制御装置２００は、「制御部」に相当する。制御装置２００の各部２２１〜２２６，２３０，２４０の一部は、メモリー２１２に格納されたコンピュータープログラムをプロセッサー２１０が実行することによって実現してもよい。この場合には、プロセッサー２１０が「制御部」に相当する。
【００１６】
メモリー２１２にはロボット１００の作業を進めるための作業プログラムが格納されている。プロセッサー２１０は、メモリー２１２に格納された作業プログラムを読み出して、軌道計画部２２１と、アーム制御部２２３と、ハンド制御部２２４と、力検出制御部２２５に指示を出し、その実行結果を判定することでロボット１００の作業を進める。作業が開始されると、プロセッサー２１０が作業プログラムに従って軌道計画部２２１にアーム１１０の軌道を作成させる。軌道計画部２２１は、作業プログラムに含まれている複数の教示点の情報から、より多数の座標点を含む軌道を生成する。アーム制御部２２３は、軌道計画部２２１から供給される軌道に従ってアーム１１０を動作させる。エンコーダー読み取り部２２２は、アーム１１０の複数のアクチュエーター１１４が有するエンコーダーの出力信号を用いてアーム１１０の位置情報を取得し、アーム制御部２２３に対してフィードバックを行う。また、作業プログラムに従ってハンド制御部２２４に指示が出されると、物体の把持や解放動作が行われる。
【００１７】
報知部２３０は、ロボット１００の近傍にいる人に警告等を報知する。報知部２３０としては、音を利用して報知を行うスピーカーや、光を利用して報知を行うランプ又は表示装置等の１つ以上の報知デバイスを使用することが可能である。
【００１８】
なお、制御装置２００の構成としては、図２に示した構成以外の種々の構成を採用することが可能である。例えば、プロセッサー２１０とメモリー２１２を図１の制御装置２００から削除し、この制御装置２００と通信可能に接続された他の装置にプロセッサー２１０とメモリー２１２を設けるようにしてもよい。この場合には、当該他の装置と制御装置２００とを合わせた装置全体が、ロボット１００の制御装置として機能する。他の実施形態では、制御装置２００は、２つ以上のプロセッサー２１０を有していてもよい。更に他の実施形態では、制御装置２００は、互いに通信可能に接続された複数の装置によって実現されていてもよい。これらの各種の実施形態において、制御装置２００は、１つ以上のプロセッサー２１０を備える装置又は装置群として構成される。
【００１９】
図３Ａは、複数のプロセッサーによってロボットの制御装置が構成される一例を示す概念図である。この例では、ロボット１００及びその制御装置２００の他に、パーソナルコンピューター５１０，５２０と、ＬＡＮなどのネットワーク環境を介して提供されるクラウドサービス５００とが描かれている。パーソナルコンピューター５１０，５２０は、それぞれプロセッサーとメモリーとを含んでいる。また、クラウドサービス５００においてもプロセッサーとメモリーを利用可能である。これらの複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００２０】
図３Ｂは、複数のプロセッサーによってロボットの制御装置が構成される他の例を示す概念図である。この例では、ロボット１００の制御装置２００が、ロボット１００の中に格納されている点が図３Ａと異なる。この例においても、複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００２１】
図４は、ロボット１００の力制御を利用した作業の手順を示すフローチャートである。ここでは、複数の作業を含む作業プログラムに従って制御装置２００がロボット１００を制御する場合を想定している。「作業プログラム」を「作業シーケンス」とも呼ぶ。
【００２２】
ステップＳ１００では、各作業での停止・再開制御における動作を設定する。「停止・再開制御」は、ロボット１００を停止する際に、後述するステップＳ２００で行われる制御である。停止・再開制御の内容と、その際の動作の設定についてはステップＳ２００において説明する。
【００２３】
ステップＳ１１０では、１つの作業を選択し、ステップＳ１２０ではその作業の開始位置にアーム１１０を移動させる。ステップＳ１３０では、力検出部１４０をリセットする。このリセットにより、力検出部１４０の各軸の出力基準値がゼロに初期化される。力検出部１４０のリセット後、ステップＳ１４０において作業を開始する。
【００２４】
ステップＳ１５０では、予め定められた停止条件が成立したか否かが判定される。停止条件は、例えば、次の条件１，２の一方が成立したときに成立したものと設定することができる。
＜条件１＞安全扉ＤＲが開いたこと。
＜条件２＞物体検出部１６０が、予め定められた距離閾値以下の距離において物体を検出したこと。
【００２５】
但し、停止条件として上記条件１，２以外の条件を使用しても良い。
【００２６】
停止条件が成立した場合には、ステップＳ２００に進み、停止・再開制御が実行される。一方、停止条件が成立しない場合には、そのまま作業を継続してステップＳ１６０に進む。ステップＳ１６０では、作業が終了したか否かが判定され、終了していなければステップＳ１５０に戻る。ステップＳ１６０において作業が終了すると、ステップＳ１７０に進み、作業プログラムの全作業が完了したか否かを判定する。全作業が完了していない場合には、ステップＳ１１０に戻ってステップＳ１１０以降の処理を繰り返す。
【００２７】
図５は、第１実施形態における停止・再開制御の詳細手順を示すフローチャートである。ステップＳ２１０では、接触状態フラグを設定して作業を停止する。「接触状態フラグ」は、停止条件が成立したときにロボット１００の可動部が対象物に接触していたか否かを示す値である。本実施形態において、「可動部」はアーム１１０とハンド１５０と第１ワークＷＫ１を含む部分であり、「対象物」は第２ワークＷＫ２である。可動部が対象物に接触しているか否かは、力検出部１４０で検出された力が予め定められた力閾値以上か否かに応じて判断される。ロボット１００の可動部が対象物に接触している場合には接触状態フラグが１に設定され、接触していない場合には接触状態フラグが０に設定される。接触状態フラグは、メモリー２１２に格納される。
【００２８】
ステップＳ２２０では、予め定められた再開条件が成立するか否かを判定する。再開条件は、例えば、図４のステップＳ１５０で成立した停止条件が解消されたことである。具体的には、例えば、安全扉ＤＲが再び閉じられると再開条件が成立する。再開条件が成立しなければそのまま待機し、再開条件が成立するとステップＳ２３０に進む。ステップＳ２３０では、作業の停止時に接触状態にあったか否かが判定される。この判定は、ステップＳ２１０で設定された接触状態フラグの値を参照することによって行われる。
【００２９】
作業の停止時に接触状態に無かった場合には、ステップＳ２４０における離間制御をスキップしてステップＳ２５０に進む。一方、作業の停止時に接触状態にあった場合には、ステップＳ２４０に進み、離間制御を実行する。離間制御とは、ロボット１００の可動部を対象物から離間させる制御である。具体的には、図１において、ハンド１５０で把持した第１ワークＷＫ１を、対象物としての第２ワークＷＫ２から離間させるようにアーム１１０を動作させる。離間制御において、アーム１１０をどの位置まで離間させるかは、図４のステップＳ１００において予め設定される。各作業について設定可能な離間制御の態様としては、例えば、以下のような種々の態様を利用可能である。
【００３０】
＜離間制御の第１態様＞
力制御の実行中に可動部の位置をメモリー２１２に記憶しておき、メモリー２１２に記憶された可動部の位置に従って位置制御を行うことによって、可動部を対象物から離間させる。
この第１態様は、可動部を軌道に沿って逆行させる制御に相当する。この第１態様によれば、メモリー２１２に記憶された可動部の位置に従って可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００３１】
＜離間制御の第２態様＞
予め教示された退避動作に基づいた位置制御を実行することによって、可動部を対象物から離間させる。
退避動作としては、例えば、指定された退避位置までアーム１１０を移動させる動作を教示することができる。この第２態様によれば、予め教示された退避動作に基づいて可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００３２】
＜離間制御の第３態様＞
可動部が離間する方向に対して垂直な方向の目標力が０である力制御を実行することによって、可動部を対象物から離間させる。
図１の例では、「離間する方向」はＺ方向であり、「離間する方向に対して垂直な方向」はＸ方向及びＹ方向である。この第３態様によれば、可動部が離間する方向と垂直な方向の目標力が０である力制御に従って可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。なお、第３態様の上位概念として、「可動部が離間する方向に対して垂直な方向の目標力が、当該離間する方向の目標力よりも小さい力制御を実行する」という態様を採用してもよい。この態様によれば、可動部が離間する方向に対して垂直な方向の目標力が、離間する方向の目標力よりも小さい力制御に従って可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００３３】
受付部２４０は、複数の作業のそれぞれにおける離間制御のパラメーターの設定を受け付ける。具体的には、各作業の離間制御をどの態様とするかの選択と、その態様の実行に必要なパラメーターの設定とを受け付ける。離間制御の態様としては、上述した３つの態様以外の他の種々の態様を使用してもよい。
【００３４】
ステップＳ２５０では力検出部１４０をリセットし、ステップＳ２６０で作業を再開する。
【００３５】
以上のように、第１実施形態では、力制御において可動部が対象物に接触しているときに予め定められた停止条件を満たした場合には、可動部を停止させる。また、可動部の停止後に予め定められた再開条件を満たした場合には、対象物から可動部を離間させる離間制御を実行した後に力検出部１４０のリセットを実行し、リセットの実行後に力制御を再開する。換言すれば、力制御において可動部を停止させた後には、力制御を再開する前に、対象物を可動部から離間させてから力検出部１４０のリセットを実行するので、力検出部１４０の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００３６】
B. 第２実施形態：
図６は、第２実施形態における停止・再開制御の詳細手順を示すフローチャートである。第２実施形態は、停止・再開制御の手順が第１実施形態と異なるだけであり、装置構成や図４で説明した作業全体の処理手順は第１実施形態と同じである。図６の停止・再開制御が図５と異なる主な点は、離間制御を作業の停止前に実行する点である。
【００３７】
ステップＳ３１０では、停止条件が成立したときに可動部が対象物に接触していたか否かが判定される。接触していた場合には、ステップＳ３２０において離間制御を行った後に、ステップＳ３３０で作業を停止する。この離間制御の態様としては、第１実施形態と同様の種々の態様を利用可能である。一方、接触していなかった場合には、ステップＳ３２０をスキップしてステップＳ３３０に進み、直ちに作業を停止する。
【００３８】
ステップＳ３４０では、予め定められた再開条件が成立するか否かを判定する。再開条件が成立しなければそのまま待機し、再開条件が成立するとステップＳ３５０に進む。ステップＳ３５０では力検出部１４０をリセットし、ステップＳ３６０では作業を再開する。
【００３９】
以上のように、第２実施形態では、力制御において可動部が対象物に接触しているときに予め定められた停止条件を満たした場合には、対象物から可動部を離間させる離間制御をした後に可動部を停止させる。また、可動部の停止後に予め定められた再開条件を満たした場合には、力検出部１４０のリセットを実行した後に力制御を再開する。換言すれば、力制御において可動部を停止させる前に対象物を可動部から離間させ、その後、力制御を再開する前に力検出部１４０のリセットを実行する。この結果、力検出部１４０の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００４０】
C. 第３実施形態：
図７は、第３実施形態における停止・再開制御の詳細手順を示すフローチャートである。第３実施形態は、停止・再開制御の手順が第１実施形態と異なるだけであり、装置構成や図４で説明した作業全体の処理手順は第１実施形態と同じである。
【００４１】
図４のステップＳ１５０において停止条件が成立すると、図７のステップＳ４１０に進み、作業を停止する。ステップＳ４２０では、予め定められた再開条件が成立するか否かを判定する。この判定は、図５のステップＳ２２０と同じである。ステップＳ４３０では、停止時に力制御を実行していたか否かが判定される。力制御を実行していたか否かは、力検出部１４０で検出された力が予め定められた力閾値以上か否かに応じて判断されるか、又は、ステップＳ１１０で選択された作業プログラムから判断される。停止時に力制御を実行していなかった場合には、ステップＳ４４１〜Ｓ４４５が実行される。一方、停止時に力制御を実行していた場合には、ステップＳ４５１〜Ｓ４５５が実行される。
【００４２】
停止時に力制御を実行していなかった場合には、ステップＳ４４１において、図４のステップＳ１００で設定されていた１つの動作が選択される。図７の例において、停止時に力制御を実行していなかった場合において設定可能な動作は、ユーザーコールと、離間制御と、作業継続と、の３種類である。
【００４３】
設定された動作としてユーザーコールが選択されていた場合には、ステップＳ４４５においてユーザーコールが実行される。「ユーザーコール」は、ロボット１００に何らかのトラブルが発生したことを作業者に通知する警報であり、図２の報知部２３０によって実行される。ユーザーコールとしては、例えば、ランプを点滅したり、ブザーを鳴らしたりする等の警告が使用される。
【００４４】
設定された動作として離間制御が選択されていた場合には、ステップＳ４４２において離間制御を行った後に、ステップＳ４４３で力検出部１４０をリセットし、ステップＳ４４４で作業を再開する。
【００４５】
設定された動作として作業継続が選択されていた場合には、ステップＳ４４２をスキップしてステップＳ４４３に進んで力検出部１４０をリセットし、ステップＳ４４４で作業を再開する。
【００４６】
一方、停止時に力制御を実行していた場合には、ステップＳ４５１に進み、図４のステップＳ１００で設定されていた１つの動作が選択される。図７の例において、停止時に力制御を実行していた場合において設定可能な動作は、ユーザーコールと離間制御の２種類である。
【００４７】
設定された動作としてユーザーコールが選択されていた場合には、ステップＳ４５５においてユーザーコールが実行される。一方、設定された動作として離間制御が選択されていた場合には、ステップＳ４５２において離間制御を行った後に、ステップＳ４５３で力検出部１４０をリセットし、ステップＳ４４４で作業を再開する。
【００４８】
上述したステップＳ４５１〜Ｓ４５４の手順は、第１実施形態の図５のステップＳ２３０〜Ｓ２６０とほぼ同じ手順である。すなわち、ステップＳ４５１〜Ｓ４５４の手順によれば、作業の停止時に力制御を実行していた場合には、作業の再開前に対象物から可動部を離間させる離間制御を実行した後に力検出部１４０のリセットを実行し、リセットの実行後に力制御を再開する。この結果、力検出部１４０の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００４９】
なお、第３実施形態においても、第２実施形態と同様に、予め定められた停止条件が成立した場合に、ステップＳ４１０で可動部を停止させる前に、対象物から可動部を離間させる離間制御を行うようにしてもよい。この場合には、図７のステップ４４２，Ｓ４５２の離間制御は省略可能である。
【００５０】
D. 他の実施形態：
本発明は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本発明は、以下の形態（aspect）によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本発明の課題の一部又は全部を解決するために、あるいは、本発明の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【００５１】
（１）本発明の第１の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、前記制御部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記力制御を停止させ、前記可動部の停止後に予め定められた再開条件を満たした場合、前記対象物から前記可動部を離間する離間制御を実行した後に前記力検出部のリセットを実行し、前記リセットの実行後に前記力制御を再開する。
この制御装置によれば、力制御において可動部を停止させた後に力制御を再開する前に、対象物を可動部から離間させてから力検出部のリセットを実行するので、力検出部の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００５２】
（２）本発明の第２の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットを制御する制御装置が提供される。この制御装置は、前記力検出部の出力に応じて前記可動部を力制御する制御部を備え、前記制御部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合、前記対象物から前記可動部を離間する離間制御をした後に前記可動部を停止させ、前記可動部の停止後に予め定められた再開条件を満たした場合、前記力検出部のリセットを実行した後に前記力制御を再開する。
この制御装置によれば、力制御において可動部を停止させる際に、対象物を可動部から離間させて停止させるので、その後に力制御を再開する前に力検出部のリセットを実行することによって力検出部の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００５３】
（３）上記制御装置は、前記力制御の実行中に前記可動部の位置を記憶する記憶部を備え、前記離間制御は、前記記憶部に記憶された前記可動部の位置に従って離間するものとしてもよい。
この制御装置によれば、記憶部に記憶された可動部の位置に従って可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００５４】
（４）上記制御装置において、前記離間制御は、予め教示された退避動作に基づいて離間するものとしてもよい。
この制御装置によれば、予め教示された退避動作に基づいて可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００５５】
（５）上記制御装置において、前記離間制御は、前記可動部が離間する方向に対して垂直な方向の目標力が、前記離間する方向の目標力よりも小さく設定する力制御であるものとしてもよい。
この制御装置によれば、可動部が離間する方向に対して垂直な方向の目標力が、離間する方向の目標力よりも小さい力制御に従って可動部を対象物から離間させるので、離間制御によって可動部や対象物に不具合が発生する可能性を低減できる。
【００５６】
（６）上記制御装置において、前記ロボットの作業シーケンスは複数の作業を含み、前記制御装置は、前記複数の作業のそれぞれに対して、前記離間制御において前記可動部を離間させる位置の設定を受け付ける受付部を備えるものとしてもよい。
この制御装置によれば、複数の作業のそれぞれに対して離間制御において可動部を離間させる位置を設定できるので、作業の内容に応じて適切な位置まで可動部を離間させることができる。
【００５７】
（７）本発明の第３の形態によれば、可動部と、前記可動部に加えられた力を検出する力検出部とを備えるロボットと、上述のいずれか一項に記載の制御装置と、を備えるロボットシステムが提供される。
このロボットシステムによれば、力検出部の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００５８】
（８）本発明の第４の形態によれば、ロボットが提供される。このロボットは、力を検出する力検出部と、力検出部の出力に応じて力制御される可動部と、を備え、前記可動部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に、動作を停止し、前記可動部の停止後に予め定められた再開条件を満たした場合には、前記対象物から前記可動部を離間し、前記離間の後に前記力検出部のリセットが実行された後に前記力制御が再開される。
このロボットによれば、力制御において可動部を停止させた後に力制御を再開する前に、対象物を可動部から離間させてから力検出部のリセットを実行するので、力検出部の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００５９】
（９）本発明の第５の形態によれば、ロボットが提供される。このロボットは、力を検出する力検出部と、力検出部の出力に応じて力制御される可動部と、を備え、前記可動部は、前記力制御において前記可動部が対象物に接触しているときに予め定められた停止条件を満たした場合に、前記対象物から離間した後に動作を停止し、前記可動部の停止後に予め定められた再開条件を満たした場合に、前記力検出部のリセットが実行された後に、前記力制御が再開される。
このロボットによれば、力制御において可動部を停止させる際に、対象物を可動部から離間させて停止させるので、その後に力制御を再開する前に力検出部のリセットを実行することによって力検出部の出力基準値を正しい値に設定することができ、正確な力制御を行うことが可能となる。
【００６０】
本発明は、上記以外の種々の形態で実現することも可能である。例えば、ロボットとロボット制御装置とを備えたロボットシステム、ロボット制御装置の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した一時的でない記録媒体（non-transitory storage medium）等の形態で実現することができる。
【符号の説明】
【００６１】
１００…ロボット、１１０…アーム、１１２…アームエンド、１１４…アクチュエーター、１２０…基台、１４０…力検出部、１５０…ハンド、１６０…物体検出部、２００…制御装置、２１０…プロセッサー、２１２…メモリー、２２１…軌道計画部、２２２…エンコーダー読み取り部、２２３…アーム制御部、２２４…ハンド制御部、２２５…力検出制御部、２２６…物体検出制御部、２３０…報知部、２４０…受付部、３１０…トレイ、３２０…テーブル、５００…クラウドサービス、５１０，５２０…パーソナルコンピューター
【図１】
2020028938.tif 000003
【図２】
2020028938.tif 000004
【図３Ａ】
2020028938.tif 000005
【図３Ｂ】
2020028938.tif 000006
【図４】
2020028938.tif 000007
【図５】
2020028938.tif 000008
【図６】
2020028938.tif 000009
【図７】
2020028938.tif 000010