Journal of Korea Robotics Society
[ ARTICLE ]
The Journal of Korea Robotics Society - Vol. 18, No. 1, pp.117-121
ISSN: 1975-6291 (Print) 2287-3961 (Online)
Print publication date 28 Feb 2023
Received 30 Oct 2022 Revised 01 Dec 2022 Accepted 03 Dec 2022
DOI: https://doi.org/10.7746/jkros.2023.18.1.117

인체 근골격 시뮬레이션을 활용한 인체 보행 시 외골격의 고관절 굴곡/신장 토크 최적화

강혜선1 ; 김진현
Optimization of Hip Flexion/Extension Torque of Exoskeleton During Human Gait Using Human Musculoskeletal Simulation
Hyeseon Kang1 ; Jinhyun Kim
1Master’s Degree, Seoul National University of Science and Technology, Seoul, Korea hyeseon0120@seoultech.ac.kr

Correspondence to: Full Professor, Corresponding author: Seoul National University of Science and Technology, Seoul, Korea ( jinhyun@seoulteh.ac.kr)

CopyrightⓒKROS

Abstract

Research on walking assistance exoskeletons that provide optimized torque to individuals has been conducted steadily, and these studies aim to help users feel stable when walking and get help that suits their intentions. Because exoskeleton auxiliary efficiency evaluation is based on metabolic cost savings, experiments on real people are needed to evaluate continuously evolving control algorithms. However, experiments with real people always require risks and high costs. Therefore, in this study, we intend to actively utilize human musculoskeletal simulation. First, to improve the accuracy of musculoskeletal models, we propose a body segment mass distribution algorithm using body composition analysis data that reflects body characteristics. Secondly, the efficiency of most exoskeleton torque control algorithms is evaluated as the reduction rate of Metabolic Cost. In this study, we assume that the torque minimizing the Metabolic Cost is the optimal torque and propose a method for obtaining the torque.

Keywords:

Exoskeleton, Torque Optimizing, Musculoskeletal Simulation, AnyBody Modeling System, Body Segment Mass

1. 서 론

사람의 보행을 보조하는 외골격은 주로 고관절과 무릎의 Flexion/Extension 회전을 보조하거나 발목의 Plantar/Dorsi Flexion 회전을 보조함으로써 사용자의 효율적인 보행을 돕는다. 이러한 외골격은 착용하거나 탑승하는 형태로, 사용자가 의도하는 관절 움직임에 맞춰 적절한 토크를 제어하는 알고리즘을 필요로 한다.

외골격의 토크 제어 알고리즘은 보조 효율성에 큰 영향을 미치는 부분 중 하나이다. 사람이 움직일 때 신체 관절은 다양한 각도와 각속도로 움직이고, 만들어내고자 하는 근력 크기에 따라 관절 모멘트는 실시간으로 변한다. 외골격이 필요한 관절 모멘트보다 현저히 낮거나 높은 토크를 줄 경우, 사용자는 외골격으로부터 도움이 되는 보조를 받지 못하거나 움직임이 불안정해져 피로감을 느낄 수 있다. 외골격의 효율성을 평가하는 방법 중에 미착용 상태 대비 착용 상태의 Metabolic Cost 감소율을 기반으로 평가하는 방법이 많이 활용된다[1-3]. 외골격의 토크 제어 알고리즘 검증을 위해 Metabolic Cost 감소율 기반 평가를 진행하려면 실제 사람을 대상으로 하는 실험이 필요하다. 그러나 실제 실험은 외골격의 안정성에 따라 제한될 수도 있으며 실험 대상자 선정, 승인, 교육, 실험 횟수 협의 등의 과정이 요구된다. 이러한 실제 실험에 대한 부담감을 줄이기 위해 본 연구에서는 (1) 실제 사람과 시뮬레이션 모델의 간극을 줄이는 근골격 모델의 Body Segment 무게 배분 알고리즘과 (2) Metabolic Cost 최소화를 기반으로 한 외골격 토크 최적화를 제안하고자 한다. 실제와 간극이 낮은 시뮬레이션을 활용하면 실험 진행 전 신뢰도 있는 예측 데이터를 얻고 평가할 수 있으며, 외골격 토크 입력에 제한이 없어 최적 토크에 대한 접근 가능성을 높일 수 있다.


