2014년 4월 3일 목요일

생체신호를 이용해 로봇을 움직여보자~!

안녕하세요! MK 입니다! 우리는 컴퓨터를 조종하기 위해 키보드와 마우스를 이용합니다. 하지만 이것들이 만약에 우리의 목소리로, 또는 우리의 눈 움직임, 손 움직임으로 조종될 수 있으면 얼마나 좋을까라는 생각이 들기도 하죠. 만약 로봇이 개발되었는데 그 로봇 뒤를 졸졸 따라다니며 키보드와 마우스로 작동을 해야한다고 생각해보세요~ UNCOOL! 킹왕짱 로봇의 조종을 위해선 뭔가 더 섹시하고 뽀대나는 조종장치가 필요하죠.

영화 "마이너리티 리포트"(2002)의 HCI 허세. 세 손가락으로 공간상의 화면을 슉슉 바꾸는 톰 크루즈는 곧 이러한 미래시대가 올 듯 예견했지만 12년이 지난 지금도 제스추어 인식엔 아직 많은 한계들이 존재한다.

이렇듯 인간과 컴퓨터/로봇을 이어주는 인터페이스 도구를 HCI/HRI (Human Computer/Robot Interaction) 라고 합니다. 현재 많이 사용되는 HCI 도구로는 키보드, 마우스를 예로들 수 있겠네요. 하지만 이것이 최선은 아니겠죠? 최근에는 생체신호를 활용해 좀더 직관적이고 인간친화적인 HCI/HRI가 활발히 연구되고 있답니다.

우리의 몸에서는매우 다양한 종류의 생체신호를 발생합니다. 일상생활로부터 측정 가능한 생체신호로는 심전도(EKG)신호, 눈동자움직임신호(EOG), 뇌신호(EEG), 근전도신호(EMG) 등이 있죠. 이러한 생체신호는 사람의 동작의도를 신호의 변화로서 즉각적으로 반영하기 때문에, 만약 이를 잘 해석해 쓸 수만 있다면 로봇과의 상호작용을 위한 좋은 도구가 될 수 있습니다. 즉, 뇌에서 전기자극으로 표현되는 명령들을 잘 해석할 수만 있다면, 몸을 움직이듯 로봇도 움직일 수 있을 것이라는 거죠.

BrainGate System 서 개발한 생각으로 조종하는 로봇기술. 이들은 깨끗한 신호를 얻기위해 뇌에 직접 pin을 꽂아 뇌 신호를 얻었는데, 실제로는 감염의 위험이 크기 때문에 아직 많은 연구가 필요하다.

여러 생체신호 중에 오늘 여러분들께 소개해드릴 생체신호는 바로 근전도(EMG)신호입니다. 근전도신호는 "신체의 움직임에 따라 근육 표면으로부터 근섬유를 따라 일어나는 전기적 신호" 인데요, 쉽게말해 사람이 근육이 움직일 때 발생하는 신호입니다. EMG는 사람의 동작과 밀접한 관련을 가지고 있고, 표면 근전도(surface EMG, sEMG)신호는 바늘을 몸에 침습시키지 않고도 사람의 피부 표면에서 얻을 수 있기 때문에 HRI에 활발히 이용되고 있죠. sEMG 신호를 얻는 방법은 간단합니다. 전극을 사람의 피부에 두 개 이상은 부착하여 그 전극 사이에 흐르는 전위차(Voltage)를 측정하는 것이지요.

생체신호를 얻을 때 1초 당 얻는 샘플의 개수를 샘플링 주파수라고 하는데요, 당연히 많이 얻으면 얻을 수록 좋겠죠? 근전도 신호를 활용하기 위해서는 약 1KHz (1초당 1000개) 이상의 샘플링의 속도가 필요하다고 합니다.(1) 다시말해, 근전도 센서에서 한 개의 샘플(신호)을 얻어 이를 소프트웨어로 처리하고 다시 다음 샘플을 얻어오기까지가 0.001초 내에 이루어져야 한다는 것이죠.

또한 근전도신호는 상당히 미세하게 발생하기 때문에 이를 정확히 해석하기 위해서는 측정 데이터 중 근육신호에 해당하는 주파수 대역(15~499Hz)을 찾고 그 주파수 대역의 신호만 추출하여 증폭하는 과정이 필요합니다. (물론 노이즈 필터링은 기본이고요.) 이는 다시 컴퓨터에 알맞는 신호로 변환대기 위해 아날로그 형태의 신호를 디지털 형태로 변환(Analog to Digital Convert, ADC)하는 과정이 필요한데요, 이와 같은 과정을 통해 얻어진 디지털 데이터(0,1,0,1로 이루어진 데이터)가 결국 우리가 해석해야하는 생체신호 데이터랍니다.

대부분의 센서 신호는 (1) 물리 신호 측정, (2) 하드웨어 필터링, (3) 디지털 변환, (4) 소프트웨어 필터링, 그리고 (5) 데이터 처리의 과정을 거친다. 근전도 신호는 소프트웨어 필터링 시 근육신호에 해당하는 주파수 대역(15~499Hz)을 특별히 증폭시키는 과정이 포함된다.

