[go: up one dir, main page]

JP6050565B2 - Robot control method and robot control apparatus - Google Patents

Robot control method and robot control apparatus Download PDF

Info

Publication number
JP6050565B2
JP6050565B2 JP2011060622A JP2011060622A JP6050565B2 JP 6050565 B2 JP6050565 B2 JP 6050565B2 JP 2011060622 A JP2011060622 A JP 2011060622A JP 2011060622 A JP2011060622 A JP 2011060622A JP 6050565 B2 JP6050565 B2 JP 6050565B2
Authority
JP
Japan
Prior art keywords
value
robot
tool
target position
variable
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
JP2011060622A
Other languages
Japanese (ja)
Other versions
JP2012196718A (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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2011060622A priority Critical patent/JP6050565B2/en
Publication of JP2012196718A publication Critical patent/JP2012196718A/en
Application granted granted Critical
Publication of JP6050565B2 publication Critical patent/JP6050565B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、複数の軸を有するロボットの手先に取り付けられるツールの先端を現在位置から目標位置に向けて移動させる際におけるロボットの制御方法およびロボットの制御装置に関する。   The present invention relates to a robot control method and a robot control device for moving a tip of a tool attached to a hand of a robot having a plurality of axes from a current position toward a target position.

工場などにおいてロボットが導入される目的としては、生産効率の向上、つまり生産タクトタイムの短縮を図るという点が大きい。生産タクトタイムの短縮を図るためには、ロボットにより行われる1つ1つの作業における動作時間を短くする必要がある。そのため、ロボットの動作時間が極力短くなるようなティーチング(教示)が作業者により行われている。すなわち、現状においてロボットの動作時間を短くする作業は、ティーチングを担当する作業者の個人能力に大きく依存していることになる。   The purpose of introducing robots in factories and the like is to improve production efficiency, that is, to shorten production tact time. In order to shorten the production tact time, it is necessary to shorten the operation time in each work performed by the robot. Therefore, teaching (teaching) is performed by an operator so that the operation time of the robot is as short as possible. That is, in the present situation, the work for shortening the operation time of the robot greatly depends on the individual ability of the worker in charge of teaching.

ロボットの手先に取り付けられるツールの先端を現在位置から目標位置に向けて移動させるために行われるティーチングでは、目標位置におけるツールの先端位置および向きを決定するための各変数の値は、作業者により全て指定されるようになっている。上記各変数とは、ツール先端の各座標値に加え、ツール(手先)の所定軸まわりの回転角度(例えば、4軸の水平多関節型ロボットの場合であれば第4軸まわりの回転角度)のことである。   In teaching performed to move the tip of the tool attached to the hand of the robot from the current position toward the target position, the value of each variable for determining the tip position and orientation of the tool at the target position is determined by the operator. All are specified. Each of the above variables is a rotation angle around a predetermined axis of the tool (hand) in addition to each coordinate value of the tool tip (for example, a rotation angle around the fourth axis in the case of a 4-axis horizontal articulated robot) That is.

さて、ロボットの手先に取り付けられるツールの種類および作業内容によっては、そのツールの向き(=手先の向き)にかかわらず、その作業を達成可能なケースがある。例えば、4軸の水平多関節型ロボットにツールとしてエアチャックが用いられる場合、ツールの向き(第4軸まわりの向き)にかかわらずワークを把持することができる。このように、ワークを把持可能な位置(目標位置)におけるツールの特定の向きが、どのような向きでもよい場合がある。   Now, depending on the type of tool attached to the hand of the robot and the work content, there are cases where the work can be achieved regardless of the direction of the tool (= the direction of the hand). For example, when an air chuck is used as a tool in a 4-axis horizontal articulated robot, the workpiece can be gripped regardless of the direction of the tool (the direction around the fourth axis). As described above, the specific direction of the tool at the position where the workpiece can be gripped (target position) may be any direction.

図7は、ツール先端を現在位置から目標位置に向けて移動させる際におけるロボットの態様を模式的に示している。図7に示すロボットは、4軸の水平多関節型ロボットであり、その手先にツールとしてエアチャックが取り付けられている。なお、図7では、各軸(各関節)および各リンクをそれぞれ丸印および直線で示すとともに、ツール先端を矢印で示している。図7において、実線で示す現在位置から点線または破線で示す目標位置までツール先端を移動させ、ツールであるエアチャックによりワークを把持する作業が行われる。   FIG. 7 schematically shows an aspect of the robot when the tool tip is moved from the current position toward the target position. The robot shown in FIG. 7 is a 4-axis horizontal articulated robot, and an air chuck is attached as a tool to the hand. In FIG. 7, each axis (each joint) and each link are indicated by a circle and a straight line, respectively, and the tip of the tool is indicated by an arrow. In FIG. 7, the tool tip is moved from the current position indicated by the solid line to the target position indicated by the dotted line or the broken line, and the work is gripped by the air chuck that is a tool.

ロボットが破線で示す状態となる場合、ツール先端がワークの正面(図7中、下側の面)に正対する向きになっている。一方、ロボットが点線で示す状態となる場合、ツール先端がワークの正面に対して斜め向きとなっている。これらの各状態では、互いに各軸(関節)の回転角度が異なっている。すなわち、ツールの向きに応じてロボットの姿勢が変化する。そのため、上記各状態では、現在位置からの移動時間が互いに異なる。具体的には、目標位置におけるロボットの姿勢を破線で示した状態とした場合に比べ、点線で示した状態とした場合のほうが、現在位置から目標位置までの移動時間が短くなる。その理由は、点線の状態のほうが、破線の状態に比べ、最も移動時間が長くなる第1軸の移動量(回転量)が小さくなるためである。   When the robot is in a state indicated by a broken line, the tip of the tool is oriented to face the front of the workpiece (the lower surface in FIG. 7). On the other hand, when the robot is in a state indicated by a dotted line, the tool tip is inclined with respect to the front surface of the workpiece. In each of these states, the rotation angles of the respective axes (joints) are different from each other. That is, the posture of the robot changes according to the direction of the tool. Therefore, in each of the above states, the movement times from the current position are different from each other. Specifically, the movement time from the current position to the target position is shorter when the posture of the robot at the target position is the state indicated by the broken line than when the posture is indicated by the dotted line. The reason is that the amount of movement (rotation amount) of the first axis that takes the longest movement time is smaller in the dotted line state than in the broken line state.

上記した目標位置のツール(手先)の向きを不問とするケースにおけるティーチングでも、目標位置におけるツールの先端位置および向きを決定するための変数の値は、作業者により全て指定されることになる。言い換えると、目標位置におけるロボットの姿勢(各軸の回転角度)が作業者により決定されることになる。しかし、前述したとおり、目標位置におけるツールの向きを不問とするケースでは、ツールの先端位置が同じ目標位置となるロボットの姿勢が多数存在する。作業者は、それら多数の姿勢の中から、最適な姿勢を選んで決定する必要がある。つまり、作業者は、ロボットの動作時間が出来るだけ短くなるように、目標位置におけるツールの向きを決定するための変数の値を設定する必要がある。図7のケースであれば、目標位置におけるロボットの姿勢(ツールの向き)を、破線で示した状態ではなく、点線で示した状態となるようなティーチング作業が要求される。   Even in the teaching in the case where the orientation of the tool (hand) at the target position is not questioned, the values of variables for determining the tip position and orientation of the tool at the target position are all designated by the operator. In other words, the posture of the robot at the target position (the rotation angle of each axis) is determined by the operator. However, as described above, in the case where the direction of the tool at the target position is unquestioned, there are many postures of the robot where the tip position of the tool is the same target position. The worker needs to select and determine the optimum posture from the many postures. That is, the operator needs to set the value of a variable for determining the direction of the tool at the target position so that the operation time of the robot is as short as possible. In the case of FIG. 7, teaching work is required so that the posture of the robot (the direction of the tool) at the target position is not the state indicated by the broken line but the state indicated by the dotted line.

このように、目標位置におけるツールの向きを不問とするケースにおいて、多数存在するロボットの姿勢の中から、動作時間が最短となる目標位置におけるロボットの姿勢(各軸の回転角度)を見つけ出す作業は非常に困難であり、たとえ熟練の作業者であっても、その作業に多大な時間を要することが多く、その作業負担が非常に大きい。   In this way, in cases where the orientation of the tool at the target position is unquestioned, the task of finding the robot posture (rotation angle of each axis) at the target position where the operation time is the shortest from among the many robot postures that exist It is very difficult, and even a skilled worker often requires a lot of time for the work, and the work load is very large.

ところで、ロボットを用いた作業のサイクルタイムを短縮するための従来技術としては、例えば特許文献1に記載された技術が挙げられる。特許文献1に記載の技術は、所定の方向や回転方向については位置制御を行わず、その代わりに、力やトルク値による制御を行うというものである。   By the way, as a prior art for shortening the cycle time of the operation | work using a robot, the technique described in patent document 1 is mentioned, for example. The technique described in Patent Document 1 does not perform position control for a predetermined direction or rotation direction, but instead performs control based on force or torque value.

特開平5−23982号公報JP-A-5-23982

しかしながら、特許文献1に記載の技術は、正しく目標位置が計算可能となるように、ユーザにより位置情報および力やトルク値情報が与えられるということを前提としている。そのため、目標位置におけるロボットの姿勢を求める必要があると考えられる。つまり、特許文献1に記載の技術は、従来と手法が異なるだけで同じ程度の作業負担を要するものであり、ユーザによる作業負担が軽減されることは少ないと考えられるため、上記課題を解決する手段であるとは言えない。   However, the technique described in Patent Document 1 is based on the premise that position information, force, and torque value information are given by the user so that the target position can be calculated correctly. For this reason, it is considered necessary to obtain the posture of the robot at the target position. That is, the technique described in Patent Document 1 requires the same work load only by using a different method from the conventional technique, and it is considered that the work load on the user is unlikely to be reduced. It cannot be said that it is a means.

本発明は上記事情に鑑みてなされたものであり、その目的は、目標位置におけるツールの向きを決定するための変数の値を設定する際におけるユーザの作業負担を軽減しつつ、ロボットの移動時間の短縮を図ることができるロボットの制御方法およびロボットの制御装置を提供することにある。   The present invention has been made in view of the above circumstances, and its object is to reduce the work load on the user when setting the value of a variable for determining the direction of the tool at the target position, while moving the robot. It is an object of the present invention to provide a robot control method and a robot control apparatus capable of shortening the length of the robot.

請求項1または2に記載の手段によれば、複数の軸を有するロボットの手先に取り付けられるツールの先端を現在位置から目標位置に向けて移動させる際の制御において、任意変数設定処理と、変数値決定処理とが実行される。一般的なティーチング作業では、ツールの先端位置および向きを決定するための各変数の値は、全てユーザにより指定される。なお、各変数の値とは、ツール先端の各座標値(X軸座標、Y軸座標およびZ軸座標の値)およびツール(手先)の所定軸まわりの回転角度(例えば、4軸の水平多関節型ロボットの場合であれば第4軸(Z軸)まわりの回転角度)の値である。しかし、手先に取り付けられるツールの種類および作業内容によっては、そのツールの向き(=手先の向き)にかかわらず、その作業を達成することが可能な場合もある。例えば、4軸の水平多関節型ロボットにツールとしてエアチャックが用いられる場合、ツールの向き(第4軸まわりの向き)にかかわらずワークを把持することができる。この場合、目標位置におけるツールの向きは、どのような向きでも構わないと言える。従来では、このような場合であっても、ツールの向きを決定するための変数(例えばZ軸まわりの回転角度)をユーザが指定していた。   According to the means of claim 1 or 2, in the control for moving the tip of a tool attached to the hand of a robot having a plurality of axes from the current position toward the target position, an arbitrary variable setting process, a variable A value determination process is executed. In general teaching work, the values of the variables for determining the tip position and orientation of the tool are all specified by the user. Note that the values of each variable are the coordinate values (X-axis coordinates, Y-axis coordinates, and Z-axis coordinates) of the tool tip, and the rotation angle (for example, four-axis horizontal multiple) of the tool (hand). In the case of an articulated robot, this is the value of the rotation angle around the fourth axis (Z axis). However, depending on the type of tool attached to the hand and the work content, the work may be able to be achieved regardless of the orientation of the tool (= the orientation of the hand). For example, when an air chuck is used as a tool in a 4-axis horizontal articulated robot, the workpiece can be gripped regardless of the direction of the tool (the direction around the fourth axis). In this case, it can be said that the orientation of the tool at the target position may be any orientation. Conventionally, even in such a case, the user has specified a variable (for example, a rotation angle around the Z axis) for determining the direction of the tool.

これに対し、本手段によれば、ツールの向きを決定するための変数のうち、ユーザにより指定される1つまたは2つの変数が任意の値に設定可能な任意変数として設定される(任意変数設定処理)。そして、ツール先端が現在位置から目標位置に移動する際に要する移動時間に基づく評価指標が設定され、その評価指標が最適化されて任意変数の値が決定される(変数値決定処理)。例えば、4軸の水平多関節型ロボットの手先にエアチャックが取り付けられる場合において、ツール(手先)のZ軸まわりの回転角度が任意変数として指定されれば、目標位置におけるツールのZ軸まわりの回転角度は、ツールの移動時間が極力短くなるような値に自動的に決定される。   On the other hand, according to the present means, one or two variables designated by the user among variables for determining the direction of the tool are set as arbitrary variables that can be set to arbitrary values (arbitrary variables Setting process). Then, an evaluation index based on the movement time required for the tool tip to move from the current position to the target position is set, and the evaluation index is optimized to determine the value of an arbitrary variable (variable value determination process). For example, when an air chuck is attached to the tip of a 4-axis horizontal articulated robot, if the rotation angle around the Z axis of the tool (hand) is specified as an arbitrary variable, the tool around the Z axis of the tool at the target position The rotation angle is automatically determined to a value that minimizes the movement time of the tool.

すなわち、変数値決定処理では、任意変数の値として設定可能な全ての数値範囲内の数値が所定の数だけ抽出される。例えばツール(手先)のZ軸まわりの回転角度の場合であれば、ロボットの機構的な制限から設定可能な数値範囲は「−180度〜+180度」となり、その範囲内の数値のうち、任意の数値が抽出される。そして、目標位置におけるツールのZ軸まわりの回転角度の値として上記抽出された各数値をそれぞれ設定した場合における評価指標が演算される。   That is, in the variable value determination process, a predetermined number of numerical values within all numerical values that can be set as the value of the arbitrary variable are extracted. For example, in the case of the rotation angle around the Z axis of the tool (hand), the settable numerical range is “−180 degrees to +180 degrees” due to the mechanical limitations of the robot. Are extracted. Then, an evaluation index when each of the extracted numerical values is set as the value of the rotation angle around the Z axis of the tool at the target position is calculated.

このように演算された各評価指標のうち、最小となる値を持つ評価指標が暫定最小値として設定される。そして、暫定最小値を初期値とし、評価指標の微分値または微小変分がゼロになるときのツールのZ軸まわりの回転角度(任意変数)の値が求められ、その求めた値が目標位置における任意変数の値として決定される。すなわち、上記数値(ツールのZ軸まわりの回転角度の値)の変化に応じた評価指標の変化が確認される。その際、暫定最小値を起点とした評価指標の変化が確認される。その結果、評価指標が変化しなくなるときの上記数値が、目標位置におけるツールのZ軸まわりの回転角度として決定される。このような演算を実現するためには、例えば、最急降下法、最適勾配法、ニュートン法などを用いるとよい。   Of each evaluation index calculated in this way, the evaluation index having the minimum value is set as the provisional minimum value. Then, the provisional minimum value is set as the initial value, and the value of the rotation angle (arbitrary variable) around the Z axis of the tool when the differential value or minute variation of the evaluation index becomes zero is obtained, and the obtained value is the target position. Is determined as the value of an arbitrary variable in That is, the change of the evaluation index according to the change of the numerical value (the value of the rotation angle around the Z axis of the tool) is confirmed. At that time, a change in the evaluation index starting from the provisional minimum value is confirmed. As a result, the numerical value when the evaluation index does not change is determined as the rotation angle around the Z axis of the tool at the target position. In order to realize such a calculation, for example, a steepest descent method, an optimum gradient method, a Newton method, or the like may be used.

さて、目標位置における任意変数(例えばツールのZ軸まわりの回転角度)が取り得る全ての値について評価指標を演算し、任意変数の関数(以下では評価関数と言う)として表す(グラフ化する)と、次のようなことが分かる。すなわち、その評価関数において、評価指標の最小値(最適値)の部分が谷の底になるとともに、評価指標の最小値ではない他の値(最小値に準ずる値であり、以下では局所値と言う)の部分も谷の底になる。このようになる理由は次のとおりである。   Now, an evaluation index is calculated for all possible values of an arbitrary variable (for example, the rotation angle around the Z axis of the tool) at the target position, and expressed as a function of the arbitrary variable (hereinafter referred to as an evaluation function) (graphed). The following can be understood. That is, in the evaluation function, the minimum value (optimum value) part of the evaluation index is the bottom of the valley, and other values that are not the minimum value of the evaluation index (values according to the minimum value, and in the following, local values and Say) also becomes the bottom of the valley. The reason for this is as follows.

ロボットは、ツール先端の位置(各座標値)が同じであっても、その姿勢が全く異なることがある。そのため、ロボットが取り得る様々な姿勢を、複数の形態に分けて区別するということが通常行われている。例えば4軸の水平多関節型ロボットの場合、第2軸の回転角度の極性が互いに異なる2種類の形態(腕形態)が存在する。つまり、4軸の水平多関節型ロボットの姿勢は、2種類の形態に分類される。また、6軸の垂直多関節型ロボットの場合、第1軸の回転角度が互いに180度異なる2種類の形態(腕形態)、第3軸の回転角度の極性が互いに異なる2種類の形態(肘形態)および第4軸の回転角度が互いに180度異なる2種類の形態(手首形態)が存在する。つまり、それら腕形態、肘形態および手首形態の組み合わせにより合計で8種類の形態に分類される。   Even if the position of the tool tip (each coordinate value) is the same, the robot may have a completely different posture. Therefore, various postures that can be taken by the robot are usually divided into a plurality of forms. For example, in the case of a 4-axis horizontal articulated robot, there are two types of forms (arm forms) with different polarities of the rotation angle of the second axis. That is, the posture of the 4-axis horizontal articulated robot is classified into two types. Further, in the case of a 6-axis vertical articulated robot, two types of configurations (arm configuration) in which the rotation angle of the first axis is 180 degrees different from each other, and two types of configurations (elbow) in which the polarities of the rotation angle of the third axis are different from each other There are two forms (wrist forms) in which the rotation angle of the fourth axis and the fourth axis are 180 degrees different from each other. That is, it is classified into 8 types in total by the combination of these arm forms, elbow forms, and wrist forms.

このような形態が同じであれば、ロボットの姿勢はあまり変化しない。しかし、形態が異なれば、ロボットの姿勢は大きく異なる。ロボットの姿勢が大きく異なるということは、移動時間に基づく評価指標の変化の傾向についても大きく異なることになる。そのため、ロボットの形態ごとに評価関数の谷が存在することになる。言い換えると、上記評価関数には、ロボットの形態が切り替わる境界である特異点を中心として、その両側に谷の部分が存在することになる。このようなことから、例えば、4軸の水平多関節型ロボットの場合、評価関数は少なくとも2つの谷を有し、6軸の垂直多関節型ロボットの場合、評価関数は少なくとも8つの谷を有することになる。   If such a form is the same, the posture of the robot does not change much. However, if the form is different, the posture of the robot is greatly different. The fact that the postures of the robots are greatly different means that the tendency of changes in the evaluation index based on the movement time is also greatly different. Therefore, there is a valley of evaluation functions for each robot form. In other words, the evaluation function has a valley portion on both sides of a singular point that is a boundary where the form of the robot changes. For this reason, for example, in the case of a 4-axis horizontal articulated robot, the evaluation function has at least two valleys, and in the case of a 6-axis vertical articulated robot, the evaluation function has at least 8 valleys. It will be.

変数値決定処理において、最小値ではなく局所値が目標位置における任意変数の値として設定されてしまうと、ロボットの動作時間を極力短くするという効果が若干低減する。しかし、本手段では、最初に全ての数値範囲内の数値から抽出された各数値を用いて演算された評価指標のうち最も値の小さいものを暫定最小値とし、その暫定最小値を起点として評価指標の変化を確認している。このように最小値に近いと考えられる暫定最小値の近傍において評価指標の変化がなくなる部分は、局所値ではなく、最小値である可能性が高い。また、言うまでもないが、最大値である可能性は極めて低い。このようなことから、本手段によれば、目標位置におけるツールのZ軸まわりの回転角度(任意変数)として、評価指標が最小となる数値、あるいは、それに準ずる数値が設定される。   In the variable value determination process, if the local value instead of the minimum value is set as the value of the arbitrary variable at the target position, the effect of shortening the robot operation time as much as possible is slightly reduced. However, in this measure, the evaluation index calculated first using each numerical value extracted from the numerical values in all numerical ranges is set to the provisional minimum value with the smallest value, and the provisional minimum value is used as the starting point. Changes in indicators are confirmed. A portion where the evaluation index does not change in the vicinity of the provisional minimum value considered to be close to the minimum value in this way is highly likely to be the minimum value instead of the local value. Needless to say, the possibility of the maximum value is extremely low. For this reason, according to this means, a numerical value that minimizes the evaluation index or a numerical value equivalent thereto is set as the rotation angle (arbitrary variable) of the tool around the Z-axis at the target position.

このようにして決定されたツールのZ軸まわりの回転角度(任意変数)の値は、移動時間に基づく評価指標が最小となる値、あるいは、それに極めて近い値である。すなわち、決定されたZ軸まわりの回転角度の値は、現在位置から目標位置に移動する際におけるツール(ロボット)の移動時間が極力短くなるような値となっている。ロボット側において上記した制御が自動的に実行されるため、ユーザがティーチング時に行う作業としては、目標位置におけるツール先端の各座標値を指定するとともに、ツール(手先)のZ軸まわりの回転角度を任意変数として指定するだけでよい。そして、値が指定された目標位置におけるツール先端のX、Y、Z軸座標の値に加え、上記したように自動的に決定された目標位置におけるツールのZ軸まわりの回転角度(任意変数)の値に基づいて、現在位置から目標位置に向けてツール先端が移動されることにより、ティーチング時におけるユーザ(作業者)の作業負担を軽減しつつ、ロボットの移動時間の短縮を図ることができる。   The value of the rotation angle (arbitrary variable) around the Z-axis of the tool determined in this way is a value at which the evaluation index based on the movement time is minimum or very close to it. That is, the determined value of the rotation angle around the Z-axis is a value that minimizes the movement time of the tool (robot) when moving from the current position to the target position. Since the above-mentioned control is automatically executed on the robot side, the user performs the teaching operation by specifying each coordinate value of the tool tip at the target position and setting the rotation angle of the tool (hand) around the Z axis. Just specify it as an arbitrary variable. Then, in addition to the X, Y and Z axis coordinate values of the tool tip at the specified target position, the rotation angle of the tool around the Z axis at the target position automatically determined as described above (arbitrary variable) Based on this value, the tool tip is moved from the current position toward the target position, thereby reducing the work load on the user (operator) during teaching and shortening the movement time of the robot. .

なお、ここでは、4軸の水平多関節型ロボットの場合を例に説明したが、例えば6軸の垂直多関節型ロボットの場合であれば次のようになる。すなわち、ツールの向きを決定するための変数(X、Y、Z軸まわりの各回転角度)のうち、いずれか1つ、あるいは、いずれか2つが任意変数として指定されれば、目標位置におけるツール(手先)の特定の軸まわりの回転角度が、ロボットの移動時間が極力短くなるような値に自動的に決定される。その結果、上記した4軸の水平多関節型ロボットの場合と同様の効果が得られる。すなわち、本手段によれば、複数の軸を有するロボット全般について、上記した作用および効果が得られる。   Here, the case of a 4-axis horizontal articulated robot has been described as an example. However, for example, the case of a 6-axis vertical articulated robot is as follows. That is, if any one or two of variables for determining the direction of the tool (respective rotation angles around the X, Y, and Z axes) are designated as arbitrary variables, the tool at the target position The rotation angle of the (hand) around a specific axis is automatically determined to a value that minimizes the movement time of the robot. As a result, the same effects as those of the above-described 4-axis horizontal articulated robot can be obtained. That is, according to this means, the above-mentioned operation and effects can be obtained for all robots having a plurality of axes.

また、変数値決定処理では、ツール先端が現在位置から目標位置まで移動する際に要する移動時間に基づく評価指標を用いるようになっている。従って、例えば加速度まで考慮した詳細な(正確な)移動時間を評価指標とすることも可能であるし、例えば速度のみを考慮した移動時間の概算値を評価指標とすることも可能である。このうち、前者のように評価指標を設定すれば、任意変数を決定する際の精度が高まる。すなわち、ロボットの動作時間を一層確実に短縮できる任意変数の値を設定することが可能となる。一方、後者のように評価指標を設定すれば、その演算を比較的容易に行い得るようになるため、演算時間の短縮を図ることが可能となる。   In the variable value determination process, an evaluation index based on the movement time required when the tool tip moves from the current position to the target position is used. Therefore, for example, it is possible to use a detailed (accurate) moving time considering acceleration as an evaluation index, and it is also possible to use an approximate value of moving time considering only speed as an evaluation index. Among these, if an evaluation index is set as in the former, the accuracy in determining an arbitrary variable increases. That is, it is possible to set an arbitrary variable value that can shorten the operation time of the robot more reliably. On the other hand, if the evaluation index is set as in the latter case, the calculation can be performed relatively easily, and therefore the calculation time can be shortened.

変数値決定処理において、抽出される数値の数が多いほど、最小値に近い数値が暫定最小値として設定される確率が高まる。最小値に近い数値である暫定最小値を起点として評価指標の変化を確認すれば、最終的に、評価指標を最小にする数値(最小値)が目標位置における任意変数の値として設定される確率(最小化の精度)が高まる。ただし、上記抽出される数値の数が多いほど、抽出した数値に対応する評価指標を求めるための演算時間が増加する。なお、評価指標の微分値または微小変分を求める演算については、上記抽出される数に影響を受けることなく、つまり暫定最小値が最小値にどれだけ近いかに関係なく、概ね一定の時間を要すると考えられる。そのため、全体としての演算時間は、上記評価指標を求めるための演算時間の長さに大きく影響を受ける。このようなトレードオフの関係を考慮した上ではあるものの、ユーザは、上記抽出される数値の数を適宜設定することにより、最小化の精度および演算時間について所望の仕様を満たすように設定を行うことができる。   In the variable value determination process, as the number of extracted numerical values increases, the probability that a numerical value close to the minimum value is set as the provisional minimum value increases. If the change in the evaluation index is confirmed with the provisional minimum value that is a numerical value close to the minimum value as the starting point, the probability that the numerical value that minimizes the evaluation index (minimum value) will eventually be set as the value of the arbitrary variable at the target position (Minimization accuracy) increases. However, as the number of extracted numerical values increases, the calculation time for obtaining an evaluation index corresponding to the extracted numerical values increases. It should be noted that the calculation for obtaining the differential value or minute variation of the evaluation index is not affected by the number extracted, that is, regardless of how close the provisional minimum value is to the minimum value, approximately constant time is required. I think that. Therefore, the calculation time as a whole is greatly affected by the length of the calculation time for obtaining the evaluation index. Although considering the trade-off relationship, the user sets the number of extracted numerical values as appropriate so as to satisfy the desired specifications for the minimization accuracy and calculation time. be able to.

本発明の第1の実施形態を示すもので、ロボットシステムの概略構成図The 1st Embodiment of this invention is shown, The schematic block diagram of a robot system 変数値決定処理の内容を示すフローチャートFlow chart showing the contents of variable value decision processing 評価指標を任意変数の関数として表す図A figure that represents an evaluation index as a function of an arbitrary variable 現在位置および目標位置におけるロボットの態様を模式的に表す図A diagram schematically showing the robot mode at the current position and target position 目標領域内のいずれかの位置に目標位置が設定される場合の図4相当図FIG. 4 equivalent view when the target position is set at any position within the target area 本発明の第2の実施形態を示す図1相当図FIG. 1 equivalent diagram showing a second embodiment of the present invention 従来技術を示す図4相当図FIG. 4 equivalent diagram showing the prior art

(第1の実施形態)
以下、本発明の第1の実施形態について図1〜図5を参照しながら説明する。
図1は、一般的な産業用ロボットのシステム構成を示している。図1に示すロボットシステム1は、ロボット2と、ロボット2を制御するコントローラ3と、コントローラ3に接続されたティーチングペンダント4とから構成されている。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to FIGS.
FIG. 1 shows a system configuration of a general industrial robot. A robot system 1 shown in FIG. 1 includes a robot 2, a controller 3 that controls the robot 2, and a teaching pendant 4 connected to the controller 3.

ロボット2は、例えば4軸の水平多関節型ロボットとして構成されている。ロボット2は、設置面に固定されるベース5と、ベース5上にZ軸(垂直軸)方向の軸心を持つ第1軸J1を中心に回転可能に連結された第1のアーム6と、第1のアーム6の先端部上にZ軸方向の軸心を持つ第2軸J2を中心に回転可能に連結された第2のアーム7と、第2のアーム7の先端部に上下動可能で且つ回転可能に設けられたシャフト8とから構成されている。シャフト8を上下動させる際の軸が第3軸J3であり、回転させる際の軸が第4軸J4である。シャフト8の先端部(下端部)には、フランジ9が位置決めされて着脱可能に取り付けられる。   The robot 2 is configured as, for example, a 4-axis horizontal articulated robot. The robot 2 includes a base 5 fixed to the installation surface, a first arm 6 connected to the base 5 so as to be rotatable about a first axis J1 having an axis in the Z-axis (vertical axis) direction, A second arm 7 that is rotatably connected around a second axis J2 having an axis center in the Z-axis direction on the tip of the first arm 6 and can be moved up and down to the tip of the second arm 7 And a shaft 8 that is rotatably provided. The axis when moving the shaft 8 up and down is the third axis J3, and the axis when rotating the shaft 8 is the fourth axis J4. A flange 9 is positioned and attached to the tip (lower end) of the shaft 8 so as to be detachable.

ベース5、第1のアーム6、第2のアーム7、シャフト8およびフランジ9は、ロボット2のアームとして機能する。アーム先端であるフランジ9(手先に相当)には、図示はしないが、例えばエアチャックなどのツールが取り付けられる。ロボット2に設けられる複数の軸(J1〜J4)はそれぞれに対応して設けられるモータ(図示せず)により駆動される。各モータの近傍には、それぞれの回転軸の回転角度(回転位置)を検出するための位置検出器(図示せず)が設けられている。   The base 5, the first arm 6, the second arm 7, the shaft 8 and the flange 9 function as an arm of the robot 2. Although not shown in the drawing, a tool such as an air chuck is attached to the flange 9 (corresponding to the hand) that is the tip of the arm. A plurality of axes (J1 to J4) provided in the robot 2 are driven by motors (not shown) provided corresponding to the respective axes. In the vicinity of each motor, a position detector (not shown) for detecting the rotation angle (rotation position) of each rotation shaft is provided.

一般に、産業用のロボットは、予めティーチングなどを実施することにより作成される所定の動作プログラムに従って動作するようになっている。コントローラ3(ロボットの制御装置に相当)は、その動作プログラムに基づいてモータの駆動をフィードバック制御し、ロボット2のアームの動作制御を行う。   In general, an industrial robot operates according to a predetermined operation program created by performing teaching or the like in advance. The controller 3 (corresponding to a control device for the robot) performs feedback control of the motor drive based on the operation program and controls the operation of the arm of the robot 2.

ティーチングペンダント4は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状に形成されている。ティーチングペンダント4には、各種のキースイッチが設けられており、使用者は、それらキースイッチにより種々の入力操作を行う。ティーチングペンダント4は、ケーブルを経由してコントローラ3に接続され、通信インターフェイスを経由してコントローラ3との間で高速のデータ転送を実行するようになっており、キースイッチの操作により入力された操作信号等の情報はティーチングペンダント4からコントローラ3へ送信される。   The teaching pendant 4 is, for example, a size that can be operated by being carried by a user or carried by a hand, and is formed in, for example, a thin, substantially rectangular box shape. The teaching pendant 4 is provided with various key switches, and the user performs various input operations using these key switches. The teaching pendant 4 is connected to the controller 3 via a cable, and performs high-speed data transfer with the controller 3 via a communication interface. An operation input by operating a key switch Information such as signals is transmitted from the teaching pendant 4 to the controller 3.

一般に、ロボット2の手先であるフランジ9に取り付けられるツールの先端を、現在位置から目標位置に向けて移動させる動作のティーチング作業が行われる際、目標位置におけるロボット2の姿勢をどのようなものにするかはユーザにより決定される。すなわち、このようなティーチング作業の際、ツール先端の目標位置を決定するための変数(ツール先端のX軸座標値、Y軸座標値およびZ軸座標値)と、目標位置におけるツール(手先)の向きを決定するための変数(ツールのZ軸まわりの回転角度)とは、全てユーザにより指定される。ただし、フランジ9に取り付けられるツールの種類(形状)およびそのツールを用いた作業の内容によっては、ツールの向きを不問とすることが可能である。例えば、ツールとしてエアチャックが用いられる場合、ツールのZ軸(第4軸J4)まわりの向きがどのような向きであっても、ワークを把持することができる。   In general, when a teaching operation is performed in which the tip of a tool attached to the flange 9 that is the hand of the robot 2 is moved from the current position toward the target position, the posture of the robot 2 at the target position is set to any type. Whether to do so is determined by the user. That is, in such teaching work, variables for determining the target position of the tool tip (X-axis coordinate value, Y-axis coordinate value and Z-axis coordinate value of the tool tip) and the tool (hand) at the target position All variables for determining the direction (the rotation angle of the tool around the Z axis) are specified by the user. However, depending on the type (shape) of the tool attached to the flange 9 and the content of work using the tool, the direction of the tool can be made unquestioned. For example, when an air chuck is used as a tool, the workpiece can be gripped regardless of the orientation of the tool around the Z axis (fourth axis J4).

本実施形態のロボットシステム1では、上記したツールの向きを不問とすることが可能なケースにおいて、ユーザは、ツール先端の目標位置を示すX、Y、Z軸座標の値を指定するだけでよく、目標位置におけるツールのZ軸まわりの回転角度Rzの値を指定しなくてよい。その代わりに、ユーザは、ツールのZ軸まわりの回転角度Rzを任意変数として指定する。これを受けて、コントローラ3は、回転角度Rzを、コントローラ3側で任意の値に設定可能な任意変数として設定する(任意変数設定処理)。また、詳細は後述するが、コントローラ3は、ツールの先端が現在位置から目標位置に移動する際に要する移動時間に基づく評価指標を設定し、その評価指標を最適化することで任意変数の値を決定する(変数値決定処理)。このように、コントローラ3は、任意変数設定処理手段および変数値決定処理手段として機能する。本実施形態では、コントローラ3により上記各処理が実行されることにより、目標位置におけるツールの向きが、ロボット2の移動時間が極力短くなるようなものに決定される。   In the robot system 1 of the present embodiment, in the case where the orientation of the tool can be made unquestioned, the user only has to specify the values of the X, Y, and Z axis coordinates indicating the target position of the tool tip. The value of the rotation angle Rz around the Z axis of the tool at the target position need not be specified. Instead, the user specifies the rotation angle Rz about the Z axis of the tool as an arbitrary variable. Receiving this, the controller 3 sets the rotation angle Rz as an arbitrary variable that can be set to an arbitrary value on the controller 3 side (arbitrary variable setting process). Although details will be described later, the controller 3 sets an evaluation index based on the movement time required when the tip of the tool moves from the current position to the target position, and optimizes the evaluation index to set the value of the arbitrary variable. Is determined (variable value determination processing). Thus, the controller 3 functions as an arbitrary variable setting processing unit and a variable value determination processing unit. In the present embodiment, the controller 3 executes the processes described above, so that the direction of the tool at the target position is determined such that the movement time of the robot 2 is as short as possible.

図2は、変数値決定処理の内容を示すフローチャートである。図2に示すように、変数値決定処理が開始されると(スタート)、任意変数の値として設定可能な全ての数値範囲内のN個(所定の数)の数値が抽出される(ステップS1)。本実施形態において、任意変数であるツールのZ軸まわりの回転角度Rzの設定可能な数値範囲は、ロボット2の機構的な制限から−180度〜+180度となる。なお、Nは正の整数である。ステップS2では、目標位置におけるツールのZ軸まわりの回転角度Rzの値として、ステップS1で抽出された各数値をそれぞれ設定した場合における評価指標が演算される。ステップS3では、ステップS2で演算された各評価指標のうち、最小となる値を持つ評価指標が暫定最小値として設定される。   FIG. 2 is a flowchart showing the contents of variable value determination processing. As shown in FIG. 2, when the variable value determination process is started (start), N (predetermined numbers) numerical values within all numerical value ranges that can be set as values of arbitrary variables are extracted (step S1). ). In the present embodiment, the settable numerical range of the rotation angle Rz around the Z axis of the tool, which is an arbitrary variable, is −180 degrees to +180 degrees due to the mechanical limitation of the robot 2. N is a positive integer. In step S2, an evaluation index is calculated when each numerical value extracted in step S1 is set as the value of the rotation angle Rz around the Z-axis of the tool at the target position. In step S3, an evaluation index having a minimum value among the evaluation indexes calculated in step S2 is set as a temporary minimum value.

