JP2016043449A - Robot operation determination device, robot operation determination program and robot operation determination method - Google Patents

Robot operation determination device, robot operation determination program and robot operation determination method Download PDF

Info

Publication number
JP2016043449A
JP2016043449A JP2014169582A JP2014169582A JP2016043449A JP 2016043449 A JP2016043449 A JP 2016043449A JP 2014169582 A JP2014169582 A JP 2014169582A JP 2014169582 A JP2014169582 A JP 2014169582A JP 2016043449 A JP2016043449 A JP 2016043449A
Authority
JP
Japan
Prior art keywords
robot
specific link
link
command value
hand
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.)
Withdrawn
Application number
JP2014169582A
Other languages
Japanese (ja)
Inventor
正敬 立脇
Masataka Tatewaki
正敬 立脇
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014169582A priority Critical patent/JP2016043449A/en
Publication of JP2016043449A publication Critical patent/JP2016043449A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To easily determine an avoidance operation of an obstacle for a robot having a redundant degree of freedom.SOLUTION: A control apparatus 10 is equipped with: a command value acquisition part 14 which acquires a command value of a position attitude in a work space of a fingertip of a robot having a redundant freedom; and a fingertip position attitude calculation part 16 and an avoidance operation determination part 18 which determine a most proximity distance between each link of the robot and an obstacle and a proximity direction while maintaining a position attitude of the fingertip within a range predetermined from a command value on the basis of the command value, assume a link i having a most proximity distance of a smallest value as a virtual fingertip, and determine an avoidance operation of the link on the basis of a most proximity distance and a proximity direction of the link.SELECTED DRAWING: Figure 1

Description

本発明は、ロボット動作決定装置、ロボット動作決定プログラム及びロボット動作決定方法に関する。   The present invention relates to a robot motion determination device, a robot motion determination program, and a robot motion determination method.

従来、ロボットに作業や動作を教示するには、非常に多くの労力を必要としていた。特に、空間的制約を考慮してロボット動作の教示を行う必要がある場合には、多大な工数を要していた。なお、空間的制約がある場合とは、例えば、既存の生産ラインにロボットを導入する場合のように、ロボットの動作空間が制限される場合や、ロボットが電子機器の組立等、複雑な動作が要求される作業を行う場合のように、ロボット同士を含め、周囲の物体(障害物)との衝突を回避しながら動作させる必要がある場合などである。   Conventionally, a great deal of labor has been required to teach robots operations and operations. In particular, when it is necessary to teach robot operation in consideration of spatial constraints, a great amount of man-hours are required. In addition, when there is a spatial restriction, for example, when the robot's operation space is limited, such as when a robot is introduced into an existing production line, or when the robot performs complicated operations such as assembly of electronic devices. This is the case when it is necessary to operate while avoiding collisions with surrounding objects (obstacles) including robots, as in the case of performing required work.

また、汎用性を高めるために自由度を多くした(冗長自由度を有する)ロボットシステムを採用する場合、さらに多くの工数を要する。冗長自由度を有するロボットシステムでは、従来は、機構系全体の関節角速度ベクトルと手先速度ベクトルとの線形関係に基づいて、その係数行列であるヤコビ行列の零空間を使う手法(零空間法)や、個別の機構的特徴に基づいて、冗長自由度をパラメータ化することで、冗長自由度を持たない形式に変換し、制御を行う手法が採用されていた。   Further, when adopting a robot system having a large degree of freedom (having redundant degrees of freedom) in order to enhance versatility, a greater number of man-hours are required. In a robot system having redundant degrees of freedom, conventionally, based on the linear relationship between the joint angular velocity vector and the hand velocity vector of the entire mechanism system, a method (zero space method) using the Jacobian matrix that is the coefficient matrix is used. However, based on the individual mechanistic features, the redundancy degree of freedom is parameterized to convert it into a form having no degree of redundancy and control.

特開平8−52674号公報JP-A-8-52674 特開平9−212225号公報JP 9-212225 A

しかしながら、上記零空間法の場合、零空間へ射影するベクトルとして、ロボットの関節角速度制限や関節角度制限等のロボット自体の機構制約を反映したものがほとんどであり、障害物の回避等の、ロボットシステムの外部環境の制約を考慮したものはなかった。   However, in the case of the above-mentioned null space method, most of the vectors projected to the null space reflect the robot's own mechanism restrictions such as joint angular velocity limitation and joint angle limitation of the robot. None considered the external environment constraints of the system.

一方、上記冗長自由度をパラメータ化する手法の場合、パラメータ化した冗長自由度を使って、障害物との距離に基づいた回避制御等が行われている。しかるに、人腕のような比較的単純な冗長機構の場合は定式化できるが、冗長自由度が多く、複雑な機構の場合は、物理的に意味のあるパラメータを見つけだし、定式化するのは難しい。   On the other hand, in the case of the above-described method of parameterizing the redundancy degree of freedom, avoidance control based on the distance from the obstacle is performed using the parameterized degree of freedom degree of redundancy. However, in the case of a relatively simple redundant mechanism such as a human arm, it can be formulated. However, in the case of a complicated mechanism with many redundant degrees of freedom, it is difficult to formulate a physically meaningful parameter. .

1つの側面では、本発明は、冗長自由度を有するロボットの障害物の回避動作を簡易に決定することが可能なロボット動作決定装置、ロボット動作決定プログラム及びロボット動作決定方法を提供することを目的とする。   In one aspect, an object of the present invention is to provide a robot operation determination device, a robot operation determination program, and a robot operation determination method capable of easily determining an obstacle avoidance operation of a robot having redundant degrees of freedom. And

一つの態様では、ロボット動作決定装置は、冗長自由度を有するロボットの動作を決定するロボット動作決定装置であって、前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付ける受付部と、前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する決定部と、を備えている。   In one aspect, the robot motion determination device is a robot motion determination device that determines the motion of a robot having a redundancy degree of freedom, and a reception unit that receives a command value of a position and orientation on a work space of a hand possessed by the robot; Based on the command value, while determining the position and orientation of the hand within a predetermined range from the command value, the closest distance and the approach direction between each link of the robot and the obstacle are obtained, and the closest distance is specified. A determination unit that regards the link as a virtual hand and determines an avoidance operation of the specific link based on a closest distance and a proximity direction of the specific link.

一つの態様では、ロボット動作決定プログラムは、コンピュータに、冗長自由度を有するロボットの動作を決定させるロボット動作決定プログラムであって、前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、処理を前記コンピュータに実行させるロボット動作決定プログラムである。   In one aspect, the robot motion determination program is a robot motion determination program that causes a computer to determine the motion of a robot having a redundancy degree of freedom, and accepts a command value of a position and orientation on the work space of the hand of the robot. Based on the command value, while determining the position and orientation of the hand within a predetermined range from the command value, the closest distance and the approach direction between each link of the robot and the obstacle are obtained, and the closest distance is specified. It is a robot operation determination program that causes the computer to execute a process of regarding a link as a virtual hand and determining an avoidance operation of the specific link based on a closest distance and a proximity direction of the specific link.