2. Body Segment 무게 배분 알고리즘

2.1 인체 근골격 시뮬레이션

본 연구에서는 인체 근골격 시뮬레이션으로 AnyBody Modeling System(AnyBody Technology, 이하 AnyBody)를 활용하였다. AnyBody는 인체 근골격 모델과 모션 데이터, 지면 반력, 외력 등을 입력으로 하여 역동역학(Inverse Dynamics)를 통해 근력, 관절 모멘트, Power 형태의 Metabolic Cost 등을 해석하는 프로그램이다. 기본적으로 900개 이상의 근육으로 구성된 근골격 모델을 제공하며 기본 기능 중 하나인 Length-Mass-Fat 알고리즘은 실제 사람의 키, 체중, 체지방률을 입력으로 인체 근골격 모델을 생성한다. 실제 데이터와 일치하도록 사용자가 직접 모델을 수정하는 것도 가능하다. 외부 Force Plate를 사용하여 수집한 지면 반력 데이터 입력도 가능하고, 프로그램 내에서 지면 반력 추정 기능도 제공한다. 라이브러리를 통해 Python과 연동하여 Python으로도 역동역학 해석이 가능하다.

2.2 Body Segment 무게 배분 알고리즘 구현

발목 외골격의 비례 관절 모멘트 제어 연구에 따르면, 정규화된 발목 관절 모멘트에 비례한 크기로 보조한 외골격 토크는 사용자의 의도를 실시간으로 파악하고 보조하여 외골격 미착용 상태 대비 Metabolic Cost를 최대 27%까지 감소시켰다[2]. 높은 효율성을 증명한 해당 토크 제어 알고리즘이 관절 모멘트 데이터를 기반으로 작성되었다는 점을 주목할 때, 외골격의 토크 최적화 및 실시간 추정에는 관련 관절 모멘트를 정확하게 계산하는 것이 중요하다고 할 수 있다.

보행 중 각 관절 모멘트 계산을 위해 역동역학 모델을 개발하고 관절 모멘트에 영향을 미치는 인자들을 분석한 연구에 따르면 관절 모멘트에 가장 큰 영향을 미친 인자들은 지면 반력과 Body Segment의 무게, 무게중심점이다[4]. 따라서 인체 근골격 모델의 관절 모멘트를 정확하게 구현하기 위해서는 각 Body Segment의 무게와 지면 반력을 실제와 가깝게 입력하는 것이 중요하다.

본 연구에서 사용한 AnyBody는 각 Body Segment의 무게와 길이를 Length-Mass-Fat 알고리즘에 따라 Winter[5]의 고정된 비율로 계산하여 반영한다[Table 1]. 실제로 키와 체중이 동일한 두 사람 있을 때, 한 명이 다른 한 명에 비해 하체가 더 발달되어 있더라도 Length-Mass-Fat 알고리즘에 의하여 두 사람의 근골격 모델의 Segment 무게는 동일하게 생성된다.

The Ratio of the Body Segment Mass and the Body Part Mass to the Body Weight

체성분 분석은 사람의 몸에 미세 전류를 흘려보낸 후 나타나는 저항값의 변화로 체내의 체지방량, 근육량, 수분량 등을 측정하는 검사이며 대표적인 체성분 분석 기계로는 InBody(㈜인바디)가 있다. InBody 사용법은 장치 위에 정자세로 선 후 손잡이를 양손에 쥐고 약 1분만 기다리는 것으로 매우 간단하며, 몸 전체 근육 무게와 Torso, Right/Left Upper Limb, Right/Left Lower Limb의 근육 무게를 측정할 수 있다. 전체 근육 무게를 기준으로 각 Body Part의 근육 무게의 비율을 계산하면 [Table 1]의 Body Part 비율과 유사하지만 개인의 신체 특징이 담긴 비율이 도출된다. 예를 들어 한25세의 건강한 성인 여성 개인의 체성분 분석 결과와 근육 무게 비율은 [Table 2]와 같다.

The Ratio of the Body Part Muscle Mass to the Total Body Muscle Mass for healthy 25 years-old female individual

