KR101210498B1 - 이족보행 로봇을 위한 발걸음 계획 방법 - Google Patents

이족보행 로봇을 위한 발걸음 계획 방법 Download PDF

Info

Publication number
KR101210498B1
KR101210498B1 KR1020100083472A KR20100083472A KR101210498B1 KR 101210498 B1 KR101210498 B1 KR 101210498B1 KR 1020100083472 A KR1020100083472 A KR 1020100083472A KR 20100083472 A KR20100083472 A KR 20100083472A KR 101210498 B1 KR101210498 B1 KR 101210498B1
Authority
KR
South Korea
Prior art keywords
robot
biped
unit vector
foot
walking
Prior art date
Application number
KR1020100083472A
Other languages
English (en)
Other versions
KR20120019893A (ko
Inventor
김종환
홍영대
Original Assignee
한국과학기술원
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 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020100083472A priority Critical patent/KR101210498B1/ko
Publication of KR20120019893A publication Critical patent/KR20120019893A/ko
Application granted granted Critical
Publication of KR101210498B1 publication Critical patent/KR101210498B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D57/00Vehicles 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/02Vehicles 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/032Vehicles 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • B25J9/162Mobile manipulator, movable base with manipulator arm mounted on it
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning

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

본 발명의 이족보행 로봇을 위한 발걸음 계획 방법에 따르면, 단위 벡터장 항법(univector field navigation method)을 기반으로 하여 매 발걸음마다 가변적 걸음 생성기(modifiable walking pattern generator, MWPG)의 입력(input)인, 보폭, 발의 방향, 걸음 시간과 같은 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하고, 결정된 CS를 만족하기 위한 이족보행 로봇의 모든 다리 관절의 궤적을 생성할 수 있다.
또한, 이족보행 로봇의 보행 중 최단 시간, 장애물과 충돌 없는 안정성, 최소 에너지 소비를 위해 단위 벡터장을 진화 알고리즘(evolutionary algorithm)으로 최적화할 수 있다.
아울러 본 발명에 따르면 상기의 궤적의 생성과 진화 알고리즘에 의한 최적화 기법을 이용하여 실시간으로 이족보행 로봇의 발걸음을 계획할 수 있다.

Description

이족보행 로봇을 위한 발걸음 계획 방법{Footstep Planning Method for Bipedal Robot}
본 발명은 이족보행 로봇을 위한 발걸음 계획 방법에 관한 것으로, 더욱 상세하게는 단위 벡터장(univector field)을 진화 알고리즘(evolutionary algorithm)으로 최적화한 이족보행 로봇을 위한 발걸음 계획 방법에 관한 것이다.
지금까지 다양한 이족보행 로봇들을 안전하게 걷게 하는 제어 알고리즘들이 개발되어 왔다. 이러한 이족보행 로봇들의 미래를 위해, 장애물이 있는 환경에서의 이들의 보행에 관한 연구가 오늘날 요구되고 있다. 특히 이러한 환경에서의 발걸음 계획(footstep planning)에 관한 연구는 이족보행 로봇을 위한 핵심 연구 중 하나이다.
그러나 지금까지의 이족보행 로봇을 위한 발걸음 계획에 관한 연구들은 발걸음 계획을 위해 몇 개의 가능한 발걸음 위치 모음들과 이 위치로 걷기 위한 이족보행 로봇의 모든 다리 관절의 궤적들을 미리 계산해 두어야 했다. 게다가 이들은 실제 생활에서 존재하는 이족보행 로봇의 보행에 있어서 고려되어야 하는 다양한 목적들을 고려하지 않는 문제점이 있다.
본 발명은 전술한 바와 같은 기술적 과제를 해결하는 데 목적이 있는 발명으로서, 단위 벡터장 항법(univector field navigation method)을 기반으로 하여 매 발걸음마다 가변적 걸음 생성기(modifiable walking pattern generator, MWPG)의 입력(input)인 보폭, 발의 방향, 걸음 시간과 같은 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하고, 결정된 CS를 만족하기 위한 이족보행 로봇의 모든 다리 관절의 궤적을 생성하는 것에 그 목적이 있다.
본 발명의 다른 목적은 이족보행 로봇의 보행 중 최단 시간, 장애물과 충돌 없는 안정성, 최소 에너지 소비를 위해 단위 벡터장을 진화 알고리즘(evolutionary algorithm)으로 최적화하는 것에도 있다.
본 발명의 또 다른 목적은 상기의 궤적의 생성과 진화 알고리즘에 의한 최적화 기법을 이용하여 실시간으로 이족보행 로봇의 발걸음을 계획하는 것에도 있다.
본 발명의 바람직한 일실시예에 따른 이족보행 로봇을 위한 발걸음 계획 방법은 단위 벡터장 항법(univector field navigation method)을 기반으로 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하며, 상기 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 것을 특징으로 한다.
구체적으로 상기 CS는 상기 이족보행 로봇의 왼발의 정면 방향으로의 보폭, 오른발의 정면 방향으로의 보폭, 왼발의 측면 방향으로의 보폭, 오른발의 측면 방향으로의 보폭, 한발지지 시간, 두발지지 시간, 왼발의 방향 및 오른발의 방향의 정보를 포함하는 것이 바람직하다.
또한, 상기 CS의 결정은 연속된 두 발걸음 사이의 중간점을 발걸음의 기준 위치로 사용하고, 상기 기준 위치에서 단위 벡터를 산출하며, 상기 왼발의 방향 및 오른발의 방향을 상기 단위 벡터로부터 얻어지는 각도로 설정하는 것을 특징으로 한다.
상기 단위 벡터는, 상기 이족보행 로봇이 목적지에 도달하기 위한 단위 벡터장(move-to-goal univector field, MUF)과 장애물 회피를 위한 단위 벡터장(avoid-obstacle univector field, AUF)을 이용하되, 최종 단위 벡터는 MUF와 각 장애물들의 AUF들의 합을 표준화(normalization)하여 산출되는 것이 바람직할 것이다.
더욱 상세하게 상기 이족보행 로봇의 모든 다리 관절의 궤적의 산출은 가변적 걸음 생성 방법(modifiable walking pattern generating method)을 이용하되, 상기 가변적 걸음 생성 방법은 상기 이족보행 로봇의 한발지지 상태에서의 동역학을 3차원 선형 역진자 모델을 확장하여 동차해(homogeneous solution) 뿐만 아니라 특수해(particular solution)도 이용하는 방법으로, 상기 이족보행 로봇의 걸음에 관한 ZMP(zero moment point) 함수를 이용하여 한발지지 상태 동안 무게 중심의 위치와 속도를 독립적으로 변화시키는 것에 의해 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 것을 특징으로 한다.
구체적으로 상기 궤적의 산출은 상기 이족보행 로봇이 상기 결정된 CS를 따라 이동하도록, 상기 이족보행 로봇의 발을 단위 벡터의 방향으로 하고, 이전 발걸음에서의 발의 방향과 수직이고 기준 위치로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1 만큼 떨어져 있는 위치에 놓게 하기 위한 것을 특징으로 한다.
본 발명의 바람직한 일실시예에 따른 상기 이족보행 로봇을 위한 발걸음 계획 방법은, (a) i번째 발걸음에서의 CS를 결정하는 단계; (b) 상기 (a) 단계의 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 단계; (c) 상기 (b) 단계에서 산출된 궤적에 따라, 기준 위치
Figure 112010055593417-pat00001
가 발걸음의 발의 방향의 단위 벡터
Figure 112010055593417-pat00002
와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
Figure 112010055593417-pat00003
만큼 떨어져 있는 위치
Figure 112010055593417-pat00004
으로 수정되는 단계; (d) 상기 단위 벡터
Figure 112010055593417-pat00005
를 이용하여 다음 발걸음의 기준 위치
Figure 112010055593417-pat00006
를 산출하는 단계; (e) 다음 발걸음의 단위 벡터
Figure 112010055593417-pat00007
가 산출되고, 산출된 다음 발걸음의 단위 벡터
Figure 112010055593417-pat00008
를 이용하여 다음 CS가 결정되는 단계; (f) 상기 (e) 단계에서 결정된 다음 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 단계; 및 (g) 상기 (f) 단계에서 산출된 궤적에 따라, 기준 위치
Figure 112010055593417-pat00009
가 발걸음의 발의 방향의 단위 벡터
Figure 112010055593417-pat00010
와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
Figure 112010055593417-pat00011
만큼 떨어져 있는 위치
Figure 112010055593417-pat00012
로 수정하는 단계; 를 포함한다.
또한 상기 이족보행 로봇이 설정된 목적지에 도달하지 않았다면, 상기 (a) 단계부터 상기 (g) 단계를 반복적으로 실시하는 것을 특징으로 한다.
아울러 본 발명의 이족보행 로봇을 위한 발걸음 계획 방법은 진화 알고리즘을 이용하여 상기 단위 벡터장을 최적화함으로써 상기 이족보행 로봇의 이동에 있어서 최단 시간, 장애물과 충돌 없는 안정성 및 최소 에너지 소비를 고려한 발걸음 계획이 가능하도록 하는 것이 바람직하다.
구체적으로 상기 진화 알고리즘을 이용한 단위 벡터장의 최적화는, 장애물 회피를 위한 단위 벡터장(avoid-obstacle univector field, AUF)을 산출하기 위한
Figure 112010055593417-pat00013
와 기호 ±를 최적화하는 것에 의해 이루어지되, 상기
Figure 112010055593417-pat00014
는 상기 AUF의 산출에 사용되는 쌍곡 나선 단위 벡터장(hyperbolic spiral univector field)의 나선(spiral)의 미리 정해진 반지름 길이, 상기
Figure 112010055593417-pat00015
는 AUF의 경계(boundary)의 크기, 상기
Figure 112010055593417-pat00016
은 만약
Figure 112010055593417-pat00017
이 증가하면 나선(spiral)의 곡률이 부드러워지게 되는 나선(spiral)의 조절 가능한 변수, 기호 ±는 로봇의 이동 방향으로 -는 시계 방향, +는 반시계 방향의 움직임을 각각 의미하는 것을 특징으로 한다.
본 발명의 이족보행 로봇을 위한 발걸음 계획 방법에 따르면, 단위 벡터장 항법(univector field navigation method)을 기반으로 하여 매 발걸음마다 가변적 걸음 생성기(modifiable walking pattern generator, MWPG)의 입력(input)인 보폭, 발의 방향, 걸음 시간과 같은 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하고, 결정된 CS를 만족하기 위한 이족보행 로봇의 모든 다리 관절의 궤적을 생성할 수 있다.
또한, 이족보행 로봇의 보행 중 최단 시간, 장애물과 충돌 없는 안정성, 최소 에너지 소비를 위해 단위 벡터장을 진화 알고리즘(evolutionary algorithm)으로 최적화할 수 있다.
아울러 본 발명에 따르면 상기의 궤적의 생성과 진화 알고리즘에 의한 최적화 기법을 이용하여 실시간으로 이족보행 로봇의 발걸음을 계획할 수 있다.
도 1은 목적지에 도달하기 위한 단위 벡터장(move-to-goal univector field, MUF)을 도시한 것이다.
도 2는 장애물 회피를 위한 단위 벡터장(avoid-obstacle univector field, AUF)을 도시한 것이다.
도 3은 발걸음 계획 과정을 도시한 것이다.
도 4는 발걸음 계획 과정에 대한 흐름도이다.
이하, 첨부된 도면을 참조하면서 본 발명의 일실시예에 따른 이족보행 로봇을 위한 발걸음 계획 방법에 대해 상세히 설명하기로 한다.
본 발명의 하기의 실시예는 본 발명을 구체화하기 위한 것일 뿐 본 발명의 권리 범위를 제한하거나 한정하는 것이 아님은 물론이다. 본 발명의 상세한 설명 및 실시예로부터 본 발명이 속하는 기술 분야의 전문가가 용이하게 유추할 수 있는 것은 본 발명의 권리 범위에 속하는 것으로 해석된다.
본 발명의 바람직한 일실시예에 따른 이족보행 로봇을 위한 발걸음 계획 장치를 이용한 이족보행 로봇을 위한 발걸음 계획 방법은, 단위 벡터장 항법(univector field navigation method)을 기반으로 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하며, 가변적 걸음 생성기(modifiable walking pattern generator, MWPG)를 이용한 가변적 걸음 생성 방법에 의해 상기 CS를 기반으로 상기 이족보행 로봇의 다리 관절의 궤적을 산출할 수 있다.
참고로 상기 가변적 걸음 생성기는 상기 이족보행 로봇을 위한 발걸음 계획 장치의 한 구성 요소로 구현되어 진다.
MWPG와 단위 벡터장 항법에 관해 좀 더 상세하게 설명하기로 한다.
가변적 걸음 생성기(modifiable walking pattern generator, MWPG)
이족보행 로봇의 한발지지 상태(single support phase)에서의 주요 동역학(dynamics)은 3차원 선형 역진자 모델(3D linear inverted pendulum model, 3D-LIPM)로 모델링된다. 이는 지지하는 다리가 무게가 없는 막대이고 모든 질량이 수직 운동이 없는 한 점에 모여 있다고 가정하며 그 동역학 방정식은 [수학식 1]과 같이 나타낼 수 있다.
Figure 112010055593417-pat00018
[수학식 1]에서
Figure 112010055593417-pat00019
는 지면 반발력(ground reaction force)에 의한 토크이고
Figure 112010055593417-pat00020
는 지면부터 무게 중심(center of mass)까지의 벡터이다. 또한,
Figure 112010055593417-pat00021
은 중력을 나타내고
Figure 112010055593417-pat00022
은 무게 중심의 선형 운동량이다.
[수학식 1]에서 무게 중심의 높이가 상수
Figure 112010055593417-pat00023
이므로, [수학식 2]와 같이 다시 나타낼 수 있다.
Figure 112010055593417-pat00024
[수학식 2]에서 m은 3D-LIPM의 질량이다. ZMP(zero moment point)는 지면 반발력으로부터 받는 모든 토크의 합을 나타내는데, [수학식 3]과 같이 이용된다.
Figure 112010055593417-pat00025
[수학식 3]에서
Figure 112010055593417-pat00026
는 ZMP를 나타내고,
Figure 112010055593417-pat00027
은 요잉 모멘트(yawing moment)를 나타낸다.
[수학식 3]을 [수학식 2]에 대입하면 [수학식 4]와 같은 방정식을 얻을 수 있다.
Figure 112010055593417-pat00028
결국 위의 [수학식 4]로부터 ZMP와 무게 중심 움직임 사이의 관계를 얻을 수 있다. 기존의 3D-LIPM은 ZMP의 변화의 고려 없이 [수학식 4]의 동차해(homogeneous solution)만을 오직 다루고 있었다. 그러나 MWPG는 더욱 폭넓고 제한되지 않은 걸음새를 위해 기존의 3D-LIPM을 확장하여 동차해(homogeneous solution)뿐만 아니라 특수해(particular solution)도 이용하였다.
역라플라스 변환(inverse Laplace transform)을 이용하여 [수학식 4]의 해를 구함으로써 3D-LIPM의 무게 중심의 움직임 방정식을 [수학식 5]와 [수학식 6]과 같이 얻을 수 있다. [수학식 5]는 로봇의 정면 방향(sagittal plane)으로의 무게 중심의 움직임 방정식이고, [수학식 6]은 로봇의 측면 방향(lateral plane)으로의 무게 중심의 움직임 방정식이다.
Figure 112010055593417-pat00029
Figure 112010055593417-pat00030
[수학식 5]와 [수학식 6]에서
Figure 112010055593417-pat00031
Figure 112010055593417-pat00032
는 각각 정면 방향과 측면 방향으로의 무게 중심의 처음/마지막의 위치와 속도를 나타낸다. 그리고
Figure 112010055593417-pat00033
Figure 112010055593417-pat00034
는 각각
Figure 112010055593417-pat00035
Figure 112010055593417-pat00036
를 나타내고
Figure 112010055593417-pat00037
이다.
Figure 112010055593417-pat00038
는 남아있는 한발지지 시간을 나타낸다. 또한,
Figure 112010055593417-pat00039
Figure 112010055593417-pat00040
는 각각 정면 방향과 측면 방향의 ZMP 함수를 나타내고 ,
Figure 112010055593417-pat00041
이고
Figure 112010055593417-pat00042
이다.
결과적으로
Figure 112010055593417-pat00043
Figure 112010055593417-pat00044
에 의해서 한발지지 상태 동안 언제든지 무게 중심의 위치와 속도를 독립적으로 변화시키는 것이 가능하다. 이는 MWPG가 이족보행 로봇의 정면, 측면으로의 보폭, 걸음 주기, 발의 방향과 같은 걸음새를 ZMP 변화에 의해서 변화시킬 수 있다는 것을 의미한다.
그리고 MWPG의 입력으로서 CS는 [수학식 7]과 같이 정의된다.
Figure 112010055593417-pat00045
[수학식 7]에서의 각 인자의 의미는 다음과 같다.
Figure 112010055593417-pat00046
: 왼발/오른발의 정면 방향으로의 보폭
Figure 112010055593417-pat00047
: 왼발/오른발의 측면 방향으로의 보폭
Figure 112010055593417-pat00048
: 한발지지 시간
Figure 112010055593417-pat00049
: 두발지지 시간
Figure 112010055593417-pat00050
: 왼발/오른발의 방향
결국, 매 샘플 시간(sample time) 마다 CS가 입력되고 이는 WS(walking state)로 정의되는 3D-LIPM의 무게 중심의 위치와 속도로 변환된다. 이 WS를 만족하기 위한 무게 중심의 궤적이 [수학식 5]와 [수학식 6]에 의해서 얻어지고 역기구학(inverse kinematics)에 의해 이를 만족하는 이족보행 로봇의 모든 다리 관절의 궤적이 계산된다.
단위 벡터장 항법
본 발명에서는 이족보행 로봇의 발걸음 계획을 위해 다양한 기존의 항법들 중에 단위 벡터장 항법을 채택하였다. 이는 실시간으로 로봇이 원하는 위치에 효과적인 궤적으로 도달하게 해준다. 단위 벡터장 항법은 로봇이 목적지에 도달하게 하기 위한 move-to-goal univector field(MUF)와 장애물 회피를 위한 avoid-obstacle univector field(AUF)를 이용한다.
도 1은 MUF를 나타내었다.
임의의 위치
Figure 112010055593417-pat00051
에서의 MUF는 도 1로부터 알 수 있는 바와 같이 어트렉티브 단위 벡터장(attractive univector field)에 의해서 생성되고 [수학식 8]과 같이 정의된다.
Figure 112010055593417-pat00052
[수학식 8]에서
Figure 112010055593417-pat00053
는 목적지의 위치
Figure 112010055593417-pat00054
의 x축에서부터 로봇의 위치
Figure 112010055593417-pat00055
까지의 각도를 나타낸다.
도 2에 AUF를 나타내었다.
AUF는 도 2와 같이 위치
Figure 112010055593417-pat00056
에서의 쌍곡 나선 단위 벡터장(hyperbolic spiral univector field)
Figure 112010055593417-pat00057
에 의해서 생성되고 [수학식 9]와 같이 정의된다.
Figure 112010055593417-pat00058
[수학식 9]에서,
Figure 112010055593417-pat00059
이다. 또한,
Figure 112010055593417-pat00060
은 위치
Figure 112010055593417-pat00061
Figure 112010055593417-pat00062
사이의 거리이고
Figure 112010055593417-pat00063
는 장애물의 반지름 길이를 나타낸다.
Figure 112010055593417-pat00064
는 나선(spiral)의 미리 정해진 반지름 길이를 나타내고,
Figure 112010055593417-pat00065
는 AUF의 경계(boundary)의 크기를 나타낸다.
[수학식 9]에서 알 수 있듯이 AUF는 로봇의 위치
Figure 112010055593417-pat00066
가 AUF의 경계(boundary) 안에 있을 때만 생성된다. 만약 로봇이 장애물을 지나가면 그 장애물의 AUF는 로봇이 이동하는데 더 이상 영향을 주지 않는다.
Figure 112010055593417-pat00067
는 장애물 중심
Figure 112010055593417-pat00068
의 x축에서부터 로봇의 위치
Figure 112010055593417-pat00069
까지의 각도를 나타낸다. 기호 ±는 로봇의 이동 방향을 나타내는데 -는 시계 방향, +는 반시계 방향의 움직임을 의미한다. 또한,
Figure 112010055593417-pat00070
은 나선(spiral)의 조절 가능한 변수로서 만약
Figure 112010055593417-pat00071
이 증가하면 나선(spiral)의 곡률이 부드러워진다.
최종 단위 벡터장은 MUF와 각 장애물들의 AUF들의 합을 표준화(normalization)하여 얻어진다. 이는 임의의 위치
Figure 112010055593417-pat00072
에서의 로봇의 이동 방향을 결정하고 [수학식 10]과 같이 정의된다.
Figure 112010055593417-pat00073
[수학식 10]에서
Figure 112010055593417-pat00074
이며, n은 장애물의 총 수를 나타낸다.
상술한 바와 같은 단위 벡터장 항법을 기반으로 하여 본 발명에서의 발걸음 계획 방법은 매 발걸음마다 CS를 결정하고 그러면 MWPG에 의해서 결정된 CS를 만족하기 위한 이족보행 로봇의 모든 다리 관절의 궤적이 생성된다.
도 3에 본 발명의 바람직한 일실시예에 따른 발걸음 계획 방법의 전체 과정을 도시하였다.
발걸음 계획을 위해 CS의 정면, 측면 방향으로의 보폭인
Figure 112010055593417-pat00075
Figure 112010055593417-pat00076
을 도 3과 같이 각각 실제 이족보행 로봇의 정면 및 측면 방향의 설정된 보폭 이내의 값인
Figure 112010055593417-pat00077
Figure 112010055593417-pat00078
로 설정한다. 그리고 한발지지 시간과 두발지지 시간인
Figure 112010055593417-pat00079
Figure 112010055593417-pat00080
을 적당한 값으로 미리 설정하고 매 발걸음 마다의 스윙 레그(swing leg)의 발의 방향인
Figure 112010055593417-pat00081
을 단위 벡터장 항법에 의해서 결정한다. 연속된 두 발걸음 사이의 중간점이 발걸음의 기준 위치로서 사용되고
Figure 112010055593417-pat00082
는 이 기준 위치에서의 단위 벡터에 의해서 결정된다.
도 3의 발걸음 계획의 전체 과정에 대해 도 4에 흐름도로 나타내었다.
도 3과 도 4에 의해 본 발명의 바람직한 일실시예에 따른 이족보행 로봇의 발걸음 계획 방법의 전제 흐름을 설명하기로 한다.
먼저, i번째 발걸음에서의 CS를 결정한다(S5). 기준 위치
Figure 112010055593417-pat00083
(31)에서의 단위 벡터
Figure 112010055593417-pat00084
는 [수학식 10]에 의해서 계산되고 이때
Figure 112010055593417-pat00085
이다. 그리고
Figure 112010055593417-pat00086
Figure 112010055593417-pat00087
로부터 얻어지는 각도로 설정된다.
다음으로, 상기 S5 단계의 CS를 이용하여 상기 MWPG가 이족보행 로봇이 이 CS를 따라 이동하도록, 로봇의 발을
Figure 112010055593417-pat00088
의 방향으로 하고 이전 발걸음에서의 발의 방향과 수직이고 기준 위치
Figure 112010055593417-pat00089
로부터
Figure 112010055593417-pat00090
만큼 떨어져 있는 위치에 놓게 하기 위해, 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출한다(S10).
그리고, 기준 위치
Figure 112010055593417-pat00091
(31)가 상기 S10 단계에서 산출된 궤적에 따라 발걸음의 발의 방향의 단위 벡터
Figure 112010055593417-pat00092
와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
Figure 112010055593417-pat00093
만큼 떨어져 있는 위치
Figure 112010055593417-pat00094
(32)로 수정된다(S15).
다음으로 상기 단위 벡터
Figure 112010055593417-pat00095
를 이용하여 다음 발걸음의 기준 위치
Figure 112010055593417-pat00096
(33)를 수학식 11에 의해 산출한다(S20).
Figure 112010055593417-pat00097
그리고, 다음 발걸음의 단위 벡터
Figure 112010055593417-pat00098
가 산출되고, 이에 따라 다음 CS가 결정되며(S25), 결정된 다음 CS를 이용하여 상기 MWPG가 이족보행 로봇이 결정된 다음 CS를 따라 이동하도록, 로봇의 발을
Figure 112010055593417-pat00099
의 방향으로 하고 이전 발걸음에서의 발의 방향과 수직이고 기준 위치
Figure 112010055593417-pat00100
(33)로부터
Figure 112010055593417-pat00101
만큼 떨어져 있는 위치에 놓게 하기 위해, 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출한다(S30).
기준 위치
Figure 112010055593417-pat00102
(33)가 상기 S30단계에서 산출된 궤적에 따라 발걸음의 발의 방향의 단위 벡터
Figure 112010055593417-pat00103
와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
Figure 112010055593417-pat00104
만큼 떨어져 있는 위치
Figure 112010055593417-pat00105
(34)로 수정된다(S35).
마지막으로, 상기 이족보행 로봇이 설정된 목적지에 도달하지 않았다면, 상기 S5 단계부터 상기 S35 단계를 반복적으로 실시하는 것을 특징으로 한다(S40)
상술한 바와 같은 과정에 의해 본 발명의 발걸음 계획 장치는 몇 개의 가능한 발걸음 위치 모음들과 이 위치로 걷기 위한 이족보행 로봇의 모든 다리 관절의 궤적들을 미리 계산해놓지 않고 실시간으로 발걸음을 계획할 수 있다.
진화 알고리즘을 이용한 최적화
이족보행 로봇의 이동에 있어서 고려해야 할 핵심 목적으로 최단 시간, 장애물과 충돌 없는 안정성 및 최소 에너지 소비가 있다. 첫 번째 목적을 위해 이동 중의 총 발걸음 수가 최소가 되어야 한다. 두 번째 목적을 위해서는 걷는 동안 발생할 수 있는 장애물과의 충돌을 피하기 위해 로봇과 장애물 사이의 거리가 최대화되어야 한다. 마지막 목적을 위해서는 연속된 발걸음 사이의 이동 방향의 차이가 실제 이족보행 로봇의 다리의 허용 가능한 요잉 각도 범위(yawing angle range)를 넘지 않아야 하고 이동 중의 총 요잉 각도(yawing angle)의 합이 최소가 되어야 한다. 이러한 목적을 만족하기 위해 본 발명에서는 최적화된 단위 벡터장을 얻기 위해 진화 알고리즘(evolutionary algorithm)을 이용한다.
본 발명에서는 장애물들의 위치와 속도, 목적지의 위치와 같이 환경 정보를 기반으로 하여 진화 알고리즘에 의해서 각 장애물의 AUF를 위한
Figure 112010055593417-pat00106
와 기호 ±를 최적화한다. 본 발명에서 사용된 진화 알고리즘을 위한 평가 함수(evaluation function)은 [수학식 12]와 같이 정의된다.
Figure 112010055593417-pat00107
수학식 12에서
Figure 112010055593417-pat00108
는 총 발걸음 수 n을 위한 스케일링 인자(scaling factor)을 나타낸다. 첫 번째 항목은 로봇이 목적지에 최소의 발걸음 수로 도달하도록 하게 한다. 두 번째 항목은 장애물과의 충돌 없는 안전성을 위한 것으로 로봇을 원통으로 가정하여 [수학식 13]과 같이 정의된다.
Figure 112010055593417-pat00109
수학식 13에서,
Figure 112010055593417-pat00110
을 나타내며,
Figure 112010055593417-pat00111
Figure 112010055593417-pat00112
는 스케일링 인자(scaling factor)이고
Figure 112010055593417-pat00113
는 로봇 몸체의 반지름 길이이다.
Figure 112010055593417-pat00114
Figure 112010055593417-pat00115
와 위치
Figure 112010055593417-pat00116
와 장애물 사이의 거리
Figure 112010055593417-pat00117
와의 차이를 나타낸다. 만약 로봇이 장애물과 충돌하면
Figure 112010055593417-pat00118
는 패널티 값
Figure 112010055593417-pat00119
로 설정된다.
최소 에너지 소비를 위한 마지막 항목은 [수학식 14]와 같이 정의된다.
Figure 112010055593417-pat00120
수학식 14에서,
Figure 112010055593417-pat00121
을 의미하며,
Figure 112010055593417-pat00122
는 스케일링 인자(scaling factor)이고,
Figure 112010055593417-pat00123
는 위치
Figure 112010055593417-pat00124
와 이전 발걸음에서의 위치
Figure 112010055593417-pat00125
사이의 이족보행 로봇의 이동 방향의 차이를 나타낸다. 만약 허용 가능 요잉 각도 범위(yawing angle range)를 넘으면 이는 패널티 값
Figure 112010055593417-pat00126
로 설정된다.
10: move-to-goal univector field(MUF)
11: 목적지
20: avoid-obstacle univector field(AUF)
21: 장애물
22: 나선(spiral)의 크기
23: avoid-obstacle univector field(AUF)의 경계(boundary)
30: 기준 위치
Figure 112010055593417-pat00127

31: 기준 위치
Figure 112010055593417-pat00128

32: 기준 위치
Figure 112010055593417-pat00129

33: 기준 위치
Figure 112010055593417-pat00130

34: 기준 위치
Figure 112010055593417-pat00131

Claims (14)

  1. 이족보행 로봇을 위한 발걸음 계획 장치를 이용한 이족보행 로봇을 위한 발걸음 계획 방법에 있어서,
    단위 벡터장 항법(univector field navigation method)을 기반으로 이족보행 로봇의 걸음에 관한 정보를 포함하고 있는 CS(command state)를 결정하며, 상기 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 것을 특징으로 하며,
    상기 CS는,
    상기 이족보행 로봇의 왼발의 정면 방향으로의 보폭, 오른발의 정면 방향으로의 보폭, 왼발의 측면 방향으로의 보폭, 오른발의 측면 방향으로의 보폭, 한발지지 시간, 두발지지 시간, 왼발의 방향 및 오른발의 방향의 정보를 포함하는 것을 특징으로 하되,
    상기 CS의 결정은,
    연속된 두 발걸음 사이의 중간점을 발걸음의 기준 위치로 사용하고, 상기 기준 위치에서 단위 벡터를 산출하며, 상기 왼발의 방향 및 오른발의 방향을 상기 단위 벡터로부터 얻어지는 각도로 설정하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 단위 벡터는,
    상기 이족보행 로봇이 목적지에 도달하기 위한 단위 벡터장(move-to-goal univector field, MUF)과 장애물 회피를 위한 단위 벡터장(avoid-obstacle univector field, AUF)을 이용하되, 최종 단위 벡터는 MUF와 각 장애물들의 AUF들의 합을 표준화(normalization)하여 산출되는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  5. 제 4 항에 있어서,
    상기 이족보행 로봇의 모든 다리 관절의 궤적의 산출은 가변적 걸음 생성 방법(modifiable walking pattern generating method)을 이용하되,
    상기 가변적 걸음 생성 방법은,
    상기 이족보행 로봇의 한발지지 상태에서의 동역학을 3차원 선형 역진자 모델을 확장하여 동차해(homogeneous solution) 뿐만 아니라 특수해(particular solution)도 이용하는 방법으로, 상기 이족보행 로봇의 걸음에 관한 ZMP(zero moment point) 함수를 이용하여 한발지지 상태 동안 무게 중심의 위치와 속도를 독립적으로 변화시키는 것에 의해 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  6. 제 5 항에 있어서,
    상기 궤적의 산출은,
    상기 이족보행 로봇이 상기 결정된 CS를 따라 이동하도록, 상기 이족보행 로봇의 발을 단위 벡터의 방향으로 하고, 이전 발걸음에서의 발의 방향과 수직이고 기준 위치로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1 만큼 떨어져 있는 위치에 놓게 하기 위한 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  7. 제 6 항에 있어서,
    상기 이족보행 로봇을 위한 발걸음 계획 방법은,
    (a) i번째 발걸음에서의 CS를 결정하는 단계;
    (b) 상기 (a) 단계의 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 단계;
    (c) 상기 (b) 단계에서 산출된 궤적에 따라, 기준 위치
    Figure 112010055593417-pat00132
    가 발걸음의 발의 방향의 단위 벡터
    Figure 112010055593417-pat00133
    와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
    Figure 112010055593417-pat00134
    만큼 떨어져 있는 위치
    Figure 112010055593417-pat00135
    로 수정되는 단계;
    (d) 상기 단위 벡터
    Figure 112010055593417-pat00136
    를 이용하여 다음 발걸음의 기준 위치
    Figure 112010055593417-pat00137
    를 산출하는 단계;
    (e) 다음 발걸음의 단위 벡터
    Figure 112010055593417-pat00138
    가 산출되고, 산출된 다음 발걸음의 단위 벡터
    Figure 112010055593417-pat00139
    를 이용하여 다음 CS가 결정되는 단계;
    (f) 상기 (e) 단계에서 결정된 다음 CS를 이용하여 상기 이족보행 로봇의 모든 다리 관절의 궤적을 산출하는 단계; 및
    (g) 상기 (f) 단계에서 산출된 궤적에 따라, 기준 위치
    Figure 112010055593417-pat00140
    가 발걸음의 발의 방향의 단위 벡터
    Figure 112010055593417-pat00141
    와 수직하고, 그 발의 중심으로부터 상기 이족보행 로봇의 미리 설정된 측면 방향 보폭의 2분의 1인
    Figure 112010055593417-pat00142
    만큼 떨어져 있는 위치
    Figure 112010055593417-pat00143
    로 수정하는 단계; 를 포함하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  8. 제 7 항에 있어서,
    상기 이족보행 로봇이 설정된 목적지에 도달하지 않았다면, 상기 (a) 단계부터 상기 (g) 단계를 반복적으로 실시하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  9. 제 8 항에 있어서,
    상기 (d) 단계에서의
    Figure 112010055593417-pat00144
    는 다음 수학식에 의해 산출되는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
    Figure 112010055593417-pat00145

    (여기서,
    Figure 112010055593417-pat00146
    는 상기 이족보행 로봇의 정면 방향으로 설정된 보폭을 의미한다.)
  10. 제 1 항에 있어서,
    진화 알고리즘을 이용하여 상기 단위 벡터장을 최적화함으로써 상기 이족보행 로봇의 이동에 있어서 최단 시간, 장애물과 충돌 없는 안정성 및 최소 에너지 소비를 고려한 발걸음 계획이 가능하도록 하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  11. 제 10 항에 있어서,
    상기 진화 알고리즘을 이용한 단위 벡터장의 최적화는,
    장애물 회피를 위한 단위 벡터장(avoid-obstacle univector field, AUF)을 산출하기 위한
    Figure 112010055593417-pat00147
    와 기호 ±를 최적화하는 것에 의해 이루어지되,
    상기
    Figure 112010055593417-pat00148
    는 상기 AUF의 산출에 사용되는 쌍곡 나선 단위 벡터장(hyperbolic spiral univector field)의 나선(spiral)의 미리 정해진 반지름 길이, 상기
    Figure 112010055593417-pat00149
    는 AUF의 경계(boundary)의 크기, 상기
    Figure 112010055593417-pat00150
    은 만약
    Figure 112010055593417-pat00151
    이 증가하면 나선(spiral)의 곡률이 부드러워지게 되는 나선(spiral)의 조절 가능한 변수, 기호 ±는 로봇의 이동 방향으로 -는 시계 방향, +는 반시계 방향의 움직임을 각각 의미하는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
  12. 제 11 항에 있어서,
    상기 진화 알고리즘을 위한 평가 함수(evaluation function)는 다음의 수학식으로 나타낼 수 있는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
    Figure 112010055593417-pat00152

    (여기서
    Figure 112010055593417-pat00153
    는 총 발걸음 수 n을 위한 스케일링 인자(scaling factor)를 나타내며, 첫 번째 항목
    Figure 112010055593417-pat00154
    은 로봇이 목적지에 최소의 발걸음 수로 도달하도록 하게 한다. 또한, 두 번째 항목
    Figure 112010055593417-pat00155
    은 장애물과의 충돌 없는 안전성을 위한 것이며, 세 번째 항목
    Figure 112010055593417-pat00156
    은 최소 에너지 소비를 위한 것이다.)
  13. 제 12 항에 있어서,
    상기 두 번째 항목
    Figure 112010055593417-pat00157
    은 다음의 수학식에 의해 나타낼 수 있는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
    Figure 112010055593417-pat00158

    (여기서,
    Figure 112010055593417-pat00159

    로 나타낼 수 있으며,
    Figure 112010055593417-pat00160
    Figure 112010055593417-pat00161
    는 스케일링 인자(scaling factor)이고
    Figure 112010055593417-pat00162
    는 로봇 몸체의 반지름 길이를,
    Figure 112010055593417-pat00163
    는 장애물의 반지름 길이를 각각 의미한다. 또한,
    Figure 112010055593417-pat00164
    Figure 112010055593417-pat00165
    와 기준 위치
    Figure 112010055593417-pat00166
    로부터 장애물까지의 거리
    Figure 112010055593417-pat00167
    와의 차이를 나타낸다. 만약 로봇이 장애물과 충돌하면
    Figure 112010055593417-pat00168
    는 미리 설정된 패널티 값
    Figure 112010055593417-pat00169
    로 할당된다. )
  14. 제 13 항에 있어서,
    상기 세 번째 항목
    Figure 112010055593417-pat00170
    은 다음의 수학식에 의해 나타낼 수 있는 것을 특징으로 하는 이족보행 로봇을 위한 발걸음 계획 방법.
    Figure 112010055593417-pat00171

    (여기서,
    Figure 112010055593417-pat00172

    를 의미하며,
    Figure 112010055593417-pat00173
    는 스케일링 인자(scaling factor)이고,
    Figure 112010055593417-pat00174
    는 기준위치
    Figure 112010055593417-pat00175
    와 이전 발걸음에서의 위치
    Figure 112010055593417-pat00176
    사이의 이족보행 로봇의 이동 방향의 차이를 나타낸다. 만약 허용 가능 요잉 각도 범위(yawing angle range)를 넘으면
    Figure 112010055593417-pat00177
    는 미리 설정된 패널티 값
    Figure 112010055593417-pat00178
    로 할당된다.)
KR1020100083472A 2010-08-27 2010-08-27 이족보행 로봇을 위한 발걸음 계획 방법 KR101210498B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100083472A KR101210498B1 (ko) 2010-08-27 2010-08-27 이족보행 로봇을 위한 발걸음 계획 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100083472A KR101210498B1 (ko) 2010-08-27 2010-08-27 이족보행 로봇을 위한 발걸음 계획 방법

Publications (2)

Publication Number Publication Date
KR20120019893A KR20120019893A (ko) 2012-03-07
KR101210498B1 true KR101210498B1 (ko) 2012-12-10

Family

ID=46128690

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100083472A KR101210498B1 (ko) 2010-08-27 2010-08-27 이족보행 로봇을 위한 발걸음 계획 방법

Country Status (1)

Country Link
KR (1) KR101210498B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107422733B (zh) * 2017-07-27 2020-04-21 南京理工大学 一种基于两轮差速机器人的运动控制方法
WO2021025708A1 (en) * 2019-08-06 2021-02-11 Boston Dynamics, Inc. Constrained mobility mapping
KR102424506B1 (ko) * 2020-09-15 2022-07-26 한국과학기술연구원 발자국 생성을 통한 휴머노이드 로봇의 균형 복원 방법
CN114019957A (zh) * 2021-10-15 2022-02-08 上海电机学院 一种企鹅机器人步态规划方法、系统、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100873107B1 (ko) * 2007-01-30 2008-12-09 한국과학기술원 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간zmp 조작법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100873107B1 (ko) * 2007-01-30 2008-12-09 한국과학기술원 이족 보행 로봇의 수정 가능한 걸음새 생성을 위한 실시간zmp 조작법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문1.2009

Also Published As

Publication number Publication date
KR20120019893A (ko) 2012-03-07

Similar Documents

Publication Publication Date Title
EP2298506B1 (en) Mobile device and method for controlling a mobile device
JP7219812B2 (ja) 地形を意識したステッププランニングシステム
Wu et al. Neurally controlled steering for collision-free behavior of a snake robot
CN105137969A (zh) 基于支撑线运动分解的四足机器人trot步态本体位姿控制方法
KR101210498B1 (ko) 이족보행 로봇을 위한 발걸음 계획 방법
CN112847371B (zh) 一种仿人机器人动态跨越连续障碍物的运动规划方法
CN107856035A (zh) 一种基于强化学习和全身控制器的鲁棒性动态运动方法
Tennakoon et al. Probe-before-step walking strategy for multi-legged robots on terrain with risk of collapse
Mita et al. Analytical time optimal control solution for a two-link planar aerobot with initial angular momentum
Saputra et al. Adaptive motion pattern generation on balancing of humanoid robot movement
Shao et al. Trajectory planning and posture adjustment of a quadruped robot for obstacle striding
Jun et al. Realization of miniature humanoid for obstacle avoidance with real-time zmp preview control used for full-sized humanoid
Kumagai et al. Efficient locomotion planning for a humanoid robot with whole-body collision avoidance guided by footsteps and centroidal sway motion
Lim et al. Control design to achieve dynamic walking on a bipedal robot with compliance
Aghaabbasloo et al. Biped robot joint trajectory generation using PSO evolutionary algorithm
Shkolnik Sample-based motion planning in high-dimensional and differentially-constrained systems
Chestnutt Navigation and gait planning
Khusainov et al. Arbitrary Trajectory Foot Planner for Bipedal Walking.
Liu et al. Foothold Planning and Body Posture Adjustment Strategy of Hexapod Robot in Complex Terrain
Honjo et al. Effect of Trunk Swinging Behaviors on Planar Bipedal Walking with an Upper Body on Gentle Slope
Giardina et al. Simulation of forward hopping dynamics in robots and animals using a template with a circular foot and impulsive actuation
Lee et al. Hopping system control with an approximated dynamics model and upper-body motion
Hwang et al. Steady crawl gait generation algorithm for quadruped robots
Jia et al. Modelling and analysis of the passive planar rimless wheel mechanism in universal domain
Feng et al. Reseach on a new approach of auto self-balancing for rescue robot on uneven terrain

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee