JP5939505B2 - Robot hand device and control method - Google Patents

Robot hand device and control method Download PDF

Info

Publication number
JP5939505B2
JP5939505B2 JP2012114552A JP2012114552A JP5939505B2 JP 5939505 B2 JP5939505 B2 JP 5939505B2 JP 2012114552 A JP2012114552 A JP 2012114552A JP 2012114552 A JP2012114552 A JP 2012114552A JP 5939505 B2 JP5939505 B2 JP 5939505B2
Authority
JP
Japan
Prior art keywords
robot hand
posture
target
control cycle
trajectory
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
JP2012114552A
Other languages
Japanese (ja)
Other versions
JP2013240847A (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.)
IHI Corp
Original Assignee
IHI Corp
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 IHI Corp filed Critical IHI Corp
Priority to JP2012114552A priority Critical patent/JP5939505B2/en
Publication of JP2013240847A publication Critical patent/JP2013240847A/en
Application granted granted Critical
Publication of JP5939505B2 publication Critical patent/JP5939505B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、位置と姿勢が変化する対象物に対して作業を行うロボットハンド装置に関する。また、本発明は、ロボットハンド制御方法に関する。   The present invention relates to a robot hand apparatus that performs an operation on an object whose position and orientation change. The present invention also relates to a robot hand control method.

対象物に対する作業として、対象物の把持、対象物への物体の取り付け、または、対象物からの物体の取り外しなどがある。   Work on the object includes gripping the object, attaching an object to the object, or removing the object from the object.

このような作業をロボットハンドで行うことにおいて、対象物の位置や姿勢が変化する場合に、ロボットハンドを対象物に追従させる。その状態で、ロボットハンドが、対象物に対して作業を行う。例えば、対象物が、一定の移動方向に一定の速度でコンベアにより搬送されている場合に、対象物と同じ運動をロボットハンドにさせる。この状態で、ロボットハンドが、搬送中の対象物を把持する。   When such a work is performed by the robot hand, the robot hand is made to follow the object when the position or posture of the object changes. In this state, the robot hand performs work on the object. For example, when the object is being conveyed by the conveyor at a constant speed in a certain movement direction, the robot hand is caused to perform the same movement as the object. In this state, the robot hand grips the object being transported.

このような制御は、例えば、下記の特許文献1に記載されている。特許文献1では、対象物をカメラで撮像し、撮像画像から対象物の特徴(例えば穴)を抽出し、この特徴に基づいて、ロボットハンドを対象物に追従させる制御を行っている。   Such control is described in Patent Document 1 below, for example. In Patent Document 1, an object is imaged with a camera, and a feature (for example, a hole) of the object is extracted from the captured image, and control is performed so that the robot hand follows the object based on this feature.

特許第4265088号公報Japanese Patent No. 4265088

ロボットハンドの軌道を、対象物の運動に合わせて予め設定しておくことがある。例えば、対象物と同じ運動をするように、ロボットハンドが設定軌道上を移動する制御を行う。これにより、対象物とロボットハンドの相対速度をゼロにした状態で、ロボットハンドが対象物に対して作業をする。   The trajectory of the robot hand may be set in advance in accordance with the movement of the object. For example, control is performed so that the robot hand moves on the set trajectory so as to perform the same motion as the object. As a result, the robot hand works on the object in a state where the relative speed between the object and the robot hand is zero.

このように設定軌道を用いる場合においても、対象物の位置と姿勢を逐次計測し、その計測結果に応じて設定軌道を変更することができる。これにより、設定軌道を用いながら、対象物の位置や姿勢と設定軌道との間に誤差があるときや、対象物の位置や姿勢の変化を予測できないとき等にも、対象物の位置と姿勢の変化に対応できる。   Even when the set trajectory is used as described above, the position and orientation of the object can be sequentially measured, and the set trajectory can be changed according to the measurement result. This allows the position and orientation of the object to be used even when there is an error between the position and orientation of the object and the set trajectory, or when the change in the position or orientation of the object cannot be predicted. Can respond to changes in

しかし、対象物の位置や姿勢の予期しない急激な変化により、対象物の位置や姿勢が、ロボットハンドの設定軌道や姿勢から大きく外れたときには、ロボットハンドの設定軌道や姿勢も急激に変更する必要がある。その結果、ロボットハンドの動作能力を超えた動作指令が、ロボットハンドに与えられる。すなわち、ロボットハンドが動作不能となってしまう。このように対象物の位置と姿勢が急激に変化することによる問題は、ロボットハンドの設定軌道を用いない制御においても同様である。   However, if the position or posture of the target object deviates significantly from the set orbit or posture of the robot hand due to unexpected sudden changes in the position or posture of the target object, it is necessary to change the set orbit or posture of the robot hand rapidly. There is. As a result, an operation command exceeding the operation capability of the robot hand is given to the robot hand. That is, the robot hand becomes inoperable. The problem caused by the sudden change in the position and orientation of the object is the same in the control that does not use the set trajectory of the robot hand.

そこで、本発明の目的は、対象物の位置と姿勢が急激に変化しても、この変化に対応するようにロボットハンドの動作を継続させる装置と方法を提供することにある。   Therefore, an object of the present invention is to provide an apparatus and a method for continuing the operation of a robot hand so as to cope with a change in the position and posture of an object suddenly.

上述の目的を達成するため、本発明によると、対象物に対して作業を行うロボットハンドと、
対象物の位置と姿勢を計測する対象物計測装置と、
ロボットハンドの位置と姿勢を計測するハンド計測装置と、
対象物計測装置とハンド計測装置の計測結果に基づいてロボットハンドを動作させる制御装置と、を備え、
(A)現在の制御周期において、対象物計測装置は、対象物の位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索し、
(B)次の制御周期において、ハンド計測装置は、ロボットハンドの位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンドの位置と姿勢を制御する、ことを特徴とするロボットハンド装置が提供される。
To achieve the above object, according to the present invention, a robot hand that performs an operation on an object;
An object measuring device for measuring the position and orientation of the object;
A hand measuring device for measuring the position and orientation of the robot hand;
A control device for operating the robot hand based on the measurement result of the object measuring device and the hand measuring device,
(A) In the current control cycle, the object measuring device measures the position and orientation of the object, and the control device determines the target position of the robot hand in the next control cycle based on the measured position and orientation. Search for the target posture,
(B) In the next control cycle, the hand measurement device measures the position and posture of the robot hand, and the control device sets the measured position and posture, and the target position and posture searched in (A). There is provided a robot hand device characterized by controlling the position and posture of the robot hand based on the above.

本発明の好ましい実施形態によると、制御装置は、ロボットハンドの設定軌道を記憶する記憶部を有し、
設定軌道における複数の経由位置の各々には、該経由位置に対応付けられたロボットハンドの姿勢が設定されており、
互いに対応付けられた経由位置と設定姿勢を1組として、制御装置は、前記(A)において、
(A1)現在の制御周期で計測した対象物の位置と姿勢に向けて、次の制御周期に対応する1組の経由位置と設定姿勢をそれぞれ移動させるように、設定軌道の平行移動と回転の一方または両方を行うことにより設定軌道を移動させ、
(A2)現在の制御周期で計測した対象物の位置と姿勢に向けて移動させた1組の前記経由位置と前記設定姿勢が、ロボットハンドの動作制約を満たすかどうかを判断し、
(A3)動作制約を満たさないと判断した場合には、移動後の設定軌道における別の1組の経由位置と設定姿勢を選択し、
(A4)前記(A3)で選択した別の1組の経由位置と設定姿勢が、ロボットハンドの動作制約を満たすかどうかを判断し、
ロボットハンドの動作制約を満たす組の経由位置と設定姿勢が見つかるまで、前記(A3)(A4)を繰り返し、
前記(A2)または(A4)において動作制約を満たす1組の経由位置と設定姿勢が見つかった場合には、当該1組の経由位置と設定姿勢を、次の制御周期における目標位置と目標姿勢として選択する。
According to a preferred embodiment of the present invention, the control device has a storage unit for storing the set trajectory of the robot hand,
At each of a plurality of via positions in the set trajectory, the posture of the robot hand associated with the via position is set,
With the via position and setting posture associated with each other as a set, the control device, in (A),
(A1) The parallel movement and rotation of the set trajectory are performed so that the set position and posture corresponding to the next control cycle are moved toward the position and posture of the object measured in the current control cycle, respectively. Move the set trajectory by doing one or both,
(A2) determining whether or not the set of the via positions and the set posture moved toward the position and posture of the object measured in the current control cycle satisfy the operation restriction of the robot hand;
(A3) If it is determined that the motion constraint is not satisfied, another set of via position and set posture in the set trajectory after movement is selected,
(A4) Determine whether another set of via positions and set postures selected in (A3) satisfy the robot hand movement constraints,
(A3) and (A4) are repeated until a set of via positions and set postures that satisfy the robot hand movement constraints are found,
When a set of via positions and set postures satisfying the operation constraints are found in (A2) or (A4), the set of via positions and set postures are set as target positions and target postures in the next control cycle. select.

