[go: up one dir, main page]

KR20130095973A - 보행 로봇 및 그 제어 방법 - Google Patents

보행 로봇 및 그 제어 방법 Download PDF

Info

Publication number
KR20130095973A
KR20130095973A KR1020120017424A KR20120017424A KR20130095973A KR 20130095973 A KR20130095973 A KR 20130095973A KR 1020120017424 A KR1020120017424 A KR 1020120017424A KR 20120017424 A KR20120017424 A KR 20120017424A KR 20130095973 A KR20130095973 A KR 20130095973A
Authority
KR
South Korea
Prior art keywords
joint
ground
walking
robot
angle
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.)
Granted
Application number
KR1020120017424A
Other languages
English (en)
Other versions
KR101985790B1 (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 KR1020120017424A priority Critical patent/KR101985790B1/ko
Priority to US13/770,357 priority patent/US9073209B2/en
Priority to CN201310055517.6A priority patent/CN103257652B/zh
Publication of KR20130095973A publication Critical patent/KR20130095973A/ko
Application granted granted Critical
Publication of KR101985790B1 publication Critical patent/KR101985790B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • 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/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control

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

FSM 기반의 보행 제어 방식에서 평평하지 않은 지면을 안정되게 보행하기 위한 밸런싱 동작을 구현하는 보행 로봇 및 그 제어 방법을 제안한다.
복잡한 동적 방정식(Dynamics Equation)을 풀지 않고 FSM을 이용하여 힙 관절부, 무릎 관절부, 발목 관절부의 토크를 제어함으로써 안정적인 보행을 구현하는 방법에 있어서, 양 발이 지면과 이루는 각도를 간단하게 이용하며, 이를 단순 계산에 의해 평평하지 않은 지면을 균형을 유지하며 안정적으로 보행할 수 있게 된다. 또한, 간단한 보상 각도 계산으로 6자유도의 관절을 가진 로봇에 적용 가능하다.

Description

보행 로봇 및 그 제어 방법{WALKING ROBOT AND CONTROL METHOD THEREOF}
FSM 기반에 따라 보행하는 로봇의 안정적인 보행 제어를 위한 보행 로봇 및 그 제어 방법에 관한 것이다.
인간과 유사한 관절 체계를 가지고 인간의 작업 및 생활 공간에서 인간과 공존하며 보행하는 로봇의 연구 개발이 활발하게 진행되고 있다. 보행 로봇은 이족 또는 3족 이상의 복수의 다리를 가지는 다족 보행 로봇으로 구성되며, 안정적인 보행을 위해 각 관절에 위치한 전기 모터, 유압 모터 등의 액츄에이터를 구동해야 한다. 액츄에이터의 구동 방식은 각 관절의 지령(command) 각도, 즉 지령(command) 위치를 주고 그것을 추종 제어하는 위치 기반의 ZMP(Zero Moment Point) 제어 방식과, 각 관절의 지령(command) 토크를 주고 그것을 추종 제어하는 토크 기반의 동적 보행(Dynamic Walking) 제어 방식 또는 FSM(Finite State Machine) 제어 방식을 들 수 있다.
ZMP 제어 방식은 ZMP 구속 조건, 즉 ZMP가 지지하는 다리로 이루어진 지지다각형 내의 안전 영역(한발로 지지하고 있을 경우에는 그 발의 영역, 양발로 지지하고 있을 경우에는 양발의 영역을 포함하는 convex polygon 내에서 안전을 고려하여 작게 설정한 영역을 의미한다)에 존재해야 한다는 조건을 만족하도록 보행 방향, 보행 폭, 보행 속도 등을 미리 설정하고, 이 설정에 대응하는 각 다리의 보행 패턴을 생성하며, 그 보행 패턴에 따라 각 다리의 보행 궤적을 계산한다. 또한 계산된 보행 궤적의 역기구학(Inverse Kinematics) 계산을 통해 각 다리의 관절의 각도를 계산하고, 각 관절의 현재 각도와 목표 각도에 기초하여 각 관절의 목표 제어 값을 계산한다.
그러나, ZMP 제어 방식은 위치 기반의 제어 방법이기 때문에 정확한 위치 제어가 가능한 반면, ZMP를 제어하기 위해 각 관절의 정확한 각도 제어를 수행해야 하므로 높은 서보 게인을 필요로 한다. 이로 인해 높은 전류를 필요로 하기 때문에 에너지 효율이 낮고 관절의 강성이 커서 주위 환경에 큰 충격을 줄 수 있다. 또한 주어진 COG(Center Of Gravity)와 Foot의 보행 패턴으로부터 역기구학을 통하여 각 관절의 각도를 계산하기 위해선 기구학적 특이점(Kinematic Singularity)을 피해야 하므로 보행 중 무릎을 항상 굽힌 자세를 유지하게 되어 인간과 다른 부자연스러운 보행을 하게 된다.
그리고, 토크 기반의 동적 보행(Dynamic Walking) 제어 방식은 매 제어시간마다 각각의 다리가 계산된 보행 궤적을 추종하도록 하는 서보 제어(servo control)를 통해 구현된다. 즉, 보행 시 각 다리의 위치가 보행 패턴에 따른 보행 궤적을 정확히 추종하는지 검출하고, 각 다리가 보행 궤적을 이탈하면 모터의 토크를 조절하여 각 다리가 보행 궤적을 정확히 추종하도록 제어하여 보행하는 방식이다.
그러나, 토크 기반의 동적 보행 제어 방식은 안정적인 보행을 위해서 동적 방정식(Dynamics Equation)을 풀어야 하나, 공간 상에서 임의의 방향을 구현 할 수 있는 6자유도 다리를 가진 로봇의 동적 방정식이 너무 복잡하므로, 실제로는 4자유도 이하 다리를 가진 로봇에만 적용되어 왔다.
이에 반해, FSM 제어 방식은 매 제어 시간마다 위치를 추종하여 보행하는 방식이 아니라 로봇의 각 동작 상태(State)를 미리 정의해 두고(Finite State), 보행 시 각 동작 상태(State)를 참조하여 각 관절의 목표 토크를 계산하고 이를 추종하도록 제어하여 보행하는 방식으로, 보행 중 각 관절의 토크를 제어하므로 낮은 서보 게인이 가능하여 에너지 효율이 높고 강성이 낮아서 주위 환경에 대해 안전하다. 또한 기구학적 특이점(Kinematic Singularity)을 피할 필요가 없으므로 인간과 같이 무릎을 편 상태의 자연스러운 보행이 가능하다.
그러나, FSM 제어 방식은 미리 정의된 동작 상태(State)에 의존하여 로봇의 보행을 제어하므로 보행 제어가 부적절하여 로봇이 균형을 잃을 수 있다. 따라서 보행 동작과 관계 없이 로봇의 균형을 잡기 위한 밸런싱(Balancing) 동작이 필요하다.
FSM 기반의 보행 제어 방식에서 평평하지 않은 지면을 안정되게 보행하기 위한 밸런싱 동작을 구현하는 보행 로봇 및 그 제어 방법을 제안하고자 한다.
이를 위해 본 발명의 일 측면은 복수의 다리와, 복수의 다리에 각각 마련된 양 발을 구비하는 보행 로봇에 있어서, 복수의 다리에 각각 마련된 관절부; 양 발이 지면과 이루는 각도를 계산하는 지면 각도 계산부; 계산된 지면 각도를 이용하여 관절부의 보상 값을 계산하는 보상 값 계산부; 계산된 보상 값을 이용하여 관절부의 목표 궤적을 생성하는 목표 궤적 생성부; 생성된 목표 궤적을 추종하기 위한 관절부의 목표 토크를 계산하는 목표 토크 계산부; 계산된 목표 토크를 관절부에 전달하여 보행을 제어하는 서보 제어부를 포함한다.
관절부는 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절을 포함한다.
또한, 본 발명의 일 측면에 의한 보행 로봇은, 로봇의 발과 발목 관절 사이에 설치되어 양 발의 지면 접촉 여부를 검출하는 F/T 센서를 더 포함하고, 지면 각도 계산부는 F/T 센서에서 검출된 센서 정보에 따라 양 발 중 어느 발이 지면에 지지하고 있는지를 판단하고, 지면에 지지하고 있는 발을 기준으로 상기 양 발과 지면이 이루는 지면 각도를 계산하는 것이다.
지면 각도는 상기 지면에 대한 양 발의 기울어진 정도를 롤 방향과 피치 방향으로 나타내는 각도이다.
지면은 평평하지 않고 불규칙한 범프 타입과 딥 타입의 지면을 포함한다.
보상 값 계산부는 범프 타입 또는 딥 타입의 지면 보행 시, 롤 방향과 피치 방향의 지면 각도를 이용하여 힙 관절, 무릎 관절, 발목 관절의 보상 값을 계산하는 것이다.
또한, 본 발명의 일 측면에 의한 보행 로봇은, 로봇의 보행 시, 복수의 다리 상태에 따라 정해진 관절부의 위치 궤적을 생성하는 위치 궤적 생성부를 더 포함하고, 목표 궤적 생성부는 생성된 관절부의 위치 궤적에 계산된 관절부의 보상 값을 더하여 관절부의 목표 궤적을 생성하는 것이다.
위치 궤적 생성부는 미리 정해진 평지 보행을 위해 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절의 위치 궤적을 생성하는 것이다.
목표 궤적 생성부는 범프 타입 또는 딥 타입의 지면 보행 시, 힙 관절, 무릎 관절, 발목 관절의 보상 값을 이용하여 힙 관절, 무릎 관절, 발목 관절의 목표 궤적을 생성하는 것이다.
그리고, 본 발명의 일 측면은 복수의 다리와, 복수의 다리에 각각 마련된 양 발을 구비하는 보행 로봇의 제어 방법에 있어서, 로봇의 보행 시, 양 발이 지면과 이루는 각도를 계산하고; 계산된 지면 각도를 이용하여 복수의 다리에 각각 마련된 관절부의 보상 값을 계산하고; 계산된 보상 값을 이용하여 관절부의 목표 궤적을 생성하고; 생성된 목표 궤적을 추종하는 관절부의 목표 토크를 계산하고; 계산된 목표 토크를 관절부에 전달하여 로봇의 보행을 제어하는 것을 포함한다.
지면 각도를 계산하는 것은, 양 발 중 어느 발이 지면에 지지하고 있는지를 판단하고, 지면에 지지하고 있는 발을 기준으로 양 발과 지면이 이루는 각도를 롤 방향과 피치 방향으로 계산하는 것이다.
관절부의 보상 값을 계산하는 것은, 범프 타입 또는 딥 타입의 지면 보행 시, 롤 방향과 피치 방향의 지면 각도를 이용하여 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절의 보상 값을 계산하는 것이다.
또한, 본 발명의 일 측면에 의한 보행 로봇의 제어 방법은, 범프 타입 또는 딥 타입의 지면 보행 시, 힙 관절, 무릎 관절, 발목 관절의 보상 값을 이용하여 힙 관절, 무릎 관절, 발목 관절의 목표 궤적을 생성하는 것을 더 포함한다.
힙 관절, 무릎 관절, 발목 관절의 목표 궤적은, 복수의 다리 상태에 따라 정해진 상기 힙 관절, 무릎 관절, 발목 관절의 위치 궤적에 힙 관절, 무릎 관절, 발목 관절의 보상 값을 더하여 계산된 목표 궤적이다.
힙 관절, 무릎 관절, 발목 관절의 위치 궤적은, 미리 정해진 평지 보행을 위해 생성된 목표 궤적이다.
제안된 보행 로봇 및 그 제어 방법에 의하면, 보행 중 각 관절의 회전각을 정확하게 제어할 필요가 없으므로 낮은 서보 게인으로 보행이 가능하여 기존의 보행에 비해 에너지 소비를 줄일 수 있으며, 각 관절이 저강성을 가짐으로써 주위 환경과의 충돌 시 충격을 작게 하는 등 안전하게 작용할 수 있다.
또한, 역기구학을 풀어야 하는 기존의 보행 방식으로는 구현이 불가능한 무릎 펴기 보행을 할 수 있으므로, 로봇의 인간형 보행을 구현하여 로봇의 인간 친화성을 향상시킬 수 있고, 로봇의 무릎 굼힘을 위해 필요한 에너지를 절약할 수 있다. 실험 결과 기존의 보행에 비해 20%정도의 전력 소비만으로도 3배의 보행 속도를 구현할 수 있었다.
또한, 복잡한 동적 방정식(Dynamics Equation)을 풀어야 할 필요가 없이 간단한 보상 각도 계산으로 6자유도의 관절을 가진 로봇에 적용 가능하다. 무릎을 펴고 걷는 모든 인간형 보행은 기본적으로 위치 서보 제어에 의한 방식이 아닌 토크 서보 제어에 의한 방식이므로 본 발명의 개념을 침해한 것으로 간주할 수 있다. 따라서, 본 발명은 인간형 보행 방식에서 원천성을 가진다.
또한, 양 발이 지면과 이루는 각도를 간단하게 이용하며, 이를 단순 계산에 의해 평평하지 않은 지면을 균형을 유지하며 안정적으로 보행할 수 있게 된다.
도 1은 본 발명의 일 실시예에 의한 로봇의 외관 구성도이다.
도 2는 도 1에 나타낸 로봇의 주요 관절 구조를 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 의한 FSM 기반 보행 시, 로봇의 동작 상태와 각 동작 상태의 제어 동작을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 의한 FSM 기반 보행 시, 로봇의 동작 상태와 각 동작 상태의 제어 동작을 나타낸 도면이다.
도 4a는 로봇이 보행하는 지면 중 범프 타입(bump type)의 지면을 나타낸 도면이다.
도 4b는 로봇이 보행하는 지면 중 딥 타입(dip type)의 지면을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 의한 로봇의 보행 제어 블록도이다.
도 6은 본 발명의 일 실시예에 의한 로봇이 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 때, 양 발과 지면이 이루는 각도의 개념을 설명하기 위한 도면이다.
도 7a는 본 발명의 일 실시예에 의한 로봇이 범프 타입(bump type)의 지면 을 보행할 때의 지면 각도를 나타낸 도면이다.
도 7b는 본 발명의 일 실시예에 의한 로봇이 딥 타입(dip type)의 지면을 보행할 때의 지면 각도를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 의한 로봇의 보행 제어 방법을 나타낸 동작 순서도이다.
이하, 본 발명의 일 실시예를 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 본 발명의 일 실시예에 의한 로봇의 외관 구성도이다.
도 1에서, 로봇(100)은 인간과 마찬가지로 두 개의 다리(110)에 의해 직립 이동하는 이족 보행 로봇으로, 몸통(102), 머리(104), 팔(106)로 이루어진 상체(101)와, 두 개의 다리(110)로 이루어진 하체(103)를 가진다.
로봇(100)의 상체(101)는 몸통(102)과, 몸통(102)의 상부에 목(120)을 통해 연결된 머리(104)와, 몸통(102)의 상부 양측에 어깨(114L, 114R)를 통해 연결된 두 개의 팔(106L, 106R)과, 이 두 개의 팔(106L, 106R)의 말단에 각각 연결된 손(108L, 108R)으로 이루어진다.
로봇(100)의 하체(103)는 상체(101)의 몸통(102) 하부 양측에 연결된 두 개의 다리(110L, 110R)와, 두 개의 다리(110L, 110R) 말단에 각각 연결된 발(112L, 112R)로 이루어진다.
참조 부호에서, "R"과 "L"는 각각 로봇(100)의 오른쪽(right)과 왼쪽(left)을 나타내고, COG(Center Of Gravity)는 로봇(100)의 무게 중심을 나타낸다.
도 2는 도 1에 나타낸 로봇의 주요 관절 구조를 나타낸 도면이다.
도 2에서, 로봇(100)의 몸통(102)에는 포즈 센서(pose sensor; 14)가 설치된다. 포즈 센서(14)는 연직축에 대한 상체(101)의 기울기인 경사 각도와 그 각속도를 검출하여 자세 정보를 발생시킨다. 이 포즈 센서(14)는 몸통(102) 뿐만 아니라 머리(104)에 설치해도 좋다.
몸통(102)에는 상체(101)가 회전할 수 있도록 요우 방향의 1 자유도를 가지는 허리 관절부(15)가 설치된다.
또한, 로봇(100)의 머리(104)에는 주위를 촬영하는 카메라(41)와, 사용자 음성을 입력하는 마이크로폰(42)이 설치된다.
머리(104)는 목 관절부(280)를 통해 상체(101)의 몸통(102)과 연결된다. 목 관절부(280)는 요우 방향(yaw, Z축 회전)의 회전 관절(281)과, 피치 방향(pitch, Y축 회전)의 회전 관절(282) 및 롤 방향(roll, X축 회전)의 회전 관절(283)을 포함하여 3 자유도를 가진다.
목 관절부(280)의 각각의 회전 관절(281, 282, 283)에는 머리(104)의 회전을 위한 모터들(예를 들어, 전기 모터, 유압 모터 등의 액츄에이터)이 연결된다.
로봇(100)의 두 개의 팔(106L, 106R)은 각각 상박 링크(31), 하박 링크(32) 및 손(33)을 가진다.
상박 링크(31)는 어깨 관절부(250L, 250R)를 통해 상체(101)에 연결되고, 상박 링크(31)와 하박 링크(32)는 팔꿈치 관절부(260)를 통해 서로 연결되며, 하박 링크(32)와 손(33)은 손목 관절부(270)를 통해 서로 연결된다.
어깨 관절부(250L, 250R)는 상체(101)의 몸통(102)의 양측에 설치되어 두 개의 팔(106L, 106R)을 상체(101)의 몸통(102)에 연결한다.
팔꿈치 관절부(260)는 피치 방향의 회전 관절(261)과, 요우 방향의 회전 관절(262)를 포함하여 2 자유도를 가진다.
손목 관절부(270)는 피치 방향의 회전 관절(271)과, 롤 방향의 회전 관절(272)을 포함하여 2 자유도를 가진다.
손(33)에는 5개의 손가락(33a)이 설치된다. 각각의 손(33a)에는 모터에 의해 구동되는 다수의 관절(미도시)들이 설치될 수 있다. 손가락(33a)은 팔(106)의 움직임에 연동하여 물건을 파지하거나 특정 방향을 가리키는 것과 같은 다양한 동작을 실행한다.
그리고, 로봇(100)의 두 개의 다리(110L, 110R)는 각각 대퇴 링크(21)와 하퇴 링크(22), 발(112L, 112R)을 가진다.
대퇴 링크(21)는 인간의 허벅 다리(허벅지)에 해당하는 부분으로, 힙 관절부(210)를 통해 상체(101)의 몸통(102)에 연결되고, 대퇴 링크(21)와 하퇴 링크(22)는 무릎 관절부(220)를 통해 서로 연결되며, 하퇴 링크(22)와 발(112L, 112R)은 발목 관절부(230)를 통해 서로 연결된다.
힙 관절부(210)는 요우 방향(yaw, Z축 주위의 회전)의 회전 관절(211; 힙 요우 조인트)과, 피치 방향(pitch, Y축 주위의 회전)의 회전 관절(212; 힙 피치 조인트)과, 롤 방향(roll, X축 주위의 회전)의 회전 관절(213; 힙 롤 조인트)을 포함하여 3 자유도를 가진다.
무릎 관절부(220)는 피치 방향의 회전 관절(221)을 포함하여 1 자유도를 가진다.
발목 관절부(230)는 피치 방향의 회전 관절(231)과, 롤 방향의 회전 관절(232)을 포함하여 2 자유도를 가진다.
두 개의 다리(110L, 110R) 각각에는 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 대해 6개의 회전 관절이 마련되므로, 두 개의 다리(110L, 110R) 전체에 대해서는 12개의 회전 관절이 마련된다.
한편, 두 개의 다리(110L, 110R)에서 발(112L, 112R)과 발목 관절부(230)의 사이에는 다축 F/T센서(Multi-Axis Force and Torque Sensor; 24)가 각각 설치된다. F/T 센서(24)는 발(112L, 112R)로부터 전달되는 힘의 3방향 성분(Fx, Fy, Fz)과 모멘트의 3방향 성분(Mx, My, Mz)을 측정함으로써 발(112L, 112R)의 착지 여부 및 발(112L, 112R)에 가해지는 하중을 검출한다.
도면에 도시되어 있지 않지만, 로봇(100)에는 각 회전 관절을 구동하는 모터 등과 같은 액츄에이터가 설치된다. 로봇(100)의 동작 전반을 제어하는 보행 제어부는 이 모터를 적절히 제어함으로써 로봇(100)의 다양한 동작을 구현할 수 있다.
도 3은 본 발명의 일 실시예에 의한 FSM 기반 보행 시, 로봇의 동작 상태와 각 동작 상태의 제어 동작을 나타낸 도면이다.
도 3에서, FSM 기반의 보행 제어 방식은 로봇(100)의 동작 상태를 미리 정의된 복수 개의 동작 상태(예를 들어, S1, S2, S3, S4, S5, S6의 6개 상태)로 구분한다. 각각의 동작 상태(S1, S2, S3, S4, S5, S6)는 보행 시 로봇(100)의 한 다리(110L 또는 110R)가 취하는 포즈를 의미하며, 이러한 로봇(100)의 포즈를 적절하게 전환함으로서 안정적인 보행이 이루어지도록 한다.
제1동작 상태(S1; flight)는 다리(110L 또는 110R)를 스윙(Swing)하는 포즈이고, 제2동작 상태(S2; loading)는 발(112)을 지면에 내려 놓는 포즈이며, 제3동작 상태(S3; heel contact)는 발(112) 뒤쪽(heel)을 지면에 접촉시키는 포즈이고, 제4동작 상태(S4; heel and toe contact)는 발(112) 뒤쪽(heel)과 앞쪽(toe)을 동시에 지면에 접촉시키는 포즈이며, 제5동작 상태(S5; toe contact)는 발(112) 앞쪽(toe)을 접촉시키는 포즈이고, 제6동작 상태(S6; unloading)는 발(112)을 지면에서 떼어 내는 포즈에 해당한다.
각각의 동작 상태에서 다른 동작 상태로 전환하기 위해서는 그 동작 상태의 전환을 위한 제어 동작(Control Action)이 요구된다.
보다 구체적으로 설명하면, 제1동작 상태(S1)에서 제2동작 상태(S2)로 전환하는 경우(S1→S2), 발(112) 뒤쪽(heel)이 지면에 닿게 하는 제어 동작(heel touches ground)이 요구된다.
제2동작 상태(S2)에서 제3동작 상태(S3)로 전환하는 경우(S2→S3), 지면에 닿은 발(112)에 연결된 무릎(구체적으로, 무릎 관절부)를 구부리는 제어 동작(knee bends)이 요구된다.
제3동작 상태(S3)에서 제4동작 상태(S4)로 전환하는 경우(S3→S4), 발(112) 앞쪽(toe)이 지면에 닿게 하는 제어 동작(ball of foot touches ground)이 요구된다.
제4동작 상태(S4)에서 제5동작 상태(S5)로 전환하는 경우(S4→S5), 지면에 닿은 발(112)에 연결된 무릎을 펴는 제어 동작(knee extends)이 요구된다.
제5동작 상태(S5)에서 제6동작 상태(S6)로 전환하는 경우(S5→S6), 지면에 닿은 발(112)에 연결된 무릎을 완전하게 펴는 제어 동작(knee fully extended)이 요구된다.
제6동작 상태(S6)에서 제1동작 상태(S1)로 전환하는 경우(S6→S1), 발(112) 앞쪽(toe)을 지면에서 떼어 내는 제어 동작(ball of foot leaves ground)이 요구된다.
따라서, 로봇(100)은 제어 동작(Control Action)의 실행을 위해 각 제어 동작(Control Action)에 대응하여 각 관절의 토크 지령을 계산하고, 계산된 토크 지령을 각 관절에 설치된 모터 등의 액츄에이터에 출력하여 액츄에이터를 구동시킨다.
이러한 FSM 기반의 보행 제어 방식은, 미리 정의된 각 동작 상태(S1, S2, S3, S4, S5, S6)에 의존하여 로봇(100)의 보행을 제어하기 때문에 평평하지 않고 불규칙한 지면을 보행할 경우에 로봇(100)의 동작 상태(S1, S2, S3, S4, S5, S6)를 바꾸는 것만으로는 보행 제어가 부적절하여 로봇(100)이 균형을 잃을 수 있다.
따라서, 본 발명의 일 실시예에 의한 FSM 기반의 보행 제어 방식에서는 평평하지 않고 불규칙한 지면을 보행할 경우 로봇(100)이 균형을 잃지 않도록 양 발(112)과 지면이 이루는 각도를 계산하여 직접 보행 제어에 이용한다.
여기서, 양 발(112)과 지면이 이루는 각도는 발(112L, 112R)과 발목 관절부(230) 사이에 설치된 F/T 센서(24)에서 검출된 센서 정보를 바탕으로 어느 발(112L, 112R)이 지지(stance) 상태인지 또는 스윙(swing) 상태인지에 따라 계산할 수 있다. 이를 도 4를 참조하여 설명한다.
도 4는 본 발명의 일 실시예에 의한 로봇이 보행하는 지면을 나타낸 도면으로, 도 4a는 로봇이 보행하는 지면 중 범프 타입(bump type)의 지면을 나타낸 도면이고, 도 4b는 로봇이 보행하는 지면 중 딥 타입(dip type)의 지면을 나타낸 도면이다.
도 4a 및 도 4b는 로봇(100)이 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 때의 상태를 나타낸 도면으로서, 롤 방향(X축)과 피치 방향(Y축)에 대한 X-Y 평면상(2D 공간상)에서 로봇(100)의 몸통(102)과 좌우 다리(110L, 110R)를 나타낸 것으로 인간이 앞으로 보행 시 양쪽 발(112L, 112R)을 번갈아 가며 걷는 모습을 X-Y 평면에서 간략화한 것과 같다.
도 4a 및 도 4b에서, 로봇(100)이 보행하는 지면 중 평평하지 않은 대표적인 두 가지의 지면은 범프 타입(bump type)과 딥 타입(dip type)이 있다.
범프 타입(bump type)은 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)이 지지(stance)하고 있는 발(112L 또는 112R 중 다른 하나) 보다 높은 지면이나 물체 위에 착지할 경우를 나타낸다.
딥 타입(dip type)은 스윙(swing) 하는 발(112L 또는 112R 중 어느 하나)이 지지(stance) 하고 있는 발(112L 또는 112R 중 다른 하나) 보다 낮은 지면이나 물체 위에 착지할 경우를 나타낸다.
이는, 보행 진행 방향(roll, X축)에 대한 것이며, 이와 같은 개념으로 보행 진행 방향에 수직인 방향(pitch, Y축)에 대해서도 똑같이 적용한다. 본 발명에서는 이 두 가지 타입(범프 타입, 딥 타입)의 지면에 대해서만 고려하며, 로봇(100)이 보행하는 지면은 이 두 타입의 지면의 조합으로 모두 표현될 수 있다.
따라서, 본 발명의 일 실시예에 의한 FSM 기반의 보행 제어 방식에서는 평평하지 않고 불규칙한 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 경우, 로봇(100)이 균형을 잃지 않도록 양 발(112L, 112R)과 지면이 이루는 각도를 이용하여 미리 정해진 평지 보행의 위치 궤적을 보상함으로써 로봇(100)이 균형을 유지하면서 안정적이고 자연스러운 보행을 수행할 수 있도록 한다. 이를 도 5를 참조하여 설명한다.
도 5는 본 발명의 일 실시예에 의한 로봇의 보행 제어 블록도이다.
도 5에서, 본 발명의 일 실시예에 의한 로봇(100)은, 사용자 인터페이스부(310), 센서부(320), 보행 제어부(330), 서보 제어부(340) 및 두 다리(110L, 110R)의 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)를 포함한다.
사용자 인터페이스부(310)는 로봇(100)의 보행을 지시하기 위한 사용자 명령을 입력한다.
센서부(320)는 로봇(100)의 몸통(102)에 설치되어 상체(101)의 기울기나 자세를 검출하는 포즈 센서(14)와, 로봇(100)의 발(112)과 발목 관절부(230)의 사이에 설치되어 발(112)의 지면 접촉 여부를 검출하는 F/T 센서(24)를 포함한다.
여기서, 상체(101)의 자세를 검출하는 센서로는 포즈 센서(14) 외에도 Tilting Detection, Gyro Sensor 등을 사용할 수 있으며, 발(112)의 지면 접촉 여부를 검출하는 센서로는 F/T 센서(24) 외에도 접촉 센서 또는 이와 상응하는 센서를 사용할 수 있다.
보행 제어부(330)는 사용자 인터페이스부(310)로부터 입력된 보행 명령과 센서부(320)로부터 검출된 센서 정보를 바탕으로 로봇(100)의 보행을 제어하는 PD(Proportional-Derivative) Controller로, 상태 데이터베이스부(331), 위치 궤적 생성부(332), 지면 각도 계산부(333), 보상 값 계산부(334), 목표 궤적 생성부(335) 및 목표 토크 계산부(336)를 포함한다.
상태 데이터베이스부(331)는 보행 시, FSM(Finite State Machine)에 기반을 둔 로봇(100)의 다리 상태 데이터와, 로봇(100)의 다리 상태에 대응하는 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 동작 상태 데이터를 저장한다.
여기서, FSM은 다리(110L, 110R)의 제한된 동작 상태 변화를 순차적으로 나타낸 것이다. 다리(110L, 110R)의 제한된 동작 상태는 어느 발(112L 또는 112R)이 지지(Stance) 상태인지 또는 스윙(Swing) 상태인지에 따라 결정된다.
위치 궤적 생성부(332)는 미리 정해진 평지 보행을 위한 위치 궤적을 생성하는 것으로, 상태 데이터베이스부(331)에 저장된 로봇(100)의 다리 상태에 따라 다리(110L, 110R)에 마련된 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 목표 각도를 각각 생성하고, 이 목표 각도의 시간에 대한 변화를 곡선으로 연결한 힙 관절부(210)의 위치 궤적(desired_Hip), 무릎 관절부(220)의 위치 궤적(desired_Knee), 발목 관절부(230)의 위치 궤적(desired_Ankle)을 생성한다.
지면 각도 계산부(333)는 양 발(112L, 112R)과 지면이 이루는 각도(이하, 지면 각도라 한다)를 계산하는 것으로, 이 지면 각도는 지면에 지지하고 있는 발(112L 또는 112R 중 어느 하나)을 기준으로 구할 수 있다.
보다 구체적으로 설명하면, 지면 각도 계산부(333)는 로봇(100)의 발(112)과 발목 관절부(230)의 사이에 설치된 F/T 센서(24)에서 검출된 센서 정보를 바탕으로 양 발(112L, 112R) 중 어느 발(112L 또는 112R)이 지면에 위치하는지를 판단한다. 이 판단 결과로 범프 타입(bump type) 또는 딥 타입(dip type)의 지면 보행 시, 매 순간 양 발(112L, 112R)의 위치를 롤 방향(X축)과 피치 방향(Y축)으로 투영(projection)한 후, 양 발(112L, 112R)과 지면이 이루는 롤 방향과 피치 방향의 지면 각도를 계산한다. 이때 계산되는 롤 방향과 피치 방향의 지면 각도는 범프 타입(bump type)과 딥 타입(dip type)으로 나누어진다.
보상 값 계산부(334)는 지면 각도 계산부(333)에서 계산된 각도를 이용하여 다리(110L, 110R)의 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 보상 값을 계산한다.
즉, 보상 값 계산부(334)는 양 발(112L, 112R)과 지면이 이루는 롤 방향과 피치 방향의 지면 각도를 이용하여 힙 관절부(210)의 보상 값(compensated_Hip), 무릎 관절부(220)의 보상 값(compensated_Knee), 발목 관절부(230)의 보상 값(compensated_Ankle)을 계산한다.
예를 들어, 범프 타입(bump type)의 지면에서는 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)이 지지(stance)하고 있는 발(112L 또는 112R 중 다른 하나) 보다 높은 위치의 지면이나 물체에 착지하였을 때, 스윙(swing)하는 다리(110L 또는 110R 중 어느 하나)의 관절(구체적으로, 힙 관절, 무릎 관절, 발목 관절)을 굽힘으로써 뒤로 밀리는 힘을 상쇄할 수 있다.
반면, 딥 타입(dip type)의 지면에서는 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)이 지지(stance)하는 발(112L 또는 112R 중 다른 하나) 보다 낮은 위치의 지면이나 물체에 착지하였을 때, 지지(stance)하는 다리(110L 또는 110R 중 다른 하나)의 관절(구체적으로, 힙 관절, 무릎 관절, 발목 관절)을 굽힘으로써 앞으로 넘어지는 힘을 상쇄할 수 있다.
보다 구체적으로 설명하면, 범프 타입(bump type)의 지면에서는 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)이 지지(stance)하고 있는 발(112L 또는 112R 중 다른 하나) 보다 높은 위치의 지면이나 물체에 착지하였을 때, 스윙(swing)하는 다리(110L 또는 110R 중 어느 하나)의 관절을 굽힘으로써 뒤로 밀리는 힘을 상쇄할 수 있도록 스윙(swing)하는 다리(110L 또는 110R 중 어느 하나)의 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 대한 보상 값을 계산한다.
반면, 딥 타입(dip type)의 지면에서는 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)이 지지(stance)하는 발(112L 또는 112R 중 다른 하나) 보다 낮은 위치의 지면이나 물체에 착지하였을 때, 지지(stance)하는 다리(110L 또는 110R 중 다른 하나)의 관절을 굽힘으로써 앞으로 넘어지는 힘을 상쇄할 수 있도록 지지(stance)하는 다리(110L 또는 110R 중 다른 하나)의 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 대한 보상 값을 계산하고, 아울러 스윙(swing)하는 다리(110L 또는 110R 중 어느 하나)의 힙 관절부(210)에 대한 보상 값을 계산한다.
목표 궤적 생성부(335)는 보상 값 계산부(334)에서 계산된 다리(110L, 110R)의 각 관절 보상 값을 이용하여 다리(110L, 110R)에 마련된 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 목표 궤적을 생성한다.
보다 구체적으로 설명하면, 목표 궤적 생성부(335)는 힙 관절부(210)의 위치 궤적(desired_Hip)에 힙 관절부(210)의 보상 값(compensated_Hip)을 더하여 힙 관절부(210)의 목표 궤적(new_desired_Hip)을 구하고, 무릎 관절부(220)의 위치 궤적(desired_Knee)에 무릎 관절부(220)의 보상 값(compensated_Knee)을 더하여 무릎 관절부(220)의 목표 궤적(new_desired_Knee)을 구하며, 발목 관절부(230)의 위치 궤적(desired_Ankle)에 발목 관절부(230)의 보상 값(compensated_Ankle)을 더하여 발목 관절부(230)의 목표 궤적(new_desired_Ankle)을 구하는 것이다.
목표 토크 계산부(336)는 목표 궤적 생성부(335)에서 생성된 각 관절부(210, 220, 230)의 목표 궤적을 추종하기 위한 목표 토크를 계산한다. 목표 토크의 계산은 매 제어 주기마다 이루어진다.
서보 제어부(340)는 목표 토크 계산부(336)에서 계산된 목표 토크(τi)를 다리(110L 또는 110R)의 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 각각 제공하여 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 설치된 모터 등의 액츄에이터를 구동시키도록 계산된 목표 토크(τi)에 대응하는 토크 제어 신호를 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 출력한다.
따라서, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)는 서보 제어부(340)로부터 토크 제어 신호를 입력받아 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 설치된 모터 등의 액츄에이터를 구동시킴으로써 지면이 평평하지 않고 불규칙한 범프 타입(bump type)과 딥 타입(dip type)을 보행하더라도 로봇(100)이 균형을 유지하면서 안정적인 보행을 구현할 수 있도록 한다.
이하, 상기와 같이 구성된 보행 로봇 및 그 제어 방법의 동작과정 및 작용효과를 설명한다.
본 발명의 일 실시예에 의한 FSM 기반의 보행 제어 방식은 평평하지 않고 불규칙한 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 경우, 로봇(100)이 균형을 유지하면서 안정적이고 자연스러운 보행을 수행할 수 있도록 하는 밸런스 알고리즘을 작동한다.
본 발명에서 언급된 지면 또는 물체의 단차(높이의 차)는 일반적인 평지 보행에서 발(112)이 지면에 닿지 않기 위한 그라운드 클리어런스(ground clearance) 이내의 높이(본 발명에서는 5cm 이내)로 한정한다. 그 이상의 단차를 가지는 지면을 보행하기 위해서는 계단 보행과 유사한 특수한 형태의 보행 기법을 사용하여야 한다.
따라서, 그라운드 클리어런스(ground clearance) 이내의 단차를 가지는 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 때, 로봇(100)의 균형을 유지하기 위한 밸런싱 동작은 양 발(112)과 지면이 이루는 각도를 롤과 피치 방향으로 구하여야 한다. 이를 도 6 및 도 7을 참조하여 설명한다.
도 6은 본 발명의 일 실시예에 의한 로봇이 범프 타입(bump type)과 딥 타입(dip type)의 지면을 보행할 때, 양 발과 지면이 이루는 각도의 개념을 설명하기 위한 도면이다.
도 6에서, 양 발(112L 또는 112R) 중 스윙(swing)하는 발(112L 또는 112R 중 어느 하나)을 A라 하고, 지지(stance)하고 있는 발(112L 또는 112R 중 다른 하나)을 B라 하며, 양 발(112L, 112R)이 착지하는 지면을 C라 할 때, 양 발(A, B)과 지면(C) 이루는 각도(이하, 지면 각도라 한다)는 지면(C)에 지지하고 있는 발(B)의 사잇각(∠B)으로 구할 수 있다.
도 7은 본 발명의 일 실시예에 의한 로봇이 보행하는 지면 각도를 나타낸 도면으로, 도 7a는 본 발명의 일 실시예에 의한 로봇이 범프 타입(bump type)의 지면 을 보행할 때의 지면 각도를 나타낸 도면이고, 도 7b는 본 발명의 일 실시예에 의한 로봇이 딥 타입(dip type)의 지면을 보행할 때의 지면 각도를 나타낸 도면이다.
도 7a 및 도 7b에서, 양 발(A, B)과 지면(C)이 이루는 지면 각도는 범프 타입(bump type)과 딥 타입(dip type)의 지면(C)에 지지하고 있는 발(B)의 사잇각(∠B)으로 구할 수 있다.
지면에 지지하고 있는 발(112L 또는 112R 중 어느 하나)의 사잇각(∠B)으로 지면 각도를 계산하는 방법은 다음과 같다.
구하고자 하는 사잇각(∠B)은 아래의 [식 1]과 같이, 코사인 제2법칙을 이용한다.
[식 1]
Figure pat00001
이러한 방법으로 매 순간 양 발(A, B)의 위치를 피치와 롤 방향으로 투영(projection)한 후, 지면과 이루는 각도(
Figure pat00002
)를 구한다. 그리고 피치와 롤 방향으로 구해진 지면 각도는 아래의 [식 2]와 같이, 범프 타입(bump type)과 딥 타입(dip type)으로 나누어지게 된다.
[식 2]
Figure pat00003
[식 2]에서, FT SW는 스윙(swing)하는 발(A)의 F/T센서 값이고, FT THRESHOLD 는 사용자가 정한 F/T센서 한계값이고, Pos _ Foot χ 는 발(A, B)의 보행 진행 방향에서의 위치이고, Pos _ Foot 는 발(A, B)의 수직 방향에서의 위치이고, SW과 ST는 스윙(swing)하는 발(A)과 지지(stance)하고 있는 발(B)을 각각 나타낸다. FT THRESHOLD 은 스윙(swing)하는 발(A)이 지면(C)에 얼마나 강하게 착지한 후, 이 밸런스 알고리즘이 작동하는지 조절 가능한 값으로 실험을 통해 정한다.
한편, 위의 [식 2]에서의 조건을 만족하는 동안 미리 정해진 평지 보행을 위한 위치 궤적(desired trajectory)에 밸런스 알고리즘이 적용된다. 이는 밸런스가 작동하는 상태의 각도 ( B pitch and B roll )를 아래의 [식 3]과 같이, 하체(103) 즉, 다리(110L, 110R)에 마련된 각 관절(힙 관절, 무릎 관절, 발목 관절)의 보상 값을 구한다.
[식 3]
Figure pat00004
[식 3]과 같이, 구해진 보상 값을 미리 정해진 평지 보행의 위치 궤적(desired trajectory)에 더하여 아래의 [식 4]와 같이, 최종의 목표 궤적(new desired trajectory)이 계산된다.
[식 4]
Figure pat00005
[식 4]에서, "desired_Hip"은 힙 관절부(210)의 평지 보행에서의 위치 궤적을 나타내고, "desired_Knee"는 무릎 관절부(220)의 평지 보행에서의 위치 궤적을 나타내며, "desired_Ankle"는 발목 관절부(230)의 평지 보행에서의 위치 궤적을 나타낸다.
이러한 방식으로, 범프 타입(bump type)의 지면에서는 스윙(swing)하는 발(A)이 지지(stance)하고 있는 발(B) 보다 높은 위치의 지면이나 물체에 착지하였을 때, 스윙(swing)하는 다리(110L 또는 110R 중 어느 하나)의 관절(구체적으로, 힙 관절, 무릎 관절, 발목 관절)을 굽힘으로써 뒤로 밀리는 힘을 상쇄할 수 있다.
반면, 딥 타입(dip type)의 지면에서는 스윙(swing)하는 발(A)이 지지(stance)하는 발(B) 보다 낮은 위치의 지면이나 물체에 착지하였을 때, 지지(stance)하는 다리(110L 또는 110R 중 다른 하나)의 관절(구체적으로, 힙 관절, 무릎 관절, 발목 관절)을 굽힘으로써 앞으로 넘어지는 힘을 상쇄할 수 있다.
따라서, 각 관절의 목표 각도와 각속도를 이용한 토크는 PD(Proportional-Derivative controller) 제어 방식으로 아래의 [식 5]와 같이, 계산된다.
[식 5]
Figure pat00006
[식 5]에서, τ는 매 제어 주기에서의 토크 값이고,
Figure pat00007
는 매 제어 주기에서의 목표 각도이고,
Figure pat00008
는 매 제어 주기에서의 목표 각속도이고,
Figure pat00009
는 매 제어 주기에서의 현재 각도이고,
Figure pat00010
는 매 제어 주기에서의 현재 각속도이고, k p k d 는 계수이다. 이들 계수들은 반복실험에 의하여 최적의 안정된 보행이 되도록 조정하여 정한다. i 는 각 관절을 의미하며 이를 통해 각 관절의 토크를 구할 수 있다. 각속도 (
Figure pat00011
) 는 각도 (
Figure pat00012
) 를 미분하여 구한다.
이와 같이, 본 발명에서는 양 발이 지면과 이루는 각도를 이용하여 미리 정해진 평지 보행의 위치 궤적에 적용함으로써 대표적인 외란(disturbance) 중의 하나인 고르지 않은 지면(C) 위 보행이 가능하게 된다. 이런 모션들은 인간과 유사한 보행이며 자연스러움을 보장한다. 이를 도 8을 참조하여 설명한다.
도 8은 본 발명의 일 실시예에 의한 로봇의 보행 제어 방법을 나타낸 동작 순서도이다.
도 8에서, 사용자 인터페이스부(310)를 통해 로봇(100)의 보행을 지시하기 위한 사용자 명령을 입력한다(400).
보행 명령이 입력되면, 위치 궤적 생성부(332)는 상태 데이터베이스부(331)에 저장된 로봇(100)의 다리 상태에 따라 다리(110L, 110R)에 마련된 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 목표 각도를 각각 생성하고, 이 목표 각도의 시간에 대한 변화를 곡선으로 연결한 힙 관절부(210)의 위치 궤적(desired_Hip), 무릎 관절부(220)의 위치 궤적(desired_Knee), 발목 관절부(230)의 위치 궤적(desired_Ankle)을 생성한다(402). 생성된 힙 관절부(210)의 위치 궤적(desired_Hip), 무릎 관절부(220)의 위치 궤적(desired_Knee), 발목 관절부(230)의 위치 궤적(desired_Ankle)은 미리 정해진 평지 보행을 위한 위치 궤적이다.
이어서, 로봇(100)의 몸통(102)에 설치된 포즈 센서(14)에서는 상체(101)의 기울기나 자세를 검출하고, 로봇(100)의 발(112)에 설치된 F/T 센서(24)에서는 발(112)의 지면 접촉 여부를 검출하여 보행 제어부(330)의 지면 각도 계산부(333)에 전송한다(404).
따라서, 지면 각도 계산부(333)에서는 양 발(112L, 112R)과 지면이 이루는 지면 각도를 계산한다(406).
양 발(112L, 112R)과 지면이 이루는 지면 각도는 범프 타입(bump type) 또는 딥 타입(dip type)의 지면 보행 시, 매 순간 양 발(112L, 112R)의 위치를 롤 방향(X축)과 피치 방향(Y축)으로 투영(projection)한 후, 양 발(112L, 112R)과 지면이 이루는 롤 방향과 피치 방향의 지면 각도를 계산한다. 이때 계산되는 롤 방향과 피치 방향의 지면 각도는 범프 타입(bump type)과 딥 타입(dip type)으로 아래의 [식 2]와 같이, 나누어져 보상 값 계산부(334)에 전송한다.
[식 2]
Figure pat00013
이에 따라, 보상 값 계산부(334)에서는 위의 [식 2]와 같이, 계산된 지면 각도를 이용하여 다리(110L, 110R)의 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 보상 값을 아래의 [식 3]와 같이, 계산하여 목표 궤적 생성부(335)에 전송한다(408).
[식 3]
Figure pat00014
[식 3]을 통해 계산되는 보상 값은 힙 관절부(210)의 보상 값(compensated_Hip), 무릎 관절부(220)의 보상 값(compensated_Knee), 발목 관절부(230)의 보상 값(compensated_Ankle)을 포함한다.
이어서, 목표 궤적 생성부(335)에서는 보상 값 계산부(334)에서 계산된 힙 관절부(210)의 보상 값(compensated_Hip), 무릎 관절부(220)의 보상 값(compensated_Knee), 발목 관절부(230)의 보상 값(compensated_Ankle)을 이용하여 다리(110L, 110R)에 마련된 각 관절 즉, 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)의 목표 궤적을 아래의 [식 4]와 같이, 생성하여 목표 토크 계산부(336)에 전송한다(410).
[식 4]
Figure pat00015
[식 4]에서, 힙 관절부(210)의 위치 궤적(desired_Hip)에 힙 관절부(210)의 보상 값(compensated_Hip)을 더하여 힙 관절부(210)의 목표 궤적(new_desired_Hip)을 구하고, 무릎 관절부(220)의 위치 궤적(desired_Knee)에 무릎 관절부(220)의 보상 값(compensated_Knee)을 더하여 무릎 관절부(220)의 목표 궤적(new_desired_Knee)을 구하며, 발목 관절부(230)의 위치 궤적(desired_Ankle)에 발목 관절부(230)의 보상 값(compensated_Ankle)을 더하여 발목 관절부(230)의 목표 궤적(new_desired_Ankle)을 구하는 것이다.
따라서, 목표 토크 계산부(336)는 목표 궤적 생성부(335)에서 생성된 각 관절부(210, 220, 230)의 목표 궤적을 추종하기 위한 목표 토크를 각 관절부(210, 220, 230)의 목표 각도와 각속도를 이용하여 계산한다(412). 목표 토크의 계산은 매 제어 주기마다 이루어진다.
이후, 서보 제어부(340)는 목표 토크 계산부(336)에서 계산된 목표 토크(τi)를 다리(110L 또는 110R)의 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 각각 제공하여 힙 관절부(210), 무릎 관절부(220), 발목 관절부(230)에 설치된 모터 등의 액츄에이터를 구동시킴으로써(414), 지면이 평평하지 않고 불규칙한 범프 타입(bump type)과 딥 타입(dip type)이더라도 로봇(100)이 균형을 유지하면서 안정적인 보행을 구현할 수 있도록 한다.
따라서, 지면이 고르지 않아도 로봇(100)의 균형을 잡을 수 있으며, 로봇(100)이 천천히 움직일 때나 빠르게 움직일 때 모두 균형을 잡을 수 있다.
또한, 지면이 기울어져 있더라도 몸통(102)을 지지하는 두 다리(110L, 110R)의 관절을 이용하여 로봇(100)의 균형을 유지하기 때문에, 그 방법이 간단하여 6 자유도의 관절을 가진 로봇(100)에 적용할 수 있다.
24 : F/T 센서 100 : 로봇
101 : 상체 102 : 몸통
103 : 하체 110L, 110R : 다리
112L, 112R : 발 210 : 힙 관절부
220 : 무릎 관절부 230 : 발목 관절부
320 : 센서부 330 : 보행 제어부
331 : 상태 데이터베이스부 332 : 위치 궤적 생성부
333 : 지면 각도 계산부 334 : 보상 값 계산부
335 : 목표 궤적 생성부 336 : 목표 토크 계산부
340 : 서보 제어부

