JP5456557B2 - Robot, control system and control program - Google Patents

Robot, control system and control program Download PDF

Info

Publication number
JP5456557B2
JP5456557B2 JP2010101492A JP2010101492A JP5456557B2 JP 5456557 B2 JP5456557 B2 JP 5456557B2 JP 2010101492 A JP2010101492 A JP 2010101492A JP 2010101492 A JP2010101492 A JP 2010101492A JP 5456557 B2 JP5456557 B2 JP 5456557B2
Authority
JP
Japan
Prior art keywords
line segment
joint mechanism
control system
point
interpolation
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
JP2010101492A
Other languages
Japanese (ja)
Other versions
JP2011230213A (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.)
Honda Motor Co Ltd
Original Assignee
Honda Motor Co 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 Honda Motor Co Ltd filed Critical Honda Motor Co Ltd
Priority to JP2010101492A priority Critical patent/JP5456557B2/en
Publication of JP2011230213A publication Critical patent/JP2011230213A/en
Application granted granted Critical
Publication of JP5456557B2 publication Critical patent/JP5456557B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、制御システムおよびその制御対象の1つであるロボットなどに関する。   The present invention relates to a control system and a robot that is one of its control objects.

ロボットアームなど、回転自由度を有する関節機構を備えている制御対象の動作を定める軌道を探索する手法が提案されている(特許文献1参照)。たとえば、関節機構の角度(関節角度)またはローカル座標系における制御対象の指定部分の位置または姿勢を表わすオイラー角の軌道を探索することが考えられる。   There has been proposed a method of searching for a trajectory that defines the operation of a control target including a joint mechanism having a rotational degree of freedom such as a robot arm (see Patent Document 1). For example, it is conceivable to search for an Euler angle trajectory representing the angle (joint angle) of the joint mechanism or the position or posture of the specified portion of the control target in the local coordinate system.

特開2010−005761号公報JP 2010-005761 A

しかし、制御対象の関節角度により軌道が表現された場合、当該制御対象が不必要に大きく動くような非効率的な軌道が生成される可能性がある。また、ローカル座標系における制御対象の指定部分の位置または姿勢を表わすオイラー角により軌道が表現された場合、当該制御対象の関節角度限界が厳密に考慮されないために探索時間が長くなる傾向がある。これは、軌道を記述する空間に、特異点、すなわち、ヤコビ行列が非正則となり、微分が定義されえない点(内挿できない)点が存在するためである。   However, when the trajectory is represented by the joint angle of the control target, an inefficient trajectory that causes the control target to move unnecessarily large may be generated. Further, when the trajectory is expressed by the Euler angle representing the position or orientation of the designated portion of the control target in the local coordinate system, the search time tends to be long because the joint angle limit of the control target is not strictly considered. This is because there is a singular point, that is, a point where the Jacobian matrix is irregular and a derivative cannot be defined (cannot be interpolated) in the space describing the trajectory.

そこで、本発明は、制御対象の効率的な動作を表現する軌道の確実な探索と、当該軌道の探索時間の短縮を図ることができるシステム等を提供することを解決課題とする。   Accordingly, an object of the present invention is to provide a system or the like that can reliably search for a trajectory expressing an efficient operation of a control target and reduce the search time for the trajectory.

前記課題を解決するための本発明の制御システムは、2または3つの直交軸のそれぞれ回りの回転角度によって屈曲状態が表現される関節機構を備えている制御対象の動作を制御するシステムであって、前記関節機構における各軸回りの回転角度が、クォータニオンによって表現されるモデル空間において、相互に離れて配置されている点列に基づき、空間補間用の基底関数を結合係数とする、前記点列の線形結合として表現される線分を生成する補間処理を実行するとともに、前記補間処理により生成された一の線分の基礎である前記点列に点を加えて新たな点列を定義した上で、前記新たな点列を基礎として前記補間処理を実行することにより、当該一の線分が延長線分によって延長された新たな線分を生成する延長処理を実行するように構成されている第1演算処理要素と、前記第1演算処理要素により延長処理が実行されることにより最近に延長された前記一の線分の基礎である前記新たな点列と、前記補間処理により生成された他の線分の基礎である他の点列とを基礎として前記補間処理を実行することにより、前記一の線分および前記他の線分が接続線分によって接続された形の線分を、前記関節機構における各軸回りの回転角度を表わすクォータニオンの目標軌道またはその候補として生成する接続処理を実行するように構成されている第2演算処理要素とを備え、前記第1演算処理要素および前記第2演算処理要素のそれぞれが、前記関節機構の屈曲状態が2つの直交軸のそれぞれ回りの回転角度によって表現される場合、実数成分が0である第1種のクォータニオンを表わす点列に基づいて前記補間処理を実行する一方、前記関節機構の屈曲状態が3つの直交軸のそれぞれ回りの回転角度によって表現される場合、実数成分が0に拘束されない第2種のクォータニオンを表わす点列に基づいて前記補間処理を実行するように構成されていることを特徴とする。 The control system of the present invention for solving the above-mentioned problems is a system for controlling the operation of a controlled object having a joint mechanism in which a bent state is expressed by a rotation angle about each of two or three orthogonal axes. In the model space expressed by quaternions, the rotation angle around each axis in the joint mechanism is based on the point sequences that are arranged away from each other, and the point sequence having a spatial interpolation basis function as a coupling coefficient An interpolation process for generating a line segment expressed as a linear combination of the above is executed, and a new point sequence is defined by adding a point to the point sequence that is the basis of the one line segment generated by the interpolation process. Then, by executing the interpolation process based on the new point sequence, the extension process for generating a new line segment in which the one line segment is extended by the extension line segment is executed. A first arithmetic processing element that is configured, the new point sequence that is the basis of the one line segment that has recently been extended by executing an extension process by the first arithmetic processing element, and the interpolation process The one line segment and the other line segment are connected by a connecting line segment by executing the interpolation process based on another point sequence that is the basis of another line segment generated by A second arithmetic processing element configured to execute a connection process for generating a line segment as a quaternion target trajectory that represents a rotation angle around each axis in the joint mechanism or a candidate thereof; When each of the processing element and the second arithmetic processing element is expressed by a rotation angle about each of two orthogonal axes when the bending state of the joint mechanism is expressed, the first type of quaternary whose real component is 0 While performing the interpolation processing on the basis of the sequence of points representing the emission, if the flexion of the joint mechanism is represented by each rotation of the rotation angle of the three orthogonal axes, a second kind real component is not constrained to zero characterized in that it is configured to perform the interpolation processing based on the sequence of points representing the quaternion.

本発明の制御システムによれば、空間補間用の基底関数を結合係数とする、モデル空間に配置された点列の線形結合により表現される線分を生成する補間処理が実行される。「線分」は直線および曲線のいずれであってもよい。その結果、関節機構における各軸回りの回転角度を表わすクォータニオンの目標軌道またはその候補が生成される。クォータニオンにより表現されるモデル空間には特異点が無いため軌道の探索時間の短縮が図られる。また、クォータニオンにより記述されるモデル空間の補間は球面線形補間となるため、冗長性が排除された効率的な軌道が計算されうる。よって、制御対象の効率的な動作を表現する軌道の確実な探索と、当該軌道の探索時間の短縮が図られる。   According to the control system of the present invention, an interpolation process for generating a line segment expressed by a linear combination of point sequences arranged in a model space, using a spatial interpolation basis function as a coupling coefficient is executed. The “line segment” may be either a straight line or a curved line. As a result, a quaternion target trajectory representing the rotation angle around each axis in the joint mechanism or a candidate thereof is generated. Since there is no singular point in the model space expressed by quaternions, trajectory search time can be shortened. Further, since the model space interpolation described by the quaternion is a spherical linear interpolation, an efficient trajectory from which redundancy is eliminated can be calculated. Therefore, it is possible to reliably search for a trajectory that represents an efficient operation of the control target and to shorten the trajectory search time.

前記第1演算処理要素が、前記モデル空間において、前記延長線分が実空間における物体を表わす障害物領域から外れていることを含む指定条件を満たしているか否かを判定する第1判定処理を実行するように構成され、前記第1判定処理の結果が否定的であることを要件として、前記一の線分を棄却した上で前記延長処理を実行するように構成されていてもよい。   A first determination process for determining whether or not the first arithmetic processing element satisfies a specified condition in the model space, the extended line segment being out of an obstacle area representing an object in real space; It is comprised so that it may perform, and it may be comprised so that the said extension process may be performed after rejecting said one line segment on the condition that the result of the said 1st determination process is negative.