好ましくは、前記(A3)では、移動後の設定軌道において、現在の制御周期で計測した対象物の位置に向けて移動させた前記経由位置よりも手前にある経由位置と、当該経由位置の設定姿勢とを選択する。
代わりに、前記(A3)では、移動後の設定軌道において、現在の制御周期で計測した対象物の位置に向けて移動させた前記経由位置から、設定範囲内に存在する経由位置と、当該経由位置の設定姿勢とを選択してもよい。
Preferably, in (A3), in the set trajectory after movement, the via position that is in front of the via position moved toward the position of the object measured in the current control cycle, and the setting of the via position Select posture.
Instead, in (A3), in the set trajectory after movement, from the via position moved toward the position of the object measured in the current control cycle, the via position existing within the set range, and the via A position setting posture may be selected.

参考例によると、制御装置は、前記(A)において、現在の制御周期で計測した対象物の位置と姿勢から設定範囲内にあり、かつ、ロボットハンドの現在の位置と姿勢から許容範囲内にある位置と姿勢を次の制御周期におけるロボットハンドの目標位置と目標姿勢とする。
According to the reference example , in (A), the control device is within the set range from the position and posture of the object measured in the current control cycle, and is within the allowable range from the current position and posture of the robot hand. A certain position and posture are set as the target position and target posture of the robot hand in the next control cycle.

また、上述の目的を達成するため、本発明によると、対象物に対して作業を行うロボットハンドを制御する方法であって、
(A)現在の制御周期において、対象物計測装置により、対象物の位置と姿勢を計測し、制御装置により、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索し、
(B)次の制御周期において、ハンド計測装置により、ロボットハンドの位置と姿勢を計測し、制御装置により、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンドの位置と姿勢を制御する、ことを特徴とするロボットハンド制御方法が提供される。
In order to achieve the above object, according to the present invention, there is provided a method for controlling a robot hand that performs an operation on an object,
(A) In the current control cycle, the position and orientation of the object are measured by the object measuring device, and the target position of the robot hand in the next control cycle is determined based on the measured position and posture by the control device. Search for the target posture,
(B) In the next control cycle, the hand measurement device measures the position and posture of the robot hand, and the control device uses the measured position and posture, and the target position and posture searched in (A). A robot hand control method characterized by controlling the position and orientation of the robot hand based on the above is provided.

上述した本発明によると、現在の制御周期において計測した対象物の位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索するので、対象物の位置と姿勢が急激に変化しても、この変化に対応するようにロボットハンドの動作を継続させることができる。   According to the present invention described above, the target position and posture of the robot hand in the next control cycle are searched based on the position and posture of the target measured in the current control cycle. Even if it changes, the operation of the robot hand can be continued to cope with this change.

本発明の実施形態によるロボットハンド装置の概略構成図である。It is a schematic block diagram of the robot hand apparatus by embodiment of this invention. 本発明の実施形態によるロボットハンド制御方法を示すフローチャートである。3 is a flowchart illustrating a robot hand control method according to an embodiment of the present invention. ロボットハンドの設定軌道の説明図である。It is explanatory drawing of the setting track | orbit of a robot hand. 設定軌道の移動を説明する図である。It is a figure explaining the movement of a setting orbit. 対象物の移動軌跡を示す一例である。It is an example which shows the movement locus | trajectory of a target object. 図5の場合における、時間に対する対象物の位置を示す。The position of the object with respect to time in the case of FIG. 5 is shown. 図5と図6の場合に対する図1のロボットハンドの設定軌道を示す。FIG. 7 shows a set trajectory of the robot hand of FIG. 1 for the cases of FIGS. 図5〜図7の場合のシミュレーション結果を示す。The simulation result in the case of FIGS. 5-7 is shown.

本発明の好ましい実施形態を図面に基づいて説明する。なお、各図において共通する部分には同一の符号を付し、重複した説明を省略する。   A preferred embodiment of the present invention will be described with reference to the drawings. In addition, the same code | symbol is attached | subjected to the common part in each figure, and the overlapping description is abbreviate | omitted.

図1は、本発明の実施形態によるロボットハンド装置10の概略構成図である。ロボットハンド装置10は、ロボットハンド3と対象物計測装置5とハンド計測装置7と制御装置9を備える。   FIG. 1 is a schematic configuration diagram of a robot hand apparatus 10 according to an embodiment of the present invention. The robot hand device 10 includes a robot hand 3, an object measuring device 5, a hand measuring device 7, and a control device 9.

ロボットハンド3は、対象物1に対して作業を行う。ロボットハンド3による対象物1に対する作業は、例えば、対象物1の把持、対象物1への物体の取り付け、または、対象物1からの物体の取り外しである。   The robot hand 3 performs work on the object 1. The work on the target object 1 by the robot hand 3 is, for example, gripping the target object 1, attaching an object to the target object 1, or removing an object from the target object 1.

図1の例では、ロボットハンド3は、第1〜第5のアーム3a〜3eと作業実行部3fを有する。
第1のアーム3aの一端部は、ハンド支持部11に第1の軸C1回りに回転可能に連結されている。第1のアーム3aの他端部には、第2のアーム3bの一端部が第2の軸C2回りに回転可能に連結されている。第2のアーム3bの他端部には、第3のアーム3cの一端部が第3の軸C3回りに回転可能に連結されている。第3のアーム3cの他端部には、第4のアーム3dの一端部が第4の軸C4回りに回転可能に連結されている。第4のアーム3dの他端部には、第5のアーム3eの一端部が第5の軸C5回りに回転可能に連結されている。第5のアーム3eの他端部には、作業実行部3fが第6の軸C6回りに回転可能に連結されている。
作業実行部3fは、対象物1に対して作業を行う。作業実行部3fは、対象物1を吸引することにより対象物1を保持し、この吸引を停止することにより、保持していた対象物1を解放する吸引部を有するものであってよい。代わりに、作業実行部3fは、複数の爪を有し、これらの爪を閉じることにより対象物1を挟んで把持し、これらの爪を開くことにより、把持していた対象物1を解放するものであってもよい。また、作業実行部3fは、他の構成を有していてもよい。
In the example of FIG. 1, the robot hand 3 includes first to fifth arms 3a to 3e and a work execution unit 3f.
One end of the first arm 3a is coupled to the hand support 11 so as to be rotatable about the first axis C1. One end of the second arm 3b is coupled to the other end of the first arm 3a so as to be rotatable about the second axis C2. One end of the third arm 3c is coupled to the other end of the second arm 3b so as to be rotatable about the third axis C3. One end of the fourth arm 3d is connected to the other end of the third arm 3c so as to be rotatable about the fourth axis C4. One end of a fifth arm 3e is connected to the other end of the fourth arm 3d so as to be rotatable about a fifth axis C5. A work execution unit 3f is coupled to the other end of the fifth arm 3e so as to be rotatable about a sixth axis C6.
The work execution unit 3 f performs work on the object 1. The work execution unit 3f may include a suction unit that holds the target 1 by sucking the target 1 and releases the held target 1 by stopping the suction. Instead, the work execution unit 3f has a plurality of claws, grips the object 1 by closing the claws, and releases the object 1 held by opening the claws. It may be a thing. The work execution unit 3f may have other configurations.

対象物計測装置5は、対象物1の位置と姿勢を計測する。対象物計測装置5は、例えば、対象物1を含む領域を撮像するカメラを用いたものであってよい。この場合、撮像した画像内における対象物1の位置と大きさに基づいて、対象物1の位置を求め、画像内における対象物1の向きに基づいて対象物1の姿勢を求める。なお、対象物計測装置5は、他の構成を有していてもよい。   The object measuring device 5 measures the position and orientation of the object 1. The object measuring device 5 may be, for example, a device that uses a camera that captures an area including the object 1. In this case, the position of the object 1 is obtained based on the position and size of the object 1 in the captured image, and the posture of the object 1 is obtained based on the orientation of the object 1 in the image. The object measuring device 5 may have other configurations.

ハンド計測装置7は、ロボットハンド3の位置と姿勢を計測する。図1の例では、ハンド計測装置7は、第1〜第5の軸C1〜C5回りに関する第1〜第5のアーム3a〜3eの回転角と、第6の軸C6回りに関する作業実行部3fの回転角とを計測し、これらの回転角に基づいて、ロボットハンド3(作業実行部3f)の位置と姿勢を求める。
なお、ハンド計測装置7は、第1〜第5のアーム3a〜3eと作業実行部3fの回転角をそれぞれ計測する複数の角度センサからなるが、図1では、簡単のため、第1のアーム3aの回転角を計測する角度センサ7のみを図示している。
The hand measuring device 7 measures the position and posture of the robot hand 3. In the example of FIG. 1, the hand measuring device 7 includes the rotation angle of the first to fifth arms 3a to 3e about the first to fifth axes C1 to C5 and the work execution unit 3f about the sixth axis C6. And the position and posture of the robot hand 3 (work execution unit 3f) are obtained based on these rotation angles.
The hand measurement device 7 includes a plurality of angle sensors that respectively measure the rotation angles of the first to fifth arms 3a to 3e and the work execution unit 3f. However, in FIG. Only the angle sensor 7 for measuring the rotation angle 3a is shown.

