JP2006321012A - Robot and its control method - Google Patents

Robot and its control method Download PDF

Info

Publication number
JP2006321012A
JP2006321012A JP2005146773A JP2005146773A JP2006321012A JP 2006321012 A JP2006321012 A JP 2006321012A JP 2005146773 A JP2005146773 A JP 2005146773A JP 2005146773 A JP2005146773 A JP 2005146773A JP 2006321012 A JP2006321012 A JP 2006321012A
Authority
JP
Japan
Prior art keywords
center
gravity
robot
joint
upper limb
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
JP2005146773A
Other languages
Japanese (ja)
Inventor
Toshiki Kumeno
俊貴 粂野
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2005146773A priority Critical patent/JP2006321012A/en
Publication of JP2006321012A publication Critical patent/JP2006321012A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a robot capable of stabilizing the motion by suppressing the sway of a body trunk resulting from the motion of an upper limb with a simple motion. <P>SOLUTION: At first, joint angles of both arm parts of the robot are acquired (S1). That is, the joint angle of a gripping arm and that of a non-gripping arm are respectively acquired. Next, a distortion of the gravity center position of the upper body is acquired from the joint angles. Then, a correction angle of the non-gripping arm is acquired on the basis of the distortion of the gravity center position of the upper body (S3). That is, a joint angle of the non-gripping arm is acquired so as to allow the gravity center of the upper body to move on the target gravity center position. The joint of the non-gripping arm is minutely displaced according to the correction angle (S4). The gravity center position of the upper body can be always maintained on the target gravity center position by repeating the above steps. Consequently, it is possible to stabilize the walking motion. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は,体幹に対して上肢が揺動可能に連結されているロボットに関する。さらに詳細には,上肢の動作に起因する体幹の揺れを抑制し,動作の安定化を図るロボットに関するものである。   The present invention relates to a robot in which an upper limb is swingably connected to a trunk. More specifically, the present invention relates to a robot that suppresses the swinging of the trunk caused by the movement of the upper limb and stabilizes the movement.

従来から,上肢を動作させながら歩行する歩行ロボットが開示されている。この種のロボットでは,一般に各肢体の関節の動きを複数個のアクチュエータで実現している。ロボットの姿勢を変化させる方法としては,例えば,体幹,左足先,右足先,左手先,右手先の各位置を時系列に指示する歩容データを作成しておき,その歩容データに従って,体幹,両足,両腕の相対的姿勢を経時的に変化させることが行われている(例えば,特許文献1)。すなわち,あらかじめ記憶された足先および手先の軌跡に追従するように各アクチュエータを動作させる。   Conventionally, walking robots that walk while moving their upper limbs have been disclosed. In this type of robot, the movement of each limb is generally realized by a plurality of actuators. As a method for changing the posture of the robot, for example, gait data that indicates each position of the trunk, left toe, right toe, left hand, and right hand in time series is created, and according to the gait data, The relative postures of the trunk, both legs, and both arms are changed over time (for example, Patent Document 1). That is, each actuator is operated so as to follow the foot and hand trajectories stored in advance.

また,ロボットの体幹には,体幹の姿勢角や加速度を検出するセンサ群が備えられている。また,ロボットの各関節は,エンコーダ付きのモータを備えてられている。これらのセンサによってロボットの姿勢および上半身の重心位置を計測することが可能である。通常,上半身の重心位置が常に所定の範囲内(例えば,体幹の中心からの距離が10mm以内)に位置するような歩容データが作成され,その歩容データに従って各関節のアクチュエータを制御している。   The trunk of the robot is provided with a sensor group for detecting the posture angle and acceleration of the trunk. Each joint of the robot is equipped with a motor with an encoder. With these sensors, it is possible to measure the posture of the robot and the position of the center of gravity of the upper body. Usually, gait data is created so that the center of gravity of the upper body is always within a predetermined range (for example, the distance from the center of the trunk is within 10 mm), and the actuators of each joint are controlled according to the gait data. ing.

また,歩行ロボットは,歩容データに従って歩行動作を行ったとしても,路面上の障害等の外乱によって姿勢が不安定になることがある。そこで,例えば足平の絶対座標における傾斜角度から重心位置を推定し,重心位置が目標重心位置になるように各関節角を制御するロボットが開示されている(例えば,特許文献2)。
特開2005−7496号公報 特開平5−305580号公報
Even if the walking robot performs a walking motion according to the gait data, the posture may become unstable due to disturbances such as obstacles on the road surface. Thus, for example, a robot is disclosed that estimates the position of the center of gravity from the inclination angle in the absolute coordinates of the foot and controls each joint angle so that the position of the center of gravity becomes the target position of the center of gravity (for example, Patent Document 2).
JP-A-2005-7496 JP-A-5-305580

しかしながら,前記した従来のロボットでは,次のような問題があった。すなわち,ロボットの上肢の動作によっては上半身の重心が変位し,歩行が不安定になることがある。例えば,ロボットが一方の上肢で負荷物を把持すると,上半身の重心位置がその負荷物を把持した方の上肢側にずれる。また,ロボットが背負い鞄のようなもので負荷物を背負うと,上半身の重心位置が後方にずれる。そのため,上半身のバランスが崩れ,歩行動作が不安定となる。   However, the conventional robot described above has the following problems. In other words, depending on the movement of the upper limb of the robot, the center of gravity of the upper body may be displaced and walking may become unstable. For example, when the robot grips a load with one upper limb, the position of the center of gravity of the upper body shifts to the upper limb side that holds the load. Also, if the robot carries a load with a bag like a carrying bag, the center of gravity of the upper body shifts backward. For this reason, the balance of the upper body is lost and the walking motion becomes unstable.

さらに,上半身の動作に起因してバランスを崩した場合,足平の傾斜角度からは正確な重心位置を推定することができない。つまり,足平が水平状態で重心が変位することもありえるため,正確な重心位置が求まらない。   In addition, if the balance is lost due to the upper body movement, the exact center of gravity position cannot be estimated from the inclination angle of the foot. In other words, the center of gravity can be displaced when the foot is horizontal, so the exact center of gravity cannot be determined.