前記第2演算処理要素が、前記モデル空間において、前記接続線分が実空間における物体を表わす障害物領域から外れていることを含む指定条件を満たしているか否かを判定する第2判定処理を実行するように構成され、前記第2判定処理の結果が否定的であることを要件として、前記第1演算処理要素が、前記新たな点列を再定義した上で前記延長処理を実行するように構成されていてもよい。   A second determination process in which the second calculation processing element determines whether or not the connection line segment satisfies a specified condition including being out of an obstacle area representing an object in the real space in the model space; The first arithmetic processing element is configured to execute the extension process after redefining the new point sequence, on condition that the result of the second determination process is negative. It may be configured.

当該構成の制御システムによれば、障害物との接触を回避しながらも、制御対象の効率的な動作を表現する軌道の確実な探索と、当該軌道の探索時間の短縮が図られる。   According to the control system configured as described above, while avoiding contact with an obstacle, it is possible to reliably search for a trajectory that represents an efficient operation of the control target and to shorten the trajectory search time.

前記課題を解決するための本発明の制御プログラムは、制御対象に搭載されているコンピュータを前記制御システムとして機能させることを特徴とする。   A control program according to the present invention for solving the above-described problems causes a computer mounted on a control target to function as the control system.

前記課題を解決するための本発明のロボットは、基体と、前記基体から延設されている肢体とを備え、前記肢体を動かすことによりタスクを実行するように構成されている前記制御対象としてのロボットであって、前記制御システムを備えていることを特徴とする。   A robot according to the present invention for solving the above-described problems includes a base body and a limb extending from the base body, and is configured to perform a task by moving the limb body as the control target. A robot comprising the control system.

本発明のロボットによれば、その効率的な動作を表現する目標軌道にしたがって動作が制御されうる。   According to the robot of the present invention, the motion can be controlled according to the target trajectory expressing the efficient motion.

本発明の一実施形態としてのロボットの構成説明図。BRIEF DESCRIPTION OF THE DRAWINGS The structure explanatory drawing of the robot as one Embodiment of this invention. ロボットの制御システムの構成説明図。FIG. 2 is a configuration explanatory diagram of a robot control system. 制御システムの機能説明図。Functional explanatory drawing of a control system. モデル空間における目標軌道の生成方法に関する説明図。Explanatory drawing regarding the production | generation method of the target trajectory in model space. モデル空間における目標軌道の実施例に関する説明図。Explanatory drawing regarding the Example of the target track | orbit in model space. 目標軌道にしたがったロボットの動作態様に関する説明図。Explanatory drawing regarding the operation | movement aspect of the robot according to a target track | orbit. 目標軌道にしたがったロボットの動作態様に関する説明図。Explanatory drawing regarding the operation | movement aspect of the robot according to a target track | orbit. ロボットの動作に関する説明図。Explanatory drawing regarding operation | movement of a robot.

本発明の制御システムおよびその制御対象の実施形態について図面を用いて説明する。   An embodiment of a control system of the present invention and its control object will be described with reference to the drawings.

(ロボットの構成)
まず、本発明の制御対象の一実施形態としてのロボットの構成について説明する。
(Robot configuration)
First, a configuration of a robot as an embodiment of a control target of the present invention will be described.

図1に示されているロボットRは脚式移動ロボットであり、人間と同様に、基体B0と、基体B0の上方に配置された頭部B1と、基体B0の上部に上部両側から延設された左右の腕体B2と、左右の腕体B2のそれぞれの先端に設けられているハンドHと、基体B0の下部から下方に延設された左右の脚体B4とを備えている。   The robot R shown in FIG. 1 is a legged mobile robot. Like a human, the robot R extends from both sides of the base B0, the head B1 disposed above the base B0, and the top of the base B0. The left and right arm bodies B2, the hand H provided at the tip of each of the left and right arm bodies B2, and the left and right leg bodies B4 extending downward from the lower portion of the base body B0 are provided.

基体B0はヨー軸回りに相対的に回動しうるように上下に連結された上部および下部により構成されている。頭部B1は基体B0に対してヨー軸回りに回動する等、動くことができる。   The base B0 is composed of an upper part and a lower part that are connected vertically so as to be relatively rotatable about the yaw axis. The head B1 can move, such as rotating around the yaw axis with respect to the base B0.

腕体B2は第1腕体リンクB22と、第2腕体リンクB24とを備えている。基体B0と第1腕体リンクB21とは肩関節機構(第1腕関節機構)B21を介して連結され、第1腕体リンクB22と第2腕体リンクB24とは肘関節機構(第2腕関節機構)B23を介して連結され、第2腕体リンクB24とハンドHとは手首関節機構(第3腕関節機構)B25を介して連結されている。肩関節機構B21はロール、ピッチおよびヨー軸回りの回動自由度を有し、肘関節機構B23はロールおよびピッチ軸回りの回動自由度を有し、手首関節機構B25はロール、ピッチ、ヨー軸回りの回動自由度を有している。   The arm body B2 includes a first arm body link B22 and a second arm body link B24. The base body B0 and the first arm body link B21 are connected via a shoulder joint mechanism (first arm joint mechanism) B21, and the first arm body link B22 and the second arm body link B24 are connected to an elbow joint mechanism (second arm). The second arm body link B24 and the hand H are connected via a wrist joint mechanism (third arm joint mechanism) B25. The shoulder joint mechanism B21 has a degree of freedom of rotation around the roll, pitch and yaw axes, the elbow joint mechanism B23 has a degree of freedom of rotation around the roll and pitch axes, and the wrist joint mechanism B25 has a degree of freedom of rotation around the roll, pitch and yaw axes. It has a degree of freedom of rotation around the axis.

脚体B4は第1脚体リンクB42と、第2脚体リンクB44と、足部B5とを備えている。基体B0と第1脚体リンクB42とは股関節機構(第1脚関節機構)B41を介して連結され、第1脚体リンクB42と第2脚体リンクB44とは膝関節機構(第2脚関節機構)B43を介して連結され、第2脚体リンクB44と足部B5とは足関節機構(第3脚関節機構)B45を介して連結されている。   The leg B4 includes a first leg link B42, a second leg link B44, and a foot B5. The base B0 and the first leg link B42 are connected via a hip joint mechanism (first leg joint mechanism) B41, and the first leg link B42 and the second leg link B44 are connected to a knee joint mechanism (second leg joint). The mechanism) is connected via B43, and the second leg link B44 and the foot B5 are connected via an ankle joint mechanism (third leg joint mechanism) B45.

股関節機構B41はロール、ピッチおよびロール軸回りの回動自由度を有し、膝関節機構B43はピッチ軸回りの回動自由度を有し、足関節機構B45はロールおよびピッチ軸回りの回動自由度を有している。股関節機構B41、膝関節機構B43および足関節機構B45は「脚関節機構群」を構成する。なお、脚関節機構群に含まれる各関節機構の並進および回転自由度は適宜変更されてもよい。また、股関節機構B41、膝関節機構B43および足関節機構B45のうち任意の1つの関節機構が省略された上で、残りの2つの関節機構の組み合わせにより脚関節機構群が構成されていてもよい。さらに、脚体B4が膝関節とは別の第2脚関節機構を有する場合、当該第2脚関節機構が含まれるように脚関節機構群が構成されてもよい。足部B5の底には着床時の衝撃緩和のため、特開2001−129774号公報に開示されているような弾性素材B52が設けられている。   The hip joint mechanism B41 has a degree of freedom of rotation about the roll, the pitch, and the roll axis, the knee joint mechanism B43 has a degree of freedom of rotation about the pitch axis, and the ankle joint mechanism B45 rotates about the roll and the pitch axis. Has a degree of freedom. The hip joint mechanism B41, the knee joint mechanism B43, and the ankle joint mechanism B45 constitute a “leg joint mechanism group”. The translational and rotational degrees of freedom of each joint mechanism included in the leg joint mechanism group may be changed as appropriate. In addition, an arbitrary one of the hip joint mechanism B41, the knee joint mechanism B43, and the ankle joint mechanism B45 may be omitted, and the leg joint mechanism group may be configured by a combination of the remaining two joint mechanisms. . Further, when the leg body B4 has a second leg joint mechanism different from the knee joint, the leg joint mechanism group may be configured to include the second leg joint mechanism. An elastic material B52 as disclosed in Japanese Patent Application Laid-Open No. 2001-129774 is provided on the bottom of the foot B5 in order to alleviate the impact when landing.

ロボットRには、ロボットRの世界座標系における位置および姿勢などの内部状態を測定するための複数の内部状態センサS1が搭載されている。ロボットRの各関節機構の屈曲角度(関節角度)に応じた信号を出力するエンコーダ(図示略)、基体B0の姿勢(方位角および仰角により特定される。)に応じた信号を出力する傾斜センサ、および、足部B5および着床および離床の別を判定するための圧力センサなどが内部状態センサS1に該当する。ロボットRの周囲の様子を撮像し、当該撮像座標に基づいて世界座標系に固定されている標識の位置を認識することにより、世界座標系におけるロボットRの位置を認識するための撮像装置が内部状態センサS1に該当する。 The robot R is equipped with a plurality of internal state sensors S 1 for measuring internal states such as position and posture of the robot R in the world coordinate system. An encoder (not shown) that outputs a signal corresponding to the bending angle (joint angle) of each joint mechanism of the robot R, and an inclination sensor that outputs a signal corresponding to the posture (identified by the azimuth angle and elevation angle) of the base body B0. , and, like a pressure sensor for determining the different foot B5 and implantation and lifting corresponds to the internal state sensor S 1. An imaging apparatus for recognizing the position of the robot R in the world coordinate system by capturing an image of the surroundings of the robot R and recognizing the position of the marker fixed to the world coordinate system based on the imaging coordinates. corresponding to the state sensor S 1.

たとえば、頭部B1に搭載され、ロボットRの前方を撮像範囲とするCCDカメラ、赤外線カメラ等、種々の周波数帯域における光を感知しうる左右一対の頭カメラC1が撮像装置として採用されうる。また、基体B0の前側下部に搭載され、ロボットRの前方下方に向けて発せられた近赤外レーザー光の物体による反射光を検知することによりこの物体の位置や方位等を測定するための腰カメラ(アクティブセンサ)C2が撮像装置として採用されうる。   For example, a pair of left and right head cameras C1 mounted on the head B1 and capable of sensing light in various frequency bands, such as a CCD camera and an infrared camera having an imaging range in front of the robot R, can be employed as the imaging device. Further, a waist mounted on the lower front side of the base B0 and used to measure the position and orientation of the object by detecting the reflected light of the near-infrared laser light emitted toward the front lower side of the robot R. A camera (active sensor) C2 may be employed as the imaging device.

ロボットRには、その周辺における物体の位置などの外部状態を測定するための外部状態センサS2が搭載されている。前記のような撮像装置が外部状態センサS2に該当する。 The robot R is equipped with an external state sensor S 2 for measuring an external state such as the position of an object around the robot R. It said such an imaging device corresponds to an external state sensor S 2.

ロボットRは制御システム1の一部を構成するコンピュータと、前記の複数の関節機構のそれぞれを動かすための複数のアクチュエータ2とを備えている。ロボットRの内部状態および外部状態に応じて制御システム1から出力される制御指令にしたがってアクチュエータ2のそれぞれの動作が制御されることにより、ロボットRがさまざまな態様で適応的に行動することができる。   The robot R includes a computer constituting a part of the control system 1 and a plurality of actuators 2 for moving each of the plurality of joint mechanisms. Each operation of the actuator 2 is controlled according to a control command output from the control system 1 according to the internal state and the external state of the robot R, so that the robot R can behave adaptively in various modes. .

なお、ロボットR(図1参照)のほか、車両など、部分的または全体的に目標軌道にしたがって変位するように動作が制御されるあらゆる装置が制御対象とされてもよい。
(制御システムの構成)
図2に示されている制御システム1は、ロボットRに搭載されているコンピュータにより構成されている。制御システム1は、後述する演算処理を実行するように構成されている第1演算処理要素11および第2演算処理要素12を備えている。
In addition to the robot R (see FIG. 1), any device, such as a vehicle, whose operation is controlled so as to be partially or wholly displaced according to the target trajectory may be controlled.
(Control system configuration)
The control system 1 shown in FIG. 2 is configured by a computer mounted on the robot R. The control system 1 includes a first arithmetic processing element 11 and a second arithmetic processing element 12 that are configured to execute arithmetic processing described later.

第1演算処理要素11および第2演算処理要素12のそれぞれは、ハードウェア資源としてのプロセッサおよびメモリにより構成されている。第1演算処理要素11および第2演算処理要素12は、共通のハードウェア資源により構成されていてもよく、少なくとも部分的に異なるハードウェア資源により構成されていてもよい。   Each of the first arithmetic processing element 11 and the second arithmetic processing element 12 includes a processor and a memory as hardware resources. The first arithmetic processing element 11 and the second arithmetic processing element 12 may be configured by a common hardware resource, or may be configured at least partially by different hardware resources.

演算処理要素が演算処理を実行するように構成されているとは、当該演算処理要素を構成するプロセッサがメモリから必要なソフトウェアを読み取り、当該ソフトウェアを実行することにより演算処理を実行するようにプログラムされていることを意味する。   An arithmetic processing element is configured to execute arithmetic processing means that a processor that constitutes the arithmetic processing element reads necessary software from a memory and executes the software to execute the arithmetic processing. Means that

(ロボットの機能)
前記構成のロボットRおよび制御システム1の機能について説明する。ここで、たとえば、図8に示されているようにロボットRが腕体B2を動かすことにより、ハンドHおよびコップが、テーブルに置かれている他のコップと接触しないようにハンドHで把持しているコップを動かし、このテーブルに置くというタスクを実行する際の動作が制御される場合について説明する。
(Robot function)
The functions of the robot R and the control system 1 configured as described above will be described. Here, for example, as shown in FIG. 8, when the robot R moves the arm body B <b> 2, the hand H and the cup are gripped by the hand H so that they do not come into contact with other cups placed on the table. A case will be described in which the operation at the time of executing the task of moving a cup and placing it on this table is controlled.

第1演算処理要素11により、クォータニオンにより定義されるモデル空間における始点位置および終点位置が認識される(図3/STEP02)。   The first arithmetic processing element 11 recognizes the start point position and the end point position in the model space defined by the quaternion (FIG. 3 / STEP02).

始点位置は、たとえば、ロボットRが片手Hで把持しているコップを動かし始める時点における肩関節機構B21および肘関節機構B23のそれぞれの屈曲状態を表わすクォータニオンの位置を表わしている。終点位置は、たとえば、ロボットRが片手Hで把持しているコップをテーブルに置いた時点における肩関節機構B21および肘関節機構B23のそれぞれの屈曲状態を表わすクォータニオンの位置を表わしている。関節機構ごとに始点位置および終点位置は原則的に異なり、別個のクォータニオンの軌道が生成される(図5(a)(b)参照)。   The starting point position represents, for example, the position of the quaternion representing the respective bending states of the shoulder joint mechanism B21 and the elbow joint mechanism B23 when the robot R starts to move the cup held by the one hand H. The end point position represents, for example, the position of the quaternion representing the respective bending states of the shoulder joint mechanism B21 and the elbow joint mechanism B23 when the cup held by the robot R with one hand H is placed on the table. The starting point position and the ending point position differ in principle for each joint mechanism, and separate quaternion trajectories are generated (see FIGS. 5A and 5B).

肘関節機構B23は前記のようにピッチおよびロールの2つの回転自由度を有しており、その屈曲状態は2つの直交軸回りの回転角度により表わされる。このため、肘関節機構B23の屈曲状態は、実数成分が0である「第1種のクォータニオン」により表わされる。当該2つの直交軸回りの回転によって、肘関節機構B23に固定された座標系から見たハンドHの方向が、ノルムが1になるように正規化された3次元ベクトルv=(vx,vy,vz)として表現される場合、第1種のクォータニオン実数成分vwおよび各虚数成分vμ(μ=x,y,z)は式(50)により表現される。 As described above, the elbow joint mechanism B23 has two degrees of freedom of rotation of pitch and roll, and the bent state is represented by rotation angles about two orthogonal axes. For this reason, the bending state of the elbow joint mechanism B23 is represented by “first type quaternion” having a real component of zero. A three-dimensional vector v = (v x , v) in which the direction of the hand H viewed from the coordinate system fixed to the elbow joint mechanism B23 is normalized so that the norm becomes 1 by the rotation around the two orthogonal axes. When expressed as y , v z ), the first type quaternion real component v w and each imaginary component v μ (μ = x, y, z) are expressed by the equation (50).