一つの態様では、ロボット動作決定方法は、コンピュータが、冗長自由度を有するロボットの動作を決定するロボット動作決定方法であって、前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、処理を前記コンピュータが実行するロボット動作決定方法である。   In one aspect, the robot motion determination method is a robot motion determination method in which a computer determines a motion of a robot having redundancy degrees of freedom, and accepts a command value of a position and orientation on the work space of the hand of the robot. Based on the command value, while determining the position and orientation of the hand within a predetermined range from the command value, the closest distance and the approach direction between each link of the robot and the obstacle are obtained, and the closest distance is specified. This is a robot operation determination method in which the computer executes a process of regarding a link as a virtual hand and determining an avoidance operation of the specific link based on the closest distance and proximity direction of the specific link.

冗長自由度を有するロボットの障害物の回避動作を簡易に決定することができる。   It is possible to easily determine an obstacle avoidance operation of a robot having redundant degrees of freedom.

一実施形態に係る作業装置の構成を概略的に示す図である。It is a figure showing roughly the composition of the working device concerning one embodiment. 図1の制御装置のハードウェア構成図である。It is a hardware block diagram of the control apparatus of FIG. 制御装置の処理を示すフローチャートである。It is a flowchart which shows the process of a control apparatus. 作業軌道の一例を示す図である。It is a figure which shows an example of a working track. 図3のステップS16の具体的処理を示すフローチャートである。It is a flowchart which shows the specific process of step S16 of FIG. 図6(a)、図6(b)は、ステップS16の処理を説明するための図(その1)である。FIGS. 6A and 6B are diagrams (part 1) for explaining the processing in step S16. 図7(a)〜図7(c)は、ステップS16の処理を説明するための図(その2)である。Fig.7 (a)-FIG.7 (c) are the figures for demonstrating the process of step S16 (the 2). 一実施形態の方法を適用したロボットシステムの例を示す図である。It is a figure which shows the example of the robot system to which the method of one Embodiment is applied. 図9(a)〜図9(c)は、図8のロボットシステムにおいて障害物回避を行わない場合の各関節角の変化を示す図である。FIGS. 9A to 9C are diagrams showing changes in joint angles when obstacle avoidance is not performed in the robot system of FIG. 図10(a)〜図10(c)は、図8のロボットシステムにおいて障害物回避を行う場合の各関節角の変化を示す図である。FIG. 10A to FIG. 10C are diagrams showing changes in joint angles when obstacle avoidance is performed in the robot system of FIG.

以下、作業装置の一実施形態について、図1〜図10に基づいて詳細に説明する。図1には、作業装置100の構成が概略的に示されている。   Hereinafter, an embodiment of a working device will be described in detail with reference to FIGS. FIG. 1 schematically shows the configuration of the working device 100.

図1に示すように、作業装置100は、ロボット50と、ロボット動作決定装置としての制御装置10と、を備える。ロボット50は、例えば、図6(a)に示すような垂直多関節ロボットであり、作業空間上における手先の指令値(位置・姿勢の6自由度)に対し、機構的な冗長性(7自由度以上)を有しているものとする。ロボット50は、ベースと、ベース上に設けられ、関節で接続された複数のリンクと、手先(ハンド)と、を有する。各関節の関節角はエンコーダ等により検出可能となっており、各関節の関節角はモータ等により変更される。ロボット50においては、各間接の関節角に応じて、手先(ハンド)の位置・姿勢が変更されるようになっている。   As shown in FIG. 1, the work device 100 includes a robot 50 and a control device 10 as a robot motion determination device. The robot 50 is, for example, a vertical articulated robot as shown in FIG. 6A, and has mechanical redundancy (7 degrees of freedom) with respect to the hand command value (6 degrees of freedom of position / posture) in the work space. More than a degree). The robot 50 includes a base, a plurality of links provided on the base and connected by joints, and a hand (hand). The joint angle of each joint can be detected by an encoder or the like, and the joint angle of each joint is changed by a motor or the like. In the robot 50, the position / posture of the hand (hand) is changed according to each indirect joint angle.

制御装置10は、作業空間上におけるロボット50の手先の指令値に基づいて、ロボット50の動作を決定し、ロボット50を制御する。この場合、制御装置10は、ロボット50の周辺に存在する物体(障害物)との衝突を回避するように、ロボット50の動作を決定する。   The control device 10 determines the operation of the robot 50 based on the command value of the hand of the robot 50 on the work space, and controls the robot 50. In this case, the control device 10 determines the operation of the robot 50 so as to avoid a collision with an object (obstacle) existing around the robot 50.

図2には、制御装置10のハードウェア構成が示されている。図2に示すように、制御装置10は、コンピュータとしてのCPU(Central Processing Unit)90、ROM(Read Only Memory)92、RAM(Random Access Memory)94、記憶部(ここではHDD(Hard Disk Drive))96、入出力インタフェース97、表示部93、入力部95、及び可搬型記憶媒体用ドライブ99等を備えている。これら制御装置10の構成各部は、バス98に接続されている。制御装置10では、ROM92あるいはHDD96に格納されているプログラム(ロボット動作決定プログラムを含む)、或いは可搬型記憶媒体用ドライブ99が可搬型記憶媒体91から読み取ったプログラム(ロボット動作決定プログラムを含む)をCPU90が実行することにより、図1に示す各部の機能が実現される。   FIG. 2 shows a hardware configuration of the control device 10. As shown in FIG. 2, the control device 10 includes a CPU (Central Processing Unit) 90, a ROM (Read Only Memory) 92, a RAM (Random Access Memory) 94, and a storage unit (here, an HDD (Hard Disk Drive)). 96, an input / output interface 97, a display section 93, an input section 95, a portable storage medium drive 99, and the like. Each component of the control device 10 is connected to a bus 98. In the control device 10, a program (including a robot operation determination program) stored in the ROM 92 or the HDD 96 or a program (including a robot operation determination program) read from the portable storage medium 91 by the portable storage medium drive 99. When executed by the CPU 90, the function of each unit shown in FIG. 1 is realized.

