
사족 보행 로봇의 보행을 위한 마찰 제약 조건을 고려한 지각 기반 동작 계획
CopyrightⓒKROS
Abstract
The legged robots, such as quadruped robots, have the advantage of being able to traverse through complex, challenging environments. For this to be possible, the robots must be aware of the complex area to traverse and plan the desired footsteps according to the desired walking direction considering the environment. In this paper, we describe an end-to-end framework pipeline from environment perception to footstep planning to let the quadruped robots traverse complex environments with friction constraints. The environment perception extracts planar regions that the legged robots can step on from the 2.5-dimension height map with the collected point cloud data. To overcome locomotion over rough terrain, footstep planning optimizes the desired footstep by considering the friction coefficients, and body pose planning determines the pose using robot’s states on stairs. The entire computation process of the environment perception completes to detect the planar regions within 80 Hz, and the motion planner generates the optimal foot trajectory and body trajectory to get a specified location. We experimentally validate our approach with the quadruped robot Canine by autonomously navigating stairs, stepping stones, and gaps over simulation environments.
Keywords:
Quadruped Robot, Perception, Motion Planning, Model-Based Control1. Introduction
바퀴형 로봇과 달리 족형 로봇은 험지에서의 뛰어난 이동성을 가지고 있다. 그 중에서 사족 보행 로봇은 네 개의 다리를 이용하여 균형을 잡아 이동하기 때문에 이족 보행 로봇보다 견고한 이동성을 가지며, 다양한 분야에서 활용하고자 연구되고 있다. 복잡한 환경에서 안정적으로 움직이기 위해서는 로봇이 주변 환경을 인식하고, 현재 상태에 따라 환경에 맞는 안전한 발 위치와 몸 자세를 결정해야 하므로 비전 센서를 통한 지형 인지 능력이 중요하다.
험지에서 족형 로봇의 이동은 다양한 방식으로 끊임없이 연구되고 있다. 최근에는 비전 센서를 통해 지형 정보를 이용하지 않고 로봇의 현재 상태만을 이용하여 안정적인 보행을 위해 심층 강화 학습을 통한 제어 방법[1,2]이 연구되고 있다. 그러나 보다 복잡한 지형에서 역동적이고 안전하게 움직이기 위해서는 지형 인식을 통해 이동에 필요한 정보를 얻어 이용하는 것이 필요하다.
사족 보행 로봇을 비롯한 보행 로봇의 이동을 위해 지형 정보를 처리하는 방법 중 잘 알려진 방법은 지면에 대하여 높이 정보를 가지는 2.5차원 지도를 생성[3,4]하는 것이다. 환경에 대한 3차원 정보를 얻을 수 있는 depth camera, stereo camera, LiDAR와 같은 3차원 카메라를 통해 point cloud를 수집하여 지도를 생성한다. 생성된 지도는 효율적인 활용을 위해 occupancy grid 구조를 이용하여 데이터를 정렬하여 보행에 활용한다. 최근에는 보행 로봇을 위한 지도 생성을 신경망(neural network)를 이용하여 센서와 환경의 노이즈에 더 강하고, 가려진 영역을 재구성하여 지도를 생성하여 보행에 이용하는 연구[5]도 수행되었다. 휴머노이드와 같은 이족 보행 로봇은 보행의 안정성을 위해 발바닥을 가지며, 보행에 발바닥 모양을 고려하여 움직여야 하기 대문에 지형의 평면 영역을 인식해 움직임을 결정한다[6,7]. 사족 보행 로봇 또한 지형에 대해 기하학적 정보를 판단하고 적절한 움직임을 결정하기 위해 지형에 대한 평면 정보를 얻는 것이 중요하며 이를 이용하여 적절한 지면 반력(Ground Reaction Force, GRF)를 결정할 수 있다.
사족 보행 로봇을 위한 동작 계획에 관한 연구로는 비전 센서를 통해 지형을 파악하여 발걸음 위치, 몸 자세를 결정한다. 지형을 파악하기 위해서 생성한 지형 지도와 로봇의 상태를 기반으로 보행 가능성, 이동 가능성 등을 조건을 만족하는 상태를 점수를 통해 최적의 발걸음과 몸 자세를 결정한다[3, 8-10]. 이족 보행 로봇의 보행을 위한 동작 계획의 경우 보행의 안정성을 위해 발바닥을 가진다는 특징으로 인해 최적의 동작을 계획하기 위해서는 지형 정보와 함께 발 모양의 회전을 고려하여 동작을 결정한다[7,11,12].
로봇의 자율 이동은 현재 위치에서 주어진 목표 지점에 안전하게 이동하기 위해 A*, RRT*, BIT*와 같은 알고리즘을 사용하여 최적의 경로를 생성하여 계획된 경로를 이동한다[13,14]. 경로 계획은 지형 정보를 사용하여 이동 중 로봇과 충돌이 없는 경로를 찾고 경로 평활화(smoothing)과 같은 최적화 과정을 통해 횡단 가능성을 향상시킨다. 최적의 움직임을 위한 궤적 생성에 대한 연구로는 TOWR[15]가 있다. 사전에 사용자로부터 입력 받은 로봇의 상태와 목표지점, 지형 정보를 이용하여 동적인 동작을 위한 최적의 궤적을 생성하지만, 궤적의 최적화를 위한 계산 소요 시간이 오래 걸린다는 단점이 있다.
모델 예측 제어(Model Predictive Control, MPC)는 실시간 제약 조건 하에서 최적 제어를 위해 널리 연구되고 있는 방법이다[16-19]. 단일 강체 동역학(SRBD) 모델을 사용하여 로봇 동역학 문제를 제약 조건이 있는 볼록 최적화 문제로 표현하며, 계산 복잡도를 줄여 실시간으로 해결할 수 있다. 동역학 모델을 정의할 수 없거나 이동을 위한 지형 정보를 사용할 수 없는 경우 심층 강화 학습을 사용하여 제어할 수 있다. 이 접근 방식은 미끄러운 지면, 복잡한 거친 지형, 장애물 등 까다로운 조건에서 동작을 학습하여 동적 이동 및 탐색을 수행하는 데 사용할 수 있다[20-25].
본 연구에서는 지형을 안정적으로 이동하기 위해 지각 정보와 지면 마찰 정보를 통합하여 적절한 동작 계획을 위한 프레임워크의 전체적인 파이프라인을 제시한다. 로봇이 다양한 지형에서 보다 안정적으로 이동하기 위해서는 환경의 기하학적 정보, 로봇의 상태뿐만 아니라 지면의 마찰도 고려해야 한다. 예를 들어 먼지가 많은 환경이나 비로 인해 젖은 바닥과 같이 마찰이 적은 표면을 이동하는 것은 일반적인 제어 방법으로는 어려움이 있다. 따라서 지형의 기하학적 정보만 활용하는 기존의 방법에서 지면 마찰 정보를 발걸음 계획과 자세 계획에 이용함으로써 마찰이 적은 지형에서 적절한 움직임을 가지도록 동작을 최적화한다. 보행을 위한 MPC 제어기에 고려되는 마찰 원뿔 부등식 제약 조건의 마찰 계수를 상위 동작 계획에 통합하여 제어 성능을 향상시킨다. 계단 환경의 경우 계단에서의 로봇 위치에 대하여 상태를 세분화하여 최적의 동작을 결정하도록 한다. 또한 지형에 대한 3차원 지각 정보 처리의 효율성을 높여 실시간성을 보장한다.
본 프레임워크의 파이프라인은 크게 지형 인지와 동작 계획으로 나누어 구성된다. 로봇이 이동하는 지형에 대한 3차원 정보를 실시간성을 확보하기 위해 간단하고 효율적인 알고리즘을 통해 2.5차원 지도를 80 Hz 주기로 생성한다. 생성 과정에서 얻는 지형의 표면 법선 벡터, 분할된 평면 영역, 지형의 모서리 영역에 대한 정보는 동작 계획에 활용된다. 인식한 지형을 바탕으로 계단의 기하학적 정보를 얻고, 동작 결정을 세분화하여 최적의 움직임을 위해 계단에서의 위치에 따라 로봇의 상태를 네 가지로 세분화하여 동작 계획에 이용한다. 다음으로 동작 계획에서는 인지된 지형 정보와 지면 마찰 정보를 기반으로 다음 목표 상태를 나타내는 keyframe을 결정하여 제어한다. Keyframe으로 결정되는 정보는 지형 정보와 지형의 마찰 정보를 이용하여 생성한 지도의 정보를 점수화하여 발걸음을 최적화하고, 결정된 발걸음과 지형 정보, 지면 마찰 정보를 통합하여 몸 방향과 몸 위치를 결정한다. 결정된 keyframe으로 생성된 궤적은 제어기를 통해 제어한다.
2장에서는 보행에 필요한 지형 정보를 얻기 위한 파이프라인에 대해 설명한다. 지형 지도 생성 과정과 지형 인지 과정에 대해 설명한다. 3장에서는 인지한 지형 정보를 바탕으로 안정적인 지형 이동을 위한 동작 계획 파이프라인 및 생성되는 keyframe을 통한 제어 방법에 대해 설명한다. 4장에서는 다양한 지면 마찰 계수를 가지는 환경을 구성하여 적절한 동작을 계획을 통한 보행의 안정성에 대하여 실험을 통해 제안한 방법의 타당성을 검증한다. 5장에서는 본 연구의 결론 및 향후 연구 계획을 제시한다.
2. System Overview
지면 마찰을 고려한 동작 계획을 수행하기 위해 본 연구에서는 무게 18 kg, 다리 길이 0.45 m를 가지는 사족 보행 로봇 Canine[26]을 사용하였다. 안정적인 보행을 위해 crawl gait를 이용하였으며 LF, RB, RF, LB 순서로 다리를 움직여 보행한다. 보행에 사용되는 파이프라인은 [Fig. 1]에 나타나 있다. 로봇은 상태 추정기(State estimator)를 통해 Inertial Measurement Unit (IMU)와 모터의 Encoder 데이터를 확장칼만필터(Extended Kalman Filter, EKF)와 같은 센서 융합 알고리즘을 이용하여 몸의 위치, 방향, 속도, 지면과의 접촉 여부 등을 추정하고, 이는 지도 생성과 동작 계획 및 제어에 사용된다.
![[Fig. 1] [Fig. 1]](/xml/44000/JKROS_2025_v20n1_1_f001.jpg)
Overview of the proposed perception processing and motion planning framework for the quadruped robot
로봇은 [Fig. 2]의 지형 인지 파이프라인을 통해 로봇이 이동하는 지형 정보를 얻는다. 로봇이 지형을 인지하기 위해 비선 센서부터 환경에 대해 point cloud data를 수집하고, state estimator로부터 얻은 로봇의 자세 정보와 이용하여 2.5차원 높이 지도를 생성한다. 높이 지도는 지형에 대한 표면 법선 벡터, 구분된 평면, 모서리 정보를 가지고 있으며, 안정된 움직임을 위해 이용된다.
![[Fig. 2] [Fig. 2]](/xml/44000/JKROS_2025_v20n1_1_f002.jpg)
Overview of the perception pipe. From top-left to top-right: Staircase terrain created in the simulation environment. Point cloud data for staircase terrain compressed into a 2.5-dimension height map with 3 cm resolution using pose data from the state estimator. The height map is segmented using PCA to get surface normal vectors and BFS to segment the plane. The segmented planes are filtered for noise and margins for edges by erosion process
생성한 지형 정보를 이용하여 안정된 이동을 하기 위해 지형에 최적화된 동작을 결정해야 한다. 안정된 보행을 위해서는 [Fig. 3]의 동작 계획 파이프라인을 통해 몸 자세와 발걸음을 결정하고 결정된 정보를 통해 다음 상태의 keyframe을 구성한다. 동작 계획에 사용되는 정보로는 지형 인지 과정을 통해 얻은 지형의 정보와 현재의 로봇의 상태, 사용자로부터 입력된 값을 통해 목표 몸의 방향과 위치를 결정하고 발걸음을 점수화를 통해 목표 위치를 결정한다. 결정된 상태에 대해 keyframe을 구성하고 현재와 다음 keyframe간의 궤적을 생성한다.
![[Fig. 3] [Fig. 3]](/xml/44000/JKROS_2025_v20n1_1_f003.jpg)
Overview of the motion planning pipeline. Desired footsteps and body pose were optimized using environment information from perception, the robot’s states from the state estimator, and user input. Desired motions were configured keyframe and generates reference trajectories for control
최적의 움직임을 위해 제어기로 MPC와 joint PD control을 이용한다. MPC를 이용한 제어는 동작 계획에서 생성된 keyframe간의 대한 궤적을 추적하도록 GRF를 추정하고 추정한 값을 통해 제어한다. 구체적으로는 선형화 모델 예측 제어(Linear Model Predictive Control, LMPC)를 사용하여 로봇의 움직을 제어한다. LMPC는 로봇의 동역학을 단순화하여 계산 효율성을 높이고, 로봇의 동작을 실시간으로 조정하고 최적의 제어 입력을 지속적으로 계산할 수 있도록 한다. 이를 통해 로봇이 이동하는 동안 목표 궤적을 정확하게 추적할 수 있다. 또한 제어 안정성을 높이고 동작 계획을 통해 생성된 발걸음을 잘 추적하기 위해 joint 상태 값에 대한 피드백을 제공하는 joint PD controller를 추가하여 제어한다.
3. Terrain Awareness
보행을 위한 동작 계획은 지형 정보가 포함된 2.5차원 높이 지도를 사용한다. 사용되는 지도는 사족 보행 로봇 주변으로 1.0 m x 1.0 m 범위로 3 cm x 3 cm 해상도를 가지며, 표면 법선 벡터, 평면, 모서리 정보를 포함된 지역 지도를 80 Hz 주기로 생성된다.
3.1 Height Map
사족 보행 로봇의 보행에 사용되는 대표적인 환경 인식 방법 중 하나는 지면에 대하여 지형의 높이 정보를 가지고 있는 높이 지도이다. 이는 2.5차원 지도라고도 하며, 환경에 대한 방대한 양의 3차원 데이터를 압축하여 지면에 해당하는 2차원 X-Y 평면에 대하여 높이 정보만을 가지도록 함으로써 연산량을 줄이고 구조화함으로써 이용하기 쉽게 만든 구조이다. 본 연구에서 사용되는 2.5차원 높이 지도는 지형에 대한 3차원 정보를 가지는 포인트 클라우드 데이터를 로봇 중심으로 일정 범위의 X-Y 평면을 이루는 grid 구조를 이용하여 정렬시키고, 각 cell에 수집된 데이터들 중 가장 높은 Z 값을 대표 높이로 지정하여 지도를 생성한다. 센서로부터 들어오는 지형 데이터를 처리하는 과정에서 노이즈가 포함된 정보를 처리하기 위해 중간값 필터(Median filter)를 이용한다.
높이 지도는 지형을 인식할 수 있도록 3 cm x 3 cm의 해상도를 가지며 로봇 중심에서 1.0 m x 1.0 m 범위로 생성하였다. 본 논문에서는 시뮬레이션에 얻을 수 있는 지형 정보의 값을 사용하여 높이 지도를 생성했으며, 실제 depth camera, stereo camera, LiDAR와 같은 비전 센서를 사용하여 환경에 대한 point cloud data를 얻어 높이 지도를 생성할 수 있다.
3.2 Planar Region Segmentation
평면 영역 분할은 생성한 높이 지도를 사용하여 수행된다. 분할된 평면 영역을 얻기 위해서는 생성한 지도의 각 cell에 해당하는 표면 법선 벡터를 추정하고, 추정한 값을 비교하여 평면을 형성한다. 표면 법선 벡터를 추정하기 위해서는 주성분 분석(Principle Component Analysis, PCA)를 이용한다. grid 구조에서 추정하고자 하는 cell과 인접해 있는 주변 cell 8개의 데이터를 이용하여 PCA를 통해 주성분을 분석하여 표면 법선 벡터를 찾는다.
하나의 평면을 구성하는 정보들은 모두 인접해 있으며 표면 법선 벡터가 같거나 비슷한 방향으로 형성된다는 점을 이용하여 평면을 구분한다. 추정한 표면 법선 벡터를 사용하여 평면을 구성하기 위해 간단한 탐색 알고리즘인 너비 우선 탐색(Breadth-First Search, BFS) 알고리즘을 이용한다. 높이 지도를 구성하는 grid를 BFS를 통해 전체 탐색하며 인접한 주변 cell과 표면 법선 벡터를 비교하여 특정 임계값을 초과하는지 확인하여 평면을 구성할지 여부를 결정한다. 또한, 평면을 구성하는 cell의 수가 특정 값 미만이라면 평면으로 분류하지 않는다. 평면의 가장자리에 해당하는 cell의 표면 법선 벡터는 PCA를 통해 추정했기 때문에 평면을 구성하는 다른 cell과 다른 방향으로 나타나게 된다. 이를 이용하여 평면을 구분 지을 뿐만 아니라 평면의 가장자리 또한 제거할 수 있다.
3.3 Filtering
필터링 과정은 생성한 높이 지도에서 outliers와 같은 노이즈를 제거하고 안정된 보행을 위해 평면의 가장자리를 인식하기 위해 수행된다. 모서리를 인식하기 위해 2차원 이미지 처리에서 이미지 형태와 구조를 이용하여 형태를 개선시키는 데 사용되는 형태학 연산(Morphology operation)을 이용하였다. Morphology operation 중 침식 연산(Erosion operation)을 이용한 binary erosion filter를 사용하며[17], 높이 지도의 occupancy 정보에 대해 수행된다. Erosion filter를 통해 모서리를 인지하는 과정은 전체 높이 지도 데이터와 3 x 3 크기를 가지는 십자가 모양 커널의 컨볼루션 연산으로 계산된다. 필터링 과정을 통해 동작 계획에 사용되는 높이 지도는 보행 중 가장자리를 밟지 않도록 모서리 정보를 포함한다.
3.4 Staircase Awareness
계단은 구조화된 지형 중 하나로 계단을 안정적으로 오르기 위해서는 계단에 대한 정보를 얻는 것이 중요하다. 생성한 지도 정보를 바탕으로 계단을 구성하는 요소인 단너비(Tread), 단높이(Riser)와 같은 기하학적 정보를 추정하고, 계단에 대한 로봇의 위치를 추정하여 동작 계획에 사용된다.
높이 지도를 이용하여 계단의 기하학적 정보를 얻기 위해서는 [Fig. 4]와 같이 계단의 첫번째 단(First Step Plane) 과 두번째 단(Second Step Plane)에 대한 평면이 형성되어 한다. 계단을 구성하는 단높이는 첫번째 단과 두번째 단을 이루는 평면의 높이 차이를 이용하여 찾고, 각 평면에서 기준으로 잡은 동일한 고정된 y 좌표를 가지는 cell 중 가장 작은 x 위치(Minimum Position)을 찾아 단너비를 추정한다.
![[Fig. 4] [Fig. 4]](/xml/44000/JKROS_2025_v20n1_1_f004.jpg)
Determine the size of the stairs using the segmented plane information from the height map. The riser is derived as the height difference of the two planes, and the tread is calculated using minimum positions that is smallest x position among the cells with the same fixed y coordinate as the reference
계단을 안전하게 이동하기 위해 계단에서의 로봇 위치에 따라 상태를 나누고, 세분화된 상태에 맞는 동작을 통해 이동한다. 계단 지형에서 로봇 위치에 대한 상태는 [Fig. 5]와 같이 On Ground, Start Stairs, On Stairs, End Stairs, 네 가지 상태로 나눈다. 파란색은 로봇이 보행 중 밟을 수 있는 후보의 위치를 나타내며, 로봇의 각 어깨 위치에서 일정 범위 내에 포함된 높이 지도 정보이다. 몸의 방향과 함께 앞다리의 탐색 후보 수와 뒷다리의 탐색 후보 수의 차이를 비교하여 로봇의 상태를 전환하는 state machine을 구성하여 이용하였다. 앞 뒤의 탐색 후보 수가 같은 평지에서 시작해 처음 탐색 후보 수가 달라지기 시작하면 로봇은 계단이 시작되는 것으로 파악하고, 그 다음 탐색 후보 수가 달라지면 계단 끝에 도달한 것으로 판단한다. 후보 수는 특정 값 이상 차이가 나면 상태 변화가 발생한 것으로 판단하며, 동작 계획은 세분화된 상태에 대하여 안정적으로 이동할 수 있도록 동작 결정을 통해 최적화한다.
![[Fig. 5] [Fig. 5]](/xml/44000/JKROS_2025_v20n1_1_f005.jpg)
Use map data to determine the states of the robot for the staircase. The difference in the number of search candidates for footstep planning in the filtered map is used to classify four states; On Ground, Start Stairs, On Stairs, and End Stairs (From top to bottom). When the number of candidates changes, the robot switches to the next state, and body pose planning is applied to each strategy
4. Motion Planning and Control
지형을 안정적으로 이동하기 위해서는 지면 마찰을 고려한 발걸음과 몸 자세를 결정하는 것이 중요하다. 보다 안정적인 보행을 위해 제어기에서 고려되는 마찰 제약 조건을 동작 계획에서도 활용한다. 로봇은 이전 3장에서 소개한 높이 지도와 인지한 환경 정보, 지형의 마찰 정보를 이용하여 발걸음 안전도를 점수화하여 다음 목표 발걸음 위치를 계획하고, 지도에서 얻은 계단 정보, 상태, 목표 발걸음 위치를 이용하여 목표 몸 자세를 계획한다. 동작 계획을 통해 얻은 최적의 목표 발걸음과 몸 자세는 다음 상태의 keyframe을 형성하여 현재의 keyframe과의 궤적을 생성하고, 제어기를 통해 궤적을 따라가도록 제어된다.
4.1 Footstep Planning
발걸음 계획은 지형 지도, 로봇의 현재 상태에 대한 다리의 운동학적 제약 조건, 마찰 제약 조건 등을 이용하여 탐색 후보를 점수화하여 최적의 발걸음을 결정한다.
발걸음 계획에 사용되는 환경에 대한 높이 지도는 [Fig. 6]에 나타나 있다. 녹색은 모서리가 제거된 높이 지도, 파란색은 탐색 후보, 빨간색은 이상적인 발걸음 위치(nominal foot position), 분홍색은 계획을 통해 결정된 목표 발걸음 위치이다. 안정적인 자세를 위한 발걸음 위치인 nominal foot position은 로봇의 각 어깨의 x, y 위치에 해당하는 지형의 위치이며, 탐색 후보는 어깨 위치에서 일정 범위 내에 포함된 높이 지도 정보이다. 발걸음 계획은 아래의 식에 따라 탐색 범위의 후보 중 비용 점수가 가장 높은 후보 값을 다음 keyframe의 목표 발걸음으로 선택한다.
(1) |
(2) |
![[Fig. 6] [Fig. 6]](/xml/44000/JKROS_2025_v20n1_1_f006.jpg)
The desired foot position found in the footstep planning process is determined by scoring on the search candidates, which is the values of the search region created from the robot’s shoulder x, y position in the height map data
식 (1)에서 는 발걸음 계획으로 결정된 목표 발걸음 위치이며, 는 각 발걸음의 탐색 영역 내의 후보군이며 p는 탐색 영역의 후보 중 하나이다. i는 각각의 다리 index를 의미하며 index가 낮은 순서대로 LF, RF, LB, RB를 나타낸다. 식 (2)의 지형 마찰 계수로 계산되는 마찰 비용 cfrict은 탐색 후보를 결정하는 탐색 영역과 관련이 있으며, 지면 마찰 계수가 낮을수록 영역이 작아진다. 운동 비용 ckin은 다리의 운동학적 제약을 고려하여 계산되고, nominal foot position에 가까울수록 비용이 높아지는 거리 비용 cdist, 지형의 구분된 평면에 대한 모서리에서 멀어질수록 높아지는 모서리 비용 cedge를 추가하여 탐색 영역 내의 후보를 점수화한다. 후보 탐색에 사용되는 가중치 ω1, ω2, ω3, ω4는 실험적으로 더 나은 동작을 하도록 조정된다.
4.2 Body Pose Planning
계단을 오르는 것과 같이 복잡한 지형에 움직이기 위해서는 지형의 기하학적 모양뿐만 아니라 지형의 마찰을 고려하여 최적의 몸 자세를 찾는 것이 매우 중요하다. 계단을 이동할 때는 현재의 발 위치, 계단의 기하학적 정보, 계단에서의 로봇 위치에 따른 상태, 지면 마찰 정보 등을 고려하여 몸 자세를 계획한다.
계단에서의 위치에 대한 로봇의 상태에 따라 몸의 목표 pitch 회전 방향은 아래의 식 (3)를 이용하여 결정한다.
(3) |
여기서 θstairs는 환경 인지 과정에서 얻은 계단의 tread, riser 정보를 통해 얻는 각도이며, 계단 시작과 끝에서는 현재 발 위치를 이용하여 몸 방향을 결정한다. 이때 는 현재의 발걸음 위치를 나타내며 index에 대한 다리에 해당하는 발 위치이다. Roll 회전 방향은 0으로 유지하도록 하며 yaw 회전 방향은 사용자가 주어진 목표 위치를 이용하여 목표 방향으로 이동하도록 계산되어 결정한다.
(4) |
Crawl gait를 이용하여 이동을 위해서는 질량 중심(Center of Mass, CoM)을 고려해야 하며, 계단에서의 안정된 움직임을 위해 식 (4)를 이용하여 목표 몸 위치를 결정한다. 안정된 몸 위치를 결정하기 위해서는 보행 중 swing leg 제외한 3개의 stand leg의 발 위치로 형성되는 support polygon을 찾고, CoM을 support polygon 내부에 위치하도록 한다. fsP는 현재의 발 위치 pF를 사용하여 support polygon을 생성하여 내부에 CoM이 위치하도록 몸 위치를 결정한다. 지면 마찰을 고려하여 안정적인 움직임을 위해 계단에서의 로봇 위치에 따라 추가적인 계산을 통해 몸 위치를 결정한다. 식 (3)에서 찾은 목표 pitch 회전과 지면의 마찰 계수 μ를 사용하여 각 위치에 대하여 위치를 계산한다. 계산에 사용되는 파라미터 λstart, λon, λend, λfrict는 계단의 너비와 높이를 이용하여 결정된다.
[Fig. 7]은 로봇이 On Ground와 On Stairs에서의 몸 자세 계획 과정에서 고려되는 support polygon과 CoM 위치를 보여주며 제안한 계획 방법을 통해 계단 상태에 따라 적합한 몸 방향을 찾고 지면 마찰을 고려하여 몸 위치를 결정한다.
4.3 Model Predictive Control
동작 계획을 통해 결정된 목표 발걸음과 몸 자세 정보를 가지는 keyframe은 이동을 위해 궤적을 생성하고, LMPC를 통해 궤적을 따르도록 제어된다. 식 (5)에 표현된 LMPC의 동역학은 계산 효율성을 위해 단순 강체 모델(Single Rigid Body Model, SRBM)을 이용하여 단순화한 동역학식을 이용한다.
(5) |
여기서 m은 로봇의 질량, p는 로봇의 전역 좌표계에서의 위치, c는 지면과 접촉하는 다리, fi는 i번째 다리의 GRF, g는 중력을 의미한다. I는 단순화된 로봇의 관성 모멘트, ω는 각속도, ri는 i번째 stand leg의 발 위치다.
로봇 상태 는 몸 방향, 전역 좌표계에서의 위치, 각속도, 선형 속도로 구성된다. 아래 식 (6)에서 주어진 LMPC 문제를 통해 지면과 접촉한 i개의 다리에 대한 힘 을 추정할 수 있다.
(6) |
(7) |
식 (7)은 LMPC를 풀기 위한 동역학 등식 제약 조건과 마찰 원뿔 부등식 제약 조건을 나타낸다. 제어기에 사용되는 마찰 제약 조건은 각 실험에서 특정한 지면의 마찰 계수를 이용하며, 제어기는 제약 조건을 충족하도록 안정적인 이동을 위한 GRF를 생성한다.
5. Results
제안한 지각 기반 동작 계획 프레임워크를 검증하기 위해 시뮬레이션 환경[27]을 구성하고, 여러 경우의 지면 마찰 계수를 가지는 지형에 대하여 실험하였다. 실험에는 지형의 마찰 정보를 동작 계획에 고려하지 않고 지형 정보와 로봇의 상태만을 활용하여 발걸음과 몸 자세를 계획하는 기존 방법에 대하여 이동 성공률, 미끄러짐 거리에 대하여 비교하여 검증한다. 기존 방법은 제안한 방법과 동작 계획을 제외한 지형 인지와 제어는 같은 방법을 사용하였으며 제어기의 경우 LMPC를 이용하여 GRF를 생성하여 이동한다.
5.1 Experimental Setup
실험에는 네 가지의 지면 마찰 계수를 사용되었으며, 완만한 경사를 가지는 계단과 가파른 경사를 가지는 계단을 구성하였다. 또한 계단 환경뿐만 아니라 다양한 지형에 대한 적용 가능성을 보여주기 위해 디딤돌 환경과 틈 지형을 구성하여 실험했다. 로봇은 목표 위치를 사용자로부터 입력 받아 지형을 이동한다. 발걸음을 결정하기 위해 사용되는 가중치 파라미터 ω1, ω2, ω3, ω4는 각각 10, 10, 1, 1로 설정하고, 몸 자세 결정에 사용되는 파라미터 λstart, λon, λend, λfrict는 계단의 높이와 너비에 의해 결정되며, [Table 1]의 Stairs II 환경에서 각각 0.1, 0.1, 0.04, 0.25로 실험되었다.
5.2 Validation Results
실험을 통해 검증하기 위해 동작 계획에 마찰 제약 조건을 고려하지 않고 목표 위치와 지형 정보만을 통해 계획하는 기존 방법과 비교 검증하였다. [Fig. 8]과 같이 두 가지 유형의 계단과 디딤돌, 틈 지형에 대하여 실험 했으며 해당 결과는 지면 마찰 계수가 0.2를 가지는 지형에 대한 스냅샷이다. 지형 인지를 위해 로봇 주변으로 1.0 m x 1.0 m 크기로 3 cm x 3 cm 해상도를 가지며 분할된 평면과 모서리 정보를 포함한 높이 지도를 생성하였다. [Fig. 8]에 보이는 것과 같이 로봇은 지형에 대하여 평면을 분할하여 지도를 생성하여 지형을 인지한다. 보행의 안정성을 위해 모서리를 필터링하여 계단의 가장자리에서 여유를 주어 보행에 이용하였다. 또한 로봇은 지도 정보에서 탐색 후보 개수 비교를 통해 계단에서의 상태를 인지하고 해당되는 계획 전략을 통해 동작을 최적화하였다.
![[Fig. 8] [Fig. 8]](/xml/44000/JKROS_2025_v20n1_1_f008.jpg)
Results of the Canine walking over three different simulation cases using our motion planning framework in the Raisim. The friction coefficient μ is the same in these three results, 0.2. From top to bottom: Staircase with 30 cm tread and 13.5 cm riser. Staircase with 20 cm tread and 15 cm riser. Stepping stones at a 5 m distance. Gap with 5 cm. Uneven terrain
각각의 환경에 대한 결과는 [Table 1]에 요약되어 있다. 실험에서 사용되는 계단은 24.228⁰의 완만한 경사를 가진 Stairs I, 36.870⁰의 가파른 경사를 가진 Stairs II, 디딤돌로 구성하였으며 Stairs I, Stairs II 환경은 10개의 계단으로 이루어져 있다. 평균 속도는 로봇이 넘어지지 않고 성공적으로 통과한 시간을 통계 계산되었다. 디딤돌과 틈 지형의 경우 지형이 이루는 각도가 작기 때문에 기존 방법을 통한 보행도 다른 실험에 비해 상대적으로 성공률이 높은 것을 볼 수 있다. 그러나 계단 환경의 경우 실험을 통한 성공률을 보았을 때, 제안한 방법을 통해 이동하는 것이 더 안정적이라는 것을 보여준다. 경사가 있는 지형을 극복하여 오르기 위해서는 평평한 지형을 이동할 때 보다 GRF가 더 필요하다. 이러한 이유로 지면 마찰 계수가 낮은 계단 환경에서 이동하기 위해서는 GRF가 마찰 원뿔을 벗어나지 않도록 하며 적절한 GRF를 내도록 하는 것이 중요하다는 것을 알 수 있다. 성공률에 대한 결과는 마찰 제약 조건을 동작 계획에 통합하여 결정하는 것이 낮은 마찰 계수를 가지는 환경에 대해 넘어지는 것을 방지하지만, 같은 마찰 계수라도 경사가 급할 수록 불안정성이 커진다는 것을 보여준다.
[Fig. 9]는 마찰 계수가 0.2인 Stairs II 환경에서 마찰 제약 조건을 이용한 동작 계획을 통해 이동한 로봇 상태에 대해 보여준다. 상단의 스냅샷은 동작 계획에 사용되는 계단에 대한 상태에 대한 모습을 보이고, 중간의 그래프는 이동 중 몸 자세 계획으로 결정된 몸 방향을 나타내며, 아래는 로봇의 CoM의 위치, 발걸음의 위치를 보여준다. 계단에서의 로봇 위치에 따라 상태를 세분화하여 계획한 발걸음, 몸 자세가 적절히 잘 결정된 것을 볼 수 있으며 계단 위에서는 GRF가 마찰 원뿔을 벗어나지 않도록 CoM의 이동이 줄어는 것을 볼 수 있다. 아래의 그래프 내에서 x 표식은 발걸음 계획으로 결정되어 처음 디딘 발걸음의 위치를 나타내며, 발걸음에 대해 선으로 나타난 것은 이동 중 발이 미끄러진 경로를 나타낸다. 평지를 걸을 때는 미끄러짐이 적지만 다른 상태에서는 미끄러짐이 발생한 것을 볼 수 있으며 최대 약 5 cm까지 미끌림이 발생하였다.
![[Fig. 9] [Fig. 9]](/xml/44000/JKROS_2025_v20n1_1_f009.jpg)
The snapshots of climbing the stairs (top), the orientation of body (middle), global positions of body and foot (bottom) while climbing Stairs case II with a friction coefficient of 0.2. These results show that the pose of the body and footstep are determined by the four states on the stairs. In the results for foot positions, the cross represents the position where the first step was taken, and the line shows that the slip occurred during locomotion
마지막으로 Stairs II 환경에 대하여 지면 마찰 계수를 다르게 해 미끄러짐이 얼마나 발생하는지를 실험하여 기존 방법과 비교하였다. 실험에 사용되는 지면 마찰 계수는 0.8, 0.4, 0.2, 0.1로 각각의 환경에서 실험하여 미끄러진 거리를 측정하여 [Table 2]에 나타냈다. 미끄러진 거리는 처음 디딘 위치에서 미끄러진 위치까지의 거리이며, 넘어지기 전의 미끌린 값들 중 가장 큰 값이다. 기존 방법을 통한 이동 과정과 제안한 프레임워크 모두 지면 마찰이 작아질수록 미끌림 정도가 증가하지만 제안한 방법이 약 2배 이상 덜 미끄러지는 것으로 나타났다.
6. Conclusion
본 논문에서는 사족 보행 로봇의 안정적인 이동을 위해 지면의 마찰을 고려한 지각 기반 동작 계획 프레임워크를 제안하였다. 제안한 프레임워크는 실시간 보행을 위해 80 Hz 주기로 환경을 인지하고, 안정적인 보행 위해 제어기에서 사용되는 마찰 제약 조건을 동작 계획단에서 이용한다. 환경 인지를 위해 지형에 대한 정보를 효율적으로 처리하여 표면 법선 벡터, 구분된 평면, 모서리 정보를 포함한 2.5차원 높이 지도를 생성하였다. 안정적인 이동을 위해 지형 정보를 바탕으로 계단에서의 로봇 위치에 따라 네 가지 상태로 구분하였으며, 이를 세분화된 동작 계획에 이용하여 이동하였다. 로봇은 다음 발걸음의 위치를 결정하기 위해 지도 정보에 대하여 점수화 하여 결정하며, 세분화된 계단에서의 상태를 바탕으로 적절한 몸 위치와 방향을 결정하고, 제어를 위한 발걸음 궤적과 몸 자세 궤적을 생성하였다. 제안한 프레임워크의 평가를 위해 시뮬레이션에서 다양한 지면 마찰 계수를 가지는 계단 환경을 구성하여 실험하였으며, 지정된 목표 위치까지 적당한 속도로 넘어지지 않고 성공적으로 이동했으며, 추가적인 검증을 위해 징검다리, 틈, 불규칙 환경을 구성하여 검증했다. 그러나 제안한 방법에 사용하는 지면에 대한 마찰 계수는 사용자가 직접 제공해야 한다. 이에 대해 향후 연구에서는 다양한 환경에서 이동 중 지면 마찰 계수를 찾아 동작 계획에 이용하는 방법에 대해 연구를 진행하고 실제 환경에서 테스트하여 제안한 지형 인지와 동작 계획 프레임워크를 검증할 것이다.
Acknowledgments
This work was supported by a 2-Year Research Grant of Pusan National University.
References
-
S. Choi, G. Ji, J. Park, H. Kim, J. Mun, J. H. Lee, and J. Hwangbo, “Learning quadrupedal locomotion on deformable terrain,” Science Robotics, vol. 8, no. 74, Jan., 2023.
[https://doi.org/10.1126/scirobotics.ade2256]
-
I. M. Aswin Nahrendra, B. Yu, and H. Myung, “DreamWaQ: Learning robust quadrupedal locomotion with implicit terrain imagination via deep reinforcement learning,” 2023 IEEE International Conference on Robotics and Automation (ICRA), London, United Kingdom, pp. 5078-5084, 2023.
[https://doi.org/10.1109/ICRA48891.2023.10161144]
-
C. Mastalliet, M. Focchi, I. Havoutis, A. Radulescu, S. Calinon, J. Buchli, D. G. Caldwell, and C. Semini, “Trajectory and foothold optimization using low-dimensional models for rough terrain locomotion,” 2017 IEEE International Conference on Robotics and Automation (ICRA), Singapore, pp. 1096-1103, 2017.
[https://doi.org/10.1109/ICRA.2017.7989131]
-
P. Fankhauser, M. Bloesch, and M. Hutter, “Probabilistic terrain mapping for mobile robots with uncertain localization,” IEEE Robotics and Automation Letters, vol. 3, no. 4, pp. 3019-3026, Oct., 2018.
[https://doi.org/10.1109/LRA.2018.2849506]
-
D. Hoeller, N. Rudin, C. Choy, A. Anandkumar, and M. Hutter, “Neural scene representation for locomotion on structured terrain,” IEEE Robotics and Automation Letters, vol. 7, no. 4, pp. 8667-8674, Oct., 2022.
[https://doi.org/10.1109/LRA.2022.3184779]
-
S. Bertrand, I. Lee, B. Mishra, D. Calvert, J. Pratt, and R. Griffin, “Detecting usable planar regions for legged robot locomotion,” 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Las Vegas, NV, USA, pp. 4736-4742, 2020.
[https://doi.org/10.1109/IROS45743.2020.9341000]
-
M. Lee, Y. Kwon, S. Lee, J. Choe, J. Park, H. Jeong, Y. Heo, M.-S. Kim, J. Sungho, S.-E. Yoon, and J.-H. Oh, “Dynamic humanoid locomotion over rough terrain with streamlined perception-control pipeline, 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Prague, Czech Republic, pp. 4111-4117, 2021.
[https://doi.org/10.1109/IROS51168.2021.9636218]
-
A. W. Winkler, C. Mastalli, I. Havoutis, M. Focchi, D. Caldwell, and C. Semini, “Planning and execution of dynamic whole-body locomotion for a hydraulic quadruped on challenging terrain,” 2015 IEEE International Conference on Robotics and Automation (ICRA), Seattle, WA, USA, pp. 5148-5154, 2015.
[https://doi.org/10.1109/ICRA.2015.7139916]
-
P. Fankhauser, M. Bjelonic, C. D. Bellicoso, T. Miki, and M. Hutter, “Robust rough-Terrain locomotion with a quadrupedal robot,” 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, Australia, pp. 1-8, 2018.
[https://doi.org/10.1109/ICRA.2018.8460731]
-
F. Jenelten, T. Miki, A. E. Vijayan, M. Bjelonic, and M. Hutter, “Perceptive locomotion in rough terrain-online foothold optimization, IEEE Robotics and Automation Letters, vol. 5, no. 4, pp. 5370-5376, Oct., 2020.
[https://doi.org/10.1109/LRA.2020.3007427]
-
R. J. Griffin, G. Wiedebach, S. McCrory, S. Bertrand, I. Lee, and J. Pratt, “Footstep planning for autonomous walking over rough terrain,” 2019 IEEE-RAS 19th International Conference on Humanoid Robots (Humanoids), Toronto, ON, Canada, pp. 9-16, 2019.
[https://doi.org/10.1109/Humanoids43949.2019.9035046]
-
D. Calvert, B. Mishra, S. McCrory, S. Bertrand, R. Griffin and J. Pratt, “A Fast, Autonomous, Bipedal Walking Behavior over Rapid Regions,” 2022 IEEE-RAS 21st International Conference on Humanoid Robots (Humanoids), Ginowan, Japan, pp. 24-31, 2022.
[https://doi.org/10.1109/Humanoids53995.2022.10000120]
-
T. Dang, M. Tranzatto, S. Khattak, F. Mascarich, K. Alexis, and M. Hutter, “Graph-based subterranean exploration path planning using aerial and legged robots,” Journal of Field Robotics, vol. 37, no. 8, pp. 1363-1388, Nov., 2020.
[https://doi.org/10.1002/rob.21993]
-
S. McCrory, B. Mishra, J. An, R. Griffin, J. Pratt, and H. E. Sevil, “Humanoid path planning over rough terrain using traversability assessment,” arXiv:2203.00602, 2022.
[https://doi.org/10.48550/arXiv.2203.00602]
-
A. W. Winkler, C. D. Bellicoso, M. Hutter, and J. Buchli, “Gait and trajectory optimization for legged systems through phase-based endeffector parameterization,” IEEE Robotics and Automation Letters, vol. 3, no. 3, pp. 1560-1567, Jul., 2018.
[https://doi.org/10.1109/LRA.2018.2798285]
-
J. Di Carlo, P. M. Wensing, B. Katz, G. Bledt, and S. Kim, “Dynamic locomotion in the MIT cheetah 3 through convex model-predictive control,” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, pp. 1-9, 2018.
[https://doi.org/10.1109/IROS.2018.8594448]
-
D. Kim, D. Carballo, J. Di Carlo, B. Katz, G. Bledt, B. Lim, and S. Kim, “Vision aided dynamic exploration of unstructured terrain with a small-scale quadruped robot,” 2020 IEEE International Conference on Robotics and Automation (ICRA), Paris, France, pp. 2464-2470, 2020.
[https://doi.org/10.1109/ICRA40945.2020.9196777]
-
R. Grandia, F. Jenelten, S. Yang, F. Farshidian, and M. Hutter, “Perceptive locomotion through nonlinear model-predictive control,” IEEE Transactions on Robotics, vol. 39, no. 5, pp. 3402-3421, Oct., 2023.
[https://doi.org/10.1109/TRO.2023.3275384,]
-
F. Jenelten, R. Grandia, F. Farshidian and M. Hutter, “TAMOLS: Terrain-Aware Motion Optimization for Legged Systems,” IEEE Transactions on Robotics, vol. 38, no. 6, pp. 3395-3413, Dec., 2022.
[https://doi.org/10.1109/TRO.2022.3186804]
-
F. Jenelten, J. Hwangbo, F. Tresoldi, C. D. Bellicoso, and M. Hutter, “Dynamic locomotion on slippery ground,” IEEE Robotics and Automation Letters, vol. 4, no. 4, pp. 4170-4176, Oct., 2019.
[https://doi.org/10.1109/LRA.2019.2931284]
-
T. Miki, J. Lee, J. Hwangbo, L. Wellhausen, V. Koltun, and M. Hutter, “Learning robust perceptive locomotion for quadrupedal robots in the wild,” Science Robotics, vol. 7, no. 62, 2022.
[https://doi.org/10.1126/scirobotics.abk2822]
-
D. Hoeller, N. Rudin, D. Sako, and M. Hutter, “ANYmal Parkour: Learning agile navigation for quadrupedal robots,” Science Robotics, vol. 9, no. 88, 2024.
[https://doi.org/10.1126/scirobotics.adi7566]
-
Y. Kim, C. Kim, and J. Hwangbo, “Learning Forward Dynamics Model and Informed Trajectory Sampler for Safe Quadruped Navigation,” Robotics: Science and Systems 2022, New York City, NY, USA, 2022.
[https://doi.org/10.15607/RSS.2022.XVIII.069]
-
Z. Li, X. B. Peng, P. Abbeel, S. Levine, G. Berseth, and K. Sreenath, “Robust and versatile bipedal jumping control through multi-task reinforcement learning,” arXiv:2302.09450, 2023.
[https://doi.org/10.48550/arXiv.2302.09450]
-
S. Qi, W. Lin, Z. Hong, H. Chen, and W. Zhang, “Perceptive autonomous stair climbing for quadrupedal robots,” 2021 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Prague, Czech Republic, pp. 2313-2320, 2021.
[https://doi.org/10.1109/IROS51168.2021.9636302]
-
H. Kang, J. An, H. Cha, W. Ahn, H. Song, and I. Lee, “Research on Stability of Control for Quadruped Robot with Robust Leg Structure Design,” The Journal of Korea Robotics Society, vol. 18, no. 2, pp. 172-181, May, 2023.
[https://doi.org/10.7746/jkros.2023.18.2.172]
-
J. Hwangbo, J. Lee, and M. Hutter, “Per-contact iteration method for solving contact dynamics, IEEE Robotics and Automation Letters, vol. 3, no. 2, pp. 895-902, Apr., 2018.
[https://doi.org/10.1109/LRA.2018.2792536]
2022 부산대학교 전자공학과(학사)
2024 부산대학교 전기전자공학과(석사)
관심분야: 로보틱스, 환경 인식, 보행로봇
2017 부산대학교 항공우주공학과(학사)
2019 부산대학교 전기전자공학과(석사)
2019~현재 부산대학교 전자전기공학과(박사)
관심분야: 로보틱스, 보행로봇, 딥러닝, 환경 인식
2022 부산대학교 전자공학과(학사)
2024 부산대학교 전기전자공학과(석사)
2024~현재 부산대학교 전기전자공학과(박사)
관심분야: 로보틱스, 기계 학습, 보행로봇
2022 부산대학교 전자공학과(학사)
2024 부산대학교 전기전자공학과(석사)
관심분야: 로보틱스, 보행로봇, 컴퓨터 구조
2022 부산대학교 전자공학과(학사)
2023~현재 부산대학교 전기전자공학과(석사)
관심분야: 로보틱스, 보행로봇
2009 한국과학기술원 기계공학과(학사)
2011 한국과학기술원 기계공학과(석사)
2016 한국과학기술원 기계공학과(박사)
2020~현재 부산대학교 전자공학과 부교수
관심분야: 로보틱스, 기계시스템 자동화, 보행로봇