制御装置9は、対象物計測装置5とハンド計測装置7の計測結果、および、ロボットハンド3の設定軌道に基づいてロボットハンド3を動作させる。これにより、ロボットハンド3に前記作業を行わせる。   The control device 9 operates the robot hand 3 based on the measurement results of the object measuring device 5 and the hand measuring device 7 and the set trajectory of the robot hand 3. This causes the robot hand 3 to perform the above operation.

本実施形態では、設定軌道における複数の経由位置の各々には、該経由位置に対応付けられたロボットハンド3の姿勢が設定されている。互いに対応付けられた経由位置と設定姿勢を1組として、各組の経由位置と設定姿勢は、制御装置9の記憶部9aに記憶されている。   In the present embodiment, the posture of the robot hand 3 associated with each via position is set for each of a plurality of via positions in the set trajectory. The route position and the setting posture of each set are stored in the storage unit 9a of the control device 9 with the route position and the setting posture associated with each other as one set.

図1の例では、制御装置9は、第1〜第5のアーム3a〜3eを、それぞれ、第1〜第5の軸C5回りに回転させ、作業実行部3fを第6の軸C6回りに回転させる。これらの回転は、第1〜第5のアーム3a〜3eと作業実行部3fを回転駆動するサーボモータのドライバ(図示せず)を制御装置9が制御することにより行われてよい。   In the example of FIG. 1, the control device 9 rotates the first to fifth arms 3a to 3e about the first to fifth axes C5, respectively, and moves the work execution unit 3f about the sixth axis C6. Rotate. These rotations may be performed by the controller 9 controlling a driver (not shown) of a servo motor that rotationally drives the first to fifth arms 3a to 3e and the work execution unit 3f.

対象物計測装置5とハンド計測装置7と制御装置9は、以下の処理(A)(B)をこの順で繰り返し行う。   The object measuring device 5, the hand measuring device 7, and the control device 9 repeat the following processes (A) and (B) in this order.

(A)現在の制御周期において、対象物計測装置5は、対象物1の位置と姿勢を計測し、制御装置9は、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンド3の目標位置と目標姿勢を探索する。 (A) In the current control cycle, the object measuring device 5 measures the position and orientation of the object 1, and the control device 9 determines the robot hand 3 in the next control cycle based on the measured position and orientation. Search the target position and target posture.

(B)次の制御周期において、ハンド計測装置7は、ロボットハンド3の位置と姿勢を計測し、制御装置9は、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンド3の位置と姿勢を制御する。例えば、制御装置9は、当該次の制御周期において計測されたロボットハンド3の位置と目標位置との差を減らすように(好ましくは、この差を無くすように)ロボットハンド3の位置を制御し、当該次の制御周期において計測されたロボットハンド3の姿勢と目標姿勢との差を減らすように(好ましくは、この差を無くすように)ロボットハンド3の姿勢を制御する。 (B) In the next control cycle, the hand measuring device 7 measures the position and posture of the robot hand 3, and the control device 9 determines the measured position and posture and the target position searched in (A). The position and posture of the robot hand 3 are controlled based on the target posture. For example, the control device 9 controls the position of the robot hand 3 so as to reduce the difference between the position of the robot hand 3 measured in the next control cycle and the target position (preferably to eliminate this difference). Then, the posture of the robot hand 3 is controlled so as to reduce the difference between the posture of the robot hand 3 and the target posture measured in the next control cycle (preferably so as to eliminate this difference).

制御周期を多数回繰り返すことにより、ロボットハンド3が待機位置から対象物1に接近して、対象物1に対して作業を行う。例えば、1つの制御周期は、10ミリ秒であり、ロボットハンド3が作業に要する時間は、4秒である。   By repeating the control cycle many times, the robot hand 3 approaches the target object 1 from the standby position and performs an operation on the target object 1. For example, one control cycle is 10 milliseconds, and the time required for the robot hand 3 to work is 4 seconds.

図2は、本発明の実施形態によるロボットハンド制御方法を示すフローチャートである。   FIG. 2 is a flowchart illustrating a robot hand control method according to an embodiment of the present invention.

この制御方法は、対象物1からの距離が設定値以下となる位置までロボットハンド3を移動させてから行う。この場合、ロボットハンド3を、この位置へ移動させるまで、制御装置9は、ロボットハンド3が設定軌道上を移動するようにロボットハンド3を制御してよい。
ただし、ロボットハンド3の待機位置と対象物1との距離が設定値以下である場合には、ロボットハンド3を待機位置から動作させる時から、本実施形態の制御方法を行ってよい。
This control method is performed after moving the robot hand 3 to a position where the distance from the object 1 is equal to or less than the set value. In this case, the control device 9 may control the robot hand 3 so that the robot hand 3 moves on the set trajectory until the robot hand 3 is moved to this position.
However, when the distance between the standby position of the robot hand 3 and the object 1 is equal to or less than the set value, the control method of this embodiment may be performed from the time when the robot hand 3 is operated from the standby position.

ステップS1において、現在の制御周期において、対象物計測装置5は、対象物1の位置と姿勢を計測し、制御装置9は、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンド3の目標位置と目標姿勢を探索する。   In step S1, the object measurement device 5 measures the position and orientation of the object 1 in the current control cycle, and the control device 9 determines the robot hand in the next control cycle based on the measured position and orientation. 3 target position and target posture are searched.

次いで、制御周期iが次の制御周期(i+1)へ移行した後、ステップS2へ進む。なお、iは、正の整数であり制御周期の番号を示す(以下、同様)。   Next, after the control cycle i shifts to the next control cycle (i + 1), the process proceeds to step S2. Note that i is a positive integer and indicates a control cycle number (the same applies hereinafter).

ステップS2において、ハンド計測装置7は、ロボットハンド3の位置と姿勢を計測し、制御装置9は、当該計測した位置と姿勢、および、ステップS1で探索した目標位置と目標姿勢に基づいてロボットハンド3の位置と姿勢を制御する。例えば、制御装置9は、計測されたロボットハンド3の位置と、ステップS1で得た目標位置との差を減らすように(好ましくは、この差を無くすように)ロボットハンド3の位置を制御する。同様に、ステップS2において、制御装置9は、計測されたロボットハンド3の姿勢と、ステップS1で得た目標姿勢との差を減らすように(好ましくは、この差を無くすように)ロボットハンド3の姿勢を制御する。   In step S2, the hand measuring device 7 measures the position and posture of the robot hand 3, and the control device 9 performs the robot hand based on the measured position and posture, and the target position and target posture searched in step S1. 3 position and orientation are controlled. For example, the control device 9 controls the position of the robot hand 3 so as to reduce (preferably eliminate this difference) the difference between the measured position of the robot hand 3 and the target position obtained in step S1. . Similarly, in step S2, the controller 9 reduces the difference between the measured posture of the robot hand 3 and the target posture obtained in step S1 (preferably to eliminate this difference). To control the attitude.

ステップS1は、ステップS11〜S16を有する。   Step S1 includes steps S11 to S16.

ステップS11において、対象物計測装置5により、対象物1の位置と姿勢を計測する。   In step S <b> 11, the position and orientation of the object 1 are measured by the object measuring device 5.

ステップS12において、次の制御周期でロボットハンド3(作業実行部3f)が通過する予定の設定軌道の部分における1組の経由位置と設定姿勢を特定する。この1組の経由位置と設定姿勢は、好ましくは、それぞれ、予め定められた初期の設定軌道において、次の制御周期に対して予め定められた初期目標位置と初期目標姿勢である。設定軌道は、ロボットハンド3の動作制御開始時点からの各経過時間(各時点)に対して定められた経由位置からなる。従って、「次の制御周期でロボットハンド3が通過する予定の設定軌道の部分」とは、次の制御周期に対応する複数時点の経由位置を意味する。これについて、図3の上側部分は、図1の場合における作業実行部3fの基準点が通過する設定軌道を示し、図3の下側部分は、図3の上側部分の破線で囲んだ部分の拡大図である。図3の下側部分の例では、mを正の整数として、各時点tm+1〜tm+10に対して経由位置(図3の黒丸)が定められている。図3において、例えば、現在の制御周期iにおける初期目標位置は、tm+5に対する経由位置であり、次の制御周期(i+1)における初期目標位置は、tm+10に対する経由位置である。
なお、図1と図3において、水平方向を向くX軸と、紙面と垂直な水平方向を向くY軸と、鉛直方向を向くZ軸を有する直交座標系を示している。
In step S12, a set of via positions and set postures in the set trajectory portion that the robot hand 3 (work execution unit 3f) is scheduled to pass in the next control cycle are specified. The set of the via position and the set posture are preferably an initial target position and an initial target posture that are predetermined for the next control cycle in a predetermined initial set trajectory, respectively. The set trajectory consists of a via position determined for each elapsed time (each time point) from the start of the operation control of the robot hand 3. Accordingly, “the portion of the set trajectory that the robot hand 3 is scheduled to pass in the next control cycle” means a plurality of transit positions corresponding to the next control cycle. In this regard, the upper part of FIG. 3 shows a set trajectory through which the reference point of the work execution unit 3f in the case of FIG. 1 passes, and the lower part of FIG. It is an enlarged view. In the example of the lower part of FIG. 3, a passing position (black circle in FIG. 3) is determined for each time point t m + 1 to t m + 10 , where m is a positive integer. In FIG. 3, for example, the initial target position in the current control cycle i is a via position for t m + 5 , and the initial target position in the next control cycle (i + 1) is a via position for t m + 10 .
1 and 3 show an orthogonal coordinate system having an X axis that faces the horizontal direction, a Y axis that faces the horizontal direction perpendicular to the paper surface, and a Z axis that faces the vertical direction.