図1に示すように、制御装置10は、CPU90がプログラムを実行することにより、関節角取得部12、受付部としての指令値取得部14、手先位置姿勢計算部16、及び回避動作決定部18としての機能が実現されている。なお、手先位置姿勢計算部16及び回避動作決定部18は、決定部の一例として挙げられる。   As illustrated in FIG. 1, the control device 10 causes the CPU 90 to execute a program so that the joint angle acquisition unit 12, the command value acquisition unit 14 as a reception unit, the hand position / posture calculation unit 16, and the avoidance operation determination unit 18. As a function is realized. The hand position / posture calculation unit 16 and the avoidance operation determination unit 18 are examples of the determination unit.

関節角取得部12は、ロボット50の関節角度をロボット50の各関節に設けられたエンコーダ等から取得する。指令値取得部14は、ユーザ等から入力された作業空間上におけるロボット50の手先の指令値(位置・姿勢)を取得し、回避動作決定部18に送信する。手先位置姿勢計算部16は、関節角取得部12が取得した関節角から手先の位置・姿勢を計算する。回避動作決定部18は、指令値取得部14が取得した指令値及び手先位置姿勢計算部16が計算した手先の位置・姿勢に基づいて、手先の位置・姿勢をほぼ指令値どおりに維持したままロボット50の周辺に存在する障害物に各リンクが接触しないような動き(回避動作)を決定する。また、回避動作決定部18は、決定した動きとなるように、ロボット50の動作を制御する。   The joint angle acquisition unit 12 acquires the joint angle of the robot 50 from an encoder or the like provided at each joint of the robot 50. The command value acquisition unit 14 acquires a command value (position / posture) of the hand of the robot 50 on the work space input by a user or the like, and transmits the command value to the avoidance operation determination unit 18. The hand position / posture calculation unit 16 calculates the position / posture of the hand from the joint angle acquired by the joint angle acquisition unit 12. The avoidance operation determination unit 18 maintains the hand position / posture substantially in accordance with the command value based on the command value acquired by the command value acquisition unit 14 and the hand position / posture calculated by the hand position / posture calculation unit 16. A motion (avoidance operation) is determined so that each link does not contact an obstacle existing around the robot 50. Further, the avoidance operation determination unit 18 controls the operation of the robot 50 so as to achieve the determined movement.

次に、制御装置10の処理について、図3、図5のフローチャートに沿って、その他図面を適宜参照しつつ詳細に説明する。なお、図3、図5の処理の前提として、障害物の位置のデータ(各頂点のXYZ座標など)は、回避動作決定部18が保持しているものとする。   Next, the processing of the control device 10 will be described in detail along the flowcharts of FIGS. 3 and 5 with reference to other drawings as appropriate. As a premise of the processing in FIGS. 3 and 5, it is assumed that the data of the position of the obstacle (XYZ coordinates of each vertex, etc.) is held by the avoidance operation determination unit 18.

図3の処理では、まず、ステップS10において、指令値取得部14が、手先の位置姿勢に関する指令値を取得する。なお、指令値は、例えば、図4に破線にて示すような作業対象物上における作業軌道のデータ(手先が位置P1からP2に移動する間の、手先の位置姿勢の時系列データ)であるものとする。   In the process of FIG. 3, first, in step S10, the command value acquisition unit 14 acquires a command value related to the position and orientation of the hand. The command value is, for example, data on a work trajectory on the work target as shown by a broken line in FIG. 4 (time-series data of the position and orientation of the hand while the hand moves from the position P1 to P2). Shall.

次いで、ステップS11において、関節角取得部12が、各関節の関節角の初期値(現在の関節角度)0θを取得する。この場合、関節角取得部12は、ロボットの各関節に設けられたエンコーダ等から関節角の初期値を取得する。 Next, in step S11, the joint angle acquisition unit 12 acquires an initial value (current joint angle) 0 θ of the joint angle of each joint. In this case, the joint angle acquisition unit 12 acquires an initial value of the joint angle from an encoder or the like provided at each joint of the robot.

次いでステップS12では、手先位置姿勢計算部16が、現在の関節角度0θから手先の位置姿勢r(=0r)を計算する。次いで、ステップS14では、回避動作決定部18が、手先の位置姿勢の現在値(0r)と、作業軌道上の最初の手先の位置姿勢の目標値(1r)との差分から手先の位置姿勢の変化量(速度ベクトル)Δr(=1r−0r)を計算する。以下、Δrを手先速度とも呼ぶものとする。 Next, at step S12, the hand position and orientation calculation unit 16 calculates the tip unit position and orientation r (= 0 r) from the current joint angle 0 theta. Then, in step S14, avoidance operation determining section 18, the position of the hand from the difference between the current value (0 r), the target value of the position and orientation of the first hand on the working track and (1 r) of the position and orientation of the hand the amount of change of the posture (velocity vector) Δr (= 1 r- 0 r ) is calculated. Hereinafter, Δr is also referred to as a hand speed.

次いで、ステップS16では、回避動作決定部18が、手先速度Δrから関節角変化量(関節角速度)Δθを計算するサブルーチンを実行する。本処理では、具体的には、図5のフローチャートに沿った処理が実行される。   Next, in step S16, the avoidance operation determination unit 18 executes a subroutine for calculating a joint angle change amount (joint angular velocity) Δθ from the hand speed Δr. In this process, specifically, the process according to the flowchart of FIG. 5 is executed.

ここで、ロボット50の手先の位置姿勢rと関節角度θとの関係は、次式(1)のように、一般に非線形方程式となる。
r=f(θ) …(1)
Here, the relationship between the position and orientation r of the hand of the robot 50 and the joint angle θ is generally a nonlinear equation as shown in the following equation (1).
r = f (θ) (1)

作業空間上でロボット50が作業を遂行する場合、その指令値は、ロボット50の手先の位置姿勢rとして与えられ、この値からロボット50の動作として関節角度θを求めることになる。これを式(1)から計算しようとした場合、f(θ)は一般に複雑な非線形連立方程式となるため、この解を解析的に求めることは困難である。   When the robot 50 performs work on the work space, the command value is given as the position and orientation r of the hand of the robot 50, and the joint angle θ is obtained as the operation of the robot 50 from this value. When trying to calculate this from equation (1), f (θ) is generally a complex nonlinear simultaneous equation, and it is difficult to analytically find this solution.

そこで、式(1)の両辺を時間微分して線形関係にした次式(2)を用いる。   Therefore, the following equation (2) in which both sides of the equation (1) are differentiated in time to obtain a linear relationship is used.

Figure 2016043449
Figure 2016043449

ここで、J(θ)はヤコビ行列と呼ばれ、その各要素Jij(θ)は、次式(3)で定義される。 Here, J (θ) is called a Jacobian matrix, and each element J ij (θ) is defined by the following equation (3).

Figure 2016043449
式(2)をθドットについて解くと、θとrの次元が等しい場合は、
Figure 2016043449
Solving equation (2) for θ dots, if θ and r are equal in dimension,