본 연구에서는 InBody로 측정한 체성분 분석 데이터를 기반으로 전체 근육 무게 대비 Body Part 무게를 계산하고, 그 비율이 Body Segment 무게 분포 특성을 반영한다는 가설을 세운 후 다음과 같은 수식을 도출하였다.

BPRi=Body Part Μuscle Mass from In BodyTotal Μuscle Mass from In Body(1) 
BSRi=BSRref/BPRref*BPRi(2) 
BSMi=BSRi*BodyWeight(3) 

BPRref(기존 계산 알고리즘에 사용된 Body Part Ratio)에 대한 BSRref(기존 Body Segment Ratio)의 비율에 BPRi(체성분 분석 데이터로 계산한 Body Part Ratio)를 곱하면 BSRi(개인의 특성이 반영된 Body Segment Ratio)를 계산할 수 있다. BSMi(개인의 특성이 반영된 Body Segment 무게)는 BSRi와 체중의 곱으로 계산된다.


3. 토크 최적화

3.1 시뮬레이션 기본 설정

본 연구에서 활용한 외골격의 실제 모델은 고관절 움직임 보조 모델로, 허리 부분과 다리 부분의 벨트를 이용하여 사용자의 허리 둘레와 허벅지 둘레에 맞게 착용한다. 총 무게는 3 kg으로 사용자는 골반 양측 앞쪽으로 외골격을 지지하고, 외골격의 무게 중심은 허리 부분 뒤쪽의 배터리 팩에 위치한다. 양측 Hip Flexion/Extension 및 Adduction/Abduction의 총 4자유도를 갖으며 각 축에서 토크 보조 및 마찰 보정이 가능하다. 시뮬레이션 환경에 실제 스펙과 동일한 외골격 모델을 구현하였으며, 외골격의 Hip Flexion/Extension 축에서 보조 토크가 발생하도록 설정하였다.

실제 사람을 기반으로 생성한 근골격 모델과 보행 모션 데이터는 실험을 필요로 한다. 따라서 선행적으로 키 1.75 m, 체중 66 kg, 체지방률 22%의 성인 남성 기본 모델과 기본 보행 모션 데이터인 GaitNormal_1.C3D 파일을 활용하였다. 지면 반력 데이터는 지면 반력 추정 기능을 사용하여 외골격 착용으로 인한 하중 증가를 반영하였고, Umberger[6]를 기반으로 한 AnyMetabModelU 모델을 사용하여 Power 형태의 Metabolic Cost를 계산하였다.

3.2 최적 토크 가정

기존 외골격의 토크 제어 알고리즘에는 Generic, Human-in-the-Loop(이하 HIL), 정규화 된 비례 관절 모멘트 제어 알고리즘 등이 있다. Generic 알고리즘은 한 사용자의 보행 주기 중 최대 고관절 Flexion/Extension 각도가 속하는 일정 구간동안 일정한 크기의 토크로 보조하는 제어 알고리즘으로, 토크 상수는 사용자의 선호도를 기반으로 결정된다. HIL 알고리즘은 한 사람의 보행 모션 데이터를 여러 번 측정하여 보행 주기를 결정하고 해당 주기 내에서의 고관절 Flexion/Extension 각도를 다섯 단계로 나누어 각 구간마다 다른 토크 계산식을 활용한다. 구간마다 입력되는 토크 계산식은 주기 내의 위치를 매개변수로 하는 사인 함수와 토크 상수의 곱으로 구성되며, 토크 상수는 사용자의 피드백에 기반하여 선호되는 값으로 결정된다. Generic 모델과 HIL 모델은 사용자의 보행 주기를 기반으로 하기 때문에 사용자의 움직임 의도의 실시간 반영이 어렵다[3]. 정규화 된 비례 관절 모멘트 제어 알고리즘은 발목 외골격에 사용되었으며 지면 반력을 통해 실시간으로 계산한 관절 모멘트 시간 함수와 토크 상수의 곱으로 구성된다. 실시간으로 지면 반력을 측정하고 관절 모멘트 시간 함수를 계산하기 때문에 기존 알고리즘 비해 사용자의 의도를 파악하여 토크에 반영할 수 있다. 토크 상수는 사용자가 선호하는 속도로 정상 상태 보행을 할 때의 선호 값이며, 발목 외골격 토크 적정 범위로 알려진 0.20–0.35 Nm/kg 중에서 사용자의 선호도에 맞춰 결정된다[2]. 위와 같은 기존의 토크 제어 알고리즘들의 토크 계산 함수는 모두 다르지만 최적 토크 상수 값은 사용자의 선호도를 기반으로 결정하고, Metabolic Cost 감소율로 알고리즘의 효율성을 평가한다[1-3]. 또한 관절 각 또는 관절 모멘트를 매개변수로 하여 토크 계산이 가능하지만, 사용자의 정성적 선호도에 의존한 토크 상수 최적화로 인하여 세분화된 모든 토크 범위에 대해 실험하는 것에 한계가 있으며, 함수 결과 범위를 벗어나는 토크에 대해서는 평가가 불가능하다. 본 연구에서는 Metabolic Cost 감소율이 높을수록 토크 제어 함수의 효율성을 높게 평가한다는 점에서 착안하여, 특정 매개변수 함수를 기반으로 계산된 토크가 아닌 모든 시간 순간마다 Metabolic Cost를 최소화하는 토크를 최적 토크라고 가정하였다. 가정한 최적 토크를 구하기 위해 시뮬레이션을 활용하였으며, 동일한 모델과 모션 데이터에 대한 최적화를 위해 입력 토크 범위의 반복적인 Metabolic Cost 계산이 가능하고 입력 가능한 토크 범위는 실제 실험과 달리 제한이 없다.