ステップS4では、上記暫定最小値を初期値とし、評価指標の微分値または微小変分がゼロになるときのツールのZ軸まわりの回転角度(任意変数)の値が求められる。すなわち、上記数値(ツールのZ軸まわりの回転角度Rz)の変化に応じた評価指標の変化が確認される。その際、暫定最小値を起点とした評価指標の変化が確認される。その結果、評価指標が変化しなくなるときの上記数値が求められる。このようなステップS4の処理を実現するためには、最急降下法、最適勾配法、ニュートン法などを用い、下記(1)式の条件を満たすツールのZ軸まわりの回転角度Rzを求めればよい。ただし、f(Pc、Pd)は、ツール先端を現在位置Pcから目標位置Pdに向けて移動させる際の評価指標(評価関数)を示している。   In step S4, the provisional minimum value is used as an initial value, and the value of the rotation angle (arbitrary variable) around the Z axis of the tool when the differential value or minute variation of the evaluation index becomes zero is obtained. That is, the change of the evaluation index according to the change of the numerical value (the rotation angle Rz around the Z axis of the tool) is confirmed. At that time, a change in the evaluation index starting from the provisional minimum value is confirmed. As a result, the above numerical value when the evaluation index does not change is obtained. In order to realize the processing in step S4, the rotation angle Rz about the Z axis of the tool that satisfies the following equation (1) may be obtained using the steepest descent method, the optimum gradient method, the Newton method, and the like. . Here, f (Pc, Pd) represents an evaluation index (evaluation function) when the tool tip is moved from the current position Pc toward the target position Pd.