また,重心位置が一方の上肢側にずれた場合,ロボットの体幹を反対側に捩じる等,体幹を動作させることで重心を所定の位置に戻すことが考えられる。しかし,歩行動作中では,体幹を捩じると却って歩行動作が不安定となる。また,体幹を捩じる動作自体が複雑であり,制御が困難となる。   In addition, when the center of gravity shifts to one upper limb side, it is conceivable to return the center of gravity to a predetermined position by operating the trunk, such as twisting the trunk of the robot to the opposite side. However, during walking movement, if the trunk is twisted, walking movement becomes unstable. In addition, the operation of twisting the trunk itself is complicated and difficult to control.

本発明は,前記した従来のロボットが有する問題点を解決するためになされたものである。すなわちその課題とするところは,シンプルな動作で上肢の動作に起因する体幹の揺れを抑制し,動作の安定化を図るロボットを提供することにある。   The present invention has been made to solve the problems of the conventional robot described above. That is, the problem is to provide a robot that stabilizes the motion by suppressing the trunk shake caused by the motion of the upper limb with a simple motion.

この課題の解決を目的としてなされたロボットは,一方の端部が体幹に連結された上肢を有するロボットであって,ロボットの体幹を含む上半身の重心位置を取得する重心位置取得部と,ロボットの上半身の重心位置の目標位置を記憶する目標位置記憶部と,目標位置記憶部にて記憶された目標位置と,重心位置取得部にて取得された重心位置とのずれ量を算出する重心ずれ量算出部と,重心ずれ量取得部にて算出されたずれ量が所定値以下となるように上肢を駆動する駆動部とを備えることを特徴としている。   The robot made for the purpose of solving this problem is a robot having an upper limb whose one end is connected to the trunk, and a center-of-gravity position acquisition unit that acquires the center-of-gravity position of the upper body including the trunk of the robot; A target position storage unit that stores a target position of the center of gravity of the upper body of the robot, a center of gravity that calculates a deviation amount between the target position stored in the target position storage unit and the center of gravity position acquired by the center of gravity position acquisition unit A deviation amount calculation unit and a drive unit that drives the upper limb so that the deviation amount calculated by the gravity center deviation amount acquisition unit is a predetermined value or less are provided.

すなわち,本発明のロボットは,重心位置取得部にてロボットの上半身の重心位置を取得し(重心位置取得ステップ),重心ずれ量取得部にて上半身の重心位置と目標重心位置とのずれ量を取得(重心ずれ量取得ステップ)している。ここでいう目標重心位置とは,例えば負荷物を把持せずに直立したときの重心位置が該当する。この他,ロボットの上半身について,良好なバランスが維持できる位置であれば適用可能である。この目標重心位置は,あらかじめ目標目標位置記憶部に記憶されている。上半身の重心位置は,上半身の各関節の関節角を基に算出することができる。あるいは,各関節部の関節角に対応する重心位置が記憶されたデータベースを用意し,各関節角や負荷物の重量をパラメータとしてそのデータベースから取得することもできる。   That is, the robot of the present invention acquires the center of gravity position of the upper body of the robot by the center of gravity position acquisition unit (center of gravity position acquisition step), and the amount of deviation between the center of gravity position of the upper body and the target center of gravity position by the center of gravity displacement acquisition unit. Acquisition (gravity center deviation acquisition step). The target center-of-gravity position here corresponds to, for example, the position of the center of gravity when standing upright without gripping a load. In addition, the robot can be applied to any position where a good balance can be maintained for the upper body of the robot. The target center-of-gravity position is stored in advance in the target target position storage unit. The position of the center of gravity of the upper body can be calculated based on the joint angle of each joint of the upper body. Alternatively, it is possible to prepare a database in which the position of the center of gravity corresponding to the joint angle of each joint portion is stored, and obtain each joint angle and the weight of the load from the database as parameters.

そして,駆動部にて,重心位置のずれ量が所定値以下となるように,上肢を駆動(駆動ステップ)している。すなわち,上肢を動かすことによってロボットの上半身の重心位置を移動させ,その重心位置を目標重心位置に近づける。上肢を駆動するために必要な各関節部の関節角は,重心位置のずれ量に応じて計算によって取得してもよいし,データベースから取得してもよい。これにより,上肢にて負荷物を把持したり躓く等の外乱が生じたとしても,上半身の重心位置を常に目標重心位置に置くことができる。そのため,動作が安定する。さらには,重心位置の制御を上肢の動作によってのみ行っている。つまり,上肢の姿勢を調節する簡易な動作によって動作の安定が図られる。   Then, the upper limb is driven (driving step) so that the shift amount of the center of gravity is equal to or less than a predetermined value by the driving unit. In other words, the center of gravity of the upper body of the robot is moved by moving the upper limb, and the center of gravity is moved closer to the target center of gravity. The joint angle of each joint necessary for driving the upper limb may be obtained by calculation according to the shift amount of the center of gravity, or may be obtained from a database. As a result, even if a disturbance such as gripping or scooping a load with the upper limb occurs, the center of gravity position of the upper body can always be placed at the target center of gravity position. Therefore, the operation is stable. Furthermore, the center of gravity is controlled only by the movement of the upper limbs. That is, the operation is stabilized by a simple operation for adjusting the posture of the upper limb.

また,本発明のロボットの上肢は,1つ以上の関節部を有し,駆動部は,その関節部を動かして重心位置を移動させることとするとよりよい。すなわち,上肢の関節部を動かすことで,重心位置の移動をより精密に定めることができる。   Further, the upper limb of the robot of the present invention preferably has one or more joints, and the drive unit may move the joints to move the position of the center of gravity. In other words, the movement of the center of gravity can be determined more precisely by moving the joint of the upper limb.

