(57)【特許請求の範囲】
【請求項１】
ユーザによるタッチ操作が入力されるタッチパネルと、
前記タッチパネルにタッチ操作が入力された際の操作位置を検出する操作位置検出部と、
前記タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定する座標系設定部と、
予め設定された大きさを有する判定領域を設定する判定領域設定部と、
前記判定領域に到達したときの操作位置である到達位置に基づいて、前記座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択する軸選択部と、
前記到達位置を中心として予め設定された幅を有する操作領域を設定する操作領域設定部と、
を備えることを特徴とするロボット操作装置。
【請求項２】
ユーザによるタッチ操作が入力されるタッチパネルと、
前記タッチパネルにタッチ操作が入力された際の操作位置を検出する操作位置検出部と、
前記タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定する座標系設定部と、
タッチ操作が開始されてから予め定められた判定時間が経過したときの操作位置である到達位置との位置関係に基づいて、前記座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択する軸選択部と、
前記到達位置を中心として予め設定された幅を有する操作領域を設定する操作領域設定部と、
を備えることを特徴とするロボット操作装置。
【請求項３】
操作位置が前記操作領域内であるか否かに基づいて、操作対象となる軸を切り替える軸切替部を備え、
前記座標系設定部は、互いに直交する２つの座標軸を有し、各座標軸にそれぞれロボットの軸が正負の動作方向とともに予め対応付けられているとともに、第１象限、第２象限、第３象限、第４象限の所定範囲に、各座標軸に対応付けられているロボットの２つの軸がその動作方向とともに対応付けられた座標系を設定し、
前記軸選択部は、操作対象として選択した軸が１軸または２軸のいずれであるかに基づいて、１軸である場合には、ロボットを操作する際の操作モードとして当該１軸を単独で動作させる単軸モードを設定する一方、２軸である場合には、操作モードとして当該２軸を同時に動作させる２軸モードを設定し、
前記操作領域設定部は、前記操作領域を、前記軸選択部で設定された操作モードを継続するための範囲として設定し、
前記軸切替部は、操作位置が前記操作領域から離脱した際、前記操作モードを単軸モードから２軸モードへ、または、２軸モードから単軸モードへ切り替えることを特徴とする請求項１または２記載のロボット操作装置。
【請求項４】
前記操作領域設定部は、前記軸切替部により操作対象となる軸が切り替えられると、前記操作領域から離脱した際の操作位置である離脱位置を中心とする新たな操作領域を設定することを特徴とする請求項３記載のロボット操作装置。
【請求項５】
前記操作領域設定部は、前記操作領域の幅を、前記到達位置からの距離に応じて変更することを特徴とする請求項１から４のいずれか一項記載のロボット操作装置。
【請求項６】
前記操作領域設定部は、前記操作領域を、当該操作領域の中心線が、前記開始位置から前記到達位置への向きを示す操作方向に沿うように設定することを特徴とする請求項１から５のいずれか一項記載のロボット操作装置。
【請求項７】
前記操作領域設定部は、前記軸切替部により操作対象となる軸が切り替えられると、前記操作領域から離脱した際の操作位置である離脱位置を中心とする新たな操作領域を設定することを特徴とする請求項１から６のいずれか一項記載のロボット操作装置。
【請求項８】
前記操作領域設定部は、前記開始位置から前記到達位置までの距離に応じて、前記操作領域の幅を変更することを特徴とする請求項１から７のいずれか一項記載のロボット操作装置。
【請求項９】
前記操作位置検出部は、前記タッチパネルに入力された複数のタッチ操作に対する操作位置をそれぞれ検出し、
前記判定領域設定部は、前記操作位置検出部によって複数の操作位置が検出された場合に、前記判定領域を設定することを特徴とする請求項１、または請求項１を引用する請求項３から８のいずれか一項記載のロボット操作装置。
【請求項１０】
前記判定領域設定部は、検出された複数の操作位置のそれぞれに対して前記判定領域を設定することを特徴とする請求項９記載のロボット操作装置。
【請求項１１】
前記軸選択部は、複数の前記判定領域が設定された場合、先に前記判定領域に到達した側の前記判定領域における前記到達位置に基づいて操作対象となる軸を選択することを特徴とする請求項１０記載のロボット操作装置。
【請求項１２】
前記判定領域設定部は、検出された複数の操作位置のうち、先に検出された操作位置に対して前記判定領域を設定することを特徴とする請求項９記載のロボット操作装置。
【請求項１３】
前記判定領域設定部は、検出された複数の操作位置のうち、後に検出された操作位置に対して前記判定領域を設定することを特徴とする請求項９記載のロボット操作装置。
【請求項１４】
タッチパネルにタッチ操作が入力された際の操作位置を検出する操作位置検出処理と、
前記タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定する座標系設定処理と、
前記開始位置の周囲に、予め設定された大きさを有する判定領域を設定する判定領域設定処理と、
前記開始位置と前記判定領域に到達したときの操作位置である到達位置との位置関係に基づいて、前記座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択する軸選択処理と、
前記到達位置を中心として予め設定された幅を有する操作領域を設定する操作領域設定処理と、
操作位置が前記操作領域内であるか否かに基づいて、操作対象となる軸を切り替える軸切替処理と、
を含むことを特徴とするロボット操作プログラム。
【請求項１５】
タッチパネルにタッチ操作が入力された際の操作位置を検出する操作位置検出処理と、
前記タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定する座標系設定処理と、
タッチ操作が開始されてから予め定められた判定時間が経過したときの操作位置である到達位置との位置関係に基づいて、前記座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択する軸選択処理と、
前記到達位置を中心として予め設定された幅を有する操作領域を設定する操作領域設定処理と、
操作位置が前記操作領域内であるか否かに基づいて、操作対象となる軸を切り替える軸切替処理と、
を含むことを特徴とするロボット操作プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチパネルを有する操作端末でロボットを操作するためのロボット操作装置、ロボット操作プログラムに関する。
【背景技術】
【０００２】
例えば産業用のロボットシステムにおいては、ロボットを手動により動作させること（以下、手動操作と称する）が可能となっている。このような手動操作は、例えばロボットに移動軌跡を教示する教示作業（ティーチング）などを行う際に利用される。この場合、一般的には、ユーザは、ロボットを制御するコントローラに接続されたペンダント（ロボット操作装置。いわゆるティーチングペンダント）などを用いて、手動でロボットの操作を行うことになる。そのため、ペンダントには、例えば機械的なスイッチ等で構成された専用の操作キーが各種設けられている（例えば特許文献１参照）。
【０００３】
また、近年では、タッチパネルを備えたペンダントもでてきており、上記した手動操作をタッチパネルへの操作（以下、タッチ操作と称する）により行うことができる。このようなロボット装置は、専用の操作キーを設ける必要が無くなり、ペンダントの小型化、表示部の画面サイズの拡大、低価格化などを実現できるといった効果が期待されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１４２４８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このようなタッチパネルを有するペンダントの場合、ユーザは、パネル平面をなぞることにより、つまり、パネル平面内で二次元方向に指を動かすことにより、複数の操作を同時に入力することができる。そして、例えばタッチ操作の操作方向に応じてロボットが動作するようにすれば、ロボットの各軸操作やＸＹ操作等、ロボットの複数の軸を同時に操作させることなどが可能となり、操作性の向上やティーチング時間が短縮できるなどの作業効率の改善を図ることができる。
【０００６】
しかしながら、手動操作でロボットを操作する場合には、複数の軸を同時に操作できることが必ずしもメリットにならない場合がある。例えばティーチング作業では、ロボットを大きく動かすラフティーチングと目標位置に手先を合わせるためのファインティーチングとが一般的に行われる。この場合、ラフティーチングでは、２つの軸を同時に操作（以下、便宜的に２軸モードと称する）できる方が使い勝手がよく、ファインティーチングでは、１つの軸のみを操作（以下、便宜的に単軸モードと称する）できる方が使い勝手がよい。
【０００７】
しかし、ユーザがタッチ操作を入力する場合には、ユーザはタッチパネル上で直線的に指を移動させたつもりでも、実際には指がぶれたりすることがあり、その場合には、ペンダント側は、２つの軸に対する操作が入力されたと判断してしまうおそれがある。かといって、ラフティーチングとファインティーチングとで２軸モードと単軸モードとを切り替えるような構成では、ティーチング時に切り替え操作を頻繁に行う必要が出てくる等、操作性や作業効率の低下を招くという問題がある。そして、このような問題は、ティーチング作業時だけで無く、ロボットを各軸動作させる際にも発生し得る。
本発明は上記事情に鑑みてなされたものであり、その目的は、意図しない方向へ動作するおそれを低減することができるロボット操作装置、ロボット操作プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
請求項１に記載のロボット操作装置は、タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定し、予め設定された大きさを有する判定領域を設定する。そして、ロボット操作装置は、判定領域に到達したときの操作位置である到達位置に基づいて、座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択する。これにより、ユーザは、タッチ操作を開始した位置からの操作方向により、操作対象となる軸を選択することができる。
【０００９】
そして、ロボット操作装置は、到達位置を中心として予め設定された幅を有する操作領域を設定する。このため、タッチ操作時に多少指がぶれたり、ユーザがまっすぐ操作したつもりでも実際には斜めに操作されていたりするような場合であっても、異なる動作方向が入力されたと判定することが防止される。換言すると、同一方向へ動作させる際において、タッチ操作時の操作態様にマージンを持たせることができるこれにより、ユーザの意図に反した軸が動作してしまうおそれを低減することができる。
したがって、操作性や作業効率の低下を招くことなく、さらには、安全性の低下を招くことなく、意図しない方向へ動作するおそれを低減することができる。
【００１０】
請求項２に記載のロボット操作装置は、タッチパネルのパネル平面に、タッチ操作が開始されたときの操作位置である開始位置を原点とし、操作対象となるロボットの軸が予め対応付けられている座標系を設定し、タッチ操作が開始されてから予め定められた判定時間が経過したときの操作位置である到達位置との位置関係に基づいて、前記座標軸に対応付けられているロボットの軸のうち操作対象となる軸を選択し、到達位置を中心として予め設定された幅を有する操作領域を設定する。
【００１１】
つまり、請求項１に記載のロボット操作装置が予め定められた位置に到達することで操作対象の軸を選択するのに対し、請求項２に記載のロボット操作装置では、予め定められた時間が経過した時点での操作位置（到達位置）に基づいて操作対象の軸を選択する。このような構成であっても、ユーザの意図に反して操作対象の軸が切り替わるおそれを低減することができ、上記した請求項１に記載のロボット操作装置と同様に、操作性や作業効率の低下を招くことなく、意図しない方向へ動作するおそれを低減することができる。
【００１２】
請求項３に記載のロボット操作装置は、操作位置が前記操作領域内であるか否かに基づいて操作対象となる軸を切り替える軸切替部を備える。これにより、ユーザは、操作位置を操作領域内から外すことで、すなわち、ある程度指を大きく動かすことで操作対象となる軸を切り替えることができる。このため、例えばファインティーチング作業等で操作対象となる軸を頻繁に切り替えるような場合であっても、軸を切り替えるためだけの専用の操作を入力する必要なく、ロボットを動作させる操作の延長上で、軸の切り替えを行うことができ、操作性を向上させることができるとともに、操作性が向上することから、ティーチング時間を短縮できる等、作業効率を改善することもできる。
【００１３】
また、タッチ操作だけで操作対象となる軸の選択および軸の切り替えができることから、さらには、操作領域が設定されることで若干の指のぶれ等が許容されることから、ユーザは、感覚的にロボットを操作することができる。つまり、ユーザは、画面を見なくても、すなわち、ロボットを視認したままで、ロボットを操作することができる。このため、安全性の低下を招くこともない。
【００１４】
そして、各座標軸には、それぞれロボットの２つの軸を正負の動作方向、具体的には、ロボットの軸を駆動するモータの回転方向とともに予め対応付けられ、座標系の第１象限、第２象限、第３象限、第４象限の所定範囲に、各座標軸に対応付けられているロボットの２つの軸をその動作方向とともに対応付けられる。つまり、ロボット操作装置は、座標軸に沿ったタッチ操作が入力されれば、その座標軸に対応付けられている１つの軸を操作対象として選択し、いずれかの象限に向かうタッチ操作が入力されれば、その象限に対応付けられている２つの軸を操作対象として選択する。
【００１５】
そして、選択した軸が１軸である場合には、ロボットを操作する際の操作モードとして当該１軸を単独で動作させる単軸モードを設定する一方、２軸である場合には、操作モードとして当該２軸を同時に動作させる２軸モードを設定する。これにより、ユーザは、操作対象を１軸または２軸のいずれにするか、および、各軸の移動方向は正負のいずれであるかを、１回のタッチ操作で入力することができる。したがって、操作性を向上させることができる。
【００１６】
このとき、ロボット操作装置は、最初に選択された操作モードを継続するための範囲として操作領域を設定し、操作位置が操作領域から離脱したか否かに基づいて、操作モードを単軸モードから２軸モード、または、２軸モードから単軸モードに切り替える。これにより、操作モードが意図せずに切り替わることおそれが低減され、多少指がぶれたとしても、また、指を正確に座標軸に沿って移動させなくても、ユーザは、所望の操作モードを継続させることができる。したがって、操作性をより向上させることができる。
【００１７】
請求項４に記載のロボット操作装置は、軸切替部により操作対象となる軸が切り替えられると、操作領域から離脱した際の操作位置である離脱位置を中心とする新たな操作領域を設定する。このように、切り替えられた軸を対象とした新たな判定領域を設定することにより、操作対象の軸が切り替えられた場合であっても、その後の操作時には、切り替えられた軸を対象として操作することができ、使い勝手が向上する。
【００１８】
請求項５に記載のロボット操作装置は、操作領域の幅を、判定領域に到達した際の操作位置である到達位置からの距離に応じて変更する。到達位置から比較的近い範囲でタッチ操作を行っている場合、ロボットは、比較的短い距離を移動する。一方、到達位置から比較的遠い範囲までタッチ操作を行った場合には、ロボットは、比較的長い距離を移動する。つまり、タッチ操作が到達位置から離間するほど、ユーザは、ロボットを大きく動かしたいと考えていると推測できる。そのため、操作領域を到達位置からの距離に応じて変更することにより、操作性の改善を図ることができる。
【００１９】
例えば、到達位置から離間するほど幅狭に設定することにより、細かくロボットを動作させたいと考えているユーザに対しては、操作領域から外れるくらいの大きな操作が明確に入力されなければ、軸や操作モードが切り替わらないようにすることができる。一方、大きくロボットを動作させたいと考えているユーザに対しては、少ない指の移動距離で軸や操作モードを切り替えることができ、これにより、タッチパネルのパネル面で指を移動させるスペースが足りなくなる等、使い勝手が悪化することを防止することができる。
【００２０】
請求項６に記載のロボット操作装置は、操作領域を、当該操作領域の中心線が開始位置から到達位置への向きを示す操作方向に沿うように設定する。例えば、タッチ操作はユーザの指等により手作業で入力されることから、例えばユーザ自身は座標軸に沿って操作しているつもりでも、実際には座標軸からずれて入力されることが考えられる。その場合、判定領域が設定された後における操作距離が長くなるほど、座標軸からさらに離間することになる。
【００２１】
このとき、ユーザ自身はおそらく指をまっすぐ移動させたつもりでいると考えあれることから、操作領域を座標軸に平行に設定してしまうと、ユーザが指をそのまま移動させたとき、操作領域から外れて意図せずに軸や操作モードが切り替わってしまうおそれがある。そこで、操作領域を設定する際、その中心線（ＣＬ）をそれまでの操作方向に沿うように設定することにより、ユーザの意図に追従した状態で操作領域を設定することができる。このことは、画面を見ていない場合には、ユーザが手を動かすときの上下左右の感覚と、ロボット操作装置の実際の上下左右（画面上での上下左右）とが一致しない可能性が高くなると考えられるため、ロボットを視認したまま操作したい場合に特に有意である。
【００２２】
請求項７記載のロボット操作装置は、軸切替部により操作対象となる軸が切り替えられると、操作領域から離脱した際の操作位置である離脱位置を中心とする新たな操作領域を設定する。これにより、操作対象の軸が切り替えられた場合であっても、その後の操作時には、切り替えられた軸を対象として操作することができ、使い勝手を向上させることができる。
【００２３】
請求項８に記載のロボット操作装置は、開始位置から前記到達位置までの距離に応じて、操作領域の幅を変更する。タッチ操作は、固定されたボタン等がなく、どちらかと言えばユーザの感覚により入力されるものであり、特に、ロボットを見ながら（画面を見ずに）操作する場合には、その傾向が強くなると予想される。
【００２４】
そこで、開始位置から前記到達位置までの距離に応じて、つまり上記した判定領域の大きさや操作位置が移動した速度に応じて操作領域の幅を変更するようにし、判定領域を、ユーザ自身による設定や、開始位置が画面上のどこであるか（中央部か角部かなど）等により変更可能とすることで、操作するユーザの感覚に応じてタッチ操作を行えることができるようになり、使い勝手が向上する。
【００２５】
請求項９記載のロボット操作装置は、タッチパネルに入力された複数のタッチ操作に対する操作位置をそれぞれ検出し、複数の操作位置が検出された場合に判定領域を設定する。
タッチパネルの場合、上記したようにパネル平面内で二次元方向に指を動かすことにより、例えば操作方向によって対象とする軸を切り替える等の操作を直感的に行うことが可能となる。その反面、ユーザが例えば指でタッチ操作を行うことから、指を正確に縦方向や横方向に移動させたり、縦方向と横方向に同じ量だけ移動させたりすることは難しい。このため、微調整や直線的な動作あるいは回転動作等をさせたい場合において、意図しない軸が動作する等、ユーザの意思に反した動作が発生するおそれがある。
【００２６】
この場合、専用ボタンを設けたり、その都度動作対象を切り替えたりすることにより対処が可能であると考えられる。しかし、そのような構成としてしまうと、切り替え操作を入力する必要があったり、切り替え操作を入力するためにロボットから目を離したりする必要がある。このため、せっかく直感的な操作が可能であるにも関わらず、そのメリットを生かし切れない状況が発生するおそれがある。
【００２７】
そこで、タッチパネルに入力された複数のタッチ操作に対する操作位置をそれぞれ検出し、複数の操作位置が検出された場合に判定領域を設定する。これにより、例えば人差し指でタッチ操作を行っており、その途中で正確に例えば縦方向に動作させたい場合には、例えば親指でタッチパネルに触れることにより、その時点で判定領域が設定される。そして、その判定領域に対する到達位置に基づいて操作対象となる軸を選択することにより、多少指がぶれたとしても、操作対象となる軸が切り替わるといったようなユーザの意思に反した動作の発生を抑制することができる。換言すると、ユーザの意思に沿った動作の実現が可能となる。
したがって、タッチ操作により直観的な操作ができるという長所を生かしつつ、微調整や直線動作させたい場合に意図せぬ方向に動作してしまい操作し難いという短所を克服でき、ティーチング作業の時間短縮等、作業効率を改善することができる。
【００２８】
請求項１０のロボット操作装置は、検出された複数の操作位置のそれぞれに対して判定領域を設定する。
タッチパネルで操作する場合、タッチパネルには、タッチ操作を入力可能な入力範囲がある程度の大きさで設定される。ただし、入力範囲には専用ボタンが設けられている訳ではないので、複数の操作位置が検出された場合、どちらの操作位置が軸を指定するために入力されたものであるのかを把握することができない。
そこで、複数の操作位置が検出された場合には、それぞれに対して判定領域を設定することで、どちらの操作位置からでも軸の設定が可能となる。これにより、使い勝手を向上させることができる。
【００２９】
請求項１１のロボット操作装置は、複数の判定領域が設定された場合、先に判定領域に到達した側の判定領域における到達位置に基づいて、操作対象となる軸を選択する。
複数の判定領域が設定されている場合、どちらの判定領域を採用しても軸の設定は可能である。しかし、例えばユーザが親指と人差し指を用いてタッチ操作を入力した場合等において、親指と人差し指の到達位置が同じになるように指を移動させることは難しいと考えられる。なお、慎重に指を移動させれば到達位置を同じにすることができる可能性もあるが、その場合には、直感的な操作ができるというメリットを消してしまう。
【００３０】
そこで、先に判定領域に到達した側の判定領域における到達位置に基づいて操作対象となる軸を選択することにより、いずれか一方の指を動かせば、軸を選択することができる。また、軸を操作する指を動かす必要が無く、位置がずれてしまうおそれを低減することができる。
【００３１】
請求項１２のロボット操作装置は、検出された複数の操作位置のうち、先に検出された操作位置に対して判定領域を設定する。
例えば二次元方向に指を動かして２軸を同時に操作する２軸モードの途中で、モードを切り替えることなく、１軸だけを操作したいと考えることがある。この場合、例えば人差し指で操作している際に、人差し指で軸を選択する操作も行いたいと考えるユーザが想定される。つまり、軸の操作および軸の選択の２つの指示を、同じ指で行いたいと考えるユーザが想定される。
そこで、検出された複数の操作位置のうち先に検出された操作位置に対して判定領域を設定することにより、軸の操作と軸の選択とを同じ指で行いたいと考えるユーザの要望に応えることができる。
【００３２】
請求項１３のロボット操作装置は、検出された複数の操作位置のうち、後に検出された操作位置に対して判定領域を設定する。
例えば二次元方向に指を動かして２軸を同時に操作する２軸モードの途中で、モードを切り替えることなく、１軸だけを操作したいと考えることがある。この場合、操作する指を移動させた際に位置がずれることを嫌って、軸の操作と軸の選択とを別々の指で行いたいと考えるユーザが想定される。
そこで、検出された複数の操作位置のうち後に検出された操作位置に対して判定領域を設定することにより、軸の操作と軸の選択とを別の指で行いたいと考えるユーザの要望に応えることができる。
【００３３】
請求項１４に記載のロボット操作プログラムは、操作位置検出処理と、座標系設定処理と、判定領域設定処理と、軸選択処理と、操作領域設定処理と、軸切替処理と、を含む処理を実行することにより、操作性や作業効率の低下を招くことなく、さらには、安全性の低下を招くことなく、操作対象となる軸の切り替えを行うことができる等、上記した請求項１に記載のロボット操作装置と同様の効果を得ることができる。
【００３４】
請求項１５に記載のロボット操作プログラムは、操作位置検出処理と、座標系設定処理と、軸選択処理と、操作領域設定処理と、軸切替処理と、を含む処理を実行することにより、操作性や作業効率の低下を招くことなく、さらには、安全性の低下を招くことなく、操作対象となる軸の切り替えを行うことができる等、上記した請求項２に記載のロボット操作装置と同様の効果を得ることができる。
【図面の簡単な説明】
【００３５】
【図１】第１実施形態によるロボット操作装置を適用したロボットシステムの全体を模式的に示す図
【図２】ロボット操作装置の電気的構成を模式的に示す図
【図３】ロボット操作プログラムの処理の流れを模式的に示す図
【図４】タッチ操作を開始した時点での操作態様と判定領域を模式的に示す図
【図５】操作位置が判定領域に到達した状態を模式的に示す図
【図６】操作領域の設定例を模式的に示す図
【図７】操作位置が操作領域内にある状態を模式的に示す図
【図８】操作位置が操作領域から離脱した状態を模式的に示す図
【図９】第２実施形態による操作領域の他の設定例を模式的に示す図その１
【図１０】操作領域の他の設定例を模式的に示す図その２
【図１１】操作態様と操作対象となる軸との他の対応関係を模式的に示す図
【図１２】操作対象となる軸の他の組み合わせ例を模式的に示す図
【図１３】変形例その２による判定領域を模式的に示す図その１
【図１４】判定領域を模式的に示す図その２
【図１５】判定領域を模式的に示す図その３
【図１６】判定領域を模式的に示す図その４
【図１７】判定領域を模式的に示す図その５
【図１８】判定領域を模式的に示す図その６
【図１９】判定領域を模式的に示す図その７
【図２０】判定領域を模式的に示す図その８
【発明を実施するための形態】
【００３６】
以下、本発明の複数の実施形態について、図面を参照しながら説明する。なお、各実施形態において実質的に共通する部位には同一の符号を付して説明する。
（第１実施形態）
以下、第１実施形態について図１から図８を参照しながら説明する。
図１に示すように、ロボットシステム１は、垂直多関節型のロボット２、ロボット２を制御するコントローラ３、コントローラ３に接続されたペンダント４（ロボット操作装置に相当する）を備えている。このロボットシステム１は、一般的な産業用に用いられている。
【００３７】
ロボット２は、いわゆる６軸の垂直多関節型ロボットとして周知の構成を備えており、ベース５上に、Ｚ方向の軸心を持つ第１軸（Ｊ１）を介してショルダ６が水平方向に回転可能に連結されている。ショルダ６には、Ｙ方向の軸心を持つ第２軸（Ｊ２）を介して上方に延びる下アーム７の下端部が垂直方向に回転可能に連結されている。下アーム７の先端部には、Ｙ方向の軸心を持つ第３軸（Ｊ３）を介して第一上アーム８が垂直方向に回転可能に連結されている。第一上アーム８の先端部には、Ｘ方向の軸心を持つ第４軸（Ｊ４）を介して第二上アーム９が捻り回転可能に連結されている。第二上アーム９の先端部には、Ｙ方向の軸心を持つ第５軸（Ｊ５）を介して手首１０が垂直方向に回転可能に連結されている。手首１０には、Ｘ方向の軸心を持つ第６軸（Ｊ６）を介してフランジ１１が捻り回転可能に連結されている。以下、第６軸を、便宜的に手先軸とも称する。
【００３８】
ベース５、ショルダ６、下アーム７、第一上アーム８、第二上アーム９、手首１０およびフランジ１１は、ロボット２のアームとして機能し、アームの先端となるフランジ１１には、図示は省略するが、ハンド（エンドエフェクタとも呼ばれる）が取り付けられる。ハンドは、例えば図示しないワークを保持して移送したり、ワークを加工する工具等が取り付けられたりする。ロボット２に設けられている各軸（Ｊ１〜Ｊ６）には、それぞれに対応して駆動源となるモータ（図示省略）が設けられている。
【００３９】
このような構成のロボット２は、ロボット２を制御する際の基準となる座標系が設定されている。本実施形態の場合、ベース５に対応する座標系として基準座標系ΣＢと、手先軸（Ｊ６）に対応するフランジ座標系ΣＦとが設定されている。基準座標系ΣＢは、ロボット２がどのような姿勢を取ったとしても変化することがない座標系であり、互いに直交するＸＢ軸、ＹＢ軸およびＺＢ軸が設定されている。なお、ＺＢ軸は設置面に垂直な軸となっている。また、フランジ座標系ΣＦは、フランジ１１の向きを手先軸の原点を基準として示す座標系であり、互いに直交するＸＦ軸、ＹＦ軸およびＺＦ軸が設定されている。このうち、ＺＦ軸は、手先軸と同軸に設定されており、ＺＦ軸の向きがフランジ１１の向き、つまり、手先の向きを示している。
【００４０】
コントローラ３は、ロボット２の制御装置であり、図示しないＣＰＵ、ＲＯＭおよびＲＡＭ等で構成されたコンピュータからなる制御手段においてコンピュータプログラムを実行することで、ロボット２を制御している。具体的には、コントローラ３は、インバータ回路等から構成された駆動部を備えており、各モータに対応して設けられているエンコーダで検知したモータの回転位置に基づいて例えばフィードバック制御によりそれぞれのモータを駆動する。また、コントローラ３は、動作指令生成部３ａを有しており、ペンダント４から送信される操作情報（タッチ操作の操作態様を示す情報）に基づいて、ロボット２を動作させるための動作指令を生成する。
【００４１】
ペンダント４は、接続ケーブルを介してコントローラ３に接続されている。ペンダント４は、コントローラ３との間で通信インターフェイス（図２参照。通信Ｉ／Ｆ２４）を経由して有線式あるいは無線式でデータ通信を行う。このため、ユーザがペンダント４に対して入力した各種の操作は、操作情報としてコントローラ３に送信される。
【００４２】
ペンダント４は、ユーザが携帯あるいは手に所持して操作可能な程度の大きさに形成されている。このペンダント４は、図２に示すように、制御部２０、表示部２１、タッチパネル２２、スイッチ２３、通信Ｉ／Ｆ２４、および報知部２５を備えている。制御部２０は、図示しないＣＰＵ、ＲＯＭおよびＲＡＭ等を有するマイクロコンピュータで構成されており、ペンダント４の全体を制御する。例えば、制御部２０は、記憶部（図示省略）に記憶されているコンピュータプログラムを実行することにより、ロボット２の起動や姿勢制御、各種のパラメータの設定等を実行する。
【００４３】
表示部２１は、例えば液晶ディスプレイ等で構成されており、その表示面に対応して、タッチパネル２２が設けられている。スイッチ２３は、例えば電源スイッチ等、ペンダント４の操作に使われる機械的な操作スイッチである。なお、表示部２１にボタン等を表示させてスイッチ２３を代用する構成としてもよい。ユーザ（操作者）は、タッチパネル２２やスイッチ２３に対して種々の操作を入力することにより、ロボット２を手動操作することができる。
【００４４】
例えば、ユーザは、ペンダント４を用いて、ロボット２の姿勢制御等を行うことができる。また、ユーザは、ロボット２をマニュアル操作すなわち手動操作で動作させることにより、目標位置の設定、移動軌跡の設定、手先の向きの設定等、各種の教示作業も行うことができる。このとき、表示部２１には、例えばメニュー画面、設定入力画面、状況表示画面などが必要に応じて表示される。以下、ユーザがタッチパネル２２に対して入力する操作を、タッチ操作と称する。
報知部２５は、例えばスピーカやバイブレータ等で構成されており、ユーザが行った操作に対する応答等を、音声や振動等によりユーザに報知する。
【００４５】
また、ペンダント４は、操作位置検出部２６、座標系設定部２７、判定領域設定部２８、軸選択部２９、操作領域設定部３０、および軸切替部３１を有している。本実施形態では、これら操作位置検出部２６、座標系設定部２７、判定領域設定部２８、軸選択部２９、操作領域設定部３０、および軸切替部３１は、制御部２０により実行されるコンピュータプログラムによってソフトウェア的に実現されている。
【００４６】
操作位置検出部２６は、ユーザがタッチ操作を入力した際の操作位置、つまり、ユーザがタッチパネル２２に触れた位置を検出する。具体的には、操作位置検出部２６は、操作位置を、タッチ操作が入力された際のパネル平面内の座標として検出する。また、操作位置検出部２６は、１回のタッチ操作における操作位置を時系列的に記憶しており、タッチ操作時の操作量（操作位置の変化量）や操作位置が変化した向きを、リアルタイムに検出する。なお、タッチパネル２２を操作するのは、指に限らず、例えばタッチペン等であってもよいが、以下では、説明の簡略化のため、指で触れることを例にして説明する。
【００４７】
座標系設定部２７は、詳細は後述するが、タッチパネル２２のパネル平面に、タッチ操作が開始されたときの操作位置である開始位置（Ｐ０。図４参照）を原点とし、操作対象となるロボット２の軸（例えばＸＦ軸、ＹＦ軸。図４参照）が予め対応付けられている座標系（ＸＹ座標系。図４参照）を設定する。より具体的には、座標系設定部２７は、互いに直交する２つの座標軸（Ｘ軸、Ｙ軸。図４参照）を有し、各座標軸にそれぞれロボットの軸が正負の動作方向とともに予め対応付けられているとともに、第１象限、第２象限、第３象限、第４象限の所定範囲に、各座標軸に対応付けられているロボットの２つの軸がその動作方向とともに対応付けられた座標系を設定する。
【００４８】
判定領域設定部２８は、詳細は後述するが、予め設定された大きさを有する判定領域（Ｒｈ。図４参照）を設定する。本実施形態では、開始位置の周囲に判定領域を設定している。
軸選択部２９は、詳細は後述するが、判定領域に到達したときの操作位置である到達位置（Ｐ１。図５参照）に基づいて、座標軸に対応付けられているロボット２の軸（例えばＸＦ軸、ＹＦ軸。図４参照）のうち、操作対象となる軸を選択する。本実施形態では、開始位置と到達位置との位置関係に基づいて、操作対象となる軸を選択する。また、軸選択部２９は、詳細は後述するが、操作対象として選択した軸が１軸または２軸のいずれであるかに基づいて、１軸である場合には、操作モードとして当該１軸を単独で動作させる単軸モードを設定する一方、２軸である場合には、操作モードとして当該２軸を同時に動作させる２軸モードを設定する。
【００４９】
操作領域設定部３０は、詳細は後述するが、到達位置を中心として予め設定された幅を有する操作領域（Ｒｓ。図６参照）を設定する。より具体的には、操作領域設定部３０は、操作領域を、軸選択部２９で設定された操作モードを継続するための範囲として設定する。なお、本実施形態では、「ＸＦ軸を単独で操作する」操作モードであることから、正側（Ｘ＋側）だけでなく、負側（Ｘ−）側も含む画面全体に、操作領域（Ｒｓ）を設定している。
【００５０】
軸切替部３１は、詳細は後述するが、操作位置が操作領域内であるか否かに基づいて、操作対象となる軸を切り替えるか否かを判定する。より具体的には、軸切替部３１は、詳細は後述するが、操作位置が操作領域から離脱した際、操作モードを単軸モードから２軸モード、または、２軸モードから単軸モードのいずれかに切り替える。
【００５１】
次に、上記した構成の作用について説明する。
ペンダント４は、図３に示す処理を実行している。なお、この図３に示す処理は、制御部２０により実行されるものの、説明の簡略化のため、ここではペンダント４を主体として説明する。また、図示は省略するが、タッチ操作が入力された際の操作位置を検出する操作位置検出処理は、図３の処理と並行して、且つ、リアルタイムで随時行われている。
【００５２】
ペンダント４は、タッチ操作が入力されたか否かを判定しており（Ｓ１）、タッチ操作が入力されていないと判定した場合には（Ｓ１：ＮＯ）、タッチ操作が入力されるのを待機する。
これに対して、ペンダント４は、タッチ操作が入力されたと判定した場合には（Ｓ１：ＹＥＳ）、開始位置を検出し、座標系を設定する（Ｓ２）。このステップＳ２の処理が、座標系設定処理に相当する。具体的には、ペンダント４は、図４（Ａ）に示すようにユーザがタッチパネル２２に触れると、触れた位置を操作位置検出部２６で検出し、その位置を開始位置（Ｐ０）とする。
【００５３】
そして、ペンダント４は、開始位置（Ｐ０）を原点とし、互いに直交する２つの座標軸（Ｘ軸、Ｙ軸）を有し、操作対象となるロボット２の軸に予め対応付けられている座標系（ＸＹ座標系）を、タッチパネル２２のパネル平面に設定する。このステップＳ２の処理が、座標系設定処理に相当する。以下、ユーザがタッチパネル２２を把持した状態における画面の上方向、下方向、右方向、左方向を、それぞれパネル平面の上方向、下方向、右方向、左方向として説明する。
【００５４】
本実施形態の場合、ＸＹ座標系のＸ軸は、パネル平面の左右方向に沿って設けられており、フランジ座標系ΣＦのＸＦ軸に対応付けられている。より詳細には、Ｘ軸は、正方向（パネル平面における右方側。以下、便宜的にＸ＋側とも称する）が、ロボット２をＸＦ軸の正方向へ移動させる操作に対応付けられ、負方向（パネル平面における左方側。以下、便宜的にＸ−側とも称する）が、ロボット２をＸＦ軸の負方向へ移動させる操作に対応付けられている。
【００５５】
また、ＸＹ座標系のＹ軸は、パネル平面の上下方向に沿って設けられており、フランジ座標系ΣＦのＹＦ軸に対応付けられている。より詳細には、Ｙ軸は、正方向（パネル平面における上方側。以下、便宜的にＹ＋側とも称する）が、ロボット２をＹＦ軸の正方向に移動させる操作に対応付けられ、負方向（パネル平面における下方側。以下、便宜的にＹ−側とも称する）が、ロボット２をＹＦ軸の負方向に移動させる操作に対応付けられている。
つまり、これらＸ軸およびＹ軸は、ロボット２をＸＦ軸またはＹＦ軸のいずれか一方に移動させる操作モード（単軸モード）のために設定されている。
【００５６】
また、本実施形態の場合、ペンダント４は、ＸＹ座標系の各座標軸（Ｘ軸、Ｙ軸）に対応付けられている２つの軸（ＸＦ軸、ＹＦ軸）を同時に動かす操作モード（２軸モード）に対応して、ＸＹ座標系の第１象限、第２象限、第３象限、第４象限の所定範囲に、操作対象となる各軸を、その動作方向とともに対応付けている。具体的には、ＸＹ座標系の第１象限は、２軸モード時のＸ＋方向、Ｙ＋方向に対応付けられており、ＸＹ座標系の第２象限は、２軸モード時のＸ−方向、Ｙ＋方向に対応付けられており、ＸＹ座標系の第３象限は、２軸モード時のＸ−方向、Ｙ−方向に対応付けられており、ＸＹ座標系の第４象限は、２軸モード時のＸ−方向、Ｙ＋方向に対応付けられている。
【００５７】
つまり、ＸＹ座標系には、操作対象となる軸が、各座標軸の正負それぞれに対応する４種類、および、上記した第１象限〜第４象限に対応する４種類の合計８種類で設定されている。このため、図４（Ｂ）に示すように、ＸＹ座標系は、開始位置（Ｐ０）を原点として周方向に等分され、単軸モードまたは２軸モードのいずれかに対応付けられている８つの領域（単軸モード用のＸ＋、Ｘ−、Ｙ＋、Ｙ−の４つの領域、２軸モード用のＸ＋Ｙ＋、Ｘ−Ｙ＋、Ｘ−Ｙ−、Ｘ＋Ｙ−の４つの領域）に区分けされることになる。
【００５８】
なお、操作対象となる軸は、図３に示す処理をする前に、あるいは、図３に示す処理を開始する時点で予め設定される。そして、本実施形態ではフランジ１１のＸＹ操作に対応付けているが、操作対象となる軸はこれに限定されるものではなく、各軸操作に対応付けられていてもよい。
【００５９】
続いて、ペンダント４は、開始位置の周囲に、予め設定された大きさを有する判定領域を設定する（Ｓ３）。このステップＳ３の処理が、判定領域設定処理に相当する。このとき、ペンダント４は、開始位置にある指が触れない大きさに判定領域を設定する。このステップＳ３の処理が、判定領域設定処理に相当する。具体的には、ペンダント４は、本実施形態の場合、図４（Ａ）、（Ｂ）に示すように、開始位置（Ｐ０）を中心とし、半径ｒの円環状の判定領域（Ｒｈ）を設定する。換言すると、判定領域（Ｒｈ）は、線分状に形成されており、開始位置（Ｐ０）から判定領域（Ｒｈ）までの間には、不感領域が設定されている。
【００６０】
この判定領域（Ｒｈ）は、ＸＹ座標系には上記したように８つの領域が対応付けられていることから、８つに区分けされる。つまり、判定領域（Ｒｈ）は、単軸モード用のＸ＋、Ｘ−、Ｙ＋、Ｙ−に対応する４つの範囲と、２軸モード用のＸ＋Ｙ＋、Ｘ−Ｙ＋、Ｘ−Ｙ−、Ｘ＋Ｙ−に対応する４つの範囲とに区分けされている。そして、この判定領域（Ｒｈ）により、操作対象となる軸が選択される。
【００６１】
すなわち、判定領域を設定したペンダント４は、操作位置が判定領域に到達したか否かを判定する（Ｓ４）。つまり、ペンダント４は、開始位置（Ｐ０）と判定領域（Ｒｓ）との間に設定されている不感領域を移動する指が、判定領域まで到達したか否かを判定する。ペンダント４は、判定領域に到達していないと判定した場合には（Ｓ４：ＮＯ）、判定領域に到達するのを待機することになる。なお、判定領域に到達することなくタッチ操作が終了した場合つまり指が離れた場合には、ペンダント４は処理を終了する。
【００６２】
これに対して、ペンダント４は、判定領域に到達したと判定した場合には（Ｓ４：ＹＥＳ）、判定領域に到達したときの操作位置を到達位置として検出し（Ｓ５）、開始位置と到達位置との位置関係に基づいて、操作対象となる軸を選択する（Ｓ６）。これらステップＳ５、Ｓ６の処理が軸選択処理に相当する。
具体的には、例えば図５（Ａ）、（Ｂ）に示すように、ユーザが指を動かした結果、操作領域（Ｒｈ）上の点Ｐ１に到達した場合、この点Ｐ１が到達位置に相当する。この図５の例では、到達位置（Ｐ１）は、８つに区分けされた判定領域（Ｒｈ）のうちＸ＋に含まれている。そのため、ペンダント４は、操作対象となる軸がＸＦ軸であり、正方向に移動させる操作がユーザにより入力されたと判定する。
【００６３】
また、本実施形態の場合、ペンダント４は、選択した軸が１軸であることから、ロボット２を操作する際の操作モードを、ロボット２のＸＦ軸のみを動作させる単軸モードに設定する。このように、ペンダント４は、タッチ操作時の操作方向（開始位置から到達位置へ向かう方向。タッチパネル２２から指が離れずに移動した方向）に基づいて操作対象となる軸を選択するとともに、選択した軸が１軸であるか２軸であるかに基づいて、操作モードを単軸モードまたは２軸モードのいずれかに設定する。
【００６４】
さて、操作対象となる軸の選択と操作モードの設定を行うと、ペンダント４は、操作領域を設定する（Ｓ７）。具体的には、ペンダント４は、図６（Ａ）、（Ｂ）に示すように、到達位置（Ｐ１）を中心とし、予め設定された幅（Ｗ）を有する操作領域（Ｒｓ）を設定する。このとき、ペンダント４は、選択された軸がＸＦ軸であることから、操作領域（Ｒｓ）の中心線（ＣＬ）を、ＸＦ軸に対応付けられているＸ軸に沿うように（平行に）設定する。なお、操作領域（Ｒｓ）の幅（Ｗ）は、予め定められている。
【００６５】
この操作領域（Ｒｓ）は、軸選択部２９で設定された操作モード（今回は単軸モード）を継続するための範囲として設定されており、操作位置がこの操作領域（Ｒｓ）に含まれている場合には、ペンダント４は、現在設定されている操作モードを継続する。これは、以下の理由によるものである。
例えば図７に示すように、タッチ操作時にユーザが指を移動させた場合、指が若干ぶれたり、Ｘ軸方向にまっすぐ指を動かしたつもりでも、必ずしもＸ軸に平行に動いていなかったりすることが考えられる。なお図７では、指の移動軌跡（操作位置の履歴）を、破線Ｋにて示している。
【００６６】
このような状況は、ロボット２を見ながら操作するとき、換言すると、ペンダント４の画面を見ないでロボット２を操作するときに、特に発生しやすいと考えられる。そして、そのような状況では、仮にＸ軸から離間するような指の動きであったとしても、それが僅かであれば、ユーザはＸＦ軸のみを動作させたいと考えていると推測できる。
そのため、幅（Ｗ）を有する操作領域（Ｒｓ）を設定すると、ペンダント４は、図３に示すように、検出した操作位置が操作領域から離脱したか否かを判定する（Ｓ８）。このとき、ペンダント４は、操作領域から離脱していないと判定した場合には（Ｓ８：ＮＯ）、タッチ操作が終了したか否かをさらに判定し（Ｓ９）、タッチ操作が終了していない場合には（Ｓ９：ＮＯ）、ステップＳ８に移行して操作位置の検出を繰り返す。
【００６７】
つまり、ペンダント４は、操作位置が操作領域（Ｒｓ）内である場合には、現在の操作モードを継続する。これにより、若干の指のぶれ等を吸収している。これにより、意図せずに操作モードが切り替わってしまうことが防止される。なお、タッチ操作が終了したと判定した場合には（Ｓ９：ＹＥＳ）、処理は終了する。
その一方で、上記したラフティーチング等においては、ユーザは、２軸を同時に動かしたいと考えることがある。この場合、操作モードを切り替えるための操作を入力する構成とすると、作業効率が低下したり、ロボット２から目を離す必要が出て安全性が低下したりするおそれがある。
【００６８】
そこで、ペンダント４は、検出した操作位置が操作領域（Ｒｓ）から離脱したと判定した場合には（Ｓ８：ＹＥＳ）、離脱方向を検出し（Ｓ１０）、操作対象を離脱方向に対応する軸に切り替える（Ｓ１１）。また、本実施形態では、ペンダント４は、操作モードも切り替える。このステップＳ８〜Ｓ１１の処理が、軸切定処理に相当する。
具体的には、ペンダント４は、例えば図８に示すようにユーザが指を画面上方に動かした結果、操作位置が点Ｐ３において操作領域（Ｒｓ）から離脱したとする。この場合、操作位置が操作領域から離脱したことから、ユーザは単軸モードから２軸モードへ移行をしたいと考えていると推測できる。また、ユーザが指を画面上方に動かしていることから、ユーザがロボット２をＸ＋Ｙ＋方向に操作したいと考えていると推測できる。
【００６９】
そのため、ペンダント４は、操作対象となる軸を１軸（ＸＦ軸）から２軸（ＸＦ軸、ＹＦ軸）に切り替えるとともに、操作モードを単軸モードから２軸モードに切り替える。これにより、ユーザは、指の動きによって、換言すると、ペンダント４の表示部２１を見ることなく、操作対象となる軸の切り替え、および、操作モードの切り替えが可能となる。
このとき、ペンダント４は、操作領域を離脱してからの操作量（操作位置の変化量）に応じて、ロボット２を操作する。つまり、図８の例において、操作領域内のある位置（Ｐ２）から上方向に移動し、離脱位置（Ｐ３）にて離脱し、操作領域外のある位置（Ｐ４）まで操作が行われた場合、Ｐ２−Ｐ３間のＹ軸正方向への操作量は排除され、離脱位置（Ｐ３）以降におけるＹ軸正方向への操作量だけが、ＹＦ軸の正側（Ｙ＋側）への操作に反映される。
【００７０】
そして、ペンダント４は、タッチ操作が終了した場合には（Ｓ１２：ＹＥＳ）、処理を終了する。
このように、ペンダント４は、タッチ操作が入力された際の操作位置に基づいて、操作対象となる軸の選択、当該軸を操作する際のロボット２の操作モードの設定、および、操作モードの切り替えを行っている。
【００７１】
以上説明した実施形態によれば、次のような効果を得ることができる。
ロボット操作装置としてのペンダント４は、タッチパネル２２のパネル平面に、操作対象となるロボット２の軸が予め対応付けられている座標系を設定し、予め設定された大きさを有する判定領域を設定する。そして、ペンダント４は、判定領域に到達したときの操作位置である到達位置に基づいて、座標軸に対応付けられているロボット２の軸のうち操作対象となる軸を選択する。
【００７２】
これにより、ユーザは、タッチ操作を開始した位置からの指の操作方向により、操作対象となる軸を選択することができる。
このとき、本実施形態のように開始位置の周囲に判定領域を設定し、開始位置と到達位置との位置関係に基づいて操作対象となる軸を選択することで、タッチ操作を開始する時点から、正確に軸を選択することができる。
【００７３】
また、開始位置から離間した位置に判定領域を設けることにより、判定領域上には、図４等に示すように、操作対象となる各軸を、ある程度の範囲を持った状態で対応付けることができる。このため、判定領域に到達するまでに指が多少ぶれたり、ユーザはＸ軸にそって指を動かしたつもりが実際にはＸ軸から多少ずれたような状態であったりしても、ユーザの意図した通りの軸を操作対象として選択し続けることができる。また、到達位置を中心として操作範囲を設定するので、軸が切り替わるマージンを確保でき、意図せずに動作する軸が切り替わるおそれを低減することができる。
【００７４】
また、ペンダント４は、到達位置を中心として予め設定された幅を有する操作領域を設定し、操作位置が操作領域内であるか否かに基づいて、操作対象となる軸を切り替える。これにより、ユーザは、操作位置を操作領域内から外すことで、つまり、ある程度指を大きく動かすことで、操作対象となる軸を切り替えることができる。
このように、ペンダント４によれば、例えばファインティーチング作業等、操作対象となる軸を頻繁に切り替えるような場合であっても、軸を切り替えるためだけの専用の操作を入力する必要なく、ロボット２を操作している延長上で、軸の切り替えをも行うことができる。
【００７５】
また、操作位置が操作領域からは外れない限りは、換言すると、ユーザが１軸のみを操作したいと考えている場合には、多少指がぶれたとしても、また、指を正確に座標軸に沿って移動させなくても、他方の軸が動作することはないので、意図しない軸が動作することを防止することができる。このため、操作性が向上し、ティーチング時間が短縮できる等、作業効率を改善することができる。
【００７６】
また、指の移動だけで操作対象となる軸の選択および軸の切り替えができることから、また、操作領域を設定することで若干の指のぶれ等が許容されることから、ユーザは、感覚的にロボット２を操作することができる。つまり、ユーザは、ペンダント４の画面を見なくても、換言すると、ロボット２を視認したままで、ロボット２を操作することができる。このため、安全性の低下を招くこともない。
したがって、操作性や作業効率の低下を招くことなく、さらには、安全性の低下を招くことなく、操作対象となる軸の切り替えを行うことができる。
【００７７】
また、ペンダント４は、各座標軸にそれぞれロボット２の２つの軸を正負の動作方向とともに予め対応付け、座標系の第１象限、第２象限、第３象限、第４象限の所定範囲に、各座標軸に対応付けられているロボット２の２つの軸を、その動作方向とともに対応付けている。これにより、ユーザは、１軸または２軸のいずれかで操作対象を選択することができるとともに、各軸の移動方向をそれぞれ個別に選択することができる。
【００７８】
そして、ペンダント４は、操作対象となった１軸または２軸のいずれであるかに基づいて、１軸である場合には、ロボット２を操作する際の操作モードとして当該１軸を単独で動作させる単軸モードを設定する一方、２軸である場合には、操作モードとして当該２軸を同時に動作させる２軸モードを設定し、その操作モードを継続するための範囲として操作領域を設定し、操作位置が操作領域から離脱したか否かに基づいて、操作モードを単軸モードから２軸モード、または、２軸モードから単軸モードに切り替える。
【００７９】
これにより、タッチ操作時に多少指がぶれたとしても、また、指を正確に座標軸に沿って移動させなくても、操作モードが切り替わることはないので、意図しない操作モードの切り替わりを防止することができる。したがって、操作性が悪化してしまうことを防止することができる。
また、ペンダント４において、操作位置検出処理と、座標系設定処理と、判定領域設定処理と、軸選択処理と、操作領域設定処理と、軸切替処理と、を含むロボット操作プログラムを実行することにより、操作性や作業効率の低下を招くことなく、さらには、安全性の低下を招くことなく、操作対象となる軸の切り替えを行うことができる等、上記したロボット操作装置と同様の効果を得ることができる。
【００８０】
（第２実施形態）
以下、第２実施形態について、図９から図１２を参照しながら説明する。
第１実施形態では、操作領域を同一幅に設定したが、到達位置からの距離に応じて変更してもよい。例えば、図９に示すように、到達位置から離間するほど幅狭（Ｗａ＞Ｗｂ）になるように設定することが考えられる。到達位置から比較的近い範囲で指を移動させた場合には、ロボット２の移動距離は、比較的短くなる。一方、到達位置から比較的遠い範囲まで指を移動させた場合には、ロボット２の移動距離は、比較的長くなる。つまり、到達位置からの距離が離れるほど、ユーザは、ロボット２を大きく動かしたいと考えていることになる。
【００８１】
そのため、操作領域を到達位置から離間するほど幅狭に設定することにより、細かくロボット２を動作させたいと考えているユーザに対しては、明確な操作（つまり、操作領域から外れる指の動き）がなければ軸や操作モードが切り替わらないようにすることができる。一方、大きくロボット２を動作させたいと考えているユーザに対しては、少ない指の移動距離で軸や操作モードを切り替えることができるようにし、タッチパネル２２のパネル面で指を移動させるスペースが足りなくなる等の使い勝手の悪化が防止される。
【００８２】
逆に、指が真っ直ぐに移動していない場合には、到達位置から離間するほど、幅方向へのずれが大きくなると予想される。そのため、操作領域の中心線を座標軸に沿って設ける場合には到達位置から離間するほど幅広（つまり、Ｗａ＜Ｗｂ）に設定し、真っ直ぐ動かしているつもりの場合に、意図せずに動作方向が切り替わったり、動作が終了してしまったりするおそれを低減できる。また、操作領域の中心線を操作方向に沿って（つまり、開始位置から到達位置へ向きに沿って）設定する場合には、上記したように到達位置から離間するほど幅狭になるようにするとよい。
【００８３】
第１実施形態では、１つの操作領域を設定する例を示したが、操作対象となる軸または操作モードが切り替えられた際、操作領域から離脱した際の操作位置である離脱位置を中心とする新たな操作領域を設定してもよい。具体的には、例えば図１０に示すように、開始位置（Ｐ０）と到達位置（Ｐ１０）とに基づいて操作対象として２軸が選択されて判定領域（Ｒｓ）を設定し、その後、操作位置が判定領域（Ｒｓ）から離脱した離脱位置（Ｐ１１）を中心とする新たな操作領域（ＲｓＮｅｗ）を設定してもよい。
【００８４】
図１０の例のように離脱した場合には、離脱方向（操作領域（Ｒｓ）からＸ軸側に向かって離脱している）や、離脱後の移動方向（離脱位置（Ｐ１１）からほぼＸ軸に沿った移動軌跡（Ｋ）になっている）等に基づいて、新たな操作領域（ＲｓＮｅｗ）を設定すればよい。これにより、操作対象の軸が切り替えられた場合であっても、その後の操作時には、切り替えられた軸を対象として操作することができ、使い勝手が向上する。この場合、離脱時には、軸だけでなく操作モードを切り替えてもよい。なお、このような処理を実現する場合、例えば、図３のステップＳ１２の処理において、Ｓ１２：ＮＯとなった場合にステップＳ６に移行するようにすればよい。
【００８５】
第１実施形態では、開始位置を基準とした所定の大きさの判定領域を設定することにより、つまり、距離的な概念により軸を選択したが、軸の選択は、時間的な概念に基づいて行うこともできる。即ち、開始位置を起点とする座標系にロボット２の軸と動作方向とを対応付け、タッチ操作が開始されてから予め定められた判定時間が経過したときの操作位置である到達位置がどの動作方向に対応するかによって、軸を選択してもよい。具体的には、例えば図１１（Ａ）に示すように、開始位置（Ｐ０）を起点とするＸＹ座標系に、第１実施形態と同様（図４参照）に開始位置（Ｐ０）を中心として周方向に区分けされた各範囲に動作方向を対応付け、図１１（Ｂ）に示すように、到達位置（Ｐ１）が含まれる範囲（図１１（Ｂ）の場合、Ｘ＋方向）に対応付けられている軸を、動作対象に選択しても良い。
【００８６】
このような構成によっても、ユーザの意図に反して操作対象の軸が切り替わるおそれを低減することができ、上記した実施形態のペンダント４（ロボット操作装置）と同様に、操作性や作業効率の低下を招くことなく、意図しない方向へ動作するおそれを低減することができる等の効果を得ることができる。
【００８７】
第１実施形態ではフランジ座標（ΣＦ）に対応付けた例を示したが、操作対象となる軸は、他の軸であってもよい。つまり、本発明は、ロボット２の各軸操作にも適用することができる。例えば、図１２（Ａ）に示すように、タッチパネル２２に設定されるＸＹ座標系のＸ軸方向にＪ１軸（第１軸。図１参照）を対応付け、Ｙ軸方向にＪ２軸（第２軸。図１参照）を対応付けてもよい。あるは、図１２（Ｂ）に示すように、Ｘ軸方向にＪ６軸（第６軸。図１参照）を対応付け、Ｙ軸方向にＪ５軸（第５軸。図１参照）を対応付けてもよい。このような対応関係であっても、実施形態で説明したように操作領域を設けることで、意図しない方向に動作するおそれを低減できる。
【００８８】
また、図１２のような対応関係の場合、ユーザのタッチ操作時の操作感覚と実際のロボットの動作方向とが一致あるいは類似することから、より操作性が向上すると考えられる。すなわち、Ｊ１軸は、図１に示すように、設置面つまりユーザが立っている面に水平方向に回転する。そのため、ユーザがＸ軸方向に沿った横方向にタッチ操作を入力した場合には、ロボット２は、第１軸が回転することで、アームが横方向に旋回することになる。
【００８９】
また、Ｊ２軸は、図１に示すように、設置面に水平であることから、Ｊ２軸を回転させた場合には、ロボット２のアームは上下に移動することになる。そのため、Ｊ２軸をＹ軸に対応付けることで、また、その動作方向をＹ軸の正負に対応付けることで、ユーザがＹ軸方向に沿って上方向へのタッチ操作を入力した場合には、ロボット２のアームが上方向に旋回し、Ｙ軸方向に沿って下方向へのタッチ操作を入力した場合には、ロボット２のアームが下方向に旋回する。
【００９０】
このため、ユーザの操作感覚と実際のロボット２の動作方向とが一致し、より感覚的に操作することができる。なお、図１２（Ｂ）に示すＪ５軸とＪ６軸の場合には、Ｊ５軸はＪ６軸の向きを上下させ、例えばＪ６軸が下向きの場合にはＪ６軸は水平に回転するので、操作感覚とロボット２の動作とが類似した状態になると考えられる。なお、ＸＹ座標系とロボット２の軸との対応付けは、図１２に例示したものに限らず、適宜設定することができる。
【００９１】
（第３実施形態）
以下、第３実施形態について、図１３から図２１を参照しながら説明する。第３実施形態では、複数の操作位置を検出した場合に判定領域を設定する点において、第１実施形態と異なっている。
【００９２】
ペンダント４は、タッチパネル２２の入力範囲、つまり、本実施形態ではパネル平面のほぼ全域に対して入力された複数のタッチ操作に対する操作位置をそれぞれ検出し、複数の操作位置が検出された場合に、例えば図４（Ｂ）に示したような判定領域（Ｒｈ）を設定する。具体的には、図１３に示すように、ユーザが例えば人差し指を１本で、タッチ操作を入力しているとする。この人差し指が触れている位置を、操作位置（Ｐ０）とする。このとき、ペンダント４は、まだ判定領域を設定しない。
【００９３】
さて、図１４に示すように、入力範囲内の任意の位置にユーザが、例えば親指で操作位置（Ｔ０）に触れたとする。このとき、ペンダント４は、人差し指に対応する操作位置（Ｐ０）を検出している状態において、新たな操作位置（Ｔ０）を検出する。すなわち、ペンダント４は、複数の操作位置を検出する。このため、ペンダント４は、それぞれの操作位置に対して判定領域（Ｒｈ）を設定する。そして、ペンダント４は、２つの判定領域（Ｒｈ）のうち、指が先に到達した方の判定領域（Ｒｈ）の到達位置に基づいて、操作対象となる軸を選択する。
【００９４】
例えば、図１４において人差し指が先に到達位置まで到達した場合には、第１実施形態の図６（Ａ）のように、操作対象となる軸を選択する。同様に、ペンダント４は、図１５に示すように親指が先に到達位置まで到達した場合にも、親指の到達位置に対応する軸を操作対象として選択する。このとき、ペンダント４は、操作領域（Ｒｓ）を、先に検出されていた操作位置（Ｐ０）に対して設定する。これは、操作位置（Ｐ０）が検出されている状態で新たに操作位置（Ｔ０）が検出されたという状況は、操作位置（Ｐ０）が軸を操作するためのタッチ操作であると推定されるためである。
【００９５】
この場合、操作位置（Ｐ０）に対応するタッチ操作にて軸の操作が行われていたことを条件することで、より正確に軸を操作するためのタッチ操作を判定することができる。そして、二次元方向に指を動かして２軸を同時に操作する２軸モードの途中で、モードを切り替えることなく１軸だけを操作することができるため、使い勝手も向上する。なお、操作領域（Ｒｓ）は、第１実施形態と共通するものであり、ペンダント４は、到達位置がＸ＋に対応付けられている場合には、Ｘ＋方向に沿った操作領域（Ｒｓ）を設定する。
【００９６】
なお、複数の操作位置がほぼ同時期、例えば０．５秒といった所定時間内に検出された場合には、指が先に到達した方の到達位置に対して操作領域（Ｒｓ）を設定してもよい。また、例えば操作位置（Ｐ０）が先に検出されている状態で新たに操作位置（Ｔ０）が検出された場合であっても、先に到達位置に到達した操作位置に対して操作領域（Ｒｓ）を設定してもよいし、双方の操作位置に対して操作領域（Ｒｓ）を設定してもよい。これにより、例えば図１５のように親指で軸を選択した場合、親指をそのまま移動させることで軸の操作を行ったりすることができる。
【００９７】
このように、タッチパネル２２に入力された複数のタッチ操作に対する操作位置をそれぞれ検出し、複数の操作位置が検出された場合に判定領域を設定することにより、例えば人差し指でタッチ操作を行っており、その途中で正確に例えば縦方向に動作させたい場合には例えば親指でタッチパネル２２に触れることで、軸を選択するための判定領域を設定することが可能となる。
この場合、複数の操作位置が検出され、軸が選択された後に、軸を選択した操作位置が検出されなくなった場合であって、且つ、他の操作位置が継続して検出されている場合には、継続して検出されている操作位置のその後の変化に応じて、つまり、タッチ操作が継続されている指の移動に応じて、軸を操作するようにしてもよい。すなわち、軸を選択した時点で、軸を選択した指を離したとしても、他の指が継続してタッチ操作を行っている場合には、継続してタッチ操作を行っている指を軸の操作用であると判断してもよい。
【００９８】
したがって、タッチ操作により直観的な操作ができるという長所を生かしつつ、微調整や直線動作させたい場合に意図せぬ方向に動作してしまい操作し難いという短所を克服でき、ティーチング作業の時間短縮等、作業効率を改善することができる。つまり、多少指がぶれたとしても、操作対象となる軸が切り替わるといったようなユーザの意思に反した動作の発生が抑制され、ユーザの意思に沿った動作を実現することができる。また、複数の操作位置のそれぞれに対して判定領域を設定しているため、どちらの操作位置からでも軸の設定が可能となり、使い勝手を向上させることができる。
【００９９】
ところで、軸の操作も、軸の選択も、ロボット２に対する指令という意味では同じものである。そのため、ロボット２に対する指令を、同じ指で入力したいと考えるユーザがいることが想定される。換言すると、軸を操作していた指でそのまま軸の選択もしたいと考えるユーザが想定される。
そこで、図１４のように複数の操作位置に対して判定領域（Ｒｈ）を設定するのではなく、検出された複数の操作位置のうち、先に検出されている操作位置に対して判定領域を設定してもよい。
【０１００】
具体的には、図１３の状態つまりは軸を操作するためであると推定される操作位置（Ｐ０）が検出されている状態で、図１６に示すように新たな操作位置（Ｔ０）が検出された場合には、先に検出された操作位置（Ｐ０）に対して判定領域（Ｒｈ）を設定してもよい。そして、ペンダント４は、図１７に示すように指が移動して判定領域（Ｒｈ）上の操作位置（Ｐ１）に到達すると、つまりは、到達位置が特定されると、当該到達位置に対して操作領域（Ｒｓ）を設定する。これにより、軸の操作および軸の選択という２つの指示を、同じ指で行うことができる。
【０１０１】
このとき、ペンダント４は、後に検出された操作位置（Ｔ０）へのタッチ操作が継続している間は軸を固定するようにしてもよい。つまり、複数の操作位置が検出されている間は、操作対象となる軸の切り替えを無効としてもよい。これにより、操作対象となる軸を切り替えるか否かを、操作位置（Ｔ０）へのタッチ操作により選択することができる。なお、軸を操作する指が判定できている状態であれば、その指によるタッチ操作が終了した時点で、操作対象の固定を解除してもよい。
【０１０２】
また、これとは逆に、２軸を同時に操作する２軸モードの途中で１軸だけを操作したい場合には、操作している指を動かした際にロボット２の位置がずれることを嫌って、軸の操作と軸の選択とを別々の指で行いたいと考えるユーザも想定される。
そのため、検出された複数の操作位置のうち、後に検出されている操作位置に対して判定領域を設定してもよい。具体的には、ユーザが軸を操作するために触れた操作位置（Ｐ０）が検出されている状態で、新たな操作位置（Ｔ０）が検出されたとする。
【０１０３】
新たな操作位置（Ｔ０）が検出されると、ペンダント４は、図１８に示すように、後から検出された側の操作位置（Ｔ０）に対して判定領域（Ｒｈ）を設定する。そして、ペンダント４は、ユーザが親指を移動させて図１９に示すように判定領域（Ｒｈ）に到達した場合には、その到達位置に基づいて操作対象を選択する。このとき、ペンダント４は、軸を操作するために触れている操作位置（Ｐ０）に対して操作領域（Ｒｓ）を設定してもよい。
【０１０４】
このように、検出された複数の操作位置のうち、後に検出された操作位置（Ｔ０）に対して判定領域を設定することにより、先に検出されている操作位置（Ｐ０）の指を動かすことなく、軸を選択することができる。したがって、軸の操作と軸の選択とを別の指で行いたいと考えるユーザの要望に応えることができ、使い勝手を向上させることができる。
【０１０５】
なお、図２０に示すように、判定領域を設定するためのボタン領域（Ｒｔ）を、例えばペンダント４を把持する左手の親指付近に予め設定しておいてもよい。この場合、ペンダント４は、ボタン領域（Ｒｔ）が操作された後に新たな操作位置（Ｐ０）が検出されたときに、操作位置（Ｐ０）に対して判定領域（Ｒｈ）を設定すればよい。あるいは、ペンダント４は、操作位置（Ｐ０）が検出されている状態でボタン領域（Ｒｔ）に新たにタッチ操作を検出した場合に、操作位置（Ｐ０）に対して判定領域（Ｒｈ）を設定してもよい。
【０１０６】
また、図１９に例示した判定領域（Ｒｈ）の位置や大きさ、あるいは、図２０に例示したボタン領域（Ｒｔ）の位置や大きさは、これらに限定されるものではない。例えば、本実施形態では右手でタッチ操作を入力する例を示したが、左手でタッチ操作を入力するユーザを考慮して、判定領域（Ｒｈ）やボタン領域（Ｒｔ）を、右手でペンダントを把持した状態において親指が届く位置に設定してもよい。また、どの位置に設定するかをユーザが選択できるようにしてもよい。
【０１０７】
いずれの場合であっても、操作対処となる軸を容易に選択することができるとともに、操作領域を設定することで指のぶれを吸収できる。したがって、タッチパネル２２を用いる際のメリットを消すことなく、意図しない方向へ動作するおそれを低減することができる。
【０１０８】
（その他の実施形態）
本発明は、上記し且つ図面に記載した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用することができる。本発明は、例えば次のように変形あるいは拡張することができる。
【０１０９】
操作対象となる軸を切り替えたことや操作モードを変更したことを、報知部２５により音声や振動等によりユーザに報知してもよい。これにより、手探りでは状況を把握することが困難なタッチパネル２２を用いてロボット２を操作する場合であっても、操作対象となる軸が切り替わったことや操作モードが切り替わったことを確実に把握することができ、ユーザの心理的な負担を低減することができる。
【０１１０】
実施形態では、操作領域を、その中心線（ＣＬ）が選択された軸に沿うように設定したが、中心線（ＣＬ）が開始位置から到達位置への向きを示す操作方向に沿うように設定してもよい。例えば、図５のように、ＸＦ軸が操作対象に選択されたときの到達位置（Ｐ１）がＸ軸からずれている場合、その後の指の移動距離が長くなるほど、Ｘ軸からさらに離間することになる。この場合、おそらくユーザ自身は指をＸ軸に沿ってまっすぐ移動させたつもりでいることから、操作領域の中心線をＸ軸に平行に設定してしまうと、ユーザが指をそのまま移動させたとき、操作領域から外れて意図せずに軸や操作モードが切り替わってしまうおそれがある。そのため、操作領域を設定する際、その中心線（ＣＬ）をそれまでの操作方向に沿うように設定すれば、ユーザの意図に追従した状態で操作領域を設定できると考えられる。
【０１１１】
各実施形態で示した判定領域や操作領域の大きさは、任意に変更することができる。例えば、実施形態では、予め定められた大きさの操作領域を設定したが、判定領域の大きさ（半径ｒ）に応じて、操作領域の幅（Ｗ）を変更してもよい。この場合、判定領域の大きさは、例えば開始位置等に基づいてタッチ操作が行われるごとに設定し直してもよいし、座標軸に対応付けられたロボット２の軸の種類によって判定領域の大きさを設定してもよいし、予め複数の大きさを登録しておき図４に示す処理を実行するときに判定領域の大きさを選択するようにしてもよい。また、上記したように軸の選択を時間的な概念に基づいて行う場合には、開始位置と判定時間が経過したときの操作位置（到達位置）との距離に応じて操作領域の幅を変更する構成としてもよい。
【０１１２】
第１実施形態では、２軸モードを最初から選択できるようにしたが、各座標軸に対応付けられている２つの軸（例えば、ＸＦ軸、ＹＦ軸）のうちいずれかを単独で操作する単軸モードだけを設定し、操作領域から離脱すると、他方の軸を単軸モードで動作させるような構成であってもよい。操作モード（単軸モード）自体は切り替えずに、操作対象となる軸のみを切り替える構成としてもよい。
第１実施形態では、操作領域から離脱した場合には軸を切り替えたが、操作領域から離脱した場合には、軸を切り替えずに、動作を停止するようにしてもよい。これにより、意図せずに軸が切り替わってしまうおそれを低減することができる。
ロボット操作装置の操作対象としては、実施形態で例示した６軸垂直多関節型のロボット２に限らず、４軸の水平多関節型ロボットでもよい。
【０１１３】
各実施形態ではロボット操作装置をロボット専用のペンダント４で構成したが、これに限らず、汎用のタブレット型端末（いわゆるタブレットＰＣ）やスマートフォン（多機能携帯電話）等にロボット制御用のアプリケーションを導入してロボット操作装置としてもよい。このような構成であっても、上記したペンダント４と同等の機能を実現することができ、同様の効果を得ることができる。
座標系に対応付けられているロボット２の軸を、視認可能に表示部２１に表示してもよい。
【符号の説明】
【０１１４】
図面中、２はロボット、３はコントローラ、４はペンダント（ロボット操作装置）、２２はタッチパネル、２５は報知部、２６は操作位置検出部、２７は座標系設定部、２８は判定領域設定部、２９は軸選択部、３０は操作領域設定部、３１は軸切替部を示す。
【図１】
0006631279.tif 000002
【図２】
0006631279.tif 000003
【図３】
0006631279.tif 000004
【図４】
0006631279.tif 000005
【図５】
0006631279.tif 000006
【図６】
0006631279.tif 000007
【図７】
0006631279.tif 000008
【図８】
0006631279.tif 000009
【図９】
0006631279.tif 000010
【図１０】
0006631279.tif 000011
【図１１】
0006631279.tif 000012
【図１２】
0006631279.tif 000013
【図１３】
0006631279.tif 000014
【図１４】
0006631279.tif 000015
【図１５】
0006631279.tif 000016
【図１６】
0006631279.tif 000017
【図１７】
0006631279.tif 000018
【図１８】
0006631279.tif 000019
【図１９】
0006631279.tif 000020
【図２０】
0006631279.tif 000021