Figure 0006050565
Figure 0006050565

ステップS5では、ステップS4で求められた値が目標位置におけるツールのZ軸まわりの回転角度Rzの値として設定され、処理が終了する(エンド)。   In step S5, the value obtained in step S4 is set as the value of the rotation angle Rz around the Z axis of the tool at the target position, and the process ends (END).

図3は、目標位置におけるツールのZ軸まわりの回転角度Rz(任意変数)が取り得る全ての値について評価指標を演算し、任意変数の関数(以下では評価関数と言う)として表した(グラフ化した)ものである。この図3に示すように、評価関数は、2つの谷を有しており、評価指標の最小値(最適値)の部分が一方の谷の底に位置し、評価指標の最小値ではない他の値(最小値に準ずる値であり、以下では局所値と言う)の部分が他方の谷の底に位置している。評価関数にこのような2つの谷が存在する理由は、次のとおりである。   FIG. 3 calculates evaluation indexes for all possible values of the rotation angle Rz (arbitrary variable) of the tool around the Z-axis at the target position, and represents it as a function of the arbitrary variable (hereinafter referred to as an evaluation function) (graph). ). As shown in FIG. 3, the evaluation function has two valleys, and the minimum value (optimum value) portion of the evaluation index is located at the bottom of one valley and is not the minimum value of the evaluation index. The portion of the value (which is a value according to the minimum value, hereinafter referred to as a local value) is located at the bottom of the other valley. The reason why such two valleys exist in the evaluation function is as follows.