また,本発明のロボットは,2つ以上の上肢を有し,駆動部は,これらの上肢のうち,少なくとも1つの上肢を駆動して重心位置を移動させることとするとよりよい。すなわち,適切な上肢を選択的に動かすことで,重心位置の移動をより精密に定めることができる。   Further, the robot of the present invention preferably has two or more upper limbs, and the driving unit preferably drives at least one of the upper limbs to move the position of the center of gravity. That is, the movement of the center of gravity can be determined more precisely by selectively moving an appropriate upper limb.

また,本発明のロボットの上肢の他端は,負荷物を把持することが可能な構造を備えており,少なくとも1つの上肢で負荷物を把持した際に,負荷物を把持していない上肢を動作させることにより重心位置を移動させることとするとよりよい。   In addition, the other end of the upper limb of the robot of the present invention has a structure capable of gripping a load, and when the load is gripped by at least one upper limb, the upper limb not gripping the load is detected. It is better to move the position of the center of gravity by operating.

すなわち,負荷物を把持している上肢を動作させると,体幹の揺れが大きくなり,歩行動作に乱れが生じ易い。そこで,負荷物を把持していない側の上肢のみを動作させる。つまり,負荷物を把持していない上肢の動作だけでロボットのバランスをとる。これにより,より簡易な動作で,より確実に歩行動作の安定化を図ることができる。   That is, when the upper limb holding the load is moved, the trunk shakes greatly, and the walking movement is likely to be disturbed. Therefore, only the upper limb not holding the load is operated. In other words, the robot is balanced only by the movement of the upper limb not holding the load. As a result, the walking motion can be more reliably stabilized with a simpler motion.

本発明によれば,ロボットの上半身の重心位置が所定の目標重心位置からずれた場合に,上肢のみを動作させることでその重心位置を目標重心位置上に戻している。従って,シンプルな動作で上肢の動作に起因する体幹の揺れを抑制し,動作の安定化を図るロボットが実現されている。   According to the present invention, when the gravity center position of the upper body of the robot deviates from a predetermined target gravity center position, the gravity center position is returned to the target gravity center position by operating only the upper limbs. Therefore, a robot has been realized that stabilizes the movement by suppressing movement of the trunk caused by the movement of the upper limb with a simple movement.

以下,本発明に係るロボットを具体化した実施の形態について図面を基に説明する。本実施の形態は,上肢で負荷物を把持しつつ歩行することが可能な2足歩行ロボットに本発明を適用したものである。   DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments embodying a robot according to the present invention will be described below with reference to the drawings. In the present embodiment, the present invention is applied to a biped walking robot capable of walking while holding a load with an upper limb.

本形態の歩行ロボットは,胴体(体幹)と,頭部と,2本の脚部(下肢)と,2本の腕部(上肢)とを備えた2足歩行ロボットである。図1は,本形態の歩行ロボット100における各関節の構成を示している。図1中,x軸は歩行ロボット100の前後方向(進行方向)を,y軸は歩行ロボット100の左右方向を,z軸は歩行ロボット100の上下方向(高さ方向)をそれぞれ意味している。歩行ロボット100は,左右の股関節にそれぞれ2軸,腰部に1軸,左右の膝関節にそれぞれ1軸,左右の足首関節にそれぞれ2軸,左右の肩関節にそれぞれ2軸,左右の肘関節にそれぞれ1軸の自由度を持っている。各関節は,エンコーダ付きのモータを備えており,関節角を計測するとともに関節角を調節することができる。   The walking robot of this embodiment is a biped walking robot including a trunk (trunk), a head, two legs (lower limbs), and two arms (upper limbs). FIG. 1 shows the configuration of each joint in the walking robot 100 of this embodiment. In FIG. 1, the x-axis means the front-rear direction (traveling direction) of the walking robot 100, the y-axis means the left-right direction of the walking robot 100, and the z-axis means the up-down direction (height direction) of the walking robot 100. . The walking robot 100 has two axes for the left and right hip joints, one axis for the waist, one axis for the left and right knee joints, two axes for the left and right ankle joints, two axes for the left and right shoulder joints, and two axes for the left and right elbow joints. Each has one axis of freedom. Each joint is equipped with a motor with an encoder, which can measure the joint angle and adjust the joint angle.

具体的に,中央の関節17および左右の関節(股関節)1,2,6,7によって腰部を構成している。また,関節(膝関節)3が大腿リンクを介して関節2に,さらに関節(足首関節)4,5が下腿リンクを介して関節3にそれぞれ連結されて左脚部を構成し,関節4,5の下には足平部19が設けられている。また,関節(膝関節)8が大腿リンクを介して関節7に,さらに関節(足首関節)9,10が下腿リンクを介して関節8にそれぞれ連結されて右脚部を構成し,関節9,10の下には足平部20が設けられている。   Specifically, the waist is constituted by the central joint 17 and the left and right joints (hip joints) 1, 2, 6 and 7. Further, the joint (knee joint) 3 is connected to the joint 2 via the thigh link, and the joints (ankle joints) 4 and 5 are connected to the joint 3 via the lower leg link to constitute the left leg, A foot 19 is provided below 5. The joint (knee joint) 8 is connected to the joint 7 via the thigh link, and the joints (ankle joints) 9 and 10 are connected to the joint 8 via the crus link to form the right leg, A foot portion 20 is provided below 10.

また,腰部中央の関節17がリンクを介して頭部18に連結されている。また,頭部18に連結するリンクに直交配置されるリンクに,関節(肩関節)11,12,14,15が連結されている。また,関節(肘関節)13が上腕リンクを介して関節11,12に,さらに関節13が前腕リンクを介して手部21にそれぞれ連結されて左腕部を構成している。また,関節(肘関節)16が上腕リンクを介して関節14,15に,さらに関節16が前腕リンクを介して手部22にそれぞれ連結されて右腕部を構成している。   The joint 17 at the center of the waist is connected to the head 18 via a link. Further, joints (shoulder joints) 11, 12, 14, and 15 are connected to a link that is orthogonal to the link connected to the head 18. The joint (elbow joint) 13 is connected to the joints 11 and 12 via the upper arm link, and the joint 13 is connected to the hand part 21 via the forearm link to constitute the left arm part. Further, a joint (elbow joint) 16 is connected to the joints 14 and 15 via the upper arm link, and further, the joint 16 is connected to the hand part 22 via the forearm link to constitute a right arm part.

