JP2012024872A - Legged walking robot and method for determining foot trajectory of the same - Google Patents

Legged walking robot and method for determining foot trajectory of the same Download PDF

Info

Publication number
JP2012024872A
JP2012024872A JP2010164924A JP2010164924A JP2012024872A JP 2012024872 A JP2012024872 A JP 2012024872A JP 2010164924 A JP2010164924 A JP 2010164924A JP 2010164924 A JP2010164924 A JP 2010164924A JP 2012024872 A JP2012024872 A JP 2012024872A
Authority
JP
Japan
Prior art keywords
foot
landing
interpolation
takeoff
robot
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.)
Pending
Application number
JP2010164924A
Other languages
Japanese (ja)
Inventor
Masahiro Doi
将弘 土井
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 JP2010164924A priority Critical patent/JP2012024872A/en
Publication of JP2012024872A publication Critical patent/JP2012024872A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a method for determining the foot trajectory of a legged robot so as to prevent the load on an actuator from becoming excessive.SOLUTION: The method for determining the foot trajectory of a legged walking robot, includes a path determination step and a one step time determination step. The path determination step determines a motion path of a foot from a takeoff position to a landing position along which the foot moves. The one step time determination step evaluates a value as an one step time necessary for the foot to takeoff and land by dividing the length of the motion path by an average motion speed of the foot. The determined motion path and the one step time correspond to the foot trajectory.

Description

本発明は、脚式歩行ロボットに関する。特に、脚式歩行ロボットの足の軌道を決定する技術に関する。   The present invention relates to a legged walking robot. In particular, the present invention relates to a technique for determining a foot trajectory of a legged walking robot.

脚式歩行ロボット、特に、二足歩行ロボットは、足の着地位置と着地タイミングを適切に決めないと倒れてしまう。以下、本明細書では、「転倒せずに歩行する」ことを「安定に歩行する」と表現する。ここでいう「安定」とは制御理論における「安定」とは意味するところが異なる。脚式歩行ロボットの歩行において「安定」とは、少なくとも次の1歩或いは数歩先まで、脚式歩行ロボットの重心の位置と速度が所定範囲内に留まることが計算上(シミュレーション上)保証されていることを意味する。   A legged walking robot, particularly a biped robot, will fall down unless the landing position and landing timing of the foot are properly determined. Hereinafter, in this specification, “walking without falling” is expressed as “walking stably”. “Stable” here means different from “stable” in control theory. “Stable” in the walking of a legged walking robot is calculated (simulated) that the position and speed of the center of gravity of the legged walking robot stay within a predetermined range at least one step or several steps ahead. Means that

また、簡単のため、以下では脚式歩行ロボットを単に「ロボット」と称する場合がある。安定歩行のための足の着地位置と着地タイミングを決定するのにはZMP方程式がよく用いられる。また、着地タイミングは、足が離地してから着地するまで所要時間に相当する。以下、本明細書では、足が離地してから着地するまでに要する時間を「一歩時間」と称する場合がある。一歩時間は歩行速度にも対応するため、歩行速度を一定に保つことは、一歩時間を一定に保つことと本質的に等価である。通常の歩行では、歩行速度を一定に保つことが望まれる。   For simplicity, the legged walking robot may be simply referred to as “robot” below. A ZMP equation is often used to determine the landing position and landing timing of a foot for stable walking. Also, the landing timing corresponds to the time required from the time when the foot leaves the ground until the landing. Hereinafter, in this specification, the time required for the foot to take off and land is sometimes referred to as “one step time”. Since the one-step time corresponds to the walking speed, keeping the walking speed constant is essentially equivalent to keeping the one-step time constant. In normal walking, it is desirable to keep the walking speed constant.

歩行経路上に予定外の障害物がある場合など、着地位置と着地タイミングを当初の予定から適切に変更することが要求されることがある。しかし、遊脚の着地直前に着地位置や着地タイミングを変更することは安定性を損なう虞がある。そこで、例えば特許文献1には、障害物までの距離に応じて徐々に歩行速度(一歩時間)を遅くする技術が開示されている。また、特許文献1には、歩行速度だけでなく、障害物までの距離に応じてロボットの歩幅を減少させる技術が開示されている。また、特許文献2には、ロボットが予定された姿勢よりもさらに前傾した場合、着地タイミングを予定より早める技術が開示されている。着地タイミングを早めることは、一歩時間を短くすることに相当する。   When there is an unscheduled obstacle on the walking route, it may be required to appropriately change the landing position and landing timing from the original schedule. However, changing the landing position and landing timing immediately before landing of the free leg may impair stability. Thus, for example, Patent Document 1 discloses a technique for gradually decreasing the walking speed (one step time) according to the distance to the obstacle. Patent Document 1 discloses a technique for reducing the stride of a robot according to not only the walking speed but also the distance to the obstacle. Japanese Patent Application Laid-Open No. 2004-228688 discloses a technique for making the landing timing earlier than planned when the robot is further tilted forward than the planned posture. Advancing the landing timing is equivalent to shortening the one-step time.

特開2007−160438号公報JP 2007-160438 A 特開平5−254465号公報JP-A-5-254465

状況に応じて一歩時間を変更するだけでは不都合が生じる可能性がある。例えば、一歩時間を短くすることが、アクチュエータに高い負荷を加えることになる場合がある。一歩時間を短くすることは足の移動速度を増加させることにつながり、ひいてはアクチュエータに高い出力を要求することになるからである。また、検知された障害物を跨ぎ越えようとして足の移動経路を予定よりも長くする場合、一歩時間が一定であると足の移動速度が過大になり、やはりアクチュエータに高い負荷を加えることになりかねない。本明細書は、脚式歩行ロボットにおいて、アクチュエータへの負荷が過大とならないように一歩時間を定める技術を提供する。   There is a possibility that inconvenience may occur if only one step time is changed depending on the situation. For example, shortening the one-step time may impose a high load on the actuator. This is because shortening the one-step time leads to an increase in the moving speed of the foot, which in turn requires a high output from the actuator. Also, if the foot movement path is made longer than planned in order to cross over the detected obstacle, the foot movement speed will be excessive if the one-step time is constant, which will also apply a high load to the actuator. It might be. The present specification provides a technique for determining a step time so that a load on an actuator is not excessive in a legged walking robot.