vw=0, vμ=v ..(50)。 v w = 0, v μ = v .. (50).

第1種のクォータニオンq11およびq12の球面線型補間の結果qは、補間比率tを用いて式(100)により表現される。 The result q of the spherical linear interpolation of the first type quaternions q 11 and q 12 is expressed by equation (100) using the interpolation ratio t.

q(t)=R-1q11R(ここでR=exp(ωt/2), ω≡ln(q11 -1q12)である。) ..(100)。 q (t) = R −1 q 11 R (where R = exp (ωt / 2), ω≡ln (q 11 −1 q 12 )) .. (100).

肩関節機構B21は前記のようにピッチおよびロールの3つの回転自由度を有しており、その屈曲状態は3つの直交軸回りの回転角度により表わされる。このため、肩関節機構B21の屈曲状態は、実数成分が0に拘束されない「第2種のクォータニオン」により表わされる。当該3つの直交軸回りの回転が、1つの軸r=(rx, ry, rz)回りの角度θの回転として表現される場合、第2種のクォータニオンの実数成分Uwおよび各虚数成分Uμ(μ=x,y,z)は式(200)により表わされる。 As described above, the shoulder joint mechanism B21 has three degrees of freedom of rotation of pitch and roll, and the bent state is represented by the rotation angles around three orthogonal axes. For this reason, the bending state of the shoulder joint mechanism B21 is represented by “second type quaternion” in which the real component is not restricted to zero. When the rotations about the three orthogonal axes are expressed as rotations of an angle θ about one axis r = (r x , r y , r z ), the real component U w of the second quaternion and each imaginary number The component U μ (μ = x, y, z) is represented by the formula (200).

Uw=cos(θ/2), Uμ=rμsin(θ/2) ..(200)。 U w = cos (θ / 2), U μ = r μ sin (θ / 2) .. (200).

始点位置および終点位置のそれぞれは、内部状態センサS1および外部状態センサS2のそれぞれの出力信号に基づき、制御システム1によって計算されてもよく、外部端末装置から無線通信によって制御システム1に対して入力されてもよい。 Each of the start point position and the end point position may be calculated by the control system 1 based on the output signals of the internal state sensor S 1 and the external state sensor S 2 , and is transmitted to the control system 1 by wireless communication from the external terminal device. May be entered.

また、始点側ツリーおよび終点側ツリーのうち一方が選択される(図3/STEP04)。この際、後述する軌道の延長軌道生成の失敗に伴う選択ツリーの変更回数を示す指数iが「0」に初期設定される。   Further, one of the start point side tree and the end point side tree is selected (FIG. 3 / STEP 04). At this time, an index i indicating the number of times the selected tree is changed due to a failure in the generation of the extended trajectory of the trajectory described later is initially set to “0”.

その上で、RRTアルゴリズムにしたがって任意の位置に点(ノード)qが生成される(図3/STEP06)。始点側ツリーは初期段階では始点そのものであり、その後、RRTアルゴリズムにしたがって始点を基準として拡がるように逐次生成される点qが逐次連結されることによって徐々に成長する。同様に、終点側ツリーは初期段階では終点そのものであり、その後、RRTアルゴリズムにしたがって終点を基準として拡がるように逐次生成される点qが逐次連結されることによって徐々に成長する。選択ツリーを対象として「延長処理」が実行される。   Then, a point (node) q is generated at an arbitrary position according to the RRT algorithm (FIG. 3 / STEP06). The starting point side tree is the starting point itself in the initial stage, and then gradually grows by sequentially connecting points q that are sequentially generated so as to expand based on the starting point according to the RRT algorithm. Similarly, the end point side tree is the end point itself in the initial stage, and then gradually grows by sequentially connecting the points q sequentially generated so as to expand based on the end point according to the RRT algorithm. An “extension process” is executed on the selected tree.

「延長処理」に際して、まず、選択ツリーの中から点qに最も近い点qnearが選択される(図3/STEP08)。 In the “extension process”, first, the point q near closest to the point q is selected from the selection tree (FIG. 3 / STEP08).

点qが最近点qnearから閾値εを超えて離れている場合、線型補間により当該点qが最近点qnearから閾値εの距離まで近づけられ、この近づけられた点qが今回制御点qnewとして定義される(図3/STEP10)。 When the point q is far from the nearest point q near by exceeding the threshold ε, the point q is brought closer to the distance from the nearest point q near to the threshold ε by linear interpolation, and the approached point q becomes the current control point q new. (FIG. 3 / STEP 10).

そして、選択ツリーの根元から最近点qnearに至る点列であって、B−スプライン曲線の基礎となっている点列に対して、今回制御点qnewが末尾に追加された新たな点列を基礎としてB−スプライン曲線による補間処理(球面線形補間処理)が実行される。選択ツリーの根元から伸びる当該B−スプライン曲線のうち、今回制御点qnewが旧点列に追加されたことによって延長された部分が「延長軌道」として計算される(図3/STEP12)。 A new point sequence in which the current control point q new is added to the end of the point sequence from the root of the selection tree to the nearest point q near and which is the basis of the B-spline curve. As a basis, interpolation processing (spherical linear interpolation processing) using a B-spline curve is executed. Of the B-spline curve extending from the root of the selection tree, a portion extended by adding the current control point q new to the old point sequence is calculated as an “extension trajectory” (FIG. 3 / STEP 12).

(第1種のクォータニオンの補間処理)
回転自由度「2」を有する肘関節機構B23の屈曲状態を表わす第1種のクォータニオン(実数成分が0の単位クォータニオン)のB−スプライン曲線q(t)は与えられた制御点群{qi}に基づき、式(12)にしたがって計算される。
(Interpolation processing of the first type of quaternion)
A B-spline curve q (t) of the first type quaternion (unit quaternion with a real component of 0) representing the bending state of the elbow joint mechanism B23 having a rotational degree of freedom “2” is represented by a given control point group {q i } Is calculated according to equation (12).

q(t)=R-1q0R,
R=Πi=1~nqi(t),
qi(t)≡exq{ωiB~i,k(t)/2} (i=1,2,..,n), ωi≡log((qi-1)-1qi) ..(12)。
q (t) = R -1 q 0 R,
R = Π i = 1 ~ n q i (t),
q i (t) ≡exq {ω i B ~ i, k (t) / 2} (i = 1,2, .., n), ω i ≡log ((q i-1 ) -1 q i ) .. (12).

ここで「B~i,k(t)」は累積B−スプライン基底関数であり、正規化されたB−スプライン基底関数Bj,k(t)に基づき、式(01)にしたがって表現される。 Here, “ B˜i, k (t)” is a cumulative B-spline basis function, and is expressed according to the expression (01) based on the normalized B-spline basis function B j, k (t). .

B~i,k(t)≡Σj=1~nBj,k(t) ..(01)。 B ~ i, k (t) ≡Σ j = 1 ~ n B j, k (t) .. (01).

正規化されたB−スプライン関数Bj,k(t)は、次のCox-deBoorの帰納式(02)を満たすように定義されている。 The normalized B-spline function B j, k (t) is defined so as to satisfy the following Cox-deBoor induction (02).

Bi,1(t)=1(ti<t<ti+1の場合),0(その他の場合),
Bi,k(t)={(t−ti)/(ti+k-1−ti)}Bi,k-1(t)+{(ti+k−t)/(ti+k−ti+1)}Bi+1,k-1(t) ..(02)。
B i, 1 (t) = 1 (if t i <t <t i + 1 ), 0 (other cases),
B i, k (t) = {(t−t i ) / (t i + k−1 −t i )} B i, k−1 (t) + {(t i + k −t) / (t i + k −t i + 1 )} B i + 1, k−1 (t) .. (02).

第1種のクォータニオンのB−スプライン曲線の微分は式(14)にしたがって表現される。   The differentiation of the B-spline curve of the first type quaternion is expressed according to equation (14).

dq(t)/dt=(1/2)Σi=1~n(Piq0R+Rq0Qi)
Qi≡q1(t)q2(t)…qi(t)ωi{dB~i,k (t)/dt}qi+1(t)…qn-1(t)qn(t) ..(14)。
dq (t) / dt = (1/2) Σ i = 1 ~ n (P i q 0 R + Rq 0 Q i )
Q i ≡q 1 (t) q 2 (t)… q i (t) ω i {dB ~ i, k (t) / dt} q i + 1 (t)… q n-1 (t) q n (t) .. (14).

