A.第1実施形態:
以下、本発明の第1実施形態について、図面を参照して説明する。
A1.ロボットシステムの構成:
まず、ロボットシステム1の構成について説明する。
図1は、第1実施形態に係るロボットシステム1の構成の一例を示す図である。ロボットシステム1は、ロボット20と、ロボット制御装置30と、教示装置40を備える。
なお、本実施形態のロボットシステム1では、ロボット20とロボット制御装置30とが別体に構成されているが、これに代えて、ロボット20とロボット制御装置30とが一体に構成されてもよい。この場合、ロボットシステム1は、ロボット制御装置30と一体に構成されたロボット20と、教示装置40を備える。また、当該場合、ロボット制御装置30は、ロボット20に内蔵される。
ロボット20は、可動部Aと、可動部Aを支持する支持台Bを備える単腕ロボットである。単腕ロボットは、この一例における可動部Aのような1本のアーム(腕)を備えるロボットである。なお、ロボット20は、単腕ロボットに代えて、複腕ロボットであってもよい。複腕ロボットは、2本以上のアーム(例えば、2本以上の可動部A)を備えるロボットである。なお、複腕ロボットのうち、2本のアーム(例えば、2本の可動部A)を備えるロボットは、双腕ロボットとも称される。すなわち、ロボット20は、2本のアームを備える双腕ロボットであってもよく、3本以上のアーム(例えば、3本以上の可動部A)を備える複腕ロボットであってもよい。また、ロボット20は、スカラロボット、直交座標ロボット、円筒型ロボット等の他のロボットであってもよい。直交座標ロボットは、例えば、ガントリロボットである。
可動部Aは、エンドエフェクターEと、マニピュレーターMと、力検出部21を備える。
エンドエフェクターEは、この一例において、物体を把持可能な指部を備えるエンドエフェクターである。なお、エンドエフェクターEは、当該指部を備えるエンドエフェクターに代えて、空気の吸引、磁力、治具等によって物体を持ち上げることが可能な他のエンドエフェクターであってもよく、物体を持ち上げるために利用しない他のエンドエフェクターであってもよい。
エンドエフェクターEは、ケーブルによってロボット制御装置30と通信可能に接続されている。これにより、エンドエフェクターEは、ロボット制御装置30から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。また、エンドエフェクターEは、Wi-Fi(登録商標)等の通信規格により行われる無線通信によってロボット制御装置30と接続される構成であってもよい。
マニピュレーターMは、6つの関節を備える。また、当該6つの関節はそれぞれ、図示しないアクチュエーターを備える。すなわち、マニピュレーターMを備える可動部Aは、6軸垂直多関節型のアームである。可動部Aは、支持台Bと、エンドエフェクターEと、マニピュレーターMと、マニピュレーターMが備える6つの関節それぞれのアクチュエーターとによる連携した動作によって6軸の自由度の動作を行う。なお、可動部Aは、5軸以下の自由度で動作する構成であってもよく、7軸以上の自由度で動作する構成であってもよい。
マニピュレーターMが備える6つの(関節に備えられた)アクチュエーターはそれぞれ、ケーブルによってロボット制御装置30と通信可能に接続されている。これにより、当該アクチュエーターは、ロボット制御装置30から取得される制御信号に基づいて、マニピュレーターMを動作させる。なお、ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。また、マニピュレーターMが備える6つのアクチュエーターのうちの一部又は全部は、Wi-Fi(登録商標)等の通信規格により行われる無線通信によってロボット制御装置30と接続される構成であってもよい。
力検出部21は、エンドエフェクターEとマニピュレーターMの間に備えられる。力検出部21は、例えば、力センサーである。力検出部21は、可動部Aの先端に作用した(加えられた)外力を検出する。可動部Aの先端は、この一例において、エンドエフェクターE、又はエンドエフェクターEにより把持された物体のことである。また、可動部Aの先端に作用した外力は、当該先端に作用した力とモーメント(トルク)とのうちの少なくとも一方のことである。力検出部21は、検出した外力の大きさを示す値を出力値として含む力検出情報を通信によりロボット制御装置30へ出力する。なお、力検出部21は、トルクセンサー等の当該先端に作用した外力の大きさを示す値を検出する他のセンサーであってもよい。
力検出情報は、ロボット制御装置30による可動部Aの力検出情報を用いた力制御(力検出情報に基づく制御)に用いられる。力検出情報を用いた制御は、例えば、インピーダンス制御等のコンプライアントモーション制御のことである。力検出情報は、力検出部からの出力の一例である。
力検出部21は、ケーブルによってロボット制御装置30と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。なお、力検出部21とロボット制御装置30とは、Wi-Fi(登録商標)等の通信規格により行われる無線通信によって接続される構成であってもよい。
ロボット制御装置30は、この一例において、ロボットを制御する(動作させる)コントローラーである。ロボット制御装置30は、エンドエフェクターEに予め対応付けられた位置に、エンドエフェクターEとともに動く仮想的な点である制御点Tを設定する。制御点Tは、例えば、TCP(Tool Center Point)である。以下では、一例として、エンドエフェクターEに予め対応付けられた位置が、エンドエフェクターEの重心の位置である場合について説明する。なお、エンドエフェクターEに予め対応付けられた位置は、これに代えて、エンドエフェクターEに対応付けられた他の位置であってもよい。また、制御点Tは、エンドエフェクターEに予め対応付けられた位置に代えて、可動部Aに予め対応付けられた他の位置に設定される構成であってもよい。
制御点Tには、制御点Tの位置を示す情報である制御点位置情報と、制御点Tの姿勢を示す情報である制御点姿勢情報とが対応付けられている。なお、制御点Tには、これらに加えて、他の情報が対応付けられる構成であってもよい。制御点位置情報及び制御点姿勢情報をロボット制御装置30が指定(決定)すると、制御点Tの位置及び姿勢が決まる。ロボット制御装置30は、制御点位置情報を指定し、指定した制御点位置情報が示す位置に制御点Tの位置が一致するように可動部Aを動作させる。また、ロボット制御装置30は、制御点姿勢情報を指定し、指定した制御点姿勢情報が示す姿勢に制御点Tの姿勢が一致するように可動部Aを動作させる。
この一例において、制御点Tの位置は、制御点Tとともに動くように制御点Tに対応付けられた三次元局所座標系である制御点座標系の原点のロボット座標系における位置によって表される。また、制御点Tの姿勢は、制御点座標系の各座標軸のロボット座標系における方向によって表される。
ロボット制御装置30は、ユーザーから予め入力された制御点設定情報に基づいて制御点Tを設定する。制御点設定情報は、例えば、エンドエフェクターEの重心の位置及び姿勢と制御点Tの位置及び姿勢との相対的な位置及び姿勢を示す情報である。なお、制御点設定情報は、これに代えて、可動部Aに対応付けられた何らかの位置及び姿勢と制御点Tの位置及び姿勢との相対的な位置及び姿勢を示す情報であってもよい。
ロボット制御装置30は、教示装置40から1以上の教示点情報を教示(ティーチング)される。具体的には、ロボット制御装置30は、教示装置40から1以上の教示点情報を取得する。そして、ロボット制御装置30は、取得した1以上の教示点情報を記憶する。教示点情報は、教示点を示す情報である。教示点は、ロボット制御装置30が可動部Aを動作させる際に制御点Tを経由(通過)させる複数の仮想的な点である。教示点には、教示点位置情報と、教示点姿勢情報が対応付けられている。教示点位置情報は、教示点の位置を示す情報である。また、教示点姿勢情報は、教示点の姿勢を示す情報である。なお、教示点には、教示点位置情報及び教示点姿勢情報に加えて、他の情報が対応付けられる構成であってもよい。
この一例において、ある教示点情報が示す教示点の位置は、当該教示点に対応付けられた三次元局所座標系である教示点座標系の原点のロボット座標系における位置によって表される。また、当該教示点の姿勢は、当該教示点座標系の各座標軸のロボット座標系における方向によって表される。
ロボット制御装置30は、例えば、ユーザーから受け付けた操作に基づいて予め記憶された動作プログラムにより指定された教示点情報が示す教示点の位置を示す制御点位置情報及び当該教示点の姿勢を示す制御点姿勢情報を指定する。そして、ロボット制御装置30は、可動部Aを動作させ、指定した制御点位置情報が示す位置に制御点Tの位置を一致させるとともに、指定した制御点姿勢情報が示す姿勢に制御点Tの姿勢を一致させる。これにより、ロボット制御装置30は、制御点Tを当該教示点と一致させる。すなわち、ロボット制御装置30は、制御点Tの位置及び姿勢を当該教示点の位置及び姿勢と一致させる。また、ロボット制御装置30は、当該動作プログラムに基づいて、当該動作プログラムにより指定された順に各教示点情報が示す教示点へ制御点Tを一致させる。これらにより、ロボット制御装置30は、可動部Aに所望の動作を行わせることができる。その結果、ロボット制御装置30は、ロボット20に所定の作業を行わせることができる。
このように制御点Tの位置及び姿勢を変化させる際、ロボット制御装置30は、ユーザーから受け付けた操作に基づいて予め記憶された動作プログラムと、教示装置40から教示された(すなわち、取得した)教示点情報とに基づいて、マニピュレーターMのアクチュエーターを制御する信号を含む制御信号を生成する。当該制御信号には、エンドエフェクターEの指部を動かす信号等の他の信号も含まれる。そして、ロボット制御装置30は、生成した制御信号をロボット20に送信し、ロボット20に所定の作業を行わせる。
また、ロボット制御装置30は、教示装置40から直接教示の開始の要求を取得した場合であり、且つ、教示装置40が備える図示しないイネーブルスイッチが押下された場合、マニピュレーターMの力制御(すなわち、力制御によるマニピュレーターMの操作)を開始する(有効にする)。イネーブルスイッチは、押下することによってロボット制御装置30によるマニピュレーターMの力制御(すなわち、力制御によるマニピュレーターMの操作)をロボット制御装置30に有効にさせるスイッチである。具体的には、当該場合、ロボット制御装置30は、力検出部21から力検出情報を取得する。ロボット制御装置30は、取得した力検出情報を用いた力制御によってマニピュレーターMを動作させ、制御点Tの位置及び姿勢を変化させる。これにより、ユーザーは、手でマニピュレーターMを動かす(すなわち、制御点Tの位置及び姿勢を移動させる)ことにより制御点Tの位置及び姿勢を所望の位置及び姿勢と一致させ、当該位置を示す教示点位置情報と、当該姿勢を示す教示点姿勢情報とが対応付けられた教示点を示す教示点情報をロボット制御装置30に教示する直接教示(ダイレクトティーチング)を行うことができる。
なお、本明細書では、ロボット20の制御点Tの位置及び姿勢を移動させることを、「ロボットを移動させる」と簡潔に記載することがある。また、ロボット20の制御点Tが移動可能な方向及び回転可能な方向を、いずれも「ロボット20が移動可能な方向」と簡潔に記載することがある。
直接教示においては、ロボット制御装置30は、あらかじめ第1設定項目に設定された第1設定情報に基づいて、力制御を行う。ロボット制御装置30は、ユーザーが加える外力によって位置および姿勢を指定されたロボット20の可動部Aの制御点Tの位置および姿勢と、教示装置40を介したユーザーによる指示と、によって、ユーザーから直接教示を受ける。
一方、教示装置40から直接教示の開始の要求を取得した場合であり、且つ、教示装置40が備えるイネーブルスイッチが押下されていない場合、ロボット制御装置30は、マニピュレーターMの力制御(すなわち、力制御によるマニピュレーターMの操作)を開始しない(無効にする)。具体的には、当該場合、ロボット制御装置30は、マニピュレーターMを動作させないことにより、ユーザーから外力を受けても、制御点Tの位置及び姿勢を変化させない。また、ロボット制御装置30は、当該場合と同様に、教示装置40から直接教示の開始の要求を取得していない場合、マニピュレーターMの力制御を開始しない(無効にする)。
教示装置40は、例えば、ティーチングペンダントである。教示装置40は、ユーザーから受け付けた操作に基づいて、ロボット制御装置30に前述の複数の第1設定項目のそれぞれを設定する。その結果、ロボット20が動作を教示される。具体的には、教示装置40は、当該操作に基づいて複数の第1設定情報を受け付け、受け付けた当該複数の第1設定情報をロボット制御装置30に記憶させる。この際、複数の第1設定情報のそれぞれには、第1設定項目を示す情報が含まれている。例えば、ある第1設定情報には、当該第1設定情報に対応付けられた第1設定項目を示す情報が含まれている。このため、ロボット制御装置30は、複数の第1設定情報のそれぞれが、いずれの第1設定項目に設定される情報であるかを区別可能である。以下では、説明を簡略化するため、第1設定項目を示す情報についての説明を省略する。
また、教示装置40は、ユーザーから受け付けた操作に基づいて教示点情報を生成する。教示点情報を生成する際、教示装置40は、ロボット制御装置30から現在の制御点Tの位置及び姿勢を示す情報を取得する。教示装置40は、取得した当該情報が示す制御点Tの位置及び姿勢を教示点の位置及び姿勢として特定する。教示装置40は、特定した教示点の位置を示す教示点位置情報と、特定した教示点の姿勢を示す教示点姿勢情報とが対応付けられた教示点を示す教示点情報を生成する。教示装置40は、生成した教示点情報をロボット制御装置30に教示する。すなわち、教示装置40は、当該教示点情報をロボット制御装置30に出力し、ロボット制御装置30に当該教示点情報を記憶させる。
教示装置40は、ケーブルによってロボット制御装置30と通信可能に接続されている。ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。なお、教示装置40とロボット制御装置30とは、Wi-Fi(登録商標)等の通信規格により行われる無線通信によって接続される構成であってもよい。
A2.ロボット制御装置に第1設定項目を設定する際に教示装置が行う処理の概要:
以下、ロボット制御装置30に第1設定項目を設定する際に教示装置40が行う処理の概要について説明する。
ロボット制御装置30と異なるロボット制御装置X(例えば、従来のロボット制御装置)は、直接教示を行う際において、直接教示における力制御に係る複数の設定項目が予め設定されている必要がある。しかしながら、ロボット制御装置Xでは、当該複数の設定項目の数が多く複雑であり、当該複数の設定項目を予め設定することが困難な場合があった。特に、ロボット制御装置Xでは、当該複数の設定項目の設定について習熟しているユーザー(例えば、習熟者、エキスパート)でなければ、当該設定を行うことが困難な場合があった。
そこで、教示装置40は、直接教示を行う際、ロボット20が備える力検出部21からの出力(この一例において、力検出情報)を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示可能である。
第1設定態様は、例えば、ロボット制御装置30に対する複数の第1設定項目の設定について習熟しているユーザー(例えば、習熟者、エキスパート等)向けに設計された画面であり、教示装置40によってロボット制御装置30に複数の第1設定項目のそれぞれを個別に設定可能な画面のことである。なお、第1設定態様は、当該ユーザー向けに設計された構成に代えて、他のユーザー向けに設計された構成であってもよい。
第2設定態様は、例えば、ロボット制御装置30に対する複数の第1設定項目の設定について習熟していないユーザー(例えば、初心者、ビギナー等)向けに設計された画面であり、教示装置40によってロボット制御装置30に複数の第1設定項目のうちの少なくとも一部(少なくとも2つ)をまとめて1つの第2設定項目として設定可能な画面のことである。この場合、第2設定項目は、第2設定項目によって設定される複数の第1設定項目それぞれと比較して、当該ユーザーであっても設定する内容を理解し易い設定項目である。第2設定態様においては、第2設定項目の設定値を設定可能である。一方、第2設定態様においては、第2設定項目のうちの1個の設定値と各設定値が対応づけられている複数の第1設定項目の設定値を個別に設定できない。
以下では、第2設定項目に設定可能な1以上の情報のそれぞれを「第2設定情報」と称して説明する。第2設定項目は、1つのみであってもよく、複数であってもよい。なお、第2設定項目が複数の場合であっても、ある第2設定項目によって設定される複数の第1設定項目の一部又は全部が、他の第2設定項目によって設定される複数の第1設定項目に含まれることはない。また、第2設定態様は、当該ユーザー向けに設計された構成に代えて、他のユーザー向けに設計された構成であってもよい。以下では、説明の便宜上、教示装置40に設定可能な設定項目のうち当該第2設定項目に、当該第2設定項目に応じた第2設定情報を設定することを、「教示装置40に当該第2設定項目を設定する」と称して説明する。
ある第2設定項目にある情報が設定された場合、教示装置40は、当該第2設定項目によって設定される2以上の第1設定項目であってロボット制御装置30に設定可能な第1設定項目のそれぞれに、当該情報に応じた第1設定情報が設定される。ここで、ある第1設定項目Q11に設定可能な第1設定情報が「A」と「B」のいずれかであり、他の第1設定項目Q12に設定可能な第1設定情報が「C」と「D」のいずれかであり、ある第2設定項目Q21に設定可能な第2設定情報が「E」と「F」とのいずれかであり、「E」に応じた第1設定情報が「A」と「D」であり、「F」に応じた第1設定情報が「B」と「C」である場合を例に挙げて説明する。もし、教示装置40において第2設定項目Q21に「E」が設定されると、「E」に応じた第1設定情報が「A」と「D」であるため、教示装置40は、ロボット制御装置30に「A」と「D」を記憶させ、ロボット制御装置30に第1設定項目Q11と第1設定項目Q12を設定する。また、当該場合、教示装置40において第2設定項目Q21に「F」が設定されると、「F」に応じた「B」と「C」であるため、教示装置40は、ロボット制御装置30に「B」と「C」を記憶させ、ロボット制御装置30に第1設定項目Q11と第1設定項目Q12を設定する。このように、第2設定態様では、ある第2設定項目を設定することにより、当該第2設定項目により設定可能な複数の第1設定項目を設定することができる。これにより、例えば、第1設定項目Q11及び第1設定項目Q12それぞれの設定について習熟していないユーザー(例えば、初心者、ビギナー)が、「A」、「B」、「C」、「D」のそれぞれが何を表しているものであるかを知らない場合であっても、「E」と「F」のそれぞれが表すものが当該ユーザーにとって理解可能な程度のものであれば、以下の効果が得られる。すなわち、教示装置40は、当該ユーザーに第2設定項目Q21を設定させることによって第1設定項目Q11及び第1設定項目Q12それぞれを設定させることができる。
すなわち、教示装置40は、直接教示における力制御に係る複数の第1設定項目を容易に設定することができる第2設定態様を提供することができる。その結果、教示装置40では、複数の第1設定項目の設定について習熟していないユーザー(例えば、初心者、ビギナー)であっても当該設定を容易に行うことができる。以下では、説明の便宜上、教示装置40の動作モードのうち第1設定態様を表示させる動作モードを「第1動作モード」と称し、教示装置40の動作モードのうち第2設定態様を表示させる動作モードを「第2動作モード」と称して説明する。教示装置40の動作モードは、第1設定態様および第2設定態様の表示に先立って表示される選択画面のGUIにおいて、ユーザーによって選択されて、教示装置40に入力される。
以下では、第1動作モードと第2動作モードとのそれぞれにおいて教示装置40が行う処理について詳しく説明する。なお、以下では、上記において説明した通り、第1設定項目及び第2設定項目が、直接教示における力制御に係る複数の設定項目である場合について説明するが、直接教示以外における力制御(例えば、ロボット20に所定の作業を行わせる際のインピーダンス制御等)に係る設定項目であってもよい。この場合、以下において説明する第1設定態様及び第2設定態様、教示装置40の動作、ロボット制御装置30の動作のそれぞれは、当該力制御に係る設定項目の設定に適用される。
A3.教示装置のハードウェア構成:
図2は、教示装置40のハードウェア構成の一例を示す図である。以下、図2を参照し、教示装置40のハードウェア構成について説明する。図2は、教示装置40のハードウェア構成の一例を示す図である。
教示装置40は、例えば、CPU(Central Processing Unit)41と、記憶部42と、入力受付部43と、通信部44と、表示部45を備える。これらの構成要素は、バスBusを介して相互に通信可能に接続されている。また、教示装置40は、通信部44を介してロボット制御装置30と通信を行う。
CPU41は、記憶部42に格納された各種プログラムを実行する。
記憶部42は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、ROM(Read-Only Memory)、RAM(Random Access Memory)等を含む。なお、記憶部42は、教示装置40に内蔵されるものに代えて、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。記憶部42は、教示装置40が処理する各種情報、各種画像、前述の動作プログラムを含む各種のプログラム、前述の教示点情報を格納する。
たとえば、記憶部42には、ロボット20の設定を行う際にユーザーが設定する第2設定項目の1個の設定値と、ロボット20の力制御に係る18個の第1設定項目の設定値と、が対応づけられて記憶されている。記憶部42には、そのような第2設定項目の設定値と第1設定項目の設定値とが対応づけられた複数組の情報が、記憶されている。
また、記憶部42には、3次元の直交座標系において、ロボット20の移動方向が方向成分として含むことができる2個の軸の方向を設定する6個の第1設定項目の設定値と、1個の第2設定項目の設定値と、が対応づけられて記憶されている。記憶部42には、そのような第2設定項目の設定値と第1設定項目の設定値とが対応づけられた複数組の情報が、記憶されている。
また、記憶部42には、各軸の方向のうち1個の方向を移動可能な方向とする6個の第1設定項目の設定値と、1個の第2設定項目の設定値と、が対応づけられて記憶されている。記憶部42には、そのような第2設定項目の設定値と第1設定項目の設定値とが対応づけられた複数組の情報が、記憶されている。記憶部42に格納されているこれらの情報については、後に説明する。
入力受付部43は、例えば、表示部45と一体に構成されたタッチパネルである。なお、入力受付部43は、キーボードやマウス、タッチパッド、その他の入力装置であってもよい。なお、入力受付部43は、表示部45とともにヘッドマウントディスプレイを構成する場合、音声による入力を行うためのマイクであってもよい。
通信部44は、例えば、USB等のデジタル入出力ポートやイーサネット(登録商標)ポート等を含んで構成される。
表示部45は、例えば、液晶ディスプレイパネル、あるいは、有機EL(ElectroLuminescence)ディスプレイパネルである。なお、表示部45は、ヘッドマウントディスプレイ等のウェラブルデバイスが備えるディスプレイであってもよい。
A4.教示装置の機能構成:
図3は、教示装置40の機能構成の一例を示す図である。以下、図3を参照し、教示装置40の機能構成について説明する。
教示装置40は、記憶部42と、入力受付部43と、表示部45と、制御装置46を備える。
なお、教示装置40は、制御装置46と別体であってもよい。この場合、ロボット制御装置30が制御装置46を備えてもよく、デスクトップPC(Personal Computer)、ノートPC、タブレットPC、多機能携帯電話端末(スマートフォン)、携帯電話端末、PDA(Personal Digital Assistant)等の他の情報処理装置が制御装置46を備えてもよい。これらの場合、直接教示を行う際の利便性等により、前述のイネーブルスイッチが教示装置40と別体であることが望ましい。イネーブルスイッチが教示装置40と別体である場合、ユーザーが携帯可能な装置にイネーブルスイッチが備えられる。そして、当該装置は、無線又は有線によってロボット制御装置30と通信可能に接続される。
制御装置46は、教示装置40の全体を制御する。制御装置46は、表示制御部461と、設定制御部463と、ロボット制御部465を備える。制御装置46が備えるこれらの機能部は、例えば、CPU41が、記憶部42に記憶された各種プログラムを実行することにより実現される。また、当該機能部のうちの一部又は全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。
表示制御部461は、ユーザーから受け付けた操作に基づいて各種の画面を生成する。表示制御部461は、生成した画面を表示部45に表示させる。
設定制御部463は、ユーザーから受け付けた操作に基づいて、ロボット制御装置30に第1設定項目を設定する。
ロボット制御部465は、ユーザーから受け付けた操作に基づいてロボット制御装置30を制御し、ロボット制御装置30にロボット20を動作させる。
A5.第1設定項目の具体例:
以下、教示装置40がロボット制御装置30に設定可能な複数の設定項目のうち直接教示における力制御に係る複数の第1設定項目の具体例について説明する。
この一例において、教示装置40がロボット制御装置30に設定可能な複数の設定項目のうち直接教示における力制御に係る複数の第1設定項目には、以下に示した(1)~(26)の26個の設定項目が含まれる。
(1)重力補償の有効又は無効
(2)基準座標系
(3)基準座標系におけるX軸に沿った方向への制御点Tの並進の可否
(4)基準座標系におけるY軸に沿った方向への制御点Tの並進の可否
(5)基準座標系におけるZ軸に沿った方向への制御点Tの並進の可否
(6)基準座標系におけるU軸に沿った方向への制御点Tの回転の可否
(7)基準座標系におけるV軸に沿った方向への制御点Tの回転の可否
(8)基準座標系におけるW軸に沿った方向への制御点Tの回転の可否
(9)基準座標系におけるX軸に沿った方向に対する力制御の質量係数
(10)基準座標系におけるX軸に沿った方向に対する力制御の弾性係数
(11)基準座標系におけるX軸に沿った方向に対する力制御の粘性係数
(12)基準座標系におけるY軸に沿った方向に対する力制御の質量係数
(13)基準座標系におけるY軸に沿った方向に対する力制御の弾性係数
(14)基準座標系におけるY軸に沿った方向に対する力制御の粘性係数
(15)基準座標系におけるZ軸に沿った方向に対する力制御の質量係数
(16)基準座標系におけるZ軸に沿った方向に対する力制御の弾性係数
(17)基準座標系におけるZ軸に沿った方向に対する力制御の粘性係数
(18)基準座標系におけるU軸に沿った方向に対する力制御の質量係数
(19)基準座標系におけるU軸に沿った方向に対する力制御の弾性係数
(20)基準座標系におけるU軸に沿った方向に対する力制御の粘性係数
(21)基準座標系におけるV軸に沿った方向に対する力制御の質量係数
(22)基準座標系におけるV軸に沿った方向に対する力制御の弾性係数
(23)基準座標系におけるV軸に沿った方向に対する力制御の粘性係数
(24)基準座標系におけるW軸に沿った方向に対する力制御の質量係数
(25)基準座標系におけるW軸に沿った方向に対する力制御の弾性係数
(26)基準座標系におけるW軸に沿った方向に対する力制御の粘性係数
ここで、基準座標系におけるU軸は、基準座標系におけるX軸周りの回転角を示す座標軸のことである。また、基準座標系におけるV軸は、基準座標系におけるY軸周りの回転角を示す座標軸のことである。また、基準座標系におけるW軸は、基準座標系におけるZ軸周りの回転角を示す座標軸のことである。
(1)の第1設定項目には、重力補償の有効を示す情報又は重力補償の無効を示す情報が第1設定情報として設定される。
(2)の第1設定項目には、基準座標系として選択された座標系を示す情報が第1設定情報として設定される。
(3)の第1設定項目には、(2)の第1設定項目に設定された設定情報が示す基準座標系におけるX軸に沿った方向への制御点Tの並進の許可を示す情報又は当該並進の不許可を示す情報が第1設定情報として設定される。
(4)の第1設定項目には、当該基準座標系におけるY軸に沿った方向への制御点Tの並進の許可を示す情報又は当該並進の不許可を示す情報が第1設定情報として設定される。
(5)の第1設定項目には、当該基準座標系におけるZ軸に沿った方向への制御点Tの並進の許可を示す情報又は当該並進の不許可を示す情報が第1設定情報として設定される。
(6)の第1設定項目には、当該基準座標系におけるU軸に沿った方向への制御点Tの回転の許可を示す情報又は当該回転の不許可を示す情報が第1設定情報として設定される。
(7)の第1設定項目には、当該基準座標系におけるV軸に沿った方向への制御点Tの回転の許可を示す情報又は当該回転の不許可を示す情報が第1設定情報として設定される。
(8)の第1設定項目には、当該基準座標系におけるW軸に沿った方向への制御点Tの回転の許可を示す情報又は当該回転の不許可を示す情報が第1設定情報として設定される。
(9)の第1設定項目には、当該X軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(10)の第1設定項目には、当該X軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(11)の第1設定項目には、当該X軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
(12)の第1設定項目には、当該Y軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(13)の第1設定項目には、当該Y軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(14)の第1設定項目には、当該Y軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
(15)の第1設定項目には、当該Z軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(16)の第1設定項目には、当該Z軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(17)の第1設定項目には、当該Z軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
(18)の第1設定項目には、当該U軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(19)の第1設定項目には、当該U軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(20)の第1設定項目には、当該U軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
(21)の第1設定項目には、当該V軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(22)の第1設定項目には、当該V軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(23)の第1設定項目には、当該V軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
(24)の第1設定項目には、当該W軸に沿った方向に対する力制御の質量係数の値が第1設定情報として設定される。
(25)の第1設定項目には、当該W軸に沿った方向に対する力制御の弾性係数の値が第1設定情報として設定される。
(26)の第1設定項目には、当該W軸に沿った方向に対する力制御の粘性係数の値が第1設定情報として設定される。
なお、教示装置40がロボット制御装置30に設定可能な複数の設定項目のうち直接教示における力制御に係る複数の第1設定項目には、上記の26個の設定項目の一部又は全部に代えて、他の設定項目が含まれる構成であってもよく、上記の26個の設定項目に加えて、他の設定項目が含まれる構成であってもよい。
A6.各第1設定項目に設定された第1設定情報が記憶されるファイル:
以下、各第1設定項目に設定された第1設定情報がロボット制御装置30の記憶領域において記憶されるファイルについて説明する。
教示装置40は、ユーザーから受け付けた操作に基づいてロボット制御装置30を制御し、複数のファイルを属させるファイル(すなわち、当該複数のファイルよりも上位のディレクトリー又は上位のフォルダー)である「第1上位ファイル」をロボット制御装置30の記憶領域に生成する。教示装置40は、ユーザーから受け付けた操作に基づいて、当該記憶領域に1以上の第1上位ファイルを生成することができる。また、教示装置40は、ユーザーから受け付けた操作に基づいてロボット制御装置30を制御し、第1上位ファイルに属させる3種類のファイルである「第11ファイル」と、「第12ファイル」と、「第13ファイル」とのそれぞれを当該記憶領域に生成する。
「第11ファイル」は、上記の(1)の第1設定項目に設定された第1設定情報として、重力補償の有効を示す情報又は重力補償の無効を示す情報を記憶するファイルである。また、「第13ファイル」は、上記の(2)の第1設定項目に設定された第1設定情報として、基準座標系としてユーザーにより選択された座標系を示す情報を記憶するファイルである。また、「第12ファイル」は、上記の(3)~(26)それぞれの第1設定項目に設定された第1設定情報として、以下の情報を記憶するファイルである。その情報は、第13ファイルに記憶された情報が示す基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの並進の可否を示す情報と、当該基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの回転の可否を示す情報と、当該X軸、Y軸、Z軸、U軸、V軸、W軸のそれぞれに沿った方向に対する力制御の質量係数、弾性係数、粘性係数のそれぞれを示す情報である。
なお、教示装置40は、各第1設定項目に設定された第1設定情報を第1ファイルに属する第11ファイル、第13ファイル、第12ファイルのいずれかに記憶させる構成に代えて、他のファイル構造のファイルに記憶させる構成であってもよい。また、教示装置40は、各第1設定項目に設定された第1設定情報を記憶部42にも記憶させる構成であってもよい。
A7.第1動作モードにおいて教示装置が行う処理:
A7-1.第1設定態様の初期画面:
図4は、第1動作モードにおいて教示装置40が表示部45に表示させる第1設定態様の一例を示す図である。以下、図4を参照し、第1動作モードにおいて教示装置40が行う処理について説明する。図4に示した画面X0は、第1設定態様の一例である。
第1設定態様は、前述した通り、ロボット制御装置30に対する複数の第1設定項目の設定について習熟しているユーザー(例えば、習熟者、エキスパート等)向けに設計された画面であり、教示装置40によってロボット制御装置30に複数の第1設定項目のそれぞれを個別に設定可能な画面のことである。このため、第1設定態様では、ユーザーは、直接教示におけるロボット20の動作をユーザーが所望する動作(好ましい動作)と一致させることができる。その結果、ユーザーは、教示装置40を用いることによって、より精度の高い直接教示を容易にロボット制御装置30に行うことができる。
画面X0には、例えば、領域X1が含まれている(図4の上段参照)。なお、画面X0には、領域X1に代えて、他のGUI(Graphical User Interface)が含まれる構成であってもよく、領域X1に加えて、他のGUIが含まれる構成であってもよい。
領域X1には、例えば、プルダウンメニューPX1~プルダウンメニューPX5と、チェックボックスCX1~チェックボックスCX6と、入力欄FX1~入力欄FX3と、入力欄FY1~入力欄FY3と、入力欄FZ1~入力欄FZ3と、入力欄TX1~入力欄TX3と、入力欄TY1~入力欄TY3と、入力欄TZ1~入力欄TZ3とのそれぞれが含まれている。
なお、領域X1には、プルダウンメニューPX1~プルダウンメニューPX5と、チェックボックスCX1~チェックボックスCX6と、入力欄FX1~入力欄FX3と、入力欄FY1~入力欄FY3と、入力欄FZ1~入力欄FZ3と、入力欄TX1~入力欄TX3と、入力欄TY1~入力欄TY3と、入力欄TZ1~入力欄TZ3とのうちの一部又は全部に代えて、他のGUIが含まれる構成であってもよい。なお、領域X1は、プルダウンメニューPX1~プルダウンメニューPX5と、チェックボックスCX1~チェックボックスCX6と、入力欄FX1~入力欄FX3と、入力欄FY1~入力欄FY3と、入力欄FZ1~入力欄FZ3と、入力欄TX1~入力欄TX3と、入力欄TY1~入力欄TY3と、入力欄TZ1~入力欄TZ3とに加えて、他のGUIが含まれる構成であってもよい。
A7-2.第1上位ファイルの選択:
プルダウンメニューPX1は、ファイル名をユーザーが入力可能な入力欄を有し、ロボット制御装置30に記憶された第1上位ファイルをユーザーが選択可能なGUIである。「第1上位ファイル」には、所属するファイルとして「第11ファイル」と、「第12ファイル」と、「第13ファイル」とが、関連づけられている。ユーザーにより当該入力欄にファイル名が入力された場合、表示制御部461は、ユーザーにより入力されたファイル名をプルダウンメニューPX1に表示させる。そして、設定制御部463は、ユーザーにより入力されたファイル名の第1上位ファイルと、当該第1上位ファイルに属する第11ファイルとをロボット制御装置30の記憶領域に生成する。
ユーザーによりプルダウンメニューPX1がクリック(タップ)された場合(すなわち、プルダウンメニューPX1の選択が受け付けられると)、表示制御部461は、ロボット制御装置30に記憶された1以上の第1上位ファイルそれぞれのファイル名を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。当該一覧においてあるファイル名がユーザーによりクリック(タップ)された場合(すなわち、当該ファイル名の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに当該入力欄に当該ファイル名を表示させる。なお、プルダウンメニューPX1は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、説明の便宜上、プルダウンメニューPX1に表示されたファイル名を「対象第1上位ファイル名」と称し、対象第1上位ファイル名の第1上位ファイルを「対象第1上位ファイル」と称して説明する。また、以下では、対象第1上位ファイルに属する第11ファイルを「対象第11ファイル」と称して説明する。
A7-3.重力補償の有効/無効を示す第1設定情報の選択:
プルダウンメニューPX2は、上記の(1)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、プルダウンメニューPX2は、重力補償の有効を示す情報又は重力補償の無効を示す情報をユーザーが選択可能なGUIである。ユーザーによりプルダウンメニューPX2がクリック(タップ)された場合(すなわち、プルダウンメニューPX2の選択が受け付けられると)、表示制御部461は、重力補償の有効を示す情報と、重力補償の無効を示す情報とを含む一覧を表示部45に表示させる。
当該一覧において重力補償の有効を示す情報がユーザーによりクリック(タップ)された場合(すなわち、当該情報の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともにプルダウンメニューPX2に当該情報を表示させる。そして、設定制御部463は、対象第11ファイルに当該情報を、上記の(1)の第1設定項目に設定する第1設定情報として記憶させる。一方、当該一覧において重力補償の無効を示す情報がユーザーによりクリック(タップ)された場合(すなわち、当該情報の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともにプルダウンメニューPX2に当該情報を表示させる。そして、設定制御部463は、対象第11ファイルに当該情報を、上記の(1)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(1)の第1設定項目に第1設定情報を設定する。
なお、図4に示したプルダウンメニューPX2は、当該場合におけるプルダウンメニューPX2の一例である。すなわち、図4に示した「0:重力補償OFF」は、重力補償の無効を示す情報の一例である。なお、プルダウンメニューPX2は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
ここで、ロボット制御装置30は、上記の(1)の第1設定項目に重力補償の有効を示す情報が第1設定情報として設定された場合、直接教示における力制御において重力補償を行う。ロボット制御装置30が重力補償を行う処理は、既知の処理であってもよく、これから開発される処理であってもよい。一方、ロボット制御装置30は、上記の(1)の第1設定項目に重力補償の無効を示す情報が第1設定情報として設定された場合、直接教示における力制御において重力補償を行わない。
A7-4.制御点Tの各軸に関する並進および回転の可否を示す第12ファイルの選択:
プルダウンメニューPX3は、ファイル名をユーザーが入力可能な入力欄を有し、ロボット制御装置30に記憶された第12ファイルをユーザーが選択可能なGUIである。「第12ファイル」は、上記の(3)~(26)それぞれの第1設定項目に設定された第1設定情報として、以下の情報を記憶するファイルである。その情報は、第13ファイルに記憶された情報が示す基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの並進の可否を示す情報と、当該基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの回転の可否を示す情報と、当該X軸、Y軸、Z軸、U軸、V軸、W軸のそれぞれに沿った方向に対する力制御の質量係数、弾性係数、粘性係数のそれぞれを示す情報である。ユーザーにより当該入力欄にファイル名が入力された場合、表示制御部461は、ユーザーにより入力されたファイル名をプルダウンメニューPX3に表示させる。そして、設定制御部463は、ユーザーにより入力されたファイル名の第12ファイルを、対象第1上位ファイルに属する第12ファイルとして当該記憶領域に生成する。
ユーザーによりプルダウンメニューPX3がクリック(タップ)された場合(すなわち、プルダウンメニューPX3の選択が受け付けられると)、表示制御部461は、対象第1上位ファイルに属する1以上の第12ファイルそれぞれのファイル名を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。当該一覧においてあるファイル名がユーザーによりクリック(タップ)された場合(すなわち、当該ファイル名の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに当該入力欄に当該ファイル名を表示させる。
なお、プルダウンメニューPX3は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、説明の便宜上、プルダウンメニューPX3に表示されたファイル名を「対象第12ファイル名」と称し、対象第12ファイル名の第12ファイルを「対象第12ファイル」と称して説明する。
A7-5.基準座標系を示す第13ファイルの選択:
プルダウンメニューPX4は、ファイル名をユーザーが入力可能な入力欄を有し、ロボット制御装置30に記憶された第13ファイルをユーザーが選択可能なGUIである。「第13ファイル」は、上記の(2)の第1設定項目に設定された第1設定情報として、基準座標系としてユーザーにより選択された座標系を示す情報を記憶するファイルである。ユーザーにより当該入力欄にファイル名が入力された場合、表示制御部461は、ユーザーにより入力されたファイル名をプルダウンメニューPX4に表示させる。そして、設定制御部463は、ユーザーにより入力されたファイル名の第13ファイルを、対象第1上位ファイルに属する第13ファイルとして当該記憶領域に生成する。
ユーザーによりプルダウンメニューPX4がクリック(タップ)された場合(すなわち、プルダウンメニューPX4の選択が受け付けられると)、表示制御部461は、対象第1上位ファイルに属する1以上の第13ファイルそれぞれのファイル名を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。当該一覧においてあるファイル名がユーザーによりクリック(タップ)された場合(すなわち、当該ファイル名の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに当該入力欄に当該ファイル名を表示させる。
なお、プルダウンメニューPX4は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、説明の便宜上、プルダウンメニューPX4に表示されたファイル名を「対象第13ファイル名」と称し、対象第13ファイル名の第13ファイルを「対象第13ファイル」と称して説明する。
A7-6.基準座標系を表す第1設定情報の選択:
プルダウンメニューPX5は、上記の(2)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、プルダウンメニューPX5は、ロボット制御装置30に記憶されている(設定されている、登録されている)1以上の座標系それぞれを示す座標系情報のうち基準座標系としてユーザーが設定したい所望の座標系を示す座標系情報をユーザーが選択可能なGUIである。
ユーザーによりプルダウンメニューPX5がクリック(タップ)された場合(すなわち、プルダウンメニューPX5の選択が受け付けられると)、表示制御部461は、ロボット制御装置30の記憶領域に記憶された1以上の座標系情報を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。当該一覧においてある座標系情報がユーザーによりクリック(タップ)された場合(すなわち、当該座標系情報の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに、プルダウンメニューPX5に当該座標系情報を表示させる。そして、設定制御部463は、対象第13ファイルに当該座標系情報を、上記の(2)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(2)の第1設定項目に第1設定情報を設定する。
なお、プルダウンメニューPX5は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、「基準座標系」と称した場合、プルダウンメニューPX5に表示された座標系情報が示す座標系を意味するものとする。
図5は、図4に示した画面X0におけるプルダウンメニューPX5がユーザーによりクリック(タップ)された場合の画面X0の一例を示す図である。前述した通り、当該場合(すなわち、当該プルダウンメニューPX5の選択が受け付けられると)、表示制御部461は、例えば、基準座標系として選択可能な1以上の座標系それぞれを示す座標系情報を含む一覧を表示させる。図5に示した一覧L1は、当該一覧の一例である。図5に示した例では、一覧L1には、「Base」と、「Local」と、「Tool」とのそれぞれが示す座標系が表示されている。
「Base」は、この一例において、ロボット20の支持台Bを基準とした座標系、すなわちロボット座標系を示す座標系情報である。「Local」は、この一例において、ユーザーにより任意の位置に設定された三次元局所座標系を示す座標系情報である。「Tool」は、この一例において、ユーザーによりロボット20に設けられたツールの任意の位置に設定された三次元局所座標系を示す座標系情報であり、例えば、前述の制御点座標系を示す座標系情報である。
図4に示したプルダウンメニューPX5は、一覧L1において「Base」がユーザーによりクリック(タップ)された場合(すなわち、「Base」の選択が受け付けられた場合)のプルダウンメニューPX5の一例である。なお、一覧L1には、「Base」、「Local」、「Tool」のうちの一部又は全部に代えて、他の座標系を示す座標系情報が表示される構成であってもよく、「Base」、「Local」、「Tool」に加えて、他の座標系を示す座標系情報が表示される構成であってもよい。また、一覧L1には、ユーザーにより任意の位置に設定された三次元局所座標系を示す座標系情報(図5に示した例では、「Local」)が2以上表示される構成であってもよい。この場合、一覧L1に表示される2以上の当該三次元局所座標系のそれぞれを示す座標系情報は、互いに区別可能な情報である。また、一覧L1には、ユーザーによりロボット20に設けられたツールの任意の位置に設定された三次元局所座標系を示す座標系情報(図5に示した例では、「Tool」)が2以上表示される構成であってもよい。この場合、一覧L1に表示される2以上の当該三次元局所座標系のそれぞれを示す座標系情報は、互いに区別可能な情報である。
A7-7.X軸に沿った方向への制御点Tの並進の可否を表す第1設定情報の選択:
図4に戻る。チェックボックスCX1は、上記の(3)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX1は、基準座標系におけるX軸に沿った方向への制御点Tの並進の可否をユーザーが選択可能なGUIである。チェックボックスCX1がチェックされると、力制御においてロボット20の移動方向は、X軸に沿った方向を方向成分として含むことができる。
チェックボックスCX1がクリックされたことを示す情報がチェックボックスCX1に表示されていない状態においてユーザーによりチェックボックスCX1がクリック(タップ)された場合(すなわち、チェックボックスCX1の選択が受け付けられると)、表示制御部461は、チェックボックスCX1がクリックされたことを示す情報をチェックボックスCX1に表示させる。一方、チェックボックスCX1がクリックされたことを示す情報がチェックボックスCX1に表示されている状態においてユーザーによりチェックボックスCX1がクリック(タップ)された場合(すなわち、チェックボックスCX1の選択が受け付けられると)、表示制御部461は、チェックボックスCX1がクリックされたことを示す情報をチェックボックスCX1から削除する。
チェックボックスCX1がクリックされたことを示す情報がチェックボックスCX1に表示されていない状態では、設定制御部463は、基準座標系におけるX軸に沿った方向への制御点Tの並進の不許可を示す情報を、対象第12ファイルに上記の(3)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX1がクリックされたことを示す情報がチェックボックスCX1に表示されている状態では、設定制御部463は、基準座標系におけるX軸に沿った方向への制御点Tの並進の許可を示す情報を、対象第12ファイルに上記の(3)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(3)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX1は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-8.Y軸に沿った方向への制御点Tの並進の可否を表す第1設定情報の選択:
チェックボックスCX2は、上記の(4)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX2は、基準座標系におけるY軸に沿った方向への制御点Tの並進の可否をユーザーが選択可能なGUIである。チェックボックスCX2がチェックされると、力制御においてロボット20の移動方向は、Y軸に沿った方向を方向成分として含むことができる。
チェックボックスCX2がクリックされたことを示す情報がチェックボックスCX2に表示されていない状態においてユーザーによりチェックボックスCX2がクリック(タップ)された場合(すなわち、チェックボックスCX2の選択が受け付けられると)、表示制御部461は、チェックボックスCX2がクリックされたことを示す情報をチェックボックスCX2に表示させる。一方、チェックボックスCX2がクリックされたことを示す情報がチェックボックスCX2に表示されている状態においてユーザーによりチェックボックスCX2がクリック(タップ)された場合(すなわち、チェックボックスCX2の選択が受け付けられると)、表示制御部461は、チェックボックスCX2がクリックされたことを示す情報をチェックボックスCX2から削除する。
チェックボックスCX2がクリックされたことを示す情報がチェックボックスCX2に表示されていない状態では、設定制御部463は、基準座標系におけるY軸に沿った方向への制御点Tの並進の不許可を示す情報を、対象第12ファイルに上記の(4)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX2がクリックされたことを示す情報がチェックボックスCX2に表示されている状態では、設定制御部463は、基準座標系におけるY軸に沿った方向への制御点Tの並進の許可を示す情報を、対象第12ファイルに上記の(4)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(4)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX2は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-9.Z軸に沿った方向への制御点Tの並進の可否を表す第1設定情報の選択:
チェックボックスCX3は、上記の(5)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX3は、基準座標系におけるZ軸に沿った方向への制御点Tの並進の可否をユーザーが選択可能なGUIである。チェックボックスCX3がチェックされると、力制御においてロボット20の移動方向は、Z軸に沿った方向を方向成分として含むことができる。
チェックボックスCX3がクリックされたことを示す情報がチェックボックスCX3に表示されていない状態においてユーザーによりチェックボックスCX3がクリック(タップ)された場合(すなわち、チェックボックスCX3の選択が受け付けられると)、表示制御部461は、チェックボックスCX3がクリックされたことを示す情報をチェックボックスCX3に表示させる。一方、チェックボックスCX3がクリックされたことを示す情報がチェックボックスCX3に表示されている状態においてユーザーによりチェックボックスCX3がクリック(タップ)された場合(すなわち、チェックボックスCX3の選択が受け付けられると)、表示制御部461は、チェックボックスCX3がクリックされたことを示す情報をチェックボックスCX3から削除する。
チェックボックスCX3がクリックされたことを示す情報がチェックボックスCX3に表示されていない状態では、設定制御部463は、基準座標系におけるZ軸に沿った方向への制御点Tの並進の不許可を示す情報を、対象第12ファイルに上記の(5)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX3がクリックされたことを示す情報がチェックボックスCX3に表示されている状態では、設定制御部463は、基準座標系におけるZ軸に沿った方向への制御点Tの並進の許可を示す情報を、対象第12ファイルに上記の(5)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(5)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX3は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-10.U軸に沿った方向への制御点Tの回転の可否を表す第1設定情報の選択:
チェックボックスCX4は、上記の(6)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX4は、基準座標系におけるU軸に沿った方向への制御点Tの回転の可否をユーザーが選択可能なGUIである。チェックボックスCX4がチェックされると、力制御においてロボット20の回転方向は、U軸に沿った方向を方向成分として含むことができる。なお、本明細書においては、並進などの移動方向と回転方向との両方を含めて、広義の「移動方向」と呼ぶ。
チェックボックスCX4がクリックされたことを示す情報がチェックボックスCX4に表示されていない状態においてユーザーによりチェックボックスCX4がクリック(タップ)された場合(すなわち、チェックボックスCX4の選択が受け付けられると)、表示制御部461は、チェックボックスCX4がクリックされたことを示す情報をチェックボックスCX4に表示させる。一方、チェックボックスCX4がクリックされたことを示す情報がチェックボックスCX4に表示されている状態においてユーザーによりチェックボックスCX4がクリック(タップ)された場合(すなわち、チェックボックスCX4の選択が受け付けられると)、表示制御部461は、チェックボックスCX4がクリックされたことを示す情報をチェックボックスCX4から削除する。
チェックボックスCX4がクリックされたことを示す情報がチェックボックスCX4に表示されていない状態では、設定制御部463は、基準座標系におけるU軸に沿った方向への制御点Tの回転の不許可を示す情報を、対象第12ファイルに上記の(6)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX4がクリックされたことを示す情報がチェックボックスCX4に表示されている状態では、設定制御部463は、基準座標系におけるU軸に沿った方向への制御点Tの回転の許可を示す情報を、対象第12ファイルに上記の(6)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(6)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX4は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-11.V軸に沿った方向への制御点Tの回転の可否を表す第1設定情報の選択:
チェックボックスCX5は、上記の(7)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX5は、基準座標系におけるV軸に沿った方向への制御点Tの回転の可否をユーザーが選択可能なGUIである。チェックボックスCX5がチェックされると、力制御においてロボット20の回転方向は、V軸に沿った方向を方向成分として含むことができる。
チェックボックスCX5がクリックされたことを示す情報がチェックボックスCX5に表示されていない状態においてユーザーによりチェックボックスCX5がクリック(タップ)された場合(すなわち、チェックボックスCX5の選択が受け付けられると)、表示制御部461は、チェックボックスCX5がクリックされたことを示す情報をチェックボックスCX5に表示させる。一方、チェックボックスCX5がクリックされたことを示す情報がチェックボックスCX5に表示されている状態においてユーザーによりチェックボックスCX5がクリック(タップ)された場合(すなわち、チェックボックスCX5の選択が受け付けられると)、表示制御部461は、チェックボックスCX5がクリックされたことを示す情報をチェックボックスCX5から削除する。
チェックボックスCX5がクリックされたことを示す情報がチェックボックスCX5に表示されていない状態では、設定制御部463は、基準座標系におけるV軸に沿った方向への制御点Tの回転の不許可を示す情報を、対象第12ファイルに上記の(7)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX5がクリックされたことを示す情報がチェックボックスCX5に表示されている状態では、設定制御部463は、基準座標系におけるV軸に沿った方向への制御点Tの回転の許可を示す情報を、対象第12ファイルに上記の(7)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(7)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX5は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-12.W軸に沿った方向への制御点Tの回転の可否を表す第1設定情報の選択:
チェックボックスCX6は、上記の(8)の第1設定項目に設定する第1設定情報をユーザーが選択可能なGUIである。すなわち、チェックボックスCX6は、基準座標系におけるW軸に沿った方向への制御点Tの回転の可否をユーザーが選択可能なGUIである。チェックボックスCX6がチェックされると、力制御においてロボット20の回転方向は、W軸に沿った方向を方向成分として含むことができる。
チェックボックスCX6がクリックされたことを示す情報がチェックボックスCX6に表示されていない状態においてユーザーによりチェックボックスCX6がクリック(タップ)された場合(すなわち、チェックボックスCX6の選択が受け付けられると)、表示制御部461は、チェックボックスCX6がクリックされたことを示す情報をチェックボックスCX6に表示させる。一方、チェックボックスCX6がクリックされたことを示す情報がチェックボックスCX6に表示されている状態においてユーザーによりチェックボックスCX6がクリック(タップ)された場合(すなわち、チェックボックスCX6の選択が受け付けられると)、表示制御部461は、チェックボックスCX6がクリックされたことを示す情報をチェックボックスCX6から削除する。
チェックボックスCX6がクリックされたことを示す情報がチェックボックスCX6に表示されていない状態では、設定制御部463は、基準座標系におけるW軸に沿った方向への制御点Tの回転の不許可を示す情報を、対象第12ファイルに上記の(8)の第1設定項目に設定する第1設定情報として記憶させる。一方、チェックボックスCX6がクリックされたことを示す情報がチェックボックスCX6に表示されている状態では、設定制御部463は、基準座標系におけるW軸に沿った方向への制御点Tの回転の許可を示す情報を、対象第12ファイルに上記の(8)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(8)の第1設定項目に第1設定情報を設定する。なお、チェックボックスCX6は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。
A7-13.X軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄FX1は、上記の(9)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FX1は、基準座標系におけるX軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FX1に当該値が入力された場合、表示制御部461は、入力欄FX1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(9)の第1設定項目に設定する第1設定情報として記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(9)の第1設定項目に第1設定情報を設定する。なお、入力欄FX1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FX2は、上記の(10)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FX2は、基準座標系におけるX軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FX2に当該値が入力された場合、表示制御部461は、入力欄FX2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(10)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(10)の第1設定項目に設定情報を設定する。なお、入力欄FX2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FX3は、上記の(11)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FX3は、基準座標系におけるX軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FX3に当該値が入力された場合、表示制御部461は、入力欄FX3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(11)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(11)の第1設定項目に設定情報を設定する。なお、入力欄FX3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
A7-14.Y軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄FY1は、上記の(12)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FY1は、基準座標系におけるY軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FY1に当該値が入力された場合、表示制御部461は、入力欄FY1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(12)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(12)の第1設定項目に設定情報を設定する。なお、入力欄FY1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FY2は、上記の(13)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FY2は、基準座標系におけるY軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FY2に当該値が入力された場合、表示制御部461は、入力欄FY2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(13)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(13)の第1設定項目に設定情報を設定する。なお、入力欄FY2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FY3は、上記の(14)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FY3は、基準座標系におけるY軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FY3に当該値が入力された場合、表示制御部461は、入力欄FY3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(14)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(14)の第1設定項目に設定情報を設定する。なお、入力欄FY3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
A7-15.Z軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄FZ1は、上記の(15)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FZ1は、基準座標系におけるZ軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FZ1に当該値が入力された場合、表示制御部461は、入力欄FZ1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(15)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(15)の第1設定項目に設定情報を設定する。なお、入力欄FZ1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FZ2は、上記の(16)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FZ2は、基準座標系におけるZ軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FZ2に当該値が入力された場合、表示制御部461は、入力欄FZ2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(16)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(16)の第1設定項目に設定情報を設定する。なお、入力欄FZ2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄FZ3は、上記の(17)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄FZ3は、基準座標系におけるZ軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄FZ3に当該値が入力された場合、表示制御部461は、入力欄FZ3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(17)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(17)の第1設定項目に設定情報を設定する。なお、入力欄FZ3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
A7-16.U軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄TX1は、上記の(18)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TX1は、基準座標系におけるU軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TX1に当該値が入力された場合、表示制御部461は、入力欄TX1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(18)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(18)の第1設定項目に設定情報を設定する。なお、入力欄TX1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TX2は、上記の(19)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TX2は、基準座標系におけるU軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TX2に当該値が入力された場合、表示制御部461は、入力欄TX2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(19)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(19)の第1設定項目に設定情報を設定する。なお、入力欄TX2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TX3は、上記の(20)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TX3は、基準座標系におけるU軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TX3に当該値が入力された場合、表示制御部461は、入力欄TX3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(20)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(20)の第1設定項目に設定情報を設定する。なお、入力欄TX3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
A7-17.V軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄TY1は、上記の(21)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TY1は、基準座標系におけるV軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TY1に当該値が入力された場合、表示制御部461は、入力欄TY1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(21)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(21)の第1設定項目に設定情報を設定する。なお、入力欄TY1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TY2は、上記の(22)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TY2は、基準座標系におけるV軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TY2に当該値が入力された場合、表示制御部461は、入力欄TY2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(22)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(22)の第1設定項目に設定情報を設定する。なお、入力欄TY2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TY3は、上記の(23)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TY3は、基準座標系におけるV軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TY3に当該値が入力された場合、表示制御部461は、入力欄TY3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(23)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(23)の第1設定項目に設定情報を設定する。なお、入力欄TY3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
A7-18.W軸に沿った方向に対する力制御の各係数の値を表す第1設定情報の入力:
入力欄TZ1は、上記の(24)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TZ1は、基準座標系におけるW軸に沿った方向に対する力制御の質量係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TZ1に当該値が入力された場合、表示制御部461は、入力欄TZ1に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(24)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(24)の第1設定項目に設定情報を設定する。なお、入力欄TZ1は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TZ2は、上記の(25)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TZ2は、基準座標系におけるW軸に沿った方向に対する力制御の弾性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TZ2に当該値が入力された場合、表示制御部461は、入力欄TZ2に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(25)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(25)の第1設定項目に設定情報を設定する。なお、入力欄TZ2は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
入力欄TZ3は、上記の(26)の第1設定項目に設定する第1設定情報をユーザーが入力可能なGUIである。すなわち、入力欄TZ3は、基準座標系におけるW軸に沿った方向に対する力制御の粘性係数の値をユーザーが入力可能なGUIである。ユーザーにより入力欄TZ3に当該値が入力された場合、表示制御部461は、入力欄TZ3に当該値を表示する。そして、設定制御部463は、当該値を、対象第12ファイルに上記の(26)の第1設定項目に設定する設定情報を記憶させる。これにより、設定制御部463は、ロボット制御装置30に上記の(26)の第1設定項目に設定情報を設定する。なお、入力欄TZ3は、これらの機能を実現可能なGUIであれば、入力欄と異なる他のGUIであってもよい。
以上で説明したように、第1設定項目が、力制御で用いられる質量係数、弾性係数、粘性係数を含むことにより、ユーザーは、第1設定項目としての質量係数、弾性係数、粘性係数を好ましい値に設定して、力制御におけるロボットの特性を、ユーザーが望む特性に設定することができる。
A7-19.第1設定態様の効果:
以上のような画面X0(すなわち、第1設定態様)を表示部45に表示させることにより、教示装置40は、教示装置40がロボット制御装置30に設定可能な複数の設定項目のうち直接教示における力制御に係る複数の第1設定項目それぞれを個別に設定することができる。これにより、ユーザーは、直接教示におけるロボット20の動作をユーザーが所望する動作(好ましい動作)と一致させることができる。その結果、ユーザーは、教示装置40を用いることによって、ロボットの性能を十分に発揮できるように、より精度の高い直接教示をロボット制御装置30に行うことができる。
A8.第2動作モードにおいて教示装置が行う処理:
A8-1.第2設定態様の初期画面:
図6は、第2動作モードにおいて教示装置40が表示部45に表示させる第2設定態様の一例を示す図である。図6に示した画面P0は、第2設定態様の一例である。教示装置40の動作モードは、図4の表示および図6の表示に先立って表示される選択画面のGUIにおいて、ユーザーによって選択されて、教示装置40に入力される。なお、本実施形態においては、教示装置40の動作モードが選択されることにより、第1設定態様と第2設定態様は、選択的に表示される。しかし、第1設定態様と第2設定態様は、一つの画面中に同時に表示されてもよい。以下、図6を参照し、第2動作モードにおいて教示装置40が行う処理について説明する。
第2設定態様は、前述した通り、ロボット制御装置30に対する複数の第1設定項目の設定について習熟していないユーザー(例えば、初心者、ビギナー等)向けに設計された画面であり、教示装置40によってロボット制御装置30に複数の第1設定項目のうちの少なくとも一部(少なくとも2つ)をまとめて1つの第2設定項目として設定可能な画面のことである。このため、第2設定態様では、ユーザーは、第1設定態様を用いる場合と比較して、複数の第1設定項目の設定を容易に行うことができる。
第2動作モードにおいて教示装置40は、ユーザーから操作を受け付けることなくロボット制御装置30を制御し、第2上位ファイルをロボット制御装置30の記憶領域に生成する。「第2上位ファイル」は、第2動作モード専用の第1上位ファイルである。また、第2動作モードにおいて教示装置40は、ユーザーから操作を受け付けることなくロボット制御装置30を制御し、第2上位ファイルに属させる3種類のファイルである第21ファイルと、第22ファイルと、第23ファイルとのそれぞれを当該記憶領域に生成する。「第21ファイル」は、第2動作モード専用の第11ファイルである。また、「第22ファイル」は、第2動作モード専用の第12ファイルである。また、「第23ファイル」は、第2動作モード専用の第13ファイルである。
なお、第2上位ファイルと、第21ファイルと、第22ファイルと、第23ファイルとのうちの一部又は全部は、第2動作モード専用でなくてもよい。第2上位ファイルが第2動作モード専用ではない場合、第2上位ファイルは、例えば、第1設定態様におけるプルダウンメニューPX1と同じ機能を有するGUIによってロボット制御装置30の記憶領域に生成される。また、第21ファイルが第2動作モード専用ではない場合、第21ファイルは、第21ファイルを生成するGUIによってロボット制御装置30の記憶領域に生成される。また、第22ファイルが第2動作モード専用ではない場合、第22ファイルは、例えば、第1設定態様におけるプルダウンメニューPX3と同じ機能を有するGUIによってロボット制御装置30の記憶領域に生成される。また、第23ファイルが第2動作モード専用ではない場合、第23ファイルは、例えば、第1設定態様におけるプルダウンメニューPX4と同じ機能を有するGUIによってロボット制御装置30の記憶領域に生成される。
図6に示す画面P0には、タブTB1と、タブTB2と、領域P1と、ボタンB2とが含まれている。なお、画面P0には、タブTB1と、タブTB2と、領域P1と、ボタンB2との一部又は全部に代えて、他のGUIが含まれる構成であってもよく、タブTB1と、タブTB2と、領域P1と、ボタンB2とに加えて、他のGUIが含まれる構成であってもよい。
タブTB1、タブTB2のそれぞれは、領域P1に表示するGUIを、それぞれのタブに応じたGUIに切り替えるGUIである。タブTB1、タブTB2のいずれかがユーザーによりクリック(タップ)された場合、表示制御部461は、領域P1に表示するGUIを、ユーザーによりクリック(タップ)されたタブに応じたGUIに切り替える。すなわち、領域P1は、ユーザーによりクリックされたタブに応じたGUIが表示される領域である。なお、図6に示した例では、これらのタブは、タブTB1、タブTB2の2つのタブであったが、1つのタブであってもよく、3以上のタブであってもよい。
A8-2.フォース設定の初期画面:
タブTB1「フォース設定」は、第2設定項目を設定するGUIと、上記の26個の第1設定項目のうちの第2設定項目によって設定されない複数の第1設定項目のそれぞれを設定するGUIとを領域P1に表示させるタブである。
ユーザーによりタブTB1がクリック(タップ)された場合(すなわち、タブTB1の選択が受け付けられると)、表示制御部461は、例えば、領域P11と、領域P12と、領域P13とのそれぞれを領域P1に表示させる。図6に示した領域P1は、ユーザーによりタブTB1がクリックされた場合における領域P1の一例である。なお、表示制御部461は、当該場合、領域P11と、領域P12と、領域P13との一部又は全部に代えて、他のGUIを領域P1に表示させる構成であってもよく、領域P11と、領域P12と、領域P13とに加えて、他のGUIを領域P1に表示させる構成であってもよい。
領域P11(図6の上段参照)には、前述したプルダウンメニューPX2及びプルダウンメニューPX5が含まれている。プルダウンメニューPX2は、上記の(1)の第1設定項目に設定する第1設定情報、すなわち、重力補償の有効を示す情報又は重力補償の無効を示す情報をユーザーが選択可能なGUIである。プルダウンメニューPX5は、上記の(2)の第1設定項目に設定する第1設定情報、すなわち、ロボット制御装置30に記憶されている1以上の座標系それぞれを示す座標系情報のうち基準座標系としてユーザーが設定したい所望の座標系を示す座標系情報をユーザーが選択可能なGUIである。
なお、領域P11は、プルダウンメニューPX2とプルダウンメニューPX5とのうちいずれか一方又は両方に代えて、他のGUIが含まれる構成であってもよく、プルダウンメニューPX2とプルダウンメニューPX5とに加えて、他のGUIが含まれる構成であってもよい。
領域P11に含まれるプルダウンメニューPX2は、図4において説明したプルダウンメニューPX2の機能と同じ機能を有する。重力補償の有効を示す情報が領域P11に含まれるプルダウンメニューPX2に表示された場合、設定制御部463は、当該情報を第21ファイルに記憶させる。一方、重力補償の無効を示す情報が当該プルダウンメニューPX2に表示された場合、設定制御部463は、当該情報を第21ファイルに記憶させる。これにより、第2設定態様において、設定制御部463は、ロボット制御装置30に上記の(1)の第1設定項目を設定する。
領域P11に含まれるプルダウンメニューPX5は、図4において説明したプルダウンメニューPX5の機能と同じ機能を有する。基準座標系としてユーザーにより選択された座標系を示す座標系情報が領域P11に含まれるプルダウンメニューPX5に表示された場合、設定制御部463は、当該情報を第23ファイルに記憶させる。これにより、第2設定態様において、設定制御部463は、ロボット制御装置30に上記の(2)の第1設定項目、すなわち、基準座標系を設定する。
A8-3.動作態様の選択:
領域P12(図6の中段参照)には、プルダウンメニューPX6と、ボタンB3と、ボタンB4と、ボタンB5とが含まれている。なお、領域P12は、プルダウンメニューPX6と、ボタンB3と、ボタンB4と、ボタンB5とのうちの一部又は全部に代えて、他のGUIが含まれる構成であってもよく、プルダウンメニューPX6と、ボタンB3と、ボタンB4と、ボタンB5とに加えて、他のGUIが含まれる構成であってもよい。
第2設定態様では、ユーザーは、直接教示における力制御による制御点Tの動作の態様である動作態様を、予め決められた1以上の動作態様の中から選択することができる。予め決められた1以上の動作態様には、例えば、「直線動作態様」と、「平面動作態様」と、「回転動作態様」と、「カスタム動作態様」と、「フリー動作態様」とが含まれている。なお、本明細書においては、選択された動作態様も「設定値」と表記する。すなわち、「設定値」とは、スカラー量に限定されない。
なお、制御点Tの動作態様には、直線動作態様と、平面動作態様と、回転動作態様と、カスタム動作態様と、フリー動作態様との一部又は全部に代えて、他の動作態様が含まれる構成であってもよく、直線動作態様と、平面動作態様と、回転動作態様と、カスタム動作態様と、フリー動作態様とに加えて、他の動作態様が含まれる構成であってもよい。
制御点Tの「直線動作」は、基準座標系におけるX軸、Y軸、Z軸のいずれか1つの軸に沿った方向への制御点Tの並進のことである。すなわち、制御点Tの「直線動作態様」は、制御点Tが直線動作を行う動作態様のことである。
制御点Tの「平面動作」は、当該X軸、当該Y軸、当該Z軸のうちのいずれか2つの軸によって規定される平面に沿った方向への制御点Tの並進のことである。すなわち、制御点Tの「平面動作態様」は、制御点Tが平面動作を行う動作態様のことである。
制御点Tの「回転動作」は、当該基準座標系におけるU軸、V軸、W軸のいずれか1つの軸に沿った方向への制御点Tの回転のことである。すなわち、制御点Tの「回転動作態様」は、制御点Tが回転動作を行う動作態様のことである。
制御点Tの「カスタム動作」は、当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸のうちユーザーにより選択された1以上の軸それぞれに沿った方向への制御点Tの動作(並進動作と回転動作の少なくとも一方を含む動作)のことである。すなわち、制御点Tの「カスタム動作態様」は、制御点Tがカスタム動作を行う動作態様のことである。
制御点Tの「フリー動作」は、当該X軸、当該Y軸、当該Z軸のそれぞれに沿った方向への制御点Tの並進動作と、当該U軸、当該V軸、当該W軸のそれぞれに沿った方向への制御点Tの回転動作とのうちいずれか一方の動作又は両方を組み合わせた動作のことである。すなわち、制御点Tの「フリー動作態様」は、制御点Tがフリー動作を行う動作態様のことである。
プルダウンメニューPX6は、このような予め決められた1以上の動作態様(この一例において、上記の5つの動作態様)の中から、ユーザーが1つの動作態様を選択可能なGUIである。ユーザーによりプルダウンメニューPX6がクリック(タップ)された場合(すなわち、プルダウンメニューPX6の選択が受け付けられると)、表示制御部461は、記憶部42に予め記憶された情報であって当該1以上の動作態様のそれぞれを示す動作態様情報を記憶部42から読み出す。表示制御部461は、読み出した1以上の動作態様情報を含む一覧を表示部45に表示させる。
図7は、図5に示した画面P0におけるプルダウンメニューPX6がユーザーによりクリック(タップ)された場合の画面P0の一例を示す図である。前述した通り、当該場合(すなわち、当該プルダウンメニューPX6の選択が受け付けられると)、表示制御部461は、例えば、第2設定態様において選択可能な1以上の動作態様情報を含む一覧を表示させる。図7に示した一覧L2は、当該一覧の一例である。図7に示した例では、一覧L2には、直線動作態様を示す動作態様情報である「直線」と、平面動作態様を示す動作態様情報である「平面」と、回転動作態様を示す動作態様情報である「回転」と、カスタム動作態様を示す動作態様情報である「カスタム」と、フリー動作態様を示す動作態様情報である「フリー」とのそれぞれが5つの動作態様を示す情報が表示されている。なお、当該一覧には、「直線」、「平面」、「回転」、「カスタム」、「フリー」のうちの一部又は全部に代えて、他の動作態様情報が表示される構成であってもよく、「直線」、「平面」、「回転」、「カスタム」、「フリー」に加えて、他の動作態様情報が表示される構成であってもよい。
一覧L2においてある動作態様情報がユーザーによりクリック(タップ)された場合(すなわち、当該動作態様情報が示す動作態様の選択が受け付けられると)、表示制御部461は、一覧L2の表示を表示部45から消す。そして、表示制御部461は、プルダウンメニューPX6に当該選択された動作態様情報を表示させるとともに、領域P12に、当該動作態様情報が示す動作態様に応じた第2設定項目を設定するための1以上のGUIを表示させる。図6に示したボタンB3~ボタンB5のそれぞれは、図6に示したプルダウンメニューPX6に表示された動作態様情報である「フリー」が示すフリー動作態様に応じた第2設定項目を設定するための1以上のGUIの一例である。
A8-3-1.フリー動作態様の設定:
図6に示すようにプルダウンメニューPX6に「フリー」が表示された場合、表示制御部461は、例えば、「フリー」が示すフリー動作態様に応じた第2設定項目を設定するための3つのGUIであるボタンB3~ボタンB5のそれぞれを領域P12に表示させる。フリー動作態様に応じた第2設定項目は、基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの「並進動作」と、当該基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの「回転動作」と、当該並進動作及び当該回転動作とを組み合わせた「複合動作」と、のいずれかの動作を、フリー動作として、制御点Tに許容するための設定項目である。
当該第2設定項目に当該「並進動作」を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該並進動作をフリー動作として行わせる。また、当該第2設定項目に当該「回転動作」を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該回転動作をフリー動作として行わせる。また、当該第2設定項目に当該「複合動作」を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該複合動作をフリー動作として行わせる。
ボタンB3は、フリー動作態様に応じた第2設定項目に、基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの並進動作と、基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの回転動作とを組み合わせた「複合動作」を示す情報を示す情報を第2設定情報として設定するボタンである。ボタンB4は、当該第2設定項目に、当該「並進動作」を示す情報を第2設定情報として設定するボタンである。ボタンB5は、当該第2設定項目に、当該「回転動作」を示す情報を第2設定情報として設定するボタンである。
基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの並進動作と、基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの回転動作とを組み合わせた「複合動作」を示す情報を示す情報に応じた第1設定情報は、上記の(3)~(8)の6個の第1設定項目のそれぞれに設定される第1設定情報である。以下に示した一覧は、当該第1設定項目のそれぞれに設定される第1設定情報の一覧である。
・(3)の第1設定項目に設定される第1設定情報:プルダウンメニューPX5に表示された基準座標系情報が示す基準座標系におけるX軸に沿った方向への制御点Tの並進動作の許可を示す情報
・(4)の第1設定項目に設定される第1設定情報:当該基準座標系におけるY軸に沿った方向への制御点Tの並進動作の許可を示す情報
・(5)の第1設定項目に設定される第1設定情報:当該基準座標系におけるZ軸に沿った方向への制御点Tの並進動作の許可を示す情報
・(6)の第1設定項目に設定される第1設定情報:当該基準座標系におけるU軸に沿った方向への制御点Tの回転動作の許可を示す情報
・(7)の第1設定項目に設定される第1設定情報:当該基準座標系におけるV軸に沿った方向への制御点Tの並進動作の許可を示す情報
・(8)の第1設定項目に設定される第1設定情報:当該基準座標系におけるW軸に沿った方向への制御点Tの並進動作の許可を示す情報
以下では、説明の便宜上、基準座標系におけるX軸に沿った方向への制御点Tの並進動作の許可を示す情報(具体的には、数値「1」)を(3)の第1設定項目に設定される第1設定情報として第22ファイルに記憶させることを、「(3)を許可にする」と称する。当該並進動作の不許可を示す情報(具体的には、数値「0」)を(3)の第1設定項目に設定される第1設定情報として第22ファイルに記憶させることを、「(3)を不許可にする」と称する。Y軸に沿った方向への制御点Tの並進動作の許可/不許可、Z軸に沿った方向への制御点Tの並進動作の許可/不許可についても同様に表記する。
すなわち、基準座標系におけるY軸に沿った方向への制御点Tの並進動作の許可を示す情報(具体的には、数値「1」)を(4)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(4)を許可にする」と称して説明する。当該並進動作の不許可を示す情報(具体的には、数値「0」)を(4)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(4)を不許可にする」と称して説明する。また、以下では、基準座標系におけるZ軸に沿った方向への制御点Tの並進動作の許可を示す情報(具体的には、数値「1」)を(5)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(5)を許可にする」と称して説明する。当該並進動作の不許可を示す情報(具体的には、数値「0」)を(5)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(5)を不許可にすると称して説明する。
また、以下では、基準座標系におけるU軸に沿った方向への制御点Tの回転動作の許可を示す情報(具体的には、数値「1」)を(6)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、(6)を許可にすると称する。当該回転動作の不許可を示す情報(具体的には、数値「0」)を(6)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(6)を不許可にする」と称する。V軸に沿った方向への制御点Tの回転動作の許可/不許可、ならびにW軸に沿った方向への制御点Tの回転動作の許可/不許可についても同様に表記する。
すなわち、基準座標系におけるV軸に沿った方向への制御点Tの回転動作の許可を示す情報(具体的には、数値「1」)を(7)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(7)を許可にする」と称して説明する。当該回転動作の不許可を示す情報(具体的には、数値「0」)を(7)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(7)を不許可にする」と称して説明する。また、以下では、基準座標系におけるW軸に沿った方向への制御点Tの回転動作の許可を示す情報(具体的には、数値「1」)を(8)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(8)を許可にする」と称して説明する。当該回転動作の不許可を示す情報(具体的には、数値「0」)を(8)の第1設定項目に設定される第1設定情報として第22ファイルに設定することを、「(8)を不許可にする」と称して説明する。
図6において、ボタンB3がユーザーによりクリック(タップ)された場合(すなわち、ボタンB3の選択が受け付けられると)、表示制御部461は、ボタンB3がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)~(8)のそれぞれを許可にする。以下で、より具体的に説明する。
表1は、画面P0におけるユーザーによる各ボタンの操作によって教示装置40に入力される第2設定項目の設定値と、その第2設定項目の設定値に対応づけられた6個の第1設定項目の設置値と、を示す表である。表1中の各列の上段に第2設定項目の設定値(たとえば、最上段の「フリー」とその下の「移動と回転」の組み合わせ、最上段の「フリー」とその下の「移動」の組み合わせなど)を示す。表1中の各行の左端に第1設定項目(たとえば、「Fx_Enabled」、「Fy_Enabled」など)を示す。表1中の各欄において、「1」は許可を示し、「0」は不許可を示す。
なお、表1の情報を格納したデータは、ロボット制御装置30(図3参照)が備える記憶部に格納されている。表1の情報が格納されているロボット制御装置30の記憶部は、不揮発性メモリである。表1の情報を格納したデータは、制御装置46によってロボット制御装置30の記憶部から読み出されて、教示装置40の記憶部42(図2参照)に格納される。表1の情報が格納される教示装置40の記憶部42は、揮発性メモリである。制御装置46は、記憶部42内の表1の情報を格納したデータを参照して、各動作態様の設定を行う。
たとえば、表1において、「Fx_Enabled」は、上記(3)の設定、すなわち、基準座標系におけるX軸に沿った方向への制御点Tの並進の可否を表す。「Fy_Enabled」は、上記(4)の設定、すなわち、基準座標系におけるY軸に沿った方向への制御点Tの並進の可否を表す。「Fz_Enabled」は、上記(5)の設定、すなわち、基準座標系におけるZ軸に沿った方向への制御点Tの並進の可否を表す。
表1において、「Tx_Enabled」は、上記(6)の設定、すなわち、基準座標系におけるU軸に沿った方向への制御点Tの回転の可否を表す。「Ty_Enabled」は、上記(7)の設定、すなわち、基準座標系におけるV軸に沿った方向への制御点Tの回転の可否を表す。「Tz_Enabled」は、上記(8)の設定、すなわち、基準座標系におけるW軸に沿った方向への制御点Tの回転の可否を表す。
図6の画面P0においてユーザーが各ボタンを操作して、第2設定項目の設定値が入力されると、制御装置46の設定制御部463(図3参照)は、記憶部42内の表1に相当するデータを参照する。第2設定項目の設定値の入力は、たとえば、図6に示すように、プルダウンメニューPX6において「フリー」が選択され、「移動と回転」の選択の選択を意味するボタンB3がONされることにより行われる。すると、設定制御部463は、表1中の「フリー」かつ「移動と回転」の列を参照して、「Fx_Enabled」、「Fy_Enabled」などの第1設定項目の値(具体的には、1または0)を取得する。この場合は、第1設定項目「Fx_Enabled」~「Tz_Enabled」のすべての設定値は「1」(許可)である。そして、設定制御部463は、第2の設定項目の設定値としての「フリー」かつ「移動と回転」と対応づけられている第1設定項目「Fx_Enabled」~「Tz_Enabled」の値を、取得した値に設定する。「設定制御部463が、(3)~(8)のそれぞれを許可にする」とは、具体的には、以上のような処理を実行することを意味する。
一方、基準座標系におけるX軸、Y軸、Z軸のそれぞれに沿った方向への制御点Tの並進動作を示す情報に応じた第1設定情報は、(3)~(5)のそれぞれを許可にし、(6)~(8)のそれぞれを不許可にする情報である。
すなわち、図6において、ボタンB4がユーザーによりクリック(タップ)された場合(すなわち、ボタンB4の選択が受け付けられると)、表示制御部461は、ボタンB4がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)~(5)のそれぞれを許可にするとともに、(6)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「フリー」かつ「移動」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
また、基準座標系におけるU軸、V軸、W軸のそれぞれに沿った方向への制御点Tの回転動作を示す情報に応じた第1設定情報は、(3)~(5)のそれぞれを不許可にし、(6)~(8)のそれぞれを許可にする情報である。
すなわち、図6において、ボタンB5がユーザーによりクリック(タップ)された場合(すなわち、ボタンB5の選択が受け付けられると)、表示制御部461は、ボタンB5がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)~(5)のそれぞれを不許可にするとともに、(6)~(8)のそれぞれを許可にする。この設定は、表1において、第2設定情報が「フリー」かつ「回転」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
A8-3-2.直線動作態様の設定:
図8は、図7に示した一覧L2において直線動作態様情報がユーザーによりクリックされた場合における画面P0の一例を示す図である。図7に示した一覧L2において直線動作態様情報がユーザーによりクリック(タップ)された場合(すなわち、直線動作態様情報が示す直線動作態様の選択が受け付けられると)、表示制御部461は、一覧L2の表示を表示部45から消す。そして、表示制御部461は、プルダウンメニューPX6に直線動作態様情報である「直線」を表示させるとともに、領域P12に、直線動作態様情報が示す直線動作態様に応じた第2設定項目を設定するための1以上のGUIを表示させる。図8に示したボタンB6~ボタンB8のそれぞれは、当該「直線」が示す直線動作態様に応じた第2設定項目を設定するための1以上のGUIの一例である。
図8に示すようにプルダウンメニューPX6に「直線」が表示された場合、表示制御部461は、例えば、「直線」が示す直線動作態様に応じた第2設定項目を設定するための3つのGUIであるボタンB6~ボタンB8のそれぞれを領域P12に表示させる。直線動作態様に応じた第2設定項目は、基準座標系におけるX軸、Y軸、Z軸のいずれか1つの軸に沿った方向への制御点Tの並進動作を、直線動作として、制御点Tに許容するための設定項目である。
当該第2設定項目に当該X軸に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該X軸に沿った方向への並進動作を直線動作として行わせる。言い替えれば、直接教示の際に、X軸に沿った方向がロボット20が移動可能な方向とされる。
また、当該第2設定項目に当該Y軸に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該Y軸に沿った方向への並進動作を直線動作として行わせる。言い替えれば、直接教示の際に、Y軸に沿った方向がロボット20が移動可能な方向とされる。
また、当該第2設定項目に当該Z軸に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該Z軸に沿った方向への並進動作を直線動作として行わせる。言い替えれば、直接教示の際に、Z軸に沿った方向がロボット20が移動可能な方向とされる。
ボタンB6は、直線動作態様に応じた第2設定項目に、基準座標系におけるX軸に沿った方向への制御点Tの並進動作を示す情報を示す情報を第2設定情報として設定するボタンである。ボタンB7は、当該第2設定項目に、基準座標系におけるY軸に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定するボタンである。ボタンB8は、当該第2設定項目に、基準座標系におけるZ軸に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定するボタンである。
基準座標系におけるX軸に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(3)を許可にし、(4)~(8)を不許可にする情報である。
すなわち、ボタンB6がユーザーによりクリック(タップ)された場合(すなわち、ボタンB6の選択が受け付けられると)、表示制御部461は、ボタンB6がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)を許可にするとともに、(4)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「直線」かつ「X」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
基準座標系におけるY軸に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(4)を許可にし、(3)及び(5)~(8)を不許可にする情報である。
すなわち、ボタンB7がユーザーによりクリック(タップ)された場合(すなわち、ボタンB7の選択が受け付けられると)、表示制御部461は、ボタンB7がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(4)を許可にするとともに、(3)及び(5)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「直線」かつ「Y」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
基準座標系におけるZ軸に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(5)を許可にし、(3)と(4)と(6)~(8)とを不許可にする情報である。
すなわち、ボタンB8がユーザーによりクリック(タップ)された場合(すなわち、ボタンB8の選択が受け付けられると)、表示制御部461は、ボタンB8がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(5)を許可にするとともに、(3)と(4)と(6)~(8)とのそれぞれを不許可にする。この設定は、表1において、第2設定情報が「直線」かつ「Z」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
以上のような処理を行うことにより、第1設定項目の設定について習熟していないユーザーは、3次元の直交座標系における各軸の方向のうち1個の方向を移動可能な方向とする各第1設定項目の設定値の設定を、表示部45に表示される第2設定態様の画面P0を使用して、容易に行うことができる。
A8-3-3.平面動作態様の設定:
図9は、図7に示した一覧L2において平面動作態様情報がユーザーによりクリックされた場合における画面P0の一例を示す図である。図7に示した一覧L2において平面動作態様情報がユーザーによりクリック(タップ)された場合(すなわち、平面動作態様情報が示す平面動作態様の選択が受け付けられると)、表示制御部461は、一覧L2の表示を表示部45から消す。そして、表示制御部461は、プルダウンメニューPX6に平面動作態様情報である「平面」を表示させるとともに、領域P12に、平面動作態様情報が示す平面動作態様に応じた第2設定項目を設定するための1以上のGUIを表示させる。図9に示したボタンB9~ボタンB11のそれぞれは、当該「平面」が示す平面動作態様に応じた第2設定項目を設定するための1以上のGUIの一例である。
図9に示すようにプルダウンメニューPX6に「平面」が表示された場合、表示制御部461は、例えば、「平面」が示す平面動作態様に応じた第2設定項目を設定するための3つのGUIであるボタンB9~ボタンB11のそれぞれを領域P12に表示させる。平面動作態様に応じた第2設定項目は、基準座標系におけるX軸、Y軸、Z軸のうちのいずれか2つの軸によって規定される平面に沿った方向への制御点Tの並進動作を、平面動作として、制御点Tに許容するための設定項目である。
当該第2設定項目に当該X軸及び当該Y軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該X軸及び当該Y軸によって規定される平面に沿った方向への並進動作を平面動作として行わせる。言い替えれば、直接教示の際に、ロボット20の移動方向が方向成分として含むことができる2個の軸の方向として、X軸及びY軸の方向が設定される。
また、当該第2設定項目に当該Y軸及び当該Z軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該Y軸及び当該Z軸によって規定される平面に沿った方向への並進動作を平面動作として行わせる。言い替えれば、直接教示の際に、ロボット20の移動方向が方向成分として含むことができる2個の軸の方向として、Y軸及びZ軸の方向が設定される。
また、当該第2設定項目に当該Z軸及び当該X軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該Z軸及び当該X軸によって規定される平面に沿った方向への並進動作を平面動作として行わせる。言い替えれば、直接教示の際に、ロボット20の移動方向が方向成分として含むことができる2個の軸の方向として、Z軸及びX軸の方向が設定される。
ボタンB9は、平面動作態様に応じた第2設定項目に、基準座標系におけるX軸及びY軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報を第2設定情報として設定するボタンである。また、ボタンB10は、平面動作態様に応じた第2設定項目に、基準座標系におけるY軸及びZ軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報を第2設定情報として設定するボタンである。また、ボタンB11は、平面動作態様に応じた第2設定項目に、当該Z軸及び当該X軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報を第2設定情報として設定するボタンである。
基準座標系におけるX軸及びY軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(3)及び(4)を許可にし、(5)~(8)を不許可にする情報である。
すなわち、ボタンB9がユーザーによりクリック(タップ)された場合(すなわち、ボタンB9の選択が受け付けられると)、表示制御部461は、ボタンB9がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)及び(4)を許可にするとともに、(5)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「平面」かつ「XY」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
また、基準座標系におけるY軸及びZ軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(4)及び(5)を許可にし、(3)及び(6)~(8)を不許可にする情報である。
すなわち、ボタンB10がユーザーによりクリック(タップ)された場合(すなわち、ボタンB10の選択が受け付けられると)、表示制御部461は、ボタンB10がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(4)及び(5)を許可にするとともに、(3)及び(6)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「平面」かつ「YZ」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
また、基準座標系におけるZ軸及びX軸によって規定される平面に沿った方向への制御点Tの並進動作を示す情報を示す情報に応じた第1設定情報は、(3)及び(5)を許可にし、(4)及び(6)~(8)を不許可にする情報である。
すなわち、ボタンB11がユーザーによりクリック(タップ)された場合(すなわち、ボタンB11の選択が受け付けられると)、表示制御部461は、ボタンB11がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(3)及び(5)を許可にするとともに、(4)及び(6)~(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「平面」かつ「XZ」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
以上のような処理を行うことにより、第1設定項目の設定について習熟していないユーザーは、3次元の直交座標系における各軸の方向のうち2個の方向を方向成分として含む方向にロボットを移動可能とする、2個の第1設定項目の設定値の設定を、表示部45に表示される第2設定態様の画面P0を使用して、容易に行うことができる。
A8-3-4.回転動作態様の設定:
図10は、図7に示した一覧L2において回転動作態様情報がユーザーによりクリックされた場合における画面P0の一例を示す図である。図7に示した一覧L2において回転動作態様情報がユーザーによりクリック(タップ)された場合(すなわち、回転動作態様情報が示す回転動作態様の選択が受け付けられると)、表示制御部461は、一覧L2の表示を表示部45から消す。そして、表示制御部461は、プルダウンメニューPX6に回転動作態様情報である「回転」を表示させるとともに、領域P12に、回転動作態様情報が示す回転動作態様に応じた第2設定項目を設定するための1以上のGUIを表示させる。図10に示したボタンB12~ボタンB14のそれぞれは、当該「回転」が示す回転動作態様に応じた第2設定項目を設定するための1以上のGUIの一例である。
図10に示すようにプルダウンメニューPX6に「回転」が表示された場合、表示制御部461は、例えば、「回転」が示す回転動作態様に応じた第2設定項目を設定するための3つのGUIであるボタンB12~ボタンB14のそれぞれを領域P12に表示させる。回転動作態様に応じた第2設定項目は、基準座標系におけるU軸、V軸、W軸のうちのいずれか1つの軸に沿った方向への制御点Tの回転動作を、制御点Tに許容するための設定項目である。
当該第2設定項目に当該U軸に沿った方向への制御点Tの回転動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該U軸に沿った方向への回転動作を許容する。また、当該第2設定項目に当該V軸に沿った方向への制御点Tの回転動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該V軸に沿った方向への回転動作を許容する。また、当該第2設定項目に当該W軸に沿った方向への制御点Tの回転動作を示す情報を第2設定情報として設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに当該W軸に沿った方向への回転動作を許容する。
ここで、ボタンB12は、回転動作態様に応じた第2設定項目に、基準座標系におけるU軸に沿った方向への制御点Tの回転動作を示す情報を、第2設定情報として、設定するボタンである。また、ボタンB13は、回転動作態様に応じた第2設定項目に、基準座標系におけるV軸に沿った方向への制御点Tの回転動作を示す情報を、第2設定情報として、設定するボタンである。また、ボタンB14は、回転動作態様に応じた第2設定項目に、基準座標系におけるW軸に沿った方向への制御点Tの回転動作を示す情報を、第2設定情報として、設定するボタンである。
基準座標系におけるU軸に沿った方向への制御点Tの回転動作を示す情報に応じた第1設定情報は、(6)を許可にし、(3)~(5)と(7)と(8)とを不許可にする情報である。
すなわち、ボタンB12がユーザーによりクリック(タップ)された場合(すなわち、ボタンB12の選択が受け付けられると)、表示制御部461は、ボタンB12がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(6)を許可にするとともに、(3)~(5)と(7)と(8)とのそれぞれを不許可にする。この設定は、表1において、第2設定情報が「回転」かつ「RX」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
また、基準座標系におけるV軸に沿った方向への制御点Tの回転動作を示す情報に応じた第1設定情報は、(7)を許可にし、(3)~(6)及び(8)を不許可にする情報である。
すなわち、ボタンB13がユーザーによりクリック(タップ)された場合(すなわち、ボタンB13の選択が受け付けられると)、表示制御部461は、ボタンB13がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(7)を許可にするとともに、(3)~(6)及び(8)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「回転」かつ「RY」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
また、基準座標系におけるW軸に沿った方向への制御点Tの回転動作を示す情報に応じた第1設定情報は、(8)を許可にし、(3)~(7)を不許可にする情報である。
すなわち、ボタンB14がユーザーによりクリック(タップ)された場合(すなわち、ボタンB14の選択が受け付けられると)、表示制御部461は、ボタンB14がクリックされたことを示す情報を表示部45に表示する。そして、設定制御部463は、(8)を許可にするとともに、(3)~(7)のそれぞれを不許可にする。この設定は、表1において、第2設定情報が「回転」かつ「RZ」を表す場合の第1設定項目「Fx_Enabled」~「Tz_Enabled」の各設定値に対応する。
A8-3-5.カスタム動作態様の設定:
図7に示した一覧L2においてカスタム動作態様情報がユーザーによりクリック(タップ)された場合(すなわち、カスタム動作態様情報が示すカスタム動作態様の選択が受け付けられると)、表示制御部461は、一覧L2の表示を表示部45から消す。そして、表示制御部461は、プルダウンメニューPX6にカスタム動作態様情報である「カスタム」を表示させるとともに、領域P12に、カスタム動作態様情報が示す回転動作態様に応じた第2設定項目を設定するための1以上のGUIを表示させる。
図11は、図7に示した一覧L2においてカスタム動作態様情報がユーザーによりクリックされた場合における画面P0の一例を示す図である。図11に示したチェックボックスCB1~チェックボックスCB6のそれぞれは、当該「カスタム」が示すカスタム動作態様に応じた第2設定項目を設定するための1以上のGUIの一例である。
図11に示すようにプルダウンメニューPX6に「カスタム」が表示された場合、表示制御部461は、例えば、「カスタム」が示すカスタム動作態様に応じた第2設定項目を設定するための6つのチェックボックスであるチェックボックスCB1~チェックボックスCB6のそれぞれを領域P12に表示させる。
チェックボックスCB1は、基準座標系におけるX軸を選択可能なGUIである。チェックボックスCB1がクリックされたことを示す情報がチェックボックスCB1に表示されていない状態においてユーザーによりチェックボックスCB1がクリック(タップ)された場合(すなわち、チェックボックスCB1の選択が受け付けられると)、表示制御部461は、チェックボックスCB1がクリックされたことを示す情報をチェックボックスCB1に表示させる。一方、チェックボックスCB1がクリックされたことを示す情報がチェックボックスCB1に表示されている状態においてユーザーによりチェックボックスCB1がクリック(タップ)された場合(すなわち、チェックボックスCB1の選択が受け付けられると)、表示制御部461は、チェックボックスCB1がクリックされたことを示す情報をチェックボックスCB1から削除する。
チェックボックスCB2は、基準座標系におけるY軸を選択可能なGUIである。チェックボックスCB2がクリックされたことを示す情報がチェックボックスCB2に表示されていない状態においてユーザーによりチェックボックスCB2がクリック(タップ)された場合(すなわち、チェックボックスCB2の選択が受け付けられると)、表示制御部461は、チェックボックスCB2がクリックされたことを示す情報をチェックボックスCB2に表示させる。一方、チェックボックスCB2がクリックされたことを示す情報がチェックボックスCB2に表示されている状態においてユーザーによりチェックボックスCB2がクリック(タップ)された場合(すなわち、チェックボックスCB2の選択が受け付けられると)、表示制御部461は、チェックボックスCB2がクリックされたことを示す情報をチェックボックスCB2から削除する。
チェックボックスCB3は、基準座標系におけるZ軸を選択可能なGUIである。チェックボックスCB3がクリックされたことを示す情報がチェックボックスCB3に表示されていない状態においてユーザーによりチェックボックスCB3がクリック(タップ)された場合(すなわち、チェックボックスCB3の選択が受け付けられると)、表示制御部461は、チェックボックスCB3がクリックされたことを示す情報をチェックボックスCB3に表示させる。一方、チェックボックスCB3がクリックされたことを示す情報がチェックボックスCB3に表示されている状態においてユーザーによりチェックボックスCB3がクリック(タップ)された場合(すなわち、チェックボックスCB3の選択が受け付けられると)、表示制御部461は、チェックボックスCB3がクリックされたことを示す情報をチェックボックスCB3から削除する。
チェックボックスCB4は、基準座標系におけるU軸を選択可能なGUIである。チェックボックスCB4がクリックされたことを示す情報がチェックボックスCB4に表示されていない状態においてユーザーによりチェックボックスCB4がクリック(タップ)された場合(すなわち、チェックボックスCB4の選択が受け付けられると)、表示制御部461は、チェックボックスCB4がクリックされたことを示す情報をチェックボックスCB4に表示させる。一方、チェックボックスCB4がクリックされたことを示す情報がチェックボックスCB4に表示されている状態においてユーザーによりチェックボックスCB4がクリック(タップ)された場合(すなわち、チェックボックスCB4の選択が受け付けられると)、表示制御部461は、チェックボックスCB4がクリックされたことを示す情報をチェックボックスCB4から削除する。
チェックボックスCB5は、基準座標系におけるV軸を選択可能なGUIである。チェックボックスCB5がクリックされたことを示す情報がチェックボックスCB5に表示されていない状態においてユーザーによりチェックボックスCB5がクリック(タップ)された場合(すなわち、チェックボックスCB5の選択が受け付けられると)、表示制御部461は、チェックボックスCB5がクリックされたことを示す情報をチェックボックスCB5に表示させる。一方、チェックボックスCB5がクリックされたことを示す情報がチェックボックスCB5に表示されている状態においてユーザーによりチェックボックスCB5がクリック(タップ)された場合(すなわち、チェックボックスCB5の選択が受け付けられると)、表示制御部461は、チェックボックスCB5がクリックされたことを示す情報をチェックボックスCB5から削除する。
チェックボックスCB6は、基準座標系におけるW軸を選択可能なGUIである。チェックボックスCB6がクリックされたことを示す情報がチェックボックスCB6に表示されていない状態においてユーザーによりチェックボックスCB1がクリック(タップ)された場合(すなわち、チェックボックスCB6の選択が受け付けられると)、表示制御部461は、チェックボックスCB6がクリックされたことを示す情報をチェックボックスCB6に表示させる。一方、チェックボックスCB6がクリックされたことを示す情報がチェックボックスCB6に表示されている状態においてユーザーによりチェックボックスCB6がクリック(タップ)された場合(すなわち、チェックボックスCB6の選択が受け付けられると)、表示制御部461は、チェックボックスCB6がクリックされたことを示す情報をチェックボックスCB6から削除する。
カスタム動作態様に応じた第2設定項目は、基準座標系におけるX軸、Y軸、Z軸、U軸、V軸、W軸のうちチェックボックスCB1~チェックボックスCB6によってユーザーにより選択された1以上の軸それぞれに沿った方向への制御点Tの動作(並進動作と回転動作の少なくとも一方を含む動作)を、制御点Tに許容するための設定項目である。すなわち、ユーザーは、チェックボックスCB1~チェックボックスCB6によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸のうちの1以上の軸を選択することにより、選択した当該1以上の軸それぞれに沿った方向への制御点Tの動作(並進動作と回転動作の少なくとも一方を含む動作)を示す第2設定情報を、当該第2設定項目としての「カスタム」に設定することができる。ユーザーが当該第2設定情報を当該第2設定項目に設定した場合、ロボット制御装置30は、直接教示における力制御を以下のように実行する。すなわち、直接教示においてユーザーから外力を受けた場合に、制御点Tに、当該選択した当該1以上の軸それぞれに沿った方向への動作を許容する。
チェックボックスCB1~チェックボックスCB6によって基準座標系におけるX軸、Y軸、Z軸、U軸、V軸、W軸の中から選択された1以上の軸それぞれに沿った方向への制御点Tの動作(並進動作と回転動作の少なくとも一方を含む動作)を示す第2設定情報に応じた第1設定情報は、チェックボックスCB1によって当該X軸が選択されている場合、少なくとも(3)を許可にする情報である。また、当該第1設定情報は、チェックボックスCB2によって当該Y軸が選択されている場合、少なくとも(4)を許可にする情報である。また、当該第1設定情報は、チェックボックスCB3によって当該Z軸が選択されている場合、少なくとも(5)を許可にする情報である。また、当該第1設定情報は、チェックボックスCB4によって当該U軸が選択されている場合、少なくとも(6)を許可にする情報である。また、当該第1設定情報は、チェックボックスCB5によって当該V軸が選択されている場合、少なくとも(7)を許可にする情報である。また、当該第1設定情報は、チェックボックスCB6によって当該W軸が選択されている場合、少なくとも(8)を許可にする情報である。
すなわち、チェックボックスCB1によって基準座標系におけるX軸、Y軸、Z軸、U軸、V軸、W軸の中からX軸が選択された場合、設定制御部463は、上記の(3)を許可にする。また、チェックボックスCB2によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸の中から当該Y軸が選択された場合、設定制御部463は、上記の(4)を許可にする。また、チェックボックスCB3によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸の中から当該Z軸が選択された場合、設定制御部463は、上記の(5)を許可にする。また、チェックボックスCB2によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸の中から当該U軸が選択された場合、設定制御部463は、上記の(6)を許可にする。また、チェックボックスCB2によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸の中から当該V軸が選択された場合、設定制御部463は、上記の(7)を許可にする。また、チェックボックスCB2によって当該X軸、当該Y軸、当該Z軸、当該U軸、当該V軸、当該W軸の中から当該W軸が選択された場合、設定制御部463は、上記の(8)を許可にする。
A8-4.制御点Tの動きの硬さの選択:
図6に戻る。領域P13には、スライドバーSBが含まれている。なお、領域P13は、スライドバーSBに代えて、他のGUIが含まれる構成であってもよく、スライドバーSBに加えて、他のGUIが含まれる構成であってもよい。
スライドバーSBは、直接教示における力制御による制御点Tの動きの硬さを設定する第2設定項目を設定するためのGUIである。具体的には、領域P13では、ユーザーは、スライドバーSBの位置を移動させることによって、直接教示における力制御による制御点Tの動きの硬さを示す情報であって、当該位置に応じた硬さを示す情報を、第2設定情報として、第2設定項目を設定することができる。制御点Tの動きの硬さは、制御点Tの動かし難さ(又は動かし易さ)を表す指標である。また、スライドバーSBを移動させることが可能な1以上の位置のそれぞれに応じた硬さを示す情報に応じた第1設定情報は、上記の(9)~(26)の18個の第1設定項目それぞれに設定される第1設定情報である。本実施形態において、スライドバーSBは、左端の「硬」、右端の「軟」、および中央の3個の位置をとりうる。
以下では、説明の便宜上、(9)の第1設定項目に設定される第1設定情報を「(9)の値」と称して説明する。(10)の第1設定項目に設定される「第1設定情報を(10)の値」と称して説明する。(11)の第1設定項目に設定される「第1設定情報を(11)の値」と称して説明する。(12)の第1設定項目に設定される「第1設定情報を(12)の値」と称して説明する。(13)の第1設定項目に設定される「第1設定情報を(13)の値」と称して説明する。(14)の第1設定項目に設定される「第1設定情報を(14)の値」と称して説明する。(15)の第1設定項目に設定される「第1設定情報を(15)の値」と称して説明する。(16)の第1設定項目に設定される「第1設定情報を(16)の値」と称して説明する。(17)の第1設定項目に設定される「第1設定情報を(17)の値」と称して説明する。(18)の第1設定項目に設定される「第1設定情報を(18)の値」と称して説明する。(19)の第1設定項目に設定される「第1設定情報を(19)の値」と称して説明する。(20)の第1設定項目に設定される「第1設定情報を(20)の値」と称して説明する。(21)の第1設定項目に設定される「第1設定情報を(21)の値」と称して説明する。(22)の第1設定項目に設定される「第1設定情報を(22)の値」と称して説明する。(23)の第1設定項目に設定される「第1設定情報を(23)の値」と称して説明する。(24)の第1設定項目に設定される「第1設定情報を(24)の値」と称して説明する。(25)の第1設定項目に設定される「第1設定情報を(25)の値」と称して説明する。(26)の第1設定項目に設定される「第1設定情報を(26)の値」と称して説明する。
ユーザーは、スライドバーSBの位置を移動させることによって、移動させたスライドバーSBの位置に応じた硬さを示す情報を、第2設定情報として、スライドバーSBに対応する第2設定項目に設定することができる。設定制御部463は、ユーザーによりスライドバーSBによって設定された当該情報に応じた第1設定情報を、第22ファイルに記憶させる。これにより、設定制御部463は、(9)~(26)の第1設定項目を設定する。ここで、(9)~(26)それぞれの値は、スライドバーSBの位置に応じて予め決められている。図6に示した例では、スライドバーSBの位置が図6に示した「硬」という文字に近いほど、制御点Tの硬さは硬くなる。一方、スライドバーSBの位置が図6に示した「軟」という文字に近いほど、制御点Tの硬さは軟くなる。
表2は、画面P0におけるユーザーによるスライドバーSBの操作によって教示装置40に入力される第2設定項目の設定値と、18個の第1設定項目の設置値と、の関係を示す表である。表2中の各列の上段に第2設定項目の設定値(すなわち、「硬」、「普通」および「軟」)を示す。表2中の各行の左端に第1設定項目(たとえば、「Fx_Mass」、「Fx_Damper」、「Fx_Spring」など)を示す。表2中の各欄において、「axmh」、「axmm」、「axms」などの符号は、具体的な数値を表す。
なお、表2の情報を格納したデータは、ロボット制御装置30(図3参照)が備える記憶部に格納されている。表2の情報が格納されているロボット制御装置30の記憶部は、不揮発性メモリである。表2の情報を格納したデータは、制御装置46によってロボット制御装置30の記憶部から読み出されて、教示装置40の記憶部42(図2参照)に格納される。表2の情報が格納される教示装置40の記憶部42は、揮発性メモリである。制御装置46は、記憶部42内の表2の情報を格納したデータを参照して、制御点Tの動きの硬さの設定を行う。
表2において、「Fx_Mass」は、上記(9)の設定、すなわち、基準座標系におけるX軸に沿った方向に対する力制御の質量係数を表す。「Fx_Spring」は、上記(10)の設定、すなわち、基準座標系におけるX軸に沿った方向に対する力制御の弾性係数を表す。「Fx_Damper」は、上記(11)の設定、すなわち、基準座標系におけるX軸に沿った方向に対する力制御の粘性係数を表す。表2における、「Fx_Spring」、Fx_Damper」、「Fx_Mass」は、図4に示した画面X0におけるFX1,FX2,FX3にそれぞれ対応する。
上記「Fx_Mass」、「Fx_Spring」、「Fx_Damper」の各パラメーターに対して、添え字「x」を「y」に置き換えた各パラメーターは、上記(12)~(14)の各設定、すなわち、それぞれ基基準座標系におけるY軸に沿った方向に対する力制御の質量係数、弾性係数、粘性係数を表す。上記「Fx_Mass」、「Fx_Spring」、「Fx_Damper」の各パラメーターに対して、添え字「x」を「z」に置き換えた各パラメーターは、上記(15)~(17)の各設定、すなわち、それぞれ基基準座標系におけるZ軸に沿った方向に対する力制御の質量係数、弾性係数、粘性係数を表す。
表2において、「Tx_Mass」は、上記(18)の設定、すなわち、基準座標系におけるU軸に沿った方向に対する力制御の質量係数を表す。「Tx_Spring」は、上記(19)の設定、すなわち、基準座標系におけるU軸に沿った方向に対する力制御の弾性係数を表す。「Tx_Damper」は、上記(20)の設定、すなわち、基準座標系におけるU軸に沿った方向に対する力制御の粘性係数を表す。表2における、「Tx_Spring」、Tx_Damper」、「Tx_Mass」は、図4に示した画面X0におけるTX1,TX2,TX3にそれぞれ対応する。
上記「Tx_Mass」、「Tx_Spring」、「Tx_Damper」の各パラメーターに対して、添え字「x」を「y」に置き換えた各パラメーターは、上記(21)~(23)の各設定、すなわち、それぞれ基基準座標系におけるV軸に沿った方向に対する力制御の質量係数、弾性係数、粘性係数を表す。上記「Tx_Mass」、「Tx_Spring」、「Tx_Damper」の各パラメーターに対して、添え字「x」を「z」に置き換えた各パラメーターは、上記(24)~(26)の各設定、すなわち、それぞれ基基準座標系におけるZ軸に沿った方向に対する力制御の質量係数、弾性係数、粘性係数を表す。
ここで、基準座標系におけるX軸に沿った方向への力制御による制御点Tの動きは、(9)~(11)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(9)~(11)それぞれの値のうちの一部又は全部が大きいほど硬い。また、基準座標系におけるY軸に沿った方向への力制御による制御点Tの動きは、(12)~(14)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(12)~(14)それぞれの値のうちの一部又は全部が大きいほど硬い。また、基準座標系におけるZ軸に沿った方向への力制御による制御点Tの動きは、(15)~(17)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(15)~(17)それぞれの値のうちの一部又は全部が大きいほど硬い。
また、基準座標系におけるU軸に沿った方向への力制御による制御点Tの動きは、(18)~(20)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(18)~(20)それぞれの値のうちの一部又は全部が大きいほど硬い。また、基準座標系におけるV軸に沿った方向への力制御による制御点Tの動きは、(21)~(23)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(21)~(23)それぞれの値のうちの一部又は全部が大きいほど硬い。また、基準座標系におけるW軸に沿った方向への力制御による制御点Tの動きは、(24)~(26)それぞれの値のうちの一部又は全部が小さいほど軟らかく、(24)~(26)それぞれの値のうちの一部又は全部が大きいほど硬い。
図6の画面P0においてユーザーがスライドバーSBを操作して、いずれかの位置が選択されると、制御装置46の設定制御部463(図3参照)は、記憶部42内の表2に相当するデータを参照し、以下の処理を行う。たとえば、「硬」が選択されると、制御装置46の設定制御部463は、表2中の「硬」の列を参照して、「Fx_Mass」~「Tz_Spring」の第1設定項目の値を取得する。また、「軟」が選択されると、制御装置46は、表2中の「軟」の列を参照して、「Fx_Mass」~「Tz_Spring」の第1設定項目の値を取得する。さらに、スライドバーSBの中央が選択されると、制御装置46は、表2中の「普通」の列を参照して、「Fx_Mass」~「Tz_Spring」の第1設定項目の値を取得する。第2設定態様において、上記(9)~(26)に相当する第1設定項目は、以上のように設定される。
以上のことから分かるように、(9)~(26)の18個の第1設定項目は、スライドバーSBの位置によって設定される1つの第2設定項目によって設定される。これにより、直接教示における力制御に係る複数の第1設定項目の設定について習熟していないユーザー(例えば、初心者、ビギナー)は、(9)~(26)の18個の第1設定項目を、スライドバーSBの位置を移動させることによって容易に設定することができる。すなわち、設定に習熟していないユーザーであっても、第2設定態様を通じて第1設定項目としての質量係数、弾性係数、粘性係数を設定することにより、力制御におけるロボットの特性を、ユーザーが望む特性に設定することができる。
A9.直接教示およびポイントの記憶:
図12は、図6に示した画面P0におけるタブTB2がユーザーによりクリック(タップ)された場合の画面P0の一例を示す図である。タブTB2は、前述の領域P12と、領域P14とを領域P1に表示させるタブである。ユーザーによりタブTB2がクリック(タップ)された場合(すなわち、タブTB2の選択が受け付けられると)、表示制御部461は、例えば、領域P12と、領域P14とを領域P1に表示させる。図12に示した領域P1は、ユーザーによりタブTB2がクリックされた場合における領域P1の一例である。なお、表示制御部461は、当該場合、領域P12と、領域P14とのいずれか一方又は両方に代えて、他のGUIを領域P1に表示させる構成であってもよく、領域P12と、領域P14とに加えて、他のGUIを領域P1に表示させる構成であってもよい。
領域P14には、プルダウンメニューPX7と、プルダウンメニューPX8と、ボタンB15とが含まれている。なお、領域P14は、プルダウンメニューPX7とプルダウンメニューPX8と、ボタンB15のうちの一部又は全部に代えて、他のGUIが含まれる構成であってもよく、プルダウンメニューPX7と、プルダウンメニューPX8と、ボタンB15とに加えて、他のGUIが含まれる構成であってもよい。
プルダウンメニューPX7は、ファイル名をユーザーが入力可能な入力欄を有し、ロボット制御装置30に記憶されたポイントファイルをユーザーが選択可能なGUIである。ユーザーにより当該入力欄にファイル名が入力された場合、表示制御部461は、ユーザーにより入力されたファイル名をプルダウンメニューPX7に表示させる。そして、設定制御部463は、ユーザーにより入力されたファイル名のポイントファイルをロボット制御装置30の記憶領域に生成する。
また、ユーザーによりプルダウンメニューPX7がクリック(タップ)された場合(すなわち、プルダウンメニューPX7の選択が受け付けられると)、表示制御部461は、ロボット制御装置30に記憶された1以上のポイントファイルそれぞれのファイル名を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。
当該一覧においてあるファイル名がユーザーによりクリック(タップ)された場合(すなわち、当該ファイル名の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに当該入力欄に当該ファイル名を表示させる。なお、プルダウンメニューPX7は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。なお、プルダウンメニューPX7は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、説明の便宜上、プルダウンメニューPX7に表示されたファイル名を「対象ポイントファイル名」と称し、対象ポイントファイル名のポイントファイルを「対象ポイントファイル」と称して説明する。
「ポイントファイル」は、複数のポイントを属させるファイル(すなわち、当該複数のポイントよりも上位のディレクトリー又は上位のフォルダー)である。「ポイント」は、前述の教示点情報を記憶するファイルである。この一例において、ポイントファイルに属するある1つのポイントには、ある1つの教示点を示す教示点情報が記憶される。なお、1以上のポイントのそれぞれは、ポイントファイルに属する構成に代えて、ポイントファイルに属さないファイルであってもよい。また、ある1つのポイントには、2以上の教示点を示す教示点情報が記憶される構成であってもよい。
プルダウンメニューPX8は、ファイル名をユーザーが入力可能な入力欄を有し、ロボット制御装置30に記憶されたポイントをユーザーが選択可能なGUIである。ユーザーにより当該入力欄にファイル名が入力された場合、表示制御部461は、ユーザーにより入力されたファイル名をプルダウンメニューPX8に表示させる。そして、設定制御部463は、ユーザーにより入力されたファイル名のポイントを、対象ポイントファイルに属するポイントとして当該記憶領域に生成する。
ユーザーによりプルダウンメニューPX8がクリック(タップ)された場合(すなわち、プルダウンメニューPX8の選択が受け付けられると)、表示制御部461は、対象ポイントファイルに属する1以上のポイントそれぞれのファイル名を含む一覧を示す情報を、ロボット制御装置30から取得する。表示制御部461は、取得した当該情報が示す一覧を表示部45に表示させる。
当該一覧においてあるファイル名がユーザーによりクリック(タップ)された場合(すなわち、当該ファイル名の選択が受け付けられると)、表示制御部461は、当該一覧の表示を表示部45から消すとともに当該入力欄に当該ファイル名を表示させる。なお、プルダウンメニューPX8は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。なお、プルダウンメニューPX8は、これらの機能を実現可能なGUIであれば、プルダウンメニューと異なる他のGUIであってもよい。以下では、説明の便宜上、プルダウンメニューPX8に表示されたファイル名を「対象ポイント名」と称し、対象ポイント名のポイントを「対象ポイント」と称して説明する。
ボタンB15は、ボタンB15がクリックされた場合における制御点Tの位置を示す教示点位置情報と、当該場合における制御点Tの姿勢を示す教示点姿勢情報と、が対応付けられた教示点を示す教示点情報を、対象ポイントに記憶するためのボタンである。ユーザーによりボタンB15がクリック(タップ)された場合、設定制御部463は、現在の制御点Tの位置を示す情報を教示点位置情報としてロボット制御装置30から取得するとともに、現在の制御点Tの姿勢を示す情報を教示点姿勢情報としてロボット制御装置30から取得する。そして、設定制御部463は、取得した教示点位置情報及び教示点姿勢情報が対応付けられた教示点を示す教示点情報を、生成する。設定制御部463は、生成した教示点情報を対象ポイントに記憶する。これにより、教示装置40は、教示点情報をロボット制御装置30に教示することができる。なお、ボタンB15は、これらの機能を実現可能なGUIであれば、ボタンと異なる他のGUIであってもよい。
図6に戻る。ボタンB2は、直接教示を開始するための画面P5を画面P0に重ねて表示させるボタンである。ユーザーによりボタンB2がクリック(タップ)された場合においてユーザーが前述のイネーブルスイッチを押下している状態では、ロボット制御部465は、ロボット制御装置30を制御し、直接教示における力制御によってロボット20を動作させる。この際、ロボット制御装置30は、第21ファイルに記憶された第1設定情報と、第22ファイルに記憶された第1設定情報と、第23ファイルに記憶された第1設定情報と、に基づく力制御によってロボット20を動作させる。
なお、当該場合においてユーザーがイネーブルスイッチを押下していない状態では、ロボット制御部465は、ロボット20を動作させない。なお、当該場合において、表示制御部461は、直接教示に関する注意事項を含む文章を含むアラート画面を画面P0に重ねて表示する構成であってもよい。当該文章は、例えば、「イネーブルスイッチを押しながら動作を開始してください。イネーブルスイッチを放すと動作は停止します。」である。なお、当該文章は、これに代えて、他の文章であってもよい。
なお、画面P0は、力検出部21に溜まったドリフトのリセット(削除、キャンセル)をロボット制御装置30に行わせるボタンが含まれている構成であってもよい。この場合、ユーザーにより当該ボタンがクリック(タップ)されると、設定制御部463は、当該リセットをロボット制御装置30に行わせる。
A10.第1実施形態のまとめ:
以上のように、教示装置40(又は制御装置46)は、ロボット20が備える力検出部21からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部45に表示可能である。これにより、教示装置40は、力制御に係る複数の第1設定項目を容易に設定することができる。
また、教示装置40では、第1設定項目は、力制御で用いられる質量係数、弾性係数、粘性係数を含む。これにより、教示装置40は、力制御で用いられる質量係数、弾性係数、粘性係数を含む複数の第1設定項目を容易に設定することができる。
また、教示装置40では、第2設定項目の少なくとも1つは、第1設定項目のうち質量係数、弾性係数、粘性係数の少なくとも2つを設定する設定項目である。これにより、教示装置40は、第1設定項目のうち質量係数、弾性係数、粘性係数の少なくとも2つを容易に設定することができる。
また、教示装置40では、第1設定項目は、力制御を行う際に、座標系(この一例において、プルダウンメニューPX5に表示された基準座標系情報が示す基準座標系)においてロボットが移動可能な各軸の方向のそれぞれを設定する設定項目を含み、第2設定項目の少なくとも1つは、力制御を行う際に、当該各軸の方向のうち2つの方向によって規定される平面を設定する設定項目である。これにより、教示装置40は、力制御を行う際に、座標系においてロボットが移動可能な各軸の方向のうち2つの方向によって規定される平面を設定することにより、当該各軸の方向のそれぞれを容易に設定することができる。
また、教示装置40では、第2設定態様は、力制御を行う際に、座標系においてロボット20が移動可能な各軸の方向のそれぞれを第2設定項目により設定可能である。これにより、教示装置40は、力制御を行う際に、第2設定態様により、座標系においてロボットが移動可能な各軸の方向のそれぞれを容易に設定することができる。
また、教示装置40では、第1設定項目は、直接教示における力制御に係る設定項目を含む。これにより、教示装置40は、直接教示における力制御に係る設定項目を容易に設定することができる。
B.第2実施形態:
教示装置40は、第1実施形態で説明した内容に加えて、さらに、力検出部(第1実施形態においては、力検出部21)からの出力に基づいた情報を表示部(第1実施形態において表示部45)に表示することもできる。以下で、そのような態様について説明する。なお、以下の各形態において、力検出部からの出力に基づいた情報の表示以外の点は、第1実施形態と同様である。
B1.第2実施形態の態様1:
図13は、グラフGR1の一例を示す図である。第1実施形態において説明した第1設定態様の画面X0(図4参照)と、第2設定態様の画面P0(図6参照)と、のうちいずれか一方又は両方は、さらに、図13に示したグラフGR1を含む構成であってもよい。以下では、一例として、第2設定態様の画面P0のみがグラフGR1を含む場合について説明する。
グラフGR1は、ロボット制御装置30が力検出部21から取得した力検出情報が示す外力のうち、可動部Aの先端に作用した力の大きさの時間的な変化を示すグラフである。グラフGR1の縦軸は、当該力の大きさを示す。グラフGR1の横軸は、ロボット制御装置30から当該力検出情報を取得し始めた時刻からの経過時間を示す。グラフGR1は、ボタンB2および図示しないボタンB31とともに、画面P0において、領域P1の下の領域に表示される(図6参照)。ボタンB31は、グラフによる力検出情報の開始を指示するためのボタンである。
表示制御部461は、例えば、ボタンB31がクリック(タップ)された場合、ロボット制御装置30が力検出部21から取得した力検出情報を、予め決められた周期が経過する毎にロボット制御装置30から取得する。当該周期は、例えば、0.1秒である。なお、当該周期は、0.1秒より短い時間であってもよく、0.1秒より長い時間であってもよい。
力検出情報をロボット制御装置30から取得した場合、表示制御部461は、取得した力検出情報が示す外力のうち、可動部Aの先端に作用した力であって基準座標系におけるX軸、Y軸、Z軸それぞれの方向に作用した力の大きさを特定する。表示制御部461は、特定した当該力の大きさと、ボタンB31がクリックされてからの経過時間とに基づいて、グラフGR1を生成する。表示制御部461は、生成したグラフGR1を画面P0に表示させる。このようなグラフGR1の表示を、表示制御部461は、ロボット制御装置30から力検出情報を取得するたびに行う。
なお、表示制御部461は、ボタンB31がクリック(タップ)された場合に代えて、画面P0が表示された場合等の他の場合において、ロボット制御装置30が力検出部21から取得した力検出情報を、予め決められた周期が経過する毎にロボット制御装置30から取得する構成であってもよい。
B2.第2実施形態の態様2:
図14は、グラフGR2の一例を示す図である。第1実施形態において説明した第1設定態様の画面X0(図4参照)と、第2設定態様の画面P0(図6参照)と、のうちいずれか一方又は両方は、さらに、図14に示したグラフGR2を含む構成であってもよい。以下では、一例として、第2設定態様の画面P0のみが、上述のグラフGR1に加えてグラフGR2を含む場合について説明する。
グラフGR2は、ロボット制御装置30が力検出部21から取得した力検出情報が示す外力のうち、可動部Aの先端に作用したモーメント(トルク)の大きさの時間的な変化を示すグラフである。グラフGR2の縦軸は、当該モーメントの大きさを示す。グラフGR2の横軸は、ロボット制御装置30から当該力検出情報を取得し始めた時刻からの経過時間を示す。グラフGR2は、ボタンB2、グラフGR1とともに、画面P0において、領域P1の下の領域に表示される(図6参照)。
表示制御部461は、例えば、ボタンB31がクリック(タップ)された場合、ロボット制御装置30が力検出部21から取得した力検出情報を、予め決められた周期が経過する毎にロボット制御装置30から取得する。当該周期は、例えば、0.1秒である。なお、当該周期は、0.1秒より短い時間であってもよく、0.1秒より長い時間であってもよい。
力検出情報をロボット制御装置30から取得した場合、表示制御部461は、取得した力検出情報が示す外力のうち、可動部Aの先端に作用したモーメントであって基準座標系におけるU軸、V軸、W軸それぞれの方向に加えられたモーメントの大きさを特定する。表示制御部461は、特定したモーメントの大きさと、ボタンB31がクリックされてからの経過時間とに基づいて、グラフGR2を生成する。表示制御部461は、生成したグラフGR2を画面P0に表示させる。このようなグラフGR2の表示を、表示制御部461は、ロボット制御装置30から力検出情報を取得するたびに行う。グラフGR1とグラフGR2のそれぞれは、力検出部からの出力に基づいた情報の一例である。
このような処理を行うことにより、ユーザーは、直接教示において、制御装置46を含むロボットシステム1が機能していることを確認しつつ、ロボット20の制御点Tの位置や姿勢を設定することができる。
B3.第2実施形態の態様3:
図15は、画面P0に含まれ得る画面FG1の一例を示す図である。第1実施形態において説明した第1設定態様の画面X0(図4参照)と、第2設定態様の画面P0(図6参照)と、のうちいずれか一方又は両方は、図15~図17に示した画面FG1を含む構成であってもよい。以下では、一例として、画面P0のみが画面FG1を含む場合について説明する。
画面FG1は、第22ファイル、第23ファイルのそれぞれに記憶された第1設定情報に基づいて制御点Tが動作可能な方向を示す画像を含む画面である。画面FG1には、例えば、仮想空間に設定された仮想的なロボット20である仮想ロボットと、基準座標系を表す基準座標系画像と、当該方向を表す動作可能方向画像とが含まれている。なお、画面FG1には、当該仮想ロボットと、当該基準座標系画像と、当該動作可能方向画像との一部又は全部に代えて、他の画像が含まれる構成であってもよく、当該基準座標系画像と、当該動作可能方向画像とに加えて、他の画像が含まれる構成であってもよい。
図15に示した画像VR1は、当該仮想ロボットの一例である。また、図15に示した画像BCは、当該基準座標系画像の一例である。また、図15に示した画像AR1(図15における矢印の画像)は、当該動作可能方向画像の一例である。表示制御部461は、基準座標系と、領域P12において第2設定項目によって設定された第1設定項目とに基づいて、画面FG1を生成する。画面FG1は、二次元画像であってもよく、三次元画像であってもよい。
画面P0に画面FG1が表示されることにより、ユーザーは、画面FG1を見ることにより、直接教示において制御点Tを動作させることが可能な方向を容易に知ることができる。その結果、ユーザーが第1設定項目の設定に習熟していない場合であっても、ユーザーは、第1設定項目を設定することができる。
図15に示した例では、画面FG1は、基準座標系におけるZ軸の方向に沿った方向にのみ制御点Tが並進動作を行うことができることを表している。図15に示した画面FG1は、たとえば、画面P0において、領域P1の下の領域に表示される(図6参照)。
このような処理を行うことにより、第1設定項目の設定について習熟していないユーザーであっても、3次元の直交座標系における各軸の方向のうち1個の方向を移動可能な方向とする第1設定項目の設定値の設定を、表示部45に表示される第2設定態様の画面P0を使用して、容易に行うことができる。
図16は、画面P0に含まれ得る画面FG1の他の例を示す図である。図16に示した例では、画面FG1は、基準座標系におけるW軸の方向に沿った方向であって画像AR2(図16における2つの矢印の画像のうちの一方)が示す方向にのみ制御点Tが回転動作を行うことができることを表している。なお、図16に示した画像AR3は、画像AR2が示す回転動作の回転中心を表す軸であって当該基準座標系におけるZ軸を表している。図16に示した画面FG1は、たとえば、画面P0において、領域P1の下の領域に表示される(図6参照)。
図17は、画面P0に含まれ得る画面FG1の更に他の例を示す図である。図17に示した例では、画面FG1は、画像AR4が示す平面であって基準座標系におけるX軸及びZ軸によって規定された平面に沿った方向にのみ制御点Tが並進動作を行うことができることを表している。なお、図17に示した画像AR5は、当該X軸を示し、画像AR6は、当該Z軸を表している。画面FG1は、ロボットが移動可能な方向とロボットが移動可能な平面とのうち少なくとも一方を示す情報の一例である。図17に示した画面FG1は、たとえば、画面P0において、領域P1の下の領域に表示される(図6参照)。
このような処理を行うことにより、第1設定項目の設定について習熟していないユーザーであっても、表示部45に表示される第2設定態様の画面P0を使用して、ロボット20が移動可能な平面を直感的に把握しつつ、ロボット20の制御点Tを設定することができる。なお、表示制御部461は、画面FG1において、仮想ロボットを、現実のロボット20の動作に応じて動かす構成であってもよい。
B4.第2実施形態のまとめ:
以上のように、教示装置40(すなわち、制御装置46)は、力検出部(上記において説明した例では、力検出部21)からの出力に基づいた情報を表示部(上記において説明した例では、表示部45)に表示可能である。これにより、教示装置40は、力検出部からの出力に基づいた情報に基づいて、複数の第1設定項目を容易に設定することができる。
また、教示装置40は、ロボット20が移動可能な方向とロボット20が移動可能な平面とのうち少なくとも一方を示す情報を表示部に表示可能である。これにより、教示装置40は、ロボット20が移動可能な方向とロボット20が移動可能な平面とのうち少なくとも一方を示す情報に基づいて、複数の第1設定項目を容易に設定することができる。
なお、上記において説明した第1設定項目には、直接教示における力制御で用いられる質量係数、弾性係数、粘性係数を含まない構成であってもよい。
また、上記において説明した第2設定項目には、第1設定項目のうち当該質量係数、当該弾性係数、当該粘性係数の少なくとも2つを設定する設定項目が含まれなくてもよい。
また、上記において説明した第1設定項目は、当該力制御を行う際に、基準座標系においてロボット20が移動可能な各軸の方向のそれぞれを設定する設定項目を含まない構成であってもよい。また、上記において説明した第2設定項目には、当該力制御を行う際に、基準座標系における各軸の方向のうち2つの方向によって規定される平面を設定する設定項目が含まれなくてもよい。
また、上記において説明した第2設定態様は、力制御を行う際に、基準座標系においてロボット20が移動可能な各軸の方向のそれぞれを設定する第2設定項目を含まない構成であってもよい。
また、表示制御部461は、力検出部21からの出力に基づいた情報を表示部45に表示しない構成であってもよい。
また、表示制御部461は、ロボット20が移動可能な方向とロボット20が移動可能な平面とのうち少なくとも一方を示す情報を表示部45に表示しない構成であってもよい。
また、上記において説明した第1設定項目には、直接教示における前記力制御に係る設定項目が含まれなくてもよい。
C.第3実施形態:
本発明の一態様は、ロボットが備える力検出部からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、前記第1設定態様に含まれている前記複数の前記第1設定項目のうちの少なくとも2つの前記第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部に表示可能な表示制御部、を備える制御装置である。
この構成により、制御装置は、ロボットが備える力検出部からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部に表示可能である。これにより、制御装置は、力制御に係る複数の第1設定項目を容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記第1設定項目は、前記力制御で用いられる質量係数、弾性係数、粘性係数を含む、構成が用いられてもよい。
この構成により、制御装置では、第1設定項目は、力制御で用いられる質量係数、弾性係数、粘性係数を含む。これにより、制御装置は、力制御で用いられる質量係数、弾性係数、粘性係数を含む複数の第1設定項目を容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記第2設定項目の少なくとも1つは、前記第1設定項目のうち前記質量係数、前記弾性係数、前記粘性係数の少なくとも2つを設定する設定項目である、構成が用いられてもよい。
この構成により、制御装置では、第2設定項目の少なくとも1つは、第1設定項目のうち質量係数、弾性係数、粘性係数の少なくとも2つを設定する設定項目である。これにより、制御装置は、第1設定項目のうち質量係数、弾性係数、粘性係数の少なくとも2つを容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記第1設定項目は、前記力制御を行う際に、座標系において前記ロボットが移動可能な各軸の方向のそれぞれを設定する設定項目を含み、前記第2設定項目の少なくとも1つは、前記力制御を行う際に、前記各軸の方向のうち2つの方向によって規定される平面を設定する設定項目である、構成が用いられてもよい。
この構成により、制御装置では、第1設定項目は、力制御を行う際に、座標系においてロボットが移動可能な各軸の方向のそれぞれを設定する設定項目を含み、第2設定項目の少なくとも1つは、力制御を行う際に、当該各軸の方向のうち2つの方向によって規定される平面を設定する設定項目である。これにより、制御装置は、力制御を行う際に、座標系においてロボットが移動可能な各軸の方向のうち2つの方向によって規定される平面を設定することにより、当該各軸の方向のそれぞれを容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記第2設定態様は、前記力制御を行う際に、座標系において前記ロボットが移動可能な各軸の方向のそれぞれを前記第2設定項目によって設定可能である、構成が用いられてもよい。
この構成により、制御装置では、第2設定態様は、力制御を行う際に、座標系においてロボットが移動可能な各軸の方向のそれぞれを第2設定項目によって設定可能である。これにより、制御装置は、力制御を行う際に、第2設定態様により、座標系においてロボットが移動可能な各軸の方向のそれぞれを容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記表示制御部は、前記力検出部からの出力に基づいた情報を前記表示部に表示可能である、構成が用いられてもよい。
この構成により、制御装置は、力検出部からの出力に基づいた情報を表示部に表示可能である。これにより、制御装置は、力検出部からの出力に基づいた情報に基づいて、複数の第1設定項目を容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記表示制御部は、前記ロボットが移動可能な方向と前記ロボットが移動可能な平面とのうち少なくとも一方を示す情報を前記表示部に表示可能である、構成が用いられてもよい。
この構成により、制御装置は、ロボットが移動可能な方向とロボットが移動可能な平面とのうち少なくとも一方を示す情報を表示部に表示可能である。これにより、制御装置は、ロボットが移動可能な方向とロボットが移動可能な平面とのうち少なくとも一方を示す情報に基づいて、複数の第1設定項目を容易に設定することができる。
また、本発明の他の態様は、制御装置において、前記第1設定項目は、直接教示における前記力制御に係る設定項目を含む、構成が用いられてもよい。
この構成により、制御装置では、第1設定項目は、直接教示における力制御に係る設定項目を含む。これにより、制御装置は、直接教示における力制御に係る設定項目を容易に設定することができる。
また、本発明の他の態様は、上記に記載の制御装置を備え、前記ロボットに動作を教示する、教示装置である。これにより、教示装置は、ロボットが備える力検出部からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部に表示可能である。これにより、教示装置は、複数の第1設定項目を容易に設定することができる。
また、本発明の他の態様は、上記に記載の教示装置と、前記教示装置によって動作を教示されるロボットと、を備えるロボットシステムである。これにより、ロボットシステムは、ロボットが備える力検出部からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部に表示可能である。これにより、ロボットシステムは、複数の第1設定項目を容易に設定することができる。
以上により、制御装置、教示装置、及びロボットシステムは、ロボットが備える力検出部からの出力を用いた力制御に係る複数の第1設定項目を設定可能な第1設定態様と、第1設定態様に含まれている複数の第1設定項目のうちの少なくとも2つの第1設定項目を1つの第2設定項目として設定可能な第2設定態様とを表示部に表示可能である。これにより、制御装置、教示装置、及びロボットシステムは、複数の第1設定項目を容易に設定することができる。
D.第4実施形態:
本開示は、以下の態様で実現することもできる。
(1)本発明の一形態によれば、ロボットを制御する制御装置が提供される。この制御装置は:ロボットが備える力検出部の出力を用いた力制御に係る複数の第1設定項目のうちの少なくとも2個の第1設定項目の設定値と、第2設定項目の1個の設定値と、が対応づけられた複数組の情報を記憶している記憶部を参照することにより、前記第2設定項目の設定値が選択された場合に、前記選択された前記第2設定項目の設定値と対応づけられている前記少なくとも2個の第1設定項目の設定値を設定する、設定制御部と;前記複数の第1設定項目の設定値を個別に設定可能な第1設定態様と、前記第2設定項目のうちの1個の設定値と設定値が対応づけられている前記少なくとも2個の第1設定項目の設定値を個別に設定できず、前記第2設定項目の設定値を設定可能な第2設定態様と、を表示部に表示可能な表示制御部と、を備える。
このような態様とすれば、第1設定項目の設定について習熟していないユーザーは、表示部に表示される第2設定態様を使用して、第2設定項目の設定値を設定することにより、複数の第1設定項目の設定値を容易に設定することができる。一方、第1設定項目の設定について習熟しているユーザーは、表示部に表示される第1設定態様を使用して、第1設定項目の設定値を個別に設定することにより、ロボットの性能を発揮できるように、複数の第1設定項目の設定値を適切に設定することができる。よって、設定について習熟していないユーザーは、設定値を容易に設定することができ、設定について習熟しているユーザーは、複数の設定値を適切に設定することができる。
(2)上記の制御装置において、前記第1設定項目が、前記力制御で用いられる質量係数、弾性係数、粘性係数を含む、態様とすることもできる。このような態様とすれば、ユーザーは、第1設定項目としての質量係数、弾性係数、粘性係数を設定することにより、力制御におけるロボットの特性を、ユーザーが望む特性に設定することができる。
(3)上記の制御装置において、前記記憶部において、1個の前記第2設定項目の設定値は、前記質量係数、前記弾性係数、および前記粘性係数のうちの少なくとも2個の前記第1設定項目の設定値と対応づけられている、態様とすることもできる。このような態様とすれば、設定に習熟していないユーザーであっても、第2設定態様を通じて第1設定項目としての質量係数、弾性係数、粘性係数を設定することにより、力制御におけるロボットの特性を、ユーザーが望む特性に設定することができる。
(4)上記の制御装置において、前記第1設定項目は、前記力制御において、3次元の直交座標系の3軸の方向のうち、前記ロボットの移動方向が方向成分として含むことができる軸の方向を設定する設定項目を含み;前記記憶部において、1個の前記第2設定項目の設定値は、前記3次元の直交座標系において、前記ロボットの移動方向が方向成分として含むことができる2個の軸の方向を設定する少なくとも2個の第1設定項目の設定値と、対応づけられている、態様とすることもできる。このような態様とすることにより、第1設定項目の設定について習熟していないユーザーは、3次元の直交座標系における各軸の方向のうち2個の方向を方向成分として含む方向にロボットを移動可能とする、2個の第1設定項目の設定値の設定を、表示部に表示される第2設定態様を使用して、容易に行うことができる。
(5)上記の制御装置において、前記表示制御部は、3次元の直交座標系において前記ロボットの移動方向が方向成分として含むことができる2個の軸によって規定される平面を示す情報を、前記第2設定態様において、前記表示部に表示可能である、態様とすることもできる。このような態様とすれば、第1設定項目の設定について習熟していないユーザーは、表示部に表示される第2設定態様を使用して、ロボットが移動可能な平面を直感的に把握しつつ、ロボットの構成の位置を設定することができる。
(6)上記の制御装置において、前記第1設定項目は、前記力制御において、3次元の直交座標系の3軸の方向のうち、前記ロボットの移動方向が方向成分として含むことができる軸の方向を設定する設定項目を含み;前記記憶部において、少なくとも1個の前記第2設定項目の設定値は、前記3軸の方向のうち1個の方向を前記ロボットが移動可能な方向とする少なくとも2個の前記第1設定項目の設定値と、対応づけられている、態様とすることもできる。このような態様とすることにより、第1設定項目の設定について習熟していないユーザーは、3次元の直交座標系における各軸の方向のうち1個の方向を移動可能な方向とする少なくとも2個の第1設定項目の設定値の設定を、表示部に表示される第2設定態様を使用して、容易に行うことができる。
(7)上記の制御装置において、前記表示制御部は、3次元の直交座標系において前記ロボットが移動可能な1個の方向を示す情報を、前記第2設定態様において、前記表示部に表示可能である、態様とすることもできる。このような態様とすれば、第1設定項目の設定について習熟していないユーザーは、表示部に表示される第2設定態様を使用して、ロボットが移動可能な方向を直感的に把握しつつ、ロボットの構成の位置を設定することができる。
(8)上記の制御装置において、前記表示制御部は、前記力制御を使用して前記ロボットに対して直接教示が行われているとき、前記力検出部の出力に基づいた情報を前記表示部に表示可能である、態様とすることもできる。このような態様とすれば、ユーザーは、直接教示において、制御装置が機能していることを確認しつつ、ロボットの構成の位置や姿勢を設定することができる。
(9)上記の制御装置において、前記第1設定項目は、直接教示において行われる前記力制御に係る設定項目を含む、態様とすることもできる。
(10)本発明の他の形態によれば、上記態様の制御装置を備え、前記ロボットに動作を教示する、教示装置が提供される。
(11)本発明の他の形態によれば、上記態様の教示装置と;前記教示装置によって動作を教示されるロボットと、を備えるロボットシステムが提供される。
E.さらに他の実施形態:
(1)上記実施形態においては、第1設定項目は、力制御で用いられる質量係数、弾性係数、粘性係数を含む。しかし、第1設定項目は、たとえば質量係数を含まないなど、質量係数、弾性係数、粘性係数のうちの1以上を含まない態様とすることもできる。
(2)上記実施形態においては、一部の第2設定項目の設定値は、質量係数、弾性係数、および粘性係数の第1設定項目の設定値と対応づけられている。しかし、本開示においては、第2設定項目の設定値が、質量係数、弾性係数、および粘性係数の第1設定項目の設定値と対応づけられていない態様とすることもできる。たとえば、第2設定項目の設定値は、質量係数、弾性係数、および粘性係数の第1設定項目の設定値と対応づけられず、ロボットの移動方向が方向成分として含むことができる座標系の軸の方向を設定する第1設定項目の設定値と対応づけられてもよい。
(3)上記実施形態においては、一部の第2設定項目の設定値は、前記ロボットの移動方向が方向成分として含むことができる2個の軸の方向を設定する少なくとも2個の第1設定項目の設定値と、対応づけられている。しかし、本開示においては、第2設定項目の設定値は、前記ロボットの移動方向が方向成分として含むことができる2個の軸の方向を設定する少なくとも2個の第1設定項目の設定値と、対応づけられていない態様とすることもできる。たとえば、第2設定項目の設定値は、ロボットの移動方向が方向成分として含むことができる座標系の軸の方向を設定する第1設定項目の設定値と対応づけられず、質量係数、弾性係数、および粘性係数の第1設定項目の設定値と対応づけられてもよい。
また、第2設定項目の設定値は、ロボットの移動方向が方向成分として含むことができる座標系の軸の方向を設定する第1設定項目の設定値や、質量係数、弾性係数、および粘性係数の第1設定項目の設定値以外の第1設定項目の設定値と対応づけられてもよい。
(4)上記実施形態においては、一部の第2設定項目の設定値は、座標系の3軸の方向のうち1個の方向をロボット20が移動可能な方向とする第1設定項目の設定値と、対応づけられている。しかし、本開示においては、第2設定項目の設定値は、座標系の3軸の方向のうち1個の方向をロボット20が移動可能な方向とする第1設定項目の設定値と、対応づけられていない態様とすることもできる。たとえば、第2設定項目の設定値は、座標系の3軸の方向のうち1個の方向をロボット20が移動可能な方向とする第1設定項目の設定値と対応づけられず、質量係数、弾性係数、および粘性係数の第1設定項目の設定値と対応づけられてもよい。
(5)上記実施形態においては、第1設定項目は、直接教示において行われる力制御に係る設定項目を含む。しかし、本開示においては、第1設定項目が、直接教示において行われる力制御に係る設定項目を含まない態様とすることもできる。そして、第1設定項目は、ロボットが作業を行う際の力制御に係る設定項目を含んでもよい。
(6)ロボットの制御装置は、複数のプロセッサーによって構成されてもよい。たとえば、ロボット20、ロボット制御装置30、および教示装置40の他に、1以上のパーソナルコンピューターと、LANなどのネットワーク環境を介して提供されるクラウドサービスとが、相互に接続されている態様で、本明細書のロボットシステムを実現することもできる。パーソナルコンピューターは、それぞれプロセッサーとメモリーとを含んでいる。また、クラウドサービスにおいてもプロセッサーとメモリーを利用可能である。プロセッサーは、コンピューター実行可能な命令を実行する。これらの複数のプロセッサーの一部または全部を利用して、ロボット制御装置および教示装置、ならびにそれらを含む制御装置を実現することが可能である。
(7)また、ロボット制御装置30および教示装置40の少なくとも一部が、ロボット20の中に格納されている態様とすることもできる。この例においても、複数のプロセッサーの一部または全部を利用して、ロボット制御装置および教示装置、ならびにそれらを含む制御装置を実現することが可能である。
(8)以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
また、以上に説明した装置(例えば、教示装置40、制御装置46、ロボット制御装置30)における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD(Compact Disk)-ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。