ロボットは、ツール先端の位置(X、Y、Z軸座標値)が同じであっても、その姿勢が全く異なることがある。そのため、通常、ロボットが取り得る様々な姿勢を、複数の形態に分けて区別するということが行われている。例えば、本実施形態のロボット2(4軸の水平多関節型ロボット)の場合、2つの形態に分類される。すなわち、第2軸J2の回転角度がプラス(+)になる腕形態と、第2軸J2の回転角度がマイナス(−)になる腕形態とに分類される。このような形態が同じであれば、ロボット2の姿勢はあまり変化しない。しかし、形態が異なれば、ロボット2の姿勢は大きく異なる。ロボット2の姿勢が大きく異なるということは、移動時間に基づく評価指標の変化の傾向についても大きく異なることになる。そのため、ロボット2の形態ごとに評価関数の谷が存在することになる。言い換えると、上記評価関数には、ロボット2の形態が切り替わる境界である特異点を中心として、その両側に谷の部分が存在することになる。このようなことから、本実施形態のロボット2の場合、評価関数は少なくとも2つの谷を有することになる。   Even if the position of the tool tip (X, Y, Z coordinate values) is the same, the robot may have a completely different posture. For this reason, various postures that can be taken by a robot are usually divided into a plurality of forms. For example, the robot 2 (four-axis horizontal articulated robot) of this embodiment is classified into two forms. That is, it is classified into an arm form in which the rotation angle of the second axis J2 is plus (+) and an arm form in which the rotation angle of the second axis J2 is minus (−). If such a form is the same, the posture of the robot 2 does not change much. However, if the form is different, the posture of the robot 2 is greatly different. The fact that the posture of the robot 2 is greatly different also means that the tendency of change in the evaluation index based on the movement time is greatly different. Therefore, the valley of the evaluation function exists for each form of the robot 2. In other words, the evaluation function includes valley portions on both sides of a singular point that is a boundary where the form of the robot 2 switches. For this reason, in the case of the robot 2 of the present embodiment, the evaluation function has at least two valleys.

