(57)【要約】【課題】ロボットハンドを大型化せずともワークの搬送中にワークがフィンガーから落下するのを防止する。【解決手段】ロボット装置５００は、ワークＷを把持する３本のフィンガー１２２Ａ〜１２２Ｃを有するロボットハンド１０２と、ロボットハンド１０２を支持するロボットアーム１０１と、を備える。また、ロボット装置５００は、ロボットハンド１０２及びロボットアーム１０１の動作を制御する制御装置２００を備える。制御装置２００は、３本のフィンガー１２２Ａ〜１２２ＣにワークＷを把持させてワークＷを搬送する際に、３本のフィンガー１２２Ａ〜１２２Ｃのうち２本のフィンガーでワークＷの慣性力を受けるように、ロボットハンド１０２の姿勢を制御する。【選択図】図１
2016049607.tif 000002
【特許請求の範囲】
【請求項１】
ワークを把持する３本以上のフィンガーを有するロボットハンドと、
前記ロボットハンドを支持するロボットアームと、
前記ロボットハンド及び前記ロボットアームの動作を制御する制御部と、を備え、
前記制御部は、前記３本以上のフィンガーにワークを把持させてワークを搬送する際に、前記３本以上のフィンガーのうち半数以上の数のフィンガーでワークの慣性力を受けるように、前記ロボットハンドの姿勢を制御することを特徴とするロボット装置。
【請求項２】
前記ロボットアームは、前記ロボットハンドを回転軸を中心に回転可能に支持し、
前記制御部は、前記３本以上のフィンガーにワークを把持させてワークを搬送する際に、前記半数以上の数のフィンガーでワークの慣性力を受けるように、前記ロボットハンドの回転角度を制御することを特徴とする請求項１に記載のロボット装置。
【請求項３】
前記制御部は、ワークを搬送する軌道データの始点から終点までワークの慣性力の方向を計算し、
計算した前記慣性力の方向から、前記半数以上の数のフィンガーで前記慣性力を受ける前記ロボットハンドの回転角度を、回転角度指令として求め、
前記軌道データに従って前記ロボットアームを動作させるときに、前記回転角度指令により前記ロボットハンドの回転角度を制御することを特徴とする請求項２に記載のロボット装置。
【請求項４】
前記制御部は、前記ロボットハンドの回転角度を制御する際に、前記回転軸まわりの第１回転方向、及び前記第１回転方向とは逆の第２回転方向のうち、前記ロボットハンドの回転角度の変更量が少ない方向に前記ロボットハンドを回転させることを特徴とする請求項２又は３に記載のロボット装置。
【請求項５】
前記制御部は、前記ロボットハンドの移動する速度が定速区間から加速区間又は減速区間に切り替わるよう、前記ロボットハンドを直線移動させる際に、
前記加速区間又は前記減速区間の最初から前記半数以上の数のフィンガーで前記慣性力を受けるように、前もって前記定速区間にて前記ロボットハンドの回転角度を制御することを特徴とする請求項２乃至４のいずれか１項に記載のロボット装置。
【請求項６】
前記３本以上のフィンガーが３本のフィンガーであり、
前記半数以上の数のフィンガーが２本のフィンガーであることを特徴とする請求項１乃至５のいずれか１項に記載のロボット装置。
【請求項７】
ワークを把持する３本以上のフィンガーを有するロボットハンドと、前記ロボットハンドを支持するロボットアームと、前記ロボットハンド及び前記ロボットアームの動作を制御する制御部と、を有するロボット装置の制御方法において、
前記制御部が、前記３本以上のフィンガーにワークを把持させる工程と、
前記制御部が、ワークの搬送中、前記３本以上のフィンガーのうち半数以上の数のフィンガーでワークの慣性力を受けるように、前記ロボットハンドの姿勢を制御する工程と、を備えたことを特徴とするロボット装置の制御方法。
【請求項８】
コンピュータに、請求項７に記載のロボット装置の制御方法の各工程を実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットハンドの複数のフィンガーによりワークを把持して、ロボットアームを軌道データに従って動作させることで、ワークを搬送するロボット装置、ロボット装置の制御方法、プログラム及び記録媒体に関する。
【背景技術】
【０００２】
従来、ロボット装置の制御方法として、特許文献１に記載されているように、把持部で把持した長軸物を搬送するにあたり、搬送中に把持部にかかる慣性力の方向とワークの長軸方向に対する直角方向とが一致するように制御していた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平９−３００２５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１では、長軸物を２本のフィンガーで把持して搬送する場合を想定した技術であり、３本以上のフィンガーでワークを把持して搬送する場合を想定していない。このため、例えば放射状に可動する３本のフィンガーで構成されたロボットハンドでワークを搬送する場合に、３本のフィンガーのうち１本のフィンガーにのみワークの慣性力を受けたときには、慣性力を受けたフィンガーが変形することがあった。ロボットハンドに内蔵された小出力の駆動装置では、フィンガーの変形量に対してワークを把持する把持力が足りず、ワークがフィンガーから落下する恐れがあった。これを防ぐ対策として、フィンガーの駆動装置の出力を大きくすることが考えられるが、駆動装置が大型化し、ロボットハンドが大型化するという問題があった。
【０００５】
そこで、本発明は、ロボットハンドを大型化せずともワークの搬送中にワークがフィンガーから落下するのを防止することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のロボット装置は、ワークを把持する３本以上のフィンガーを有するロボットハンドと、前記ロボットハンドを支持するロボットアームと、前記ロボットハンド及び前記ロボットアームの動作を制御する制御部と、を備え、前記制御部は、前記３本以上のフィンガーにワークを把持させてワークを搬送する際に、前記３本以上のフィンガーのうち半数以上の数のフィンガーでワークの慣性力を受けるように、前記ロボットハンドの姿勢を制御することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ワークに慣性力がかかったときのフィンガーの変形量を小さく抑えることができる。したがって、フィンガーからワークが落下するのを防止することができる。これにより、フィンガーを駆動する駆動装置の大型化を防ぐことができ、ロボットハンドの小型化が可能となる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１実施形態に係るロボット装置の概略構成を示す説明図である。
【図２】本発明の第１実施形態に係るロボット装置の制御装置の構成を示すブロック図である。
【図３】本発明の第１実施形態に係るロボット装置の制御方法を示すフローチャートである。
【図４】本発明の第１実施形態に係るロボット装置の動作を示す説明図である。
【図５】本発明の第１実施形態に係るロボット装置のロボットの第６関節の回転角度を示す説明図である。
【図６】本発明の第１実施形態に係るロボット装置の制御装置のＣＰＵにより計算された第６関節の回転角度を示す説明図である。
【図７】本発明の第２実施形態に係るロボット装置の動作を示す説明図である。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。
【００１０】
［第１実施形態］
図１は、本発明の第１実施形態に係るロボット装置の概略構成を示す説明図である。ここで、水平方向に互いに直交するＸ方向及びＹ方向、並びにＸ，Ｙ方向に直交する垂直方向であるＺ方向を定義する。図１に示すように、ロボット装置５００は、ロボット１００と、制御部を有する制御装置２００と、を備えている。ロボット１００は、多軸（６軸）の垂直多関節型のロボットアーム１０１と、ロボットアーム１０１の先端に取り付けられたロボットハンド１０２と、を有する。制御装置２００の制御部は、ロボットアーム１０１及びロボットハンド１０２の動作を制御するものである。
【００１１】
ロボットアーム１０１は、複数の関節Ｊ１〜Ｊ６で連結された複数（６つ）のフレーム１１１〜１１６を有する。ロボットハンド１０２は、フレーム１１６に対して回転軸Ｃ６で回転可能に取り付けられて、ロボットアーム１０１に支持されている。
【００１２】
ロボットアーム１０１の構成について具体的に説明する。第１フレームであるフレーム１１１と第２フレームであるフレーム１１２とが、第１関節である関節Ｊ１で回転可能に連結されている。フレーム１１２と第３フレームであるフレーム１１３とが、第２関節である関節Ｊ２で旋回可能に連結されている。フレーム１１３と第４フレームであるフレーム１１４とが、第３関節である関節Ｊ３で旋回可能に連結されている。フレーム１１４と第５フレームであるフレーム１１５とが、第４関節である関節Ｊ４で回転可能に連結されている。フレーム１１５と第６フレームであるフレーム１１６とが、第５関節である関節Ｊ５で旋回可能に連結されている。ロボットハンド１０２は、先端フレームであるフレーム１１６に対して第６関節である関節Ｊ６で回転軸Ｃ６を中心に回転可能に連結されている。関節Ｊ１〜Ｊ６には不図示の駆動装置が接続されており、制御装置２００から配線１３０を介して電力と信号が送信される。
【００１３】
ロボットハンド１０２は、ハンドベース１２１と、ワークＷを把持する３本以上（第１実施形態では３本）のフィンガー１２２Ａ，１２２Ｂ，１２２Ｃとを有する。ハンドベース１２１にはフィンガー１２２Ａ，１２２Ｂ，１２２Ｃを駆動するための駆動装置１２３が内蔵されている。
【００１４】
３本のフィンガー１２２Ａ，１２２Ｂ，１２２Ｃは、ハンドベース１２１に開閉可能に支持されている。３本のフィンガー１２２Ａ，１２２Ｂ，１２２Ｃは、周方向に等角度間隔に配置されており、放射状に可動するように構成されている。つまり、３本のフィンガー１２２Ａ，１２２Ｂ，１２２Ｃは、回転軸Ｃ６に向かって互いに近接する閉方向（把持方向）、及び回転軸Ｃ６から互いに離間する開方向（把持解放方向）に移動可能に構成されている。フィンガー１２２Ａ，１２２Ｂ，１２２Ｃで把持するワークＷは、例えば円柱状の形状をしている。
【００１５】
図２は、ロボット装置５００の制御装置２００の構成を示すブロック図である。制御装置２００は、コンピュータであり、制御部（演算部）としてのＣＰＵ（Central  Processing  Unit）２０１を備えている。また、制御装置２００は、記憶部として、ＲＯＭ（Read  Only  Memory）２０２、ＲＡＭ（Random  Access  Memory）２０３、ＨＤＤ（Hard  Disk  Drive）２０４を備えている。また、制御装置２００は、記録ディスクドライブ２０５、及び各種のインタフェース２１１〜２１３を備えている。
【００１６】
ＣＰＵ２０１には、ＲＯＭ２０２、ＲＡＭ２０３、ＨＤＤ２０４、記録ディスクドライブ２０５及び各種のインタフェース２１１〜２１３が、バス２２０を介して接続されている。ＲＯＭ２０２には、ＢＩＯＳ等の基本プログラムが格納されている。ＲＡＭ２０３は、ＣＰＵ２０１の演算処理結果等、各種データを一時的に記憶する記憶装置である。
【００１７】
ＨＤＤ２０４は、ＣＰＵ２０１の演算処理結果や外部から取得した各種データ等を記憶する記憶装置であると共に、ＣＰＵ２０１に、後述する各種演算処理を実行させるためのプログラム２４０を記録するものである。ＣＰＵ２０１は、ＨＤＤ２０４に記録（格納）されたプログラム２４０に基づいてロボット装置の制御方法の各工程を実行する。
【００１８】
記録ディスクドライブ２０５は、記録ディスク２４１に記録された各種データやプログラム等を読み出すことができる。
【００１９】
インタフェース２１１には、ロボットアーム１０１が接続されている。インタフェース２１２には、ロボットハンド１０２が接続されている。ＣＰＵ２０１は、インタフェース２１１を介してロボットアーム１０１に駆動指令を出力して、ロボットアーム１０１の動作を制御すると共に、インタフェース２１２を介してロボットハンド１０２に駆動指令を出力してロボットハンド１０２の動作を制御する。インタフェース２１３には、書き換え可能な不揮発性メモリや外付けＨＤＤ等の外部記憶装置３００が接続されている。
【００２０】
次に、制御装置２００（具体的にはＣＰＵ２０１）によるロボット装置５００の制御方法について説明する。図３は、本発明の第１実施形態に係るロボット装置５００の制御方法を示すフローチャートである。
【００２１】
制御装置２００のＣＰＵ２０１は、ロボットプログラムの入力を受ける（Ｓ１）。ロボットプログラムには、教示点から別の教示点まで直線補間や円弧補間、関節補間等、所定の補間方法により移動することが記述されているものとする。
【００２２】
ＣＰＵ２０１は、ロボットプログラムに基づいてロボット１００（ロボットアーム１０１）の軌道を計算する（Ｓ２）。
【００２３】
ＣＰＵ２０１は、フィンガー１２２Ａ〜１２２ＣによりワークＷを把持したとして軌道データに基づいてロボットアーム１０１を動作させたとした場合に、ワークＷを搬送する軌道データの始点から終点までワークＷの慣性力の方向を計算する（Ｓ３）。
【００２４】
ＣＰＵ２０１は、駆動指令としてロボットハンド１０２の回転角度指令を計算する（Ｓ４）。つまり、ＣＰＵ２０１は、ステップＳ３で計算した慣性力の方向から、フィンガー１２２Ａ〜１２２Ｃのうち半数以上の数（第１実施形態では２本）のフィンガーで慣性力を受けるロボットハンド１０２の回転角度を、回転角度指令として求める。
【００２５】
以上のステップＳ１〜Ｓ４は、実際にロボット１００を動作させる生産工程を実施するに先立って行うシミュレーション（演算処理）である。
【００２６】
次に、実際の生産工程時の動作について説明する。まず、ＣＰＵ２０１は、ロボット１００に駆動指令を出力して、ロボットアーム１０１及びロボットハンド１０２を動作させ、ワークＷをフィンガー１２２Ａ〜１２２Ｃに把持させる（Ｓ５）。
【００２７】
ＣＰＵ２０１は、軌道データに従ってロボットアーム１０１を動作させてワークＷを搬送する（Ｓ６）。つまり、ＣＰＵ２０１は、教示点間を繋ぐ軌道データに基づく駆動指令を所定の時間間隔でロボットアーム１０１に出力する。ロボットアーム１０１の各関節を駆動する駆動装置（不図示）は、ＣＰＵ２０１から入力を受けた駆動指令に基づき、フィードバック制御によりモータ（不図示）への電流の出力量を演算し、モータへ電流を供給する。これにより、ロボットアーム１０１の各関節の関節角度制御を行う。
【００２８】
ＣＰＵ２０１は、ステップＳ６によるワークＷの搬送中（軌道データに従ってロボットアーム１０１を動作させているとき）、回転角度指令によりロボットハンド１０２の回転角度を制御する（Ｓ７）。これにより、ＣＰＵ２０１は、ワークＷの搬送中、３本のフィンガー１２２Ａ〜１２２Ｃのうち２本のフィンガーでワークＷの慣性力を受けるように、ロボットハンド１０２の姿勢（第１実施形態では回転角度）を制御する。
【００２９】
以下、具体例として、ロボットハンド１０２のフィンガー１２２Ａ〜１２２Ｃを垂直下向きにして、直線補間によりロボットハンド１０２を水平方向（＋Ｘ方向）に直線状に移動させる場合のステップＳ１〜Ｓ７の処理について説明する。
【００３０】
図４は、本発明の第１実施形態に係るロボット装置５００の動作を示す説明図である。図４（ａ）はワークＷを搬送するロボット１００の先端（ロボットハンド１０２）の経路を示す図であり、教示点（始点）の位置Ｔ１から教示点（終点）の位置Ｔ４まで直線状に搬送する。図４（ｂ）はロボットハンド１０２の回転角度と移動速度の関係を示す図である。なお、Ｔ２，Ｔ３は、位置Ｔ１と位置Ｔ４との間の中間の位置である。図４（ｂ）には、図１中Ａ−Ａ線に沿うロボットハンド１０２の断面を図示している。
【００３１】
図４（ｂ）に示す方向Ｄは、ワークＷに慣性力がかかったときに力を受けるフィンガーの本数が半数以上になる方向を示しており、この方向Ｄの計算方法を図５にて説明する。
【００３２】
図５は、本発明の第１実施形態に係るロボット装置５００のロボット１００の関節Ｊ６の回転角度（つまり、ロボットハンド１０２の回転角度）を示す説明図である。図５（ａ）は、方向Ｄと角度θとの関係を示す説明図であり、図５（ｂ）は、計算結果を示す説明図である。
【００３３】
図５（ａ）において、Ｏ−Ｄ方向の角度θを、０度から３６０度まで回転変更させていき、Ｏ−Ｄ方向に対してＯを通る直角なＢ−Ｂ線を設定する。このＢ−Ｂ線より方向Ｄ側にあるフィンガーとワークＷとの接触点の数を計算する。第１実施形態の場合、フィンガーの数が３本であるため、図５（ｂ）に示すような計算結果が得られ、３０度＜θ＜９０度、１５０度＜θ＜２１０度、２７０度＜θ＜３３０度でフィンガー本数が半数以上になる。ここで、フィンガーの本数が半数以上になる方向（角度）に幅がある場合はその中間をフィンガーの本数が半数以上になる方向Ｄとする。すなわち、方向Ｄは６０度、１８０度、３００度の３つが存在する。以上のように計算した方向が図４（ｂ）に示す方向Ｄである。
【００３４】
ステップＳ１において、ＣＰＵ２０１は、ワークＷを位置Ｔ１から位置Ｔ４に＋Ｘ方向に直線状に搬送するように記述されたロボットプログラムを入力する。
【００３５】
ステップＳ２において、ＣＰＵ２０１は、ロボットプログラムに基づいて軌道を計算する。図４（ｂ）に示すように、位置Ｔ１〜Ｔ２では加速をしながら移動する加速区間、位置Ｔ２〜Ｔ３では定速で移動する定速区間、位置Ｔ３〜Ｔ４では減速しながら移動する減速区間として計算される。なお、位置Ｔ１の前は、速度０の定速区間である。
【００３６】
ステップＳ３では、ＣＰＵ２０１は、ワークＷの加速度及びワークＷの質量から、ワークＷの慣性力を計算し、ワークＷにかかる慣性力の方向Ｆを計算する。具体的には、図４（ｂ）に示すように、加速をするＴ１〜Ｔ２の加速区間では−Ｘ方向に働く慣性力の方向（Ｆ１）を求め、減速をするＴ３〜Ｔ４の減速区間では＋Ｘ方向に働く慣性力の方向（Ｆ２）を求めている。
【００３７】
次に、ステップＳ４では、ＣＰＵ２０１は、位置Ｔ１〜Ｔ２の加速区間では方向Ｄと方向Ｆ１と一致するように関節Ｊ６の回転角度を計算し、位置Ｔ３〜Ｔ４の減速区間では方向Ｄと方向Ｆ２と一致するように関節Ｊ６の回転角度を計算する。これにより、２本のフィンガーでワークＷの慣性力を受けるロボットハンド１０２の回転角度が求まり、この求めた回転角度を回転角度指令とする。
【００３８】
ここで、図４（ｂ）に示すように方向Ｄが複数（３つ）ある場合は、関節Ｊ６の回転角度の変化が小さくなるように方向Ｄを選択する。即ち、ＣＰＵ２０１は、回転軸Ｃ６まわりの第１回転方向、及び第１回転方向とは逆の第２回転方向のうち、ロボットハンド１０２の回転角度の変更量が少ない方向にロボットハンド１０２を回転させるよう回転角度指令を求める。これにより、ＣＰＵ２０１は、ロボットハンド１０２の回転角度を制御する際（即ちステップＳ７）、ロボットハンド１０２の回転角度の変更量が少ない方向にロボットハンド１０２を回転させることになる。
【００３９】
以上のステップＳ１〜Ｓ４により、ＣＰＵ２０１は、ステップＳ７において、例えば、位置Ｔ３では、ロボットハンド１０２（ワークＷ）の移動する速度が定速区間から減速区間に切り替わるようロボットハンド１０２を直線移動させることになる。
【００４０】
このとき、ＣＰＵ２０１は、減速区間の最初から２本のフィンガーでワークＷの慣性力を受けるように、前もって定速区間にてロボットハンド１０２の回転角度を制御する。つまり、位置Ｔ２〜Ｔ３の定速区間では、ワークＷが定速のためワークＷの慣性力が０であり、慣性力の方向Ｆは計算されない。この場合、その前後の区間における関節Ｊ６の回転角度を線形補間するように計算する。なお、定速区間から加速区間に切り替わる際も同様に計算する。
【００４１】
図６は、制御装置２００のＣＰＵ２０１により計算された関節Ｊ６の回転角度を示す説明図である。図６において、関節Ｊ６の回転角度はＴ１〜Ｔ２の加速区間では０度で一定であり、Ｔ２〜Ｔ３の定速区間では０度〜６０度に線形で変化し、Ｔ３〜Ｔ４の減速区間では６０度で一定である。
【００４２】
以上、第１実施形態によれば、ＣＰＵ２０１は、ステップＳ７においてワークＷを搬送する際に、３本のフィンガー１２２Ａ〜１２２Ｃのうち２本のフィンガーでワークＷの慣性力を受けるように、ロボットハンド１０２の姿勢を制御する。これにより、慣性力によるフィンガー１２２Ａ〜１２２Ｃの変形を抑えることができる。よって、小さな出力の駆動装置１２３でもフィンガー１２２Ａ〜１２２ＣからワークＷが落下するのを防ぐことができる。更には、駆動装置１２３の大型化を防ぐことができるので、ロボットハンド１０２の小型化が可能となる。
【００４３】
また、ロボットハンド１０２の姿勢制御として、ロボットアーム１０１のフレーム１１６に対するロボットハンド１０２の回転角度を制御するようにしたので、ロボットハンド１０２の姿勢制御が容易となる。これにより、ロボットアーム１０１の軌道を変更する必要もなく、安定して姿勢を制御することができる。
【００４４】
また、予め回転角度指令を求めておき、実際にワークＷを搬送する際には、回転角度指令に従ってロボットハンド１０２の回転角度を制御するようにしている。したがって、ロボット１００の動作中に回転角度指令を演算する場合よりも高速な動作が可能となる。
【００４５】
また、ロボットハンド１０２の回転角度の変更量が少ない方向にロボットハンド１０２を回転させるようにしたので、ロボットハンド１０２の姿勢制御の応答時間が短くなり、効果的にフィンガー１２２Ａ〜１２２Ｃの変形を抑えることができる。よって、効果的にフィンガー１２２Ａ〜１２２ＣからワークＷが落下するのを防ぐことができる。
【００４６】
そして、ロボットハンド１０２を直線移動させる際には、定速区間の次に加速区間又は減速区間がある場合に、定速区間にて前もってロボットハンド１０２の姿勢を制御するようにしている。したがって、加速区間又は減速区間の最初から２本のフィンガーで慣性力を受けることができ、効果的にフィンガー１２２Ａ〜１２２Ｃの変形を抑えることができる。よって、効果的にフィンガー１２２Ａ〜１２２ＣからワークＷが落下するのを防ぐことができる。
【００４７】
また、ロボットハンド１０２が３本のフィンガー１２２Ａ〜１２２Ｃを有し、２本のフィンガーで慣性力を受けるようにロボットハンド１０２の姿勢を制御するので、１本のフィンガーで慣性力を受けるよりも格段にフィンガーの変形を抑えることが可能となる。よって、効果的にフィンガー１２２Ａ〜１２２ＣからワークＷが落下するのを防ぐことができる。
【００４８】
また、ワークＷにかかる慣性力の方向ＦとワークＷに慣性力がかかったときに力を受けるフィンガーの本数が半数以上になる方向Ｄとを一致させることにより、慣性力によるフィンガーの変形を最小限に抑えることができる。よって、効果的にワークＷの落下を防ぐことができる。
【００４９】
［第２実施形態］
次に、本発明の第２実施形態に係るロボット装置の動作について説明する。図７は、本発明の第２実施形態に係るロボット装置の動作を示す説明図である。なお、ロボット装置の構成は、上記第１実施形態のロボット装置と同様であり、説明を省略する。
【００５０】
上記第１実施形態では、直線補間によりロボットハンド１０２が直線移動する場合について説明したが、第２実施形態では、円弧補間によりロボットハンド１０２が水平方向に円弧状に移動する場合について説明する。
【００５１】
図７（ａ）は、ワークＷの搬送経路と慣性力の方向を示す説明図である。図７（ａ）において、一点鎖線はワークを搬送する経路を示しており、位置Ｔ１１（α＝０°）から位置Ｔ１７（α＝１８０°）に円弧状に搬送する例を示している。なお、位置Ｔ１２〜Ｔ１６は、位置Ｔ１１と位置Ｔ１７との間の中間の位置である。
【００５２】
また、図７（ａ）中、Ｆａは加速及び減速により受ける慣性力を示し、Ｆｃは遠心力である慣性力を示し、ＦはＦａとＦｃの合力である慣性力を示す。図５（ｂ）は、ロボットハンド１０２の回転位置と慣性力の方向θの関係を示す図である。
【００５３】
以下、円弧補間によりロボットハンド１０２を円弧状に移動させる場合の図３に示すステップＳ１〜Ｓ７の処理について具体的に説明する。
【００５４】
ステップＳ１において、ＣＰＵ２０１は、ワークＷを位置Ｔ１１から位置Ｔ１７に円弧状に搬送するように記述されたロボットプログラムを入力する。
【００５５】
ステップＳ２において、ＣＰＵ２０１は、ロボットプログラムに基づいて軌道を計算する。図７（ａ）に示すように、位置Ｔ１１〜Ｔ１３の区間では加速をしながら移動し、位置Ｔ１３〜Ｔ１５では定速で移動し、位置Ｔ１５〜Ｔ１７では減速しながら移動するように計算される。
【００５６】
ステップＳ３において、ＣＰＵ２０１は、加速度をａ→（矢印はベクトルを示す）とし、ワークＷの質量をｍとし、ワークＷにかかる慣性力を（Ｆａ）→とし、加速度ａ→及びワークＷの質量ｍからワークＷにかかる慣性力（Ｆａ）→の計算を行う。
【００５７】
【数１】
2016049607.tif 000003
【００５８】
また、ＣＰＵ２０１は、旋回半径をｒ、速度をｖ、遠心力を（Ｆｃ）→とし、旋回半径ｒと速度ｖとワークの質量ｍから遠心力（Ｆｃ）→を計算する。
【００５９】
【数２】
2016049607.tif 000004
【００６０】
ここで、ワークＷに働く慣性力をＦ→とし、慣性力Ｆ→は（Ｆａ）→と（Ｆｃ）→の合力であるため、ＣＰＵ２０１は、慣性力Ｆ→を次式で計算する。
【００６１】
【数３】
2016049607.tif 000005
【００６２】
また、ＣＰＵ２０１は、慣性力Ｆ→の角度θを、旋回角度αと（Ｆａ）→と（Ｆｃ）→から次式で計算する。ここで、角度θの基準は図７（ａ）の紙面上方向を０とする。
【００６３】
【数４】
2016049607.tif 000006
【００６４】
以上の計算から図７（ｂ）に示すように、ロボットハンド１０２の位置と角度θの関係が計算される。
【００６５】
ここで、位置Ｔ１３から位置Ｔ１５の定速の領域では、加速度ａ→＝０であり、（Ｆａ）→＝０のため、Ｆ→＝（Ｆｃ）→である。このとき、慣性力の方向θは、式（４）により、
【００６６】
【数５】
2016049607.tif 000007
で計算される。
【００６７】
ステップＳ４では、ＣＰＵ２０１は、上記第１実施形態で説明した方向Ｄに角度θを合わせるように、ロボット１００の関節Ｊ６の回転角度指令を求める。回転角度指令は、図７（ｂ）に示すように、ロボットハンド１０２が位置Ｔ１１〜Ｔ１７に移動するに従って変化するように設定される。
【００６８】
ステップＳ５では、ＣＰＵ２０１は、ワークＷをフィンガー１２２Ａ〜１２２Ｃに把持させる。
【００６９】
ステップＳ６では、ＣＰＵ２０１は、ロボットハンド１０２が位置Ｔ１１〜Ｔ１７に移動するようにロボットアーム１０１に接続されている駆動装置（不図示）に指令を行い、ワークＷを位置Ｔ１１から位置Ｔ１７に搬送する。
【００７０】
ステップＳ７では、ＣＰＵ２０１は、ステップＳ６によるワークＷの搬送中（軌道データに従ってロボットアーム１０１を動作させているとき）、回転角度指令によりロボットハンド１０２の回転角度を制御する。これにより、ＣＰＵ２０１は、ワークＷの搬送中、３本のフィンガー１２２Ａ〜１２２Ｃのうち２本のフィンガーでワークＷの慣性力を受けるように、ロボットハンド１０２の姿勢（第２実施形態では回転角度）を制御する。
【００７１】
以上、円弧状に移動させる場合であっても、上記第１実施形態と同様、ワークＷの慣性力によるフィンガー１２２Ａ〜１２２Ｃの変形を抑えることができる。これにより、小さな出力の駆動装置１２３でもワークＷの落下を防ぐことができる。更には、駆動装置１２３の大型化を防ぐことができ、ロボットハンド１０２の小型化が可能となる。
【００７２】
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。
【００７３】
上記実施形態では、ロボットハンドが３本のフィンガーを有する場合について説明したが、これに限定するものではなく、ロボットハンドが４本以上のフィンガーを有する場合についても本発明は適用可能である。
【００７４】
また、上記実施形態では、直線状又は円弧状にワークＷを搬送する場合について説明したが、これに限定するものではなく、その他組合せた経路を搬送する場合にも適用可能である。その他の経路であっても、加速度による力のベクトルと遠心力のベクトルとの合力で慣性力のベクトルが求まり、回転角度指令が求まる。
【００７５】
また、上記実施形態では、ワークＷを搬送させる前に回転角度指令の計算を行ってから搬送を行う手順を説明したが、回転角度指令の計算を行いながらワークＷを搬送するようにしてもよい。
【００７６】
上記実施形態の各処理動作は具体的にはＣＰＵ２０１により実行されるものである。従って上述した機能を実現するプログラムを記録した記録媒体を制御装置２００に供給し、制御装置２００を構成するコンピュータ（ＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムを読み出し実行することによって達成されるようにしてもよい。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体及びそのプログラムを記録した記録媒体は本発明を構成することになる。
【００７７】
また、上記実施形態では、コンピュータ読み取り可能な記録媒体がＨＤＤ２０４であり、ＨＤＤ２０４にプログラム２４０が格納される場合について説明したが、これに限定するものではない。プログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、図２に示すＲＯＭ２０２、記録ディスク２４１、外部記憶装置３００等を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、書き換え可能な不揮発性のメモリ（例えばＵＳＢメモリ）、ＲＯＭ等を用いることができる。
【００７８】
また、上記実施形態におけるプログラムを、ネットワークを介してダウンロードしてコンピュータにより実行するようにしてもよい。
【００７９】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施形態の機能が実現されるだけに限定するものではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８０】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって上記実施形態の機能が実現される場合も含まれる。
【００８１】
また、上記実施形態では、コンピュータがＨＤＤ等の記録媒体に記録されたプログラムを実行することにより、処理を行う場合について説明したが、これに限定するものではない。プログラムに基づいて動作する演算部（制御部）の一部又は全部の機能をＡＳＩＣやＦＰＧＡ等の専用ＬＳＩで構成してもよい。なお、ＡＳＩＣはApplication  Specific  Integrated  Circuit、ＦＰＧＡはField-Programmable  Gate  Arrayの頭字語である。
【符号の説明】
【００８２】
１０１…ロボットアーム、１０２…ロボットハンド、１２２Ａ，１２２Ｂ，１２２Ｃ…フィンガー、２００…制御装置、２０１…ＣＰＵ（制御部）、５００…ロボット装置
【図１】
2016049607.tif 000008
【図２】
2016049607.tif 000009
【図３】
2016049607.tif 000010
【図４】
2016049607.tif 000011
【図５】
2016049607.tif 000012
【図６】
2016049607.tif 000013
【図７】
2016049607.tif 000014