Claims (17)

  1. 복수의 다리와, 상기 복수의 다리에 각각 마련된 양 발을 구비하는 보행 로봇에 있어서,
    상기 복수의 다리에 각각 마련된 관절부;
    상기 양 발이 지면과 이루는 각도를 계산하는 지면 각도 계산부;
    상기 계산된 지면 각도를 이용하여 상기 관절부의 보상 값을 계산하는 보상 값 계산부;
    상기 계산된 보상 값을 이용하여 상기 관절부의 목표 궤적을 생성하는 목표 궤적 생성부;
    상기 생성된 목표 궤적을 추종하기 위한 상기 관절부의 목표 토크를 계산하는 목표 토크 계산부;
    상기 계산된 목표 토크를 상기 관절부에 전달하여 상기 보행을 제어하는 서보 제어부를 포함하는 보행 로봇.
  2. 제1항에 있어서,
    상기 관절부는 상기 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절을 포함하는 보행 로봇.
  3. 제2항에 있어서,
    상기 로봇의 발과 발목 관절 사이에 설치되어 상기 양 발의 지면 접촉 여부를 검출하는 F/T 센서를 더 포함하고,
    상기 지면 각도 계산부는 상기 F/T 센서에서 검출된 센서 정보에 따라 상기 양 발 중 어느 발이 지면에 지지하고 있는지를 판단하고, 상기 지면에 지지하고 있는 발을 기준으로 상기 양 발과 지면이 이루는 지면 각도를 계산하는 보행 로봇.
  4. 제3항에 있어서,
    상기 지면 각도는 상기 지면에 대한 상기 양 발의 기울어진 정도를 롤 방향과 피치 방향으로 나타내는 각도인 보행 로봇.
  5. 제4항에 있어서,
    상기 지면은 평평하지 않고 불규칙한 범프 타입과 딥 타입의 지면을 포함하는 보행 로봇.
  6. 제5항에 있어서,
    상기 보상 값 계산부는 상기 범프 타입 또는 딥 타입의 지면 보행 시, 상기 롤 방향과 피치 방향의 지면 각도를 이용하여 상기 힙 관절, 무릎 관절, 발목 관절의 보상 값을 계산하는 보행 로봇.
  7. 제6항에 있어서,
    상기 로봇의 보행 시, 상기 복수의 다리 상태에 따라 정해진 상기 관절부의 위치 궤적을 생성하는 위치 궤적 생성부를 더 포함하고,
    상기 목표 궤적 생성부는 상기 생성된 관절부의 위치 궤적에 상기 계산된 관절부의 보상 값을 더하여 상기 관절부의 목표 궤적을 생성하는 보행 로봇.
  8. 제7항에 있어서,
    상기 위치 궤적 생성부는 미리 정해진 평지 보행을 위해 상기 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절의 위치 궤적을 생성하는 보행 로봇.
  9. 제7항에 있어서,
    상기 목표 궤적 생성부는 상기 범프 타입 또는 딥 타입의 지면 보행 시, 상기 힙 관절, 무릎 관절, 발목 관절의 보상 값을 이용하여 상기 힙 관절, 무릎 관절, 발목 관절의 목표 궤적을 생성하는 보행 로봇.
  10. 복수의 다리와, 상기 복수의 다리에 각각 마련된 양 발을 구비하는 보행 로봇의 제어 방법에 있어서,
    상기 로봇의 보행 시, 상기 양 발이 지면과 이루는 각도를 계산하고;
    상기 계산된 지면 각도를 이용하여 상기 복수의 다리에 각각 마련된 관절부의 보상 값을 계산하고;
    상기 계산된 보상 값을 이용하여 상기 관절부의 목표 궤적을 생성하고;
    상기 생성된 목표 궤적을 추종하는 상기 관절부의 목표 토크를 계산하고;
    상기 계산된 목표 토크를 상기 관절부에 전달하여 상기 로봇의 보행을 제어하는 보행 로봇의 제어 방법.
  11. 제10항에 있어서,
    상기 지면 각도는 상기 지면에 대한 상기 양 발의 기울어진 정도를 나타내는 각도인 보행 로봇의 제어 방법.
  12. 제11항에 있어서,
    상기 지면 각도를 계산하는 것은,
    상기 양 발 중 어느 발이 지면에 지지하고 있는지를 판단하고, 상기 지면에 지지하고 있는 발을 기준으로 상기 양 발과 지면이 이루는 각도를 롤 방향과 피치 방향으로 계산하는 보행 로봇의 제어 방법.
  13. 제12항에 있어서,
    상기 지면은 평평하지 않고 불규칙한 범프 타입과 딥 타입의 지면을 포함하는 보행 로봇의 제어 방법.
  14. 제13항에 있어서,
    상기 관절부의 보상 값을 계산하는 것은,
    상기 범프 타입 또는 딥 타입의 지면 보행 시, 상기 롤 방향과 피치 방향의 지면 각도를 이용하여 상기 복수의 다리에 각각 마련된 힙 관절, 무릎 관절, 발목 관절의 보상 값을 계산하는 보행 로봇의 제어 방법.
  15. 제14항에 있어서,
    상기 범프 타입 또는 딥 타입의 지면 보행 시, 상기 힙 관절, 무릎 관절, 발목 관절의 보상 값을 이용하여 상기 힙 관절, 무릎 관절, 발목 관절의 목표 궤적을 생성하는 보행 로봇의 제어 방법.
  16. 제15항에 있어서,
    상기 힙 관절, 무릎 관절, 발목 관절의 목표 궤적은,
    상기 복수의 다리 상태에 따라 정해진 상기 힙 관절, 무릎 관절, 발목 관절의 위치 궤적에 상기 힙 관절, 무릎 관절, 발목 관절의 보상 값을 더하여 계산된 목표 궤적인 보행 로봇의 제어 방법.
  17. 제16항에 있어서,
    상기 힙 관절, 무릎 관절, 발목 관절의 위치 궤적은,
    미리 정해진 평지 보행을 위해 생성된 목표 궤적인 보행 로봇의 제어 방법.