変数値決定処理において、最小値ではなく局所値が目標位置における任意変数の値として設定されてしまうと、ロボット2の動作時間を極力短くするという効果が若干低減する。しかし、本実施形態では、最初に全ての数値範囲内から抽出された各数値を用いて評価指標を演算し、そのうち最も値の小さいものを暫定最小値とし、その暫定最小値を起点とした評価指標の変化を確認している。このように最小値に近いと考えられる暫定最小値の近傍において評価指標の変化がなくなる部分は、局所値ではなく、最小値である可能性が高い。また、言うまでもないが、最大値である可能性は極めて低い。このようなことから、本実施形態によれば、目標位置におけるツールのZ軸まわりの回転角度Rz(任意変数)の値として、評価指標が最小となる数値、あるいは、それに準ずる値が設定される。   In the variable value determination process, if the local value instead of the minimum value is set as the value of the arbitrary variable at the target position, the effect of shortening the operation time of the robot 2 as much as possible is slightly reduced. However, in the present embodiment, the evaluation index is first calculated using the numerical values extracted from all the numerical ranges, and the smallest value among them is set as the temporary minimum value, and the evaluation starting from the temporary minimum value is used as the starting point. Changes in indicators are confirmed. A portion where the evaluation index does not change in the vicinity of the provisional minimum value considered to be close to the minimum value in this way is highly likely to be the minimum value instead of the local value. Needless to say, the possibility of the maximum value is extremely low. For this reason, according to the present embodiment, as the value of the rotation angle Rz (arbitrary variable) around the Z axis of the tool at the target position, a numerical value that minimizes the evaluation index or a value corresponding thereto is set. .