上記の事実から、遊脚におけるアクチュエータへの負荷は、離地位置から着地位置に至る足の移動経路と一歩時間の関係に依存することが理解される。本願の発明者は、上記の知見から、離地位置から着地位置に至る足の移動経路に基づいて一歩時間を決定するという着想を得た。なお、「移動経路」は、足が通る道筋を意味し、移動速度(即ち時間)に依存しない概念であることに留意されたい。さらに、後述する「軌道」は、「移動経路」と、移動経路上の各点の通過時刻を含む概念であることにも留意されたい。   From the above facts, it is understood that the load on the actuator in the swing leg depends on the relationship between the foot movement path from the takeoff position to the landing position and the time of one step. The inventor of the present application has obtained the idea of determining the one-step time based on the movement path of the foot from the takeoff position to the landing position from the above knowledge. It should be noted that the “movement path” means a path through which the foot passes and is a concept that does not depend on the moving speed (that is, time). Furthermore, it should be noted that the “trajectory” described later is a concept including a “movement path” and a passing time of each point on the movement path.

本明細書が開示する技術の一つは、脚式歩行ロボットの足軌道の決定方法を提供する。その方法は、経路決定ステップと一歩時間決定ステップを含む。経路決定ステップは、歩行における足の離地位置から着地位置に至る足の移動経路を決定する。一歩時間決定ステップは、足が離地してから着地するまでに要する時間(即ち一歩時間)を決定する。具体的には、一歩時間は、足の移動経路の長さを予め定められた足の平均移動速度で除して求める。平均移動速度は、脚の関節に備えられたモータの最大出力などの物理的制約から予め定められる。また、典型的には、移動経路が予定された長さよりも長くなった場合には、一歩時間を予定された長さよりも長くする。   One of the techniques disclosed in this specification provides a method for determining a foot trajectory of a legged walking robot. The method includes a route determination step and a one-step time determination step. The route determination step determines a foot movement route from a foot separation position to a landing position in walking. In the one-step time determination step, a time required for the foot to take off after landing (that is, one step time) is determined. Specifically, the one-step time is obtained by dividing the length of the foot movement path by a predetermined average foot movement speed. The average moving speed is determined in advance from physical constraints such as the maximum output of a motor provided in the leg joint. Also, typically, when the travel route becomes longer than the planned length, the one-step time is made longer than the planned length.

離地位置から着地位置に至る移動経路には様々なバリエーションが想定し得る。そこで、移動経路を一意に定めるために、経路決定ステップは次の通過位置設定ステップと補間ステップと積分計算ステップを含むことが好ましい。通過位置設定ステップは、離地位置から着地位置に至る間に足が通過すべき予定通過位置を設定する。なお、予定通過位置は、例えば、(障害物を含む)路面からの高さに応じて定めればよい。また、補間ステップは、離地位置から予定通過位置を通り着地位置に至る移動経路を、変数τの補間式によって求める。さらに補間ステップは、変数τが特定値をとるときに補間式の値が予定通過位置に相当することを拘束条件として設定した後に、その拘束条件を満たすように補間式の係数を決定する。積分計算ステップは、補間式の導関数のノルムを積分することによって移動経路の長さを求める。   Various variations can be assumed for the movement route from the takeoff position to the landing position. Therefore, in order to uniquely determine the movement route, the route determination step preferably includes the following passage position setting step, interpolation step, and integral calculation step. The passing position setting step sets a scheduled passing position that the foot should pass from the takeoff position to the landing position. In addition, what is necessary is just to determine a plan passage position according to the height from a road surface (an obstacle is included), for example. In the interpolation step, a movement route from the takeoff position to the landing position through the planned passing position is obtained by an interpolation formula of the variable τ. Further, in the interpolation step, after setting as a constraint condition that the value of the interpolation equation corresponds to the expected passing position when the variable τ takes a specific value, the coefficient of the interpolation equation is determined so as to satisfy the constraint condition. In the integral calculation step, the length of the moving path is obtained by integrating the norm of the derivative of the interpolation formula.

補間式は、典型的には、変数τを媒介変数として有する多項式(補間多項式)でよい。「媒介変数τを有する補間式」と予定通過位置に関する拘束条件を導入することによって、一歩時間を決定するのに先立って、好ましい移動経路を決定することができる。   The interpolation formula may typically be a polynomial (interpolation polynomial) having a variable τ as a parameter. By introducing a “interpolation equation having a parameter τ” and a constraint condition related to a planned passing position, a preferable movement route can be determined prior to determining the one-step time.

補間ステップの好適な実施形態は、次の通りである。まず、離地位置から予定通過順に予定通過位置を結び着地位置に至る折れ線の各線分の距離を求める。次いで、離地位置から各位置までの線分の距離の部分和と、離地位置から着地位置までの線分の距離の総和との比に応じて各位置における変数τの特定値を定める。   A preferred embodiment of the interpolation step is as follows. First, the distance of each line segment of the broken line that connects the planned passing positions to the landing position in the order of planned passing from the takeoff position is obtained. Next, the specific value of the variable τ at each position is determined in accordance with the ratio between the partial sum of the distances of the line segments from the takeoff position to each position and the sum of the distances of the line segments from the takeoff position to the landing position.

一歩時間は、上記したように、移動経路の長さを予め定められた足の平均移動速度で除して決定される。各予定通過位置に到達するまでの予定所要時間は、離地位置から予定通過位置までの移動経路の長さを足の平均移動速度で除した値に決定することが好適である。時間をそのように決定すると、移動経路に沿って動く足の速度は概ね平均移動速度以下に抑制できるので、アクチュエータの負荷が過大となることを抑制できる。   As described above, the one-step time is determined by dividing the length of the moving route by a predetermined average moving speed of the foot. The estimated required time to reach each planned passing position is preferably determined to be a value obtained by dividing the length of the moving route from the take-off position to the planned passing position by the average moving speed of the foot. If the time is determined as such, the speed of the foot moving along the movement path can be suppressed to be approximately equal to or less than the average movement speed, so that an excessive load on the actuator can be suppressed.