본 연구에서 가정한 최적 토크 정의에 따르면 순간 시간마다 변하는 보조 토크의 크기를 기반으로 최소 Metabolic Cost를 계산하여야 한다. Metabolic Cost 계산에 활용된 AnyMetab ModelU는 Umberger[6]를 기반으로 한 모델로 Activation heat rate, Maintenance heat rate, Shortening/Lengthening heat rate 및 Mechanical work rate의 합으로 구성된 수식을 활용한다. 각 heat rate은 순간 시간마다의 관절 움직임에 따른 근섬유 수축 속도 및 수축 길이, 유산소/무산소 상태에 따른 스케일링 팩터 등을 매개변수로 하여 계산된다. 따라서 순간 시간마다의 토크를 추가적인 매개변수로 하여 AnyMetabModelU의 수식을 수정하고 Metabolic Cost를 최소화하고 그에 상응하는 최적 토크를 계산하는 것은 상당히 복잡하고 많은 시간이 소요된다.

기존의 보조 토크 제어 알고리즘들은 보조하는 관절의 각도, 각속도 및 지면 반력 등을 기반으로 토크를 계산한다[1-3]. 외골격 센서로부터 얻을 수 있는 고관절 각도, 각속도 및 지면 반력으로 최적 토크를 계산하는 인공지능 모델을 구축한다면 최적 토크 계산을 위한 시간을 단축할 수 있을 것이다. 본 연구는 모델 학습을 위한 데이터 셋 구축 선행 연구로써, 특정 입력 토크 범위 내에서 순간 시간마다 Metabolic Cost를 최소화하는 최적 토크를 구하는 방식을 제안하고 그에 따른 고관절 각도, 각속도, 지면 반력, 최적 토크 및 Metabolic Cost의 데이터 셋을 구축하였다.

3.3 입력 토크 범위 설정

3.1과 같이 시뮬레이션 환경을 구축하고 외골격 모델의 토크를 0 Nm로 설정한 후 역동역학 해석을 통해 외골격을 착용했지만 보조는 받지 않는 상태의 근골격 모델의 관절 모멘트와 Metabolic Cost를 계산하였다. AnyBody와 Python 연동을 활용하여 Python 매크로를 통해 외골격의 오른쪽 Hip Flexion/Extension 토크의 값을 변경하면서 Metabolic Cost를 계산하고 데이터 셋을 구축하였다. 입력 토크는 상수이며 범위는 0 Nm 토크를 주었을 때 오른쪽 고관절 Flexion/Extension 모멘트의 최솟값의 소수점 이하 내림 값부터 최댓값의 소수점 이하 올림 값까지의 범위인 -74 Nm ~ 57 Nm 범위로 1 Nm 간격씩 입력하였다. 생성되는 데이터 셋은 엑셀 파일로 저장하였다. 시간 간격은 0.01 sec이며 엑셀의 Min, Match, Index 함수를 사용하여 생성한 데이터 셋에서 각 시간 순간마다 Metabolic Cost 최솟값과 그에 상응하는 토크(순간 시간에서의 최적 토크, 이하 최적 토크)를 추출하였다. 최적 토크 중 입력 토크의 범위 경곗값에 해당하는 값이 있을 경우, 해당 순간 시간의 Metabolic Cost를 더 최소화할 수 있는 범위 외 최적 토크가 존재할 수 있다고 판단하여 10 Nm씩 토크 범위를 추가하였고 추출되는 토크 값이 범위 경곗값 이내에 들어올 때까지 위의 과정을 반복하였다[Fig. 1].

