JP2022135939A - Information processor, robot system, article manufacturing method, information processing method, program, and recording medium - Google Patents
Information processor, robot system, article manufacturing method, information processing method, program, and recording medium Download PDFInfo
- Publication number
- JP2022135939A JP2022135939A JP2022011329A JP2022011329A JP2022135939A JP 2022135939 A JP2022135939 A JP 2022135939A JP 2022011329 A JP2022011329 A JP 2022011329A JP 2022011329 A JP2022011329 A JP 2022011329A JP 2022135939 A JP2022135939 A JP 2022135939A
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- information processing
- robot
- work
- processing apparatus
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、ロボットに関する技術である。 The present invention relates to robot technology.
工場では、ばら積みされたワークをトレイ等に整頓するキッティング作業や、供給されたワークを別のワークに嵌合又は挿入して、物品の組み立てを行うアセンブリ作業などが行われている。これら作業において、産業用ロボットが活用され、工場の自動化が実施されている。 In a factory, a kitting operation for arranging bulky workpieces in a tray or the like, an assembly operation for assembling articles by fitting or inserting a supplied workpiece into another workpiece, and the like are performed. In these tasks, industrial robots are used to automate factories.
産業用ロボットが行うキッティング作業及びアセンブリ作業において、ロボットにワークを保持させ、特定の位置へワークを搬送させる搬送動作がある。ロボットにワークを保持させる位置やその位置からのロボットの動作をユーザが教示する必要がある。その教示の際には、ロボットが周辺の設備等と接触しないように必要がある。 2. Description of the Related Art In kitting work and assembly work performed by an industrial robot, there is a transport operation in which a robot holds a work and transports the work to a specific position. It is necessary for the user to teach the position where the robot is to hold the workpiece and the motion of the robot from that position. During the teaching, it is necessary to prevent the robot from coming into contact with surrounding facilities.
特許文献1には、オフライン教示に関する技術として、仮想ロボットの動作をシミュレートする際に、仮想ワークを表示するか否かを設定することが記載されている。 Japanese Patent Laid-Open No. 2002-200002 describes a technique related to offline teaching, which sets whether or not to display a virtual workpiece when simulating the motion of a virtual robot.
しかしながら、仮想ロボットが保持している仮想ワークの表示と非表示とを切り替えるだけでは、仮想ワークの挙動を、ユーザが画像を目視することで確認できるだけであり、シミュレーションに係るユーザの作業性に改良が求められていた。 However, by simply switching between display and non-display of the virtual work held by the virtual robot, the user can only confirm the behavior of the virtual work by viewing the image. was sought.
本発明は、シミュレーションに係るユーザの作業性を向上することを目的とする。 An object of the present invention is to improve the user's workability related to simulation.
本発明に係る第1の態様の情報処理装置は、仮想環境において仮想ロボット及び仮想ワークの挙動をシミュレート可能な情報処理部を備え、前記情報処理部は、前記仮想ワークを前記仮想ロボットの所定部位と連動させるための連動条件を設定する処理を実行可能である、ことを特徴とする。 An information processing apparatus according to a first aspect of the present invention comprises an information processing section capable of simulating behaviors of a virtual robot and a virtual work in a virtual environment, wherein the information processing section is configured to simulate the virtual work in a predetermined manner of the virtual robot. It is characterized by being capable of executing a process of setting an interlocking condition for interlocking with a part.
本発明に係る第2の態様の情報処理方法は、情報処理部が仮想環境において仮想ロボット及び仮想ワークの挙動をシミュレートする情報処理方法であって、前記情報処理部によって、前記仮想ワークを前記仮想ロボットの所定部位と連動させるための連動条件を設定する処理を実行する、ことを特徴とする。 An information processing method according to a second aspect of the present invention is an information processing method in which an information processing unit simulates behaviors of a virtual robot and a virtual work in a virtual environment, wherein the information processing unit simulates the virtual work as described above. It is characterized by executing a process of setting an interlocking condition for interlocking with a predetermined part of the virtual robot.
本発明によれば、シミュレーションに係るユーザの作業性を向上することができる。 According to the present invention, it is possible to improve the user's workability related to simulation.
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings.
(第1実施形態)
図1は、第1実施形態に係るロボットシステム1000の説明図である。ロボットシステム1000は、ロボット100と、制御装置200と、情報処理装置300と、を備える。
(First embodiment)
FIG. 1 is an explanatory diagram of a
ロボット100は、産業用ロボットであり、物品を製造するのに用いられる。ロボット100は、マニピュレータであり、ロボットアーム101と、エンドエフェクタの一例であるロボットハンド102と、を有する。ロボット100は、例えば架台500に位置決め配置されている。
Robot 100 is an industrial robot and is used to manufacture articles. A
ロボット100の周囲には、複数のワークW11,W12,W13,W14、複数のワークW21,W22、及び壁50等が、架台500上に位置決め配置される。各ワークW11~W14は、第1ワークであり、各ワークW21,W22は、第2ワークである。
Around the
各ワークW11~W14は、架台500上に位置決めされたワーク支持台501に配置される。これにより、各ワークW11~W14は、架台500に対して位置決めされる。ロボット100によりワークW11~W14のいずれかがワークW21,W22のいずれかに組み付けられることにより、物品が製造される。
Each of the works W11 to W14 is placed on a
図2(a)は、第1実施形態に係るロボット100の説明図である。図2(b)は、第1実施形態に係るロボットハンド102の説明図である。ロボットアーム101は、例えば垂直多関節のロボットアームである。ロボットアーム101の基端である固定端1011が架台500に固定されている。ロボットアーム101の先端である自由端1012には、ロボットハンド102が取り付けられている。ロボットアーム101は、ベース110と、複数のリンク111~116とを有する。これらベース110及びリンク111~116が関節J1~J6で連結されることにより、各リンク111~116が各関節J1~J6で回転可能となっている。第1実施形態では、ベース110が固定端1011であり、リンク116が自由端1012である。
FIG. 2(a) is an explanatory diagram of the
各関節J1~J6には、動力源として不図示のモータが配置されている。各関節J1~J6に設けられた不図示のモータが各関節J1~J6、即ち各リンク111~116を駆動することで、ロボット100は様々な姿勢をとることができる。
A motor (not shown) is arranged at each of the joints J1 to J6 as a power source. Motors (not shown) provided at the joints J1 to J6 drive the joints J1 to J6, that is, the
ロボットハンド102は、各ワークW11~W14を保持することが可能に構成されている。第1実施形態では、ロボットハンド102は、図2(b)に示すように、駆動部を含むハンド本体120と、ハンド本体120に支持された複数のフィンガ121と、を有し、各ワークW11~W14を把持可能に構成されている。複数のフィンガ121は、ハンド本体120の駆動部によって、互いに近接及び離間する方向に直動駆動される。図2(b)には、複数のフィンガ121が互いに近接する方向を矢印で示している。なお、ロボットハンド102が把持式である場合について説明するが、これに限定するものではなく、吸着式であってもよい。
The
図1に示す制御装置200は、ロボット100の動作情報、即ちロボットプログラムを示す教示データに基づいて、ロボット100を制御するものである。制御装置200は、教示データを情報処理装置300から取得する。教示データには、コマンドの情報や教示点の情報が含まれている。第1実施形態では、制御装置200は、教示データに基づいてロボット100を動作させることで、ロボット100に複数のワークW11~W14のうちのいずれか1つを保持させる。そして、制御装置200は、ロボット100にそのワークを複数のワークW21,W22のうちのいずれか1つに組み付けさせて物品を製造する。
The
情報処理装置300は、コンピュータで構成され、教示装置、即ちシミュレータとして機能する。第1実施形態では、情報処理装置300は、コンピュータシミュレーション、即ちオフライン教示により、教示データを生成する。情報処理装置300によって生成された教示データは、制御装置200に出力される。制御装置200への教示データの出力方法は、特に限定されるものではない。例えば、情報処理装置300によって生成された教示データを、有線通信若しくは無線通信によって、又は不図示の記憶装置を介して、制御装置200に出力されるようにしてもよい。
The
図3(a)は、第1実施形態に係る情報処理装置300の説明図である。情報処理装置300は、装置本体301と、装置本体301に接続された表示装置の一例であるディスプレイ302と、装置本体301に接続された入力装置の一例であるキーボード303及びマウス304と、を備える。以下、情報処理装置300が、汎用コンピュータであるデスクトップPCである場合を例に説明するが、これに限定するものではない。情報処理装置300が、例えばラップトップPC、タブレットPC、スマートフォン等の汎用コンピュータであってもよいし、ティーチングペンダントであってもよいし、シミュレータ専用のコンピュータであってもよい。また、情報処理装置300が、制御装置200に組み込まれていてもよい。即ち、制御装置200がシミュレータの機能を有していてもよい。
FIG. 3A is an explanatory diagram of the
図3(b)は、第1実施形態に係る情報処理装置300のブロック図である。情報処理装置300の装置本体301は、プロセッサであるCPU(Central Processing Unit)311を備える。また装置本体301は、記憶部として、ROM(Read Only Memory)312、RAM(Random Access Memory)313、HDD(Hard Disk Drive)314を備える。また、装置本体301は、記録ディスクドライブ315、及び入出力インタフェースであるI/O320を備える。CPU311、ROM312、RAM313、HDD314、記録ディスクドライブ315、及びI/O320は、互いに通信可能にバス310で接続されている。
FIG. 3B is a block diagram of the
ROM312は、非一時的な記憶装置である。ROM312には、コンピュータ起動時にCPU311によって読み出される基本プログラムが格納されている。RAM313は、CPU311の演算処理に用いられる一時的な記憶装置である。HDD314は、CPU311の演算処理結果等、各種データを記憶する非一時的な記憶装置である。第1実施形態では、HDD314には、プログラム350が格納されている。プログラム350は、アプリケーションソフトウェアである。CPU311は、プログラム350を実行することにより、後述する、仮想環境において仮想ロボット及び仮想ワークの挙動をシミュレート可能な情報処理部として機能する。
記録ディスクドライブ315は、記録ディスク340に記録された各種データやプログラム等を読み出すことができる。I/O320は、外部とのインタフェースとして機能する。I/O320には、ディスプレイ302、キーボード303、及びマウス304が接続される。ディスプレイ302は、CPU311の制御により、ユーザインタフェースとなる画像や、ユーザがキーボード303及びマウス304を用いて入力した情報を反映させた画像を表示する。教示点の情報を含む教示データは、プログラム350を実行するCPU311によって作成される。
The
なお、第1実施形態では、コンピュータによって読み取り可能な非一時的な記録媒体がHDD314であり、HDD314にプログラム350が記録されているが、これに限定するものではない。プログラム350は、コンピュータによって読み取り可能な非一時的な記録媒体であれば、いかなる記録媒体に記録されていてもよい。プログラム350をコンピュータに供給するための記録媒体としては、例えばフレキシブルディスク、光ディスク、光磁気ディスク、磁気テープ、不揮発性メモリ等を用いることができる。
In the first embodiment, the
図4は、第1実施形態に係る情報処理装置300によってシミュレートされる仮想空間Rの説明図である。CPU311は、仮想環境として、図4に示す仮想空間Rを定義する。仮想空間Rにおける仮想物は、3次元のモデルデータ、例えばCADデータで定義され、図4においては、便宜上、構造物として可視化して図示している。
FIG. 4 is an explanatory diagram of the virtual space R simulated by the
図4に示す仮想空間Rに定義される仮想物について説明する。仮想空間Rには、仮想架台500A及び仮想ロボット100Aが定義される。仮想架台500A及び仮想ロボット100Aは、図1に示す架台500及びロボット100を模擬した3次元のモデルデータで定義される。仮想ロボット100Aは、仮想架台500A上に定義される。仮想ロボット100Aは、複数の部位として、仮想ベース110A、複数の仮想リンク111A~116A、及び仮想ロボットハンド102Aを含む。仮想ロボット100Aが図1に示すロボット100と同様の動作が可能となるよう、各仮想リンク111A~116Aは、各関節J1A~J6Aで回転可能に定義される。仮想ロボットハンド102Aは、仮想エンドエフェクタの一例であり、第1実施形態では、所定部位の一例でもある。
A virtual object defined in the virtual space R shown in FIG. 4 will be described. In the virtual space R, a
仮想空間Rにおいて、仮想架台500A上における仮想ロボット100Aの周囲には、図1に示すワークW11~W14、W21及びW22を模擬した3次元のモデルデータである仮想ワークW11A~W14A、W21A及びW22Aが定義される。各仮想ワークW11A~W14Aは、第1仮想ワークであり、各仮想ワークW21A,W22Aは、第2仮想ワークである。各仮想ワークW11A~W14Aは、仮想支持台501Aに配置されるよう定義される。また、仮想空間Rにおいて、壁50を模擬した3次元のモデルデータである仮想壁50Aが仮想架台500A上に定義される。CPU311は、仮想ロボット100Aが仮想ワークW11A~W14Aのいずれかを仮想ワークW21A,W22Aのいずれかに組み付ける動作についてシミュレートする。図4に示す仮想空間Rは、図3(a)に示すディスプレイ302の表示画面3020に静止画又は動画で表示される。
In the virtual space R, virtual works W11A to W14A, W21A and W22A, which are three-dimensional model data simulating the works W11 to W14, W21 and W22 shown in FIG. Defined. Each virtual work W11A to W14A is a first virtual work, and each virtual work W21A, W22A is a second virtual work. Each virtual work W11A to W14A is defined to be placed on the
図5は、第1実施形態に係る情報処理方法のフローチャートである。CPU311は、プログラム350に基づいてステップS100からステップS1000を実施する。これにより、CPU311は、ロボットプログラムである教示データを生成し、制御装置200に生成した教示データを出力する。
FIG. 5 is a flowchart of an information processing method according to the first embodiment.
まず、ステップS100において、CPU311は、プログラム350を実行開始すると、ユーザインタフェースとなる画像をディスプレイ302の表示画面3020に表示させる。
First, in step S100, when
ディスプレイ302の表示画面3020に表示される画像について説明する。ディスプレイ302に表示される画像は、CPU311によって制御される。図6は、第1実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。CPU311は、プログラム350を実行することにより、シミュレータとして機能し、作業者であるユーザと情報処理装置300とのインタフェースとして、図6に示す画像400をディスプレイ302の表示画面3020に表示させる。ディスプレイ302に表示される画像400は、大別して、一覧表示部401、設定表示部402、3D表示部403の3つの表示部から成る。
An image displayed on the
一覧表示部401には、ユーザが設定した物体の一覧が、階層構造にて表示される。物体間で階層構造を持たせる、即ち物体間で親子関係を持たせることで、親物体の位置変更が子物体にも反映させることができる。
The
一覧表示部401には、図1に示す実空間と対応するよう、各グループ411~414がユーザによって作成される。グループ411は、ロボット100を表す物体のグループである。グループ412は、ワークW11~W14を表す物体のグループである。グループ413は、ワークW21,W22を表す物体のグループである。グループ414は、壁50を表す物体のグループである。
また、一覧表示部401には、複数のボタン415,416,417が表示される。ボタン415には「物体追加」の名称が付与されている。ボタン416には「教示点追加」の名称が付与されている。ボタン417には「削除」の名称が付与されている。
A plurality of
設定表示部402は、ユーザが仮想物の情報、教示点の情報、及び動作プログラムの情報を入力するインタフェースとなる表示部であり、3つのタブ4021,4022,4023で表示の切り替えが可能となっている。ユーザが各タブ4021,4022,4023を選択することで、仮想物の情報、教示点の情報、及び動作プログラムの情報のそれぞれの入力が可能となる。図6の例では、仮想物の情報を入力するためのタブ4021には「物体設定」の名称が付与されている。また、図6の例では、教示点の情報を入力するためのタブ4022には「教示点設定」の名称が付与されている。また、図6の例では、動作プログラムの情報を入力するためのタブ4023には「プログラム作成」の名称が付与されている。
The
ユーザが一覧表示部401の中のボタン415を選択すると、「物体設定」のタブ4021で示される設定表示部402には、ボックス421~425が表示される。各ボックス421~425には、ユーザによって設定情報が入力可能である。ボックス421には、物体名称の情報を入力することができる。ボックス422には、親物体からの相対位置姿勢の情報を入力することができる。ボックス423には、質量の情報を入力することができる。ボックス424には、重心位置の情報を入力することができる。また予めCADソフトなどで作成した3Dモデルデータのファイルの名称を、「3Dモデル」の名称が付与されたボックス425に入力することができる。
When the user selects
「物体設定」のタブ4021には、「確定」の名称が付与されたボタン426が表示される。「確定」の名称が付与されたボタン426が選択されることで、現在の設定値が上書きされ、3D表示部403に、物体の位置や3Dモデル情報が反映される。
A
さらに、「物体設定」のタブ4021で示される設定表示部402には、「キャンセル」の名称が付与されたボタン427と、「検知対象の設定」の名称が付与されたボタン428とが表示される。ボタン427が選択されると、CPU311は、ユーザによる編集をキャンセルする。ボタン428が選択されると、タブ4021で示される設定表示部402において、ボックス421にて指定された物体名称の情報に対応する仮想物に対して、接触するかどうかを検知する対象、即ち検知対象を設定する画面表示に切り替わる。検知対象は、仮想物である。接触するとは、干渉することでもある。
Further, in the
ステップS200において、CPU311は、ユーザによって入力された仮想物の情報の設定を受け付ける。なお、ユーザは、キーボード303及びマウス304を操作することによってタブ4021と関連する各ボックス421~425に情報を記入することにより、情報をCPU311に入力することができる。
In step S200,
仮想物は、第1実施形態の例では、仮想ロボット100A、仮想ワークW11A~W14A,W21A,W22A、及び仮想壁50A等である。このとき、CPU311は、3次元の仮想空間Rを可視化した画像を3D表示部403に表示する。これにより、ユーザは、設定した仮想物を視覚情報として確認することができる。
The virtual objects are the
図6の例では、名称「Robot1_Base」には、仮想ベース110Aの情報が割り当てられる。名称「Robot1_Joint1」には、関節J1Aを含む仮想リンク111Aの情報が割り当てられる。名称「Robot1_Joint2」には、関節J2Aを含む仮想リンク112Aの情報が割り当てられる。名称「Robot1_Joint3」には、関節J3Aを含む仮想リンク113Aの情報が割り当てられる。名称「Robot1_Joint4」には、関節J4Aを含む仮想リンク114Aの情報が割り当てられる。名称「Robot1_Joint5」には、関節J5Aを含む仮想リンク115Aの情報が割り当てられる。名称「Robot1_Joint6」には、関節J6Aを含む仮想リンク116Aの情報が割り当てられる。名称「Robot1_Hand」には、仮想ロボットハンド102Aの情報が割り当てられる。名称「TCP1」には、仮想ロボット100Aのツールセンタポイントの情報が割り当てられる。
In the example of FIG. 6, information of the
また、図6の例では、名称「Part1」には、仮想ワークW11Aの情報が割り当てられる。名称「Part2」には、仮想ワークW12Aの情報が割り当てられる。名称「Part3」には、仮想ワークW13Aの情報が割り当てられる。名称「Part4」には、仮想ワークW14Aの情報が割り当てられる。名称「Box1」には、仮想ワークW21Aの情報が割り当てられる。名称「Box2」には、仮想ワークW22Aの情報が割り当てられる。名称「Wall1」には、仮想壁50Aの情報が割り当てられる。なお、これらの名称は、ユーザによって任意に設定可能である。
Further, in the example of FIG. 6, the information of the virtual work W11A is assigned to the name "Part1". Information of the virtual work W12A is assigned to the name "Part2". Information of the virtual work W13A is assigned to the name "Part3". Information of the virtual work W14A is assigned to the name "Part4". Information of the virtual work W21A is assigned to the name “Box1”. Information of the virtual work W22A is assigned to the name "Box2". Information on the
ボックス421~424の情報は、仮想ロボット100Aの複数の部位、仮想ワークW11A~W14A,W21A,W22A、及び仮想壁50Aのそれぞれに対して個別に設定される。
Information in
また、タブ4021において、名称「Robot1_Joint1」に対応する仮想リンク111Aの情報を編集する際に「検知対象の設定」の名称が付与されたボタン428が選択されると、CPU311は、画像400を図7に示すように切り替える。図7は、第1実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。ボタン428が選択されると、タブ4021において、名称「Robot1_Joint1」に対応する仮想リンク111Aに対する検知対象を設定する画面表示に切り替わる。
Further, in
タブ4021で示される設定表示部402には、ボックス421と、検知対象をユーザが指定するためのボックス430と、「確定」の名称が付与されたボタン431と、「キャンセル」の名称が付与されたボタン432とが表示される。ユーザによりボックス430に検知対象とする仮想物の名称が記入され、「確定」の名称が付与されたボタン431が選択されると、CPU311は、ユーザによる仮想リンク111Aに対する検知対象とする仮想物の設定を受け付ける。すなわち、CPU311は、ボックス430に表示されている名称に対応する仮想物を、ボックス421に表示されている名称に対応する仮想物に対する検知対象に設定する。図7の例では、「Robot1_Joint1」の名称が付与された仮想リンク111Aに対して、仮想ワークW11A~W14A,W21,W22及び仮想壁50Aが、検知対象として設定される。なお、ユーザにより「キャンセル」の名称が付与されたボタン432が選択されると、CPU311は、ユーザによる編集をキャンセルする。
A setting
検知対象は、ユーザによって、仮想ロボット100Aにおける複数の部位の各々に対して個別に手動で設定される。即ち、CPU301は、仮想ロボット100Aにおける複数の部位、即ち仮想ベース110A、複数の仮想リンク111A~116A、及び仮想ロボットハンド102Aの各々に対して個別にユーザによる設定を受け付ける。また、CPU311は、仮想ロボット100Aにおける複数の部位の各々に対して設定された検知対象に基づいて、仮想ワークW11A~W14A,W21A,W22A及び仮想壁50Aの各々に対する検知対象を個別に自動で設定する。例えば、仮想ロボットハンド102Aに仮想ワークW11Aが検知対象として設定されていたら、仮想ワークW11Aには検知対象として仮想ロボットハンド102Aが自動で設定される。
The detection target is individually manually set by the user for each of the plurality of parts of the
設定された仮想物は、3D表示部403に3Dのモデルとして表示されることが好ましい。3D表示部403には、仮想ロボット100Aに対応するロボットモデル100B、仮想ワークW11Aに対応するワークモデルW11B、仮想壁50Aに対応する壁モデル50B、仮想ワークW21Aに対応するワークモデルW21Bも表示される。
The set virtual object is preferably displayed as a 3D model on the
なお、仮想ロボット100Aの複数の部位の各々に検知対象を設定した段階で、いずれかの部位が検知対象と接触していれば、3D表示部403にて該当物体の3Dモデルの色を変えることで、ユーザに接触していることを通知するのが好ましい。
It should be noted that at the stage when the detection target is set for each of the plurality of parts of the
次に、ステップS300において、CPU311は、ユーザによって入力された教示点の設定を受け付ける。教示点は、一覧表示部401において「教示点追加」の名称が付与されたボタン416がユーザによって選択されることにより、教示点が作成される。教示点は、ツールセンタポイントの目標とする位置姿勢である。図8は、第1実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。例えば、一覧表示部401には、教示点P0,P1,P2がユーザにより作成される。各教示点P0,P1,P2の情報は、ユーザがタブ4022を選択することにより、編集及び設定が可能となる。
Next, in step S300,
図8に示す例において、教示点P0は、仮想ロボット100Aの初期位置を示す教示点であり、「TP_init」の名称が付与される。教示点P1は、第1教示点である。教示点P1は、仮想ワークW11Aの把持位置を示す教示点であり、「TP_1」が付与される。教示点P2は、第2教示点である。教示点P2は、仮想ワークW11Aを仮想ワークW21Aに組み付ける上空位置を示す教示点であり、「TP_2」の名称が付与される。なお、これら教示点の名称は、ユーザが任意に設定可能である。
In the example shown in FIG. 8, the teaching point P0 is a teaching point indicating the initial position of the
各教示点P0,P1,P2も親物体の位置姿勢が変更されると自動的に変更されるのが好ましい。各教示点P0,P1,P2においても階層構造にて管理することにより、設計変更が容易となる。 It is preferable that the teaching points P0, P1, and P2 are also automatically changed when the position and orientation of the parent object are changed. By managing the teaching points P0, P1, and P2 in a hierarchical structure, it becomes easy to change the design.
一覧表示部401における教示点の名称をユーザが選択することで、タブ4022で示される設定表示部402において、その選択された名称に対応する教示点の情報が編集可能となる。タブ4022で示される設定表示部402には、教示点の名称が表示されるボックス440と、ボックス440に表示された教示点の名称と対応付けられる教示点の位置姿勢の情報が記入可能なボックス441とが表示される。また、タブ4022で示される設定表示部402には、姿勢フラグの情報が記入可能なボックス442が表示される。ここで姿勢フラグとは、仮想ロボット100Aの逆運動学計算において、複数の解が存在する場合に、どの解を採用するかを指定するためのフラグである。また、タブ4022で示される設定表示部402には、「確定」の名称が付与されたボタン443と、「キャンセル」の名称が付与されたボタン444とが表示される。
When the user selects the name of the teaching point in the
図8の例では、一覧表示部401において、教示点P1の名称である「TP_1」が選択され、タブ4022で示される設定表示部402においては「TP_1」に対応する教示点P1の情報が編集可能となっている。
In the example of FIG. 8, "TP_1", which is the name of the taught point P1, is selected in the
ユーザによりボックス441に教示点の位置姿勢の情報が記入され、「確定」の名称が付与されたボタン443が選択されると、CPU311は、ユーザによる教示点の設定を受け付ける。なお、ユーザにより「キャンセル」の名称が付与されたボタン444が選択されると、CPU311は、ユーザによる編集をキャンセルする。
When the user enters information on the position and orientation of the teaching point in
設定された教示点は、3D表示部403に3Dの教示点モデルとして表示されるのが好ましい。3D表示部403には、教示点P0,P1,P2に対応する教示点モデルP0B,P1B,P2Bがそれぞれ表示される。各教示点モデルP0B~P2Bにおいて、点は位置を表し、3つの矢印は姿勢を表している。
The set teaching points are preferably displayed as a 3D teaching point model on the
次に、ステップS400において、CPU311は、ユーザによって入力された動作プログラムの設定を受け付ける。図9は、第1実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。
Next, in step S400,
「プログラム作成」の名称が付与されたタブ4023で示される設定表示部402には、動作プログラムを設定するためのテーブル450と、「計算開始」の名称が付与されたボタン455と、が表示される。テーブル450は、複数の列451,452,453,454を含む。列451は、仮想ロボット100Aの動作を指定するコマンド列である。列452は、教示点を指定する教示点列である。列453は、搬送するワークを指定する列である。列454は、速度を指定する列である。「計算開始」のボタン455がユーザに選択されると、CPU311は、先頭行から順番に仮想ロボット100Aの動作をシミュレートする。
A setting
列451に指定可能なコマンドの種類は複数ある。コマンドの種類は用途に応じて拡充できる。図9に示す例では、指定した教示点を仮想ロボットの初期位置とするコマンド「Init」、及び関節補間により仮想ロボットを指定した教示点へ動作させるコマンド「Joint」がある。
There are multiple types of commands that can be specified in
教示点P0を始点とし、教示点P0から教示点P1へ仮想ロボット100Aを動作させ、教示点P1で仮想ワークW11Aを仮想ロボット100Aと連動させ、教示点P1から教示点P2へ仮想ロボット100Aを動作させる場合について説明する。ロボット100においては、教示点P0を始点として教示点P1へ動作し、教示点P1でワークW11を把持し、教示点P1から教示点P2へ動作することでワークW11をワークW21の上方に搬送し、ワークW11をワークW21に組み付けることになる。
With the teaching point P0 as the starting point, the
ここで、仮想ワークW11Aを仮想ロボット100Aと連動させるとは、仮想ワークW11Aを仮想ロボット100Aに模擬的に保持させることである。第1実施形態では、仮想ロボット100Aの所定部位の一例である仮想ロボットハンド102Aに仮想ワークW11Aを模擬的に把持させることである。よって、仮想ワークW11Aが仮想ロボット100Aと連動していれば、仮想ロボット100Aの姿勢が変化しても、仮想ロボットハンド102Aに対する仮想ワークW11Aの相対的な位置姿勢は維持される。第1実施形態では、CPU311は、仮想ロボットハンド102Aと仮想ワークW11Aとの間の相対的な位置姿勢を維持することで、仮想ワークW11Aを仮想ロボット100Aと連動させる。これにより、仮想ロボットハンド102Aが仮想ワークW11Aを把持している状態を模擬的に実現することができる。
Here, interlocking the virtual work W11A with the
テーブル450では、複数行の動作プログラムprg1~prg3でこれらの動作が記述される。動作プログラムprg1では、コマンド「Init」、教示点の名称「TP_init」によって、始点として教示点P0が設定される。次の動作プログラムprg2では、コマンド「Joint」、教示点の名称「TP_1」によって、仮想ロボット100Aが教示点P0から教示点P1へ関節補間によって動作することが設定される。さらに次の動作プログラムprg3では、ワークの名称「part1」によって、教示点P1で仮想ワークW11Aを仮想ロボット100Aと連動させることが設定される。また、動作プログラムprg3では、コマンド「Joint」、教示点の名称「TP_2」によって、教示点P1から教示点P2へ関節補間によって動作することが設定される。このように、ユーザによってテーブル450に動作プログラムが記述されることで、動作プログラムが設定される。
In the table 450, these operations are described by multiple lines of operation programs prg1 to prg3. In the operation program prg1, the command "Init" and the name of the taught point "TP_init" are used to set the taught point P0 as the starting point. In the next motion program prg2, the
CPU311は、以上の設定情報を用いて、仮想ロボット100Aの動作を取得する所定の処理が実行可能となる。第1実施形態では、CPU311は、所定の処理として、仮想ロボット100Aの動作を求める、即ち仮想ロボット100Aの動作を探索する探索処理が実行可能である。
Using the above setting information, the
第1実施形態では、CPU311は、探索処理において、テーブル450において設定された動作プログラムに従って、仮想ロボット100Aの挙動をシミュレートする。そして、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させる指示が記載された動作プログラムについては、探索処理において、仮想ロボット100A及び仮想ワークW11Aの挙動をシミュレートする。これにより、CPU311は、仮想ロボット100A及び仮想ワークW11Aが障害物を回避する仮想ロボット100Aの動作を自動で計算する。
In the first embodiment, the
以下、「計算開始」のボタン455がユーザに選択された場合のCPU311によるシミュレーションについて詳細に説明する。そして、図9に示すテーブル450に記述された動作プログラムprg1~prg3に従って、仮想ロボット100Aが仮想ワークW11Aを仮想ワークW21Aに搬送する場合を例に説明する。テーブル450には、複数行、例えば3行の動作プログラムprg1~prg3が含まれている。CPU311は、各行ごとに順番にシミュレーションを行う。
A simulation by the
「計算開始」のボタン455がユーザに選択されると、CPU311は、ステップS500~S1000の処理を実行する。
When the user selects the “calculation start”
まず、ステップS500において、CPU311は、テーブル450中、1行目の動作プログラムprg1を読み出し、仮想ワークW11Aを仮想ロボット100Aと連動させるか否かを選択する。動作プログラムprg1では、列453において仮想ワークW11Aが指定されていないので、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させないことを選択する(S500:NO)。CPU311は、コマンド「Init」を実行して、「TP_init」の名称が付与されている教示点P0を始点とする。
First, in step S500, the
次に、ステップS600において、CPU311は、1つ前の動作プログラムで指定された教示点を始点とし、現在の動作プログラムで指定された教示点を終点として、始点から終点までの仮想ロボット100Aの動作を探索する。動作プログラムprg1については、前の動作プログラムは存在しないので、CPU311は、ステップS600において何の処理もせずにそのまま次のステップS700に移行する。
Next, in step S600, the
ステップS700において、CPU311は、全ての動作プログラムのシミュレーションが終了したか否かを判定する。2行目の動作プログラムprg2が存在するため(S700:NO)、CPU311は、ステップS500の処理に戻る。
In step S700,
ステップS500において、CPU311は、2行目の動作プログラムprg2を読み出し、仮想ワークW11Aを仮想ロボット100Aと連動させるか否かを選択する。動作プログラムprg2では、列453において仮想ワークW11Aが指定されていないので、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させないことを選択する(S500:NO)。
In step S500, the
次に、ステップS600において、CPU311は、1つ前の動作プログラムprg1で指定された教示点P0から現在の動作プログラムprg2で指定された教示点P1まで障害物と接触しない仮想ロボット100Aの動作を探索する探索処理を実行する。障害物は、ステップS200において、検知対象として設定されている。
Next, in step S600,
ステップS600の探索処理において、CPU311は、仮想ロボット100Aの各部位が障害物と接触しない動作を実現するために、教示点P0と教示点P1との間に挿入する中間教示点を計算する。即ち、CPU311は、仮想ロボット100Aが障害物と接触しないように、仮想ロボット100Aを教示点P0から教示点P1へ動作させる際の、教示点P0と教示点P1との間の中間教示点を求める。中間教示点の計算には、RRT(Rapidly exploring Random Tree)といった探索アルゴリズムを用いるのが好ましい。RRTにおいて、仮想ロボット100Aの各部位が、各部位に個別に設定された検知対象と接触しないように、仮想ロボット100Aの動作、即ち中間教示点が計算される。
In the search process of step S600,
ステップS700において、CPU311は、全ての動作プログラムのシミュレーションが終了したか否かを判定する。3行目の動作プログラムprg3が存在するため(S700:NO)、CPU311は、ステップS500の処理に戻る。
In step S700,
ステップS500において、CPU311は、3行目の動作プログラムprg3を読み出し、仮想ワークW11Aを仮想ロボット100Aと連動させるか否かを選択する。動作プログラムprg3では、列453において仮想ワークW11Aが指定されている。このため、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させることを選択する(S500:YES)。
In step S500, the
動作プログラムprg3においては、仮想ロボット100Aによる搬送動作を開始する始点は教示点P1であり、終点は教示点P2となる。ステップS800において、CPU311は、仮想ワークW11Aを仮想ロボットハンド102Aと連動させる設定を行う。図10は、第1実施形態において仮想ワークW11Aを仮想ロボットハンド102Aと連動させる計算を説明するための模式図である。ステップS800において、CPU311は、仮想ロボット100Aの姿勢が教示点P1である状態の仮想ロボットハンド102Aに対する仮想ワークW11Aの相対的な位置関係trsf1を計算する。即ち、位置関係trsf1を計算する際には、仮想ロボット100Aと紐付けされたツールセンタポイントの位置姿勢情報が教示点P1となるように、仮想ロボット100Aの姿勢を決める。CPU311は、計算した位置関係trsf1の情報を、例えばRAM313又はHDD314等に記憶させる。なお、本実施形態では、仮想ロボットハンド102Aと仮想ワークW11Aとの位置関係trsf1として、仮想ロボットハンド102Aの位置姿勢の情報と仮想ワークW11Aの位置姿勢の情報を記憶させるが、仮想ロボットハンド102Aの位置の情報と仮想ワークW11Aの位置の情報のみを記憶させても構わない。
In the operation program prg3, the start point for starting the transport operation by the
ここで、仮想ワークW11Aが仮想ロボット100Aと連動しない場合は、仮想ワークW11Aは、仮想ロボット100Aが接触を回避すべき障害物として扱われる必要がある。よって、CPU311は、RRTのシミュレーションにおいて、仮想ロボット100Aが仮想ワークW11Aと接触するかどうかを計算する必要がある。ここで、計算することは、検知することと同義である。
Here, if the virtual work W11A does not interlock with the
一方、仮想ワークW11Aが仮想ロボット100Aと連動する場合は、CPU311は、RRTのシミュレーションにおいて、仮想ワークW11Aが仮想ロボットハンド102Aと接触するかどうかを計算する必要はない。そして、CPU311は、RRTのシミュレーションにおいて、仮想ワークW11Aが仮想ロボット100Aにおける仮想ロボットハンド102A以外の一部の部位、及び仮想ロボット100Aの周囲の仮想物と接触するかどうかを計算する必要がある。
On the other hand, when the virtual work W11A is interlocked with the
そこで、ステップS900において、CPU311は、仮想ロボットハンド102Aと連動させる際の仮想ワークW11Aに対する検知対象を、仮想ロボットハンド102Aに対して設定された検知対象に基づいて設定する。
Therefore, in step S900, the
第1実施形態では、仮想ワークW11Aに対する検知対象は、ステップS200において既に設定されている。よって、第1実施形態では、CPU311は、仮想ロボットハンド102Aと連動させる際の仮想ワークW11Aに対する検知対象の設定を、仮想ロボットハンド102Aに対して設定された検知対象に基づいて変更する。例えば、CPU311は、仮想ワークW11Aに対して既に設定されている検知対象を、仮想ロボットハンド102Aに設定されている検知対象の中から「part1」を除外したものに変更する。
In the first embodiment, the detection target for the virtual work W11A has already been set in step S200. Therefore, in the first embodiment, the
図11(a)及び図11(b)は、第1実施形態において仮想ワークW11Aに設定される検知対象のリストの一例を示す説明図である。図11(a)は設定変更前、図11(b)は設定変更後である。動作プログラムprg1,prg2のシミュレーションにおいて、仮想ワークW11Aに対して設定される検知対象は、図11(a)に示すように仮想ロボット100Aを構成する部位となる。一方、動作プログラムprg3のシミュレーションにおいて、仮想ワークW11Aは仮想ロボット100Aと連動させるため、仮想ワークW11Aに対して設定される検知対象は、図11(b)に示すように変更される。図11(b)に示すリストは、仮想ロボットハンド102Aに対して設定された検知対象から仮想ワークW11Aを除外したものになる。
FIGS. 11(a) and 11(b) are explanatory diagrams showing an example of a detection target list set in the virtual work W11A in the first embodiment. FIG. 11(a) is before the setting change, and FIG. 11(b) is after the setting change. In the simulations of the motion programs prg1 and prg2, the detection targets set for the virtual work W11A are the parts forming the
ステップS600の探索処理において、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させて、仮想ロボット100A及び仮想ワークW11Aが検知対象と接触しない仮想ロボット100Aの動作を探索する。この場合、仮想ワークW11Aを仮想ロボット100Aと連動させていない場合と同様に、RRTによる探索アルゴリズムで仮想ロボット100Aの動作を探索する。
In the search process of step S600, the
図12は、第1実施形態において探索処理により求めた仮想ロボット100Aの動作の一例を示す説明図である。CPU311は、教示点P1と教示点P2との間の中間教示点P11,P12を求める。4つの教示点P1,P11,P12,P2を用いて計算された仮想ロボット100Aの動作は、図12中、点線で示す軌道traj1である。
FIG. 12 is an explanatory diagram showing an example of the motion of the
図13は、第1実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。図13に示す一覧表示部401には、中間教示点P11,P12が「TP_mid1」と「TP_mid2」という名称で追加される。また、3D表示部403には、これら4つの教示点と、これら4つの教示点をつなぐ軌道が模式的に図示される。これにより、ユーザは追加された中間教示点P11,P12を用いて、新たな動作プログラムの作成や教示点の修正などといった検討を行うことができる。
FIG. 13 is an explanatory diagram showing an example of an
ステップS700において、CPU311は、全ての動作プログラムのシミュレーションが終了したか否かを判定する。3行目の動作プログラムprg3が最後の動作プログラムであるため、全ての動作プログラムのシミュレーションが終了しており(S700:YES)、CPU311は、ステップS1000の処理に移行する。
In step S700,
ステップS1000において、CPU311は、教示点P0,P1,P11,P12,P2の情報を含む教示データを、制御装置200に出力する。このように、一連の操作により作成された教示データは、ロボット100を制御する制御装置200へ出力されるので、制御装置200は、オフライン教示にて作成された教示データに基づいて実際のロボット100を動作させることができる。
In
図14は、ステップS600におけるRRTアルゴリズムの探索処理の一例を示すフローチャートである。図14に示すフローチャートは、動作プログラムにて仮想ワークW11Aを指定して仮想ワークW11Aを仮想ロボット100Aと連動させる場合の探索処理の一例を示すフローチャートである。
FIG. 14 is a flowchart showing an example of RRT algorithm search processing in step S600. The flow chart shown in FIG. 14 is a flow chart showing an example of search processing when the virtual work W11A is specified in the operation program and the virtual work W11A is linked with the
ステップS601において、CPU311は、始点をノード群へ追加する。ここでノードとは、仮想ロボット100Aの全ての関節J1A~J6Aの値の組み合わせを示し、ノード群はノードの集合を示す。ノード群は、最初は空の状態である。
In step S601, the
ステップS602において、CPU311は、ランダムに新たなノードを算出する。仮想ロボット100Aの関節J1A~J6Aには、可動できる最小値から最大値までの範囲がある。CPU311は、その範囲内でランダムな数値を各関節の分だけ算出する。
In step S602, the
ステップS603において、CPU311は、順運動学の計算により、新規ノードに含まれる各関節J1A~J6Aの値から各関節J1A~J6Aの位置及び仮想ロボットハンド102Aの位置を算出する。
In step S603, the
ステップS604において、CPU311は、ステップS800で計算した、仮想ロボットハンド102Aに対する仮想ワークW11Aの相対的な位置関係trsf1に基づいて、仮想ワークW11Aの位置を計算する。
In step S604, the
ステップS605において、CPU311は、新規ノードに対して最近傍となるノードをノード群の中から算出する。最近傍とは、新規ノードの関節の値と、ノード群に含まれるノードの関節の値との差分値が、ノード群中、最も小さいことをいう。
In step S605, the
ステップS606において、CPU311は、新規ノードと最近傍ノードとの間を所定又は任意の間隔で補間する。補間は、予め設定された方法、例えば関節補間で行う。また、補間計算の際には、図5のステップS200で設定した質量や重心の情報も用いて行う。
In step S606, the
ステップS607において、CPU311は、補間により求めた各位置において、仮想ロボット100Aの複数の部位、及び仮想ロボット100Aと連動する仮想ワークW11Aが、それぞれに対応する検知対象と接触するかどうかを判定する。仮想ロボット100Aの各部位に対する検知対象は、図5のステップS200で設定されたものを用い、仮想ワークW11Aに対する検知対象は、図5のステップS900にて再設定されたものを用いる。
In step S607, the
仮想ロボット100Aの複数の部位、及び仮想ワークW11Aのうち、1つでも接触が検知された場合は(S607:YES)、CPU311は、新規ノードのデータは破棄して、ステップS602の処理に戻り、また新たに新規ノードを算出する。
If contact is detected with at least one of the multiple parts of the
仮想ロボット100Aの複数の部位、及び仮想ワークW11Aのいずれも、接触が検知されない場合(S607:NO)、ステップS608において、CPU311は、新規ノードをノード群に追加する。CPU311は、ノード群に追加する際には、新規ノードに対する最近傍ノードの情報も記録しておく。
When none of the multiple parts of the
ステップS609において、CPU311は、新規ノードと終点との間を所定又は任意の間隔で補間する。補間は、予め設定された方法、例えば関節補間で行う。また、補間計算の際には、ステップS200で設定した質量や重心の情報も用いて行う。
In step S609, the
ステップS610において、CPU311は、補間により求めた各位置において、仮想ロボット100Aの複数の部位、及び仮想ロボット100Aと連動する仮想ワークW11Aが、それぞれに対応する検知対象と接触するかどうかを判定する。仮想ロボット100Aの各部位に対する検知対象は、図5のステップS200で設定されたものを用い、仮想ワークW11Aに対する検知対象は、図5のステップS900にて再設定されたものを用いる。
In step S610, the
仮想ロボット100Aの複数の部位、及び仮想ワークW11Aのうち、1つでも接触が検知された場合は(S610:YES)、CPU311は、ステップS602の処理に戻り、また新たに新規ノードを算出する。
If contact is detected with at least one of the plurality of parts of the
仮想ロボット100Aの複数の部位、及び仮想ワークW11Aのいずれも、接触が検知されない場合(S610:NO)、CPU311は、ステップS611の処理へ進む。
When none of the multiple parts of the
ステップS611において、CPU311は、ノード群の中から中間点を抽出する。中間点は、最後に追加された新規ノードから最近傍ノードを順番に辿っていくことで抽出される。以上のステップS601~S611の処理が、仮想ワークW11Aを仮想ロボット100Aに連動させた場合の探索処理である。
In step S611, the
なお、仮想ワークW11Aを仮想ロボット100Aに連動させない場合の探索処理においては、ステップS604の処理は、省略される。また、各ステップS607,S610の処理において、CPU311は、補間により求めた各位置において、仮想ロボット100Aの複数の部位が、それぞれに対応する検知対象と接触するかどうかを判定する。仮想ロボット100Aの各部位に対する検知対象は、図5のステップS200で設定されたものを用いる。
Note that in the search process when the virtual work W11A is not linked to the
CPU311は、以上のステップS601~S611の処理による仮想ロボット100Aや仮想ワークW11Aを、3D表示部403に静止画又は動画として模擬的に表示してもよい。
The
以上、第1実施形態によれば、CPU311は、仮想ワークW11Aを仮想ロボット100Aと連動させることで、仮想ロボット100A及び仮想ワークW11Aが障害物と接触しない動作を自動で算出することができる。このため、ユーザは、専門知識がなくても、シミュレート作業を容易に行うことができる。また、仮想ロボット100Aの動作において、逐一ユーザが目視で確認することなく、仮想ロボット100A及び仮想ワークW11Aが障害物と接触しない動作を取得できるので、シミュレーションに係るユーザの作業性を向上させることができる。また、シミュレート作業に基づくロボット100の教示も容易に行うことができる。
As described above, according to the first embodiment, by interlocking the virtual work W11A with the
また、ユーザは、仮想ロボット100Aの始点となる教示点P1、及び終点となる教示点P2と、搬送対象である仮想ワークW11Aとを設定すればよい。CPU311は、これら設定に基づいて、仮想ロボット100A及び仮想ワークW11Aが障害物と接触しない仮想ロボット100Aの搬送動作を自動で算出することができる。このため、ユーザは、専門知識がなくても、シミュレート作業を容易に行うことができる。また、仮想ロボット100Aの動作において、逐一ユーザが目視で確認することなく、仮想ロボット100A及び仮想ワークW11Aが障害物と接触しない動作を取得できるのでシミュレーションに係るユーザの作業性を向上させることができる。また、シミュレート作業に基づくロボット100の教示も容易に行うことができる。
Also, the user may set a teaching point P1 as a starting point and a teaching point P2 as an end point of the
また、仮想ワークW11Aと連動させない仮想ロボット100Aの動作についても、CPU311は、仮想ロボット100Aが障害物と接触しない動作を自動で算出することができる。このため、ユーザは、専門知識がなくても、シミュレート作業を容易に行うことができる。また、仮想ロボット100Aの動作において、逐一ユーザが目視で確認することなく、仮想ロボット100A及び仮想ワークW11Aが障害物と接触しない動作を取得できるのでシミュレーションに係るユーザの作業性を向上させることができる。また、シミュレート作業に基づくロボット100の教示も容易に行うことができる。
In addition, the
(第2実施形態)
次に第2実施形態について詳述する。以下では、第1実施形態とは異なるハードウェアや制御系の構成の部分について図示し説明する。また、第1実施形態と同様の部分については上記と同様の構成ならびに作用が可能であるものとし、その詳細な説明は省略するものとする。
(Second embodiment)
Next, a second embodiment will be described in detail. In the following, hardware and control system configurations that are different from those of the first embodiment will be illustrated and explained. In addition, it is assumed that the same parts as those of the first embodiment can have the same configurations and actions as those described above, and detailed description thereof will be omitted.
図15は第2実施形態に係るディスプレイ302に表示される画像400の一例を示す説明図である。図15より、第2実施形態では、「連動設定」の名称が付与されたボタン456が表示されている点が第1実施形態と大きく異なる。第1実施形態では仮想ロボットハンド102Aと仮想ワークW11Aとの連動条件となる、仮想ロボットハンド102Aに対する仮想ワークW11Aの相対的な位置関係trsf1をCPU311に計算させていた。第2実施形態では、この連動条件となる相対的な位置関係trsf1をユーザにより設定させる。3D表示部403において表示されるロボットハンドモデル102Bは、仮想ロボットハンド102Aに対応し、3D表示部403において表示されるワークモデルW11Bは、仮想ワークW11Aに対応する。以下、仮想ロボットハンド102A、仮想ワークW11Aを用いて説明を行う。
FIG. 15 is an explanatory diagram showing an example of an
図16は、ユーザが図15に示すボタン456をクリックすることでディスプレイ302に表示される画像400の一例を示す説明図である。ユーザが図15に示すボタン456をクリックすることで、図16に示す連動条件を設定するタブ4024と、仮想空間Rを表示した3D表示部403とが表示される。タブ4024には「連動設定」という名称が付されて表示されている。タブ4024で示される表示画面には、ボックス460、テーブル461、列462、463、ボタン464、465、466、467が表示されている。以下で詳述する。
FIG. 16 is an explanatory diagram showing an example of an
まず、ボックス460は、連動条件を設定させる際の連動対象を設定する設定ボックスである。図16ではボックス460には、仮想ロボットハンド102Aが設定されている。なお、第2実施形態では、連動対象となる仮想ロボット100Aの所定部位として仮想ロボットハンド102Aを例にとり説明するが、これに限られない。例えば、仮想ロボット100Aの所定のリンクを連動対象として設定することも可能である。
First, a
テーブル461は、連動条件を設定させる際の、連動対象と連動させるべき仮想ワークの情報と、相対的な位置関係trsf1に係るパラメータとを入力するテーブルである。列462は連動対象と連動させるべき仮想ワークの情報の設定を行う列である。図16では、仮想ワークW11Aに対応するワーク名称が列462に表示されており、他のワークに対応する名称も列462に順次表示される。列463は、対応する仮想ワークにおける、仮想ロボットハンド102Aとの相対的な位置関係trsf1のパラメータを入力する列である。
The table 461 is a table for inputting the information of the virtual work to be interlocked with the interlocking target and the parameter related to the relative positional relationship trsf1 when setting the interlocking condition. A
図16における列463のパラメータは、仮想ワークW11Aにおける任意の仮想点を基準として、仮想ロボットハンド102Aのツールセンタポイントの相対的な位置姿勢を示している。任意の仮想点は、仮想ワークW11Aの制御上の第1位置の一例、ツールセンタポイントは、仮想ロボットハンド102Aの制御上の第2位置の一例である。つまり図16における列463のパラメータは、仮想ロボットハンド102Aのツールセンタポイントが、仮想ワークW11Aの任意の仮想点に対して、Z軸プラス方向に50離れていることを示している。この50という値は、仮想空間Rにおいて設定されている距離の情報であり、単位としてはmmでも、cmでも構わない。Rx、Ry、Rzの値も入力することで、仮想ロボットハンド102Aのツールセンタポイントにおける、仮想ワークW11Aの任意の仮想点に対する姿勢を設定することも可能となる。これにより、仮想ワークW11Aを真上から把持するような場合だけでなく、仮想ワークW11Aを真横から把持するような場合なども、ユーザによって容易に設定することが可能となる。
The parameters in
ボタン464は、3D表示部403に表示されている仮想ロボットハンド102A(102B)及び仮想ワークW11A(W11B)について、仮想ワークW11A(W11B)の任意の仮想点に対する仮想ロボットハンド102A(102B)のツールセンタポイントにおける位置姿勢を取得し、取得した位置姿勢をパラメータとして列463に表示するためのボタンである。パラメータでの設定が煩雑な場合は、3D表示部403に表示されている仮想ロボットハンド102A(102B)を、ポインタ470で所定位置に移動させ所定姿勢となるように設定する。そして、ボタン464を押下することで、ボタン464を押下した時点の、仮想ワークW11A(W11B)の任意の仮想点に対する仮想ロボットハンド102A(102B)のツールセンタポイントの位置姿勢を取得し、取得した位置姿勢を列463にパラメータとして表示する。これにより、3D表示部403における仮想ロボットハンド102A(102B)の位置姿勢を見ながら、直感的に、連動条件となる、相対的な位置関係trsf1を設定することが可能となる。なお、ボタン464’を押下することで、仮想ロボットハンド102A(102B)のツールセンタポイントにおける、仮想ワークW21A(W21B)の任意の仮想点に対する位置姿勢を取り込み、連動条件として設定することも可能である。ボタン464は、列463において、仮想ワークに対応した行に表示される。
The
なお、第2実施形態では、仮想ワークW11A(W11B)の任意の仮想点を基準として、仮想ロボットハンド102A(102B)のツールセンタポイント位置を設定、取り込むことで、位置関係trsf1を設定している。「基準変更」と記載されたボタン468を押下することで、位置関係trsf1の基準を変更することが可能である。図16の状態では、基準表示部469において「ワーク」が表示されているが、ボタン468を押下することで、基準表示部469において「ロボットハンド」が表示される。基準がロボットハンドの場合に、位置関係trsf1を設定すると、仮想ロボットハンド102A(102B)のツールセンタポイントを基準として、仮想ワークW11A(W11B)の任意の仮想点の位置を設定する。列463の場合だと、Z軸の値が「-50」となる。
In the second embodiment, the positional relationship trsf1 is set by setting and capturing the tool center point position of the
連動条件となる、相対的な位置関係trsf1の設定をできれば、「確定」という名称が記載されたボタン465を押下することで、各ワークに対する連動条件を確定することができる。「キャンセル」という名称が記載されたボタン466を押下することで、列463に入力されたパラメータを削除することができる。第2実施形態では、列463において所定のパラメータを選択中に、ボタン466を押下すると、選択中の所定のパラメータが削除される。しかしながら、ボタン466の押下により、列463における全てのパラメータを削除するようにしても構わない。「戻る」という名称が記載されたボタン467を押下することで、図15に示した画像400の表示に戻ることができる。
If the relative positional relationship trsf1, which is the interlocking condition, can be set, the interlocking condition for each work can be confirmed by pressing the
(変形例)
図17は、第2実施形態における連動設定を行うタブ4024の変形例を示した図である。本変形例では、タブ4024で示される表示画面に仮想空間Rを表示した3D表示部403を表示させている。そして、連動条件となる、相対的な位置関係trsf1を、ポインタ470による描画によって設定できるようにしている。描画は、マウス304によるクリック、ドラッグ、及びドロップの少なくとも1つによって実行可能であることが好ましい。図17の例では、ユーザがマウス304により仮想ロボットハンド102A(102B)のツールセンタポイントをクリックし、クリックしたまま仮想ワークW11A(W11B)の仮想点までポインタをドラッグし、仮想ワークW11A(W11B)の仮想点でポインタをドロップすることで、位置関係trsf1を描画し設定している。CPU311は、描画によって設定された位置関係trsf1を、例えば図17に破線で示すモデルで、3D表示部403に表示させる。そしてこの状態から、図17に破線で示すモデルの姿勢を、ユーザがポインタ470で変更させる操作が可能となっている。そして、このようにユーザによってモデルの姿勢が変更されたことを、CPU311は、位置関係trsf1から位置関係trsf1’への変更として受け付けることが可能となっている。なお、本変形例では、仮想ワークW11A(W11B)の任意の仮想点を基準として、仮想ロボットハンド102A(102B)のツールセンタポイントを移動させることで、位置関係trsf1を表すモデルを回転させている。「基準変更」と記載されたボタン468を押下することで、位置関係trsf1の基準を変更することが可能である。図17の状態では、基準表示部469において「ワーク」が表示されているが、ボタン468を押下することで、基準表示部469において「ロボットハンド」が表示される。基準が仮想ロボットハンドの場合に、位置関係trsf1を表すモデルを回転させると、仮想ロボットハンド102A(102B)のツールセンタポイントを基準として、仮想ワークW11A(W11B)の任意の仮想点が移動する。
(Modification)
FIG. 17 is a diagram showing a modified example of the
また、本変形例では、仮想ワークW11A(W11B)の設定を例に取り説明している。しかしながら、ポインタ470により仮想ロボットハンド102A(102B)を、別の仮想ワーク近辺の所定位置に位置させ、ポインタ470によるクリック、ドロップ&ドラッグで別の仮想ワークとの連動条件を設定することも可能である。
Also, in this modified example, the setting of the virtual work W11A (W11B) is taken as an example. However, it is also possible to use the
そして所望の位置関係trsf1を描画することができたら、ボタン465を押下することで、描画した位置関係trsf1を連動条件として確定することができる。ボタン466を押下することで、仮想空間R上に描画した、連動条件となる位置姿勢を削除することができる。本変形例では、仮想空間R上において所定の位置姿勢を選択中に、ボタン466を押下すると、選択中の所定の位置姿勢が削除される。しかしながら、ボタン466の押下により、仮想空間R上における全ての位置姿勢を削除するようにしても構わない。ボタン467を押下することで、図15に示した画像400の表示に戻ることができる。
Then, when the desired positional relationship trsf1 can be drawn, pressing the
以上、第2実施形態及びその変形例では、仮想ロボットハンド102Aと仮想ワークW11Aおよび他の仮想ワークとの連動条件を容易に設定することができる。これにより、仮想ワークW11Aを真上から把持するような場合だけでなく、仮想ワークW11Aを真横から把持するような場合なども、ユーザによって連動条件を容易に設定できる。このため、ユーザは、様々なワークおよびロボットの挙動のシミュレート作業を容易に行うことが可能となり、シミュレーションに係るユーザの作業性を向上させることができる。よって、ユーザは、シミュレート作業に基づくロボット100の教示を容易に行うことができる。なお、情報処理装置または情報処理方法において、第2実施形態またはその変形例と、上述の第1実施形態またはその変形例とを組み合わせて実施しても構わない。また、情報処理装置または情報処理方法において、図16を用いて述べた第2実施形態と図17を用いて述べた第2実施形態の変形例とを組み合わせて実施しても構わない。
As described above, in the second embodiment and its modification, it is possible to easily set conditions for interlocking the
本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。また、実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されない。 The present invention is not limited to the embodiments described above, and many modifications are possible within the technical concept of the present invention. Moreover, the effects described in the embodiments are merely enumerations of the most suitable effects resulting from the present invention, and the effects of the present invention are not limited to those described in the embodiments.
上述の実施形態では、ロボットアームが垂直多関節のロボットアームの場合について説明したが、これに限定するものではない。ロボットアームが、例えば、水平多関節のロボットアーム、パラレルリンクのロボットアーム、直交ロボット等、種々のロボットアームであってもよい。また、制御装置に設けられる記憶装置の情報に基づき、伸縮、屈伸、上下移動、左右移動もしくは旋回の動作、またはこれらの複合動作を自動的に行うことができる機械によってワークを搬送させる動作のシミュレートに実施しても構わない。 In the above-described embodiment, the case where the robot arm is a vertically articulated robot arm has been described, but the present invention is not limited to this. The robot arm may be, for example, a horizontal articulated robot arm, a parallel link robot arm, an orthogonal robot, or various other robot arms. In addition, based on the information in the storage device provided in the control device, it simulates the operation of conveying the work by a machine that can automatically perform expansion, contraction, bending, vertical movement, horizontal movement, turning, or a combination of these operations. It is permissible to implement
また、上述の実施形態では、情報処理装置300は、仮想ロボットの動作情報として、教示点の情報を含む教示データを出力する場合について説明したが、これに限定するものではない。情報処理装置300は、仮想ロボットの動作情報として、教示データから計算して得られる軌道データを出力するようにしてもよい。
In the above-described embodiment, the
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that implements one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in the computer of the system or apparatus reads and executes the program. It can also be realized by processing to It can also be implemented by a circuit (for example, ASIC) that implements one or more functions.
100…ロボット、100A…仮想ロボット、200…制御装置、300…情報処理装置、311…CPU(情報処理部)、1000…ロボットシステム
DESCRIPTION OF
Claims (27)
前記情報処理部は、
前記仮想ワークを前記仮想ロボットの所定部位と連動させるための連動条件を設定する処理を実行可能である、
ことを特徴とする情報処理装置。 Equipped with an information processing unit capable of simulating the behavior of a virtual robot and a virtual work in a virtual environment,
The information processing unit
a process of setting an interlocking condition for interlocking the virtual work with a predetermined part of the virtual robot;
An information processing device characterized by:
前記仮想環境における前記仮想ワークと前記所定部位との相対的な位置関係を、前記連動条件として設定する、
ことを特徴とする請求項1に記載の情報処理装置。 The information processing unit
setting a relative positional relationship between the virtual work and the predetermined portion in the virtual environment as the interlocking condition;
The information processing apparatus according to claim 1, characterized by:
パラメータの入力による前記連動条件の設定を受け付ける、
ことを特徴とする請求項1または2に記載の情報処理装置。 The information processing unit
Receiving setting of the interlocking condition by inputting parameters;
3. The information processing apparatus according to claim 1, wherein:
前記仮想環境における前記仮想ワークと前記所定部位との相対的な位置関係を取得するボタンを表示させ、
前記ボタンが押下されることで取得した、前記仮想環境における前記仮想ワークと前記所定部位との相対的な位置関係を、前記連動条件として設定する、
ことを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。 The information processing unit
displaying a button for obtaining a relative positional relationship between the virtual work and the predetermined part in the virtual environment;
setting a relative positional relationship between the virtual work and the predetermined part in the virtual environment, which is obtained by pressing the button, as the interlocking condition;
4. The information processing apparatus according to any one of claims 1 to 3, characterized by:
前記所定部位を設定できる設定ボックスを表示させる、
ことを特徴とする請求項1から4のいずれか1項に記載の情報処理装置。 The information processing unit
displaying a setting box in which the predetermined part can be set;
5. The information processing apparatus according to any one of claims 1 to 4, characterized in that:
前記仮想環境において、描画による前記連動条件の設定を受け付ける、
ことを特徴とする請求項1から5のいずれか1項に記載の情報処理装置。 The information processing unit
receiving setting of the interlocking condition by drawing in the virtual environment;
6. The information processing apparatus according to any one of claims 1 to 5, characterized by:
前記描画によって設定された前記連動条件をモデルで表示させる、
ことを特徴とする請求項6に記載の情報処理装置。 The information processing unit
displaying the interlocking condition set by the drawing in a model;
7. The information processing apparatus according to claim 6, characterized by:
ことを特徴とする請求項6に記載の情報処理装置。 the drawing can be performed by at least one of clicking, dragging, and dropping with a mouse;
7. The information processing apparatus according to claim 6, characterized by:
前記モデルの姿勢を変更する操作を受け付ける、
ことを特徴とする請求項7に記載の情報処理装置。 The information processing unit
receiving an operation to change the posture of the model;
8. The information processing apparatus according to claim 7, characterized by:
前記仮想環境における、前記仮想ワークの制御上の第1位置と前記所定部位の制御上の第2位置との相対的な位置関係を、前記連動条件として設定する、
ことを特徴とする請求項1から9のいずれか1項に記載の情報処理装置。 The information processing unit
setting a relative positional relationship between a first control position of the virtual workpiece and a second control position of the predetermined part in the virtual environment as the interlocking condition;
10. The information processing apparatus according to any one of claims 1 to 9, characterized by:
前記ボタンを、前記仮想ワークに対応させて表示させる、
ことを特徴とする請求項4に記載の情報処理装置。 The information processing unit
displaying the button corresponding to the virtual work;
5. The information processing apparatus according to claim 4, characterized by:
前記連動条件における、前記仮想ワークと前記所定部位との相対的な位置関係の基準を変更するボタンを表示させる、
ことを特徴とする請求項1から3のいずれか1項に記載の情報処理装置。 The information processing unit
displaying a button for changing the reference of the relative positional relationship between the virtual work and the predetermined part in the interlocking condition;
4. The information processing apparatus according to any one of claims 1 to 3, characterized by:
前記基準を表示させる、
ことを特徴とする請求項12に記載の情報処理装置。 The information processing unit
causing the criteria to be displayed;
13. The information processing apparatus according to claim 12, characterized by:
前記仮想ロボット及び前記仮想ワークが、対象と接触しない前記仮想ロボットの動作を取得する処理を実行可能である、
ことを特徴とする請求項1から13のいずれか1項に記載の情報処理装置。 The information processing unit
The virtual robot and the virtual work are capable of executing a process of acquiring motions of the virtual robot that do not come into contact with an object.
14. The information processing apparatus according to any one of claims 1 to 13, characterized by:
前記仮想ワークを前記仮想ロボットと連動させるか否かを選択し、
前記仮想ワークを前記仮想ロボットと連動させることを選択した場合に、前記処理において、前記仮想ワークを前記仮想ロボットと連動させて、前記仮想ロボット及び前記仮想ワークが前記対象と接触しない前記仮想ロボットの動作を取得する、
ことを特徴とする請求項14に記載の情報処理装置。 The information processing unit
selecting whether or not to interlock the virtual work with the virtual robot;
When it is selected to interlock the virtual work with the virtual robot, in the processing, the virtual work is interlocked with the virtual robot so that the virtual robot and the virtual work do not come into contact with the target. to get the behavior,
15. The information processing apparatus according to claim 14, characterized by:
ことを特徴とする請求項1から15のいずれか1項に記載の情報処理装置。 wherein the predetermined site is a virtual end effector;
16. The information processing apparatus according to any one of claims 1 to 15, characterized by:
前記所定部位と前記仮想ワークとの相対的な位置関係を維持することで、前記仮想ワークを前記所定部位と連動させる、
ことを特徴とする請求項1から16のいずれか1項に記載の情報処理装置。 The information processing unit
interlocking the virtual work with the predetermined part by maintaining a relative positional relationship between the predetermined part and the virtual work;
17. The information processing apparatus according to any one of claims 1 to 16, characterized by:
ことを特徴とする請求項14に記載の情報処理装置。 The target is set individually for each of the predetermined part and the virtual work,
15. The information processing apparatus according to claim 14, characterized by:
前記所定部位に対する前記対象の設定を受け付ける、
ことを特徴とする請求項14に記載の情報処理装置。 The information processing unit
Receiving setting of the target for the predetermined part;
15. The information processing apparatus according to claim 14, characterized by:
前記所定部位と連動させる場合の前記仮想ワークに対する前記対象を、前記所定部位に対して設定された前記対象に基づいて設定する、
ことを特徴とする請求項19に記載の情報処理装置。 The information processing unit
setting the target for the virtual work when interlocking with the predetermined part based on the target set for the predetermined part;
20. The information processing apparatus according to claim 19, characterized by:
第1教示点及び第2教示点の設定を受け付け、
前記仮想ワークを前記仮想ロボットと連動させて前記仮想ロボットを前記第1教示点から前記第2教示点へ動作させる場合の、前記第1教示点と前記第2教示点との間の中間教示点を取得する、
ことを特徴とする請求項14に記載の情報処理装置。 The information processing unit
Receiving the setting of the first teaching point and the second teaching point,
An intermediate teaching point between the first teaching point and the second teaching point when the virtual work is interlocked with the virtual robot to move the virtual robot from the first teaching point to the second teaching point. to get the
15. The information processing apparatus according to claim 14, characterized by:
ことを特徴とする請求項14に記載の情報処理装置。 an algorithm for acquiring the motion of the virtual robot is RRT;
15. The information processing apparatus according to claim 14, characterized by:
ロボットと、
前記情報処理装置よって取得される前記仮想ロボットの動作情報を取得し、前記動作情報に基づいて前記ロボットを制御する制御装置と、を備える、
ことを特徴とするロボットシステム。 an information processing apparatus according to any one of claims 1 to 22;
robot and
a control device that acquires motion information of the virtual robot acquired by the information processing device and controls the robot based on the motion information;
A robot system characterized by:
ことを特徴とする物品の製造方法。 Manufacturing an article using the robotic system of claim 23,
A method for manufacturing an article characterized by:
前記情報処理部によって、前記仮想ワークを前記仮想ロボットの所定部位と連動させるための連動条件を設定する処理を実行する、
ことを特徴とする情報処理方法。 An information processing method in which an information processing unit simulates the behavior of a virtual robot and a virtual work in a virtual environment,
The information processing unit executes a process of setting an interlocking condition for interlocking the virtual work with a predetermined part of the virtual robot;
An information processing method characterized by:
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22156487.5A EP4052865A1 (en) | 2021-03-05 | 2022-02-14 | Information processing apparatus, robot system, information processing method, program, and recording medium |
US17/680,491 US20220281103A1 (en) | 2021-03-05 | 2022-02-25 | Information processing apparatus, robot system, method of manufacturing products, information processing method, and recording medium |
CN202210201989.7A CN115008439A (en) | 2021-03-05 | 2022-03-03 | Information processing apparatus and method, robot system, product manufacturing method, and computer program product |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021035217 | 2021-03-05 | ||
JP2021035217 | 2021-03-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2022135939A true JP2022135939A (en) | 2022-09-15 |
Family
ID=83231141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022011329A Pending JP2022135939A (en) | 2021-03-05 | 2022-01-27 | Information processor, robot system, article manufacturing method, information processing method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2022135939A (en) |
-
2022
- 2022-01-27 JP JP2022011329A patent/JP2022135939A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7009051B2 (en) | Layout setting method, control program, recording medium, control device, parts manufacturing method, robot system, robot control device, information processing method, information processing device | |
Fang et al. | Interactive robot trajectory planning and simulation using augmented reality | |
US7099747B2 (en) | Motion editing apparatus and method for robot device, and computer program | |
EP1842631B1 (en) | Apparatus and method for automatic path generation for an industrial robot | |
JP4137909B2 (en) | Robot program correction device | |
JP6469159B2 (en) | Offline programming apparatus and method with work position detection program generation function by contact sensor | |
US20170197308A1 (en) | Teaching data generating device and teaching data-generating method for work robot | |
US20220395985A1 (en) | Information processing apparatus, information processing method, display apparatus, display method, robot system, article production method, program, and storage medium | |
He et al. | Haptic-aided robot path planning based on virtual tele-operation | |
Wojtynek et al. | Assisted planning and setup of collaborative robot applications in modular production systems | |
JP2019171498A (en) | Robot program execution device, robot program execution method and program | |
JPS6179589A (en) | Operating device for robot | |
JPH10124130A (en) | Assembling device | |
JP7475841B2 (en) | Information processing method, robot system, article manufacturing method, and information processing device | |
EP4052865A1 (en) | Information processing apparatus, robot system, information processing method, program, and recording medium | |
JP3614824B2 (en) | Motion editing apparatus and motion editing method for legged mobile robot | |
JP5447811B2 (en) | Path plan generation apparatus and method, robot control apparatus and robot system | |
JP2022135939A (en) | Information processor, robot system, article manufacturing method, information processing method, program, and recording medium | |
WO2021149419A1 (en) | Simulation device, and simulation program | |
WO2021106517A1 (en) | Information presenting device, information presenting method, and information presenting program | |
JP2009166172A (en) | Simulation method and simulator for robot | |
JPH08286722A (en) | Off-line teaching method using cad data and its system | |
JPH06134684A (en) | Teaching method of robot track | |
JP2000112510A (en) | Robot teaching method and its device | |
Wojtynek et al. | InteractiveWorkspace Layout focusing on the reconfiguration with collaborative robots in modular production systems |