(57)【特許請求の範囲】
【請求項１】
回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御装置であって、
前記複数の関節部の回転角を取得することができるように構成されている取得部と、
前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断するように構成されている判断部と、
前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御するように構成されている制御部とを具備しており、
前記制御部は、ユーザからの指示に応じて、前記複数の関節部を回転させる順番について決定するように構成されていることを特徴とするロボット制御装置。
【請求項２】
前記制御部は、前記ロボットが特異姿勢に近い状態にないと判断された場合には、前記複数の関節部を同時に回転させることができるように構成されていることを特徴とする請求項１に記載のロボット制御装置。
【請求項３】
前記ロボットが特異姿勢に近い状態にあると判断された場合で、かつ、前記複数の関節部が同時に回転している場合に、アラームを出力するように構成されている出力部を更に具備していることを特徴とする請求項１又は２に記載のロボット制御装置。
【請求項４】
前記取得部は、前記複数の関節部のトルクを検出し、前記トルクに基づいて前記複数の関節部の回転角を取得するように構成されていることを特徴とする請求項１〜３のいずれか一項に記載のボット制御装置。
【請求項５】
前記制御部は、ユーザからの指示に応じて、前記ロボットが特異姿勢に近い状態にあると判断するための条件を変更するように構成されていることを特徴とする請求項１〜４のいずれか一項に記載のロボット制御装置。
【請求項６】
前記制御部は、ユーザからの指示に応じて、前記複数の関節部を１つずつ回転させるという制御を停止するように構成されていることを特徴とする請求項１〜５のいずれか一項に記載のロボット制御装置。
【請求項７】
前記制御部は、前記複数の関節部の回転速度に応じて、前記ロボットが特異姿勢に近い状態にあると判断するための条件を変更するように構成されていることを特徴とする請求項１〜４又は６のいずれか一項に記載のロボット制御装置。
【請求項８】
回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御装置であって、
前記複数の関節部の回転角を取得することができるように構成されている取得部と、
前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断するように構成されている判断部と、
前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御するように構成されている制御部とを具備しており、
前記制御部は、前記複数の関節部の回転速度に応じて、前記ロボットが特異姿勢に近い状態にあると判断するための条件を変更するように構成されていることを特徴とするロボット制御装置。
【請求項９】
回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御方法であって、
前記複数の関節部の回転角を取得する工程と、
前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断する工程と、
前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御する工程と、
ユーザからの指示に応じて、前記複数の関節部を回転させる順番について決定する工程とを有することを特徴とするロボット制御方法。
【請求項１０】
回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御方法であって、
前記複数の関節部の回転角を取得する工程と、
前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断する工程と、
前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御する工程と、
前記複数の関節部の回転速度に応じて、前記ロボットが特異姿勢に近い状態にあると判断するための条件を変更する工程とを有することを特徴とするロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ロボット制御装置及びロボット制御方法に関する。
【背景技術】
【０００２】
従来、人と協働して作業を行うロボットを制御する技術が知られている（例えば、特許文献１等参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１５-５１１５４４
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＩＳＯ１０２１８-１における人と協働して作業を行うロボットに対する要求事項では、かかるロボットの制御点（ＴＣＰ：Ｔｏｏｌ  Ｃｅｎｔｅｒ  Ｐｏｉｎｔ）で発生する力を指定値（例えば、１５０Ｎ）以下であることを保証する必要がある。
【０００５】
ここで、かかるロボットを制御するロボット制御装置は、各関節部の回転軸におけるトルクを用いて、ロボットの制御点で発生する力を算出するように構成されている。
【０００６】
しかしながら、かかるロボット制御装置は、かかるロボットが特異姿勢である状態にある場合に（すなわち、かかるロボットの特異点では）、かかるロボットの制御点で発生する力を算出することができない。具体的には、図６に示すように、かかるロボット制御装置は、かかるロボットの関節部Ｊ１/Ｊ２が回転して図６の点線で示す状態から図６の実線で示す状態に変化する場合、かかるロボットの制御点が方向Ｄに向かって動作するが、かかるロボットが特異姿勢である状態では、かかる制御点において発生する動作方向Ｄｘの力を算出することができない。
【０００７】
その結果、かかるロボットの制御点で発生する力を指定値以下であることを保証することができないという問題点があった。
【０００８】
そこで、本開示は、上述の課題に鑑みてなされたものであり、ロボットが特異姿勢に近い状態にある場合であっても、かかるロボットの制御点で発生する動作方向の力が指定値以下であることを保証することができるロボット制御装置及びロボット制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本開示の第１の特徴は、回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御装置であって、前記複数の関節部の回転角を取得することができるように構成されている取得部と、前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断するように構成されている判断部と、前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御するように構成されている制御部とを具備していることを要旨とする。
【００１０】
本開示の第２の特徴は、回転軸周りに回転可能な複数の関節部を有するロボットを制御するロボット制御方法であって、前記複数の関節部の回転角を取得する工程と、前記複数の関節部の回転角に基づいて、前記ロボットが特異姿勢に近い状態にあるか否かについて判断する工程と、前記ロボットが特異姿勢に近い状態にあると判断された場合に、回転させるべき前記複数の関節部を同時に回転させないように制御する工程とを有することを要旨とする。
【発明の効果】
【００１１】
本開示によれば、ロボットが特異姿勢に近い状態にある場合であっても、かかるロボットの制御点で発生する動作方向の力が指定値以下であることを保証することができるロボット制御装置及びロボット制御方法を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態に係るロボットシステムの一例を示す図である。
【図２】実施形態に係るロボット制御装置の機能ブロックの一例を示す平面図である。
【図３】実施形態に係るロボットの動作の一例を示す図である。
【図４】実施形態に係るロボットの動作の一例を示す図である。
【図５】実施形態に係るロボットの制御方法の一例を示すフローチャートである。
【図６】従来のロボットの動作の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、図１〜図５を参照して、一実施形態について説明する。図１に示すように、本実施形態に係るロボットシステム１００は、ロボット１と、ロボット１を制御するように構成されているロボット制御装置（ロボットコントローラ）２とを具備している。
【００１４】
本実施形態において、ロボット１は、複数の関節部Ｊ１〜Ｊ６を有するアームを有している。かかる複数の関節部Ｊ１〜Ｊ６は、各々の回転軸（図示せず）周りに回転することができるように構成されている。
【００１５】
なお、本実施形態では、ロボット１は、人と協働して作業を行うことを前提に構成されているため、上述のように、ロボット１の制御点（Ｔｏｏｌ  Ｃｅｎｔｅｒ  Ｐｏｉｎｔ）Ｐで発生する力は、ロボット制御装置２によって、指定値（例えば、１５０Ｎ）以下に制御されるように構成されている。ここで、本実施形態では、ロボット１の制御点Ｐは、ロボット１のアームの先端に取り付けられている工具（Ｔｏｏｌ）の代表的な点であるものとする。
【００１６】
本実施形態では、図１に示すように、ロボット１として、関節部Ｊ１〜Ｊ６を有するアームを有する多軸ロボットが例示されているが、関節部（すなわち、回転軸）の数は、６に限定されるものではない。例えば、かかるロボット１は、７以上の関節部（すなわち、回転軸）を有するアームを有する多軸ロボットであってもよいし、２以上５以下の関節部（すなわち、回転軸）を有するアームを有する多軸ロボットであってもよい。また、本実施形態では、図１に示すように、ロボット１として、単腕ロボットが例示されているが、かかるロボット１は、双腕以上の多腕ロボットであってもよい。
【００１７】
また、ロボット１が特異姿勢となった場合には（すなわち、かかるロボット１の特異点では）、ロボット制御装置２は、ロボット１の制御点Ｐにおいて発生する動作方向Ｄｘの力を算出することができない。
【００１８】
ここで、ロボット１が特異姿勢となっている状態（ロボット１の特異点）とは、ロボット１における逆運動学計算の解が得られない状態を意味する。また、逆運動学計算は、ロボット１の制御点Ｐの動作から各関節部Ｊ１〜Ｊ６の位置や角度を求める計算を意味する。
【００１９】
ロボット制御装置２は、上述のロボット１を制御するように構成されており、図２に示すように、取得部２１と、判断部２２と、制御部２３と、出力部２４とを具備している。
【００２０】
取得部２１は、複数の関節部Ｊ１〜Ｊ６の回転角やトルクを取得することができるように構成されている。
【００２１】
例えば、取得部２１は、エンコーダやレゾルバによって複数の関節部Ｊ１〜Ｊ６の回転角を検出して取得するように構成されていてもよいし、複数の関節部Ｊ１〜Ｊ６の各々を駆動するアクチュエータ（図示せず）の回転角と減速機（図示せず）の減速比とに基づいて複数の関節部Ｊ１〜Ｊ６の回転角を算出して取得するように構成されていてもよい。
【００２２】
或いは、取得部２１は、複数の関節部Ｊ１〜Ｊ６の回転軸におけるトルクを検出し、かかるトルクから複数の関節部Ｊ１〜Ｊ６の回転角を算出して取得することができるように構成されていてもよい。
【００２３】
また、取得部２１は、複数の関節部Ｊ１〜Ｊ６の各々に設けられているトルクセンサ等に基づいて、複数の関節部Ｊ１〜Ｊ６の回転軸におけるトルクを検出するように構成されていてもよい。
【００２４】
或いは、取得部２１は、複数の関節部Ｊ１〜Ｊ６の各々を駆動するアクチュエータの出力トルクや電流値と減速機の減速比とに基づいて複数の関節部Ｊ１〜Ｊ６の回転軸におけるトルクを検出するように構成されていてもよいし、他の方法に基づいて複数の関節部Ｊ１〜Ｊ６の回転軸におけるトルクを検出するように構成されていてもよい。
【００２５】
判断部２２は、取得部２１によって取得された複数の関節部Ｊ１〜Ｊ６の回転角に基づいて、ロボット１が特異姿勢に近い状態にあるか否かについて判断するように構成されている。
【００２６】
制御部２３は、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合に、回転させるべき複数の関節部Ｊ２/Ｊ３を同時に回転させないように制御するように構成されている。
【００２７】
すなわち、制御部２３は、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合に、回転させるべき複数の関節部を１つずつ回転させるように制御するように構成されている。
【００２８】
ここで、制御部２３は、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合に、１つずつ回転させるべき関節部を決定することができるように構成されている。
【００２９】
例えば、制御部２３は、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合に、図３に示すように、関節部Ｊ２を動作方向Ｄ１に回転させた後、図４に示すように、関節部Ｊ３を動作方向Ｄ２に回転させるように構成されている。
【００３０】
かかる構成によれば、ロボット１が特異姿勢に近い状態にある場合において、複数の関節部（図３及び図４の例における関節部Ｊ２/Ｊ３）を１つずつ回転させるため、ロボット１の制御点Ｐにおいて算出できない動作方向Ｄｘに力が発生しないため、かかるロボット１の制御点Ｐで発生する力を算出することができる。
【００３１】
一方、制御部２３は、判断部２２によってロボット１が特異姿勢に近い状態にないと判断された場合には、複数の関節部Ｊ２/Ｊ３を同時に回転させることができるように構成されている。
【００３２】
かかる構成によれば、ロボット１が特異姿勢に近い状態にない場合には、複数の関節部Ｊ２/Ｊ３を同時に回転させることによって、ロボット１による作業効率を上げることができる。
【００３３】
また、制御部２３は、ユーザからの指示に応じて、複数の関節部（図３及び図４の例における関節部Ｊ２/Ｊ３）を回転させる順番について決定するように構成されていてもよい。
【００３４】
かかる構成によれば、ロボット１の周辺に配置されている冶具等を考慮して、ユーザにとって都合の良い軌道に沿ってロボット１のアームを動かすことができる。
【００３５】
また、制御部２３は、複数の関節部（図３及び図４の例における関節部Ｊ２/Ｊ３）を回転させる順番について事前に設定しておき、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合に、かかる設定に応じて、複数の関節部（図３及び図４の例における関節部Ｊ２/Ｊ３）を回転させる順番について決定するように構成されていてもよい。
【００３６】
また、制御部２３は、ユーザからの指示に応じて、ロボット１が特異姿勢に近い状態にあると判断するための条件を変更するように構成されていてもよい。
【００３７】
かかる条件は、各関節部のＪ１〜Ｊ６の位置や角度等によって規定されていてもよい。例えば、判断部２２は、各関節部のＪ１〜Ｊ６の位置や角度が所定の位置や角度になった場合に、ロボット１が特異姿勢に近い状態にあると判断するように構成されていてもよい。
【００３８】
かかる特徴によれば、様々な状態に応じて、ロボット１が特異姿勢に近い状態にあると判断すべき範囲を変更することで、かかるロボット１の制御点Ｐで発生する力を指定値以下であることをより安全に保証することができる。
【００３９】
また、制御部２３は、ユーザからの指示に応じて、複数の関節部を１つずつ回転させるという制御を停止するように構成されていてもよい。すなわち、制御部２３は、かかる制御を停止した場合には、判断部２２によってロボット１が特異姿勢に近い状態にあると判断された場合であっても、回転させるべき複数の関節部を同時に回転させるように制御するように構成されていてもよい。
【００４０】
かかる特徴によれば、ロボット１が人と協働していない場合には、かかるロボット１に通常動作を行わせることができるため、かかるロボット１の動作スピードを上げることができる。
【００４１】
さらに、制御部２３は、複数の関節部Ｊ１〜Ｊ６の回転速度に応じて、ロボット１が特異姿勢に近い状態にあると判断するための条件を変更するように構成されていてもよい。かかる複数の関節部Ｊ１〜Ｊ６の回転速度は、上述の取得部２１によって取得されるように構成されていてもよい。
【００４２】
かかる特徴によれば、複数の関節部Ｊ１〜Ｊ６の回転速度が速い場合に、ロボット１が特異姿勢に近い状態にあると判断すべき範囲を広げることで、かかるロボット１の制御点Ｐで発生する力を指定値以下であることをより安全に保証することができる。
【００４３】
出力部２４は、ロボット１が特異姿勢に近い状態にあると判断された場合で、かつ、複数の関節部Ｊ２/Ｊ３が同時に回転している場合に、アラームを出力するように構成されている。また、出力部２４は、複数の関節部Ｊ１〜Ｊ６において異常トルクが発生した場合に、アラームを出力するように構成されていてもよい。
【００４４】
制御部２３は、出力部２４によってアラームが出力された場合に、ロボット１の動作を停止するように制御するように構成されていてもよい。かかる場合、制御部２３は、ユーザの指示に基づいて、ロボット１の動作を再開するように構成されていてもよい。
【００４５】
かかる構成によれば、ロボット１が特異姿勢に近い状態にあると判断された場合で、かつ、複数の関節部Ｊ２/Ｊ３が同時に回転している場合に、ロボット１の動作を停止することで、より安全に、ロボット１と人との協働を実現することができる。
【００４６】
以下、図５を参照して、本実施形態に係るロボット制御装置２がロボットを制御する動作の一例について説明する。
【００４７】
図５に示すように、ロボット制御装置２は、ステップＳ１０１において、複数の関節部Ｊ１〜Ｊ６の回転角を取得し、ステップＳ１０２において、複数の関節部Ｊ１〜Ｊ６の回転角に基づいて、ロボット１が特異姿勢に近い状態にあるか否かについて判断する。
【００４８】
ロボット１が特異姿勢に近い状態にあると判断された場合には、本動作は、ステップＳ１０３に進み、ロボット１が特異姿勢に近い状態にないと判断された場合には、本動作は、ステップＳ１０４に進む。
【００４９】
ロボット制御装置２は、ステップＳ１０３において、回転させるべき複数の関節部を１つずつ回転させるように制御（すなわち、複数の関節部を同時に回転させないように制御）し、ステップＳ１０４において、回転させるべき複数の関節部を同時に回転させるように制御する、すなわち、通常通りの制御を行う。
【００５０】
本実施形態に係るロボットシステム１００によれば、ロボット１が特異姿勢に近い状態にある場合であっても、かかるロボット１の制御点Ｐで発生する動作方向Ｄｘの力が指定値以下であることを保証することができる。
【符号の説明】
【００５１】
１００…ロボットシステム
１…ロボット
２…ロボット制御装置
２１…取得部
２２…判断部
２３…制御部
２４…出力部
Ｊ１〜Ｊ６…関節部
Ｄｘ…動作方向
Ｐ…制御点
【図１】
0006565752.tif 000002
【図２】
0006565752.tif 000003
【図３】
0006565752.tif 000004
【図４】
0006565752.tif 000005
【図５】
0006565752.tif 000006
【図６】
0006565752.tif 000007