本明細書が開示する他の技術は、上記した足軌道決定方法を実行するコントローラを備えた脚式歩行ロボットを提供する。そのロボットは、典型的には、障害物センサを備え、障害物センサのセンサデータに基づいて着地位置を変更する際、上記した足軌道決定方法によって一歩時間を決定する。   Another technique disclosed in the present specification provides a legged walking robot including a controller that executes the above-described foot trajectory determination method. The robot typically includes an obstacle sensor, and when changing the landing position based on the sensor data of the obstacle sensor, the step time is determined by the above-described foot trajectory determination method.

本発明によれば、脚式歩行ロボットにおいて、アクチュエータへの負荷が過大とならないように一歩時間を定めることができる。   According to the present invention, in the legged walking robot, one step time can be determined so that the load on the actuator is not excessive.

脚式歩行ロボットの模式的側面図を示す。A schematic side view of a legged walking robot is shown. 足軌道決定処理のフローチャートを示す。The flowchart of a leg trajectory determination process is shown. 足の移動経路の一例を示す。An example of a foot movement path is shown. 移動経路と予定通過位置を結ぶ線分の関係を示す。The relationship between the line segment connecting the movement route and the planned passing position is shown.

図1に、脚式歩行ロボット10の模式的側面図を示す。以下では、簡単のため、脚式歩行ロボット10を単にロボット10と称する。ロボット10は、人間の構造を模しており、頭部12、体幹14、及び、2本の脚16L(左脚)、16R(右脚)を有する2足歩行ロボットである。脚は、複数の関節とリンクで構成される多リンク多関節構造を有している。脚も人間の脚を模しており、体幹の下部に股関節に相当するジョイントによって連結される大腿リンク、大腿リンクの下端に膝に相当するジョイントによって連結される下腿リンク、下腿リンクの下端に足首に相当するジョイントによって連結される足リンクを有している。ロボット10は、脚の各関節を適宜に制御することによって歩行する。歩行に際してロボット10は、足の軌道を決定しておかねばならない。「足の軌道」とは、離地位置から着地位置までの足の位置の経時的変化を意味する。別言すれば、「足の軌道」は、離地位置から着地位置に至る足の移動経路と、移動経路上の各位置を通過する時刻で表される。   FIG. 1 shows a schematic side view of a legged walking robot 10. Hereinafter, for the sake of simplicity, the legged walking robot 10 is simply referred to as the robot 10. The robot 10 imitates a human structure and is a biped walking robot having a head 12, a trunk 14, and two legs 16L (left leg) and 16R (right leg). The leg has a multi-link multi-joint structure composed of a plurality of joints and links. The leg also resembles a human leg, with a thigh link connected to the lower part of the trunk by a joint equivalent to a hip joint, a lower leg link connected to a lower end of the thigh link by a joint equivalent to a knee, and a lower end of the lower leg link It has a foot link connected by a joint corresponding to the ankle. The robot 10 walks by appropriately controlling each joint of the leg. When walking, the robot 10 must determine the trajectory of the foot. The “foot trajectory” means a change with time of the foot position from the takeoff position to the landing position. In other words, the “foot trajectory” is represented by the foot movement path from the take-off position to the landing position and the time passing through each position on the movement path.

ロボット10の頭部12にはコントローラと障害物センサが内蔵されている。障害物センサは前方の障害物を検知する。コントローラは、障害物センサのセンサデータに基づいて、検知された障害物を避けるように足の軌道を決定する。   The head 12 of the robot 10 includes a controller and an obstacle sensor. The obstacle sensor detects an obstacle ahead. Based on the sensor data of the obstacle sensor, the controller determines the trajectory of the foot so as to avoid the detected obstacle.

図1は、右足(右脚16R)がちょうど離地する瞬間を示している。ロボット10は、右足が離地する前に、足の軌道を決定する。ここでの足の軌道は、タイミングt0で離地位置P0を離地し、予定通過位置P1、P2を通り最後に着地位置P3に至る移動経路Pathと、各予定通過位置を通過する時刻と着地位置P3に到達する時刻を決定する。足の軌道決定の処理に、このロボット10の特徴がある。   FIG. 1 shows a moment when the right foot (right leg 16R) has just taken off. The robot 10 determines the trajectory of the foot before the right foot takes off. The trajectory of the foot here is the movement path Path that leaves the takeoff position P0 at the timing t0, passes through the planned passing positions P1 and P2, and finally reaches the landing position P3, and the time and landing that passes through each planned passing position. The time to reach position P3 is determined. The robot 10 has a feature in the process of determining the trajectory of the foot.

図2に、足軌道を決定する処理のフローチャートを示す。ロボット10は、まず、離地位置P0から着地位置P3に至る間に足が通過すべき予定通過位置P1、P2を決定する(S2)。予定通過位置は、例えば、着地位置P0からの水平距離と、床面(障害物を含む)からの高さに応じて適宜に決定される。例えば障害物の高さに応じて、予定通過位置の高さが変化する。前述したようにロボット10は、頭部12に内蔵された障害物センサによって前方の障害物を検知し、そのセンサデータに基づいてコントローラが予定通過位置を決定する。予定通過位置の決定方法には様々な手法がある。   FIG. 2 shows a flowchart of processing for determining the foot trajectory. First, the robot 10 determines scheduled passing positions P1 and P2 that a foot should pass between the take-off position P0 and the landing position P3 (S2). The planned passing position is appropriately determined according to, for example, the horizontal distance from the landing position P0 and the height from the floor (including obstacles). For example, the height of the planned passing position changes according to the height of the obstacle. As described above, the robot 10 detects an obstacle ahead by the obstacle sensor built in the head 12, and the controller determines the scheduled passage position based on the sensor data. There are various methods for determining the expected passing position.