Figure 2016043449
θの次元がrの次元より大きい場合は、
Figure 2016043449
If the dimension of θ is greater than the dimension of r,

Figure 2016043449
となる。本実施形態では、冗長自由度を持つロボットを対象としているので、式(4)’を用いるものとする。
Figure 2016043449
It becomes. In the present embodiment, a robot having a redundancy degree of freedom is targeted, and therefore Expression (4) ′ is used.

ここで、J+(θ)はヤコビ行列の擬似逆行列で、J+=JT・(JT・J)-1、(I−J+・J)は、零空間への射影を表す。 Here, J + (θ) is a pseudo inverse matrix of the Jacobian matrix, and J + = J T · (J T · J) −1 , (I−J + · J) represents a projection onto the null space.

また、ξはθドットと同じ次元の任意ベクトルである。   Further, ξ is an arbitrary vector having the same dimension as θ dots.

式(4)’を用いると、機構系全体の関節角速度Δθは、次式(5)のように表される。   When Expression (4) ′ is used, the joint angular velocity Δθ of the entire mechanical system is expressed as the following Expression (5).

Figure 2016043449
Figure 2016043449

以下、上式(1)〜(5)を踏まえて、図5の処理(ステップS16)について説明する。   Hereinafter, based on the above formulas (1) to (5), the process of FIG. 5 (step S16) will be described.

図5の処理では、まず、ステップS50において、回避動作決定部18は、ロボット50の各リンクと障害物との距離及び近接方向を計算する。具体的には、図6(a)において矢印で示すように、ロボットの各リンクと障害物との最近接点(矢印の先の点)および距離(矢印の長さ)を計算する。次いで、ステップS52では、回避動作決定部18は、障害物との距離が最小となるリンクiに注目し、該リンクiを特定リンクとしての仮想的な手先リンク(仮想手先リンクi)と見做す。   In the process of FIG. 5, first, in step S50, the avoidance action determination unit 18 calculates the distance and proximity direction between each link of the robot 50 and the obstacle. Specifically, as shown by arrows in FIG. 6A, the closest point (point ahead of the arrow) and the distance (length of the arrow) between each link of the robot and the obstacle are calculated. Next, in step S52, the avoidance action determination unit 18 pays attention to the link i that minimizes the distance from the obstacle, and regards the link i as a virtual hand link (virtual hand link i) as a specific link. The

次いで、ステップS54では、回避動作決定部18は、仮想手先リンクiまでの部分的な機構のヤコビ行列Jiを計算する。具体的には、以下の方法を用いる。 Next, in step S54, the avoidance action determination unit 18 calculates the Jacobian matrix J i of the partial mechanism up to the virtual hand link i. Specifically, the following method is used.

まず、回避動作決定部18は、仮想手先リンクiと障害物の最近接点間を結ぶベクトルを計算し、仮想手先位置の回避(速度)ベクトルをriドット(次式(6)参照)とする。ここで、ベクトルの向きは、障害物の点からリンクの点へ向かう方向とし、その大きさは(1/最近接距離)とする(図6(b)参照)。 First, the avoidance operation determination unit 18 calculates a vector connecting the virtual hand link i and the closest point of the obstacle, and sets the avoidance (speed) vector of the virtual hand position as r i dots (see the following equation (6)). . Here, the direction of the vector is a direction from the obstacle point to the link point, and the magnitude thereof is (1 / closest distance) (see FIG. 6B).

そして、回避動作決定部18は、図7(a)に示すように、障害物との距離が最短となる仮想手先リンクi上の点までの長さを仮想手先リンクiのリンク長Lとする。そして、回避動作決定部18は、図7(b)に示すように、リンク長をLと仮定して、仮想手先リンクiまでの機構におけるヤコビ行列Jiを計算する。 Then, as shown in FIG. 7A, the avoidance action determination unit 18 sets the length to the point on the virtual hand link i where the distance from the obstacle is the shortest as the link length L of the virtual hand link i. . Then, the avoidance operation determination unit 18 calculates the Jacobian matrix J i in the mechanism up to the virtual hand link i assuming that the link length is L, as shown in FIG.

次いで、ステップS56では、回避動作決定部18は、回避ベクトルをベースからリンクiまでの間の部分的な機構の手先速度とみなし、回避関節角速度ベクトルξを計算する。具体的には、回避ベクトル(riドット)と仮想手先リンクiまでの機構におけるヤコビ行列Jiから次式(6)により回避関節角速度ベクトルξを求める(図7(c)の矢印参照)。 Next, in step S56, the avoidance operation determination unit 18 regards the avoidance vector as a partial mechanism hand speed from the base to the link i, and calculates an avoidance joint angular velocity vector ξ. Specifically, avoidance vector (r i dots) and determining the avoidance joint angular velocity vector ξ by the following equation from the Jacobian matrix J i in mechanism to the virtual hand link i (6) (see arrows in FIG. 7 (c)).

Figure 2016043449
Figure 2016043449

次いで、ステップS58では、回避動作決定部18は、ロボットの機構系全体の関節角速度Δθを求める。具体的には、回避動作決定部18は、上式(5)や上式(6)で求めたξを用いて、Δθを求める。なお、本処理では、制御装置10は、図7(c)の関節角速度ベクトルをロボット50の機構系全体の零空間に射影して、ロボットの機構系全体の関節角速度Δθを求めているといえる。その後は、図3のステップS18に移行する。   Next, in step S58, the avoidance operation determination unit 18 obtains the joint angular velocity Δθ of the entire robot mechanical system. Specifically, the avoidance operation determination unit 18 obtains Δθ using ξ obtained by the above equation (5) or the above equation (6). In this process, it can be said that the control device 10 obtains the joint angular velocity Δθ of the entire robot mechanism system by projecting the joint angular velocity vector of FIG. . Thereafter, the process proceeds to step S18 in FIG.

図3のステップS18に移行すると、回避動作決定部18は、現在の関節角度θを、関節角速度Δθを用いて更新(θ←θ+Δθ)する。   In step S18 of FIG. 3, the avoidance operation determination unit 18 updates the current joint angle θ using the joint angular velocity Δθ (θ ← θ + Δθ).

次いで、ステップS20では、回避動作決定部18は、更新された関節角度θnewから手先の位置姿勢rnewを更新する。この場合、上式(1)より、rnew=f(θnew)が求まる。 Then, in step S20, avoidance operation determining unit 18 updates the position and orientation r new new of the hand from the updated joint angle theta new new. In this case, r new = f (θ new ) is obtained from the above equation (1).