ステップS13において、ステップS11(すなわち、現在の制御周期)で計測した対象物1の位置と姿勢に向けて(本実施形態では、ステップS11で計測した対象物1の位置と姿勢へ)、ステップS12で特定した1組の経由位置と設定姿勢をそれぞれ移動させるように、設定軌道を平行移動させることと、設定軌道を回転させることとの一方または両方を行うことにより、設定軌道を移動させる。ここで、計測した対象物1の当該位置は、対象物1に対して作業できるロボットハンド3(作業実行部3f)の位置でもあり、計測した対象物1の当該姿勢は、対象物1に対して作業できるロボットハンド3(作業実行部3f)の姿勢でもある。
なお、ステップS12で特定した組の経由位置と、ステップS11で計測した位置とが一致する場合には、ステップS13で経由位置を移動させる量はゼロである。同様に、ステップS12で特定した組の設定姿勢と、ステップS11で計測した姿勢とが一致する場合には、ステップS14で設定姿勢を移動させる量はゼロである。
In step S13, toward the position and orientation of the object 1 measured in step S11 (that is, the current control cycle) (in this embodiment, to the position and orientation of the object 1 measured in step S11), step S12. The set trajectory is moved by performing one or both of the parallel movement of the set trajectory and the rotation of the set trajectory so as to move the set of via positions and the set posture specified in (1). Here, the measured position of the target object 1 is also the position of the robot hand 3 (work execution unit 3f) that can work on the target object 1. The measured posture of the target object 1 is relative to the target object 1. It is also the posture of the robot hand 3 (work execution unit 3f) that can work.
Note that when the via position of the set identified in step S12 matches the position measured in step S11, the amount by which the via position is moved in step S13 is zero. Similarly, when the set posture specified in step S12 matches the posture measured in step S11, the amount by which the set posture is moved in step S14 is zero.

ステップS13については、後で詳しく説明する。   Step S13 will be described in detail later.

ステップS14において、ステップS13で移動させた設定軌道における1組の経由位置と設定軌道を選択する。現在の制御周期での最初のステップS14では、移動後の設定軌道における、ステップS12で特定した経由位置と設定姿勢を選択する。   In step S14, a set of transit positions and set trajectories in the set trajectory moved in step S13 are selected. In the first step S14 in the current control cycle, the via position and the set posture specified in step S12 in the set trajectory after movement are selected.

ステップS15において、ステップS14で選択した1組の経由位置と設定姿勢が、ロボットハンド3の動作制約を満たすかどうかを判断する。ここで、ロボットハンド3の動作制約を満たすと判断した場合には、ステップS2へ進み、そうでない場合には、ステップS16へ進む。   In step S <b> 15, it is determined whether or not the set of via positions and set postures selected in step S <b> 14 satisfy the operation constraints of the robot hand 3. If it is determined that the operation restriction of the robot hand 3 is satisfied, the process proceeds to step S2, and if not, the process proceeds to step S16.

ステップS15については、後で詳しく説明する。   Step S15 will be described in detail later.

ステップS16において、現在の制御周期で、ステップS14を設定回数(2以上の整数)だけ行ったかを判断する。ここで、この判断が肯定である場合には、エラーであるとしてロボットハンド3の動作を終了させ、そうでない場合には、ステップS14へ戻り、戻ったステップS14において、ステップS13で移動させた設定軌道(移動後の設定軌道)における別の1組の経由位置と設定姿勢を選択し、次のステップS15において、当該選択した組の経由位置と設定姿勢がロボットハンドの動作制約を満たすかどうかを判断する。   In step S16, it is determined whether step S14 has been performed a set number of times (an integer greater than or equal to 2) in the current control cycle. Here, if this determination is affirmative, the operation of the robot hand 3 is ended as an error, and if not, the operation returns to step S14, and in the returned step S14, the setting moved in step S13. Another set of via positions and set postures in the trajectory (the set trajectory after movement) is selected, and in the next step S15, whether or not the via positions and set postures of the selected set satisfy the operation restriction of the robot hand. to decide.

好ましくは、戻ったステップS14では、移動後の設定軌道において、ステップS13で対象物1の位置に向けて移動させた経由位置(すなわち、ステップS12で特定して経由位置)よりも手前にある経由位置と、当該手前にある経由位置の設定姿勢とを選択する。ここで、「手前」とは、設定軌道において、上述の動作制御開始時点に対して定められた経由位置の側を意味する。より好ましくは、3回目以降のステップS14では、前回のステップS14で選択した経由位置よりも手前の経由位置と、当該手前にある経由位置の設定姿勢とを選択する。
代わりに、戻ったステップS14では、移動後の設定軌道において、ステップS13で対象物1の位置に向けて移動させた経由位置から、設定範囲内に存在する経由位置と、当該経由位置の設定姿勢とを選択してもよい。ここで、「設定範囲内」とは、ステップS13で対象物1の位置に向けて移動させた経由位置からの距離が、設定値より小さいことを意味する。また、この「設定範囲」は、ステップS13で対象物1の位置に向けて移動させた経由位置よりも手前の範囲に限定されない。
Preferably, in the returned step S14, in the set trajectory after the movement, the route that is in front of the route position moved toward the position of the object 1 in step S13 (that is, the route position specified in step S12). The position and the setting posture of the via position in front of the position are selected. Here, “front” means the side of the transit position determined with respect to the above-described operation control start time in the set trajectory. More preferably, in step S14 after the third time, a route position in front of the route position selected in the previous step S14 and a setting posture of the route position in front of the route position are selected.
Instead, in the returned step S14, in the set trajectory after the movement, from the transit position moved toward the position of the object 1 in step S13, the transit position existing within the set range and the set posture of the transit position And may be selected. Here, “within the set range” means that the distance from the transit position moved toward the position of the object 1 in step S13 is smaller than the set value. Further, the “setting range” is not limited to a range in front of the via position moved toward the position of the object 1 in step S13.

その後の処理は、上述と同じであり、上述のステップS14〜S16を繰り返す。   Subsequent processing is the same as described above, and steps S14 to S16 described above are repeated.

なお、ステップS15からステップS2へ進む場合には、現在の制御周期iから次の制御周期(i+1)へ移行してから、次のステップS2を行う。また、次のステップS2では、直前のステップS14で選択した1組の経由位置と設定姿勢を目標位置と目標姿勢として用いる。   In addition, when progressing to step S2 from step S15, after moving from the present control period i to the next control period (i + 1), the next step S2 is performed. In the next step S2, the set of via positions and set postures selected in the immediately preceding step S14 are used as the target position and target posture.

ステップS2は、ステップS21とステップS22とからなる。   Step S2 includes step S21 and step S22.

ステップS21では、ハンド計測装置7により、ロボットハンド3の位置と姿勢を計測する。
ステップS22では、制御装置9により、ステップS21で計測したロボットハンド3の位置と姿勢、および、直前のステップS14で選択した1組の経由位置と設定姿勢を目標位置と目標姿勢とし、この目標位置と目標姿勢に基づいてロボットハンド3の位置と姿勢を制御する。
ステップS22を終えたら、ステップS1へ戻る。
In step S21, the position and orientation of the robot hand 3 are measured by the hand measuring device 7.
In step S22, the control device 9 sets the position and posture of the robot hand 3 measured in step S21 and the set of passing positions and set postures selected in the immediately preceding step S14 as the target position and target posture. Then, the position and posture of the robot hand 3 are controlled based on the target posture.
When step S22 is completed, the process returns to step S1.

次に、上述のステップS13の具体例を詳しく説明する。   Next, a specific example of step S13 described above will be described in detail.

ステップS13で移動させた設定軌道における、ステップS14で選択した1組の経由位置と設定姿勢は、次のQtにより表すことができる。