このようにして決定されたツールのZ軸まわりの回転角度Rz(任意変数)の値は、移動時間に基づく評価指標が最小となる値、あるいは、それに極めて近い値である。すなわち、決定されたZ軸まわりの回転角度Rzの値は、現在位置から目標位置に向けて移動する際におけるツール(ロボット2)の移動時間が極力短くなるような値となっている。コントローラ3により上記した制御が自動的に実行されるため、ユーザがティーチング時に行う作業としては、前述したように目標位置におけるツール先端の各座標値を指定するとともに、ツールのZ軸まわりの回転角度Rzを任意変数として指定するだけでよい。そして、コントローラ3は、値が指定された目標位置におけるツール先端のX、Y、Z軸座標の値に加え、上記した各処理により自動的に決定された目標位置におけるツールのZ軸回りの回転角度Rzの値(ツールの向き)に基づいて、ツール先端を現在位置から目標位置に向けて移動させることができる。これにより、ティーチング時におけるユーザ(作業者)の作業負担が軽減されるとともに、ロボット2の移動時間が短縮されることになる。   The value of the rotation angle Rz (arbitrary variable) around the Z axis of the tool determined in this way is a value that minimizes the evaluation index based on the movement time, or a value very close to it. That is, the determined value of the rotation angle Rz about the Z axis is a value that minimizes the movement time of the tool (robot 2) when moving from the current position toward the target position. Since the above-described control is automatically executed by the controller 3, the work performed by the user during teaching is to specify each coordinate value of the tool tip at the target position as described above, and to rotate the tool around the Z axis. It is only necessary to specify Rz as an arbitrary variable. Then, the controller 3 rotates the tool around the Z axis at the target position automatically determined by the above-described processes in addition to the X, Y, and Z axis coordinate values of the tool tip at the target position where the value is specified. Based on the value of the angle Rz (tool direction), the tool tip can be moved from the current position toward the target position. As a result, the burden on the user (operator) during teaching is reduced, and the movement time of the robot 2 is shortened.

変数値決定処理においては、ツール先端が現在位置から目標位置まで移動する際に要する移動時間に基づく評価指標を用いるようにしている。従って、例えば各軸の加速度まで考慮した詳細な(正確な)移動時間を評価指標とすることも可能であるし、例えば各軸の速度のみを考慮した移動時間の概算値(近似値)を評価指標とすることも可能である。つまり、評価指標を設定する上での自由度が高い。このうち、前者のように評価指標を設定すれば、任意変数を決定する際の精度が高まる。すなわち、ロボット2の動作時間を一層確実に短縮できる任意変数の値を設定することが可能となる。一方、後者のように評価指標を設定すれば、その評価指標を求める演算を比較的容易に行い得るようになるため、演算時間の短縮を図ることが可能となる。   In the variable value determination process, an evaluation index based on the movement time required when the tool tip moves from the current position to the target position is used. Therefore, for example, detailed (accurate) travel time considering the acceleration of each axis can be used as an evaluation index, and for example, an approximate value (approximate value) of travel time considering only the speed of each axis is evaluated. It can also be used as an index. That is, the degree of freedom in setting the evaluation index is high. Among these, if an evaluation index is set as in the former, the accuracy in determining an arbitrary variable increases. That is, it is possible to set the value of an arbitrary variable that can shorten the operation time of the robot 2 more reliably. On the other hand, if the evaluation index is set as in the latter case, the calculation for obtaining the evaluation index can be performed relatively easily, so that the calculation time can be shortened.

変数値決定処理では、ステップS1にて抽出する数値の数が多い(Nの値が大きい)ほど、真の最小値に近い数値が暫定最小値として設定される確率が高まる。真の最小値に近い数値である暫定最小値を起点として評価指標の変化を確認すれば、最終的に、評価指標が最小となる数値(真の最小値)が目標位置における任意変数として決定される確率(以下では最小化の精度と言う)が高まる。ただし、上記抽出する数値の数が多いほど、ステップS2で行われる評価指標を求めるための演算時間が増加する。なお、ステップS4で行われる評価指標の微分値または微小変分を求めるための演算については、上記抽出する数に影響を受けることなく、つまり暫定最小値が真の最小値にどれだけ近いかに関係なく、概ね一定の演算時間になると考えられる。そのため、変数値決定処理全体としての演算時間は、ステップS2で行われる演算時間の長さに大きく影響を受ける。このようなトレードオフの関係を考慮した上ではあるものの、ユーザは、上記抽出する数(Nの値)を適宜設定することにより、最小化の精度および演算時間について所望の仕様を満たすように設定することができる。このように、本実施形態のロボットシステム1は、ユーザフレンドリなシステムであると言える。   In the variable value determination process, as the number of numerical values extracted in step S1 increases (the value of N is larger), the probability that a numerical value close to the true minimum value is set as the provisional minimum value increases. If the change of the evaluation index is confirmed starting from the provisional minimum value that is close to the true minimum value, the numerical value that minimizes the evaluation index (true minimum value) is finally determined as an arbitrary variable at the target position. Probability (hereinafter referred to as minimization accuracy) increases. However, the more numerical values to be extracted, the longer the computation time for obtaining the evaluation index performed in step S2. Note that the calculation for obtaining the differential value or minute variation of the evaluation index performed in step S4 is not affected by the number to be extracted, that is, how close the provisional minimum value is to the true minimum value. It is considered that the calculation time is almost constant. Therefore, the calculation time for the entire variable value determination process is greatly affected by the length of the calculation time performed in step S2. Although considering the trade-off relationship, the user sets the number to be extracted (the value of N) as appropriate so that the minimization accuracy and calculation time satisfy desired specifications. can do. Thus, it can be said that the robot system 1 of this embodiment is a user-friendly system.

次に、本実施形態のロボットシステム1により得られる具体的な効果について、図4および図5も参照して説明する。
図4は、ツール先端を現在位置Pcから目標位置Pdに向けて移動させる際におけるロボットの態様を模式的に示している。図4に示すロボットは、4軸の水平多関節型ロボットであり、その手先にツールとしてエアチャックが取り付けられている。なお、図4では、各軸および各リンクをそれぞれ丸印および直線で示すとともに、ツール先端を矢印で示している。また、現在位置におけるロボットの状態を点線で示すとともに、目標位置におけるロボットの状態を実線で示している。ここでは、現在位置Pcから目標位置Pdまでツール先端を移動させ、ツールであるエアチャックによりワークを把持する作業が行われるものとする。
Next, specific effects obtained by the robot system 1 of the present embodiment will be described with reference to FIGS. 4 and 5 as well.
FIG. 4 schematically shows an aspect of the robot when the tool tip is moved from the current position Pc toward the target position Pd. The robot shown in FIG. 4 is a four-axis horizontal articulated robot, and an air chuck is attached as a tool to the hand. In FIG. 4, each axis and each link are indicated by a circle and a straight line, respectively, and the tool tip is indicated by an arrow. In addition, the state of the robot at the current position is indicated by a dotted line, and the state of the robot at the target position is indicated by a solid line. Here, it is assumed that the tool tip is moved from the current position Pc to the target position Pd and the work is gripped by an air chuck that is a tool.

上記ケースにおけるティーチング作業は、従来の手法によれば次のように行われる。すなわち、ティーチングを担当する作業者は、まず、図4の(a)、(b)、(c)のそれぞれに示す状態(姿勢)について検討する。つまり、作業者は、ツールの向きを大まかに変えてみて、どの向きが良さそうであるかを推測する。その結果、(c)の状態が良さそうであると判断した場合、(c)の状態をベースにし、その(c)状態からツールの向きを少しずつ変化させたもの(図4の(d)、(e)、(f)のそれぞれに示す状態)について検討する。その結果、図4(f)の状態が最適である(移動時間が短くなる)という判断に至る。なお、ここでは、説明を簡略化するため、作業者が検討する状態の数を少なくするとともに、少ない繰り返し作業で最適な状態が見つかるケースとしている。実際には、さらに多くの状態について検討したり、繰り返し回数が増えたりすることもある。   The teaching work in the above case is performed as follows according to the conventional method. That is, the worker in charge of teaching first examines the states (postures) shown in FIGS. 4A, 4B, and 4C. That is, the worker roughly changes the direction of the tool and estimates which direction is likely to be good. As a result, when it is determined that the state of (c) looks good, the direction of the tool is gradually changed from the state of (c) based on the state of (c) ((d) of FIG. 4). , (E), and (f)). As a result, it is determined that the state of FIG. 4F is optimal (movement time is shortened). Here, in order to simplify the description, the number of states examined by the operator is reduced, and the optimum state can be found with a small number of repeated operations. In practice, more states may be considered or the number of repetitions may increase.

これに対し、本実施形態のロボットシステム1によれば、目標位置Pdにおけるツールの向きは、コントローラ3により、ロボット2の移動時間が極力短くなるような向きに自動的に決定される。従って、従来の手法のような繰り返しの過程を経ることなく、図4の(f)の状態(ツールの向き)が最適である(移動時間を極力短くできる)という結果が容易に得られる。   On the other hand, according to the robot system 1 of the present embodiment, the direction of the tool at the target position Pd is automatically determined by the controller 3 so that the movement time of the robot 2 is as short as possible. Therefore, the result of the state (tool direction) in FIG. 4 (optimum) (optimized movement time can be shortened as much as possible) can be easily obtained without going through an iterative process as in the conventional method.