第1種のクォータニオンにより、肘関節機構B23のひねり(twist)または屈曲状態の時系列的な変化態様は式(16)により表現される。   By the first type quaternion, the twist or bending state of the elbow joint mechanism B23 is expressed by Expression (16).

q(t+Δt)=q(t)exq(ω(t)Δt)
ω(t)≡limΔt→0log(q-1(t)q(t+Δt))/Δt
=limΔt→0log(q-1(t){q(t)+(dq(t)/dt)Δt})/Δt
=limΔt→0log(1+q-1(t)(dq(t)/dt)Δt})/Δt
=q-1(t)(dq(t)/dt)
=(1/2)Σi=1~n(R-1q0 -1RQi +q0R+R-1Qi) ..(16)。
q (t + Δt) = q (t) exq (ω (t) Δt)
ω (t) ≡lim Δt → 0 log (q -1 (t) q (t + Δt)) / Δt
= Lim Δt → 0 log (q -1 (t) {q (t) + (dq (t) / dt) Δt}) / Δt
= Lim Δt → 0 log (1 + q -1 (t) (dq (t) / dt) Δt}) / Δt
= Q -1 (t) (dq (t) / dt)
= (1/2) Σ i = 1 to n (R -1 q 0 -1 RQ i + q 0 R + R -1 Q i ) (16).

(第2種のクォータニオンの補間処理)
回転自由度「3」を有する肩関節機構B21の屈曲状態を表わす第2種のクォータニオン(実数成分が0に拘束されない単位クォータニオン)のB−スプライン曲線q(t)は与えられた制御点群{qi}に基づき、式(22)にしたがって計算される。
(Type 2 quaternion interpolation)
The B-spline curve q (t) of the second kind of quaternion (unit quaternion whose real number component is not constrained to 0) representing the bending state of the shoulder joint mechanism B21 having a rotational degree of freedom “3” is given control points { q i } is calculated according to equation (22).

q(t)=Πi=0~nqi(t),
q0(t)≡exq{ω0B~0,k(t)}, ω0≡log(q0),
qi(t)≡exq{ωiB~i,k(t)}, ωi≡log((qi-1)-1qi) (i=1,2,..,n) ..(22)。
q (t) = Π i = 0 ~ n q i (t),
q 0 (t) ≡exq {ω 0 B ~ 0, k (t)}, ω 0 ≡log (q 0 ),
q i (t) ≡exq {ω i B ~ i, k (t)}, ω i ≡log ((q i-1 ) -1 q i ) (i = 1,2, .., n) .. (twenty two).

第2種のクォータニオンのB−スプライン曲線の微分は式(24)にしたがって表現される。   The differentiation of the B-spline curve of the second type quaternion is expressed according to the equation (24).

dq(t)/dt=Σi=1~nq0(t)q1(t)…qi-1(t)qi(t){dB~i,k (t)/dt}qi+1(t)qi+2(t)…qn(t) ..(24)。 dq (t) / dt = Σ i = 1 ~ n q 0 (t) q 1 (t)… q i-1 (t) q i (t) {dB ~ i, k (t) / dt} q i +1 (t) q i + 2 (t)… q n (t) .. (24).

第1種のクォータニオンにより、肘関節機構B23のひねり(twist)または屈曲状態の時系列的な変化態様は式(26)により表現される。   By the first type quaternion, the twist or bending state of the elbow joint mechanism B23 is expressed by the equation (26).

q(t+Δt)=q(t)exq(ω(t)Δt)
ω(t)≡limΔt→0log(q-1(t)q(t+Δt))/Δt
=limΔt→0log(q-1(t){q(t)+{dq(t)/dt}Δt})/Δt
=limΔt→0log(1+q-1(t){dq(t)/dt}Δt})/Δt
=q-1(t){dq(t)/dt}
={Πi=1~nqi(t)}-1q0 B ~ 0,k(t)log(q0){dB~0,k(t)/dt}{Πi=1~nqi(t)}
+Σi=1~nqn -1(t)qn-1 -1(t)…qi+1 -1(t){dB~i,k (t)/dt}qi+1(t)…qn-1(t)qn(t) ..(26)。
q (t + Δt) = q (t) exq (ω (t) Δt)
ω (t) ≡lim Δt → 0 log (q -1 (t) q (t + Δt)) / Δt
= Lim Δt → 0 log (q -1 (t) {q (t) + {dq (t) / dt} Δt}) / Δt
= Lim Δt → 0 log (1 + q -1 (t) {dq (t) / dt} Δt}) / Δt
= Q -1 (t) {dq (t) / dt}
= {Π i = 1 ~ n q i (t)} -1 q 0 B ~ 0, k (t) log (q 0 ) {dB ~ 0, k (t) / dt} {Π i = 1 ~ n q i (t)}
+ Σ i = 1 ~ n q n -1 (t) q n-1 -1 (t) ... q i + 1 -1 (t) {dB ~ i, k (t) / dt} q i + 1 (t ) ... q n-1 (t) q n (t) .. (26).

前記補間処理により、たとえば、図4(a)に示されているように、選択ツリー(始点側ツリー)に応じて定められる前回軌道(細線参照)に続く延長軌道(太線参照)が定義される。   By the interpolation process, for example, as shown in FIG. 4A, an extended trajectory (refer to the thick line) following the previous trajectory (refer to the thin line) determined according to the selection tree (start point side tree) is defined. .

さらに、延長軌道が、テーブルおよびテーブルに載せられている他のコップなどの障害物を表わすクォータニオン空間における障害物領域から外れており、かつ、ロボットRにその関節角度の許容範囲を超えた行動を強いる軌道ではないことという指定条件を満たすか否かがが判定される(図3/STEP14)。当該障害物領域は、外部状態センサS2の出力信号に基づき、その位置、姿勢および形状が認識されうる。 Furthermore, the extended trajectory deviates from the obstacle area in the quaternion space representing the table and other obstacles such as a cup placed on the table, and the robot R performs an action exceeding the allowable range of the joint angle. It is determined whether or not the specified condition of not being a compelling trajectory is satisfied (FIG. 3 / STEP 14). The obstacle region based on the output signal of the external state sensor S 2, the position, orientation and shape can be recognized.

延長軌道が指定条件を満たしている判定された場合(図3/STEP14‥YES)、すなわち、延長処理が成功した場合、今回制御点qnewまたは当該制御点qnewまでの延長軌道が選択ツリーに追加される(図3/STEP15)。さらに、前回軌道および延長軌道が今回軌道として定義され、当該今回軌道は次回の延長処理に際して、前回軌道として取り扱われる。延長処理に続いて「接続処理」が実行される。 If it is determined that the extended trajectory satisfies the specified condition (FIG. 3 / STEP 14... YES), that is, if the extension process is successful, the current control point q new or the extended trajectory up to the control point q new is displayed in the selection tree. It is added (FIG. 3 / STEP 15). Further, the previous trajectory and the extended trajectory are defined as the current trajectory, and the current trajectory is handled as the previous trajectory in the next extension process. Following the extension process, a “connection process” is executed.

「接続処理」に際して、まず、選択ツリーが変更される(図3/STEP16)。これにより、始点側ツリーがそれまでの選択ツリーであった場合、終点側ツリーが新たな選択ツリーとして以降の処理が実行される。同様に、終点側ツリーがそれまでの選択ツリーであった場合、始点側ツリーが新たな選択ツリーとして、選択ツリーの中から、先に生成された今回制御点qnew(図3/STEP10参照)に最も近い点qnearが選択される(図3/STEP18)。 In the “connection process”, the selection tree is first changed (FIG. 3 / STEP 16). Thereby, when the starting point side tree is the selection tree so far, the subsequent processing is executed with the end point side tree as the new selection tree. Similarly, if the end-side tree is the selection tree so far, the current control point q new generated first from the selection tree is selected as the new-point selection tree (see FIG. 3 / STEP 10). The point q near closest to is selected (FIG. 3 / STEP 18).