Qt=S[i]Q[c]

S[i]:ステップS11で計測した位置と姿勢を表わす同次変換行列である。このS[i]は、ロボットハンド3の座標系で表される。
Q[c]:ステップS13で移動させた設定軌道における、ステップS14で選択した1組の経由位置と設定姿勢を表わす同次変換行列である。このQ[c]は、対象物1の座標系で表される。
Qt:ロボットハンド3の位置と姿勢を表わす同次変換行列である。このQtは、ロボットハンド3の座標系で表される。
In the set trajectory moved in step S13, the set of via positions and set postures selected in step S14 can be expressed by the following Qt.

Qt = S [i] Q [c]

S [i]: A homogeneous transformation matrix representing the position and orientation measured in step S11. This S [i] is expressed in the coordinate system of the robot hand 3.
Q [c]: A homogeneous transformation matrix representing a set of transit positions and set postures selected in step S14 in the set trajectory moved in step S13. This Q [c] is expressed in the coordinate system of the object 1.
Qt: a homogeneous transformation matrix representing the position and orientation of the robot hand 3. This Qt is expressed in the coordinate system of the robot hand 3.

図4において、破線は、ステップS13で移動させる前の設定軌道の一部を示し、破線上の黒丸は経由位置を示し、破線上の黒丸と同心で書かれた破線の丸は、ステップS12で特定した経由位置を示し、当該破線の丸から延びている矢印Dは、ステップS12で特定した経由位置の設定姿勢(ロボットハンド3の向き)を示す。
図4において、実線は、ステップS13で破線の設定軌道の一部から移動させた設定軌道の一部を示し、実線上の黒丸は、この移動後の設定軌道における経由位置を示し、実線上の黒丸と同心で書かれた実線の丸は、移動後の設定軌道における、ステップS12で特定した経由位置を示し、当該破線の丸から延びている矢印Dは、移動後の設定軌道における、ステップS12で特定した経由位置の設定姿勢(ロボットハンド3の向き)を示す。
In FIG. 4, the broken line indicates a part of the set trajectory before being moved in step S13, the black circle on the broken line indicates the via position, and the broken circle written concentrically with the black circle on the broken line is in step S12. An arrow D that indicates the specified via position and extends from the broken circle indicates the set posture (direction of the robot hand 3) of the via position specified in step S12.
In FIG. 4, the solid line indicates a part of the setting trajectory moved from a part of the broken setting trajectory in step S13, and the black circle on the solid line indicates the via position on the setting trajectory after the movement. The solid circle written concentrically with the black circle indicates the via position specified in step S12 in the set trajectory after movement, and the arrow D extending from the dashed circle indicates step S12 in the set trajectory after movement. The setting posture (direction of the robot hand 3) of the via position specified in (5) is shown.

また、図4に示すように、各時点tm+3〜tm+10に対して経由位置(図4の黒丸)が定められている。図4において、ステップS12で特定した経由位置は、tm+10に対する経由位置である。 Further, as shown in FIG. 4, via positions (black circles in FIG. 4) are determined for each time point t m + 3 to t m + 10 . In FIG. 4, the via position identified in step S12 is the via position for t m + 10 .

S[i]は、次の[数1]で表される。

Figure 0005939505
ここで、ロボットハンド3の座標系が、x軸とy軸とz軸を有するとする。
この[数1]において、x、y、zは、対象物1の位置を示し、それぞれ、x軸座標、y軸座標、z軸座標であり、α、β、γは、対象物1の姿勢を示し、それぞれ、x軸回りの回転角度、y軸回りの回転角度、z軸回りの回転角度である。 S [i] is expressed by the following [Equation 1].
Figure 0005939505
Here, it is assumed that the coordinate system of the robot hand 3 has an x axis, a y axis, and a z axis.
In [Equation 1], x, y, and z indicate the position of the object 1, and are x-axis coordinates, y-axis coordinates, and z-axis coordinates, respectively, and α, β, and γ are the postures of the object 1. These are the rotation angle around the x-axis, the rotation angle around the y-axis, and the rotation angle around the z-axis, respectively.

[数1]について、次の[数2]のようにAx、Ay、Az、Pを定義すると、S[i]は、下記の[数3]で表すことができる。

Figure 0005939505
Figure 0005939505
When Ax, Ay, Az, and P are defined for [Expression 1] as in [Expression 2] below, S [i] can be expressed by [Expression 3] below.
Figure 0005939505
Figure 0005939505

Q[c]が、ステップS12で特定した経由位置と設定姿勢(すなわち、図4において時点tm+10に対する経由位置と設定姿勢)である場合には、Q[c](以下、Q[10]と表記する)は、次の[数4]の同次変換行列で表すことができる。

