Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7657170B2 - Correction device, correction method, and correction program - Google Patents
[go: Go Back, main page]

JP7657170B2 - Correction device, correction method, and correction program - Google Patents

Correction device, correction method, and correction program Download PDF

Info

Publication number
JP7657170B2
JP7657170B2 JP2022034951A JP2022034951A JP7657170B2 JP 7657170 B2 JP7657170 B2 JP 7657170B2 JP 2022034951 A JP2022034951 A JP 2022034951A JP 2022034951 A JP2022034951 A JP 2022034951A JP 7657170 B2 JP7657170 B2 JP 7657170B2
Authority
JP
Japan
Prior art keywords
end effector
correction
workpiece
design information
action
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022034951A
Other languages
Japanese (ja)
Other versions
JP2023130586A (en
Inventor
博樹 武田
大毅 梶田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2022034951A priority Critical patent/JP7657170B2/en
Publication of JP2023130586A publication Critical patent/JP2023130586A/en
Application granted granted Critical
Publication of JP7657170B2 publication Critical patent/JP7657170B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、データを修正する修正装置、修正方法、および修正プログラムに関する。 The present invention relates to a data correction device, a data correction method, and a data correction program.

既存の製造ラインにおいて生産する品種を変更する際に、ロボットの手先に装着した溶接ガンや開閉把持ハンドのようなエンドエフェクタとワークとの干渉が避けられず、エンドエフェクタの寸法を修正する工数が発生する場合がある。 When changing the type of product being produced on an existing manufacturing line, interference between the workpiece and end effectors, such as welding guns or open/close gripping hands attached to the robot's hands, cannot be avoided, and labor may be required to modify the dimensions of the end effectors.

また、下記特許文献1は、冗長性を有する作業対象物に対してロボットの腕が届く範囲が最大限となるように産業用ロボットの位置、姿勢を制御する産業用ロボットの位置制御方法を開示する。この方法は、6軸以上の自由度を持ち、空間上の直交座標系で目標制御点(マトリックス:Tcp)の位置、姿勢を与えられたとき、Tcp=TbTwTfTe(Tbは3本の基本軸J1、J2、J3で決定される位置マトリックス;Twは3本の手首軸でとる姿勢マトリックス;Tfは工具の取付けフランジマトリックス;Teは工具のエンドエフェクタマトリックス)の関係からロボットの位置を制御する。この場合Tbの取り得る位置集合である、目標のTcpの位置を原点としたベクトルVの冗長軸方向の点Pvを原点とした円周上で、ロボット演算原点T0からの距離が最小となる点Pb’をTcpの直交成分となるように目標TcpをTcp’として求め直し、このTcp’を逆運動学変換し、導出した各関節座標系の各軸の位置を動作目標とする。 Furthermore, the following Patent Document 1 discloses a position control method for an industrial robot that controls the position and posture of the industrial robot so as to maximize the reach of the robot's arm to a work object having redundancy. This method has six or more degrees of freedom, and when the position and posture of a target control point (matrix: oTcp ) is given in a Cartesian coordinate system in space, the position of the robot is controlled based on the relationship: oTcp = oTb bTw wTf fTe ( oTb is a position matrix determined by three basic axes J1, J2, J3; bTw is a posture matrix taken by three wrist axes; wTf is a mounting flange matrix for the tool; fTe is an end effector matrix for the tool). In this case, on a circumference having a point Pv in the redundant axis direction of vector V with the position of the target oTcp as its origin, which is a set of possible positions of oTb , the target oTcp is re-obtained as oTcp ' so that point Pb' which is the smallest distance from the robot calculation origin T0 becomes an orthogonal component of oTcp , and this oTcp ' is subjected to inverse kinematic transformation, and the positions of each axis of each derived joint coordinate system are set as the operation targets.

また、下記特許文献2は、ロボットのハンド装置を開示する。このハンド装置は、ロボットアームに装着する本体フレームに、固定側ロケートピンと、移動自在な可動側ロケートピンと、可動側ロケートピンの移動を拘束解除する固定手段を備え、不動の位置に、可動側ロケートピンが係脱する位置出し手段を備えたハンド装置とし、ロボットの動作制御を利用して両ロケートピンの位置関係を無段階に調整可能にし、1台で多種類のワークのハンドリングを可能にする。 The following Patent Document 2 discloses a hand device for a robot. This hand device is equipped with a fixed locating pin, a movable locating pin, and a fixing means for releasing the restriction on the movement of the movable locating pin on a main body frame attached to a robot arm, and a positioning means for engaging and disengaging the movable locating pin at a fixed position. The positional relationship between the two locating pins can be adjusted steplessly by utilizing the motion control of the robot, making it possible to handle many types of workpieces with a single unit.

特開2002-301672号公報JP 2002-301672 A 特開2000-167791号公報JP 2000-167791 A

しなしながら、上述した従来技術では、複数の作用位置のすべてにおいてエンドエフェクタがワークと干渉しないような姿勢をとることが可能な自動修正については考慮されていない。 However, the above-mentioned conventional technology does not take into consideration automatic correction that enables the end effector to assume a posture that does not interfere with the workpiece in all multiple operating positions.

本発明は、複数の作用位置で干渉しないようにエンドエフェクタの寸法を修正することを目的とする。 The present invention aims to modify the dimensions of the end effector so that it does not interfere with multiple operating positions.

本願において開示される発明の一側面となる修正装置は、エンドエフェクタに関する設計情報と、前記エンドエフェクタにより作用される複数の作用位置を有するワークに関する設計情報と、を取得する取得部と、前記エンドエフェクタに関する設計情報および前記ワークに関する設計情報に基づいて、前記ワークと干渉せずに前記ワークの作用位置で作用可能に配置された前記エンドエフェクタの第1姿勢を、前記作用位置ごとに算出する算出部と、前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記第1姿勢が存在しない作用位置が1つでも存在する場合、前記算出部による算出結果に基づいて、前記エンドエフェクタを構成する部品の寸法を修正する修正部と、を有し、前記算出部は、前記第1姿勢が存在しない作用位置での前記エンドエフェクタの第2姿勢について、前記ワークと前記エンドエフェクタとの干渉が解消する干渉解消方向を特定し、前記エンドエフェクタを構成する部品群の中から、前記干渉解消方向と前記部品群の各々の部品が有する方向との角度差に基づいて、修正対象部品を選択し、前記修正部は、前記修正対象部品の寸法を修正する、ことを特徴とする。
A correction device according to one aspect of the invention disclosed in the present application includes an acquisition unit that acquires design information related to an end effector and design information related to a workpiece having a plurality of action positions acted upon by the end effector; a calculation unit that calculates, for each action position, a first attitude of the end effector that is positioned so as to be able to act at the action position of the workpiece without interfering with the workpiece based on the design information related to the end effector and the design information related to the workpiece; and a correction unit that determines whether the first attitude exists in all of the plurality of action positions, and if there is at least one action position at which the first attitude does not exist, corrects dimensions of a component that constitutes the end effector based on a calculation result by the calculation unit, wherein the calculation unit specifies an interference resolution direction in which interference between the workpiece and the end effector is resolved for a second attitude of the end effector at an action position at which the first attitude does not exist, and selects a correction target component from a group of components that constitute the end effector based on an angle difference between the interference resolution direction and a direction of each component in the group of components, and the correction unit corrects the dimensions of the correction target component .

本発明の代表的な実施の形態によれば、複数の作用位置で干渉しないようにエンドエフェクタの寸法を修正することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to a representative embodiment of the present invention, the dimensions of the end effector can be modified so as not to interfere with each other at multiple operating positions. Problems, configurations, and advantages other than those described above will become clear from the description of the following examples.

図1は、実施例1にかかる修正装置によるエンドエフェクタの寸法の修正例を示す説明図である。FIG. 1 is an explanatory diagram showing an example of dimensional correction of an end effector by a correction device according to a first embodiment. 図2は、修正装置のハードウェア構成例を示すブロック図である。FIG. 2 is a block diagram illustrating an example of a hardware configuration of the correction device. 図3は、エンドエフェクタ設計情報の一例を示す説明図である。FIG. 3 is an explanatory diagram illustrating an example of end effector design information. 図4は、ワークの一例を示す斜視図である。FIG. 4 is a perspective view showing an example of a workpiece. 図5は、ワーク設計情報の一例を示す説明図である。FIG. 5 is an explanatory diagram illustrating an example of work design information. 図6は、作用位置情報の一例を示す説明図である。FIG. 6 is an explanatory diagram showing an example of the action position information. 図7は、探索パラメタ情報の一例を示す説明図である。FIG. 7 is an explanatory diagram illustrating an example of search parameter information. 図8は、実施例1にかかる修正装置による修正処理手順例を示すフローチャートである。FIG. 8 is a flowchart of an example of a procedure of a correction process performed by the correction device according to the first embodiment. 図9は、図8に示した配置可能エンドエフェクタ姿勢算出処理(ステップS802)の詳細な処理手順例を示すフローチャートである。FIG. 9 is a flowchart illustrating an example of a detailed process procedure of the process of calculating the position of the deployable end effector (step S802) illustrated in FIG. 図10は、図8に示したエンドエフェクタ寸法修正処理(ステップS803)の詳細な処理手順例を示すフローチャートである。FIG. 10 is a flowchart illustrating a detailed example of the process of correcting the end effector dimension (step S803) illustrated in FIG. 図11は、配置可能エンドエフェクタを示すエンドエフェクタ設計情報300の一例を示す説明図である。FIG. 11 is an explanatory diagram showing an example of end effector design information 300 indicating deployable end effectors. 図12は、配置可能エンドエフェクタ姿勢情報の一例を示す説明図である。FIG. 12 is an explanatory diagram illustrating an example of the positionable end effector posture information. 図13は、寸法修正情報の一例を示す説明図である。FIG. 13 is an explanatory diagram showing an example of the dimension correction information. 図14は、実施例1にかかる出力データを表示する表示画面の一例を示す説明図である。FIG. 14 is a diagram illustrating an example of a display screen that displays output data according to the first embodiment. 図15は、ロボットアーム、エンドエフェクタ、ワークおよび治具の配置関係の一例を示す説明図である。FIG. 15 is an explanatory diagram showing an example of the arrangement relationship between the robot arm, the end effector, the workpiece, and the jig. 図16は、ロボットアームの軌道算出例を示す説明図である。FIG. 16 is an explanatory diagram showing an example of calculating the trajectory of a robot arm. 図17は、ロボットアーム設計情報の一例を示す説明図である。FIG. 17 is an explanatory diagram illustrating an example of robot arm design information. 図18は、治具設計情報の一例を示す説明図である。FIG. 18 is an explanatory diagram illustrating an example of the jig design information. 図19は、実施例2にかかる修正装置による修正処理手順例を示すフローチャートである。FIG. 19 is a flowchart of an example of a procedure of a correction process performed by the correction device according to the second embodiment. 図20は、図19に示したロボットアーム軌道生成処理(ステップS1904)の詳細な処理手順例を示すフローチャートである。FIG. 20 is a flowchart illustrating a detailed example of the robot arm trajectory generation process (step S1904) illustrated in FIG. 図21は、ロボットアーム軌道情報の一例を示す説明図である。FIG. 21 is an explanatory diagram illustrating an example of the robot arm trajectory information. 図22は、実施例2にかかる出力データを表示する表示画面の一例を示す説明図である。FIG. 22 is a diagram illustrating an example of a display screen that displays output data according to the second embodiment.

修正装置は、設計情報からエンドエフェクタの寸法を自動修正するコンピュータであり、設計段階において、エンドエフェクタの寸法を修正する工数を削減することができる。エンドエフェクタは、6軸アームのような産業用ロボットのロボットアームの先端に取り付ける機器であり、たとえば、溶接ガン、開閉把持ハンド、トルクドライバ、エンドミルがある。 The correction device is a computer that automatically corrects the dimensions of the end effector from the design information, and can reduce the amount of work required to correct the dimensions of the end effector during the design stage. An end effector is a device that is attached to the tip of an industrial robot arm such as a six-axis arm, and examples of such devices include welding guns, open/close gripping hands, torque drivers, and end mills.

本明細書のエンドエフェクタは、特に断りがない限り実物のエンドエフェクタではなく、エンドエフェクタの設計情報、つまり、3次元のグラフィックデータ(たとえば、3次元CADデータ)である。エンドエフェクタの作業対象となるワークについても同様である。また、エンドエフェクタやワークの3次元のグラフィックデータはそれぞれローカル座標系で規定されるが、修正装置で寸法修正を実行する場合、座標変換によりエンドエフェクタやワークは共通のグローバル座標系に配置される。エンドエフェクタが装着されるロボットアームやワークが保持される治具についても同様である。 Unless otherwise specified, the end effector in this specification does not refer to an actual end effector, but rather to the design information for the end effector, that is, three-dimensional graphic data (e.g., three-dimensional CAD data). The same applies to the workpiece that the end effector works on. Also, the three-dimensional graphic data for the end effector and workpiece are each defined in a local coordinate system, but when dimensional correction is performed using a correction device, the end effector and workpiece are placed in a common global coordinate system through coordinate transformation. The same applies to the robot arm to which the end effector is attached and the jig that holds the workpiece.

また、エンドエフェクタとワークとの干渉とは、文字通りエンドエフェクタとワークとが重複することを示すが、ワークの作用位置でのエンドエフェクタの接触は含まない。たとえば、エンドエフェクタが開閉把持ハンドである場合、エンドエフェクタは作用位置を把持することでワークと接触するが、この接触は、「干渉」ではない。すなわち、干渉とは、作用位置以外でエンドエフェクタとワークとが重複することである。 In addition, interference between an end effector and a workpiece literally means that the end effector and the workpiece overlap, but does not include contact of the end effector at the workpiece's operating position. For example, if the end effector is an open/close gripping hand, the end effector will come into contact with the workpiece by gripping the operating position, but this contact is not "interference." In other words, interference is when the end effector and the workpiece overlap at a position other than the operating position.

図1は、実施例1にかかる修正装置によるエンドエフェクタの寸法の修正例を示す説明図である。図1に示すエンドエフェクタ100は、略Cの字形状をした溶接ガンであり、支持部101を有する。支持部101の両端で屈曲した一対の溶接部102,103の先端104,105が対応しあうように屈曲されている。先端104,105間の空隙にワーク110が挿入された状態が、エンドエフェクタ100が溶接可能な状態である。 Figure 1 is an explanatory diagram showing an example of end effector dimension correction using a correction device according to Example 1. The end effector 100 shown in Figure 1 is a welding gun that is roughly C-shaped and has a support part 101. Tips 104, 105 of a pair of welding parts 102, 103 bent at both ends of the support part 101 are bent so that they correspond to each other. When a workpiece 110 is inserted into the gap between the tips 104, 105, the end effector 100 is ready to weld.

なお、支持部101、一対の溶接部102,103で囲まれた空洞部の奥行きを懐深さdといい、一対の溶接部102,103の長さである。また、wは支持部101、一対の溶接部102,103の幅であり、gは一対の溶接部102,103であり、支持部101の長さである。 The depth of the cavity surrounded by the support portion 101 and the pair of welded portions 102, 103 is called the bore depth d, which is the length of the pair of welded portions 102, 103. Also, w is the width of the support portion 101 and the pair of welded portions 102, 103, and g is the pair of welded portions 102, 103 and the length of the support portion 101.

(1)配置可能エンドエフェクタ姿勢算出
修正装置は、まず、ワーク110を配置可能なエンドエフェクタ100の姿勢を算出する。先端104,105で溶接されるワーク110の位置を作用位置apと称す。先端104,105および作用位置apを通る直線をワーク110の法線111とする。修正装置は、法線111を回転軸としてワーク110を小刻みに回転させ、ワーク110が支持部101に干渉する場合のエンドエフェクタ100の姿勢を計算する。この計算により、干渉領域120が検出されたとする。干渉領域120とは、修正装置が計算したワーク110と支持部101との重複領域である。
(1) Calculation of Positionable End Effector Attitude The correction device first calculates the attitude of the end effector 100 at which the workpiece 110 can be placed. The position of the workpiece 110 to be welded by the tips 104, 105 is called the action position ap. A straight line passing through the tips 104, 105 and the action position ap is set as a normal line 111 of the workpiece 110. The correction device rotates the workpiece 110 in small increments around the normal line 111 as a rotation axis, and calculates the attitude of the end effector 100 when the workpiece 110 interferes with the support portion 101. It is assumed that an interference area 120 is detected by this calculation. The interference area 120 is an overlapping area between the workpiece 110 and the support portion 101 calculated by the correction device.

(2)エンドエフェクタ寸法修正
修正装置は、干渉領域120が検出されると、干渉が解消される方向(干渉解消方向)130に一対の溶接部102,103を伸ばすことで、エンドエフェクタ100の寸法を修正して干渉を解消する。具体的には、たとえば、修正装置は、懐深さdをdr(>d)に修正する。
(2) End effector dimension correction When the interference area 120 is detected, the correction device extends the pair of welds 102, 103 in a direction (interference eliminating direction) 130 in which the interference is eliminated, thereby correcting the dimension of the end effector 100 and eliminating the interference. Specifically, for example, the correction device corrects the bore depth d to dr (>d).

<修正装置のハードウェア構成例>
図2は、修正装置のハードウェア構成例を示すブロック図である。修正装置200は、プロセッサ201と、記憶デバイス202と、入力デバイス203と、出力デバイス204と、通信インターフェース(通信IF)205と、を有する。プロセッサ201、記憶デバイス202、入力デバイス203、出力デバイス204、および通信IF205は、バス206により接続される。プロセッサ201は、修正装置200を制御する。記憶デバイス202は、プロセッサ201の作業エリアとなる。また、記憶デバイス202は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス202としては、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリがある。入力デバイス203は、データを入力する。入力デバイス203としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナ、マイク、センサがある。出力デバイス204は、データを出力する。出力デバイス204としては、たとえば、ディスプレイ、プリンタ、スピーカがある。通信IF205は、ネットワークと接続し、データを送受信する。
<Example of hardware configuration of repair device>
2 is a block diagram showing an example of a hardware configuration of the correction device. The correction device 200 has a processor 201, a storage device 202, an input device 203, an output device 204, and a communication interface (communication IF) 205. The processor 201, the storage device 202, the input device 203, the output device 204, and the communication IF 205 are connected by a bus 206. The processor 201 controls the correction device 200. The storage device 202 is a working area for the processor 201. The storage device 202 is a non-temporary or temporary recording medium that stores various programs and data. Examples of the storage device 202 include a ROM (Read Only Memory), a RAM (Random Access Memory), a HDD (Hard Disk Drive), and a flash memory. The input device 203 inputs data. The input device 203 may be, for example, a keyboard, a mouse, a touch panel, a numeric keypad, a scanner, a microphone, or a sensor. The output device 204 outputs data. The output device 204 may be, for example, a display, a printer, or a speaker. The communication IF 205 connects to a network and transmits and receives data.

<エンドエフェクタ設計情報>
図3は、エンドエフェクタ設計情報の一例を示す説明図である。エンドエフェクタ設計情報は、修正装置200の記憶デバイス202または修正装置200と通信可能な他のコンピュータの記憶デバイスに格納される。
<End effector design information>
3 is a diagram illustrating an example of end effector design information. The end effector design information is stored in the storage device 202 of the correction device 200 or in a storage device of another computer that can communicate with the correction device 200.

エンドエフェクタ設計情報300は、エンドエフェクタ100の設計情報、つまり、エンドエフェクタ100の3次元形状を示すグラフィックデータである。図3では、エンドエフェクタ設計情報300をテーブル形式で表現する。 The end effector design information 300 is design information for the end effector 100, i.e., graphic data showing the three-dimensional shape of the end effector 100. In FIG. 3, the end effector design information 300 is represented in a table format.

エンドエフェクタ設計情報300は、フィールドとして、部品301と、配置位置姿勢302と、面情報303と、寸法304と、を有する。部品301は、エンドエフェクタ100を構成する1つの要素(構成要素)であり、部品301を一意に特定する値として「Pe1」、「Pe2」、「Pe3」、…を保持する。具体的には、たとえば、「Pe1」は支持部101を示し、「Pe2」は溶接部102を示し、「Pe3」は溶接部103を示す。 End effector design information 300 has fields including part 301, placement position/posture 302, surface information 303, and dimensions 304. Part 301 is one element (component) that constitutes end effector 100, and holds "Pe1", "Pe2", "Pe3", ... as values that uniquely identify part 301. Specifically, for example, "Pe1" indicates support part 101, "Pe2" indicates welded part 102, and "Pe3" indicates welded part 103.

配置位置姿勢302は、エンドエフェクタ100をそのローカル座標系に配置した場合の部品301の姿勢であり、配置位置姿勢302を一意に特定する値として「Qe1」、「Qe2」、「Qe3」、…を保持する。具体的には、たとえば、「Qe1」は支持部101の頂点座標値群であり、「Qe2」は溶接部102の頂点座標値群であり、「Qe3」は溶接部103の頂点座標値群である。 The placement position and orientation 302 is the orientation of the part 301 when the end effector 100 is placed in its local coordinate system, and holds "Qe1", "Qe2", "Qe3", ... as values that uniquely identify the placement position and orientation 302. Specifically, for example, "Qe1" is a group of vertex coordinate values of the support part 101, "Qe2" is a group of vertex coordinate values of the welded part 102, and "Qe3" is a group of vertex coordinate values of the welded part 103.

面情報303は、部品301の面に関する情報であり、面情報303を一意に特定する値として「Se11」、「Se12」、…、「Se21」、「Se22」、…、「Se31」、「Se32」、…を保持する。具体的には、たとえば、「Se11」、「Se12」、…の各々は、支持部101の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。また、「Se21」、「Se22」、…の各々は、溶接部102の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。また、「Se31」、「Se32」、…の各々は、溶接部103の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。 The face information 303 is information about the faces of the part 301, and holds "Se11", "Se12", ..., "Se21", "Se22", ..., "Se31", "Se32", ... as values that uniquely identify the face information 303. Specifically, for example, each of "Se11", "Se12", ... indicates polygon data that constitutes the face of the support part 101, and includes a vertex coordinate value group and a normal vector of the polygon data. Also, each of "Se21", "Se22", ... indicates polygon data that constitutes the face of the welded part 102, and includes a vertex coordinate value group and a normal vector of the polygon data. Also, each of "Se31", "Se32", ... indicates polygon data that constitutes the face of the welded part 103, and includes a vertex coordinate value group and a normal vector of the polygon data.

寸法304は、部品301の長さに関する情報であり、サブフィールドとして、種類341と、方向342と、数値343と、を有する。 Dimension 304 is information about the length of part 301, and has subfields type 341, direction 342, and value 343.

種類341は、寸法304を分類した複数の組み合わせであり、種類341を一意に特定する値として、たとえば、上述した懐深さd、幅w、間隔gがある。部品301が「Pe1」の場合、溶接部102であるため、種類341は懐深さdおよび幅wの組み合わせとなる。部品301が「Pe2」の場合、支持部101であるため、種類341は間隔gおよび幅wの組み合わせとなる。 Type 341 is a combination of multiple classifications of dimensions 304, and values that uniquely identify type 341 include, for example, the above-mentioned depth d, width w, and spacing g. When part 301 is "Pe1", it is a welded portion 102, so type 341 is a combination of depth d and width w. When part 301 is "Pe2", it is a support portion 101, so type 341 is a combination of spacing g and width w.

方向342は、エンドエフェクタ100をローカル座標系に配置した場合の種類341によって特定される寸法304の向きを示す。たとえば、部品301が「Pe1」(支持部101)の種類341である間隔gの方向342を一意に特定する値dg1は、図1に示したように、Z方向を示すベクトル(0,0,1)である。また、その幅wの方向342を一意に特定する値dw1は、図1に示したように、Y方向を示すベクトル(0,1,0)である。 The direction 342 indicates the orientation of the dimension 304 specified by the type 341 when the end effector 100 is placed in the local coordinate system. For example, the value dg1 that uniquely specifies the direction 342 of the spacing g when the part 301 is of type 341 "Pe1" (support part 101) is a vector (0,0,1) indicating the Z direction as shown in FIG. 1. Furthermore, the value dw1 that uniquely specifies the direction 342 of the width w is a vector (0,1,0) indicating the Y direction as shown in FIG. 1.

また、部品301が「Pe2」(溶接部102)の種類341である懐深さdの方向342を一意に特定する値dd2は、図1に示したように、X方向を示すベクトル(1,0,0)である。また、その幅wの方向342を一意に特定する値dw2は、図1に示したように、Y方向を示すベクトル(0,1,0)である。 The value dd2 that uniquely identifies the direction 342 of the depth d of the part 301, which is type 341 of "Pe2" (weld 102), is a vector (1,0,0) indicating the X direction, as shown in FIG. 1. The value dw2 that uniquely identifies the direction 342 of the width w is a vector (0,1,0) indicating the Y direction, as shown in FIG. 1.

また、部品301が「Pe3」(溶接部103)の種類341である懐深さdの方向342を一意に特定する値dd3は、図1に示したように、X方向を示すベクトル(1,0,0)である。また、その幅wの方向342を一意に特定する値dw3は、図1に示したように、Y方向を示すベクトル(0,1,0)である。 The value dd3 that uniquely identifies the direction 342 of the depth d of the part 301, which is type 341 of "Pe3" (weld 103), is a vector (1,0,0) that indicates the X direction, as shown in FIG. 1. The value dw3 that uniquely identifies the direction 342 of the width w is a vector (0,1,0) that indicates the Y direction, as shown in FIG. 1.

数値343は、種類341によって特定される寸法304の値である。たとえば、部品301が「Pe1」(支持部101)の種類341である間隔gの数値343を一意に特定する値v(dg1)は、たとえば、500.0[mm]である。また、その幅wの数値343を一意に特定する値v(dw1)は、たとえば、50.0[mm]である。 The numerical value 343 is the value of the dimension 304 specified by the type 341. For example, the value v (dg1) that uniquely specifies the numerical value 343 of the spacing g when the part 301 is of type 341 "Pe1" (support portion 101) is, for example, 500.0 [mm]. Also, the value v (dw1) that uniquely specifies the numerical value 343 of the width w is, for example, 50.0 [mm].

また、部品301が「Pe2」(溶接部102)の種類341である懐深さdの数値343を一意に特定する値v(dd2)は、たとえば、300.0[mm]である。また、その幅wの数値343を一意に特定する値v(dw2)は、たとえば、50.0[mm]である。 The value v(dd2) that uniquely identifies the numerical value 343 of the depth d of the part 301 that is type 341 of "Pe2" (weld 102) is, for example, 300.0 [mm]. The value v(dw2) that uniquely identifies the numerical value 343 of the width w is, for example, 50.0 [mm].

また、部品301が「Pe3」(溶接部103)の種類341である懐深さdの数値343を一意に特定する値v(dd3)は、たとえば、300.0[mm]である。また、その幅wの数値343を一意に特定する値v(dw3)は、たとえば、50.0[mm]である。 The value v(dd3) that uniquely identifies the numerical value 343 of the depth d of the part 301 that is type 341 of "Pe3" (weld 103) is, for example, 300.0 [mm]. The value v(dw3) that uniquely identifies the numerical value 343 of the width w is, for example, 50.0 [mm].

<ワーク110>
図4は、ワーク110の一例を示す斜視図である。ワーク110は、エンドエフェクタ100の作用対象であり、1以上の作用位置ap1~ap6(図4では例として6個)を有する。作用位置ap1~ap6を区別しない場合は、単に、作用位置apと表記する。本例のエンドエフェクタ100は溶接ガンであるため、作用位置apは溶接位置となるが、エンドエフェクタ100が開閉把持ハンドであれば把持位置、トルクドライバであればネジの締め付け位置、エンドミルであれば穿孔位置である。
<Work 110>
4 is a perspective view showing an example of a workpiece 110. The workpiece 110 is an object of action of the end effector 100, and has one or more action positions ap1 to ap6 (six in FIG. 4 as an example). When the action positions ap1 to ap6 are not distinguished, they are simply referred to as action positions ap. In this example, the end effector 100 is a welding gun, so the action position ap is a welding position, but if the end effector 100 is an open/close gripping hand, it is a gripping position, if it is a torque driver, it is a screw tightening position, and if it is an end mill, it is a drilling position.

図5は、ワーク設計情報の一例を示す説明図である。ワーク設計情報500は、修正装置200の記憶デバイス202または修正装置200と通信可能な他のコンピュータの記憶デバイスに格納される。 Figure 5 is an explanatory diagram showing an example of work design information. Work design information 500 is stored in the storage device 202 of the modification device 200 or in a storage device of another computer that can communicate with the modification device 200.

ワーク設計情報500は、ワーク110の設計情報、つまり、ワーク110の3次元形状を示す3次元のグラフィックデータである。図5では、ワーク設計情報500をテーブル形式で表現する。 The workpiece design information 500 is design information for the workpiece 110, i.e., three-dimensional graphic data showing the three-dimensional shape of the workpiece 110. In FIG. 5, the workpiece design information 500 is represented in a table format.

ワーク設計情報500は、フィールドとして、部品501と、配置位置姿勢502と、面情報503と、を有する。部品501は、ワーク110を構成する1つの要素(構成要素)であり、ワーク110を一意に特定する値として「Pw1」、…を保持する。具体的には、たとえば、「Pw1」はワーク110の本体である。 The work design information 500 has fields including a part 501, a placement position and orientation 502, and face information 503. The part 501 is one element (constituent element) that constitutes the work 110, and holds "Pw1", ... as values that uniquely identify the work 110. Specifically, for example, "Pw1" is the main body of the work 110.

配置位置姿勢502は、ワーク110をそのローカル座標系に配置した場合の部品501の姿勢であり、配置位置姿勢502を一意に特定する値として「Qw1」、…を保持する。具体的には、たとえば、「Qe1」はワーク110の頂点座標値群である。 The placement position and orientation 502 is the orientation of the part 501 when the workpiece 110 is placed in the local coordinate system, and holds "Qw1", ... as values that uniquely identify the placement position and orientation 502. Specifically, for example, "Qe1" is a group of vertex coordinate values of the workpiece 110.

面情報503は、部品501の面に関する情報であり、面情報503を一意に特定する値として「Sw11」、「Sw12」、…を保持する。具体的には、たとえば、「Sw11」、「Sw12」、…の各々は、ワーク110の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。 The face information 503 is information about the faces of the part 501, and holds "Sw11", "Sw12", ... as values that uniquely identify the face information 503. Specifically, for example, each of "Sw11", "Sw12", ... indicates polygon data that constitutes the face of the workpiece 110, and includes a group of vertex coordinate values and a normal vector of the polygon data.

図6は、作用位置情報600の一例を示す説明図である。図6では、作用位置情報600をテーブル形式で表現する。作用位置情報600は、フィールドとして、作用位置ID601と、座標値602と、を有する。作用位置ID601は、作用位置apを一意に特定する識別情報であり、値として作用位置ap1~ap6を保持する。座標値602は、ワーク110のローカル座標系における作用位置ap1~ap6の3次元位置を示す。 Figure 6 is an explanatory diagram showing an example of action position information 600. In Figure 6, the action position information 600 is expressed in table format. The action position information 600 has the fields of an action position ID 601 and a coordinate value 602. The action position ID 601 is identification information that uniquely identifies the action position ap, and holds the action positions ap1 to ap6 as values. The coordinate value 602 indicates the three-dimensional positions of the action positions ap1 to ap6 in the local coordinate system of the workpiece 110.

<探索パラメタ情報>
図7は、探索パラメタ情報の一例を示す説明図である。探索パラメタ情報700は、修正装置200の記憶デバイス202または修正装置200と通信可能な他のコンピュータの記憶デバイスに格納される。図7では、探索パラメタ情報700をテーブル形式で表現する。
<Search parameter information>
Fig. 7 is an explanatory diagram showing an example of search parameter information. Search parameter information 700 is stored in the storage device 202 of the modification device 200 or in a storage device of another computer that can communicate with the modification device 200. In Fig. 7, the search parameter information 700 is expressed in a table format.

探索パラメタ情報700は、干渉領域120を探索するためのパラメタの集合であり、フィールドとして、探索パラメタ種701と、値702と、を有する。探索パラメタ種701は、探索パラメタの種類を示す。探索パラメタ種701には、たとえば、探索角度刻み数aと、修正刻み距離lと、修正最大回数kと、いう3種類の探索パラメタがある。 Search parameter information 700 is a set of parameters for searching interference region 120, and has fields search parameter type 701 and value 702. Search parameter type 701 indicates the type of search parameter. Search parameter type 701 includes, for example, three types of search parameters: search angle increment number a, correction increment distance l, and maximum number of corrections k.

探索角度刻み数aは、エンドエフェクタ100を法線111を回転軸として回転させる場合の刻み数である。2π/aがその刻み角度となる。修正刻み距離lは、寸法304を修正する刻み距離である。修正最大回数kは、図1に示した(2)エンドエフェクタ寸法修正の最大実行回数である。 The search angle step number a is the step number when the end effector 100 is rotated around the normal line 111 as the rotation axis. The step angle is 2π/a. The correction step distance l is the step distance for correcting the dimension 304. The maximum number of corrections k is the maximum number of times that the end effector dimension correction (2) shown in FIG. 1 can be executed.

値702は、探索パラメタ種701によって特定される探索角度刻み数a、修正刻み距離lおよび修正最大回数kの設定値である。値702は、ユーザが入力デバイス203を操作することで設定可能である。 The value 702 is the setting value of the search angle step number a, the correction step distance l, and the maximum number of corrections k, which are specified by the search parameter type 701. The value 702 can be set by the user operating the input device 203.

<修正処理手順>
図8は、実施例1にかかる修正装置200による修正処理手順例を示すフローチャートである。修正装置200は、データ取得処理(ステップS801)を実行する。具体的には、たとえば、修正装置200は、取得部801として、エンドエフェクタ設計情報300、ワーク設計情報500、作用位置情報600および探索パラメタ情報700を読み込む。なお、エンドエフェクタ100およびワーク110は、共通のグローバル座標系に配置されるため、エンドエフェクタ設計情報300、ワーク設計情報500、および作用位置情報600で規定された座標値は、変換される。
<Correction process procedure>
8 is a flowchart showing an example of a correction process procedure by the correction device 200 according to the first embodiment. The correction device 200 executes a data acquisition process (step S801). Specifically, for example, the correction device 200 reads the end effector design information 300, the workpiece design information 500, the action position information 600, and the search parameter information 700 as an acquisition unit 801. Note that since the end effector 100 and the workpiece 110 are placed in a common global coordinate system, the coordinate values defined in the end effector design information 300, the workpiece design information 500, and the action position information 600 are converted.

つぎに、修正装置200は、算出部802として、配置可能エンドエフェクタ姿勢算出処理を実行する(ステップS802)。具体的には、たとえば、修正装置200は、図1に示した(1)配置可能エンドエフェクタ姿勢算出を実行する。配置可能エンドエフェクタ姿勢算出処理(ステップS802)の詳細については、図9で後述する。 Next, the modification device 200, as the calculation unit 802, executes a process of calculating the positionable end effector attitude (step S802). Specifically, for example, the modification device 200 executes the (1) calculation of the positionable end effector attitude shown in FIG. 1. Details of the process of calculating the positionable end effector attitude (step S802) will be described later with reference to FIG. 9.

つぎに、修正装置200は、修正部803として、エンドエフェクタ寸法修正処理を実行する(ステップS803)。具体的には、たとえば、修正装置200は、図1に示した(2)エンドエフェクタ寸法修正を実行する。エンドエフェクタ寸法修正処理(ステップS803)の詳細については、図10で後述する。 Next, the correction device 200, as the correction unit 803, executes an end effector dimension correction process (step S803). Specifically, for example, the correction device 200 executes the end effector dimension correction (2) shown in FIG. 1. Details of the end effector dimension correction process (step S803) will be described later with reference to FIG. 10.

なお、取得部801、算出部802および修正部803は、具体的には、たとえば、図2に示した記憶デバイス202に記憶されたプログラムをプロセッサ201に実行させることにより実現され、それぞれステップS801~S803を実行する。 The acquisition unit 801, calculation unit 802, and correction unit 803 are specifically realized, for example, by having the processor 201 execute a program stored in the storage device 202 shown in FIG. 2, and each executes steps S801 to S803.

図9は、図8に示した配置可能エンドエフェクタ姿勢算出処理(ステップS802)の詳細な処理手順例を示すフローチャートである。まず、修正装置200は、作用位置情報600の全作用位置ap1~apn(nは1以上の整数で、作用位置情報600のエントリ数、すなわち、作用位置apの総数)のループ変数iをi=1に設定する(ステップS901)。ステップS901では、ステップS905で処理が戻されるとループ変数iをインクリメントする。 Figure 9 is a flowchart showing a detailed example of the process of calculating the positionable end effector attitude (step S802) shown in Figure 8. First, the correction device 200 sets the loop variable i of all action positions ap1 to apn (n is an integer equal to or greater than 1, and is the number of entries in the action position information 600, i.e., the total number of action positions ap) in the action position information 600 to i = 1 (step S901). In step S901, when the process is returned in step S905, the loop variable i is incremented.

つぎに、修正装置200は、エンドエフェクタ100の先端104,105が作用位置apiにおいてワーク110表面に垂直に接するようにエンドエフェクタ100を配置する(ステップS902)。これにより、図1に示したように、先端104,105および作用位置apiが法線111上に位置するようになる。 Next, the correction device 200 positions the end effector 100 so that the tips 104 and 105 of the end effector 100 are in contact with the surface of the workpiece 110 perpendicularly at the action position api (step S902). As a result, the tips 104 and 105 and the action position api are positioned on the normal line 111 as shown in FIG. 1.

つぎに、修正装置200は、エンドエフェクタ100を、作用位置apiにおいて法線111を回転軸として2π/aずつ回転させ、当該回転の都度、エンドエフェクタ100の姿勢についてワーク110との干渉を算出する(ステップS903)。すなわち、修正装置200は、エンドエフェクタ100の探索角度刻み数a個の姿勢についてワーク110との干渉を計算する。このように、修正装置200は、エンドエフェクタ100の姿勢を固定した状態で、作用位置apiを固定したままワーク110の姿勢を変更させる。 Next, the modification device 200 rotates the end effector 100 at the action position api by 2π/a around the normal 111 as the rotation axis, and calculates the interference between the workpiece 110 and the posture of the end effector 100 for each rotation (step S903). That is, the modification device 200 calculates the interference between the workpiece 110 and the posture of the end effector 100 for the search angle increment number a. In this way, the modification device 200 changes the posture of the workpiece 110 while keeping the posture of the end effector 100 fixed and the action position api fixed.

この干渉計算では、修正装置200は、エンドエフェクタ姿勢情報、干渉領域情報、および干渉解消方向情報を算出する。エンドエフェクタ姿勢情報とは、2π/a刻みの回転ごとのエンドエフェクタ100の姿勢であり、具体的には、たとえば、グローバル座標系における2π/a刻みの回転ごとの部品301の配置位置姿勢302、面情報303、および寸法304である。 In this interference calculation, the correction device 200 calculates end effector posture information, interference area information, and interference resolution direction information. The end effector posture information is the posture of the end effector 100 for each rotation in increments of 2π/a, and specifically, for example, the placement position posture 302, face information 303, and dimensions 304 of the part 301 for each rotation in increments of 2π/a in the global coordinate system.

干渉領域情報とは、エンドエフェクタ100とワーク110との3次元的な重複領域である干渉領域120を構成する情報である。具体的には、たとえば、干渉領域120は、干渉によりエンドエフェクタ100内部に位置することになったワーク110の表面であり、干渉領域情報は、エンドエフェクタ100内部に位置するワーク110表面の面情報503により規定される。また、干渉領域情報は、干渉領域120の体積も含む。 The interference area information is information that constitutes the interference area 120, which is a three-dimensional overlapping area between the end effector 100 and the workpiece 110. Specifically, for example, the interference area 120 is the surface of the workpiece 110 that has become located inside the end effector 100 due to interference, and the interference area information is defined by the surface information 503 of the surface of the workpiece 110 that is located inside the end effector 100. The interference area information also includes the volume of the interference area 120.

干渉解消方向情報とは、干渉解消方向130を規定する情報であり、ワーク110と重複したエンドエフェクタ100の表面(たとえば、図1に示した干渉領域120のハッチングされた面)を構成するポリゴンデータの法線ベクトルである。法線ベクトルの平均が干渉解消方向130となる。このようにして、エンドエフェクタ100とワーク110との干渉の有無や干渉する場合にはその干渉領域120が特定される。 The interference resolution direction information is information that defines the interference resolution direction 130, and is the normal vector of the polygon data that constitutes the surface of the end effector 100 that overlaps with the workpiece 110 (for example, the hatched surface of the interference area 120 shown in FIG. 1). The average of the normal vectors becomes the interference resolution direction 130. In this way, the presence or absence of interference between the end effector 100 and the workpiece 110 and, if interference occurs, the interference area 120 are identified.

すなわち、干渉解消方向130は、エンドエフェクタ100とワーク110との干渉が解消される方向であり、ワーク110が干渉解消方向130に移動してエンドエフェクタ100から離間すると、干渉領域120の体積が減少し、エンドエフェクタ100との干渉が解消される。修正装置200は、エンドエフェクタ寸法修正処理(ステップS803)において、ワーク110と干渉せずにエンドエフェクタ100が作用位置apで作用できるようエンドエフェクタ100の部品301の寸法を修正することになる。 That is, the interference resolution direction 130 is the direction in which the interference between the end effector 100 and the workpiece 110 is resolved, and when the workpiece 110 moves in the interference resolution direction 130 and moves away from the end effector 100, the volume of the interference area 120 decreases and the interference with the end effector 100 is resolved. In the end effector dimension correction process (step S803), the correction device 200 corrects the dimensions of the part 301 of the end effector 100 so that the end effector 100 can act at the action position ap without interfering with the workpiece 110.

なお、干渉解消方向130は、エンドエフェクタ100とワーク110とが1回も干渉しなければ存在しないが、探索角度刻み数a個の姿勢で干渉計算されるため、1つの作用位置apにつき最大でa個存在する。 The interference resolution direction 130 does not exist if the end effector 100 and the workpiece 110 do not interfere with each other even once, but since interference calculations are performed for the position of the search angle increment a, a maximum of a interference resolution directions exist for one action position ap.

つぎに、修正装置200は、ステップS903で算出されたエンドエフェクタ姿勢情報、干渉領域情報、および干渉解消方向情報を記憶デバイス202に記録する(ステップS904)。 Next, the correction device 200 records the end effector posture information, interference area information, and interference resolution direction information calculated in step S903 in the storage device 202 (step S904).

つぎに、修正装置200は、i=nであるか否かを判断し、i=nでなければステップS901に戻り、i=nであれば、配置可能エンドエフェクタ姿勢算出処理を終了する。 Then, the correction device 200 determines whether i = n, and if i = n, returns to step S901, and if i = n, ends the process of calculating the positionable end effector attitude.

図10は、図8に示したエンドエフェクタ寸法修正処理(ステップS803)の詳細な処理手順例を示すフローチャートである。まず、修正装置200は、修正最大回数kのループ変数jをi=1に設定する(ステップS1001)。ステップS1001では、ステップS1004で処理が戻されるとループ変数jをインクリメントする。 Figure 10 is a flowchart showing a detailed example of the processing procedure of the end effector dimension correction process (step S803) shown in Figure 8. First, the correction device 200 sets the loop variable j of the maximum number of corrections k to i = 1 (step S1001). In step S1001, when the process is returned in step S1004, the loop variable j is incremented.

つぎに、修正装置200は、全作用位置ap1~apnでワーク110と干渉しないエンドエフェクタ100の姿勢があるか否かを判断する(ステップS1002)。作用位置ap1~apnの各々でのワーク110と干渉しないエンドエフェクタ100の姿勢は同一姿勢である必要はない。すなわち、どのようなエンドエフェクタ100の姿勢であっても、現状(ループ変数j)のエンドエフェクタ100の形状で全作用位置ap1~apnに対しワーク110と干渉せずに作用できればよい。 Next, the correction device 200 determines whether there is a posture of the end effector 100 that does not interfere with the workpiece 110 at all of the action positions ap1 to apn (step S1002). The posture of the end effector 100 that does not interfere with the workpiece 110 at each of the action positions ap1 to apn does not need to be the same posture. In other words, whatever the posture of the end effector 100, it is sufficient that it can act at all of the action positions ap1 to apn without interfering with the workpiece 110 with the current shape of the end effector 100 (loop variable j).

すなわち、全作用位置ap1~apnでワーク110と干渉しないエンドエフェクタ100の姿勢がない場合(ステップS1002:No)とは、探索角度刻み数a個のどの姿勢でもワーク110と干渉してしまう作用位置apが一つでもあることを示す。 In other words, if there is no posture of the end effector 100 that does not interfere with the workpiece 110 at all of the action positions ap1 to apn (step S1002: No), this means that there is at least one action position ap that interferes with the workpiece 110 at any of the postures in the search angle increment number a.

全作用位置ap1~apnでワーク110と干渉しないエンドエフェクタ100の姿勢がない場合(ステップS1002:No)、修正装置200は、エンドエフェクタ100の寸法304のうち、干渉解消方向130となす角度が最小となる方向342を寸法304に有する部品301を選択する。そして、修正装置200は、選択部品301の当該最も近い干渉解消方向130となす角度が最小となる方向342を有する寸法304の数値343を修正刻み距離lだけ増加する(ステップS1003)。 If there is no posture of the end effector 100 that does not interfere with the workpiece 110 at all of the action positions ap1 to apn (step S1002: No), the modification device 200 selects a part 301 whose dimension 304 has a direction 342 that forms the smallest angle with the interference resolution direction 130 among the dimensions 304 of the end effector 100. Then, the modification device 200 increases the numerical value 343 of the dimension 304 of the selected part 301 having the direction 342 that forms the smallest angle with the closest interference resolution direction 130 by the modification step distance l (step S1003).

たとえば、干渉解消方向130となす角度が最小となる方向342が、溶接部102の懐深さdの方向dd2であれば、修正装置200は、その数値v(dd2)を修正刻み距離lだけ増加する。なお、この場合、溶接部102と対となる溶接部103についても同様に、数値v(dd3)を修正刻み距離lだけ増加する。 For example, if the direction 342 that forms the smallest angle with the interference resolution direction 130 is the direction dd2 of the bore depth d of the weld 102, the correction device 200 increases the value v (dd2) by the correction interval distance l. In this case, the correction device 200 also increases the value v (dd3) of the weld 103 that is paired with the weld 102 by the correction interval distance l.

なお、干渉解消方向130は、探索角度刻み数a個の姿勢で干渉計算されるため、1つの作用位置apにつき最大でa個存在するため、干渉解消方向130も干渉ごとに存在する。このため、ステップS1003では、修正装置200は、干渉解消方向130ごとに角度差が最小となる部品301の候補を特定し、部品301の候補の中から角度差が最小となる部品301を修正対象部品として選択してもよい。 Note that, since the interference resolution directions 130 are calculated for the position of the search angle increment a, there are a maximum of a interference resolution directions 130 for one action position ap, and therefore an interference resolution direction 130 also exists for each interference. Therefore, in step S1003, the correction device 200 may identify candidates for the part 301 with the smallest angle difference for each interference resolution direction 130, and select the part 301 with the smallest angle difference from among the candidate parts 301 as the part to be corrected.

また、干渉解消方向130が複数存在する場合、修正装置200は、干渉領域120の体積が最大となる干渉解消方向130となす角度が最小となる方向342を有する寸法304となる部品301を修正対象部品として選択してもよい。これにより、他の干渉解消方向130に対応する干渉領域120も消滅する可能性が高くなる。 In addition, when there are multiple interference resolution directions 130, the correction device 200 may select, as the part to be corrected, the part 301 having the dimension 304 with the direction 342 that forms the smallest angle with the interference resolution direction 130 in which the volume of the interference region 120 is maximized. This increases the possibility that the interference regions 120 corresponding to the other interference resolution directions 130 will also disappear.

また、干渉解消方向130が複数存在する場合、修正装置200は、干渉領域120の体積が最小となる干渉解消方向130となす角度が最小となる方向342を有する寸法304となる部品301を修正対象部品として選択してもよい。これにより、エンドエフェクタ100の寸法の微調整が可能、換言すれば、寸法の過剰修正を抑制することができる。 In addition, when there are multiple interference resolution directions 130, the correction device 200 may select, as the part to be corrected, the part 301 having the dimension 304 with the direction 342 that forms the smallest angle with the interference resolution direction 130 in which the volume of the interference region 120 is the smallest. This allows fine adjustment of the dimensions of the end effector 100, in other words, prevents excessive correction of the dimensions.

また、エンドエフェクタ100がワーク110と干渉する作用位置apが複数存在する場合、修正装置200は、いずれか1つの作用位置apを選択してステップS1003を実行する。 In addition, if there are multiple action positions ap where the end effector 100 interferes with the workpiece 110, the correction device 200 selects one of the action positions ap and executes step S1003.

このあと、修正装置200は、j=kであるか否かを判断し、j=kでなければステップS1001に戻り、j=kであれば、エンドエフェクタ寸法修正処理を終了する(ステップS1004)。この場合、k回修正しても、現状のエンドエフェクタ100の形状で全作用位置ap1~apnに対しワーク110と干渉せずに作用できないことになる。 Then, the correction device 200 judges whether j=k or not, and if j=k is not satisfied, the process returns to step S1001, and if j=k is satisfied, the process ends the end effector dimension correction process (step S1004). In this case, even if corrections are made k times, the current shape of the end effector 100 will not be able to act on all of the action positions ap1 to apn without interfering with the workpiece 110.

また、ステップS1002において、全作用位置ap1~apnでワーク110と干渉しないエンドエフェクタ100の姿勢がある場合(ステップS1002:Yes)、修正装置200は、配置可能エンドエフェクタ100、配置可能エンドエフェクタ姿勢、および寸法修正情報を更新して出力する(ステップS1005)。寸法修正情報とは、ステップS1003での増加分の修正刻み距離lである。 In addition, in step S1002, if there is a posture of the end effector 100 that does not interfere with the workpiece 110 at all of the action positions ap1 to apn (step S1002: Yes), the correction device 200 updates and outputs the placeable end effector 100, the placeable end effector posture, and the dimensional correction information (step S1005). The dimensional correction information is the correction step distance l of the increase in step S1003.

具体的には、たとえば、修正装置200は、j=1の場合、配置可能エンドエフェクタ100を、ステップS1003で寸法修正されていないエンドエフェクタ100とし、j≧2の場合、配置可能エンドエフェクタ100を、(j-1)回目でステップS1003により寸法修正されたエンドエフェクタ100とする。 Specifically, for example, when j=1, the correction device 200 sets the deployable end effector 100 to the end effector 100 whose dimensions have not been modified in step S1003, and when j≧2, the deployable end effector 100 to the end effector 100 whose dimensions have been modified in step S1003 for the (j-1)th time.

また、修正装置200は、配置可能エンドエフェクタ姿勢情報を、j回目で全作用位置ap1~apnに対しワーク110と干渉しなかったエンドエフェクタ姿勢情報に更新する。 The correction device 200 also updates the positionable end effector posture information to end effector posture information that did not interfere with the workpiece 110 for all action positions ap1 to apn in the jth iteration.

また、修正装置200は、j=1の場合、寸法修正情報を、ステップS1003で寸法修正されていない寸法修正情報とし、j≧2の場合、寸法修正情報を、(j-1)回目でステップS1003により寸法修正されたときの寸法修正情報とする。これにより、エンドエフェクタ寸法修正処理(ステップS803)が終了する。 When j=1, the correction device 200 sets the dimension correction information to the dimension correction information that has not been dimension corrected in step S1003, and when j≧2, the dimension correction information to the dimension correction information when the dimension is corrected in step S1003 for the (j-1)th time. This ends the end effector dimension correction process (step S803).

<出力データ例>
つぎに、図11~図14を用いて、ステップS1005の出力データの一例について説明する。なお、出力データは、出力デバイス204の一例である表示装置に表示されたり、通信IF205を介して他のコンピュータに送信され、当該他のコンピュータの表示装置に表示されたりする。
<Example of output data>
Next, an example of the output data in step S1005 will be described with reference to Figures 11 to 14. The output data may be displayed on a display device, which is an example of the output device 204, or may be transmitted to another computer via the communication IF 205 and displayed on a display device of the other computer.

図11は、配置可能エンドエフェクタ100を示すエンドエフェクタ設計情報300の一例を示す説明図である。図11では、部品301が「Pe2」(溶接部102)の懐深さdについての寸法304の数値343である「v(dd2)」と、部品301が「Pe3」(溶接部103)の懐深さdについての寸法304の数値343である「v(dd3)」と、が修正されたことを示している。 Figure 11 is an explanatory diagram showing an example of end effector design information 300 indicating a deployable end effector 100. Figure 11 shows that "v(dd2)", which is the numerical value 343 of dimension 304 for the bore depth d of "Pe2" (weld 102) of part 301, and "v(dd3)", which is the numerical value 343 of dimension 304 for the bore depth d of "Pe3" (weld 103) of part 301, have been modified.

図12は、配置可能エンドエフェクタ姿勢情報の一例を示す説明図である。配置可能エンドエフェクタ姿勢情報1200は、フィールドとして、作用位置ID601と、姿勢ID1201と、姿勢1202と、を有する。姿勢ID1201は、j回目で全作用位置ap1~apnに対しワーク110と干渉しなかったエンドエフェクタ100の姿勢1202を一意に特定する識別情報である。 Figure 12 is an explanatory diagram showing an example of position information of a placeable end effector. Position information of a placeable end effector 1200 has fields of an action position ID 601, a position ID 1201, and a position 1202. The position ID 1201 is identification information that uniquely identifies the position 1202 of the end effector 100 that did not interfere with the workpiece 110 for all action positions ap1 to apn in the jth time.

姿勢1202は、j回目で全作用位置ap1~apnに対しワーク110と干渉しなかったエンドエフェクタ100のグローバル座標系での配置位置を示し、たとえば、エンドエフェクタ100の頂点座標値の集合で規定される。 Attitude 1202 indicates the placement position in the global coordinate system of the end effector 100 that did not interfere with the workpiece 110 for all action positions ap1 to apn in the jth iteration, and is defined, for example, by a set of vertex coordinate values of the end effector 100.

図13は、寸法修正情報の一例を示す説明図である。寸法修正情報1300は、フィールドとして、種類341と、修正値1301と、を有する。修正値1301は、種類341で特定される長さ(懐深さd、間隔g、幅w、…)の修正分の値であり、修正刻み距離lの倍数となる。 Figure 13 is an explanatory diagram showing an example of dimension correction information. Dimension correction information 1300 has the fields type 341 and correction value 1301. Correction value 1301 is the value of the correction to the length (depth d, spacing g, width w, ...) specified by type 341, and is a multiple of the correction interval distance l.

図14は、実施例1にかかる出力データを表示する表示画面の一例を示す説明図である。表示画面1400は、配置可能エンドエフェクタ姿勢情報1200と、寸法修正情報1300と、を表示する。また、配置可能エンドエフェクタ姿勢情報1200および寸法修正情報1300内のエンドエフェクタ100は、図11に示した修正後のエンドエフェクタ設計情報300に基づいて描画される。ワーク110は、ワーク設計情報500に基づいて描画される。 FIG. 14 is an explanatory diagram showing an example of a display screen that displays output data according to the first embodiment. The display screen 1400 displays placeable end effector attitude information 1200 and dimension correction information 1300. Furthermore, the end effector 100 in the placeable end effector attitude information 1200 and the dimension correction information 1300 is drawn based on the corrected end effector design information 300 shown in FIG. 11. The workpiece 110 is drawn based on the workpiece design information 500.

また、表示画面1400は、修正刻み距離プルダウン1401と、単位プルダウン1402と、再計算実行ボタン1403と、を有する。修正刻み距離プルダウン1401は、入力デバイス203を操作することで修正刻み距離lを選択可能なユーザインタフェースである。修正刻み距離lを直接入力することも可能である。なお、図示はしないが、種類341ごとに修正刻み距離プルダウン1401を設けてもよい。これにより、種類341ごとに修正刻み距離lを異ならせることができる。 The display screen 1400 also has a correction increment distance pull-down 1401, a unit pull-down 1402, and a recalculation button 1403. The correction increment distance pull-down 1401 is a user interface that allows the user to select the correction increment distance l by operating the input device 203. It is also possible to directly input the correction increment distance l. Although not shown, a correction increment distance pull-down 1401 may be provided for each type 341. This allows the correction increment distance l to be different for each type 341.

単位プルダウン1402は、入力デバイス203を操作することで修正刻み距離lの単位を選択可能なユーザインタフェースである。再計算実行ボタン1403は、入力デバイス203を操作することでエンドエフェクタ寸法修正処理(ステップS803)の再実行を指示するユーザインタフェースである。再計算実行ボタン1404が押下されることで、修正刻み距離プルダウン1401で選択された修正刻み距離lでエンドエフェクタ寸法修正処理(ステップS803)が再実行される。 The unit pull-down 1402 is a user interface that allows the unit of the correction increment distance l to be selected by operating the input device 203. The recalculation button 1403 is a user interface that instructs re-execution of the end effector dimension correction process (step S803) by operating the input device 203. When the recalculation button 1404 is pressed, the end effector dimension correction process (step S803) is re-executed with the correction increment distance l selected in the correction increment distance pull-down 1401.

このように、実施例1によれば、複数の作用位置で干渉しないように修正することができる。すなわち、どの作用位置apでもワーク110に作用することができるエンドエフェクタ100の寸法を、設計段階で事前に修正することができる。したがって、エンドエフェクタ100の寸法を修正する工数の削減を図ることができる。 In this way, according to the first embodiment, it is possible to make corrections so as not to interfere with multiple operating positions. In other words, the dimensions of the end effector 100 that can act on the workpiece 110 at any operating position ap can be corrected in advance at the design stage. Therefore, it is possible to reduce the amount of work required to correct the dimensions of the end effector 100.

つぎに、実施例2について説明する。実施例2にかかる修正装置200は、実施例1において、エンドエフェクタ100が装着されるロボットアームの軌道を算出する。これにより、修正済みのエンドエフェクタ100の姿勢で動かすことが可能なロボットアームの軌道を特定することができる。換言すれば、配置可能なエンドエフェクタ100の姿勢であったとしても、そのロボットアームの軌道が生成できなければ、有効な修正にはならない。このように、ロボットアームの軌道も考慮して、修正済みのエンドエフェクタ100の姿勢の有効性の向上を図ることができる。なお、ロボットアームが複数の作用位置apを経由する順番は、修正装置200に設定されているものとする。 Next, a second embodiment will be described. The correction device 200 according to the second embodiment calculates the trajectory of the robot arm to which the end effector 100 is attached in the first embodiment. This makes it possible to identify the trajectory of the robot arm that can be moved in the corrected posture of the end effector 100. In other words, even if the posture of the end effector 100 is one that can be placed, if the trajectory of the robot arm cannot be generated, the correction will not be effective. In this way, the effectiveness of the corrected posture of the end effector 100 can be improved by taking the trajectory of the robot arm into consideration. It is assumed that the order in which the robot arm passes through the multiple action positions ap is set in the correction device 200.

なお、実施例2では、実施例1との相違点を中心に説明するため、実施例1と共通部分については説明を省略する。また、ロボットアームの軌道算出自体についても既知技術であるため、説明を省略する。 In the second embodiment, the differences from the first embodiment will be mainly described, and the common parts will not be described. In addition, the calculation of the trajectory of the robot arm itself is a known technique, so the description will not be provided.

図15は、ロボットアーム、エンドエフェクタ100、ワーク110および治具の配置関係の一例を示す説明図である。ワーク110は、治具1500に保持される。治具1500は、台座1501と、台座1501上の4本の支持部材1502と、を有する。4本の支持部材1502は、ワーク110の4側面から挟むことにより、ワーク110の表面が略水平となるようにワーク110を保持する。 Figure 15 is an explanatory diagram showing an example of the relative positions of the robot arm, end effector 100, workpiece 110, and jig. The workpiece 110 is held by jig 1500. Jig 1500 has a base 1501 and four support members 1502 on base 1501. The four support members 1502 clamp the workpiece 110 from four sides, thereby holding the workpiece 110 so that the surface of the workpiece 110 is approximately horizontal.

ロボットアーム1510は、たとえば、6軸のマニピュレータであり、先端1511を有する。先端1511は、エンドエフェクタ100が着脱可能である。 The robot arm 1510 is, for example, a six-axis manipulator and has a tip 1511. The tip 1511 is detachable from the end effector 100.

<ロボットアーム1510の軌道算出例>
図16は、ロボットアーム1510の軌道算出例を示す説明図である。図16では、説明を単純化するため、作用位置apをap1、ap3とする。配置可能エンドエフェクタ姿勢算出処理(ステップS802)およびエンドエフェクタ寸法修正処理(ステップS803)により、作用位置ap1については、姿勢ID1201がR11~R13の姿勢1202(以下、姿勢R11~R13と表記)が出力され、作用位置ap3については、姿勢ID1201がR21~R23の姿勢1202(以下、姿勢R23~R33と表記)が出力されたものとする。
<Example of trajectory calculation of robot arm 1510>
Fig. 16 is an explanatory diagram showing an example of trajectory calculation of the robot arm 1510. In Fig. 16, for the sake of simplicity, the action positions ap are designated as ap1 and ap3. It is assumed that, as a result of the placeable end effector attitude calculation process (step S802) and the end effector dimension correction process (step S803), attitudes 1202 with attitude IDs 1201 of R11 to R13 (hereinafter referred to as attitudes R11 to R13) are output for the action position ap1, and attitudes 1202 with attitude IDs 1201 of R21 to R23 (hereinafter referred to as attitudes R23 to R33) are output for the action position ap3.

修正装置200は、配置可能エンドエフェクタ100の姿勢R11~R13と姿勢R31~R33との9通りの組み合わせ{(R11、R31)、(R11、R32)、(R11、R33)、(R12、R31)、(R12、R32)、(R12、R33)、(R13、R31)、(R13、R32)、(R13、R33)}の中から、いずれかの組み合わせを選択する。具体的には、たとえば、修正装置200は、ロボットアーム1510の姿勢変化が最小となる組み合わせを選択する。図16の例では、姿勢R11、R32の組み合わせが、ロボットアーム1510の姿勢変化が最小となる組み合わせとして選択される。 The correction device 200 selects one of nine combinations of the orientations R11 to R13 and the orientations R31 to R33 of the deployable end effector 100 {(R11, R31), (R11, R32), (R11, R33), (R12, R31), (R12, R32), (R12, R33), (R13, R31), (R13, R32), (R13, R33)}. Specifically, for example, the correction device 200 selects a combination that minimizes the change in the orientation of the robot arm 1510. In the example of FIG. 16, the combination of orientations R11 and R32 is selected as the combination that minimizes the change in the orientation of the robot arm 1510.

ロボットアーム1510の姿勢は、たとえば、ロボットアーム1510が有する複数の関節の回転角ベクトルにより規定される。ロボットアーム1510の姿勢変化は、たとえば、ロボットアーム1510の姿勢変化前の回転角ベクトルと、ロボットアーム1510の姿勢変化後の回転角ベクトルと、のユークリッド距離により特定される。 The posture of the robot arm 1510 is determined, for example, by the rotation angle vectors of multiple joints of the robot arm 1510. A change in posture of the robot arm 1510 is determined, for example, by the Euclidean distance between the rotation angle vector before the posture change of the robot arm 1510 and the rotation angle vector after the posture change of the robot arm 1510.

ロボットアーム1510の姿勢変化前とは、配置可能エンドエフェクタ100の姿勢R11~R13から選択する場合は、ロボットアーム1510の移動前の初期姿勢であり、配置可能エンドエフェクタ100の姿勢R31~R33から選択する場合は、作用位置ap1についての配置可能エンドエフェクタ100の姿勢R11~R13の各々をとる場合のロボットアーム1510の姿勢である。 The robot arm 1510 before the posture change refers to the initial posture before the robot arm 1510 moves when selecting from postures R11 to R13 of the deployable end effector 100, and refers to the posture of the robot arm 1510 when taking each of postures R11 to R13 of the deployable end effector 100 at the action position ap1 when selecting from postures R31 to R33 of the deployable end effector 100.

ロボットアーム1510の姿勢変化後とは、配置可能エンドエフェクタ100の姿勢R11~R13から選択する場合は、作用位置ap1についての配置可能エンドエフェクタ100の姿勢R11~R13の各々をとる場合のロボットアーム1510の姿勢であり、配置可能エンドエフェクタ100の姿勢R31~R33から選択する場合は、作用位置ap3についての配置可能エンドエフェクタ100の姿勢R31~R33の各々をとる場合のロボットアーム1510の姿勢である。 The post-posture change attitude of the robot arm 1510 refers to the attitude of the robot arm 1510 when the deployable end effector 100 takes one of the attitudes R11 to R13 at the action position ap1 when selecting from the attitudes R11 to R13 of the deployable end effector 100, and refers to the attitude of the robot arm 1510 when the deployable end effector 100 takes one of the attitudes R31 to R33 at the action position ap3 when selecting from the attitudes R31 to R33 of the deployable end effector 100.

ロボットアーム1510の姿勢変化前後のユークリッド距離が最小となる組み合わせ(R11、R32)が、ロボットアーム1510の姿勢変化が最小となる組み合わせである。 The combination (R11, R32) in which the Euclidean distance before and after the posture change of the robot arm 1510 is the smallest is the combination in which the posture change of the robot arm 1510 is the smallest.

そして、修正装置200は、ロボットアーム1510の移動前の初期姿勢と、配置可能エンドエフェクタ100が作用位置ap1で姿勢R11をとるときのロボットアーム1510の姿勢と、の間を補間するロボットアーム1510の軌道1601を生成する。 Then, the correction device 200 generates a trajectory 1601 of the robot arm 1510 that interpolates between the initial posture of the robot arm 1510 before the movement and the posture of the robot arm 1510 when the deployable end effector 100 takes the posture R11 at the action position ap1.

同様に、修正装置200は、配置可能エンドエフェクタ100が作用位置ap1で姿勢R11をとるときのロボットアーム1510の姿勢と、配置可能エンドエフェクタ100が作用位置ap3で姿勢R32をとるときのロボットアーム1510の姿勢と、の間を補間するロボットアーム1510の軌道1602を生成する。 Similarly, the correction device 200 generates a trajectory 1602 of the robot arm 1510 that interpolates between the posture of the robot arm 1510 when the deployable end effector 100 takes posture R11 at the action position ap1 and the posture of the robot arm 1510 when the deployable end effector 100 takes posture R32 at the action position ap3.

なお、ロボットアーム1510の軌道1601、1602の少なくとも一方が生成できない場合、修正装置200は、配置可能エンドエフェクタ100の姿勢R11~R13と姿勢R31~R33との9通りの組み合わせから、組み合わせ(R11、R32)を除いてロボットアーム1510の姿勢変化前後のユークリッド距離が最小となる組み合わせを再選択し、再選択した組み合わせについて、ロボットアーム1510の軌道を再生成することになる。 If at least one of the trajectories 1601, 1602 of the robot arm 1510 cannot be generated, the correction device 200 reselects from the nine combinations of the orientations R11-R13 and R31-R33 of the deployable end effector 100 a combination that minimizes the Euclidean distance before and after the orientation change of the robot arm 1510, excluding the combination (R11, R32), and regenerates the trajectory of the robot arm 1510 for the reselected combination.

図17は、ロボットアーム設計情報の一例を示す説明図である。ロボットアーム設計情報1700は、修正装置200の記憶デバイス202または修正装置200と通信可能な他のコンピュータの記憶デバイスに格納される。 Figure 17 is an explanatory diagram showing an example of robot arm design information. Robot arm design information 1700 is stored in the storage device 202 of the correction device 200 or in a storage device of another computer that can communicate with the correction device 200.

ロボットアーム設計情報1700は、ロボットアーム1510の設計情報、つまり、ロボットアーム1510の3次元形状を示す3次元のグラフィックデータである。図17では、ロボットアーム設計情報1700をテーブル形式で表現する。 The robot arm design information 1700 is design information for the robot arm 1510, that is, three-dimensional graphic data showing the three-dimensional shape of the robot arm 1510. In FIG. 17, the robot arm design information 1700 is represented in a table format.

ロボットアーム設計情報1700は、フィールドとして、部品1701と、配置位置姿勢1702と、面情報1703と、を有する。部品1701は、ロボットアーム1510を構成する1つの要素(構成要素)であり、部品1701を一意に特定する値として「Pr1」、「Pr2」、…を保持する。具体的には、たとえば、「Pr1」は関節、「Pr2」はリンクである。 The robot arm design information 1700 has the fields of a part 1701, a placement position and orientation 1702, and face information 1703. The part 1701 is one element (component) that constitutes the robot arm 1510, and holds "Pr1", "Pr2", ... as values that uniquely identify the part 1701. Specifically, for example, "Pr1" is a joint, and "Pr2" is a link.

配置位置姿勢1702は、ロボットアーム1510をそのローカル座標系に配置した場合の部品1701の姿勢であり、配置位置姿勢1702を一意に特定する値として「Qr1」、「Qr2」、…を保持する。具体的には、たとえば、「Qr1」は関節の頂点座標値群および関節の回転角度であり、「Qr2」はリンクの頂点座標値群である。 The placement position and orientation 1702 is the orientation of the part 1701 when the robot arm 1510 is placed in the local coordinate system, and holds "Qr1", "Qr2", ... as values that uniquely identify the placement position and orientation 1702. Specifically, for example, "Qr1" is a group of vertex coordinate values of a joint and a rotation angle of the joint, and "Qr2" is a group of vertex coordinate values of a link.

面情報1703は、部品1701の面に関する情報であり、面情報1703を一意に特定する値として「Sr11」、「Sr12」、…、「Sr21」、「Sr22」、…を保持する。具体的には、たとえば、「Sr11」、「Sr12」、…の各々は、関節の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。同様に、「Sr21」、「Sr22」、…の各々は、リンクの面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。 Face information 1703 is information about the faces of part 1701, and holds "Sr11", "Sr12", ..., "Sr21", "Sr22", ... as values that uniquely identify face information 1703. Specifically, for example, each of "Sr11", "Sr12", ... indicates polygon data that constitutes the face of a joint, and includes a group of vertex coordinate values and a normal vector of that polygon data. Similarly, each of "Sr21", "Sr22", ... indicates polygon data that constitutes the face of a link, and includes a group of vertex coordinate values and a normal vector of that polygon data.

図18は、治具設計情報の一例を示す説明図である。治具設計情報1800は、修正装置200の記憶デバイス202または修正装置200と通信可能な他のコンピュータの記憶デバイスに格納される。 Figure 18 is an explanatory diagram showing an example of jig design information. Jig design information 1800 is stored in the storage device 202 of the correction device 200 or in a storage device of another computer that can communicate with the correction device 200.

治具設計情報1800は、治具1500の設計情報、つまり、治具1500の3次元形状を示す3次元のグラフィックデータである。図18では、治具設計情報1800をテーブル形式で表現する。 The jig design information 1800 is design information for the jig 1500, that is, three-dimensional graphic data showing the three-dimensional shape of the jig 1500. In FIG. 18, the jig design information 1800 is represented in a table format.

治具設計情報1800は、フィールドとして、部品1801と、配置位置姿勢1802と、面情報1803と、を有する。部品1801は、治具1500を構成する1つの要素(構成要素)であり、部品1801を一意に特定する値として「Pj1」、「Pj2」、…を保持する。具体的には、たとえば、「Pj1」は台座1501、「Pj2」は支持部材1502である。 The jig design information 1800 has fields including a part 1801, a placement position and orientation 1802, and face information 1803. The part 1801 is one element (constituent element) that constitutes the jig 1500, and holds "Pj1", "Pj2", ... as values that uniquely identify the part 1801. Specifically, for example, "Pj1" is the base 1501, and "Pj2" is the support member 1502.

配置位置姿勢1802は、治具1500をそのローカル座標系に配置した場合の部品1801の姿勢であり、配置位置姿勢1802を一意に特定する値として「Qj1」、「Qj2」、…を保持する。具体的には、たとえば、「Qj1」は台座1501の頂点座標値群であり、「Qr2」は支持部材1502の頂点座標値群である。 The placement position and orientation 1802 is the orientation of the part 1801 when the jig 1500 is placed in the local coordinate system, and holds "Qj1", "Qj2", ... as values that uniquely identify the placement position and orientation 1802. Specifically, for example, "Qj1" is a group of vertex coordinate values of the base 1501, and "Qr2" is a group of vertex coordinate values of the support member 1502.

面情報1803は、部品1801の面に関する情報であり、面情報1803を一意に特定する値として「Sj11」、「Sj12」、…、「Sj21」、「Sj22」、…を保持する。具体的には、たとえば、「Sj11」、「Sj12」、…の各々は、台座1501の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。同様に、「Sj21」、「Sj22」、…の各々は、支持部材1502の面を構成するポリゴンデータを示し、当該ポリゴンデータの頂点座標値群および法線ベクトルを含む。 The face information 1803 is information about the faces of the part 1801, and holds "Sj11", "Sj12", ..., "Sj21", "Sj22", ... as values that uniquely identify the face information 1803. Specifically, for example, each of "Sj11", "Sj12", ... indicates polygon data that constitutes the face of the base 1501, and includes a group of vertex coordinate values and a normal vector of the polygon data. Similarly, each of "Sj21", "Sj22", ... indicates polygon data that constitutes the face of the support member 1502, and includes a group of vertex coordinate values and a normal vector of the polygon data.

<修正処理手順>
図19は、実施例2にかかる修正装置200による修正処理手順例を示すフローチャートである。修正装置200は、データ取得処理を実行する(ステップS1901)。データ取得処理(ステップS1901)では、修正装置200は、エンドエフェクタ設計情報300、ワーク設計情報500、作用位置情報600および探索パラメタ情報700のほか、ロボットアーム設計情報1700および治具設計情報1800も読み込む。
<Correction process procedure>
19 is a flowchart showing an example of a correction process procedure by the correction device 200 according to the second embodiment. The correction device 200 executes a data acquisition process (step S1901). In the data acquisition process (step S1901), the correction device 200 reads the end effector design information 300, the workpiece design information 500, the action position information 600, and the search parameter information 700, as well as the robot arm design information 1700 and the jig design information 1800.

つぎに、修正装置200は、配置可能エンドエフェクタ姿勢算出処理(ステップS802)およびエンドエフェクタ寸法修正処理(ステップS803)を実行する。ステップS803のあと、修正装置200は、生成部1904として、ロボットアーム軌道生成処理(ステップS1904)を実行する。ロボットアーム軌道生成処理(ステップS1904)は、治具1500と干渉せずにロボットアーム1510の軌道を算出する処理である。 Then, the correction device 200 executes a placeable end effector posture calculation process (step S802) and an end effector dimension correction process (step S803). After step S803, the correction device 200 executes a robot arm trajectory generation process (step S1904) as the generation unit 1904. The robot arm trajectory generation process (step S1904) is a process for calculating the trajectory of the robot arm 1510 without interfering with the jig 1500.

なお、生成部1904は、具体的には、たとえば、図2に示した記憶デバイス202に記憶されたプログラムをプロセッサ201に実行させることにより実現され、ステップS1904を実行する。 Specifically, the generation unit 1904 is realized by, for example, causing the processor 201 to execute a program stored in the storage device 202 shown in FIG. 2, and executes step S1904.

図20は、図19に示したロボットアーム軌道生成処理(ステップS1904)の詳細な処理手順例を示すフローチャートである。修正装置200は、各作用位置apにおけるエンドエフェクタ100の配置可能な姿勢1202のうち、作用位置ap間におけるエンドエフェクタ100の移動前後でのロボットアーム1510の姿勢変化が最小となる姿勢を探索する(ステップS2001)。 Figure 20 is a flowchart showing a detailed example of the processing procedure of the robot arm trajectory generation process (step S1904) shown in Figure 19. The correction device 200 searches for a posture 1202 in which the end effector 100 can be placed at each action position ap, in which the change in posture of the robot arm 1510 before and after the movement of the end effector 100 between the action positions ap is minimized (step S2001).

具体的には、たとえば、図21に示した例では、修正装置200は、作用位置ap1でのエンドエフェクタ100の姿勢R11~R13のうち、ロボットアーム1510の移動前の初期姿勢からのロボットアーム1510の姿勢変化が最小となるエンドエフェクタ100の姿勢1202を探索する。図21の例では、エンドエフェクタ100の姿勢R11が、ロボットアーム1510の姿勢変化が最小となるエンドエフェクタ100の姿勢1202としてエンドエフェクタ100の姿勢R11が探索される。 Specifically, for example, in the example shown in FIG. 21, the correction device 200 searches for the posture 1202 of the end effector 100 that minimizes the posture change of the robot arm 1510 from the initial posture before the movement of the robot arm 1510, among the postures R11 to R13 of the end effector 100 at the action position ap1. In the example of FIG. 21, the posture R11 of the end effector 100 is searched for as the posture 1202 of the end effector 100 that minimizes the posture change of the robot arm 1510.

また、修正装置200は、作用位置ap3でのエンドエフェクタ100の姿勢R31~R33のうち、ロボットアーム1510の移動前の初期姿勢からのロボットアーム1510の姿勢変化が最小となるエンドエフェクタ100の姿勢1202を探索する。図21の例では、エンドエフェクタ100の姿勢R32が、ロボットアーム1510の姿勢変化が最小となるエンドエフェクタ100の姿勢1202として探索される。 The correction device 200 also searches for the posture 1202 of the end effector 100 that minimizes the posture change of the robot arm 1510 from the initial posture before the movement of the robot arm 1510, among the postures R31 to R33 of the end effector 100 at the action position ap3. In the example of FIG. 21, the posture R32 of the end effector 100 is searched for as the posture 1202 of the end effector 100 that minimizes the posture change of the robot arm 1510.

つぎに、修正装置200は、移動前後の作用位置ap間におけるロボットアーム1510の姿勢を示すロボットアーム軌道情報を生成する(ステップS2002)。ロボットアーム軌道情報は、記憶デバイス202に格納される。 Next, the correction device 200 generates robot arm trajectory information indicating the posture of the robot arm 1510 between the action positions ap before and after the movement (step S2002). The robot arm trajectory information is stored in the storage device 202.

図21は、ロボットアーム軌道情報の一例を示す説明図である。ロボットアーム軌道情報2100は、フィールドとして、時刻2101と、関節角度2102と、を有する。各エントリが時刻2101におけるロボットアーム1510の姿勢を示しており、時系列になることでロボットアーム1510の軌道を構成する。時刻2101は、ロボットアーム1510が動作するタイミングである。関節角度2102は、時刻2101におけるロボットアーム1510の各関節の角度を示すベクトルであり、ロボットアーム1510の姿勢を規定する。 Figure 21 is an explanatory diagram showing an example of robot arm trajectory information. Robot arm trajectory information 2100 has fields of time 2101 and joint angle 2102. Each entry indicates the posture of the robot arm 1510 at time 2101, and the chronological order constitutes the trajectory of the robot arm 1510. The time 2101 is the timing at which the robot arm 1510 operates. The joint angle 2102 is a vector indicating the angle of each joint of the robot arm 1510 at time 2101, and defines the posture of the robot arm 1510.

たとえば、図16の例では、時刻2101が「t0」の関節角度2102が、ロボットアーム1510の移動前の初期姿勢を示しており、「t1」~「t3」の関節角度2102が、ロボットアーム1510が初期姿勢から作用位置ap1までを補間する姿勢を示すロボットアーム1510の軌道1601であり、「t4」の関節角度2102が、ロボットアーム1510の作用位置ap1での姿勢であり、「t5」~「t8」の関節角度2102が、ロボットアーム1510が作用位置ap1から作用位置ap2までを補間する姿勢を示すロボットアーム1510の軌道1602であり、「t9」の関節角度2102が、ロボットアーム1510の作用位置ap2での姿勢である。 For example, in the example of FIG. 16, the joint angle 2102 at time 2101 "t0" indicates the initial posture of the robot arm 1510 before movement, the joint angles 2102 from "t1" to "t3" are the trajectory 1601 of the robot arm 1510 indicating the posture of the robot arm 1510 interpolating from the initial posture to the action position ap1, the joint angle 2102 at "t4" is the posture of the robot arm 1510 at the action position ap1, the joint angles 2102 from "t5" to "t8" are the trajectory 1602 of the robot arm 1510 indicating the posture of the robot arm 1510 interpolating from the action position ap1 to the action position ap2, and the joint angle 2102 at "t9" is the posture of the robot arm 1510 at the action position ap2.

図22は、実施例2にかかる出力データを表示する表示画面の一例を示す説明図である。表示画面2200は、ロボットアーム軌道情報2100と、寸法修正情報1300と、を表示する。また、ロボットアーム軌道情報2100内のエンドエフェクタ100は、図11に示した修正後のエンドエフェクタ設計情報300に基づいて描画される。ワーク110は、ワーク設計情報500に基づいて描画される。ロボットアーム1510は、ロボットアーム設計情報1700に基づいて描画される。治具1500は、治具設計情報1800に基づいて描画される。 FIG. 22 is an explanatory diagram showing an example of a display screen that displays output data according to Example 2. The display screen 2200 displays robot arm trajectory information 2100 and dimension correction information 1300. The end effector 100 in the robot arm trajectory information 2100 is drawn based on the corrected end effector design information 300 shown in FIG. 11. The workpiece 110 is drawn based on the workpiece design information 500. The robot arm 1510 is drawn based on the robot arm design information 1700. The jig 1500 is drawn based on the jig design information 1800.

表示画面2200では、ロボットアーム軌道情報2100を時刻2101ごとに静止画として表示してもよく、時刻2101の時系列な動画で再生可能に表示してもよい。 On the display screen 2200, the robot arm trajectory information 2100 may be displayed as a still image for each time 2101, or may be displayed in a time-series video format that can be played back at the times 2101.

このように、実施例2によれば、作用位置ap間のロボットアーム1510の姿勢を姿勢変化が最小となるように、ロボットアーム1510の姿勢を生成することができ、配置可能エンドエフェクタ100およびロボットアーム1510による作業の効率化を図ることができる。 In this way, according to Example 2, the posture of the robot arm 1510 can be generated so that the posture change of the robot arm 1510 between the action positions ap is minimized, and the efficiency of the work performed by the deployable end effector 100 and the robot arm 1510 can be improved.

また、配置可能エンドエフェクタ100の姿勢で移動可能なロボットアーム1510の軌道を生成することで、エンドエフェクタ100の寸法修正自体は作用位置apに対して有効だが、そのような配置可能エンドエフェクタ100の姿勢でロボットアーム1510の軌道が生成できないことにより発生するエンドエフェクタ100の寸法の再修正といった手戻りを回避することができる。 In addition, by generating a trajectory of the movable robot arm 1510 in the posture of the deployable end effector 100, the dimensional correction of the end effector 100 itself is effective for the action position ap, but it is possible to avoid rework such as re-correcting the dimensions of the end effector 100, which occurs when the trajectory of the robot arm 1510 cannot be generated in such a posture of the deployable end effector 100.

また、上述した実施例1および実施例2にかかる修正装置200は、下記(1)~(14)のように構成することもできる。 The correction device 200 according to the above-mentioned first and second embodiments can also be configured as follows (1) to (14).

(1)修正装置200は、エンドエフェクタ設計情報300と、前記エンドエフェクタ100により作用される複数の作用位置を有するワーク設計情報500と、を取得する取得部801と、前記エンドエフェクタ設計情報300および前記ワーク設計情報500に基づいて、前記ワーク110と干渉せずに前記ワーク110の作用位置apで作用可能に配置された前記エンドエフェクタ100の第1姿勢1202を、前記作用位置apごとに算出する算出部802と、前記算出部802による算出結果に基づいて、前記エンドエフェクタ100を構成する部品301の寸法304を修正する修正部803と、を有する。 (1) The correction device 200 has an acquisition unit 801 that acquires end effector design information 300 and work design information 500 having multiple action positions acted upon by the end effector 100, a calculation unit 802 that calculates, for each action position ap, a first attitude 1202 of the end effector 100 that is positioned so as to be able to act at the action position ap of the workpiece 110 without interfering with the workpiece 110 based on the end effector design information 300 and the workpiece design information 500, and a correction unit 803 that corrects the dimension 304 of the part 301 that constitutes the end effector 100 based on the calculation result by the calculation unit 802.

(2)上記(1)の修正装置200において、前記修正部803は、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在するか否かを判断し、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在する場合、修正後の前記エンドエフェクタ設計情報300を出力する。 (2) In the correction device 200 described above in (1), the correction unit 803 determines whether the first attitude 1202 exists at all of the multiple action positions ap, and if the first attitude 1202 exists at all of the multiple action positions ap, outputs the corrected end effector design information 300.

(3)上記(1)の修正装置200において、前記修正部803は、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在するか否かを判断し、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在する場合、前記第1姿勢1202と前記作用位置apとを関連付けた配置可能エンドエフェクタ姿勢情報1200を出力する。 (3) In the correction device 200 of (1) above, the correction unit 803 determines whether the first attitude 1202 exists at all of the multiple action positions ap, and if the first attitude 1202 exists at all of the multiple action positions ap, outputs deployable end effector attitude information 1200 that associates the first attitude 1202 with the action positions ap.

(4)上記(1)の修正装置200において、前記修正部803は、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在するか否かを判断し、前記第1姿勢1202が存在しない作用位置apが1つでも存在する場合、前記部品301の寸法304を修正する。 (4) In the correction device 200 of (1) above, the correction unit 803 determines whether the first attitude 1202 exists at all of the multiple action positions ap, and if there is even one action position ap at which the first attitude 1202 does not exist, corrects the dimension 304 of the part 301.

(5)上記(4)の修正装置200において、前記算出部802は、前記第1姿勢1202が存在しない作用位置apでの前記エンドエフェクタ100の第2姿勢1202について、前記ワーク110と前記エンドエフェクタ100との干渉が解消する干渉解消方向130を特定し、前記エンドエフェクタ100を構成する部品301群の中から、前記干渉解消方向130と前記部品群の各々の部品301が有する方向342との角度差に基づいて、修正対象部品301を選択し、前記修正部803は、前記修正対象部品301の寸法304を修正する。 (5) In the correction device 200 of (4) above, the calculation unit 802 identifies an interference resolution direction 130 in which the interference between the workpiece 110 and the end effector 100 is resolved for the second orientation 1202 of the end effector 100 at the action position ap where the first orientation 1202 does not exist, and selects a correction target part 301 from a group of parts 301 constituting the end effector 100 based on the angle difference between the interference resolution direction 130 and the direction 342 of each part 301 in the group of parts, and the correction unit 803 corrects the dimension 304 of the correction target part 301.

(6)上記(5)の修正装置200において、前記算出部802は、前記角度差が最小となる方向342を有する前記部品301を前記修正対象部品301として選択する。 (6) In the correction device 200 of (5) above, the calculation unit 802 selects the part 301 having the direction 342 in which the angle difference is smallest as the part 301 to be corrected.

(7)上記(6)の修正装置200において、前記算出部802は、前記第2姿勢1202が複数存在する場合、前記第2姿勢1202ごとに前記干渉解消方向130を特定し、前記干渉解消方向130ごとに前記角度差が最小となる方向342を有する部品候補を特定し、前記部品候補の中から前記角度差が最小となる方向342を有する前記部品301を前記修正対象部品301として選択する。 (7) In the correction device 200 of (6) above, when there are multiple second orientations 1202, the calculation unit 802 identifies the interference resolution direction 130 for each second orientation 1202, identifies a part candidate having a direction 342 in which the angle difference is smallest for each interference resolution direction 130, and selects the part 301 having the direction 342 in which the angle difference is smallest from among the part candidates as the part 301 to be corrected.

(8)上記(6)の修正装置200において、前記算出部802は、前記第2姿勢1202が複数存在する場合、前記第2姿勢1202ごとに前記干渉解消方向130と、前記ワーク110と前記エンドエフェクタ100との干渉領域120と、を特定し、前記干渉領域120の体積が最大となる特定の干渉解消方向130との角度差が最小となる方向342を有する前記部品301を、前記修正対象部品301として選択する。 (8) In the correction device 200 of (6) above, when there are multiple second orientations 1202, the calculation unit 802 identifies the interference resolution direction 130 and the interference area 120 between the workpiece 110 and the end effector 100 for each second orientation 1202, and selects the part 301 having the direction 342 with the smallest angle difference from the specific interference resolution direction 130 in which the volume of the interference area 120 is maximized as the part 301 to be corrected.

(9)上記(6)の修正装置200において、前記算出部802は、前記第2姿勢1202が複数存在する場合、前記第2姿勢1202ごとに前記干渉解消方向130と、前記ワーク110と前記エンドエフェクタ100との干渉領域120と、を特定し、前記干渉領域120の体積が最小となる特定の干渉解消方向130との角度差が最小となる方向342を有する前記部品301を、前記修正対象部品301として選択する。 (9) In the correction device 200 of (6) above, when there are multiple second orientations 1202, the calculation unit 802 identifies the interference resolution direction 130 and the interference area 120 between the workpiece 110 and the end effector 100 for each second orientation 1202, and selects the part 301 having the direction 342 with the smallest angle difference from the specific interference resolution direction 130 in which the volume of the interference area 120 is the smallest, as the part 301 to be corrected.

(10)上記(4)の修正装置200において、前記修正部803は、前記エンドエフェクタ設計情報300を、前記エンドエフェクタ100の修正後の寸法304で更新し、更新後の前記エンドエフェクタ設計情報300に基づいて、前記複数の作用位置apのすべてにおいて前記第1姿勢1202が存在するか否かを判断し、前記第1姿勢1202が存在しない作用位置apが1つでも存在する場合、前記部品301の寸法304を修正する。 (10) In the modification device 200 of (4) above, the modification unit 803 updates the end effector design information 300 with the modified dimensions 304 of the end effector 100, and determines whether the first orientation 1202 exists at all of the multiple action positions ap based on the updated end effector design information 300. If there is at least one action position ap where the first orientation 1202 does not exist, the modification unit 803 modifies the dimensions 304 of the part 301.

実施例2
(11)上記(1)の修正装置200において、前記取得部801は、前記エンドエフェクタ100が装着されるロボットアーム設計情報1700を取得し、前記ロボットアーム設計情報1700と、前記修正部803による修正後の前記エンドエフェクタ設計情報300と、前記複数の作用位置apの各々の作用位置apにおける前記第1姿勢1202と、に基づいて、前記ロボットアーム1510に装着された前記エンドエフェクタ100を第1作用位置apから第2作用位置apへ移動させる前記ロボットアーム1510の軌道を生成する生成部1904と、を有する。
Example 2
(11) In the correction device 200 of (1) above, the acquisition unit 801 acquires robot arm design information 1700 to which the end effector 100 is attached, and has a generation unit 1904 that generates a trajectory of the robot arm 1510 that moves the end effector 100 attached to the robot arm 1510 from a first action position ap to a second action position ap based on the robot arm design information 1700, the end effector design information 300 after correction by the correction unit 803, and the first attitude 1202 at each of the multiple action positions ap.

(12)上記(11)の修正装置200において、前記生成部1904は、前記エンドエフェクタ100が、前記第1作用位置apの前記第1姿勢1202を前記第1作用位置apでとり、前記第2作用位置apの前記第1姿勢1202を前記第2作用位置apでとるように、前記ロボットアーム1510の軌道を生成する。 (12) In the correction device 200 of (11) above, the generation unit 1904 generates a trajectory of the robot arm 1510 so that the end effector 100 takes the first posture 1202 of the first action position ap at the first action position ap and the first posture 1202 of the second action position ap at the second action position ap.

(13)上記(12)の修正装置200において、前記生成部1904は、前記第1作用位置apの前記第1姿勢1202が複数存在する場合、前記第1作用位置apの前記第1姿勢1202の各々から前記第2作用位置apの前記第1姿勢1202への前記ロボットアームの姿勢変化に基づいて、前記第1作用位置apの複数の前記第1姿勢1202の中から軌道生成対象となる前記第1作用位置apの前記第1姿勢1202を特定する。 (13) In the correction device 200 of (12) above, when there are a plurality of first attitudes 1202 of the first action position ap, the generation unit 1904 identifies the first attitude 1202 of the first action position ap that is to be the subject of trajectory generation from among the plurality of first attitudes 1202 of the first action position ap, based on the attitude change of the robot arm from each of the first attitudes 1202 of the first action position ap to the first attitude 1202 of the second action position ap.

(14)上記(12)の修正装置200において、前記生成部1904は、前記第2作用位置apの前記第1姿勢1202が複数存在する場合、前記第1作用位置apの前記第1姿勢1202から前記第2作用位置apの前記第1姿勢1202の各々への前記ロボットアームの姿勢変化に基づいて、前記第2作用位置apの複数の前記第1姿勢1202の中から軌道生成対象となる前記第2作用位置apの前記第1姿勢1202を特定する。 (14) In the correction device 200 of (12) above, when there are a plurality of first attitudes 1202 of the second action position ap, the generation unit 1904 identifies the first attitude 1202 of the second action position ap that is to be the subject of trajectory generation from among the plurality of first attitudes 1202 of the second action position ap, based on the attitude change of the robot arm from the first attitude 1202 of the first action position ap to each of the first attitudes 1202 of the second action position ap.

なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。たとえば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。 The present invention is not limited to the above-described embodiments, but includes various modified examples and equivalent configurations within the spirit of the appended claims. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to having all of the configurations described. Furthermore, a portion of the configuration of one embodiment may be replaced with the configuration of another embodiment. Furthermore, the configuration of another embodiment may be added to the configuration of one embodiment. Furthermore, other configurations may be added, deleted, or replaced with part of the configuration of each embodiment.

また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。 Furthermore, each of the configurations, functions, processing units, processing means, etc. described above may be realized in part or in whole in hardware, for example by designing them as integrated circuits, or may be realized in software by a processor interpreting and executing a program that realizes each function.

各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の記録媒体に格納することができる。 Information such as programs, tables, and files that realize each function can be stored in a storage device such as a memory, a hard disk, or an SSD (Solid State Drive), or in a recording medium such as an IC (Integrated Circuit) card, an SD card, or a DVD (Digital Versatile Disc).

また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。 In addition, the control lines and information lines shown are those considered necessary for explanation, and do not necessarily represent all control lines and information lines necessary for implementation. In reality, it is safe to assume that almost all components are interconnected.

100 エンドエフェクタ
110 ワーク
120 干渉領域
130 干渉解消方向
200 修正装置
201 プロセッサ
202 記憶デバイス
300 エンドエフェクタ設計情報
301 部品
304 寸法
341 種類
342 方向
343 数値
500 ワーク設計情報
600 作用位置情報
700 探索パラメタ情報
801 取得部
802 算出部
803 修正部
1200 配置可能エンドエフェクタ姿勢情報
1202 姿勢
1300 寸法修正情報
1500 治具
1510 ロボットアーム
1601、1602 軌道
1700 ロボットアーム設計情報
1904 生成部
2100 ロボットアーム軌道情報
100 End effector 110 Workpiece 120 Interference area 130 Interference resolution direction 200 Correction device 201 Processor 202 Storage device 300 End effector design information 301 Part 304 Dimension 341 Type 342 Direction 343 Value 500 Workpiece design information 600 Action position information 700 Search parameter information 801 Acquisition unit 802 Calculation unit 803 Correction unit 1200 Placeable end effector attitude information 1202 Attitude 1300 Dimension correction information 1500 Jig 1510 Robot arm 1601, 1602 Trajectory 1700 Robot arm design information 1904 Generation unit 2100 Robot arm trajectory information

Claims (13)

エンドエフェクタに関する設計情報と、前記エンドエフェクタにより作用される複数の作用位置を有するワークに関する設計情報と、を取得する取得部と、
前記エンドエフェクタに関する設計情報および前記ワークに関する設計情報に基づいて、前記ワークと干渉せずに前記ワークの作用位置で作用可能に配置された前記エンドエフェクタの第1姿勢を、前記作用位置ごとに算出する算出部と、
前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記第1姿勢が存在しない作用位置が1つでも存在する場合、前記算出部による算出結果に基づいて、前記エンドエフェクタを構成する部品の寸法を修正する修正部と、を有し、
前記算出部は、前記第1姿勢が存在しない作用位置での前記エンドエフェクタの第2姿勢について、前記ワークと前記エンドエフェクタとの干渉が解消する干渉解消方向を特定し、前記エンドエフェクタを構成する部品群の中から、前記干渉解消方向と前記部品群の各々の部品が有する方向との角度差に基づいて、修正対象部品を選択し、
前記修正部は、前記修正対象部品の寸法を修正する、
ことを特徴とする修正装置。
An acquisition unit that acquires design information regarding an end effector and design information regarding a workpiece having a plurality of action positions that are acted on by the end effector;
a calculation unit that calculates, for each action position, a first attitude of the end effector that is disposed so as to be able to act at an action position of the workpiece without interfering with the workpiece, based on design information regarding the end effector and design information regarding the workpiece;
a correction unit that determines whether or not the first orientation exists in all of the plurality of action positions, and corrects dimensions of components that configure the end effector based on a calculation result by the calculation unit when there is at least one action position in which the first orientation does not exist,
the calculation unit specifies an interference resolution direction in which interference between the workpiece and the end effector is resolved for a second orientation of the end effector at an operating position where the first orientation does not exist, and selects a correction target part from a group of parts constituting the end effector based on an angle difference between the interference resolution direction and a direction of each part in the group of parts;
The correction unit corrects a dimension of the correction target part.
A repair device comprising:
請求項1に記載の修正装置であって、
前記修正部は、前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記複数の作用位置のすべてにおいて前記第1姿勢が存在する場合、修正後の前記エンドエフェクタに関する設計情報を出力する、
ことを特徴とする修正装置。
2. The correction device of claim 1,
the correction unit determines whether the first orientation exists in all of the plurality of action positions, and when the first orientation exists in all of the plurality of action positions, outputs design information related to the end effector after the correction.
A repair device comprising:
請求項1に記載の修正装置であって、
前記修正部は、前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記複数の作用位置のすべてにおいて前記第1姿勢が存在する場合、前記第1姿勢と前記作用位置とを関連付けた姿勢情報を出力する、
ことを特徴とする修正装置。
2. The correction device of claim 1,
the correction unit determines whether the first attitude exists in all of the plurality of action positions, and when the first attitude exists in all of the plurality of action positions, outputs attitude information in which the first attitude is associated with the plurality of action positions.
A repair device comprising:
請求項1に記載の修正装置であって、
前記算出部は、前記角度差が最小となる方向を有する前記部品を前記修正対象部品として選択する、
ことを特徴とする修正装置。
2. The correction device of claim 1,
the calculation unit selects the part having a direction in which the angle difference is smallest as the correction target part.
A repair device comprising:
請求項4に記載の修正装置であって、
前記算出部は、前記第2姿勢が複数存在する場合、前記第2姿勢ごとに前記干渉解消方向を特定し、前記干渉解消方向ごとに前記角度差が最小となる方向を有する部品候補を特定し、前記部品候補の中から前記角度差が最小となる方向を有する前記部品を前記修正対象部品として選択する、
ことを特徴とする修正装置。
5. The correction device according to claim 4,
the calculation unit, when there are a plurality of the second orientations, identifies the interference resolution direction for each of the second orientations, identifies a component candidate having a direction in which the angular difference is smallest for each of the interference resolution directions, and selects, from the component candidates, the component having the direction in which the angular difference is smallest as the correction target component.
A repair device comprising:
請求項4に記載の修正装置であって、
前記算出部は、前記第2姿勢が複数存在する場合、前記第2姿勢ごとに前記干渉解消方向と、前記ワークと前記エンドエフェクタとの干渉領域と、を特定し、前記干渉領域の体積が最大となる特定の干渉解消方向との角度差が最小となる方向を有する前記部品を、前記修正対象部品として選択する、
ことを特徴とする修正装置。
5. The correction device according to claim 4,
the calculation unit, when there are a plurality of the second orientations, identifies the interference resolution direction and an interference area between the workpiece and the end effector for each of the second orientations, and selects, as the correction target part, the part having a direction that has a minimum angle difference from a specific interference resolution direction in which the volume of the interference area is maximized.
A repair device comprising:
請求項4に記載の修正装置であって、
前記算出部は、前記第2姿勢が複数存在する場合、前記第2姿勢ごとに前記干渉解消方向と、前記ワークと前記エンドエフェクタとの干渉領域と、を特定し、前記干渉領域の体積が最小となる特定の干渉解消方向との角度差が最小となる方向を有する前記部品を、前記修正対象部品として選択する、
ことを特徴とする修正装置。
5. The correction device according to claim 4,
the calculation unit, when there are a plurality of the second orientations, identifies the interference resolution direction and an interference area between the workpiece and the end effector for each of the second orientations, and selects, as the correction target part, the part having a direction that has a minimum angle difference from a specific interference resolution direction in which the volume of the interference area is minimum.
A repair device comprising:
請求項1に記載の修正装置であって、
前記修正部は、前記エンドエフェクタに関する設計情報を、前記エンドエフェクタの修正後の寸法で更新し、更新後の前記エンドエフェクタに関する設計情報に基づいて、前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記第1姿勢が存在しない作用位置が1つでも存在する場合、前記部品の寸法を修正する、
ことを特徴とする修正装置。
2. The correction device of claim 1,
the correction unit updates design information related to the end effector with the corrected dimensions of the end effector, determines whether or not the first orientation exists in all of the plurality of action positions based on the updated design information related to the end effector, and corrects the dimensions of the part if there is at least one action position where the first orientation does not exist.
A repair device comprising:
請求項1に記載の修正装置であって、
前記取得部は、前記エンドエフェクタが装着されるロボットアームに関する設計情報を取得し、
前記ロボットアームに関する設計情報と、前記修正部による修正後の前記エンドエフェクタに関する設計情報と、前記複数の作用位置の各々の作用位置における前記第1姿勢と、に基づいて、前記ロボットアームに装着された前記エンドエフェクタを第1作用位置から第2作用位置へ移動させる前記ロボットアームの軌道を生成する生成部と、
を有することを特徴とする修正装置。
2. The correction device of claim 1,
The acquisition unit acquires design information related to a robot arm to which the end effector is attached,
a generation unit that generates a trajectory of the robot arm that moves the end effector attached to the robot arm from a first operating position to a second operating position, based on design information about the robot arm, design information about the end effector after the correction by the correction unit, and the first attitude at each of the plurality of operating positions;
A repair device comprising:
請求項9に記載の修正装置であって、
前記生成部は、前記エンドエフェクタが、前記第1作用位置の前記第1姿勢を前記第1作用位置でとり、前記第2作用位置の前記第1姿勢を前記第2作用位置でとるように、前記ロボットアームの軌道を生成する、
ことを特徴とする修正装置。
10. The correction device of claim 9,
the generation unit generates a trajectory of the robot arm such that the end effector takes the first posture of the first operating position at the first operating position and takes the first posture of the second operating position at the second operating position.
A repair device comprising:
請求項10に記載の修正装置であって、
前記生成部は、前記第1作用位置の前記第1姿勢が複数存在する場合、前記第1作用位置の前記第1姿勢の各々から前記第2作用位置の前記第1姿勢への前記ロボットアームの姿勢変化に基づいて、前記第1作用位置の複数の前記第1姿勢の中から軌道生成対象となる前記第1作用位置の前記第1姿勢を特定する、
ことを特徴とする修正装置。
11. The correction device of claim 10,
the generation unit, when there are a plurality of first postures of the first operational position, identifies the first posture of the first operational position that is to be a target for trajectory generation from among the plurality of first postures of the first operational position, based on a posture change of the robot arm from each of the first postures of the first operational position to the first posture of the second operational position.
A repair device comprising:
プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する修正装置による修正方法であって、A correction method using a correction device having a processor that executes a program and a storage device that stores the program, comprising:
前記プロセッサは、The processor,
エンドエフェクタに関する設計情報と、前記エンドエフェクタにより作用される複数の作用位置を有するワークに関する設計情報と、を取得する取得処理と、An acquisition process for acquiring design information on an end effector and design information on a workpiece having a plurality of action positions to be acted on by the end effector;
前記エンドエフェクタに関する設計情報および前記ワークに関する設計情報に基づいて、前記ワークと干渉せずに前記ワークの作用位置で作用可能に配置された前記エンドエフェクタの第1姿勢を、前記作用位置ごとに算出する算出処理と、a calculation process for calculating, for each action position, a first attitude of the end effector that is disposed so as to be able to act at an action position of the workpiece without interfering with the workpiece, based on design information regarding the end effector and design information regarding the workpiece;
前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記第1姿勢が存在しない作用位置が1つでも存在する場合、前記算出処理による算出結果に基づいて、前記エンドエフェクタを構成する部品の寸法を修正する修正処理と、を実行し、determining whether the first orientation exists in all of the plurality of operating positions, and if there is at least one operating position where the first orientation does not exist, executing a correction process to correct dimensions of components that configure the end effector based on a calculation result by the calculation process;
前記算出処理では、前記プロセッサは、前記第1姿勢が存在しない作用位置での前記エンドエフェクタの第2姿勢について、前記ワークと前記エンドエフェクタとの干渉が解消する干渉解消方向を特定し、前記エンドエフェクタを構成する部品群の中から、前記干渉解消方向と前記部品群の各々の部品が有する方向との角度差に基づいて、修正対象部品を選択し、In the calculation process, the processor identifies an interference resolution direction in which interference between the workpiece and the end effector is resolved for a second orientation of the end effector at an operating position where the first orientation does not exist, and selects a correction target part from a group of parts constituting the end effector based on an angle difference between the interference resolution direction and a direction of each part in the group of parts;
前記修正処理では、前記プロセッサは、前記修正対象部品の寸法を修正する、In the modification process, the processor modifies a dimension of the part to be modified.
ことを特徴とする修正方法。A correction method comprising:
プロセッサに、The processor:
エンドエフェクタに関する設計情報と、前記エンドエフェクタにより作用される複数の作用位置を有するワークに関する設計情報と、を取得する取得処理と、An acquisition process for acquiring design information on an end effector and design information on a workpiece having a plurality of action positions to be acted on by the end effector;
前記エンドエフェクタに関する設計情報および前記ワークに関する設計情報に基づいて、前記ワークと干渉せずに前記ワークの作用位置で作用可能に配置された前記エンドエフェクタの第1姿勢を、前記作用位置ごとに算出する算出処理と、a calculation process for calculating, for each action position, a first attitude of the end effector that is disposed so as to be able to act at an action position of the workpiece without interfering with the workpiece, based on design information regarding the end effector and design information regarding the workpiece;
前記複数の作用位置のすべてにおいて前記第1姿勢が存在するか否かを判断し、前記第1姿勢が存在しない作用位置が1つでも存在する場合、前記算出処理による算出結果に基づいて、前記エンドエフェクタを構成する部品の寸法を修正する修正処理と、を実行させ、determining whether the first orientation exists in all of the plurality of operating positions, and if there is even one operating position in which the first orientation does not exist, executing a correction process to correct dimensions of components that configure the end effector based on a calculation result by the calculation process;
前記算出処理では、前記プロセッサに、前記第1姿勢が存在しない作用位置での前記エンドエフェクタの第2姿勢について、前記ワークと前記エンドエフェクタとの干渉が解消する干渉解消方向を特定し、前記エンドエフェクタを構成する部品群の中から、前記干渉解消方向と前記部品群の各々の部品が有する方向との角度差に基づいて、修正対象部品を選択する処理を実行させ、In the calculation process, the processor is caused to execute a process of identifying an interference resolution direction in which interference between the workpiece and the end effector is resolved for a second orientation of the end effector in an operating position where the first orientation does not exist, and selecting a correction target part from a group of parts constituting the end effector based on an angle difference between the interference resolution direction and a direction of each part in the group of parts;
前記修正処理では、前記プロセッサに、前記修正対象部品の寸法を修正する処理を実行させる、In the modification process, the processor is caused to execute a process of modifying a dimension of the modification target part.
ことを特徴とする修正プログラム。A fix characterized by:
JP2022034951A 2022-03-08 2022-03-08 Correction device, correction method, and correction program Active JP7657170B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022034951A JP7657170B2 (en) 2022-03-08 2022-03-08 Correction device, correction method, and correction program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022034951A JP7657170B2 (en) 2022-03-08 2022-03-08 Correction device, correction method, and correction program

Publications (2)

Publication Number Publication Date
JP2023130586A JP2023130586A (en) 2023-09-21
JP7657170B2 true JP7657170B2 (en) 2025-04-04

Family

ID=88050347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022034951A Active JP7657170B2 (en) 2022-03-08 2022-03-08 Correction device, correction method, and correction program

Country Status (1)

Country Link
JP (1) JP7657170B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000167791A (en) 1998-12-04 2000-06-20 Nissan Motor Co Ltd Robot hand device and method of using the same
JP2002301672A (en) 2001-04-03 2002-10-15 Yaskawa Electric Corp Industrial robot position control method
JP2007334678A (en) 2006-06-15 2007-12-27 Fanuc Ltd Robot simulation device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04143807A (en) * 1990-10-05 1992-05-18 Toyota Motor Corp Robot off-line programming device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000167791A (en) 1998-12-04 2000-06-20 Nissan Motor Co Ltd Robot hand device and method of using the same
JP2002301672A (en) 2001-04-03 2002-10-15 Yaskawa Electric Corp Industrial robot position control method
JP2007334678A (en) 2006-06-15 2007-12-27 Fanuc Ltd Robot simulation device

Also Published As

Publication number Publication date
JP2023130586A (en) 2023-09-21

Similar Documents

Publication Publication Date Title
US9056394B2 (en) Methods and systems for determining efficient robot-base position
US20200338730A1 (en) Trajectory planning device, trajectory planning method and program
CN102216037B (en) Method and device for optimizing a programmed movement path of an industrial robot
JP2013099815A (en) Robot programming device
JP2013132731A (en) Robot control system, robot system and robot control method
US12106016B2 (en) Robotic assembly of a mesh surface
JP2007108916A (en) Off-line teaching device for robot
JP2014014912A (en) Robot system, robot, robot control device, robot control method and robot control program
JP2015174184A (en) Control device
JP2021181142A (en) Inverse kinematics arithmetic unit and inverse kinematics arithmetic method
CN113814988B (en) 7-degree-of-freedom SRS type mechanical arm inverse solution analysis method and device and electronic equipment
US11959743B1 (en) Dimensionless kinematics calibration method based on virtual point and related apparatus thereof
JP7657170B2 (en) Correction device, correction method, and correction program
JP2010046751A (en) Moving route calculation method for multi-articular robot and robot system
EP4385679A1 (en) Robot teaching data creation system and program
US12117809B2 (en) Planning device, planning method, and planning program
JP6576125B2 (en) Simulation method and simulation apparatus
US20250205890A1 (en) Determination of holding position on workpiece
JP3579742B2 (en) Teaching data correction method, correction program and correction device
JP2021186929A (en) Control method for multi-axis robot
CN117207174A (en) Robot motion trajectory generation method and device, robot system and program
JPH0355182A (en) Multi-joint robot
Gueta et al. Multiple-goal task realization utilizing redundant degrees of freedom of task and tool attachment optimization
Hong et al. Research on the shortest path planning for non-standard workpiece Arc welding based on genetic algorithm
CN115302499B (en) Running carriage position determining device for robot, method thereof, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240619

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20241129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250206

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250318

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250325

R150 Certificate of patent or registration of utility model

Ref document number: 7657170

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150