(57)【要約】【課題】ロボットの教示操作における操作性向上に有効な制御システムを提供する。【解決手段】操作用デバイス３００は、先端部を有するロボットを操作するための操作入力部３１１と、先端部の動作指令を入力するための操作画像を操作入力部３１１に出力する画面出力部３１３と、第二座標系を操作入力部３１１の姿勢に応じて回す座標回転部３２３と、操作画像内の少なくとも一点を指定する操作がなされた場合に、当該一点と当該操作画像内の基準点の位置関係に相関するように第二座標系における先端部の動作方向を決定し、当該一点と当該基準点の距離に相関するように先端部の動作のスカラー量を決定し、動作指令を生成する指令生成部３３０と、動作指令を第一座標系における動作指令に変換する指令変換部３４１と、第一座標系における動作指令に従って制御指令を出力する指令出力部３４２と、を備える。【選択図】図２
2019198925.tif 000002
【特許請求の範囲】
【請求項１】
先端部と、前記先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作入力部と、
前記先端部の動作指令を入力するための少なくとも一つの操作画像を前記操作入力部に出力する画面出力部と、
前記ロボットの制御用の第一座標系における前記操作入力部の姿勢を検出するデバイス姿勢検出部と、
前記第一座標系に対して回転可能な第二座標系を前記操作入力部の姿勢に応じて回す座標回転部と、
前記操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように前記第二座標系における前記先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように前記先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む前記先端部の動作指令を生成する指令生成部と、
前記先端部の動作指令を前記第一座標系における前記先端部の動作指令に変換する指令変換部と、
前記第一座標系における前記先端部の動作指令に従って前記ロボットを制御するための制御指令を出力する指令出力部と、を備える操作用デバイス。
【請求項２】
前記スカラー量は前記先端部の動作の速さを含む、請求項１記載の操作用デバイス。
【請求項３】
前記少なくとも一つの操作画像は、前記先端部を移動させる指令を入力するための移動ツール画像を含み、
前記移動ツール画像は、一本の描画ラインに沿うように描画される少なくとも一つの一次元操作系を含み、当該一次元操作系は前記第二座標系に設定された一本の移動ラインに対応付けられ、
前記指令生成部は、前記移動ツール画像への入力に従って、前記第二座標系における前記先端部の移動指令を生成する移動指令生成部を有し、
前記移動指令生成部は、前記一次元操作系の少なくとも一点を指定する前記ポイント操作がなされた場合に、当該一次元操作系に対応する移動ラインにおいて、当該一点と当該一次元操作系の基準点との位置関係に相関するように移動方向を決定し、当該一点と当該基準点との距離に相関するように前記スカラー量を決定し、当該移動方向及び当該スカラー量を含む前記移動指令を生成する、請求項２記載の操作用デバイス。
【請求項４】
前記移動ツール画像は、前記少なくとも一つの一次元操作系として、互いに交差する複数本の描画ラインにそれぞれ沿うように描画される複数の一次元操作系を含み、当該複数の一次元操作系は、前記第二座標系で互いに交差するように設定された複数本の移動ラインにそれぞれ対応し、
前記移動指令生成部は、前記複数の一次元操作系のうちいずれか一つの一次元操作系の少なくとも一点を指定する前記ポイント操作がなされた場合に、当該一次元操作系に対応する移動ラインにおいて、当該一点と当該一次元操作系の基準点との位置関係に相関するように前記移動方向を決定し、当該一点と当該基準点との距離に相関するように前記スカラー量を決定する、請求項３記載の操作用デバイス。
【請求項５】
前記少なくとも一つの一次元操作系は、基準点側から順に並ぶ複数のポイントエリアを有し、
前記移動指令生成部は、前記一次元操作系のいずれかのポイントエリアを指定する前記ポイント操作がなされた場合に、当該一次元操作系に対応する移動ラインにおいて、当該ポイントエリアと当該基準点との位置関係に相関するように前記移動方向を決定し、当該ポイントエリアと当該基準点との距離に相関するように前記スカラー量を決定する、請求項３又は４記載の操作用デバイス。
【請求項６】
少なくとも一つの前記一次元操作系は、前記ポイントエリア同士の間に、前記ポイント操作を無視する不感エリアを有する、請求項５記載の操作用デバイス。
【請求項７】
前記複数のポイントエリアの幅が、前記基準点側から遠ざかるのに応じて大きくなっている、請求項５又は６記載の操作用デバイス。
【請求項８】
前記少なくとも一つの操作画像は、前記先端部を回転させる指令を入力するための回転ツール画像を更に含み、
前記指令生成部は、前記回転ツール画像への入力に従って、前記第二座標系における前記先端部の回転指令を生成する回転指令生成部を更に有する、請求項１〜７のいずれか一項記載の操作用デバイス。
【請求項９】
前記多関節アームは複数の関節を含み、
前記画面出力部は、前記複数の関節ごとの角度のステータスと、前記複数の関節ごとの角度のリミットとを合わせて示す角度インジケータの画像を更に前記操作入力部に出力する、請求項１〜８のいずれか一項記載の操作用デバイス。
【請求項１０】
前記第一座標系に対する前記第二座標系の姿勢を予め設定された初期姿勢にするキャリブレーションを、前記操作入力部への入力に応じて実行するキャリブレーション部と、
前記キャリブレーション部により前記キャリブレーションが実行されていないことを報知する未設定報知部とを更に備える、請求項１〜９のいずれか一項記載の操作用デバイス。
【請求項１１】
請求項１〜１０のいずれか一項記載の操作用デバイスと、
前記制御指令に従って前記多関節アームにより前記先端部を動作させるように前記ロボットを制御するコントローラと、を備える制御システム。
【請求項１２】
先端部と、前記先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作用デバイスにおいて、少なくとも一つの操作画像を操作入力部に出力することと、
前記ロボットの制御用の第一座標系における前記操作入力部の姿勢を検出することと、
前記第一座標系に対して回転可能な第二座標系を前記操作入力部の姿勢に応じて回すことと、
前記操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように前記第二座標系における前記先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように前記先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む前記先端部の動作指令を生成することと、
前記先端部の動作指令を前記第一座標系における前記先端部の動作指令に変換することと、
前記第一座標系における前記先端部の動作指令に従って前記ロボットを制御するための制御指令を出力することと、を含む制御方法。
【請求項１３】
先端部と、前記先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作用デバイスに、
少なくとも一つの操作画像を操作入力部に出力することと、
前記ロボットの制御用の第一座標系における前記操作入力部の姿勢を検出することと、
前記第一座標系に対して回転可能な第二座標系を前記操作入力部の姿勢に応じて回すことと、
前記操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように前記第二座標系における前記先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように前記先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む前記先端部の動作指令を生成することと、
前記先端部の動作指令を前記第一座標系における前記先端部の動作指令に変換することと、
前記第一座標系における前記先端部の動作指令に従って前記ロボットを制御するための制御指令を出力することと、を含む制御方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、操作用デバイス、制御システム、制御方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ロボットの運動を制御するコントローラと、操作者がロボットに動作を教示するための教示ペンダントとを有する教示再生装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２２４６９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、ロボットの教示操作における操作性向上に有効な制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本開示の一側面に係る操作用デバイスは、先端部と、先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作入力部と、先端部の動作指令を入力するための少なくとも一つの操作画像を操作入力部に出力する画面出力部と、ロボットの制御用の第一座標系における操作入力部の姿勢を検出するデバイス姿勢検出部と、第一座標系に対して回転可能な第二座標系を操作入力部の姿勢に応じて回す座標回転部と、操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように第二座標系における先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部の動作指令を生成する指令生成部と、先端部の動作指令を第一座標系における先端部の動作指令に変換する指令変換部と、第一座標系における先端部の動作指令に従ってロボットを制御するための制御指令を出力する指令出力部と、を備える。
【０００６】
本開示の他の側面に係る制御システムは、上記の操作用デバイスと、制御指令に従って多関節アームにより先端部を動作させるようにロボットを制御するコントローラと、を備える。
【０００７】
本開示の更に他の側面に係る制御方法は、先端部と、先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作用デバイスにおいて、少なくとも一つの操作画像を操作入力部に出力することと、ロボットの制御用の第一座標系における操作入力部の姿勢を検出することと、第一座標系に対して回転可能な第二座標系を操作入力部の姿勢に応じて回すことと、操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように第二座標系における先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部の動作指令を生成することと、先端部の動作指令を第一座標系における先端部の動作指令に変換することと、第一座標系における先端部の動作指令に従ってロボットを制御するための制御指令を出力することと、を含む。
【０００８】
本開示の更に他の側面に係るプログラムは、先端部と、先端部の位置及び姿勢を変更する多関節アームとを有するロボットを操作するための操作用デバイスに、少なくとも一つの操作画像を操作入力部に出力することと、ロボットの制御用の第一座標系における操作入力部の姿勢を検出することと、第一座標系に対して回転可能な第二座標系を操作入力部の姿勢に応じて回すことと、操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像内の基準点との位置関係に相関するように第二座標系における先端部の動作方向を決定し、当該一点と当該基準点との距離に相関するように先端部の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部の動作指令を生成することと、先端部の動作指令を第一座標系における先端部の動作指令に変換することと、第一座標系における先端部の動作指令に従ってロボットを制御するための制御指令を出力することと、を含む制御方法を実行させるためのプログラムである。
【発明の効果】
【０００９】
本開示によれば、ロボットの教示操作における操作性向上に有効な制御システムを提供することができる。
【図面の簡単な説明】
【００１０】
【図１】ロボットシステムの構成を例示する模式図である。
【図２】制御システムの機能的構成を例示するブロック図である。
【図３】固定座標モードの操作画面の一例を示す模式図である。
【図４】可動座標モードの操作画面の一例を示す模式図である。
【図５】可動座標モードの操作画面の変形例を示す模式図である。
【図６】可動座標モードの操作画面の変形例を示す模式図である。
【図７】可動座標モードの操作画面の変形例を示す模式図である。
【図８】タッチパネルの姿勢を例示する模式図である。
【図９】座標回転処理を例示する模式図である。
【図１０】キャリブレーション用の装置配置例を示す模式図である。
【図１１】制御システムのハードウェア構成を例示するブロック図である。
【図１２】画面データ出力手順を例示するフローチャートである。
【図１３】操作制御手順を例示するフローチャートである。
【図１４】移動指令生成手順を例示するフローチャートである。
【図１５】回転指令生成手順を例示するフローチャートである。
【図１６】キャリブレーション手順を例示するフローチャートである。
【図１７】制御実行手順を例示するフローチャートである。
【発明を実施するための形態】
【００１１】
以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
【００１２】
〔ロボットシステム〕
本実施形態に係るロボットシステム１は、操作者により予め教示された動作をロボットに繰り返し自動実行させるシステムである。ロボットシステム１の用途に特に制限はない。ロボットシステム１の用途の具体例としては、ロボットに加工又は組立て等を実行させる産業用途が挙げられる。
【００１３】
ロボットシステム１は、ロボット１０と、制御システム１００とを備える。ロボット１０は、例えば６軸の垂直多関節ロボットであり、基部１１と、先端部１２と、多関節アーム２０とを有する。基部１１は、ロボット１０の作業エリアにおいて例えば床面に設置されている。多関節アーム２０は、基部１１及び先端部１２を接続する。
【００１４】
多関節アーム２０は複数の関節を有し、当該複数の関節の動作角度を変更することで基部１１に対する先端部１２の位置及び姿勢を変更する。例えば多関節アーム２０は、旋回部２１と、第一アーム２２と、第二アーム２３と、手首部２４と、アクチュエータ４１，４２，４３，４４，４５，４６とを有する。旋回部２１は、鉛直な軸線Ａｘ１まわりに旋回可能となるように、基部１１の上部に設けられている。すなわち多関節アーム２０は、軸線Ａｘ１まわりに旋回部２１を旋回可能とする関節３１を有する。
【００１５】
第一アーム２２は、軸線Ａｘ１に交差（例えば直交）する軸線Ａｘ２まわりに揺動可能となるように旋回部２１に接続されている。すなわち多関節アーム２０は、軸線Ａｘ２まわりに第一アーム２２を揺動可能とする関節３２を有する。なお、ここでの交差とは、所謂立体交差のように、互いにねじれの関係にある場合も含む。以下においても同様である。
【００１６】
第二アーム２３は、軸線Ａｘ１に交差する軸線Ａｘ３まわりに揺動可能となるように、第一アーム２２の端部に接続されている。すなわち多関節アーム２０は、軸線Ａｘ３まわりに第二アーム２３を揺動可能とする関節３３を有する。軸線Ａｘ３は軸線Ａｘ２に平行であってもよい。
【００１７】
手首部２４は、旋回アーム２６及び揺動アーム２７を有する。旋回アーム２６は、第二アーム２３の中心に沿って第二アーム２３の端部から延出しており、第二アーム２３の中心に沿う軸線Ａｘ４まわりに旋回可能である。すなわち多関節アーム２０は、軸線Ａｘ４まわりに旋回アーム２６を旋回可能とする関節３４を有する。揺動アーム２７は、軸線Ａｘ４に交差（例えば直交）する軸線Ａｘ５まわりに揺動可能となるように旋回アーム２６の端部に接続されている。すなわち多関節アーム２０は、軸線Ａｘ５まわりに揺動アーム２７を揺動可能とする関節３５を有する。
【００１８】
先端部１２は、揺動アーム２７の中心に沿う軸線Ａｘ６まわりに旋回可能となるように、揺動アーム２７の端部に接続されている。すなわち多関節アーム２０は、軸線Ａｘ６まわりに先端部１２を旋回可能とする関節３６を有する。
【００１９】
アクチュエータ４１，４２，４３，４４，４５，４６は、例えば電動モータを動力源とし、多関節アーム２０の複数の関節３１，３２，３３，３４，３５，３６をそれぞれ駆動する。例えばアクチュエータ４１は、軸線Ａｘ１まわりに旋回部２１を旋回させ、アクチュエータ４２は軸線Ａｘ２まわりに第一アーム２２を揺動させ、アクチュエータ４３は軸線Ａｘ３まわりに第二アーム２３を揺動させ、アクチュエータ４４は軸線Ａｘ４まわりに旋回アーム２６を旋回させ、アクチュエータ４５は軸線Ａｘ５まわりに揺動アーム２７を揺動させ、アクチュエータ４６は軸線Ａｘ６まわりに先端部１２を旋回させる。すなわちアクチュエータ４１〜４６は、関節３１〜３６をそれぞれ駆動する。
【００２０】
なお、上述したロボット１０の構成はあくまで一例である。ロボット１０は、基部に対する先端部の位置及び姿勢を多関節アームにより変更する限りいかに構成されていてもよい。例えばロボット１０は、上記６軸の垂直多関節ロボットに冗長軸を追加した７軸のロボットであってもよい。また、ロボット１０は所謂スカラー型のロボットであってもよい。
【００２１】
〔制御システム〕
制御システム１００は、ロボット１０を制御するためのシステムであり、コントローラ２００と操作用デバイス３００とを備える。コントローラ２００は、操作者により教示されたロボット１０の動作内容を動作プログラムとして保持し、当該動作プログラムに従ってロボット１０を制御する。操作用デバイス３００は、操作者による操作入力を取得し、当該操作入力に基づく指令を生成してコントローラ２００に出力する。以下、コントローラ２００及び操作用デバイス３００の構成を詳細に例示する。
【００２２】
（コントローラ）
図２に示すように、コントローラ２００は、動作プログラムに従って多関節アーム２０により先端部１２を動作させるようにロボット１０を制御することと（以下、「プレイモード制御」という。）、操作用デバイス３００からの制御指令に従って多関節アーム２０により先端部１２を動作させるようにロボット１０を制御することと（以下、「教示モード制御」という。）を実行するように構成されている。例えばコントローラ２００は、機能上の構成（以下、「機能モジュール」という。）として、モデル情報保持部２１１と、プログラム保持部２１２と、逆運動学演算部２１３と、制御実行部２１４とを有する。
【００２３】
モデル情報保持部２１１は、ロボット１０の各部のサイズ（例えば第一アーム２２、第二アーム２３、旋回アーム２６、揺動アーム２７の長さ等）を含むモデル情報を記憶する。プログラム保持部２１２は、操作用デバイス３００を用いて操作者により教示された動作内容を動作プログラムとして記憶する。動作プログラムは、時系列に並ぶ複数の動作命令を含む。動作命令は、基部１１に対する先端部１２の目標位置及び目標姿勢を定める移動命令を含む。
【００２４】
逆運動学演算部２１３は、目標位置及び目標姿勢に従って先端部１２を動作させるための関節角度目標値（関節３１，３２，３３，３４，３５，３６の動作角度目標値）を逆運動学演算により算出する。上記教示モード制御において、逆運動学演算部２１３は、操作用デバイス３００からの制御指令により定められた目標位置及び目標姿勢に従って先端部１２を動作させるための関節角度目標値を算出する。上記プレイモード制御において、逆運動学演算部２１３は、上記動作プログラムの動作命令により定められた目標位置及び目標姿勢に従って先端部１２を動作させるための関節角度目標値を算出する。
【００２５】
制御実行部２１４は、関節角度目標値に従って、アクチュエータ４１，４２，４３，４４，４５，４６により関節３１，３２，３３，３４，３５，３６をそれぞれ駆動するように多関節アーム２０を制御する。
【００２６】
（操作用デバイス）
操作用デバイス３００は、コントローラ２００が上記教示モード制御を実行する際に、動作教示用の操作入力に従ってロボット１０を動作させるための制御指令を生成してコントローラ２００に出力することを実行するように構成されている。操作用デバイス３００は、所謂タブレット型の端末であり、タッチパネル３８１と、姿勢センサ３８２とを有する。
【００２７】
タッチパネル３８１（操作入力部）は、例えば液晶モニタ又は有機ＥＬモニタ等の表示装置と、タッチパッド等の接触位置検出装置とを重ねあわせた入力装置である。タッチパネル３８１は、表示装置の画面に触れることによる操作入力を取得する。
【００２８】
姿勢センサ３８２（デバイス姿勢検出部）は、操作用デバイス３００の姿勢（すなわちタッチパネル３８１の姿勢）を検出する。例えば姿勢センサ３８２はジャイロセンサであり、互いに直交する三本の軸線まわりの操作用デバイス３００の姿勢変化（すなわちタッチパネル３８１の姿勢変化）を検出する。
【００２９】
操作用デバイス３００は、ロボット１０の制御用の第一座標系Ｃ１におけるタッチパネル３８１の姿勢を姿勢センサ３８２により検出することと、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２をタッチパネル３８１の姿勢に応じて回すことと（図９参照）、タッチパネル３８１への操作入力に従って、第二座標系Ｃ２における先端部１２の動作指令を生成することと、先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換することと、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力することと、を実行するように構成されている。
【００３０】
第一座標系Ｃ１は、基部１１に対する先端部１２の位置及び姿勢を一意に定めることが可能な座標系であればよい。例えば第一座標系Ｃ１は、基部１１に固定された座標系であり、互いに直交する三つの座標軸（Ｘ軸Ｃ１１、Ｙ軸Ｃ１２及びＺ軸Ｃ１３）を有する。Ｚ軸Ｃ１３は鉛直（水平面に垂直）であり、上方がＺ軸Ｃ１３の正方向である。
【００３１】
第二座標系Ｃ２も、互いに直交する三つの座標軸（Ｘ軸Ｃ２１、Ｙ軸Ｃ２２及びＺ軸Ｃ２３）を有する。第一座標系Ｃ１に対する第二座標系Ｃ２の回転角度は、Ｘ軸Ｃ２１、Ｙ軸Ｃ２２及びＺ軸Ｃ２３が、Ｘ軸Ｃ１１、Ｙ軸Ｃ１２及びＺ軸Ｃ１３にそれぞれ一致した状態を初期状態として定義される。
【００３２】
操作用デバイス３００は、少なくとも一つの操作画像を含む操作画面をタッチパネル３８１に表示するように画面データを出力することを更に実行し、操作画像内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と操作画像内の基準点との位置関係に相関するように第二座標系Ｃ２における先端部１２の動作方向を決定し、該一点と当該基準点との距離に相関するように先端部１２の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部１２の動作指令を生成するように構成されていてもよい。操作用デバイス３００は、少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制することを更に実行するように構成されていてもよい。
【００３３】
例えば操作用デバイス３００は、操作画面の表示及び操作入力の取得用の機能モジュールとして、操作入力部３１１と、入力内容識別部３１２と、画面出力部３１３と、雛形データ保持部３１４と、関節情報保持部３１５と、角度情報取得部３１６と、入力内容保持部３１７とを備え、第二座標系Ｃ２の回転用の機能モジュールとして、デバイス姿勢検出部３２１と、姿勢演算部３２２と、座標回転部３２３と、座標回転規制部３２４と、モード切替部３２５と、キャリブレーション部３５１と、未設定報知部３５２とを備え、制御指令の生成及び出力用の機能モジュールとして、指令生成部３３０と、指令変換部３４１と、指令出力部３４２とを備える。
【００３４】
操作入力部３１１は、ロボットを操作するための入力部である。例えば操作入力部３１１は、操作入力用の操作画面を表示し、操作画面に対する操作入力を取得する。操作入力の具体例としては、ポイント操作及びドラッグ操作が挙げられる。ポイント操作は、操作画面内の少なくとも一点を指定する操作である。ポイント操作は、操作画面内の複数の点を同時に指定する操作も含む。ドラッグ操作は、操作画面内の少なくとも一点を指定したまま当該一点を移動させる操作である。ドラッグ操作は、操作画面内の複数の点を指定したまま当該複数の点を移動させる操作も含む。例えば操作入力部３１１は、上記タッチパネル３８１により構成される。操作入力部３１１は、タッチパネル３８１に操作画面を表示し、タッチパネル３８１へのタッチ操作に基づいて当該操作画面への操作入力を取得する。
【００３５】
入力内容識別部３１２は、操作入力部３１１への操作入力の内容を識別する。例えば入力内容識別部３１２は、タッチパネル３８１へのタッチ操作の位置（以下、「タッチ位置」という。）と、操作画面との位置関係に基づいて操作入力部３１１への操作入力の内容を識別する。例えば入力内容識別部３１２は、操作画面が少なくとも一つの操作画像を含んでおり、タッチ位置が操作画像内に位置する場合に、ポイント操作位置が当該操作画像内のどの位置にあるかによって操作画像への操作内容を識別する。より具体的に、入力内容識別部３１２は、操作画面が一つのボタンの画像を含んでおり、タッチ位置が当該ボタンの画像内に位置する場合に、当該ボタンを押す操作が行われたものと識別する。
【００３６】
雛形データ保持部３１４は、操作入力部３１１に表示する操作画面の雛形データを保持する。雛形データ保持部３１４は、複数種類の操作画面の雛形データを保持していてもよい。
【００３７】
関節情報保持部３１５は、複数の関節３１，３２，３３，３４，３５，３６ごとに、可動角等を含む情報（以下、「関節情報」という。）を保持している。角度情報取得部３１６は、関節３１，３２，３３，３４，３５，３６の角度のステータス情報を取得する。例えば角度情報取得部３１６は、関節３１，３２，３３，３４，３５，３６の角度のステータス情報をコントローラ２００の制御実行部２１４から取得する。
【００３８】
入力内容保持部３１７は、入力内容識別部３１２により識別された操作入力部３１１への操作入力の内容を保持する。入力内容保持部３１７が保持する内容は、操作入力に従った処理の実行時に参照される。
【００３９】
画面出力部３１３は、少なくとも一つの操作画像を含む操作画面を操作入力部３１１に表示するように画面データを出力する。画面出力部３１３は、操作入力部３１１への操作入力に応じて、複数種類の操作画面のいずれかを選択し、選択した操作画面の画面データを操作入力部３１１に出力してもよい。例えば画面出力部３１３は、雛形データ保持部３１４が保持する複数種類の雛形データのいずれかを、操作入力部３１１への操作入力に応じて選択し、その雛形データに基づいて画面データを生成する。
【００４０】
画面出力部３１３は、関節３１，３２，３３，３４，３５，３６ごとの角度のステータスと、関節３１，３２，３３，３４，３５，３６ごとの角度のリミットとを合わせて示す角度インジケータの画像を更に含む操作画面を操作入力部３１１に表示するように画面データを出力してもよい。例えば画面出力部３１３は、関節情報保持部３１５が保持する関節３１，３２，３３，３４，３５，３６の関節情報と、角度情報取得部３１６が取得する関節３１，３２，３３，３４，３５，３６のステータス情報とに基づいて角度インジケータの表示用データを生成する。
【００４１】
画面出力部３１３は、入力内容識別部３１２により識別された操作入力の内容に基づいて、操作画面の表示状態を更新してもよい。例えば画面出力部３１３は、操作入力の内容がいずれかの操作画像に対する操作であると識別された場合、当該操作が行われていることを当該操作画像の表示状態によって示すように画面データを更新する。例えば画面出力部３１３は、操作入力の内容が操作画面内のボタンを押す操作であると識別された場合、当該ボタンを強調表示するように画面データを更新する。
【００４２】
ここで、画面出力部３１３が表示する複数種類の操作画面を具体的に例示する。例えば、複数種類の操作画面は、固定座標モードの操作画面４００と、可動座標モードの操作画面５００とを含む。固定座標モードは、第一座標系Ｃ１における先端部１２の動作指令を入力する操作モードである。可動座標モードは、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２における先端部１２の動作指令を入力する操作モードである。
【００４３】
図３に示すように、操作画面４００は、位置指令入力部４２１，４２２，４２３と、回転指令入力部４３１，４３２，４３３と、入力モード切替ボタン４１１とを有する。位置指令入力部４２１は、Ｘ軸Ｃ１１における先端部１２の位置を指定するための入力部である。位置指令入力部４２２は、Ｙ軸Ｃ１２における先端部１２の位置を指定するための入力部である。位置指令入力部４２３は、Ｚ軸Ｃ１３における先端部１２の位置を指定するための入力部である。
【００４４】
回転指令入力部４３１は、Ｘ軸Ｃ１１まわりの先端部１２の回転角度を指定するための入力部である。回転指令入力部４３２は、Ｙ軸Ｃ１２まわりの先端部１２の回転角度を指定するための入力部である。回転指令入力部４３３は、Ｚ軸Ｃ１３まわりの先端部１２の回転角度を指定するための入力部である。入力モード切替ボタン４１１は、操作画面４００を他の操作画面に切り替えるためのボタンである。なお、操作用デバイス３００は、タッチパネル３８１外に操作画面の切り替え用のボタンを備えていてもよい。この場合、操作画面４００は入力モード切替ボタン４１１を有していなくてもよい。
【００４５】
図４に示すように操作画面５００は、規制モード設定画像５１１と、少なくとも一つの操作画像５１２と、角度インジケータ５１３と、キャリブレーションボタン５１４と、入力モード切替ボタン５１５とを有する。
【００４６】
規制モード設定画像５１１は、第一座標系Ｃ１に対して第二座標系Ｃ２を回転させる際に少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制する規制モードと、第一座標系Ｃ１に対して第二座標系Ｃ２を回転させる際にいずれの軸線まわりにも第二座標系Ｃ２の回転の規制を行わないフリーモードとの選択入力を行うための画像である。規制モードの具体例としては、一方向に沿った基準軸線ＲＬまわりの第二座標系Ｃ２の回転を許容しつつ、基準軸線に垂直な軸線まわりの第二座標系Ｃ２の回転を規制するモードが挙げられる。以下、これを「第一規制モード」という。
【００４７】
基準軸線ＲＬは鉛直であってもよい。例えば、基準軸線ＲＬは第一座標系Ｃ１のＺ軸Ｃ１３に一致している。この場合、第一規制モードにおいては、Ｚ軸Ｃ２３がＺ軸Ｃ１３に一致した状態にて、Ｚ軸Ｃ１３まわりの第二座標系Ｃ２の回転が許容され、Ｘ軸Ｃ１１まわり及びＹ軸Ｃ１２まわりの第二座標系Ｃ２の回転が規制（例えば禁止）される。
【００４８】
なお、規制モードは上述した第一規制モードに限られない。例えば規制モード設定画像５１１は、いずれか一軸線まわりの第二座標系Ｃ２の回転のみを規制するモードを選択し得るように構成されていてもよい。
【００４９】
少なくとも一つの操作画像５１２は、第二座標系Ｃ２における先端部１２の動作指令を入力するための画像である。少なくとも一つの操作画像５１２は、第二座標系Ｃ２において先端部１２を移動させる指令を入力するための移動ツール画像を含む。例えば少なくとも一つの操作画像５１２は、上記基準軸線ＲＬ（Ｚ軸Ｃ１３，Ｃ２３）に沿って先端部１２を移動させる指令を入力するための第一移動ツール画像５２１と、基準軸線ＲＬに垂直な面（例えばＸ軸Ｃ２１及びＹ軸Ｃ２２を含む平面）に沿って先端部１２を移動させる指令を入力するための第二移動ツール画像５２２とを別に含む。
【００５０】
第一移動ツール画像５２１は、一本の描画ライン５３２に沿うように描画される一つの一次元操作系５３０を含み、一次元操作系５３０は第二座標系Ｃ２に設定された一本の移動ラインＭＬ３に対応付けられている。例えば、描画ライン５３２は操作画面５００の上下方向に沿った直状ラインであり、移動ラインＭＬ３はＺ軸Ｃ２３に沿った直状ラインである。
【００５１】
一次元操作系５３０は、描画ライン５３２上の一点（以下、「基準点５３１」という。）から上方に順に並ぶ複数のポイントエリア５３３Ａ，５３３Ｂと、基準点５３１から下方に順に並ぶ複数のポイントエリア５３４Ａ，５３４Ｂとを有する。ポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂは、移動ラインＭＬ３に沿った先端部１２の移動方向及び移動のスカラー量を指定するためのエリアである。先端部１２の移動方向は、ポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂと基準点５３１との相対的な位置関係に基づいて決定される。例えば、基準点５３１より上方のポイントエリア５３３Ａ，５３３Ｂのいずれかが指定（例えばポイント操作により指定）されると、先端部１２の移動方向がＺ軸Ｃ２３の正方向に決定される。基準点５３１より下方のポイントエリア５３４Ａ，５３４Ｂのいずれかが指定されると、先端部１２の移動方向がＺ軸Ｃ２３の負方向に決定される。
【００５２】
先端部１２の移動のスカラー量は、基準点５３１からポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂまでの距離に基づいて決定される。例えば、ポイントエリア５３３Ａ，５３４Ａに比較して基準点５３１から遠いポイントエリア５３３Ｂ，５３４Ｂが指定されると、ポイントエリア５３３Ａ，５３４Ａが指定される場合に比較して先端部１２の移動のスカラー量が大きい値に決定される。
【００５３】
複数のポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂの幅（描画ライン５３２に直交する方向の幅）が、基準点５３１側から遠ざかるのに応じて大きくなっていてもよい。すなわち、ポイントエリア５３３Ｂ，５３４Ｂの幅Ｗ２が、ポイントエリア５３３Ａ，５３４Ａの幅Ｗ１より大きくなっていてもよい。
【００５４】
図示の例において、一次元操作系５３０は、基準点５３１から上方に向うにつれて徐々に幅広となる逆三角領域を有し、当該逆三角領域の下側がポイントエリア５３３Ａを構成し、当該逆三角領域の上側がポイントエリア５３３Ｂを構成している。同様に、一次元操作系５３０は、基準点５３１から下方に向うにつれて徐々に幅広となる三角領域を有し、当該三角領域の上側がポイントエリア５３４Ａを構成し、当該三角領域の下側がポイントエリア５３４Ｂを構成している。
【００５５】
第二移動ツール画像５２２は、互いに交差する複数本の描画ラインにそれぞれ沿うように描画される複数の一次元操作系を含み、当該複数の一次元操作系は、第二座標系Ｃ２で互いに交差するように設定された複数本の移動ラインにそれぞれ対応している。例えば第二移動ツール画像５２２は、互いに直交する二本の描画ライン５４１，５５１にそれぞれ沿うように描画される二つの一次元操作系５４０，５５０を含み、当該二つの一次元操作系は、第二座標系Ｃ２で互いに直交するように設定された複数本の移動ラインＭＬ１，ＭＬ２にそれぞれ対応している。
【００５６】
例えば、描画ライン５４１は操作画面５００の上下方向に沿った直状ラインであり、移動ラインＭＬ１はＸ軸Ｃ２１に沿った直状ラインである。描画ライン５５１は操作画面の左右方向に沿った直状ラインであり、移動ラインＭＬ２はＹ軸Ｃ２２に沿った直状ラインである。
【００５７】
一次元操作系５４０は、描画ライン５４１，５５１の交点（以下、「基準点５４２」という。）から上方に順に並ぶ複数のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃと、基準点５４２から下方に順に並ぶ複数のポイントエリア５４４Ａ，５４４Ｂ，５４４Ｃとを有する。ポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃは、移動ラインＭＬ１に沿った先端部１２の移動方向及び移動のスカラー量を指定するためのエリアである。
【００５８】
先端部１２の移動方向は、ポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃと基準点５４２との相対的な位置関係に基づいて決定される。例えば、基準点５４２より上方のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃのいずれかが指定されると、先端部１２の移動方向がＸ軸Ｃ２１の正方向に決定される。基準点５４２より下方のポイントエリア５４４Ａ，５４４Ｂ，５４４Ｃのいずれかが指定されると、先端部１２の移動方向がＸ軸Ｃ２１の負方向に決定される。
【００５９】
先端部１２の移動のスカラー量は、基準点５４２からポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃまでの距離に基づいて決定される。例えば、ポイントエリア５４３Ａ，５４４Ａに比較して基準点５４２から遠いポイントエリア５４３Ｂ，５４４Ｂが指定されると、ポイントエリア５４３Ａ，５４４Ａが指定される場合に比較して先端部１２の移動のスカラー量が大きい値に決定される。ポイントエリア５４３Ｂ，５４４Ｂに比較して基準点５４２から更に遠いポイントエリア５４３Ｃ，５４４Ｃが指定されると、ポイントエリア５４３Ｂ，５４４Ｂが指定される場合に比較して先端部１２の移動のスカラー量が更に大きい値に決定される。
【００６０】
複数のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃの幅（描画ライン５４１に直交する方向の幅）が、基準点５４２側から遠ざかるのに応じて大きくなっていてもよい。すなわち、ポイントエリア５４３Ｂ，５４４Ｂの幅Ｗ１２が、ポイントエリア５４３Ａ，５４４Ａの幅Ｗ１１より大きく、ポイントエリア５４３Ｃ，５４４Ｃの幅Ｗ１３が、ポイントエリア５４３Ｂ，５４４Ｂの幅Ｗ１２より更に大きくなっていてもよい。
【００６１】
図示の例において、一次元操作系５４０は、基準点５４２から上方に向うにつれて徐々に幅広となる扇形領域を有し、当該扇形領域の中心側がポイントエリア５４３Ａを構成し、当該扇形領域の外周側がポイントエリア５４３Ｃを構成している。これらの間がポイントエリア５４３Ｂを構成している。同様に、一次元操作系５４０は、基準点５４２から下方に向うにつれて徐々に幅広となる扇形領域を有し、当該扇形領域の中心側がポイントエリア５４４Ａを構成し、当該扇形領域の外周側がポイントエリア５４４Cを構成している。これらの間がポイントエリア５４４Ｂを構成している。
【００６２】
一次元操作系５５０は、基準点５４２から左方に順に並ぶ複数のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃと、基準点５４２から右方に順に並ぶ複数のポイントエリア５５４Ａ，５５４Ｂ，５５４Ｃとを有する。ポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃは、移動ラインＭＬ２に沿った先端部１２の移動方向及び移動のスカラー量を指定するためのエリアである。
【００６３】
先端部１２の移動方向は、ポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃと基準点５４２との相対的な位置関係に基づいて決定される。例えば、基準点５４２より左方のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃのいずれかが指定されると、先端部１２の移動方向がＹ軸Ｃ２２の正方向に決定される。基準点５４２より右方のポイントエリア５５４Ａ，５５４Ｂ，５５４Ｃのいずれかが指定されると、先端部１２の移動方向がＹ軸Ｃ２２の負方向に決定される。
【００６４】
先端部１２の移動のスカラー量は、基準点５４２からポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃまでの距離に基づいて決定される。例えば、ポイントエリア５５３Ａ，５５４Ａに比較して基準点５４２から遠いポイントエリア５５３Ｂ，５５４Ｂが指定されると、ポイントエリア５５３Ａ，５５４Ａが指定される場合に比較して先端部１２の移動のスカラー量が大きい値に決定される。ポイントエリア５５３Ｂ，５５４Ｂに比較して基準点５４２から更に遠いポイントエリア５５３Ｃ，５５４Ｃが指定されると、ポイントエリア５５３Ｂ，５５４Ｂが指定される場合に比較して先端部１２の移動のスカラー量が更に大きい値に決定される。
【００６５】
複数のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃの幅（描画ライン５５１に直交する方向の幅）が、基準点５４２側から遠ざかるのに応じて大きくなっていてもよい。すなわち、ポイントエリア５５３Ｂ，５５４Ｂの幅Ｗ２２が、ポイントエリア５５３Ａ，５５４Ａの幅Ｗ２１より大きく、ポイントエリア５５３Ｃ，５５４Ｃの幅Ｗ２３が、ポイントエリア５５３Ｂ，５５４Ｂの幅Ｗ２２より更に大きくなっていてもよい。
【００６６】
図示の例において、一次元操作系５５０は、基準点５４２から左方に向うにつれて徐々に幅広となる扇形領域を有し、当該扇形領域の中心側がポイントエリア５５３Ａを構成し、当該扇形領域の外周側がポイントエリア５５３Ｃを構成し、これらの間がポイントエリア５５３Ｂを構成している。同様に、一次元操作系５５０は、基準点５４２から右方に向うにつれて徐々に幅広となる扇形領域を有し、当該扇形領域の中心側がポイントエリア５５４Ａを構成し、当該扇形領域の外周側がポイントエリア５５４Ｃを構成し、これらの間がポイントエリア５５４Ｂを構成している。
【００６７】
角度インジケータ５１３は、関節３１，３２，３３，３４，３５，３６ごとの角度のステータスと、関節３１，３２，３３，３４，３５，３６ごとの角度のリミットとを合わせて示す画像である。角度インジケータ５１３は、複数の角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆと、リミットライン５６２，５６３とを含む。複数の角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆは、複数の関節３１，３２，３３，３４，３５，３６にそれぞれ対応している。角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆは上下に並び、それぞれ左右方向に延びている。角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆのそれぞれは左右方向に移動可能なステータスマーカ５６４を含んでおり、左右方向におけるステータスマーカ５６４の位置によって関節角度の大きさを示す。例えば、関節角度が大きくなるにつれてステータスマーカ５６４は右側に移動する。
【００６８】
リミットライン５６２は、関節角度の下限を示すラインであり、角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆの左端部に交差している。リミットライン５６３は、関節角度の上限を示すラインであり、角度バー５６１Ａ，５６１Ｂ，５６１Ｃ，５６１Ｄ，５６１Ｅ，５６１Ｆの右端部に交差している。
【００６９】
キャリブレーションボタン５１４は、第一座標系Ｃ１に対する第二座標系Ｃ２の姿勢を予め設定された初期姿勢にすること指示するためのボタンである。初期姿勢は、例えばＸ軸Ｃ２１、Ｙ軸Ｃ２２及びＺ軸Ｃ２３がＸ軸Ｃ１１、Ｙ軸Ｃ１２及びＺ軸Ｃ１３にそれぞれ一致した姿勢である。
【００７０】
入力モード切替ボタン５１５は、操作画面５００を他の操作画面に切り替えるためのボタンである。上述のように、操作用デバイス３００がタッチパネル３８１外に操作画面の切り替え用のボタンを備えている場合、操作画面５００は入力モード切替ボタン５１５を有していなくてもよい。
【００７１】
なお、複数種類の操作画面は、上述した操作画面４００，５００の他の操作画面を含んでいてもよい。例えば、複数種類の操作画面は、固定座標モード及び可動座標モードのいずれとも異なるモード（例えば第一座標系Ｃ１及び第二座標系Ｃ２のいずれとも異なる座標系における先端部１２の動作を指定する操作モード）にてロボット１０を操作するための操作画面を含んでいてもよい。また、操作画面４００，５００のそれぞれの画面構成も適宜変更可能である。
【００７２】
図５に示す操作画面５０１は、一次元操作系５３０のポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂ、一次元操作系５４０のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃ、及び一次元操作系５５０のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃのそれぞれを楕円形にしたものである。操作画面５０１においても、複数のポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂの幅は、基準点５３１側から遠ざかるのに応じて大きくなっている。複数のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃの幅は、基準点５４２側から遠ざかるのに応じて大きくなっている。複数のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃの幅は、基準点５４２側から遠ざかるのに応じて大きくなっている。
【００７３】
一次元操作系５３０において隣り合うポイントエリア同士は互いに離れており、ポイントエリア同士の間が指定されても先端部１２の移動指令は生成されない。すなわち一次元操作系５３０は、ポイントエリア同士の間にポイント操作を無視する不感エリア５３５を有する。一次元操作系５４０において隣り合うポイントエリア同士も互いに離れており、ポイントエリア同士の間が指定されても先端部１２の移動指令は生成されない。すなわち一次元操作系５４０は、ポイントエリア同士の間にポイント操作を無視する不感エリア５４５を有する。一次元操作系５５０において隣り合うポイントエリア同士も互いに離れており、ポイントエリア同士の間が指定されても先端部１２の移動指令は生成されない。すなわち一次元操作系５５０は、ポイントエリア同士の間にポイント操作を無視する不感エリア５５５を有する。
【００７４】
図６に示す操作画面５０３は、操作画面５００に量設定ツール画像６１０を付加した操作画面である。量設定ツール画像６１０は、操作画像５１２により入力される動作指令のスカラー量を指示するための画像である。動作指令のスカラー量が量設定ツール画像６１０により指示されるので、操作画像５１２において動作指令のスカラー量を指示する必要はない。このため操作画面５０３の一次元操作系５３０においては、複数のポイントエリア５３３Ａ，５３３Ｂが一つのポイントエリア５３３に集約され、複数のポイントエリア５３４Ａ，５３４Ｂが一つのポイントエリア５３４に集約されている。操作画面５０３の一次元操作系５４０においては、複数のポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃが一つのポイントエリア５４３に集約され、複数のポイントエリア５４４Ａ，５４４Ｂ，５４４Ｃが一つのポイントエリア５４４に集約されている。操作画面５０３の一次元操作系５５０においては、複数のポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃが一つのポイントエリア５５３に集約され、複数のポイントエリア５５４Ａ，５５４Ｂ，５５４Ｃが一つのポイントエリア５５４に集約されている。
【００７５】
図７に示す操作画面５０２は、操作画面５００に第一回転ツール画像５２３及び第二回転ツール画像５２４を付加した操作画面である。第一回転ツール画像５２３及び第二回転ツール画像５２４は、いずれも操作画像５１２の一種であり、第二座標系Ｃ２において先端部１２を回転させる指令を入力するための画像である。
【００７６】
第一回転ツール画像５２３は、描画ライン５３２に対応付けて描画される一つの単軸操作系５７０を含む。単軸操作系５７０は、一次元操作系５３０よりも外側において、描画ライン５３２を挟む二つのポイントエリア５７１，５７２を有する。ポイントエリア５７１，５７２は、描画ライン５３２に対応付けられた移動ラインＭＬ３まわりの先端部１２の回転方向を指定するためのエリアである。ポイントエリア５７１が指定される場合の先端部１２の回転方向と、ポイントエリア５７２が指定される場合の先端部１２の回転方向とは互いに逆向きとなる。これを直感的に認識させるように、ポイントエリア５７１，５７２は、いずれも描画ライン５３２の逆側に向いた曲がった矢印形状に描画される。
【００７７】
第二回転ツール画像５２４は、描画ライン５４１，５５１にそれぞれ対応付けて描画される二つの単軸操作系５８０，５９０を含む。単軸操作系５８０は、一次元操作系５４０よりも外側において、描画ライン５４１を挟む二つのポイントエリア５８１，５８２を有する。ポイントエリア５８１，５８２は、描画ライン５４１に対応付けられた移動ラインＭＬ１まわりの先端部１２の回転方向を指定するためのエリアである。ポイントエリア５８１が指定される場合の先端部１２の回転方向と、ポイントエリア５８２が指定される場合の先端部１２の回転方向とは互いに逆向きとなる。これを直感的に認識させるように、ポイントエリア５８１，５８２は、いずれも描画ライン５４１の逆側に向いた曲がった矢印形状に描画される。
【００７８】
単軸操作系５９０は、一次元操作系５５０よりも外側において、描画ライン５５１を挟む二つのポイントエリア５９１，５９２を有する。ポイントエリア５９１，５９２は、描画ライン５５１に対応付けられた移動ラインＭＬ２まわりの先端部１２の回転方向を指定するためのエリアである。ポイントエリア５９１が指定される場合の先端部１２の回転方向と、ポイントエリア５９２が指定される場合の先端部１２の回転方向とは互いに逆向きとなる。これを直感的に認識させるように、ポイントエリア５９１，５９２は、いずれも描画ライン５５１の逆側に向いた曲がった矢印形状に描画される。
【００７９】
図４〜７に示した操作画面５００，５０１，５０２，５０３のいずれにおいても、基準点５３１，５４２及び描画ライン５３２，５４１，５５１が図示されているが、基準点及び描画ラインは必ずしも図示されなくてもよい。基準点が図示されない操作画像５１２であっても、操作画像５１２内のいずれか一点を基準点と仮定した場合に次の条件が成立すれば、当該操作画像５１２は基準点を含むと言える。
条件１）  ポイント操作により指定された点（以下、「操作点」という。）と基準点との位置関係と先端部１２の移動方向とが相関する。
条件２）  操作点と基準点との距離と先端部１２の移動のスカラー量とが相関する。
【００８０】
また、描画ラインが図示されない操作画像５１２であっても、次の条件が成立すれば、当該操作画像５１２は描画ラインを含むと言える。
条件１１）  一本のラインに沿っていることが明らかな一次元操作系を操作画像５１２が含んでいる。
条件１２）  当該一次元操作系に対してポイント操作を行うと、第二座標系Ｃ２に固定された一本のラインに沿って先端部１２が移動する。
【００８１】
図２に戻り、デバイス姿勢検出部３２１は、第一座標系Ｃ１における操作入力部３１１の姿勢を検出する。例えばデバイス姿勢検出部３２１は、姿勢センサ３８２により構成される。
【００８２】
姿勢演算部３２２は、規制モード設定画像５１１において、少なくとも一軸線（例えば基準軸線ＲＬに垂直な軸線）まわりの第二座標系Ｃ２の回転を規制する規制モードが選択されている場合に、デバイス姿勢検出部３２１により検出される情報に基づいて、当該一軸線に垂直な軸線まわりの操作入力部３１１の回転角度を算出する。例えば姿勢演算部３２２は、規制モード設定画像５１１において上記第一規制モードが選択されている場合に、上記基準軸線ＲＬ（例えばＺ軸Ｃ１３）まわりの操作入力部３１１の回転角度θ１と、基準軸線に垂直な軸線まわりの操作入力部３１１の回転角度θ２とを算出する（図８参照）。基準軸線に垂直な軸線は、タッチパネル３８１の表示面に平行であってもよいし、タッチパネル３８１の表示面に接していてもよい。
【００８３】
座標回転部３２３は、第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回す。図９は、座標回転部３２３による処理の一例を示す図であり、操作入力部３１１がＺ軸Ｃ１３まわりに回転した場合を示している。この場合、座標回転部３２３は、Ｚ軸Ｃ１３まわりにおいて、操作入力部３１１の回転と同じ方向に第二座標系Ｃ２を回転させる。この際に、座標回転部３２３は、Ｚ軸Ｃ１３まわりの第二座標系Ｃ２の回転角度を、Ｚ軸Ｃ１３まわりの操作入力部３１１の回転角度と等しくする。
【００８４】
座標回転部３２３は、少なくとも一軸線（例えば基準軸線ＲＬに垂直な軸線）まわりの第二座標系Ｃ２の回転を規制する規制モードが選択されている場合に、当該一軸線まわりの操作入力部３１１の回転角度を姿勢演算部３２２から取得し、これに応じて当該一軸線（例えば基準軸線ＲＬ）まわりに第二座標系Ｃ２を回転させてもよい。
【００８５】
座標回転規制部３２４は、少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制する。例えば座標回転規制部３２４は、上記第一規制モードにて第二座標系Ｃ２の回転を規制する。すなわち座標回転規制部３２４は、上記基準軸線まわりの第二座標系Ｃ２の回転を許容しつつ、基準軸線に垂直な軸線まわりの第二座標系Ｃ２の回転を規制する。
【００８６】
基準軸線は鉛直であってもよい。この場合、座標回転規制部３２４は、Ｚ軸Ｃ２３がＺ軸Ｃ１３に一致した状態にて、Ｚ軸Ｃ１３まわりの第二座標系Ｃ２の回転を許容し、Ｘ軸Ｃ１１まわり及びＹ軸Ｃ１２まわりの第二座標系Ｃ２の回転を規制（例えば禁止）する。なお、規制モードは上述した第一規制モードに限られない。例えば座標回転規制部３２４は、いずれか一軸線まわりの第二座標系Ｃ２の回転のみを規制してもよい。
【００８７】
モード切替部３２５は、座標回転規制部３２４による第二座標系Ｃ２の回転の規制を行う規制モードと、座標回転規制部３２４による第二座標系Ｃ２の回転の規制を行わないフリーモードとを切り替える。モード切替部３２５は、操作入力部３１１への入力に応じて規制モードとフリーモードとを切り替えてもよい。例えばモード切替部３２５は、上述した規制モード設定画像５１１への入力に応じて規制モードとフリーモードとを切り替える。規制モード設定画像５１１において、複数種類の規制モードを選択可能である場合、モード切替部３２５は、座標回転規制部３２４によりいずれの規制モードで第二座標系Ｃ２の回転の規制を行わせるのかを更に切り替えてもよい。
【００８８】
キャリブレーション部３５１は、第一座標系Ｃ１に対する第二座標系Ｃ２の姿勢を予め設定された初期姿勢にするキャリブレーションを、操作入力部３１１への入力に応じて実行する。例えばキャリブレーション部３５１は、操作画面５００のキャリブレーションボタン５１４へのポイント操作がなされた場合にキャリブレーションを行う。初期姿勢の一例としては、Ｘ軸Ｃ２１、Ｙ軸Ｃ２２及びＺ軸Ｃ２３がＸ軸Ｃ１１、Ｙ軸Ｃ１２及びＺ軸Ｃ１３にそれぞれ一致する姿勢が挙げられる。
【００８９】
図１０に示すように、操作入力部３１１の操作画面の上下方向をＸ軸Ｃ１１に沿わせた状態にてキャリブレーションが実行されると、以後の操作においては、操作画面の上下方向が第二座標系Ｃ２のＸ軸Ｃ２１に沿い、操作入力部３１１の左右方向が第二座標系Ｃ２のＹ軸Ｃ２２に沿った状態が維持される。
【００９０】
未設定報知部３５２は、キャリブレーション部３５１によりキャリブレーションが実行されていない場合に、初期姿勢が未設定であることを報知する。例えば未設定報知部３５２は、ロボットシステム１の起動時に第二座標系Ｃ２の姿勢を初期姿勢にする。この処理は、操作入力部３１１の操作画面の向きとは無関係に実行されるので、以後の操作においては、操作画面の上下方向が第二座標系Ｃ２のＸ軸Ｃ２１に沿っておらず、操作入力部３１１の左右方向が第二座標系Ｃ２のＹ軸Ｃ２２に沿っていない状態（以下、「方向不一致状態」という。）が生じ得る。方向不一致状態が生じることによって、キャリブレーションが実行されていないことが操作者に報知される。なお、未設定報知部３５２は、キャリブレーションが実行されていないことを操作入力部３１１への警告表示等により報知してもよい。
【００９１】
指令生成部３３０は、現在選択されている操作モードの種類に応じたロボット１０の動作指令を生成する。例えば現在選択されている操作モードが上述した固定座標モードである場合、指令生成部３３０は、固定座標モード用の操作画面４００への入力に従って、第一座標系Ｃ１における先端部１２の動作指令を生成する。
【００９２】
現在選択されている操作モードが上述した可動座標モードである場合、指令生成部３３０は、可動座標モード用の操作画面５００への入力に従って、第二座標系Ｃ２における先端部１２の動作指令を生成する。例えば指令生成部３３０は、操作画像５１２内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像５１２内の基準点との位置関係に相関するように第二座標系Ｃ２における先端部１２の動作方向を決定し、当該一点と当該基準点との距離に相関するように先端部１２の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部１２の動作指令を生成する。スカラー量とは、動作の大きさを示す量である。スカラー量の具体例としては、先端部１２の動作の速さ、動作ピッチの大きさ、及び加速度の大きさ等が挙げられる。
【００９３】
例えば指令生成部３３０は、より細分化された機能モジュールとして、第一移動指令生成部３３１と第二移動指令生成部３３２とを有する。第一移動指令生成部３３１は、第一移動ツール画像５２１への入力に従って、基準軸線ＲＬ（例えばＺ軸Ｃ２３）に沿った先端部１２の移動指令を生成する。例えば第一移動指令生成部３３１は、一次元操作系５３０の少なくとも一点を指定するポイント操作がなされた場合に、一次元操作系５３０に対応する移動ラインＭＬ３において、当該一点と一次元操作系５３０の基準点５３１との位置関係に相関するように移動方向を決定し、当該一点と基準点５３１との距離に相関するようにスカラー量を決定し、当該移動方向及び当該スカラー量を含む移動指令を生成する。
【００９４】
例えば第一移動指令生成部３３１は、一次元操作系５３０のいずれかのポイントエリア（ポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂのいずれか）を指定するポイント操作がなされた場合に、一次元操作系５３０に対応する移動ラインＭＬ３において、当該ポイントエリアと基準点５３１との位置関係に相関するように移動方向を決定し、当該ポイントエリアと基準点５３１との距離に相関するようにスカラー量を決定する。
【００９５】
第二移動指令生成部３３２は、第二移動ツール画像５２２への操作入力に従って、基準軸線ＲＬに直交する軸線（例えばＸ軸Ｃ２１及びＹ軸Ｃ２２）に沿った第二座標系Ｃ２における先端部１２の移動指令を生成する。例えば第二移動指令生成部３３２は、複数の一次元操作系５４０，５５０のうちいずれか一つの一次元操作系の少なくとも一点を指定するポイント操作がなされた場合に、当該一次元操作系に対応する移動ラインにおいて、当該一点と当該一次元操作系の基準点との位置関係に相関するように移動方向を決定し、当該一点と当該基準点との距離に相関するように移動のスカラー量を決定する。
【００９６】
例えば第二移動指令生成部３３２は、一次元操作系５４０のいずれかのポイントエリア（ポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃのいずれか）を指定するポイント操作がなされた場合に、一次元操作系５４０に対応する移動ラインＭＬ１において、当該ポイントエリアと基準点５４２との位置関係に相関するように移動方向を決定し、当該ポイントエリアと基準点５４２との距離に相関するように移動のスカラー量を決定する。
【００９７】
第二移動指令生成部３３２は、一次元操作系５５０のいずれかのポイントエリア（ポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃのいずれか）を指定するポイント操作がなされた場合に、一次元操作系５５０に対応する移動ラインＭＬ２において、当該ポイントエリアと基準点５４２との位置関係に相関するように移動方向を決定し、当該ポイントエリアと基準点５４２との距離に相関するように移動のスカラー量を決定する。
【００９８】
上記操作画面５０３（図６参照）の説明にて例示したように、操作画面が量設定ツール画像６１０を更に有している場合、第一移動指令生成部３３１及び第二移動指令生成部３３２は、量設定ツール画像６１０への入力に応じて移動指令のスカラー量を決定してもよい。この場合、第一移動指令生成部３３１及び第二移動指令生成部３３２は、ポイントエリア５３３，５３４，５４３，５４４，５５３，５５４へのポイント操作に応じて先端部１２の移動方向を決定する。
【００９９】
第一移動指令生成部３３１及び第二移動指令生成部３３２は、少なくとも一軸線（例えば基準軸線ＲＬに垂直な軸線）まわりの第二座標系Ｃ２の回転を規制する規制モードが選択されている場合に、当該一軸線に垂直な軸線まわりの操作入力部３１１の回転角度を姿勢演算部３２２から取得し、これに応じて移動指令のスカラー量を決定してもよい。
【０１００】
上記操作画面５０２（図７参照）の説明にて例示したように、操作画面が第一回転ツール画像５２３及び第二回転ツール画像５２４を更に有している場合、指令生成部３３０は、第一回転ツール画像５２３及び第二回転ツール画像５２４への入力に従って、第二座標系Ｃ２における先端部１２の回転指令を更に生成してもよい。
【０１０１】
例えば指令生成部３３０は、第一回転指令生成部３３３と第二回転指令生成部３３４とを更に有してもよい。第一回転指令生成部３３３は、第一回転ツール画像５２３への入力に従って、基準軸線ＲＬ（例えばＺ軸Ｃ２３）まわりの先端部１２の回転指令を生成する。例えば第一回転指令生成部３３３は、単軸操作系５７０の少なくとも一点を指定するポイント操作がなされた場合に、単軸操作系５７０に対応する移動ラインＭＬ３まわりにおいて、当該一点と描画ライン５３２との位置関係に相関するように回転方向を決定する。例えば第一回転指令生成部３３３は、単軸操作系５７０のいずれかのポイントエリア（ポイントエリア５７１，５７２のいずれか）を指定するポイント操作がなされた場合に、単軸操作系５７０に対応する移動ラインＭＬ３まわりの先端部１２の回転方向を決定する。
【０１０２】
第二回転指令生成部３３４は、第二回転ツール画像５２４への操作入力に従って、基準軸線ＲＬに直交する軸線（例えばＸ軸Ｃ２１及びＹ軸Ｃ２２）まわりの先端部１２の回転指令を生成する。例えば第二回転指令生成部３３４は、複数の単軸操作系５８０，５９０のうちいずれか一つの単軸操作系の少なくとも一点を指定するポイント操作がなされた場合に、当該単軸操作系に対応する移動ラインまわりにおいて、当該一点と当該単軸操作系の描画ラインとの位置関係に相関するように回転方向を決定する。例えば第二回転指令生成部３３４は、単軸操作系５８０のいずれかのポイントエリア（ポイントエリア５８１，５８２のいずれか）を指定するポイント操作がなされた場合に、単軸操作系５８０に対応する移動ラインＭＬ１まわりにおいて、当該ポイントエリアと描画ライン５４１との位置関係に相関するように回転方向を決定する。第二回転指令生成部３３４は、単軸操作系５９０のいずれかのポイントエリア（ポイントエリア５９１，５９２のいずれか）を指定するポイント操作がなされた場合に、単軸操作系５９０に対応する移動ラインＭＬ２まわりにおいて、当該ポイントエリアと描画ライン５５１との位置関係に相関するように回転方向を決定する。
【０１０３】
指令変換部３４１は、指令生成部３３０が第二座標系Ｃ２における先端部１２の動作指令を生成する場合に、当該動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換する。例えば指令変換部３４１は、第一座標系Ｃ１に対する第二座標系Ｃ２の回転角度に対応する回転行列を第二座標系Ｃ２における先端部１２の動作指令に乗算して第一座標系Ｃ１における先端部１２の動作指令を算出する。指令出力部３４２は、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令をコントローラ２００の逆運動学演算部２１３に出力する。
【０１０４】
（制御システムのハードウェア構成）
図１１に示すように、コントローラ２００は、回路２９０を有する。回路２９０は、少なくとも一つのプロセッサ２９１と、メモリ２９２と、ストレージ２９３と、ドライバ２９４と、通信ポート２９５とを含む。ストレージ２９３は、コンピュータによって読み取り可能な不揮発型の記憶媒体（例えばハードディスク又はフラッシュメモリ）である。ストレージ２９３は、コントローラ２００の各機能モジュールを構成するためのプログラムを記憶する。メモリ２９２は、ストレージ２９３からロードしたプログラム及びプロセッサ２９１による演算結果等を一時的に記憶する。プロセッサ２９１は、メモリ２９２と協働して上記プログラムを実行することで、コントローラ２００の各機能モジュールを構成する。ドライバ２９４は、プロセッサ２９１からの指令に応じてアクチュエータ４１〜４６に駆動電力を出力する。通信ポート２９５は、プロセッサ２９１からの指令に応じ、操作用デバイス３００との間でネットワーク通信を行う。
【０１０５】
操作用デバイス３００は、上記タッチパネル３８１及び姿勢センサ３８２と、回路３９０とを備える。回路３９０は、少なくとも一つのプロセッサ３９１と、メモリ３９２と、ストレージ３９３と、入出力ポート３９４と、通信ポート３９５とを含む。ストレージ３９３は、コンピュータによって読み取り可能な不揮発型の記憶媒体（例えばフラッシュメモリ）である。
【０１０６】
ストレージ３９３は、少なくとも一つの操作画像５１２を含む操作画面を操作入力部３１１に表示するように画面データを出力することと、ロボット１０の制御用の第一座標系Ｃ１における操作入力部３１１の姿勢を検出することと、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回すことと、操作画像５１２内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像５１２内の基準点５３１，５４２との位置関係に相関するように第二座標系Ｃ２における先端部１２の動作方向を決定し、当該一点と当該基準点５３１，５４２との距離に相関するように先端部１２の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部１２の動作指令を生成することと、先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換することと、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力することと、を含む制御方法を操作用デバイス３００に実行させるためのプログラムを記憶している。
【０１０７】
ストレージ３９３は、ロボット１０の制御用の第一座標系Ｃ１における操作入力部３１１の姿勢を検出することと、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回すことと、操作入力部３１１への操作入力に従って、第二座標系Ｃ２における先端部１２の動作指令を生成することと、第二座標系Ｃ２における先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換することと、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力することと、少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制することと、を含む制御方法を操作用デバイス３００に実行させるためのプログラムを記憶していてもよい。例えばストレージ３９３は、操作用デバイス３００の各機能モジュールを構成するためのプログラムを記憶する。
【０１０８】
メモリ３９２は、ストレージ３９３からロードしたプログラム及びプロセッサ３９１による演算結果等を一時的に記憶する。プロセッサ３９１は、メモリ３９２と協働して上記プログラムを実行することで、操作用デバイス３００の各機能モジュールを構成する。入出力ポート３９４は、プロセッサ３９１からの指令に応じてタッチパネル３８１及び姿勢センサ３８２からの信号を取得し、また、タッチパネル３８１へ信号を出力する。通信ポート３９５は、プロセッサ２９１からの指令に応じ、コントローラ２００との間でネットワーク通信を行う。
【０１０９】
〔制御手順〕
続いて、制御方法の一例として、制御システム１００が実行する制御手順を例示する。この制御手順は、ロボット１０の制御用の第一座標系Ｃ１における操作入力部３１１の姿勢を検出することと、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回すことと、操作画像５１２内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像５１２内の基準点５３１，５４２との位置関係に相関するように第二座標系Ｃ２における先端部１２の動作方向を決定し、当該一点と当該基準点５３１，５４２との距離に相関するように先端部１２の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部１２の動作指令を生成することと、先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換することと、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力することと、を含む。
【０１１０】
この制御手順は、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回すことと、操作入力部３１１への操作入力に従って、第二座標系Ｃ２における先端部１２の動作指令を生成することと、第二座標系Ｃ２における先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換することと、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力することと、少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制することと、を含んでもよい。
【０１１１】
以下、制御手順を、画面データ出力手順（操作画面の画面データを出力する手順）と、可動座標モードによる制御指令出力手順（操作用デバイス３００からコントローラ２００に制御指令を出力する手順）と、キャリブレーション手順（キャリブレーションの実行手順）と、制御実行手順（制御指令に応じた制御の実行手順）とに分けて例示する。
【０１１２】
（画面データ出力手順）
図１２に示すように、操作用デバイス３００は、ステップＳ０１，Ｓ０２，Ｓ０３を実行する。ステップＳ０１では、画面出力部３１３が、雛形データ保持部３１４から初期の操作画面の雛形データを取得する。いずれの操作画面を初期画面とするかは予め設定されている。ステップＳ０２では、画面出力部３１３が、操作画面を操作入力部３１１に表示するように画面データを出力する。ステップＳ０３では、入力内容識別部３１２が、操作入力部３１１に操作モードを変更する操作入力があったか否かを確認する。入力内容識別部３１２は、例えば入力モード切替ボタン４１１，５１５へのポイント操作がなされたか否かを確認する。
【０１１３】
ステップＳ０３において操作モードを変更する入力があった場合、操作用デバイス３００はステップＳ０４を実行する。ステップＳ０４では、画面出力部３１３が、変更後の操作モードに対応した操作画面の雛形データを取得する。
【０１１４】
次に、操作用デバイス３００はステップＳ０５，Ｓ０６を実行する。ステップＳ０３において操作モードを変更する操作入力がなかった場合、操作用デバイス３００は、ステップＳ０４を実行することなくステップＳ０５，Ｓ０６を実行する。ステップＳ０５では、角度情報取得部３１６がコントローラ２００の制御実行部２１４から関節３１，３２，３３，３４，３５，３６の角度のステータス情報を取得する。ステップＳ０６では、入力内容識別部３１２が、操作画面４００，５００への操作入力がなされたか否かを確認する。
【０１１５】
ステップＳ０６において操作画面４００，５００への操作入力がなされていた場合、操作用デバイス３００はステップＳ０７を実行する。ステップＳ０７では、入力内容識別部３１２が、操作内容を判定する。例えば入力内容識別部３１２は、操作画像５１２のいずれかのポイントエリアの位置とポイント操作により指定された位置とが一致する場合に、当該ポイントエリアを指定する操作がなされたと判定し、判定結果を入力内容保持部３１７に保存する。
【０１１６】
次に、操作用デバイス３００は、ステップＳ０８，Ｓ０９を実行する。ステップＳ０６において操作画面４００，５００への操作入力がなされていなかった場合、操作用デバイス３００はステップＳ０７を実行することなくステップＳ０８，Ｓ０９を実行する。ステップＳ０８では、画面出力部３１３が、操作入力部３１１への操作入力の状態及び関節３１，３２，３３，３４，３５，３６の角度のステータス情報等に応じて操作画面の画面データを修正する。画面出力部３１３は、例えば、ポイント操作の対象部分（例えばポイントエリア等）を強調表示する。また、画面出力部３１３は、関節３１，３２，３３，３４，３５，３６の角度のステータス情報に応じて角度インジケータ５１３の表示データを更新する。ステップＳ０９では、画面出力部３１３が、操作画面の画面データを操作入力部３１１に出力する。その後、操作用デバイス３００は処理をステップＳ０３に戻す。以後、操作入力部３１１への操作入力の有無を監視しながら、画面出力部３１３から３１１への操作画面の画面データの出力が繰り返される。
【０１１７】
（制御指令出力手順）     
図１３に示すように、操作用デバイス３００は、ステップＳ１１，Ｓ１２，Ｓ１３，Ｓ１４，Ｓ１５，Ｓ１６を実行する。ステップＳ１１では、姿勢演算部３２２が、デバイス姿勢検出部３２１から、第一座標系Ｃ１における操作入力部３１１の姿勢を表す情報を取得する。ステップＳ１２では、姿勢演算部３２２が、デバイス姿勢検出部３２１から取得した情報に基づいて操作入力部３１１の姿勢を算出する。ステップＳ１３では、モード切替部３２５が、規制モード設定画像５１１への入力に基づいて規制モード又はフリーモードを切り替える。ステップＳ１４では、座標回転規制部３２４が、規制モードに従って第二座標系Ｃ２の回転を規制するように、第二座標系Ｃ２の回転角度を決定する。例えば、第一規制モードが選択されている場合、座標回転規制部３２４は、Ｘ軸Ｃ１１及びＹ軸Ｃ１２まわりの第二座標系Ｃ２の回転角度をゼロにし、姿勢演算部３２２により算出されるＺ軸Ｃ１３まわりの操作入力部３１１の回転角度をＺ軸Ｃ１３まわりの第二座標系Ｃ２の回転角度とする。ステップＳ１５では、座標回転部３２３が、座標回転規制部３２４により決定された回転角度に従って、第二座標系Ｃ２を回転させる座標回転処理を実行する。ステップＳ１６では、指令生成部３３０が、第一移動ツール画像５２１及び第二移動ツール画像５２２のいずれか一方への操作入力の有無を確認する。
【０１１８】
ステップＳ１６において第一移動ツール画像５２１及び第二移動ツール画像５２２のいずれか一方への操作入力があった場合、操作用デバイス３００はステップＳ１７を実行する。ステップＳ１７では、第一移動指令生成部３３１又は第二移動指令生成部３３２が、第二座標系Ｃ２における先端部１２の移動指令を生成する。ステップＳ１７の具体的な処理内容は後述する。
【０１１９】
ステップＳ１６において第一移動ツール画像５２１及び第二移動ツール画像５２２のいずれか一方への操作入力がなかった場合、操作用デバイス３００はステップＳ１８を実行する。ステップＳ１８では、指令生成部３３０が、第一回転ツール画像５２３及び第二回転ツール画像５２４のいずれか一方への操作入力の有無を確認する。
【０１２０】
ステップＳ１８において第一回転ツール画像５２３及び第二回転ツール画像５２４のいずれか一方への操作入力があった場合、操作用デバイス３００はステップＳ１９を実行する。ステップＳ１９では、第一回転指令生成部３３３又は第二回転指令生成部３３４が、先端部１２の回転方向を決定する。ステップＳ１９の具体的な処理内容は後述する。
【０１２１】
ステップＳ１７又はステップＳ１９を実行した後、操作用デバイス３００はステップＳ２１，Ｓ２２を実行する。ステップＳ２１では、指令変換部３４１が、ステップＳ１７又はステップＳ１９で生成された第二座標系Ｃ２における先端部１２の動作指令を、第一座標系Ｃ１における先端部１２の動作指令に変換する。ステップＳ２２では、指令出力部３４２が、ステップＳ２１で変換された第一座標系Ｃ１における先端部１２の動作指令を出力する。
【０１２２】
ステップＳ２２を実行した後、操作用デバイス３００は処理をステップＳ１１に戻す。ステップＳ１８において操作入力がなかった場合も、操作用デバイス３００は処理をステップＳ１１に戻す。以後、第一移動ツール画像５２１、第二移動ツール画像５２２、第一回転ツール画像５２３及び第二回転ツール画像５２４への操作入力の有無を監視しながら、操作用デバイス３００からコントローラ２００への制御指令の出力が繰り返される。
【０１２３】
続いて、ステップＳ１７における移動指令の生成手順を例示する。図１４に示すように、操作用デバイス３００は、ステップＳ３１を実行する。ステップＳ３１では、指令生成部３３０が、第一移動ツール画像５２１へのポイント操作の有無を確認する。
【０１２４】
ステップＳ３１において第一移動ツール画像５２１へのポイント操作があった場合、操作用デバイス３００はステップＳ３２，Ｓ３３，Ｓ３４を実行する。ステップＳ３２では、第一移動指令生成部３３１が、先端部１２の移動方向を基準軸線ＲＬに沿うように決定する。例えば、ポイントエリア５３３Ａ，５３３Ｂのいずれかがポイント操作により指定されると、第一移動指令生成部３３１は、先端部１２の移動方向をＺ軸Ｃ２３の正方向に決定する。ポイントエリア５３４Ａ，５３４Ｂのいずれかがポイント操作により指定されると、第一移動指令生成部３３１は、先端部１２の移動方向をＺ軸Ｃ２３の負方向に決定する。ステップＳ３３では、第一移動指令生成部３３１が、先端部１２の移動のスカラー量を決定する。例えば、ポイントエリア５３３Ｂ，５３４Ｂのいずれかがポイント操作により指定されると、第一移動指令生成部３３１は、先端部１２の移動のスカラー量を、ポイントエリア５３３Ａ，５３４Ａのいずれかが指定された場合に比較して大きい値に決定する。ステップＳ３４では、第一移動指令生成部３３１が、ステップＳ３２で決定した移動方向及びステップＳ３３で決定したスカラー量に基づいて、移動後の先端部１２の目標位置を算出する。
【０１２５】
ステップＳ３１において第一移動ツール画像５２１ではなく第二移動ツール画像５２２へのポイント操作があった場合、操作用デバイス３００はステップＳ３５を実行する。ステップＳ３５では、第二移動指令生成部３３２が、基準軸線ＲＬに垂直な面に沿った先端部１２の移動方向を決定する。例えば、ポイントエリア５４３Ａ，５４３Ｂ，５４３Ｃのいずれかがポイント操作により指定されると、第二移動指令生成部３３２は、先端部１２の移動方向をＸ軸Ｃ２１の正方向に決定する。ポイントエリア５４４Ａ，５４４Ｂ，５４４Ｃのいずれかがポイント操作により指定されると、第二移動指令生成部３３２は、先端部１２の移動方向をＸ軸Ｃ２１の負方向に決定する。ポイントエリア５５３Ａ，５５３Ｂ，５５３Ｃのいずれかがポイント操作により指定されると、第二移動指令生成部３３２は、先端部１２の移動方向をＹ軸Ｃ２２の正方向に決定する。ポイントエリア５５４Ａ，５５４Ｂ，５５４Ｃのいずれかがポイント操作により指定されると、第二移動指令生成部３３２は、先端部１２の移動方向をＹ軸Ｃ２２の負方向に決定する。
【０１２６】
続いて、操作用デバイス３００はステップＳ３６，Ｓ３７を実行する。ステップＳ３６では、第二移動指令生成部３３２が、先端部１２の移動のスカラー量を決定する。例えば、ポイントエリア５４３Ａ，５４４Ａに比較して基準点５４２から遠いポイントエリア５４３Ｂ，５４４Ｂが指定されると、第二移動指令生成部３３２は、ポイントエリア５４３Ａ，５４４Ａが指定される場合に比較して先端部１２の移動のスカラー量を大きい値に決定する。ポイントエリア５４３Ｂ，５４４Ｂに比較して基準点５４２から更に遠いポイントエリア５４３Ｃ，５４４Ｃが指定されると、第二移動指令生成部３３２は、ポイントエリア５４３Ｂ，５４４Ｂが指定される場合に比較して先端部１２の移動のスカラー量を更に大きい値に決定する。ステップＳ３７では、第二移動指令生成部３３２が、ステップＳ３５で決定した移動方向及びステップＳ３６で決定したスカラー量に基づいて、移動後の先端部１２の目標位置を算出する。ステップＳ３４又はステップＳ３７の実行により、操作用デバイス３００は移動指令の生成手順を完了する。
【０１２７】
続いて、ステップＳ１９における回転指令の生成手順を例示する。図１５に示すように、操作用デバイス３００は、ステップＳ４１を実行する。ステップＳ４１では、指令生成部３３０が、第一回転ツール画像５２３へのポイント操作の有無を確認する。
【０１２８】
ステップＳ４１において第一回転ツール画像５２３へのポイント操作があった場合、操作用デバイス３００は、ステップＳ４２，Ｓ４３を実行する。ステップＳ４２では、第一回転指令生成部３３３が、基準軸線ＲＬまわりの先端部１２の回転方向を決定する。例えば、単軸操作系５７０の一点が指定されると、第一回転指令生成部３３３は、単軸操作系５７０に対応する移動ラインＭＬ３まわりの先端部１２の回転方向を、ポイントエリア５７１，５７２のいずれが指定されたかに応じて決定する。ステップＳ４３では、第一回転指令生成部３３３が、ステップＳ４２で決定した回転方向に基づいて、回転後の先端部１２の目標位置を算出する。
【０１２９】
ステップＳ４１において第一回転ツール画像５２３ではなく第二回転ツール画像５２４へのポイント操作があった場合、操作用デバイス３００は、ステップＳ４４，Ｓ４５を実行する。ステップＳ４４では、第二回転指令生成部３３４が、基準軸線ＲＬに直交する軸線まわりの先端部１２の回転方向を決定する。例えば、単軸操作系５８０の一点が指定されると、第二回転指令生成部３３４は、単軸操作系５８０に対応する移動ラインＭＬ１まわりの先端部１２の回転方向を、ポイントエリア５８１，５８２のいずれが指定されたかに応じて決定する。単軸操作系５９０の一点が指定されると、第二回転指令生成部３３４は、単軸操作系５９０に対応する移動ラインＭＬ２まわりの先端部１２の回転方向を、ポイントエリア５９１，５９２のいずれが指定されたかに応じて決定する。ステップＳ４５では、第二回転指令生成部３３４が、ステップＳ４４において決定した回転方向に基づいて、回転後の先端部１２の目標位置を算出する。ステップＳ４３又はステップＳ４５の実行により、操作用デバイス３００は先端部１２の回転指令の生成手順を完了する。
【０１３０】
（キャリブレーション手順）
図１６に示すように、操作用デバイス３００は、ステップＳ５１，Ｓ５２を実行する。ステップＳ５１では、未設定報知部３５２が、ロボットシステム１の起動時に第二座標系Ｃ２の姿勢を初期姿勢にする。言い換えれば、未設定報知部３５２は、仮のキャリブレーションを実行する。ステップＳ５２では、キャリブレーション部３５１が、キャリブレーションボタン５１４へのポイント操作がなされたか否かを確認する。
【０１３１】
ステップＳ５２においてキャリブレーションボタン５１４へのポイント操作があった場合、操作用デバイス３００はステップＳ５３を実行する。ステップＳ５３では、キャリブレーション部３５１がキャリブレーションを実行する。即ち、キャリブレーション部３５１が、第一座標系Ｃ１に対する第二座標系Ｃ２の姿勢を予め設定された初期姿勢にする。例えば、キャリブレーション部３５１は、Ｘ軸Ｃ２１、Ｙ軸Ｃ２２及びＺ軸Ｃ２３を、Ｘ軸Ｃ１１、Ｙ軸Ｃ１２及びＺ軸Ｃ１３に一致させる。
【０１３２】
ステップＳ５３を実行した後、操作用デバイス３００は処理をステップＳ５２に戻す。ステップＳ５２においてキャリブレーションボタンの操作がなかったと判定した場合も、操作用デバイス３００は処理をステップＳ５２に戻す。以後、操作用デバイス３００は、キャリブレーションボタン５１４へのポイント操作の有無を監視し、キャリブレーションボタン５１４へのポイント操作に応じてキャリブレーションを実行することを繰り返す。
【０１３３】
（制御実行手順）
図１７に示すように、コントローラ２００は、ステップＳ６１，Ｓ６２，Ｓ６３を実行する。ステップＳ６１では、逆運動学演算部２１３が、操作用デバイス３００の指令出力部３４２からの制御指令の取得を待機する。ステップＳ６２では、逆運動学演算部２１３が、制御指令により定められた目標位置及び目標姿勢に従って、逆運動学演算により、先端部１２を動作させるための関節角度目標値を算出する。ステップＳ６３では、制御実行部２１４が、関節角度目標値に従って、アクチュエータ４１，４２，４３，４４，４５，４６により関節３１，３２，３３，３４，３５，３６をそれぞれ駆動するようにロボット１０を制御する。以後、コントローラ２００は、操作用デバイス３００からの制御指令に応じて関節角度目標値を算出し、当該関節角度目標値に従ってロボット１０を制御することを繰り返す。
【０１３４】
〔本実施形態の作用効果〕
以上に説明したように操作用デバイス３００は、先端部１２と、基部１１と、基部１１に対する先端部１２の位置及び姿勢を変更する多関節アーム２０とを有するロボット１０を操作するための操作入力部３１１と、先端部１２の動作指令を入力するための少なくとも一つの操作画像５１２を含む操作画面５００，５０１，５０２，５０３を操作入力部３１１に表示するように画面データを出力する画面出力部３１３と、ロボット１０の制御用の第一座標系Ｃ１における操作入力部３１１の姿勢を検出するデバイス姿勢検出部３２１と、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回す座標回転部３２３と、操作画像５１２内の少なくとも一点を指定するポイント操作がなされた場合に、当該一点と当該操作画像５１２内の基準点５３１，５４２との位置関係に相関するように第二座標系Ｃ２における先端部１２の動作方向を決定し、当該一点と当該基準点５３１，５４２との距離に相関するように先端部１２の動作のスカラー量を決定し、当該動作方向及び当該スカラー量を含む先端部１２の動作指令を生成する指令生成部３３０と、先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換する指令変換部３４１と、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力する指令出力部３４２と、を備える。
【０１３５】
指令生成部３３０は、ポイント操作により指定される点（以下、「指定点」という。）の位置に基づいて移動方向及びスカラー量の両方を決定する。したがって、操作用デバイス３００は、操作性向上に有効である。指定点と基準点５３１，５４２との位置関係に相関するように移動方向が設定され、指定点と基準点５３１，５４２との距離に相関するようにスカラー量が設定される。したがって、移動方向及びスカラー量がいかに設定されるかを操作者が直感的に理解し易い。このため、操作性の更なる向上に有効である。なお、ポイント操作による入力によれば、スライド操作に比較して、操作者の認識と入力内容とのずれが生じ難い。従って、操作性向上に有効である。なお、スカラー量は先端部１２の動作の速さを含んでいてもよい。
【０１３６】
少なくとも一つの操作画像５１２は、先端部１２を移動させる指令を入力するための第一移動ツール画像５２１及び第二移動ツール画像５２２を含み、第一移動ツール画像５２１及び第二移動ツール画像５２２は、一本の描画ライン５３２，５４１，５５１に沿うように描画される少なくとも一つの一次元操作系５３０，５４０，５５０を含み、当該一次元操作系５３０，５４０，５５０は第二座標系Ｃ２に設定された一本の移動ラインＭＬ１，ＭＬ２，ＭＬ３に対応付けられ、指令生成部３３０は、第一移動ツール画像５２１及び第二移動ツール画像５２２への入力に従って、第二座標系Ｃ２における先端部１２の移動指令を生成する第一移動指令生成部３３１及び第二移動指令生成部３３２を有し、第一移動指令生成部３３１及び第二移動指令生成部３３２は、一次元操作系の少なくとも一点を指定するポイント操作がなされた場合に、当該一次元操作系５３０，５４０，５５０に対応する移動ラインＭＬ１，ＭＬ２，ＭＬ３において、当該一点と当該一次元操作系５３０，５４０，５５０の基準点５３１，５４２との位置関係に相関するように移動方向を決定し、当該一点と当該基準点５３１，５４２との距離に相関するようにスカラー量を決定し、当該移動方向及び当該スカラー量を含む移動指令を生成してもよい。この場合、操作画像５１２の一次元操作系５３０，５４０，５５０を第二座標系Ｃ２の一本の移動ラインＭＬ１，ＭＬ２，ＭＬ３に対応付けることで、いずれの方向に先端部１２が移動するのかを操作者に明確に認識させることができる。
【０１３７】
第二移動ツール画像５２２は、少なくとも一つの一次元操作系５４０，５５０として、互いに交差する複数本の描画ライン５４１，５５１にそれぞれ沿うように描画される複数の一次元操作系５４０，５５０を含み、当該複数の一次元操作系５４０，５５０は、第二座標系Ｃ２で互いに交差するように設定された複数本の移動ラインＭＬ１，ＭＬ２にそれぞれ対応し、第二移動指令生成部３３２は、複数の一次元操作系５４０，５５０のうちいずれか一つの一次元操作系５４０，５５０の少なくとも一点を指定するポイント操作がなされた場合に、当該一次元操作系５４０，５５０に対応する移動ラインＭＬ１，ＭＬ２において、当該一点と当該一次元操作系５４０，５５０の基準点５４２との位置関係に相関するように移動方向を決定し、当該一点と当該基準点５４２との距離に相関するようにスカラー量を決定してもよい。この場合、一つの操作画像５１２でより多様な移動方向の指定を可能にしつつ、いずれの方向に先端部１２が移動するのかを操作者に明確に認識させることができる。
【０１３８】
少なくとも一つの一次元操作系５３０，５４０，５５０は、基準点５３１，５４２側から順に並ぶ複数のポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂ，５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃ，５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃを有し、第一移動指令生成部３３１及び第二移動指令生成部３３２は、一次元操作系５３０，５４０，５５０のいずれかのポイントエリアを指定するポイント操作がなされた場合に、当該一次元操作系５３０，５４０，５５０に対応する移動ラインＭＬ１，ＭＬ２，ＭＬ３において、当該ポイントエリアと当該基準点５３１，５４２との位置関係に相関するように移動方向を決定し、当該ポイントエリアと当該基準点５３１，５４２との距離に相関するようにスカラー量を決定してもよい。この場合、ポイントエリアを選択する方式によって、ポイント操作位置のばらつきに起因する操作入力のばらつきを抑制し、操作性を更に向上させることができる。
【０１３９】
少なくとも一つの一次元操作系５３０，５４０，５５０は、ポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂ，５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃ，５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃ同士の間に、ポイント操作を無視する不感エリア５３５，５４５，５５５を有していてもよい。この場合、ポイントエリア間に不感エリア５３５，５４５，５５５を設けることによって、ポイントエリアの誤選択を抑制し、操作性を更に向上させることができる。
【０１４０】
複数のポイントエリア５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂ，５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃ，５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃの幅Ｗ１，Ｗ２，Ｗ１１，Ｗ１２，Ｗ１３，Ｗ２１，Ｗ２２，Ｗ２３が、基準点５３１，５４２側から遠ざかるのに応じて大きくなっていてもよい。この場合、ポイントエリアとスカラー量との関係を操作者に直感的に認識させ易い。
【０１４１】
少なくとも一つの操作画像５１２は、先端部１２を回転させる指令を入力するための第一回転ツール画像５２３及び第二回転ツール画像５２４を更に含み、指令生成部３３０は、第一回転ツール画像５２３及び第二回転ツール画像５２４への入力に従って、第二座標系Ｃ２における先端部１２の回転指令を生成する第一回転指令生成部３３３及び第二回転指令生成部３３４を更に有していてもよい。この場合、先端部１２の姿勢も第二座標系Ｃ２で指定可能である。したがって、操作性の更なる向上に有効である。
【０１４２】
多関節アーム２０は複数の関節３１，３２，３３，３４，３５，３６を含み、画面出力部３１３は、複数の関節３１，３２，３３，３４，３５，３６ごとの角度のステータスと、複数の関節３１，３２，３３，３４，３５，３６ごとの角度のリミットとを合わせて示す角度インジケータ５１３を更に含む操作画面５００，５０１，５０２，５０３を操作入力部３１１に表示するように画面データを出力してもよい。この場合、ロボット１０の可動限界を把握しながらの操作が可能である。したがって、操作性の更なる向上に有効である。
【０１４３】
操作用デバイス３００は、第一座標系Ｃ１に対する第二座標系Ｃ２の姿勢を予め設定された初期姿勢にするキャリブレーションを、操作入力部３１１への入力に応じて実行するキャリブレーション部３５１と、キャリブレーション部３５１によりキャリブレーションが実行されていないことを報知する未設定報知部３５２とを更に備えていてもよい。この場合、操作者の方向感覚に合った操作性をより確実に提供することができる。
【０１４４】
操作用デバイス３００は、先端部１２と、基部１１と、基部１１に対する先端部１２の位置及び姿勢を変更する多関節アーム２０とを有するロボット１０を操作するための操作入力部と、ロボット１０の制御用の第一座標系Ｃ１における操作入力部３１１の姿勢を検出するデバイス姿勢検出部３２１と、第一座標系Ｃ１に対して回転可能な第二座標系Ｃ２を操作入力部３１１の姿勢に応じて回す座標回転部３２３と、操作入力部３１１への操作入力に従って、第二座標系Ｃ２における先端部１２の動作指令を生成する指令生成部３３０と、第二座標系Ｃ２における先端部１２の動作指令を第一座標系Ｃ１における先端部１２の動作指令に変換する指令変換部３４１と、第一座標系Ｃ１における先端部１２の動作指令に従ってロボット１０を制御するための制御指令を出力する指令出力部３４２と、少なくとも一軸線まわりの第二座標系Ｃ２の回転を規制する座標回転規制部３２４と、を備える。
【０１４５】
この操作用デバイス３００によれば、操作入力部３１１の姿勢に応じて回る第二座標系Ｃ２にて先端部１２の移動指令を入力することが可能である。したがって、操作者の方向感覚に合った操作入力が可能となる。また、操作入力部３１１の姿勢に応じた第二座標系Ｃ２の回転方向を制限するため、第二座標系Ｃ２の過度な回転が抑制される。このため、第二座標系Ｃ２の過度な回転に起因する操作者の方向感覚からの乖離が抑制される。従って、操作用デバイス３００は操作性向上に有効である。
【０１４６】
座標回転規制部３２４は、一方向に沿った基準軸線ＲＬまわりの第二座標系Ｃ２の回転を許容しつつ、基準軸線ＲＬに垂直な軸線まわりの第二座標系Ｃ２の回転を規制してもよい。この場合、操作者にとって、第二座標系Ｃ２の過度な回転が更に抑制される。したがって、操作性向上に更に有効である。
【０１４７】
基準軸線ＲＬは鉛直であってもよい。操作者の方向感覚において、前後左右は操作者の向きに応じて変わるが、鉛直方向は普遍となり易い。この性質に合わせ、基準軸線ＲＬを鉛直とすることで、より操作者の方向感覚に合った操作入力が可能となる。
【０１４８】
操作用デバイス３００は、基準軸線ＲＬに沿って先端部１２を移動させる指令を入力するための第一移動ツール画像５２１と、基準軸線ＲＬに垂直な面に沿って先端部１２を移動させる指令を入力するための第二移動ツール画像５２２とを別に含む操作画面５００，５０１，５０３を操作入力部３１１に表示するように画面データを出力する画面出力部３１３を更に備え、指令生成部３３０は、第一移動ツール画像５２１への操作入力に従って第二座標系Ｃ２における先端部１２の移動指令を生成する第一移動指令生成部３３１と、第二移動ツール画像５２２への操作入力に従って第二座標系Ｃ２における先端部１２の移動指令を生成する第二移動指令生成部３３２と、を有していてもよい。この場合、操作入力部の姿勢が変わっても不動な軸線（基準軸線ＲＬ）に沿った移動指令と、操作入力部３１１の姿勢に応じて回る軸線に沿った移動指令とで、ツール画像を分ける。したがって、より操作者の方向感覚に合った操作入力が可能となる。
【０１４９】
第一移動指令生成部３３１は、第一移動ツール画像５２１内の少なくとも一点を指定するポイント操作がなされた場合に、第一移動ツール画像５２１内における当該一点の位置に基づいて、基準軸線ＲＬに沿った先端部１２の移動方向を決定し、第二移動指令生成部３３２は、第二移動ツール画像５２２内の少なくとも一点を指定するポイント操作がなされた場合に、第二移動ツール画像５２２内における当該一点の位置に基づいて、基準軸線ＲＬに垂直な面に沿った先端部１２の移動方向を決定してもよい。ポイント操作による入力によれば、スライド操作に比較して、操作者の認識と入力内容とのずれが生じ難い。したがって、操作性向上に更に有効である。また、基準軸線ＲＬに沿った移動指令については一次元的な操作入力を可能にし、基準軸線ＲＬに垂直な面内の移動指令については、二次元的な操作入力を可能にする。したがって、より操作者の方向感覚に合った入力が可能となる。
【０１５０】
第一移動ツール画像５２１は、一本の描画ライン５３２に沿うように描画される一つの一次元操作系５３０を含み、当該一次元操作系５３０は第二座標系Ｃ２において基準軸線ＲＬに沿うように設定された一本の移動ラインＭＬ３に対応し、第二移動ツール画像５２２は、互いに交差する複数本の描画ライン５４１，５５１にそれぞれ沿うように描画される複数の一次元操作系５４０，５５０を含み、当該複数の一次元操作系５４０，５５０は、第二座標系Ｃ２において基準軸線ＲＬに垂直な面内で互いに交差するように設定された複数の移動ラインＭＬ１，ＭＬ２にそれぞれ対応し、第一移動指令生成部３３１は、第一移動ツール画像５２１の一次元操作系５３０の少なくとも一点を指定するポイント操作がなされた場合に、当該一次元操作系５３０に対応する移動ラインＭＬ３において、当該一次元操作系５３０内の当該一点の位置に応じて移動方向を決定し、第二移動指令生成部３３２は、第二移動ツール画像５２２の複数の一次元操作系５４０，５５０のうちいずれか一つの一次元操作系５４０，５５０の少なくとも一点を指定するポイント操作がなされた場合に、当該一次元操作系５４０，５５０に対応する移動ラインＭＬ１，ＭＬ２において、当該一次元操作系５４０，５５０内の当該一点の位置に応じて移動方向を決定してもよい。この場合、操作入力に従って、基準軸線ＲＬに垂直な面内のいずれの方向に先端部１２が移動するのかをより明確に操作者に認識させることができる。
【０１５１】
操作画面５０３は、移動指令のスカラー量を指示する量設定ツール画像６１０を更に含み、第一移動指令生成部３３１及び第二移動指令生成部３３２は、量設定ツール画像６１０への入力に応じて移動指令のスカラー量を決定してもよい。この場合、スカラー量を操作画像５１２とは別の操作画像で入力する。したがって、過大なスカラー量の入力を抑制できる。
【０１５２】
操作画面５０２は、先端部１２を回転させる指令を入力するための第一回転ツール画像５２３及び第二回転ツール画像５２４を更に含み、指令生成部３２０は、第一回転ツール画像５２３及び第二回転ツール画像５２４への入力に従って、第二座標系Ｃ２における先端部１２の回転指令を生成する第一回転指令生成部３３３及び第二回転指令生成部３３４を更に有していてもよい。この場合、先端部１２の姿勢も第二座標系Ｃ２で指定可能となるため、操作性の更なる向上に有効である。
【０１５３】
多関節アーム２０は複数の関節３１，３２，３３，３４，３５，３６を含み、画面出力部３１３は、複数の関節３１，３２，３３，３４，３５，３６ごとの角度のステータスと、複数の関節３１，３２，３３，３４，３５，３６ごとの角度のリミットとを合わせて示す角度インジケータ５１３を更に含む操作画面５００，５０１，５０２，５０３を操作入力部３１１に表示するように画面データを出力してもよい。この場合、ロボット１０の可動限界を把握しながらの操作が可能となるため、操作性の更なる向上に有効である。
【０１５４】
操作用デバイス３００は、座標回転規制部３２４による第二座標系Ｃ２の回転の規制を行う規制モードと、座標回転規制部３２４による第二座標系Ｃ２の回転の規制を行わないフリーモードとを切り替えるモード切替部３２５を更に備えていてもよい。この場合、操作者のニーズにより柔軟に適応可能となる。
【０１５５】
操作用デバイス３００は、第一座標系Ｃ１に対する第二座標系Ｃ２の姿勢を予め設定された初期姿勢にすることを、操作入力部３１１への入力に応じて実行するキャリブレーション部３５１と、初期姿勢がキャリブレーション部３５１により設定されていない場合に、初期姿勢が未設定であることを報知する未設定報知部３５２とを更に備えていてもよい。この場合、操作者の方向感覚に合った操作性をより確実に提供することができる。
【０１５６】
座標回転部３２３が、一軸線まわりの第二座標系Ｃ２の回転を規制する場合に、デバイス姿勢検出部３２１により検出される情報に基づいて、当該一軸線に垂直な軸線まわりの操作入力部３１１の回転角度を算出する姿勢演算部３２２を更に備え、指令生成部３３０は、当該一軸線に垂直な軸線まわりの操作入力部３１１の回転角度に応じて動作指令のスカラー量を決定してもよい。この場合、操作入力部３１１の姿勢情報を有効に活用できるため、操作性の更なる向上に有効である。
【０１５７】
以上、実施形態について説明したが、本発明は必ずしも上述した形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変形が可能である。
【符号の説明】
【０１５８】
１０…ロボット、１１…基部、１２…先端部、２０…多関節アーム、３１，３２，３３，３４，３５，３６…関節、１００…制御システム、２００…コントローラ、３００…操作用デバイス、３１１…操作入力部、３２１…デバイス姿勢検出部、３２３…座標回転部、３２４…座標回転規制部、３３０…指令生成部、３３３…第一回転指令生成部（回転指令生成部）、３３４…第二回転指令生成部（回転指令生成部）、３４１…指令変換部、３４２…指令出力部、３５１…キャリブレーション部、３５２…未設定報知部、５００，５０１，５０２，５０３…操作画面、５１２…操作画像、５１３…角度インジケータ、５２１…第一移動ツール画像、５２２…第二移動ツール画像、５３０，５４０，５５０…一次元操作系、５３１，５４２…基準点、５３２，５４１，５５１…描画ライン、５３３Ａ，５３３Ｂ，５３４Ａ，５３４Ｂ，５４３Ａ，５４３Ｂ，５４３Ｃ，５４４Ａ，５４４Ｂ，５４４Ｃ，５５３Ａ，５５３Ｂ，５５３Ｃ，５５４Ａ，５５４Ｂ，５５４Ｃ…ポイントエリア、５３５，５４５，５５５…不感エリア、Ｃ１…第一座標系、Ｃ１１…Ｘ軸、Ｃ１２…Ｙ軸、Ｃ１３…Ｚ軸、Ｃ２…第二座標系、Ｃ２１…Ｘ軸、Ｃ２２…Ｙ軸、Ｃ２３…Ｚ軸、ＭＬ１，ＭＬ２，ＭＬ３…移動ライン、Ｗ１，Ｗ２，Ｗ１１，Ｗ１２，Ｗ１３，Ｗ２１，Ｗ２２，Ｗ２３…幅。
【図１】
2019198925.tif 000003
【図２】
2019198925.tif 000004
【図３】
2019198925.tif 000005
【図４】
2019198925.tif 000006
【図５】
2019198925.tif 000007
【図６】
2019198925.tif 000008
【図７】
2019198925.tif 000009
【図８】
2019198925.tif 000010
【図９】
2019198925.tif 000011
【図１０】
2019198925.tif 000012
【図１１】
2019198925.tif 000013
【図１２】
2019198925.tif 000014
【図１３】
2019198925.tif 000015
【図１４】
2019198925.tif 000016
【図１５】
2019198925.tif 000017
【図１６】
2019198925.tif 000018
【図１７】
2019198925.tif 000019