Figure 0005939505
When Q [c] is the via position and the set attitude specified in step S12 (that is, the via position and the set attitude with respect to the time point t m + 10 in FIG. 4), Q [c] (hereinafter, Q [10] and Can be expressed by the following homogeneous transformation matrix of [Equation 4].
Figure 0005939505

この場合、図4において時点tm+9に対する経由位置と設定姿勢(以下、Q[9]と表記する)は、設定軌道における時点tm+10との相対位置と相対姿勢から求まる。例えば、Q[9]は、次の[数5]で表されるとする。

Figure 0005939505
In this case, through the position relative to the time t m + 9 and setting attitude in FIG. 4 (hereinafter, referred to as Q [9]) is determined from the relative position and orientation between the time t m + 10 in the setting track. For example, it is assumed that Q [9] is expressed by the following [Equation 5].
Figure 0005939505

ここで、S[i]が、次の[数6]であるとする。この場合、S[i]Q[10]は、下記の[数7]のようになり、S[i]Q[9]は下記の[数8]のようになる。

Figure 0005939505
Figure 0005939505
Figure 0005939505
Here, it is assumed that S [i] is the following [Equation 6]. In this case, S [i] Q [10] is represented by the following [Equation 7], and S [i] Q [9] is represented by the following [Equation 8].
Figure 0005939505
Figure 0005939505
Figure 0005939505

他の経由位置と設定姿勢についても同様である。   The same applies to other via positions and set postures.

次に、上述のステップS15の動作制約を詳しく説明する。   Next, the operation restriction in step S15 will be described in detail.

ステップS14で用いる動作制約として、次の(1)〜(7)がある。好ましくは、動作制約は、(1)〜(7)のうち、少なくとも(1)を含む。ただし、動作制約は、(1)〜(7)のうちのいずれか1つ、または、(1)〜(7)から選択した複数のものであってもよい。   As the operation constraints used in step S14, there are the following (1) to (7). Preferably, the operation restriction includes at least (1) among (1) to (7). However, the operation restriction may be any one of (1) to (7) or a plurality of selections selected from (1) to (7).

(1)ロボットハンド3の動作速度の大きさが、しきい値より小さい。
ここで、動作速度は、現在の制御周期の目標位置と目標姿勢から次の制御周期の目標位置と目標姿勢への必要移動量を、1つの制御周期の時間で割った値であってよい。
図1の例では、動作速度は、第1〜第5のアーム3a〜3eと作業実行部3fの各々(以下、回転部という)の回転速度ωである。この場合、各回転速度ωは、次の式で表わされる。

ω=(θt−θc)/T

この式において、θtは、ロボットハンド3が次の制御周期の目標位置と目標姿勢にある時の、該回転速度ωに対応する回転部の回転角であり、θcは、ロボットハンド3が現在の制御周期の目標位置と目標姿勢にある時の、該回転速度ωに対応する回転部の回転角である。Tは、1つの制御周期の時間である(以下、同様)。
(1) The magnitude of the operation speed of the robot hand 3 is smaller than the threshold value.
Here, the operation speed may be a value obtained by dividing the required movement amount from the target position and target posture of the current control cycle to the target position and target posture of the next control cycle by the time of one control cycle.
In the example of FIG. 1, the operation speed is the rotation speed ω of each of the first to fifth arms 3a to 3e and the work execution unit 3f (hereinafter referred to as a rotation unit). In this case, each rotational speed ω is expressed by the following equation.

ω = (θt−θc) / T

In this equation, θt is the rotation angle of the rotating unit corresponding to the rotation speed ω when the robot hand 3 is in the target position and target posture of the next control cycle, and θc is the current value of the robot hand 3 This is the rotation angle of the rotation unit corresponding to the rotation speed ω when the target position and the target posture of the control cycle are present. T is the time of one control cycle (hereinafter the same).

(2)ロボットハンド3の動作加速度の大きさが、しきい値より小さい。
ここで、動作加速度は、現在の制御周期におけるロボットハンド3の動作速度と、次の制御周期におけるロボットハンド3の動作速度との差を、1つの制御周期の時間で割った値であってよい。
図1の例では、動作加速度は、回転部3a〜3fの各々の回転加速度aである。この場合、各回転加速度aは、次の式で表わされる。

a=(ω−ω)/T

この式において、回転速度ωは、上記(1)のωと同じであり、ωは、現在の制御周期における当該回転部の目標回転速度である。目標回転速度ωは、次の式で表わされる。

ω=(θ−θi−1)/T

この式において、θは、ロボットハンド3が現在の制御周期iにおける目標位置と目標姿勢にある時の回転部の回転角であり、θi−1は、ロボットハンド3が、現在の制御周期より1つ前の制御周期(i−1)における目標位置と目標姿勢にある時の回転部の回転角である。
(2) The magnitude of the motion acceleration of the robot hand 3 is smaller than the threshold value.
Here, the motion acceleration may be a value obtained by dividing the difference between the motion speed of the robot hand 3 in the current control cycle and the motion speed of the robot hand 3 in the next control cycle by the time of one control cycle. .
In the example of FIG. 1, the operation acceleration is the rotation acceleration a of each of the rotation units 3 a to 3 f. In this case, each rotational acceleration a is expressed by the following equation.

a = (ω−ω 0 ) / T

In this equation, the rotational speed ω is the same as ω in (1) above, and ω 0 is the target rotational speed of the rotating unit in the current control cycle. The target rotational speed ω 0 is expressed by the following formula.

ω 0 = (θ i −θ i−1 ) / T

In this equation, θ i is the rotation angle of the rotating unit when the robot hand 3 is at the target position and target posture in the current control cycle i, and θ i−1 is the robot hand 3 in the current control cycle. This is the rotation angle of the rotating unit when the target position and the target posture are in the previous control cycle (i-1).

(3)対象物1に対するロボットハンド3の相対速度vの大きさが、しきい値より小さい。このvは、例えば、次の式で表わされる。

=v−v

は、現在の制御周期における目標位置と目標姿勢を、次の制御周期における目標位置と目標姿勢にするのに必要なロボットハンド3(作業実行部3f)の移動量を、制御周期の時間Tで割った値である。
は、現在の制御周期より1つ前の制御周期おける対象物1の計測された位置と姿勢を、現在の制御周期おける対象物1の計測された位置と姿勢にするのに必要な対象物1の移動量を、制御周期の時間Tで割った値である。
(3) the magnitude of the relative velocity v r of the robot hand 3 with respect to the object 1, less than the threshold. The v r, for example, represented by the following formula.

v r = v h −v t

v h is the amount of movement of the robot hand 3 (work execution unit 3f) required to make the target position and posture in the current control cycle the target position and posture in the next control cycle, and the time of the control cycle. The value divided by T.
v t is an object necessary to make the measured position and posture of the object 1 in the control cycle immediately before the current control cycle the measured position and posture of the object 1 in the current control cycle. This is a value obtained by dividing the movement amount of the object 1 by the time T of the control cycle.

(4)対象物1に対するロボットハンド3の相対加速度の大きさが、しきい値より小さい。
(5)ステップS14で選択した1組の目標位置と目標姿勢が特異点とならない。
ここで、特異点とは、ロボットハンド3の各回転部の回転速度を作業実行部3fの並進移動速度に変換する行列(ヤコビ行列)に逆行列が存在しない、すなわち、作業実行部3fの並進移動速度から各回転部の回転速度を求めることができないことを意味する。前記ヤコビ行列の固有値の絶対値や行列式の絶対値がしきい値よりも小さいとき、前記ヤコビ行列は逆行列を持たないと判定できる。
(6)ロボットハンド3が、設定範囲外へ移動する。
(7)ロボットハンド3の軸C1〜C6が、設定範囲外へ移動する。
(4) The magnitude of relative acceleration of the robot hand 3 with respect to the object 1 is smaller than the threshold value.
(5) The set of target position and target posture selected in step S14 does not become a singular point.
Here, the singular point means that there is no inverse matrix in the matrix (Jacobi matrix) for converting the rotational speed of each rotary part of the robot hand 3 into the translational movement speed of the work execution part 3f, that is, the translation of the work execution part 3f. It means that the rotational speed of each rotating part cannot be obtained from the moving speed. When the absolute value of the eigenvalue of the Jacobian matrix or the absolute value of the determinant is smaller than the threshold value, it can be determined that the Jacobian matrix does not have an inverse matrix.
(6) The robot hand 3 moves out of the setting range.
(7) The axes C1 to C6 of the robot hand 3 move out of the setting range.

上述した実施形態によると、現在の制御周期において計測した対象物1の位置と姿勢に基づいて、次の制御周期におけるロボットハンド3の目標位置と目標姿勢を探索するので、対象物1の位置や姿勢が急激に変化しても、この変化に対応したロボットハンド3の制御が可能となる。
しかも、計測した対象物1の位置と姿勢に向けて移動させた設定軌道から、次の制御周期におけるロボットハンド3の目標位置と目標姿勢を探索するので、設定軌道を反映させたロボットハンド3の動作が可能となる。
また、2回目以降のステップS14では、移動後の設定軌道において、最初のステップS14で選択した経由位置よりも手前にある経由位置と、当該手前にある経由位置の設定姿勢とを選択する。このように選択した経由位置と設定姿勢は、現在のロボットハンド3の位置と姿勢により近くなっている可能性が高い。その結果、例えば、上述の動作制約(1)(2)が満たされやすくなる。
According to the embodiment described above, the target position and target posture of the robot hand 3 in the next control cycle are searched based on the position and posture of the target 1 measured in the current control cycle. Even if the posture changes rapidly, the robot hand 3 can be controlled in response to this change.
Moreover, since the target position and target orientation of the robot hand 3 in the next control cycle are searched from the set trajectory moved toward the measured position and orientation of the target object 1, the robot hand 3 reflecting the set trajectory is searched. Operation is possible.
In step S14 for the second and subsequent times, in the set trajectory after movement, a transit position that is in front of the transit position selected in the first step S14 and a set posture of the transit position that is in front are selected. The via position and the set posture selected in this way are likely to be closer to the current position and posture of the robot hand 3. As a result, for example, the above-described operation constraints (1) and (2) are easily satisfied.

また、設定軌道や設定姿勢は、対象物1の移動軌跡や姿勢に正確に一致させなくてもよい。すなわち、大まかに定めた設定軌道であっても、対象物1の計測された位置と姿勢に向けて設定軌道を移動させるので、対象物1の位置と姿勢の変化に対応できる。   Further, the set trajectory and the set posture need not exactly match the movement trajectory and posture of the object 1. That is, even if the set trajectory is roughly determined, the set trajectory is moved toward the measured position and orientation of the object 1, so that it is possible to cope with changes in the position and orientation of the object 1.

図5は、対象物1の移動軌跡を示す一例である。図5の場合には、図1に示すように、対象物1が、X−Z平面内で、支点を中心に振り子の運動をする。この運動は、前記支点からロープで吊るされた対象物1の運動を想定している。すなわち、前記支点が水平移動して静止すると、対象物1は振り子の運動をする。
図6は、図5の場合における、時間に対する対象物1の位置を示す。この例では、対象物1の姿勢は一定である。
FIG. 5 is an example showing the movement trajectory of the object 1. In the case of FIG. 5, as shown in FIG. 1, the object 1 moves the pendulum around the fulcrum in the XZ plane. This movement assumes the movement of the object 1 suspended from the fulcrum by a rope. That is, when the fulcrum moves horizontally and stops, the object 1 moves as a pendulum.
FIG. 6 shows the position of the object 1 with respect to time in the case of FIG. In this example, the posture of the object 1 is constant.

図7は、図5と図6の場合に対する図1のロボットハンド3の設定軌道を示す。この例では、設定軌道は、大まかに定められている。図7において、横軸は、時間を示し、縦軸は、X軸方向において、作業実行部3fから、振り子運動の中心位置(図5の原点に相当)までの距離を示す。
図8は、上述した実施形態による制御方法のシミュレーション結果を示す。図8(A)は、第2のアーム3bの回転速度(角速度)と時間の関係を示し、図8(B)は、第3のアーム3cの回転速度(角速度)と時間の関係を示す。この例では、他のアーム3a,3d,3eと作業実行部3fは回転しないものとし、作業実行部3fをX−Z平面内で移動させた。
図8(A)(B)の実線は、上述の動作制約を用いなかった場合を示す。すなわち、図8(A)(B)の実線は、ステップS15、S16を省略し、ステップS14の次にステップS21を行った場合を示す。図8(A)(B)の破線は、上述の動作制約を用いた場合を示す。すなわち、図8(A)(B)の破線は、図2のフローチャートに従った場合を示す。ここでは、動作制約は、第2および第3のアーム3b、3cの角速度の大きさが75度/秒以下となることである。なお、図8(A)(B)において、約0.2〜0.9秒の範囲以外で、破線は実線と重なっている。
FIG. 7 shows the set trajectory of the robot hand 3 of FIG. 1 for the cases of FIGS. In this example, the set trajectory is roughly defined. In FIG. 7, the horizontal axis represents time, and the vertical axis represents the distance from the work execution unit 3f to the center position of the pendulum motion (corresponding to the origin in FIG. 5) in the X-axis direction.
FIG. 8 shows a simulation result of the control method according to the above-described embodiment. FIG. 8A shows the relationship between the rotation speed (angular velocity) of the second arm 3b and time, and FIG. 8B shows the relationship between the rotation speed (angular velocity) of the third arm 3c and time. In this example, the other arms 3a, 3d, 3e and the work execution unit 3f are not rotated, and the work execution unit 3f is moved in the XZ plane.
The solid lines in FIGS. 8A and 8B show the case where the above-described operation restriction is not used. That is, the solid lines in FIGS. 8A and 8B show a case where steps S15 and S16 are omitted and step S21 is performed after step S14. The broken lines in FIGS. 8A and 8B show the case where the above-described operation restriction is used. That is, the broken lines in FIGS. 8A and 8B show the case of following the flowchart of FIG. Here, the operation restriction is that the magnitude of the angular velocity of the second and third arms 3b and 3c is 75 degrees / second or less. 8A and 8B, the broken line overlaps the solid line except for the range of about 0.2 to 0.9 seconds.

図6と図8(A)(B)によると、作業実行部3fは、対象物1の振り子運動に追従するように動作している。   According to FIGS. 6, 8 </ b> A, and 8 </ b> B, the work execution unit 3 f operates so as to follow the pendulum movement of the object 1.

本発明は上述した実施の形態に限定されず、本発明の要旨を逸脱しない範囲で種々変更を加え得ることは勿論である
The present invention is not limited to the above-described embodiment, and various changes can be made without departing from the scope of the present invention .

参考例
ロボットハンド3の設定軌道を用いなくてもよい。この参考例では、ステップS1(すなわち前記(A)の処理)では、現在の制御周期で、対象物計測装置5により、対象物1の位置と姿勢を計測し、制御装置9により、当該計測した位置と姿勢から設定範囲内にあり、かつ、ロボットハンド3の現在の位置と姿勢から許容範囲内にある位置と姿勢を次の制御周期におけるロボットハンド3の目標位置と目標姿勢とする。この場合、ロボットハンド3が移動する範囲を含む範囲において、間隔をおいて、多数の候補位置を設定しておき、制御装置9により、これらの候補位置から、次の制御周期におけるロボットハンド3の目標位置を選択してよい。また、ロボットハンド3の多数の候補姿勢を設定しておき、制御装置9により、これらの候補姿勢から、次の制御周期におけるロボットハンド3の目標姿勢を選択してよい。なお、ロボットハンド3の現在の位置と姿勢は、ロボットハンド3の位置と姿勢の最新の計測値であってよい。ステップS2は、上述と同じである
( Reference example )
The set trajectory of the robot hand 3 may not be used. In this reference example, in step S1 (that is, the process of (A)), the position and orientation of the object 1 are measured by the object measuring device 5 and measured by the control device 9 in the current control cycle. The position and posture within the set range from the position and posture and within the allowable range from the current position and posture of the robot hand 3 are set as the target position and target posture of the robot hand 3 in the next control cycle. In this case, in the range including the range in which the robot hand 3 moves, a large number of candidate positions are set at intervals, and the controller 9 determines the robot hand 3 in the next control cycle from these candidate positions. A target position may be selected. Also, a large number of candidate postures of the robot hand 3 may be set, and the target posture of the robot hand 3 in the next control cycle may be selected by the control device 9 from these candidate postures. Note that the current position and orientation of the robot hand 3 may be the latest measured values of the position and orientation of the robot hand 3. Step S2 is the same as described above .

(変更例)
上述の実施形態では、ステップS13では、ステップS12で特定した経由位置を、ステップS11で計測した対象物1の位置に移動させたが、これの代わりに、ステップS13において、ステップS12で特定した経由位置を、ステップS11で計測した対象物1の位置へ向けて移動させて当該位置へ近づけてもよい。
同様に、上述のステップS13では、ステップS12で特定した設定姿勢を、ステップS11で計測した対象物1の姿勢に移動(回転)させたが、これの代わりに、ステップS13において、ステップS12で特定した設定姿勢を、ステップS11で計測した対象物1の姿勢へ向けて移動させて当該姿勢へ近づけてもよい。
この場合、他の点は、上述と同じであってもよいし、本発明の範囲内で上述の内容から適宜してもよい。
( Example of change )
In the above-described embodiment, in step S13, the route position specified in step S12 is moved to the position of the target 1 measured in step S11. Instead, in step S13, the route specified in step S12 is used. The position may be moved toward the position of the target 1 measured in step S11 so as to approach the position.
Similarly, in step S13 described above, the set posture specified in step S12 is moved (rotated) to the posture of the object 1 measured in step S11. Instead, in step S13, the specified posture is specified in step S12. The set posture may be moved toward the posture of the target object 1 measured in step S11 so as to approach the posture.
In this case, the other points may be the same as described above, or may be appropriately selected from the above description within the scope of the present invention.

1 対象物、3 ロボットハンド、3a〜3e アーム、3f 作業実行部、5 対象物計測装置、7 ハンド計測装置、9 制御装置、9a 記憶部、10 ロボットハンド装置、11 ハンド支持部
DESCRIPTION OF SYMBOLS 1 Object, 3 Robot hand, 3a-3e arm, 3f Work execution part, 5 Object measuring apparatus, 7 Hand measuring apparatus, 9 Control apparatus, 9a Memory | storage part, 10 Robot hand apparatus, 11 Hand support part

Claims (5)

対象物に対して作業を行うロボットハンドと、
対象物の位置と姿勢を計測する対象物計測装置と、
ロボットハンドの位置と姿勢を計測するハンド計測装置と、
対象物計測装置とハンド計測装置の計測結果に基づいてロボットハンドを動作させる制御装置と、を備え、
(A)現在の制御周期において、対象物計測装置は、対象物の位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索し、
(B)次の制御周期において、ハンド計測装置は、ロボットハンドの位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンドの位置と姿勢を制御し、
制御装置は、ロボットハンドの設定軌道を記憶する記憶部を有し、
設定軌道における複数の経由位置の各々には、該経由位置と組をなすロボットハンドの姿勢が設定されており、
前記(A)では、制御装置は、
現在の制御周期で計測した対象物の位置と姿勢に基づいて、設定軌道の平行移動と回転の一方または両方を行うことにより設定軌道を移動させ、
ロボットハンドの動作制約を満たす1組の経由位置と設定姿勢を、次の制御周期における目標位置と目標姿勢として移動後の設定軌道から選択する、ロボットハンド装置。
A robot hand that performs work on an object;
An object measuring device for measuring the position and orientation of the object;
A hand measuring device for measuring the position and orientation of the robot hand;
A control device for operating the robot hand based on the measurement result of the object measuring device and the hand measuring device,
(A) In the current control cycle, the object measuring device measures the position and orientation of the object, and the control device determines the target position of the robot hand in the next control cycle based on the measured position and orientation. Search for the target posture,
(B) In the next control cycle, the hand measurement device measures the position and posture of the robot hand, and the control device sets the measured position and posture, and the target position and posture searched in (A). Based on the position and posture of the robot hand ,
The control device has a storage unit for storing the set trajectory of the robot hand,
At each of the plurality of via positions in the set trajectory, the posture of the robot hand that forms a pair with the via position is set,
In (A), the control device
Based on the position and orientation of the object measured in the current control cycle, move the set trajectory by performing one or both of parallel movement and rotation of the set trajectory,
A robot hand device that selects, from a set trajectory after movement, a set of via positions and set postures that satisfy the robot hand movement constraints as target positions and target postures in the next control cycle .
対象物に対して作業を行うロボットハンドと、
対象物の位置と姿勢を計測する対象物計測装置と、
ロボットハンドの位置と姿勢を計測するハンド計測装置と、
対象物計測装置とハンド計測装置の計測結果に基づいてロボットハンドを動作させる制御装置と、を備え、
(A)現在の制御周期において、対象物計測装置は、対象物の位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索し、
(B)次の制御周期において、ハンド計測装置は、ロボットハンドの位置と姿勢を計測し、制御装置は、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンドの位置と姿勢を制御し、
制御装置は、ロボットハンドの設定軌道を記憶する記憶部を有し、
設定軌道における複数の経由位置の各々には、該経由位置に対応付けられたロボットハンドの姿勢が設定されており、
互いに対応付けられた経由位置と設定姿勢を1組として、制御装置は、前記(A)において、
(A1)現在の制御周期で計測した対象物の位置と姿勢に向けて、次の制御周期に対応する1組の経由位置と設定姿勢をそれぞれ移動させるように、設定軌道の平行移動と回転の一方または両方を行うことにより設定軌道を移動させ、
(A2)現在の制御周期で計測した対象物の位置と姿勢に向けて移動させた1組の前記経由位置と前記設定姿勢が、ロボットハンドの動作制約を満たすかどうかを判断し、
(A3)動作制約を満たさないと判断した場合には、移動後の設定軌道における別の1組の経由位置と設定姿勢を選択し、
(A4)前記(A3)で選択した別の1組の経由位置と設定姿勢が、ロボットハンドの動作制約を満たすかどうかを判断し、
ロボットハンドの動作制約を満たす組の経由位置と設定姿勢が見つかるまで、前記(A3)(A4)を繰り返し、
前記(A2)または(A4)において動作制約を満たす1組の経由位置と設定姿勢が見つかった場合には、当該1組の経由位置と設定姿勢を、次の制御周期における目標位置と目標姿勢として選択するロボットハンド装置。
A robot hand that performs work on an object;
An object measuring device for measuring the position and orientation of the object;
A hand measuring device for measuring the position and orientation of the robot hand;
A control device for operating the robot hand based on the measurement result of the object measuring device and the hand measuring device,
(A) In the current control cycle, the object measuring device measures the position and orientation of the object, and the control device determines the target position of the robot hand in the next control cycle based on the measured position and orientation. Search for the target posture,
(B) In the next control cycle, the hand measurement device measures the position and posture of the robot hand, and the control device sets the measured position and posture, and the target position and posture searched in (A). Based on the position and posture of the robot hand,
The control device has a storage unit for storing the set trajectory of the robot hand,
At each of a plurality of via positions in the set trajectory, the posture of the robot hand associated with the via position is set,
With the via position and setting posture associated with each other as a set, the control device, in (A),
(A1) The parallel movement and rotation of the set trajectory are performed so that the set position and posture corresponding to the next control cycle are moved toward the position and posture of the object measured in the current control cycle, respectively. Move the set trajectory by doing one or both,
(A2) determining whether or not the set of the via positions and the set posture moved toward the position and posture of the object measured in the current control cycle satisfy the operation restriction of the robot hand;
(A3) If it is determined that the motion constraint is not satisfied, another set of via position and set posture in the set trajectory after movement is selected,
(A4) Determine whether another set of via positions and set postures selected in (A3) satisfy the robot hand movement constraints,
(A3) and (A4) are repeated until a set of via positions and set postures that satisfy the robot hand movement constraints are found,
When a set of via positions and set postures satisfying the operation constraints are found in (A2) or (A4), the set of via positions and set postures are set as target positions and target postures in the next control cycle. When selected, the robot hand device.
前記(A3)では、移動後の設定軌道において、現在の制御周期で計測した対象物の位置に向けて移動させた前記経由位置よりも手前にある経由位置と、当該経由位置の設定姿勢とを選択する請求項2に記載のロボットハンド装置。 In (A3), in the set trajectory after movement, the via position that is in front of the via position moved toward the position of the object measured in the current control cycle, and the set posture of the via position select, robot hand apparatus according to claim 2. 前記(A3)では、移動後の設定軌道において、現在の制御周期で計測した対象物の位置に向けて移動させた前記経由位置から、設定範囲内に存在する経由位置と、当該経由位置の設定姿勢とを選択する請求項2に記載のロボットハンド装置。 In (A3), in the set trajectory after the movement, from the via position moved toward the position of the object measured in the current control cycle, the via position existing within the set range and the setting of the via position selecting the posture, the robot hand apparatus according to claim 2. 対象物に対して作業を行うロボットハンドを制御する方法であって、
(A)現在の制御周期において、対象物計測装置により、対象物の位置と姿勢を計測し、制御装置により、当該計測した位置と姿勢に基づいて、次の制御周期におけるロボットハンドの目標位置と目標姿勢を探索し、
(B)次の制御周期において、ハンド計測装置により、ロボットハンドの位置と姿勢を計測し、制御装置により、当該計測した位置と姿勢、および、前記(A)で探索した目標位置と目標姿勢に基づいてロボットハンドの位置と姿勢を制御し、
制御装置は、ロボットハンドの設定軌道を記憶する記憶部を有するものであり、設定軌道における複数の経由位置の各々には、該経由位置と組をなすロボットハンドの姿勢が設定されており、
前記(A)では、制御装置により、
現在の制御周期で計測した対象物の位置と姿勢に基づいて、設定軌道の平行移動と回転の一方または両方を行うことにより設定軌道を移動させ、
ロボットハンドの動作制約を満たす1組の経由位置と設定姿勢を、次の制御周期における目標位置と目標姿勢として移動後の設定軌道から選択する、ロボットハンド制御方法。
A method for controlling a robot hand that performs work on an object,
(A) In the current control cycle, the position and orientation of the object are measured by the object measuring device, and the target position of the robot hand in the next control cycle is determined based on the measured position and posture by the control device. Search for the target posture,
(B) In the next control cycle, the hand measurement device measures the position and posture of the robot hand, and the control device uses the measured position and posture, and the target position and posture searched in (A). Based on the position and posture of the robot hand ,
The control device has a storage unit that stores a set trajectory of the robot hand, and each of a plurality of via positions in the set trajectory is set with the posture of the robot hand that forms a pair with the via position,
In (A), the control device
Based on the position and orientation of the object measured in the current control cycle, move the set trajectory by performing one or both of parallel movement and rotation of the set trajectory,
A robot hand control method , wherein a set of via positions and set postures that satisfy a robot hand movement constraint are selected from a set trajectory after movement as target positions and target postures in the next control cycle .
JP2012114552A 2012-05-18 2012-05-18 Robot hand device and control method Active JP5939505B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012114552A JP5939505B2 (en) 2012-05-18 2012-05-18 Robot hand device and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012114552A JP5939505B2 (en) 2012-05-18 2012-05-18 Robot hand device and control method

Publications (2)

Publication Number Publication Date
JP2013240847A JP2013240847A (en) 2013-12-05
JP5939505B2 true JP5939505B2 (en) 2016-06-22

Family

ID=49842260

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012114552A Active JP5939505B2 (en) 2012-05-18 2012-05-18 Robot hand device and control method

Country Status (1)

Country Link
JP (1) JP5939505B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6595206B2 (en) * 2015-04-30 2019-10-23 ライフロボティクス株式会社 Multi-joint arm mechanism operation control apparatus and robot apparatus

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6228187A (en) * 1985-07-30 1987-02-06 三菱電機株式会社 Controller for industrial robot
JPS63241603A (en) * 1987-03-30 1988-10-06 Hitachi Ltd Method and device for processing position deviation signal of robot
JPH0719818A (en) * 1993-06-30 1995-01-20 Kajima Corp Three-dimensional movement predicting device
JP3988255B2 (en) * 1998-05-20 2007-10-10 株式会社安川電機 Position command method and apparatus in numerical controller
JP2003211381A (en) * 2002-01-16 2003-07-29 Denso Wave Inc Robot control device
JP5509859B2 (en) * 2010-01-13 2014-06-04 株式会社Ihi Robot control apparatus and method
JP5306313B2 (en) * 2010-12-20 2013-10-02 株式会社東芝 Robot controller

Also Published As

Publication number Publication date
JP2013240847A (en) 2013-12-05

Similar Documents

Publication Publication Date Title
JP7116901B2 (en) ROBOT CONTROL DEVICE, ROBOT CONTROL METHOD AND ROBOT CONTROL PROGRAM
JP5114019B2 (en) Method for controlling the trajectory of an effector
JP4940715B2 (en) Picking system
JP6484213B2 (en) Robot system including a plurality of robots, robot control apparatus, and robot control method
JP5458769B2 (en) Robot control device
JP5365379B2 (en) Robot system and robot system calibration method
CN104057456A (en) Robot picking system and method of manufacturing a workpiece
CN102152308A (en) Method for a collision-free path planning of an industrial robot
CN102695582A (en) Processing system and processing method
CN109760040B (en) Interference determination method, interference determination system, and storage medium
KR102220304B1 (en) Apparatus and method for controlling robot
JP2018111155A (en) Robot control device, robot and robot system
JP7028151B2 (en) Orbit generator
JP2013144325A (en) Robot apparatus, and failure detection method
JP6217322B2 (en) Robot control apparatus, robot, and robot control method
JP5446887B2 (en) Control device, robot, robot system, and robot tracking method
JP2010076058A (en) Control device of multiple point manipulator and method for generating operation track of hand for multiple point manipulator
JP5939505B2 (en) Robot hand device and control method
JP2020066080A (en) Robot system and robot control method for cooperative work with person
JP6040002B2 (en) TEACHING INFORMATION CORRECTION DEVICE, CONTROL DEVICE, AND TEACHING INFORMATION CORRECTION METHOD
JP2016182648A (en) Robot, robot control device and robot system
JP6455869B2 (en) Robot, robot system, control device, and control method
JP5353718B2 (en) Control device, robot, robot system, and robot tracking control method
JP2006315128A (en) Shifting from one hand to the other hand control method for robot hand
JP2006068890A (en) Track determination system and track determination method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160323

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: 20160425

R151 Written notification of patent or utility model registration

Ref document number: 5939505

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160508

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250