次いで、ステップS22では、回避動作決定部18は、目標値と更新された関節角度θnewから求まる手先の位置姿勢rnewとの誤差(rnew1r)が閾値以下か否かを判断する。誤差が閾値以下の場合、すなわち、手先を目標(指令値)からほとんど変更されることなく障害物を回避できる場合に、ステップS22の判断は肯定され、回避動作決定部18は、ステップS24に移行する。一方、誤差が閾値より大きい場合には、ステップS14に戻り、ステップS14〜S22の処理・判断を繰り返す。 Next, in step S22, the avoidance action determination unit 18 determines whether or not an error (r new −1 r) between the target value and the hand position and orientation r new obtained from the updated joint angle θ new is equal to or less than a threshold value. . If the error is equal to or smaller than the threshold value, that is, if the obstacle can be avoided without changing the hand from the target (command value), the determination in step S22 is affirmed, and the avoidance operation determination unit 18 proceeds to step S24. To do. On the other hand, if the error is larger than the threshold value, the process returns to step S14, and the processes and determinations of steps S14 to S22 are repeated.

ステップS22の判断が肯定され、ステップS24に移行すると、回避動作決定部18は、手先の位置姿勢の目標値を次の値(作業軌道上の次の位置姿勢)に更新し、ステップS12に戻る。なお、この場合、回避動作決定部18は、rnew0rと置き換える(0r←rnew)。その後は、ステップS12以降の処理を目標値が存在しなくなるまで繰り返す。 When the determination in step S22 is affirmative and the process proceeds to step S24, the avoidance operation determination unit 18 updates the target value of the hand position / posture to the next value (next position / posture on the work trajectory), and returns to step S12. . In this case, the avoidance action determination unit 18 replaces r new with 0 r ( 0 r ← r new ). Thereafter, the processes after step S12 are repeated until the target value no longer exists.

なお、制御装置10は、ロボット50を駆動する際には、ステップS58で求めたロボットの機構系全体の関節角速度Δθに基づいて、ロボット50の各モータを駆動する。これにより、障害物とロボット50との接触を回避しつつ、ロボット50の手先を作業軌道にほぼ沿って移動させることが可能となる。   When driving the robot 50, the control device 10 drives each motor of the robot 50 based on the joint angular velocity Δθ of the entire mechanism system of the robot obtained in step S58. Accordingly, it is possible to move the hand of the robot 50 substantially along the work path while avoiding contact between the obstacle and the robot 50.

ここで、図8には、ロボットとして、垂直多関節ロボットと6自由度ステージとを含む機構(ロボットシステム)を採用した場合の例が示されている。図8では、垂直多関節ロボットと6自由度ステージとにより冗長自由度を有するロボットシステムが実現されている。なお、垂直多関節ロボットと6自由度ステージは、図8に示す囲いの中に格納されているため、当該囲いが垂直多関節ロボットの障害物となりうる。   Here, FIG. 8 shows an example in which a mechanism (robot system) including a vertical articulated robot and a 6-degree-of-freedom stage is adopted as the robot. In FIG. 8, a robot system having redundant degrees of freedom is realized by a vertical articulated robot and a 6-degree-of-freedom stage. Since the vertical articulated robot and the 6-degree-of-freedom stage are stored in the enclosure shown in FIG. 8, the enclosure can be an obstacle for the vertical articulated robot.

図9(a)〜図9(c)には、図8のロボットシステムが障害物を回避しない場合において、垂直多関節ロボットの手先を6自由度ステージ上に載置された物体の一端から他端へ移動させる場合(図4のP1,P2参照)の各関節角の計算例を示している。また、図10(a)〜図10(c)には、本実施形態の方法で障害物を回避する場合の各関節角の計算例を示している。なお、図9(a)、図10(a)のq1〜q6は、垂直多関節ロボットの各関節の角度変化を示し、図9(b)、図10(b)のth1〜th3は、6自由度ステージの各関節の角度変化(実際には、XYZ方向の移動量)を示し、図9(c)、図10(c)のth4〜th6は、6自由度ステージの各関節の角度変化(実際には、θx、θy、θz方向の移動量)を示している。また、各図の横軸は、作業軌道の経由点番号を示している。   9 (a) to 9 (c), when the robot system of FIG. 8 does not avoid an obstacle, the hand of the vertical articulated robot is moved from one end of an object placed on a stage with 6 degrees of freedom. An example of calculating each joint angle when moving to the end (see P1 and P2 in FIG. 4) is shown. FIGS. 10A to 10C show calculation examples of joint angles when an obstacle is avoided by the method of this embodiment. 9 (a) and 10 (a), q1 to q6 indicate the angle change of each joint of the vertical articulated robot, and th1 to th3 in FIGS. 9 (b) and 10 (b) are 6 FIG. 9C and FIG. 10C show the change in angle of each joint of the 6-degree-of-freedom stage. (Actually, movement amounts in the θx, θy, and θz directions) are shown. Moreover, the horizontal axis of each figure has shown the waypoint number of the working track.

この場合、6自由度ステージ上の物体に対する垂直多関節ロボットの手先の軌道は、障害物を回避してもしなくてもほぼ同一となるが、図9、図10に示すように、各関節の角度変化は、障害物を回避するかしないかに応じて異なるものとなる。   In this case, the trajectory of the hand of the vertical articulated robot with respect to the object on the 6-degree-of-freedom stage is substantially the same regardless of whether the obstacle is avoided or not, as shown in FIGS. The change in angle varies depending on whether or not an obstacle is avoided.

以上、詳細に説明したように、本実施形態によると、指令値取得部14が、冗長自由度を有するロボット50が有する手先の作業空間上における位置姿勢の指令値を取得し、回避動作決定部18が、指令値に基づいて手先の位置姿勢を指令値から所定範囲に((rnew1r)を閾値以下に)維持しつつ、ロボットの各リンクと障害物との最近接距離および近接方向を求め、最近接距離が最小のリンクiを仮想的な手先と見做し、該リンクiの最近接距離と近接方向に基づいて、該リンクiの回避動作を決定する。これにより、目標となる作業軌道(指令値)を与えることで、ロボットの自由度の冗長性を利用した回避動作を簡易に決定することができる。 As described above in detail, according to the present embodiment, the command value acquisition unit 14 acquires the command value of the position and orientation on the work space of the hand of the robot 50 having the redundancy degree of freedom, and the avoidance operation determination unit 18, while maintaining the position and orientation of the hand within a predetermined range from the command value based on the command value ((r new −1 r) is equal to or less than the threshold value), the closest distance and proximity between each link of the robot and the obstacle The direction is obtained, the link i with the shortest closest distance is regarded as a virtual hand, and the avoidance action of the link i is determined based on the closest distance and the proximity direction of the link i. Thus, by providing a target work trajectory (command value), it is possible to easily determine an avoidance operation using redundancy of the degree of freedom of the robot.