また,腰部の中央には,胴体の加速度を検出する加速度センサや姿勢角(z軸方向に対する傾き)を検出するジャイロセンサからなる姿勢制御センサ群25が設けられている。   At the center of the waist, a posture control sensor group 25 including an acceleration sensor that detects the acceleration of the trunk and a gyro sensor that detects a posture angle (tilt with respect to the z-axis direction) is provided.

続いて,本形態の歩行ロボット100の動作制御について説明する。歩行ロボット100は,図2に示すようにロボットの動作(例えば,歩行動作,負荷物を把持する動作,さらにはその負荷物を高い位置に掲げる動作など)を指示する歩容データを作成する動作指示生成装置30と,各関節の関節角を調節する関節角群計算装置41と,算出された関節角に従って各関節を稼動するアクチュエータ制御装置42と,上半身の重心の微小変位量を算出する重心位置変位量算出装置44とを有している。   Next, the operation control of the walking robot 100 of this embodiment will be described. As shown in FIG. 2, the walking robot 100 creates gait data for instructing the robot's operation (for example, walking operation, operation for grasping a load, and operation for raising the load at a high position). An instruction generation device 30, a joint angle group calculation device 41 that adjusts the joint angle of each joint, an actuator control device 42 that operates each joint according to the calculated joint angle, and a center of gravity that calculates a minute displacement amount of the center of gravity of the upper body And a position displacement amount calculation device 44.

動作指示生成装置30は,動作の基本となる歩容データを作成する機能を有している。また,動作指示生成装置30は,足先位置指令値生成部31と,体幹位置指令値生成部32と,手先位置指令値生成部33と,歩容データ記憶部34とを備えている。動作指示生成装置30には,動作の選択信号や開始/停止信号が入力される。また,動作指示生成装置30からは,足先位置や手先位置に関する情報,すなわち歩容データが関節角群計算装置41に出力される。この出力情報を基にロボットの機械系が駆動される。   The motion instruction generation device 30 has a function of creating gait data that is the basis of motion. The motion instruction generation device 30 includes a toe position command value generation unit 31, a trunk position command value generation unit 32, a hand position command value generation unit 33, and a gait data storage unit 34. The operation instruction generation device 30 receives an operation selection signal and a start / stop signal. Further, from the motion instruction generation device 30, information on the foot tip position and the hand tip position, that is, gait data is output to the joint angle group calculation device 41. Based on this output information, the robot mechanical system is driven.

足先位置指令値生成部31には,足先の軌道が記憶されている。すなわち,両足先の3次元座標(x,y,z)と時間との関係を示す経時的な足先軌道データがあらかじめ記憶されている。そして,足先軌道データを基に,右足先の位置の指令値Rfs(t)と左足先の位置の指令値Lfs(t)とを作成する。指令値Rfs(t),Lfs(t)は,足先位置Rfs,Lfsと時間tとの関係を示すデータ,すなわち足先位置の経時的変化の内容が記憶されたデータである。指令値Rfs(t),Lfs(t)は,体幹位置指令値生成部32および歩容データ記憶部34に出力される。   The foot position command value generation unit 31 stores a foot path. That is, footstep trajectory data with time indicating the relationship between the three-dimensional coordinates (x, y, z) of both feet and the time is stored in advance. Then, based on the foot tip trajectory data, a command value Rfs (t) for the position of the right foot tip and a command value Lfs (t) for the position of the left foot tip are created. The command values Rfs (t) and Lfs (t) are data indicating the relationship between the toe positions Rfs and Lfs and time t, that is, data in which the contents of the change in the toe position over time are stored. The command values Rfs (t) and Lfs (t) are output to the trunk position command value generation unit 32 and the gait data storage unit 34.

体幹位置指令値生成部32では,足先の位置情報(指令値Rfs,Lfs)を基に,目標ZMP(ゼロ・モーメント・ポイント)位置を計算する。目標ZMP位置は,接地足の足平内に常にあるように計算される。目標ZMP位置は,2次元の座標(x,y)で表現され,z座標をゼロとする。そして,目標ZMP位置の経時的変化の内容が記憶されたZMP軌道データが作成される。そして,このZMP軌道データに従って歩容ロボット100が動作するように,体幹の基準位置の指令値W(t)を作成する。指令値W(t)は,体幹の基準位置Wと時間tとの関係を示すデータ,すなわち基準位置の経時的変化の内容が記憶されたデータである。指令値W(t)は,歩容データ記憶部34に出力される。   The trunk position command value generation unit 32 calculates a target ZMP (zero moment point) position based on the toe position information (command values Rfs, Lfs). The target ZMP position is calculated so that it is always within the foot of the grounded foot. The target ZMP position is expressed by two-dimensional coordinates (x, y), and the z coordinate is set to zero. Then, ZMP trajectory data in which the content of the change with time of the target ZMP position is stored is created. Then, a command value W (t) of the trunk reference position is created so that the gait robot 100 operates according to the ZMP trajectory data. The command value W (t) is data indicating the relationship between the trunk reference position W and time t, that is, data in which the content of the change in the reference position with time is stored. The command value W (t) is output to the gait data storage unit 34.

なお,指令値W(t)を計算する手法の詳細については,本出願人によって出願された特願2003−171967号,あるいは特願2003−354866号に記載されている。   Details of the method for calculating the command value W (t) are described in Japanese Patent Application No. 2003-171967 or Japanese Patent Application No. 2003-354866 filed by the present applicant.

