KR100873107B1 - Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots - Google Patents
Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots Download PDFInfo
- Publication number
- KR100873107B1 KR100873107B1 KR1020070009361A KR20070009361A KR100873107B1 KR 100873107 B1 KR100873107 B1 KR 100873107B1 KR 1020070009361 A KR1020070009361 A KR 1020070009361A KR 20070009361 A KR20070009361 A KR 20070009361A KR 100873107 B1 KR100873107 B1 KR 100873107B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- state
- gait
- function
- zmp
- Prior art date
Links
- 230000005021 gait Effects 0.000 claims abstract description 66
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000012885 constant function Methods 0.000 claims description 16
- 230000005484 gravity Effects 0.000 claims description 8
- 230000001133 acceleration Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
- B62D57/032—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members with alternately or sequentially lifted supporting base and legs; with alternately or sequentially lifted feet or skid
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/1633—Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Manipulator (AREA)
Abstract
본 발명은 로봇(robot)의 제어에 관한 것으로 특히, 역진자 모델을 이용한 실시간으로 이종 보행 로봇의 걸음새를 생성하는 방법에 관한 것이다. The present invention relates to the control of a robot, and more particularly, to a method for generating a gait of a heterogeneous walking robot in real time using an inverted pendulum model.
본 발명에 의한 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간 ZMP(zero moment point)조작법은 로봇의 동역학적 모델을 역진자로 가정하여 이족 보행 로봇의 걸음새를 생성하는 방법으로, 현재 로봇의 걸음 상태를 역진자의 위치 및 속도로 정의하고 ZMP(zero moment point) 함수를 이용하여 현재의 걸음 상태로부터 가능한 걸음 상태 영역을 도출하는 단계; 현재의 보폭과 속도로부터 입력받은 원하는 걸음 상태가 상기 가능한 걸음 상태 영역에 포함되는지 판단하는 단계; 판단 결과, 가능한 걸음 상태 영역에 포함되는 경우, ZMP 조작을 위해 현재 로봇의 걸음 상태와 원하는 걸음 상태로부터 ZMP 함수의 제어 변수들을 결정하는 단계; 및 제어 변수들을 적용한 연산을 수행하여 임의의 시간에서 로봇의 걸음 상태를 구하고 상기 얻어진 걸음 상태로부터 로봇의 걸음새를 구하는 단계를 구비하는 것을 특징으로 하는 것을 특징으로 한다. The real-time ZMP (zero moment point) manipulation method for generating a modifiable gait of a biped walking robot according to the present invention is a method of generating a gait of a biped walking robot by assuming a dynamic model of the robot as an inverted pendulum. Defining the position and velocity of the inverse pendulum and deriving a possible gait state region from the current gait state using a zero moment point (ZMP) function; Determining whether a desired gait state received from a current stride and speed is included in the possible gait state area; Determining the control variables of the ZMP function from the gait state of the current robot and the desired gait state for the ZMP manipulation when it is included in the possible gait state area; And calculating a gait state of the robot at any time by performing an operation applying control variables, and obtaining the gait of the robot from the obtained gait state.
이족 보행 로봇, 걸음새, 역진자, ZMP(zero moment point), 제어변수 Biped walking robot, step, inverted pendulum, ZMP (zero moment point), control variable
Description
도 1은 본 발명에 사용된 이족 보행 로봇의 역진자 모델을 도시한 것이다. 1 illustrates an inverted pendulum model of a biped walking robot used in the present invention.
도 2는 본 발명에 의한 실시간 ZMP 조작법의 바람직한 일 실시 예를 설명하기 위한 플로우차트이다. 2 is a flowchart for explaining a preferred embodiment of a real-time ZMP operation method according to the present invention.
도 3은 로봇의 걸음 상태를 바꾸기 위하여 제안된 ZMP 함수를 좌표축 상에 도시한 것이다. Figure 3 shows the proposed ZMP function on the coordinate axis to change the walking state of the robot.
도 4는 본 발명에 적용되는 로봇의 발바닥 모델을 도시한 것이다. Figure 4 shows the sole model of the robot applied to the present invention.
도 5는 현재의 걸음 상태로부터 다음 걸음 상태로의 전이를 설명하기 위해 나타낸 것이다. 5 is shown to explain the transition from the current step state to the next step state.
도 6은 원하는 걸음 상태가 불가능한 영역에 있는 경우, ZMP 조작을 설명하기 위한 도면이다FIG. 6 is a diagram for explaining a ZMP operation when it is in an area where a desired walking state is impossible.
<도면의 주요 부분의 부호에 대한 설명><Description of Signs of Major Parts of Drawings>
10: 로봇의 무게 중심(질점) 40: 안정 마진 영역10: center of gravity of robot (quality point) 40: stable margin area
45: 안전 영역 54: 초기 걸음 상태45: safety zone 54: initial steps
55: 불가능 영역에 위치한 나중 걸음 상태55: Later steps in the impossible zone
56: 가능 영역에 위치한 나중 걸음 상태56: Later steps in the possible zone
57: 가능 영역 58: 불가능 영역57: possible area 58: impossible area
본 발명은 로봇(robot)의 제어에 관한 것으로 특히, 역진자 모델을 이용한 실시간으로 이종 보행 로봇의 걸음새를 생성하는 방법에 관한 것이다. The present invention relates to the control of a robot, and more particularly, to a method for generating a gait of a heterogeneous walking robot in real time using an inverted pendulum model.
이족보행로봇은 스스로 움직여야 하므로 많은 기술을 요하고 있으며, 특히 두 다리를 이용하여 직립하여야 하므로 자세 제어에 대해서 상당한 기술을 필요로 한다.Biped robots require a lot of skills because they have to move on their own, especially because they need to be upright with both legs.
일반적으로 이종 보행 로봇의 걸음새는 크게 다음과 같은 두 가지 방법으로 생성된다. In general, the gait of a heterogeneous walking robot is largely generated by the following two methods.
1. 로봇을 간단한 모델(역진자)로 근사화하는 방법.1. How to approximate a robot to a simple model (inverted pendulum).
2. 로봇의 전체적인 동역학 정보를 모두 사용하는 방법. 2. How to use all of the robot's overall dynamics information.
그러나 기존의 역진자 방법은 보행 중 로봇의 ZMP가 항상 발목의 중심에 위치하도록 이루어져 있다. 따라서 이 방법에서는 역진자의 위치에 따라 속도가 결정되므로 로봇의 보폭과 속도를 한꺼번에 원하는 값으로 바꿀 수 없다는 문제점이 있다. However, the conventional inverted pendulum method is such that the ZMP of the robot is always located at the center of the ankle while walking. Therefore, in this method, since the speed is determined according to the position of the inverted pendulum, there is a problem that the stride length and speed of the robot cannot be changed to the desired value at once.
상기한 문제를 해결하기 위한 본 발명은 로봇을 역진자로 근사화한 기존의 방법을 일반화시켜 기존에는 자유로운 보행 방법을 제시하는 것을 목적으로 한다. The present invention for solving the above problems is to generalize the existing method of approximating the robot to an inverted pendulum, and to present a free walking method.
또한, 로봇에게 주어진 보폭과 보행 속도가 가능한 것인지를 판단하고 가능한 경우 ZMP 조작을 통하여 한걸음 만에 원하는 걸음 상태에 도달하는 방법을 제공하는 것을 목적으로 한다. In addition, the object of the present invention is to determine whether a given stride length and walking speed are possible, and to provide a method of reaching a desired step state in one step through a ZMP operation if possible.
또한, 로봇에게 주어진 보폭과 보행 속도가 가능하지 않은 경우에도 ZMP 조작을 통하여 가장 근접한 상태에 도달하는 방법을 제공하는 것을 목적으로 한다. It is also an object of the present invention to provide a method of reaching the closest state through a ZMP operation even when a given stride and walking speed are not possible.
상기한 본 발명의 기술적 과제를 이루기 위한 본 발명에 의한 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간 조정법은, 로봇의 동역학적 모델을 역진자로 가정하여 이족 보행 로봇의 걸음새를 생성하는 방법으로, (a) 현재 로봇의 걸음 상태를 역진자의 위치 및 속도로 정의하고 ZMP(zero moment point) 함수를 이용하여 현재의 걸음 상태로부터 가능한 걸음 상태 영역을 도출하는 단계; (b) 현재의 보폭과 속도로부터 입력받은 원하는 걸음 상태가 상기 가능한 걸음 상태 영역에 포함되는지 판단하는 단계; (c) 상기 (b) 단계의 판단 결과, 가능한 걸음 상태 영역에 포함되는 경우, ZMP 조작을 위해 현재 로봇의 걸음 상태와 원하는 걸음 상태로부터 ZMP 함수의 제어 변수들을 결정하는 단계; 및 (d) 상기 제어 변수들을 적용한 연산을 수행하여 임의의 시간에서 로봇의 걸음 상태를 구하고 상기 얻어진 걸음 상태로부터 로봇의 걸음새를 구하는 단계를 구비하는 것을 특징으로 하는 것을 특징으로 한다. The real-time adjustment method for the generation of a modifiable gait of the biped walking robot according to the present invention for achieving the technical problem of the present invention, a method of generating a gait of the biped walking robot assuming a dynamic model of the robot as an inverted pendulum, ( a) defining the walking state of the current robot as the position and velocity of the inverted pendulum and deriving a possible walking state area from the current walking state using a zero moment point (ZMP) function; (b) determining whether a desired gait state received from a current stride and speed is included in the possible gait state area; (c) determining the control variables of the ZMP function from the gait state of the current robot and the desired gait state for the ZMP operation when it is included in the possible gait state area as a result of the determination of step (b); And (d) calculating a step of the robot at any time by performing an operation applying the control variables and obtaining a step of the robot from the obtained step.
상기 (d) 단계에 있어서, 임의의 시간에서의 로봇의 걸음 상태는 운동 방정 식으로 수학식 및 In the step (d), the walking state of the robot at any time is expressed by the equation of motion And
의 연산을 통하여 결정하는 것을 특징으로 할 수 있다(여기서 xi 와 xf는 정면 진행 방향의 초기 위치 및 나중 위치, vi 와 vf 는 정면 진행 방향의 초기 속력, yi 와 yf는 측면 진행 방향의 초기 위치 및 나중 위치, wi 와 wf 는 측면 진행 방향의 초기 속력, St 와 Ct는 각각 sinh(t/TC) 및 cosh(t/TC)이며, (Zc는 무게 중심의 높이, g는 중력가속도)는 시정수이며, p(t)와 q(t)는 각각 진행 방향과 측면방향의 ZMP 궤적을 나타내는 ZMP 함수이며, , 이다). It can be characterized by the operation of (where x i And x f are the initial and later positions in the front advancing direction, v i With v f Is the initial velocity in the heading direction, y i And y f are the initial and later positions in the lateral travel direction, w i With w f Is the initial velocity in the lateral direction of travel, S t And C t are sinh (t / T C ) and cosh (t / T C ), respectively (Z c is the height of the center of gravity, g is the acceleration of gravity) is a time constant, and p (t) and q (t) are ZMP functions representing the ZMP trajectory in the traveling and lateral directions, respectively. , to be).
상기 로봇의 움직임을 제어하기 위해 ZMP(zero moment point) 함수로 닫힌 형태의 함수(closed form function)를 사용하는 것을 특징으로 할 수 있다. In order to control the movement of the robot, it may be characterized by using a closed form function as a zero moment point (ZMP) function.
상기 로봇의 정면 진행 방향으로의 움직임을 제어하기 위해 상기 닫힌 형태의 함수로서 함수로 상수 함수를 사용하고, 상기 상수 함수의 크기를 제어 변수로 하는 것을 특징으로 할 수 있다. In order to control the movement in the front direction of the robot, a constant function may be used as a function as the closed type function, and the magnitude of the constant function may be used as a control variable.
상기 로봇의 측면 진행 방향으로의 움직임을 제어하기 위해 상기 닫힌 형태의 함수로서 계단 함수를 사용하고, 계단 함수의 크기, 상기 계단 함수의 함수값이 바뀌는 시간 및 한걸음 시간을 제어 변수로 하는 것을 특징으로 할 수 있다. In order to control the movement in the lateral direction of the robot, a step function is used as a function of the closed form, and the control variables are the size of the step function, the time at which the function value of the step function changes, and the step time. can do.
상기 (a) 단계는 ZMP(zero moment point)의 궤적을 상수 함수(정면 진행방향의 경우)나 계단 함수(측면 진행방향의 경우)로 놓은 후 이의 조작으로부터 생성 가능한 모든 걸음 상태의 집합을 폐영역으로 도출하는 것을 특징으로 할 수 있다. In the step (a), the trajectory of the zero moment point (ZMP) is set as a constant function (in the case of the forward direction) or a step function (in the case of the side direction). It can be characterized as derived.
상기 (b) 단계의 판단 결과, 가능한 걸음 상태 영역에 포함되지 않은 경우, ZMP(zero moment point)조작을 위해 현재 로봇의 걸음 상태와 원하는 걸음 상태로부터 ZMP(zero moment point) 함수의 제어 변수들을 결정하는 단계; 및 상기 제어 변수들을 적용하여 임의의 시간에서 로봇의 걸음 상태가 상기 가능한 걸음 상태 영역에 근접하도록 ZMP를 조작하여 걸음새를 구하는 단계를 더 구비하는 것을 특징으로 할 수 있다. As a result of the determination of step (b), if it is not included in the possible step state area, the control variables of the ZMP (zero moment point) function are determined from the step state of the current robot and the desired step state for the operation of ZMP (zero moment point). Doing; And applying the control variables to obtain a gait by manipulating the ZMP so that the gait state of the robot is close to the possible gait state area at any time.
상기 원하는 걸음 상태가 가능한 걸음 상태 영역에 포함되지 않는 경우, 상기 원하는 걸음 상태 영역과 상기 가능한 걸음 상태 영역 간 차이가 최소가 되는 지점을 원하는 걸음 상태로 바꾸어 ZMP 조작을 하는 것을 특징으로 할 수 있다. When the desired gait state is not included in the possible gait state area, ZMP manipulation may be performed by changing a point where the difference between the desired gait state area and the possible gait state area is minimized to a desired gait state.
상기 ZMP 함수의 제어변수에 대응하는 로봇의 움직임에 따른 토크를 제어변수로 선택하여 조작하는 특징으로 할 수 있다. The torque according to the movement of the robot corresponding to the control variable of the ZMP function may be selected and manipulated as a control variable.
이하, 본 발명의 구성 및 작용을 첨부한 도면을 참조하여 상세히 설명한다. 각 도면에 도시된 동일한 참조 부호는 동일한 기능을 수행하는 구성 요소를 의미한다. Hereinafter, with reference to the accompanying drawings, the configuration and operation of the present invention will be described in detail. Like reference numerals in the drawings denote components that perform the same function.
도 1은 본 발명에 사용된 이족 보행 로봇의 역진자 모델을 도시한 것이다. 로봇의 무게를 하나의 질점으로 가정하였으며 로봇의 다리는 질량이 없는 telescopic leg로 가정을 하였다. 1 illustrates an inverted pendulum model of a biped walking robot used in the present invention. The weight of the robot is assumed to be one point and the leg of the robot is assumed to be a telescopic leg with no mass.
본 발명에서는 보행 로봇의 걸음새(각 관절의 궤적)를 생성하는 데 있어, 로봇을 역진자로 모델링하여 얻어진 운동 방정식을 이용한다. 이와 같이 로봇의 무게 중심(10)과 동일한 위치에 동일한 질량을 질점으로 갖는 역진자를 생각함으로써 운동 방정식을 간략화시킬 수 있다. 또한, 역진자 모델을 사용함으로써 로봇의 운동 방정식을 진행 방향과 측면 방향으로 각각 분리하여 사용할 수 있게 된다. In the present invention, the motion equations obtained by modeling the robot with an inverted pendulum are used to generate the gait (track of each joint) of the walking robot. In this way, the equation of motion can be simplified by considering an inverted pendulum having the same mass as the mass at the same position as the center of
기존에 사용되던 역진자 방법은 계산의 편의 및 구현의 용이함을 위하여 운동 방정식에서 ZMP 함수의 궤적인 p(t) 및 q(t)를 0으로 놓고 사용하였다. 따라서 시간 t이후 로봇의 걸음 상태인 (xf, vf)과 (yf, wf)에만 의존하게 된다. 그러므로 원하는 걸음 상태가 입력으로 들어와도 로봇의 걸음 상태를 자유롭게 변화시킬 수 없다는 단점이 있다. In the conventional inverted pendulum method, the locus p (t) and q (t) of the ZMP function are set to 0 in the equation of motion for convenience of calculation and ease of implementation. Therefore, after time t, it depends only on the robot's walking states (x f , v f ) and (y f , w f ). Therefore, there is a disadvantage in that even if the desired walking state enters as an input, the walking state of the robot cannot be changed freely.
그러나 본원 발명에서는 ZMP 함수를 닫힌 형태의 함수(closed form function) 예컨대, p(t)를 상수 함수, q(t)를 계단 함수로 놓고 사용하기 때문에, 원하는 걸음 상태가 들어왔을 경우 상수 함수와 계단함수의 제어 변수를 적절히 선택함으로써 원하는 걸음 상태가 가능하도록 만들어 준다. 이러한 ZMP 궤적을 바꾸는 방법이 ZMP 조작법이며 일반적인 역진자 방법의 확장된 형태이다. However, in the present invention, since the ZMP function is used with a closed form function such as p (t) as a constant function and q (t) as a step function, the constant function and the step when the desired step state is entered. By properly selecting the control variables in the function, you make the desired walking state possible. The method of changing the ZMP trajectory is ZMP manipulation and is an extended form of the general inverted pendulum method.
한편, 본 발명은 ZMP 함수를 이용하여 조작할 수도 있지만, 상기 ZMP 함수에 대응하는 물리량을 선택하여 동일한 효과를 갖는 조작을 할 수 있다. 예컨대, 로봇이 이동을 하는 경우에 그에 회전에 따른 토크 값이 변화하는데, 이 토크 값을 제어변수로 하여 로봇을 조작할 수도 있다. On the other hand, although the present invention can be operated using the ZMP function, the operation having the same effect can be performed by selecting the physical quantity corresponding to the ZMP function. For example, when the robot moves, the torque value according to the rotation changes, and the robot may be operated using the torque value as a control variable.
도 2는 본 발명에 의한 실시간 ZMP 조작법의 바람직한 일 실시 예를 설명하기 위한 플로우차트로, 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간 조정법의 흐름을 나타낸다. FIG. 2 is a flowchart illustrating a preferred embodiment of a real-time ZMP manipulation method according to the present invention, and illustrates a flow of a real-time adjustment method for generating a modifiable gait of a biped walking robot.
먼저, 현재 로봇의 걸음 상태를 역진자의 위치 및 속도로 정의하고 ZMP 함수를 이용하여 현재의 걸음 상태로부터 가능한 걸음 상태 영역을 도출한다(S100). First, the step state of the current robot is defined as the position and speed of the inverted pendulum, and a possible step state area is derived from the current step state using the ZMP function (S100).
이 경우, ZMP 함수로 닫힌 형태의 함수(closed form function)로 상수 함수와 계단 함수를 사용할 수 있다(도 3 참조). 상수함수는 로봇의 정면 진행 방향으로의 움직임을 제어하기 위해 사용하며, 계단 함수는 로봇의 측면 진행 방향으로의 움직임을 제어하기 위해 사용된다.In this case, the constant function and the step function may be used as a closed form function with the ZMP function (see FIG. 3). The constant function is used to control the movement in the front direction of the robot, and the step function is used to control the movement in the lateral direction of the robot.
S100 단계는 ZMP(zero moment point)의 궤적을 닫힌 형태의 함수의 궤적을 상수 함수(정면 진행방향의 경우)나 계단 함수(측면 진행방향의 경우)로 놓은 후 이의 조작으로부터 생성 가능한 모든 걸음 상태의 집합을 폐영역으로 도출할 수 있다. 즉, 운동 방향에 따라서 ZMP의 함수 궤적이 변할 수 있는 최소 및 최대의 영역이 폐 영역으로 도출된다. In step S100, the trajectory of the ZMP (zero moment point) is placed in the closed function trajectory as a constant function (in the front direction) or a step function (in the side direction), and then all the steps that can be generated from the manipulation thereof. The set can be derived into the closed region. In other words, the minimum and maximum regions in which the ZMP's function trajectory can be changed depending on the direction of motion are derived to the closed region.
그리고 도출된 영역을 가능한 모든 걸음 상태의 영역으로 지정할 수 있다. The derived area can be designated as an area of all possible steps.
다음에, 현재의 보폭과 속도로부터 입력받은 원하는 걸음 상태가 S100 단계에서 도출된 가능한 걸음 상태 영역에 포함되는지 판단한다(S102). Next, it is determined whether the desired gait state input from the current stride and speed is included in the possible gait state area derived in step S100 (S102).
다음에, S102 단계의 판단 결과 원하는 걸음 상태가 가능한 걸음 상태 영역에 포함되는 경우 ZMP 조작을 위해 ZMP 함수의 제어 변수들을 결정한다(S104). 이 제어 변수들은 운동 방정식의 연산을 위한 변수로서의 역할을 하며, 현재 로봇의 걸음 상태와 원하는 걸음 상태로부터 결정하게 된다(도 3 참조). Next, when the desired step state is included in the possible step state area as a result of the determination of step S102, control variables of the ZMP function are determined for the ZMP operation (S104). These control variables serve as variables for the calculation of the equation of motion, and are determined from the current walking state and the desired walking state of the robot (see FIG. 3).
다음에, S104 단계에서 얻은 제어 변수를 운동 방정식에 적용시켜 임의의 시간에 로봇의 걸음 상태를 구하고 얻어진 걸음 상태로부터 로봇의 걸음새를 구한다(S106) 이때, 로봇의 정면 진행 방향으로의 운동 방정식은 수학식 1을 이용하고, 측면 방향으로의 운동방정식은 수학식 2를 이용한다. Next, the control variables obtained in the step S104 are applied to the motion equation to obtain the step of the robot at any time, and the step of the robot is obtained from the step of the obtained step (S106). Equation 1 is used, and the equation of motion in the lateral direction uses Equation 2.
여기서 xi 와 xf는 정면 진행 방향의 초기 위치 및 나중 위치 및 vi 와 vf 는 정면 진행 방향의 초기 속력 및 나중 속력이며, yi 와 yf는 측면 진행 방향의 초기 위치 및 나중 위치 및 wi 와 wf 는 측면 진행 방향의 초기 속력 및 나중 속력이다. Where x i and x f are the initial and later positions in the forward travel direction and v i and v f are the initial and later speeds in the forward travel direction, and y i and y f are the initial and later locations in the lateral travel direction and w i and w f are the initial and later speeds in the lateral direction of travel.
St 와 Ct는 각각 sinh(t/TC) 및 cosh(t/TC)이며, (Zc는 무게 중심의 높이, g는 중력가속도)는 시정수이다. S t And C t are sinh (t / T C ) and cosh (t / T C ), respectively (Z c is the center of gravity height, g is the acceleration of gravity) is the time constant.
p(t)와 q(t)는 각각 진행 방향과 측면방향의 ZMP 궤적을 나타내는 ZMP 함수이며, , 이다.
또한, T는 초기 상태에서 나중 상태로 가는데 걸리는 시간이고, t는 적분 변수이다.p (t) and q (t) are ZMP functions representing ZMP trajectories in the traveling and lateral directions, respectively. , to be.
Also, T is the time taken from the initial state to the later state, and t is the integral variable.
한편, S102 단계의 판단 결과 가능한 결음 상태 영역에 포함되지 않은 경우에는 ZMP 조작을 위해 ZMP함수의 변수를 제어함으로써 로봇의 걸음 상태가 가능한 걸음 상태 영역에 근접하도록 걸음새를 구한다(S108). On the other hand, when the determination result of step S102 is not included in the possible sound state state, the gait is calculated so that the walking state of the robot is close to the possible gait state area by controlling the variable of the ZMP function for ZMP operation (S108).
이하, 도 3 내지 도 4를 통하여 본 발명의 구체적인 적용 예를 더욱 상세하게 설명하기로 한다. Hereinafter, specific application examples of the present invention will be described in more detail with reference to FIGS. 3 to 4.
본 발명에 의해 제안된 ZMP 함수는 일정한 주기(T) 안에서 닫힌 함수를 사용할 수 있는 데, 도 3은 로봇의 걸음 상태를 바꾸기 위하여 제안된 ZMP 함수를 좌표축 상에 도시한 것으로 (a)는 상수함수를 (b)는 계단함수를 나타낸다. The ZMP function proposed by the present invention can use a closed function in a constant period T. FIG. 3 shows a proposed ZMP function on a coordinate axis in order to change the walking state of the robot, and (a) is a constant function. (B) denotes a step function.
즉, 본 발명은 상수 함수나 계단 함수뿐만 아니라, 특정 함수 예컨대, ax2+bx+c, sin(ax+b), cos(ax+b) 등과 같은 닫힌 형태의 함수로 하여 ZMP를 조작하는 방법을 제안하는 것이다. That is, the present invention is not only a constant function or a step function, but also a method for manipulating ZMP as a specific function such as ax 2 + bx + c, sin (ax + b), cos (ax + b), etc. Is to suggest.
여기서 일정한 주기(T)는 로봇의 한걸음 시간을 말하는 것으로 정확히 로봇이 한 다리로 서 있는 시간을 의미한다. 이하, 상수함수와 계단함수를 일 예로 들어 본 발명의 실시 예를 구체적으로 설명하기로 한다. Here, the constant period (T) refers to the time of one step of the robot, which means the time when the robot is standing on one leg. Hereinafter, an embodiment of the present invention will be described in detail with reference to the constant function and the step function.
(a)에 도시된 상수 함수는 로봇의 정면 진행 방향으로의 움직임을 제어하기 위하여 사용되며 (b)에 도시된 계단함수는 로봇의 측면 진행 방향으로의 움직임을 제어하기 위하여 사용된다. The constant function shown in (a) is used to control the movement in the forward direction of the robot, and the step function shown in (b) is used to control the movement in the lateral direction of the robot.
원하는 걸음 상태가 입력되었을 때 상수 함수의 크기(P)와 계단 함수의 크기(Q) 및 계단 함수의 함수 값이 바뀌는 시간(Tsw) 그리고 주기(T) 값을 제어 변수 로 갖게 되며, 현재 로봇의 걸음 상태와 원하는 걸음 상태로부터 제어 변수를 결정할 수 있게 된다. When the desired step state is entered, the control variables include the size of the constant function (P), the size of the step function (Q), the time when the function value of the step function changes (T sw ), and the period (T). It is possible to determine the control variable from the step state and the desired step state of.
결정된 제어 변수를 상기 수학식 1 및 수학식 2에 적용하여 임의의 시간 t에서 로봇의 걸음 상태를 얻을 수 있으며 얻어진 걸음 상태로부터 역기구학 식을 통하여 로봇의 걸음새를 실시간으로 구할 수 있다. By applying the determined control variable to Equation 1 and Equation 2, it is possible to obtain the gait state of the robot at any time t, and the gait of the robot can be obtained in real time through the inverse kinematic equation from the obtained gait state.
도 4는 본 발명에 적용되는 로봇의 발바닥 모델을 도시한 것이다. 로봇이 안정적인 보행을 하기 위해서는 보행 중 ZMP의 궤적이 항상 발바닥 영역 안쪽에 위치하여야 한다. 본 발명에서는 안정 마진 영역(40)을 두어 ZMP가 항상 안정 영역(45) 안에서만 변화하도록 ZMP 궤적의 최대 변화량을 제한하였다(Pmax, Pmin, Qmax , Qmin).Figure 4 shows the sole model of the robot applied to the present invention. In order for the robot to walk stably, the ZMP trajectory should always be located inside the sole area during walking. In the present invention, the
도 5는 현재의 걸음 상태(54)로부터 다음 걸음 상태로의 전이를 설명하기 위해 나타낸 것으로, 도 1에서 제안한 ZMP 함수와 도 4에서 제한한 최대값을 바탕으로 로봇의 현재 걸음 상태(54)에서 가능한 다음 걸음 상태의 최대 영역(57)을 도시한 것이다. FIG. 5 is a diagram illustrating the transition from the
물리적으로 발바닥의 크기는 제한되어 있으며 ZMP가 변할 수 있는 최대값과 최소값은 도 4에 의해 결정되어 있다. 따라서 제안된 ZMP 함수를 이용하여 만들 수 있는 걸음 상태는 제한되어 있으며 도 5와 같은 폐 영역으로 주어진다. Physically, the size of the sole is limited and the maximum and minimum values that the ZMP can change are determined by FIG. 4. Therefore, the step state that can be made using the proposed ZMP function is limited and is given to the closed region as shown in FIG. 5.
원하는 걸음 상태가 가능 영역(57) 안쪽에 놓이는 경우, 가능 영역에 위치한 나중 걸음 상태(56)를 위해 제안된 ZMP 함수를 이용하여 걸음 상태를 바꿀 수 있기 때문에 원하는 걸음 상태가 가능한지의 여부를 판단하는 지표로 사용된다. If the desired gait state is placed inside the
또한, 원하는 걸음 상태가 불가능 영역(58)에 놓이는 경우, 불가능 영역에 위치한 나중 걸음 상태(55)가 가능 영역에 근접하도록 ZMP 함수를 제어할 수 있다. In addition, if the desired gait state is placed in the
도 6은 원하는 걸음 상태가 불가능한 영역(62)에 있는 경우, ZMP 조작을 설명하기 위한 도면이다. 도 6에 의하면 원하는 걸음 상태(59)가 가능한 걸음 상태 영역(61)에 포함되지 않을 경우에는 둘 사이의 차이가 최소가 되는 지점(60: 가능한 걸음 상태 영역 위에 존재)을 원하는 걸음 상태로 바꾸어 ZMP를 조작하게 된다.FIG. 6 is a diagram for explaining a ZMP operation when it is in the area 62 where the desired walking state is impossible. According to FIG. 6, when the desired walking
이때 수정된 걸음 상태는 가능 영역의 경계에 존재하며 수학식 3이 최소가 되도록 를 결정하고, 이를 수정된 걸음 상태로 정한다. 여기서 은 원하는 걸음 상태( )와 수정된 원하는 걸음 상태( ) 차이에 가중치 벡터( ㆍ2×1)를 곱한 놈(norm)값이다. In this case, the modified gait state exists at the boundary of the possible region, and Equation 3 is minimized. And determine the corrected pace. here Is the desired step state ( ) And the corrected step status ( ) In the difference A norm value multiplied by 2x1).
상기와 같이 본 발명을 이용할 경우 기존의 방법으로 불가능했던 걸음 상태를 한걸음 만에 실시간으로 바꿀 수 있다. When using the present invention as described above it is possible to change the step state that was impossible by the existing method in real time in one step.
이상 도면과 명세서에서 최적 실시 예들이 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. The best embodiments have been disclosed in the drawings and specification. Although specific terms have been used herein, they are used only for the purpose of describing the present invention and are not used to limit the scope of the present invention as defined in the meaning or claims.
그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다. Therefore, those skilled in the art will understand that various modifications and equivalent other embodiments are possible. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.
본 발명에 의한 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간 조정법은 로봇을 역진자로 근사화한 기존의 방법을 일반화시켜 기존에는 보다 자유로운 보행 방법을 제공하는 효과가 있다. The real-time adjustment method for generating a modifiable gait of a biped walking robot according to the present invention has the effect of providing a more free walking method by generalizing an existing method of approximating a robot to an inverted pendulum.
또한, 로봇에게 주어진 보폭과 보행 속도가 가능한 것인지를 판단하고 가능한 경우 ZMP 조작을 통하여 한 걸음 만에 원하는 걸음 상태에 도달하는 방법을 제공하는 효과가 있다. In addition, it is effective to determine whether a given stride length and walking speed are possible for the robot, and if possible, to provide a method of reaching a desired step state in one step through a ZMP operation.
또한, 로봇에게 주어진 보폭과 보행 속도가 가능하지 않은 경우에도 ZMP 조작을 통하여 가장 근접한 상태에 도달하는 방법을 제공하는 효과가 있다. In addition, even if a given stride and walking speed are not possible for the robot, there is an effect of providing a method of reaching the closest state through the ZMP operation.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070009361A KR100873107B1 (en) | 2007-01-30 | 2007-01-30 | Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070009361A KR100873107B1 (en) | 2007-01-30 | 2007-01-30 | Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080071309A KR20080071309A (en) | 2008-08-04 |
KR100873107B1 true KR100873107B1 (en) | 2008-12-09 |
Family
ID=39882107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070009361A KR100873107B1 (en) | 2007-01-30 | 2007-01-30 | Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100873107B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101182288B1 (en) | 2010-08-26 | 2012-09-14 | 한국과학기술원 | Walking pattern generator for robot |
KR101210498B1 (en) * | 2010-08-27 | 2012-12-10 | 한국과학기술원 | Footstep Planning Method for Bipedal Robot |
CN112060051A (en) * | 2020-09-15 | 2020-12-11 | 安庆帆盛机电科技有限公司 | Lifting mechanism and robot thereof |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101105346B1 (en) * | 2008-12-09 | 2012-01-16 | (주)로보티즈 | Robot with walking method by learning and walking mechanism by learning |
KR102424506B1 (en) * | 2020-09-15 | 2022-07-26 | 한국과학기술연구원 | Method for Recovering Balance of Humanoid Robot via Step Generation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020086464A (en) * | 2000-11-17 | 2002-11-18 | 소니 가부시끼 가이샤 | Legged mobile robot and control method thereof, leg structure of legged mobile robot, and mobile leg unit for legged mobile robot |
KR20030051823A (en) * | 2000-11-17 | 2003-06-25 | 혼다 기켄 고교 가부시키가이샤 | Gait pattern generating device for legged mobile robot |
KR20060113368A (en) * | 2004-01-13 | 2006-11-02 | 혼다 기켄 고교 가부시키가이샤 | Mobilization device of mobile robot |
KR20060126759A (en) * | 2004-02-16 | 2006-12-08 | 혼다 기켄 고교 가부시키가이샤 | Mobile generation device of mobile robot |
-
2007
- 2007-01-30 KR KR1020070009361A patent/KR100873107B1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020086464A (en) * | 2000-11-17 | 2002-11-18 | 소니 가부시끼 가이샤 | Legged mobile robot and control method thereof, leg structure of legged mobile robot, and mobile leg unit for legged mobile robot |
KR20030051823A (en) * | 2000-11-17 | 2003-06-25 | 혼다 기켄 고교 가부시키가이샤 | Gait pattern generating device for legged mobile robot |
KR20060113368A (en) * | 2004-01-13 | 2006-11-02 | 혼다 기켄 고교 가부시키가이샤 | Mobilization device of mobile robot |
KR20060126759A (en) * | 2004-02-16 | 2006-12-08 | 혼다 기켄 고교 가부시키가이샤 | Mobile generation device of mobile robot |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101182288B1 (en) | 2010-08-26 | 2012-09-14 | 한국과학기술원 | Walking pattern generator for robot |
KR101210498B1 (en) * | 2010-08-27 | 2012-12-10 | 한국과학기술원 | Footstep Planning Method for Bipedal Robot |
CN112060051A (en) * | 2020-09-15 | 2020-12-11 | 安庆帆盛机电科技有限公司 | Lifting mechanism and robot thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20080071309A (en) | 2008-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Mastalli et al. | Trajectory and foothold optimization using low-dimensional models for rough terrain locomotion | |
JP6496396B2 (en) | Humanoid robot with omnidirectional wheel based on linear predictive position and velocity controller | |
Yi et al. | Online learning of a full body push recovery controller for omnidirectional walking | |
Berkemeier et al. | Sliding and hopping gaits for the underactuated acrobot | |
US8340817B2 (en) | Legged robot and its control method | |
Czarnetzki et al. | Observer-based dynamic walking control for biped robots | |
CN105608309B (en) | A kind of biped robot's walking planning and control method | |
US8774968B2 (en) | Trajectory planning method, trajectory planning system and robot | |
Lin et al. | Gait balance and acceleration of a biped robot based on Q-learning | |
KR100873107B1 (en) | Real-time MFP Manipulation for Generating Modifiable Steps of Biped Robots | |
Yi et al. | Learning full body push recovery control for small humanoid robots | |
Zamparelli et al. | Humanoid gait generation on uneven ground using intrinsically stable MPC | |
JP6781101B2 (en) | Non-linear system control method, biped robot control device, biped robot control method and its program | |
Mita et al. | Analytical time optimal control solution for a two-link planar aerobot with initial angular momentum | |
Dellin et al. | A framework for extreme locomotion planning | |
KR100889481B1 (en) | Step walk method of biped robot | |
Seiwald et al. | Quintic spline collocation for real-time biped walking-pattern generation with variable torso height | |
JP2001138272A (en) | Leg type mobile robot and control method for its motion | |
Elibol et al. | Power usage reduction of humanoid standing process using q-learning | |
JP6407409B2 (en) | Leg-type mechanism, walking robot, posture control method and program | |
US20230321831A1 (en) | Systems and Methods for Model-free Safety Control in Robotics Platforms | |
CN116237943A (en) | Four-foot robot control method combined with terrain constraint | |
Yagi et al. | Local on-line planning in biped robot locomotion amongst unknown obstacles | |
Ayari et al. | The generation of a stable walking trajectory of a biped robot based on the COG based-gait pattern and ZMP constraint | |
Tadić et al. | Biped robot walking based on deep reinforcement learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20070130 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20080205 Patent event code: PE09021S01D |
|
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20080716 Patent event code: PE09021S01D |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20081111 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20081203 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20081204 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20111129 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20121130 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20121130 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20131129 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20131129 Start annual number: 6 End annual number: 6 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20161209 |