KR1020120017424A 2012-02-21 2012-02-21 보행 로봇 및 그 제어 방법 Active KR101985790B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020120017424A KR101985790B1 (ko) 2012-02-21 2012-02-21 보행 로봇 및 그 제어 방법
US13/770,357 US9073209B2 (en) 2012-02-21 2013-02-19 Walking robot and control method thereof
CN201310055517.6A CN103257652B (zh) 2012-02-21 2013-02-21 步行机器人及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120017424A KR101985790B1 (ko) 2012-02-21 2012-02-21 보행 로봇 및 그 제어 방법

Publications (2)

Publication Number Publication Date
KR20130095973A true KR20130095973A (ko) 2013-08-29
KR101985790B1 KR101985790B1 (ko) 2019-06-04

Family

ID=48961617

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120017424A Active KR101985790B1 (ko) 2012-02-21 2012-02-21 보행 로봇 및 그 제어 방법

Country Status (3)

Country Link
US (1) US9073209B2 (ko)
KR (1) KR101985790B1 (ko)
CN (1) CN103257652B (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160079627A (ko) * 2014-12-26 2016-07-06 삼성전자주식회사 보조력 설정 방법 및 장치
CN107390702A (zh) * 2017-09-07 2017-11-24 南京昱晟机器人科技有限公司 一种自主运行机器人色差导航控制方法
KR20180085983A (ko) * 2017-01-20 2018-07-30 국방과학연구소 외골격 로봇의 하강보행 제어 방법
KR20190005501A (ko) 2017-07-07 2019-01-16 오현수 롤 방향 자유도를 사용하지 않는 이족보행 로봇 및 그 이족보행 방법
US10835442B2 (en) 2014-10-20 2020-11-17 Samsung Electronics Co., Ltd Method and apparatus for recognizing user motion
KR20220080071A (ko) * 2019-08-06 2022-06-14 보스턴 다이나믹스, 인크. 다리 스윙 궤적들
US11865709B2 (en) 2014-12-26 2024-01-09 Samsung Electronics Co., Ltd. Assisting torque setting method and apparatus

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2978844B1 (fr) * 2011-08-04 2014-03-21 Aldebaran Robotics Robot a articulations de rigidite variable et methode de calcul de ladite rigidite optimisee
KR101637643B1 (ko) * 2014-04-04 2016-07-07 현대자동차주식회사 보행자의 보행 감지 장치
US9499219B1 (en) 2014-08-25 2016-11-22 Google Inc. Touch-down sensing for robotic devices
US9517561B2 (en) * 2014-08-25 2016-12-13 Google Inc. Natural pitch and roll
JP6228097B2 (ja) * 2014-10-06 2017-11-08 本田技研工業株式会社 移動ロボット
US9878751B1 (en) 2015-10-08 2018-01-30 Boston Dynamics, Inc. Three-piston ankle mechanism of a legged robot and associated control system
JP6682341B2 (ja) * 2016-05-10 2020-04-15 パナソニック株式会社 歩行制御方法、歩行制御プログラム及び2足歩行ロボット
CN105857437B (zh) * 2016-05-11 2018-04-13 深圳市行者机器人技术有限公司 双足半被动行走器及其行走控制方法
CN105955278B (zh) * 2016-07-03 2018-08-17 柳州惠林科技有限责任公司 一种基于电动独轮车的摇头式平衡木偶
JP6927727B2 (ja) * 2017-03-29 2021-09-01 本田技研工業株式会社 ロボットの制御装置
CN109693233B (zh) * 2017-10-20 2020-11-24 深圳市优必选科技有限公司 机器人姿态检测方法、装置、终端设备及计算机存储介质
CN109814541B (zh) * 2017-11-21 2022-05-10 深圳市优必选科技有限公司 一种机器人的控制方法、系统及终端设备
CN110053039B (zh) * 2018-01-17 2021-10-29 深圳市优必选科技有限公司 一种机器人行走中重力补偿的方法、装置及机器人
US11550335B2 (en) * 2018-11-28 2023-01-10 Ubtech Robotics Corp Ltd Biped robot and its moving method and apparatus
CN110014451B (zh) * 2019-04-24 2021-12-21 哈尔滨理工大学 一种适于斜坡路面的爬行机器人髋部装置及控制
CN110920769B (zh) * 2019-11-28 2020-12-15 深圳市优必选科技股份有限公司 机器人的足腰协调步态规划方法、装置、介质及机器人
CN112975941B (zh) * 2019-12-13 2022-06-24 深圳市优必选科技股份有限公司 机器人控制方法、装置、计算机可读存储介质及机器人
CN111015631B (zh) * 2019-12-24 2022-11-11 上海理工大学 一种基于有限状态机的柔性外骨骼手辅助抓握训练控制方法
CN111203896A (zh) * 2020-01-22 2020-05-29 深圳国信泰富科技有限公司 一种变形机器人及控制方法
CN113156926B (zh) * 2020-01-22 2024-05-17 深圳市优必选科技股份有限公司 机器人的有限状态机的建立方法、有限状态机和机器人
CN111114668B (zh) * 2020-03-27 2020-07-07 之江实验室 基于关节工况多象限耦合的双足机器人数字液压驱动方法
JP7168614B2 (ja) * 2020-07-10 2022-11-09 株式会社ソニー・インタラクティブエンタテインメント ロボット
CN112631277B (zh) * 2020-12-08 2022-01-18 中山大学 一种四足机器人站姿转换的平衡控制方法及系统
WO2022141268A1 (zh) * 2020-12-30 2022-07-07 深圳市优必选科技股份有限公司 一种仿人机器人控制方法、计算机设备及存储介质
CN114454981B (zh) * 2021-12-14 2022-11-29 深圳市优必选科技股份有限公司 双足机器人的弹跳运动控制方法、装置及双足机器人
CN115416779B (zh) * 2022-11-04 2023-09-19 宿迁市玉合轩科技有限公司 一种基于重心调整的两腿仿生机器人及其平衡方法
CN117452931B (zh) * 2023-10-16 2024-06-25 之江实验室 一种仿人机器人的行走控制方法、装置及存储介质
CN119058852A (zh) * 2024-10-22 2024-12-03 哈尔滨工业大学 一种轻质小惯量人形机器人腿部结构
CN120439281A (zh) * 2025-04-24 2025-08-08 江苏云幕智造科技有限公司 一种针对12自由度的双足人形机器人步态控制方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004142095A (ja) * 2002-10-01 2004-05-20 Sony Corp ロボット装置及びロボット装置の制御方法
KR20100072586A (ko) * 2008-12-22 2010-07-01 삼성전자주식회사 로봇 및 그 균형 제어방법
KR20110084630A (ko) * 2010-01-18 2011-07-26 삼성전자주식회사 인간형 로봇 및 그 보행 제어방법

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2520019B2 (ja) * 1989-06-29 1996-07-31 本田技研工業株式会社 脚式移動ロボットの駆動制御装置
US5255753A (en) * 1989-12-14 1993-10-26 Honda Giken Kogyo Kabushiki Kaisha Foot structure for legged walking robot
US5355064A (en) * 1992-03-04 1994-10-11 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
JP3167407B2 (ja) * 1992-03-12 2001-05-21 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
US5337235A (en) * 1992-03-12 1994-08-09 Honda Giken Kogyo Kabushiki Kaisha Locomotion control system for legged mobiled robot
US5349277A (en) * 1992-03-12 1994-09-20 Honda Giken Kogyo Kabushiki Kaisha Control system for legged mobile robot
JP3132156B2 (ja) * 1992-05-22 2001-02-05 本田技研工業株式会社 脚式移動ロボットの歩容生成装置
JP3273443B2 (ja) * 1992-05-22 2002-04-08 本田技研工業株式会社 ロボットのリンクなどの軌道生成方法及び装置
JP3269852B2 (ja) * 1992-05-29 2002-04-02 本田技研工業株式会社 脚式移動ロボットの姿勢安定化制御装置
JP3662996B2 (ja) * 1996-01-25 2005-06-22 本田技研工業株式会社 脚式移動ロボットの歩行制御装置
DE69725764T2 (de) * 1996-07-25 2004-08-05 Honda Giken Kogyo K.K. Vorrichtung zur nachbildung des ganges für einen zweibeinigen robotor
JP3626303B2 (ja) * 1996-12-18 2005-03-09 本田技研工業株式会社 脚式移動ロボットの足底接地位置検出装置
EP1053835B1 (en) * 1997-01-31 2006-12-27 Honda Giken Kogyo Kabushiki Kaisha Leg type mobile robot control apparatus
JP3435666B2 (ja) * 1999-09-07 2003-08-11 ソニー株式会社 ロボット
JP2001260063A (ja) * 2000-03-21 2001-09-25 Sony Corp 多関節型ロボット及びその動作制御方法
DE60142849D1 (de) * 2000-11-20 2010-09-30 Sony Corp Vorrichtung und verfahren zum steuern des betriebs eines roboters mit beinen und robotervorrichtung
CN100503179C (zh) * 2001-08-01 2009-06-24 索尼公司 以腿行走的机器人与对其动作的控制方法
JP4733317B2 (ja) * 2001-08-28 2011-07-27 本田技研工業株式会社 脚式歩行ロボットの床反力検出器
DE60236457D1 (de) * 2001-12-28 2010-07-01 Honda Motor Co Ltd Gangerzeugungsvorrichtung für beweglichen roboter mit beinen und steuervorrichtung
JP3731118B2 (ja) * 2002-02-18 2006-01-05 独立行政法人科学技術振興機構 二脚歩行式人型ロボット
EP1486299B1 (en) * 2002-03-15 2012-03-14 Sony Corporation Operation control device for leg-type mobile robot and operation control method, and robot device
KR100960552B1 (ko) * 2002-04-26 2010-06-03 혼다 기켄 고교 가부시키가이샤 다리식 이동 로봇의 제어장치 및 족적결정 장치
EP1547732A4 (en) * 2002-10-01 2012-01-04 Sony Corp ROBOT DEVICE AND CONTROL PROCEDURE THEREFOR
US7295892B2 (en) * 2002-12-31 2007-11-13 Massachusetts Institute Of Technology Speed-adaptive control scheme for legged running robots
JP4246535B2 (ja) * 2003-04-17 2009-04-02 本田技研工業株式会社 二足歩行移動体の床反力作用点推定方法及び二足歩行移動体の関節モーメント推定方法
SE0301531L (sv) * 2003-05-22 2004-11-23 Abb Ab A Control method for a robot
JP4587738B2 (ja) * 2003-08-25 2010-11-24 ソニー株式会社 ロボット装置及びロボットの姿勢制御方法
KR100835361B1 (ko) * 2003-08-29 2008-06-04 삼성전자주식회사 간이 지면반력 센서를 이용한 보행 로봇 및 그 제어 방법
US8075633B2 (en) * 2003-09-25 2011-12-13 Massachusetts Institute Of Technology Active ankle foot orthosis
JP4279151B2 (ja) * 2004-01-06 2009-06-17 三菱電機株式会社 歩行ロボット
US8512415B2 (en) * 2005-03-31 2013-08-20 Massachusetts Institute Of Technology Powered ankle-foot prothesis
US8864846B2 (en) * 2005-03-31 2014-10-21 Massachusetts Institute Of Technology Model-based neuromechanical controller for a robotic leg
JP2008049458A (ja) 2006-08-28 2008-03-06 Toyota Motor Corp 脚式ロボット
JP2008119764A (ja) 2006-11-09 2008-05-29 Yaskawa Electric Corp 二足歩行ロボットの制御装置
KR20110074520A (ko) * 2008-09-04 2011-06-30 아이워크, 아이엔씨. 하이브리드 지형-적응형 의족 시스템
KR101493384B1 (ko) * 2008-12-22 2015-02-13 삼성전자 주식회사 로봇 및 그 균형 제어방법
KR101487783B1 (ko) * 2008-12-22 2015-01-29 삼성전자 주식회사 로봇 및 그 제어방법
KR20100073438A (ko) * 2008-12-23 2010-07-01 삼성전자주식회사 로봇 및 그 제어방법
KR20100078248A (ko) * 2008-12-30 2010-07-08 삼성전자주식회사 보행 로봇 및 그 제어방법
KR101549817B1 (ko) * 2009-01-22 2015-09-04 삼성전자 주식회사 로봇의 보행 제어장치 및 그 방법
KR20110082394A (ko) * 2010-01-11 2011-07-19 삼성전자주식회사 보행 로봇 및 그 제어 방법
KR101687628B1 (ko) 2010-01-12 2016-12-21 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
KR101687629B1 (ko) * 2010-01-18 2016-12-20 삼성전자주식회사 인간형 로봇 및 그 보행 제어방법
KR101687631B1 (ko) * 2010-01-18 2016-12-20 삼성전자주식회사 로봇의 보행 제어 장치 및 그 제어 방법
KR101766755B1 (ko) * 2010-08-17 2017-08-10 삼성전자주식회사 보행 로봇 및 그 제어방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004142095A (ja) * 2002-10-01 2004-05-20 Sony Corp ロボット装置及びロボット装置の制御方法
KR20100072586A (ko) * 2008-12-22 2010-07-01 삼성전자주식회사 로봇 및 그 균형 제어방법
KR20110084630A (ko) * 2010-01-18 2011-07-26 삼성전자주식회사 인간형 로봇 및 그 보행 제어방법

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10835442B2 (en) 2014-10-20 2020-11-17 Samsung Electronics Co., Ltd Method and apparatus for recognizing user motion
US11919156B2 (en) 2014-10-20 2024-03-05 Samsung Electronics Co., Ltd. Method and apparatus for recognizing user motion
KR20160079627A (ko) * 2014-12-26 2016-07-06 삼성전자주식회사 보조력 설정 방법 및 장치
US11865709B2 (en) 2014-12-26 2024-01-09 Samsung Electronics Co., Ltd. Assisting torque setting method and apparatus
KR20180085983A (ko) * 2017-01-20 2018-07-30 국방과학연구소 외골격 로봇의 하강보행 제어 방법
KR20190005501A (ko) 2017-07-07 2019-01-16 오현수 롤 방향 자유도를 사용하지 않는 이족보행 로봇 및 그 이족보행 방법
CN107390702A (zh) * 2017-09-07 2017-11-24 南京昱晟机器人科技有限公司 一种自主运行机器人色差导航控制方法
CN107390702B (zh) * 2017-09-07 2018-10-02 南京昱晟机器人科技有限公司 一种自主运行机器人色差导航控制方法
KR20220080071A (ko) * 2019-08-06 2022-06-14 보스턴 다이나믹스, 인크. 다리 스윙 궤적들

Also Published As

Publication number Publication date
KR101985790B1 (ko) 2019-06-04
US20130218345A1 (en) 2013-08-22
CN103257652A (zh) 2013-08-21
CN103257652B (zh) 2017-09-29
US9073209B2 (en) 2015-07-07

Similar Documents

Publication Publication Date Title
KR101985790B1 (ko) 보행 로봇 및 그 제어 방법
EP2347867B1 (en) Walking control apparatus of robot and method of controlling the same
KR101687630B1 (ko) 보행 로봇 및 그 균형 제어 방법
JP5916998B2 (ja) 人間型ロボット及びその歩行制御方法
KR101809972B1 (ko) 보행 로봇 및 그 제어방법
US8868239B2 (en) Walking control apparatus of robot and method of controlling the same
JP5607886B2 (ja) 歩行ロボット及びその制御方法
KR101766755B1 (ko) 보행 로봇 및 그 제어방법
KR101549817B1 (ko) 로봇의 보행 제어장치 및 그 방법
EP2343161A1 (en) Walking robot and method of controlling the same
KR20130049029A (ko) 보행 로봇 및 그 제어 방법
KR101732901B1 (ko) 보행 로봇 및 그 제어방법
KR20130068694A (ko) 보행 로봇 및 그 제어 방법
KR20110084631A (ko) 인간형 로봇 및 그 보행 제어방법
KR20120060578A (ko) 보행 로봇 및 그 자세 제어 방법
KR20120024098A (ko) 보행 로봇 및 그 제어방법
KR101760883B1 (ko) 로봇 및 그 제어방법
JP2009107033A (ja) 脚式移動ロボット及びその制御方法

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20120221

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20170117

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20120221

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20180329

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: 20180919

Patent event code: PE09021S01D

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: 20190314

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20190529

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20190530

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20220419

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20230418

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20240418

Start annual number: 6

End annual number: 6