このように、従来の手法によれば、ティーチングを担当する作業者の経験と推測により、少しずつ目標位置におけるロボットの状態(姿勢)を変化させる。そして、その作業を何回(例えば5回)か繰り返した結果、例えば、現在位置および目標位置におけるツールの向きが互いに同じロボットの姿勢(図4の(a))に比べ、ロボットの動作時間が短くなる(例えば25%程度の改善)ツールの向きを得ることが可能となっていた。これに対し、本実施形態のロボットシステム1によれば、ティーチングを担当する作業者の経験などに関係なく、従来の手法による効果と同程度の効果を得ることができる。さらに、その際、作業者は目標位置におけるロボットの姿勢について具体的に検討する必要がないため、その作業負担が大きく軽減されることになる。   Thus, according to the conventional method, the state (posture) of the robot at the target position is changed little by little based on the experience and guess of the worker in charge of teaching. Then, as a result of repeating the operation several times (for example, five times), for example, the operation time of the robot is larger than the posture of the robot having the same tool orientation at the current position and the target position ((a) in FIG. 4). It has become possible to obtain a tool orientation that is shorter (for example, an improvement of about 25%). On the other hand, according to the robot system 1 of the present embodiment, the same effect as that obtained by the conventional method can be obtained regardless of the experience of the worker in charge of teaching. Further, at that time, the operator does not need to specifically examine the posture of the robot at the target position, so that the work load is greatly reduced.

図5は、ツール先端を現在位置Pcから目標領域Ad内の任意の目標位置に向けて移動させる際における図4相当図である。この場合、図5の(a)に示す目標領域Ad内におけるどの位置に移動すればよいかについては実作業時にカメラなどの外部機器から与えられ、ティーチングの時点において作業者は知ることができないものとする。このようなケースでは、目標領域Ad内のどの位置に目標位置が設定されるかによってツールの最適な向きが変化する。そのため、従来の手法では、図5の(b)に示すように、目標領域Adを複数の小領域に分割し、それら小領域ごとに最適なツールの向きを教示するなど、非常に手間がかかっていた。また、どのように目標領域Adを分割するかによって、最適なツールの向きが得られるかどうかが変化するため、ティーチングを担当する作業者の個人能力に大きく依存する部分があった。   FIG. 5 is a view corresponding to FIG. 4 when the tool tip is moved from the current position Pc toward an arbitrary target position in the target area Ad. In this case, the position to be moved in the target area Ad shown in FIG. 5A is given from an external device such as a camera during actual work, and the worker cannot know at the time of teaching. And In such a case, the optimum direction of the tool changes depending on the position in the target area Ad where the target position is set. Therefore, in the conventional method, as shown in FIG. 5B, the target area Ad is divided into a plurality of small areas, and an optimum tool orientation is taught for each of the small areas. It was. Also, depending on how the target area Ad is divided, whether or not the optimum tool orientation can be obtained changes, and therefore there is a part that depends greatly on the individual ability of the worker in charge of teaching.

これに対し、本実施形態のロボットシステム1によれば、実作業時に初めてカメラなどの外部機器から目標位置が与えられるケースであっても、コントローラ3は、与えられた目標位置に基づいて、その目標位置における最適なツールの向きを自動的に決定する。そのため、従来の手法のように目標領域Adを小領域に分割し、それら小領域ごとにティーチングをするといった手間のかかる作業を省くことが可能となる。   On the other hand, according to the robot system 1 of the present embodiment, even in a case where a target position is given from an external device such as a camera for the first time during actual work, the controller 3 The optimum tool orientation at the target position is automatically determined. For this reason, it is possible to save the time-consuming work of dividing the target area Ad into small areas and teaching for each small area as in the conventional method.

(第2の実施形態)
以下、第1の実施形態に対し、対象とするロボットの種類を変更した第2の実施形態について図6を参照しながら説明する。
図6は、第1の実施形態における図1相当図であり、第1の実施形態と同一部分には同一符号を付して説明を省略する。図6に示す本実施形態のロボットシステム21は、図1に示した第1の実施形態のロボットシステム1に対し、ロボット2に代えてロボット22を備えている点が異なる。
(Second Embodiment)
Hereinafter, a second embodiment in which the type of the target robot is changed with respect to the first embodiment will be described with reference to FIG.
FIG. 6 is a view corresponding to FIG. 1 in the first embodiment, and the same parts as those in the first embodiment are denoted by the same reference numerals and description thereof is omitted. The robot system 21 of this embodiment shown in FIG. 6 differs from the robot system 1 of the first embodiment shown in FIG. 1 in that a robot 22 is provided instead of the robot 2.

ロボット22は、例えば6軸の垂直多関節型ロボットとして構成されている。すなわち、ベース25上には、Z軸方向の軸心を持つ第1軸J21を介してショルダ部26が水平方向に回転可能に連結されている。ショルダ部26には、Y軸方向の軸心を持つ第2軸J22を介して上方に延びる下アーム27の下端部が垂直方向に回転可能に連結されている。下アーム27の先端部には、Y軸方向の軸心を持つ第3軸J23を介して第1の上アーム28が垂直方向に回転可能に連結されている。第1の上アーム28の先端部には、X軸方向の軸心を持つ第4軸J24を介して第2の上アーム29が捻り回転可能に連結されている。第2の上アーム29の先端部には、Y軸方向の軸心を持つ第5軸J25を介して手首30が垂直方向に回転可能に連結されている。手首30には、X軸方向の軸心を持つ第6軸J26を介してフランジ31が捻り回転可能に連結されている。   The robot 22 is configured as, for example, a 6-axis vertical articulated robot. In other words, the shoulder portion 26 is coupled to the base 25 so as to be rotatable in the horizontal direction via a first axis J21 having an axis in the Z-axis direction. A lower end portion of a lower arm 27 extending upward is connected to the shoulder portion 26 via a second axis J22 having an axis in the Y-axis direction so as to be rotatable in the vertical direction. A first upper arm 28 is connected to the distal end portion of the lower arm 27 via a third axis J23 having an axis in the Y-axis direction so as to be rotatable in the vertical direction. A second upper arm 29 is connected to the distal end portion of the first upper arm 28 via a fourth axis J24 having an axis in the X-axis direction so as to be able to rotate. A wrist 30 is connected to the tip of the second upper arm 29 via a fifth axis J25 having an axis in the Y-axis direction so as to be rotatable in the vertical direction. A flange 31 is connected to the wrist 30 via a sixth axis J26 having an axis in the X-axis direction so as to be able to rotate.

ベース25、ショルダ部26、下アーム27、第1の上アーム28、第2の上アーム29、手首30およびフランジ31は、ロボット22のアームとして機能する。アーム先端であるフランジ31(手先に相当)には、図示はしないが、例えばエアチャックなどのツールが取り付けられる。ロボット22に設けられる複数の軸(J21〜J26)は、第1の実施形態のロボット2と同様、それぞれに対応して設けられるモータ(図示せず)により駆動される。また、各モータの近傍には、それぞれの回転軸の回転位置を検出するための位置検出器(図示せず)が設けられている。   The base 25, the shoulder portion 26, the lower arm 27, the first upper arm 28, the second upper arm 29, the wrist 30 and the flange 31 function as an arm of the robot 22. Although not shown, a tool such as an air chuck is attached to the flange 31 (corresponding to the hand) that is the tip of the arm. The plurality of axes (J21 to J26) provided in the robot 22 are driven by motors (not shown) provided corresponding to the respective axes, similarly to the robot 2 of the first embodiment. Further, in the vicinity of each motor, a position detector (not shown) for detecting the rotational position of each rotating shaft is provided.

このような本実施形態の構成においても、コントローラ3は、第1の実施形態と同様の任意変数設定処理および変数値決定処理を実行することが可能である。例えば、ツールの向きを決定するための変数(X、Y、Z軸まわりの回転角度Rx、Ry、Rz)のうち、いずれか1つ、あるいは、いずれか2つが任意変数として指定されれば、その指定された変数が任意変数として設定される(任意変数設定処理)。そして、コントローラ3により変数値決定処理が行われる。   Also in the configuration of the present embodiment, the controller 3 can execute the same arbitrary variable setting process and variable value determination process as in the first embodiment. For example, if any one or two of the variables for determining the direction of the tool (the rotation angles Rx, Ry, Rz around the X, Y, and Z axes) are designated as arbitrary variables, The designated variable is set as an arbitrary variable (arbitrary variable setting process). Then, the controller 3 performs variable value determination processing.

ただし、ツールの向きを決定するための変数のうち、いずれか2つが任意変数として指定された場合、図2のステップS4の処理において、(1)式に代えて下記(2)式〜(4)式のうちいずれかの条件を満たす任意変数の値を求めればよい。(2)式はX、Y軸まわりの回転角度Rx、Ryが任意変数として指定された場合の条件式を示し、(3)式はY、Z軸まわりの回転角度Ry、Rzが任意変数として指定された場合の条件式を示し、(4)式はX、Z軸まわりの回転角度Rx、Rzが任意変数として指定された場合の条件式を示す。   However, when any two of the variables for determining the direction of the tool are designated as arbitrary variables, the following formulas (2) to (4) are substituted for the formula (1) in the process of step S4 in FIG. ) The value of an arbitrary variable that satisfies one of the conditions may be obtained. Expression (2) shows a conditional expression when the rotation angles Rx and Ry around the X and Y axes are designated as arbitrary variables, and Expression (3) shows the rotation angles Ry and Rz around the Y and Z axes as arbitrary variables. The conditional expression when designated is shown, and the expression (4) shows the conditional expression when the rotation angles Rx and Rz around the X and Z axes are designated as arbitrary variables.

Figure 0006050565
Figure 0006050565

