(57)【要約】【課題】従来の駆動方法では、制御の精度を向上させることが困難である。【解決手段】変位させるべきワークＷに接する指部４３ａと、指部４３ａを変位させる動力を発生するモーター５１ａと、指部４３ａに設けられ、ワークＷから受ける荷重を検出する荷重センサー５３ａと、モーター５１ａの駆動を制御する制御部６１と、指部４３ａでワークＷに力を作用させた場合に、荷重センサー５３ａによって検出された荷重に基づいて、モーター５１ａの駆動速度を変化させる速度リミット生成部１０１と、を有することを特徴とするロボット装置。【選択図】図５
2013144326.tif 000002
【特許請求の範囲】
【請求項１】
変位させるべきワークに接する接触片と、
前記接触片を変位させる動力を発生するステッピングモーターと、
前記接触片に設けられ、前記ワークから受ける荷重を検出する力センサーと、
前記ステッピングモーターの駆動を制御する制御部と、を有し、
前記制御部は、前記接触片で前記ワークに力を作用させた場合に、前記力センサーによって検出された前記荷重に基づいて、前記ステッピングモーターの駆動速度を変化させる、
ことを特徴とするロボット装置。
【請求項２】
前記荷重が所定の値よりも大きい場合に、前記駆動速度を下げる、ことを特徴とする請求項１に記載のロボット装置。
【請求項３】
前記接触片は、前記ワークを把持するハンドである、ことを特徴とする請求項１又は２に記載のロボット装置。
【請求項４】
前記ステッピングモーターからの動力は、前記ハンドを変位させる動力として前記ハンドに伝達される、
ことを特徴とする請求項３に記載のロボット装置。
【請求項５】
前記荷重と前記力センサーの前記ハンドに対する位置とに基づいて負荷トルクを算出する負荷トルク算出部と、
前記ステッピングモーターの出力トルクと駆動速度との関係を示すトルク特性を記憶する記憶部と、を有し、
前記制御部は、前記負荷トルクを前記トルク特性に照合し、前記ステッピングモーターが追従できる最高速度で前記ステッピングモーターの駆動を制御する、
ことを特徴とする請求項４に記載のロボット装置。
【請求項６】
変位させるべきワークに接触片を接触させた状態で、ステッピングモーターから動力を発生させることによって前記接触片で前記ワークに力を作用させた場合に、前記ワークから前記接触片が受ける荷重を、前記接触片に設けられた力センサーで検出した結果に基づいて、前記ステッピングモーターの駆動速度を変化させる、
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット装置、制御方法に関する。
【背景技術】
【０００２】
従来から、ステッピングモーターの駆動方法において、ステッピングモーターの脱調を防止できる方法が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２９６０２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記特許文献１には、ステッピングモーターからの動力で制御対象の位置を制御するときに、ステッピングモーターを駆動したときの駆動パルス数と、ステッピングモーターに取り付けられたエンコーダーからの出力に基づいて把握した制御対象の変位量とを比較することによって、ステッピングモーターの脱調を検知する方法が記載されている。
【０００５】
しかしながら、上記特許文献１に記載の方法では、制御対象の変位にかかる負荷を検出することができないので、正確に力を制御することが困難である。
つまり、従来の駆動方法では、力の精度を向上させることが困難であるという課題がある。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現され得る。
【０００７】
［適用例１］変位させるべきワークに接する接触片と、前記接触片を変位させる動力を発生するステッピングモーターと、前記接触片に設けられ、前記ワークから受ける荷重を検出する力センサーと、前記ステッピングモーターの駆動を制御する制御部と、を有し、前記制御部は、前記接触片で前記ワークに力を作用させた場合に、前記力センサーによって検出された前記荷重に基づいて、前記ステッピングモーターの駆動速度を変化させる、ことを特徴とするロボット装置。
【０００８】
この適用例のロボット装置では、ステッピングモーターからの動力によって接触片でワークに力を作用させた場合に、ワークから接触片が受ける荷重を力センサーで検出した結果に基づいて、ステッピングモーターの駆動速度を変化させることができる。このロボット装置では、力センサーで検出した荷重から把握されるワークの負荷に基づいてステッピングモーターの駆動速度を変化させることができるので、ワークの負荷に応じた駆動速度にステッピングモーターの駆動を制御することができる。ステッピングモーターでは、駆動速度の速さに応じて出力トルクが下がっていく。このため、このロボット装置では、ワークの負荷に応じた駆動速度にステッピングモーターの駆動を制御することによって、ステッピングモーターの脱調を低減することができる。
また、このロボット装置では、ワークから接触片が受ける荷重を検出する力センサーが、ワークに接する接触片に設けられているので、ワークから接触片が受ける荷重の誤差を極めて低く抑えることができる。この結果、ワークの負荷を正確に把握することができるので、このワークの負荷に基づいて駆動が制御されるステッピングモーターの制御の精度を向上させることができる。これにより、ワークの力の精度を向上させることができる。
【０００９】
［適用例２］上記のロボット装置であって、前記荷重が所定の値よりも大きい場合に、前記駆動速度を下げる、ことを特徴とするロボット装置。
【００１０】
［適用例３］上記のロボット装置であって、前記接触片は、前記ワークを把持するハンドである、ことを特徴とするロボット装置。
【００１１】
この適用例では、ワークを把持するハンドの力の精度を向上させることができる。
【００１２】
［適用例４］上記のロボット装置であって、前記ステッピングモーターからの動力は、前記ハンドを変位させる動力として前記ハンドに伝達される、ことを特徴とするロボット装置。
【００１３】
この適用例では、ステッピングモーターからの動力がハンドに伝達されるので、ハンドの力の精度を向上させることができる。
【００１４】
［適用例５］上記のロボット装置であって、前記荷重と前記力センサーの前記ハンドに対する位置とに基づいて負荷トルクを算出する負荷トルク算出部と、前記ステッピングモーターの出力トルクと駆動速度との関係を示すトルク特性を記憶する記憶部と、を有し、前記制御部は、前記負荷トルクを前記トルク特性に照合し、前記ステッピングモーターが追従できる最高速度で前記ステッピングモーターの駆動を制御する、ことを特徴とするロボット装置。
【００１５】
この適用例では、算出した負荷トルクをトルク特性に照合し、ステッピングモーターが追従できる最高速度で駆動することができるので、ワークを迅速に変位させることができる。
【００１６】
［適用例６］変位させるべきワークに接触片を接触させた状態で、ステッピングモーターから動力を発生させることによって前記接触片で前記ワークに力を作用させた場合に、前記ワークから前記接触片が受ける荷重を、前記接触片に設けられた力センサーで検出した結果に基づいて、前記ステッピングモーターの駆動速度を変化させる、ことを特徴とする制御方法。
【００１７】
この適用例の制御方法では、ステッピングモーターからの動力によって接触片でワークに力を作用させた場合に、ワークから接触片が受ける荷重を力センサーで検出した結果に基づいて、ステッピングモーターの駆動速度を変化させることができる。この制御方法では、力センサーで検出した荷重から把握されるワークの負荷に基づいてステッピングモーターの駆動速度を変化させることができるので、ワークの負荷に応じた駆動速度にステッピングモーターの駆動を制御することができる。ステッピングモーターでは、駆動速度の速さに応じて出力トルクが下がっていく。このため、この制御方法では、ワークの負荷に応じた駆動速度にステッピングモーターの駆動を制御することによって、ステッピングモーターの脱調を防止することができる。
また、この制御方法では、ワークから接触片が受ける荷重を、接触片に設けられた力センサーで検出するので、ワークから接触片が受ける荷重の誤差を極めて低く抑えることができる。この結果、ワークの負荷を正確に把握することができるので、このワークの負荷に基づいて駆動が制御されるステッピングモーターの制御の精度を向上させることができる。これにより、ワークの力の精度と駆動速度を向上させることができる。
【図面の簡単な説明】
【００１８】
【図１】本実施形態におけるロボットの概略の構成を説明する外観図。
【図２】本実施形態におけるロボットのハンド部の概略の構成を説明する図。
【図３】本実施形態におけるロボットの概略の構成を示すブロック図。
【図４】本実施形態におけるモーターのトルク特性の例を示す図。
【図５】本実施形態における速度リミット生成部の概略の構成を説明するブロック図。
【図６】本実施形態におけるモーターのトルク特性の例を示す図。
【図７】本実施形態における速度設定処理の流れを説明する図。
【発明を実施するための形態】
【００１９】
図面を参照しながら、実施形態について説明する。なお、各図面において、それぞれの構成を認識可能な程度の大きさにするために、構成や部材の縮尺が異なっていることがある。
実施形態におけるロボット１は、概略の構成を示す斜視図である図１（ａ）に示すように、基台３と、支持台５と、アーム装置７と、ハンド装置９と、を有する。
基台３は、Ｘ方向及びＹ方向によって規定されるＸＹ平面に沿って延在している。なお、ＸＹ平面に直交する方向は、Ｚ方向として定められる。
支持台５は、基台３に据えられている。支持台５は、アーム装置７を支持している。
アーム装置７は、第１アーム２１と、第２アーム２３と、を有している。
【００２０】
第１アーム２１は、ロボット１の正面図である図１（ｂ）に示すように、一端側が関節部２５を介して支持台５に支持されている。第１アーム２１は、関節部２５によって回転軸２６を中心に旋回（回動）可能に構成されている。
第１アーム２１の他端側には、関節部２７を介して第２アーム２３の一端側が支持されている。第２アーム２３は、関節部２７によって回転軸２９を中心に旋回可能に構成されている。
なお、アーム装置７は、第１アーム２１を旋回させるための動力を発生させるモーター（図示せず）を有している。また、アーム装置７は、第２アーム２３を旋回させるための動力を発生させるモーター（図示せず）も有している。
第２アーム２３の関節部２７側とは反対側の他端側には、ハンド装置９が設けられている。
【００２１】
ハンド装置９は、昇降軸３１と、昇降装置３３と、揺動装置３５と、回転装置３７と、ハンド部３９と、を有している。ハンド装置９は、昇降装置３３を介して第２アーム２３に支持されている。
昇降装置３３は、昇降軸３１をＺ方向に沿って昇降させることができる。昇降装置３３は、昇降軸３１を昇降させるための動力を発生させる図示しない動力源を有している。動力源からの動力は、図示しない昇降機構を介して昇降軸３１に伝達される。これにより、昇降軸３１は、Ｚ方向に沿って昇降することができる。なお、本実施形態では、昇降軸３１を駆動するための動力源として図示しないモーターが採用されている。
昇降軸３１のＺ方向における下端側には、揺動装置３５及び回転装置３７を介してハンド部３９が支持されている。
【００２２】
ハンド部３９は、一対の指部４３を有している。一対の指部４３は、互いに、近づいたり遠ざかったりすることが可能に構成されている。以下において、一対の指部４３のそれぞれを識別する場合に、一対の指部４３は、それぞれ、指部４３ａ及び指部４３ｂと表記される。
また、ハンド部３９は、一対の指部４３を駆動するための動力を発生させる動力源を有している。この動力源からの動力は、図示しない伝動機構を介して一対の指部４３に伝達される。本実施形態では、一対の指部４３を駆動するための動力源として後述するモーターが採用されている。
【００２３】
これにより、ロボット１では、一対の指部４３でワークＷを挟持することができる。そして、ワークＷを一対の指部４３で挟持した状態でアーム装置７を駆動することによって、このワークＷを搬送することができる。以下においては、一対の指部４３がワークＷを挟持するという動作を、ハンド部３９がワークＷを掴むと表現したり、ハンド部３９がワークＷを把持すると表現したりすることがある。
回転装置３７は、ハンド部３９と昇降軸３１との間に介在しており、ハンド部３９を図２に示す回転軸４５を中心に回転させることができる。
【００２４】
揺動装置３５は、回転装置３７と昇降軸３１との間に介在しており、関節部４７を支点としてハンド部３９を、図２中のＲ方向に揺動させることができる。この関節部４７は、手首に例えられ得る。そして、ハンド部３９は、手首としての関節部４７を支点として首振り動作（揺動）を行うことができる。
なお、揺動装置３５は、ハンド部３９を揺動させるための動力を発生させるモーター（図示せず）を有している。また、回転装置３７は、ハンド部３９を回転させるための動力を発生させるモーター（図示せず）を有している。
【００２５】
ハンド部３９は、図２に示すように、モーター５１ａと、モーター５１ｂと、を有している。モーター５１ａ及びモーター５１ｂは、一対の指部４３を駆動するための動力を発生させる。モーター５１ａからの動力は、図示しない動力伝達機構を介して指部４３ａに伝達される。同様に、モーター５１ｂからの動力は、図示しない動力伝達機構を介して指部４３ｂに伝達される。モーター５１ａ及びモーター５１ｂとしては、それぞれ、例えば、ステッピングモーターや、サーボモーターなどの種々のモーターが採用され得る。本実施形態では、モーター５１ａ及びモーター５１ｂとして、それぞれ、ステッピングモーターが採用されている。
指部４３ａは、指片５２ａと、荷重センサー５３ａと、緩衝体５５ａと、を有している。指部４３ｂは、指片５２ｂと、荷重センサー５３ｂと、緩衝体５５ｂと、を有している。
指片５２ａは、中心Ｃ１を中心としてＲ１方向に揺動（旋回）可能に構成されている。同様に、指片５２ｂは、中心Ｃ２を中心としてＲ２方向に揺動（旋回）可能に構成されている。
【００２６】
なお、以下において、Ｒ１方向及びＲ２方向のそれぞれにおいて、指片５２ａと指片５２ｂとが互いに遠ざかる向きは開く向き（開方向）と表現され、指片５２ａと指片５２ｂとが互いに近づく向きは閉じる向き（閉方向）と表現される。また、指片５２ａと指片５２ｂを開方向に駆動することを、指片５２ａと指片５２ｂを開くと表現することがある。同様に、指片５２ａと指片５２ｂを閉方向に駆動することを、指片５２ａと指片５２ｂを閉じると表現することがある。
指片５２ａは、モーター５１ａからの動力によってＲ１方向に揺動する。また、指片５２ｂは、モーター５１ｂからの動力によってＲ２方向に揺動する。
上記の構成により、ハンド部３９では、ワークＷが指部４３ａと指部４３ｂとの間に位置している状態で指部４３ａ及び指部４３ｂを閉じることによって、ワークＷを指部４３ａと指部４３ｂとで挟持することができる。これにより、ロボット１では、ハンド部３９でワークＷを把持することができる。
【００２７】
荷重センサー５３ａは、荷重センサー５３ａにかかる荷重を検出する。荷重センサー５３ｂは、荷重センサー５３ｂにかかる荷重を検出する。荷重センサー５３ａ及び荷重センサー５３ｂとしては、それぞれ、ロードセルなどが採用され得る。
荷重センサー５３ａは、指片５２ａのモーター５１ａ側とは反対側に設けられている。荷重センサー５３ｂは、指片５２ｂのモーター５１ｂ側とは反対側に設けられている。
荷重センサー５３ａは、指片５２ｂ側に向けられた面に設けられている。荷重センサー５３ｂは、指片５２ａ側に向けられた面に設けられている。つまり、荷重センサー５３ａ及び荷重センサー５３ｂは、互いに向き合った状態で設けられている。
緩衝体５５ａは、荷重センサー５３ａの指片５２ａ側とは反対側、すなわち荷重センサー５３ａの指片５２ｂ側に設けられている。緩衝体５５ｂは、荷重センサー５３ｂの指片５２ｂ側とは反対側、すなわち荷重センサー５３ｂの指片５２ａ側に設けられている。
緩衝体５５ａ及び緩衝体５５ｂの材料としては、それぞれ、例えば、エラストマーやシリコーンゴムなどが採用され得る。
【００２８】
上記の構成により、荷重センサー５３ａ及び緩衝体５５ａは、ワークＷと指片５２ａとの間に介在する。また、荷重センサー５３ｂ及び緩衝体５５ｂは、ワークＷと指片５２ｂとの間に介在する。
緩衝体５５ａを介して指部４３ａがワークＷに接すると、指部４３ａには、ワークＷからの反力が作用する。ワークＷから指部４３ａに作用する反力は、荷重センサー５３ａによって荷重として検出される。同様に、緩衝体５５ｂを介して指部４３ｂがワークＷに接すると、指部４３ｂには、ワークＷからの反力が作用する。ワークＷから指部４３ｂに作用する反力は、荷重センサー５３ｂによって荷重として検出される。そして、指部４３ａ及び指部４３ｂにワークＷを把持させると、ワークＷの把持にかかる力（以下、把持力と呼ぶ）が荷重センサー５３ａや荷重センサー５３ｂによって検出される。
【００２９】
このように、本実施形態では、ワークＷの把持力を検出することができるので、検出された把持力に基づいてモーター５１ａやモーター５１ｂのトルクを制御することによって、把持力を制御することができる。これにより、ワークＷの把持にかかる把持力を適切な把持力に制御することができるので、過大な把持力によるワークＷの損傷や、過小な把持力によるワークＷの落下などの発生を低く抑えることができる。
本実施形態では、緩衝体５５ａがワークＷと荷重センサー５３ａとの間に介在する。また、緩衝体５５ｂがワークＷと荷重センサー５３ｂとの間に介在する。このため、ワークＷを指部４３ａと指部４３ｂとで挟持する場合に、指部４３ａや指部４３ｂでワークＷに損傷を与えてしまうことを回避することができる。また、ワークＷを指部４３ａと指部４３ｂとで挟持する場合に、荷重センサー５３ａや荷重センサー５３ｂが損傷してしまうことを回避することができる。
【００３０】
ロボット１は、図３に示すように、上記の各構成の動作を制御する制御部６１を有している。制御部６１は、ＣＰＵ（Central Processing Unit）６３と、駆動制御部６５と、メモリー部６７と、を有している。駆動制御部６５及びメモリー部６７は、バス６９を介してＣＰＵ６３に接続されている。
また、ロボット１は、モーター７１と、モーター７３と、モーター７５と、モーター７７と、モーター７９と、を有している。モーター７１、モーター７３、モーター７５、モーター７７、及びモーター７９は、それぞれ、入出力インターフェイス８３とバス６９とを介して制御部６１に接続されている。
【００３１】
モーター７１は、第１アーム２１を回動させるための動力を発生させる。
モーター７３は、第２アーム２３を回動させるための動力を発生させる。
モーター７５は、昇降軸３１を昇降させるための動力を発生させる。
モーター７７は、揺動装置３５を駆動するための動力を発生させる。モーター７７からの動力によって、ハンド部３９を揺動させることができる。
モーター７９は、回転装置３７を駆動するための動力を発生させる。モーター７９からの動力によって、ハンド部３９を回転させることができる。
なお、モーター５１ａ及びモーター５１ｂ、並びに、荷重センサー５３ａ及び荷重センサー５３ｂも、それぞれ、入出力インターフェイス８３とバス６９とを介して制御部６１に接続されている。
【００３２】
ＣＰＵ６３は、プロセッサーとして各種の演算処理を行う。駆動制御部６５は、各構成の駆動を制御する。メモリー部６７は、ＲＡＭ（Random Access Memory）や、ＲＯＭ（Read Only Memory）などを含んでいる。メモリー部６７には、ロボット１における動作の制御手順が記述されたプログラムソフト８４を記憶する領域や、各種のデータを一時的に展開する領域であるデータ展開部８５などが設定されている。データ展開部８５に展開されるデータとしては、例えば、ワークＷの搬送にかかる搬送処理等のプログラムデータなどが挙げられる。
また、メモリー部６７には、トルク特性記憶部８７が設けられている。トルク特性記憶部８７には、モーター５１ａ及びモーター５１ｂのそれぞれにおけるトルク特性を示すデータが記憶されている。トルク特性には、モーター５１ａ及びモーター５１ｂのそれぞれにおける出力トルクと駆動速度との関係が示される。
【００３３】
駆動制御部６５は、モーター制御部９１を有している。
モーター制御部９１は、ＣＰＵ６３からの指令に基づいて、モーター７１と、モーター７３と、モーター７５と、モーター７７と、モーター７９と、モーター５１ａと、モーター５１ｂとを、個別に制御する。
【００３４】
上記の構成を有するロボット１では、ワークＷの搬送にかかる搬送処理において、まず、ＣＰＵ６３は、モーター７１やモーター７３を駆動させることによって第１アーム２１や第２アーム２３を旋回させ、ハンド部３９を平面視でワークＷに重なる位置に配置させる。
次いで、ＣＰＵ６３は、モーター７５を駆動させることによって昇降軸３１を降下させ、ハンド部３９をワークＷに接近させる。
次いで、ＣＰＵ６３は、モーター５１ａ及びモーター５１ｂを駆動させることによって、一対の指部４３にワークＷを挟持させる。これにより、ワークＷが一対の指部４３に把持される。以下において、一対の指部４３がワークを把持する動作を把持動作と呼ぶ。
次いで、ＣＰＵ６３は、モーター７５を駆動させることによって昇降軸３１を上昇させ、ワークＷの搬送を開始させる。
【００３５】
次いで、ＣＰＵ６３は、モーター７１やモーター７３を駆動させることによって第１アーム２１や第２アーム２３を旋回させ、ワークＷを所定の位置まで搬送させる。
次いで、ＣＰＵ６３は、モーター７５を駆動させることによって昇降軸３１を降下させ、ワークＷを所定の配置場所に載置させる。
次いで、ＣＰＵ６３は、モーター５１ａ及びモーター５１ｂを駆動させることによって、一対の指部４３での把持動作を解除させる。これにより、１つのワークＷにかかる搬送処理が終了する。なお、この搬送処理において、モーター７９を駆動させることによって回転装置３７を駆動させ、ハンド部３９を回転させたり、モーター７７を駆動させることによって揺動装置３５を駆動させ、ハンド部３９を揺動させたりしてもよい。
【００３６】
モーター５１ａやモーター５１ｂとして採用されているステッピングモーターは、オープンループ制御で駆動され得る。ステッピングモーターのオープンループ制御では、ステッピングモーターの駆動量（ステップ数）を入力とし、その入力に対応する駆動量が出力として得られる。このとき、過負荷などに起因してステッピングモーターが入力ステップ数に追従できずない脱調現象が発生すると、入力ステップ数に対応する駆動量が得られない。この結果、制御対象の位置精度が大きく悪化する。
このような脱調現象の発生を回避するために、一般的に、制御対象の負荷トルクを上回るトルクを出力できるステッピングモーターが選定される。これにより、ステッピングモーターの出力トルクに負荷トルクを上回るマージンを設けることができる。この出力トルクのマージンにより、脱調現象の発生が回避され得る。
【００３７】
また、脱調現象の発生を回避する他の方法としては、一般的に、ステッピングモーターの駆動速度を、制御対象の負荷を上回るトルクが出力され得る速度に設定する駆動方法も採用される。
一般的に、ステッピングモーターでは、駆動速度に対する出力トルクの特性の一例を示す図である図４に示すように、駆動速度の上昇に従って出力トルクが低下していく。換言すれば、ステッピングモーターの駆動速度を低下させることによって、出力トルクを高めることができる。
ステッピングモーターの出力トルクに負荷トルクを上回るマージンを設けたり、ステッピングモーターの駆動速度を低下させたりすることによって、脱調現象の発生を回避することができる。しかしながら、これらの方法は、ステッピングモーターの出力に余裕を設けるものである。このため、これらの方法では、ステッピングモーターの性能を十分に活用することが困難である。
【００３８】
本実施形態では、ロボット１は、図５に示すように、モーター５１ａ及びモーター５１ｂのそれぞれの駆動速度を制御する速度リミット生成部１０１を有している。この速度リミット生成部１０１によって、モーター５１ａ及びモーター５１ｂのそれぞれにおいて、脱調現象の発生を抑えつつ駆動速度を高めることができる。これにより、モーター５１ａやモーター５１ｂの出力トルクに設けるマージンを軽減することができる。これにより、本実施形態では、ステッピングモーターの性能を十分に活用することができる。
なお、以下では、一対の指部４３のうちの指部４３ａを例に説明する。指部４３ｂについても、指部４３ａと同様の構成及び同様の機能であるので、指部４３ａについての説明をもって指部４３ｂについての説明を省略する。
【００３９】
速度リミット生成部１０１は、負荷トルク演算部１０３と、速度リミット演算部１０５と、を有している。速度リミット生成部１０１には、荷重センサー５３ａからの検出結果ＯＰが入力される。検出結果ＯＰは、負荷トルク演算部１０３に入力される。
負荷トルク演算部１０３は、検出結果ＯＰに基づいて、モーター５１ａにかかる負荷トルクＦＴを算出する。このとき、負荷トルク演算部１０３は、モーター５１ａの図示しない回転子のイナーシャ（慣性）と、指部４３ａのイナーシャと、指部４３ａにかかるワークＷの負荷と、に基づいて負荷トルクＦＴを算出する。
モーター５１ａの回転子のイナーシャと、指部４３ａのイナーシャとは、既知であり、定数として規定されている。指部４３ａにかかるワークＷの負荷は、荷重センサー５３ａによって検出される。そして、荷重センサー５３ａからの検出結果ＯＰが負荷トルク演算部１０３に入力される。
【００４０】
指部４３ａが開方向にワークＷから離間している状態（図５中のＲａの位置）では、検出結果ＯＰに示されるワークＷの負荷は“０”である。この場合、モーター５１ａにかかる負荷トルクＦＴは、モーター５１ａの回転子のイナーシャと、指部４３ａのイナーシャとに基づいて算出され得る。なお、以下において、モーター５１ａの回転子のイナーシャと、指部４３ａのイナーシャとに基づいて算出される負荷トルクは、負荷トルクＦＴｉと表記される。
【００４１】
指部４３ａが閉方向に旋回してワークＷに接する（図５中のＲｂの位置）と、検出結果ＯＰに示されるワークＷの負荷が上昇する。この場合、モーター５１ａにかかる負荷トルクＦＴは、モーター５１ａの回転子のイナーシャと、指部４３ａのイナーシャと、指部４３ａにかかるワークＷの負荷と、に基づいて算出され得る。この場合、指部４３ａにかかるワークＷの負荷と、中心Ｃ１から作用点Ａ１までの距離Ｌとの乗算によって、ワークＷの負荷による負荷トルクＦＴｗが算出され得る。なお、作用点Ａ１は、ワークＷの荷重が作用する位置である。本実施形態では、作用点Ａ１は、指部４３ａに対する荷重センサー５３ａの位置でもある。
【００４２】
負荷トルク演算部１０３によって算出された負荷トルクＦＴは、速度リミット演算部１０５に入力される。速度リミット演算部１０５は、入力された負荷トルクＦＴを、トルク特性記憶部８７に記憶されているトルク特性ＣＴに照合し、モーター５１ａが追従できる最高速度を算出する。例えば、入力された負荷トルクＦＴに示される値が、図４に示すトルクｔ１であった場合、モーター５１ａが追従できる最高速度は、トルクｔ１とトルク特性ＣＴとの交点に対応する駆動速度ｖになる。
このようにして算出された駆動速度ｖは、モーター５１ａの駆動速度を指示する信号である速度指令信号ＳＰとして、速度リミット演算部１０５から制御部６１に入力される。そして、制御部６１は、入力された速度指令信号ＳＰに基づいて、モーター５１ａの駆動速度を駆動速度ｖに制御する。
【００４３】
本実施形態では、負荷トルク演算部１０３は、所定の時間間隔（周期）で負荷トルクＦＴを算出し、所定の時間間隔で負荷トルクＦＴを速度リミット演算部１０５に出力する。速度リミット演算部１０５は、負荷トルクＦＴが入力されるたびに駆動速度ｖを算出し、且つ速度指令信号ＳＰを制御部６１に出力する。制御部６１は、速度指令信号ＳＰが入力されるたびに、モーター５１ａの駆動速度を駆動速度ｖに制御する。つまり、本実施形態では、負荷トルクＦＴの算出からモーター５１ａの駆動速度ｖの制御までの処理が、所定の時間間隔で反復して実施される。以下において、負荷トルクＦＴの算出からモーター５１ａの駆動速度ｖの制御までの処理を速度制御処理と呼ぶ。
上記の速度制御処理を、指部４３ａがワークＷから離間している状態から、指部４３ａがワークＷに接して指部４３ａ及び指部４３ｂでワークＷを把持するまでの間にわたって、所定の時間間隔で反復して実施することによって、ワークＷの把持にかかる時間を短縮することができる。
【００４４】
本実施形態において、指部４３ａ及び指部４３ｂがそれぞれ接触片に対応し、荷重センサー５３ａが力センサーに対応し、速度リミット生成部１０１が制御部に対応し、指部４３ａ及び指部４３ｂがハンドに対応し、負荷トルク演算部１０３が負荷トルク算出部に対応し、トルク特性記憶部８７が記憶部に対応している。
本実施形態では、指部４３ａや指部４３ｂでワークＷに力を作用させた場合に、ワークＷからの反力を荷重センサー５３ａや荷重センサー５３ｂで検出した結果に基づいて、モーター５１ａやモーター５１ｂの駆動速度ｖを変化させることができる。本実施形態では、荷重センサー５３ａや荷重センサー５３ｂで検出した結果から把握されるワークＷの負荷に基づいてモーター５１ａやモーター５１ｂの駆動速度ｖを変化させることができるので、ワークＷの負荷に応じた駆動速度ｖに制御することができる。
【００４５】
ステッピングモーターでは、駆動速度ｖの速さに応じて出力トルクが下がっていく。このため、本実施形態では、ワークＷの負荷に応じた駆動速度ｖにモーター５１ａやモーター５１ｂの駆動を制御することによって、モーター５１ａやモーター５１ｂの脱調を防止することができる。
また、本実施形態では、ワークＷから指部４３ａや指部４３ｂが受ける荷重を検出する荷重センサー５３ａや荷重センサー５３ｂが、ワークＷに接する指部４３ａや指部４３ｂに設けられているので、ワークＷから指部４３ａや指部４３ｂが受ける荷重の誤差を極めて低く抑えることができる。この結果、ワークＷの負荷を正確に把握することができるので、このワークＷの負荷に基づいて駆動が制御されるモーター５１ａやモーター５１ｂの制御の精度を向上させることができる。これにより、ワークＷの力の精度を向上させることができる。
【００４６】
なお、本実施形態では、速度制御処理において、負荷トルクＦＴをトルク特性ＣＴに照合し、モーター５１ａが追従できる最高速度に制御する方法が採用されているが、速度制御処理の方法は、これに限定されない。速度制御処理の方法としては、例えば、負荷トルクＦＴの値を、図６に示すように、複数の水準ＬＶ（本例では、水準ＬＶ１〜水準ＬＶ４の４つ）に区分し、水準ＬＶごとに駆動速度ｖを規定する方法も採用され得る。図６に示す例では、水準ＬＶ１に対応して駆動速度ｖ４が規定され、水準ＬＶ２に対応して駆動速度ｖ３が規定され、水準ＬＶ３に対応して駆動速度ｖ２が規定され、水準ＬＶ４に対応して駆動速度ｖ１が規定されている。
なお、この例では、水準ＬＶ１〜水準ＬＶ４は、下記の（１）式を満足している。
水準ＬＶ１＜水準ＬＶ２＜水準ＬＶ３＜水準ＬＶ４ …（１）
また、駆動速度ｖ１〜駆動速度ｖ４は、下記の（２）式を満足している。
駆動速度ｖ１＜駆動速度ｖ２＜駆動速度ｖ３＜駆動速度ｖ４ …（２）
【００４７】
水準ＬＶごとに駆動速度ｖを規定する方法では、図７に示す速度設定処理によって駆動速度ｖが設定される。この速度設定処理は、制御部６１におけるＣＰＵ６３によって実行される。
速度設定処理では、ＣＰＵ６３は、まず、ステップＳ１において、負荷トルクＦＴが水準ＬＶ１を超えているか否かを判定する。このとき、負荷トルクＦＴが水準ＬＶ１を超えている（Ｙｅｓ）と判定されると、処理がステップＳ２に移行する。他方で、負荷トルクＦＴが水準ＬＶ１を超えていない（Ｎｏ）と判定されると、処理がステップＳ３に移行する。
ステップＳ３において、ＣＰＵ６３は、駆動速度ｖを駆動速度ｖ４に設定してから、処理を速度制御処理に戻す（リターン）。
【００４８】
ステップＳ２では、ＣＰＵ６３は、負荷トルクＦＴが水準ＬＶ２を超えているか否かを判定する。このとき、負荷トルクＦＴが水準ＬＶ２を超えている（Ｙｅｓ）と判定されると、処理がステップＳ４に移行する。他方で、負荷トルクＦＴが水準ＬＶ２を超えていない（Ｎｏ）と判定されると、処理がステップＳ５に移行する。
ステップＳ５において、ＣＰＵ６３は、駆動速度ｖを駆動速度ｖ３に設定してから、処理を速度制御処理に戻す（リターン）。
ステップＳ４では、ＣＰＵ６３は、負荷トルクＦＴが水準ＬＶ３を超えているか否かを判定する。このとき、負荷トルクＦＴが水準ＬＶ３を超えている（Ｙｅｓ）と判定されると、処理がステップＳ６に移行する。他方で、負荷トルクＦＴが水準ＬＶ３を超えていない（Ｎｏ）と判定されると、処理がステップＳ７に移行する。
ステップＳ７において、ＣＰＵ６３は、駆動速度ｖを駆動速度ｖ２に設定してから、処理を速度制御処理に戻す（リターン）。
【００４９】
ステップＳ６では、ＣＰＵ６３は、負荷トルクＦＴが水準ＬＶ４を超えているか否かを判定する。このとき、負荷トルクＦＴが水準ＬＶ４を超えている（Ｙｅｓ）と判定されると、処理がステップＳ８に移行する。他方で、負荷トルクＦＴが水準ＬＶ４を超えていない（Ｎｏ）と判定されると、処理がステップＳ９に移行する。
ステップＳ９において、ＣＰＵ６３は、駆動速度ｖを駆動速度ｖ１に設定してから、処理を速度制御処理に戻す（リターン）。
ステップＳ８では、ＣＰＵ６３は、モーター制御部９１（図３）に、モーター５１ａに対する停止指令を出力してから、処理を速度制御処理に戻す（リターン）。このとき、ＣＰＵ６３から停止指令を受けたモーター制御部９１は、この停止指令に基づいて、モーター５１ａの駆動を停止させる。
上記の速度設定処理では、負荷トルクＦＴを各水準ＬＶに対比することによって駆動速度ｖを設定することができる。このため、負荷トルクＦＴをトルク特性ＣＴに照合してモーター５１ａが追従できる最高速度に制御する方法に比較して、データの照合にかかる時間を短縮することができる。
【００５０】
本実施形態では、上述した速度制御処理や速度設定処理がロボット１のハンド部３９に適用されているが、速度制御処理や速度設定処理の適用は、ハンド部３９に限定されない。速度制御処理や速度設定処理は、第１アーム２１や第２アーム２３、昇降装置３３、揺動装置３５、回転装置３７などにも適用され得る。
【符号の説明】
【００５１】
１…ロボット、７…アーム装置、９…ハンド装置、２１…第１アーム、２３…第２アーム、３３…昇降装置、３５…揺動装置、３７…回転装置、３９…ハンド部、４３…指部、４３ａ，４３ｂ…指部、５１ａ，５１ｂ…モーター、５２ａ，５２ｂ…指片、５３ａ，５３ｂ…荷重センサー、５５ａ，５５ｂ…緩衝体、６１…制御部、６３…ＣＰＵ、８７…トルク特性記憶部、１０１…速度リミット生成部、１０３…負荷トルク演算部、１０５…速度リミット演算部、ＣＴ…トルク特性、ＦＴ…負荷トルク。
【図１】
2013144326.tif 000003
【図２】
2013144326.tif 000004
【図３】
2013144326.tif 000005
【図４】
2013144326.tif 000006
【図５】
2013144326.tif 000007
【図６】
2013144326.tif 000008
【図７】
2013144326.tif 000009