また、本実施形態では、回避動作決定部18は、障害物との最近接距離が最小のリンクiの回避動作を決定する際に、障害物との距離が最短となるリンク上の点を特定し、最近接距離と近接方向と特定した点とに基づいて回避速度ベクトルを決定する。これにより、回避速度ベクトルを適切に決定することができる。   In the present embodiment, the avoidance operation determination unit 18 specifies a point on the link that has the shortest distance from the obstacle when determining the avoidance operation of the link i having the shortest distance from the obstacle. Then, the avoidance speed vector is determined based on the closest distance, the proximity direction, and the specified point. Thereby, an avoidance speed vector can be determined appropriately.

また、本実施形態では、回避動作決定部18は、ロボット50のベースとリンクiとの間の関節における関節角速度ベクトルとリンクiの回避ベクトルとの関係(ヤコビ行列)を算出し、この関係を用いて、リンクi上の点の回避ベクトルをロボット50のベースとリンクiとの間の関節における関節角速度ベクトルに変換する。これにより、回避ベクトルを簡易に関節角速度ベクトルに変換することができる。   In the present embodiment, the avoidance operation determination unit 18 calculates the relationship (Jacobi matrix) between the joint angular velocity vector at the joint between the base of the robot 50 and the link i and the avoidance vector of the link i, and this relationship is calculated. The point avoidance vector on the link i is converted into a joint angular velocity vector at the joint between the base of the robot 50 and the link i. Thereby, an avoidance vector can be easily converted into a joint angular velocity vector.

また、本実施形態では、回避動作決定部18は、ロボット50のベースとリンクiとの間に存在する関節の関節角速度ベクトルをロボット50の機構系全体の零空間に射影して、ロボットの機構系全体での回避動作を決定する。これにより、例えば、図8のような垂直多関節ロボットと6自由度ステージとを組み合わせたような複雑なロボットシステムであっても、指令値(目標となる作業軌道)を与えることで、機構全体の関節自由度の冗長性を利用した回避動作制御が可能となる。なお、熟練のオペレータによる手動での教示の場合には、垂直多関節ロボットの単純な軌道追従の教示作業でも1,2時間を要すると想定される。また、図8のような6自由度ステージの教示作業およびそれらの相互衝突可能性を考慮した教示修正を行わなければならないとすると、作業には数日を要すると想定される。これに対し、本実施形態の方法を用いれば、指令値を与えてから数分の処理で教示作業を完了することが可能となる。   In the present embodiment, the avoidance operation determination unit 18 projects the joint angular velocity vector of the joint existing between the base of the robot 50 and the link i to the null space of the entire mechanism system of the robot 50, thereby Determine avoidance behavior for the entire system. Thereby, for example, even in a complicated robot system in which a vertical articulated robot as shown in FIG. 8 and a 6-degree-of-freedom stage are combined, a command value (a target work trajectory) is given to the entire mechanism. It is possible to perform avoidance operation control using redundancy of joint degrees of freedom. In the case of manual teaching by a skilled operator, it is assumed that it takes 1 to 2 hours even for simple trajectory tracking teaching work of a vertical articulated robot. Further, if it is necessary to perform teaching correction in consideration of the teaching work of the 6-degree-of-freedom stage and the possibility of mutual collision as shown in FIG. 8, it is assumed that the work takes several days. On the other hand, if the method of the present embodiment is used, the teaching work can be completed in a few minutes after the command value is given.

なお、上記実施形態では、ロボット50と関節角取得部12、指令値取得部14、手先位置姿勢計算部16、及び回避動作決定部18の機能を有する制御装置10とが接続されている場合について説明したが、これに限られるものではない。例えば、制御装置10の各部12,14,16,18の機能を制御装置10とは異なる装置が有していてもよい。この場合、制御装置10から当該装置に対して指令値を入力し、当該装置において計算した結果を制御装置10に対して出力するようにしてもよい。   In the above embodiment, the robot 50 is connected to the control device 10 having the functions of the joint angle acquisition unit 12, the command value acquisition unit 14, the hand position / posture calculation unit 16, and the avoidance operation determination unit 18. Although explained, it is not limited to this. For example, a device different from the control device 10 may have the functions of the units 12, 14, 16, and 18 of the control device 10. In this case, a command value may be input from the control device 10 to the device, and a result calculated by the device may be output to the control device 10.

なお、上記実施形態では、障害物が、図6(a)等に示すような障害物や、図8に示すような囲いである場合を示したが、これに限らず、障害物は、ロボット50の近傍に位置している他のロボットであってもよい。   In the above embodiment, the obstacle is an obstacle as shown in FIG. 6A or an enclosure as shown in FIG. 8, but the present invention is not limited to this. Another robot located in the vicinity of 50 may be used.

なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体(ただし、搬送波は除く)に記録しておくことができる。   The above processing functions can be realized by a computer. In that case, a program describing the processing contents of the functions that the processing apparatus should have is provided. By executing the program on a computer, the above processing functions are realized on the computer. The program describing the processing contents can be recorded on a computer-readable recording medium (except for a carrier wave).

プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD−ROM(Compact Disc Read Only Memory)などの可搬型記録媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。   When the program is distributed, for example, it is sold in the form of a portable recording medium such as a DVD (Digital Versatile Disc) or a CD-ROM (Compact Disc Read Only Memory) on which the program is recorded. It is also possible to store the program in a storage device of a server computer and transfer the program from the server computer to another computer via a network.

プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。   The computer that executes the program stores, for example, the program recorded on the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes processing according to the program. The computer can also read the program directly from the portable recording medium and execute processing according to the program. Further, each time the program is transferred from the server computer, the computer can sequentially execute processing according to the received program.

上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。   The above-described embodiment is an example of a preferred embodiment of the present invention. However, the present invention is not limited to this, and various modifications can be made without departing from the scope of the present invention.