次にロボット10は、離地位置P0から予定通過位置P1、P2を通り、着地位置P3に至る移動経路Pathを決定する(S3)。ロボット10は、補間処理によって移動経路Pathを決定する。このときロボット10は、変数τを媒介変数とする補間式(補間多項式)を用いて移動経路Pathを決定する。今、説明を簡単にするため、移動経路を図1のXZ平面に限定して説明を続ける。X軸はロボット10の進行方向に沿って定められており、Z軸は歩行面に垂直な方向に定められている。補間多項式の一例は次の(数1)で与えられる。(数1)は、変数τに関する3次の多項式である。   Next, the robot 10 determines a movement path Path from the takeoff position P0 through the scheduled passage positions P1 and P2 to the landing position P3 (S3). The robot 10 determines the movement path Path by interpolation processing. At this time, the robot 10 determines the movement path Path using an interpolation formula (interpolation polynomial) having the variable τ as a parameter. Now, in order to simplify the description, the description will be continued by limiting the movement path to the XZ plane of FIG. The X axis is determined along the traveling direction of the robot 10, and the Z axis is determined in a direction perpendicular to the walking surface. An example of the interpolation polynomial is given by the following (Equation 1). (Equation 1) is a cubic polynomial with respect to the variable τ.

Figure 2012024872
Figure 2012024872

上記(数1)のfx1(τ)、fz1(τ)は、離地位置P0から第1予定通過位置P1までの部分的な移動経路を決定するための補間多項式である。ここで、ax1、bx1、cx1、dx1、az1、bz1、cz1、dz1は補間多項式の係数であり、後に説明する拘束条件を満たすように決定される。(数1)と同様に、第1予定通過位置P1と第2予定通過位置P2の間の部分的な移動経路を決定するための補間多項式fx2(τ)、fz2(τ)、及び、第2予定通過位置P2と着地位置P3の間の部分的な移動経路を決定するための補間多項式fx3(τ)、fz3(τ)が予め準備されている。(数1)と同様に、それぞれの補間多項式は、夫々独自に係数を有している。離地位置P0から着地位置P3までの移動経路Pathを複数の部分経路に区分し、夫々の部分経路を別々の補間多項式で表現することは、区分的多項式近似(Piecewise-Polynomial Approximation)と呼ばれており、良く知られている技法である。図3に、媒介変数τの補間多項式fx1(τ)、fx2(τ)、fx3(τ)、fz1(τ)、fz2(τ)、及びfz3(τ)で表される移動経路Pathの一例を示す。なお、図3及び、以下の説明では、着地位置P0、第1予定通過位置P1、第2予定通過位置P2、着地位置P3の座標を夫々、(x、z)、(x、z)、(x、z)、(x、z)で表す。これらの座標は、離地位置P0、着地位置P3、及び予定通過位置P1、P2を定めたときに求まる。 In the above (Equation 1), f x1 (τ) and f z1 (τ) are interpolation polynomials for determining a partial movement path from the takeoff position P0 to the first planned passing position P1. Here, a x1, b x1, c x1, d x1, a z1, b z1, c z1, d z1 are the coefficients of the interpolating polynomial are determined to satisfy the constraint condition to be described later. Similar to (Equation 1), interpolation polynomials f x2 (τ), f z2 (τ), and f z2 (τ) for determining a partial movement path between the first planned passage position P1 and the second planned passage position P2, and Interpolation polynomials f x3 (τ) and f z3 (τ) for determining a partial movement path between the second planned passing position P2 and the landing position P3 are prepared in advance. Like (Equation 1), each interpolation polynomial has its own coefficient. Dividing the movement path Path from the takeoff position P0 to the landing position P3 into a plurality of partial paths, and expressing each partial path with different interpolation polynomials is called piecewise polynomial approximation (Piecewise-Polynomial Approximation). This is a well-known technique. In FIG. 3, the interpolating polynomials f x1 (τ), f x2 (τ), f x3 (τ), f z1 (τ), f z2 (τ), and f z3 (τ) of the parameter τ are represented. An example of the movement route Path is shown. In FIG. 3 and the following description, the coordinates of the landing position P0, the first planned passing position P1, the second planned passing position P2, and the landing position P3 are respectively (x 0 , z 0 ), (x 1 , z 1 ), (x 2 , z 2 ), (x 3 , z 3 ). These coordinates are obtained when the takeoff position P0, the landing position P3, and the planned passing positions P1 and P2 are determined.

移動経路Pathは、補間多項式の係数(ax1等)を決めなければ定まらない。次に、補間多項式の係数ax1等を決める処理を説明する。係数ax1等は、補間多項式になんらかの拘束条件を付与することによって定めることができる。まず、各部分多項式は、その端部が隣接する部分補間多項式と連続していなければならない。即ち、fx1(τ)の終端の導関数の値がfx2(τ)の始端の一次導関数の値と一致していなければならない。これらは、連続であるための境界条件を与える。 The movement path Path must be determined unless the coefficient (a x1 etc.) of the interpolation polynomial is determined. Next, a process for determining the coefficient a x1 of the interpolation polynomial will be described. The coefficient a x1 and the like can be determined by giving some constraint condition to the interpolation polynomial. First, each partial polynomial must be contiguous with the adjacent partial interpolation polynomial at its ends. That is, the value of the derivative at the end of f x1 (τ) must match the value of the first derivative of the start of f x2 (τ). These give boundary conditions to be continuous.

離地位置P0、及び、着地位置P3における補間多項式の一次導関数の値がゼロという条件を加える。別言すると、両端においてその一次導関数がゼロという条件を、補間多項式の境界条件として与える。この境界条件は具体的には次の(数2)で与えられる。この条件は、離地位置P0、及び、着地位置P3において、足が静止することを保証する。   A condition is added that the value of the first derivative of the interpolation polynomial at the takeoff position P0 and the landing position P3 is zero. In other words, the condition that the first derivative is zero at both ends is given as the boundary condition of the interpolation polynomial. Specifically, this boundary condition is given by the following (Equation 2). This condition ensures that the foot is stationary at the takeoff position P0 and the landing position P3.