위에서 언급하였듯, 근전도 신호는 사람 몸 안에 있는 근육들을 구성하는 근섬유들이 수축할 때 나오는 전기적 신호이기 때문에 사람의 움직임과 매우 큰 연관성이 있습니다. 사람이 어떤 동작을 하기 위해선 "뇌신호 -> 근육신호 -> 움직임"의  과정을 거치는데, 근전 신호가 선호되는 이유는 바로 사람의 동작이 발생되기 0.02~0.03초 전 측정이 가능하다는 것이죠. 

이것이 왜 중요한지 예를 들어보죠. 여러분이 아이언맨 수트를 입고 있다고 생각해봅시다. (현재의 아이언맨 기술이 궁금하다면 여기를 클릭!) 그리고 동작에 따라 수트라 움직이게 하기 위해 곳곳에 힘센서를 달았다고 해보죠. 아마 여러분이 몸을 움직여 수트에 힘을 가하게 되면 그 저항력을 느낀 수트가 '이 사람이 움직이는구나'를 감지하고 이에 따라 움직이게 될 것입니다. 즉, 힘 센서는 동작 발생 후의 상황을 측정하기 때문에 착용자는 계속적인 저항감을 느낄 수 밖에 없지요. 

하지만 근전도센서는 다릅니다. '움직여야지'하고 근육에 힘을 주는 순간, 아직 사람이 움직이기도 전에 신호측정이 가능하기 때문에 수트가 미리 반응할 수 있고, 따라서 저항감 없이 착용자의 동작과 동기화될 수 있는 것이지요. 어떤가요? 근전도신호가 이제 점점 쓸모있어 보이시나요? 

아이언맨 안에는 아마 근전도센서를 포함해 여러가지의 동작의도 감지를 위한 센서가 부탁되어 있을 것이다. 참고로 미녀는 남자의 공학 지식에 반한 것이 아니라 갑부여서 반한 것이니 오해 없도록 하자 -_- 

저는 근전도신호를 이용해 손 동작을 구별하기로 해보았습니다. 근전도신호 측정을 위해 여러 개의 전극을 팔뚝에 부착하였지요. (당연한 얘기지만, 근육이 없는 곳에서는 근전도 신호가 발생하지 않으니 부탁에 유의해주세요~!) 근육이 잘 발달된 남성이 마르고 근육량이 적은 여성보다 일반적으로 더 많은 근전도신호를 발생시킵니다. 심지어 같은 사람이라도 몸이 피곤할 때와 그렇지 않을 때에 측정되는 신호의 양이 다르지요 ㄷㄷ

이렇기 사람에 따라, 조건에 따라 상이한 신호가 관측되기 때문에 이를 해석하기 위해서는 학습(learning)과 패턴인식(pattern recognition) 과정이 필요합니다. (관련 글 : "너의 정체가 무엇이냐? Pattern Recognition") 사용자가 바뀌면 동작에 대한 근전도신호가 바뀌기 때문에 이를 학습 하는과정이 필요한 것이지요. 

자, 이제 사람의 동작의도를 파악해서 가위바위보에서 절대로 지지 않는 로봇을 만들어 봅시다!(2)  가위, 바위, 보자기의 세 동작을 할 때는 각각 다른 조합의 팔 근육들을 이용합니다. 따라서 이 근전도신호의 패턴들을 학습한다면 나중에 근전도신호의 측정만으로도 이 사람이 무엇을 낼 수 있을지 예측할 수 있겠죠. 어디 한번 필자가 개발한 가위바위보 로봇을 한번 보실까요?!? (자랑자랑~ㅋ)

근전도신호를 이용한 가위바위보 로봇. 사실 고작 가위바위보를 하려고 이 고생을 한 건 아니고(>.<), 이 기술을 의료로봇에 잘 활용한다면 절단 환자를 위한 로봇 팔/다리의 개발이 가능할 것이다.

근전도신호를 기반으로 한 사람의 동작의도 인식연구는 실로 많은 분야에 응용될 수 있습니다. 그 중 대표적인 예는 사고로 팔과 다리를 잃은 환자들에게 로봇 의수의족을 만들어드리는 일이지요. 이 분들은 비록 사고로 팔과 다리를 잃기는 하셨지만, 이를 움직이기 위해 근육을 어떻게 활성시켰는지는 몸이 기억하고 있는 분들 입니다. 따라서 절단되지 않은 부분의 근육신호를 측정하여 로봇 의수/의족을 안정적으로 컨트롤만 할 수 있다면 이 분들께는 잃어버린 팔과 다리를 찾을 수 있는 엄청난 희소식이 되겠지요^^ 가까운 미래에는 정말 근전도신호를 이용해 몸이 불편한 사람들이 웃으며 지낼 수 있는 날이 오길 기대합니다! 열심히 연구합시다!!!^-^

로봇 팔의 시대, 그리 멀지 않았다. 뛰어난 기술 앞에 장애는 약간의 불편함일 뿐이다.


(1) Nyquist theory에 따르면, 샘플링 주파수는 원신호의 주파수보다 2배 이상 높아야만 원신호의 정보를 잃어버리지 않는다고 합니다. 근육신호의 최대 주파수가 499HZ라고 가정하면 그 두배인 998HZ이상 되어야지 근육신호의 정보를 잃어버리지 않겠죠?

(2) 이것은 최근에 페이스북에 떠돌고 있는 영상인식 기반의 가위바위보와는 다른 기술입니다.

* 제 글은 RSS로도 구독하실 수 있습니다. http://t-robotics.blogspot.kr/feeds/posts/default
  facebook page: http://facebook.com/trobotics