手先位置指令値生成部33には,手先の軌道が記憶されている。すなわち,両手先の3次元座標(x,y,z)と時間との関係を示す経時的な手先軌道データがあらかじめ記憶されている。そして,手先軌道データを基に,右手先の位置の指令値Rhs(t)と左手先の位置の指令値Lhs(t)とを作成する。指令値Rhs(t),Lhs(t)は,手先位置Rhs,Lhsと時間tとの関係を示すデータ,すなわち手先位置の経時的変化の内容が記憶されたデータである。指令値Rhs(t),Lhs(t)は,歩容データ記憶部34に出力される。   The hand position command value generation unit 33 stores the hand trajectory. That is, hand trajectory data with time indicating the relationship between the three-dimensional coordinates (x, y, z) of both hands and time is stored in advance. Based on the hand trajectory data, a command value Rhs (t) for the position of the right hand and a command value Lhs (t) for the position of the left hand are created. The command values Rhs (t) and Lhs (t) are data indicating the relationship between the hand positions Rhs and Lhs and the time t, that is, data in which the contents of the change in the hand position with time are stored. The command values Rhs (t) and Lhs (t) are output to the gait data storage unit 34.

また,手先位置指令値生成部33には,後述する重心位置変位量算出部44から上肢の補正角がおよそ10ms周期で送られる。この上肢の補正角は,上半身の重心位置が目標重心位置からずれた際に,左右の腕部を動作させてその重心位置を元に戻すための補正データである。そして,指令値Rhs(t),Lhs(t)を作成する際,その補正角に従って手先の位置を修正する。例えば,一方の腕部で負荷物を把持し,それに伴って上半身の重心位置がその負荷物側にずれた際に,他方の腕部を上げ下げしてその重心位置を目標重心位置上に移動させる。このような動作が実現するように指令値Rhs(t),Lhs(t)を作成する。   In addition, a correction angle of the upper limb is sent to the hand position command value generation unit 33 from a later-described center of gravity position displacement amount calculation unit 44 at a cycle of about 10 ms. The correction angle of the upper limb is correction data for returning the center of gravity position by operating the left and right arms when the center of gravity position of the upper body deviates from the target center of gravity position. When the command values Rhs (t) and Lhs (t) are created, the position of the hand is corrected according to the correction angle. For example, when a load is gripped by one arm and the center of gravity of the upper body shifts to the load, the other arm is raised and lowered to move the center of gravity to the target center of gravity. . Command values Rhs (t) and Lhs (t) are created so that such an operation is realized.

歩容データ記憶部34には,歩行ロボット100の姿勢を決定するのに十分なデータ群(歩容データ:Lfs(t),Rfs(t),Lhs(t),Rhs(t),W(t))が記憶されている。歩容データ記憶部34からは,歩容データがおよそ10ms周期で関節角群計算装置41に送られる。歩行ロボット100は,この歩容データに基づいて手足を動作させる。すなわち,歩容データを基に各関節が駆動される。   In the gait data storage unit 34, a data group sufficient to determine the posture of the walking robot 100 (gait data: Lfs (t), Rfs (t), Lhs (t), Rhs (t), W ( t)) is stored. The gait data storage unit 34 sends the gait data to the joint angle group calculation device 41 at a cycle of about 10 ms. The walking robot 100 moves the limbs based on the gait data. That is, each joint is driven based on the gait data.

関節角群計算装置41は,各部位の位置が記憶されている歩容データを基に,いわゆる逆キネマティクス演算を解いて各関節のモータに対する関節角を計算する。計算された関節角は,アクチュエータ制御装置42に送られる。アクチュエータ制御装置42は,計算された関節角に基づいて,各関節のアクチュエータ1〜17の駆動制御を行う。これにより,歩行ロボット100の関節角が調節され,歩行ロボット100の歩行動作が実現する。   The joint angle group calculation device 41 calculates a joint angle with respect to the motor of each joint by solving a so-called inverse kinematics calculation based on gait data in which the position of each part is stored. The calculated joint angle is sent to the actuator controller 42. The actuator control device 42 performs drive control of the actuators 1 to 17 of each joint based on the calculated joint angle. Thereby, the joint angle of the walking robot 100 is adjusted, and the walking motion of the walking robot 100 is realized.

また,重心位置変位量算出装置44には,左腕部および右腕部の各関節へのモータ指令角(関節角)が入力される。すなわち,負荷物を把持した場合には,負荷物を把持している腕(以下,「把持腕」とする)の関節角と,負荷物を把持していない腕(以下,「非把持腕」とする)の関節角とがそれぞれ入力される。   In addition, motor command angles (joint angles) to the respective joints of the left arm portion and the right arm portion are input to the center-of-gravity position displacement amount calculation device 44. That is, when holding a load, the joint angle of the arm holding the load (hereinafter referred to as “the holding arm”) and the arm not holding the load (hereinafter referred to as “non-holding arm”) And the joint angle are respectively input.

重心変位量算出装置44は,重心位置を取得する機能と,重心位置のずれ量を算出する機能と,重心位置を補正する各関節の関節角(補正角)を算出する機能と,目標重心位置を記憶する記憶部(例えば,不揮発性メモリ)とを備えている。記憶部には,目標重心位置のほか,負荷物の重さや各パーツ(腕,首,足など)の慣性パラメータ(重量,重心位置,慣性モーメントなど)なども記憶されている。重心位置,重心位置のずれ量,および補正角は,入力された関節角や取得した重心位置などの情報を基に重心変位量算出装置44内の演算部(例えば,CPU)が算出する。なお,演算部は,各機能それぞれに設けてもよい。また,重心変位量算出装置44と動作指示生成部30とが一体の装置であれば,その装置内の1つのCPUであってもよい。   The center-of-gravity displacement calculation device 44 has a function of acquiring a center-of-gravity position, a function of calculating a shift amount of the center-of-gravity position, a function of calculating a joint angle (correction angle) of each joint for correcting the center-of-gravity position, and a target center-of-gravity position And a storage unit (for example, a non-volatile memory). In addition to the target center-of-gravity position, the weight of the load and inertia parameters (weight, center-of-gravity position, moment of inertia, etc.) of each part (arm, neck, foot, etc.) are also stored in the storage unit. The calculation unit (for example, CPU) in the centroid displacement amount calculation device 44 calculates the centroid position, the shift amount of the centroid position, and the correction angle based on information such as the input joint angle and the acquired centroid position. Note that a calculation unit may be provided for each function. In addition, if the center-of-gravity displacement calculation device 44 and the operation instruction generation unit 30 are an integrated device, one CPU in the device may be used.