Figure 2012024872
Figure 2012024872

次に、予定通過位置P1、P2において媒介変数τがとるべき値(特定値)を決定する。別言すれば、媒介変数τが特定値をとるときに補間多項式の値が予定通過位置に相当することを拘束条件として設定する。ロボット10は、前記した境界条件と、変数τが特定値のときに補間多項式の値が予定通過位置P1、P2、及び着地位置P3に相当するという拘束条件を満たすように、係数を決定する。 Next, a value (specific value) to be taken by the parameter τ at the scheduled passage positions P1 and P2 is determined. In other words, the constraint condition is that the value of the interpolation polynomial corresponds to the expected passing position when the parameter τ takes a specific value. The robot 10 determines the coefficient so as to satisfy the above-described boundary condition and the constraint condition that the value of the interpolation polynomial corresponds to the planned passing positions P1, P2 and the landing position P3 when the variable τ is a specific value.

次に、係数を決めるまでの処理を具体的に説明する。ロボット10は、離地位置P0から予定通過順に予定通過位置P1、P2を結び着地位置P3に至る折れ線の各線分の距離D1、D2、及び、D3を求め、離地位置P0から各位置までの線分の距離の部分和と、離地位置P0から着地位置P3までの線分の距離の総和との比に応じて各位置における特定値を定める。図4に、移動経路Pathと、各位置を結ぶ線分との関係を示す。符号D1は、離地位置P0と第1予定通過位置P1を結ぶ線分の距離を示す。符号D2は、第1予定通過位置P1と第2予定通過位置P2を結ぶ線分の距離を示す。符号D3は、第2予定通過位置P2と着地位置P3を結ぶ線分の距離を示す。離地位置P0から第1予定通過位置P1までの距離の部分和はD1で表される。離地位置P0から第2予定通過位置P2までの距離の部分和はD1+D2で表される。離地位置P0から着地位置P3までの総距離はD1+D2+D3で表される。従って、補間多項式の値が第1通過位置P1に相当するときの媒介変数τの取るべき特定値τ1、第2通過位置P2に相当するときの媒介変数τの取るべき特定値τ2、及び、着地位置P3に相当するときの媒介変数τの取るべき特定値τ3は、次の(数3)で表される。   Next, the process until the coefficient is determined will be specifically described. The robot 10 obtains the distances D1, D2, and D3 of the broken line connecting the planned passing positions P1, P2 to the landing position P3 in the order of planned passing from the takeoff position P0, and from the takeoff position P0 to each position. The specific value at each position is determined according to the ratio between the partial sum of the distances of the line segments and the sum of the distances of the line segments from the takeoff position P0 to the landing position P3. FIG. 4 shows the relationship between the movement path Path and the line segment connecting each position. Reference sign D1 indicates the distance of a line segment connecting the takeoff position P0 and the first planned passing position P1. Reference sign D2 indicates the distance of a line segment connecting the first planned passage position P1 and the second planned passage position P2. Reference sign D3 indicates the distance of a line segment connecting the second planned passing position P2 and the landing position P3. The partial sum of the distance from the takeoff position P0 to the first planned passage position P1 is represented by D1. The partial sum of the distance from the takeoff position P0 to the second planned passing position P2 is represented by D1 + D2. The total distance from the takeoff position P0 to the landing position P3 is represented by D1 + D2 + D3. Therefore, the specific value τ1 that the parameter τ should take when the value of the interpolation polynomial corresponds to the first passage position P1, the specific value τ2 that the parameter τ should take when it corresponds to the second passage position P2, and the landing The specific value τ3 to be taken by the parameter τ when it corresponds to the position P3 is expressed by the following (Equation 3).

Figure 2012024872
Figure 2012024872

(数3)と拘束条件と先の境界条件を使って(数1)の補間多項式の係数ax1を定めることができる。即ち、媒介変数τの多項式fx1(τ)等が定まる。図3のグラフは、決定された係数ax1等によって定めるグラフである。こうして移動経路Pathが定まる。 The coefficient a x1 of the interpolation polynomial of (Equation 1) can be determined using (Equation 3), the constraint condition, and the previous boundary condition. That is, the polynomial f x1 (τ) of the parameter τ is determined. The graph of FIG. 3 is a graph determined by the determined coefficient a x1 or the like. Thus, the movement path Path is determined.

図2に戻って、足軌道を決定する処理の説明を続ける。移動経路Pathを決定したのち、ロボット10は、移動経路Pathの長さを算出する(図2、S4)。移動経路Pathの長さは、具体的には補間式の導関数のノルムを積分することによって求められる。この処理を具体的に説明する。以下、説明のため、離地位置P0と第1予定通過位置P1の間の区間を区間1、第1予定通過位置P1と第2予定通過位置P2の間の区間を区間2、第2予定通過位置P2と着地位置P3の間の区間を区間3とする。区間1の長さL1は、係数が求まった補間多項式の導関数のノルムを積分することにより求まる(数4)。なお、区間2の長さL2、区間3の長さL3も(数4)と同様に求められる。   Returning to FIG. 2, the description of the process of determining the foot trajectory will be continued. After determining the movement path Path, the robot 10 calculates the length of the movement path Path (S4 in FIG. 2). Specifically, the length of the movement path Path is obtained by integrating the norm of the derivative of the interpolation formula. This process will be specifically described. Hereinafter, for the sake of explanation, the section between the takeoff position P0 and the first planned passage position P1 is section 1, the section between the first planned passage position P1 and the second planned passage position P2 is section 2, and the second planned passage A section between the position P2 and the landing position P3 is referred to as a section 3. The length L1 of the section 1 is obtained by integrating the norm of the derivative of the interpolation polynomial whose coefficient is obtained (Equation 4). Note that the length L2 of the section 2 and the length L3 of the section 3 are also obtained in the same manner as (Expression 4).