これにより、目標位置における任意変数の値(ツールの向き)が、ロボット22の移動時間が極力短くなるような値に自動的に決定される。その結果、本実施形態の構成においても、第1の実施形態と同様の作用および効果が得られる。   Thereby, the value of the arbitrary variable (tool direction) at the target position is automatically determined to a value that minimizes the movement time of the robot 22. As a result, also in the configuration of the present embodiment, the same operations and effects as those of the first embodiment can be obtained.

(その他の実施形態)
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、次のような変形または拡張が可能である。
上記各実施形態では、本発明を4軸の水平多関節型のロボット2、または6軸の垂直多関節型のロボット22に適用した例を説明したが、本発明は、複数の軸を有するロボット全般に適用可能である。
(Other embodiments)
The present invention is not limited to the embodiments described above and illustrated in the drawings, and the following modifications or expansions are possible.
In each of the above embodiments, the example in which the present invention is applied to the 4-axis horizontal articulated robot 2 or the 6-axis vertical articulated robot 22 has been described. However, the present invention is a robot having a plurality of axes. Applicable in general.

図面中、2、22はロボット、3はコントローラ(ロボットの制御装置、任意変数設定処理手段、変数値決定処理手段)、9、31はフランジ(手先)、J1〜J4、J21〜J26は軸を示す。   In the drawing, 2 and 22 are robots, 3 is a controller (robot control device, arbitrary variable setting processing means, variable value determination processing means), 9 and 31 are flanges (hands), and J1 to J4 and J21 to J26 are axes. Show.

Claims (2)

複数の軸を有するロボットの手先に取り付けられるツールの先端を現在位置から目標位置に向けて移動させる際におけるロボットの制御方法であって、
移動後のツールの向きを決定するための各変数のうち、ユーザにより指定される1つまたは2つの変数を任意の値に設定可能な任意変数として設定する任意変数設定処理と、
ツールの先端が前記現在位置から前記目標位置に移動する際に要する移動時間に基づく評価指標を設定し、その評価指標を最適化して前記目標位置における任意変数の値を決定する変数値決定処理と、
を含み、
前記変数値決定処理は、
前記任意変数の値として設定可能な全ての数値範囲内の数値を所定の数だけ任意に抽出する第1ステップと、
前記目標位置における前記任意変数の値として、前記抽出された各数値をそれぞれ設定した場合における前記評価指標を演算する第2ステップと、
前記演算された各評価指標のうち、最小となる値の評価指標を暫定最小値として設定する第3ステップと、
前記暫定最小値を起点とした前記評価指標の変化を示す微分値または微小変分を当該暫定最小値の近傍において求め、求めた微分値または微小変分がゼロになるときの前記任意変数の値を求め、その求めた値を前記目標位置における任意変数の値として決定する第4ステップと、
を含むことを特徴とするロボットの制御方法。
A method for controlling a robot when moving the tip of a tool attached to the hand of a robot having a plurality of axes from a current position toward a target position,
Arbitrary variable setting processing for setting one or two variables designated by the user as arbitrary variables that can be set to arbitrary values among the variables for determining the orientation of the tool after movement,
A variable value determination process for setting an evaluation index based on a movement time required when the tip of the tool moves from the current position to the target position, and optimizing the evaluation index to determine a value of an arbitrary variable at the target position; ,
Including
The variable value determination process includes:
A first step of arbitrarily extracting a predetermined number of numerical values within all numerical ranges that can be set as values of the arbitrary variable;
A second step of calculating the evaluation index when each of the extracted numerical values is set as the value of the arbitrary variable at the target position;
A third step of setting, as the provisional minimum value, an evaluation index of a minimum value among the calculated evaluation indices;
The derivative value or minute variation indicating the change in the evaluation index starting from the provisional minimum value is obtained in the vicinity of the provisional minimum value, and the value of the arbitrary variable when the obtained derivative value or minute variation becomes zero. And determining the determined value as the value of the arbitrary variable at the target position;
A method for controlling a robot, comprising:
複数の軸を有するロボットの手先に取り付けられるツールの先端を現在位置から目標位置に向けて移動させる際におけるロボットの制御装置であって、
移動後のツールの向きを決定するための各変数のうち、ユーザにより指定される1つまたは2つの変数を任意の値に設定可能な任意変数として設定する任意変数設定処理手段と、
手先が前記現在位置から前記目標位置に移動する際に要する移動時間に基づく評価指標を設定し、その評価指標を最適化して前記目標位置における任意変数の値を決定する変数値決定処理手段と、
を備え、
前記変数値決定処理手段は、
前記任意変数の値として設定可能な全ての数値範囲内の数値を所定の数だけ任意に抽出し、
前記目標位置における前記任意変数の値として、前記抽出された各数値をそれぞれ設定した場合における前記評価指標を演算し、
前記演算された各評価指標のうち、最小となる値の評価指標を暫定最小値として設定し、
前記暫定最小値を起点とした前記評価指標の変化を示す微分値または微小変分を当該暫定最小値の近傍において求め、求めた微分値または微小変分がゼロになるときの前記任意変数の値を求め、その求めた値を前記目標位置における任意変数の値として決定することを特徴とするロボットの制御装置。
A control device for a robot when moving the tip of a tool attached to the hand of a robot having a plurality of axes from a current position toward a target position,
Of the variables for determining the orientation of the tool after movement, one or two variables designated by the user are set as arbitrary variables that can be set to arbitrary values, arbitrary variable setting processing means,
A variable value determination processing means for setting an evaluation index based on a movement time required when the hand moves from the current position to the target position, and optimizing the evaluation index to determine a value of an arbitrary variable at the target position;
With
The variable value determination processing means includes:
Wherein the numbers in all the numerical ranges can be set as the value of any variable predetermined number extracted arbitrarily,
As the value of the arbitrary variable at the target position, the evaluation index when each of the extracted numerical values is set is calculated,
Among the calculated evaluation indices, the evaluation index of the minimum value is set as a provisional minimum value,
The derivative value or minute variation indicating the change in the evaluation index starting from the provisional minimum value is obtained in the vicinity of the provisional minimum value, and the value of the arbitrary variable when the obtained derivative value or minute variation becomes zero. And determining the determined value as the value of an arbitrary variable at the target position.
JP2011060622A 2011-03-18 2011-03-18 Robot control method and robot control apparatus Active JP6050565B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011060622A JP6050565B2 (en) 2011-03-18 2011-03-18 Robot control method and robot control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011060622A JP6050565B2 (en) 2011-03-18 2011-03-18 Robot control method and robot control apparatus

Publications (2)

Publication Number Publication Date
JP2012196718A JP2012196718A (en) 2012-10-18
JP6050565B2 true JP6050565B2 (en) 2016-12-21

Family

ID=47179469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011060622A Active JP6050565B2 (en) 2011-03-18 2011-03-18 Robot control method and robot control apparatus

Country Status (1)

Country Link
JP (1) JP6050565B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019111604A (en) * 2017-12-22 2019-07-11 セイコーエプソン株式会社 Control device, robot and robot system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187020A (en) * 1992-12-18 1994-07-08 Kobe Steel Ltd Operational locus instructing method for robot
JP3608673B2 (en) * 1995-09-11 2005-01-12 株式会社安川電機 Operation program creation method for industrial robots
JP4451725B2 (en) * 2004-06-09 2010-04-14 川崎重工業株式会社 Robot motion planning method, robot motion planning device, program, and recording medium

Also Published As

Publication number Publication date
JP2012196718A (en) 2012-10-18

Similar Documents

Publication Publication Date Title
CN102756374A (en) Robot controller, simple installation-type robot, and method of controlling simple installation-type robot
JP5701055B2 (en) 7-axis articulated robot control method, control program, and robot controller
JP6859756B2 (en) Control systems, controllers, control methods, and control programs
CN112207813B (en) Computing device, machine learning method, and non-transitory storage medium
JP2020011317A (en) Grasping posture evaluation device and grip posture evaluation program
JP2013144325A (en) Robot apparatus, and failure detection method
JP6697544B2 (en) Optimizer and vertical articulated robot equipped with the same
JP5708091B2 (en) Robot control method and robot control apparatus
EP3792011A1 (en) Robot control method
JP5803179B2 (en) Robot control method and robot control apparatus
JP2004025387A (en) Loading weight of articulated robot and automatic calculation method for position of gravity center of loading weight
JP6050565B2 (en) Robot control method and robot control apparatus
WO2017203971A1 (en) Autonomous work control system and autonomous work control method
JP7447568B2 (en) Simulation equipment and programs
JP2007168053A (en) Teaching method of vertical articulated type robot and industrial robot device
JP5803178B2 (en) Robot control method and robot control apparatus
JP2012196717A (en) Method and device for controlling robot
JP7424122B2 (en) Simulation equipment and programs
JP7583490B1 (en) Control device, control method, and program
JP7576890B1 (en) Control device, control method, and program
JP7576891B1 (en) Control device, control method, and program
JP7608851B2 (en) Control system, motion planning device, control device, motion planning and control method, motion planning method, and control method
Stolt et al. Force controlled assembly of flexible aircraft structure
KR100736136B1 (en) Welding Robot Control Method Considering Workability
JP5240046B2 (en) Robot control apparatus and robot control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150106

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160614

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161125

R150 Certificate of patent or registration of utility model

Ref document number: 6050565

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250