そして,重心位置変位量算出装置44では,図3に示すような制御を行う。すなわち,左右の腕部の関節角および既知である負荷物の重さを基に上半身の重心位置を取得し,その重心位置の目標重心位置からのずれ量を算出する。目標重心位置は,あらかじめ重心位置変位量算出装置44に記憶されている。本形態での目標重心位置は,負荷物を把持せずに直立したときの重心位置とする。なお,目標重心位置は,本形態の位置に限るものではなく,良好なバランスを維持できる位置であればよい。また,上半身の重心位置は,上半身の各関節の関節角および負荷物の重さを基に算出してもよいし,各関節の関節角および負荷物の重量に対応する重心位置が記憶されたデータベースを用意し,そのデータベースから取得することとしてもよい。   The center-of-gravity position displacement amount calculation device 44 performs control as shown in FIG. That is, the center of gravity of the upper body is acquired based on the joint angles of the left and right arms and the known weight of the load, and the amount of deviation of the center of gravity from the target center of gravity is calculated. The target gravity center position is stored in advance in the gravity center position displacement amount calculation device 44. The target center-of-gravity position in this embodiment is the center-of-gravity position when standing upright without gripping a load. Note that the target center-of-gravity position is not limited to the position of the present embodiment, and may be any position that can maintain a good balance. The center of gravity position of the upper body may be calculated based on the joint angle of each joint of the upper body and the weight of the load, and the center of gravity position corresponding to the joint angle of each joint and the weight of the load is stored. A database may be prepared and acquired from the database.

次に,取得した重心位置のずれ量を基に,重心位置の補正角を取得する。すなわち,上半身の重心位置が目標重心位置上となる関節角を取得する。この関節角も,計算によって取得してもよいし,データベースから取得してもよい。この補正角は,非把持腕の関節角に反映される。つまり,補正角によって非把持腕の関節角を調節する。この非把持腕の補正角を手先位置指令値生成部33に出力する。   Next, the correction angle of the center of gravity position is acquired based on the acquired shift amount of the center of gravity position. That is, the joint angle at which the center of gravity of the upper body is on the target center of gravity is acquired. This joint angle may also be acquired by calculation or may be acquired from a database. This correction angle is reflected in the joint angle of the non-gripping arm. That is, the joint angle of the non-gripping arm is adjusted by the correction angle. The correction angle of the non-gripping arm is output to the hand position command value generation unit 33.

続いて,歩行ロボット100の腕部を動作させて上体のバランスをとる,すなわち腕部の動作に従って上半身の重心位置を微小変位させる手順について,図4のフローチャートおよび図5の概念図を基に説明する。なお,負荷物の重量および歩行ロボットが負荷物を把持しない状態での重心位置,すなわち目標重心位置(図5(a))は,あらかじめ歩行ロボットに記憶されている。また,以下の説明では歩行ロボット100が既に一方の腕部で負荷物を把持している状態であることとする。   Subsequently, a procedure for moving the arm of the walking robot 100 to balance the upper body, that is, for slightly displacing the center of gravity of the upper body according to the operation of the arm, based on the flowchart of FIG. 4 and the conceptual diagram of FIG. explain. The weight of the load and the position of the center of gravity when the walking robot does not grip the load, that is, the target center of gravity position (FIG. 5A) is stored in advance in the walking robot. In the following description, it is assumed that the walking robot 100 is already holding a load with one arm.

まず,両腕部の関節角を取得する(S1)。すなわち,把持腕の関節角と非把持腕の関節角とをそれぞれ取得する。次に,それらの関節角から上半身の重心位置のずれ量を取得する(S2:図5(b))。具体的には,各パーツの関節の関節角を基に上半身の重心位置をリアルタイムに取得する。そして,その現在の重心位置とあらかじめ記憶されている目標重心位置との差分を算出する。この差分が重心位置のずれ量となる。   First, joint angles of both arms are acquired (S1). That is, the joint angle of the gripping arm and the joint angle of the non-gripping arm are acquired. Next, the shift amount of the center of gravity position of the upper body is acquired from these joint angles (S2: FIG. 5B). Specifically, the center-of-gravity position of the upper body is acquired in real time based on the joint angle of each part joint. Then, the difference between the current center of gravity position and the pre-stored target center of gravity position is calculated. This difference is the shift amount of the center of gravity.

次に,上半身の重心位置のずれ量を基に非把持腕の補正角を取得する(S3)。すなわち,上半身の重心位置と目標重心位置とのずれ量が所定値(例えば,10mm)以下となるような非把持腕の関節角を取得する。そして,非把持腕の関節を補正角に従って微小変位させる(S4:図5(b))。これを繰り返すことにより,常に上半身の重心位置を目標重心位置付近に維持することができ,一方の腕部によって負荷物を把持している状態であっても歩行動作が安定する。   Next, the correction angle of the non-gripping arm is acquired based on the shift amount of the center of gravity position of the upper body (S3). That is, the joint angle of the non-gripping arm is acquired such that the amount of deviation between the center of gravity position of the upper body and the target center of gravity position is a predetermined value (for example, 10 mm) or less. Then, the joint of the non-gripping arm is slightly displaced according to the correction angle (S4: FIG. 5B). By repeating this, the center of gravity position of the upper body can always be maintained near the target center of gravity position, and the walking motion is stabilized even when the load is held by one arm.