なお、以上の実施形態の説明に関して、更に以下の付記を開示する。
(付記1) 冗長自由度を有するロボットの動作を決定するロボット動作決定装置であって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付ける受付部と、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する決定部と、を備えるロボット動作決定装置。
(付記2) 前記決定部は、前記特定リンクの回避動作を決定する際に、前記障害物との距離が最短の前記特定リンク上の点を特定し、前記最近接距離と前記近接方向と前記点に基づいて、前記特定リンクの回避速度ベクトルを決定する、ことを特徴とする付記1に記載のロボットの動作決定装置。
(付記3) 前記決定部は、
前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルと前記特定リンクの回避速度ベクトルとの関係を算出し、
前記関係を用いて、前記特定リンク上の前記点における前記回避速度ベクトルを前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルに変換することを特徴とする付記2に記載のロボットの動作決定装置。
(付記4) 前記決定部は、前記ロボットの前記ベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルを前記ロボットの機構系全体の零空間に射影して、前記ロボットの機構系全体での回避動作を決定することを特徴とする付記3に記載のロボットの動作決定装置。
(付記5) コンピュータに、冗長自由度を有するロボットの動作を決定させるロボット動作決定プログラムであって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、
処理を前記コンピュータに実行させるロボット動作決定プログラム。
(付記6) 前記決定する処理では、前記特定リンクの回避動作を決定する際に、前記障害物との距離が最短の前記特定リンク上の点を特定し、前記最近接距離と前記近接方向と前記点に基づいて、前記特定リンクの回避速度ベクトルを決定する、ことを特徴とする付記5に記載のロボットの動作決定プログラム。
(付記7) 前記決定する処理では、
前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルと前記特定リンクの回避速度ベクトルとの関係を算出し、
前記関係を用いて、前記特定リンク上の前記点における前記回避速度ベクトルを前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルに変換することを特徴とする付記6に記載のロボットの動作決定プログラム。
(付記8) 前記決定する処理では、前記ロボットの前記ベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルを前記ロボットの機構系全体の零空間に射影して、前記ロボットの機構系全体での回避動作を決定することを特徴とする付記7に記載のロボットの動作決定プログラム。
(付記9) コンピュータが、冗長自由度を有するロボットの動作を決定するロボット動作決定方法であって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、
処理を前記コンピュータが実行するロボット動作決定方法。
(付記10) 前記決定する処理では、前記特定リンクの回避動作を決定する際に、前記障害物との距離が最短の前記特定リンク上の点を特定し、前記最近接距離と前記近接方向と前記点に基づいて、前記特定リンクの回避速度ベクトルを決定する、ことを特徴とする付記9に記載のロボットの動作決定方法。
(付記11) 前記決定する処理では、
前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルと前記特定リンクの回避速度ベクトルとの関係を算出し、
前記関係を用いて、前記特定リンク上の前記点における前記回避速度ベクトルを前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルに変換することを特徴とする付記10に記載のロボットの動作決定方法。
(付記12) 前記決定する処理では、前記ロボットの前記ベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルを前記ロボットの機構系全体の零空間に射影して、前記ロボットの機構系全体での回避動作を決定することを特徴とする付記11に記載のロボットの動作決定方法。
In addition, the following additional remarks are disclosed regarding description of the above embodiment.
(Supplementary note 1) A robot motion determination device for determining the motion of a robot having redundant degrees of freedom,
A receiving unit for receiving a command value of a position and orientation on a work space of a hand of the robot;
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance And a determination unit that determines an avoidance operation of the specific link based on the closest distance and the proximity direction of the specific link.
(Additional remark 2) When the determination part determines the avoidance operation | movement of the said specific link, it specifies the point on the said specific link with the shortest distance with the said obstacle, The said nearest distance, the said proximity direction, and the said The robot motion determination apparatus according to appendix 1, wherein an avoidance speed vector of the specific link is determined based on a point.
(Supplementary note 3)
Calculating a relationship between a joint angular velocity vector of a joint existing between the base of the robot and the specific link and an avoidance speed vector of the specific link;
The supplementary note 2, wherein the avoidance velocity vector at the point on the specific link is converted into a joint angular velocity vector of a joint existing between the base of the robot and the specific link using the relationship. Robot motion determination device.
(Additional remark 4) The said determination part projects the joint angular velocity vector of the joint which exists between the said base of the said robot and the said specific link on the null space of the whole mechanism system of the said robot, and the whole mechanism system of the said robot 4. The robot motion determination device according to appendix 3, wherein the avoidance operation is determined.
(Supplementary Note 5) A robot motion determination program for causing a computer to determine the motion of a robot having redundant degrees of freedom,
Accepting the command value of the position and orientation on the work space of the hand of the robot,
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance Is determined as a virtual hand, and the avoidance action of the specific link is determined based on the closest distance and the proximity direction of the specific link.
A robot operation determination program for causing a computer to execute processing.
(Additional remark 6) In the process to determine, when determining the avoidance operation of the specific link, a point on the specific link with the shortest distance to the obstacle is specified, and the closest distance, the proximity direction, The robot motion determination program according to appendix 5, wherein an avoidance speed vector of the specific link is determined based on the point.
(Supplementary note 7) In the process of determining,
Calculating a relationship between a joint angular velocity vector of a joint existing between the base of the robot and the specific link and an avoidance speed vector of the specific link;
The supplementary note 6, wherein the avoidance velocity vector at the point on the specific link is converted into a joint angular velocity vector of a joint existing between the base of the robot and the specific link using the relationship. Robot motion determination program.
(Supplementary Note 8) In the determining process, a joint angular velocity vector of a joint existing between the base of the robot and the specific link is projected onto a null space of the entire mechanism system of the robot, and the mechanism system of the robot 8. The robot motion determination program according to appendix 7, wherein an overall avoidance motion is determined.
(Supplementary note 9) A robot motion determination method in which a computer determines a motion of a robot having redundant degrees of freedom,
Accepting the command value of the position and orientation on the work space of the hand of the robot,
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance Is determined as a virtual hand, and the avoidance action of the specific link is determined based on the closest distance and the proximity direction of the specific link.
A robot motion determination method in which the computer executes processing.
(Additional remark 10) In the process to determine, when determining the avoidance operation of the specific link, a point on the specific link with the shortest distance to the obstacle is specified, and the closest distance, the proximity direction, The robot motion determination method according to appendix 9, wherein an avoidance speed vector of the specific link is determined based on the point.
(Supplementary Note 11) In the determination process,
Calculating a relationship between a joint angular velocity vector of a joint existing between the base of the robot and the specific link and an avoidance speed vector of the specific link;
Item 11. The supplementary note 10, wherein the avoidance velocity vector at the point on the specific link is converted into a joint angular velocity vector of a joint existing between the base of the robot and the specific link using the relationship. How to determine the robot's behavior.
(Supplementary Note 12) In the determining process, a joint angular velocity vector of a joint existing between the base of the robot and the specific link is projected onto a null space of the entire mechanism system of the robot, and the mechanism system of the robot 12. The robot motion determination method according to appendix 11, wherein an overall avoidance motion is determined.

10 制御装置(ロボット動作決定装置)
14 指令値取得部(受付部)
16 手先位置姿勢計算部(決定部の一部)
18 回避動作決定部(決定部の一部)
50 ロボット
90 CPU(コンピュータ)
10 Control device (robot motion determination device)
14 Command value acquisition unit (reception unit)
16 Hand position and orientation calculation unit (part of the determination unit)
18 Avoidance action determination unit (part of determination unit)
50 robot 90 CPU (computer)

Claims (6)