そして、始点側ツリーと終点側ツリーのそれぞれの根元から最近点qnearに至る点列であって、これまでの始点側位置軌道および終点側位置軌道の基礎となっている点列に対して、今回制御点qnewが途中に追加された新たな点列を基礎としてB−スプライン曲線による補間処理が実行される。始点および終点を接続する当該B−スプライン曲線のうち、今回制御点qnewの旧点列への追加によって生成された部分が「接続軌道」として生成される(図3/STEP20)。 A point sequence from the root of each of the start point side tree and the end point side tree to the nearest point q near, and the point sequence that is the basis of the previous start point side position trajectory and the end point side position trajectory, Interpolation processing using a B-spline curve is executed based on a new point sequence in which the control point q new is added midway. Of the B-spline curve connecting the start point and the end point, a part generated by adding the current control point q new to the old point sequence is generated as a “connection trajectory” (FIG. 3 / STEP 20).

接続軌道は、今回制御点qnewのノード番号を「i」と定めた場合、曲線上のパラメータtの区間が[ti+1,ti+N+1]と設定されることにより求められる。これにより、図4(b)に示されているように、始点から伸びる始点側軌道(一点鎖線参照)および終点から伸びる終点側軌道(二点鎖線参照)を接続する接続軌道(太線参照)が生成される。 The connection trajectory is obtained by setting the section of the parameter t on the curve as [t i + 1 , t i + N + 1 ] when the node number of the control point q new is set to “i” this time. . As a result, as shown in FIG. 4 (b), there is a connection track (see the bold line) that connects the starting point side track (see the alternate long and short dash line) extending from the start point and the end point side track (see the alternate long and two short dashes line) extending from the end point. Generated.

さらに、接続軌道が指定条件を満たすか否かが判定される(図3/STEP22)。   Further, it is determined whether or not the connection track satisfies the specified condition (FIG. 3 / STEP 22).

接続軌道が指定条件を満たしていると判定された場合(図3/STEP22‥YES)、すなわち、接続処理が成功した場合、接続軌道ならびに当該接続軌道により接続された始点側軌道および終点側軌道が、始点から終点まで至るクォータニオンの目標軌道として生成される(図3/STEP24)。   If it is determined that the connection track satisfies the specified condition (FIG. 3 / STEP22... YES), that is, if the connection process is successful, the connection track and the start-point side track and end-point track connected by the connection track are The quaternion target trajectory from the start point to the end point is generated (FIG. 3 / STEP 24).

これにより、図5(a)に示されているように肘関節機構B23の屈曲状態を表わす第1種のクォータニオンの目標軌道が生成される。同様に、図5(b)に示されているように肩関節機構B21の屈曲状態を表わす第2種のクォータニオンの目標軌道が生成される。   As a result, as shown in FIG. 5A, a first type quaternion target trajectory representing the bending state of the elbow joint mechanism B23 is generated. Similarly, as shown in FIG. 5B, a second type quaternion target trajectory representing the bending state of the shoulder joint mechanism B21 is generated.

そして、図8に示されているように、目標軌道にしたがってハンドHが矢印付き曲線で表わされているように実空間において変位するようにロボットRの動作が制御される。これにより、動作中に他の物体との接触を回避し、かつ、各関節角度が許容範囲から外れることを防止しながら、ハンドHで把持しているコップをテーブルに置くというタスクをロボットRに円滑に実行させることができる。   Then, as shown in FIG. 8, the operation of the robot R is controlled so that the hand H is displaced in the real space as represented by the curve with an arrow according to the target trajectory. As a result, the robot R can perform the task of placing the cup gripped by the hand H on the table while avoiding contact with other objects during operation and preventing the joint angles from deviating from the allowable range. It can be executed smoothly.

その一方、接続軌道が指定条件を満たしていないと判定された場合(図3/STEP22‥NO)、すなわち、接続処理が失敗した場合、延長処理が再び実行される(図3/STEP08〜STEP014参照)。   On the other hand, when it is determined that the connection path does not satisfy the specified condition (FIG. 3 / STEP22... NO), that is, when the connection process fails, the extension process is executed again (see FIG. 3 / STEP08 to STEP014). ).

また、延長軌道が指定条件を満たしていないと判定された場合(図3/STEP14‥NO)、すなわち、延長処理が失敗した場合、今回制御点qnewまたは当該制御点qnewまでの延長軌道は選択ツリーに追加されずに棄却される(図3/STEP25)。その上で、指数iが上限値K以下であるか否かが判定される(図3/STEP26)。 If it is determined that the extended trajectory does not satisfy the specified condition (FIG. 3 / STEP 14... NO), that is, if the extension process fails, the current control point q new or the extended trajectory to the control point q new is It is rejected without being added to the selection tree (FIG. 3 / STEP 25). Then, it is determined whether or not the index i is equal to or lower than the upper limit value K (FIG. 3 / STEP 26).

指数iが上限値K以下であると判定された場合(図3/STEP26‥YES)、選択ツリーが変更される(図3/STEP28)。この際、指数iが1だけ増加する。その上で、任意の点qの生成(図3/STEP06参照)以降の処理が当該変更後の選択ツリーを対象として実行される。   When it is determined that the index i is equal to or lower than the upper limit value K (FIG. 3 / STEP 26... YES), the selection tree is changed (FIG. 3 / STEP 28). At this time, the index i increases by 1. In addition, processing after generation of an arbitrary point q (see FIG. 3 / STEP 06) is executed on the selected tree after the change.

指数iが上限値Kを超えていると判定された場合(図3/STEP26‥NO)、軌道探索が失敗したと認識される(図3/STEP30)。これに応じて、制御システム1は、ロボットRの当該軌道にしたがった動作を停止させて物体の移動(外部状態センサS2を通じて認識される)などの状況変化を待つ、あるいは、脚体B4を動かしてロボットRをその場から移動させたり、その場で基体B0をひねったりすることによりタスク実行開始条件をロボットRの動作によって変化させる。その上で、制御システム1は前記のような軌道探索を再実行する。 When it is determined that the index i exceeds the upper limit K (FIG. 3 / STEP 26... NO), it is recognized that the trajectory search has failed (FIG. 3 / STEP 30). In response, the control system 1 waits for status changes such as moving the object (recognized through the external state sensor S 2) stops the operation in accordance with the trajectory of the robot R, or the leg B4 The task execution start condition is changed by the operation of the robot R by moving the robot R from the spot and twisting the base body B0 on the spot. Then, the control system 1 re-executes the trajectory search as described above.

(本発明の制御システムの作用効果)
前記機能を発揮する制御システム1によれば、空間補間用の基底関数を結合係数とする、モデル空間に配置された点列の線形結合により表現される線分を生成する補間処理が実行される(式(12)(22)、図4(a)(b)参照)。その結果、各関節機構の屈曲状態(各軸回りの回転角度により表現される。)を表わすクォータニオンの目標軌道またはその候補が生成される(図5(a)(b)参照)。クォータニオンにより表現されるモデル空間には特異点が無いため軌道の探索時間の短縮が図られる。また、クォータニオンにより記述されるモデル空間の補間は球面線形補間となるため、冗長性が排除された効率的な軌道が計算されうる。よって、制御対象であるロボットRの効率的な動作を表現する軌道の確実な探索と、当該軌道の探索時間の短縮が図られる。
(Operational effect of the control system of the present invention)
According to the control system 1 that exhibits the above function, an interpolation process for generating a line segment expressed by a linear combination of point sequences arranged in a model space, using a spatial interpolation basis function as a coupling coefficient is executed. (See formulas (12) and (22) and FIGS. 4 (a) and 4 (b)). As a result, a quaternion target trajectory representing the bending state of each joint mechanism (represented by the rotation angle around each axis) or a candidate thereof is generated (see FIGS. 5A and 5B). Since there is no singular point in the model space expressed by quaternions, trajectory search time can be shortened. Further, since the model space interpolation described by the quaternion is a spherical linear interpolation, an efficient trajectory from which redundancy is eliminated can be calculated. Therefore, it is possible to reliably search for a trajectory that expresses an efficient operation of the robot R that is a control target, and to shorten the trajectory search time.

図6(a)には、ロボットRの各関節機構の屈曲状態の変化態様が、クォータニオン、オイラー角および関節角度のそれぞれの軌道によって表現され、当該軌道にしたがって肩関節機構B21および肘関節機構B23のそれぞれの動作が制御された際のハンドHの3次元位置軌道が実線、一点鎖線および二点鎖線のそれぞれにより示されている。図6(b)には、図6(a)に示されているハンドHの3次元位置軌道が、3つの2次元平面に投影された結果としてのハンドHの2次元位置軌道が示されている。   In FIG. 6A, the change state of the bending state of each joint mechanism of the robot R is represented by the respective quaternions, Euler angles, and joint angles, and the shoulder joint mechanism B21 and the elbow joint mechanism B23 according to the respective paths. The three-dimensional position trajectory of the hand H when each of these movements is controlled is indicated by a solid line, a one-dot chain line, and a two-dot chain line, respectively. FIG. 6B shows the two-dimensional position trajectory of the hand H as a result of projecting the three-dimensional position trajectory of the hand H shown in FIG. 6A onto three two-dimensional planes. Yes.

