JP6476662B2 - ロボット操作装置、ロボットシステム、及びロボット操作プログラム - Google Patents

ロボット操作装置、ロボットシステム、及びロボット操作プログラム Download PDF

Info

Publication number
JP6476662B2
JP6476662B2 JP2014175753A JP2014175753A JP6476662B2 JP 6476662 B2 JP6476662 B2 JP 6476662B2 JP 2014175753 A JP2014175753 A JP 2014175753A JP 2014175753 A JP2014175753 A JP 2014175753A JP 6476662 B2 JP6476662 B2 JP 6476662B2
Authority
JP
Japan
Prior art keywords
robot
touch
drag
detection unit
selection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014175753A
Other languages
English (en)
Other versions
JP2015083331A (ja
Inventor
大介 川瀬
大介 川瀬
章 小川
章 小川
大介 由井
大介 由井
基希 金田
基希 金田
由信 大橋
由信 大橋
博太 當眞
博太 當眞
淳子 菅野
淳子 菅野
慧 井手
慧 井手
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2014175753A priority Critical patent/JP6476662B2/ja
Priority to CN201480062089.2A priority patent/CN105722650B/zh
Priority to TW103132582A priority patent/TWI654055B/zh
Priority to US15/023,622 priority patent/US10076839B2/en
Priority to PCT/JP2014/074891 priority patent/WO2015041332A1/ja
Priority to DE112014004307.9T priority patent/DE112014004307B4/de
Publication of JP2015083331A publication Critical patent/JP2015083331A/ja
Application granted granted Critical
Publication of JP6476662B2 publication Critical patent/JP6476662B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/06Control stands, e.g. consoles, switchboards
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1658Programme controls characterised by programming, planning systems for manipulators characterised by programming language
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/409Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using manual data input [MDI] or by using control panel, e.g. controlling functions with the panel; characterised by control panel details or by setting parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36168Touchscreen
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40392Programming, visual robot programming language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Manufacturing & Machinery (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Description

本発明は、ロボットを手動操作する際に用いられるロボット操作装置、そのロボット操作装置を備えたロボットシステム、及びそのロボットシステムに用いられるロボット操作プログラムに関する。
例えば産業用のロボットシステムにおいては、ロボットを手動により動作させること(マニュアル動作)が可能となっている。このような動作は、例えば教示作業(ティーチング)などを行う際に利用される。この場合、ユーザは、ロボットを制御するコントローラに接続されたペンダント(ティーチングペンダント)などを用いて、手動でロボットの操作を行うことになる。そのため、ペンダントには、手動操作を行うための専用の各種操作キー(機械的なスイッチからなるキー)が設けられている(例えば特許文献1参照)。
特開2006−142480号公報
ペンダントの表示部には、タッチ操作可能なタッチパネルが用いられることが多い。上記手動操作を、このようなタッチパネルなどを利用したタッチ操作により行えるようにすれば、専用の操作キーを設ける必要が無くなり、ペンダントの小型化(あるいは表示部の画面サイズの拡大)、低価格化などを実現できるといった効果が期待できる。しかし、専用の操作キーと同様のタッチスイッチをタッチパネル上に形成するといった単純な置き換えだけでは、次のような問題が生じる。
すなわち、物理的な操作キーの場合、ユーザは、その操作の熟練度にもよるが、ペンダントを直視しなくても、操作しようとする操作キーの位置を手探りで把握することが可能である。これに対し、タッチパネル上に形成されるタッチスイッチの位置は、操作キーとは異なり、手探りで把握することはできない。ロボットの手動操作が行われる際、ユーザがロボットから視線を逸らさないつまりペンダントを直視しないということは、安全性の面から極めて重要なことである。しかし、操作キーを単純にタッチスイッチに置き換えた場合、ユーザは、操作の度にペンダントの表示部を見る必要が生じ、その際にはロボットから視線を逸らさざるを得ないため、安全性が低下するおそれがある。
本発明は上記事情に鑑みてなされたものであり、その目的は、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができるロボット操作装置、そのロボット操作装置を備えたロボットシステム、及びそのロボットシステムに用いられるロボット操作プログラムを提供することにある。
(請求項1)
請求項1に記載のロボット操作装置は、ユーザからタッチ操作の入力を受けるタッチパネルと、タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、を備える。つまり、ロボット操作装置は、ロボットの手動操作をタッチ操作により実現するものである。このロボット操作装置の操作対象となるロボットは、複数の駆動軸を有する多関節型のロボットである。多関節型のロボットを手動操作する場合、ロボットの手先を基準として複数の駆動軸を組み合わせて駆動させるか、又は各駆動軸を個別に駆動させるか、のいずれかの態様が考えられる。以下の説明では、前者のロボットの手先を基準とした態様を手先系の動作と称し、後者の各駆動軸を個別に駆動させる態様を各軸系の動作と称する。
一般に、ロボットの手動操作は、例えばロボットの調整の最終段階における微調整のために用いられることが多い。そのため、ロボットの手動操作においては、ロボットの手先を基準とした細かい動作が可能であれば十分である。この場合、手先系の動作では、水平移動動作と称するロボットの手先をロボットの動作基準面に対して水平な平面方向に移動させる動作と、垂直移動動作と称するロボットの手先を動作基準面と直交する垂直軸方向に移動させる動作と、回転動作と称するロボットの手先を垂直軸回り方向へ回転させる動作と、を実行可能であれば十分であると考えられる。
したがって、ロボット操作装置は、手先系の動作を実行する場合、少なくとも3つの動作態様、すなわち水平移動動作と、垂直移動動作と、回転動作と、を適宜切り替えて動作させることができるようにする必要がある。また、ロボット操作装置は、各軸系の動作を行おうとする場合、各駆動軸を適宜切り替えて動作させることができるようにする必要がある。しかし、一般的なタッチパネルは、画面をX−Y平面とした場合のX方向及びY方向の入力、すなわちユーザが画面をなぞるような2次元の入力を検出するものが多い。したがって、ロボット操作装置にタッチパネルを採用する場合、2次元の入力つまり2種類の操作入力で、複数種類の動作を切り替えて実行可能にすることが必要である。しかも、その操作は、ユーザにとって直感的で、かつ極力画面を直視せずに行えることが要求される。
そこで、請求項1に記載のロボット操作装置は、選択操作検出部を備える。選択操作検出部は、操作対象にするロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出するためのものである。そして、動作指令生成部は、操作判断処理と、動作指令生成処理と、を行うことができる。操作判断処理は、選択操作検出部で検出した選択操作に基づいて操作対象にするロボットの駆動軸又は動作態様を決定する処理である。また、操作判断処理は、タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する処理である。
ここで、ドラッグ操作とは、ユーザの指でタッチパネルをタッチした状態のままその指を移動させる操作である。すなわち、ドラッグ操作は、ユーザの指がタッチパネルに接触した状態で一定距離連続して移動させる操作である。ドラッグ操作であるか否かの判断には、その軌跡が直線状であるか曲線状であるかの判断は含まれない。すなわち、ドラッグ操作には、直線状の操作のみならず、曲線状の操作も含まれる。ドラッグ操作は、タッチパネル上において、操作の始点と終点が決まればよい。操作の始点とは、タッチパネル上においてユーザが指をタッチした位置である。操作の終点とは、タッチパネルからユーザが指を離した位置である。この場合、ドラッグ操作には、いわゆるフリック操作と称される、ユーザがタッチパネル上で指を弾くような操作も含まれる。また、ロボットの移動量には、実際にロボットが移動する量つまりロボットの移動距離のみならず、ロボットの移動速度又は移動時間も含まれる。これは、移動速度と移動時間とが決定されれば、移動距離が決定するためである。
請求項1に記載のロボット操作装置によれば、ユーザは、選択操作を行うことで、ロボットの操作対象となる駆動軸又は動作態様を選択することができる。また、ユーザは、タッチパネルにドラッグ操作を行うことで、そのドラッグ操作の移動量に応じて、ロボットの移動量を決定することができる。ドラッグ操作は、ユーザの指が直接又は間接的にタッチパネルに触れて行われる。そのため、ユーザは、そのドラッグ操作の操作量などの情報を、触覚を通して直接得やすい。すなわち、ユーザは、ドラッグ操作の操作量を、視覚を通じなくても、比較的高い精度で得ることができる。したがって、ユーザは、少なくともロボットの移動量を決定するための操作については、画面を直視することなく感覚的に行うことができる。そのため、ロボット操作装置は、タッチパネルを採用しつつ、ユーザが画面を直視しなくても直感的な操作を可能にすることができる。その結果、操作性の向上が図られ、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができる。また、操作性が向上することによって、教示に要する時間の短縮を図ることができる。
実施形態に記載のロボット操作装置において、選択操作検出部は、タッチパネルに表示されたボタン又はタッチパネルとは異なるボタンに対する操作を検出するものである。また、操作判断処理は、選択操作検出部で検出した操作に基づいて、操作対象にする駆動軸又は動作態様を決定する処理を含んでいる。これによれば、ユーザは、タッチパネル上に表示されたボタン又はタッチパネルとは異なるボタンに対して操作をすることで、操作対象にする駆動軸又は動作態様を選択することができる。
この場合、ユーザは、これらのボタンを操作するために、若干の間、これらのボタンを直視する可能性もある。しかし、通常のロボットの使用態様において、操作対象にする駆動軸又は動作態様を選択する(切り替える)ための操作は、ロボットの駆動前つまりロボットが実際に動作していない時に行われることがほとんどである。また、これらのボタンの形状や大きさ、色等の設定を工夫することにより、ユーザがボタンを直視する時間を短縮することもできる。したがって、ユーザが、タッチパネル上に表示されたボタン又はタッチパネルとは異なるボタンを操作するために、若干の間それらのボタンを直視しても、安全性の低下への影響は少ないと考えられる。
むしろ、このような構成によれば、ユーザには、駆動軸又は動作態様を切り替えるためにボタンを操作する、という意志が働く。したがって、ユーザは、これらのボタンに対する操作が、操作対象にする駆動軸又は動作態様を選択するための操作であることを意識し易くなる。したがって、これによれば、ユーザが誤った操作をすることにより、誤った操作対象が選択されてロボットの誤作動を招く危険性が低減される。よって、操作性の向上が図られ、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができる。また、操作性が向上することによって、教示に要する時間の短縮を図ることができる。
(請求項
請求項に記載のロボット操作装置によれば、選択操作検出部は、タッチパネルに対するタッチ操作を検出するものである。また、操作判断処理は、選択操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の指の本数若しくは操作方向、又は指の本数及び操作方向に基づいて、操作対象になる駆動軸又は動作態様を決定する処理を含んでいる。
これによれば、ユーザは、ドラッグ操作の指の本数若しくは操作方向、又は指の本数及び操作方向を変えることで、ロボットの動作を切り替えることができる。したがって、ロボット操作装置は、タッチパネルを採用しつつ、ユーザが画面を直視しなくても直感的な操作を可能にすることができる。その結果、操作性の向上が図られ、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができる。また、操作性が向上することによって、教示に要する時間の短縮を図ることができる。
(請求項
請求項に記載のロボット操作装置よれば、ユーザは、1本又は2本指のドラッグ操作によって、手先系の動作で多用される動作、具体的には、水平移動動作、垂直移動動作、及び手先の回転動作を行うことができる。すなわち、このロボット操作装置によれば、ユーザは、1本の指によるドラッグ操作によって、ロボットに水平移動動作を行わせることができる。また、ユーザは、2本指によるドラッグ操作によって、ロボットに垂直移動動作または回転動作を行わせることができる。
上述したような各動作を実現するため、動作指令生成部は、第1操作判断処理と、第2操作判断処理と、第3操作判断処理と、を含んでいる。第1操作判断処理は、検出されたタッチ操作が1本指によるドラッグ操作である第1操作であるか否かを判断する処理である。第2操作判断処理は、検出されたタッチ操作が2本指によるドラッグ操作であって所定の方向への操作である第2操作であるか否かを判断する処理である。第3操作判断処理は、検出されたドラッグ操作が2本指によるドラッグ操作であって第2操作と異なる方向への操作である第3操作であるか否かを判断する処理である。
また、動作指令生成部は、動作指令生成処理として、水平移動動作指令生成処理と、垂直移動動作指令生成処理と、回転動作指令生成処理と、を行う。水平移動動作指令生成処理は、第1操作判断処理において第1操作であると判断した場合にロボットの手先をロボットの動作基準面に対して水平な平面方向に移動させるための動作指令を生成する処理である。垂直移動動作指令生成処理は、第2操作判断処理において第2操作であると判断した場合にロボットの手先を動作基準面と直交する垂直軸方向に沿って移動させるための動作指令を生成する処理である。回転動作指令生成処理は、第3操作判断処理において第3操作であると判断した場合にロボットの手先を回転させるための動作指令を生成する処理である。動作指令生成処理において生成した上記各動作指令は、コントローラへ送信される。そして、コントローラは、上記各動作指令に基づいてロボットの動作を制御する。これにより、水平移動動作と、垂直移動動作と、回転動作と、が適宜実行される。
この記載のロボット操作装置は、所定の操作が行われると、その操作からユーザが連想し易いと考えられる動作をロボットに実行させるようになっている。すなわち、上記したように、ロボット操作装置は、1本の指によるドラッグ操作が行われると、その操作からユーザが連想し易いと考えられる動作、この場合、手先の水平移動動作をロボットに実行させるようになっている。この操作からロボットの手先の水平移動動作が連想されるという根拠は、人間の視覚・触覚情報などに基づくものであり、例えば次のような点にある。すなわち、タッチ操作の対象となるタッチパネルは、一般的に平面であり2次元の座標系が形成されている。そして、1本指によるドラッグ操作が行われる場合、そのような平面に沿って1つのタッチ箇所が移動するという形態となる。つまり、この場合、1本指によるタッチ箇所が平面上を移動するということとロボットが平面方向に移動するということに密接な関連性があると考えられる。したがって、ユーザは、ロボットの手先の水平移動と、画面上の平面方向への操作とを、関連して認識し易い。
(請求項
請求項に記載のロボット操作装置において、上述の第2操作は、2本指による直線方向へのドラッグ操作であって且つそのドラッグ操作が行われている期間に各指間の距離が次第に短くなる操作、または次第に長くなる操作である。この場合、直線方向へのドラッグ操作とは、タッチパネルの画面上の任意の直線方向への操作を意味し、画面に対して縦方向、横方向、斜め方向等の相対的な関係は問わない。また、上述の第3操作は、2本指による円周方向へのドラッグ操作である。この場合、円周方向へのドラッグ操作とは、2本指によるドラッグ操作のうち少なくとも一方に回転成分が含まれている操作を意味する。
そして、垂直移動動作指令生成処理は、接近指令生成処理と、離反指令生成処理と、を含んでいる。接近指令生成処理は、第2操作が各指間の距離が次第に長くなるものである場合にロボットの手先を動作基準面に近づく方向すなわち下方へ移動させるための動作指令を生成する処理である。離反指令生成処理は、第2操作が各指間の距離が次第に短くなるものである場合にロボットの手先を動作基準面から離れる方向すなわち上方へ移動させるための動作指令を生成する処理である。垂直移動動作指令生成処理によって生成された動作指令は、通信部からコントローラへ送信される。そして、通信部から動作指令を受けたコントローラは、その動作指令に基づいてロボットの動作を制御する。これにより、上方又は下方への垂直移動動作が実行される。
上記したように、ロボット操作装置は、2本指による直線方向へのドラッグ操作であって且つそのドラッグ操作が行われている期間に各指間の距離が次第に長くなる操作が行われると、その操作からユーザが連想し易いと考えられる動作、この場合、手先の下方への垂直移動動作をロボットに実行させるようになっている。2本の指の間の距離が次第に長くなるように行われるドラッグ操作から、ロボットの手先の下方向への垂直移動動作が連想されるという根拠は、次の2つの点にある。このような操作が行われる際、2本の指を押し広げるような形態となる。そして、その押し広げるということがユーザに下方向への移動を連想させると考えられる。これが、1つ目の根拠である。また、上述した操作は、一般にはスプレッド操作又はピンチアウト操作と呼ばれ、画像などを拡大する際に用いられることが多い。そして、ロボットの手先に動作基準面に配置されたワークなどの対象物を撮影するためのカメラが取り付けられている場合であれば、手先が下方向へ移動すると、カメラによる撮影画像が拡大されることになる。つまり、この場合、各指間の距離が長くなるすなわち2本の指の間隔が広がるということと、画像が拡大するということに強い関連性がある。これが、2つ目の根拠である。
また、上記したように、ロボット操作装置は、2本指による直線方向へのドラッグ操作であって且つそのドラッグ操作が行われている期間に各指間の距離が次第に短くなる操作が行われると、その操作からユーザが連想し易いと考えられる動作、この場合、手先の上方への垂直移動動作をロボットに実行させるようになっている。この2本の指の間の距離が次第に短くなるように行われるドラッグ操作から、ロボットの手先の上方向への垂直移動動作が連想されるという根拠は、次の2つの点にある。このような操作が行われる際、2本の指を吊り上げるような形態となる。そして、その吊り上げるということがユーザに上方向への移動を連想させると考えられる。これが、1つ目の根拠である。また、上述した操作は、一般にはピンチ操作又はピンチイン操作と呼ばれ、画像などを縮小する際に用いられることが多い。そして、ロボットの手先に前述したカメラが取り付けられている場合であれば、手先が上方向に移動すると、カメラによる撮影画像が縮小されることになる。つまり、この場合、各指間の距離が短くなるすなわち2本の指の間隔が狭くなるということと、画像が縮小するということに強い関連性がある。これが、2つ目の根拠である。
また、上記したように、ロボット操作装置は、2本指による円周方向へのドラッグ操作すなわち2本指のいずれかによる回転操作が行われると、その操作からユーザが連想し易いと考えられる動作、この場合、手先の回転動作をロボットに行うようになっている。2本指のいずれかによる回転操作から回転動作が連想されるという根拠は、次の点にある。すなわち、ロボットの手先部分には、例えばフランジなどの円筒形の部材が取り付けられていることが多い。つまり、ロボットの手先は、丸みを帯びた形状になっていることが多い。そして、回転操作が行われる場合、手先が円弧を描きながら回転するといった形態となる。つまり、この場合、その手先が円弧を描きながら回るということが、ユーザに対し、丸みを帯びたものを回転させる、つまりロボットの手先を回転させるということを連想させると考えられる。
このように、ロボット操作装置を用いた各操作は、その操作により実行されるロボットの動作をユーザが直感的に連想可能であり、且つシンプルな操作となっている。そのため、ユーザは、自身の手元つまり操作箇所を見ることなく、各操作を行うことができる。従って、ロボットの手動操作が行われる際、ユーザがロボットから視線を逸らすことがなくなり、その安全性を良好に維持することができる。このように、本手段によれば、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができるという優れた効果が得られる。
(請求項
請求項に記載のロボット操作装置において、第2操作は、タッチパネル上における縦方向への操作である。また、第3操作は、タッチパネル上において前記縦方向に直交する横方向への操作である。この場合、タッチパネル上における縦方向とは、ロボット操作装置を持ったユーザに対して離接する方向を意味する。また、タッチパネル上における横方向とは、ロボット操作装置を持ったユーザに対して平行方向を意味する。
このロボット操作装置は、2本指による直線方向の操作が行われると、その操作からユーザが連想し易いと考えられる動作をロボットに実行させるようになっている。この場合、ロボット操作装置は、2本指によるドラッグ操作であって縦方向への操作(第2操作)が行われた場合には、ロボットの手先を垂直方向へ移動させる垂直移動動作を行わせるようになっている。この操作からロボットの手先の垂直移動動作が連想されるという根拠は、人間の視覚・触覚情報などに基づくものであり、例えば次のような点にある。すなわち、ユーザは、ロボット操作装置を、ユーザの腰から胸の間で持つことが多い。そしてこの場合、画面の視認性やタッチパネルの操作性を考慮すると、ユーザは、タッチパネルの画面がユーザ側へ向かって下方に傾斜するような姿勢で、ロボット操作装置を持つことが自然である。このような姿勢でユーザがロボット操作装置を持つと、ロボット操作装置の画面の縦方向つまり上下方向と、ロボットの手先の垂直方向つまり上下方向とが一致する。したがって、ユーザは、タッチパネルの画面上の縦方向への操作と、ロボットの手先の垂直移動動作とを、関連して認識し易い。
また、ロボット操作装置は、2本指によるドラッグ操作であって横方向への操作(第3操作)が行われた場合には、ロボットの手先を回転させる回転動作を行わせるようになっている。この操作からロボットの手先の回転動作が連想されるという根拠は、人間の視覚・触覚情報などに基づくものであり、例えば次のような点にある。すなわち、ロボットの手動操作は、ロボットの微調整のために行われることが多い。そのため、手動操作の際に、ロボットの手先は、下方を向いていることが多い。この場合、手先の回転軸は、水平面に対して直角すなわち垂直方向へ向いている。この状態でロボットの手先を水平方向に見た場合、ロボットの手先が回転することで、ロボットの手先のある一点が水平方向に直線的に移動しているように見える。そのため、ユーザは、タッチパネルに対する横方向への操作が、ロボットの手先の回転動作を連想させると考えられる。したがって、ユーザは、タッチパネルに対する横方向への操作と、ロボットの手先の回転動作とを、関連して認識し易い。
(請求項7)
請求項に記載のロボット操作装置において、選択操作検出部は、タッチパネルに対するタッチ操作を検出するものである。また、動作指令生成処理は、駆動軸選択処理を含んでいる。駆動軸選択処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する処理である。すなわち、このロボット操作装置は、ドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とを変えることによって、各軸系の動作において各駆動軸を切り替えて動作させることができる。これにより、ロボット操作装置にタッチパネルを採用した場合であっても、各軸系の動作を問題無く行うことができる。さらに、ユーザは、ドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とを変えることで、直感的に駆動軸を切り替えることができる。したがって、ロボット操作装置は、タッチパネルを採用しつつ、ユーザが画面を直視しなくても直感的な操作を可能にすることができる。
(請求項
請求項に記載のロボット操作装置において、駆動軸選択処理は、第1駆動軸選択処理と、第2駆動軸選択処理と、を含んでいる。第1駆動軸選択処理は、ドラッグ操作の操作方向がタッチパネル上における縦方向である場合に、第1群の駆動軸の中から駆動させる一の駆動軸を選択する処理である。この場合、第1群の駆動軸とは、ロボットの手先を、ロボットの動作基準面に対する垂直方向へ移動させることができる駆動軸を意味する。また、第2駆動軸選択処理は、検出されたドラッグ操作の操作方向がタッチパネル上において縦方向に直交する横方向又は円周方向である場合に、第1群の駆動軸以外の駆動軸の中から駆動させる一の駆動軸を選択する処理である。
上述したように、ユーザは、タッチパネルの画面上の縦方向への操作と、ロボットの手先の垂直方向への動作とを、関連して認識し易い。また、上述したように、ユーザは、タッチパネルの画面上の横方向又は円周方向への操作と、ロボットの手先の回転動作とを、関連して認識し易い。すなわち、請求項に記載のロボット操作装置によれば、軸毎に駆動軸を動作させる際に、手先の移動方向と、操作方向とを関連して認識し易くなる。したがって、このロボット操作装置によれば、操作性の更なる向上が図られる。
(請求項
請求項に記載のロボット操作装置において、駆動軸選択処理は、ドラッグ操作の指の本数の増加に伴いロボットのベース側の駆動軸から手先側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する。一般に、多関節型のロボットの駆動軸は、ベース側の手先側へ向かって順に、第1軸、第2軸、第3軸・・・と軸の番号が増加するように設定される。この場合、ユーザは、操作に要する指の本数を増加させることで、駆動させる軸の番号を増加させることができる。そのため、ユーザは、操作に要する指の本数と、駆動させる駆動軸との関連を認識し易くなる。
また、多関節型のロボットにおいては、駆動される駆動軸がベース側に近づくほど、その駆動が手先へ与える影響つまり手先の移動量は大きくなる。一方、ユーザは、操作に要する指の本数が少なくなるほど、より精密な操作を行うことができると考えられる。このロボット操作装置では、ユーザは、駆動させる駆動軸がベース側に近づくほどすなわちロボットの手先への影響が大きい駆動軸ほど、少ない指の本数で精密な操作ができるようになっている。これらの結果、操作性の更なる向上が図られる。
(請求項
請求項に記載のロボット操作装置において、駆動軸選択処理は、ドラッグ操作の指の本数の増加に伴いロボットの手先側の駆動軸からベース側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する。すなわち、請求項に記載の駆動軸選択処理は、請求項7、8に記載の駆動軸選択処理と逆の順番で駆動軸を決定する。ロボットの手動操作は、ロボットの手先の位置の微調整に用いられることが多い。したがって、ロボットの各軸系の手動操作では、ベース側の駆動軸に比べて、ロボットの手先に近い駆動軸の方が、より多く駆動されると予想できる。このロボット操作装置では、ユーザは、駆動させる駆動軸がロボットの手先に近づくほどすなわちより多く駆動される駆動軸ほど、少ない指の本数で精密な操作ができるようになっている。この結果、操作性の更なる向上が図られる。
ユーザは、ロボットの手動操作を行う際、ロボットが意図したとおりに動作しているか否かを確認し易くするため、各動作(水平移動動作、垂直移動動作および回転動作)を、それぞれ独立して実行することが多い。例えば、最初に平面移動を行い、続いて垂直移動動作を行い、最後に回転動作を行う、といった具合である。このような事情から、ロボットの手動操作が行われる際、敢えて複数の動作が同時に(ミックスして)行われることは少ない。従って、ロボットの手動操作が行われる際には、複数の動作の同時実行を許容しないほうが望ましい。そのためには、各動作を行うための操作の線引き(切り分け)を明確にする必要がある。各動作を行うための操作の線引きが曖昧であると、複数の動作がミックスされた動作が行われ、その結果、ユーザの意図しない動作が行われる(誤動作が生じる)可能性が高まるからである。このような誤動作が発生する可能性を一層低く抑えるべく、各操作の切り分けを明確にするためには、請求項5、8、9に記載の手段を採用するとよい。
(請求項
請求項に記載のロボット操作装置によれば、動作指令生成部は、タッチ操作された箇所が1つ検出されると、その検出時点から所定の許容遅延時間が経過した後にタッチ操作の指の本数を判断する。ユーザが複数本の指によるタッチ操作を行った場合、それら複数本の指によるタッチのタイミングが完全に一致することは難しい。そのため、例えばある動作を行うべく、2本の指によるタッチ操作が行われたとしても、一方の指によるタッチが行われた時点において、一旦、意図しない他の動作が行われ、その後、他方の指によるタッチが行われた時点において、本来意図する動作が行われることになる。
このロボット操作装置によれば、複数本の指によるタッチのタイミングのずれが、許容遅延時間未満であれば、その複数本の指によるドラッグ操作であると判断される。つまり、複数本の指によるタッチのタイミングのずれが許容遅延時間までは許容される。そのため、人間の操作によるタイミングのずれとして考えられる最大値などに基づいて許容遅延時間を設定しておけば、一旦、意図しない動作が行われるといった誤動作の発生を確実に防止することができる。
(請求項10
請求項10に記載のロボット操作装置によれば、動作指令生成部は、複数本の指によるドラッグ操作が、円周方向への操作であるか否かについて次のように判断する。すなわち、動作指令生成部は、複数本の指によるタッチ操作において、その複数本の指のうち指のタッチ位置の距離が最も遠い2本の指を抽出する。そして、動作指令生成部は、その2本の指のいずれかの指の移動に係るベクトルと、その2本の指間のベクトルとが成す角度が判定閾値未満である場合、そのドラッグ操作が円周方向への操作でないと判断し、上記角度が判定閾値以上である場合、そのドラッグ操作が円周方向への操作であると判断する。
ユーザが、ある動作を行うべく、例えば複数本の指によるドラッグ操作を行う際、各指を完全に直線状に移動させることは難しい。そのため、ユーザが、ある動作を行うべく、複数本の指を直線状に移動させようとした場合であっても、いずれかの指が僅かでも直線状に移動しなかった場合には、そのドラッグ操作が円周方向への操作であると判断されるおそれがある。この場合、意図しない他の動作が行われることになる。
すなわち、このロボット操作装置によれば、例えば2本の指が完全に直線状に移動せず、多少の曲線つまり円弧を描くように移動したとしても、そのドラッグ操作は、2本指による直線状のドラッグ操作であると判断される。そのため、人間の操作によるずれ(直線に対してどの程度曲がるか、ということ)として考えられる最大値などに基づいて判定閾値を設定しておけば、複数本の指による直線方向へのドラッグ操作が、円周方向への操作であると判断されて、意図しない他の動作が行われるといった誤作動の発生を抑制することができる。
(請求項
請求項に記載のロボット操作装置によれば、選択操作検出部は、タッチパネルに対するタッチ操作を検出するものである。すなわち、ユーザは、タッチパネルに対してタッチ操作をすることにより、操作対象にするロボットの駆動軸又は動作態様を選択することができる。そして、動作指令生成部は、ドラッグ操作の方向を、駆動軸又は動作態様毎に異なる方向になるように割り振っている。この場合、ロボット操作装置は、各軸系又は手先系の動作が可能である。ロボットの動作態様としては、手先系の動作について、水平移動動作、垂直移動動作、及び手先の回転動作がある。
このロボット操作装置によれば、ユーザは、ドラッグ操作の方向を変えることで、操作対象にする駆動軸又は動作態様すなわち動作の種類を選択することができる。したがって、ユーザは、動作の種類を選択するための複雑な操作を習得する必要がなく、操作が容易となる。その結果、安全性の低下を招くことなく、ロボットの手動操作をタッチ操作により実現することができる。
また、このロボット操作装置は、ドラッグ操作の指の本数を問題としないことから、ユーザは、指1本で入力操作を行うことができる。すなわち、このロボット操作装置は、ユーザが指1本で容易に操作することができるという利点を備えている。そして、この利点は、いわゆるタッチペンやスタイラスペンといったポインティングデバイスを利用する際にも有効である。すなわち、産業用ロボットの動作環境を考慮すると、ユーザの安全を確保するためにユーザが手袋を装着していたり、ユーザの手指に潤滑油等のタッチ操作を阻害する物質が付着していたりする可能性がある。この場合、ユーザが手指でタッチ操作を行っても、ロボット操作装置がそのタッチ操作を正確に認識しない可能性がある。一方、ユーザが手袋を装着していたり、ユーザの手指に潤滑油等が付着していたりする場合であっても、ユーザは、上述したポインティングデバイスを利用することで、正確なタッチ操作を行うことができる。このような理由から、ロボット操作装置が産業用ロボットを操作対象とする場合、上述のポインティングデバイスを容易に利用できることは、利点である。
(請求項11
請求項11に記載のロボット操作装置によれば、動作指令生成部は、ドラッグ操作を検出した場合にそのドラッグ操作が終了するまでの期間そのタッチ操作によるタッチ箇所の近傍における所定範囲内の領域に対するタッチ操作の検出を無効化する。例えば1本指によるドラッグ操作は、右手または左手の人差し指で行われることが多い。そのため、上記操作が行われる際、その操作を行う人差し指と同じ側の手の親指による誤タッチが生じる可能性がある。このような意図しない指による誤タッチを検出してしまうと、複数本の指によるドラッグ操作が行われたと判断されてしまい、その結果、意図しない動作が行われることになる。
このロボット操作装置によれば、一旦ドラッグ操作を検出した場合には、そのドラッグ操作が終了するまでの期間は、そのタッチ操作によるタッチ箇所の近傍における所定範囲内の領域に対するタッチ操作の検出が無効化される。そのため、意図しない指による誤タッチが生じる可能性の高い箇所を考慮して上記領域の範囲を設定しておけば、ある動作を行おうとした場合に、意図せずに他の動作が行われるといった誤動作の発生を抑制することができる。
実施形態に記載のロボット操作装置は、切替部を備える。切替部は、主操作と副操作とを切り替えるためのものである。主操作とは、ロボットの複数の駆動軸又は動作態様のうち、ロボットの手先の位置に寄与する駆動軸又は動作態様を操作するための操作である。副操作とは、前記ロボットの手先の姿勢に寄与する駆動軸又は動作態様を操作するため操作である。これによれば、ユーザが、切替部を用いて、主操作と副操作とを切り替えることができる。これにより、ユーザは、ロボットを操作する際に、ロボットの手先位置を決めるための操作を行っているか、手先の姿勢を決めるための操作を行っているかを明確に意識することができる。したがって、ユーザが、手先の姿勢を決定しようとしているにもかかわらず、手先の位置を変える操作をしてしまう等の誤操作を抑制することができ、その結果、安全性の向上が図られる。
こで、産業界では、4つの駆動軸を備える4軸型の水平多関節型ロボット及び6つの駆動軸を備える6軸型の垂直多関節ロボットが多用されている。4軸型の水平多関節ロボットを手動操作で各軸系の動作を行う場合、動作指令生成部は、各駆動軸を個別に操作するために4種類の操作入力を判断できることが望ましい。また、4軸型の水平多関節ロボットにおいて、手先系の動作は、X方向と、Y方向と、Z方向と、Rz方向と、の4種類がある。したがって、4軸型の水平多関節ロボットを手動操作で手先系の動作を行う場合、動作指令生成部は、これら4種類の動作を個別に操作するために4種類の操作入力を判断できることが望ましい。以上より、ロボット操作装置が4軸型の水平多関節ロボットを手動操作の対象とする場合、動作指令生成部は、少なくとも4種類の操作入力を判断できることが望ましい。
同様に、6軸型の垂直多関節ロボットを手動操作で各軸系の動作を行う場合、動作指令生成部は、各駆動軸を個別に操作するために、6種類の操作入力を判断できることが望ましい。また、6軸型の垂直多関節ロボットにおいて、手先系の動作は、X方向と、Y方向と、Z方向と、Rx方向と、Ry方向と、Rz方向と、の6種類がある。したがって、6軸型の垂直多関節ロボットを手動操作で手先系の動作を行う場合、動作指令生成部は、これら6種類の動作を個別に操作するために6種類の操作入力を判断できることが望ましい。以上より、ロボット操作装置が6軸型の垂直多関節ロボットを手動操作の対象とする場合、動作指令生成部は、少なくとも6種類の操作入力を判断できることが望ましい。
そこで、実施形態に記載のロボット操作装置において、タッチパネルは、第1領域と第2領域とに分かれている。第1領域及び第2領域は、1方向又は互いに直交する2方向への操作を前記タッチ操作検出部によって検出することができるタッチパネル上の領域である。すなわち、動作指令生成部は、第1領域に入力される2方向のドラッグ操作と、第2領域に入力される2方向のドラッグ操作とで、合計4種類のドラッグ操作を判断することができる。そして、各領域について、主操作と副操作とを切り替えることができる。したがって、動作指令生成部は、最大8種類の操作入力を判断することができる。よって、このようなロボット操作装置によれば、産業界で多用されている4軸型の水平多関節ロボット及び6軸型の垂直多関節ロボットの両方において、手先系の動作及び各軸系の動作の手動操作に対応することができる。
(請求項12
請求項12に記載のロボット操作装置は、傾き操作検出部と、動作指令生成部と、を備えている。傾き操作検出部は、タッチパネルの傾きを検出することでユーザからの傾き操作の入力を検出することができる。動作指令生成部は、複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する。また、動作指令生成部は、水平移動動作指令生成処理と、垂直移動動作指令生成処理と、を行うことができる。水平移動動作指令生成処理は、タッチ操作検出部で検出されたタッチ操作に基づいてロボットの手先をロボットの動作基準面に対して水平な平面方向に移動させるための動作指令を生成する処理である。垂直移動動作指令生成処理は、傾き操作検出部で検出された傾き操作に基づいてロボットの手先を動作基準面と直交する垂直軸方向に沿って移動させるための動作指令を生成する処理である。
すなわち、このロボット操作装置において、ユーザは、タッチパネルに対してタッチ操作をすることにより、ロボットの手先を水平方向へ移動させる操作をすることができる。これによれば、ユーザは、ロボットの手先を水平方向へ移動させる際、タッチパネルに対する2次元的な操作と、ロボットの手先の水平方向への移動つまり2次元的な動きとを関連して認識し易くなる。また、ユーザは、タッチパネルを傾ける操作をすることにより、ロボットの手先を垂直方向へ移動させる操作をすることができる。これによれば、ユーザは、ロボットの手先を垂直方向へ移動させる際、タッチパネルに対するタッチ操作とは異なる態様の操作すなわちタッチパネルを傾ける操作を行う。したがって、ユーザは、水平方向への移動に対する操作と、垂直方向への移動に対する操作とを明確に区別することができる。よって、操作性が向上し、その結果、安全性の向上や、ロボットの教示に要する時間を短縮することができる。
(請求項13
請求項13に記載のロボット操作装置において、動作指令生成部は、傾き操作検出部で検出された傾き操作の傾き量に応じて、ロボットの移動速度又は移動量を増減する。これによれば、ユーザは、傾き操作によるタッチパネルの傾き量を調整することで、ロボットの移動速度又は移動量を調整することができる。よって、ユーザは、直観的にロボットの垂直方向への移動を操作することができ、その結果、操作性の向上が図られる。
(請求項14、15
請求項14、15に記載のロボット操作装置において、タッチパネルは、動作選択領域と、移動量決定領域と、を有している。動作選択領域は、操作対象にする前記ロボットの駆動軸又は動作態様を選択するための操作を受け付ける領域である。この場合、各軸系の場合は、駆動軸が選択され、手先系の場合は、動作態様が選択される。また、移動量決定領域は、ロボットの移動量を決定するための操作を受け付ける領域である。この場合、ロボットの移動量には、実際にロボットが移動する量つまりロボットの移動距離のみならず、ロボットの移動速度又は移動時間も含まれる。このようなロボット操作装置によれば、ユーザは、ロボットの動作を選択する場合には、動作選択領域においてタッチ操作をし、ロボットの移動量を決定する場合には、移動量決定領域においてタッチ操作をする。したがって、ユーザは、ロボットの動作を選択するための操作と、ロボットの移動量を決定するための操作とを明確に区別することができる。以上より、操作性の向上が図られ、その結果、安全性の向上が図られるとともに、教示に要する時間を短縮することができる。
(請求項14
請求項14に記載のロボット操作装置は、動作選択領域に対する操作の受け付けを開始するための開始操作を検出する開始操作検出部を更に備えている。開始操作検出部は、例えばタッチパネル上に表示されたボタンに対するタッチ操作を検出するものや、タッチパネルと異なるボタンに対する操作を検出するものである。そして、動作指令生成部は、開始操作検出部で開始操作を検出した後に動作選択領域に対するタッチ操作を受け付けるようにする。
すなわち、動作指令生成部は、開始操作検出部で開始操作を検出した後でなければ、動作選択領域に対するタッチ操作を受け付けない。つまり、ユーザは、意図して開始操作を行うことで、動作選択領域に対する操作を行うことができる。これによれば、動作選択領域に対する意図しない操作入力が低減される。したがって、誤操作による意図しない動作が行われることを抑制することができる。その結果、安全性が更に向上する。
(請求項15
請求項15に記載のロボット操作装置によれば、操作対象にするロボットの駆動軸又は動作態様を選択するための操作は、タッチパネルに対して駆動軸又は動作態様に対応する数字、文字、又は記号を入力する操作である。これによれば、ユーザは、例えば各軸系の操作を行う際、第1軸を操作したい場合には第1軸に対応するアラビア数字の「1」を入力し、第2軸を操作したい場合には第2軸に対応するアラビア数字の「2」を入力する。また、ユーザは、例えば手先系の操作を行う際、ロボットに水平移動動作を行わせる場合には水平移動動作に対応するアルファベットの「H」を入力し、ロボットに垂直移動動作を行わせる場合には垂直移動動作に対応するアルファベットの「V」を入力し、ロボットに手先の回転動作を行わせたい場合には回転動作に対応するアルファベットの「R」を入力する。ちなみに、「H」は、「Horizontal」の頭文字、「V」は「Vertical」の頭文字、「R」は「Rotational」の頭文字である。
これによれば、ユーザは、タッチパネルに対して、数字、文字、記号を入力することで、その入力に対応した駆動軸又は動作態様について操作をすることができる。したがって、ユーザは、ロボットの動作を決定するための操作入力と、その操作入力によって行われるロボットの動作とを関連して認識し易くなる。これにより、ユーザが誤った動作を選択するといった誤操作が抑制されて操作性の向上が図られる。その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
(請求項16
請求項16に記載のロボット操作装置によれば、請求項12又は13に記載のロボット操作装置において、動作指令生成部は、動作選択領域に対する操作が検出された場合に、その操作が終了するまでの期間は前記移動量決定領域に対する操作の検出を無効化する。例えば1本指によるタッチ操作は、右手または左手の人差し指で行われることが多い。そのため、動作選択領域に対して数字等を入力する操作が行われる際、例えばその操作を行う人差し指と同じ側の手の親指によって、移動量決定領域に対して誤タッチしてしまう可能性がある。また、ユーザが誤って動作選択領域と移動量決定領域とに跨って操作してしまう可能性もある。このような意図しない操作を検出してしまうと、動作選択領域に対する入力の途中であっても、移動量決定領域に対して操作がされたと判断されてしまい、その結果、意図しない動作が行われることになる。
このロボット操作装置によれば、一旦動作選択領域に対する操作を検出した場合には、その操作が終了するまでの期間は、移動量決定領域に対するタッチ操作の検出が無効化される。そのため、意図しない指による誤タッチが生じる可能性の高い箇所を考慮して上記領域の範囲を設定しておけば、ある動作を行おうとした場合に、意図せずに他の動作が行われるといった誤動作の発生を抑制することができる。これにより、誤操作が抑制されて操作性の向上が図られる。その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
(請求項17
請求項17に記載のロボット操作装置は、操作判断処理と、速度算出処理と、動作指令生成処理と、を行うことができる。操作判断処理は、タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作による指の移動量を判断する処理である。速度算出処理は、操作判断処理で判断した指の移動量に基づいてロボットの移動速度を算出する処理である。動作指令生成処理は、速度算出処理で算出した移動速度でロボットを移動させるための動作指令を生成する処理である。
これによれば、ユーザのドラッグ操作による指の移動量と、ロボットの移動速度とは相関を有することになる。したがって、ユーザは、ドラッグ操作による指の移動量を調整することにより、ロボットの移動速度を調整することができる。そのため、ユーザは、直観的な操作が可能になり、操作性の向上が図られる。その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
(請求項18
請求項18に記載のロボット操作装置によれば、動作指令生成部は、指の移動量に基づいてロボットの移動距離を算出する移動量算出処理を行うことができる。これによれば、ユーザは、ドラッグ操作による指の移動量を調整することにより、ロボットの移動量つまり移動距離を調整することができる。さらに、このロボット操作装置において、速度算出処理は、指の移動量をドラッグ操作の入力に要した時間で除した値に基づいて、ロボットの移動速度を決定する処理である。これによれば、ユーザは、ドラッグ操作の入力に要する時間を調整することで、ロボットの移動速度を調整することができる。
したがって、ユーザは、ドラッグ操作の入力に際し、そのドラッグ操作の移動量と入力時間を調整することにより、ロボットの移動速度と移動量の両方を調整することができる。すなわち、ユーザは、1度のドラッグ操作によって、ロボットの移動速度と移動量の両方を調整することができる。これにより、ユーザは、直観的な操作が可能になる。また、これによれば、ユーザは、ロボットの移動速度と移動量を決定するために、複数の操作例えばロボットの移動速度を決定するための操作とロボットの移動量を決定するための操作とを行う必要がない。したがって、操作が簡単になり、操作性の向上が図られる。これらの結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
(請求項17
請求項17に記載のロボット操作装置によれば、動作指令生成部は、ドラッグ操作が行われている間は一定の周期で操作判断処理と速度算出処理と動作指令生成処理とを行うことができる。この場合、ドラッグ操作が行われている間とは、ユーザの指がタッチパネルに触れてドラッグ操作が開始してから、ユーザの指がタッチパネルから離れるまでの期間を意味する。ドラッグ操作の終了は、ユーザの指がタッチパネルから離れたときである。これによれば、動作指令生成部は、ドラッグ操作の終了を待つことなく、動作指令を生成することができる。したがって、ロボット操作装置は、ユーザからのドラッグ操作にほぼリアルタイムで、ロボットを動作させることができる。したがって、ユーザは、より直感的な操作が可能になり、その結果、安全性の向上、ひいては教示時間の短縮を図ることができる。
(請求項19
上述したロボット操作装置は、操作入力と出力(ロボットの移動)との間に倍率を設定することがある。例えば、倍率を0.1倍に設定した場合、ユーザは、1mmのドラッグ操作を行うことで、ロボットを0.1mm移動させることができる。これにより、操作入力以上の精密な動作をロボットに行わせることができる。しかし、単純に倍率を設定しただけでは、次のような問題が生じる。すなわち、例えば0.1mm単位の微細な動作(微動)を行いつつ、数〜数十mm単位の大きな動作(粗動)を行いたい場合もある。しかし、例えば倍率を0.1倍に設定した場合、200mm(10インチ画面の長辺の長さに相当)のドラッグ操作でも、僅かに20mmしかロボットを移動させることができない。そのため、ユーザは、例えばロボットに1000mmの移動をさせようとすると、200mmのドラッグ操作を50回も繰り返すことになり、煩雑で操作性が良くない。
そこで、請求項19に記載のロボット操作装置において、動作指令生成部は、操作判断処理と、移動量決定処理と、を行うことができる。操作判断処理は、タッチ操作検出部で検出したドラッグ操作の指の移動量を判断する処理である。移動量決定処理は、操作判断処理で判断したドラッグ操作の指の移動量を拡大又は縮小してロボットの移動量を決定するための倍率について、ドラッグ操作が操作開始地点から第1区間を通過するまでは倍率を1より小さい一定の値である第1倍率に設定し、ドラッグ操作が第1区間を通過した後は倍率を第1倍率より大きい値に設定して、ロボットの移動量を決定する処理である。
これによれば、ユーザは、第1区間内でドラッグ操作することで、ロボットを、1より小さい一定の倍率である第1倍率で移動させることができる。つまり、ユーザは、第1区間内のドラッグ操作を繰り返すことで、ロボットに微小な動作(微動)をさせることができる。また、ユーザは、第1区間を超えてドラッグ操作することで、第1区間を超えた部分について、ロボットを、第1倍率よりも大きい倍率で移動させることができる。つまり、ユーザは、第1区間を超えて操作することで、ロボットに比較的大きな動作(粗動)をさせることができる。このように、ユーザは、1度のドラッグ操作で、異なる倍率でロボットを移動させることができる。すなわち、これによれば、例えばロボットの微動と粗動との両方の動作を、1回のドラッグ操作で実現することができる。したがって、ユーザは、ロボットの微動と粗動とを切り替えるための特別な操作をすることなく、微動と粗動との両方を実現することができる。これにより、操作が簡単になり、操作性の向上が図られ、その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
(請求項20
請求項20に記載のロボット操作装置によれば、移動量決定処理は、ドラッグ操作の指の移動が第1区間を通過してから第2区間を通過するまでは倍率を第2倍率に設定し、ドラッグ操作の指の移動が第2区間を通過した後は倍率を一定値である第3倍率に設定して、ロボットの移動量を決定する処理である。これによれば、ユーザは、第1区間内でドラッグ操作を繰り返すことにより、1より小さい第1倍率でロボットを動作(微動)させることができる。また、ユーザは、第1区間を超えてドラッグ操作を行うことにより、第1倍率よりも大きい第2倍率又は第3倍率でロボットを動作(粗動)させることができる。
さらに、第2倍率は、第1倍率から第3倍率までの範囲で、ドラッグ操作の指の移動量に応じて連続的に増加する値である。これによれば、第1倍率による微動と第3倍率による粗動との間の倍率である第2倍率が、第1倍率から第3倍率までの範囲で、ドラッグ操作の指の移動量に応じて連続的に増加する。すなわち、一定値である第1倍率と第3倍率との間が、連続して変化する第2倍率によって繋がれている。そのため、ユーザのドラッグ操作の操作量に対するロボットの移動量を決定するための倍率は、第1倍率から、次第に変化する第2倍率を経て第3倍率に切り替わる。これにより、ロボットの移動量を決定するための倍率が、第1倍率から第3倍率に急激に切り替わることが防止される。すなわち、ロボットの移動が、微動から粗動へ急激に変化することを防止することができる。したがって、ユーザの意図しない急激な倍率の変化によって生じるロボットの急激な速度変化(急動)を防止することができる。その結果、更なる安全性の向上が図られる。
(請求項21
請求項21に記載のロボット操作装置によれば、タッチ操作検出部は、ユーザによる手持ちが可能なケースに設けられたタッチパネルに対するタッチ操作を検出するものである。このような構成の場合、ユーザは、一方の手でケースを把持した上で、他方の手の指により各操作を行うことになる。このとき、ケースを把持する一方の手の指が誤ってタッチパネルに触れてしまう可能性がある。例えば1本指によるドラッグ操作が行われる際に、把持する側の手による誤タッチを検出してしまうと、2本指によるドラッグ操作が行われたと判断されてしまい、その結果、意図しない動作が行われることになる。
そこで、この記載のロボット操作装置において、タッチ操作検出部は、タッチパネルのうち、ユーザがケースを手持ちする際に把持することが想定される把持部に隣接する所定範囲の領域に対するタッチ操作については検出対象から除外する。このようにすれば、例えばある水平移動動作を行うべく、1本指によるドラッグ操作が行われる際に、把持する側の手による誤タッチが行われたとしても、その誤タッチが検出されることはないため、意図せずに他の動作が行われるといった誤動作の発生を確実に抑制することができる。
(請求項22
請求項22に記載のロボットシステムは、4軸水平多関節型のロボットと、ロボットの動作を制御するコントローラと、請求項1から21のいずれか一項に記載のロボット操作装置とを備えている。4軸水平多関節型のロボットは、手先系の動作又は各軸系の動作を行うことが可能である。手先系の動作とは、ロボットの手先を、ロボットの動作基準面に対して水平な平面方向に移動する動作(平面移動動作)と、動作基準面と直交する垂直軸方向に移動する動作(垂直移動動作)と、及び垂直軸回りに回転する動作(回転動作)と、である。一方、ロボット操作装置は、前述したとおり、ユーザによる手動操作に従い、手先系の動作(平面移動動作、垂直移動動作および回転動作)を行うための動作指令、又は各軸系の動作を行うための動作指令を生成することができる。従って、本手段によれば、操作対象となるロボットに必要な動作について、手動による操作で実現することができる。
(請求項23
請求項23に記載のロボットシステムは、6軸垂直多関節型のロボットと、ロボットの動作を制御するコントローラと、請求項1から21のいずれか一項に記載のロボット操作装置とを備えている。6軸垂直多関節型のロボットは、前述した4軸水平多関節型のロボットが行う得る動作(平面移動動作、垂直移動動作および回転動作)に加え、その手先を、上記垂直軸(Z軸)とは異なる2つの軸回りに回転する動作を行うことが可能である。上記2つの軸とは、動作基準面に対して水平な互いに直交する2つの軸(X軸およびY軸)である。
そのため、この記載のロボットシステムでは、手先系の動作を行う場合、操作対象となるロボットが行い得る全ての動作について、手動による操作で実現することはできない。しかし、6軸垂直多関節型のロボットの場合でも、前述した平面移動動作、垂直移動動作および(Z軸回りの)回転動作ができれば、概ね問題が生じることはない。なぜなら、手動操作の際には、上記3つの動作が行われる頻度が極めて高いため、本手段によっても、ユーザの利便性が大きく損なわれることがないからである。
(請求項2435
請求項24〜35に記載のロボット操作プログラムは、それぞれ請求項1、7〜12、14、15、17、19、21に記載のロボット操作装置を実現するものである。これらのロボット操作プログラムを、例えばタッチパネルを備える汎用のタブレットPC等によって実行することで、汎用のタブレットPC等に、上述したロボット操作装置としての機能を付加することができる。
第1実施形態によるロボットシステムの一例を示す全体構成図 第1実施形態によるティーチングペンダントの電気的構成の一例を示すブロック図 第1実施形態について、各種タッチ操作とロボットのマニュアル動作の内容との対応関係の一例を示す図 第1実施形態について、動作指令生成部が行う各種処理の内容の一例を示すフローチャート 第1実施形態について、2本の指によるタッチのタイミングのずれ時間の分布を示す図 第1実施形態について、ドラッグ操作に回転成分が含まれるか否かの判断基準を説明するための図 第1実施形態について、ドラッグ操作に回転成分が含まれると判断する領域および含まれないと判断する領域を示す図 第1実施形態について、(a)は1本の指によるドラッグ操作を行う際の誤タッチの一例を示す図、(b)はその誤タッチを防止するための無効化領域の一例を示す図 第1実施形態について、(a)はケースを把持する手による誤タッチの一例を示す図、(b)はその誤タッチを防止するための検出除外領域の一例を示す図 第2実施形態によるロボットシステムの一例を示す全体構成図 第3実施形態による4軸型のロボットの一例を示す図 第3実施形態による6軸型のロボットの一例を示す図 第3実施形態によるティーチングペンダントに対する操作態様の一例を示す図 第3実施形態について、ユーザがティーチングペンダントを保持する際の姿勢の一例を示す図 第3実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作の内容との対応関係の一例を示す図 第3実施形態について、ドラッグ操作の操作方向に対するフランジの回転方向の一例を示す図 第3実施形態について、動作指令生成部が行う各種処理の内容の一例を示すフローチャート 第3実施形態について、6軸型のロボットを側方から示す図 第4実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第4実施形態について、ドラッグ操作の操作方向に対する6軸型のロボットの移動方向の一例を示す図 第4実施形態について、動作指令生成部が行う各種処理の内容の一例を示すフローチャート 第5実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第5実施形態について、ドラッグ操作の操作方向に体知る6軸型のロボットの移動方向の一例を示す図 第5実施形態について、ロボットのフランジ側から第2上アーム側へ見たロボットの手先を示す図 第5実施形態について、動作指令生成部が行う各種処理の内容の一例を示すフローチャート 第6実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第7実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第8実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第8実施形態について、3本以上の指で円周方向へのドラッグ操作を行った際に、そのドラッグ操作に回転成分が含まれているか否かを判断する方法を示す図 第9実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第10実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第11実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第12実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第13実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第14実施形態について、ドラッグ操作の操作方向とロボットのマニュアル動作との対応関係の一例を示す図 第14実施形態について、第1領域及び第2領域の一例を示す図 第15実施形態によるティーチングペンダントの一例を示す図 第15実施形態について、ティーチングペンダントに対する傾け操作の一例を示す図 第16実施形態によるティーチングペンダントの一例を示すもので、開始操作検出領域及び移動量決定領域を示す図 第16実施形態によるティーチングペンダントの一例を示すもので、動作選択領域を示す図 第16実施形態について、制御部が行う各種処理の内容の一例を示すフローチャート 第17実施形態について、タッチパネルに入力されるドラッグ操作の一例を示す図 第17実施形態について、制御部が行う各種処理の内容の一例を示すフローチャート 第18実施形態について、タッチパネルに入力されるドラッグ操作のうちある期間における指の移動を示す図 第18実施形態について、制御部が行う各種処理の内容の一例を示すフローチャート 第18実施形態について、タッチパネルに入力されるドラッグ操作による指の移動量を示す図 第18実施形態について、(1)はドラッグ操作による指の移動量と操作倍率との相関を示す図、(2)はドラッグ操作による指の移動量とロボットの移動量との相関を示す図 第18実施形態について、図47とは異なる他の例を示すもので、(1)はドラッグ操作による指の移動量と操作倍率との相関を示す図、(2)はドラッグ操作による指の移動量とロボットの移動量との相関を示す図
以下、本発明の複数の実施形態について説明する。なお、各実施形態において実質的に同一の構成には同一の符号を付して説明を省略する。
(第1実施形態)
以下、本発明の第1実施形態について図1〜図9を参照しながら説明する。
図1は、一般的な産業用ロボットのシステム構成を示している。図1に示すロボットシステム1は、ロボット2、コントローラ3およびティーチングペンダント4(ロボット操作装置に相当)により構成されている。ロボット2は、例えば4軸の水平多関節型ロボットとして構成されている。ロボット2は、固有のロボット座標系(X軸、Y軸およびZ軸からなる三次元直交座標系)に基づいて動作する。本実施形態では、ロボット座標系は、ベース5の中心を原点Oとし、作業台Pの上面をX−Y平面とし、そのX−Y平面と直交する座標軸をZ軸として定義されている。作業台Pの上面は、ロボット2を設置するための設置面である。この場合、その設置面が動作基準面に相当する。なお、動作基準面としては、設置面に限らずともよく、任意の平面であってもよい。
ロボット2は、作業台Pの上面(以下、設置面とも称す)に固定されるベース5と、ベース5上にZ軸(垂直軸)方向の軸心を持つ第1軸J11を中心に回転可能に連結された第1アーム6と、第1アーム6の先端部上にZ軸方向の軸心を持つ第2軸J12を中心に回転可能に連結された第2アーム7と、第2アーム7の先端部に上下動可能で且つ回転可能に設けられたシャフト8とから構成されている。シャフト8を上下動させる際の軸が第3軸J13であり、回転させる際の軸が第4軸J14である。シャフト8の先端部(下端部)には、フランジ9が位置決めされて着脱可能に取り付けられる。
ベース5、第1アーム6、第2アーム7、シャフト8およびフランジ9は、ロボット2のアームとして機能する。アーム先端であるフランジ9には、図示はしないが、エンドエフェクタ(手先)が取り付けられる。例えば、ロボット2を用いて部品の検査などが行われる場合、上記エンドエフェクタとしては、対象となる部品を撮影するためのカメラなどが用いられる。ロボット2に設けられる複数の軸(J11〜J14)はそれぞれに対応して設けられるモータ(図示せず)により駆動される。各モータの近傍には、それぞれの回転軸の回転角度を検出するための位置検出器(図示せず)が設けられている。
ロボット2を制御するコントローラ3は、接続ケーブルを介してロボット2に接続されている。ティーチングペンダント4は、接続ケーブルを介してコントローラ3に接続されている。コントローラ3およびティーチングペンダント4の間では、通信インターフェイス(図2に符号10を付して示す)を経由してデータ通信が行われる。これにより、ユーザの操作に応じて入力される各種の操作情報が、ティーチングペンダント4からコントローラ3に送信される。また、コントローラ3は、ティーチングペンダント4に対し、各種の制御信号や表示用の信号などを送信するとともに、駆動用の電力を供給する。
コントローラ3は、ティーチングペンダント4から手動動作を指令する信号が与えられると、ロボット2が手動で動作するように制御を行う。また、コントローラ3は、ティーチングペンダント4から自動動作を指令する信号が与えられると、予め記憶されている自動プログラムを起動することにより、ロボット2が自動で動作するように制御する。
ティーチングペンダント4は、例えばユーザが携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状のケース11を備えている。ティーチングペンダント4は、ケース11の表面側の中央部に例えば液晶ディスプレイからなる表示部12を備えている。表示部12は、タッチパネル17で構成されており、各種の画面を表示する。ティーチングペンダント4は、表示部12の周囲に各種の物理的なスイッチであるキースイッチ13を有している。なお、図1では、キースイッチ13を1つ示している。キースイッチ13を、タッチパネル17の表示部12に表示させたボタンで代用してもよい。ユーザは、表示部12のタッチパネル17やキースイッチ13から種々の入力操作を実行する。
ユーザ(操作者)は、ティーチングペンダント4を用いてロボット2の運転や設定などの各種機能を実行可能であり、予め記憶されている制御プログラムを呼び出して、ロボット2の起動や各種のパラメータの設定などを実行できる。また、ロボット2をマニュアル操作すなわち手動操作で動作させて各種の教示作業も実行可能である。そして、表示部12には、例えばメニュー画面、設定入力画面、状況表示画面などが必要に応じて表示される。
次に、ティーチングペンダント4の電気的な構成について図2を参照して説明する。
ティーチングペンダント4は、前述した通信インターフェイス10、表示部12およびキースイッチ13に加え、制御部14、タッチ操作検出部15、動作指令生成部16、選択操作検出部18、および姿勢検出部19を備えている。制御部14は、例えばCPU141や、ROM、RAM、および書き換え可能なフラッシュメモリなどの記憶領域142を有するマイクロコンピュータを主体に構成されており、ティーチングペンダント4の全体を制御する。記憶領域142は、ロボット操作プログラムを記憶している。制御部14は、CPU141においてロボット操作プログラムを実行することにより、タッチ操作検出部15および動作指令生成部16などを、ソフトウェアによって仮想的に実現する。なお、これらタッチ操作検出部15及び動作指令生成部16は、例えば制御部14と一体の集積回路としてハードウェア的に実現してもよい。
タッチ操作検出部15は、タッチパネル17に対するタッチ操作を検出する。具体的には、タッチ操作検出部15は、タッチ操作の有無、タッチ操作された画面上の位置(タッチ位置)、そのタッチ操作の種類などを検出することができる。すなわち、タッチ操作検出部15は、タッチ操作がドラッグ操作であるか否かを含めて、タッチ操作による指の本数や、指の移動方向、および指の移動量などを検出することができる。なお、本実施形態においては、1本指又は2本指のドラッグ操作を対象としているため、タッチ操作検出部15は、最大で2本指のタッチ操作を検出することができればよい。タッチパネル17には、2次元直交座標系が設定されている。タッチ操作検出部15は、その2次元直交座標系に基づいて、タッチ位置およびタッチ操作の種類、さらには移動方向(ドラッグ方向)および移動量(ドラッグ量)などを検出することができる。なお、上記ドラッグ操作は、タッチした状態のまま指を移動させる操作のことである。
選択操作検出部18は、タッチパネル17又はタッチパネル17と異なるボタンに対するユーザからの選択操作を検出することができる。選択操作とは、操作対象にするロボット2の駆動軸又は動作態様を選択するための操作である。本実施形態の場合、選択操作は、タッチパネル17に対して行われる。すなわち、選択操作検出部18は、タッチパネル17に対するユーザからの選択操作を検出することができる。この場合、タッチ操作検出部15及び選択操作検出部18は、共にタッチパネル17に対するユーザからのタッチ操作を検出するものである。姿勢検出部19は、例えばジャイロセンサや加速度センサ等である。ティーチングペンダント4は、姿勢検出部19の検出結果に基づいて、重力方向に対する自己の姿勢を検出することができる。
動作指令生成部16は、タッチ操作検出部15により検出されたタッチ操作に基づいて、ロボットを手動動作させるための動作指令を生成する。動作指令生成部16により生成された動作指令は、通信インターフェイス10を通じてコントローラ3に与えられる。このような構成のティーチングペンダント4を用いることにより、ユーザは、ロボット2の手動操作をタッチ操作により行うことができる。
図3に示すように、タッチ操作により実現することができるロボット2のマニュアル動作は、下記(1)〜(3)の3つの動作である。
(1)水平移動動作
水平移動動作(図3などでは平面動作とも称す)とは、ロボット2の手先を、設置面に対して水平なX−Y平面方向に移動させる動作である。水平移動動作は、第1操作に応じて行われる。第1操作は、1本の指によるドラッグ操作である。この場合、1本の指でのドラッグ操作(第1操作)のドラッグ方向に応じて平面移動の方向が決定され、ドラッグ量に応じて平面移動の移動量(移動距離)が決定される。
(2)垂直移動動作
垂直移動動作(図3などではZ軸動作とも称す)とは、ロボット2の手先を、動作基準面となる設置面Pと直交するZ軸方向に移動させる動作である。垂直移動動作は、第2操作に応じて行われる。本実施形態において、第2操作は、2本の指による所定の方向への直線的なドラッグ操作である。この場合、第2操作は、2本指を互いに同一の直線状にドラッグする操作である。2本指を直線状にドラッグする操作(第2操作)には、各指間の距離が次第に長くなる操作(いわゆるスプレッド操作またはピンチアウト操作)と、各指間の距離が次第に短くなる操作(いわゆるピンチ操作またはピンチイン操作)とがある。
このうち、スプレッド操作が行われると、ロボット2の手先をZ軸方向であって且つ設置面に近づく方向(接近方向又は下方向と称す)に移動させる動作が行われる。また、ピンチ操作が行われると、ロボット2の手先をZ軸方向であって且つ設置面から遠ざかる方向(離反方向又は上方向と称す)に移動させる動作が行われる。この場合、各指間の距離に応じてZ軸方向の移動量(移動距離)が決定される。
(3)回転動作
回転動作(図3などではRZ軸動作と称す)とは、ロボット2の手先を、Z軸回りに回転させる動作である。この場合、回転動作の回転方向は、Rz方向となる。回転動作は、第3操作に応じて行われる。第3操作は、2本の指によるドラッグ操作であって第2操作と異なる方向への操作である。本実施形態において、第3操作は、2本の指による円周方向へのドラッグ操作である。すなわち、本実施形態において、第3操作は、2本指のうち少なくともいずれかの指を曲線状に、つまり円弧を描くようにドラッグする操作(いわゆる回転操作)である。この場合、上記指での回転操作の方向に応じて回転動作の方向(回転方向)が決定され、ドラッグ量に応じて回転量が決定される。
上述したような各動作を実現するため、動作指令生成部16は、操作判断処理と、動作指令生成処理と、を実行する。操作判断処理は、選択操作検出部18で検出した選択操作に基づいて操作対象にするロボット2の駆動軸又は動作態様(この場合、動作態様)を決定する処理を含んでいる。また、操作判断処理は、タッチ操作検出部15で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する処理を含んでいる。また、動作指令生成処理は、操作判断処理で判断したドラッグ操作の移動量に基づいてロボット2の移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様でロボット2を移動させるための動作指令を生成する処理を含んでいる。
すなわち、動作指令生成部16は、図4に示すように、ステップS11、S13、S14において、操作判断処理を行う。操作判断処理は、選択操作検出部18で検出した選択操作に基づいて操作対象にするロボット2の駆動軸又は動作態様を決定する処理を含んでいる。また操作判断処理は、タッチ操作検出部15で検出したタッチ操作について指の本数と操作方向と移動量とを判断する処理を含んでいる。動作指令生成部16は、ステップS12、S15、S16、S17において、動作指令生成処理を行う。動作指令生成処理は、上記操作判断処理で判断した指の本数及び操作方向に基づいてロボット2の手先の移動方向を決定するとともに、上記操作判断処理で判断した移動量に基づいてロボット2の手先の移動量を決定して、これら決定した移動方向及び移動量に基づいてロボット2の手先を移動させるための動作指令を生成する処理である。
具体的には、動作指令生成部16は、ステップS11において、タッチ操作検出部15により検出されたタッチ操作の指の本数と方向を判断することで、そのタッチ操作が第1操作であるか否かを判断する。すなわち、動作指令生成部16は、タッチ操作検出部15により検出されたタッチ操作が、1本指および2本指のいずれによるドラッグ操作であるかを判断する(S11;第1操作判断処理)。動作指令生成部16は、ステップS11にて1本指によるドラッグ操作(第1操作)であると判断した場合、ステップS12においてロボット2の手先をX−Y平面方向に移動させるための動作指令を生成する(S12;水平移動動作指令生成処理)。
また、動作指令生成部16は、ステップS11において2本指によるドラッグ操作であると判断した場合、すなわち第1操作ではなく第2操作又は第3操作のいずれかであると判断した場合、ステップS13において、2本指による円周方向へのドラッグ操作(第3操作)であるかを判断する(S13;第2操作判断処理)。第3操作であるか否かは、2本指によるドラッグ操作のうち少なくとも一方に回転成分が含まれているか否かによって判断する。動作指令生成部16は、ステップS13にて回転成分が含まれておらず第3操作でないと判断した場合(NO)、ステップS14において、第2操作であるか否かを判断する(S14;第3操作判断処理)。第2操作であるか否かは、2本指によるドラッグ操作が行われている期間に、各指間の距離が次第に短くなるか、または次第に長くなるかによって判断する。
動作指令生成部16は、ステップS14にて各指間の距離が次第に長くなると判断した場合(ステップS14でスプレッド操作)、ロボット2の手先をZ軸方向であり且つ下方向に移動させるための動作指令を生成する(S15;垂直移動動作指令生成処理の接近指令生成処理)。また、動作指令生成部16は、ステップS14にて各指間の距離が次第に短くなると判断した場合(ステップS14でピンチ操作)、ロボット2の手先をZ軸方向であり且つ上方向に移動させるための動作指令を生成する(S16;垂直移動動作指令生成処理の離反指令生成処理)。
また、動作指令生成部16は、ステップS13にて回転成分が含まれていると判断した場合(YES)、ロボット2の手先をZ軸回りに回転させるための動作指令を生成する(S17;回転動作指令生成処理)。ステップS12またはS15〜S17の実行後、処理が終了となる(エンド)。そして、コントローラ3が上記動作指令に基づいてロボット2の動作を制御することにより、前述した水平移動動作、垂直移動動作または回転動作が実行される。
以上説明したように、本実施形態では、ロボット2の手先系の動作における手動操作の際、所定の操作が行われると、その操作からユーザが連想し易いと考えられる手先系の動作をロボット2に実行させるようになっている。この場合、各操作からその操作に対応する動作が連想されるという根拠は、人間の視覚・触覚情報などに基づくものであり、例えば次のような点にある。まず、1本指によるドラッグ操作から水平移動動作が連想されるという根拠は次の点にある。すなわち、タッチ操作される対象となるタッチパネル17は、平面であり、2次元の座標系が形成されている。そして、1本指によるドラッグ操作が行われる場合、そのような平面に沿って1つのタッチ箇所が移動するという形態となる。つまり、この場合、1本指によるタッチ箇所が平面上を移動するということとロボット2がX−Y平面方向に移動するということに密接な関連性がある(同期する)と考えられる。
また、2本の指の間の距離が次第に長くなるように行われるドラッグ操作から、下方向への垂直移動動作が連想されるという根拠は、次の2つの点にある。このような操作が行われる際、2本の指を押し広げるような形態となる。そして、その押し広げるということがユーザに下方向への移動を連想させると考えられる。これが、1つ目の根拠である。また、上述した操作は、一般には画像などを拡大するための操作として用いられることが多い。そして、ロボット2の手先にカメラが取り付けられている場合には、手先が下方向に移動することによりカメラによる撮影画像が拡大される。つまり、手先にカメラが取り付けられている場合、各指間の距離が長くなって2本の指の間隔が広がるということから、画像が拡大する(手先が下方向に移動する)ということを容易に連想し得ると考えられる。これが、2つ目の根拠である。
また、2本の指の間の距離が次第に短くなるように行われるドラッグ操作から、上方向への垂直移動動作が連想されるという根拠は、次の2つの点にある。このような操作が行われる際、2本の指を吊り上げるような形態となる。そして、その吊り上げるということがユーザに上方向への移動を連想させると考えられる。これが、1つ目の根拠である。また、上述した操作は、一般には画像などを縮小するための操作として用いられることが多い。そして、ロボット2の手先にカメラが取り付けられている場合には、手先が上方向に移動することによりカメラによる撮影画像が縮小される。つまり、手先にカメラが取り付けられている場合、各指間の距離が短くなって2本の指の間隔が狭くなるということから、画像が縮小する(手先が上方向に移動する)ということを容易に連想し得ると考えられる。これが、2つ目の根拠である。
また、2本指のいずれかによる回転操作から回転動作が連想されるという根拠は、次の点にある。すなわち、ロボット2の手先の回転軸は、円筒状のシャフト8であり、その先端には円筒状のフランジ9が取り付けられている。つまり、ロボット2の手先部分の形状は丸みを帯びている。そして、回転操作が行われる場合には、手先が円弧を描きながら回転するといった形態となる。つまり、この場合、その手先が円弧を描きながら回るということが、ユーザに対し、丸みを帯びたものを回転させる、つまりロボット2の手先を回転させる回転動作を連想させると考えられる。
このように、本実施形態における各操作は、その操作により実行されるロボット2の動作をユーザが直感的に連想可能であり、且つシンプルな操作となっている。そのため、ユーザは、自身の手元(操作箇所)を見ることなく、各操作を行うことができる。従って、ロボット2の手動操作が行われる際、ユーザがロボット2から視線を逸らすことが無くなり、その安全性を良好に維持することができる。このように、本実施形態によれば、安全性の低下を招くことなく、ロボット2の手動操作をタッチ操作により実現することができるという優れた効果が得られる。
また、4軸水平多関節型のロボット2は、その手先を、ロボット2の設置面に対して水平なX−Y平面方向に移動する動作、設置面と直交するZ軸方向に移動する動作およびZ軸回りに回転する動作を行うことが可能である。一方、ティーチングペンダント4は、前述したとおり、ユーザによる手動操作に従い、水平移動動作、垂直移動動作および回転動作を行うための動作指令を生成することができる。従って、本実施形態によれば、操作対象となるロボット2が行い得る全ての動作について、手動による操作で実現することができる。
さて、ユーザは、ロボット2の手動操作を行う際、ロボット2が意図したとおりに動作しているか否かを確認し易くするため、各動作(水平移動動作、垂直移動動作および回転動作)を、それぞれ独立して行うことが多い。例えば、最初に水平移動動作を行い、続いて垂直移動動作を行い、最後に回転動作を行う、といった具合である。このような事情から、ロボット2の手動操作が行われる際、敢えて複数の動作が同時に(ミックスして)行われることは少ない。従って、ロボット2の手動操作が行われる際には、複数の動作の同時実行を許容しないほうが望ましい。そのためには、各動作を行うための操作の線引き(切り分け)を明確にする必要がある。各動作を行うための線引きが曖昧であると、複数の動作がミックスした動作が行われ、その結果、ユーザの意図しない動作が行われる(誤動作が生じる)可能性が高まる。
本実施形態では、このような誤動作が発生する可能性を一層低く抑えるべく、各操作の切り分けを明確にするため、次のような工夫を施している。すなわち、動作指令生成部16は、タッチ操作された箇所が1つ検出されると、その検出時点から所定の許容遅延時間が経過した後にステップS11の処理を実行する。ユーザが複数本(この場合、2本)の指によるタッチ操作を行った場合、それら複数本(この場合2本)の指によるタッチのタイミングが完全に一致することは難しい。そのため、例えば、垂直移動動作を行うべく、複数本(この場合2本)の指によるタッチ操作が行われたとしても、一方の指によるタッチが行われた時点において、一旦、意図しない水平移動動作が行われ、その後、他方の指によるタッチが行われた時点において、本来意図する垂直移動動作が行われることになる。
本実施形態によれば、複数本(この場合2本)の指によるタッチのタイミングのずれが、許容遅延時間未満であれば、複数本(この場合2本)の指によるドラッグ操作であると判断される。つまり、複数本(この場合2本)の指によるタッチのタイミングのずれが許容遅延時間までは許容される。そのため、人間の操作によるタイミングのずれとして考えらえる最大値などに基づいて許容遅延時間を設定しておけば、一旦、水平移動動作が行われるといった誤動作の発生を確実に防止することができる。
本発明者は、複数の評価者を対象とし、2本の指を同時にタッチパネル上に置くという操作テストを実施した。その結果を分析すると、2本の指によるタッチの検出時間の差は、図5に示すような分布となった。そして、上記検出時間(2本の指によるタッチのタイミングのずれ)の最小値は「0.074秒」、平均値は「0.126秒」、最大値は「0.178秒」である。本実施形態では、このような操作テストの結果に基づき、許容遅延時間を「0.178秒」に設定している。
ユーザが、垂直移動動作を行うべく、複数本(この場合2本)の指によるドラッグ操作を行う際、各指を完全に直線状に移動させることは難しい。そのため、ユーザが、垂直移動動作を行うべく、2本の指を直線状に移動させようとした場合であっても、いずれかの指が僅かでも直線状に移動しなかった場合には、回転成分が含まれると判断されて意図しない回転動作が行われることになる。
そこで、動作指令生成部16は、ステップS13において、次のようにして回転成分が含まれるか否かを判断する。すなわち、図6に示すように、動作指令生成部16は、2本指の間のベクトルV1と、2本指のうち一方の指の移動に係るベクトルV2とが成す角度に基づいて、回転成分の有無を判断する。この場合、ベクトルV1およびベクトルV2は、次のように定義される。
すなわち、図6では、一方の指のドラッグ操作の開始位置をP1とし、その位置P1を中心とした微小な半径を持つ不感領域Rが設定されている。また、一方の指が不感領域Rを脱出した脱出位置をP2としている。そして、開始位置P1から他方の指のドラッグ操作の開始位置へのベクトルをベクトルV1とする。また、開始位置P1から脱出位置P2へのベクトルをベクトルV2とする。
このようにすると、ユーザが2本指を回転させるドラッグ操作を行う場合、一方の指の不感領域Rを脱出する位置は、図6における位置P2aのような位置となる。そのため、この場合、ベクトルV1およびベクトルV2(図6ではV2aとして示す)が成す角度は比較的大きい値(90度に近い値)となる。一方、ユーザが2本指を直線状に移動させるドラッグ操作を行う場合、一方の指が不感領域Rを脱出する位置は、図6における位置P2bのような位置となる。そのため、この場合、ベクトルV1およびベクトルV2(図6ではV2bとして示す)が成す角度は比較的小さい値(0度に近い値)となる。
このようなことを考慮し、動作指令生成部16は、図7に示すように、ベクトルV1およびV2が成す角度が判定閾値θth未満である場合、その指によるドラッグ操作に回転成分が含まれないと判断する。一方、動作指令生成部16は、上記角度が判定閾値θth以上である場合、その指によるドラッグ操作に回転成分が含まれていると判断する。このようにすれば、2本の指が完全に直線状に移動せず、多少の曲線(円弧)を描くように移動したとしても、垂直移動動作を行うための操作であると判断される。そのため、人間の操作によるずれ(直線に対してどの程度曲がるか、ということ)として考えられる最大値などに基づいて判定閾値θthを設定してくことで、垂直移動動作が行われる際に意図せずに回転動作が行われるといった誤動作の発生を確実に防止することができる。
本実施形態では、次のようにして判定閾値θthを設定している。すなわち、2本指を直線状に移動させるドラッグ操作が行われる際におけるベクトルV1およびV2が成す角度の理想的な値は「0度」である。一方、2本指を回転させるドラッグ操作が行われる際におけるベクトルV1およびV2が成す角度の理想的な値は「90度」である。そうすると、これら理想的な値の中間の値である「45度」が判定閾値θthとして最適な値であると考えられる。
しかし、本発明者は、複数の評価者を対象とし、2本指を直線状に移動させるドラッグ操作および2本指を回転させるドラッグ操作の両方を行うという操作テストを実施した。その結果を分析すると、「45度」よりも小さい「35度」が判定閾値θthとして最適な値であるということが判明した。これは、人間の指による開閉動作の精度が、回転動作の精度に比べて高いということに依存していると考えられる。
また、動作指令生成部16は、ステップS11において、1本指によるドラッグ操作であると判断した場合、そのドラッグ操作が終了するまでの期間、その1本指によるタッチ箇所の近傍における所定範囲内の領域に対するタッチ操作の検出を無効化する。1本指によるドラッグ操作は、例えば右手または左手の人差し指で行われることが多い。そのため、上記操作が行われる際、その操作を行う人差し指と同じ側の手の親指による誤タッチが生じる可能性がある。このような親指による誤タッチを検出してしまうと、2本指によるドラッグ操作が行われたと判断されてしまい、その結果、意図しない垂直移動動作または回転動作が行われることになる。
本実施形態によれば、一旦1本指によるドラッグ操作であると判断されると、その操作が終了するまでの間は、その1本指によるタッチ箇所の近傍における所定範囲内の領域(以下、無効化領域と称す)に対するタッチ操作の検出が無効化される。そのため、例えば親指による誤タッチが生じる可能性の高い箇所を考慮して上記無効化領域を設定しておけば、水平移動動作が行われる際、意図せずに垂直移動動作または回転動作が行われるといった誤動作の発生を確実に防止することができる。
本発明者は、複数の評価者を対象とし、1本の指によるドラッグ操作を行うという操作テストを実施した。その結果、図8(a)に示すように、右利きの評価者の場合、右手の人差し指でタッチ操作を行うが、その際、誤って右手の親指がタッチパネルに触れてしまう(誤タッチする)ことが多かった。そこで、本実施形態では、ユーザが右利きである場合、図8(b)に示すように、人差し指のタッチ箇所(座標)を起点とし、右下象限80度の範囲であり、且つ半径15mm以内の領域を無効化領域として設定する。なお、ユーザが左利きである場合、右利きとは左右を反転した箇所への誤タッチが生じる可能性が高いため、無効化領域についても左右反転させる。
また、タッチ操作検出部15は、ユーザによる手持ちが可能なケース11に設けられたタッチパネル17に対するタッチ操作を検出するものである。このような構成の場合、ユーザは、一方の手でケース11を把持した上で、他方の手の指により各操作を行うことになる。このとき、ケース11を把持する一方の手の指が誤ってタッチパネル17に触れてしまう可能性がある。1本指によるドラッグ操作(水平移動動作)が行われる際に、把持する側の手による誤タッチを検出してしまうと、2本指によるドラッグ操作が行われたと判断されてしまい、その結果、意図しない垂直移動動作または回転動作が行われることになる。
そこで、タッチ操作検出部15は、タッチパネル17のうち、ユーザがケース11を手持ちする際に把持することが想定される把持部(図9(a)に符号11aを付して示す)に隣接する所定範囲の領域(以下、検出除外領域と称す)に対するタッチ操作については検出対象から除外する。このようにすれば、例えば水平移動動作を行うべく、1本指によるドラッグ操作が行われる際に、把持する側の手による誤タッチが行われたとしても、その誤タッチが検出されることはないため、意図せずに垂直移動動作または回転動作が行われるといった誤動作の発生を確実に防止することができる。
本発明者は、複数の評価者を対象とし、一方の手でケース11を把持した状態で、他方の手を用いて1本の指によるドラッグ操作を行うという操作テストを実施した。なお、この操作テストでは、ティーチングペンダント4として、7インチ程度の表示部12を持つ装置および4インチ程度の表示部12を持つ装置の2種類を用いた。その結果を分析すると、7インチ程度の表示部12を持つ装置を用いた場合、評価者は、ケース11を図9(a)に示すように把持することが多かった。すなわち、右利きの評価者の場合、左手でケース11の左下部分(把持部11a)を把持する。このとき、左手の指のうち、親指がケース11の表面(タッチパネル17が設けられた面)に触れる。その際、親指が、タッチパネル17のうち把持部11aに隣接する領域に誤って触れることがあった。
そこで、表示部12のサイズが7インチ程度である場合、図9(b)に示すように、ユーザがケース11を把持する際に親指の付け根が位置する可能性が高い位置を中心とした半径50mm以内の領域を検出除外領域として設定する。なお、半径50mm以内とした理由は、日本人の親指の平均的な長さが約60mmであり、誤タッチする際には親指の腹(指腹)が接触すると考えられるからである。また、この場合も、ユーザが左利きである場合、右利きとは左右を反転した箇所への誤タッチが生じる可能性が高いため、検出除外領域についても左右反転させる。さらに、上記操作テストの結果を分析すると、評価者がケース11を把持する際における親指の角度(ケース11の側面を基準とした角度)が、65度程度であることが多いということも判明した。そこで、上記検出除外領域については、半径50mmの半円ではなく、65度の扇形状(図9(b)においてハッチングで示す領域)に変更してもよい。
また、上記操作テストの結果、4インチ程度の表示部12を持つ装置を用いた場合には、ケース11を把持する手の指がタッチパネル17に触れることがなかった。これは、ケース11全体が片手に収まる程度の大きさであることに起因すると考えられる。従って、表示部12のサイズが4インチ程度である場合、つまりケース11が片手に収まる程度の大きさである場合、検出除外領域を設定する必要がないと考えられる。これに対し、表示部12のサイズが7インチ程度である場合、つまりケース11が片手に収まらない程度の大きさである場合、検出除外領域を設定する必要がある。従って、上記した検出除外領域の設定については、ケース11の大きさに応じて有効化または無効化すればよい。
ロボットシステム1において、ロボット2による誤動作は特に問題となるため、その発生を確実に防止する必要がある。一方、タッチ操作は、その性質上、タッチに対する誤判定などが生じる可能性が比較的高い。しかし、本実施形態によれば、前述したような工夫が施されているため、ロボット2の手動操作をタッチ操作により実現しつつ、ロボット2の誤動作の発生を確実に防止することが可能となる。
なお、選択操作検出部18は、タッチパネル17上に表示させたボタン、又はティーチングペンダント4に設けられたキースイッチ13などの物理的なボタンの操作を検出するもとすることができる。そして、操作判断処理は、選択操作検出部18で検出した操作に基づいて、操作対象にする駆動軸又は動作態様を決定する処理を含んでいる。この場合、操作判断処理は、ドラッグ操作の指の本数及び方向を判断しても良いし、しなくても良い。
これによれば、ユーザは、キースイッチ13等を操作(選択操作)することにより、操作対象とする駆動軸又は動作態様を切り替えることができる。そのため、ユーザには、駆動軸又は動作態様を切り替えるためにキースイッチ13等を操作する、という意志が働く。したがって、ユーザは、キースイッチ13等に対する操作が、操作対象にする駆動軸又は動作態様を選択するための操作であることを意識し易くなる。したがって、これによれば、ユーザが誤った操作をすることにより、誤った操作対象が選択されてロボット2の誤作動を招く危険性が低減される。よって、操作性の向上が図られ、安全性の低下を招くことなく、ロボット2の手動操作をタッチ操作により実現することができる。また、操作性が向上することによって、教示に要する時間の短縮を図ることができる。
(第2実施形態)
以下、第1実施形態に対し、対象とするロボットの種類を変更した第2実施形態について図10を参照しながら説明する。
図10に示す本実施形態のロボットシステム21は、図1に示した第1実施形態のロボットシステム1に対し、ロボット2に代えてロボット22を備えている点が異なる。
ロボット22は、例えば6軸の垂直多関節型ロボットとして構成されている。すなわち、ベース25上には、Z軸方向の軸心を持つ第1軸J21を介してショルダ部26が水平方向に回転可能に連結されている。ショルダ部26には、Y軸方向の軸心を持つ第2軸J22を介して上方に延びる下アーム27の下端部が垂直方向に回転可能に連結されている。下アーム27の先端部には、Y軸方向の軸心を持つ第3軸J23を介して第1上アーム28が垂直方向に回転可能に連結されている。第1上アーム28の先端部には、X軸方向の軸心を持つ第4軸J24を介して第2上アーム29が捻り回転可能に連結されている。第2上アーム29の先端部には、Y軸方向の軸心を持つ第5軸J25を介して手首30が垂直方向に回転可能に連結されている。手首30には、X軸方向の軸心を持つ第6軸J26を介してフランジ31が捻り回転可能に連結されている。
ベース25、ショルダ部26、下アーム27、第1上アーム28、第2上アーム29、手首30およびフランジ31は、ロボット22のアームとして機能する。アーム先端であるフランジ31(手先に相当)には、図示はしないが、例えばエアチャックなどのツールが取り付けられる。ロボット22に設けられる複数の軸(J21〜J26)は、第1実施形態のロボット2と同様、それぞれに対応して設けられるモータ(図示せず)により駆動される。また、各モータの近傍には、それぞれの回転軸の回転位置を検出するための位置検出器(図示せず)が設けられている。
6軸垂直多関節型のロボット22は、第1実施形態における4軸水平多関節型のロボット2が行う得る動作に加え、その手先を、Z軸とは異なる2つの軸回りに回転する動作を行うことが可能である。上記2つの軸とは、設置面に対して水平な互いに直交する2つの軸(X軸およびY軸)である。この場合、X軸回りの回転方向をRx方向とし、Y軸回りの回転方向をRy方向としている。
そのため、本実施形態によれば、操作対象となるロボット22が行い得る全ての動作について、手動による操作で実現することはできない。しかし、6軸垂直多関節型のロボット22の場合でも、前述した水平移動動作、垂直移動動作およびZ軸回りの回転動作ができれば、概ね問題が生じることはない。なぜなら、手動操作の際には、上記3つの動作が行われる頻度が極めて高いため、本実施形態によっても、ユーザの利便性が大きく損なわれることがないからである。
ただし、2本指での回転操作により行われる動作を、X軸回りの回転動作、Y軸回りの回転動作およびZ軸回りの回転動作のうち、いずれかに選択的に切り替えるためのスイッチを設ければ、6軸垂直多関節型のロボット22が行い得る全ての動作について、手動による操作で実現することが可能となる。この場合、上記スイッチとしては、表示部12の周囲に設けられる操作キーでもよいし、表示部12のタッチパネルに形成されるタッチスイッチでもよい。
(第3実施形態)
次に、第3実施形態について、図11〜図18を参照して説明する。なお、本実施形態は、上述した4軸の水平多関節型ロボット2を備えるロボットシステム1及び6軸の垂直多関節型ロボット22を備えるロボットシステム21のいずれにも適用することができる。この場合、4軸の水平多関節型ロボット2は、図11に示すように、フランジ9が設置面P側(この場合、下方)へ向いた姿勢を基本姿勢とする。また、6軸の垂直多関節型ロボット22は、図12に示すように、フランジ31が設置面P側(この場合、下方)を向いた姿勢を基本姿勢とする。ロボット2、22は、この基本姿勢を維持したまま、又は基本姿勢に近い姿勢で、水平移動動作、垂直移動動作、又は回転動作が行われる。また、図13及び図14において、白抜きの円はタッチ操作の位置すなわちドラッグ操作の開始位置を示し、白抜きの矢印はドラッグ操作の方向を示している。
上記各実施形態では、ドラッグ操作の種類の判断において、タッチパネル17に対する縦方向又は横方向であるか否かについて考慮していなかった。一方、第3実施形態では、ドラッグ操作の種類の判断において、タッチパネル17に対する縦方向又は横方向であるか否かについて考慮している。この点において、第3実施形態は、上記第1及び第2実施形態と異なる。
ここで、タッチパネル17に対する縦方向及び横方向を、次のように定義する。すなわち、タッチパネル17に対する縦方向とは、図13の矢印Aで示すように、ユーザがティーチングペンダント4を持って操作する状態において、ユーザの体に対して遠ざかる又は近づく方向つまり離接する方向をいう。また、タッチパネル17に対する横方向とは、上述の縦方向に直交する方向をいう。換言すれば、タッチパネル17に対する横方向とは、図13の矢印Bで示すように、ユーザがティーチングペンダント4を持って操作する状態において、ユーザの体の前面に対して並行する方向をいう。
この場合、タッチパネル17の縦方向及び横方向は、ユーザから見たタッチパネル17に対する相対的な方向を意味する。つまり、ティーチングペンダント4は、加速度センサを備えており、その加速度センサによって自己の姿勢を検出することができる。ユーザがティーチングペンダント4を持った状態において、タッチパネル17の面が完全に水平方向を向くことは希である。すなわち、図14に示すように、ユーザ100は、ティーチングペンダント4を保持する際、タッチパネル17の面をユーザ100側に向けることが自然である。この場合、タッチパネル17の面内に高低差が生じる。そして、タッチパネル17の最上点Hiと最下点Loとを繋ぐ直線方向が、縦方向となる。また、この縦方向に直交する方向が横方向となる。この場合、ティーチングペンダント4が回転されるなどしてタッチパネル17の姿勢が変化しても、ユーザ100に対する縦方向及び横方向の相対的な関係は変化しない。
第3実施形態は、上記各実施形態に対して、第1操作の態様は同様であるが、第2操作及び第3操作の態様が異なる。すなわち、第2操作は、2本指によるドラッグ操作であって所定の方向への操作として定義されている。そして、上記第1及び第2実施形態において、第2操作は、図3(2)に示したように、2本指を互いに同一の直線状にドラッグする操作、具体的にはスプレッド操作及びピンチ操作である。一方、第3実施形態において、第2操作は、図13(2)に示すように、2本指による直線状のドラッグ操作であってタッチパネル17上における縦方向への操作である。
図15(2)に示すように、2本指による直線状のドラッグ操作であってタッチパネル17上における縦方向への操作(第2操作)が行われると、ロボット2又はロボット22の手先について垂直移動動作が行われる。この場合、第2操作が、図15(2)の矢印A1で示すように、ユーザから遠ざかる方向つまりタッチパネル17の上側(最上点Hi側)への操作である場合、動作指令生成部16は、ロボット2又はロボット22の手先をZ軸に沿って上方へ移動させる動作指令を生成する。また、第2操作が、図15(2)の矢印A2で示すように、ユーザに近づく方向つまりタッチパネル17の下側(最下点Lo側)への操作である場合、動作指令生成部16は、ロボット2又はロボット22の手先をZ軸に沿って下方へ移動させる動作指令を生成する。すなわち、この場合、第2操作による操作方向つまり上下方向と、ロボット2、22の手先の移動方向とが一致つまり関連している。したがって、ユーザは、自己が行った第2操作の操作方向から、ロボット2、22の手先の移動方向を連想し易い。
図15(3)に示すように、2本指による直線状のドラッグ操作であってタッチパネル17上における横方向の操作(第3操作)が行われると、ロボット2又はロボット22の手先について回転動作が行われる。この場合、第3操作が、図15(3)及び図16の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図16の矢印J14Rで示すように、ロボット2又はロボット22の手先を、Z軸に対して手先の手前側部分(この場合、図16の点Tで示すユーザ側部分)が右方へ向かうように、つまり平面視で反時計回り方向へ回転させる動作指令を生成する。
また、第3操作が、図15(3)及び図16の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図16の矢印J14Lで示すように、ロボット2又はロボット22の手先を、Z軸に対して手先の手前側部分(この場合、図16の点Tで示すユーザ側部分)が左方向へ向かうように、つまり平面視で時計回り方向へ回転させる動作指令を生成する。この場合、ユーザの第3操作による操作方向と、ロボット2、22の手先の回転方向つまり手先のZ軸に対する手前側部分の移動方向と、が一致つまり関連している。したがって、ユーザは、自己が行った第3操作の操作方向から、ロボット2、22の手先の回転方向を連想し易い。
上述したような各動作を実現するため、動作指令生成部16は、図4に示すような内容の処理を実行する。すなわち、動作指令生成部16は、ステップS11、S21において、操作判断処理を行う。また、動作指令生成部16は、ステップS12、S22、S17において、動作指令生成処理を行う。なお、図17において、図4に示した処理と同一の処理については、同一のステップ番号を付して、その詳細な説明を省略する。
動作指令生成部16は、ステップS11において、タッチ操作検出部15により検出されたタッチ操作が、1本指および2本指のいずれによるドラッグ操作であるかを判断する(S11;第1操作判断処理)。動作指令生成部16は、ステップS11にて1本指によるドラッグ操作(第1操作)であると判断した場合、ステップS12においてロボット2の手先をX−Y平面方向に移動させるための動作指令を生成する(S12;水平移動動作指令生成処理)。
動作指令生成部16は、ステップS11において2本指によるドラッグ操作であると判断した場合、すなわち第1操作ではなく第2操作又は第3操作のいずれかであると判断した場合、ステップS21において、2本指による縦方向への操作(第2操作)又は横方向へのドラッグ操作(第3操作)であるかを判断する(S21;第2操作判断処理、第3操作判断処理)。
動作指令生成部16は、ステップS21において縦方向へのドラッグ操作(第2操作)であると判断した場合(S21;縦方向)、ロボット2又はロボット22の手先をZ軸方向へ移動させるための動作指令を生成する(S22;垂直移動動作指令生成処理)。また、動作指令生成部16は、ステップS21において横方向へのドラッグ操作(第3操作)であると判断した場合(S21;横方向)、ロボット2又はロボット22の手先をZ軸回りに回転させるための動作指令を生成する(S17;回転動作指令生成処理)。ステップS12、S22、S17の実行後、処理が終了となる(エンド)。そして、コントローラ3が上記動作指令に基づいてロボット2又はロボット22の動作を制御することにより、前述した水平移動動作、垂直移動動作または回転動作が実行される。
以上説明したように、本実施形態でも、ロボット2、22の手先系の操作における手動操作の際、所定の操作が行われると、その操作からユーザが連想し易いと考えられる動作をロボットに実行させるようになっている。この場合、各操作からその操作に対応する動作が連想されるという根拠は、人間の視覚・触覚情報などに基づくものであり、例えば次のような点にある。1本指によるドラッグ操作(第1操作)から水平移動動作が連想されるという根拠は、上記第1実施形態で述べた通りである。
2本指によるドラッグ操作であって縦方向の操作(第2操作)からロボット2、22の手先を垂直方向へ移動させる垂直移動動作が連想されるという根拠は、例えば次のような点にある。すなわち、図14に示すように、通常、ユーザ100は、ティーチングペンダント4を、ユーザ100の腰から胸の間で持つことが多い。そしてこの場合、タッチパネル17の視認性や操作性を考慮すると、ユーザ100は、タッチパネル17の画面がユーザ100側へ向かって下方に傾斜するような姿勢で、ティーチングペンダント4を持つことが自然である。このような姿勢でユーザ100がティーチングペンダント4を持つと、ティーチングペンダント4の縦方向つまり上下方向と、ロボット2、22の手先の垂直方向つまり上下方向とが一致する。したがって、ユーザ100は、タッチパネル17の画面上の縦方向への操作と、ロボット2、22の手先の垂直移動動作とを、関連して認識し易い。
また、2本指によるドラッグ操作であって横方向の操作(第3操作)からロボット2、22の手先を回転させる回転動作が連想されるという根拠は、例えば次のような点にある。すなわち、ロボット2、12の手動操作は、ロボットの微調整のために行われることが多い。そのため、手動操作の際に、ロボットの手先は、設置面P側(この場合、下方)を向いていることが多い。この場合、手先の回転軸は、水平面に対して直角すなわち垂直方向へ向いている。この状態でロボットの手先を水平方向に見た場合、ロボットの手先が回転することで、ロボットの手先のある一点が水平方向に直線的に移動しているように見える。そのため、ユーザは、タッチパネルに対する横方向への操作が、ロボットの手先の回転動作を連想させると考えられる。したがって、ユーザは、タッチパネルに対する横方向の操作と、ロボットの手先の回転動作とを、関連して認識し易い。
このように、本実施形態の手先系に関する各操作は、その操作により実行されるロボット2、22の動作をユーザが直感的に連想することができ、且つシンプルな操作となっている。すなわち、ユーザは、ロボット2、22の動作を直感的に連想することが可能で且つシンプルなジェスチャ操作(指の本数と方向と移動量との組合せによる操作)によって、ロボット2、22の手先系の動作を操作することができる。そのため、ユーザは、自身の手元(操作箇所)を見ることなく、手先系の各操作を行うことができる。従って、ロボット2、22の手先系の手動操作が行われる際、ユーザがロボット2から視線を逸らすことが無くなり、その安全性を良好に維持することができる。このように、本実施形態によれば、安全性の低下を招くことなく、ロボット2、22の手先系の手動操作をタッチ操作により実現することができるという優れた効果が得られる。
なお、第2操作による垂直移動動作を、上述したものと逆の態様にしてもよい。すなわち、第2操作が、図15(2)の矢印A1で示すように、ユーザから遠ざかる方向つまりタッチパネル17の上側(最上点Hi側)への操作である場合、動作指令生成部16は、ロボット2又はロボット22の手先をZ軸に沿って下方へ移動させるような指令を生成する。また、第2操作が、図15(2)の矢印A2で示すように、ユーザに近づく方向つまりタッチパネル17の下側(最下点Lo側)への操作である場合、動作指令生成部16は、ロボット2又はロボット22の手先を、Z軸に沿って上方へ移動させるような指令を生成する。この場合、第2操作による操作方向つまり上下方向と、ロボット2、22の手先の移動方向とが、反対方向になっている。
そして、このような操作態様は、6軸型の垂直多関節ロボット22を後方側(図12及び図18の矢印W側)から操作する場合に、より有効であると考えられる。その根拠は、例えば次のような点にある。すなわち、6軸型の垂直多関節ロボット22において、手先(フランジ31)のZ軸に沿った垂直方向の移動は、第2軸J22と第3軸J23とを駆動させることにより行う。第2軸J22を駆動させた場合、アーム27、28、29が一体となって移動する。この場合、ユーザは、アーム27、28、29について、第2軸J22を支点、手先(フランジ31)を作用点、図18で示す点K1部分を力点としたテコであるかのような印象を抱き易い。同様に、第3軸J23を駆動させた場合、アーム28、29が一体となって移動する。この場合、ユーザは、アーム28、29について、第3軸J23を支点、手先(フランジ31)を作用点、図18で示す点K2部分を力点としたテコであるかのような印象を抱き易い。
いずれの場合についても、支点である第2軸J22又は第3軸J23を駆動させると、点K1、K2は、手先(フランジ31)とは逆方向へ移動する。そして、ユーザがロボット22を見ながらタッチパネル17に対して縦方向のドラッグ操作をする様子は、ユーザに、力点K1、K2に対して縦方向(この場合、垂直方向)の仮想的な力を加える様子を連想させる。さらに、ユーザがロボット22を後方側から見た場合、手先(フランジ31)よりも力点K1、K2の方がユーザの近くにある。そのため、ユーザは、タッチパネル17に縦方向のドラッグ操作をすることで、力点K1、K2に仮想的な力を及ぼして、作用点となる手先(フランジ31)を力点K1、K2とは反対方向へ動かしているとの印象を抱き易い。よって、このような操作態様によれば、ユーザは、自己が行った第2操作の操作方向から、ロボット2、22の手先の移動方向を連想し易くなり、その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
(第4実施形態)
次に、第4実施形態について、図19〜図22を参照して説明する。上記各実施形態では、いわゆるジェスチャ操作(指の本数と方向と移動量との組合せによる操作)を、手先系の動作に適用した例について説明した。一方、本実施形態では、いわゆるジェスチャ操作を、各軸系の動作に適用した例について説明する。
図19は、ジェスチャ動作を、4軸の水平多関節ロボット2の各軸系の動作に適用した一例である。この場合、第1軸J11の駆動は、図19(1)に示すように、1本指の横方向へのドラッグ操作に応じて行われる。1本指の横方向へのドラッグ操作が、図19(1)及び図20の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図20の矢印J11Rで示すように、第1軸J11を平面視で反時計回り方向へ回転させる動作指令を生成する。また、1本指の横方向へのドラッグ操作が、図19(1)及び図20の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図20の矢印J12Lで示すように、第1軸J11を平面視で時計回り方向へ回転させる動作指令を生成する。
第2軸J12の駆動は、図19(2)に示すように、2本指の横方向へのドラッグ操作に応じて行われる。2本指の横方向へのドラッグ操作が、図19(2)及び図20の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図20の矢印J12Rで示すように、第2軸J12を平面視で反時計回り方向へ回転させる動作指令を生成する。また、2本指の横方向へのドラッグ操作が、図19(2)及び図20の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図20の矢印J12Lで示すように、第2軸J12を平面視で時計回り方向へ回転させる動作指令を生成する。
第3軸J13の駆動は、図19(3)に示すように1本指の縦方向へのドラッグ操作に応じて行われる。1本指の縦方向へのドラッグ操作が、図19(3)の矢印A1で示すように、タッチパネル17に対して上方向すなわち最上点Hi側への操作である場合、動作指令生成部16は、ロボット2の手先が上方へ移動するような動作指令を生成する。1本指の縦方向へのドラッグ操作が、図19(3)の矢印A2で示すように、タッチパネル17に対して下方すなわち最下点Lo側への操作である場合、動作指令生成部16は、ロボット2の手先が下方へ移動するような動作指令を生成する。
第4軸J14の駆動は、図19(4)に示すように3本指の横方向へのドラッグ操作に応じて行われる。3本指の横方向へのドラッグ操作が、図19(4)及び図20の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図20の矢印J14Rで示すように、第4軸J14を平面視で反時計回り方向へ回転させる動作指令を生成する。また、3本指の横方向へのドラッグ操作が、図19(4)及び図20の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図20の矢印J14Lで示すように、第4軸J14を平面視で時計回り方向へ回転させる動作指令を生成する。なお、これらの場合、各駆動軸に対応する方向のドラッグ操作の操作量つまりドラッグ量に応じて、各駆動軸の駆動量が決定される。
本実施形態では、第3軸J13を、第1群の駆動軸に分類している。第1群の駆動軸J13は、ユーザに、垂直方向の動作を意識させ易い。この第1群の駆動軸J13は、縦方向のドラッグ操作に基づいて駆動される。また、各駆動軸のうち第1群の駆動軸以外の駆動軸、すなわち第1軸J11、第2軸J12、及び第4軸J14を第2群の駆動軸に分類している。第2群の駆動軸J11、J12、J14は、ユーザに、水平方向の動作を意識させ易い。これら第2群の駆動軸J11、J12、J14は、横方向のドラッグ操作に基づいて駆動される。
上述したような各動作を実現するため、動作指令生成部16は、図21に示すような内容の処理を実行する。この場合、動作指令生成部16は、ステップS31、S32、S33において、駆動軸選択処理を行う。駆動軸選択処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数と操作方向との組合せに基づいて、各駆動軸J11〜J14の中から駆動させる一の駆動軸を選択する処理である。ステップS31〜S33のうち、ステップS31、S32は、第1駆動軸選択処理である。第1駆動軸選択処理は、ドラッグ操作の方向が縦方向である場合に、第1群の駆動軸の中から駆動させる一の駆動軸を選択する処理である。本実施形態では、第1群の駆動軸は、第3軸J13のみであるため、必然的に第3軸J13が選択される。ステップS31〜S33のうち、ステップS31、S33は、第2駆動軸選択処理である。第2駆動軸選択処理は、ドラッグ操作の方向が横方向又は円周方向(本実施形態では横方向)である場合に、第1群の駆動軸以外の駆動軸(この場合、第2群の駆動軸J11、J12、J14)の中から駆動させる一の駆動軸を選択する処理である。
具体的には、動作指令生成部16は、ステップS31において、タッチ操作検出部15で検出されたドラッグ操作の方向が、横方向又は縦方向のいずれかであるかを判断する。タッチ操作検出部15で検出されたドラッグ操作の方向が縦方向である場合(ステップS31で縦方向)、動作指令生成部16は、ステップS32において、指の本数が1本であるか否かを判断する。タッチ操作の指の本数が1本である場合(ステップS32でYES)、動作指令生成部16は、ステップS34において、第3軸J13を駆動させるための動作指令を生成する。
一方、ドラッグ操作の方向が横方向である場合(ステップS31で横方向)、動作指令生成部16は、ステップS33において、指の本数を判断する。タッチ操作の指の本数が1本である場合(ステップS33で1本)、動作指令生成部16は、ステップS35において、第1軸J11を駆動させるための動作指令を生成する。タッチ操作の指の本数が2本である場合(ステップS35で2本)、動作指令生成部16は、ステップS36において、第2軸J12を駆動させるための動作指令を生成する。タッチ操作の指の本数が3本である場合(ステップS33で3本)、動作指令生成部16は、ステップS37において、第4軸J14を駆動させるための動作指令を生成する。
動作指令生成部16は、ステップS34〜S37のいずれかで動作指令を生成した後、処理を終了する(エンド)。そして、コントローラ3が上記動作指令に基づいてロボット2の軸を駆動させることにより、各軸系の動作が行われる。一方、タッチ操作の指の本数が2本以上である場合(ステップS32でNO)、動作指令生成部16は、動作指令を生成することなく処理を終了する(エンド)
以上説明したように、本実施形態では、ロボット2の各軸系の動作における手動操作の際、所定の操作が行われると、その操作からユーザが連想し易いと考えられる各軸系の動作をロボット2に実行させるようになっている。この場合、各操作からその操作に対応する動作が連想されるという根拠は、人間の感覚情報などに基づくものであり、例えば次のような点にある。
まず、横方向のドラッグ操作から、第2群の駆動軸すなわち第1軸J11、第2軸J12、及び第4軸J14の駆動が連想されるという根拠は次の点にある。すなわち、4軸の水平多関節ロボット2において、第2群の駆動軸J11、J12、J14は、全て垂直方向に延びる回転軸である。そのため、第2群の駆動軸J11、J12、J14が駆動すると、ロボット2の手先は、各軸を中心として水平方向へ移動する。ここで、ユーザは、ロボット2を手動操作する際に、ロボット2を水平方向のやや上方から見ることが多い。この場合、ユーザには、ロボット2の手先は水平の横方向へ移動しているように見える。したがって、ユーザの操作方向と、ロボット2の手先の移動方向とが一致する。よって、ユーザは、タッチパネル17に対する縦方向の操作と、第2群の駆動軸J11、J12、J14の駆動による手先の移動動作とを、関連して認識し易い。したがって、各軸系の動作をさせる際に、ユーザは、ロボット2の手先の移動方向と、自己の操作方向とを関連して認識し易くなる。なお、タッチパネル17に対する縦方向の操作と、第2群の駆動軸(この場合、第3軸J13)の駆動による垂直移動動作とが関連するという根拠については、第3実施形態で述べた理由と同様である。
また、本実施形態によれば、横方向へのドラッグ操作において、指1本の操作の場合は第1軸J11が駆動され、指2本の操作の場合は第2軸J12が駆動され、指3本の操作の場合は第4軸J14が駆動される。このように、本実施形態では、ドラッグ操作に用いる指の本数が増えるにつれて、駆動される第2群の駆動軸の番号が増えるようになっている。このため、ユーザは、ドラッグ操作に用いる指の本数と、駆動される軸とを関連して認識し易くなる。これらの結果、操作性の更なる向上が図られる。
更に、動作指令生成部16は、上述の駆動軸選択処理において、ドラッグ操作の指の本数の増加に伴って、ロボット2のベース5側の駆動軸から手先(フランジ9)側の駆動軸へ移行するように、すなわち第1軸J11から、第2軸J12、第4軸J14へと移行するようにして、駆動させる駆動軸を決定している。通常、ユーザは、ドラッグ操作に用いる指の本数が少ないほど、その操作に集中することができると考えられる。したがって、ユーザは、ドラッグ操作に用いる指の本数が少ないほど、より精密な操作をすることができると考えられる。ここで、駆動される駆動軸がベース5側に近いほど、つまり軸の番号が若いほど、その駆動軸の駆動がロボット2の手先の移動量に与える影響が大きくなる。本実施形態によれば、ユーザは、ロボット2の手先の移動量への影響が大きい駆動軸に対して、より少ない指で精密な操作をすることができる。したがって、操作性の更なる向上が図られる。
なお、動作指令生成部16は、駆動軸選択処理において、ドラッグ操作の指の本数の増加に伴って、ロボット2の手先(フランジ9)側の駆動軸からベース5側の駆動軸へ移行するように、すなわち第4軸J14から、第2軸J12、第1軸J11へと移行するようにして、駆動させる駆動軸を決定してもよい。通常、手動操作においては、手先に近い動作が多用される。すなわち、手動操作においては、第2群の駆動軸のうち、軸の番号が大きい軸の方が多用される。この場合、ユーザは、手動操作の際に多用される駆動軸に対して、より少ない指で精密な操作をすることができる。したがって、これによっても、操作性の更なる向上が図られる。
(第5実施形態)
次に、第5実施形態について、図18、及び図22〜図25を参照して説明する。本実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系の動作に適用するものである。本実施形態において、各軸の駆動は、次のようにして行われる。6軸のロボット22の第1軸J21の駆動は、4軸のロボット2の第1軸J11の駆動と同様にして行われる。すなわち、第1軸J21は、図22(1)に示すように、1本指の横方向へのドラッグ操作に応じて行われる。1本指の横方向へのドラッグ操作が、図22(1)及び図23の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図23の矢印J21Rで示すように、第1軸J21を平面視で反時計回り方向へ回転させる動作指令を生成する。また、1本指の横方向へのドラッグ操作が、図22(1)及び図23の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図23の矢印J21Lで示すように、第1軸J21を平面視で時計回り方向へ回転させる動作指令を生成する。
第2軸J22の駆動は、4軸のロボット2の第3軸J13の駆動と同様にして行われる。すなわち、第2軸J22の駆動は、図22(2)に示すように1本指の縦方向へのドラッグ操作に応じて行われる。1本指の縦方向へのドラッグ操作が、図22(2)の矢印A1で示すように、タッチパネル17に対して上方向すなわち最上点Hi側への操作である場合、動作指令生成部16は、ロボット22の手先が上方へ移動するように第2軸J22を回転させるための動作指令を生成する。本指の縦方向へのドラッグ操作が、図22(2)の矢印A2で示すように、タッチパネル17に対して下方向すなわち最下点Lo側への操作である場合、動作指令生成部16は、ロボット22の手先が下方へ移動するように第2軸J22を回転させるための動作指令を生成する。
第3軸J23の駆動は、図22(3)に示すように2本指の縦方向へのドラッグ操作に応じて行われる。2本指の縦方向へのドラッグ操作が、図22(3)の矢印A1で示すように、タッチパネル17に対して上方向すなわち最上点Hi側への操作である場合、動作指令生成部16は、ロボット22の手先が上方へ移動するように第3軸J23を回転させるための動作指令を生成する。2本指の縦方向へのドラッグ操作が、図22(3)の矢印A2で示すように、タッチパネル17に対して下方向すなわち最下点Lo側への操作である場合、動作指令生成部16は、ロボット22の手先が下方へ移動するように第3軸J23を回転させるための動作指令を生成する。
第4軸J24の駆動は、図22(4)に示すように、2本指の横方向へのドラッグ操作に応じて行われる。2本指の横方向へのドラッグ操作が、図22(4)及び図23の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図24の矢印J24Rで示すように、第2上アーム29側から第1上アーム28側へ向かって見た場合に、第4軸J24を時計回り方向へ回転させる動作指令を生成する。また、2本指の横方向へのドラッグ操作が、図22(4)及び図23の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図24の矢印J24Lで示すように、第2上アーム29側から第1上アーム28側へ向かって見た場合に、第4軸J24を反時計回り方向へ回転させる動作指令を生成する。
第5軸J25の駆動は、図22(5)に示すように3本指の縦方向へのドラッグ操作に応じて行われる。3本指の縦方向へのドラッグ操作が、図22(5)の矢印A1で示すように、タッチパネル17に対して上方向すなわち最上点Hi側への操作である場合、動作指令生成部16は、ロボット22の手先が上方へ移動するように第5軸J25を回転させるための動作指令を生成する。3本指の縦方向へのドラッグ操作が、図22(5)の矢印A2で示すように、タッチパネル17に対して下方向すなわち最下点Lo側への操作である場合、動作指令生成部16は、ロボット22の手先が下方へ移動するように第5軸J25を回転させるための動作指令を生成する。
第6軸J26の駆動は、図22(6)に示すように、3本指の横方向へのドラッグ操作に応じて行われる。3本指の横方向へのドラッグ操作が、図22(6)及び図23の矢印B1で示すように、タッチパネル17に対して右方向への操作である場合、動作指令生成部16は、図23の矢印J26Rで示すように、第4軸J24を平面視で反時計回り方向へ回転させる動作指令を生成する。また、3本指の横方向へのドラッグ操作が、図22(6)及び図23の矢印B2で示すように、タッチパネル17に対して左方向への操作である場合、動作指令生成部16は、図23の矢印J26Lで示すように、第4軸J24を平面視で時計回り方向へ回転させる動作指令を生成する。
本実施形態では、各駆動軸のうち第2軸J22、第3軸J23、及び第5軸J25を第1群の駆動軸に分類している。第2群の駆動軸J22、J23、J25は、縦方向のドラッグ操作に基づいて駆動される。また、各駆動軸のうち第1群の駆動軸以外の駆動軸、すなわち第1軸J21、第4軸J24、及び第6軸J26を第2群の駆動軸に分類している。第2群の駆動軸J21、J24、J26は、横方向のドラッグ操作に基づいて駆動される。
上述したような各動作を実現するため、動作指令生成部16は、図25に示すような内容の処理を実行する。この場合、動作指令生成部16は、ステップSS41、S42、S43において、駆動軸選択処理を行う。駆動軸選択処理は、上述した図21のステップS31、S32、S33と同様の処理である。すなわち、駆動軸選択処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数と操作方向との組合せに基づいて、各駆動軸J21〜J26の中から駆動させる一の駆動軸を選択する処理である。
ステップS41〜S43のうち、ステップS41、S42は、第1駆動軸選択処理である。第1駆動軸選択処理は、ドラッグ操作の方向が縦方向である場合に、第1群の駆動軸J22、J23、J25の中から駆動させる一の駆動軸を選択する処理である。ステップS41〜S43のうち、ステップS41、S43は、第2駆動軸選択処理である。第2駆動軸選択処理は、ドラッグ操作の方向が横方向又は回転方向(本実施形態では横方向)である場合に、第1群の駆動軸以外の駆動軸(この場合、第2群の駆動軸J21、J24、J26)の中から駆動させる一の駆動軸を選択する処理である。
具体的には、動作指令生成部16は、ステップS41において、タッチ操作検出部15で検出されたドラッグ操作の方向が、横方向又は縦方向のいずれかであるかを判断する。そのドラッグ操作の方向が縦方向である場合(ステップS41で縦方向)、動作指令生成部16は、ステップS42において、指の本数を判断する。タッチ操作の指の本数が1本である場合(ステップS42で1本)、動作指令生成部16は、ステップS44において、第2軸J22を駆動させるための動作指令を生成する。タッチ操作の指の本数が2本である場合(ステップS42で2本)、動作指令生成部16は、ステップS45において、第3軸J23を駆動させるための動作指令を生成する。タッチ操作の指の本数が3本である場合(ステップS42で3本)、動作指令生成部16は、ステップS46において、第5軸J25を駆動させるための動作指令を生成する。
一方、タッチ操作検出部15で検出されたドラッグ操作の方向が横方向である場合(ステップS41で横方向)、動作指令生成部16は、ステップS43において、指の本数を判断する。タッチ操作の指の本数が1本である場合(ステップS43で1本)、動作指令生成部16は、ステップS47において、第1軸J21を駆動させるための動作指令を生成する。タッチ操作の指の本数が2本である場合(ステップS43で2本)、動作指令生成部16は、ステップS48において、第4軸J24を駆動させるための動作指令を生成する。タッチ操作の指の本数が3本である場合(ステップS43で3本)、動作指令生成部16は、ステップS49において、第6軸J26を駆動させるための動作指令を生成する。動作指令生成部16は、ステップS44〜S49のいずれかで動作指令を生成した後、処理を終了する(エンド)。そして、コントローラ3が上記動作指令に基づいてロボット2の軸を駆動させることにより、各軸系の動作が行われる。
以上説明したように、本実施形態では、ロボット22の各軸系の動作における手動操作の際、所定の操作が行われると、その操作からユーザが連想し易いと考えられる各軸系の動作をロボット22に実行させるようになっている。この場合、各操作からその操作に対応する動作が連想されるという根拠は、人間の感覚情報などに基づくものであり、例えば次のような点にある。
まず、横方向のドラッグ操作から、第1群の駆動軸すなわち第1軸J21、第4軸J24、及び第6軸J26の駆動が連想されるという根拠は、上記第4実施形態と略同様である。すなわち、6軸の多関節ロボット22は、手動操作の際、図12に示す基本姿勢を維持したまま、又は基本姿勢に近い姿勢で、各軸の駆動が行われることが多い。そして、6軸の垂直多関節ロボット22において、第2群の駆動軸J21、J24、J26は、駆動軸が駆動した際に回転しない不動側の部材と、駆動軸が駆動した際に回転する回転側の部材とが、直線状に配置されている。
具体的には、第1軸J21について見た場合、ベース25は不動側の部材であり、ショルダ部26は回転側の部材である。この場合、ロボット22は、基本姿勢の状態から、第1軸J21が駆動されてショルダ部26が回転すると、手先(フランジ31)は、水平面上において円弧状に移動する。ここで、ユーザは、ロボット22を手動操作する際に、ロボット22を水平方向のやや上方から見ることが多い。この場合、ユーザには、ロボット22の手先(フランジ31)が水平の横方向へ移動しているように見える。したがって、ユーザの操作方向と、ロボット22の手先の移動方向とが一致する。
第4軸J24について見た場合、第1上アーム28は不動側の部材であり、第2上アーム29は回転側の部材である。この場合、ロボット22は、基本姿勢の状態から、第4軸J24が駆動されて第2上アーム29が回転すると、手先(フランジ31)の先端部は、水平面に対して傾いた面(第4軸J24に対して垂直な面)上において円弧状に移動する。そして、上述したように、ユーザがロボット22を水平方向のやや上方から見た場合、ユーザには、ロボット22の手先(フランジ31)が水平の横方向へ移動しているように見える。したがって、ユーザの操作方向と、ロボット22の手先の移動方向とが一致する。
第6軸J26について見た場合、手首30は不動側の部材であり、フランジ31は回転側の部材である。この場合、ロボット22は、基本姿勢の状態から、第6軸J26が駆動されて手先(フランジ31)が回転すると、手先(フランジ31)の円周上のある一点部分は、第6軸J26に対する垂直な面(この場合、水平面)上を円弧状に移動する。そして、上述したように、ユーザがロボット22を水平方向のやや上方から見た場合、ユーザには、ロボット22の手先(フランジ31)のある一点が水平の横方向へ移動しているように見える。したがって、ユーザの操作方向と、ロボット22の手先の移動方向とが一致する。
このように、本実施形態によれば、ユーザの操作方向と、ロボット22の手先の移動方向とが一致する。よって、ユーザは、タッチパネル17に対する縦方向の操作と、第2群の駆動軸J21、J24、J26の駆動による手先の移動動作とを、関連して認識し易い。なお、タッチパネル17に対する縦方向の操作と、第2群の駆動軸(この場合、第3軸J13)の駆動による垂直移動動作とが関連するという根拠については、第3実施形態で述べた理由と同様である。このような実施形態によれば、各軸系の動作をさせる際に、ユーザは、自己の操作態様から、ロボット22の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
また、本実施形態によれば、横方向へのドラッグ操作において、指1本の操作の場合は第1軸J21が駆動され、指2本の操作の場合は第4軸J24が駆動され、指3本の操作の場合は第4軸J24が駆動される。このように、本実施形態では、ドラッグ操作に用いる指の本数が増えるにつれて、駆動される第1群の駆動軸の番号が増えるようになっている。このため、ユーザは、ドラッグ操作に用いる指の本数と、駆動される軸とを関連して認識し易くなる。これらの結果、操作性の更なる向上が図られる。
更に、動作指令生成部16は、上述の駆動軸選択処理において、ドラッグ操作の指の本数の増加に伴って、ロボット22のベース5側の駆動軸から手先(フランジ31)側の駆動軸へ移行するように、すなわち第1軸J21から、第4軸J24、第6軸J26へと移行するようにして、駆動させる駆動軸を決定している。これによれば、上記第4実施形態と同様に、ユーザは、ロボット22の手先の移動量への影響が大きい駆動軸に対して、より少ない指で精密な操作をすることができる。したがって、操作性の更なる向上が図られる。
なお、動作指令生成部16は、駆動軸選択処理において、ドラッグ操作の指の本数の増加に伴って、ロボット22の手先(フランジ31)側の駆動軸からベース5側の駆動軸へ移行するように、すなわち第6軸J26から、第4軸J24、第1軸J21へと順に移行するようにして、駆動させる駆動軸を決定してもよい。これによれば、上記した第4実施形態と同様に、ユーザは、手動操作の際に多用される駆動軸に対して、より少ない指で精密な操作をすることができる。したがって、これによっても、操作性の更なる向上が図られる。
(第6実施形態)
次に、第6実施形態について、図26を参照して説明する。第6実施形態は、いわゆるジェスチャ操作を、4軸の水平多関節型ロボット2の各軸系の動作に適用した例である。この第6実施形態では、第4軸J14を駆動させるための操作が、上記第4実施形態と異なる。すなわち、第1群の駆動軸J11、J21、J14のうち第4軸J14は、図26(4)に示すように、2本指による円周方向へのドラッグ操作すなわち2本指のいずれかによる回転操作に基づいて行われる。
この場合、図26(4)の矢印C1で示すように、2本指による円周方向へのドラッグ操作が、タッチパネル17に対して時計回り側への操作である場合、動作指令生成部16は、ロボット2の手先を平面視で時計回り側へ回転させるように第4軸J14を駆動させるための動作指令を生成する。一方、図26(4)の矢印C2で示すように、2本指による円周方向へのドラッグ操作が、タッチパネル17に対して反時計回り側への操作である場合、動作指令生成部16は、ロボット2の手先を平面視で反時計回り側へ回転させるように第4軸J14を駆動させるための動作指令を生成する。
この2本指による円周方向へのドラッグ操作から、第4軸J14の駆動つまり手先(フランジ9)の回転動作が連想されるという根拠は、上記第1実施形態における手先の回転動作の説明で述べた通りである。すなわち、ユーザのドラッグ操作による操作方向と、ロボット2の手先の平面視における回転方向とが一致している。したがって、このような実施形態によっても、ユーザは、各軸系の動作をさせる際に、自己の操作態様から、ロボット2の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
(第7実施形態)
次に、第7実施形態について、図27を参照して説明する。第7実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系の動作に適用した例である。この第7実施形態では、第4軸J24を駆動させるための操作が、上記第5実施形態と異なる。すなわち、第2群の駆動軸J21、J24、J26のうち第4軸J24は、図27(4)に示すように、2本指による円周方向へのドラッグ操作に基づいて行われる。
この場合、図27(6)の矢印C1で示すように、2本指による円周方向へのドラッグ操作が、タッチパネル17に対して時計回り側への操作である場合、ロボット22の手先を平面視で時計回り側へ回転させるように第6軸J26を駆動させるための動作指令を生成する。一方、図27(6)の矢印C2で示すように、2本指による円周方向へのドラッグ操作が、タッチパネル17に対して反時計回り側への操作である場合、ロボット22の手先を平面視で反時計回り側へ回転させるように第6軸J26を駆動させるための動作指令を生成する。
この2本指による円周方向へのドラッグ操作から、第6軸J26の駆動つまり手先(フランジ31)の回転動作が連想されるという根拠は、上記第1実施形態における手先の回転動作の説明で述べた通りである。すなわち、ユーザのドラッグ操作による操作方向と、ロボット22の手先の平面視における回転方向とが一致している。したがって、このような実施形態によっても、ユーザは、各軸系の動作をさせる際に、自己の操作態様から、ロボット22の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
(第8実施形態)
次に、第8実施形態について、図28及び図29を参照して説明する。第8実施形態は、いわゆるジェスチャ操作を、4軸の水平多関節型ロボット2の各軸系の動作に適用した例である。この第8実施形態では、第4軸J14を駆動させるための操作が、上記第4実施形態及び第6実施形態と異なる。すなわち、第1群の駆動軸J11、J12、J14のうち第4軸J14は、図28(4)に示すように、3本指による円周方向へのドラッグ操作に基づいて行われる。
3本指による円周方向へのドラッグ操作であるか否かの判断は、例えば次のようにして行われる。すなわち、動作指令生成部16は、複数本(この場合、3本)の指によるタッチ操作において、その複数本(この場合、3本)の指のうち指のタッチ位置の距離が最も遠い2本の指を抽出する。動作指令生成部16は、各指の接触位置つまり移動開始位置の相互間の距離を検出し、その距離を比較する。動作指令生成部16は、各指の接触位置の相互間の距離が最も遠い2つの位置つまり2本の指について、上記第1実施形態で説明したように、その2本指のいずれかに回転成分が含まれるか否かを判断する。その2本指のいずれかに回転成分が含まれている場合、動作指令生成部16は、複数本(この場合、3本)の指による操作が円周方向への操作であると判断する。一方、その2本指の両方に回転成分が含まれていない場合、動作指令生成部16は、複数本(この場合、3本)の指による操作が円周方向への操作でないと判断する。
例えばユーザが、親指、人差し指、中指の3本の指によって、円周方向へのドラッグ操作を行った場合について説明する。ユーザの各指は、タッチパネル17に対して、例えば図29の位置P1、P2、P3で示すように接触する。この場合、位置P1〜P3のうち、位置P1は親指、位置P2は人差し指、位置P3は中指による接触位置を示している。人の手は、手を開いた状態において、人差し指、中指、薬指、小指の4本の指の延びる方向と、親指の延びる方向とが異なっている。このような人の手の構造上、例えばユーザが、3本指による円周方向のドラッグ操作をする際、通常、人の掌の中心部分(図29の点O部分)を回転中心にして、親指と親指以外の指(この場合、人差し指と中指)とが対向するように回転する。
この場合、親指(位置P2)の移動方向と、他の指つまり人差し指(位置P1)及び中指(位置P3)の移動方向とは、タッチパネル17の平面上において略逆方向を向いている。換言すれば、親指(位置P2)以外の指つまり人差し指(位置P1)及び中指(位置P3)の移動方向は、略同一方向を向いている。この場合、親指(位置P2)以外の指つまり人差し指(位置P1)及び中指(位置P3)の移動に係るベクトルに基づいて、回転成分が含まれるか否かを判断した場合、次のような不都合が生じる。
すなわち、図29に示すように、人差し指(位置P1)の移動に係るベクトルをVP1、親指(位置P2)の移動に係るベクトルをVP2、中指(位置P3)の移動に係るベクトルをVP3とする。この場合、人差し指(位置P1)の移動方向と中指(位置P3)の移動方向とは略同一であるため、人差し指(位置P1)の移動に係るベクトルVP1と、中指(位置P3)の移動に係るベクトルVP3との成す角度は小さい。この場合、人差し指(位置P1)の移動に係るベクトルVP1と、中指(位置P3)の移動に係るベクトルVP3との成す角度とが判定閾値未満となって、そのドラッグ操作が円周方向への操作でないと判断される可能性が高い。
一方、親指(位置P2)の移動方向と、他の指つまり人差し指(位置P1)及び中指(位置P3)の移動方向とは、タッチパネル17の平面上において略逆方向である。そのため、親指(位置P2)の移動に係るベクトルVP2と、親指以外の指の移動に係るベクトル(ベクトルVP1又はベクトルVP3)との成す角度は大きい。したがって、親指(位置P2)の移動に係るベクトルVP2と、親指以外の指の移動に係るベクトル(ベクトルVP1又はベクトルVP3)との成す角度が判定閾値未満になる可能性は極めて低い。以上の理由から、複数本の指によるドラッグ操作が円周方向への操作であるか否かの判断においては、複数本のうち距離の最も通り2本の指について、その2本指のいずれかに回転成分が含まれるか否かを判断すれば十分である。
3本指による円周方向へのドラッグ操作から、第4軸J14の駆動つまり手先(フランジ9)の回転動作が連想されるという根拠は、2本指による円周方向へのドラッグ操作から、第4軸J14の駆動つまり手先(フランジ9)の回転動作が連想されるという根拠と同様である。この場合も、第4軸J14の動作に関し、ユーザのドラッグ操作による操作方向と、ロボット2の手先の平面視における回転方向とが一致している。したがって、このような実施形態によっても、ユーザは、各軸系の動作をさせる際に、自己の操作態様から、ロボット2の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
(第9実施形態)
次に、第9実施形態について、図30を参照して説明する。第9実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系の操作に適用した例である。この第9実施形態では、第6軸J26を駆動させるための動作が、上記第5実施形態と異なる。すなわち、第2群の駆動軸J21、J24、J26のうち第6軸J26は、図30(6)に示すように、3本指による円周方向へのドラッグ操作に基づいて行われる。この第6軸J26を駆動させるための操作は、図28(4)に示した上記第8実施形態において第4軸J14を駆動させるための操作と同様である。この場合、3本指による円周方向へのドラッグ操作であるか否かの判断方法は、上記第8実施形態で述べた通りである。また、3本指による円周方向へのドラッグ操作から、第6軸J26の駆動つまり手先(フランジ31)の回転動作が連想されるという根拠は、上記第8実施形態の第4軸J14に関する説明で述べた通りである。
この場合、第6軸J26の動作に関し、ユーザのドラッグ操作による操作方向と、ロボット2の手先の平面視における回転方向とが一致している。したがって、このような実施形態によっても、ユーザは、各軸系の動作をさせる際に、自己の操作態様から、ロボット2の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができる。
(第10実施形態)
次に、第10実施形態について、図31を参照して説明する。第10実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系の操作に適用した例である。この第10実施形態では、図22に示す第4実施形態における各軸の操作に対して、図27(4)に示す第7実施形態における第4軸J24に関する操作、及び図30(6)に示す第9実施形態における第6軸J26に関する操作を適用したものである。すなわち、第4軸J24の駆動は、図31(4)に示すように、2本指による円周方向へのドラッグ操作に基づいて行われる。また、第6軸J26の駆動は、図31(6)に示すように、3本指による円周方向へのドラッグ操作に基づいて行われる。
ここで、4軸の水平多関節ロボット2において、第1群の駆動軸は、第4軸J14のみから構成される。一方、6軸の垂直多関節ロボット22において、第1群の駆動軸は、第1軸J21、第4軸J24、及び第6軸J26の3つとなる。本実施形態では、第1群の駆動軸のうち、手先(フランジ31)側に近い2つの駆動軸(第4軸J24及び第6軸J26)については、複数本の指による円周方向へのドラッグ操作に基づいて行われる。
6軸の垂直多関節ロボット22において、ベース25側に最も近い第1軸J21が駆動されると、手先(フランジ31)は、水平面上で移動つまり2次元的に移動する。したがって、ユーザは、第1軸J21の駆動による手先(フランジ31)の動作を、水平面上の2次元的な動作であると意識し易くなる。一方、手先側に近い第4軸J24及び第6軸J26が駆動すると、手先(フランジ31)は、ロボット22の姿勢によっては水平面上のみならず垂直方向へも移動つまり3次元的に移動することになる。したがって、ユーザは、第4軸J24又は第6軸J26の駆動による手先(フランジ31)の動作を、水平面上の2次元的な動作というよりもむしろ、各駆動軸J24、J26を回転中心とした3次元的な回転動作であると意識し易くなる。
このように、ユーザが3次元的な回転動作であると意識し易い第4軸J24及び第6軸J26の操作を、複数本の指による円周方向のドラッグ操作とすることで、ユーザの意識と手先(フランジ31)の移動方向とを一致させることができる。したがって、このような実施形態によっても、各軸系の動作をさせる際に、ユーザは、自己の操作態様から、ロボット22の手先の移動方向を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。その結果、操作性の向上が図られ、安全性の低下を抑制することができるとともに、教示に要する時間を短縮することができる。
(第11実施形態)
次に、第11実施形態について、図32を参照して説明する。第11実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系の操作に適用した例である。この第11実施形態において、第1軸J21から第5軸J25までは、横方向へのドラッグ操作の指の本数に対応している。この場合、駆動軸選択処理は、ドラッグ操作の指の本数が1本、2本・・・5本と増加することに伴い、駆動させる駆動軸が第1軸J21、第2軸J22・・・第5軸J25と、ロボット22のベース25側から手先側へ移行するようにして、駆動させる駆動軸を決定する。
具体的には、第1軸J21の駆動は、図32(1)に示すように、1本指による横方向へのドラッグ操作に基づいて行われる。第2軸J22の駆動は、図32(2)に示すように、2本指による横方向へのドラッグ操作に基づいて行われる。第3軸J23の駆動は、図32(3)に示すように、3本指による横方向へのドラッグ操作に基づいて行われる。第4軸J24の駆動は、図32(4)に示すように、4本指による横方向へのドラッグ操作に基づいて行われる。第5軸J25の駆動は、図32(5)に示すように、5本指による横方向へのドラッグ操作に基づいて行われる。
また、第6軸J26の駆動は、図32(6)に示すように、1本指による横方向へのドラッグ操作に基づいて行われる。なお、この第6軸J26の駆動は、図31(4)に示す2本指による円周方向へのドラッグ操作に基づいて行われてもよい。この場合、2本指による円周方向へのドラッグ操作は、例えば2本の指で円を描くようにしてもよいし、1本の指を固定してもう1本の指で円を描くようにしてもよい。また、片手で操作してもよいし、両手で操作してもよい。また、第6軸J26の駆動は、図31(6)に示す3本指による円周方向へのドラッグ操作に基づいて行われてもよい。
このように、ドラッグ操作の指の本数と、駆動させる駆動軸の番号とを一致させることで、ユーザの意識と駆動軸とを一致させることができる。したがって、このような実施形態によっても、各軸系の動作をさせる際に、ユーザは、自己の操作態様から、駆動させる軸を連想し易くなる。すなわち、操作に対応する駆動軸が分かり易くなる。
また、これによれば、ユーザは、第6軸J26の駆動つまり手先の回転動作を、1本指の縦方向のドラッグ操作で行うことができる。手動操作は、上述したように、ロボットの手先の位置及び姿勢の微調整を行うために用いられることが多い。そのため、手動操作において、手先に最も近い第6軸J26は、多用されるとともに微細な動作が要求される。したがって、第6軸J26の駆動を、容易かつ精密な操作が可能な1本指によるドラッグ操作に対応させることで、ユーザは、手動操作で多用される手先の回転動作を、より容易かつ精密に行うことができる。これらの結果、操作性の向上が図られ、安全性の低下を抑制することができるとともに、教示に要する時間を短縮することができる。
なお、第6軸J26の駆動を、円周方向へのドラッグ操作に対応させた場合、ユーザは、第6軸J26の駆動によるロボットの手首の回転動作と、円周方向へのドラッグ操作とを関連して認識し易い。したがって、これによれば、より直感的な操作が可能となる。
(第12実施形態)
次に、第12実施形態について、図33を参照して説明する。第12実施形態は、いわゆるジェスチャ操作を、4軸の水平多関節ロボット2の各軸系又は手先系の操作に適用した例である。本実施形態において、ユーザは、ドラッグ操作の方向を変更することで、各軸系又は手先系の操作を行うことができる。本実施形態において、選択操作検出部18は、タッチパネル17に対するタッチ操作を検出するものである。そして、動作指令生成部が実行する決定処理は、選択操作検出部18で検出したタッチ操作がドラッグ操作である場合に、そのドラッグ操作の操作方向に基づいて、操作対象になる駆動軸又は動作態様を決定する処理である。
動作指令生成部16は、1本指によるドラッグ操作の方向を、ロボット2の駆動軸又は駆動態様毎に異なる方向になるように割り振っている。この場合、各軸系の動作では、各駆動軸が個別に駆動される。また、手先系の動作では、水平移動動作、垂直移動動作、及び手先の回転動作が行われる。ロボットの移動方向は、水平移動動作ではX方向又はY方向、垂直移動動作ではZ方向、回転動作ではRz方向となる。
次に、具体例について図33を参照して説明する。なお、本実施形態の説明では、タッチパネル上の縦方向、具体的には、図33(1)〜(4)の一点鎖線Dが示す方向を基準とする。本実施形態において、各軸系の動作における各軸の駆動又は手先系の動作における各方向への移動は、それぞれ基準Dに対して45°刻みで回転させた方向への操作に割り振られている。すなわち、各軸系の動作における第1軸J11の駆動又は手先系の動作におけるX方向への移動は、図33(1)に示すように、基準Dに沿った方向へのドラッグ操作に基づいて行われる。各軸系の動作における第2軸J12の駆動又は手先系の動作におけるY方向への移動は、図33(2)に示すように、基準Dに対して時計回り側へ45°回転させた方向へのドラッグ操作に基づいて行われる。
各軸系の動作における第3軸J13の駆動又は手先系の動作におけるZ方向(動作基準面Pに対して垂直方向)への移動は、図33(3)に示すように、基準Dに対して反時計回り側へ45°回転させた方向へのドラッグ操作に基づいて行われる。各軸系の動作における第4軸J14の駆動又は手先系の動作におけるRz方向(回転動作)への移動は、図33(4)に示すように、基準Dに直交する方向つまりタッチパネル17に対して横方向へのドラッグ操作に基づいて行われる。
なお、上述した基準Dに対するドラッグ操作の方向は、必ずしも厳密である必要はなく、ある程度の誤差が許容される。例えば、本実施形態では、ユーザが実際に行うドラッグ操作は、各駆動軸を駆動させる又は各動作を行わせるためのドラッグ操作の方向に対して、時計回り及び反時計回り側へそれぞれ22.5°の誤差が許容される。例えば、動作指令生成部16は、基準Dに対して時計回り側又は反時計回り側へ15°回転した方向へのドラッグ操作を、各軸系の操作においては第1軸J11を駆動するための操作と判断し、手先系の操作においてはX方向へ移動させるための操作と判断する。
これによれば、ユーザは、ドラッグ操作の方向を変えることで、操作対象にするロボット2の駆動軸又は動作態様、すなわちロボット2の動作の種類を選択することができる。したがって、ユーザは、動作の種類を選択するための複雑な操作を習得する必要がなく、操作が容易となる。その結果、安全性の低下を招くことなく、4軸型のロボット2の手動操作をタッチ操作により実現することができる。
このようなティーチングペンダント4に用いられるタッチパネル17は、矩形状のものが一般的である。そのため、ユーザは、矩形状のタッチパネル17の周囲の辺に沿った方向つまりタッチパネル17に対する縦方向及び横方向に対するドラッグ操作は、他の方向へのドラッグ操作に比べて、操作し易いと感じるものと思われる。本実施形態では、各軸系の動作において、手先が大きく動く第1軸J11の駆動を、ユーザにとって操作し易い縦方向に割り当てている。そのため、操作が容易になる。
また、手動操作は、ロボット2の手先の位置、姿勢の微調整を目的とすることが多い。そのため、手動操作の際、ロボット2の手先に最も近い第4軸J14の駆動つまり手先の回転動作は、高い精度が要求される。本実施形態では、第4軸J14の駆動又はRz方向への移動(回転動作)を、ユーザにとって操作し易い横方向に割り当てている。そのため、操作が容易になる。なお、ドラッグ操作の方向の割り当ては、上述したものに限られず、ユーザの熟練度やロボットの使用目的等に応じて適宜変更することができる。
また、これによれば、ドラッグ操作の指の本数を問題としないことから、ユーザは、指1本で入力操作を行うことができる。すなわち、このロボットシステム1は、ユーザが指1本で容易に操作することができるという利点を備えている。そして、この利点は、いわゆるタッチペンやスタイラスペンといったポインティングデバイスを利用する際にも有効である。すなわち、産業用ロボットの動作環境を考慮すると、ユーザの安全を確保するためにユーザが手袋を装着していたり、ユーザの手指に潤滑油等のタッチ操作を阻害する物質が付着していたりする可能性がある。この場合、ユーザが手指でタッチ操作を行っても、ロボット操作装置がそのタッチ操作を正確に認識しない可能性がある。一方、ユーザが手袋を装着していたり、ユーザの手指に潤滑油等が付着していたりする場合であっても、ユーザは、上述したポインティングデバイスを利用することで、正確なタッチ操作を行うことができる。このように、本実施形態によれば、ロボット2の手動操作において容易にポインティングデバイス利用できるという利点が得られる。
(第13実施形態)
次に、第13実施形態について、図34を参照して説明する。第13実施形態は、操作対象とするロボットが6軸の垂直多関節ロボット22である点で、上記第12実施形態と異なる。すなわち、第13実施形態は、いわゆるジェスチャ操作を、6軸の垂直多関節ロボット22の各軸系又は手先系の操作に適用した例である。本実施形態においても、ユーザは、ドラッグ操作の方向を変更することで、各軸系又は手先系の操作を行うことができる。この場合、手先系の動作には、第12実施形態におけるX方向、Y方向、Rz方向に加えて、Rx方向及びRy方向が含まれる。
具体例について、図34を参照して説明する。なお、本実施形態の説明では、タッチパネル上の縦方向、具体的には、図34(1)〜(6)の一点鎖線Dが示す方向を基準とする。本実施形態において、各軸系の動作における各軸の駆動又は手先系の動作における各方向への移動は、それぞれ基準Dに対して30°刻みで回転させた方向への操作に割り振られている。すなわち、各軸系の動作における第1軸J21の駆動又は手先系の動作におけるZ方向への移動は、図33(1)に示すように、基準Dに沿った方向へのドラッグ操作に基づいて行われる。各軸系の動作における第2軸J22の駆動又は手先系の動作におけるX方向への移動は、図34(2)に示すように、基準Dに対して時計回り側へ30°回転させた方向へのドラッグ操作に基づいて行われる。
各軸系の動作における第3軸J23の駆動又は手先系の動作におけるY方向への移動は、図34(3)に示すように、基準Dに対して時計回り側へ60°回転させた方向へのドラッグ操作に基づいて行われる。各軸系の動作における第4軸J24の駆動又は手先系の動作におけるRx方向への移動は、基準Dに対して反時計回り側へ30°回転させた方向へのドラッグ操作に基づいて行われる。各軸系の動作における第5軸J25の駆動又は手先系の動作におけるRy方向への移動は、基準Dに対して反時計回り側へ60°回転させた方向へのドラッグ操作に基づいて行われる。各軸系の動作における第6軸J26の駆動又は手先系の動作におけるRz方向への移動は、基準Dに直交するする方向へのドラッグ操作に基づいて行われる。
これによれば、6軸の垂直多関節ロボット22の手動操作について、上述した第12実施形態と同様の作用効果が得られる。
すなわち、各軸系の動作について見ると、第1軸J21及び第6軸J26の操作に、操作のし易い縦方向及び横方向へのドラッグ操作が割り当てられている。第1軸J21の駆動は、手先の移動に対する影響が大きい。第6軸J26は、手動操作の際に頻繁に使用する軸であり、また、第6軸J26の操作には、正確な調整が必要になる。したがって、このような第1軸J21及び第6軸J26に、操作のし易い縦方向及び横方向のドラッグ操作を割り当てることで、操作性の向上が図られる。
この場合、第2軸J22〜第5軸J25の操作は、斜め方向へのドラッグ操作が割り当てられている。斜め方向へのドラッグ操作は、縦方向及び横方向へのドラッグ操作よりも、操作性が若干劣ると考えられる。しかし、次のような理由から、第2軸J22〜第5軸J25の操作については、斜め方向のドラッグ操作による影響は小さいと考える。
すなわち、第2軸J22及び第3軸J23の駆動は、隣接する2つの斜め方向へのドラッグ操作に割り当てられている。つまり、第2軸J22及び第3軸J23の駆動は、基準Dに対して時計回り側へ0°〜90°の範囲内の角度で回転した方向へのドラッグ操作が割り当てられている。この場合、第2軸J22と第3軸J23との操作方向が似ていることから、誤操作が生じる可能性がある。ここで、第2軸J22の駆動及び第3軸J23の駆動は、いずれもロボット22の手先をZ方向(垂直方向)へ移動させるものであるから、両者の移動方向は類似している。したがって、ユーザが、仮に第2軸J22と第3軸J23の操作を間違えたとしても、いずれもロボット22の手先はZ方向へ移動するため、ロボット22の動作が、ユーザの予想しないものとなるおそれが低い。その結果、第2軸J22及び第3軸J23に対して誤操作した場合の危険性は、第1軸J21及び第6軸J26に比べて低い。
また、第4軸J24及び第5軸J25の駆動は、隣接する2つの斜め方向へのドラッグ操作に割り当てられている。この場合、第4軸J24及び第5軸J25の駆動は、基準Dに対して反時計回り側へ0°〜90°の範囲内の角度で回転した方向へのドラッグ操作が割り当てられている。この場合、ユーザは、第3軸J23と第4軸J24との操作方向が似ていることから、誤操作が生じる可能性がある。
ここで、第4軸J24又は第5軸J25が駆動されても、ロボット22の手先の移動量は第1軸J21〜第3軸J23に比べて小さい。また、第4軸J24及び第5軸J25は、ロボット22の手先を大きく移動させることよりも、微調整を行うことが主である。そのため、第4軸J24又は第5軸J25については、もともと大きな操作が入力されるおそれも低い。したがって、ユーザが、仮に第4軸J24と第5軸J25の操作を間違えたとしても、もともと入力される操作量が小さく、さらには誤操作により動作されても手先の移動量が小さいため、誤操作による危険性は、第1軸J21等に比べて低い。
また、手先系の動作について見ると、Z方向への動作は、縦方向へのドラッグ操作に割り当てられている。上述したように、縦方向へのドラッグ操作は、ロボット22の手先の垂直方向(Z方向)への移動を連想し易い。これによれば、ユーザは、自己が行っているドラッグ操作と、ロボット22の手先の移動方向とが一致し易いため、操作性が良い。
X方向及びY方向への動作は、隣接する2つの斜め方向へのドラッグ操作に割り当てられている。つまり、X方向及びY方向への動作は、基準Dに対して時計回り側へ0°〜90°の範囲内の角度で回転した方向へのドラッグ操作が割り当てられている。この場合、X方向とY方向との操作方向が似ていることから、誤操作が生じる可能性がある。しかし、X方向の動作が割り当てられたドラッグ操作の方向は、横方向の成分に比べて縦方向への成分の方が多い。上述したように、ユーザは、縦方向へのドラッグ操作から、X方向への動作を連想し易い。一方、Y方向の動作が割り当てられたドラッグ操作の方向は、縦方向の成分に比べて横方向の成分の方が多い。上述したように、ユーザは、横方向へのドラッグ操作から、Y方向への動作を連想し易い。これによれば、X方向の動作とY方向の動作とを間違える危険性を極力低くすることができる。
また、Rx方向及びRy方向の動作は、隣接する2つの斜め方向へのドラッグ操作に割り当てられている。つまり、Rx方向及びRy方向への動作は、基準Dに対して反時計回り側へ0°〜90°の範囲内の角度で回転した方向へのドラッグ操作が割り当てられている。この場合、斜め方向へのドラッグ操作は、縦方向又は横方向へのドラッグ操作に比べて、操作性が劣ると考えられる。しかし、Rx方向及びRy方向の動作は、手動操作の際に、他の動作に比べて使用される頻度が低い。したがって、Rx方向及びRy方向の動作に、斜め方向へのドラッグ操作を割り当てたとしても、全体の操作性に与える影響は小さい。これらの理由から、本実施形態によれば、各動作についての操作が容易となる。その結果、安全性の低下を招くことなく、6軸型のロボット22の手動操作をタッチ操作により実現することができる。
(第14実施形態)
次に、第14実施形態について、図35及び図36を参照して説明する。
近年、いわゆるスマートフォンやタブレットPCなどの安価なデバイス(以下、スマートデバイスと称する)が普及している。この安価なスマートデバイスを、ロボットの操作用のデバイス(ティーチングペンダント)として利用することができれば、専用の高価なティーチングペンダントを使用する必要がないため、コスト削減にも繋がる。この様なスマートデバイスは、主なインターフェイスとしてタッチパネルを備えており、ユーザが指でタッチパネルをなぞることで、2次元(X−Y平面)の同時入力を可能にしている。一方、産業界では、上述したような4軸型の水平多関節ロボット2及び6軸型の垂直多関節ロボット22が多用されている。
この場合、手動操作に必要な操作入力の種類は、4軸型のロボット2で4種類、6軸型のロボット22で6種類となる。したがって、スマートデバイスをロボット操作装置に採用するためには、2次元の操作入力で、2種類移動の操作入力に如何に対応するかが課題となる。そこで、本実施形態は、ロボット2、22の手動操作を行う際に、ロボット2、22の手先先端の位置に寄与する駆動軸又は動作態様に対する操作(主操作)と、ロボット2、22の手先先端の姿勢に寄与する駆動軸又は動作態様に対する操作(副操作)と、を切り替えて行うようにしている。
すなわち、図1等に示す4軸型のロボット2の各軸系の動作において、ロボット2の手先先端位置に寄与する駆動軸は、第1軸J11、第2軸J12、及び第3軸J13であり、ロボット2の手先先端姿勢に寄与する駆動軸は、第4軸J14である。すなわち、図35に示すように、4軸型のロボット2の各軸系の動作において、主操作は、第1軸J11、第2軸J12、及び第3軸J13を駆動させるための操作である。また、副操作は、第4軸J14を駆動させるための操作である。
また、図1等に示す4軸型のロボット2の手先系の動作において、ロボット2の手先先端位置に寄与する動作態様は、X方向、Y方向、及びZ方向への移動であり、ロボット2の手先先端姿勢に寄与する動作態様は、Rz方向である。すなわち、図35に示すように、4軸型のロボット2の手先系の動作において、主操作は、ロボット2の手先を、X方向、Y方向、及びZ方向への移動のための操作である。また、副操作は、ロボット2の手先を、Rz方向への移動させるための操作である。
同様に、図10等に示す6軸型のロボット22の各軸系の動作において、ロボット22の手先先端位置に寄与する駆動軸は、第1軸J21、第2軸J22、及び第3軸J23であり、ロボット22の手先先端姿勢に寄与する駆動軸は、第4軸J24、第5軸J25、及び第6軸J26である。すなわち、6軸型のロボット22の各軸系の動作において、主操作は、第1軸J21、第2軸J22、及び第3軸J23を駆動させるための操作であり、副操作は、第4軸J24、第5軸J25、及び第6軸J26を駆動させるための操作である。
また、図10等に示す6軸型のロボット22の手先系の動作において、ロボット22の手先先端位置に寄与する動作態様は、X方向、Y方向、及びZ方向への移動であり、ロボット22の手先先端姿勢に寄与する動作態様は、Rx方向、Ry方向、及びRz方向への移動である。すなわち、6軸型のロボット22の手先系の動作において、主操作は、ロボット22の手先を、X方向、Y方向、及びZ方向へ移動させるための操作である。また、副操作は、ロボット22の手先を、Rx方向、Ry方向、及びRz方向への移動させるための操作である。
本実施形態のティーチングペンダント4は、図36に示すように、上記各実施形態におけるティーチングペンダント4の構成に加えて、第1ボタン41及び第2ボタン42を備えている。第1ボタン41及び第2ボタン42は、例えば物理的なボタンであり、ティーチングペダント40で再生する音声の音量を増加又は減少させるためのものであってもよい。この場合、制御部14は、ロボット操作装置用のプログラムを実行することにより、第1ボタン41及び第2ボタン42に対して、主操作及び副操作を切り替える機能を付与することができる。これにより、第1ボタン41及び第2ボタン42は、主操作と副操作とを切り替えることができる切替部として機能する。
例えば、「+」の記号が付された第1ボタン41は、主操作に対応し、「−」の記号が付された第2ボタン42は、副操作に対応している。この場合、制御部14は、第1ボタン41が操作されたことを検出すると、その後にタッチ操作検出部15で検出したタッチ操作を、主操作であると判断する。一方、制御部14は、第2ボタン42が操作されたことを検出すると、その後にタッチ操作検出部15で検出したタッチ操作を、副操作であると判断する。このようにして、ユーザは、第1ボタン41及び第2ボタン42を操作することで、主操作と副操作の入力を切り替えることができる。
なお、切替部は、上述した第1ボタン41及び第2ボタン42のように、他の機能と併用するものに限られず、主操作及び副操作を切り替えるための専用の物理的なボタンであってもよい。また、例えば、切替部は、タッチパネル17上に表示させたものであってもよい。タッチパネル17上に表示させる切替部の例としては、ボタン形状のものや、いわゆるスライドバーであって、いずれか一方へスライドさせることにより主操作と副操作とを切り替えるものが考えられる。
タッチパネル17は、図36に示すように、第1領域171と第2領域172とに分かれている。第1領域171及び第2領域172は、制御部14によってロボット操作プログラムが実行されることにより、タッチパネル17上に仮想的に形成される。本実施形態では、図36に示すように、矩形のタッチパネル17が横長の姿勢である場合、第1領域171がタッチパネル17の左側に位置し、第2領域172がタッチパネル17の右側に位置するようにしている。すなわち、タッチパネル17上において、仮想境界線Eの左側部分が第1領域171となり、仮想境界線Eの右側部分が第2領域172となる。
なお、第1領域171及び第2領域172の配置はこれに限られない。例えば、タッチパネル17が縦長となる姿勢の場合、すなわち、ティーチングペンダント4を図35の状態から90°回転させた場合、第1領域171がタッチパネル17の上側部分に位置し、第2領域172がタッチパネル17の下側部分に位置するようにしている。また、これら第1領域171及び第2領域172の位置は、相互に入れ替えても良い。この場合、ティーチングペンダント4は、ジャイロセンサや加速度センサ等の姿勢検出部19によって、自己の姿勢を判断することができる。
第1領域171は、直交する2方向への操作をタッチ操作検出部15によって検出することができる領域である。この場合、第1領域171内において、矢印A1で示す方向が、縦方向上側となり、矢印A2で示す方向が縦方向下側となる。また、矢印B1で示す方向が、横方向右側となり、矢印B2で示す方向が、横方向左側となる。第2領域172は、一方向この場合縦方向への操作をタッチ操作検出部15によって検出することができる領域である。
すなわち、本実施形態では、第1領域171は、縦及び横方向への2種類のドラッグ操作を検出することができる領域である。また、第2領域172は、縦方向への1種類のドラッグ操作を検出することができる領域である。そのため、本実施形態では、第1領域171は、第2領域172よりも大きい。なお、必要な操作入力の数によっては、第2領域172も、第1領域171と同様に、縦及び横方向への2種類のドラッグ操作を検出することができるようにしてもよい。
動作指令生成部16は、タッチ操作検出部15で検出したドラッグ操作が、第1領域171に対するものである場合と、第2領域172に対するものである場合とで、それぞれ異なる駆動軸又は動作態様を行うための動作指令を生成する。すなわち、4軸型のロボット2の主操作について見ると、第1領域171に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第1軸J11の駆動又は手先系におけるX方向への移動に対応している。第1領域171に対する横方向(矢印B1、B2方向)へのドラッグ操作は、各軸系における第2軸J12の駆動又は手先系におけるY方向への移動に対応している。第2領域172に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第3軸J13の駆動又は手先系におけるZ方向への移動に対応している。
また、4軸型のロボット2の副操作について見ると、第1領域171に対する横方向(矢印B1、B2方向)へのドラッグ操作は、各軸系における第4軸の駆動又は手先系におけるRz方向への移動に対応している。なお、4軸型のロボット2では、4種類の操作入力が判断できれば十分であるため、副操作における第1領域171に対する縦方向へのドラッグ操作及び第2領域172に対する操作は、いずれの駆動軸又は動作態様にも対応していない。
また、6軸型のロボット22の主操作について見ると、第1領域171に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第2軸J22又は手先系におけるX方向への移動に対応している。第1領域171に対する横方向(矢印B1、B2方向)へのドラッグ操作は、各軸系における第3軸J23又は手先系におけるY方向への移動に対応している。第2領域172に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第1軸J21の駆動又は手先系におけるZ方向への移動に対応している。
また、6軸型のロボット22の副操作について見ると、第1領域171に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第4軸J24の駆動又は手先系におけるRx方向への移動に対応している。第1領域171に対する横方向(矢印B1、B2方向)へのドラッグ操作は、各軸系における第5軸J25の駆動又は手先系におけるRy方向への移動に対応している。また、副操作において、第2領域172に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、各軸系における第6軸J26の駆動又は手先系におけるRz方向への移動に対応している。なお、各軸系の副操作において、第1領域171に対する縦方向(矢印A1、A2方向)へのドラッグ操作を、第5軸J25の駆動に対応させ、横方向(矢印B1、B2方向)へのドラッグ操作を、第4軸J24の駆動に対応させてもよい。この場合、第2領域172に対する縦方向(矢印A1、A2方向)へのドラッグ操作は、第4軸J24の駆動に対応する。
本実施形態によれば、ユーザは、切替部である第1ボタン41と第2ボタン42とを操作することで、主操作と副操作とを切り替えることができる。これにより、ユーザは、ロボット2、22を手動操作する際に、ロボット2、22の手先位置を決めるための操作を行っているか、手先の姿勢を決めるための操作を行っているかを明確に意識することができる。したがって、ユーザが、手先の姿勢を決定しようとしているにもかかわらず、手先の位置を変える操作をしてしまう等の誤操作を抑制することができ、その結果、安全性の向上が図られる。
また、タッチパネル17は、第1領域171と第2領域172とに分かれている。第1領域171は、互いに直交する2方向への操作をタッチ操作検出部15によって検出することができるタッチパネル17上の領域である。第2領域172は、1方向への操作をタッチ操作検出部15によって検出することができるタッチパネル17上の領域である。すなわち、動作指令生成部16は、第1領域171に入力される2方向のドラッグ操作と、第2領域172に入力される1方向のドラッグ操作とで、合計3種類のドラッグ操作を判断することができる。そして、各領域171、172について、主操作と副操作とを切り替えることができる。したがって、動作指令生成部16は、最大6種類の操作入力を判断することができる。よって、このようなティーチングペンダント4によれば、産業界で多用されている4軸型の水平多関節ロボット2及び6軸型の垂直多関節ロボット22の両方において、手先系の動作及び各軸系の動作の手動操作に対応することができる。
(第15実施形態)
次に、第15実施形態について、図37及び図38を参照して説明する。
第15実施形態は、手先系の動作において、Z方向(垂直方向)の移動を、ティーチングペンダント4の姿勢に基づいて行うものである。すなわち、本実施形態のティーチングペンダント4は、図2に示す姿勢検出部19を、タッチパネル17の傾きを検出することでユーザからの傾き操作の入力を検出することができる傾き操作検出部として利用している。このティーチングペンダント4の動作指令生成部16は、水平移動動作指令生成処理と、垂直移動動作指令生成処理と、を行うことができる。
水平移動動作指令処理は、タッチ操作検出部15で検出されたタッチ操作に基づいてロボット2、22の手先をロボット2、22の動作基準面Pに対して水平な平面方向に移動させるための動作指令を生成する処理である。垂直移動動作指令生成処理は、姿勢検出部19(傾き操作検出部)で検出された傾き操作に基づいてロボット2、22の手先を動作基準面Pと直交する垂直軸方向に沿って移動させるための動作指令を生成する処理である。
すなわち、ユーザは、手先系の動作において、X方向及びY方向の移動(平面移動動作)について操作をする際、タッチパネル17に対して縦方向又は横方向へのドラッグ操作を行う。この場合、図37に示すように、タッチパネル17に対する縦方向へのドラッグ操作は、ロボット2、22のX方向への移動に対応している。タッチパネル17に対する横方向へのドラッグ操作は、ロボット2、22のY方向への移動に対応している。
また、タッチパネル17上には、図37及び図38に示すように、ユーザの操作が可能なボタン43、44が表示されている。ボタン43、44は、ユーザの両手に対応した位置に表示される。この場合、ボタン43は、ユーザの右手の親指で操作し易い位置、例えばタッチパネル17の右側下部に表示される。また、ボタン44は、ユーザの左手の親指で操作し易い位置、例えばタッチパネル17の左側下部に表示される。ユーザは、両手でボタン43、44をタッチ操作しながら、ティーチングペンダント4を手前側(ユーザ側)又は奥側(ユーザと反対側)へ傾けることにより、つまりティーチングペンダント4を傾け操作することにより、ロボット2、22のZ軸方向への移動を操作する。
この場合、図38の矢印G1で示すように、ティーチングペンダント4を手前側へ傾ける傾け操作は、ロボット2、22の手先が上昇する方向つまり動作基準面Pから離反する方向への移動に対応している。また、図38の矢印G2で示すように、ティーチングペンダント4を奥側へ傾ける傾け操作は、ロボット2、22の手先が下降する方向つまり動作基準面Pに近づく方向への移動に対応している。
動作指令生成部16は、ボタン43、44の操作を検出することで、水平移動動作指令処理と、垂直移動動作指令生成処理とを切り替えるようにしている。すなわち、制御部14は、ユーザの両手に対応するボタン43、44の両方ともが操作されている場合には、傾き操作を受け付けるとともにタッチパネル17に対するドラッグ操作を受け付けないようにし、それ以外の場合には、タッチパネル17に対するドラッグ操作を受け付けるとともに傾き操作を受け付けないようにしている。すなわち、制御部14は、ボタン43、44の両方がタッチ操作されることで、傾き操作の入力の受け付けを開始し、ボタン43、44の両方又はいずれか一方がタッチ操作されることで、傾き操作の入力の受け付けを終了する。
また、制御部14は、ボタン43、44の両方が操作された時点のティーチングペンダント4の姿勢を、その後の傾き操作の基準にする。この場合、重力方向つまり鉛直方向が、必ずしも傾き操作の基準になるとは限らない。また、動作指令生成部16は、Z方向の移動に際し、基準に対するティーチングペンダント4の傾斜量を、ロボット2、22の動作速度としてもよいし、移動量そのものとしてもよい。すなわち、動作指令生成部16は、姿勢検出部19(傾き操作検出部)で検出された傾き操作の傾き量に応じて、ロボット2、22の移動速度又は移動量を増減する。この場合、動作指令生成部16は、基準に対して傾き量が大きいほど、ロボット2、22の移動速度又は移動量を大きくする。
これによれば、ユーザは、手先系の動作の際、タッチパネル17に対してタッチ操作をすることにより、ロボット2、22の手先を水平方向へ移動させる操作をすることができる。したがって、ユーザは、ロボット2、22の手先を水平方向へ移動させる際、タッチパネル17に対する2次元的な操作と、ロボット2、22の手先の水平方向への移動つまり2次元的な動きとを関連して認識し易くなる。
また、ユーザは、ティーチングペンダント4つまりタッチパネル17を傾ける操作(傾け操作)をすることにより、ロボット2、22の手先を垂直方向へ移動させる操作をすることができる。つまり、ユーザは、ロボット2、22の手先を垂直方向へ移動させる際、タッチパネル17に対するタッチ操作とは異なる態様の操作すなわちタッチパネル17を傾ける操作を行う。したがって、ユーザは、水平方向への移動に対する操作と、垂直方向への移動に対する操作とを明確に区別することができる。よって、操作性が向上し、その結果、安全性の向上や、ロボット2、22の教示に要する時間を短縮することができる。
動作指令生成部16は、傾き操作検出部19(姿勢検出部)で検出された傾き操作の傾き量に応じて、ロボットの移動速度又は移動量を増減する。これによれば、ユーザは、傾き操作によるタッチパネル17の傾き量を調整することで、ロボット2、22の移動速度又は移動量を調整することができる。よって、ユーザは、直観的にロボット2、22の垂直方向への移動を操作することができ、その結果、操作性の向上が図られる。
動作指令生成部16は、ボタン43、44の操作を検出することで、水平移動動作指令処理と、垂直移動動作指令生成処理とを切り替えるようにしている。これによれば、例えばユーザが垂直移動動作を行う意図がないのに誤ってティーチングペンダント4傾けてしまった場合でも、垂直移動動作がされるおそれがない。したがって、誤操作が抑制され、安全性の向上が図られる。
しかも、制御部14は、ユーザの両手に対応したボタン43、44の両方が操作されている場合に限り、傾き操作の入力を受け付けるようにしている。したがって、仮にボタン43、44の一方が誤って操作された場合でも、誤操作を防ぐことができる。また、ボタン43、44は、ユーザが親指で操作し易い位置に配置されている。したがって、操作し易い。また、両手に対応してボタン43、44が設けられているため、ユーザの利き手の違いが、操作性の違いに影響することを抑制することができる。
(第16実施形態)
次に、第16実施形態について、図39〜図41を参照して説明する。本実施形態のティーチングペンダント4は、ユーザが、駆動軸又は動作態様に対応する文字、数字、又は記号をタッチパネル17に入力することによって、ロボット2、22の駆動軸又は動作態様を決定するものである。以下の説明では、ティーチングペンダント4を上下方向に長い縦長となる姿勢で取り扱った場合について説明する。なお、ティーチングペンダント4の姿勢は、縦長に限られず、水平方向に長い横長であってもよい。
タッチパネル17は、図39に示すように、開始操作検出領域173と、移動量決定領域174と、を有している。また、タッチパネル17は、図40に示すように、動作選択領域175を有している。開始操作検出領域173は、例えばタッチパネル17の上側部分に設けられ、タッチパネル17の全領域の2/3程度を占めている。開始操作検出領域173は、動作選択領域175に対する操作の受け付けを開始するためのタッチ操作(開始操作)を検出する領域である。開始操作検出領域173は、開始操作検出部として機能する。開始操作検出部は、タッチパネル17上の領域である開始操作検出領域173に換えて、タッチパネル17上に表示されるボタンや、タッチパネル17とは異なる物理的なボタンであってもよい。
移動量決定領域174は、タッチパネル17の下側部分に設けられ、タッチパネル17の全領域の1/3程度を占めている。移動量決定領域174は、ロボット2、22の移動量を決定するための操作(移動量決定操作)を受け付ける領域である。移動量決定操作は、例えば移動量決定領域174内における左右方向のドラッグ操作である。この場合、ロボット2、22の移動前の状態を基準とすると、右方向へのドラッグ操作は正方向であり、左方向のドラッグ操作は負方向である。移動量決定操作における、ドラッグ操作の移動量で、ロボット2、22の移動速度又は移動量が決定される。
動作指令生成部16は、開始操作検出領域173で開始操作を検出した後に、動作選択領域175に対するタッチ操作を受け付けるようにする。動作選択領域175は、図39に示すように、タッチパネル17の全体の領域に設けられる。動作選択領域175は、操作対象にするロボット2、22の駆動軸又は動作態様を選択するための操作(動作選択操作)を受け付ける領域である。動作選択領域175には、操作対象となるロボット2、22の駆動軸又は動作態様に対応する数字、文字、又は記号が入力される。
動作選択操作の具体例としては、例えば次のようなものがある。各軸系の動作について見ると、例えば第1軸J11、J21を操作対象とする場合、動作選択操作は、第1軸J11、J21に対応するアラビア数字の「1」の入力である。第2軸J12、J22を操作対象とする場合、動作選択操作は、第2軸J12、J22に対応するアラビア数字の「2」の入力である。また、手先系の動作について見ると、例えばロボット2、22に水平移動動作を行わせる場合、動作選択操作は、水平移動動作に対応するアルファベットの「H」の入力である。ロボット2、22に垂直移動動作を行わせる場合、動作選択操作は、垂直移動動作に対応するアルファベットの「V」の入力である。ロボット2、22に手先の回転動作を行わせる場合、動作選択操作は、回転動作に対応するアルファベットの「R」の入力である。ちなみに、「H」は、「Horizontal」の頭文字、「V」は「Vertical」の頭文字、「R」は「Rotational」の頭文字である。
制御部14は、上述の構成を実現するために、図41の内容の制御を実行する。なお、以下の説明において、制御部14による処理は、タッチ操作検出部15及び動作指令生成部16による処理を含むものとする。制御部14は、図41に示す制御を開始すると、まず、ステップS51において、タッチパネル17を第1モードに設定する。第1モードでは、図39に示すように、タッチパネル17上の領域が、開始操作検出領域173と移動量決定領域174とに設定される。したがって、第1モードにおいて、タッチパネル17は、開始操作検出領域173に対する操作(開始操作)及び移動量決定領域174に対する操作は受け付けるが、動作選択領域175に対する操作(動作選択操作)は受け付けない。
次に、制御部14は、ステップS52にいて、開始操作検出領域173で開始操作の検出の有無を判断する。制御部14は、開始操作の検出が無いと判断した場合(ステップS52でNO)、ステップS57へ移行する。一方、制御部14は、開始操作の検出が有ると判断した場合(ステップS52でYES)、ステップS53へ移行する。なお、本実施形態において、開始操作と動作選択操作とは、連続した一連の操作となっている。すなわち、動作選択操作に係る一連の操作うち、タッチパネル17に最初に接触する操作が、開始操作となる。
ステップS53において、制御部14は、タッチパネル17を第2モードに設定する。第2モードでは、図40に示すように、タッチパネル17上の全ての領域が、動作選択領域175に設定される。したがって、第2モードにおいて、タッチパネル17は、動作選択領域175に対する操作(動作選択操作)は受け付けるが、開始操作検出領域173に対する操作(開始操作)及び移動量決定領域174に対する操作(移動量決定操作)は受け付けない。すなわち、制御部14は、動作選択領域175に対する操作(動作選択操作)が検出された場合に、その動作選択操作が終了するまでの期間は、移動量決定領域174に対する操作の検出を無効化する。
次に、制御部14は、ステップS54において、動作選択操作が終了したか否かを判断する。動作選択操作が終了したか否かの判断は、例えば次のようにして行われる。すなわち、制御部14は、動作選択領域175に対してタッチ操作が行われ、そのタッチ操作に係るユーザの指がタッチパネル17から離れた後、所定時間タッチ操作が行われない場合に、動作選択操作が終了したと判断する(ステップS54でYES)。一方、制御部14は、動作選択領域175に対してタッチ操作が行われ、そのタッチ操作に係るユーザの指がタッチパネル17から離れた後であっても、所定時間内に更に動作選択領域175に対してタッチ操作が行われた場合には、動作選択操作が継続されていると判断する(ステップS54でNO)。これにより、制御部14は、例えば「H」の文字のように一筆では入力できないような操作入力も、判断することができる。
制御部14は、動作選択操作が終了したと判断すると(ステップS54でYES)、入力された動作選択操作に基づいて、ロボット2、22の駆動軸又は動作態様を決定する(ステップS55)。そして、制御部14は、ステップS56において、タッチパネル17を第1モードに設定する。これにより、図39に示すように、タッチパネル17上の領域が、再び開始操作検出領域173と移動量決定領域174とに設定される。
次に、制御部14は、ステップS57において、移動量決定領域174におけるドラッグ操作(移動量決定操作)の検出の有無を判断する。制御部14は、移動量決定領域174に対するドラッグ操作(移動量決定操作)の検出が有った場合、ステップS58へ移行する。そして、制御部14は、ステップS57で検出したドラッグ操作(移動量検出操作)の移動量に基づいて、ステップS55で決定した駆動軸又は動作態様によるロボット2、22の移動量を決定する。
その後、制御部14は、ステップS59において、ステップS58で決定した移動量で、ロボット2、22を移動させるための動作指令を生成する。そして、その動作指令がコントローラ3へ送信され、コントローラ3は、その動作指令に基づいてロボット2、22の動作を制御する。その後、制御部14は、ステップS60へ移行する。一方、制御部14は、ステップS57において、移動量決定領域174に対するドラッグ操作の検出が無いと判断した場合、ステップS60へ移行する。
制御部14は、ステップ60において、ステップS57で移動量決定操作を検出した後、又はステップS51、S56において第1モードに設定した後、一定時間経過したか否かを判断する。制御部14は、一定期間経過していないと判断した場合(ステップS60でNO)、ステップS57へ移行し、移動量決定操作の検出を継続する。一方、制御部14は、一定期間経過したと判断した場合(ステップS60でYES)、一連の処理を終了する。
このようなティーチングペンダント4によれば、ユーザは、ロボット2、22の動作を選択する場合には、動作選択領域175においてタッチ操作(動作選択操作)を行い、ロボット2、22の移動量を決定する場合には、移動量決定領域174においてタッチ操作(移動量決定操作)を行う。したがって、ユーザは、ロボット2、22の動作を選択するための操作(動作選択操作)と、ロボット2、22の移動量を決定するための操作(移動量選択操作)とを明確に区別することができる。これにより、ティーチングペンダント4の操作性の向上が図られ、その結果、安全性の向上が図られるとともに、教示に要する時間を短縮することができる。
制御部14は、開始操作検出領域173に対するタッチ操作(開始操作)を検出した後でなければ、動作選択領域175に対するタッチ操作(動作選択操作)を受け付けない。つまり、ユーザは、意図して開始操作を行うことで、動作選択領域175に対する操作(動作選択操作)を行うことができる。これによれば、動作選択領域175に対する意図しない操作入力が低減される。したがって、誤操作による意図しない動作が行われることを抑制することができる。その結果、安全性が更に向上する。
動作選択操作は、タッチパネル17に対して駆動軸又は動作態様に対応する数字、文字、又は記号を入力する操作である。これによれば、ユーザは、タッチパネル17に対して、数字、文字、記号を入力することで、その入力に対応した駆動軸又は動作態様について操作をすることができる。したがって、ユーザは、ロボット2、22の動作を決定するための操作入力(動作選択操作)と、その操作入力によって行われるロボット2、22の動作とを関連して認識し易くなる。これにより、ユーザが誤った動作を選択するといった誤操作が抑制されて操作性の向上が図られる。その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
制御部14は、動作選択操作を入力した後又は移動量決定操作を入力した後、一定時間、移動量決定領域174に対する操作(移動量決定操作)が無い場合には、動作指令を生成することなく、処理を終了する。すなわち、動作選択操作又は移動量決定操作を行った後、一定時間経過すると、再度、動作選択操作の入力が必要になる。これによれば、前回の操作から時間が経って、現在どの駆動軸又は動作態様が選択されているかユーザが忘れた場合であっても、再度、ユーザに動作選択操作を入力させることにより、ユーザに、駆動軸又は動作態様の選択を認識させることができる。これにより、駆動軸又は動作態様の選択間違いを防止することができる。なお、タッチパネル17の表示部12に、現在選択されている駆動軸又は動作態様を表示させてもよい。
(第17実施形態)
次に、第17実施形態について、図42及び図43を参照して説明する。本実施形態は、いわゆるジェスチャ操作としてドラッグ操作を行った際の、ロボット2、22の移動速度及び移動量の決定に関するものである。本実施形態において、動作指令生成部16は、操作判断処理と、速度算出処理と、動作指令生成処理と、を行うことができる。操作判断処理は、タッチ操作検出部15で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作による指の移動量を判断する処理である。速度算出処理は、操作判断処理で判断した指の移動量に基づいてロボット2、22の移動速度を算出する処理である。動作指令生成処理は、速度算出処理で算出した移動速度でロボット2、22を移動させるための動作指令を生成する処理である。
動作指令生成部16は、ドラッグ操作の指の移動量に基づいてロボット2、22の移動距離を算出する移動量算出処理を行うことができる。例えば、図42では、ドラッグ操作の開始地点を地点Sp、ドラッグ操作の終了地点を地点Epで示している。ドラッグ操作の終了は、ユーザの指がタッチパネル17から離れたときである。この場合、ドラッグ操作の指の移動量は、開始地点Spから終了地点Seまでの距離Lである。制御部14は、ドラッグ操作の移動距離Lに基づいて、ロボット2、22の移動距離Lrを算出する。また、制御部14は、移動距離Lをドラッグ操作の入力時間で割った値、つまり、ドラッグ操作における指の移動に係る平均速度Vに基づいて、ロボット2、22の平均速度Vrを算出する。
制御部14は、上述の構成を実現するために、図43の内容の制御を実行する。なお、以下の説明において、制御部14による処理は、タッチ操作検出部15及び動作指令生成部16による処理を含むものとする。また、図42で示すタッチパネル17上のX−Y座標系と、ロボット2、22の座標系とは、必ずしも一致しなくてもよい。
制御部14は、ドラッグ操作を検出して、図43に示す制御を開始すると、ステップS71、S72において、ドラッグ操作の開始地点Sp(Xs、Ys)、及び終了地点Ep(Xe、Ye)を検出する。次に、制御部14は、ステップS73において、ドラッグ操作に要した時間つまりドラッグ操作の入力時間Tiを検出する。次に、制御部14は、ステップS74において、開始地点Sp(Xs、Ys)及び終了地点Ep(Xe、Ye)から、ドラッグ操作による指の移動量L、ドラッグ操作による指の平均速度V、及びドラッグ操作の操作方向を算出する。このステップS74には、操作判断処理が含まれている。
その後、制御部14は、ステップS75において、ステップS74で算出したドラッグ操作の移動量Lと平均速度Vと操作方向とから、ロボット2、22の移動量Lr、平均速度Vr、及び移動方向を算出する。このステップS75には、速度算出処理が含まれている。そして、制御部14は、ステップS76において、移動量Lr、平均速度Vr、及び移動方向に基づいて、動作指令を生成する(動作指令生成処理)。そして、その動作指令がコントローラ3へ送信され、コントローラ3は、その動作指令に基づいてロボット2、22の動作を制御する。これにより、制御部14は、一連の処理を終了する。
本実施形態において、制御部14は、ドラッグ操作による指の移動量Lに基づいてロボット2、22の移動速度Vrを算出する速度算出処理を行うことができる。これによれば、ユーザのドラッグ操作による指の移動量Lと、ロボット2、22の移動速度Vrとは相関を有することになる。したがって、ユーザは、ドラッグ操作による指の移動量Lを調整することにより、ロボットの移動速度Vrを調整することができる。そのため、ユーザは、直観的な操作が可能になり、操作性の向上が図られる。その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
また、制御部14は、ドラッグ操作による指の移動量Lに基づいてロボット2、22の移動距離Lrを算出する移動量算出処理を行うことができる。これによれば、ユーザは、ドラッグ操作による指の移動量Lを調整することにより、ロボット2、22の移動量Lrつまり移動距離Lrを調整することができる。さらに、速度算出処理は、ドラッグ操作による指の移動量Lをドラッグ操作の入力に要した時間で除した値に基づいて、ロボット2、22の移動速度Vrを決定する処理である。これによれば、ユーザは、ドラッグ操作の入力に要する時間を調整することで、ロボット2、22の移動速度Vrを調整することができる。
したがって、ユーザは、ドラッグ操作の入力に際し、そのドラッグ操作の移動量Lと入力時間Tiを調整することにより、ロボット2、22の移動速度Vrと移動量Lrの両方を調整することができる。すなわち、ユーザは、1度のドラッグ操作によって、ロボット2、22の移動速度Vrと移動量Lrの両方を調整することができる。これにより、ユーザは、直観的な操作が可能になる。また、これによれば、ユーザは、ロボット2、22の移動速度Vrと移動量Lrを決定するために、複数の操作、例えばロボット2、22の移動速度Vrを決定するための操作とロボット2、22の移動量Lrを決定するための操作とを行う必要がない。したがって、操作が簡単になり、操作性の向上が図られる。これらの結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
なお、図42の表示部12にある円で示された開始地点Sp、終了地点Ep、及び白抜き矢印は、ドラッグ操作の動作を説明するために便宜的に記載したものであり、操作の際に実際に表示部12に表示されるものではない。しかしながら、ティーチングペンダント4は、ドラッグ操作に伴って、開始地点Sp、終了地点Ep、及び白抜き矢印を表示部12に表示させてもよい。これによれば、ユーザが、自己の操作内容を確認する際に役立つ。
(第18実施形態)
次に、第18実施形態について、図44及び図45も参照して説明する。本実施形態は、ロボット2、22の動作を、操作入力に対してほぼリアルタイムで実行するための構成である。すなわち、上記第17実施形態では、ドラッグ操作の入力が終了した後に、ロボット2、22の動作が行われる。そのため、ロボット2、22の動作は、ドラッグ操作の終了後になる。したがって、ユーザによるドラッグ操作の入力と、ロボット2、22の実際の動作とに、時間差が生じる。一方、本実施形態において、制御部14は、ドラッグ操作が終了する前であっても、ロボット2、22の動作指令を適宜生成する。したがって、ロボット2、22の実際の動作は、ユーザによるドラッグ操作の入力に対して、ほぼリアルタイムで行われる。
具体的には、制御部14は、ドラッグ操作が行われている間は一定の周期Sで操作判断処理と速度算出処理と動作指令生成処理とを行うことができる。ドラッグ操作が行われている間とは、ユーザの指がタッチパネル17に触れてドラッグ操作が開始されてから、ユーザの指がタッチパネル17から離れるまでの期間を意味する。この場合、図44にも示すように、ドラッグ操作の開始地点Spと終了地点Epとの間の距離Lのドラッグ操作を入力している期間が、ドラッグ操作が行われている期間となる。
制御部14は、上述の構成を実現するために、図44の内容の制御を実行する。なお、以下の説明において、制御部14による処理は、タッチ操作検出部15及び動作指令生成部16による処理を含むものとする。制御部14は、ドラッグ操作の入力を検出している間、図45に示す処理内容を実行する。制御部14は、図45に示す制御を開始すると、ステップS81において、ドラッグ操作による現在の指の地点P1(X1、Y1)を検出する。次に、制御部14は、ステップS82において、一定の時間Sが経過するまで待機する(ステップS82でNO)。制御部14は、時間Sが経過すると(ステップS82でYES)、ステップS83において、ドラッグ操作による現在の指の地点P2(X2、Y2)を検出する。
次に、制御部14は、ステップS84において、地点P1、P2、及び時間Sから、ドラッグ操作の操作方向と、一定時間S当たりにおけるドラッグ操作の移動量dL及び移動速度dVを算出する。このステップS84には、操作判断処理が含まれている。次に、制御部14は、ステップS85において、ステップS84で算出しらドラッグ操作の移動量dL、移動速度dV、及び操作方向から、ロボット2、22の移動方向と、一定時間S当たりの移動量dLr及び移動速度dVrを算出する。このステップS84には、速度算出処理が含まれている。
次に、制御部14は、ステップS86において、一定時間S当たりの移動量dLr、平均速度dVr、及び移動方向に基づいて、動作指令を生成する(動作指令処理)。そして、その動作指令がコントローラ3へ送信され、コントローラ3は、その動作指令に基づいてロボット2、22の動作を制御する。その後、制御部14は、ステップS87において、ドラッグ操作の入力が終了したか否かを判断する。制御部14は、ドラッグ操作の入力が終了していないと判断した場合(ステップS81でNO)、ステップS81へ移行し、ステップS81からステップS87を繰り返す。一方、制御部14は、ドラッグ操作の入力が終了したと判断した場合(ステップS81でYES)、一連の処理を終了する。このようにして、制御部14は、ドラッグ操作が行われている間、一定時間Sつまり一定周期Sで、操作判断処理と速度算出処理と動作指令生成処理とを繰り返す。
本実施形態によれば、制御部14は、ユーザによるドラッグ操作の終了を待つことなく、動作指令を生成することができる。したがって、動作指令生成部16は、ユーザからのドラッグ操作に対してほぼリアルタイムで、ロボット2、22を動作させるための動作指令を生成することができる。そのため、ユーザによるドラッグ操作の入力と、ロボット2、22の実際の動作と時間差を、極力低減することができる。よって、ユーザは、より直感的な操作が可能になり、その結果、安全性の向上、ひいては教示時間の短縮を図ることができる。
(第19実施形態)
次に、第19実施形態について、図46から図48を参照して説明する。本実施形態は、いわゆるジェスチャ操作としてドラッグ操作を行った際のドラッグ操作の操作量とロボット2、22の移動量との間の倍率に関するものである。なお、図46では、ドラッグ操作の開始地点Spから終了地点Epまでのドラッグ操作の操作量をLとしている。
ティーチングペンダント4は、入力されるドラッグ操作の操作量以上の精密な動作をロボット2、22に行わせるため、ドラッグ操作の操作量とロボット2、22の移動量との間に倍率を設定することが考えられる。例えば、倍率を0.1倍に設定した場合、ユーザは、1mmのドラッグ操作を行うことで、ロボット2、22を0.1mm移動させることができる。しかし、単純に一定の倍率を設定しただけでは、次のような問題が生じる。すなわち、例えば0.1mm単位の微細な動作(微動)を行いつつ、数〜数十mm単位の大きな動作(粗動)を行いたい場合もある。しかし、例えば倍率を0.1倍に設定した場合、200mm(10インチ画面の長辺の長さに相当)のドラッグ操作でも、僅かに20mmしかロボットを移動させることができない。そのため、ユーザは、例えばロボットに1000mmの移動をさせようとすると、200mmのドラッグ操作を50回も繰り返すことになり、煩雑で操作性が良くない。
そこで、本実施形態において、動作指令生成部16は、操作判断処理と、移動量決定処理と、を行うことができる。操作判断処理は、タッチ操作検出部15で検出したドラッグ操作の指の移動量を判断する。移動量決定処理は、図46に示すように、ドラッグ操作が、操作開始地点Spから第1区間L1を通過するまでは倍率を第1倍率に設定し、第1区間L1を通過した後は倍率を第1倍率より大きい値に設定して、ロボット2、22の移動量を決定する。倍率とは、操作判断処理で判断したドラッグ操作の指の移動量を拡大又は縮小してロボット2、22の移動量を決定するためのものである。また、第1倍率は、1より小さい一定の値である。
また、本実施形態において、移動量決定処理は、ドラッグ操作の指の移動が第1区間L1を通過してから第2区間L2を通過するまでは倍率を第2倍率に設定し、ドラッグ操作の指の移動が第2区間L2を通過した後は倍率を一定値である第3倍率に設定して、ロボットの移動量を決定する。第2倍率は、第1倍率から第3倍率までの範囲で、ドラッグ操作の指の移動量に応じて連続的に増加する値である。
具体的には、図46に示すように、第1区間L1は、ドラッグ操作の開始地点Spから所定の長さ(例えば、50mm)の区間である。つまり、この場合、第1区間L1は、図47に示すように、操作量0mm(開始地点Sp)から操作量50mm(第1区間L1の終点L1p)の区間である。第1区間L1の長さ、ドラッグ操作の操作量Lに関わらず一定である。第1区間L1内におけるドラッグ操作には、第1倍率f1が設定されている。第1倍率f1は、1より小さい一定値であり、例えば図47(1)に示すように0.1倍(f1=0.1)である。
第2区間L2は、第1区間L1の終点L1pから所定の長さ(例えば、100mm)の区間である。つまり、この場合、第2区間L2は、図47に示すように、操作量50mm(第1区間L1の終点L1p)から操作量150mm(第2区間L2の終点L2p)の区間である。第2区間L2の長さは、ドラッグ操作の操作量Lに関わらず一定である。第2区間L2内におけるドラッグ操作には、第2倍率f2が設定されている。第2倍率f2は、第1倍率f1よりも大きく、かつ、第3倍率f3よりも小さい値である。すなわち、第2倍率f2は、第1倍率f1から第3倍率f3までの範囲で、ドラッグ操作の指の移動量つまり開始地点Spからの距離Lに応じて連続的に増加する変動値である。
第2倍率f2は、次の(式1)で表すことができる。なお、本実施形態において、第2倍率f2は、第1倍率f1から第3倍率f3の範囲内において比例的に増加するが、これに限られない。第2倍率f2は、例えば第1倍率f1から第3倍率f3の範囲内において、2次関数的に増加するものでもよいし、指数関数的に増加するものでもよい。
f2=0.099×(L−50)+0.1・・・(式1)
第3区間は、第2区間L2の終点L2p以降の区間である。つまり、この場合、第3区間L3は、操作量150mm(第2区間の終点L2p)以降の区間である。第3区間L3の長さは、ドラッグ操作の操作量Lによって変化する。すなわち、第3区間L3の長さは、ドラッグ操作の操作量Lから、第1区間L1及び第2区間L2の長さを減じた値である。第3区間L3におけるドラッグ操作には、第3倍率f3が設定されている。第3倍率f3は、第1倍率及び第2倍率よりも大きい一定値である。この場合、第3倍率f3は、例えば図47(1)に示すように、1よりも大きい10倍(f3=10)に設定されている。
動作指令生成部16は、第1区間L1内におけるドラッグ操作について、その操作量Lに第1倍率f1を乗じた値を、ロボット2、22の移動量に設定する。また、動作指令生成部16は、第2区間L2内におけるドラッグ操作について、その操作量Lに第2倍率f2を乗じた値を、ロボット2、22の移動量に設定する。また、動作指令生成部16は、第3区間L3内におけるドラッグ操作について、その操作量Lに第3倍率f3を乗じた値を、ロボット2、22の移動量に設定する。ユーザは、例えば0.1mm単位の微細な動作(微動)をロボット2、22に行わせたい場合は、第1区間L1の範囲内で、ドラッグ操作を繰り返す。一方、ユーザは、例えば大きな動作(粗動)をロボット2、22に行わせたい場合は、第1区間L1及び第2区間L2を超えて、第3区間L3までドラッグ操作を行う。
ドラッグ操作の操作量Lに対するロボット2、22の移動量の変化は、図47(2)に示すようになる。例えば、ドラッグ操作の操作量Lを200mmとすると、第1区間L1での操作に対して、ロボット2、22の移動量は、0.1×50=5mmとなる。また、第2区間L2での操作に対して、ロボット2、22の移動量は、((10−0.1)×100/2)+(0.1×100)=505mmとなる。また、第3区間L3での操作に対して、ロボット2、22の移動量は、10×50=500mmとなる。つまり、第1区間L1、第2区間L2、及び第3区間L3の全区間でのロボット2、22の移動量は、1010mmとなる。したがって、ユーザは、200mmのドラッグ操作で、ロボット2、22に対して1010mm移動させることができる。
この場合、ロボット2、22の移動量は、各区間において次のように変化する。すなわち、ロボット2、22の移動量は、第1区間L1(操作量0mmから50mmの区間)における操作に対して、1次関数的に増加する。また、ロボット2、22の移動量は、第2区間L2(操作量50mmから150mmの区間)における操作に対して、2次関数的に増加する。また、ロボット2、22の移動量は、第3区間L3(操作量150mm以上の区間)における操作に対しては、1次関数的に増加する。
これによれば、ユーザは、第1区間L1内でドラッグ操作することで、ロボット2、22を、1より小さい一定の倍率である第1倍率f1で移動させることができる。つまり、ユーザは、第1区間L1内でドラッグ操作を繰り返すことで、ロボット2、22に微動をさせることができる。また、ユーザは、第1区間L1を超えてドラッグ操作することで、第1区間L1を超えた部分について、ロボット2、22を、第1倍率よりも大きい倍率で移動させることができる。つまり、ユーザは、第1区間L1を超えて操作することで、ロボット2、22に粗動をさせることができる。
このように、ユーザは、1度のドラッグ操作で、異なる倍率でロボット2、22を移動させることができる。これによれば、例えばロボット2、22の微動と粗動との両方の動作を、1回のドラッグ操作で実現することができる。したがって、ユーザは、ロボット2、22の微動と粗動とを切り替えるための特別な操作をすることなく、微動と粗動との両方を実現することができる。これにより、操作が簡単になり、操作性の向上が図られ、その結果、安全性の向上が図られるとともに、教示に要する時間を低減することができる。
また、本実施形態によれば、移動量決定処理は、ドラッグ操作の指の移動が第1区間L1を通過してから第2区間L2を通過するまでは倍率を第2倍率f2に設定し、ドラッグ操作の指の移動が第2区間を通過した後は倍率を一定値である第3倍率f3に設定して、ロボット2、22の移動量を決定する。これによれば、ユーザは、第1区間L1内でドラッグ操作を繰り返すことにより、1より小さい第1倍率f1でロボットを微動させることができる。また、ユーザは、第1区間L1を超えてドラッグ操作を行うことにより、第1倍率f1よりも大きい第2倍率f2又は第3倍率f3でロボット2、22を粗動させることができる。
さらに、第2倍率f2は、第1倍率f1から第3倍率f3までの範囲で、ドラッグ操作の指の移動量Lに応じて連続的に増加する値である。これによれば、第1倍率f1による微動と第3倍率f3による粗動との間の倍率である第2倍率f2が、第1倍率f1から第3倍率f3までの範囲で、ドラッグ操作の指の移動量Lに応じて連続的に増加する。すなわち、一定値である第1倍率f1と第3倍率f3との間が、連続して変化する第2倍率f2によって繋がれている。そのため、ユーザのドラッグ操作の操作量Lに対するロボット2、22の移動量を決定するための倍率は、第1倍率f1から、次第に変化する第2倍率f2を経て第3倍率f3に切り替わる。これにより、ロボット2、22の移動量を決定するための倍率が、第1倍率f1から第3倍率f3に急激に切り替わることが防止される。すなわち、ロボット2、22の移動が、微動から粗動へ急激に変化することを防止することができる。したがって、ユーザの意図しない急激な倍率の変化によって生じるロボット2、22の急激な速度変化(急動)を防止することができる。その結果、更なる安全性の向上が図られる。
なお、図48(1)、(2)に示すように、第1倍率f1を0.01倍、第3倍率f3を1.0倍とし、第2倍率f2を、第1倍率f1=0.01から第3倍率f3=1.0の範囲内において、次の(式2)で表す値にしてもよい。これによれば、0.01倍及び0.1倍の倍率を併用することができるため、さらに細かい動作を容易に行うことができる。
f2=0.0099×(L−50)+0.01・・・(式2)
(その他の実施形態)
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、次のような変形または拡張が可能である。
ロボットの手動操作を行う際、敢えて複数の動作を同時にミックスして行うことも少なからずあり得る。このようなケースに対応するためには、各動作を行うための操作の線引きを曖昧にすればよい。つまり、この場合、上記各実施形態において、各動作を行うための操作の切り分けを明確化するために実施した工夫を行わなければよい。
上記のいくつかの実施形態では、本発明のロボット操作装置を、ロボットシステムに用いられる専用のティーチングペンダント4に適用した構成について説明したが、これに限らずともよい。例えば、汎用のタブレット型端末(タブレットPC)やスマートフォン(多機能携帯電話)などに、専用のアプリ(ロボット操作プログラム)をインストールすることにより、上記各実施形態において説明したような機能と同等の機能を実現することも可能である。
多関節ロボットには、上記各実施形態で説明した4軸水平多関節型のロボット2及び6軸垂直多関節型のロボット22のみならず、例えば複数の駆動軸を有する直交型のロボットも含まれる。この場合、駆動軸には、機械的な回転軸に限られず、例えばリニアモータによって駆動する方式も含まれる。
本発明のロボット操作装置は、4軸水平多関節型のロボット2および6軸垂直多関節型のロボット22に限らず、種々のロボットを手動操作する際に用いることができる。
図面中、1、21はロボットシステム、2、22はロボット、3はコントローラ、4はティーチングペンダント(ロボット操作装置)、5、25はベース、9、31はフランジ(ロボットの手先)、11はケース、11aは把持部、15はタッチ操作検出部、16は動作指令生成部、17はタッチパネル、171は第1領域、172は第2領域、173は開始操作検出領域(開始操作検出部)、174は移動量決定領域、175は動作選択領域、18は選択操作検出部、19は姿勢検出部(傾き操作検出部)、41は第1ボタン(切替部)、42は第2ボタン(切替部)を示す。

Claims (35)

  1. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ
    前記選択操作検出部は、前記タッチパネルに対するタッチ操作を検出するものであり、
    前記操作判断処理は、前記選択操作検出部で検出したタッチ操作が前記タッチパネルにタッチした指の本数のままその指を移動させるドラッグ操作である場合にそのドラッグ操作の指の本数若しくは操作方向、又は指の本数及び操作方向に基づいて、操作対象になる駆動軸又は動作態様を決定する処理を含んでいる、
    ロボット操作装置。
  2. 前記操作判断処理は、
    検出されたタッチ操作が1本指によるドラッグ操作である第1操作であるか否かを判断する第1操作判断処理と、
    検出されたタッチ操作が2本指によるドラッグ操作であって所定の方向への操作である第2操作であるか否かを判断する第2操作判断処理と、
    検出されたタッチ操作が2本指によるドラッグ操作であって前記第2操作と異なる方向への操作である第3操作であるか否かを判断する第3操作判断処理と、を含み、
    前記動作指令生成処理は、
    前記第1操作判断処理において前記第1操作であると判断した場合に前記ロボットの手先を前記ロボットの動作基準面に対して水平な平面方向に移動させるための前記動作指令を生成する水平移動動作指令生成処理と、
    前記第2操作判断処理において前記第2操作であると判断した場合に前記ロボットの手先を前記動作基準面と直交する垂直軸方向に沿って移動させるための前記動作指令を生成する垂直移動動作指令生成処理と、
    前記第3操作判断処理において前記第3操作であると判断した場合に前記ロボットの手先を回転させるための前記動作指令を生成する回転動作指令生成処理と、
    を含んでいる請求項1に記載のロボット操作装置。
  3. 前記第2操作は、2本指による直線方向へのドラッグ操作であって且つ前記ドラッグ操作が行われている期間に各指間の距離が次第に短くなる操作、または次第に長くなる操作であり、
    前記第3操作は、2本指による円周方向へのドラッグ操作であり、
    前記垂直移動動作指令生成処理は、
    前記第2操作が各指間の距離が次第に長くなるものである場合に前記ロボットの手先を前記動作基準面に近づく方向に移動させるための前記動作指令を生成する接近指令生成処理と、
    前記第2操作が各指間の距離が次第に短くなるものである場合に前記ロボットの手先を前記動作基準面から離れる方向に移動させるための前記動作指令を生成する離反指令生成処理と、を含む請求項2に記載のロボット操作装置。
  4. 前記第2操作は、前記タッチパネル上における縦方向への操作であり、
    前記第3操作は、前記タッチパネル上において前記縦方向に直交する横方向への操作である、
    請求項2に記載のロボット操作装置。
  5. 前記動作指令生成部は、
    タッチ操作された箇所が1つ検出されると、その検出時点から所定の許容遅延時間が経過した後に前記タッチ操作の指の本数を判断する請求項1から4のいずれか一項に記載のロボット操作装置。
  6. 前記選択操作検出部は、前記タッチパネルに対するタッチ操作を検出するものであり、
    前記動作指令生成部は、前記ドラッグ操作の方向を前記ロボットの駆動軸又は動作態様毎に異なる方向になるように割り振っている請求項1に記載のロボット操作装置。
  7. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記選択操作検出部は、前記タッチパネルに対するタッチ操作を検出するものであり、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、
    前記ドラッグ操作の操作方向が前記タッチパネル上における縦方向である場合に、前記ロボットの手先を前記動作基準面に対する垂直方向へ移動させる第1群の駆動軸の中から駆動させる一の駆動軸を前記ドラッグ操作の指の本数に基づいて選択する第1駆動軸選択処理と、
    前記ドラッグ操作の操作方向が前記タッチパネル上において前記縦方向に直交する横方向又は円周方向である場合に、前記第1群の駆動軸以外の駆動軸の中から駆動させる一の駆動軸を前記ドラッグ操作の指の本数に基づいて選択する第2駆動軸選択処理と、
    を含んでいる、
    ロボット操作装置。
  8. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記選択操作検出部は、前記タッチパネルに対するタッチ操作を検出するものであり、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、前記ドラッグ操作の指の本数の増加に伴い前記ロボットのベース側の駆動軸から前記手先側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する、
    ロボット操作装置。
  9. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記選択操作検出部は、前記タッチパネルに対するタッチ操作を検出するものであり、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、前記ドラッグ操作の指の本数の増加に伴い前記ロボットの手先側の駆動軸から前記ベース側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する、
    ロボット操作装置。
  10. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記動作指令生成部は、複数本の指によるタッチ操作において、前記複数本の指のうち指のタッチ位置の距離が最も遠い2本の指を抽出し、その2本の指のいずれかの指の移動に係るベクトルと、前記2本の指間のベクトルとが成す角度が判定閾値未満である場合には、そのドラッグ操作が円周方向への操作でないと判断し、前記角度が判定閾値以上である場合には、そのドラッグ操作が円周方向への操作であると判断する、
    ロボット操作装置。
  11. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記動作指令生成部は、ドラッグ操作を検出した場合にそのドラッグ操作が終了するまでの期間そのドラッグ操作に係る指によるタッチ箇所の近傍における所定範囲内の領域に対するタッチ操作の検出を無効化する、
    ロボット操作装置。
  12. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルの傾きを検出することでユーザからの傾き操作の入力を検出することができる傾き操作検出部と、
    複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、を備え、
    前記動作指令生成部は、
    前記タッチ操作検出部で検出されたタッチ操作に基づいて前記ロボットの手先を前記ロボットの動作基準面に対して水平な平面方向に移動させるための前記動作指令を生成する水平移動動作指令生成処理と、
    前記傾き操作検出部で検出された傾き操作に基づいて前記ロボットの手先を前記動作基準面と直交する垂直軸方向に沿って移動させるための前記動作指令を生成する垂直移動動作指令生成処理と、
    を行うことができるロボット操作装置。
  13. 前記動作指令生成部は、前記傾き操作検出部で検出された傾き操作の傾き量に応じて前記ロボットの移動速度又は移動量を増減する請求項12に記載のロボット操作装置。
  14. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、を備え、
    前記タッチパネルは、操作対象にする前記ロボットの駆動軸又は動作態様を選択するための操作を受け付ける動作選択領域と、前記ロボットの移動量を決定するための操作を受け付ける移動量決定領域と、を有し、
    前記動作選択領域に対する操作の受け付けを開始するための開始操作を検出する開始操作検出部を更に備え、
    前記動作指令生成部は、前記開始操作検出部で前記開始操作を検出した後に前記動作選択領域に対するタッチ操作を受け付けるようにする、
    ロボット操作装置。
  15. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、を備え、
    前記タッチパネルは、操作対象にする前記ロボットの駆動軸又は動作態様を選択するための操作を受け付ける動作選択領域と、前記ロボットの移動量を決定するための操作を受け付ける移動量決定領域と、を有し、
    前記ロボットの動作を選択するための操作は、前記タッチパネルに対して前記駆動軸又は前記動作態様に対応する数字、文字、又は記号を描いて入力する操作である、
    ロボット操作装置。
  16. 前記動作指令生成部は、
    前記動作選択領域に対する操作が検出された場合に、その操作が終了するまでの期間は前記移動量決定領域に対する操作の検出を無効化する請求項14又は15に記載のロボット操作装置。
  17. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断した指の移動量に基づいて前記ロボットの移動速度を算出する速度算出処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様でかつ前記速度算出処理で算出した移動速度で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記動作指令生成部は、前記ドラッグ操作が行われている間は一定の周期で前記操作判断処理と前記速度算出処理と前記動作指令生成処理とを行うことができる、
    ロボット操作装置。
  18. 前記動作指令生成部は、前記指の移動量に基づいて前記ロボットの移動距離を算出する移動量算出処理を行うことができ、
    前記速度算出処理は、前記指の移動量を前記ドラッグ操作の入力に要した時間で除した値に基づいて前記ロボットの移動速度を決定する処理である請求項17に記載のロボット操作装置。
  19. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記動作指令生成部は、
    前記タッチ操作検出部で検出したドラッグ操作の指の移動量を判断する操作判断処理と、
    前記操作判断処理で判断した前記ドラッグ操作の指の移動量を拡大又は縮小して前記ロボットの移動量を決定するための倍率について、前記ドラッグ操作が操作開始地点から第1区間を通過するまでは前記倍率を1より小さい一定の値である第1倍率に設定し、前記ドラッグ操作が前記第1区間を通過した後は前記倍率を前記第1倍率より大きい値に設定して、前記ロボットの移動量を決定する移動量決定処理と、
    を行うことができる、
    ロボット操作装置。
  20. 前記移動量決定処理は、前記ドラッグ操作の指の移動が前記第1区間を通過してから第2区間を通過するまでは前記倍率を第2倍率に設定し、前記ドラッグ操作の指の移動が前記第2区間を通過した後は前記倍率を一定値である第3倍率に設定して、前記ロボットの移動量を決定する処理であり、
    前記第2倍率は、前記第1倍率から前記第3倍率までの範囲で、前記ドラッグ操作の指の移動量に応じて連続的に増加する値である、
    請求項19に記載のロボット操作装置。
  21. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型のロボットを動作させるための動作指令を生成する動作指令生成部と、
    操作対象にする前記ロボットの駆動軸又は動作態様を選択するためのユーザからの選択操作を検出する選択操作検出部と、を備え、
    前記動作指令生成部は、
    前記選択操作検出部で検出した選択操作に基づいて操作対象にする前記ロボットの駆動軸又は動作態様を決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を行うことができ、
    前記タッチ操作検出部は、ユーザによる手持ちが可能なケースに設けられたタッチパネルに対するタッチ操作を検出するものであり、
    前記タッチパネルのうち、ユーザが前記ケースを手持ちする際に把持することが想定される把持部に隣接する所定範囲の領域であって親指の付け根が位置する可能性が高い位置を中心とした半径50mm以内の領域又は親指の付け根が位置する可能性が高い位置を中心とした半径50mm以内でかつ65度の扇形状の領域に対するタッチ操作については検出対象から除外する、
    ロボット操作装置。
  22. 4軸水平多関節型のロボットと、
    前記ロボットの動作を制御するコントローラと、
    請求項1から21のいずれか一項に記載のロボット操作装置と、
    を備えていることを特徴とするロボットシステム。
  23. 6軸垂直多関節型のロボットと、
    前記ロボットの動作を制御するコントローラと、
    請求項1から21のいずれか一項に記載のロボット操作装置と、
    を備えていることを特徴とするロボットシステム。
  24. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記操作判断処理は、前記選択操作検出部で検出したタッチ操作が前記タッチパネルにタッチした指の本数のままその指を移動させるドラッグ操作である場合にそのドラッグ操作の指の本数若しくは操作方向、又は指の本数及び操作方向に基づいて、操作対象になる駆動軸又は動作態様を決定する処理を含む、
    ロボット操作プログラム。
  25. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、
    前記ドラッグ操作の操作方向が前記タッチパネル上における縦方向である場合に、前記ロボットの手先を前記動作基準面に対する垂直方向へ移動させる第1群の駆動軸の中から駆動させる一の駆動軸を前記ドラッグ操作の指の本数に基づいて選択する第1駆動軸選択処理と、
    前記ドラッグ操作の操作方向が前記タッチパネル上において前記縦方向に直交する横方向又は円周方向である場合に、前記第1群の駆動軸以外の駆動軸の中から駆動させる一の駆動軸を前記ドラッグ操作の指の本数に基づいて選択する第2駆動軸選択処理と、
    を含んでいる、
    ロボット操作プログラム。
  26. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、前記ドラッグ操作の指の本数の増加に伴い前記ロボットのベース側の駆動軸から前記手先側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する処理を含む、
    ロボット操作プログラム。
  27. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、検出されたタッチ操作が指によるドラッグ操作である場合に、そのドラッグ操作の指の本数若しくは操作方向、又は指の本数と操作方向とに基づいて複数の前記駆動軸の中から駆動させる一の駆動軸を選択する駆動軸選択処理を含んでおり、
    前記駆動軸選択処理は、前記ドラッグ操作の指の本数の増加に伴い前記ロボットの手先側の駆動軸から前記ベース側の駆動軸へ移行するようにして、駆動させる駆動軸を決定する処理を含む、
    ロボット操作プログラム。
  28. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、複数本の指によるタッチ操作において、前記複数本の指のうち指のタッチ位置の距離が最も遠い2本の指を抽出し、その2本の指のいずれかの指の移動に係るベクトルと、前記2本の指間のベクトルとが成す角度が判定閾値未満である場合には、そのドラッグ操作が円周方向への操作でないと判断し、前記角度が判定閾値以上である場合には、そのドラッグ操作が円周方向への操作であると判断する処理を含む、
    ロボット操作プログラム。
  29. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、ドラッグ操作を検出した場合にそのドラッグ操作が終了するまでの期間そのドラッグ操作に係る指によるタッチ箇所の近傍における所定範囲内の領域に対するタッチ操作の検出を無効化する処理を含む、
    ロボット操作プログラム。
  30. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルの傾きを検出することでユーザからの傾き操作の入力を検出することができる傾き操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    前記タッチ操作検出部で検出されたタッチ操作に基づいて複数の駆動軸を有する多関節型のロボットの手先を前記ロボットの動作基準面に対して水平な平面方向に移動させるための前記動作指令を生成する水平移動動作指令生成処理と、
    前記傾き操作検出部で検出された傾き操作に基づいて前記ロボットの手先を前記動作基準面と直交する垂直軸方向に沿って移動させるための前記動作指令を生成する垂直移動動作指令生成処理と、
    を実行させるロボット操作プログラム
  31. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型ロボットを動作させるための動作指令を生成する動作指令生成処理と、
    前記タッチパネルに、操作対象にする前記ロボットの駆動軸又は動作態様を選択するための操作の入力を受け付ける動作選択領域と、前記ロボットの移動量を決定するための操作の入力を受け付ける移動量決定領域と、を形成する処理と、
    前記動作選択領域に対する操作の受け付けを開始するための開始操作を検出する開始操作検処理と、
    を実行させることができ、
    前記動作指令生成処理は、前記開始操作検出処理によって前記開始操作を検出した後に前記動作選択領域に対するタッチ操作を受け付けるようにする処理を含む、
    ロボット操作プログラム。
  32. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    前記タッチ操作検出部の検出結果に基づいて複数の駆動軸を有する多関節型ロボットを動作させるための動作指令を生成する動作指令生成処理と、
    前記タッチパネルに、操作対象にする前記ロボットの駆動軸又は動作態様を選択するための操作であって前記タッチパネルに対して前記駆動軸又は前記動作態様に対応する数字、文字、又は記号を描いて入力する操作の入力を受け付ける動作選択領域と、前記ロボットの移動量を決定するための操作の入力を受け付ける移動量決定領域と、を形成する処理と、
    を実行させるロボット操作プログラム。
  33. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断した指の移動量に基づいて前記ロボットの移動速度を算出する速度算出処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様でかつ前記速度算出処理で算出した移動速度で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記ドラッグ操作が行われている間は一定の周期で前記操作判断処理と前記速度算出処理と前記動作指令生成処理とを行われる、
    ロボット操作プログラム。
  34. ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    を実行させることができ、
    前記動作指令生成処理は、前記操作判断処理で判断した前記ドラッグ操作の指の移動量を拡大又は縮小して前記ロボットの移動量を決定するための倍率について、前記ドラッグ操作が操作開始地点から第1区間を通過するまでは前記倍率を1より小さい一定の値である第1倍率に設定し、前記ドラッグ操作が前記第1区間を通過した後は前記倍率を前記第1倍率より大きい値に設定して、前記ロボットの移動量を決定する移動量決定処理、を含んでいる、
    ロボット操作プログラム。
  35. ユーザによる手持ちが可能なケースに設けられ、ユーザからタッチ操作の入力を受けるタッチパネルと、
    前記タッチパネルに入力された平面方向のタッチ操作を検出することができるタッチ操作検出部と、
    前記タッチパネルに設けられユーザからの選択操作を検出する選択操作検出部と、
    を備えるロボット操作装置に組み込まれたコンピュータに実行されるロボット操作プログラムであって、
    前記コンピュータに、
    複数の駆動軸を有する多関節型のロボットの操作対象になる駆動軸又は動作態様を前記選択操作検出部で検出した操作に基づいて決定するとともに、前記タッチ操作検出部で検出したタッチ操作がドラッグ操作である場合にそのドラッグ操作の移動量を判断する操作判断処理と、
    前記操作判断処理で判断したドラッグ操作の移動量に基づいて前記ロボットの移動量を決定し、その移動量分、操作対象の駆動軸又は動作態様で前記ロボットを移動させるための動作指令を生成する動作指令生成処理と、
    前記タッチパネルのうち、ユーザが前記ケースを手持ちする際に把持することが想定される把持部に隣接する所定範囲の領域であって親指の付け根が位置する可能性が高い位置を中心とした半径50mm以内の領域又は親指の付け根が位置する可能性が高い位置を中心とした半径50mm以内でかつ65度の扇形状の領域に対するタッチ操作については検出対象から除外する処理と、
    を実行させるロボット操作プログラム。
JP2014175753A 2013-09-20 2014-08-29 ロボット操作装置、ロボットシステム、及びロボット操作プログラム Active JP6476662B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2014175753A JP6476662B2 (ja) 2013-09-20 2014-08-29 ロボット操作装置、ロボットシステム、及びロボット操作プログラム
CN201480062089.2A CN105722650B (zh) 2013-09-20 2014-09-19 机器人操作装置及机器人系统
TW103132582A TWI654055B (zh) 2013-09-20 2014-09-19 Robot operating device and robot operating program
US15/023,622 US10076839B2 (en) 2013-09-20 2014-09-19 Robot operation apparatus, robot system, and robot operation program
PCT/JP2014/074891 WO2015041332A1 (ja) 2013-09-20 2014-09-19 ロボット操作装置、ロボットシステム、及びロボット操作プログラム
DE112014004307.9T DE112014004307B4 (de) 2013-09-20 2014-09-19 Roboterbedienungsvorrichtung, Robotersystem, und Roboterbedienungsprogramm

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013195423 2013-09-20
JP2013195423 2013-09-20
JP2014175753A JP6476662B2 (ja) 2013-09-20 2014-08-29 ロボット操作装置、ロボットシステム、及びロボット操作プログラム

Publications (2)

Publication Number Publication Date
JP2015083331A JP2015083331A (ja) 2015-04-30
JP6476662B2 true JP6476662B2 (ja) 2019-03-06

Family

ID=52688979

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014175753A Active JP6476662B2 (ja) 2013-09-20 2014-08-29 ロボット操作装置、ロボットシステム、及びロボット操作プログラム

Country Status (6)

Country Link
US (1) US10076839B2 (ja)
JP (1) JP6476662B2 (ja)
CN (1) CN105722650B (ja)
DE (1) DE112014004307B4 (ja)
TW (1) TWI654055B (ja)
WO (1) WO2015041332A1 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2875914A1 (en) * 2012-07-20 2015-05-27 Kabushiki Kaisha Yaskawa Denki Robot simulator, robot teaching device and robot teaching method
US10768708B1 (en) * 2014-08-21 2020-09-08 Ultrahaptics IP Two Limited Systems and methods of interacting with a robotic tool using free-form gestures
JP6497021B2 (ja) * 2014-10-01 2019-04-10 株式会社デンソーウェーブ ロボット操作装置、ロボットシステム、及びロボット操作プログラム
EP3866174A1 (en) * 2014-11-13 2021-08-18 Intuitive Surgical Operations, Inc. Interaction between user-interface and master controller
US10123846B2 (en) 2014-11-13 2018-11-13 Intuitive Surgical Operations, Inc. User-interface control using master controller
JP6690265B2 (ja) * 2015-03-19 2020-04-28 株式会社デンソーウェーブ ロボット操作装置、ロボット操作方法
US20180111711A1 (en) * 2015-05-26 2018-04-26 Ishida Co., Ltd. Production line configuration apparatus
JP6643776B2 (ja) * 2015-06-11 2020-02-12 株式会社バンダイナムコエンターテインメント 端末装置及びプログラム
WO2017033353A1 (ja) * 2015-08-25 2017-03-02 川崎重工業株式会社 遠隔操作ロボットシステム
JP6710919B2 (ja) * 2015-09-08 2020-06-17 株式会社デンソーウェーブ ロボット操作装置
CN108366835B (zh) 2015-12-10 2021-07-27 柯惠Lp公司 具有独立的侧倾、俯仰和偏摆缩放的机器人外科手术系统
JP2017211956A (ja) * 2016-05-27 2017-11-30 ファナック株式会社 マルチタッチジェスチャによる機械操作が可能な数値制御装置
JP6591941B2 (ja) * 2016-07-21 2019-10-16 ファナック株式会社 容易に軸移動量の倍率設定が可能な手動ハンドル送り機能を備えた数値制御装置
US10427305B2 (en) * 2016-07-21 2019-10-01 Autodesk, Inc. Robotic camera control via motion capture
JPWO2018051435A1 (ja) * 2016-09-14 2018-09-13 三菱電機株式会社 数値制御装置
CN107636551B (zh) * 2016-09-22 2021-11-30 深圳市大疆创新科技有限公司 一种飞行控制方法、装置及智能终端
CN106484182B (zh) * 2016-09-29 2019-06-18 北京小米移动软件有限公司 触控识别方法及装置
CN107077280B (zh) * 2016-12-30 2019-05-28 深圳市大疆创新科技有限公司 一种可移动设备的控制方法、控制设备及控制系统
EP3585568B1 (en) 2017-02-24 2022-03-30 ABB Schweiz AG Method and apparatus for selecting initial point for industrial robot commissioning
US20200012239A1 (en) * 2017-03-31 2020-01-09 Sony Corporation Information processing apparatus and information processing method, computer program, and program manufacturing method
JP6469162B2 (ja) 2017-04-17 2019-02-13 ファナック株式会社 ロボットのオフライン教示装置
JP6526098B2 (ja) 2017-04-26 2019-06-05 ファナック株式会社 ロボットを操作するための操作装置、ロボットシステム、および操作方法
JP6953778B2 (ja) * 2017-04-28 2021-10-27 オムロン株式会社 協調ロボット、コントローラ、および方法
JP6936081B2 (ja) * 2017-08-30 2021-09-15 パナソニック株式会社 ロボット
JP6907853B2 (ja) * 2017-09-21 2021-07-21 株式会社デンソー ロボットの教示システム
JP7087316B2 (ja) * 2017-09-27 2022-06-21 オムロン株式会社 情報処理装置、情報処理方法およびプログラム
EP3474125A1 (en) * 2017-10-23 2019-04-24 Koninklijke Philips N.V. Medical image visualization
JP6784660B2 (ja) * 2017-11-28 2020-11-11 ファナック株式会社 入力装置およびロボットの制御システム
KR102239469B1 (ko) * 2018-01-19 2021-04-13 한국과학기술원 객체 제어 방법 및 객체 제어 장치
WO2019190487A1 (en) * 2018-03-27 2019-10-03 Productive Robotics, Inc. Collaborative robot system incorporating enhanced human interface
TWI712475B (zh) * 2018-04-03 2020-12-11 台達電子工業股份有限公司 機械手臂之作動教導方法及其適用之手勢教導裝置
CN110340866A (zh) 2018-04-03 2019-10-18 台达电子工业股份有限公司 机械手臂的作动教导方法及其适用的手势教导装置
JP6693538B2 (ja) * 2018-05-16 2020-05-13 株式会社安川電機 操作用デバイス、制御システム、制御方法及びプログラム
US11279044B2 (en) * 2018-08-03 2022-03-22 Yaskawa America, Inc. Robot instructing apparatus, teaching pendant, and method of instructing a robot
EP3875230A4 (en) * 2018-11-01 2022-07-27 Canon Kabushiki Kaisha EXTERNAL INPUT DEVICE, ROBOT SYSTEM, CONTROL METHOD FOR ROBOT SYSTEM, CONTROL PROGRAM AND RECORDING MEDIA
CN112917470A (zh) * 2019-12-06 2021-06-08 鲁班嫡系机器人(深圳)有限公司 一种机械手的示教方法、装置、系统、存储介质及设备
DE102020201375B3 (de) * 2020-02-05 2021-06-24 Magna Steyr Fahrzeugtechnik Ag & Co Kg Verfahren zur Überprüfung eines Sicherheitsbereichs eines Roboters
US20230294300A1 (en) * 2020-07-30 2023-09-21 Abb Schweiz Ag Diffractive Visual-Tactile Sensing in Robotic Grippers
CN111958611B (zh) * 2020-07-31 2021-10-08 华中科技大学 考虑轮廓误差最小的铣削加工机器人姿态优化方法及设备
JP2022092831A (ja) * 2020-12-11 2022-06-23 セイコーエプソン株式会社 ソフトウェアスイッチプログラム、選択肢の選択方法および情報処理装置
CN112706148A (zh) * 2020-12-25 2021-04-27 珠海新天地科技有限公司 一种机器人操作装置及方法
CN114911401A (zh) * 2021-02-08 2022-08-16 华为技术有限公司 电子设备及其触摸操作的分析方法和可读介质
WO2023062796A1 (ja) * 2021-10-14 2023-04-20 ファナック株式会社 複数の構成部材を含むロボットを制御する制御装置、制御装置を備えるロボット装置、およびパラメータを設定する操作装置
CN115429444A (zh) * 2022-09-26 2022-12-06 深圳市爱博医疗机器人有限公司 一种介入机器人及多种模式控制方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088628A (en) * 1996-07-24 2000-07-11 Fanuc, Ltd. Jog feeding method for robots
JPH11262883A (ja) * 1998-03-19 1999-09-28 Denso Corp ロボットのマニュアル操作装置
JP4850995B2 (ja) * 2000-04-20 2012-01-11 株式会社東海理化電機製作所 タッチ操作入力装置
JP4347313B2 (ja) 2006-02-23 2009-10-21 ファナック株式会社 ロボット教示操作盤
JP2008084158A (ja) * 2006-09-28 2008-04-10 Toyota Motor Corp 入力装置
JP2009142941A (ja) * 2007-12-14 2009-07-02 Toyota Motor Corp 制御装置及び制御方法
EP2124117B1 (de) * 2008-05-21 2012-05-02 Siemens Aktiengesellschaft Bedieneinrichtung zur Bedienung einer Werkzeugmaschine
JP4676544B2 (ja) 2009-05-29 2011-04-27 ファナック株式会社 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置
JP5669169B2 (ja) * 2009-07-28 2015-02-12 Necカシオモバイルコミュニケーションズ株式会社 端末装置及びプログラム
WO2012062374A1 (en) 2010-11-12 2012-05-18 Abb Technology Ag A control system and an operating device for controlling an industrial robot comprising a touch -screen
JP5649169B2 (ja) 2010-11-22 2015-01-07 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation タッチパネルにおけるドラッグ操作でオブジェクトを移動させる方法、装置及びコンピュータプログラム
JP5722696B2 (ja) * 2011-05-10 2015-05-27 京セラ株式会社 電子機器、制御方法及び制御プログラム
JP2013154410A (ja) * 2012-01-26 2013-08-15 Canon Inc 教示装置
JP5994300B2 (ja) * 2012-03-12 2016-09-21 ブラザー工業株式会社 入力装置及び入力プログラム
DE102012103032B3 (de) 2012-04-05 2013-07-04 Reis Group Holding Gmbh & Co. Kg Verfahren zur Bedienung eines Industrieroboters
JP5716769B2 (ja) * 2013-02-21 2015-05-13 株式会社安川電機 ロボットシミュレータ、ロボット教示装置およびロボット教示方法
US9283674B2 (en) * 2014-01-07 2016-03-15 Irobot Corporation Remotely operating a mobile robot

Also Published As

Publication number Publication date
DE112014004307T5 (de) 2016-07-07
US10076839B2 (en) 2018-09-18
WO2015041332A1 (ja) 2015-03-26
CN105722650A (zh) 2016-06-29
TWI654055B (zh) 2019-03-21
DE112014004307B4 (de) 2022-01-20
US20160229052A1 (en) 2016-08-11
JP2015083331A (ja) 2015-04-30
CN105722650B (zh) 2017-09-22
TW201532760A (zh) 2015-09-01

Similar Documents

Publication Publication Date Title
JP6476662B2 (ja) ロボット操作装置、ロボットシステム、及びロボット操作プログラム
JP6497021B2 (ja) ロボット操作装置、ロボットシステム、及びロボット操作プログラム
US9857962B2 (en) Robot operation apparatus and robot operation program product
JP6642054B2 (ja) ロボット操作装置、及びロボット操作プログラム
US10048851B2 (en) Apparatus for operating robots
US20200310561A1 (en) Input device for use in 2d and 3d environments
EP2923806A1 (en) Robot control device, robot, robotic system, teaching method, and program
JP6690265B2 (ja) ロボット操作装置、ロボット操作方法
JP6631279B2 (ja) ロボット操作装置、ロボット操作プログラム
JP6866566B2 (ja) ロボット操作装置、及びロボット操作プログラム
CN108981567B (zh) 位置测量装置的操作方法
JP2016175132A (ja) ロボット操作装置、ロボット操作方法
JP6379902B2 (ja) ロボット操作装置、ロボットシステム、及びロボット操作プログラム
JP6710919B2 (ja) ロボット操作装置
JP6379921B2 (ja) ロボット操作装置、ロボットシステム、及びロボット操作プログラム
US20160349987A1 (en) Input method and input device
JP2011020218A (ja) 衣料折り畳みシステム、衣料折り畳み指示装置
JP6435940B2 (ja) ロボット操作装置、及びロボット操作プログラム
JP2005342891A (ja) 産業用ロボットの手持操作器およびロボット制御システム
JP5062535B2 (ja) 産業用ロボットの手持操作器およびロボット制御システム
Brookes et al. Gesture-based control of ImageJ using Leap sensors

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180703

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190121

R150 Certificate of patent or registration of utility model

Ref document number: 6476662

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250