최적화 기반 인간 팔꿈치 관절각 실시간 추출 방법
Optimization-based Real-time Human Elbow Joint Angle Extraction Method
최 영 진*, 유 현 재 (Youngjin Choi and Hyeon-Jae Yu)
Abstract : An optimization-based real-time joint angle extraction method of human elbow is proposed by processing the biomedical signal of surface EMG (electromyogram) measured at the center point of biceps brachii. The EMG signal is known as non-stationary (time-varying) signal, but we assume that it is quasi-stationary because a physical or physiological system has limitations in the rate at which it can change its characteristics. Based on the assumption, a pre-processing method to obtain pre-angle values from raw EMG signal is firstly suggested, and then an optimization method to minimize the error between the pre-angle and real joint angle is proposed in this paper. Finally, we suggest the experimental results showing the effectiveness of the proposed algorithm.
Keywords : EMG (Electromyogram) signal, lagrange multiplier method, moving averaging, optimization, real-time signal processing
I. 서론
인간의 몸에서는 근전도(EMG:Eletromyogram), 심전도(ECG:
Electrocardiogram), 뇌전도(EEG:Electroencephalogram)와 같은 인간의 동작 및 생각, 심장 및 근육의 상태 등 다양한 정보 를 포함하는 전기적인 신호가 발생한다. 이러한 생체 신호처 리 방법론에 관하여 예전부터 많은 연구가 진행되었으며, 현 재에도 많은 연구가 진행 중이며[1-8,10-13], 앞으로도 생체신 호를 이용한 다양한 연구가 이뤄질 것이라 예상된다. 실제로 인간의 몸은 자율적으로 혹은 의지적으로 심전도, 뇌전도(뇌 파), 근전도 등과 같은 다양한 생체 신호를 발생시키고 그 신 호에 상응하는 동작이나 생각이 이루어지는 것으로 알려져 있다. 이러한 인간의 생체 신호 중에서 근전도 신호처리는 로봇공학 및 재활공학, 의공학 분야에서 인간의 골격근 분석 및 진단, 동작 모방을 위해 활발히 연구가 진행되고 있다[2- 6,10]. 인간의 여러 생체 신호 중 특히, 근전도 신호는 재활공 학에 로봇 기술을 접목 시켜서 인간의 기능을 수행할 수 있 는 생체-기계 시스템을 개발하기 위한 중요한 핵심 요소 중 하나라고 할 수 있으며, 이러한 근전도 신호를 이용한 로봇 및 제어 분야에서 대부분의 연구들이 장애인 및 병약자들을 위한 보철 또는 보조 기구의 개발 및 제어에 초점을 맞추고 있다. 근전도 신호를 이용한 이전의 연구 방법으로는 간단한 신호처리를 기반으로 인간의 팔꿈치와 어깨의 관절각도를 추종하는 알고리즘을 [1]에서 제시하였으며, 그 외에 Hill모델 을 이용한 방법[2], 학습방법[3], AR모델을 사용한 방법[4] 등 이 있으며, 최근에는 근전도 신호의 패턴인식을 통해 의수의 동작을 시뮬레이션 하는 연구가 진행되었다[5]. 또한, ARMAX 모델을 이용하여 평면상에서 동작하는 근전도 신호
기반의 원격 조종 로봇 팔에 대한 연구가 진행되었으며[6], 생체 신호에서 노이즈를 제거하기 위해 적응 노이즈 제거 방 법이[7,8] 개발되었으며, 근전도 센서가 아닌, 자기(magnetic) 센서를 이용하여 인간의 동작을 모방하는 시뮬레이션에 관 한 연구도 수행되었다[9]. 앞에서 언급한 대부분의 연구들은 신경망을 이용하여 단지 동작의 인식 및 구별을 통해서 발생 동작에 관한 유무만을 판단하며 정확한 동작에 따른 각도값 을 추출하는 연구는 거의 이뤄지지 않고 있다.
본 논문에서는 실시간 동작 추종을 위해 상완 이두근에서 측정한 표면 근전도 신호로부터 팔꿈치 관절 각도를 추출하 는 방법을 제안하고자 한다. 첫째로, 우리는 근전도 신호가 준 정형(quasi-stationary) 신호라고 가정한다. 엄밀하게 대부분 의 생체 시스템은 동적(dynamic)이고 비정형(non-stationary) 신 호를 생성하지만, 물리학 및 생리학 기반 시스템에서는 신호 의 특성상 변화하는 속도(rate)에 있어서 제한적일 수 밖에 없다. 다시 말해서, 짧은 구간의 생체 신호는 정형(stationary) 으로 가정될 수 있으며, 이를 이용하여 짧은 구간의 연속인 생체 신호를 준 정형 상태(quasi-stationary)로 가정할 수 있다 [13]. 둘째, 제안된 알고리즘은 전처리 과정과 최적화 과정 이렇게 두 과정으로 구성된다. 전처리 과정에서는 이두근의 근전도 신호는 일정 샘플 구간의 창을 가지고 전 구간에 대 해서 이동하면서 RMS(Root Mean Square)를 취하고, 이어서 LPF(Low Pass Filter)를 사용하여 신호를 여과시킨다. 이를 통 해 얻어진 신호에 대해 스케일링 함수에 대입하여 팔꿈치 관 절각에 대한 pre-angle 값을 얻는다. 일반적으로 인간의 근전 도 신호는 다음과 같은 특징들을 가지고 있다. 첫째, 근전도 신호는 개인마다 진폭의 크기 및 주파수의 특성이 다르며, 둘째, 동일인의 근전도 신호라도 피로 등과 같은 측정시의 몸 상태에 따라 신호의 특성이 달라진다. 또한, 측정부위 및 전극의 부착위치, 주위 환경도 근전도 신호의 특성 변화에 기여하는 변수로 작용한다. 이렇게 다양한 변수로 인하여 매 측정시마다 똑같은 근전도 신호를 획득하기는 사실상 불가 능하다고 볼 수 있다. 그러므로 우리는 측정시 획득되는 근 전도 신호의 특성에 맞춰 각도 값을 매핑하는 전처리 과정을
* 책임저자(Corresponding Author)
논문접수 : 2008. 3. 3., 채택확정 : 2008. 8. 28.
최영진 : 한양대학교 전자컴퓨터공학부([email protected]), 유현재 : 한양대학교 대학원 전자전기제어계측공학과 ([email protected])
※ 본 연구는 2007년도 정부재원(교육인적자원부 학술 연구조성사업 비)으로 한국학술진흥재단의 지원을 받아 연구되었음.(KRF-2006- 331-D00186)
거침으로써 위와 같은 문제를 해결한다. 다음 단계로, 최적화 과정은 주어진 성능지수의 최소화를 위해 라그랑지 승수법 (Lagrange multiplier method)을 사용한다. 이러한 과정은 전처 리 단계에서의 결과값에 대한 성능 향상을 위해 사용된다.
최적화 과정을 통해 처리된 신호는 팔꿈치 관절의 실시간 관 절각 추출에 직접 사용 가능하며, 이를 이용하여 인간의 팔 꿈치 관절의 굽힘과 폄 동작을 잘 따르는 실시간 동작 추종 시뮬레이션을 구현한다.
본논문은다음과같이구성된다.II장에서는pre-angle 값을 얻기 위한 전처리방법을제시하고III장에서는최적화문제 와그해를제시한다.IV장과V장에서는각각실험결과를보 이고본논문의결론을도출한다.
II. 원 근전도 신호의 전처리 과정
본 장에서 제시될 전처리 방법은 다음 III 장에서 제시될 최적화 과정에서 이용될 pre-angle 값을 얻기 위한 선행 과정 이며, 앞 장에서 언급한 근전도 신호의 변화 특성에 대한 관 절의 각도 변화율의 특성을 얻기 위해 이러한 전처리 과정을 거치게 된다. 이와 같은 특성은 다음에 설명되는 스케일링 함수를 얻음으로써 알 수 있다. 전처리 과정의 순서는 팔꿈 치 동작에서 얻어진 근전도 신호에 대해서 적당한 크기의 moving Window를 만들고 Window내에서 RMS (Root-Mean- Squares)를 연속적으로 취하고 이어서 LPF (Low Pass Filter)를 사용하여 신호를 여과시키고 난후얻어진신호에대해스케 일링 함수에 대입하여 pre-angle 값을 생성하는 순서로 구성 된다. 전처리 과정을 설명하기 전에 인간의 팔꿈치 관절의 기구학적 특성을 고려해야 된다. 인간의 팔꿈치 동작은 해당 관절의 굽힘 및 폄 동작으로 정의한다. 일반적으로 인간의 팔꿈치 관절의 동작범위(ROM: Range Of Motion)는 그림 1에 서 보여지듯이 약 0~145도 이며[1,14], 과신전(hyperextension) 의 동작범위는 여성 및 유아의 경우에 약 -5~0도 정도로 알 려져 있다. 과신전의 동작범위는 상대적으로 작고 여성 및 유아에게만 국한되므로 제안된 알고리즘의 단순화를 위해 과신전은 제외한다.
일반적으로 해부학상 팔꿈치의 굴근(flexor: 굽히는 동작을 하는 근육)은 상완 이두근이며, 신근(extensor: 펴는 동작을 하 는 근육)은 상완 삼두근이다. 하지만, 상완 삼두근의 근전도 신호는 상완 이두근의 신호에 비해 매우 미약하므로 제안된 알고리즘의 단순화를 위해 상완 이두근의 근전도 신호만을 사용한다. 근전도 신호는 측정 환경 및 여러 변수에 민감하 므로 신호 획득을 위한 전극의 부착 지점이 매우 중요하다.
그림 1. 팔꿈치 관절의 동작범위[1,14].
Fig. 1. Range of motion of a human elbow joint[1,14].
(a) 팔꿈치의 굽힘 및 폄 동작에서 얻어진 원 신호.
(b) 64개의 샘플을 한 구간으로 처리된RMS신호.
(c) LPF를 사용하여 필터링한 신호(fc = 1[Hz]).
그림 2. RMS & LPF 신호처리를 통해 얻어진 신호.
Fig. 2. Signal obtained by taking RMS & LPF.
본 논문에서 우리는 상완 이두근의 운동 중심 점에 전극을 부착한다[15]. 사용한 전극은 일반적으로 생체 신호 측정 시 많이 사용되고 감도가 뛰어난 1회용 전극인 Ag/AgCl(bipolar) 전극을 사용한다.
1. RMS & LPF 신호처리
먼저, 빠르고 정확한 데이터 수집을 위해 샘플링 주파수를 1024Hz로 설정한다. 그림 2(a)는 팔꿈치의 굽힘 및 폄 동작에 서 얻어진 원 근전도 신호이다. 근전도 신호의 진폭은 실험 대상자에 따라, 혹은 대상자의 손에서 인가하는 쥐는 힘 (gripping force)에 따라 다르므로, 손에 쥐는 힘이 없는 자연스 러운 상태에서 신호 파형을 얻는다. 이 경우 최대 진폭이 ± 150[㎶] 정도 이다. 그림 2(a)에서 보이듯이 연속적인 굽힘과 폄 동작은 신호의 진폭과 관계가 있다. 구체적으로 팔꿈치 관절 각이 증가할 때 진폭도 증가하지만 선형적으로 증가하 진 않는다. 평균 진폭의 포곽선(envelope) 정보를 얻기 위해 64개의 샘플을 한 구간으로 하는 moving Window를 이용하여 다음 식 (1)과 같이 RMS(Root-Mean-Squares)를 취한다.
2 63
[ ] 1 [ ]
64
n k n
RMS n EMG k
= −
= ∑ for n=0,1, ,m (1)
여기서 RMS[n]는 한 구간인 64개의 샘플의 RMS값을 의미 하고 EMG[k]는 k-번째 샘플의 원 근전도 신호를 나타내며 이 때k=−63,−62,,−1 이면EMG[ =k] 0이다. 사실, 근전도 생체 신호의 RMS 값은 envelope 정보를 추출하기 위한 가장 쉬운 방법이며, 또한 RMS 정보는 근사적인 에너지나 힘과 관련된 근전도 정보를 포함하고 있다. 그림 2(b)의 RMS 값은 그림 2(a)의 원 근전도 신호의 양의 포곽선(positive envelope) 과 유사한 특성을 보인다.
두 번째로 인간의 팔 동작은 기껏해야 수Hz의 대역폭을 가지기 때문에 RMS 신호를 다음과 같은 저 대역 통과 필터 (LPF)를 사용하여 처리한다.
[ ] [ ] (1 ) [ 1]
for 0,1, , LPF n RMS n LPF n
n m
θ θ
= + − −
= (2)
여기서 LPF[n]는 n번째 샘플에서 저 대역 통과 필터(LPF) 를 이용하여 얻어진 신호이고 LPF[−1]=0 이다. 그리고 θ 는 아래와 같이 정의한다.
T fc π
θ 2= (3)
여기서 T는 1/1024[s]인 샘플링 주기이고 fc는 저 대역 통과 필터(LPF)에서의 차단주파수를 의미하며 인간의 동작이 빠르 지 않기 때문에 그림 2(c)에서는 fc=1로 설정하여 얻어진 파형을 볼 수 있다. 그림 2처럼 우리는 팔꿈치 관절의 굽힘 과 폄 동작으로부터 동작과 상관관계가 분명해 보이는 신호 를 얻을 수 있다. 이 LPF 신호는 다음 장에서 설명하는 pre- angle 값을 얻는데 이용된다.
2. Pre-angle 생성
Pre-angle 생성 방법은 polynomial interpolation을 사용한 curve fitting 알고리즘을 기초로 한다. 즉, 특정한 팔꿈치 관절 각에 대한 근전도 신호를 일정 샘플구간 동안 얻어서 이를
식 (1)의 RMS 신호와 식 (2)의 LPF 신호로 환산한 후 이들 에 대한 평균을 다음과 같은 형태로 구한다.
0
[ ] 1 [ ]
1
L LPF i
k
V q LPF k
L =
= + ∑ for k=0,1, , , L (4)
여기서 VLPF[ ]qi 는 특정한 관절 각 qi에서 LPF 값의 평균을 의미하고 i 는 측정하고자 하는 특정 관절 각도의 개수이다.
그림 3에서는 0 ,45 ,90 ,125° ° ° °의 4개의 특정한 관절 각에서 LPF 값의 평균을 나타내고 있다. 이때 이용된 샘플구간 및 시간은 L =512[samples] 즉 0 s 이다. 그림 3의 첫 번째 .5[ ] 그림은 팔꿈치 관절각이 0 일 때 계산된 LPF 값의 평균이 ° 5.2618[㎶]임을 나타내고 나머지 그림들은 다음과 같이 각각 의 각도에 대응하는 값을 나타낸다.
• 0도에서의 VLPF[0] 5.2618[= µV],
• 45도에서의 VLPF[45] 10.4527[= µV],
• 90도에서의 VLPF[90] 20.9107[= µV],
• 125도에서의 VLPF[125] 42.6719[= µV].
그림 3. 4개의 특정한 관절 각에서 측정한 원 EMG 신호에 RMS와 LPF 신호처리 한 후의 평균값을 얻는 과정 (점선이 최종적으로 얻어진 평균값이다).
Fig. 3. Averages after taking RMS and LPF for raw EMG signal measured at specific joint angles; first figure is obtained at elbow joint angle of 0±, second one at 45±, third one at 90±
and fourth one at 125±(In figures, the dotted lines are the averages of entire LPF values).
위에서 주어진 4개의 주어진 값을 이용하여 polynomial interpolation 은 다음과 같은 형태의 3차 다항 함수로 curve fitting할 수 있다.
2 3
0 1 [ ] 2 [ ] 3 [ ]
i LPF i LPF i LPF i
q a= +aV q +a V q +a V q (5) 여기서 a a a a 0, , ,1 2 3 는 위에 주어진 4개의 데이터 값을 이용 하여 다음과 같이 얻을 수 있다.
0 1 2 3
66.9660 15.0567
0.4703 0.0052 a
a a a
= −
=
= −
=
위의 과정을 통해 LPF 값과 팔꿈치 관절의 pre-angle사이의 스케일링 함수는 그림 4와 같이 얻을 수 있으며 이 결과는 실험 대상자마다 다르기 때문에 초기화 과정에 이루어져야 한다. 결과적으로 pre-angle 값은 위에서 얻은 계수를 이용하 여 다음과 같은 형태의 스케일링함수를 통해서 실시간으로 얻을 수 있다.
2 3
0 1 2 3
[ ] [ ] [ ] [ ]
x n =a +a LPF n a LPF n+ +a LPF n (6) 여기서 x[n]은 n번째 샘플에서 계산한 팔꿈치 관절의 pre- angle 값을 나타내고 LPF[n] 은 식 (1)과 (2)를 통해서 얻어 진 값이다. 이 pre-angle은 전 처리 과정의 결과 값이다. 본 결과로도 실시간 팔꿈치 동작 정보를 추출할 수 있지만, 정 확성을 높이기 위해서 다음 장의 추정 오차를 최소화 하는 최적화 과정을 통해서 성능을 개선하고자 한다. 본 장에서 제시된 과정은 실시간으로 처리가 가능하지만 항상 64샘플 (즉 62.5[㎳]) 시간 지연을 가지고 있다는 점이 단점이다.
III. 최적화 과정
앞 장에서 제안된 pre-angle 생성 방법은 팔꿈치 관절의 실 시간 동작 추종에 직접적으로 사용할 수 있다. 그러나 이것 은 pre-angle과 실제의 팔꿈치 관절 각 사이의 최소의 오차를 보장할 수 없다. 본 장에서 오차를 최소화하기 위한 최적화 문제를 풀고자 한다. 대부분의 기계시스템은 2차 시스템의
동적 특성을 보이고 있다. 인간의 팔꿈치 동작도 기계시스템 의 특성을 따른다고 가정하여 추정된 관절 각이 전처리 과정 으로부터 얻은 pre-angle과 다음과 같은 2차 시스템의 특성을 따른다고 가정한다.
2 0
[ ] k[ ] [ ],
k
q n w n x n k
=
=∑ −
여기서 q[n]은 팔꿈치 관절 각의 추정 값이고, x[n]은 식 (6) 에서 얻은 pre-angle 값이고, wk[n] n번째 샘플에서의 tap-weight들을 의미한다. 또한 위의 식은 다음과 같이 벡터 식으로 표현할 수 있다.
[ ] ( ) ( ),T
q n =w n x n (7)
여기에서
0 1 2
( ) [ [ ] [ ] [ ]]T
w n = w n w n w n (8) ( ) [ [ ] [ 1] [ 2]] ,T
x n = x n x n− x n− (9) 여기서 초기의 x[ 1]− = − = 으로 가정한다. 또한 다음 x[ 2] 0 그림 5 에서처럼 식 (7)에서 추정한 팔꿈치 관절 각과 손목 에 부착한 기울기 센서로부터 측정된 실제 각 사이의 오차는 다음과 같은 형태로 정의 할 수 있다.
[ ] d[ ] [ ] d[ ] ( ) ( ),T
e n =q n q n− =q n w n x n− (10) 여기서 [ ]q nd 은 기울기 센서를 통해 실제 측정된 팔꿈치 관 절 각이며 e n 는 측정 관절 각과 추정 관절 각 사이의 오[ ] 차이다. 또한 tap-weight 시간 변화율의 최소화를 통해 수치적 불안정성(numerical instability)을 피하는 것이 요구된다. 그래 서 우리는 다음과 같은 형태의 성능지수를 정의한다.
[ ( )w n w n( 1)] [ ( )T w n w n( 1)] αE e n[ ( ) ],2
ℑ = − − − − + (11)
여기서 E 은 기대치 연산자이고 α 는 tap-weight 벡터의 변[⋅] 화율과 오차 사이의 비율을 의미하며, E e n[ ( ) ]2 은 준 정형 (quasi-stationary) 가정을 이용해서 다음과 같이 계산한다.
2 2
2
2
[ ( ) ]
[ [ ] ( ) ( ) ( ) ( ) 2 [ ] ( ) ( )]
[ [ ] ] ( ) [ ( ) ( ) ] ( ) 2 [ [ ] ( ) ] ( ),
[ [ ] ] ( ) ( ) ( ) 2 ( ) ( ),
T T
d T d
T T
d
T d
T T
d
E e n
E q n w n x n x n w n q n x n w n
E q n w n E x n x n w n E q n x n w n
E q n w n R n w n p n w n
= +
−
= +
−
= + −
(12)
여기에서 R(n)은 자기상관(auto-correlation) 행렬을 의미하고 p(n)는 상호상관(cross-correlation) 벡터를 의미하며 다음과 같 이 정의된다.
3 3 3
( ) [ ( ) ( ) ] ( ) [ [ ] ( )] .
T d
R n E x n x n p n E q n x n
= ∈ℜ×
= ∈ℜ
위의 식 (11)과 같은 성능지수의 정의와 함께 다음과 같은 구속조건 qd[n]=w(n)Tx(n)를 생체 시스템이 만족시켜야 그림 4. Pre-angle 과 LPF 신호 사이의 스케일링 함수.
Fig. 4. Scaling function between pre-angle and LPF signal.
한다. 이를 이용하여 최적화를 위한 라그랑지안 함수를 다음 과 같이 정의한다.
)), ( ) ( ] [ 2 (
) 1 (n),
(w q n w n x n
L λ = ℑ+λ d − T (13)
여기서 λ 는 Lagrange 승수를 의미하고 식 (13)을 w(n) 벡터 와λ 에 대해서 미분하면 다음과 같은 식을 얻을 수 있다.
( ) ( 1) ( ) ( ) ( ) ( ) 0 ( )
[ ] ( ) ( ) 0T
d
L w n w n R n w n p n x n w n
L q n w n x n
α α λ
λ
∂ = − − + − − =
∂
∂ = − =
∂
위의 식을 재배열 하여 다음과 같은 행렬-벡터 식을 얻을 수 있다.
( 1) ( ) ( ) ( ) ( )
[ ] ,
( )T 0 d
w n p n
I R n x n w n
q n x n
α α
λ
− +
+
=
−
(14)
여기서 I∈ℜ3×3은 단위행렬이다. 식 (14)와 같은 형태의 행 렬을 참고문헌 [16]에서는 “bordered gramian matrix” 라고 부른 다. Bordered gramian matrix 의 역 행렬은 다음과 같이 얻을 수 있다.
( ) ( ) 1
( ) 0
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) , ( ) ( ) ( ) 1 ( )
T
T T
I R n x n x n
W n W n x n y n x n W n W n x n y n
y n x n W n y n
α −
+ =
−
−
위의 역행렬 과정을 단순하게 표현하기 위해 우리는 다음과 같은 정의들을 이용하고 있다.
1 1
( ) [ ( ) ( ) ( ) ] ( ) [ ( ) ( ) ( )] .
T T
W n I R n x n x n y n x n W n x n
α −
−
= + +
=
여기서, 우리는 위의 역 행렬을 사용하여 식 (14)의 완전 해 를 다음과 같이 얻을 수 있다.
( ) ( ) [ ]
[ ( ) ( ) ] ( )[ ( 1) ( )],
W T d
T T
W
w n x n q n
I x n x n W n w n p n α
+ +
∴ =
+ − −
+
(15)
여기서 식의 단순화를 위해 우리는 다음과 같은 정의를 이용 하고 있다.
( ) ( ) ( ) ( ) 1
( ) ( )[ ( ) ( ) ( )] .
W T
x n W n x n y n T
W n x n x n W n x n
+
= −
=
결과적으로, tap-weight 벡터는 식 (11)의 성능지수를 최소화 하기 위해 식 (15)에 의해 업데이트 되어야 한다는 것을 의 미한다. tap-weight 가 업데이트를 통해 수렴된 후에 팔꿈치 관절 각의 추정치는 고정된 tap-weight와 식 (7)을 이용하여 얻는다. 다음 장에서 실험결과를 통해 제시 된 전처리 과정 과 최적화 과정의 유효성을 보이고자 한다.
IV. 실험 결과
본 논문에서 제안된 최적화를 통한 팔꿈치 관절각 추출 알고리즘은 그림 6과 같이 요약될 수 있다. 그림 6에서 점선 은 초기화 과정을, 실선은 초기화 과정을 거친 후 얻어지는 실시간 처리과정을 나타내고 있다. 첫째로, 스케일링 함수를 초기화 과정에서 얻은 후 앞에서 제시된 전처리 과정을 통해 pre-angle 값을 실시간으로 계산할 수 있다. 두 번째로 tap- 그림 5. 최적화 과정.
Fig. 5. Optimization process.
그림 6. 전체 알고리즘의 block diagram.
Fig. 6. Block diagram of entire algorithm.
weight 를 먼저 업데이트시킨 후 최적화 과정을 통해 팔꿈치 관절 각의 추정치를 전체 신호처리 과정을 통해 실시간으로 계산할 수 있다. 실험은 총 5명의 정상인 남성 피실험자(A:28 세, B:26세, C:25세, D:28세, E:27세)를 대상으로 하였으며, 각각 1분씩 총 5회의 반복 실험을 하였다. 근육의 피로를 막기 위 해, 각각의 실험과정에서 1분간의 휴식시간을 취했다. 최적 화 과정에서는 30초간 tap-weight를 업데이트시켰다. 표면 근 전도 신호와 실제 팔꿈치 관절 각을 얻기 위해 LAXTHA사 의 QEMG-4(surface EMG acquisition device)와 Advanced Orientation Systems사의 EZ-TILT-2000 rev-2(tilt sensor)를 각각 실험에 사용하였다. 전극은 실험 대상자의 상완 이두근에 부 착하였고, 실제 팔꿈치 관절 각을 얻기 위해 기울기 센서를 실험자의 손목에 장착하였다. 또한, 적당한 GUI(Graphic User Interface) 모듈을 OpenGL과 Visual C++ version 6.0을 사용하여 작성하였다. 앞에서 설명되었듯이 제안된 알고리즘을 실행하 기 위해서는 초기화 과정이 필요하다. 이 과정에는 pre-angle 값을 얻기 위한 스케일링 함수와 팔꿈치 관절 각의 추정치를 최적화 과정을 통해 얻기 위한 tap-weight를 얻는 과정이 모 두 포함된다.
1. 초기화 과정
표면 근전도 신호는 환경 조건과 실험 대상자의 신체조건, 표면 전극의 부착 점에 따라 매우 민감하게 변화한다. 그러 므로 우리는 그림 6에서와 같이 점선 과정을 통해서 스케일 링 함수를 먼저 얻는다. 이를 얻는 구체적인 과정은 앞의 II 장 2절에서 설명하였다. 이를 통해서 얻어진 pre-angle과 기울 기 센서를 이용하여 얻은 실제 팔꿈치 관절 각 사이에는 오 차가 존재하게 되는데 이를 최소화하기 위해 초기화 과정 중 tap-weight를 업데이트시키는 과정이 또한 필요하다. 이는 III 장의 식 (16)을 이용하여 얻는다. 이를 통해서 업데이트된 tap-weight를 α=30을 가지고 그림 7과 같이 얻을 수 있다.
그림 7에서 우리는 피실험자 A와 B의 tap-weight 업데이트 과정을 보이고 있다. 그림 7에서 각각의 tap-weight 들은 정확 하게 수렴하지는 않는다. 이러한 원인은 본 논문에서는 짧은 구간에서의 근전도 신호는 준 정형(quasi-stationary) 신호로 가 정하였지만, 처리되는 데이터 구간이 길어질수록 본질적인 근전도 신호의 특성인 비 정형(non-stationary)성을 피할 수 없 음으로 인하여 야기된다고 할 수 있다.
2. 실시간 실험
초기화 과정을 통해 얻어진 스케일링 함수와 tap-weight를 이용하여 실시간 실험을 수행하여 그림 8과 같은 실험 결과 를 얻을 수 있었다(피실험자 A와 B). 그림 8에서 보여지듯이 팔꿈치 관절 각의 추정치인 q[n]은 최적화 과정을 수행하지 않은 pre-angle x[n]보다 측정된 관절각 qd[n]를 더 잘 추종 한다는 것을 알 수 있다. 또한, 초기화 과정에서 추출한 pre- angle 값이 실제 각도 값과 유사 할수록 최적화 과정을 통한 알고리즘의 성능이 향상 됨을 알 수 있다. 그림 9에서는 상 응하는 오차를 얻은 그래프들이다. 또한, 정량적으로 최적화 에 의한 알고리즘 성능 향상 정도를 보기 위해 전체 오차들 에 대한 시간 적분을 수행한 각 피실험자들의 L2-norm을 표 1에서 제시하였다. 표 1을 통해서 팔꿈치 관절 각도 추출 성 능이 최적화 과정을 통해 각각의 피실험자마다 성능이 향상 되었다는 것을 알 수 있다.
또한, 그림 10에서 실험 동영상으로부터 뽑은 몇 개의 snapshot 사진을 제시하였다. 제시된 snapshot으로 부터 팔꿈 치 관절각도를 보여주는 GUI 모듈의 가상 팔은 인간의 팔꿈 치 관절 각도를 실시간으로 추출한다는 것을 알 수 있다. 또 한, 우리는 반복적인 실험을 통해 비슷한 실험 결과를 확인 할 수 있었다.
(a) 피실험자 A의 tap-weight.
(b) 피실험자 B의 tap-weight.
그림 7. 업데이트된 tap-weight (위: 피실험자 A, 아래: B).
Fig. 7. Updated tap-weight (top: subject A, bottom: subject B).
(a) 피실험자 A.
(b) 피실험자 B.
그림 8. 실험 결과: 팔꿈치 관절각도 추출 성능 비교.
Fig. 8. Experimental results: Elbow Extraction Performance Comparison of Subjects A and B.
V. 결론
본 논문에서는 최적화 방법을 기반으로 근전도 신호를 이 용한 인간의 팔꿈치 관절 각의 실시간 추출 방법을 제안 하 였다. 기존의 신경망을 통한 패턴 인식 및 구별이 아닌 실제 각도 값을 추출하는 새로운 방법을 개발 하였다. 전처리 과 정과 최적화 과정은 손의 쥐는 힘(gripping force)이 없을 때 측정되었으며, 또한 측정된 근전도 신호는 준 정형(quasi- stationary) 신호라는 가정에 근거하여 자세히 제시하였다. 일 반적으로 표면 근전도 신호는 환경 조건과 실험 대상자의 신 체조건, 표면 전극의 부착 점에 따라 매우 민감하게 변화하 므로 측정시의 근전도 값을 상응하는 각도 값에 일치시키는 스케일링 함수를 얻는 과정이 필요하다. 본 논문에서는 개인 마다 다른 근전도 특성을 전처리 과정을 통해 일반화시켜, 제안한 방법의 객관성을 도출하였다. 최종적으로, 다수의 피 실험자를 대상으로 반복 실험을 수행하였으며, 각 피실험자 들의 L2-norm의 비교를 통해 제시된 최적화 알고리즘을 이용 하여 약 1.5~2배 가량의 성능이 향상되었음을 보였다. 이를 통하여 최적화 알고리즘의 유효성을 입증하였다. 앞으로 우 리는 제시한 알고리즘을 더욱 개선하여 팔 절단 환자를 위한 로봇의수나 입는 로봇(wearable robot)의 개발에 적용할 예정 이다.
참고문헌
[1] 최영진, 유현재, “표면 근전도 신호처리 기반 인간 팔 동 작의 추종 알고리즘,” 제어. 자동화. 시스템공학 논문지, 13권, 8호, pp. 769-776, 2007.
[2] E. Cavallaro, J. Rosen, J. C. Perry, S. Burns and B. Hannaford,
“Hill-based model as a myoprocessor for a neural control -led powered exoskeleton arm–parameters optimization,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 4514–4519, Apr. 2005.
[3] D. Nishikawa, W. Yu, H. Yokoi and Y. Kakazu, “EMG prosthetic hand controller using real-time learning method,”
Proc. of IEEE Int. Conf. on Systems, Man and Cybernetics, vol.
1, pp. 153–158, Oct. 1999.
[4] J. Zhao, Z. Xie, L. Jiang, H. Cai, H. Liu and G. Hirzinger,
“Levenbergmarquardt based neural network control for a five- fingered prosthetic hand,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 4482–4487, Apr. 2005.
[5] Y. Su, M. H. Fisher, A. Wolczowski, G. D. Bell, D. J. Burn, and R. X. Gao, “Towards and EMG-controlled prosthetic hand using a 3-D electromagnetic positioning system,” IEEE Transactions on Instrumentation and Measurement, vol. 56, no. 1, pp. 178–
186, Feb. 2007.
[6] P. K. Artemiadis and K. J. Kyriakopoulos, “EMG-based teleoperation of a robot arm in planar catching ovements using ARMAX model and trajectory monitoring techniques,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 3244–3249, 2006.
[7] C. J. James, M. T. Hagna, R. D. Jones, P. J. Bones, and G. J.
Carroll, “Multireference adaptive noise canceling applied to the EEG,” IEEE Trans. on Biomedical Engineering, vol. 44, no. 8, pp. 775–779, Aug. 1997.
[8] B. Widrow, J. M. Mccool, J. Glover, J. Kaunitz, C. Williams, R.
H. Hearn, J. Zeidler, E. Dong and R. C. Goodlin, “Adaptive (a) 피실험자 A.
(b) 피실험자 B.
그림 9. 실험 결과: 피실험자 A와 B의 오차 비교.
Fig. 9. Experimental results: Error Comparison of Subject A and B.
(a) (b)
(c) (d) 그림 10. 실험 결과 snapshots(피실험자 A).
Fig. 10. Experimental results: snapshots(subject A).
표 1. 오차 L2-norm 비교.
Table 1. Error L2-norm comparison.
Subject A B C D E error
(qd[n]-x[n]) before optimization
3.1108 6.7934 12.0951 3.9738 6.8376 error
(qd[n]-q[n]) after optimization
1.4883 3.1625 9.5879 2.4166 5.0464 L2 norm
noise cancelling: Principles and applications,” Proc. of IEEE, vol. 63, no. 12, pp. 1692–1716, Dec. 1975.
[9] X. Yun, C. Aparicio, E. R. Bachmann and R. B. McGhee,
“Implementation and experimental results of a Quaternion-based Kalman filter for human body motion tracking,” Proc. of IEEE Int. Conf. on Robotics and Automation, pp. 317–322, 2006.
[10] S. H. Lee and G. N. Saridis, “The control of a prosthetic arm by EMG pattern recognition,” IEEE Trams. on Automatic Control, vol. 29, no. 4, pp. 290–302, Apr. 1984.
[11] R. M. Studer, R. J. de Figueiredo, and G. S. Moschytz, “An algorithm for sequential signal estimation and system identification for EMG signals,” IEEE Trans. on Biomedical Engineering, vol. 31, no. 3, pp. 285–295, Mar. 1984.
[12] H.-J. Yu and Y. Choi, “Real time tracking algorithm of sEMG- based human arm motion,” Proc. of IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 3416–3421, 2007.
[13] R. M. Rangayyan, Biomedical Signal Analysis. Wiley Inter- Science, 2002.
[14] http://www.zimmer.com/.
[15] 위승두 외 편저, 근기능 해부학. 도서출판 대경. 1998.
[16] J. Magnus and H. Neudecker, Matrix Differential Calculus with Applications in Statistics and Econometrics. John Wiley & Sons, 1988.
최 영 진
1994년 한양대학교 정밀기계공학과(공 학사). 1996년 포항공과대학교 기계 공 학과(공학석사). 2002년 포항공과대학교 기계공학과(공학박사). 2002년~2005년 한국과학기술연구원(KIST) 지능로봇연 구센터 선임연구원. 2005년~현재 한양대 학교 전자컴퓨터공학부 조교수. 관심분야는 생체로봇, 재활 공학, 휴먼모델링, 휴머노이드, 로봇 보행, 전신공조, PID 제 어.
유 현 재
2006년 부산외국어대학교 정보통신공학 과 졸업. 2006~현재 한양대학교 대학원 전자전기제어계측공학과 석사과정 재학 중. 관심분야는 생체로봇, 재활공학, 휴 먼 모델링.