図7(a)には、ロボットRの各関節機構の屈曲状態の変化態様が、クォータニオンの軌道によって表現され、当該軌道にしたがって肩関節機構B21および肘関節機構B23のそれぞれの動作が制御された際のハンドHの腕体B2の動作態様および3次元位置軌道(実線)が示されている。図7(b)には、ロボットRの各関節機構の屈曲状態の変化態様が、関節角度の軌道によって表現され、当該軌道にしたがって肩関節機構B21および肘関節機構B23のそれぞれの動作が制御された際のハンドHの腕体B2の動作態様および3次元位置軌道(一点鎖線)が示されている。   In FIG. 7A, the change state of the bending state of each joint mechanism of the robot R is expressed by a quaternion trajectory, and the respective operations of the shoulder joint mechanism B21 and the elbow joint mechanism B23 are controlled according to the trajectory. The movement mode of the arm body B2 of the hand H and the three-dimensional position trajectory (solid line) are shown. In FIG. 7B, the bending state of each joint mechanism of the robot R is expressed by a joint angle trajectory, and the respective operations of the shoulder joint mechanism B21 and the elbow joint mechanism B23 are controlled according to the trajectory. The movement mode of the arm body B2 of the hand H and the three-dimensional position trajectory (dashed line) are shown.

図6および図7から明らかなように、関節機構の屈曲常態の変化態様がクォータニオンの軌道によって表現された場合のハンドHの位置軌道(図6(a)(b)実線、図7(a)実線参照)は、関節機構の屈曲常態の変化態様がオイラー角または関節角度の軌道によって表現された場合のハンドHの位置軌道(図6(a)(b)一点鎖線または二点鎖線、図7(b)一点鎖線参照)と比較して著しく短い。すなわち、本発明の手法によれば、制御対象に関節機構を効率的に動かしてタスクを実行させることができることがわかる。   As apparent from FIGS. 6 and 7, the position trajectory of the hand H when the change state of the normal bending state of the joint mechanism is expressed by the quaternion trajectory (solid lines in FIGS. 6A and 6B, FIG. 7A). The solid line is a position trajectory of the hand H when the change state of the normal bending state of the joint mechanism is expressed by the Euler angle or the joint angle trajectory (FIGS. 6A and 6B). (B) is significantly shorter than that shown in FIG. That is, according to the method of the present invention, it can be seen that the task can be executed by efficiently moving the joint mechanism to the controlled object.

(本発明の他の実施形態)
第1判定処理および第2判定処理が省略され、接続処理が終了した段階で生成された軌道が指定条件を満たすか否かが判定され、当該判定結果が肯定的であったことを要件としてこの軌道がクォータニオンの目標軌道として設定されてもよい。
(Other embodiments of the present invention)
The first determination process and the second determination process are omitted, and it is determined whether or not the trajectory generated at the stage when the connection process is completed satisfies the specified condition, and the determination result is positive. The trajectory may be set as a quaternion target trajectory.

屈曲状態が第1種のクォータニオンによって表現される肘関節機構B23等の関節機構は、ロールおよびピッチ軸のそれぞれ回りの回動軸を有するように構成されていたが、2つの直交軸回りの回転角度により屈曲状態が表現される構成であれば、さまざまな構造が採用されてもよい。同様に、屈曲状態が第2種のクォータニオンによって表現される肩関節機構B21等の関節機構は、ロール、ピッチおよびヨー軸のそれぞれ回りの回動軸を有するように構成されていたが、3つの直交軸回りの回転角度により屈曲状態が表現される構成であれば、さまざまな構造が採用されてもよい。   The joint mechanism such as the elbow joint mechanism B23 in which the bent state is expressed by the first type quaternion is configured to have the rotation axes about the roll and the pitch axis, but the rotation about the two orthogonal axes. Various structures may be adopted as long as the bent state is expressed by the angle. Similarly, the joint mechanism such as the shoulder joint mechanism B21 in which the bending state is expressed by the second type quaternion is configured to have a rotation axis around each of the roll, pitch, and yaw axes. Various structures may be employed as long as the bent state is expressed by the rotation angle around the orthogonal axis.

B−スプライン曲線(式(12)参照)のほか、式(32)により定義されるHermite曲線または式(42)により定義されるBezier曲線が空間補間曲線として用いられることによって、延長処理および接続処理のそれぞれが実行されてもよい。   In addition to the B-spline curve (see Expression (12)), the Hermite curve defined by Expression (32) or the Bezier curve defined by Expression (42) is used as a spatial interpolation curve, thereby extending and connecting processes. Each of these may be performed.

P(t)=(2t3−3t2+1)Pstart+(t3−2t2+t)G1start+(−2t3+3t2)Pend+(t3−t2)G1end..(32) P (t) = (2t 3 −3t 2 +1) P start + (t 3 −2t 2 + t) G1 start + (− 2t 3 + 3t 2 ) P end + (t 3 −t 2 ) G1 end .. (32 )

ここで、PstartおよびPendは曲線の端点の位置ベクトルを表わしている。また、G1startおよびG1endは当該端点における曲線の接線ベクトル(1階微分)を表わしている。延長処理および接続処理に際して、制御点列Pi(i=1,2, ..m)の各区間をHermite曲線で補間することによってHermite曲線がRRT-Connectに適用される。この際、G1start、G1endは隣り合う区間で1階微分の連続性が保たれるように選択されなければならない。 Here, P start and P end represent the position vectors of the end points of the curve. G1 start and G1 end represent the tangent vector (first-order differentiation) of the curve at the end point. In the extension process and the connection process, the Hermite curve is applied to the RRT-Connect by interpolating each section of the control point sequence P i (i = 1, 2,... M) with the Hermite curve. At this time, G1 start and G1 end must be selected so that the continuity of the first-order differentiation is maintained in the adjacent section.

x(t)=Σi=0~mJn,i(t)Pi ..(42)。 x (t) = Σ i = 0 to m J n, i (t) P i .. (42).

ここで、Bezier基底関数(またはBernstein基底関数)Jn,i(t)は式(44)により定義される。 Here, the Bezier basis function (or Bernstein basis function) J n, i (t) is defined by equation (44).

Jn,i(t)=n!/{i!(n−i)!}ti(1−t)n-i ..(44)。 J n, i (t) = n! / {I! (N−i)!} T i (1−t) ni .. (44).

延長処理および接続処理において用いられる空間補間は、原則的に、空間補間用の基底関数を結合係合とする、モデル空間に配置された点列の線形結合により表現される線分を形成する空間補間であること(第1条件)、および、既存の制御点列に新しい制御点が付加されたとき、既存の制御点によって作られる部分曲線が変化しないこと(第2条件)という2つの条件を満たしている必要がある。   Spatial interpolation used in extension processing and connection processing is basically a space that forms a line segment represented by a linear combination of point sequences arranged in model space, with a basis function for spatial interpolation as a coupling engagement. Two conditions are interpolation (first condition), and that when a new control point is added to an existing control point sequence, the partial curve created by the existing control point does not change (second condition). Must meet.

ただし、Bezier曲線は第2条件を満たさないものの、Hermite曲線と同様、経路点列が複数の区間に分割されることにより、複数のBezier曲線が接続されることで、空間補間曲線として採用されうる。   However, although the Bezier curve does not satisfy the second condition, it can be adopted as a spatial interpolation curve by connecting a plurality of Bezier curves by dividing the path point sequence into a plurality of sections, like the Hermite curve. .

1‥制御システム、2‥アクチュエータ、11‥第1演算処理要素、12‥第2演算処理要素、R‥ロボット(制御対象)。 DESCRIPTION OF SYMBOLS 1 ... Control system, 2 ... Actuator, 11 ... 1st arithmetic processing element, 12 ... 2nd arithmetic processing element, R ... Robot (control object).

Claims (5)

