(57)【特許請求の範囲】
【請求項１】
パラレルリンクロボットの鉛直下方に位置する可動プレートを該パラレルリンクロボットが動作可能だが再現不可能な動きも含めてユーザが直接動かすことで教示された第１教示動作を取得し、
前記パラレルリンクロボットの動力源である複数のモータが許容するトルクである許容トルクまたは／および前記複数のモータが許容する回転速度である許容回転速度に基づいて許容判定値を予め設定し、前記第１教示動作を前記パラレルリンクロボットの動作で実現可能か否かを前記許容判定値に基づいて判定する
パラレルリンクロボットの動作教示方法。
【請求項２】
前記第１教示動作に対してユーザが編集を行った後の教示動作である第２教示動作を取得し、
前記第２教示動作を前記パラレルリンクロボットの動作で実現可能か否かを前記許容判定値に基づいて判定する
請求項１に記載のパラレルリンクロボットの動作教示方法。
【請求項３】
前記第１教示動作は、前記可動プレートの位置および姿勢の経時的変化に基づいて時間軸と座標軸で前記可動プレートの動作点情報を示すグラフで定義された
請求項１または２に記載のパラレルリンクロボットの動作教示方法。
【請求項４】
前記グラフ上の点であって、ユーザから指定された時点における前記可動プレートの位置および姿勢を示す点について、前記ユーザからの操作に応じて当該点が示す前記可動プレートの位置および姿勢を変更することにより、前記グラフを編集し、
編集された後のグラフにおいて、編集の対象となった編集点の動作点を含む区間が示す教示動作を前記パラレルリンクロボットの動作において実現可能か否かを判定する
請求項３に記載のパラレルリンクロボットの動作教示方法。
【請求項５】
前記第２教示動作を前記パラレルリンクロボットの動作で実現可能か否かを、予め算出された前記パラレルリンクロボットの可動範囲内にあるか否かに基づいて、判定する
請求項２に記載のパラレルリンクロボットの動作教示方法。
【請求項６】
編集点を含む区間のグラフに基づく前記第２教示動作が前記許容判定値を超える場合に、前記編集点を含む区間における前記可動プレートの回転速度または／およびトルクが前記許容判定値以下となるように、前記編集点を変更する
請求項２に記載のパラレルリンクロボットの動作教示方法。
【請求項７】
編集点を含む区間のグラフに基づく前記第２教示動作が前記許容判定値を超える場合に、前記編集点の前後の動作点を変更する
請求項２に記載のパラレルリンクロボットの動作教示方法。
【請求項８】
前記グラフ上においてユーザが再生区間および再生時間を設定した場合に、前記再生区間において前記再生時間で前記第１教示動作または前記第２教示動作を前記パラレルリンクロボットの動作が実現可能か否かを前記許容判定値に基づいて判定し、実現できない場合に、前記再生時間を長くする
請求項３に記載のパラレルリンクロボットの動作教示方法。
【請求項９】
異なる複数のタイミングにおける前記可動プレートの位置を示すＸ軸およびＹ軸およびＺ軸の座標と、前記可動プレートの姿勢を示すθｘ軸およびθｙ軸およびθｚ軸の座標とを前記第１教示動作として取得する
請求項１から８のいずれか１項に記載のパラレルリンクロボットの動作教示方法。
【請求項１０】
請求項１から９のいずれか１項に記載のパラレルリンクロボットの動作教示方法を実行する制御部と、
前記可動プレートと、を備える
パラレルリンクロボット。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用途を主とするロボットの制御に関するものである。本発明は、特に、ロボットを固定する固定プレートと、エンドエフェクタなどの作用部材が取り付けられる可動プレートとの間を、複数のアームで連結した構造を持つパラレルリンクロボットに関するものである。
【背景技術】
【０００２】
ロボットを固定する固定プレートと、エンドエフェクタなどの作用部材が取り付けられる可動プレートとの間を、複数のアームで連結した構造を持つパラレルリンクロボットの一例として、特許文献１に開示のものがある。特許文献１に開示のパラレルリンクロボットは、図１１に示すとおり、パラレルリンクロボット１を固定する固定プレート２と、エンドエフェクタ８などの作用部材が取り付けられる可動プレート３と、固定プレート２と可動プレート３との間を連結するアーム４およびロッド７と、で構成される。アーム４は、その一端が固定プレート２に取り付けられており、所定の１軸周りにおける所定の面内を旋回するように構成されている。ロッド７の両端は、空間内を自由旋回する軸受９で接続されている。ロッド７の一端は軸受９によりアーム４の他端に接続され、ロッド７の他端は軸受９により可動プレート３に接続されている。そして、可動プレート３は、アーム４およびロッド７によって連結および拘束されながら、アーム４およびロッド７の位置および姿勢に応じて空間内でその位置または姿勢を変えることができる。つまり、可動プレート３の位置または姿勢は、アーム４の回転位置をモータ５などの駆動源で制御することによって、変化することが可能である。
【０００３】
このように構成されたパラレルリンクロボット１の可動プレート３は、駆動源等の重量物がなく極めて軽量な構造である。そのため、ユーザが可動プレート３を直接移動させることによりパラレルリンクロボット１の可動プレート３の位置や姿勢を教示する教示方法が、提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−２７００７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したようなパラレルリンクロボットのダイレクト教示方法では、直感的で分かりやすい教示方法である反面、ユーザの作業がそのまま転写されるため、パラレルリンクロボットが実現することが不可能な動作についても転写される場合がある。ユーザは、教示した動作がパラレルリンクロボットで実現可能な動作であることを確認するために、教示と再生とを繰り返すことで、パラレルリンクロボットが実現可能な動作を教示するのに時間を要する場合がある。
【０００６】
本発明は、パラレルリンクロボットの動作教示方法として、直感的で分かりやすいダイレクト教示方法を用いつつ、パラレルリンクロボットの容易な動作教示を可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明のパラレルリンクロボットの動作教示方法は、パラレルリンクロボットの鉛直下方に位置する可動プレートを該パラレルリンクロボットが動作可能だが再現不可能な動きも含めてユーザが直接動かすことで教示された第１教示動作を取得し、前記パラレルリンクロボットの動力源である複数のモータが許容するトルクである許容トルクまたは／および前記複数のモータが許容する回転速度である許容回転速度に基づいて許容判定値を予め設定し、前記第１教示動作を前記パラレルリンクロボットの動作で実現可能か否かを前記許容判定値に基づいて判定する。
【０００８】
また、上記目的を達成するために、本発明のパラレルリンクロボットは、請求項１から９のいずれか１項に記載のパラレルリンクロボットの動作教示方法を実行する制御部と、前記可動プレートと、を備える。
【発明の効果】
【０００９】
本発明のパラレルリンクロボットおよびその動作教示方法によれば、ダイレクト教示の直感的で分かりやすいという特徴を活かしながら、パラレルリンクロボットの容易な動作教示を可能とする。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態のパラレルリンクロボットの概略構成図
【図２】本実施の形態の表示部に表示される画面イメージを示す図
【図３】本実施の形態のロード時の教示動作適否判定の処理の流れを示すフローチャート
【図４】本実施の形態のダイレクト教示された教示動作を示すグラフのうちの一つの座標軸を示す図
【図５】本実施の形態の編集後の教示動作について行われる教示動作適否判定に係る処理の流れを示すフローチャート
【図６】（ａ）本実施の形態のパラレルリンクロボットの可動プレートの動作点を示す図、（ｂ）本実施の形態のパラレルリンクロボットの可動プレートの動作点を編集したときのイメージを示す図
【図７】本実施の形態の可動範囲マップのイメージを示す図
【図８】本実施の形態の再生確認時の教示動作について行われる教示動作適否判定に係る処理の流れを示すフローチャート
【図９】図２の紙面左側グラフの一部を模式的に示した図
【図１０】（ａ）、（ｂ）本実施の形態のパラレルリンクロボットのジョイント部の要部拡大図
【図１１】従来のパラレルリンクロボットの概略構成図
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも本発明の一具体例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、本発明の一例である。また、以下の説明において、同じ構成には同じ符号を付けて、適宜、説明を省略する。また、図面は、理解を容易にするために、簡略化している。
【００１２】
（実施の形態）
図１は、本発明の実施の形態のパラレルリンクロボット１００の概略構成図である。図１において、パラレルリンクロボット１００は、固定プレート２と可動プレート３とを、アーム４およびロッド７で連結している。そして、パラレルリンクロボット１００では、このアーム４およびロッド７の位置または姿勢を制御することで、可動プレート３の動作を制御する。
【００１３】
アーム４は、固定プレート２に内蔵されたモータ５の主軸に接続されている。モータ５は、そのフランジ面がプレート６に固定されることにより、固定プレート２に固定されている。プレート６は、固定プレート２に固定されている。モータ５は、関節角度検出手段としてのエンコーダ５ａを備えている。エンコーダ５ａを用いることで、アーム４の角度を検出することができる。モータ５は、パラレルリンクロボット１００の動力源の一例である。図１では、図を簡略化するためにモータ５を一つだけ図示しているが、本実施の形態のパラレルリンクロボット１００は、６つのアーム４それぞれにモータ５が接続されている。すなわち、本実施の形態のパラレルリンクロボット１００の固定プレート２には、プレート６およびモータ５およびエンコーダ５ａが、６つ内蔵されている。
【００１４】
ここで、所定の空間内に設定される固定座標系において、パラレルリンクロボット１００の可動プレート３の位置および姿勢が自由に定義されるためには、可動プレート３が６つの自由度（可動軸）を有することが必要である。本実施の形態のパラレルリンクロボット１００は、１つのアーム４および１つのロッド７および１つのモータ５からなる組を６組用いると共に、モータ５の回転を１組毎に独立に制御することによって、可動プレート３の位置および姿勢を空間内で自在に設定することができる。つまり、可動プレート３は、６つのアーム４の回転角度に応じてその位置および姿勢が変化する。すなわち、可動プレート３の位置および姿勢は、当該６つのアーム４の回転角度を示すエンコーダ５ａの値によって求めることができる。
【００１５】
アーム４は、その一端が固定プレート２に取り付けられており、所定の１軸周りに所定の面内を旋回するように構成されている。ロッド７の両端は、空間内を自由旋回することが可能なユニバーサルジョイント（図１０参照）で構成される軸受９で接続されている。ロッド７の一端は軸受９によりアーム４の他端に接続され、ロッド７の他端は軸受９により可動プレート３に接続されている。そして、可動プレート３の位置および姿勢は、アーム４およびロッド７によって連結および拘束されることにより、アーム４およびロッド７の位置および姿勢に応じて、空間内で変化することができる。つまり、可動プレート３の位置および姿勢は、アーム４の回転角度をモータ５などの駆動源で制御することによって、変えることができる。なお、可動プレート３には、例えば、対象物を把持するためのエンドエフェクタ８が取り付けられる。なお、軸受９は、本発明で必要な機能を満たすことができれば、ボールジョイントによる球面対偶などで構成しても良い。
【００１６】
本実施の形態のパラレルリンクロボット１００の可動プレート３は、駆動源等の重量物がなく極めて軽量な構造であるため、可動プレート３を高速に動作させる高速動作またはダイレクト教示などに有用である。なお、「ダイレクト教示」とは、可動プレート３をユーザが直接手に取って直接的に移動させ、このユーザの手による教示の動作軌跡を記録することにより、可動プレート３の動作軌跡をダイレクトにパラレルリンクロボット１００に教示する方法である。
【００１７】
また、本実施の形態では、パラレルリンクロボット１００の現物を見ながら、教示された動作が示す可動プレート３の位置および姿勢を編集して変更することが可能である。このように、本実施の形態では、現物を見ながら編集可能とすることで、教示上省きたいデータの削除またはパラレルリンクロボット１００の姿勢の数値での管理など、従来のダイレクト教示では困難であったオペレーションを可能としている。
【００１８】
このパラレルリンクロボット１００の教示動作を実現するための各構成は、制御部１０によって制御される。制御部１０は、例えば、ＣＰＵおよびメモリ等が搭載されたコンピュータによって実現される。制御部１０は、取得部１１と、記憶部１２と、判定部１３と、作成部１４と、編集部１５と、変更部１６と、再生確認部１７と、減速部１８と、動作制御部１９とを有する。制御部１０には、ユーザからの入力を受け付ける入力部２０と、制御部１０により作成された教示動作を示すグラフやその編集画面を表示するための表示部２１とが接続されている。入力部２０は、例えば、マウスなどのポインティングデバイスまたはキーボードからなる。表示部２１は、例えば、液晶ディスプレイまたはタッチパネルなどのモニタからなる。表示部２１がタッチパネルの場合、このタッチパネルは、入力部２０としての機能も有する。
【００１９】
取得部１１は、ユーザが可動プレート３を直接動かすことでダイレクト教示した教示動作における可動プレート３の各時点での時系列座標値を取得する。取得部１１は、予め定められた異なる複数のタイミング（例えば０．１５ｓ間隔のタイミング）で、可動プレート３の６軸座標を取得する。このとき、取得部１１は、可動プレート３の６軸座標を取得するために、その時の複数のモータ５の各エンコーダ５ａが示す値を取得する。つまり、取得部１１は、パラレルリンクロボット１００の可動プレート３に対するユーザから教示された教示動作を、取得する。具体的には、取得部１１は、異なる複数のタイミングにおける可動プレート３の位置を示すＸ軸およびＹ軸およびＺ軸の座標と、可動プレート３の姿勢を示すθｘ軸およびθｙ軸およびθｚ軸の座標とを、可動プレート３に対するユーザからの教示動作として取得する。また、取得部１１は、後述する編集部１５により編集された後の教示動作と、再生確認部１７によって再生される時（後述参照。以下、「再生確認時」と言う。）の教示動作を、ユーザから教示された教示動作として取得する。ここで、ユーザが可動プレート３を直接動かすことでダイレクト教示された教示動作は、第１教示動作の一例である。
【００２０】
記憶部１２は、取得部１１により取得された教示動作を記憶する。つまり、記憶部１２は、ユーザが可動プレート３を動かすことでダイレクト教示した教示動作、編集後の教示動作、および再生確認時の教示動作を記憶する。
【００２１】
判定部１３では、取得部１１において取得された教示動作について、パラレルリンクロボット１００が再生できる教示動作であるか否かの判定（以下、「教示動作適否判定」と言う。）が行われる。判定部１３は、教示動作的否判定を、ロード時および編集後および再生確認時の３つの場面において行う。ここで、ロード時とは、ユーザから直接教示された時点である。ロード時の教示動作は、ユーザが可動プレート３に対してダイレクト教示を行った際に、エンコーダ５ａによって異なる複数のタイミングで取得された生データからなる。また、編集後とは、既に取得された教示動作について、ユーザが所望する理想的な動作となるように編集した後である。また、再生確認時とは、取得された教示動作または編集された教示動作について、パラレルリンクロボット１００に実際に再生させて確認する時点である。再生確認時の教示動作は、例えば、確認したい教示動作のうちで再生区間および再生時間を指定し、この再生区間および再生時間で再生するときの教示動作である。ここで、ユーザが可動プレート３を直接動かすことでダイレクト教示された後に編集された教示動作は、第２教示動作の一例である。
【００２２】
判定部１３での教示動作適否判定について、詳しく説明する。判定部１３は、パラレルリンクロボット１００の動力源である複数のモータ５が許容するトルクである許容トルクと複数のモータ５の許容可能な回転数である許容回転数とに基づいて、取得部１１によって取得されたパラレルリンクロボット１００の教示動作を再生できるか否かを判定する。具体的には、判定部１３は、複数のモータ５の全てのトルクが許容トルクを基準とする許容トルク基準値以下である場合に、当該教示動作をパラレルリンクロボット１００が再生できると判定し、複数のモータ５のいずれかのトルクが許容トルク基準値を超える場合に、当該教示動作をパラレルリンクロボット１００が再生できないと判定する。また、判定部１３は、さらに、教示動作をパラレルリンクロボット１００において再生したと仮定した場合、複数のモータ５の全ての回転速度が許容回転速度を基準とする許容回転速度基準値以下である場合に、当該教示動作をパラレルリンクロボットが再生できると判定し、複数のモータ５のいずれかの回転速度が許容回転速度基準値を超える場合に、当該教示動作をパラレルリンクロボット１００が再生できないと判定する。ここで、許容トルクと許容回転速度は、パラレルリンクロボット１００が実際に動作可能か否かを判定するための許容判定値の一例である。この許容判定値は、予め設定されて記憶されていても良いし、動作の度に計算して算出しても良い。また、ここで、教示動作をパラレルリンクロボット１００が再生できるとは、パラレルリンクロボット１００が教示動作を実際に実行可能であり、教示動作をパラレルリンクロボット１００の動作が実現可能であることを示す。
【００２３】
作成部１４は、取得部１１により取得された教示動作を示すグラフを作成する。このグラフは、可動プレート３の位置および姿勢の経時的変化を示すグラフであり、教示の動作軌跡を示すグラフである。すなわち、作成部１４は、異なる複数のタイミングにおける可動プレート３の位置を示すＸ軸およびＹ軸およびＺ軸の座標と、可動プレート３の姿勢を示すθｘ軸およびθｙ軸およびθｚ軸の座標とに基づいて、可動プレート３の教示動作として入力された動作軌跡を示すグラフを作成する。作成部１４により作成されたグラフは、記憶部１２に記憶される。
【００２４】
編集部１５は、入力部２０により入力されたユーザからの操作を受け付けて、当該操作に応じて記憶部１２に記憶されたグラフを編集する。ここで、入力部２０により入力されたユーザからの操作とは、入力部２０を用いて表示部２１上でボタンが選択された場合、およびタッチパネルである表示部２１上でボタンが選択された場合を含む。具体的には、編集部１５は、ユーザから指定された時点における可動プレート３の位置および姿勢を示すグラフ上の点（以下、「編集点」と言う。）について、ユーザからの操作に応じて編集点を変更することにより、グラフを編集する。教示の動作軌跡を示すグラフが編集されることにより、教示動作におけるそれぞれの時点での可動プレート３の位置および姿勢が変更される。ユーザは、例えば、後述する表示部２１の一例であるディスプレイに表示されたグラフ上の編集点を変更することで、グラフを確認しながら可動プレート３の動作軌跡を編集することができる。表示部２１で表示される内容は、可動プレート３の位置および姿勢を示す６軸座標の軸ごとの時系列の動作座標値、または現在のパラレルリンクロボット１００の可動プレート３の位置（以下、「現在位置」と言う。）を少なくとも含む。また、編集部１５で編集できる機能は、動作座標の追加、削除、圧縮、伸張、平滑化、を少なくとも含む。なお、動作座標の追加、削除、圧縮、伸張、平滑化についての詳細は、後述する。
【００２５】
編集されたグラフが示す教示動作は、編集部１５によりグラフが編集された直後に、取得部１１により取得される。そして、判定部１３は、編集部１５により編集されたグラフが示す教示動作をパラレルリンクロボット１００において再生したと仮定した場合に、所定の区間において、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。ここでの所定の区間とは、編集された後のグラフにおいて、編集の対象となった編集点より第一所定時間前の第一時点から編集点までの第一区間と、編集点から編集点より第二所定時間後の第二時点までの第二区間とを合わせた区間である。なお、ここで、例えば編集の対象とできるグラフ上の点が、予め定められた異なる複数のタイミングである所定間隔（例えば、０．１５ｓ間隔のタイミング）で可動プレート３の位置および姿勢が取得された時の値に対してである場合には、「第一所定時間」および「第二所定時間」は、所定時間である。また、判定部１３は、さらに、編集部１５により編集されたグラフが示す教示動作が、予め算出されて記憶部１２に記憶されたパラレルリンクロボット１００の可動範囲内に基づいて、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。
【００２６】
変更部１６は、判定部１３によってパラレルリンクロボット１００が動作できないと判定された場合に、入力部２０を介してユーザによって操作されることで編集されたグラフ上の点（編集点）を、編集点を含む所定の区間における複数のモータ５の回転数が許容回転数以下であると共にトルクが許容トルク以下となるように、自動的に変更する。ここでの所定の区間は、第一時点から編集点までの区間および編集点から第二時点までの区間を合わせた区間である。ここで、変更部１６によって編集点を自動的に変更する制御は、ユーザによる入力部２０からの入力が途絶えた時点（例えば、ユーザがマウスのクリックを解除した時点）で行うことが望ましい。また、変更部１６によって編集点が変更されたことがユーザに伝わるように、例えば、変更の状況を表示部２１にアニメーション動作で表示することが望ましい。
【００２７】
再生確認部１７は、ユーザの入力に基づいて、確認したい教示動作のうちの所定の区間と、教示動作の所定の区間が取得された時の時間よりも短い時間である再生時間とを、受け付ける。ここでの所定の区間とは、第三時点から第四時点までの間の区間である。すなわち、再生確認部１７は、グラフにおける第三時点および第三時点よりも後の第四時点と、第三時点から第四時点までの時間よりも短い再生時間とを、受け付ける。なお、再生確認部１７により受け付けられた所定の区間の教示動作は、１倍速よりも速い再生速度の教示動作である。そして、再生確認部１７で受け付けられた所定の区間の教示動作は、取得部１１によって取得され記憶部１２に記憶される。このとき、判定部１３は、第三時点から第四時点までのグラフが示す教示動作をパラレルリンクロボット１００において再生したと仮定した場合、当該教示動作をパラレルリンクロボット１００が再生時間で再生できるか否かを判定する。
【００２８】
減速部１８は、教示動作をパラレルリンクロボット１００が再生できないと判定部１３により判定された場合、複数のモータ５のトルクが許容トルク以下となるように、パラレルリンクロボット１００の再生速度を遅くする。また、減速部１８は、この場合、複数のモータ５のそれぞれの回転速度が許容回転速度以下となるように、パラレルリンクロボット１００の再生速度を遅くする。
【００２９】
動作制御部１９は、記憶部１２に記憶されている教示動作に基づいて、複数のモータ５を制御する制御部である。
【００３０】
以下、現物を見ながら編集が可能な本実施の形態のパラレルリンクロボット１００の動作制御について、説明する。
【００３１】
図２は、表示部２１に表示される画面イメージを示す図である。
【００３２】
表示部２１の画面左側（図２の紙面左側）には、パラレルリンクロボット１００の教示動作軌跡が、軸ごとに時系列でグラフ化されている。これら各グラフは、横軸が時間軸であり、縦軸が各軸の座標値である。現在の可動プレート３の位置および姿勢は、現在位置ポインタ３１によって示されている。現在位置ポインタ３１は、マウスなどの入力部２０により、表示部２１であるディスプレイ上で操作可能である。パラレルリンクロボット１００の可動プレート３の座標は、６軸（Ｘ軸、Ｙ軸、Ｚ軸、θｘ軸、θｙ軸、θｚ軸）で管理されている。ここで、現在位置は、現在の可動プレート３の中央の仮想点座標（Ｘ軸、Ｙ軸、Ｚ軸）と、この仮想点を含む可動プレート３の面のＸ軸、Ｙ軸、Ｚ軸の各軸周りの回転量（θｘ軸、θｙ軸、θｚ軸）とで表現される。本実施の形態のパラレルリンクロボット１００は、この６軸の座標によって可動プレート３の位置および姿勢を数値管理している。
【００３３】
表示部２１の画面右側（図２の紙面右側）には、各種の数値情報２１ａ（現在値、変更値）、設定ボタン２１ｂ（追加、削除、変更値に変更、圧縮など）、および動作ボタン２１ｃ（再生、コマ送り、停止）が表示されている。これら各種の数値情報２１ａおよび設定ボタン２１ｂおよび動作ボタン２１ｃは、入力部２０の一例であるマウスの操作によって選択され、図２に示す各種設定および動作を実行するための指令を、制御部１０に送信する。なお、本実施の形態のパラレルリンクロボット１００では、動作ボタン２１ｃが選択された場合、パラレルリンクロボット１００は再生モードで動作し、それ以外の場合、パラレルリンクロボット１００は編集モードで動作する。
【００３４】
ユーザは、入力部２０を介した制御部１０での操作によって、現在位置とは別に、動作軌跡の情報の編集対象となる動作指定領域３２を設定することができる。動作指定領域３２は、開始点３３および終了点３４を含み、これらの点間の領域として定義される。開始点３３は、終了点３４と同一か、これよりも時刻の早い側（図２の紙面左側）に設定される必要がある。
【００３５】
編集部１５は、ユーザによる設定ボタン２１ｂの選択により、現在位置もしくは動作指定領域３２内の動作点群に対して、追加（図２の「現在位置を追加」）、削除（図２の「現在位置を削除」）、変更値に変更（図２の「現在値を変更値に変更」）、圧縮（図２の「指定領域内を圧縮」）、伸張（図２の「指定領域内を伸張」）、平滑化（図２の「指定領域内を平滑化」）を行う。動作点とは、動作指定領域３２内の教示動作軌跡上の点である。動作点は、前述のように、例えば０．１５ｓおきに記録された可動プレート３の現在位置である。
【００３６】
ここで、追加とは、設定した動作指定領域３２内において、動作指定領域３２内の先頭の動作点と同一座標の点を等間隔で生成する機能である。生成された動作点群の座標を変更したい場合は、後述する「変更値に変更」による座標値の変更機能によって最適な座標値へ変更する。
【００３７】
また、削除とは、設定した動作指定領域３２内の動作点を削除すると共に、動作指定領域３２内において削除された動作点の前後の動作点群を結ぶ機能である。
【００３８】
また、変更値に変更とは、設定した動作指定領域３２内の動作点群の座標値を、別途設定された座標値に置き換えることで、座標値を変更する機能である。別途設定される座標値は、ユーザにより設定されてもよいし、予め記憶部１２に記憶されたルールに基づいて設定されてもよい。
【００３９】
また、圧縮とは、設定した動作指定領域３２内の動作点群に対して、別途設定する間引き数に基づき、該当動作点を削除し、削除された動作点の前後の動作点群を結ぶ機能である。間引き数が１の場合、動作指定領域３２内において１つおきの動作点が削除対象となり、動作指定領域３２内の動作点群の数は半数となる。間引き数が２の場合、動作指定領域３２内において２つおきの動作点が削除対象となり、動作指定領域３２内の動作点群の数は２／３となる。
【００４０】
また、伸張とは、設定した動作指定領域３２内の動作点群に対して、別途設定する生成数に基づいて該当動作点を追加し、追加された動作点の前後の動作点群を結ぶ機能である。生成数が１の場合、動作指定領域３２内において１つおきの動作点が追加対象となり、動作指定領域３２内の動作点群の数は２倍となる。生成数が２の場合、動作指定領域３２内において２つおきの動作点が追加対象となり、動作指定領域３２内の動作点群の数は３／２倍となる。
【００４１】
また、平滑化とは、設定した動作指定領域３２内の動作点群に対して、動作点間の連結が滑らかに繋がるように、個々の動作点の座標値を自動変更する機能である。具体的には、平滑化とは、動作点に対し、一般的な近似法に基づいてスプライン関数等を用いて曲線近似し、この曲線上の点となるように動作点の座標値を変更する機能である。
【００４２】
さらに、本実施の形態のパラレルリンクロボット１００では、編集後の動作軌跡の確認のために動作指定領域３２内で可動プレート３を実際に動作させる指定領域内再生の機能、または、動作点ごとにコマ送りでパラレルリンクロボット１００を動作させて動作軌跡を詳細に確認する指定領域内コマ送りの機能が、実行可能である。これらの機能は、制御部１０による制御により実行される。
【００４３】
ここで、指定領域内再生とは、動作指定領域３２を設定した後に再生ボタン（図２の指定領域内再生のボタン）をユーザが選択することで、可動プレート３が現在位置からグラフ上に設定された動作指定領域３２の先頭点が示す位置および姿勢へゆっくりと直線移動し、先頭点への到達後、動作指定領域３２内の動作点群を順次トレースする動作である。この指定領域内再生を実行することによって、ユーザは、教示した可動プレート３の教示動作軌跡を、パラレルリンクロボット１００の可動プレート３の動作を目視等で直接的に確認することができる。
【００４４】
また、指定領域内コマ送りとは、前述の指定領域内再生での再生中に用いる機能である。指定領域内再生中にコマ送りボタン（図２の指定領域内コマ送りのボタン）をユーザが選択すると、まず、可動プレート３の動作が一時停止する。以降、コマ送りボタンを押すたびに、現在位置より後の動作軌跡上の動作点を、１点ずつトレースする。このように動作点を１点ずつトレースすることによって、ユーザは、パラレルリンクロボット１００に教示した教示動作が実際に再生される際の動作軌跡を、目視等で直接的にじっくりと時間をかけて確認することができる。また、コマ送り後に再生ボタンをユーザが選択することで、一時停止を解除し、動作指定領域３２内の現在位置より後の動作点群を順次連続的にトレースすることも可能である。
【００４５】
次に、ロード時（ユーザから直接教示された時点）に行われる教示動作適否判定に係る処理（教示動作適否判定処理）について、説明する。
【００４６】
図３は、ロード時の教示動作適否判定の処理の流れを示すフローチャートである。図４は、ダイレクト教示された教示動作を示すグラフのうちの一つの座標軸を示す図である。つまり、図４は、可動プレート３がダイレクト教示されたときに、可動プレート３の位置および姿勢を示す６軸座標のうちの一つの座標軸において、経時的な変化を示すグラフである。ここで、ダイレクト教示された教示動作についての教示動作適否判定の処理を、図３および図４を用いて説明する。なお、ここでは、一つの座標軸について説明するが、６軸座標のうちの他の座標軸についても同様に処理することができる。
【００４７】
まず、ユーザが、パラレルリンクロボット１００の可動プレート３に対してダイレクト教示を行って、教示動作軌跡の入力を行う。具体的には、ユーザが可動プレート３を手に持って所望の動作をさせ、当該動作によって経時的に変化する複数のモータ５のエンコーダ５ａの値を予め定められた所定間隔（例えば、０．１５ｓ間隔）で取得部１１により取得することで、教示動作軌跡の入力を行う（Ｓ１１）。つまり、ここでは、取得部１１が教示動作取得ステップとして、パラレルリンクロボット１００の可動プレート３に対してユーザからダイレクト教示された教示動作を取得する。取得部１１は、このように可動プレート３の位置および姿勢を示す６軸座標を所定間隔毎に取得することにより、動作点群Ｐ（ｎ）を得る。この動作点群Ｐ（ｎ）は、教示動作を示すためのものである。なお、ステップＳ１１では、予め入力されていた教示動作を取得部１１が取得してもよいし、記憶部１２に記憶されていた教示動作を取得部１１が取得してもよい。
【００４８】
続いて、取得部１１により取得されると共に対象となるｎ点の動作点群Ｐ（ｎ）について、判定部１３は、動作速度Ｓ（ｎ）を算出する（Ｓ１２）。なお、ここで、動作速度Ｓ（ｎ）は、  Ｓ（ｎ）＝（各軸の変位量）／Δｔ  である。
【００４９】
続いて、このＳ（ｎ）の最大値であるｍａｘ｛Ｓ（ｎ）｝が、第一条件に適合するか否かを確認する（Ｓ１３）。
【００５０】
ここで、第一条件とは、  ｍａｘ｛Ｓ（ｎ）｝≦（モータの許容回転速度）  である。モータの許容回転速度とは、モータ５が許容する回転最高速度である。つまり、判定部１３は、パラレルリンクロボット１００が教示動作を再生できるか否かの判定として、複数のモータ５の全ての回転速度が、許容回転速度を基準とする許容回転速度基準値（回転最高速度）以下であるときに、当該教示動作をパラレルリンクロボット１００が再生できると判定し、複数のモータ５のいずれかの回転速度が許容回転速度基準値を超えるときに、当該教示動作をパラレルリンクロボット１００が再生できないと判定する。
【００５１】
続いて、第一条件に適合する場合（Ｓ１３：ｙｅｓ）、複数のモータ５のモータトルクＴ（ｎ）に基づいて、ヤコビ行列演算によって各動作点における最大モータトルクｍａｘ｛Ｔ（ｎ）｝を算出する（Ｓ１４）。
【００５２】
続いて、モータトルクＴ（ｎ）の最大値である最大モータトルクｍａｘ｛Ｔ（ｎ）｝が、第二条件に適合するか否かを確認する（Ｓ１５）。
【００５３】
ここで、第二条件とは、  ｍａｘ｛Ｔ（ｎ）｝≦（モータの許容トルク）×ａ  である。ただし、ａは、安全率係数（０＜ａ≦１）であり、（モータの許容トルク）×ａは、モータの許容トルクを基準とする許容トルク基準値である。つまり、判定部１３は、パラレルリンクロボット１００が教示動作を再生できるか否かの判定として、複数のモータ５の全てのトルクが許容トルク基準値以下であるときに、当該教示動作をパラレルリンクロボット１００が再生できると判定し、複数のモータ５のいずれかのトルクが許容トルク基準値を超えるときに、当該教示動作をパラレルリンクロボットが再生できないと判定する。
【００５４】
第一条件および第二条件を設定するのは、モータ５の過負荷を防止するためである。モータ５に急峻な動作をさせた場合、モータ５の負荷が高まって過負荷になり、最悪の場合、サーボ制御がダウンすることがある。そのため、第一条件および第二条件を設定して、複数のモータ５の過負荷を防止することが有効である。
【００５５】
以上のように、判定部１３は、ステップＳ１２〜ステップＳ１５において、教示動作取得ステップにおいて取得した教示動作をパラレルリンクロボット１００において再生したと仮定した場合、パラレルリンクロボット１００の動力源である複数のモータ５の許容トルクおよび許容回転速度に基づいて、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。このように、動作判定ステップとして、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。
【００５６】
続いて、第二条件に適合する場合（Ｓ１５：ｙｅｓ）、当該動作点群Ｐ（ｎ）で示される教示動作を、記憶部１２に記憶させる（Ｓ１６）。
【００５７】
また、第一条件および第二条件のいずれか一方に適合しない場合（Ｓ１３：ｎｏおよび／またはＳ１５：ｎｏ）、動作点群Ｐ（ｎ）のうちで上記条件に適合しない箇所が分かるように出力する。ここでは、例えば、表示部に表示されているグラフのうちで上記条件に適合しない範囲について赤などの警告色でエラー表示するなどして、上記条件に適合しない部分であることを通知する（Ｓ１７）。ここで、エラー表示の方法としては、警告色で表示するほかに、エラーが出たことを警告音で伝える方法、エラーメッセージを表示する方法などを用いることができる。なお、適合しない範囲を警告色でエラー表示すると、エラーが発生した箇所をユーザに伝えることができるため、エラー表示としては特に有効である。
【００５８】
ステップＳ１６またはステップＳ１７が終了すると、ロード時の教示動作適否判定処理を終了する。
【００５９】
図５は、編集後の教示動作について行われる教示動作適否判定に係る処理の流れを示すフローチャートである。図６（ａ）は、パラレルリンクロボットの可動プレートの動作点を示す図であり、図６（ｂ）は、パラレルリンクロボットの可動プレートの動作点を編集したときのイメージを示す図である。
【００６０】
図５に示す処理フローは、図６（ａ）に示すような連続する動作点Ｐ（ｎ−１）、Ｐ（ｎ）、Ｐ（ｎ＋１）、・・・に対して、変更対象である動作点Ｐ（ｎ）がＰ（ｎ）’に変更されたとき（図６（ｂ）参照）、以下に説明するように処理するフローである。なお、本実施の形態では、動作点Ｐ（ｎ）からＰ（ｎ）’への変更は、表示部２１に表示される画面上で入力部２０によって動作点Ｐ（ｎ）を上下方向にドラッグ＆ドロップすることで、直感的に行うことができる。また、動作点Ｐ（ｎ）がＰ（ｎ）’に変更されたときに、制御部１０の作成部１４は、可動プレート３の位置および姿勢の経時的変化を示すためにグラフ作成ステップで作成されたグラフを編集している。
【００６１】
図５において、まず、編集部１５は、入力部２０に対するユーザからの操作を受け付けて、当該操作に応じてグラフ作成ステップにより作成されたグラフを編集する（Ｓ２１）。そして、取得部１１は、編集部１５により動作点Ｐ（ｎ）が編集されたことを認識して（Ｓ２２）、動作点Ｐ（ｎ）が編集された後の教示動作を取得する。
【００６２】
続いて、判定部１３は、編集された後のＰ（ｎ）’の座標が可動範囲内かを判断する（Ｓ２３）。つまり、判定部１３は、編集された後のグラフが示す教示動作が、予め設定されたパラレルリンクロボット１００の可動範囲内にあるか否かに基づいて、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。具体的には、予め求めたパラレルリンクロボット１００の可動範囲を示す可動範囲マップと教示動作とを比較することにより、編集された後のＰ（ｎ）’の座標が可動範囲内であるか否かを判定する。可動範囲マップは、例えば３Ｄ−ＣＡＤやシミュレータ等を用いて、予め可動プレート３が動作可能な範囲を求めたものである。この可動範囲マップのイメージを、図７に示す。パラレルリンクロボット１００の可動プレート３は、アーム４やロッド７の長さ、軸受９の屈曲範囲などのメカニカルな制約によって、動作可能な領域（可動範囲）が制限される。図７は、上述した制約について、Ｘ軸，Ｙ軸，Ｚ軸，θｘ軸，θｙ軸，θｚ軸の軸ごとに分割を行い、各分割交点において動作可能かどうかを判断し、６次元のマトリクスデータに置き換えたものである。なお、各軸の分割交点が離散的なものであるため、対象となるＰ（ｎ）’が分割交点と一致しているとは限らない。このため、Ｐ（ｎ）’に値が近い交点であると共に原点より外側の分割交点を求め、この分割交点が可動範囲内であるか否かを判定する。具体的には、例えば，Ｘ軸が・・・，−１，０，１，２，３，・・・と分割されており、Ｐ（ｎ）’のＸ＝０．７である場合、Ｘ＝１を分割交点のＸ座標として採用する。同様に、Ｘ軸以外のＹ軸，Ｚ軸，θｘ軸，θｙ軸，θｚ軸の軸ごとに分割交点の各軸座標値を求め、これらの座標値によって示される分割交点が、可動範囲内であるか否かを求める。
【００６３】
ここで、Ｐ（ｎ）’が可動範囲外であると判定部１３で判定された場合（Ｓ２３：ｎｏ）、可動範囲外エラーメッセージとして対象点を赤などの警告色でエラー表示するなどして、ユーザに可動範囲外であることを通知する（Ｓ２６）。
【００６４】
それに対し、Ｐ（ｎ）’が可動範囲内であると判定部１３で判定された場合（Ｓ２３：ｙｅｓ）、続いて、Ｐ（ｎ−１）〜Ｐ（ｎ）’の回転速度およびモータトルクが許容範囲内か否かを判断する（Ｓ２４）。この判断は、前述の図３にて説明したステップＳ１２〜ステップＳ１５において行われた内容と同様の方法で行う。すなわち、Ｐ（ｎ−１）〜Ｐ（ｎ）’への移動時間をΔｔとすると、  Ｓ（ｎ）＝（各軸の変位量）／Δｔ  であり、これが第一条件に適合するか否かを判定する。ここで、第一条件とは、  ｍａｘ｛Ｓ（ｎ）｝≦（モータの許容回転速度）  である。
【００６５】
また、各動作点におけるモータトルクＴ（ｎ）を算出し、これが第二条件に適合するか否かを判定する。ここで、第二条件とは、  ｍａｘ｛Ｔ（ｎ）｝≦（モータの許容トルク）×ａ  である。ただし、ａは、安全率係数（０＜ａ≦１）である。
【００６６】
なお、Ｐ（ｎ）が動作の開始点である場合、ステップＳ２４の判定処理は不要である。
【００６７】
Ｐ（ｎ−１）〜Ｐ（ｎ）’の回転速度およびモータトルクが許容範囲内にあると判定部１３により判定された場合（Ｓ２４：ｙｅｓ）、Ｐ（ｎ）’〜Ｐ（ｎ＋１）の回転速度およびモータトルクが許容範囲内か否かを判定するする（Ｓ２５）。この判断もステップＳ２４と同様に、前述の図３にて説明した方法と同様の方法で判断する。また、Ｐ（ｎ）が動作の終了点である場合、ステップＳ２５の判定処理は不要である。ステップＳ２４またはステップＳ２５において、モータ５の回転速度やモータトルクに無理があり、動作できないと判定された場合（Ｓ２４：ｎｏまたはＳ２５：ｎｏ）、対象点を赤などの警告色で表示し、動作負荷オーバーである旨を表示するなどにより、ユーザに通知する（Ｓ２７）。
【００６８】
つまり、判定部１３は、編集された後のグラフにおいて、編集の対象となった編集点であるＰ（ｎ）’より第一所定時間前の第一時点であるＰ（ｎ−１）から編集点Ｐ（ｎ）’までの第一区間（Ｐ（ｎ−１）〜Ｐ（ｎ）’）、および、編集点Ｐ（ｎ）’から編集点Ｐ（ｎ）’より第二所定時間後の第二時点Ｐ（ｎ＋１）までの第二区間（Ｐ（ｎ）’〜Ｐ（ｎ＋１））が示す教示動作をパラレルリンクロボット１００において再生したと仮定した場合、当該教示動作をパラレルリンクロボット１００が再生できるか否かを判定する。
【００６９】
Ｐ（ｎ−１）〜Ｐ（ｎ）’およびＰ（ｎ）’〜Ｐ（ｎ＋１）の回転速度およびモータトルクが許容範囲内にあると判定部１３により判定された場合（Ｓ２４：ｙｅｓおよびＳ２５：ｙｅｓ）、編集された教示動作を記憶部１２に記憶させ、表示部２１に表示させる（Ｓ２８）。
【００７０】
ステップＳ２５、ステップＳ２７またはステップＳ２８が終了すると、動作適否判定処理を終了する。
【００７１】
図８は、再生確認時の教示動作について行われる教示動作適否判定に係る処理の流れを示すフローチャートである。図９は、ロボットの動作点変更イメージを示す図であり、図２の紙面左側グラフの一部を模式的に示している。図８および図９を用いて、開始点３３から終了点３４へパラレルリンクロボット１００の可動プレート３の現在位置を示す現在位置ポインタ３１を移動させた場合について、説明する。図９は、図２の紙面左側グラフの一部を模式的に示したものである。以下、図９を用いてグラフの一部の座標軸のみ説明するが、その他の座標軸についても同様の考え方を適用する。
【００７２】
図９において、現在位置ポインタ３１は、可動プレート３の現在位置を示しており、図２における現在位置ポインタ３１と同一である。ユーザは、グラフに表示される教示動作のうちでユーザが指定した動作指定領域３２の再生確認を行うときに、動作指定領域３２の開始点３３と終了点３４とを指定する。より具体的には、ユーザは、現在位置ポインタ３１を最初に指定した位置を開始点３３として指定し、現在位置ポインタ３１を時間軸左右方向にドラッグさせてドラッグさせ終わったところを終了点３４として指定することで、動作指定領域３２が設定されるように処理させることができる。つまり、教示動作を示すグラフ上でユーザが現在位置ポインタ３１をドラッグさせて再生させたいと所望した区間（動作指定領域３２）において、ドラッグの開始位置が開始点３３として認識され、ドラッグの終了位置が終了点３４として認識される。そして、再生確認部１７は、グラフにおける第三時点（開始点３３）および第三時点（開始点３３）よりも後の第四時点（終了点３４）と、第三時点（開始点３３）から第四時点（終了点３４）までの時間よりも短い再生時間とを受け付ける。このときの再生時間は、開始点３３から終了点３４までの時間に対して、現在位置ポインタ３１をドラッグさせるのに要した時間である。このようにして、再生確認部１７により受け付けられた開始点３３、終了点３４、および再生時間により示される教示動作が、取得部１１により取得される（Ｓ３１）。
【００７３】
以下、ステップＳ３２〜ステップＳ３５の処理では、判定部１３により図３で説明したステップＳ１２〜Ｓ１５と同様の処理が行われるため説明を省略する。
【００７４】
続いて、第二条件に適合する場合（Ｓ３５：ｙｅｓ）、パラレルリンクロボット１００の可動プレート３を実際に動作させて、次に現在位置ポインタ３１が示している時点における可動プレート３の位置および姿勢に、パラレルリンクロボット１００の可動プレート３の位置および姿勢を更新する（Ｓ３６）。
【００７５】
また、第一条件および第二条件のいずれかに適合しない場合（Ｓ３３：ｎｏまたはＳ３５：ｎｏ）は、ドラッグするスピードが急峻すぎる場合である。つまり、開始点３３から終了点３４までの間における再生時間が短く、再生速度が速すぎる場合である。この場合は、可動プレート３の動作に構造上の無理が発生するため、開始点３３から終了点３４までに行われる再生時間を第一条件および第二条件の両方に適合するように長く設定することで、再生速度を遅く設定する（Ｓ３７）。つまり、ここでは、減速部１８が、複数のモータ５の回転速度が許容回転速度以下となるように、パラレルリンクロボット１００の再生速度を遅くする。
【００７６】
ステップＳ３６またはステップＳ３７が終了すると、図８に示す処理フローを終了する。
【００７７】
以上説明した、図８に示す処理フローでの処理を行い、動作可能な現在位置ポインタ３１をドラッグしてパラレルリンクロボット１００を実際に動作させることで、ダイレクト教示した教示動作軌跡や編集内容を、ユーザが目視等で直接的に確認することができる。
【００７８】
本実施の形態に係るパラレルリンクロボット１００の教示動作方法では、ダイレクト教示を行った直後のロード時の場合、教示動作に編集を加えた後の場合、および、再生確認時の再生速度を速く設定した場合、の３つの場合の教示動作について、パラレルリンクロボット１００の可動プレート３が動作可能であるか否かを判定している。また、教示動作をパラレルリンクロボット１００が再生できるか否かを、モータ５が許容する許容回転速度および許容トルクに基づいて、第一条件および第二条件を満たすか否かを用いて判定している。
【００７９】
このため、教示動作を最初に取得したロード時、教示動作に編集を加えた編集後、および再生確認時のように、初めて教示動作を取得した時、または、教示動作に変更が加えられた時における教示動作が、パラレルリンクロボット１００で再生可能か否かを確実に判定することができる。そして、判定結果として再生不可である場合には、リアルタイムにユーザに再生不可である旨を通知するため、ユーザはその時に例えば再生不可とならないように編集を行なって、再生不可である教示動作を再生可にすることができる。これにより、パラレルリンクロボット１００の動作教示方法として、直感的でわかりやすいダイレクト教示方法を用いつつ、パラレルリンクロボット１００の容易な動作教示を可能とする。
【００８０】
また、本実施の形態に係るパラレルリンクロボット１００の動作教示方法によれば、動作点の編集中に、予め編集対象となる動作点が動作可能か否かを判定し、動作可能な場合には、パラレルリンクロボット１００の可動プレート３の実際の位置および姿勢を動かしながら、実際の動作を見て編集結果の妥当性を直接確認することができる。そのため、従来のダイレクト教示では困難であった簡易かつ直感的なオペレーションが可能となり、その活用の幅を拡大することができ、本技術分野や産業の進展に大きく寄与することが可能である。
【００８１】
ここで、本実施の形態のパラレルリンクロボット１００におけるジョイント部の構造を、図１０（ａ）、（ｂ）を用いて説明する。
【００８２】
図１０（ａ）は、本実施の形態のパラレルリンクロボット１００において、アーム４とロッド７とのジョイント部の要部拡大図である。図１０（ｂ）は、本実施の形態のパラレルリンクロボット１００において、ロッド７と可動プレート３とのジョイント部の要部拡大図である。これらのジョイント部は、それぞれ、ユニバーサルジョイントである。
【００８３】
図１０（ａ）に示すように、アーム４とロッド７とのジョイント部において、各回転軸は１軸で交わり、２軸周りに回転が可能である。また、アーム４とロッド７とのジョイント部は、各軸ともに、その内部に転がりのベアリングが入っている。
【００８４】
図１０（ｂ）に示すように、ロッド７と可動プレート３とのジョイント部において、各回転軸は１点で交わり、３軸周りに回転が可能である。また、ロッド７と可動プレート３とのジョイント部は、各軸ともに、その内部に転がりのベアリングが入っている。本実施の形態のパラレルリンクロボット１００は、ロッド７と可動プレート３とのジョイント部において、十字になっている２軸周りは、各方向４５°傾けることが可能である。
【００８５】
なお、本実施の形態では、パラレルリンクロボット１００の動作教示方法において、編集後のポインタである動作点Ｐ（ｎ）’の座標や動作範囲およびモータトルクが許容範囲外である場合に、許容範囲内で且つできる限り編集後のポインタに近い値を、次候補の動作点として表示部２１に表示してもよい。許容範囲内で且つ編集後のポインタに近い値を表示部２１に表示することで、ユーザがポインタを変更する際に、どの程度まで動作可能なのかの判断をサポートすることができる。
【００８６】
なお、本実施の形態では、図５のステップＳ２４およびステップＳ２５において「ｎｏ」と判定された場合にエラー表示を行なったが、エラー表示を行わずに、編集された動作点Ｐ（ｎ）’を許容回転速度以下かつ許容トルク以下となるように、編集された動作点Ｐ（ｎ）’を自動的に変更してもよい。この場合、編集された動作点Ｐ（ｎ）’における回転速度以下かつモータトルク以下で、かつ最大の回転速度以下かつ最大のモータトルク以下になるような動作点Ｐ（ｎ）’’を判定部１３で算出して、編集された動作点Ｐ（ｎ）’をＰ（ｎ）’’に変更し、表示部２１に表示する。
【００８７】
なお、編集されている動作点Ｐ（ｎ）’について、上記のようにパラレルリンクロボット１００が再生できないと判定された場合、編集点（動作点Ｐ（ｎ）’）を基準とした時間範囲である編集時間範囲内の編集された後のグラフが示す教示動作を再生したと仮定したときの複数のモータの回転速度およびトルクがそれぞれ許容回転速度以下および許容トルク以下となるように、編集時間内における編集点以外の可動プレートの位置および姿勢を示すグラフを第二変更ステップとして変更部１６が変更してもよい。つまり、動作点Ｐ（ｎ）’を基準とした例えば１ｓ間の編集時間内の動作点Ｐ（ｎ−５）〜Ｐ（ｎ＋５）の点を編集点（動作点Ｐ（ｎ）’）の値を維持できるように変更してＰ（ｎ−５）’〜Ｐ（ｎ＋５）’とし、Ｐ（ｎ−５）’〜Ｐ（ｎ＋５）’を再生した時の複数のモータの回転速度およびトルクがそれぞれ許容回転速度以下および許容トルク以下となるようにＰ’（ｎ−５）〜Ｐ（ｎ−１）’、および、Ｐ（ｎ＋１）’〜Ｐ（ｎ＋５）’の値を変更する。より具体的には、動作点Ｐ’（ｎ）としたことにより動作が急峻にならないように、Ｐ（ｎ−５）’〜Ｐ（ｎ−１）’、および、Ｐ（ｎ＋１）’〜Ｐ（ｎ＋５）’の値を動作点Ｐ（ｎ）から動作点Ｐ（ｎ）’に編集した方向と同じ方向（つまり、動作点Ｐ（ｎ）’を上方向に移動させた場合には上方向であり、下方向に移動させた場合には下方向）に変更することにより、動作点Ｐ（ｎ）’が急峻にならないように変更する。
【産業上の利用可能性】
【００８８】
本発明は、従来のダイレクト教示では困難であった簡易なオペレーションが可能となるため、パラレルリンクロボットの可動プレートに対するダイレクト教示などに利用可能である。
【符号の説明】
【００８９】
１，１００    パラレルリンクロボット
２    固定プレート
３    可動プレート
４    アーム
５    モータ
５ａ  エンコーダ
６    プレート
７    ロッド
８    エンドエフェクタ
９    軸受
１０    制御部
１１    取得部
１２    記憶部
１３    判定部
１４    作成部
１５    編集部
１６    変更部
１７    再生確認部
１８    減速部
１９    動作制御部
２０    入力部
２１    表示部
２１ａ    数値情報
２１ｂ    設定ボタン
２１ｃ    動作ボタン
３１    現在位置ポインタ
３２    動作指定領域
３３    開始点
３４    終了点
【図１】
0005479541.tif 000002
【図２】
0005479541.tif 000003
【図３】
0005479541.tif 000004
【図４】
0005479541.tif 000005
【図５】
0005479541.tif 000006
【図６】
0005479541.tif 000007
【図７】
0005479541.tif 000008
【図８】
0005479541.tif 000009
【図９】
0005479541.tif 000010
【図１０】
0005479541.tif 000011
【図１１】
0005479541.tif 000012