本処理は,歩行ロボット100が負荷物を把持していない状態であっても同様である。具体的な動作としては,例えば,右腕を前方に振り上げたとすると,反対側の左腕を下方に振り上げる動作をする。すなわち,右腕を動作させたときの重心位置を取得し,その重心位置と目標重心位置との差を求める。そして,その差を縮めるように左腕を動作させる。つまりは,変位する重心の位置をリアルタイムに取得しながら,上肢を動かすこことで重心を所定の位置に確保する動作を行う。   This process is the same even when the walking robot 100 is not holding a load. As a specific operation, for example, if the right arm is swung up forward, the opposite left arm is swung up downward. That is, the center of gravity position when the right arm is operated is acquired, and the difference between the center of gravity position and the target center of gravity position is obtained. Then, the left arm is moved so as to reduce the difference. In other words, while acquiring the position of the center of gravity to be displaced in real time, an operation is performed to secure the center of gravity at a predetermined position by moving the upper limb.

以上詳細に説明したように本形態の歩行ロボット100では,上半身の重心位置のずれ量を取得することとしている。そして,この重心位置のずれ量を基に,重心位置のずれを修正する上肢の補正角を取得することとしている。そして,この補正角を手先位置の歩容データに反映させることにより,上肢を動作させて重心位置を目標重心位置上に移動させている。これにより,一方の腕部で負荷物を把持したとしても,他方の腕部の動作により重心位置を目標重心位置付近に維持することができる。そのため,一方の腕に負荷物を把持した状態であっても,歩行動作が安定する。また,安定化を図る動作についても,非把持腕を動作させるのみであり,極めてシンプルである。よって,シンプルな動作で上肢の動作に起因する体幹の揺れを抑制し,動作の安定化を図るロボットが実現している。   As described above in detail, the walking robot 100 according to the present embodiment acquires the amount of deviation of the center of gravity of the upper body. Then, based on the deviation amount of the center of gravity position, the correction angle of the upper limb that corrects the deviation of the center of gravity position is acquired. Then, by reflecting this correction angle on the gait data at the hand position, the upper limb is operated to move the center of gravity position to the target center of gravity position. As a result, even if the load is gripped by one arm, the position of the center of gravity can be maintained near the target center of gravity by the operation of the other arm. Therefore, even when the load is gripped by one arm, the walking motion is stable. In addition, the stabilization operation is very simple because it only moves the non-gripping arm. Therefore, a robot has been realized that stabilizes the movement by suppressing movement of the trunk caused by movement of the upper limbs with simple movement.

例えば,ロボットが歩行動作とともに金管楽器を演奏するような動作を伴う場合,金管楽器を一方の手に把持しながら安定した歩行動作を行うことが望まれる。そこで,実施の形態のように,上半身が良好なバランスを維持することで金管楽器の位置が安定し,見栄えがよくなるとともに安定した演奏を行うことができる。   For example, when the robot is accompanied by an action of playing a brass instrument with a walking action, it is desirable to perform a stable walking action while holding the brass instrument in one hand. Therefore, as in the embodiment, maintaining a good balance of the upper body stabilizes the position of the brass instrument, improves the appearance, and allows a stable performance.

なお,本実施の形態は単なる例示にすぎず,本発明を何ら限定するものではない。したがって本発明は当然に,その要旨を逸脱しない範囲内で種々の改良,変形が可能である。例えば,歩行ロボットの下肢は2本である必要はなく,3本以上であってもよい。また,本発明の適用範囲は,歩行ロボットに限るものではない。例えば,歩行を伴わないロボット(車輪によって移動するロボットやジャンプして移動するロボット等)にも適用可能である。   Note that this embodiment is merely an example, and does not limit the present invention. Therefore, the present invention can naturally be improved and modified in various ways without departing from the gist thereof. For example, the number of lower limbs of the walking robot is not necessarily two, and may be three or more. The application range of the present invention is not limited to walking robots. For example, the present invention can be applied to a robot that does not involve walking (such as a robot that moves by wheels or a robot that moves by jumping).

また,本発明は,一方の上肢に負荷物を把持した際に適用されるのみではない。すなわち,上半身の重心位置にずれが生じるような場合であれば適用可能である。例えば,負荷物を背負う際にも適用可能である。   Further, the present invention is not only applied when a load is gripped on one upper limb. That is, the present invention can be applied to a case where the center of gravity of the upper body is displaced. For example, it can be applied when carrying a load.

実施の形態にかかる歩行ロボットの関節構成を示すスケルトン図である。It is a skeleton figure which shows the joint structure of the walking robot concerning embodiment. 実施の形態にかかる歩行ロボットの機能構成を示すブロック図である。It is a block diagram which shows the function structure of the walking robot concerning embodiment. 重心位置変位量算出装置の制御を示すブロック図である。It is a block diagram which shows control of a gravity center position displacement amount calculation apparatus. 重心の位置を微小変位させる手順を示すフローチャートである。It is a flowchart which shows the procedure which carries out the minute displacement of the position of a gravity center. 重心の位置を微小変位させる概念を示す図である。It is a figure which shows the concept which carries out the minute displacement of the position of a gravity center.

符号の説明Explanation of symbols

1〜17 アクチュエータ
25 姿勢制御センサ群
30 動作指示生成装置
31 足先位置指令値生成部
32 体幹位置指令値生成部
33 手先位置指令値生成部
34 歩容データ記憶部
41 関節角群計算装置
42 アクチュエータ制御装置
44 重心位置変位量算出装置
100 歩行ロボット
1-17 Actuator 25 Posture Control Sensor Group 30 Motion Instruction Generation Device 31 Toe Position Command Value Generation Unit 32 Trunk Position Command Value Generation Unit 33 Hand Position Command Value Generation Unit 34 Gait Data Storage Unit 41 Joint Angle Group Calculation Device 42 Actuator control device 44 Center of gravity position displacement calculation device 100 Walking robot

Claims (6)