[Fig. 1]

Schematic diagram of torque optimization algorithm

시뮬레이션 결과 외골격 오른쪽 Hip Flexion/Extension의 최적 토크는 입력 범위 -124 Nm ~ 57 Nm 범위내에서 최솟값 -112 Nm, 최댓값 39 Nm로 추출하였다[Fig. 2(a)]. 추출한 토크를 B-spline Order 2로 보정 후 오른쪽 Hip Flexion/Extension 관절에 입력한 상태의 Metabolic Cost를 계산하였다. 위의 과정을 외골격의 왼쪽 Hip Flexion/Extension 축에도 동일하게 적용하고, 외골격 양측의 최적 토크 셋을 구성하여 0 Nm 토크일때의 Metabolic Cost와 외골격의 오른쪽, 왼쪽, 양쪽 Hip Flexion/Extension 축에 최적 토크를 입력하였을 때의 Metabolic Cost를 비교하였다[Fig. 2(b)]. 오른쪽/왼쪽 축에 각각 최적 토크를 입력한 경우 0 Nm 토크 대비 낮은 Metabolic Cost 보였으며, 양쪽 축에 최적 토크를 입력한 경우 가장 낮은 Metabolic Cost를 보였다.

[Fig. 2]

Result graph of Optimized Torque and Metabolic Cost. (a) Comparison of Joint Moment (blue line) and Optimized Torque (red dotted line with marker) of Right Hip Joint Flexion/Extension. (b) Comparison of Metabolic Cost among 0 Torque (blue line), Right Optimized Torque (green dotted line), Left Optimized Torque (yellow dotted line) and Right & Left Optimized Torque (red line) at Hip Joint Flexion/Extension


4. 결 론

본 연구의 궁극적인 목표는 인체 근골격 시뮬레이션을 활용하여 사용자가 외골격을 착용하고 걷는 것만으로 사용자의 의도를 파악하고 최적의 토크를 지원하는 알고리즘을 개발 및 구현하는 것이다. 선행 연구로써 시뮬레이션 정확도 향상을 위한 Body Segment 무게 배분 알고리즘과 시뮬레이션을 활용한 최적 토크 선정 및 데이터 셋 구축 방식을 제안하였다. 제안한 방식은 시뮬레이션을 활용하였기 때문에 외골격 토크 입력에 제한이 없어 가능한 토크 범위를 모두 계산해볼 수 있었으며, 관절 모멘트를 기반으로 특정 입력 토크 범위 내에서 순간 시간마다 Metabolic Cost 최솟값을 기반으로 최적 토크를 선정하였기 때문에 미착용 상태 대비 Metabolic Cost의 감소를 보장할 수 있다.

후속 연구에서는 외골격 센서로부터 얻은 데이터(관절 각도, 각속도, 지면 반력 등)를 매개변수로 제안한 최적 토크 계산 및 실시간 적용이 가능한 알고리즘을 개발할 것이며, 본 연구에서 지정한 데이터 셋(각도, 각속도, 지면 반력, 최적 토크 및 Metabolic Cost)뿐만 아니라 사용자의 키, 체중 등을 추가한 데이터 셋을 다량으로 확보하여 강화 학습 빅데이터로 활용할 예정이다. 실제 사람을 기반으로 한 근골격계 모델 구현 및 모션 데이터 삽입으로 현실과 시뮬레이션 간극을 줄이고 Sim-to-real 과정을 거쳐 사용자 최적화 알고리즘으로 발전시킬 수 있을 것으로 판단된다.

