로봇팔 제어 소개
2018년 모두의 연구소에서 주최한 MODUCON에서 로봇팔 제어 겉핥기란 주제로 발표했던 자료다.
모두의 연구소에서 강남Dynamics 랩을 운영한지는 2016년 9월부터이다. 모두의 연구소는 원래 그 해 5월 정도에 강화학습 스터디에 참석하기 위해서 찾아갔었는데, 거기서 만난 분에게 떠밀려 로봇 제어 쪽 모임을 시작하게 되었고 랩짱까지 되었다. 그 분은 다시 강화학습 분야로 돌아갔지만 나는 지금까지 계속 이 모임을 유지하고 있다. (내가 왜 그랬을까..)
요즘 딥러닝, 강화학습 등이 너무나도 핫하고 로보틱스 쪽까지 융합되는 모습을 보면서 가끔씩 그때 그냥 강화학습을 했으면 어땠을까 하는 생각이 들기도 하지만, 그랬다면 이렇게 깊이 있게 로보틱스를 공부할 수 있었을까 하는 의구심도 있고, 한 분야를 깊게 공부하면 딥러닝이나 강화학습 또한 잘 이해할 수 있을 것이란 생각도 든다. 물론, 모두연 전에 Coursera Machine Learning 수업을 들으면서 음.. 할만 한데? 했던 것인 요즘에 Deep Learning 쪽은 용어조차 모르는 것이 난무할 정도로 급격하게 발전이 되었지만 로보틱스에서 최적화처럼 하나의 툴로 생각하는 것이 나에겐 더 맞는 것 같다.
특히, 이 발표를 했을 시점이 강남Dynamics 랩을 운영하면서 나에게도 랩실에게도 큰 발전이 있었던 때이기도 하다. Russ Tedrake 교수님의 Underactuated Robotics 강의를 처음 스터디할 때만 해도 20명 정도 되는 인원이 있었지만 강의의 난이도 때문에 많은 사람이 떠났고, 그 뒤에 하드웨어 프로젝트, Gazebo 프로젝트도 해봤지만, 이것 저것 건드려본다는 느낌만 있었고, 사람들은 고무줄처럼 늘었다 줄었다 했고, 뭔가가 축적되어 간다는 느낌은 없었다.
하지만, Gazebo 프로젝트가 끝나고 남은 소수의 인원이 논문 읽기를 시작했고, 로봇팔 제어 분야에 있어서는 감히 볼 만큼 봤다는 느낌이 들기도 했다. (특히, 대가가 advisor였던 논문에서 틀린 수식을 찾아냈을 때..) 그렇기까지는 나 혼자 했다면 이해도 못했고 계속 하지도 못했을 것들을 남은 소수의 분들과 같이 논문을 보고 모르는 부분에 대해 솔직히 토론하고 상호작용하는 과정이 있었기 때문에 가능했다.
로봇팔 제어 분야는 사실 학문적으로 봤을 때는 99.5%에서 100%로 올리기 위해 노력하는 느낌이다. 모션 제어 쪽은 확실히 그렇고 이제 힘제어도 어느 정도 그러하다. 이제는 제어 이론보다는 하드웨어의 발전, Deep Learning에 의한 모델링 정확도의 향상에 의해서 더 큰 발전이 있을 분야라는 생각이 든다.
이 슬라이드도 pid에서 시작해서 passivity-based control, optimal-control, flexible-joint control 등을 소개했지만, 결국 원리는 간단하다. 최대한 정확히 모델을 반영해주고, 그래도 남는 모델의 불확실성에는 Robust하게 adaptive하게 반응하도록 시스템 자체를 passive하게, stable하게 디자인하고, pid 정도로 제어한다. 물론, 산업용으로는 각자 경쟁력을 확보하고 끝없이 품질을 높이기 위해서 극한의 디테일을 추구하고는 있지만 큰 틀에서 학문적으로는 더 이상의 디테일은 무의미해 보인다.
이제는 로봇의 자율성, 또는 로봇팔과는 다른 형태의 로봇, 혁신적인 하드웨어 개발 등에 더 매진할 때라는 생각이 든다. 그래서 나도 로봇팔 제어 논문 스터디는 마무리하게 되었고, 요즘은 4족 보행 로봇 프로젝트를 시작했다. 강남Dynamics 이름을 지을 때부터 하고 싶었던 것이었는데 너무 늦은 감이 없지 않아 있다. 4족 보행도 어느 정도 풀려간다는 느낌이 있지만, 그래서 나 같은 사람도 덤벼볼 수 있는 것 아니겠는가. 꾸준히 하다 보면 뭔가 또 깨닫는 게 있겠지.