![](https://images.dongascience.com/uploads/old/articleEditor/2011/10/7994714404ea8e9e713ddf.jpg)
[편집자 주 - 몇 달 만에 ‘전 기자의 로봇 만들기’를 다시 씁니다. 대전 주재 기자로 발령 나면서 연재를 여러 번 빼 먹은 점, 독자 여러분께 사과드립니다.]
혹시 ‘경보’ 해 보셨나요? 뛰지 않고 빨리 걸어서 승부를 내는 육상경기입니다. 걷다보면 뛰고 싶은 게 사람 심리다보니 반칙으로 실격자도 많이 나오는 종목이지요. 파울이 3번 누적되면 실격 되는데, 한 대회에 적으면 서너 명, 많으면 절반 가까이가 실격됩니다.
‘빨리 걷기’와 ‘뛰기(달리기)’를 눈으로 구분하긴 쉽지 않아서 심판들은 눈에 불을 켜고 선수의 다리를 쳐다보는데, 반칙을 찾아내는 기준은 한 가지입니다. 두 다리가 모두 공중에 뜨면 그 자리에서 파울을 줍니다. 공중에 들었던 왼쪽 발을 내려놓기 전에 땅에 있는 오른쪽 발로 땅을 박차고 나가면 안 된다는 거죠. 반대로 경보에서 ‘반칙’으로 구분하는 그 발동작을 그대로 계속 이어나가면 달리기가 됩니다.
![](https://images.dongascience.com/uploads/old/articleEditor/2011/10/20904075374ea8e9dd35c84.jpg)
달리는 ‘네발 로봇’이 없는 이유
뜬금없이 왜 경보이야기를 하냐면, 로봇이 걷고 달리는 기준도 이 기준을 그대로 따르기 때문입니다. 사람이나, 네발 달린 동물이나 모두 같습니다. 두 발(혹은 네 발)이 모두 공중에 뜬 시간이 존재하는 것. 그것이 ‘달리고 있다’는 절대적인 기준입니다. 바꿔 말하면 두 발이 공중에 뜬 시간을 억지로라도 만들어 주는 것이 로봇을 달리게 만드는 첫 번째 방법입니다.
달린다는 말은 두발 또는 네발 동물에게만 씁니다만, 네발 동물의 달리기에는 두발 동물이 따라하기 힘든 특별함이 있습니다. 뒷다리로 땅을 박차고 올라 앞 다리로 땅을 짚고, 동시에 방향도 바꿀 수 있습니다. 승마를 해 보신 분들은 아시겠지만, 네발 동물이 달릴 때 위에 앉아 있으면 정말로 하늘을 ‘붕~’ 날아가는 느낌이 듭니다.
아직까지 네 발 달린 기계가 뛰어다닌다는 소식은 들은적이 없습니다. 실용성에서 꼭 그렇게 할 이유도 찾기 어려워서 개발도 더디지요. 네발 로봇 중 가장 뛰어난 것은 미국의 군사 전문기업 보스톤다이내믹스에서 만든 빅독입니다. 이 로봇의 운동능력에 혀를 내 두른 사람들이 많은 건 사실이지만 분명히 ‘달린’ 건 아닙니다.
지금까지 인류가 만들어낸 기계 중 달릴 수 있는 건 인간형 로봇, 즉 두발 로봇뿐입니다. 우리나라에선 KAIST 오준호 교수팀이 만든 휴보가 유일합니다. 일본에선 혼다자동차가 만든 아시모, 도요다자동차가 만든 파트너가 있습니다. 아, 소니에서 2003년 만든 큐리오라는 작은 로봇도 달린 적이 있습니다. 하지만 큐리오는 키가 58.5cm 정도의 소형 로봇이라서 휴보나 아시모, 파트너와 같은 평가를 받지는 못했습니다.
무게중심이 그렇게 중요해?
로봇 만들기 첫 회(과학동아 2011년 1월호)에서 두발 로봇의 걷기 방법에 대해 소개한 적이 있습니다. 걸을 수 있는 두발 로봇을 만들기 위해 가장 흔히 사용하는 방법은 역시 ‘발바닥’ 형입니다. 한 쪽 발로 균형을 잡고 서고, 그 상태에서 다른 한 쪽 발을 옮겨 내려놓은 다음 다시 균형을 잡는 것을 반복하는 겁니다. 이 이론과 앞서 말씀드린 달리기의 조건을 곰곰이 생각해 보면 로봇이 달릴 수 있는 방법도 떠오를 것입니다.
달리기란 한 쪽 발로 땅을 박차고 하늘로 잠깐 ‘날아’ 올랐다가, 반대쪽 발로 내려서는 운동입니다. 로봇의 경우 먼저 한 쪽 다리씩 교대로 뻗어 땅을 박차고, 그 반작용으로 로봇의 몸(상체)을 하늘로 날려 보내 주어야 합니다(이륙). 다음 발돋움을 준비하기 위해 로봇이 공중에 떠 있는 영점 몇 초의 짧은 시간 동안 반대 쪽 다리를 앞으로 가지고 와(공중동작), 그 발로 땅에 내려서야 합니다(착륙). 그리고 무릎과 발목을 구부린 뒤(지상동작), 다시 한 번 앞으로 뛰어 오릅니다(이륙). 이 동작을 계속 해 나가면 로봇은 달려 나갈 수 있습니다.
말은 쉽지만 절대로 녹록한 작업이 아닙니다. 다리를 움직이게 만드는 거야 어렵지 않겠지만 1초에 몇 번씩 충격이 오는 상황에서 무게중심을 맞춰야 하기 때문입니다. 걸을 때는 발목의 관절에 숨어 있는 중심잡기 기능을 써서 한걸음씩 옮길 때마다 균형을 맞추면 됩니다. 그러나 달리는 중에는 그렇게 할 여유가 없습니다. 연속된 동작의 흐름을 만들고, 그 상태에서 무게중심을 계속 유지해야 합니다.
로봇이 두 발만 교대로 빨리 뛰어나가 버리고 무게중심이 뒤에 남아 있다면 몇 걸음 걷지 못하고 엉덩방아를 찧을 겁니다. 반대로 다리를 너무 뒤로 뻗어 무게중심을 과도하게 앞 쪽으로 넘기면 고꾸라질 수도 있습니다. 옆으로 작용하는 힘도 신경을 써야 합니다. 달리다 말고 무게 중심이 옆으로 쏠리면 반 바퀴 빙그르르 돌아 옆으로 쓰러지게 됩니다.
이런 문제를 해결하는 비법은 없습니다. 무게중심을 감지하는 자이로센서, 경사도와 속도를 측정할 수 있는 가속도센서, 관성의 정도를 측정하는 모멘텀센서 등이 필요합니다. 더 중요한 것은 ‘발 구르는 동작의 모양과 타이밍’을 조정하는 일입니다. 수많은 실험을 거듭해 가장 적합한 발목각도와 모터의 출력, 가장 이상적인 무릎 움직임을 찾아내야 합니다. 그리고 이런 동작들이 가장 정확한 때 이뤄지도록 다듬어야 합니다. 결국 달리는 로봇을 만드는 건 ‘이런 순서로, 이 정도의 힘을 주어, 이 정도 시간에 움직인다’는 동작알고리듬을 지겹도록 수정해 나가는 과정입니다.
![](https://images.dongascience.com/uploads/old/articleEditor/2011/10/12432090854ea8ec143a709.jpg)
리듬과 타이밍 맞춘 알고리듬
아시모나 파트너를 만든 건 일본의 민간기업입니다. 당연히 관련기술도 공개하지 않습니다. 누군가 로봇의 달리기 방법을 공부하고 싶다면 찾아볼 수 있는 유일한 논문은 오히려 한국에 있습니다. 이 논문을 쓴 사람은 조백규 국민대 기계시스템공학부 교수로, KAIST에서 박사과정을 하며 휴보의 달리기 기능을 개발할 때 이 논문을 썼습니다. 지도 교수는 바로 휴보 아빠인 오준호 교수지요.
조 박사는 가장 먼저 달리기의 기본인 ‘한 발로 제자리 뛰기’ 연구부터 시작했습니다. 구형 로봇에서 다리 하나를 떼어와 제자리 뛰기를 시켜 놓고 하루 종일 들여다봤다고 하더군요. 로봇의 다리가 어떤 형태로 뛰어 오르는지 알아보기 위해서였습니다. 이렇게 기초 연구를 마친 조 교수는 허리 부분을 고정해 놓은, 러닝머신 위에서만 달릴 수 있는, 실험용 하반신 로봇 KHR플레이너를 써서 동작 알고리듬을 만들었습니다. 두발 로봇이 달리도록 만드는 데 3년이 걸렸다고 하네요. 달리기 기능을 가다듬어 휴보2에 심는데 다시 1년 반이 걸렸습니다. 조 교수는 “발동작을 조금 빨리 해봤다가 무게중심이 엇갈려 로봇이 뒤로 뛰어오르며 나동그라진 적도 있었다”며 “한 번 넘어지면 프레임이 뒤틀려 처음부터 로봇을 다시 조립하고, 부품을 바꿔주기도 했다”고 합니다.
왜 이렇게까지 로봇을 걷고 달리게 만드는 거냐고, 그 로봇을 어디다 쓸 거냐고 질문하는 사람도 있습니다. 날카로운 지적입니다만, 우문(愚問)인 것도 틀림없을 것입니다. 사람은 태어나서 1년 정도 지나면 본능적으로 걸음마를 배웁니다. 유치원도 가기 전에 어떻게 달리는지 저절로 알아냅니다.
하지만 로봇은 기계입니다. 사람처럼 저절로 걸음걸이를 배울 수 없으니 과학자들이 모든 것을 개발해 주어야 합니다. 로봇이 사람의 생활 속에 들어와 함께 살아가기를 꿈꾼다면, 그래서 더 쾌적한 미래 생활을 꿈꾼다면 로봇은 당연히 사람처럼 걷고 뛸 수 있어야 합니다. 달리는 두발 로봇을 개발하는 것은 이제 막 종종걸음으로 뜀뛰기를 배우고 있는, 세 살이 채 안된 어린아이를 보살피는 일입니다.