Figure 2012024872
Figure 2012024872

上記L1(及びL2、L3)に関する積分計算を数値積分によって計算することによって各区間の足の移動経路の長さ(L1等)を算出することができる。数値積分は、台形則やシンプソン則など、公知の計算法を用いれば高速に計算できる。但し、積分刻み幅は先に計算したτ、τ、及び、τの間の間隔よりも十分小さい値を用いることが好ましい。上記の計算により、離地位置P0及び着地位置P3において速度がゼロとなる、かつ、全ての予定通過位置を通る滑らかな曲線(即ち、移動経路Path)の長さが得られる。 By calculating the integral calculation regarding L1 (and L2, L3) by numerical integration, it is possible to calculate the length (L1 etc.) of the foot movement path in each section. Numerical integration can be performed at high speed by using a known calculation method such as trapezoidal rule or Simpson rule. However, it is preferable to use a value that is sufficiently smaller than the interval between τ 1 , τ 2 , and τ 3 previously calculated for the integral step size. According to the above calculation, the length of the smooth curve (that is, the movement path Path) is obtained in which the speed becomes zero at the takeoff position P0 and the landing position P3 and passes through all the planned passing positions.

次にロボット10は、算出された移動経路Pathの長さ(経路長)を使って、一歩時間Tを算出する(図2、S5)。一歩時間Tとは、足が離地してから着地するまでの所要時間を意味する。ロボット10は、予め定められた足の平均移動速度vavと、経路長に基づいて離地タイミングから各予定通過位置点を通るまでの所要時間と着地までの所要時間を求める。そしてロボット10は、求められた移動経路Pathと各予定通過位置までの所要時間によって定まる軌道を足軌道として採用する(S9)。 Next, the robot 10 calculates the one-step time T using the calculated length (path length) of the movement path Path (S5 in FIG. 2). The one-step time T means a required time from the foot taking off until landing. The robot 10 obtains the required time from the takeoff timing to each scheduled passing position point and the required time to landing based on the predetermined average moving speed v av of the foot and the path length. Then, the robot 10 employs a trajectory determined by the determined moving path Path and the required time to each scheduled passing position as the foot trajectory (S9).

所要時間(一歩時間)の決定処理を具体的に説明する。一歩時間Tは、移動経路の長さに比例して長くなるように決定する。ここで、その比例定数として、足の平均移動速度vavを用いる。平均移動速度vavは、ロボット10のモータの最大出力などの物理的制約から予め定められている。第1予定通過位置P1を通過するタイミングt1、第2予定通過位置P2を通過するタイミングt2、及び、着地位置P3に到達するタイミング(即ち一歩時間T)は、次の(数5)で得られる。 The process for determining the required time (one step time) will be specifically described. The one-step time T is determined so as to increase in proportion to the length of the movement route. Here, the average moving speed v av of the foot is used as the proportionality constant. The average moving speed v av is determined in advance from physical restrictions such as the maximum output of the motor of the robot 10. The timing t1 for passing through the first scheduled passage position P1, the timing t2 for passing through the second scheduled passage position P2, and the timing for reaching the landing position P3 (ie, one step time T) are obtained by the following (Equation 5). .

Figure 2012024872
Figure 2012024872

(数5)から明らかなとおり、ロボット10は、移動経路の長さを足の平均移動速度vavで除した値を一歩時間として決定する。また、ロボット10は、離地位置P0から各予定通過位置までの移動経路の長さを足の平均移動速度vavで除した値を各予定通過位置の予定通過時刻として決定する As is clear from (Equation 5), the robot 10 determines a value obtained by dividing the length of the movement path by the average movement speed v av of the foot as one step time. In addition, the robot 10 determines a value obtained by dividing the length of the moving path from the takeoff position P0 to each planned passing position by the average foot movement speed v av as the planned passing time of each planned passing position.

最後に、ロボット10は、(数5)で得られた一歩時間Tが、予め定められた閾値Thより大きいか否かを判定する(図2、S6)。閾値Thは、定常歩行する際の一歩時間に相当する。一歩時間Tが閾値Thよりも小さい場合、ロボット10は、閾値Thを移動経路Pathの移動に要する所要時間として採用し(S7)、閾値Thよりも大きい場合はステップS5にて算出された一歩時間Tを所要時間として採用する(S8)。この処理は、算出された一歩時間Tが閾値Thより小さい場合、すなわち、離地位置P0から着地位置P3まで定常歩行時の一歩時間Thよりも早く移動することが可能な場合は、予め定められた時間Thで離地位置P0から着地位置P3まで移動するように定めることを意味する。他方、離地位置P0から着地位置P3まで定常歩行の一歩時間Thよりも長い時間をかけなければ移動することができない場合(この場合は、算出された移動経路Pathの長さが当初の予定長さよりも長い場合に相当する)、予め定められた一歩時間Thではなく、算出された一歩時間Tをかけて離地位置P0から着地位置P3まで移動するように定めることを意味する。   Finally, the robot 10 determines whether or not the one-step time T obtained in (Equation 5) is greater than a predetermined threshold Th (FIG. 2, S6). The threshold value Th is equivalent to one step time for steady walking. When the one-step time T is smaller than the threshold value Th, the robot 10 adopts the threshold value Th as a required time required for movement of the movement path Path (S7), and when the one-step time T is larger than the threshold value Th, the one-step time calculated in step S5. T is adopted as the required time (S8). This process is predetermined when the calculated one-step time T is smaller than the threshold Th, that is, when it is possible to move from the take-off position P0 to the landing position P3 earlier than the one-step time Th during normal walking. Means to move from the takeoff position P0 to the landing position P3 at the time Th. On the other hand, when it is not possible to move from the takeoff position P0 to the landing position P3 without taking a longer time than the one-step time Th of the normal walking (in this case, the calculated length of the movement path Path is the initial expected length) This corresponds to a case where the movement is determined from the take-off position P0 to the landing position P3 over the calculated one-step time T instead of the predetermined one-step time Th.