冗長自由度を有するロボットの動作を決定するロボット動作決定装置であって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付ける受付部と、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する決定部と、を備えるロボット動作決定装置。
A robot motion determination device for determining a motion of a robot having redundant degrees of freedom,
A receiving unit for receiving a command value of a position and orientation on a work space of a hand of the robot;
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance And a determination unit that determines an avoidance operation of the specific link based on the closest distance and the proximity direction of the specific link.
前記決定部は、前記特定リンクの回避動作を決定する際に、前記障害物との距離が最短の前記特定リンク上の点を特定し、前記最近接距離と前記近接方向と前記点に基づいて、前記特定リンクの回避速度ベクトルを決定する、ことを特徴とする請求項1に記載のロボットの動作決定装置。   When determining the avoidance operation of the specific link, the determination unit specifies a point on the specific link with the shortest distance from the obstacle, and based on the closest distance, the proximity direction, and the point The robot motion determination apparatus according to claim 1, wherein an avoidance speed vector of the specific link is determined. 前記決定部は、
前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルと前記特定リンクの回避速度ベクトルとの関係を算出し、
前記関係を用いて、前記特定リンク上の前記点における前記回避速度ベクトルを前記ロボットのベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルに変換することを特徴とする請求項2に記載のロボットの動作決定装置。
The determination unit
Calculating a relationship between a joint angular velocity vector of a joint existing between the base of the robot and the specific link and an avoidance speed vector of the specific link;
3. The avoidance velocity vector at the point on the specific link is converted into a joint angular velocity vector of a joint existing between the base of the robot and the specific link using the relationship. The operation determining apparatus for the robot described.
前記決定部は、前記ロボットの前記ベースと前記特定リンクとの間に存在する関節の関節角速度ベクトルを前記ロボットの機構系全体の零空間に射影して、前記ロボットの機構系全体での回避動作を決定することを特徴とする請求項3に記載のロボットの動作決定装置。   The determination unit projects a joint angular velocity vector of a joint existing between the base of the robot and the specific link to a null space of the entire mechanism system of the robot, and avoidance operation in the entire mechanism system of the robot The robot motion determination device according to claim 3, wherein: コンピュータに、冗長自由度を有するロボットの動作を決定させるロボット動作決定プログラムであって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、
処理を前記コンピュータに実行させるロボット動作決定プログラム。
A robot operation determination program for causing a computer to determine the operation of a robot having redundant degrees of freedom,
Accepting the command value of the position and orientation on the work space of the hand of the robot,
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance Is determined as a virtual hand, and the avoidance action of the specific link is determined based on the closest distance and the proximity direction of the specific link.
A robot operation determination program for causing a computer to execute processing.
コンピュータが、冗長自由度を有するロボットの動作を決定するロボット動作決定方法であって、
前記ロボットが有する手先の作業空間上における位置姿勢の指令値を受け付け、
前記指令値に基づいて前記手先の位置姿勢を指令値から所定範囲に維持しつつ、前記ロボットの各リンクと障害物との最近接距離および近接方向を求め、前記最近接距離が最小の特定リンクを仮想的な手先と見做し、該特定リンクの最近接距離と近接方向に基づいて、該特定リンクの回避動作を決定する、
処理を前記コンピュータが実行するロボット動作決定方法。
A robot motion determination method in which a computer determines a motion of a robot having redundant degrees of freedom,
Accepting the command value of the position and orientation on the work space of the hand of the robot,
Based on the command value, while maintaining the position and orientation of the hand within a predetermined range from the command value, the closest distance and proximity direction between each link of the robot and the obstacle are obtained, and the specific link with the minimum closest distance Is determined as a virtual hand, and the avoidance action of the specific link is determined based on the closest distance and the proximity direction of the specific link.
A robot motion determination method in which the computer executes processing.
JP2014169582A 2014-08-22 2014-08-22 Robot operation determination device, robot operation determination program and robot operation determination method Withdrawn JP2016043449A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014169582A JP2016043449A (en) 2014-08-22 2014-08-22 Robot operation determination device, robot operation determination program and robot operation determination method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014169582A JP2016043449A (en) 2014-08-22 2014-08-22 Robot operation determination device, robot operation determination program and robot operation determination method

Publications (1)

Publication Number Publication Date
JP2016043449A true JP2016043449A (en) 2016-04-04

Family

ID=55634538

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014169582A Withdrawn JP2016043449A (en) 2014-08-22 2014-08-22 Robot operation determination device, robot operation determination program and robot operation determination method

Country Status (1)

Country Link
JP (1) JP2016043449A (en)

Similar Documents

Publication Publication Date Title
JP7222803B2 (en) Trajectory planning device, trajectory planning method and program
US8606402B2 (en) Manipulator and control method thereof
US9827675B2 (en) Collision avoidance method, control device, and program
US9056394B2 (en) Methods and systems for determining efficient robot-base position
US8560122B2 (en) Teaching and playback method based on control of redundancy resolution for robot and computer-readable medium controlling the same
JP4730440B2 (en) Trajectory planning apparatus, trajectory planning method, and computer program
US20180036882A1 (en) Layout setting method and layout setting apparatus
Petrič et al. Smooth continuous transition between tasks on a kinematic control level: Obstacle avoidance as a control problem
Neto et al. High‐level robot programming based on CAD: dealing with unpredictable environments
US20150051734A1 (en) Human motion tracking control with strict contact force contstraints for floating-base humanoid robots
KR102300752B1 (en) Method and Apparatus for Collision-Free Trajectory Optimization of Redundant Manipulator given an End-Effector Path
US20210107144A1 (en) Learning method, learning apparatus, and learning system
JP2015066668A (en) Method for adjusting teaching point of robot, method for calculating installation position of robot, robot system, program, and recording medium
JP5173958B2 (en) Moving body posture generation method and moving body posture generation apparatus
Frank et al. Using gaussian process regression for efficient motion planning in environments with deformable objects
JP2019084649A (en) Interference determination method, interference determination system, and computer program
US10456913B2 (en) Method and apparatus for controlling a robot movement of a robot on the basis of a second trajectory
JP7250089B2 (en) Singularity-free motion parameterization of soft robot manipulators
He et al. Haptic-aided robot path planning based on virtual tele-operation
US20210349444A1 (en) Accelerating robotic planning for operating on deformable objects
JP2009274180A (en) Robot movement plan method and device using the same
JP5776486B2 (en) Robot control apparatus, control method thereof, and program
JP2016043449A (en) Robot operation determination device, robot operation determination program and robot operation determination method
JP6862849B2 (en) Arithmetic logic units, arithmetic methods, arithmetic programs and robot systems
JP5857803B2 (en) Industrial machine interference determination device, interference determination method, computer program, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170511

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20171225