KR101487783B1 - 로봇 및 그 제어방법 - Google Patents
로봇 및 그 제어방법 Download PDFInfo
- Publication number
- KR101487783B1 KR101487783B1 KR20080131033A KR20080131033A KR101487783B1 KR 101487783 B1 KR101487783 B1 KR 101487783B1 KR 20080131033 A KR20080131033 A KR 20080131033A KR 20080131033 A KR20080131033 A KR 20080131033A KR 101487783 B1 KR101487783 B1 KR 101487783B1
- Authority
- KR
- South Korea
- Prior art keywords
- robot
- limit cycle
- space
- control angle
- cycle control
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000005484 gravity Effects 0.000 claims description 17
- 239000013598 vector Substances 0.000 claims description 17
- 210000003423 ankle Anatomy 0.000 claims description 16
- 210000002683 foot Anatomy 0.000 claims description 13
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 3
- 210000002414 leg Anatomy 0.000 description 15
- 210000000544 articulatio talocruralis Anatomy 0.000 description 11
- 238000010586 diagram Methods 0.000 description 7
- 210000004394 hip joint Anatomy 0.000 description 6
- 210000000629 knee joint Anatomy 0.000 description 5
- 210000001624 hip Anatomy 0.000 description 4
- 210000001503 joint Anatomy 0.000 description 3
- 238000004088 simulation Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012827 research and development Methods 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/1612—Programme controls characterised by the hand, wrist, grip control
-
- 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36424—Balance mechanically arm to be moved
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Transportation (AREA)
- Robotics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Manipulator (AREA)
Abstract
본 발명은 이족 보행 로봇이 3D 공간상에서 균형을 잡기 위하여 리미트 사이클을 이용하기 위한 제어각을 정의하는 방법에 관한 것이다.
이를 위해 본 발명은 FSM 기반의 이족 로봇이 3D 공간상에서 균형을 잡기 위하여 FSM 기반 로봇의 상태(State)별로 균형을 잡을 수 있는 리미트 사이클 제어각을 3D 공간상에서 설정하고, 이 3D 공간상의 리미트 사이클 제어각을 사인 함수(sinusoidal function)로 제어하여 제어각과 제어각속도의 관계가 리미트 사이클 내에서 안정적인 폐루프를 형성하도록 함으로서 이족 로봇은 지지하는 발을 바꾸면서 균형을 잡게 되며 이로써 넘어지지 않고 안정된 보행을 이룰 수 있게 된다.
Description
본 발명은 로봇 및 그 제어방법에 관한 것으로, 더욱 상세하게는 이족 보행 로봇이 3D 공간상에서 균형을 잡기 위하여 리미트 사이클을 이용하기 위한 제어각을 정의하는 방법에 관한 것이다.
일반적으로, 전기적 또는 자기적인 작용을 이용하여 인간의 동작과 닮은 운동을 행하는 기계장치를 로봇이라고 한다. 초기의 로봇은 생산 현장에서의 작업 자동화ㆍ무인화 등을 목적으로 한 매니퓰레이터나 반송 로봇 등의 산업용 로봇으로 인간을 대신하여 위험한 작업이나 단순한 반복 작업, 큰 힘을 필요로 하는 작업을 수행하였으나, 최근에는 인간과 유사한 관절체계를 가지고 인간의 작업 및 생활공간에서 인간과 공존하며 두 발로 걸을 수 있는 이족 보행 로봇의 연구 개발이 활발하게 진행되고 있다.
이족 로봇의 보행 제어방법은 위치 기반의 ZMP(Zero Moment Point) 제어방식과 토크 기반의 FSM(Finite State Machine) 제어방식을 들 수 있다. 이 중에서 FSM 제어방식은 보행 제어방법에서 ZMP 제어를 이용하지 않고 토크 제어를 이용하는 모든 방식을 의미하는 것으로, 이족 로봇의 제한된 동작 상태(State)를 미리 정의해 두고(Finite State), 보행 시 제한된 동작 상태(State)를 순차적으로 변화시켜 적절히 보행하는 방식이다.
이러한 FSM 기반의 이족 로봇은 공간상에서 균형을 잡기 위하여 리미트 사이클(limit cycle)을 이용한다. 리미트 사이클은 공간상에서 시간에 따라 폐루프(closed loop)를 형성하는 궤적 경로를 의미하는 것으로, 시간에 따라 임의의 경로를 생성하는 함수의 값이 시간이 무한대로 진행될 때까지도 폐루프를 형성할 때 이를 리미트 사이클(limit cycle)이라 한다(도 1 참조).
리미트 사이클은 안정(stable) 영역과 불안정(unstable) 영역으로 나뉘어 비선형 제어(nonlinear control)를 수행하는데, 경로가 규칙적인 폐루프 범위 내에 들어오면 안정(stable) 영역, 규칙적인 폐루프 범위에 들어오지 않고 나선형으로 발산하거나 한 점에 수렴하게 되면 불안정(unstable) 영역이라고 정의한다. 2D 공간에 이족 로봇이 있다고 가정할 때, 이족 로봇의 무게 중심과 지면에 접촉된 발로 이루어진 제어각을 정의하여 제어각과 제어각의 미분 성분인 제어각속도의 관계를 2D 공간상에 표현하면 도 1의 리미트 사이클을 얻을 수 있게 된다. 2D 공간에서의 이족 로봇은 지면에 접촉된 발의 벡터가 지면과 수직이며 무게 중심도 2D 공간상에 정의되므로 리미트 사이클 제어각을 정의하기가 쉽지만 3D 공간에서의 이족 로봇은 각 관절마다 위치와 방향이 다르기 때문에 리미트 사이클 제어각을 정의하기가 쉽지 않다. 또한 3D 시뮬레이션상에서 2D 시뮬레이션 결과들을 조합한다 하더라도 모든 정보를 표현할 수 없기 때문에 실제 이족 로봇이 보행하는 3D 공간상에서 균형을 잡기 위해서는 리미트 사이클을 이용하기 위한 제어각을 정의해야 한다.
본 발명은 FSM 기반의 이족 로봇이 3D 공간상에서 균형을 잡기 위하여 리미트 사이클을 이용하기 위한 제어각을 정의하는 방법을 제시하고자 한다.
이를 위해 본 발명의 실시예는 3D 공간상에서 로봇의 균형을 잡기 위한 리미트 사이클 제어각을 설정하고; 상기 설정된 3D 공간상의 리미트 사이클 제어각을 사인 함수로 제어하여 리미트 사이클 내에서 상기 로봇의 균형을 잡는 것을 특징으로 한다.
상기 로봇은 FSM(Finite State Machine) 기반의 이족 보행 로봇인 것을 특징으로 한다.
상기 리미트 사이클 제어각은 상기 FSM의 상태(State)에 따라 상기 로봇의 위치와 방향, 기울어짐 정보를 고려하여 설정하는 것을 특징으로 한다.
상기 FSM의 상태(State)는 양발 지지(DS), 오른발 지지[(SS(R)], 왼발 지지[SS(L)] 상태로 구성되는 것을 특징으로 한다.
상기 리미트 사이클 제어각을 설정하는 것은, 상기 로봇의 몸통을 기준으로 한 가상의 평면을 정의하여 상기 로봇이 지면과 접촉되는 점(C1)을 상기 가상의 평면에 투영한 평면상의 접촉점(C2)을 생성하고; 상기 평면상의 접촉점(C2)과 상기 로봇의 무게 중심(COG) 위치를 이용하여 공간상의 접촉점(C3)을 생성하고; 상기 공간상의 접촉점(C3), 상기 평면상의 접촉점(C2) 및 상기 무게 중심(COG) 위치를 이용하여 상기 공간상의 벡터들을 생성하고; 상기 공간상의 벡터들을 이용하여 상기 리미트 사이클 제어각을 구하는 것을 특징으로 한다.
상기 평면상의 접촉점(C2)과 상기 공간상의 접촉점(C3)은 상기 로봇이 지면과 접촉되는 점인 것을 특징으로 한다.
상기 리미트 사이클 제어각은 상기 로봇이 지면과 접촉되는 점에서 구성되어 상기 로봇의 발목을 제어하는 것을 특징으로 한다.
상기 리미트 사이클 제어각은 상기 리미트 사이클이 안정된 폐루프를 형성하도록 상기 발목의 각도를 제어하는 것을 특징으로 한다.
상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 것은, 상기 FSM의 상태(State)에 따라 상기 리미트 사이클이 안정된 폐루프를 형성하게 하는 것을 특징으로 한다.
상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 것은, 상기 리미트 사이클 제어각과 상기 리미트 사이클 제어각의 미분 성분인 제어각속도의 관계가 공간상에서 안정된 폐루프의 상기 리미트 사이클을 형성하게 하는 것을 특징으로 한다.
또한, 본 발명의 실시예는 상기 리미트 사이클 제어각을 상기 사인 함수로 제어함에 따라 상기 로봇의 발목 각도를 상기 리미트 사이클 내에서 제어하는 것을 특징으로 한다.
그리고, 본 발명의 실시예는 발목; 상기 발목의 리미트 사이클 제어각을 3D 공간상에서 설정하는 설정부; 상기 설정된 3D 공간상의 리미트 사이클 제어각을 사인 함수로 제어하고, 상기 사인 함수를 이용하여 상기 발목의 각도를 리미트 사이 클 내에서 제어하는 제어부를 포함한다.
상기 설정부는 상기 로봇의 균형을 잡기 위해 상기 3D 공간상에서 상기 로봇의 위치와 방향, 기울어짐 정보를 고려하여 상기 리미트 사이클 제어각을 설정하는 것을 특징으로 한다.
상기 제어부는 상기 3D 공간상에서 상기 리미트 사이클이 안정된 폐루프를 형성하게 상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 것을 특징으로 한다.
상기 제어부는 상기 리미트 사이클 제어각을 상기 사인 함수로 제어함에 따라 상기 발목의 각도를 상기 리미트 사이클 내에서 제어하는 것을 특징으로 한다.
이러한 본 발명의 실시예에 의하면 FSM 기반의 이족 로봇이 3D 공간상에서 균형을 잡기 위하여 FSM 기반 로봇의 상태(State)별로 균형을 잡을 수 있는 리미트 사이클 제어각을 3D 공간상에서 설정하고, 이 3D 공간상의 리미트 사이클 제어각을 사인 함수(sinusoidal function)로 제어하여 제어각과 제어각속도의 관계가 리미트 사이클 내에서 안정적인 폐루프를 형성하도록 함으로서 이족 로봇은 지지하는 발을 바꾸면서 균형을 잡게 되며 이로써 넘어지지 않고 안정된 보행을 이룰 수 있게 된다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
도 2는 본 발명의 실시예에 의한 로봇의 외관 구성도이다.
도 2에서, 본 발명의 실시예에 의한 인간과 마찬가지로 두 개의 다리(11R, 11L)에 의해 직립 이동하는 이족 보행 로봇으로, 몸통(12)과, 몸통(12)의 상부에 두 개의 팔(13R, 13L)과 머리(14)를 구비하며, 두 개의 다리(11R, 11L)와 팔(13R, 13L) 선단에는 각각 발(15R, 15L)과 손(16R, 16L)을 구비한다.
참조부호에서, R과 L은 로봇(10)의 오른쪽(Right)과 왼쪽(Left)을 나타내고, COG는 로봇(10)의 무게 중심을 나타낸다.
도 3은 도 2에 나타낸 로봇의 주요 관절 구조를 나타낸 도면이다.
도 3에서, 두 개의 다리(11R, 11L)는 로봇(10)의 발목, 무릎, 힙에 해당하는 부분이 회전할 수 있도록 발목 관절(17R, 17L), 무릎 관절(18R, 18L), 힙 관절(19R, 19L)을 각각 구비하고, 힙 관절(19R, 19L)은 두 개의 다리(11R, 11L)와 연결되는 몸통(12) 아래의 양 쪽 끝에 위치한다.
각 다리(11R, 11L)의 발목 관절(17R, 17L)은 x축(roll axis)과 y축(pitch axis)로 움직임이 가능하고, 무릎 관절(18R, 18L)은 y축(pitch axis)로 움직임이 가능하며, 힙 관절(19R, 19L)은 x축(roll axis)과 y축(pitch axis), z축(yaw axis)로 움직임이 가능하다.
또한, 두 개의 다리(11R, 11L)에는 힙 관절(19R, 19L)과 무릎 관절(18R, 18L)을 연결하는 상부 링크(20R, 20L)와, 무릎 관절(18R, 18L)과 발목 관절(17R, 17L)을 연결하는 하부 링크(21R, 21L)를 각각 포함하여 각 관절((17R, 17L), (18R, 18L), (19R, 19L))의 움직임에 따라 일정 수준의 자유도를 가지고 보행이 가능하도록 한다.
그리고, 두 개의 다리(11R, 11L)와 연결되는 몸통(12)에는 로봇(10)의 허리 에 해당하는 부분이 회전할 수 있도록 허리 관절(23)을 구비하며, 허리 관절(23)은 몸통(12) 아래의 양쪽 끝에 위치한 힙 관절(19R, 19L)을 연결하는 힙 링크(22)의 중심(22G) 위치 즉, 로봇(10)의 무게 중심 위치(COG)와 동일한 축 선상에 위치하여 x축과 y축, z축으로 움직임이 가능하다.
도면에 나타내지는 않았지만, 로봇(10)의 모든 관절((17R, 17L), (18R, 18L), (19R, 19L), 23)은 구동을 위한 엑츄에이터(예를 들어, 모터와 같은 전동장치)를 각각 포함하고 있다.
도 4는 본 발명의 실시예에 의한 FSM 기반 로봇의 2D 공간상에서 정의되는 리미트 사이클 제어각을 나타낸 도면으로서, 피치축(y축) 방향과 요축(z축) 방향에 대한 y-z 평면상(2D 공간상)에서 로봇(10)의 몸통(12)과 좌우 다리(11L, 11R)를 나타낸 것으로 인간이 앞으로 보행 시 양쪽 발을 번갈아 가며 걷는 모습을 y-z 평면에서 간략화한 것과 같다.
도 4에서, FSM 기반 로봇(10)의 상태(State)는 양발 지지(DS;Double Support), 오른발 지지[SS(R);Single Support Right], 왼발 지지[SS(L);Single Support Left] 상태의 총 3개로 구성되며, FSM(Finite State Machine)은 상태(State)별로 규칙적으로 반복하는 특성을 갖는다.
FSM 기반 로봇(10)이 균형을 잡을 때에는 리미트 사이클의 곡선이 항상 안정(stable) 영역 내로 들어와야 하며, 이는 리미트 사이클의 곡선이 한 점에 수렴하거나 발산하지 않고 항상 폐루프를 형성해야 로봇(10)의 좌우 균형을 안정적으로 잡을 수 있기 때문이다. 따라서 로봇(10)이 한발(15R 또는 15L)을 딛고 나중에 한 발(15L 또는 15R)을 다시 딛을 상황을 반복하면 안정(stable) 영역을 위해서 리미트 사이클은 항상 폐루프를 형성해야 한다.
FSM 기반의 로봇(10)이 2D 공간상에서 좌우 균형을 잡기 위해서 리미트 사이클을 이용하는 균형은 두 발(15R 또는 15L)을 지면과 접촉하여 균형을 잡는 것이 아니고 양발(15R, 15L)을 번갈아 가면서 좌우 균형을 잡는 것이다.
A는 로봇(10)이 2D 공간상에서 리미트 사이클을 이용하여 균형을 잡을 수 있는 제어각으로, 로봇(10)이 지면과 접촉되는 점(즉, 지지다리의 발바닥)을 기준으로 지면과 수직인 벡터와 로봇(10)의 무게 중심(COG)까지의 벡터 사이의 각으로 정의하며, 지면과 접촉되는 점에서 구성되므로 로봇(10)의 발목 관절(17R, 17L)을 제어하게 된다. A'는 제어각(A)의 미분 성분인 제어각속도를 나타낸다.
도 4에서, 양발 지지(DS) 상태일 때는 제어각(A)과 제어각속도(A')가 최대가 되고, 한발 지지[SS(R) 또는 SS(L)] 상태일 때는 제어각(A)과 제어각속도(A')가 최소가 되므로 이를 리미트 사이클에 적용하면 로봇(10)은 좌우 발(15R 또는 15L)을 바꾸면서 균형을 잡을 수 있게 된다.
도 4는 로봇(10)이 2D 공간에서 리미트 사이클을 이용하여 균형을 잡을 수 있는 제어각(A)을 나타낸 것으로, 실제 로봇(10)이 보행하는 3D 공간에서는 2D 공간에서의 제어각(A)을 그대로 사용할 수 없다. 그 이유는 2D 공간에서는 로봇(10)의 위치(x방향)와 방향(z방향), 기울어짐(y방향)에 대한 정보가 없으며 각 관절((17R, 17L), (18R, 18L), (19R, 19L))도 한 평면에 있다는 가정 하에서 제어각(A)을 정의하기 때문이다. 따라서 3D 공간상에서 로봇(10)의 위치(x방향), 방 향(z방향), 기울어짐(y방향)에 대한 정보와 각 관절((17R, 17L), (18R, 18L), (19R, 19L))이 한 평면에 있지 않다는 점을 고려하여 3D 공간에서의 리미트 사이클 제어각(B2)을 정의해야 할 필요가 있다.
도 5a는 본 발명의 실시예에 의한 FSM 기반 로봇을 3D 공간상에 나타낸 도면으로서, 로봇(10)의 위치(x방향)와 방향(z방향), 기울어짐(y방향)에 대한 x-y-z 평면상(3D 공간상)에서 로봇(10)의 몸통(12)과 좌우 다리(11L, 11R)를 나타낸 것이다.
도 5b는 도 5a를 ⓢ방향에서 본 도면으로서, 왼쪽 다리(11L)가 지지되고 오른쪽 다리(11R)가 스윙(swing)하는 상태로 로봇(10)이 지면(G)과 접촉되는 점(C1;이하, 지면과의 접촉점이라 한다)을 나타낸 것이다.
이하에서는 본 발명의 실시예에 의한 로봇(10)이 3D 공간상에서 리미트 사이클 제어각(B2)을 정의하는 과정을 설명한다.
본 발명의 실시예를 설명하기 위해서 3D 공간상 로봇(10)의 임의의 점(예를 들어, 몸통이나 힙 링크의 가장자리 점)에 대한 위치정보와 무게 중심(COG)의 위치정보는 알고 있다고 가정한다. 로봇(10)의 임의의 점(예를 들어, 몸통이나 힙 링크의 가장자리 점)에 대한 위치정보는 로봇(10)의 기구학적 특성(kinematics characteristic)과 각종 센서 정보를 이용하여 알 수 있으며, 무게 중심(COG)의 위치는 각 링크((20R, 20L), (21R, 21L))의 무게정보와 각 관절((17R, 17L), (18R, 18L), (19R, 19L))의 위치정보를 이용하여 알 수 있다.
도 6a는 도 5a의 로봇을 몸통을 기준으로 한 가상의 평면에 나타낸 도면이 고, 도 6b는 도 5b의 로봇을 몸통을 기준으로 한 가상의 평면에 나타낸 도면으로서, 이 가상의 평면은 위치와 방향 정보를 공간상에서 모두 표현해 줄 수 있는 로봇 평면(P)이다.
도 6a 및 도 6b에서, 로봇 평면(P)에서 벗어난 왼쪽 다리(11L; 링크)로 인하여 지면과의 접촉점(C1)이 로봇 평면(P)상에서 벗어난 경우 지면과의 접촉점(C1)을 로봇 평면(P)상으로 투영하여 로봇 평면(P)상의 정보로서 사용한다. 몸통(12)의 가장자리 점(①)의 위치와, 힙 링크(22)의 가장자리 점(②)의 위치를 이용하여 공간상 제1벡터(V1)를 생성하고, 공간상 제1벡터(V1)를 연장하면 지면(G)과 만나는 점(C2)의 위치를 알 수 있다. 이 점(C2;이하, 로봇 평면상의 접촉점이라 한다)이 로봇 평면(P) 밖에서 지면(G)과 접촉된 점(C1)이 로봇 평면(P)상으로 투영된 점이다.
도 7은 본 발명의 실시예에 의한 FSM 기반 로봇의 3D 공간상에서 정의되는 리미트 사이클 제어각을 나타낸 도면이다.
도 7에서, 로봇 평면(P)상의 접촉된 다리(11L)쪽의 힙 점(도 6a의 ②)과 무게 중심(COG) 위치를 이용하여 두 점을 연장하면 지면(G)과 만나는 점(C3)의 위치를 알 수 있다. 이 점(C3;이하, 공간상의 접촉점이라 한다)이 로봇 평면(P) 밖에서 지면(G)과 접촉된 점(C1)이 3D 공간상으로 투영된 점이다.
공간상의 접촉점(C3)과 로봇 평면(P)상의 접촉점(C2)의 위치정보를 이용하여 공간상 제2벡터(V2; z=0)를 생성하고, 로봇 평면(P)상의 접촉점(C2)과 무게 중심(COG) 위치를 이용하여 두 점을 연장하면 공간상 제3벡터(V3)를 생성할 수 있다.
공간상 제2벡터(V2)와 공간상 제3벡터(V3)의 내적(dot product)을 계산하면 공간상 제2벡터(V2)와 공간상 제3벡터(V3) 사이의 각 B1를 구할 수 있다. 이 각 B1를 90도에서 빼면 공간상 제1벡터(V1)와 공간상 제3벡터(V3) 사이의 각(B2=90-B1)을 구할 수 있는데, 이 구해진 각(B2)을 3D 공간상에서의 리미트 사이클 제어각으로 정의한다.
정의된 리미트 사이클 제어각(B2)은 로봇(10)이 앞으로 기울어지는 것과 관계없이 오로지 로봇 평면(P)상에서 로봇(10)이 좌우로 기울어짐 각도만을 표현해주기 때문에 로봇(10)의 좌우 균형을 잡는 데에 사용이 가능하다.
도 8은 본 발명의 실시예에 의한 FSM 기반 로봇의 균형을 잡기 위한 제어 블록도로서, 설정부(50), 제어부(52), 엑츄에이터(54), 관절각 측정부(56) 및 무게 중심 측정부(58)를 포함하여 구성된다.
설정부(50)는 FSM 기반의 로봇(10)이 3D 공간상에서 균형을 잡을 수 있도록 리미트 사이클을 이용하기 위한 제어각(B2)을 설정하는 것으로, 로봇(10)이 3D 공간상에서 균형을 잡기 위해 로봇(10)의 상태(State)에 부합하는 리미트 사이클 제어각(B2)을 설정한다(도 5 내지 도 7 참조).
제어부(52)는 로봇(10)의 상태(State)에 부합하여 3D 공간상에서 설정한 리미트 사이클 제어각(B2)을 사인 함수(sinusoidal function)로 제어하여 리미트 사이클 제어각(B2)과 리미트 사이클 제어각속도(B2')의 관계가 3D 공간에서 안정(stable)한 원/타원형의 리미트 사이클을 형성하여 FSM 기반의 로봇(10)이 균형을 잡을 수 있도록 제어한다. 리미트 사이클이 폐루프를 형성하기 위한 다양한 방 법 중 하나가 사인 함수(sinusoidal function)를 사용하여 미분 성분과 관계 곡선을 그리면 안정적인 원/타원형의 리미트 사이클을 형성할 수 있다. 이 리미트 사이클을 로봇(10)의 좌우 균형의 알고리즘으로 사용하게 되면 안정적으로 로봇(10)이 균형을 잡을 수 있게 된다.
리미트 사이클 제어각(B2)을 사인 함수(sinusoidal function)로 제어하는 방법은 아래의 [식 1], [식 2]와 같다.
리미트 사이클 제어각(B2) = B2max × sin(ω × t) ..... [식 1]
리미트 사이클 제어각속도(B2') = B2max × ω × cos(ω × t) .....[식 2]
여기에서, B2max는 설계값이고, ω는 리미트 사이클 제어각(B2)의 변환 주기(제어주기)이며, t는 시간의 변수이다.
엑츄에이터(54)는 로봇(10)의 상태(State)에 부합하여 3D 공간상에서 설정한 리미트 사이클 제어각(B2)을 제어부(52)에서 사인 함수(sinusoidal function)로 제어를 하면 발목 관절(17R, 17L)의 목표 각도가 리미트 사이클을 이루게 되는데, 발목 관절(17R, 17L)의 각도가 리미트 사이클을 벗어나지 않도록 제어부(52)의 토크제어신호에 따라 발목 관절(17R, 17L)을 구동한다.
관절각 측정부(56)는 엑츄에이터(54)의 구동에 따라 움직이는 발목 관절(17R, 17L)의 각도를 측정하여 제어부(52)에 전달하는 것으로, 이는 발목 관절(17R, 17L)의 각도가 설정부(50)에서 설정한 리미트 사이클 제어각(B2)을 추종하기 위하여 제어부(52)에 피드백하는 제어 인자이다.
무게 중심 측정부(58)는 로봇(10)의 상태(State)에 따라 변화하는 로봇(10)의 무게 중심(COG)의 위치를 측정하여 제어부(52)에 전달하는 것으로, 이는 무게 중심(COG)의 위치가 설정부(50)에서 설정한 리미트 사이클 제어각(B2)을 추종하기 위하여 제어부(52)에 피드백하는 제어 인자이다.
FSM 기반의 로봇(10)에서 보행 시 좌우로 균형을 잡기 위해 발목에서 제어할 관절 각도가 폐루프를 형성하도록 로봇(10)의 리미트 사이클 제어각(B2)을 정의하는데 있어서 2D 시뮬레이션 상에서 정의된 각을 3D상에서 바로 사용할 수 없기 때문에 3D에서 로봇(10)의 위치와 정보 기울어짐에 관계없이 좌우 균형에 필요한 제어각(B2)을 정의하여 사인 함수(sinusoidal function)로 제어하면 3D 시뮬레이션에서도 리미트 사이클 균형 알고리즘을 사용할 수 있다.
도 1은 본 발명에 적용되는 리미트 사이클의 개념도이다.
도 2는 본 발명의 실시예에 의한 로봇의 외관 구성도이다.
도 3은 도 2에 나타낸 로봇의 주요 관절 구조를 나타낸 도면이다.
도 4는 본 발명의 실시예에 의한 FSM 기반 로봇의 2D 공간상에서 정의되는 리미트 사이클 제어각을 나타낸 도면이다.
도 5a는 본 발명의 실시예에 의한 FSM 기반 로봇을 3D 공간상에 나타낸 도면이다.
도 5b는 도 5a를 ⓢ방향에서 본 도면이다.
도 6a는 도 5a의 로봇을 몸통을 기준으로 한 가상의 평면에 나타낸 도면이다.
도 6b는 도 5b의 로봇을 몸통을 기준으로 한 가상의 평면에 나타낸 도면이다.
도 7은 본 발명의 실시예에 의한 FSM 기반 로봇의 3D 공간상에서 정의되는 리미트 사이클 제어각을 나타낸 도면이다.
도 8은 본 발명의 실시예에 의한 FSM 기반 로봇의 균형을 잡기 위한 제어 블록도이다.
*도면의 주요 부분에 대한 부호의 설명*
10 : 로봇 11R, 11L : 다리
12 : 몸통 15R, 15L : 발
17R, 17L : 발목 관절 18R, 18L : 무릎 관절
19R, 19L : 힙 관절 20R, 20L : 상부 링크
21R, 21L : 하부 링크 22G : 힙 링크 중심
50 : 설정부 52 : 제어부
56 : 관절각 측정부 58 : 무게 중심 측정부
Claims (16)
- 3D 공간상에서 로봇의 균형을 잡기 위한 리미트 사이클 제어각을 설정하고;상기 설정된 3D 공간상의 리미트 사이클 제어각을 사인 함수로 제어하여 리미트 사이클 내에서 상기 로봇의 균형을 잡는 것을 포함하되,상기 리미트 사이클 제어각을 설정하는 것은,상기 로봇의 몸통을 기준으로 한 가상의 평면을 정의하여 상기 로봇이 지면과 접촉되는 점(C1)을 상기 가상의 평면에 투영한 평면상의 접촉점(C2)을 생성하고;상기 평면상의 접촉점(C2)과 상기 로봇의 무게 중심(COG) 위치를 이용하여 공간상의 접촉점(C3)을 생성하고;상기 공간상의 접촉점(C3), 상기 평면상의 접촉점(C2) 및 상기 무게 중심(COG) 위치를 이용하여 상기 공간상의 벡터들을 생성하고;상기 공간상의 벡터들을 이용하여 상기 리미트 사이클 제어각을 구하는 로봇의 제어방법.
- 제1항에 있어서,상기 로봇은 FSM(Finite State Machine) 기반의 이족 보행 로봇인 로봇의 제어방법.
- 제2항에 있어서,상기 리미트 사이클 제어각은 상기 FSM의 상태(State)에 따라 상기 로봇의 위치와 방향, 기울어짐 정보를 고려하여 설정하는 로봇의 제어방법.
- 제3항에 있어서,상기 FSM의 상태(State)는 양발 지지(DS), 오른발 지지[(SS(R)], 왼발 지지[SS(L)] 상태로 구성되는 로봇의 제어방법.
- 삭제
- 제1항에 있어서,상기 평면상의 접촉점(C2)과 상기 공간상의 접촉점(C3)은 상기 로봇이 지면과 접촉되는 점인 로봇의 제어방법.
- 제6항에 있어서,상기 리미트 사이클 제어각은 상기 로봇이 지면과 접촉되는 점에서 구성되어 상기 로봇의 발목을 제어하는 로봇의 제어방법.
- 제7항에 있어서,상기 리미트 사이클 제어각은 상기 리미트 사이클이 안정된 폐루프를 형성하 도록 상기 발목의 각도를 제어하는 로봇의 제어방법.
- 제4항에 있어서,상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 것은,상기 FSM의 상태(State)에 따라 상기 리미트 사이클이 안정된 폐루프를 형성하게 하는 로봇의 제어방법.
- 제9항에 있어서,상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 것은,상기 리미트 사이클 제어각과 상기 리미트 사이클 제어각의 미분 성분인 제어각속도의 관계가 공간상에서 안정된 폐루프의 상기 리미트 사이클을 형성하게 하는 로봇의 제어방법.
- 제10항에 있어서,상기 리미트 사이클 제어각을 상기 사인 함수로 제어함에 따라 상기 로봇의 발목 각도를 상기 리미트 사이클 내에서 제어하는 로봇의 제어방법.
- 발목;상기 발목의 리미트 사이클 제어각을 3D 공간상에서 설정하는 설정부;상기 설정된 3D 공간상의 리미트 사이클 제어각을 사인 함수로 제어하고, 상기 사인 함수를 이용하여 상기 발목의 각도를 리미트 사이클 내에서 제어하는 제어부를 포함하고,상기 제어부는 상기 로봇의 몸통을 기준으로 한 가상의 평면을 정의하여 상기 로봇이 지면과 접촉되는 점(C1)을 상기 가상의 평면에 투영한 평면상의 접촉점(C2)을 생성하고;상기 가상의 평면상의 접촉점(C2)과 상기 로봇의 무게 중심(COG) 위치를 이용하여 공간상의 접촉점(C3)을 생성하고;상기 공간상의 접촉점(C3), 상기 가상의 평면상의 접촉점(C2) 및 상기 무게 중심(COG) 위치를 이용하여 상기 공간상의 벡터들을 생성하고;상기 생성된 공간상의 벡터들을 이용하여 상기 리미트 사이클 제어각을 구하여 상기 리미트 사이클 제어각을 설정하는 로봇.
- 제12항에 있어서,상기 로봇은 FSM(Finite State Machine) 기반의 이족 보행 로봇인 로봇.
- 제13항에 있어서,상기 설정부는 상기 로봇의 균형을 잡기 위해 상기 3D 공간상에서 상기 로봇의 위치와 방향, 기울어짐 정보를 고려하여 상기 리미트 사이클 제어각을 설정하는 로봇.
- 제14항에 있어서,상기 제어부는 상기 3D 공간상에서 상기 리미트 사이클이 안정된 폐루프를 형성하게 상기 리미트 사이클 제어각을 상기 사인 함수로 제어하는 로봇.
- 제15항에 있어서,상기 제어부는 상기 리미트 사이클 제어각을 상기 사인 함수로 제어함에 따라 상기 발목의 각도를 상기 리미트 사이클 내에서 제어하는 로봇.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080131033A KR101487783B1 (ko) | 2008-12-22 | 2008-12-22 | 로봇 및 그 제어방법 |
US12/591,120 US8301303B2 (en) | 2008-12-22 | 2009-11-09 | Robot and method of controlling the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20080131033A KR101487783B1 (ko) | 2008-12-22 | 2008-12-22 | 로봇 및 그 제어방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100072588A KR20100072588A (ko) | 2010-07-01 |
KR101487783B1 true KR101487783B1 (ko) | 2015-01-29 |
Family
ID=42267253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20080131033A KR101487783B1 (ko) | 2008-12-22 | 2008-12-22 | 로봇 및 그 제어방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8301303B2 (ko) |
KR (1) | KR101487783B1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101732901B1 (ko) * | 2010-10-05 | 2017-05-08 | 삼성전자주식회사 | 보행 로봇 및 그 제어방법 |
KR101778027B1 (ko) * | 2010-12-21 | 2017-09-13 | 삼성전자주식회사 | 보행 로봇 및 그 자세 제어 방법 |
KR20130078886A (ko) * | 2012-01-02 | 2013-07-10 | 현대자동차주식회사 | 보행로봇의 균형제어방법 |
KR101985790B1 (ko) * | 2012-02-21 | 2019-06-04 | 삼성전자주식회사 | 보행 로봇 및 그 제어 방법 |
JP5910647B2 (ja) * | 2014-02-19 | 2016-04-27 | トヨタ自動車株式会社 | 移動ロボットの移動制御方法 |
JP1580536S (ko) * | 2016-01-29 | 2017-07-03 | ||
CN107472396B (zh) * | 2017-09-26 | 2021-04-27 | 北京航空航天大学 | 一种可实现空中姿态调整的四足机器人 |
CN110920769B (zh) * | 2019-11-28 | 2020-12-15 | 深圳市优必选科技股份有限公司 | 机器人的足腰协调步态规划方法、装置、介质及机器人 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000052284A (ja) * | 1998-08-05 | 2000-02-22 | Fujitsu Ltd | ロボットの動作支援システム及びその制御方法 |
KR20030007543A (ko) * | 2001-02-21 | 2003-01-23 | 소니 가부시끼 가이샤 | 로봇 장치 및 로봇 장치의 동작 제어 방법 |
JP2007210071A (ja) * | 2006-02-09 | 2007-08-23 | Sony Corp | ロボット装置及びその制御方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60237999D1 (de) * | 2001-12-28 | 2010-11-25 | Honda Motor Co Ltd | Vorrichtung zur steuerung des ganges für mobilen roboter mit beinen |
US7313463B2 (en) * | 2005-03-31 | 2007-12-25 | Massachusetts Institute Of Technology | Biomimetic motion and balance controllers for use in prosthetics, orthotics and robotics |
JP4815611B2 (ja) * | 2005-06-08 | 2011-11-16 | 国立大学法人 名古屋工業大学 | 受動歩行脚式ロボット |
JP4951732B2 (ja) * | 2006-05-02 | 2012-06-13 | ソニー株式会社 | 駆動方法、駆動制御装置及びロボット |
-
2008
- 2008-12-22 KR KR20080131033A patent/KR101487783B1/ko active IP Right Grant
-
2009
- 2009-11-09 US US12/591,120 patent/US8301303B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000052284A (ja) * | 1998-08-05 | 2000-02-22 | Fujitsu Ltd | ロボットの動作支援システム及びその制御方法 |
KR20030007543A (ko) * | 2001-02-21 | 2003-01-23 | 소니 가부시끼 가이샤 | 로봇 장치 및 로봇 장치의 동작 제어 방법 |
JP2007210071A (ja) * | 2006-02-09 | 2007-08-23 | Sony Corp | ロボット装置及びその制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US8301303B2 (en) | 2012-10-30 |
KR20100072588A (ko) | 2010-07-01 |
US20100161117A1 (en) | 2010-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101493384B1 (ko) | 로봇 및 그 균형 제어방법 | |
KR101487783B1 (ko) | 로봇 및 그 제어방법 | |
KR101985790B1 (ko) | 보행 로봇 및 그 제어 방법 | |
KR101264248B1 (ko) | 다리식 이동 로봇 | |
JP4998506B2 (ja) | ロボット制御装置、ロボット制御方法、及び脚式ロボット | |
KR101778027B1 (ko) | 보행 로봇 및 그 자세 제어 방법 | |
KR101687630B1 (ko) | 보행 로봇 및 그 균형 제어 방법 | |
KR100515277B1 (ko) | 2각 보행식 이동 장치, 그 보행 제어 장치 및 보행 제어방법 | |
KR100687461B1 (ko) | 로보트 및 로보트용 관절 장치 | |
KR20100073438A (ko) | 로봇 및 그 제어방법 | |
KR20110082394A (ko) | 보행 로봇 및 그 제어 방법 | |
KR101766755B1 (ko) | 보행 로봇 및 그 제어방법 | |
JPH04201190A (ja) | 脚式移動ロボットの歩行制御装置 | |
JPH10230485A (ja) | 脚式移動ロボットの姿勢制御装置 | |
KR20130068694A (ko) | 보행 로봇 및 그 제어 방법 | |
KR20100078248A (ko) | 보행 로봇 및 그 제어방법 | |
KR20110017500A (ko) | 다리식 이동 로봇의 제어장치 및 그 제어방법 | |
EP2343230A1 (en) | Robot and control method thereof | |
KR20120071599A (ko) | 보행 로봇 및 그 제어 방법 | |
KR20120024098A (ko) | 보행 로봇 및 그 제어방법 | |
KR101487782B1 (ko) | 로봇 및 그 균형 제어방법 | |
CN114454983B (zh) | 一种四足机器人转弯控制方法及系统 | |
JP5639342B2 (ja) | ロボット及びその歩行制御方法 | |
KR20180004397A (ko) | 보행 로봇 및 그 자세 제어 방법 | |
Yongying et al. | Walking gait generation for humanoid robot BRAIL 1.0 |
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 | ||
FPAY | Annual fee payment |
Payment date: 20171219 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20181220 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20191217 Year of fee payment: 6 |