(数5)は、離地位置P0から着地位置P1へ足が移動するのに要する時間(一歩時間)を、移動経路Pathの長さに比例して定めることを意味している。その比例定数は足の平均移動速度vavの逆数で与えられる。こうして得られた移動経路Pathと各予定通過位置における通過時刻t1、t2、及び、Tが、遊脚の足の移動軌道として採用される。歩行時にはロボット10は、足が移動軌道に沿って移動するように各関節の角度の時系列データを生成し、各関節を制御する。 (Equation 5) means that the time required for the foot to move from the takeoff position P0 to the landing position P1 (one step time) is determined in proportion to the length of the movement path Path. The proportionality constant is given by the reciprocal of the average movement speed v av of the foot. The movement path Path thus obtained and the passage times t1, t2, and T at each scheduled passage position are employed as the movement trajectory of the leg of the free leg. During walking, the robot 10 generates time-series data of the angles of the joints so that the feet move along the movement trajectory, and controls the joints.

以上の処理によって、ロボット10は、遊脚の足の移動経路が長くなるほど、移動に要する時間を長く設定する。そのように設定することによって、ロボット10は、長い移動経路を過大な速度で移動しなければならない移動軌道が生成されることを回避する。すなわち、ロボット10は、脚の関節を駆動するアクチュエータの負荷が過大とならないように足の軌道を決定することができる。   Through the above processing, the robot 10 sets a longer time for the movement as the moving path of the leg of the free leg becomes longer. By setting in such a manner, the robot 10 avoids the generation of a moving trajectory that has to move along a long moving path at an excessive speed. That is, the robot 10 can determine the foot trajectory so that the load of the actuator that drives the joint of the leg is not excessive.

実施例の足軌道決定処理の留意点を述べる。図2のステップS2が予定通過位置設定ステップに相当する。図2のステップS3が補間ステップに相当する。図2のステップS4が積分計算ステップに相当する。図2のステップS2からS4までの処理が、経路決定ステップに相当する。図2のステップS5が一歩時間決定ステップに相当する。   Points to be noted in the foot trajectory determination process of the embodiment will be described. Step S2 in FIG. 2 corresponds to a scheduled passage position setting step. Step S3 in FIG. 2 corresponds to an interpolation step. Step S4 in FIG. 2 corresponds to an integration calculation step. The processing from step S2 to S4 in FIG. 2 corresponds to a route determination step. Step S5 in FIG. 2 corresponds to a one-step time determination step.

実施例では説明を簡単にするために足の移動経路をXZ平面に限定した。実際には移動経路Pathは3次元空間で定めることができることに留意されたい。また、上記説明した処理は、ロボット10の頭部12に内蔵されたコントローラが実行する。   In the embodiment, the leg movement path is limited to the XZ plane in order to simplify the explanation. It should be noted that the movement path Path can actually be determined in a three-dimensional space. Further, the above-described processing is executed by a controller built in the head 12 of the robot 10.

また、図1、図4では、足の先端に固定された点で足の位置を代表し、その足の代表位置が動く経路で足の移動経路を表した。足の位置を代表する点、足に固定された座標系上の点であれば任意に選定してよい。実施例では2個の予定通過位置P1、P2を仮定した。設定する予定通過位置の個数は2個より少なくてもよいし、2個より多くてもよい。   1 and 4, the position of the foot is represented by a point fixed to the tip of the foot, and the movement path of the foot is represented by a path along which the representative position of the foot moves. Any point may be selected as long as it is a point representing the position of the foot or a point on the coordinate system fixed to the foot. In the embodiment, two scheduled passage positions P1 and P2 are assumed. The number of scheduled passage positions to be set may be less than two or more than two.

実施例では、遊脚の足の移動経路Pathの長さに単純に比例して一歩時間Tを決定した。脚の関節に加わる負荷は、足の軌道の床面からの距離(高さ)に依存する。即ち、移動経路の高さが高いほど、脚の関節の負荷が大きくなる。そこで、各区間の長さを算出する際、次の(数6)で表されるように、足の位置のz方向に重みkzを加えることも好適である。   In the embodiment, the one-step time T is determined simply in proportion to the length of the leg movement path Path. The load applied to the leg joint depends on the distance (height) from the floor of the foot trajectory. That is, the higher the movement path, the greater the load on the leg joint. Therefore, when calculating the length of each section, it is also preferable to add a weight kz in the z direction of the foot position as represented by the following (Equation 6).

Figure 2012024872
Figure 2012024872

(数6)は、移動経路の各区間の実際の長さではなく、一歩時間を定めるための仮想的な区間長さを定める式である。(数4)に代えて(数6)を採用することによって、移動経路の高さが高いほど一歩時間(及び、各予定通過位置を通過するまでの時間)が長く設定される。   (Equation 6) is an expression for determining a virtual section length for determining one step time, not the actual length of each section of the movement route. By adopting (Equation 6) instead of (Equation 4), the one-step time (and the time until it passes through each scheduled passage position) is set longer as the height of the movement route is higher.

(数5)によって一歩時間を求める処理は、次のように表現することができる。即ち、一歩時間決定ステップは、所要時間決定ステップと足軌道決定ステップを含む。所要時間決定ステップは、予め定められた足の平均移動速度vavと移動経路Pathの長さに基づいて、離地タイミングから予定通過位置を通るまでの所要時間(t1、t2)と着地までの所要時間(T)を求める。足軌道決定ステップは、求められた移動経路Pathと各予定通過位置までの所要時間(t1、t2、T)によって定まる軌道を足軌道として採用する。 The process for obtaining the one-step time according to (Equation 5) can be expressed as follows. That is, the one-step time determination step includes a required time determination step and a foot trajectory determination step. The required time determining step is based on the predetermined average moving speed v av of the foot and the length of the moving path Path, and the required time (t1, t2) from the take-off timing to the scheduled passing position and the landing The required time (T) is obtained. In the foot trajectory determination step, a trajectory determined by the determined travel route Path and the required time (t1, t2, T) to each planned passing position is adopted as the foot trajectory.

以上、本発明の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。   Specific examples of the present invention have been described in detail above, but these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes of the specific examples illustrated above. The technical elements described in this specification or the drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. In addition, the technology exemplified in this specification or the drawings can achieve a plurality of objects at the same time, and has technical usefulness by achieving one of the objects.

10:脚式歩行ロボット
12:頭部
14:体幹
16R、16L:脚
10: Legged walking robot 12: Head 14: Trunk 16R, 16L: Leg

Claims (4)

脚式歩行ロボットの足軌道の決定方法であり、
足の離地位置から着地位置に至る足の移動経路を決定する経路決定ステップと、
足が離地してから着地するまでに要する一歩時間として、移動経路の長さを予め定められた足の平均移動速度で除した値を求める一歩時間決定ステップと、
を備えることを特徴とする足軌道決定方法。
It is a method for determining the leg trajectory of a legged walking robot,
A route determining step for determining a moving route of the foot from the foot landing position to the landing position;
One step time determination step for obtaining a value obtained by dividing the length of the moving route by a predetermined average moving speed of the foot as a step time required for the foot to take off after landing.
A foot trajectory determination method comprising:
前記経路決定ステップは、
離地位置から着地位置に至る間に足が通過すべき予定通過位置を設定する通過位置設定ステップと、
離地位置から予定通過位置を通り着地位置に至る移動経路を、変数τの補間式によって求める補間ステップと、
前記補間式の導関数のノルムを積分することによって移動経路の長さを求める積分計算ステップと、
を含んでおり、
補間ステップは、変数τが特定値をとるときに補間式の値が予定通過位置に相当することを拘束条件として設定した後に、前記拘束条件を満たすように補間式の係数を決定することを特徴とする請求項1に記載の足軌道決定方法。
The route determining step includes:
A passing position setting step for setting a planned passing position where the foot should pass between the takeoff position and the landing position;
An interpolation step for obtaining a movement route from the takeoff position through the planned passing position to the landing position by an interpolation formula of the variable τ,
An integration calculation step of obtaining the length of the movement path by integrating the norm of the derivative of the interpolation formula;
Contains
In the interpolation step, after setting as a constraint condition that the value of the interpolation equation corresponds to the expected passing position when the variable τ takes a specific value, a coefficient of the interpolation equation is determined so as to satisfy the constraint condition. The foot trajectory determination method according to claim 1.
補間ステップは、離地位置から予定通過順に予定通過位置を結び着地位置に至る折れ線の各線分の距離を求め、離地位置から各位置までの線分の距離の部分和と、離地位置から着地位置までの線分の距離の総和との比に応じて各位置における前記特定値を定めることを特徴とする請求項2に記載の軌道決定方法。   The interpolation step calculates the distance of each line segment of the broken line connecting the planned passing position to the landing position in the order of planned passing from the takeoff position, and calculates the partial sum of the distance of the line segment from the takeoff position to each position and the takeoff position. The trajectory determination method according to claim 2, wherein the specific value at each position is determined according to a ratio to a sum of distances of line segments to the landing position. 前記請求項1から3のいずれか1項の軌道決定方法を実行するコントローラを備えた脚式歩行ロボット。   A legged walking robot comprising a controller for executing the trajectory determination method according to any one of claims 1 to 3.
JP2010164924A 2010-07-22 2010-07-22 Legged walking robot and method for determining foot trajectory of the same Pending JP2012024872A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010164924A JP2012024872A (en) 2010-07-22 2010-07-22 Legged walking robot and method for determining foot trajectory of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010164924A JP2012024872A (en) 2010-07-22 2010-07-22 Legged walking robot and method for determining foot trajectory of the same

Publications (1)

Publication Number Publication Date
JP2012024872A true JP2012024872A (en) 2012-02-09

Family

ID=45778445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010164924A Pending JP2012024872A (en) 2010-07-22 2010-07-22 Legged walking robot and method for determining foot trajectory of the same

Country Status (1)

Country Link
JP (1) JP2012024872A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745110B1 (en) * 2015-07-14 2017-06-21 현대자동차주식회사 Method and system for controlling walking of wearable robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101745110B1 (en) * 2015-07-14 2017-06-21 현대자동차주식회사 Method and system for controlling walking of wearable robot

Similar Documents

Publication Publication Date Title
CN111913490B (en) Four-foot robot dynamic gait stability control method and system based on foot falling adjustment
KR101867793B1 (en) Walking control method and device of biped robot
JP4548135B2 (en) Legged robot and its control method
CN103003031B (en) Biped walking robot and method of determining the foot-landing timing for the biped walking robot
JP4812426B2 (en) Robot controller
CN101943912B (en) A kind of control method eliminating upper body posture shaking of double-foot humanoid robot
KR101234726B1 (en) Legged mobile robot and control program for the robot
WO2004041484A1 (en) Robot device, motion control device for robot device and motion control method
WO2003061917A1 (en) Controller of legged mobile robot
JPWO2003057430A1 (en) Gait generator and controller for legged mobile robot
JP2004167666A (en) Robot device and action control method used for the same
JP4492395B2 (en) Legged robot and its motion control method
JP2009053926A (en) Route-planning device and route-planning method
US20070267994A1 (en) Legged Robot, Method for Controlling Legged Robot, and Device and Method for Generating Gait Data
CN101068662B (en) Legged mobile robot and control method
CN108089583B (en) Method and device for motion transition of multi-legged robot
KR101493385B1 (en) robot and walking control apparatus and method thereof
JP6781101B2 (en) Non-linear system control method, biped robot control device, biped robot control method and its program
US9802315B2 (en) Controller for mobile robot
JP2012024872A (en) Legged walking robot and method for determining foot trajectory of the same
JP2009214255A (en) Leg type robot and its control method
KR20080001228A (en) Method of stair walking for biped robots
JP5035005B2 (en) Legged robot, its control method, and its control system
CN113771046A (en) Method for planning swing track of minimum Jerk index
JP5440152B2 (en) Legged robot and gait data generation method for it