2または3つの直交軸のそれぞれ回りの回転角度によって屈曲状態が表現される関節機構を備えている制御対象の動作を制御するシステムであって、
前記関節機構における各軸回りの回転角度が、クォータニオンによって表現されるモデル空間において、相互に離れて配置されている点列に基づき、空間補間用の基底関数を結合係数とする、前記点列の線形結合として表現される線分を生成する補間処理を実行するとともに、前記補間処理により生成された一の線分の基礎である前記点列に点を加えて新たな点列を定義した上で、前記新たな点列を基礎として前記補間処理を実行することにより、当該一の線分が延長線分によって延長された新たな線分を生成する延長処理を実行するように構成されている第1演算処理要素と、
前記第1演算処理要素により延長処理が実行されることにより最近に延長された前記一の線分の基礎である前記新たな点列と、前記補間処理により生成された他の線分の基礎である他の点列とを基礎として前記補間処理を実行することにより、前記一の線分および前記他の線分が接続線分によって接続された形の線分を、前記関節機構における各軸回りの回転角度を表わすクォータニオンの目標軌道またはその候補として生成する接続処理を実行するように構成されている第2演算処理要素とを備え、
前記第1演算処理要素および前記第2演算処理要素のそれぞれが、前記関節機構の屈曲状態が2つの直交軸のそれぞれ回りの回転角度によって表現される場合、実数成分が0である第1種のクォータニオンを表わす点列に基づいて前記補間処理を実行する一方、前記関節機構の屈曲状態が3つの直交軸のそれぞれ回りの回転角度によって表現される場合、実数成分が0に拘束されない第2種のクォータニオンを表わす点列に基づいて前記補間処理を実行するように構成されていることを特徴とする制御システム。
A system for controlling the operation of a controlled object having a joint mechanism in which a bending state is expressed by a rotation angle around each of two or three orthogonal axes,
The rotation angle about each axis in the joint mechanism is based on the point sequences arranged away from each other in the model space expressed by the quaternion, and the basis function for spatial interpolation is used as a coupling coefficient. After executing an interpolation process for generating a line segment expressed as a linear combination, a point is added to the point string that is the basis of the one line segment generated by the interpolation process, and a new point string is defined. The extension process is performed to generate a new line segment in which the one line segment is extended by an extension line segment by executing the interpolation process based on the new point sequence. One arithmetic processing element;
The new point sequence that is the basis of the one line segment that has recently been extended by the extension processing being executed by the first arithmetic processing element, and the basis of the other line segment that is generated by the interpolation processing By performing the interpolation process based on a certain other point sequence, the line segment in the form in which the one line segment and the other line segment are connected by a connecting line segment is moved around each axis in the joint mechanism. A quaternion target trajectory representing a rotation angle of the second or a second arithmetic processing element configured to execute a connection process generated as a candidate thereof,
Each of the first arithmetic processing element and the second arithmetic processing element is a first type whose real component is 0 when the bending state of the joint mechanism is expressed by rotation angles about two orthogonal axes, respectively. while performing the interpolation processing on the basis of the sequence of points representing a quaternion, if flexion of the joint mechanism is represented by each rotation of the rotation angle of the three orthogonal axes, a second kind real component is not constrained to zero control system characterized by being configured to execute the interpolation processing based on the sequence of points representing the quaternion.
請求項1記載の制御システムにおいて、
前記第1演算処理要素が、前記モデル空間において、前記延長線分が実空間における物体を表わす障害物領域から外れていることを含む指定条件を満たしているか否かを判定する第1判定処理を実行するように構成され、前記第1判定処理の結果が否定的であることを要件として、前記一の線分を棄却した上で前記延長処理を実行するように構成されていることを特徴とする制御システム。
The control system according to claim 1,
A first determination process for determining whether or not the first arithmetic processing element satisfies a specified condition in the model space, the extended line segment being out of an obstacle area representing an object in real space; It is configured to execute, and on the condition that the result of the first determination process is negative, it is configured to execute the extension process after rejecting the one line segment. Control system.
請求項1または2記載の制御システムにおいて、
前記第2演算処理要素が、前記モデル空間において、前記接続線分が実空間における物体を表わす障害物領域から外れていることを含む指定条件を満たしているか否かを判定する第2判定処理を実行するように構成され、前記第2判定処理の結果が否定的であることを要件として、前記第1演算処理要素が、前記新たな点列を再定義した上で前記延長処理を実行するように構成されていることを特徴とする制御システム。
The control system according to claim 1 or 2,
A second determination process in which the second calculation processing element determines whether or not the connection line segment satisfies a specified condition including being out of an obstacle area representing an object in the real space in the model space; The first arithmetic processing element is configured to execute the extension process after redefining the new point sequence, on condition that the result of the second determination process is negative. The control system characterized by being comprised in this.
制御対象に搭載されているコンピュータを請求項1〜3のうちいずれか1つに記載の制御システムとして機能させることを特徴とする制御プログラム。   A control program causing a computer mounted on a control target to function as the control system according to claim 1. 基体と、前記基体から延設されている肢体とを備え、前記肢体を動かすことによりタスクを実行するように構成されている前記制御対象としてのロボットであって、請求項1〜3のうちいずれか1つに記載の制御システムを備えていることを特徴とするロボット。   A robot as the control object, comprising: a base body; and a limb extending from the base body, and configured to execute a task by moving the limb body. A robot comprising the control system according to claim 1.
JP2010101492A 2010-04-26 2010-04-26 Robot, control system and control program Active JP5456557B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010101492A JP5456557B2 (en) 2010-04-26 2010-04-26 Robot, control system and control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010101492A JP5456557B2 (en) 2010-04-26 2010-04-26 Robot, control system and control program

Publications (2)

Publication Number Publication Date
JP2011230213A JP2011230213A (en) 2011-11-17
JP5456557B2 true JP5456557B2 (en) 2014-04-02

Family

ID=45320081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010101492A Active JP5456557B2 (en) 2010-04-26 2010-04-26 Robot, control system and control program

Country Status (1)

Country Link
JP (1) JP5456557B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104237380A (en) * 2014-10-10 2014-12-24 北京理工大学 Composite component manipulator scanning pose quaternion converting method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107807612B (en) * 2017-12-12 2020-09-22 科德数控股份有限公司 Numerical control machine tool spherical surface machining method based on quaternion spiral spherical surface interpolation method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1502712B1 (en) * 2002-04-26 2010-04-21 Honda Giken Kogyo Kabushiki Kaisha Self-position estimating device for leg type movable robots
JP4876204B2 (en) * 2006-01-05 2012-02-15 ヒロボー株式会社 Small attitude sensor
JP5313562B2 (en) * 2008-06-27 2013-10-09 本田技研工業株式会社 Behavior control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104237380A (en) * 2014-10-10 2014-12-24 北京理工大学 Composite component manipulator scanning pose quaternion converting method
CN104237380B (en) * 2014-10-10 2017-01-18 北京理工大学 Composite component manipulator scanning pose quaternion converting method

Also Published As

Publication number Publication date
JP2011230213A (en) 2011-11-17

Similar Documents

Publication Publication Date Title
US7289884B1 (en) Hand control system, method, program, hand, and robot
JP4645601B2 (en) Environmental map generation method and mobile robot
JP6137155B2 (en) Interference avoidance method, control device, and program
JP5261495B2 (en) Real-time self-collision and obstacle avoidance using weight matrix
JP5404519B2 (en) Robot, control system and control program
US8463434B2 (en) Robot hand and control system, control method and control program for the same
JP4316630B2 (en) Robot, robot control method, and robot control program
JP4565229B2 (en) robot
JP5480799B2 (en) Mobile device, robot and control system thereof
US9014854B2 (en) Robot and control method thereof
JP2003039353A (en) Control method for manipulator
JP6927727B2 (en) Robot control device
JP2012071358A (en) Robot, and behavior control system for the same
JP2013132731A (en) Robot control system, robot system and robot control method
JP4211701B2 (en) Robot hand gripping control device
JP5456557B2 (en) Robot, control system and control program
JP6026393B2 (en) Mobile device
JP5306934B2 (en) Robot and control system
JP6515828B2 (en) Interference avoidance method
JP6158665B2 (en) Robot, robot control method, and robot control program
JP6647143B2 (en) Functional device, control device and control method thereof
JP4488811B2 (en) Robot control method and robot system
CN114355964B (en) Multi-degree-of-freedom single-leg kinematics solving method, device and robot
JP2011031349A (en) Robot and control system
JP5539000B2 (en) Control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131029

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140108

R150 Certificate of patent or registration of utility model

Ref document number: 5456557

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150