(57)【要約】【課題】体格の変化を招くことなく、簡単な構成で経時的な変化にともなう把持力の変化を補正するロボット制御装置および把持力調整方法を提供する。【解決手段】ロボット制御装置１０は、ロボット駆動部２２、電流取得部２４、パラメータ作成部２５および把持力制御部２６を備える。ロボット駆動部２２は、ロボット本体１１を、予め設定された目標力で駆動する。電流取得部２４は、ロボット駆動部２２によるロボット本体１１の駆動によって、爪１７が固定された対象物に接しているとき、爪１７の位置を維持するためにモータ１５へ供給される供給電流を取得する。パラメータ作成部２５は、目標力および供給電流から、供給電流とロボットハンド１２の把持力との関係を示すパラメータを、補正パラメータとして作成する。把持力制御部２６は、パラメータ作成部２５で作成した補正パラメータを用いて、ロボットハンド１２の把持力を制御する。【選択図】図１
2019098406.tif 000002
【特許請求の範囲】
【請求項１】
ロボット本体と、
前記ロボット本体の先端に設けられ、物体を把持する爪、および前記爪を駆動するモータを有するロボットハンドと、
を備えるロボットを制御するロボット制御装置であって、
前記ロボット本体を、予め設定された目標力で駆動するロボット駆動部と、
前記ロボット駆動部による前記ロボット本体の駆動によって、前記爪が固定された対象物に接している状態で前記爪の位置を変化させるように前記ロボット駆動部で前記ロボット本体を駆動したとき、前記爪の位置を維持するために前記モータへ供給される供給電流を取得する電流取得部と、
前記目標力、および前記電流取得部で取得した前記供給電流から、前記供給電流と前記ロボットハンドの把持力との関係を示すパラメータを、補正パラメータとして作成するパラメータ作成部と、
前記パラメータ作成部で作成した前記補正パラメータを用いて、前記ロボットハンドの把持力を制御する把持力制御部と、
を備えるロボット制御装置。
【請求項２】
ロボット本体と、
前記ロボット本体の先端に設けられ、物体を把持する爪、前記爪を駆動するモータ、および無動力で前記爪の位置を保持するロック機構を有するロボットハンドと、
を備えるロボットを制御するロボット制御装置であって、
前記モータへ予め設定された供給電流を供給して前記爪を駆動し、固定された対象物に前記爪を押し当てるハンド制御部と、
前記ハンド制御部によって前記爪を前記対象物に押し当て続けるとき、前記ロボット本体の姿勢を維持するために、前記ロボット本体に加わる力を外力として検出する外力検出部と、
前記モータへ供給した前記供給電流、および前記外力検出部で検出した前記外力から、前記供給電流と前記ロボットハンドの把持力との関係を示すパラメータを、補正パラメータとして作成するパラメータ作成部と、
前記パラメータ作成部で作成した前記補正パラメータを用いて、前記ロボットハンドの把持力を制御する把持力制御部と、
を備えるロボット制御装置。
【請求項３】
前記パラメータ作成部で作成された前記補正パラメータを記憶する記憶部をさらに備え、
前記記憶部が前記ロボットハンドに設けられている請求項１または２記載のロボット制御装置。
【請求項４】
ロボット本体と、
前記ロボット本体の先端に設けられ、物体を把持する爪、および前記爪を駆動するモータを有するロボットハンドと、
を備えるロボットにおいて、前記ロボットハンドの把持力を調整する把持力調整方法であって、
前記ロボット本体を、予め設定された目標力で駆動して、前記爪を固定された対象物に押し当てる工程と、
前記爪が前記対象物に押し当て続けられているとき、駆動する前記ロボット本体の移動に対抗して前記爪を前記対象物と接する位置に維持するために、前記爪を駆動する前記モータへ供給する供給電流を取得する工程と、
前記目標力および前記供給電流から、前記供給電流と前記ロボットハンドの把持力との関係を示すパラメータを、補正パラメータとして作成する工程と、
前記パラメータ作成部で作成した前記補正パラメータを用いて、前記ロボットハンドの把持力を補正する工程と、
を含む把持力調整方法。
【請求項５】
前記目標力を、小さな値から大きな値に徐々に変化させつつ前記補正パラメータを作成する請求項４記載の把持力調整方法。
【請求項６】
ロボット本体と、
前記ロボット本体の先端に設けられ、物体を把持する爪、前記爪を駆動するモータ、および無動力で前記爪の位置を保持するロック機構を有するロボットハンドと、
を備えるロボットにおいて、前記ロボットハンドの把持力を調整する把持力調整方法であって、
前記ロボット本体を固定した状態で前記モータへ予め設定された供給電流を供給し、前記爪を、固定された対象物に押し当てる工程と、
前記モータの駆動によって前記爪が前記対象物に押し当て続けられるとき、駆動する前記爪の移動に対抗して固定された前記ロボット本体の姿勢を維持するために、前記ロボット本体に加わる力を外力として検出する工程と、
前記供給電流および前記外力から、前記供給電流と前記ロボットハンドの把持力との関係を示すパラメータを、補正パラメータとして作成する工程と、
前記パラメータ作成部で作成した前記補正パラメータを用いて、前記ロボットハンドの把持力を補正する工程と、
を含む把持力調整方法。
【請求項７】
前記供給電流を、小さな値から大きな値に徐々に変化させつつ前記補正パラメータを作成する請求項６記載の把持力調整方法。
【請求項８】
前記ロボット駆動部は、前記ロボット本体において前記ロボットハンドに近い軸を優先的に駆動する請求項１から３のいずれか一項記載のロボット制御装置。
【請求項９】
前記補正パラメータを作成するとき、前記ロボット本体において前記ロボットハンドに近い軸を優先的に駆動する請求項４から７のいずれか一項記載の把持力調整方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置および把持力調整方法に関する。
【背景技術】
【０００２】
ロボットは、位置や姿勢が変化するロボット本体の先端に、各種の作業を実行するいわゆるエンドエフェクタを備えている。このエンドエフェクタの一種として、ロボットハンドが広く用いられている。ロボットハンドは、物体を把持する爪、およびこの爪を駆動するモータなどを有している。このロボットハンドは、モータで発生した駆動力を爪へ伝達することにより、爪を駆動している。駆動力を伝達する機構は、各種の機械的な構成を有していることから、長期間の使用によって経時的な劣化が生じる。このような経時的な劣化が生じると、モータが発生する力と爪の把持力との間の関係に変化が生じる。そのため、意図しない把持力の変化によって、把持対象となる物体の落下や破損を招くという問題がある。その結果、ロボットのユーザは、定期的にロボットハンドが発生する把持力を調整する必要がある。
【０００３】
例えば、特許文献１では、爪に把持力を直接検出する力覚センサを設けることが提案されている。特許文献１の場合、この力覚センサで検出した把持力を用いてモータの出力を制御する。これにより、経時的な劣化の有無にかかわらず、把持力に応じてモータの出力を制御することができる。また、特許文献２の場合、ばねなどの弾性部材を用いて爪を押し付けることにより、把持力を一定に維持している。
【０００４】
しかしながら、特許文献１の場合、力覚センサは物体を把持する爪の先端付近に設ける必要がある。そのため、爪の先端付近に力覚センサを設けるための空間を必要とし、小型化および軽量化の妨げになるという問題がある。また、特許文献２の場合、弾性部材の押し付け力の変更が困難であるため、性質の異なる物体を把持する作業は不向きであるという問題がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−  ２４１３４号公報
【特許文献２】特開２０１５−２１４００３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
そこで、本発明の目的は、体格の変化を招くことなく、簡単な構成で経時的な変化にともなう把持力の変化を補正するロボット制御装置および把持力調整方法を提供することにある。
【課題を解決するための手段】
【０００７】
請求項１または４記載の発明では、ロボット本体は予め設定された目標力で駆動される。ロボット本体の駆動によって、ロボットハンドの爪は固定された対象物に接する。ロボットハンドの爪は、対象物に接した後もロボット本体を駆動することにより、当初の間隔よりも開いたり閉じたりする。このとき、ロボットハンドの爪を駆動するモータに与えられる指示は、当初の間隔を維持するためのものである。そのため、対象物に接した状態で爪の位置を変化させるようにロボット本体を駆動すると、ロボットハンドの爪は、駆動されるロボット本体の力に対抗して当初の間隔を維持しようとする。ここで、ロボットハンドのモータは、爪の当初の間隔を維持するための力を発揮する。このモータが発生する力は、ロボット本体の目標力に対応する。そのため、供給電流によってモータが発生する力は、ロボットハンドの把持力に相関する。そこで、ロボット本体に既知の目標力を設定し、この目標力でロボット本体を駆動したときにモータへ供給される供給電流を取得することにより、モータへの供給電流と把持力との関係が補正パラメータとして取得される。ロボットハンドの把持力は、この補正パラメータを用いて制御される。これにより、例えば摩耗などによってロボットハンドの把持力が経時的に変化する場合でも、補正パラメータを用いることでモータへの供給電流が補正される。その結果、力覚センサなどの追加の構成を必要とすることなく、目標力でのロボット本体の駆動、および爪と対象物との接触という簡単な動作でモータへの供給電流とロボットハンドの把持力との関係が取得される。したがって、簡単な構成で経時的な変化にともなう把持力の変化を補正することができる。
【０００８】
請求項２または６記載の発明では、ロボットハンドは無動力で爪の位置を保持するロック機構を有している。ロボットハンドの爪は、予め設定された供給電流に対応する把持力で固定された対象物に押し当てられる。ロボットハンドが取り付けられているロボット本体は、爪が対象物に接しても、その姿勢を維持する。すなわち、ロボット本体は、モータから加わる力で爪が対象物と接していても、爪に加わる力に対抗して静止する。このとき、ロボット本体は、供給電流に対応する把持力に対抗して静止を維持するために各部に力が発生する。この力は、外力として検出される。そのため、この外力は、供給電流に対応してロボットハンドが発生する把持力に相関する。そこで、ロボットハンドのモータに既知の供給電流を供給し、この供給電流でロボットハンドの爪を駆動したときにロボット本体に加わる外力を検出することにより、モータへの供給電流と外力に対応する把持力との関係が補正パラメータとして取得される。ロボットハンドの把持力は、この補正パラメータを用いて制御される。これにより、例えば摩耗などによってロボットハンドの把持力が経時的に変化する場合でも、補正パラメータを用いることでモータへの供給電流が補正される。その結果、力覚センサなどの追加の構成を必要とすることなく、供給電流によるロボットハンドの駆動、および爪と対象物との接触という簡単な動作でモータへの供給電流とロボットハンドの把持力との関係が取得される。したがって、簡単な構成で経時的な変化にともなう把持力の変化を補正することができる。
【０００９】
請求項３記載の発明では、補正パラメータは記憶部に記憶される。そして、この記憶部は、ロボットハンドに設けられている。これにより、ロボットハンドの個々に設けられた記憶部は、ロボットハンドの個体毎の補正パラメータを記憶する。そのため、ロボットハンドを異なるロボット本体で用いる場合でも、記憶部に記憶された補正パラメータは各ロボット本体に提供される。したがって、ロボットハンドを複数のロボット本体で用いる場合でも、補正パラメータを利用することができ、把持力の変化の補正を高精度に行なうことができる。
【００１０】
請求項５または７記載の発明では、補正パラメータは、目標力または供給電流を、小さな値から大きな値に徐々に変化させながら作成される。初期的に目標力または供給電流を大きな値に設定すると、固定された対象物に接する爪に過大な力が加わり、ロボットハンドの破損や損傷を招くおそれがある。そこで、小さな値から大きな値に変化させながら補正パラメータを作成することにより、ロボットハンドの破損や損傷が低減される。したがって、安全かつ確実に補正パラメータを作成することができる。
【００１１】
請求項８または９記載の発明では、補正パラメータは、ロボットハンドに近い軸を優先的に駆動することにより取得される。ロボットハンドに近い軸ほど、ロボット本体の無駄な動きが低減され、重力をはじめとする外乱の影響の排除が容易になる。したがって、取得した補正パラメータの誤差が減少し、より正確な補正パラメータを作成することができる。
【図面の簡単な説明】
【００１２】
【図１】第１実施形態によるロボットの構成を示す概略的なブロック図
【図２】第１実施形態によるロボットの外観を示す概略的な斜視図
【図３】第１実施形態によるロボットの作動を示す模式図
【図４】第１実施形態によるロボットにおいて、供給電流と目標力および把持力との関係を示す模式図
【図５】第１実施形態によるロボットにおける把持力調整の処理の流れを示す概略図
【図６】第２実施形態によるロボットの構成を示す概略的なブロック図
【図７】第２実施形態によるロボットの作動を示す模式図
【図８】第２実施形態によるロボットにおいて、供給電流と外力および把持力との関係を示す模式図
【図９】第２実施形態によるロボットにおける把持力調整の処理の流れを示す概略図
【発明を実施するための形態】
【００１３】
以下、複数の実施形態を図面に基づいて説明する。なお、複数の実施形態において実質的に同一の構成部位には同一の符号を付し、説明を省略する。
（第１実施形態）
まず、図１および図２に示す第１実施形態によるロボット１０の構成について説明する。ロボット１０は、ロボット本体１１、ロボットハンド１２および制御ユニット１３を備えている。ロボット本体１１は、図２に示すような複数の軸を中心に回転する一つ以上のアーム１４を有している。図２に示すロボット本体１１は、一例として６つの軸を有する多関節のロボットである。ロボット本体１１は、１つ以上の軸であれば６軸に限らない。
【００１４】
ロボットハンド１２は、ロボット本体１１の先端に取り付けられている。すなわち、ロボットハンド１２は、いわゆるエンドエフェクタである。ロボットハンド１２は、図１および図３に示すようにモータ１５、伝達機構部１６および爪１７を有している。モータ１５は、爪１７を駆動するための駆動力を発生する。伝達機構部１６は、例えば図示しないギア、シャフト、弾性体およびねじなどを有しており、モータ１５で発生した駆動力を減速して爪１７に伝達する。すなわち、モータ１５で発生した駆動力は、伝達機構部１６を通して爪１７に伝達される。本実施形態の場合、ロボットハンド１２は、互いに対向する一対の爪１７を有している。モータ１５へ通電することにより、一対の爪１７は、互いの間隔が変化する。
【００１５】
制御ユニット１３は、ロボット本体１１と一体または別体に設けられている。制御ユニット１３は、いわゆるコンピュータであって、ロボット本体１１の各軸に設けられている図示しないモータを駆動することにより、ロボット本体１１の姿勢を制御する。制御ユニット１３は、ロボット制御装置に相当する。制御ユニット１３は、演算部２１、ロボット駆動部２２、ハンド制御部２３、電流取得部２４、パラメータ作成部２５および把持力制御部２６を備えている。演算部２１は、ＣＰＵ、ＲＯＭおよびＲＡＭを有するコンピュータで構成されている。演算部２１は、予め設定されたコンピュータプログラムをＣＰＵで実行することにより、ロボット本体１１の各部を制御する。ロボット駆動部２２、ハンド制御部２３、電流取得部２４、パラメータ作成部２５および把持力制御部２６は、コンピュータプログラムを実行することにより、ソフトウェア的に実現されている。なお、これらロボット駆動部２２、ハンド制御部２３、電流取得部２４、パラメータ作成部２５および把持力制御部２６は、ソフトウェア的に限らず、ハードウェア的、またはソフトウェアとハードウェアとの協働によって実現してもよい。
【００１６】
ロボット駆動部２２は、ロボット本体１１の各軸の図示しないモータに接続している。ロボット駆動部２２は、これら図示しないモータを駆動することにより、ロボット本体１１の姿勢および動作を制御する。また、ロボット駆動部２２は、図示しないモータを駆動することにより、ロボット本体１１を予め設定された目標力Ｆで駆動する。ロボット本体１１は、図示しないモータを駆動することにより、その姿勢を変化させる。このとき、モータの発生する駆動力を制御することにより、ロボット本体１１は、予め設定された方向へ目標力Ｆを作用させながら駆動される。
【００１７】
ハンド制御部２３は、ロボットハンド１２のモータ１５を制御する。ハンド制御部２３は、モータ１５を駆動することにより、ロボットハンド１２の爪１７の移動を制御する。例えばハンド制御部２３は、モータ１５の正方向への駆動を制御することにより、ロボットハンド１２の爪１７で物体を把持する。一方、ハンド制御部２３は、モータ１５を負方向への駆動を制御することにより、ロボットハンド１２の爪１７による物体の把持を解除する。このように、ハンド制御部２３は、モータ１５を駆動して、ロボットハンド１２の爪１７の開閉を制御する。
【００１８】
電流取得部２４は、ロボットハンド１２のモータ１５へ供給される電流を供給電流Ｉｓとして取得する。ロボットハンド１２のモータ１５は、ハンド制御部２３で制御されているとき、必要な力に応じた電流が供給される。電流取得部２４は、このハンド制御部２３からモータ１５へ供給される電流を供給電流Ｉｓとして取得する。本実施形態の場合、補正パラメータを作成するとき、ロボットハンド１２の爪１７は図３に示すように設備２７に固定された対象物２８に押し当てられる。対象物２８は、例えば治具などのように把持力の調整のために用いられる。なお、対象物２８は、治具に限らず、例えば設備２７の突起部などのように固定された物体であれば適用することができる。
【００１９】
ロボット駆動部２２は、このようにロボットハンド１２の爪１７が対象物２８に押し当てられているとき、ロボット本体１１を目標力Ｆで駆動する。すなわち、ロボット駆動部２２は、爪１７と対象物２８とが接した状態でロボット本体１１を目標力Ｆで駆動する。つまり、ロボット駆動部２２は、爪１７が対象物２８に接している状態から、爪１７の位置を変化させるようにロボット本体１１を駆動する。この場合、ロボット駆動部２２は、ロボット本体１１を、爪１７を駆動するモータ１５で対抗できる程度の力で駆動する。ロボットハンド１２の一対の爪１７は、ロボット本体１１の駆動によって初期的に設定された間隔が開いたり閉じたりするように力を受ける。このようにロボット本体１１に力を加えたとき、ロボットハンド１２の爪１７は、目標力Ｆに対抗して対象物２８との接触、つまり当初の間隔を維持するように力を発生する。つまり、ロボットハンド１２の爪１２は、目標力Ｆに対抗する力をモータ１５から受ける。このように目標力Ｆに対抗してモータ１５から力が発生しているとき、モータ１５はその力に対応する電流の供給を受ける。電流取得部２４は、このモータ１５へ供給される電流を供給電流Ｉｓとして取得する。
【００２０】
パラメータ作成部２５は、補正パラメータを作成する。具体的には、パラメータ作成部２５は、ロボット本体１１に対して設定した目標力Ｆと、電流取得部２４で取得した供給電流Ｉｓとから補正パラメータを作成する。ロボット本体１１の駆動力として設定した目標力Ｆは、既知の値として設定される。そのため、固定された対象物２８に爪１７が接しているとき、爪１７に加わる力は目標力Ｆに一致する。このとき、ロボットハンド１２のモータ１５は、爪１７の位置を維持するために、ロボット本体１１の目標力Ｆでの移動に対抗する力を発揮している。つまり、ロボットハンド１２のモータ１５は、目標力Ｆに一致する力を発揮している。この目標力Ｆに対抗する力を発揮しているモータ１５は、供給電流Ｉｓを受けている。
【００２１】
ここで、モータ１５が発生している力は、ロボットハンド１２の爪１７による把持力に相当する。つまり、固定された対象物２８に爪１７が接し、爪１７の移動が制限されていることから、ロボット本体１１が発生する目標力Ｆは、ロボットハンド１２の把持力Ｆｈに相当する。そして、この把持力Ｆｈはモータ１５が発生する。これにより、既知の目標力Ｆと供給電流Ｉｓとから、供給電流Ｉｓとロボットハンド１２の把持力Ｆｈとの相関が得られる。そして、目標力Ｆを変化させながら供給電流Ｉｓを取得することにより、供給電流Ｉｓと把持力Ｆｈとの相関が得られる。このように、パラメータ作成部２５は、目標力Ｆと供給電流Ｉｓとから補正パラメータを作成する。すなわち、把持力Ｆｈに対応する目標力Ｆと供給電流Ｉｓとは、例えば図４に示すような相関性を示す。パラメータ作成部２５は、把持力Ｆｈに対応する目標力Ｆと供給電流Ｉｓとの関係を、補正テーブルまたは補正数式で示される補正パラメータとして作成する。なお、図４に示す把持力Ｆｈと供給電流Ｉｓとの関係は、説明のための一例であり、必ずしも一次関数になるとは限らない。
【００２２】
把持力制御部２６は、パラメータ作成部２５で作成された補正パラメータを用いてハンド制御部２３を通してロボットハンド１２の把持力を制御する。すなわち、把持力制御部２６は、初期的に設定されている供給電流Ｉｓと把持力Ｆｈとの関係を、パラメータ作成部２５で作成された補正パラメータを用いて補正する。そして、把持力制御部２６は、補正パラメータで補正した供給電流Ｉｓによってモータ１５へ供給する供給電流Ｉｓを制御する。これにより、経時的な変化によって初期的に設定した供給電流Ｉｓと把持力Ｆｈとの関係に齟齬が発生しても、供給電流Ｉｓは補正パラメータによって補正される。したがって、ロボットハンド１２は、経時的な変化の影響を受けることなく安定した把持力Ｆｈを発揮する。
【００２３】
また、ロボット１０は、図１に示すように記憶部２９を備えていてもよい。記憶部２９は、例えば不揮発性の記憶媒体を有している。記憶部２９は、パラメータ作成部２５で作成された補正パラメータを記憶する。記憶部２９は、ロボットハンド１２に設けることが好ましい。ロボットハンド１２に記憶部２９に設けることにより、記憶部２９はそのロボットハンド１２に固有の補正パラメータを記憶する。これにより、ロボットハンド１２を異なるロボット本体１１で用いる場合でも、制御ユニット１３はロボットハンド１２に固有の補正パラメータを利用することができる。
【００２４】
また、ロボット駆動部２２は、パラメータ作成部２５で補正パラメータを作成するとき、ロボット本体１１においてロボットハンド１２に近い関節の軸を優先的に駆動することが好ましい。関節を有するロボット本体１１は、ロボットハンド１２に近い軸ほど、機械的な公差やガタツキなどに起因する無駄な動きが低減され、重力をはじめとする外乱の影響の排除が容易になる。したがって、ロボットハンド１２に近い軸を駆動することにより、取得した補正パラメータの誤差が減少し、より正確な補正パラメータを作成することができる。
【００２５】
次に、上記の第１実施形態によるロボット１０における把持力調整の手順について図５に基づいて説明する。
把持力の調整は、任意の時期に行なうことができる。把持力の調整は、例えばロボット１０の起動ごとに行なってもよく、ロボットハンド１２の作動累積期間が予め設定した期間に到達するごとに行なってもよい。
【００２６】
ロボット駆動部２２は、所定の調整時期に到達すると、ロボット本体１１およびロボットハンド１２を起動する（Ｓ１０１）。これとともに、ハンド制御部２３は、爪１７を所定の位置に設定する（Ｓ１０２）。これにより、ロボットハンド１２の爪１７は、所定の位置へ移動する。ここで、爪１７の所定の位置は、例えば開閉する爪１７のストローク端よりもＡ（ｍｍ）内側に設定される。Ａは任意の値であり、ロボットハンド１２の寸法などに応じて設定される。また、この所定の位置は、爪１７に設定された当初の間隔に相当する。次に、ロボット駆動部２２は、ロボット本体１１を調整のための調整位置へ移動する（Ｓ１０３）。このとき、ロボット駆動部２２は、ロボット本体１１の姿勢を調整のための初期姿勢とする。調整位置は、図３に示すように固定された対象物２８が設けられている位置である。そして、初期姿勢は、ロボットハンド１２の把持力の調整に適した任意の姿勢である。
【００２７】
パラメータ作成部２５は、初期的な目標力Ｆを、調整範囲における最小値である最小目標力Ｆｍｉｎに設定する（Ｓ１０４）。この最小目標力Ｆｍｉｎは、ロボットハンド１２に要求される最小把持力Ｆｈ１に相当する。これとともに、ロボット駆動部２２は、ロボット本体１１を駆動する際の目標力Ｆを決定する（Ｓ１０５）。すなわち、第１回目の処理では、ロボット駆動部２２は、Ｓ１０４で設定した最小目標力Ｆｍｉｎを目標力Ｆとして決定する。
【００２８】
ロボット駆動部２２は、爪１７が対象物２８に接するようにロボット本体１１を駆動する（Ｓ１０６）。すなわち、ロボット駆動部２２は、各軸の図示しないモータを駆動して、ロボット本体１１の姿勢を変更し、爪１７を対象物２８に押し当てる。このとき、ロボット本体１１は、Ｓ１０５で決定された目標力Ｆでロボットハンド１２の爪１７を対象物２８に押し当てる。
【００２９】
ここで、パラメータ作成部２５は、ロボットハンド１２の爪１７が予め設定したＢ（ｍｍ）以上、移動していないか否かを判断する（Ｓ１０７）。ロボットハンド１２の爪１７は、モータ１５から駆動力が加えられる。そのため、通常、爪１７を対象物２８に押し当てた状態でロボット本体１１を目標力Ｆで駆動しても、爪１７は移動しない。そこで、パラメータ作成部２５は、爪１７がＢ（ｍｍ）以上、移動したと判断すると（Ｓ１０７：Ｎｏ）、ロボットハンド１２の故障であると判断し（Ｓ１０８）、把持力調整の処理を終了する。設定値であるＢは、Ｓ１０２で用いたＡよりも小さな値に設定されている。パラメータ作成部２５は、例えばロボットハンド１２に設けられている位置センサなどから、爪１７の位置を取得する。そして、パラメータ作成部２５は、取得した爪１７の位置を用いて、爪１７の移動量がＢ（ｍｍ）以上となっているか否かを判断する。
【００３０】
一方、ロボットハンド１２の爪１７が移動していないと判断すると（Ｓ１０７：Ｙｅｓ）、電流取得部２４はモータ１５に供給される供給電流Ｉｓを取得する（Ｓ１０９）。すなわち、電流取得部２４は、ロボット本体１１が目標力Ｆで駆動されているとき、モータ１５に供給される供給電流Ｉｓを取得する。パラメータ作成部２５は、Ｓ１０５で決定した目標力Ｆ、およびＳ１０９で取得した供給電流Ｉｓを保存する（Ｓ１１０）。すなわち、パラメータ作成部２５は、ロボットハンド１２の把持力Ｆｈに対応する目標力Ｆと、この目標力Ｆのときにモータ１５へ供給された供給電流Ｉｓとを関連づけ、一時的に保存する。関連づけられた目標力Ｆと供給電流Ｉｓとの関係は、例えば演算部２１のＲＡＭまたは記憶部２９に記憶される。
【００３１】
パラメータ作成部２５は、目標力Ｆと供給電流Ｉｓとの関係を保存すると、目標力ＦをｄＦだけ増加する（Ｓ１１１）。すなわち、パラメータ作成部２５は、目標力Ｆを、Ｆ＝Ｆ＋ｄｆに設定する。このｄｆは、ロボットハンド１２に設定可能な把持力Ｆｈの分解能に相当する。但し、ｄｆは、分解能に厳密に一致しなくてもよい。例えば、ロボットハンド１２の特性にあわせて、最小把持力Ｆｈ１と最大把持力Ｆｈ２との間を任意の数で分割し、分割した一つの区間をｄｆとしてもよい。
【００３２】
パラメータ作成部２５は、Ｓ１１１で設定した新たな目標力Ｆが最大目標力Ｆｍａｘ以下であるか否かを判断する（Ｓ１１２）。この最大目標力Ｆｍａｘは、ロボットハンド１２に要求される最大把持力Ｆｈ２に相当する。すなわち、ロボットハンド１２は、最小把持力Ｆｈ１から最大把持力Ｆｈ２との間で把持力Ｆｈを設定することができる。このように、パラメータ作成部２５は、Ｓ１１２で新たに設定した目標力Ｆが最大目標力Ｆｍａｘ以下であるか否かを判断する。
【００３３】
パラメータ作成部２５は、Ｓ１１３において目標力Ｆが最大目標力Ｆｍａｘ以下であると判断すると（Ｓ１１２：Ｙｅｓ）、Ｓ１０５にリターンし、新たに設定した目標力ＦでＳ１０５以降の処理を繰り返す。一方、パラメータ作成部２５は、Ｓ１１２において目標力Ｆが最大目標力Ｆｍａｘに達したと判断すると（Ｓ１１２：Ｎｏ）、Ｓ１１０において一時的に保存した目標力Ｆと供給電流Ｉｓとの関係から補正テーブルを作成する（Ｓ１１３）。すなわち、パラメータ作成部２５は、目標力Ｆと供給電流Ｉｓとの関係の取得が終了したと判断する。そして、パラメータ作成部２５は、作成した補正テーブルをロボットハンド１２の記憶部２９に記憶する（Ｓ１１４）。
以上の手順により、把持力Ｆｈを調整するための補正パラメータが作成される。把持力制御部２６は、この作成された補正パラメータを用いて、ロボットハンド１２の把持力Ｆｈを制御する。
【００３４】
第１実施形態では、ロボット本体１１は予め設定された目標力Ｆで駆動される。ロボット本体１１の駆動によって、ロボットハンド１２の爪１７は固定された対象物２８に接する。ロボットハンド１２の爪１７は、対象物２８に接することにより、その移動が制限され、対象物２８と接した状態を維持する。すなわち、ロボットハンド１２の爪１７は、対象物２８と接することにより、ロボット本体１１の目標力Ｆに対抗して静止する。このとき、ロボットハンド１２のモータ１５は、爪１７の静止を維持するための力を発揮する。このモータ１５が発生する力は、ロボット本体１１の目標力Ｆに対応する。そのため、供給電流Ｉｓによってモータ１５が発生する力は、ロボットハンド１２の把持力Ｆｈに相関する。そこで、ロボット本体１１に既知の目標力Ｆを設定し、この目標力Ｆでロボット本体１１を駆動したときにモータ１５へ供給される供給電流Ｉｓを取得することにより、モータ１５への供給電流Ｉｓと把持力Ｆｈとの関係が補正パラメータとして取得される。ロボットハンド１２の把持力Ｆｈは、この補正パラメータを用いて制御される。これにより、例えば摩耗などによってロボットハンド１２の把持力Ｆｈが経時的に変化する場合でも、補正パラメータを用いることでモータ１５への供給電流Ｉｓが補正される。その結果、力覚センサなどの追加の構成を必要とすることなく、目標力Ｆでのロボット本体１１の駆動、および爪１７と対象物２８との接触という簡単な動作でモータ１５への供給電流Ｉｓとロボットハンド１２の把持力Ｆｈとの関係が取得される。したがって、簡単な構成で経時的な変化にともなう把持力の変化を補正することができる。
【００３５】
また、第１実施形態では、作成された補正パラメータは記憶部２９に記憶される。そして、この記憶部２９は、ロボットハンド１２に設けられている。これにより、ロボットハンド１２の個々に設けられた記憶部２９は、ロボットハンド１２の個体毎の補正パラメータを記憶する。そのため、ロボットハンド１２を異なるロボット本体１１で用いる場合でも、記憶部２９に記憶された補正パラメータは適用されるロボット本体１１に提供される。したがって、ロボットハンド１２を複数のロボット本体１１で用いる場合でも、補正パラメータをいずれのロボット本体１１でも利用することができ、把持力Ｆｈの補正を高精度に行なうことができる。
【００３６】
第１実施形態では、補正パラメータは、目標力Ｆを、小さな値である最小目標力Ｆｍｉｎから大きな値である最大目標力Ｆｍａｘへ徐々に変化させながら作成される。初期的に目標力Ｆを大きな値に設定すると、固定された対象物２８に接する爪１７に過大な力が加わり、ロボットハンド１２の破損や損傷を招くおそれがある。そこで、最小目標力Ｆｍｉｎから最大目標力Ｆｍａｘに変化させながら補正パラメータを作成することにより、ロボットハンド１２の破損や損傷が低減される。したがって、安全かつ確実に補正パラメータを作成することができる。
【００３７】
（第２実施形態）
第２実施形態によるロボット１０の構成について説明する。
第２実施形態によるロボット１０は、図６および図７に示すようにロボットハンド１２にロック機構３１を有している点で第１実施形態と異なっている。第２実施形態のロボットハンド１２に設けられているロック機構３１は、電力などの動力を必要としない無動力で爪１７の位置を固定する。すなわち、ロック機構３１は、例えば弾性体と部材とを組み合わせた機械的な機構などによって無動力で爪１７の移動を制限する。このようなロック機構３１を有するロボットハンド１２は、爪１７の固定に電力を必要としないため、爪１７に力が加わってもモータ１５に電流が流れない。第２実施形態のロボット１０は、このロック機構３１の有無以外、機械的な構成が第１実施形態と共通している。したがって、以下、第２実施形態のロボット１０について、第１実施形態との相違点を説明する。
【００３８】
制御ユニット１３は、演算部２１、ロボット駆動部２２、ハンド制御部２３、外力検出部３２、パラメータ作成部２５および把持力制御部２６を備えている。ロボット駆動部２２およびハンド制御部２３の機能は、第１実施形態と共通である。外力検出部３２は、ロボット本体１１に加わる外力を外力Ｆｘとして取得する。ロボット本体１１は、複数の関節における軸を中心に回転する。ロボット本体１１は、これら複数の軸の各所に加わる反力を外力Ｆｘとして検出する。外力Ｆｘは、例えば外力センサなどによって直接検出、または各軸を駆動する図示しないモータへ供給する電流などから間接的に検出される。なお、外力Ｆｘは、外力センサや電流などによらずその他の任意の手法で取得してもよい。
【００３９】
本実施形態の場合、補正パラメータを作成するとき、ロボットハンド１２の爪１７は図７に示すように固定された対象物２８に押し当てられる。ハンド制御部２３は、このようにロボットハンド１２の爪１７が対象物２８に押し当てられているとき、モータ１５へ供給電流Ｉｓを供給する。すなわち、ハンド制御部２３は、爪１７と対象物２８とが接した状態でモータ１５へ供給電流Ｉｓを供給する。これにより、爪１７は、供給電流Ｉｓによって把持力Ｆｈを発揮する。このとき、ロボット本体１１は、供給電流Ｉｓが供給されたモータ１５によって駆動される爪１７の把持力Ｆｈに相当する力を受ける。すなわち、ロボット本体１１は、この爪１７の把持力Ｆｈによって受ける力に対抗して姿勢および位置を維持するために、爪１７の把持力Ｆｈに応じた外力Ｆｘを受ける。このように供給電流Ｉｓで発生する把持力Ｆｈに対抗してロボット本体１１が外力Ｆｘを受けるとき、外力検出部３２はこの外力Ｆｘを検出する。
【００４０】
パラメータ作成部２５は、補正パラメータを作成する。具体的には、パラメータ作成部２５は、モータ１５に供給する供給電流Ｉｓと、外力検出部３２で検出した外力Ｆｘとから補正パラメータを作成する。モータ１５へ供給する供給電流Ｉｓは、既知の値として設定される。そして、固定された対象物２８に爪１７が接しているとき、ロボット本体１１に加わる外力Ｆｘは供給電流Ｉｓによって発生する把持力Ｆｈに一致する。このとき、ロボット本体１１は、姿勢および位置を維持するために、ロボットハンド１２に発生する把持力Ｆｈに相当する力を受ける。つまり、ロボット本体１１は、把持力Ｆｈに一致する力を外力Ｆｘとして受けている。
【００４１】
ここで、ロボットハンド１２は、モータ１５へ供給される供給電流Ｉｓによって、把持力Ｆｈを発揮している。つまり、ロボット本体１１に加わる外力Ｆｘは、供給電流Ｉｓによってモータ１５が発生する把持力Ｆｈに相当する。これにより、既知の供給電流Ｉｓと、ロボット本体１１に加わる外力Ｆｘとから、供給電流Ｉｓとロボットハンド１２の把持力Ｆｈとの相関が得られる。そして、供給電流Ｉｓを変化させながら外力Ｆｘを検出することにより、供給電流Ｉｓと把持力Ｆｈとの相関が得られる。このように、パラメータ作成部２５は、外力Ｆｘと供給電流Ｉｓとから補正パラメータを作成する。すなわち、把持力Ｆｈに対応する外力Ｆｘと供給電流Ｉｓとは、例えば図８に示すような相関性を示す。パラメータ作成部２５は、把持力Ｆｈに対応する外力Ｆｘと供給電流Ｉｓとの関係を、補正テーブルまたは補正数式で示される補正パラメータとして作成する。なお、図８に示す把持力Ｆｈと供給電流Ｉｓとの関係は、説明のための一例であり、必ずしも一次関数になるとは限らない。
【００４２】
把持力制御部２６は、パラメータ作成部２５で作成された補正パラメータを用いてハンド制御部２３を通してロボットハンド１２の把持力Ｆｈを制御する。これにより、経時的な変化によって初期的に設定した供給電流Ｉｓと把持力Ｆｈとの関係に齟齬が発生しても、供給電流Ｉｓは補正パラメータによって補正される。したがって、ロボットハンド１２は、経時的な変化の影響を受けることなく安定した把持力Ｆｈを発揮する。また、ロボット１０は、第１実施形態と同様に記憶部２９を備えていてもよい。
【００４３】
次に、上記の第２実施形態によるロボット１０における把持力調整の手順について図９に基づいて説明する。
把持力の調整は、第１実施形態と同様に任意の時期に行なうことができる。
ロボット駆動部２２は、所定の調整時期に到達すると、ロボット本体１１およびロボットハンド１２を起動する（Ｓ２０１）。これとともに、ハンド制御部２３は、爪１７を所定の位置に設定する（Ｓ２０２）。第２実施形態では、ロボットハンド１２の爪１７は、互いの間隔が最大となる開状態となる。ロボット駆動部２２は、ロボット本体１１を調整ための調整位置へ移動する（Ｓ２０３）。このとき、ロボット駆動部２２は、ロボット本体１１の姿勢を調整のための初期姿勢とする。調整位置は、図７に示すように固定された対象物２８が設けられている位置である。そして、初期姿勢は、把持力Ｆｈの調整に適した任意の姿勢である。
【００４４】
パラメータ作成部２５は、初期的な供給電流Ｉｓを、調整範囲における最小値である最小電流値Ｉｍｉｎに設定する（Ｓ２０４）。この最小電流値Ｉｍｉｎは、ロボットハンド１２のモータ１５に供給可能な電流の最小値であり、ロボットハンド１２が発揮する最小把持力Ｆｈ１に対応する。これとともに、ハンド制御部２３は、モータ１５へ供給する供給電流Ｉｓを決定する（Ｓ２０５）。すなわち、第１回目の処理では、ハンド制御部２３は、Ｓ２０４で設定した最小電流値Ｉｍｉｎを供給電流Ｉｓとして決定する。
【００４５】
ハンド制御部２３は、爪１７が対象物２８に接するようにロボットハンド１２を駆動する（Ｓ２０６）。すなわち、ハンド制御部２３は、ロボットハンド１２のモータ１５によって、対向する爪１７の間隔が小さくなる方向へ駆動する。そして、ハンド制御部２３は、爪１７を対象物２８に押し当てる。このとき、ハンド制御部２３は、Ｓ２０５で決定された供給電流Ｉｓをモータ１５へ供給する。そのため、爪１７は、供給電流Ｉｓに対応してモータ１５から発生する力で対象物２８に押し当てられる。
【００４６】
供給電流Ｉｓでロボットハンド１２の爪１７が駆動されると、外力検出部３２はロボット本体１１に加わる外力Ｆｘを検出する（Ｓ２０７）。すなわち、外力検出部３２は、ロボットハンド１２のモータ１５へ供給電流Ｉｓが供給されているとき、ロボット本体１１に加わる外力Ｆｘを検出する。パラメータ作成部２５は、Ｓ２０５で決定した供給電流Ｉｓ、およびＳ２０７で検出した外力Ｆｘを保存する（Ｓ２０８）。すなわち、パラメータ作成部２５は、モータ１５へ供給した供給電流Ｉｓと、この供給電流Ｉｓのときにロボットハンド１２が発生する把持力Ｆｈによりロボット本体１１に加わる外力Ｆｘとを関連づけ、一時的に保存する。関連づけられた供給電流Ｉｓと外力Ｆｘとの関係は、例えば演算部２１のＲＡＭまたは記憶部２９に記憶される。
【００４７】
パラメータ作成部２５は、供給電流Ｉｓと外力Ｆｘとの関係を保存すると、供給電流Ｉｓをｄｉだけ増加する（Ｓ２０９）。すなわち、パラメータ作成部２５は、供給電流Ｉｓを、Ｉｓ＝Ｉｓ＋ｄｉに設定する。このｄｉは、ロボットハンド１２に設定可能な把持力の分解能に相関する電流の値である。但し、ｄｉは、分解能に厳密に一致しなくてもよい。例えば、ロボットハンド１２の特性にあわせて、最小把持力Ｆｈ１と最大把持力Ｆｈ２との間を任意の数で分割し、分割した一つの区間に対応する電流をｄｉとしてもよい。
【００４８】
パラメータ作成部２５は、Ｓ２０９で設定した新たな供給電流Ｉｓが最大電流値Ｉｍａｘに到達したか否かを判断する（Ｓ２１０）。この最大電流値Ｉｍａｘは、ロボットハンド１２に要求される最大把持力Ｆｈ２を発揮する供給電流Ｉｓに相当する。すなわち、ロボットハンド１２は、最小把持力Ｆｈ１から最大把持力Ｆｈ２との間で把持力Ｆｈを設定することができ、これらに対応して供給電流Ｉｓも最小電流値Ｉｍｉｎから最大電流値Ｉｍａｘも設定される。このように、パラメータ作成部２５は、Ｓ２０９で新たに設定した供給電流Ｉｓが最大電流値Ｉｍａｘに到達したか否かを判断する。
【００４９】
パラメータ作成部２５は、Ｓ２１０において供給電流Ｉｓが最大電流値Ｉｍａｘに到達していないと判断すると（Ｓ２１０：Ｎｏ）、Ｓ２０５にリターンし、新たに設定した供給電流ＩｓでＳ２０５以降の処理を繰り返す。一方、パラメータ作成部２５は、Ｓ２１０において供給電流Ｉｓが最大電流値Ｉｍａｘに達したと判断すると（Ｓ２１０：Ｙｅｓ）、供給電流Ｉｓが最大電流値Ｉｍａｘであるか否かを判断する（Ｓ２１１）。すなわち、パラメータ作成部２５は、Ｉｓ＝Ｉｍａｘであるか否かを判断する。
【００５０】
パラメータ作成部２５は、Ｓ２１１において供給電流Ｉｓが最大電流値Ｉｍａｘであると判断すると（Ｓ２１１：Ｙｅｓ）、Ｓ２０８において一時的に保存した供給電流Ｉｓと外力Ｆｘとの関係から補正テーブルを作成する（Ｓ２１２）。そして、パラメータ作成部２５は、作成した補正テーブルをロボットハンド１２の記憶部２９に記憶する（Ｓ２１３）。一方、パラメータ作成部２５は、Ｓ２１１において供給電流Ｉｓが最大電流値Ｉｍａｘでないと判断すると（Ｓ２１１：Ｎｏ）、ロボットハンド１２の故障であると判断し（Ｓ２１４）、把持力調整の処理を終了する。すなわち、Ｓ２１１において供給電流Ｉｓが最大電流値Ｉｍａｘでないとき、モータ１５には最大電流値Ｉｍａｘを超える大きな供給電流Ｉｓが供給されていることになる。最大電流値Ｉｍａｘを超える供給電流Ｉｓが供給されているとき、過大な電流がモータ１５へ供給されていることとなり、モータ１５またはロボットハンド１２の故障の可能性が高い。したがって、この場合、パラメータ作成部２５は、ロボットハンド１２の故障として処理を終了する。
以上の手順により、把持力Ｆｈを調整するための補正パラメータが作成される。把持力制御部２６は、この作成された補正パラメータを用いて、ロボットハンド１２の把持力Ｆｈを制御する。
【００５１】
第２実施形態では、ロボットハンド１２は無動力で爪１７の位置を保持するロック機構３１を有している。ロボットハンド１２の爪１７は、固定された対象物２８に予め設定された供給電流Ｉｓに対応する把持力Ｆｈで押し当てられる。ロボットハンド１２が取り付けられているロボット本体１１は、爪１７が対象物２８に接しても、その姿勢を維持する。すなわち、ロボット本体１１は、モータ１５から加わる力で爪が対象物２８と接していても、爪１７に加わる力に対抗して静止する。このとき、ロボット本体１１は、供給電流Ｉｓに対応してロボットハンド１２で発生する把持力Ｆｈに対抗して静止を維持するために各部に力が発生する。この力は、外力Ｆｘとして検出される。そのため、この外力Ｆｘは、供給電流Ｉｓに対応してロボットハンド１２が発生する把持力Ｆｈに相関する。そこで、ロボットハンド１２のモータ１５に既知の供給電流Ｉｓを供給し、この供給電流Ｉｓでロボットハンド１２の爪１７を駆動したときにロボット本体１１に加わる外力Ｆｘを検出することにより、モータ１５への供給電流Ｉｓと外力Ｆｘに対応する把持力Ｆｈとの関係が補正パラメータとして取得される。ロボットハンド１２の把持力Ｆｈは、この補正パラメータを用いて制御される。これにより、例えば摩耗などによってロボットハンド１２の把持力Ｆｈが経時的に変化する場合でも、補正パラメータを用いることでモータ１５への供給電流Ｉｓが補正される。その結果、力覚センサなどの追加の構成を必要とすることなく、供給電流Ｉｓによるロボットハンド１２の駆動、および爪１７と対象物２８との接触という簡単な動作でモータ１５への供給電流Ｉｓとロボットハンド１２の把持力Ｆｈとの関係が取得される。したがって、簡単な構成で経時的な変化にともなう把持力Ｆｈの変化を補正することができる。
【００５２】
また、第２実施形態では、作成された補正パラメータは記憶部２９に記憶される。そして、この記憶部２９は、ロボットハンド１２に設けられている。これにより、ロボットハンド１２の個々に設けられた記憶部２９は、ロボットハンド１２の個体毎の補正パラメータを記憶する。そのため、ロボットハンド１２を異なるロボット本体１１で用いる場合でも、記憶部２９に記憶された補正パラメータは適用されるロボット本体１１に提供される。したがって、ロボットハンド１２を複数のロボット本体１１で用いる場合でも、補正パラメータをいずれのロボット本体１１でも利用することができ、把持力Ｆｈの補正を高精度に行なうことができる。
【００５３】
第２実施形態では、補正パラメータは、供給電流Ｉｓを、小さな値である最小電流値Ｉｍｉｎから大きな値である最大電流値Ｉｍａｘに徐々に変化させながら作成される。初期的に供給電流Ｉｓを大きな値に設定すると、固定された対象物２８に接する爪１７に過大な力が加わり、ロボットハンド１２の破損や損傷を招くおそれがある。そこで、最小電流値Ｉｍｉｎから最大電流値Ｉｍａｘに変化させながら補正パラメータを作成することにより、ロボットハンド１２の破損や損傷が低減される。したがって、安全かつ確実に補正パラメータを作成することができる。
【００５４】
以上説明した本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。
【符号の説明】
【００５５】
図面中、１０はロボット、１１はロボット本体、１２はロボットハンド、１３は制御ユニット（ロボット制御装置）、１５はモータ、１７は爪、２２はロボット駆動部、２３はハンド制御部、２４は電流取得部、２５はパラメータ作成部、２６は把持力制御部、２８は対象物、２９は記憶部、３１はロック機構、３２は外力検出部を示す。
【図１】
2019098406.tif 000003
【図２】
2019098406.tif 000004
【図３】
2019098406.tif 000005
【図４】
2019098406.tif 000006
【図５】
2019098406.tif 000007
【図６】
2019098406.tif 000008
【図７】
2019098406.tif 000009
【図８】
2019098406.tif 000010
【図９】
2019098406.tif 000011