一方の端部が体幹に連結された上肢を有するロボットにおいて,
前記ロボットの体幹を含む上半身の重心位置を取得する重心位置取得部と,
前記ロボットの上半身の重心位置の目標位置を記憶する目標位置記憶部と,
前記目標位置記憶部にて記憶された目標位置と,前記重心位置取得部にて取得された重心位置とのずれ量を算出する重心ずれ量算出部と,
前記重心ずれ量取得部にて算出されたずれ量が所定値以下となるように前記上肢を駆動する駆動部とを備えることを特徴とするロボット。
In a robot with an upper limb with one end connected to the trunk,
A center-of-gravity position acquisition unit for acquiring a center-of-gravity position of the upper body including the trunk of the robot;
A target position storage unit for storing a target position of the center of gravity of the upper body of the robot;
A center-of-gravity deviation calculation unit that calculates a deviation between the target position stored in the target position storage unit and the center-of-gravity position acquired by the center-of-gravity position acquisition unit;
A robot comprising: a drive unit that drives the upper limb so that a deviation amount calculated by the gravity center deviation amount acquisition unit is a predetermined value or less.
請求項1に記載するロボットにおいて,
前記上肢は,1つ以上の関節部を有し,
前記駆動部は,前記関節部を動かして前記重心位置を移動させることを特徴とするロボット。
The robot according to claim 1, wherein
The upper limb has one or more joints;
The robot, wherein the drive unit moves the joint portion to move the position of the center of gravity.
請求項1または請求項2に記載するロボットにおいて,
前記上肢を2つ以上有し,
前記駆動部は,これらの上肢のうち,少なくとも1つの上肢を駆動して前記重心位置を移動させることを特徴とするロボット。
The robot according to claim 1 or 2,
Having two or more upper limbs,
The said drive part drives the at least 1 upper limb among these upper limbs, and moves the said gravity center position, The robot characterized by the above-mentioned.
請求項1から請求項3のいずれか1つに記載するロボットにおいて,
前記上肢の他端が負荷物を把持することが可能な構造を備えていることを特徴とするロボット。
The robot according to any one of claims 1 to 3, wherein
A robot having a structure in which the other end of the upper limb can hold a load.
一方の端部が体幹に連結された上肢を有するロボットの制御方法において,
前記ロボットの体幹を含む上半身の重心位置を取得する重心位置取得ステップと,
前記重心位置取得ステップにて取得された重心位置と,前記ロボットの上半身の重心位置の目標位置とのずれ量を算出する重心ずれ量算出ステップと,
前記重心ずれ量算出ステップにて算出されたずれ量が所定値以下となるように前記上肢を駆動する駆動ステップとを含むことを特徴とするロボットの制御方法。
In a control method for a robot having an upper limb with one end connected to the trunk,
A center-of-gravity position acquisition step of acquiring a center-of-gravity position of the upper body including the trunk of the robot;
A center-of-gravity deviation calculation step for calculating a deviation amount between the center-of-gravity position acquired in the center-of-gravity position acquisition step and the target position of the center of gravity of the upper body of the robot;
And a driving step of driving the upper limb so that the amount of deviation calculated in the center-of-gravity deviation amount calculating step is equal to or less than a predetermined value.
請求項5に記載するロボットの制御方法において,
前記駆動ステップでは,少なくとも1つの上肢にて負荷物を把持した際に,負荷物を把持していない上肢を動作させることを特徴とするロボットの制御方法。
The robot control method according to claim 5,
In the driving step, when the load is grasped by at least one upper limb, the upper limb not grasping the load is operated.
JP2005146773A 2005-05-19 2005-05-19 Robot and its control method Withdrawn JP2006321012A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005146773A JP2006321012A (en) 2005-05-19 2005-05-19 Robot and its control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005146773A JP2006321012A (en) 2005-05-19 2005-05-19 Robot and its control method

Publications (1)

Publication Number Publication Date
JP2006321012A true JP2006321012A (en) 2006-11-30

Family

ID=37541045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005146773A Withdrawn JP2006321012A (en) 2005-05-19 2005-05-19 Robot and its control method

Country Status (1)

Country Link
JP (1) JP2006321012A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011523903A (en) * 2008-05-21 2011-08-25 ジョージア テック リサーチ コーポレイション Force balance mobile robot system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011523903A (en) * 2008-05-21 2011-08-25 ジョージア テック リサーチ コーポレイション Force balance mobile robot system

Similar Documents

Publication Publication Date Title
TW544385B (en) Two-legged walking-type moving apparatus and controlling device and method thereof
KR101029228B1 (en) Robot, and its control method
JP6483014B2 (en) Mobile robot controller
US20130079929A1 (en) Robot and control method thereof
KR101743926B1 (en) Robot and control method thereof
JP6228097B2 (en) Mobile robot
KR101687630B1 (en) Walking robot and method for controlling balancing the same
US10183712B2 (en) Walking control method, walking control program and biped walking robot
JP5181957B2 (en) Robot control apparatus, robot control method, and robot control program
JP2003236780A (en) Bi-pedal humanoid robot
JP4810880B2 (en) Robot and its control method
KR20230120651A (en) How the exoskeleton moves
KR101760883B1 (en) Robot and control method thereof
US9802315B2 (en) Controller for mobile robot
US8761926B2 (en) Apparatus and method for robot control
JP2007007803A (en) Robot and control method thereof
JP2014155985A (en) Robot, robot control device, control method, and control program
JP4501601B2 (en) Legged robot, its control method, gait data creation device and creation method
JP6407409B2 (en) Leg-type mechanism, walking robot, posture control method and program
JP5035005B2 (en) Legged robot, its control method, and its control system
JP2006321012A (en) Robot and its control method
JP2007007797A (en) Walking robot
JP2003145458A (en) Bipedal human-type robot
Hengst runswift walk2014 report robocup standard platform league
JP3674787B2 (en) Robot apparatus motion control device, motion control method, and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070829

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20081224