Acknowledgments

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. 2022R1A2C2010101)

References

  • K. Seo, J. Lee, Y. Lee, T. Ha, and Y. Shim, “Fully autonomous hip exoskeleton saves metabolic cost of walking,” IEEE International Conference on Robotics and Automation (ICRA), Stockholm, Sweden, 2016. [https://doi.org/10.1109/ICRA.2016.7487663]
  • G. M. Gasparri, J. Luque, and Z. F. Lerner, “Proportional Joint-Moment Control for Instantaneously Adaptive Ankle Exoskeleton Assistance,” IEEE Transactions on Neural Systems and Rehabilitation Engineering, vol. 27, no. 4, pp. 751-759, Apr., 2019. [https://doi.org/10.1109/TNSRE.2019.2905979]
  • D. F. N. Gordon, C. McGreavy, A. Christou, and S. Vijayakumar, “Human-in-the-Loop Optimization of Exoskeleton Assistance Via Online Simulation of Metabolic Cost,” I EEE Transactions on Robotics, vol. 38, no. 3, pp. 1410-1429, Jun., 2022. [https://doi.org/10.1109/TRO.2021.3133137]
  • S. J. Song, “An Inverse Dynamic Analysis of Lower Limbs During Gait,” Journal of biomedical engineering research, vol. 25, no. 4, pp. 301-307, Aug., 2004, [Online], https://scienceon.kisti.re.kr/srch/selectPORSrchArticleOrgnl.do?cn=JAKO200411922636458&SITE=CLICK, , Accessed: Sept. 28, 2022.
  • D. A. Winter, “Anthropometry”, Biomechanics and Motor Control of Human Movement, 4th ed. John Wiley & Sons, 2009, ch. 4. [https://doi.org/10.1002/9780470549148]
  • B. R. Umberger, “Stance and swing phase costs in human walking,” Journal of the Royal Society Interface, vol. 7, no. 50, Mar., 2010. [https://doi.org/10.1098/rsif.2010.0084]
강 혜 선

2022 서울과학기술대학교 기계 · 자동차공학과 학사

2022~현재 서울과학기술대학교 기계공학과 석사과정

관심분야: Exoskeleton, Wearable walking robot

김 진 현

1998 POSTECH기계공학과 학사

2000 POSTECH 기계공학과 공학 석사

2005 POSTECH 기계공학과 공학 박사

2005~2007 한국생산기술연구원 선임연구원

2007~현재 서울과학기술대학교 기계 · 자동차공학과 교수

관심분야: Redundant Manipulator, Underwater robots, Hovering robots, Neuro Robotic

[Fig. 1]

[Fig. 1]
Schematic diagram of torque optimization algorithm

[Fig. 2]

[Fig. 2]
Result graph of Optimized Torque and Metabolic Cost. (a) Comparison of Joint Moment (blue line) and Optimized Torque (red dotted line with marker) of Right Hip Joint Flexion/Extension. (b) Comparison of Metabolic Cost among 0 Torque (blue line), Right Optimized Torque (green dotted line), Left Optimized Torque (yellow dotted line) and Right & Left Optimized Torque (red line) at Hip Joint Flexion/Extension

[Table 1]

The Ratio of the Body Segment Mass and the Body Part Mass to the Body Weight

Body Segment Ratio [%] Body Part Ratio [%]
Head 8.10 Torso 55.14
Thorax 18.94
Lumbar 13.90
Pelvis 14.20
Shoulder 1.33 Upper Limb 6.33
Upper Arm 2.80
Lower Arm 1.60
Hand 0.60
Thigh 10.00 Lower Limb 16.1
Shank 4.65
Talus 0.29
Foot 1.16

[Table 2]

The Ratio of the Body Part Muscle Mass to the Total Body Muscle Mass for healthy 25 years-old female individual

Body Part Muscle Mass [kg] Ratio [%]
Torso 18.6 55.52
Right Upper Limb 1.6 4.78
Left Upper Limb 1.6 4.78
Right Lower Limb 5.8 17.31
Left Lower Limb 5.9 17.61
Total 33.5 100